@charset "UTF-8";
/* --------------------------------------------------------------------

2017 Redesign

-------------------------------------------------------------------- */
/* Sizing
-------------------------------------------------------------------- */
/* wrap max width */
/* Fonts
-------------------------------------------------------------------- */
/* Color Defaults
-------------------------------------------------------------------- */
/* Color Custom
-------------------------------------------------------------------- */
/* --------------------------------------------------------------------

Typography

- - -

Google Fonts

Body
Roboto 100 thin
Roboto 300 light
Roboto 400 regular
Roboto 500 medium
Roboto 700 bold

h1
Roboto Slab 300 light
Roboto Slab 400 regular
Roboto Slab 700 bold

Nav
Roboto Condensed 400 regular

- - -

Global

p {
  font-family: "Roboto";
  font-size: 16px;
  line-height: 24px;
  font-weight: 300;
  color: #546b85;
  margin: 0 0 15px 0;
  padding: 0;
}

- - -

Hero

p {
  font-family: "Roboto";
  font-size: 18px;
  line-height: 24px;
  font-weight: 400;
  color: #fff;
  margin: 0;
  padding: 0;
}



-------------------------------------------------------------------- */
.entry-content h2 {
  font-family: "Roboto Slab";
  font-size: 22px;
  line-height: 28px;
  font-weight: 300;
  color: #51AF46;
  margin: 25px 0 10px 0;
  padding: 0; }
  .entry-content h2:first-child {
    margin-top: 0; }

.entry-content h3 {
  font-family: "Roboto Slab";
  font-size: 18px;
  line-height: 22px;
  font-weight: 300;
  color: #51AF46;
  margin: 25px 0 10px 0;
  padding: 0; }

.entry-content ul li, .entry-content ol li {
  font-family: "Roboto";
  font-weight: 300;
  margin-bottom: 10px; }

.entry-content sup {
  font-size: 11px;
  font-weight: 400;
  vertical-align: top; }

/* Mixins
-------------------------------------------------------------------- */
/* clearfix
@include clearfix();
-------------------------------------------------------------------- */
.clearfix:before, .clearfix:after {
  content: "";
  display: table; }

.clearfix:after {
  clear: both; }

/* border-radius
@include border-radius(xpx);
@include border-top-radius(xpx);
@include border-right-radius(xpx);
@include border-bottom-radius(xpx);
@include border-left-radius (xpx);
-------------------------------------------------------------------- */
/* --------------------------------------------------------------------

Header Styling
- Logo and Slogan
- Utility Nav
- Main Nav

-------------------------------------------------------------------- */
/* Sizing
-------------------------------------------------------------------- */
/* wrap max width */
/* Fonts
-------------------------------------------------------------------- */
/* Color Defaults
-------------------------------------------------------------------- */
/* Color Custom
-------------------------------------------------------------------- */
/* Fixed header elements
-------------------------------------------------------------------- */
@media screen and (min-width: 851px) {
  #wrap {
    z-index: 999;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 35px;
    max-width: none; }
  #header {
    z-index: 999;
    position: fixed;
    overflow: visible;
    /* required to show dropdowns */
    top: 35px;
    left: 0;
    width: 100%;
    height: 165px !important;
    max-width: none;
    background-color: #fff; }
  #hero {
    margin-top: 200px !important; }
  #inner {
    margin-top: 200px !important; }
    #inner #hero {
      margin-top: inherit !important; }
  #hero + #inner {
    margin-top: inherit !important; } }

/* repositions wp admin bar and work into hero styling */
#wpadminbar {
  z-index: 998;
  top: 186px;
  height: 46px;
  background-color: #3f5460;
  padding-top: 8px; }
  #wpadminbar li:hover .ab-item,
  #wpadminbar .ab-sub-wrapper {
    background-color: #3f5460 !important; }

/* Logo and Slogan (Widget: site logo and slogan)
-------------------------------------------------------------------- */
#header {
  height: auto;
  border-bottom: 14px solid #3F5460;
  margin: 0;
  padding: 0;
  /* hide default logo */
  /* logo & slogan */ }
  #header #title-area {
    display: none; }
  #header .logo-slogan {
    position: relative;
    float: none;
    width: 100%;
    margin: 0 auto;
    padding: 30px 20px 30px 20px;
    /* logo */
    /* slogan */ }
    #header .logo-slogan .logo {
      float: left;
      width: 287px;
      height: 49px; }
      #header .logo-slogan .logo a {
        display: block;
        width: inherit;
        height: inherit; }
        #header .logo-slogan .logo a:hover {
          opacity: .75; }
    #header .logo-slogan .slogan {
      position: absolute;
      top: 28%;
      left: 328px;
      width: 447px;
      height: 50px;
      font-family: "Roboto Slab" !important;
      font-size: 21px;
      font-weight: 300;
      color: #51AF46;
      margin: 0;
      padding: 0; }
  @media screen and (max-width: 800px) {
    #header .logo-slogan {
      text-align: center; }
      #header .logo-slogan .logo {
        float: none;
        width: 80%;
        margin: 0 auto; }
        #header .logo-slogan .logo a {
          text-align: center;
          margin: 0 auto; }
      #header .logo-slogan .slogan {
        float: none;
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        height: auto;
        line-height: 24px;
        padding-top: 20px;
        margin: 0 auto; } }

/* Utility Nav (WP Menu "Utility", but items are all in
/lib/nav/utilities.php)
-------------------------------------------------------------------- */
#nav {
  float: none;
  height: 35px;
  background-color: #B5C1CC;
  /* Social Icons */
  /* Social Icons */
  /* Cart */
  /* Search slider */
  /* hide utility nav at mobile */ }
  #nav ul {
    float: right;
    list-style-type: none; }
    #nav ul li {
      float: left; }
  #nav li.menu-item-link {
    display: block !important;
    background: url("../images/nav-ball.png") no-repeat center right;
    padding: 0 10px 0 5px; }
    #nav li.menu-item-link a {
      font-family: #3F648F;
      font-size: 12px;
      font-weight: 400;
      color: #fff;
      text-decoration: none;
      padding: 6px 5px 5px 5px; }
      #nav li.menu-item-link a:hover {
        background: none;
        background-color: transparent;
        opacity: .75; }
  #nav li.menu-item-social {
    background: url("../images/nav-ball.png") no-repeat center right;
    display: block !important;
    height: 35px;
    margin: 0;
    padding: 0 10px 0 0; }
    #nav li.menu-item-social a {
      float: left;
      text-indent: -9999px;
      margin: 10px 6px 0 6px;
      padding: 0 0 0 0; }
      #nav li.menu-item-social a:hover {
        opacity: .75; }
      #nav li.menu-item-social a.twitter {
        width: 16px;
        height: 13px;
        background: url("../images/icon-twitter-nav.png") no-repeat 0 0; }
      #nav li.menu-item-social a.linkedin {
        width: 15px;
        height: 14px;
        background: url("../images/icon-linkedin-nav.png") no-repeat 0 0; }
      #nav li.menu-item-social a.facebook {
        width: 8px;
        height: 14px;
        background: url("../images/icon-facebook-nav.png") no-repeat 0 0; }
  #nav li.view_cart {
    background: url("../images/nav-ball.png") no-repeat center right;
    display: block !important;
    height: 35px;
    margin: 0;
    padding: 0 10px 0 0; }
    #nav li.view_cart a {
      margin: 6px 6px 0 6px;
      padding: 0; }
      #nav li.view_cart a img {
        vertical-align: middle; }
      #nav li.view_cart a span.sep {
        display: none; }
      #nav li.view_cart a span.count {
        font-family: "Roboto";
        font-size: 12px;
        font-weight: 400;
        color: #fff;
        padding-left: 4px; }
      #nav li.view_cart a:hover {
        opacity: .9;
        background-color: transparent; }
      #nav li.view_cart a:focus {
        transition: inherit; }
  #nav li.menu-item-search {
    width: auto;
    transition: width 0.3s;
    margin: 0;
    padding: 5px 0 0 0;
    /* input */
    /* trigger */ }
    #nav li.menu-item-search .searchbox {
      position: relative;
      float: right;
      width: 36px;
      min-width: 36px;
      height: 25px;
      overflow: hidden;
      transition: width 0.3s; }
    #nav li.menu-item-search .searchbox-open {
      width: 250px;
      padding-left: 10px; }
    #nav li.menu-item-search input {
      background-color: transparent;
      border-radius: 0;
      box-shadow: none;
      -webkit-appearance: none; }
      #nav li.menu-item-search input.searchbox-input {
        top: 0;
        right: 0;
        border: 0;
        outline: 0;
        width: 100%;
        height: 25px;
        background-color: #fff;
        margin: 0;
        padding: 5px;
        font-size: 16px;
        line-height: 24px;
        color: #546B85; }
    #nav li.menu-item-search .searchbox-icon,
    #nav li.menu-item-search .searchbox-submit {
      display: block;
      position: absolute;
      top: 0;
      right: 0;
      width: 36px;
      height: 25px;
      border: 0;
      outline: 0;
      cursor: pointer;
      color: #dcddd8;
      background: #b5c1cc url("../images/icon-search-white.png") no-repeat center right;
      margin: 0;
      padding: 5px 8px 5px 8px; }
    #nav li.menu-item-search .searchbox-submit {
      background-image: none;
      background-color: #92a5b7;
      font-size: 16px;
      line-height: 18px;
      color: #fff; }
  @media only screen and (max-width: 765px) {
    #nav {
      display: none; } }

/* Main Nav with Dropdowns (/lib/nav/primary-nav.php)
-------------------------------------------------------------------- */
#header .header-widget-area {
  /* Safari fix when using fixed positioning */
  -webkit-font-smoothing: antialiased;
  /* hide hamburger for desktop */ }
  #header .header-widget-area .nav-wrap {
    position: relative;
    width: 100%;
    border-top: 2px solid #D5DBDD;
    margin: 0;
    padding: 0; }
    #header .header-widget-area .nav-wrap #nav-primary-custom {
      width: 100%;
      max-width: 1040px;
      margin: 0 auto;
      padding: 0 20px; }
      #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary {
        width: 100%;
        text-align: center;
        margin: 0;
        padding: 0; }
        #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li {
          display: inline-block;
          width: auto;
          text-align: left;
          margin: 0 -4px 0 0;
          /* inline-block gap fix */
          padding: 0;
          /* dropdown */
          /* About Us */
          /* AOW */
          /* Research & Evaluation */
          /* Resources */
          /* Work at WestEd, Search (mobile) */ }
          #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li a {
            display: inline-block;
            text-decoration: none;
            font-family: "Roboto";
            font-size: 14px;
            line-height: 20px;
            font-weight: 500;
            color: #3F648F;
            margin: 0;
            padding: 10px 10px 10px 10px; }
            #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li a:hover {
              color: #51AF46 !important; }
          #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu {
            /* testing */
            left: 0 !important;
            z-index: 300;
            position: absolute;
            width: 100%;
            background-color: #fff;
            border-top: 14px solid #3f5460;
            box-shadow: 0 7px 20px -3px rgba(0, 0, 0, 0.25);
            margin: 0;
            padding: 0; }
            #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li {
              display: block; }
              #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container {
                width: 100%; }
                #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap {
                  width: 100%;
                  max-width: 1040px;
                  margin: 0 auto;
                  display: flex;
                  padding: 15px 20px; }
                  #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col {
                    flex: 1 1 200px;
                    float: left;
                    /* flexbox fallback */
                    /* IE10, IE11 */
                    vertical-align: top;
                    border-right: 1px solid #D3DBE6;
                    margin: 0;
                    padding: 0; }
                    @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
                      #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col {
                        width: 250px; } }
                    #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col:last-child {
                      border: none; }
                    #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col.intro {
                      position: relative; }
                      #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col.intro .vertical-wrap {
                        position: absolute;
                        top: 50%;
                        left: 50%;
                        transform: translate(-50%, -50%);
                        width: 100%;
                        padding-right: 20px;
                        /* IE10, IE11 */ }
                        @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
                          #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col.intro .vertical-wrap {
                            position: relative;
                            top: 0;
                            left: 0;
                            transform: none; } }
                    #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col h2 {
                      font-size: 25px;
                      line-height: 28px;
                      font-weight: 300;
                      color: #51AF46;
                      text-align: center;
                      margin: 0 0 10px 0;
                      padding: 0; }
                    #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col p {
                      font-size: 15px;
                      line-height: 18px;
                      font-weight: 500;
                      color: #51AF46;
                      text-align: center;
                      margin: 0;
                      padding: 0; }
                    #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col ul {
                      margin: 0;
                      padding: 0; }
                      #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col ul li {
                        display: block;
                        margin: 0;
                        padding: 0 15px;
                        /* separator */ }
                        #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col ul li.sep hr {
                          border-color: #D3DBE6; }
                        #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col ul li.sect {
                          font-size: 14px;
                          line-height: 18px;
                          font-weight: 500;
                          color: #819ab6;
                          text-transform: uppercase;
                          padding: 8px 15px; }
                        #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col ul li a {
                          display: block;
                          width: 100%;
                          font-family: "Roboto";
                          font-size: 14px;
                          line-height: 18px;
                          font-weight: 500 !important;
                          color: #3F648F !important;
                          background: none !important;
                          margin: 0;
                          padding: 6px 0; }
                          #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col ul li a:hover {
                            opacity: .75; }
          #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-about-us .col.intro p {
            max-width: 200px !important;
            margin: 0 auto !important; }
          #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-aow {
            /* testing */ }
            #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-aow .col.intro p {
              max-width: 230px !important;
              margin: 0 auto !important; }
            #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-aow li.sect {
              color: #51AF46 !important;
              text-transform: none !important;
              padding-top: 6px !important;
              padding-bottom: 6px !important; }
          #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-res-eval .col.intro {
            /* override initial flex width */
            flex: initial !important;
            width: 450px !important; }
          #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-resources .col.intro {
            flex: initial !important;
            width: 350px !important; }
            #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-resources .col.intro h2 {
              max-width: 150px !important;
              margin: 0 auto !important;
              margin-bottom: 10px !important; }
          #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-careers, #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-search {
            display: none; }
  #header .header-widget-area ul#nav-primary {
    /* shrink padding */ }
    @media screen and (max-width: 888px) {
      #header .header-widget-area ul#nav-primary li a {
        font-size: 13px !important;
        padding-left: 5px !important;
        padding-right: 5px !important;
        transition: all 0.3s ease 0s; } }
  #header .header-widget-area #custom_html-12,
  #header .header-widget-area #custom_html-8,
  #header .header-widget-area #custom_html-5 {
    display: none; }
  @media screen and (min-width: 765px) {
    #header .header-widget-area {
      /* display main nav again once wide enough */ }
      #header .header-widget-area .nav-wrap {
        display: block !important; } }
  @media only screen and (max-width: 765px) {
    #header .header-widget-area {
      /* display hamburger for mobile */
      /* mobilize main nav */ }
      #header .header-widget-area #custom_html-12,
      #header .header-widget-area #custom_html-8,
      #header .header-widget-area #custom_html-5 {
        display: block;
        position: absolute;
        top: 20px;
        right: 20px;
        width: 30px;
        height: 30px;
        margin: 0;
        padding: 0; }
        #header .header-widget-area #custom_html-12 span.line,
        #header .header-widget-area #custom_html-8 span.line,
        #header .header-widget-area #custom_html-5 span.line {
          display: block;
          border: 2px solid #3F648F;
          margin: 0 0 5px 0;
          padding: 0; }
      #header .header-widget-area .nav-wrap {
        display: none;
        z-index: 9999;
        height: auto; }
        #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary {
          text-align: left !important;
          overflow: auto;
          width: 100%;
          height: auto;
          margin: 0;
          padding: 0; }
          #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li {
            display: block;
            width: 100%;
            height: auto;
            margin: 0;
            padding: 0;
            /* Work at WestEd, Search (mobile) */
            /* dropdowns */ }
            #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-careers, #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-search {
              display: block; }
            #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-search form {
              width: 100%;
              display: flex;
              flex-wrap: wrap;
              align-items: center; }
            #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-search label {
              display: none;
              flex: 1 1 50px;
              max-width: 60px;
              font-size: 13px;
              line-height: 18px;
              font-weight: 400;
              margin: 0;
              padding: 0 0 0 5px; }
            #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-search input[type="text"] {
              flex: 2 1 auto;
              width: auto;
              height: 42px;
              border: none;
              border-radius: 4px;
              box-shadow: none;
              background-color: #E3ECF9;
              font-size: 14px;
              line-height: 18px;
              font-weight: 700;
              color: #3F648F;
              margin: 15px 5px 10px 0;
              padding: 4px 12px; }
            #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-search input[type="submit"] {
              flex: 1 1 50px;
              max-width: 75px;
              height: 42px;
              font-size: 15px;
              font-weight: 700;
              color: #fff;
              background-color: #5a799c;
              border-radius: 6px;
              border: none;
              background-image: none;
              margin: 15px 0 10px 0;
              padding: 8px 0; }
              #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-search input[type="submit"]:hover {
                opacity: .75; } }
        @media only screen and (max-width: 765px) and (max-width: 340px) {
          #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-search form {
            display: block; }
          #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-search label {
            display: none;
            width: 100%;
            margin: 15px 0 5px 0;
            padding: 0 0 0 5px; }
          #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-search input[type="text"] {
            display: block;
            width: 100%;
            margin: 15px 0 5px 0; }
          #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li.nav-search input[type="submit"] {
            display: block;
            width: 100%;
            max-width: none;
            margin: 0 0 20px 0; } }
  @media only screen and (max-width: 765px) {
            #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li a {
              display: block;
              font-size: 20px;
              line-height: 24px;
              font-weight: 400;
              color: #3F648F;
              border-bottom: 1px solid #D5DBDD;
              margin: 0;
              padding: 15px 20px; }
              #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li a.sf-with-ul {
                background: url("../images/menu-mobile-arrow_right.gif") no-repeat right center; }
                #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li a.sf-with-ul:hover {
                  background: url("../images/menu-mobile-arrow.gif") no-repeat right center; }
            #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu {
              position: relative;
              top: 0;
              left: 0;
              text-indent: 0;
              float: none;
              display: block;
              width: 100%;
              height: auto;
              border: none;
              box-shadow: none;
              margin: 0;
              padding: 10px 0 10px 20px; }
              #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li {
                margin: 0;
                padding: 0; }
                #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li a {
                  width: 100%;
                  font-size: 16px !important;
                  line-height: 20px !important;
                  font-weight: 400 !important;
                  color: #3F648F;
                  border: none !important;
                  margin: 0 !important;
                  padding: 10px 20px 10px 30px !important; }
                #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap {
                  display: block;
                  margin: 0;
                  padding: 0; }
                  #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col {
                    float: none;
                    border: none; }
                    #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col.intro .vertical-wrap {
                      position: relative;
                      top: 0;
                      left: 0%;
                      transform: none; }
                    #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col h2 {
                      display: none; }
                    #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col p {
                      max-width: none !important;
                      text-align: left;
                      margin: 10px 0 10px 0 !important; }
                    #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col ul {
                      margin: 0;
                      padding: 0; }
                      #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col ul li {
                        margin: 0;
                        padding: 0; }
                        #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col ul li.sep {
                          display: none; }
                        #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col ul li.sect {
                          padding-top: 20px !important;
                          padding-left: 0 !important; }
                        #header .header-widget-area .nav-wrap #nav-primary-custom ul#nav-primary li ul.sub-menu li .nav-item-container .col-wrap .col ul li a {
                          margin: 0;
                          padding: 10px 0 !important; } }

/* Nav on states
-------------------------------------------------------------------- */
#header .header-widget-area li.current-menu-item a,
#header .header-widget-area li.current-menu-ancestor a,
#header .header-widget-area li.current-menu-parent a {
  background: url("../images/nav-arrow.png") no-repeat center 31px;
  font-weight: 700;
  color: #51AF46; }

/* About Us */
body.page-about-us #header ul#nav-primary li.nav-about-us a,
body.page-template-board-page #header ul#nav-primary li.nav-about-us a,
body.page-template-leadership #header ul#nav-primary li.nav-about-us a,
body.page-template-staffdirectory-page #header ul#nav-primary li.nav-about-us a,
body.single-personnel #header ul#nav-primary li.nav-about-us a,
body.page-template-programs_list-page #header ul#nav-primary li.nav-about-us a,
body.single-program #header ul#nav-primary li.nav-about-us a,
body.page-template-program_servicelist #header ul#nav-primary li.nav-about-us a,
body.page-template-project_list-page #header ul#nav-primary li.nav-about-us a,
body.page-template-program_resourcelist #header ul#nav-primary li.nav-about-us a,
body.page-template-program_key_staff-page #header ul#nav-primary li.nav-about-us a,
body.page-wested-offices #header ul#nav-primary li.nav-about-us a,
body.page-clients #header ul#nav-primary li.nav-about-us a,
body.page-working-with-wested #header ul#nav-primary li.nav-about-us a,
body.email-form #header ul#nav-primary li.nav-about-us a {
  background: url(../images/nav-arrow.png) no-repeat center 31px !important;
  font-weight: 700 !important;
  color: #51af46 !important;
  /* hide down arrow at mobile */ }
  @media screen and (max-width: 765px) {
    body.page-about-us #header ul#nav-primary li.nav-about-us a,
    body.page-template-board-page #header ul#nav-primary li.nav-about-us a,
    body.page-template-leadership #header ul#nav-primary li.nav-about-us a,
    body.page-template-staffdirectory-page #header ul#nav-primary li.nav-about-us a,
    body.single-personnel #header ul#nav-primary li.nav-about-us a,
    body.page-template-programs_list-page #header ul#nav-primary li.nav-about-us a,
    body.single-program #header ul#nav-primary li.nav-about-us a,
    body.page-template-program_servicelist #header ul#nav-primary li.nav-about-us a,
    body.page-template-project_list-page #header ul#nav-primary li.nav-about-us a,
    body.page-template-program_resourcelist #header ul#nav-primary li.nav-about-us a,
    body.page-template-program_key_staff-page #header ul#nav-primary li.nav-about-us a,
    body.page-wested-offices #header ul#nav-primary li.nav-about-us a,
    body.page-clients #header ul#nav-primary li.nav-about-us a,
    body.page-working-with-wested #header ul#nav-primary li.nav-about-us a,
    body.email-form #header ul#nav-primary li.nav-about-us a {
      background: none !important; } }

/* Areas of Work */
body.area_of_work-template-default #header ul#nav-primary li.nav-aow a,
body.page-template-aow-projectlist-page #header ul#nav-primary li.nav-aow a,
body.page-template-aow-resourcelist-page #header ul#nav-primary li.nav-aow a,
body.page-template-majorinitiatives-list-page #header ul#nav-primary li.nav-aow a,
body.four-domains #header ul#nav-primary li.nav-aow a,
body.charters-choice #header ul#nav-primary li.nav-aow a,
body.trauma #header ul#nav-primary li.nav-aow a,
body.covid-19-resources #header ul#nav-primary li.nav-aow a,
body.covid-19-services #header ul#nav-primary li.nav-aow a {
  background: url(../images/nav-arrow.png) no-repeat center 31px !important;
  font-weight: 700 !important;
  color: #51af46 !important;
  /* hide down arrow at mobile */ }
  @media screen and (max-width: 765px) {
    body.area_of_work-template-default #header ul#nav-primary li.nav-aow a,
    body.page-template-aow-projectlist-page #header ul#nav-primary li.nav-aow a,
    body.page-template-aow-resourcelist-page #header ul#nav-primary li.nav-aow a,
    body.page-template-majorinitiatives-list-page #header ul#nav-primary li.nav-aow a,
    body.four-domains #header ul#nav-primary li.nav-aow a,
    body.charters-choice #header ul#nav-primary li.nav-aow a,
    body.trauma #header ul#nav-primary li.nav-aow a,
    body.covid-19-resources #header ul#nav-primary li.nav-aow a,
    body.covid-19-services #header ul#nav-primary li.nav-aow a {
      background: none !important; } }

/* Research & Evaluation */
body.page-template-research-evaluation #header ul#nav-primary li.nav-res-eval a,
body.page-template-re-how-page #header ul#nav-primary li.nav-res-eval a,
body.page-template-re-reports_pub-page #header ul#nav-primary li.nav-res-eval a,
body.page-template-re-research_blog-page #header ul#nav-primary li.nav-res-eval a {
  background: url(../images/nav-arrow.png) no-repeat center 31px !important;
  font-weight: 700 !important;
  color: #51af46 !important;
  /* hide down arrow at mobile */ }
  @media screen and (max-width: 765px) {
    body.page-template-research-evaluation #header ul#nav-primary li.nav-res-eval a,
    body.page-template-re-how-page #header ul#nav-primary li.nav-res-eval a,
    body.page-template-re-reports_pub-page #header ul#nav-primary li.nav-res-eval a,
    body.page-template-re-research_blog-page #header ul#nav-primary li.nav-res-eval a {
      background: none !important; } }

/* Professional Development */
body.page-template-professional-development-page #header ul#nav-primary li.nav-pd a,
body.type-professional-development #header ul#nav-primary li.nav-pd a,
body.professional-development #header ul#nav-primary li.nav-pd a {
  background: url(../images/nav-arrow.png) no-repeat center 31px !important;
  font-weight: 700 !important;
  color: #51af46 !important;
  /* hide down arrow at mobile */ }
  @media screen and (max-width: 765px) {
    body.page-template-professional-development-page #header ul#nav-primary li.nav-pd a,
    body.type-professional-development #header ul#nav-primary li.nav-pd a,
    body.professional-development #header ul#nav-primary li.nav-pd a {
      background: none !important; } }

/* Technical Assistance */
body.page-template-technical-assistance-page #header ul#nav-primary li.nav-ta a,
body.page-template-technical-assistance-child #header ul#nav-primary li.nav-ta a,
body.type-technical-assistance #header ul#nav-primary li.nav-ta a,
body.technical-assistance #header ul#nav-primary li.nav-ta a {
  background: url(../images/nav-arrow.png) no-repeat center 31px !important;
  font-weight: 700 !important;
  color: #51af46 !important;
  /* hide down arrow at mobile */ }
  @media screen and (max-width: 765px) {
    body.page-template-technical-assistance-page #header ul#nav-primary li.nav-ta a,
    body.page-template-technical-assistance-child #header ul#nav-primary li.nav-ta a,
    body.type-technical-assistance #header ul#nav-primary li.nav-ta a,
    body.technical-assistance #header ul#nav-primary li.nav-ta a {
      background: none !important; } }

/* Resources */
body.woocommerce-page #header ul#nav-primary li.nav-resources a,
body.page-reprint-permissions #header ul#nav-primary li.nav-resources a,
body.page-resources-help #header ul#nav-primary li.nav-resources a,
body.v2017-catalogs #header ul#nav-primary li.nav-resources a,
body.webinars #header ul#nav-primary li.nav-resources a,
body.archived_webinar #header ul#nav-primary li.nav-resources a,
body.rdalert #header ul#nav-primary li.nav-resources a,
body.woocommerce.single-product #header ul#nav-primary li.nav-resources a {
  background: url(../images/nav-arrow.png) no-repeat center 31px !important;
  font-weight: 700 !important;
  color: #51af46 !important;
  /* hide down arrow at mobile */ }
  @media screen and (max-width: 765px) {
    body.woocommerce-page #header ul#nav-primary li.nav-resources a,
    body.page-reprint-permissions #header ul#nav-primary li.nav-resources a,
    body.page-resources-help #header ul#nav-primary li.nav-resources a,
    body.v2017-catalogs #header ul#nav-primary li.nav-resources a,
    body.webinars #header ul#nav-primary li.nav-resources a,
    body.archived_webinar #header ul#nav-primary li.nav-resources a,
    body.rdalert #header ul#nav-primary li.nav-resources a,
    body.woocommerce.single-product #header ul#nav-primary li.nav-resources a {
      background: none !important; } }

/* WestEd Events */
body.wested-event #header ul#nav-primary li.nav-events a,
body.wested_event-template-default #header ul#nav-primary li.nav-events a,
body.page-template-wested_event-archive #header ul#nav-primary li.nav-events a {
  background: url(../images/nav-arrow.png) no-repeat center 31px !important;
  font-weight: 700 !important;
  color: #51af46 !important;
  /* hide down arrow at mobile */ }
  @media screen and (max-width: 765px) {
    body.wested-event #header ul#nav-primary li.nav-events a,
    body.wested_event-template-default #header ul#nav-primary li.nav-events a,
    body.page-template-wested_event-archive #header ul#nav-primary li.nav-events a {
      background: none !important; } }

/* --------------------------------------------------------------------

Footer

-------------------------------------------------------------------- */
/* Sizing
-------------------------------------------------------------------- */
/* wrap max width */
/* Fonts
-------------------------------------------------------------------- */
/* Color Defaults
-------------------------------------------------------------------- */
/* Color Custom
-------------------------------------------------------------------- */
/* Footer Form
-------------------------------------------------------------------- */
#footer-form {
  background-color: #3F648F;
  color: #fff;
  text-align: center;
  /* collapse */
  /* Marketo form */ }
  #footer-form .wrap {
    max-width: 1040px;
    margin: 0 auto;
    padding: 30px 20px; }
  #footer-form .ffa {
    position: absolute;
    top: -180px; }
  #footer-form h2 {
    font-family: "Roboto Slab";
    font-size: 28px;
    line-height: 32px;
    font-weight: 300;
    color: #fff;
    margin: 0 0 10px 0;
    padding: 0; }
  #footer-form p {
    font-size: 15px;
    line-height: 18px;
    font-weight: 400;
    margin: 0 0 10px 0;
    padding: 0; }
  #footer-form .contact-form-toggle {
    display: block;
    width: 144px;
    height: 18px;
    cursor: pointer;
    text-indent: -9999px;
    background: url("../images/footer-form-closed.png") no-repeat center center;
    margin: 0 auto;
    padding: 0;
    /* when open, hide trigger */ }
    #footer-form .contact-form-toggle:hover {
      opacity: .75; }
    #footer-form .contact-form-toggle.expanded {
      display: none; }
  #footer-form form.mktoForm {
    width: 66.6% !important;
    color: #3F648F;
    margin: 0 auto;
    margin-top: 30px;
    padding: 0;
    /* label */
    /* input */
    /* checkbox list */
    /* submit */ }
    #footer-form form.mktoForm .mktoHtmlText {
      font-size: 12px;
      line-height: 14px;
      font-weight: 300;
      color: #3F648F;
      margin: 0;
      padding: 0; }
    #footer-form form.mktoForm .mktoFormRow {
      margin: 0 0 12px 0;
      padding: 0;
      /* I have a question or comment about */
      /* Comment */
      /* checkbox */ }
      #footer-form form.mktoForm .mktoFormRow:nth-child(5) .mktoFormCol .mktoFieldWrap {
        width: 97.5% !important; }
      #footer-form form.mktoForm .mktoFormRow .mktoFormCol {
        width: 50%; }
      #footer-form form.mktoForm .mktoFormRow:nth-child(5) .mktoFormCol {
        width: 100%; }
        #footer-form form.mktoForm .mktoFormRow:nth-child(5) .mktoFormCol .mktoFieldWrap {
          width: 98%; }
      #footer-form form.mktoForm .mktoFormRow:nth-child(6) .mktoFormCol {
        width: 100%; }
        #footer-form form.mktoForm .mktoFormRow:nth-child(6) .mktoFormCol .mktoFieldWrap {
          width: 97.5%; }
      #footer-form form.mktoForm .mktoFormRow:nth-child(7) .mktoFormCol {
        width: 100%; }
        #footer-form form.mktoForm .mktoFormRow:nth-child(7) .mktoFormCol label {
          max-width: 500px;
          padding-left: 25px; }
        #footer-form form.mktoForm .mktoFormRow:nth-child(7) .mktoFormCol .mktoCheckboxList {
          position: absolute;
          top: 0;
          left: 10ox;
          width: 30px !important; }
    #footer-form form.mktoForm .mktoFieldWrap {
      width: 95%; }
    #footer-form form.mktoForm label {
      width: 100% !important;
      font-size: 10px;
      line-height: 14px;
      font-weight: 700;
      color: #fff;
      text-transform: uppercase;
      margin: 0 0 6px 0;
      padding: 0; }
    #footer-form form.mktoForm input[type="text"],
    #footer-form form.mktoForm input[type="email"],
    #footer-form form.mktoForm select,
    #footer-form form.mktoForm textarea {
      width: 100% !important;
      height: 42px;
      border: none;
      border-radius: 4px;
      box-shadow: none;
      background-color: #fff;
      font-size: 14px;
      line-height: 18px;
      font-weight: 700;
      color: #3F648F;
      margin: 0;
      padding: 4px 12px; }
    #footer-form form.mktoForm textarea {
      height: auto; }
    #footer-form form.mktoForm .mktoAsterix {
      display: none !important; }
    #footer-form form.mktoForm .mktoCheckboxList {
      margin: 0;
      padding: 0;
      /* note: can't really use custom checkbox styling here seen elsewhere in site */ }
      #footer-form form.mktoForm .mktoCheckboxList input[type="checkbox"] {
        width: auto;
        box-shadow: none;
        line-height: 18px;
        margin: 3px 8px 12px 0;
        padding: 0; }
      #footer-form form.mktoForm .mktoCheckboxList label {
        cursor: pointer;
        font-size: 14px;
        line-height: 18px;
        font-weight: 700;
        color: #3F648F;
        text-transform: none;
        margin: 0 0 12px 0;
        padding: 0; }
        #footer-form form.mktoForm .mktoCheckboxList label:hover {
          opacity: .75; }
    #footer-form form.mktoForm .mktoButtonRow {
      display: block !important;
      width: 100% !important;
      margin: 0 !important;
      padding: 0 !important; }
      #footer-form form.mktoForm .mktoButtonRow .mktoButtonWrap {
        display: block !important;
        text-align: center !important;
        margin: 0 !important;
        padding: 0 !important; }
        #footer-form form.mktoForm .mktoButtonRow .mktoButtonWrap button {
          font-size: 15px !important;
          font-weight: 500 !important;
          color: #3F648F !important;
          background-color: #ABC1DA !important;
          border-radius: 6px !important;
          border: none !important;
          background-image: none !important;
          margin: 0 !important;
          padding: 8px 16px 8px 16px !important; }
          #footer-form form.mktoForm .mktoButtonRow .mktoButtonWrap button:hover {
            opacity: .75; }

body.page-template-home #footer-form .wrap {
  padding-bottom: 20px; }

@media screen and (max-width: 700px) {
  #footer-form form.mktoForm {
    width: 100% !important; } }

@media screen and (max-width: 480px) {
  #footer-form form.mktoForm .mktoFormRow .mktoFormCol {
    width: 100% !important; } }

/* Widget Area
-------------------------------------------------------------------- */
.footer-widgets {
  color: #fff;
  background-color: #546B85;
  border: none;
  margin: 0;
  padding: 20px 0 0 0;
  /* proper order and flex widths */ }
  .footer-widgets .widget-area,
  .footer-widgets .footer-widgets-1,
  .footer-widgets .footer-widgets-2,
  .footer-widgets .footer-widgets-3,
  .footer-widgets .footer-widgets-4 {
    min-height: 280px !important;
    border-left: 1px solid #819AB6;
    margin: 0;
    padding: 0 0 0 20px;
    /* Privacy */ }
    .footer-widgets .widget-area:first-child,
    .footer-widgets .footer-widgets-1:first-child,
    .footer-widgets .footer-widgets-2:first-child,
    .footer-widgets .footer-widgets-3:first-child,
    .footer-widgets .footer-widgets-4:first-child {
      border: none;
      padding: 0; }
    .footer-widgets .widget-area.footer-widgets-1,
    .footer-widgets .footer-widgets-1.footer-widgets-1,
    .footer-widgets .footer-widgets-2.footer-widgets-1,
    .footer-widgets .footer-widgets-3.footer-widgets-1,
    .footer-widgets .footer-widgets-4.footer-widgets-1 {
      width: 30%; }
    .footer-widgets .widget-area.footer-widgets-2,
    .footer-widgets .footer-widgets-1.footer-widgets-2,
    .footer-widgets .footer-widgets-2.footer-widgets-2,
    .footer-widgets .footer-widgets-3.footer-widgets-2,
    .footer-widgets .footer-widgets-4.footer-widgets-2 {
      width: 27%; }
    .footer-widgets .widget-area.footer-widgets-3,
    .footer-widgets .footer-widgets-1.footer-widgets-3,
    .footer-widgets .footer-widgets-2.footer-widgets-3,
    .footer-widgets .footer-widgets-3.footer-widgets-3,
    .footer-widgets .footer-widgets-4.footer-widgets-3 {
      width: 21.5%; }
    .footer-widgets .widget-area.footer-widgets-4,
    .footer-widgets .footer-widgets-1.footer-widgets-4,
    .footer-widgets .footer-widgets-2.footer-widgets-4,
    .footer-widgets .footer-widgets-3.footer-widgets-4,
    .footer-widgets .footer-widgets-4.footer-widgets-4 {
      width: 21.5%; }
    .footer-widgets .widget-area .widget,
    .footer-widgets .footer-widgets-1 .widget,
    .footer-widgets .footer-widgets-2 .widget,
    .footer-widgets .footer-widgets-3 .widget,
    .footer-widgets .footer-widgets-4 .widget {
      font-size: 13px;
      line-height: 18px;
      font-weight: 400;
      color: #fff;
      text-transform: none;
      margin: 0 !important;
      padding: 0; }
      .footer-widgets .widget-area .widget a,
      .footer-widgets .footer-widgets-1 .widget a,
      .footer-widgets .footer-widgets-2 .widget a,
      .footer-widgets .footer-widgets-3 .widget a,
      .footer-widgets .footer-widgets-4 .widget a {
        color: #fff; }
        .footer-widgets .widget-area .widget a:hover,
        .footer-widgets .footer-widgets-1 .widget a:hover,
        .footer-widgets .footer-widgets-2 .widget a:hover,
        .footer-widgets .footer-widgets-3 .widget a:hover,
        .footer-widgets .footer-widgets-4 .widget a:hover {
          opacity: .75; }
      .footer-widgets .widget-area .widget h4,
      .footer-widgets .footer-widgets-1 .widget h4,
      .footer-widgets .footer-widgets-2 .widget h4,
      .footer-widgets .footer-widgets-3 .widget h4,
      .footer-widgets .footer-widgets-4 .widget h4 {
        display: none; }
      .footer-widgets .widget-area .widget ul.menu,
      .footer-widgets .footer-widgets-1 .widget ul.menu,
      .footer-widgets .footer-widgets-2 .widget ul.menu,
      .footer-widgets .footer-widgets-3 .widget ul.menu,
      .footer-widgets .footer-widgets-4 .widget ul.menu {
        margin: 0;
        padding: 0; }
        .footer-widgets .widget-area .widget ul.menu li,
        .footer-widgets .footer-widgets-1 .widget ul.menu li,
        .footer-widgets .footer-widgets-2 .widget ul.menu li,
        .footer-widgets .footer-widgets-3 .widget ul.menu li,
        .footer-widgets .footer-widgets-4 .widget ul.menu li {
          margin: 0 0 6px 0;
          padding: 0; }
          .footer-widgets .widget-area .widget ul.menu li:first-child,
          .footer-widgets .footer-widgets-1 .widget ul.menu li:first-child,
          .footer-widgets .footer-widgets-2 .widget ul.menu li:first-child,
          .footer-widgets .footer-widgets-3 .widget ul.menu li:first-child,
          .footer-widgets .footer-widgets-4 .widget ul.menu li:first-child {
            text-transform: uppercase;
            font-weight: 500; }
            .footer-widgets .widget-area .widget ul.menu li:first-child a,
            .footer-widgets .footer-widgets-1 .widget ul.menu li:first-child a,
            .footer-widgets .footer-widgets-2 .widget ul.menu li:first-child a,
            .footer-widgets .footer-widgets-3 .widget ul.menu li:first-child a,
            .footer-widgets .footer-widgets-4 .widget ul.menu li:first-child a {
              color: #ABC1DA; }
    .footer-widgets .widget-area .widget + .widget,
    .footer-widgets .footer-widgets-1 .widget + .widget,
    .footer-widgets .footer-widgets-2 .widget + .widget,
    .footer-widgets .footer-widgets-3 .widget + .widget,
    .footer-widgets .footer-widgets-4 .widget + .widget {
      margin-top: 30px !important; }
    .footer-widgets .widget-area .menu-footer-privacy-container,
    .footer-widgets .footer-widgets-1 .menu-footer-privacy-container,
    .footer-widgets .footer-widgets-2 .menu-footer-privacy-container,
    .footer-widgets .footer-widgets-3 .menu-footer-privacy-container,
    .footer-widgets .footer-widgets-4 .menu-footer-privacy-container {
      border-top: 1px solid #fff; }
      .footer-widgets .widget-area .menu-footer-privacy-container ul li,
      .footer-widgets .footer-widgets-1 .menu-footer-privacy-container ul li,
      .footer-widgets .footer-widgets-2 .menu-footer-privacy-container ul li,
      .footer-widgets .footer-widgets-3 .menu-footer-privacy-container ul li,
      .footer-widgets .footer-widgets-4 .menu-footer-privacy-container ul li {
        text-transform: uppercase; }
        .footer-widgets .widget-area .menu-footer-privacy-container ul li:first-child,
        .footer-widgets .footer-widgets-1 .menu-footer-privacy-container ul li:first-child,
        .footer-widgets .footer-widgets-2 .menu-footer-privacy-container ul li:first-child,
        .footer-widgets .footer-widgets-3 .menu-footer-privacy-container ul li:first-child,
        .footer-widgets .footer-widgets-4 .menu-footer-privacy-container ul li:first-child {
          padding-top: 30px; }
  .footer-widgets [class*="footer-widgets-"] {
    float: left;
    width: 25%; }
  @media screen and (max-width: 900px) {
    .footer-widgets .widget-area,
    .footer-widgets .footer-widgets-1,
    .footer-widgets .footer-widgets-2,
    .footer-widgets .footer-widgets-3,
    .footer-widgets .footer-widgets-4 {
      display: block !important;
      float: none !important;
      width: 100% !important;
      height: auto !important;
      border: none !important;
      min-height: 0 !important;
      margin: 0 !important;
      padding: 10px 0 !important; } }

/* Footer Bottom Nav
-------------------------------------------------------------------- */
#footer {
  background-color: #546B85; }
  #footer .wrap {
    padding: 10px 30px 30px 30px; }
  #footer .footer-bottom-nav ul {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    border-top: 1px solid #819AB6;
    border-bottom: 1px solid #819AB6;
    margin: 12px 0;
    padding: 12px 0; }
    #footer .footer-bottom-nav ul li {
      margin: 0;
      padding: 0; }
      #footer .footer-bottom-nav ul li a {
        font-size: 13px;
        line-height: 18px;
        font-weight: 400;
        color: #ABC1DA;
        text-decoration: none;
        text-transform: uppercase; }
        #footer .footer-bottom-nav ul li a:hover {
          opacity: .75; }
  #footer .footer-bottom-nav p {
    width: 100%;
    font-size: 13px;
    line-height: 18px;
    font-weight: 400;
    color: #8E9FB5;
    margin: 0;
    padding: 15px 0 0 0; }
    #footer .footer-bottom-nav p a {
      color: #8E9FB5;
      text-decoration: none;
      padding: 0 5px; }
      #footer .footer-bottom-nav p a:first-child {
        padding-left: 0; }
      #footer .footer-bottom-nav p a:hover {
        opacity: .75; }
  @media screen and (max-width: 900px) {
    #footer .footer-bottom-nav ul {
      display: block; } }

/*
- All Sidebars
- About Us Sidebar
- About Us | Staff | Personnel Sidebar
- About Us | Program | Sidebar
- About Us | Program | Center for Prevention & Early Intervention Sidebar
- About Us | WestEd Programs | Individual Program | Projects | Individual Project Sidebar
- About Us | Program | Individual Programs | Custom Sidebars
- About Us | Area of Work | Overview Sidebars
*/
/* ----------------------------------------------------------------------------------------------------------------------------------------------
All Sidebars
----------------------------------------------------------------------------------------------------------------------------------------------*/
/* Sizing
-------------------------------------------------------------------- */
/* wrap max width */
/* Fonts
-------------------------------------------------------------------- */
/* Color Defaults
-------------------------------------------------------------------- */
/* Color Custom
-------------------------------------------------------------------- */
#sidebar .widget, .sidebar .widget {
  margin: 0;
  padding: 0;
  border-top: 0px; }
  #sidebar .widget .widgettitle, .sidebar .widget .widgettitle {
    border-bottom: 0px;
    text-align: center;
    color: #51AF46;
    font-size: 19px; }
  #sidebar .widget .at-a-glance-widget, .sidebar .widget .at-a-glance-widget {
    background-color: white;
    font-family: helvetica;
    font-size: 12px;
    padding: 5px 0px 5px 25px; }
  #sidebar .widget a, #sidebar .widget span, .sidebar .widget a, .sidebar .widget span {
    color: #1669c9 !important;
    font-size: 15px;
    font-weight: 400;
    margin-top: 0px;
    opacity: 1; }
  #sidebar .widget a:hover, .sidebar .widget a:hover {
    color: #1669C9 !important;
    opacity: .75; }
  #sidebar .widget .sidebar_linklist a, .sidebar .widget .sidebar_linklist a {
    color: #1669C9 !important;
    font-weight: 100; }
    #sidebar .widget .sidebar_linklist a:hover, .sidebar .widget .sidebar_linklist a:hover {
      color: #1669C9 !important;
      opacity: .75; }
  #sidebar .widget .email a, .sidebar .widget .email a {
    color: white !important;
    font-size: 15px;
    background: #5A799C; }
  #sidebar .widget .name a, #sidebar .widget .group a, .sidebar .widget .name a, .sidebar .widget .group a {
    font-size: 15px; }
  #sidebar .widget .news_title, #sidebar .widget .name, .sidebar .widget .news_title, .sidebar .widget .name {
    font-size: 15px; }

#sidebar__header, .sidebar__header {
  font-family: "Roboto";
  font-weight: 700;
  color: #51AF46;
  display: block;
  font-size: 19px;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 7px; }

@media only screen and (max-width: 768px) {
  #sidebar, .sidebar {
    width: 100%;
    display: block;
    padding: 20px 0 0 0; } }

/* ----------------------------------------------------------------------------------------------------------------------------------------------
Right Sidebar
----------------------------------------------------------------------------------------------------------------------------------------------*/
#sidebar li {
  padding: 0;
  margin-bottom: 7px;
  padding: 0 !important; }

#sidebar span.thumb {
  display: none; }

/* ----------------------------------------------------------------------------------------------------------------------------------------------
About Us | Overview | Sidebar
----------------------------------------------------------------------------------------------------------------------------------------------*/
.page-about-us .quote {
  display: none; }

.page-about-us #content-sidebar-wrap #section_header {
  display: none; }

.page-about-us #content-sidebar-wrap #main_content_wrap #sidebar .widget_text:not(:nth-child(2)) {
  display: none; }

.page-about-us #content-sidebar-wrap #main_content_wrap #sidebar a:hover, .page-about-us #content-sidebar-wrap #main_content_wrap #sidebar a:link, .page-about-us #content-sidebar-wrap #main_content_wrap #sidebar a:active, .page-about-us #content-sidebar-wrap #main_content_wrap #sidebar a:visited {
  font-size: 18px;
  border-bottom: 2px dotted #1669C9 !important;
  color: #3F648F !important; }

.page-about-us #content-sidebar-wrap #main_content_wrap .widgettitle {
  text-align: left; }

.page-about-us #content-sidebar-wrap #main_content_wrap .at-a-glance-widget {
  padding: 0; }
  .page-about-us #content-sidebar-wrap #main_content_wrap .at-a-glance-widget table {
    border-collapse: collapse; }
  .page-about-us #content-sidebar-wrap #main_content_wrap .at-a-glance-widget th, .page-about-us #content-sidebar-wrap #main_content_wrap .at-a-glance-widget td {
    float: left;
    clear: both; }
  .page-about-us #content-sidebar-wrap #main_content_wrap .at-a-glance-widget th {
    font-family: "Roboto";
    color: #51AF46;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 10px; }
  .page-about-us #content-sidebar-wrap #main_content_wrap .at-a-glance-widget td {
    color: #3F648F;
    font-size: 17px;
    font-weight: 500; }

/* ----------------------------------------------------------------------------------------------------------------------------------------------
  About Us | Staff | Sidebar
  ---------------------------------------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width: 830px) {
  .single-personnel .sidebar--left {
    float: none;
    padding: 0;
    width: 100%;
    margin-bottom: 15px;
    display: block; } }

@media screen and (max-width: 480px) {
  .single-personnel .sidebar--left {
    width: 100%; } }

@media screen and (max-width: 480px) {
  .single-personnel .sidebar--left .widget {
    padding: 0; } }

.single-personnel .sidebar--left .sidebar__title {
  font-family: "Roboto";
  font-weight: 700;
  color: #51AF46;
  display: block;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-top: 25px; }

.single-personnel .sidebar--left .address, .single-personnel .sidebar--left .fax {
  display: none; }

.single-personnel .sidebar--left .icon {
  background: none;
  display: none !important; }

.single-personnel .sidebar--left .phone {
  font-size: 16px;
  color: #3F648F !important;
  font-weight: 700;
  padding: 0; }
  .single-personnel .sidebar--left .phone:before {
    content: "tel:";
    margin-right: 5px; }

.single-personnel .sidebar--left .email {
  width: 143px;
  padding: 5px 0;
  margin: 20px 0 0 0;
  border-radius: 4px;
  background-color: #5A799C;
  text-decoration: none; }
  .single-personnel .sidebar--left .email a {
    text-decoration: none;
    font-size: 15px;
    text-align: center;
    width: 100%;
    display: block; }
    .single-personnel .sidebar--left .email a:hover, .single-personnel .sidebar--left .email a:link, .single-personnel .sidebar--left .email a:active, .single-personnel .sidebar--left .email a:visited {
      color: white !important;
      border-bottom: none !important; }

.single-personnel .sidebar--left .personnel_job_title {
  font-size: 16px;
  color: #3F648F;
  font-weight: 700;
  margin-top: 0px; }

.single-personnel .sidebar--left #bio_pic {
  float: none;
  text-align: left;
  display: block; }
  @media screen and (max-width: 765px) {
    .single-personnel .sidebar--left #bio_pic {
      padding: 0; } }
  .single-personnel .sidebar--left #bio_pic img {
    border: none; }

.single-personnel .sidebar--left #sidebar_contact {
  border-top: none;
  margin-top: 0;
  padding-top: 0; }
  .single-personnel .sidebar--left #sidebar_contact .widgettitle {
    display: none !important; }

.single-personnel #main_content_wrap #sidebar {
  /* .widget */ }
  @media screen and (max-width: 1017px) {
    .single-personnel #main_content_wrap #sidebar {
      margin: 25px 0 0 23%;
      float: left;
      width: auto; } }
  @media screen and (max-width: 830px) {
    .single-personnel #main_content_wrap #sidebar {
      margin: 25px 0 0 0;
      float: none; } }
  .single-personnel #main_content_wrap #sidebar #content {
    padding-right: 0;
    width: 100%; }
    .single-personnel #main_content_wrap #sidebar #content #sidebar_related_programs a:hover {
      color: #1669C9 !important;
      opacity: .75; }
  .single-personnel #main_content_wrap #sidebar li {
    border-bottom: none; }
  .single-personnel #main_content_wrap #sidebar .widget {
    border-bottom: 1px solid #E3ECF9;
    margin: 0;
    width: 100%;
    padding: 15px 0 6px 0; }
    .single-personnel #main_content_wrap #sidebar .widget .widget-wrap .widgettitle {
      text-align: left;
      text-transform: capitalize;
      font-weight: 700;
      color: #3F648F !important;
      font-size: 16px;
      margin: 0 0 10px 0;
      padding: 0; }
    .single-personnel #main_content_wrap #sidebar .widget a, .single-personnel #main_content_wrap #sidebar .widget .name {
      width: 100%; }
    .single-personnel #main_content_wrap #sidebar .widget:last-child {
      border-bottom: none;
      padding-bottom: 0; }
    .single-personnel #main_content_wrap #sidebar .widget .icon, .single-personnel #main_content_wrap #sidebar .widget img, .single-personnel #main_content_wrap #sidebar .widget .all_news_link, .single-personnel #main_content_wrap #sidebar .widget .news_date {
      display: none !important; }

/* ----------------------------------------------------------------------------------------------------------------------------------------------
  About Us | Working With WestEd Sidebar
 ---------------------------------------------------------------------------------------------------------------------------------------------- */
.page-working-with-wested #sidebar {
  width: 22%; }
  @media only screen and (max-width: 768px) {
    .page-working-with-wested #sidebar p:last-child {
      margin-bottom: 0; } }
  @media only screen and (max-width: 995px) {
    .page-working-with-wested #sidebar {
      display: block;
      float: left;
      width: 100%;
      padding: 20px 0 0 0; } }
  @media only screen and (max-width: 768px) {
    .page-working-with-wested #sidebar .widget {
      padding: 10px 0;
      margin: 0; } }
  .page-working-with-wested #sidebar .widget .widgettitle {
    display: block;
    text-align: left; }
  .page-working-with-wested #sidebar .textwidget {
    font-weight: 500; }

/* ----------------------------------------------------------------------------------------------------------------------------------------------
 About Us | Program Sidebar
 ---------------------------------------------------------------------------------------------------------------------------------------------- */
.single-program #sidebar {
  width: 17%; }
  @media only screen and (max-width: 950px) {
    .single-program #sidebar {
      float: left;
      width: 100% !important; } }
  .single-program #sidebar .widget {
    line-height: 25px;
    margin: 0 0 15px 0; }
    @media only screen and (max-width: 950px) {
      .single-program #sidebar .widget {
        margin-top: 15px; }
        .single-program #sidebar .widget:last-child {
          margin-bottom: 0; } }
    .single-program #sidebar .widget .widgettitle {
      font-size: 10px;
      font-weight: 700;
      margin: 0;
      padding: 0;
      text-align: left;
      letter-spacing: .9px; }
    .single-program #sidebar .widget .phone, .single-program #sidebar .widget .address {
      display: none; }
    .single-program #sidebar .widget .director_name {
      font-weight: 700 !important;
      padding: 10px 0 0 0;
      border-bottom: 0; }
      @media only screen and (max-width: 768px) {
        .single-program #sidebar .widget .director_name {
          margin: 0; } }
    .single-program #sidebar .widget .contactInfo {
      border-bottom: none; }
      .single-program #sidebar .widget .contactInfo .email {
        width: 100%;
        margin-top: 0px; }
        @media only screen and (max-width: 950px) {
          .single-program #sidebar .widget .contactInfo .email {
            width: auto; }
            .single-program #sidebar .widget .contactInfo .email a {
              padding-left: 15px;
              padding-right: 15px; } }
        .single-program #sidebar .widget .contactInfo .email a {
          font-size: 15px;
          display: block;
          width: 100%;
          padding: 4px;
          text-align: center;
          text-transform: capitalize;
          color: white;
          border-bottom: none;
          border-radius: 5px;
          background: #3F648F; }
      .single-program #sidebar .widget .contactInfo .name {
        font-size: 18px;
        font-weight: 700; }
        .single-program #sidebar .widget .contactInfo .name a {
          font-size: 18px;
          font-weight: 700;
          border-bottom: none; }
    .single-program #sidebar .widget .icon {
      display: none !important;
      background: none; }
  .single-program #sidebar #sidebar_website {
    display: none; }
  .single-program #sidebar #sidebar_social_media {
    display: none; }

/* --------------------------------------------------------------------------------------------------------------------------------------------
  About Us | WestEd Programs | Individual Program | Projects | Invidual Project Sidebar
  ---------------------------------------------------------------------------------------------------------------------------------------------- */
.single-project #sidebar {
  width: 30%; }
  @media only screen and (max-width: 768px) {
    .single-project #sidebar {
      float: left;
      width: 100%;
      padding-top: 0; } }
  .single-project #sidebar .widget .widgettitle {
    font-size: 10px;
    font-weight: 700;
    line-height: 13px;
    margin: 0 0 0 110px;
    padding: 0;
    text-align: left;
    letter-spacing: .5px; }
  @media only screen and (max-width: 768px) {
    .single-project #sidebar .widget {
      margin-bottom: 15px; } }
  .single-project #sidebar .contactInfo {
    float: left;
    clear: both;
    overflow: hidden;
    margin-top: -10px;
    padding-bottom: 20px;
    border-bottom: 0; }
    .single-project #sidebar .contactInfo:nth-of-type(n+2) .name {
      margin-top: 0; }
    .single-project #sidebar .contactInfo:nth-of-type(n+2) .photo img {
      margin-top: 7px; }
    .single-project #sidebar .contactInfo .photo {
      float: left; }
      .single-project #sidebar .contactInfo .photo img {
        width: 90px;
        margin-right: 20px;
        border-radius: 5px; }
    @media only screen and (max-width: 768px) {
      .single-project #sidebar .contactInfo:last-child {
        padding-bottom: 0; } }
    .single-project #sidebar .contactInfo .name {
      float: left;
      color: #546B85 !important;
      font-size: 18px;
      font-weight: 700;
      margin: 10px 0 5px 0;
      padding: 0; }
      .single-project #sidebar .contactInfo .name a {
        font-size: 18px;
        font-weight: 700;
        color: #1669C9 !important;
        border-bottom: none !important; }
  .single-project #sidebar .phone-fax-container {
    float: left;
    width: 55%;
    min-width: 150px;
    height: auto; }
    .single-project #sidebar .phone-fax-container .icon {
      display: none !important; }
    .single-project #sidebar .phone-fax-container .email {
      font-size: 15px;
      float: left;
      clear: both;
      width: 100%; }
      .single-project #sidebar .phone-fax-container .email a {
        font-weight: 400;
        padding: 6px 13px;
        border-bottom: 0;
        border-radius: 5px; }
    .single-project #sidebar .phone-fax-container .phone {
      font-size: 13px;
      margin: 7px 0 0 0;
      color: #819AB6 !important;
      font-weight: 400; }

/* ----------------------------------------------------------------------------------------------------------------------------------------------
  About Us | Program | Individual Programs | Custom Sidebars
  ---------------------------------------------------------------------------------------------------------------------------------------------- */
.postid-31473 #sidebar .widget, .postid-31474 #sidebar .widget, .postid-31472 #sidebar .widget, .postid-31464 #sidebar .widget, .postid-31467 #sidebar .widget, .postid-31468 #sidebar .widget, .postid-31469 #sidebar .widget, .postid-31471 #sidebar .widget {
  margin: 0;
  /* .first-child */ }
  .postid-31473 #sidebar .widget:first-child .textwidget, .postid-31474 #sidebar .widget:first-child .textwidget, .postid-31472 #sidebar .widget:first-child .textwidget, .postid-31464 #sidebar .widget:first-child .textwidget, .postid-31467 #sidebar .widget:first-child .textwidget, .postid-31468 #sidebar .widget:first-child .textwidget, .postid-31469 #sidebar .widget:first-child .textwidget, .postid-31471 #sidebar .widget:first-child .textwidget {
    /* display: none; */
    /* NP TEST */ }
  .postid-31473 #sidebar .widget:nth-of-type(2) .widgettitle, .postid-31474 #sidebar .widget:nth-of-type(2) .widgettitle, .postid-31472 #sidebar .widget:nth-of-type(2) .widgettitle, .postid-31464 #sidebar .widget:nth-of-type(2) .widgettitle, .postid-31467 #sidebar .widget:nth-of-type(2) .widgettitle, .postid-31468 #sidebar .widget:nth-of-type(2) .widgettitle, .postid-31469 #sidebar .widget:nth-of-type(2) .widgettitle, .postid-31471 #sidebar .widget:nth-of-type(2) .widgettitle {
    display: none; }

/* --------------------------------------------------------------------------------------------------------------------------------------------
  About Us | Area of Work | Overview Sidebar
  ---------------------------------------------------------------------------------------------------------------------------------------------- */
.single-area_of_work #content #sidebar_related_news {
  float: left;
  clear: none;
  width: 47%;
  margin: 0 3% 0 0;
  padding: 30px 0; }
  @media only screen and (max-width: 950px) {
    .single-area_of_work #content #sidebar_related_news {
      width: 100%; } }
  @media only screen and (max-width: 420px) {
    .single-area_of_work #content #sidebar_related_news:last-child {
      margin-top: 30px; } }
  .single-area_of_work #content #sidebar_related_news ul.newslist {
    padding: 0; }
    .single-area_of_work #content #sidebar_related_news ul.newslist li a {
      width: 100%; }
  .single-area_of_work #content #sidebar_related_news .heading_bar {
    background: none !important; }
    .single-area_of_work #content #sidebar_related_news .heading_bar .viewmore {
      display: none; }
    .single-area_of_work #content #sidebar_related_news .heading_bar h4 {
      color: #51AF46 !important;
      border-left: none !important;
      font-family: "Roboto Slab" !important;
      font-size: 28px !important;
      font-weight: 100 !important;
      text-transform: capitalize !important;
      margin: 0 0 35px 0 !important;
      padding: 0 !important; }
  .single-area_of_work #content #sidebar_related_news .widget_news_post {
    float: left;
    width: 100%;
    border: none;
    min-height: 130px;
    padding: 0; }
    .single-area_of_work #content #sidebar_related_news .widget_news_post .news_thumb {
      min-height: 120px;
      min-width: 120px;
      margin-right: 25px;
      margin-bottom: 15px;
      background: #ccc; }
      @media only screen and (max-width: 430px) {
        .single-area_of_work #content #sidebar_related_news .widget_news_post .news_thumb {
          float: none; } }
      .single-area_of_work #content #sidebar_related_news .widget_news_post .news_thumb img {
        max-width: 150px;
        border-radius: 5px; }
        @media only screen and (max-width: 430px) {
          .single-area_of_work #content #sidebar_related_news .widget_news_post .news_thumb img {
            margin: 15px 0; } }
    .single-area_of_work #content #sidebar_related_news .widget_news_post .news_title {
      color: #1669C9;
      font-size: 17px; }
    .single-area_of_work #content #sidebar_related_news .widget_news_post .news_date {
      display: none; }
    .single-area_of_work #content #sidebar_related_news .widget_news_post .excerpt {
      font-size: 16px;
      font-weight: 300;
      line-height: 24px; }

.single-area_of_work #sidebar {
  width: 100%; }

@media screen and (max-width: 830px) {
  .single-personnel #sidebar_contact .phone-fax-container {
    display: block !important;
    clear: both; }
  .single-personnel #sidebar_contact span.email {
    display: block !important;
    float: none !important;
    width: auto !important;
    max-width: 200px !important;
    margin: 15px 0 0 0 !important; } }

@media screen and (max-width: 830px) {
  .single-personnel > #wrap > #inner .wrap #content-sidebar-wrap #main_content_wrap .entry-content {
    width: 100% !important;
    display: block !important;
    margin-bottom: 30px !important; } }

/* --------------------------------------------------------------------

Hero Styling

-------------------------------------------------------------------- */
/* Sizing
-------------------------------------------------------------------- */
/* wrap max width */
/* Fonts
-------------------------------------------------------------------- */
/* Color Defaults
-------------------------------------------------------------------- */
/* Color Custom
-------------------------------------------------------------------- */
/* Hero / Global
-------------------------------------------------------------------- */
#hero {
  display: block;
  width: 100%;
  height: auto;
  background-size: cover;
  background-color: #3F648F;
  background-repeat: no-repeat;
  background-position: top center;
  /* Slider */
  /* hide subsubnav login link */ }
  #hero .wrap {
    overflow: visible !important;
    max-width: 1040px;
    margin: 0 auto;
    padding: 40px 20px; }
    #hero .wrap:before, #hero .wrap:after {
      content: "";
      display: table; }
    #hero .wrap:after {
      clear: both; }
  #hero .subtitle,
  #hero h1 a,
  #hero .breadcrumbs {
    display: block;
    font-family: "Roboto";
    font-size: 13px;
    line-height: 18px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #c4d5e8;
    text-transform: uppercase;
    text-decoration: none;
    margin: 0 0 3px 0;
    padding: 0; }
    #hero .subtitle a,
    #hero h1 a a,
    #hero .breadcrumbs a {
      text-decoration: none;
      border: none;
      color: #c4d5e8; }
  #hero p a {
    text-decoration: none !important; }
  #hero .breadcrumbs span.section::after,
  #hero .breadcrumbs span.parent::after,
  #hero .breadcrumbs span.section_sub::after {
    content: " > "; }
  #hero .breadcrumbs span:last-of-type::after {
    display: none; }
  #hero h1, #hero h1 + h2 {
    font-family: "Roboto Slab";
    font-size: 28px;
    line-height: 30px;
    font-weight: 400;
    letter-spacing: 1px;
    color: #fff;
    margin: 0;
    padding: 0; }
  #hero h1 span.wested-insights {
    font-family: "Roboto";
    font-size: 16px;
    line-height: 18px;
    font-weight: 500;
    text-transform: lowercase; }
  #hero .intro h2, #hero .intro p {
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
    color: #fff;
    margin: 0;
    padding: 0; }
  #hero .intro h2 {
    margin-bottom: 20px; }
  #hero a.btn-contact {
    display: inline-block;
    background-color: #fff;
    font-size: 16px;
    line-height: 20px;
    font-weight: 700;
    color: #1669c9;
    text-decoration: none;
    border-radius: 3px;
    margin: 30px 0 30px 0;
    padding: 8px 16px; }
    #hero a.btn-contact:hover {
      opacity: .75; }
  #hero .slider {
    border: none;
    overflow: initial;
    margin: 0 !important;
    padding: 0 0 20px 0 !important;
    /* pagination */ }
    #hero .slider.entry-content a {
      border: none !important;
      text-decoration: underline !important; }
    #hero .slider h2, #hero .slider p {
      font-family: "Roboto" !important;
      font-size: 18px !important;
      line-height: 24px !important;
      font-weight: 400 !important;
      color: #fff !important;
      text-transform: none !important;
      border: none !important;
      margin: 0 0 15px 0 !important;
      padding: 0 !important; }
    #hero .slider h2 a:hover, #hero .slider p a:hover {
      opacity: .75;
      color: #fff;
      border-bottom: 1px dotted #fff; }
    #hero .slider .intro_slide_pager {
      position: relative !important;
      bottom: 0;
      width: 100%;
      text-align: center;
      margin: 20px auto !important;
      margin-bottom: -20px !important;
      padding: 0 !important; }
      #hero .slider .intro_slide_pager .bx-pager {
        margin: 0 auto !important; }
  #hero .hero-content {
    margin: 15px 0 0 0;
    padding: 0;
    /* Quotes */ }
    #hero .hero-content p {
      font-size: 18px;
      line-height: 24px;
      font-weight: 400;
      color: #fff;
      margin: 0;
      padding: 0; }
      #hero .hero-content p a {
        text-decoration: underline !important;
        color: #fff; }
    #hero .hero-content p + p {
      margin-top: 15px; }
    #hero .hero-content blockquote {
      margin: 0;
      padding: 0; }
      #hero .hero-content blockquote p {
        font-size: 24px;
        line-height: 30px;
        font-weight: 400; }
        #hero .hero-content blockquote p:before {
          display: block;
          float: left;
          width: 112px;
          height: 80px;
          background: url("../images/quote.svg") center center/contain no-repeat;
          content: '';
          margin: 5px 20px 100px 0; }
        #hero .hero-content blockquote p::after {
          content: "\201D"; }
      @media screen and (max-width: 750px) {
        #hero .hero-content blockquote p:before {
          height: 60px;
          margin-bottom: 40px; } }
    #hero .hero-content p cite {
      display: block;
      font-size: 15px;
      text-align: right;
      padding-right: 20%;
      margin-top: 20px; }
      #hero .hero-content p cite:before {
        content: '\2014'; }
  #hero #subsubmenu_login {
    display: none !important; }

/* Hero / Photos
-------------------------------------------------------------------- */
/* About Us */
.page-about-us #hero {
  background-image: url("/wp-content/themes/wested/images/about-us-hero-overview-bg.png"); }

/* About Us | Board of Directors */
.page-board-of-directors #hero {
  background-image: url("/wp-content/themes/wested/images/about-us-hero-board-of-directors-bg.png"); }

/* About Us | Leadership */
.page-leadership #hero {
  background-image: url("/wp-content/themes/wested/images/about-us-hero-leadership-bg.png"); }

/* About Us | Staff Directory */
.page-staff-directory #hero {
  background-image: url("/wp-content/themes/wested/images/about-us-hero-staff-bg.png"); }

/* About Us | Programs */
.page-programs #hero {
  background-image: url("/wp-content/themes/wested/images/about-us-hero-programs-bg.png"); }

/* AOW / College & Career */
body.college-career #hero {
  background-image: url("/wp-content/themes/wested/images/hero/AOW-Hero-College.png"); }

/* AOW / Early Childhood */
body.early-childhood-development-learning #hero {
  background-image: url("/wp-content/themes/wested/images/hero/AOW-Hero-Early-Childhood.png"); }

/* AOW / ELL */
body.english-language-learners #hero {
  background-image: url("/wp-content/themes/wested/images/hero/AOW-Hero-ELL.png"); }

/* AOW / Health, Safety, & Well-Being */
body.health-safety-well-being #hero {
  background-image: url("/wp-content/themes/wested/images/hero/AOW-Hero-Health.png"); }

/* AOW / Literacy */
body.literacy #hero {
  background-image: url("/wp-content/themes/wested/images/hero/AOW-Hero-Literacy.png"); }

/* AOW / Schools, Districts, & State Education Systems */
body.schools-districts-state-education-systems #hero {
  background-image: url("/wp-content/themes/wested/images/hero/AOW-Hero-School-Systems.png"); }

/* AOW / Science, Technology, Engineering, & Mathematics */
body.science-technology-engineering-mathematics #hero {
  background-image: url("/wp-content/themes/wested/images/hero/AOW-Hero-STEM.png"); }

/* AOW / Special Ed */
body.special-education #hero {
  background-image: url("/wp-content/themes/wested/images/hero/AOW-Hero-SpecEd.png"); }

/* AOW / Standards, Assessment, & Accountability */
body.standards-assessment-accountability #hero {
  background-image: url("/wp-content/themes/wested/images/hero/AOW-Hero-Standards.png"); }

/* AOW / Teachers & Leaders */
body.teachers-leaders #hero {
  background-image: url("/wp-content/themes/wested/images/hero/AOW-Hero-Teachers.png"); }

/* AOW / Four Domains */
body.four-domains #hero {
  background-image: url("/wp-content/themes/wested/images/hero/AOW-Hero-Four-Domains.png"); }

/* AOW / Charters & Choice */
body.charters-choice #hero {
  background-image: url("/wp-content/themes/wested/images/hero/AOW-Hero-Charters.png"); }

/* AOW / Trauma */
body.trauma #hero {
  background-image: url("/wp-content/themes/wested/images/hero/2019-03-trauma-hero.png"); }

/* Research & Evaluation | Landing, What We Do */
.page-research-evaluation #hero {
  background-image: url("/wp-content/themes/wested/images/hero/hero-photo-research-evaluation.png"); }

/* Research & Evaluation | How We Can Help */
.research-evaluation.page-how-we-can-help #hero {
  background-image: url("/wp-content/themes/wested/images/hero-photo-research-evaluation-help.png"); }

/* Research & Evaluation | Reports & Publications */
.research-evaluation.page-reports-publications #hero {
  background-image: url("/wp-content/themes/wested/images/hero-photo-research-evaluation-reportspub.png"); }

/* Research & Evaluation / Research Blog */
.research-evaluation.page-research-blog #hero {
  background-image: url("/wp-content/themes/wested/images/hero-photo-research-evaluation-researchblog.png"); }

/* PLTA landing */
.page-professional-learning-and-technical-assistance #hero {
  background-image: url("/wp-content/themes/wested/images/hero-photo-plta.png"); }

/* Orphan | WestEd in New York, Georgia, Florida */
.new-york #hero, .georgia #hero, .florida #hero {
  background-image: url("/wp-content/themes/wested/images/hero-photo-newyork.png"); }

/* Orphan | Teacher Professional Development */
.teacher-professional-development #hero {
  background-image: url("/wp-content/uploads/2018/07/Hero-Services-Quality-Teaching-for-English-Learners.png"); }

/* Hero / Subnav
-------------------------------------------------------------------- */
#hero #subsubmenu, .hero-subnav {
  clear: both;
  border-top: 1px solid #fff;
  margin: 30px 0 0 0;
  padding: 30px 0 0 0; }
  #hero #subsubmenu ul, .hero-subnav ul {
    display: block;
    width: 100%;
    text-align: center;
    background-color: transparent !important;
    margin: 0 auto;
    padding: 0; }
    #hero #subsubmenu ul li, .hero-subnav ul li {
      display: inline-block;
      padding: 0 30px;
      border: none;
      /* other resources dropdown */ }
      #hero #subsubmenu ul li:hover, .hero-subnav ul li:hover {
        background: none; }
      #hero #subsubmenu ul li a, .hero-subnav ul li a {
        cursor: pointer;
        display: block;
        height: auto !important;
        color: white;
        font-size: 16px;
        font-family: "Roboto";
        line-height: 20px;
        font-weight: 700;
        letter-spacing: .5px;
        text-transform: uppercase;
        text-decoration: none;
        background: none !important;
        padding: 0; }
        #hero #subsubmenu ul li a:hover, .hero-subnav ul li a:hover {
          background: none;
          line-height: 20px;
          opacity: .75; }
        #hero #subsubmenu ul li a .icon, .hero-subnav ul li a .icon {
          display: none !important; }
        #hero #subsubmenu ul li a.sf-with-ul, .hero-subnav ul li a.sf-with-ul {
          background: url("../images/nav-arrow-down-white.png") no-repeat right 5px !important;
          padding-right: 24px; }
      #hero #subsubmenu ul li.current_page_item, #hero #subsubmenu ul li.current-menu-item, .hero-subnav ul li.current_page_item, .hero-subnav ul li.current-menu-item {
        background: none; }
        #hero #subsubmenu ul li.current_page_item a:link, #hero #subsubmenu ul li.current_page_item a:hover, #hero #subsubmenu ul li.current_page_item a:active, #hero #subsubmenu ul li.current-menu-item a:link, #hero #subsubmenu ul li.current-menu-item a:hover, #hero #subsubmenu ul li.current-menu-item a:active, .hero-subnav ul li.current_page_item a:link, .hero-subnav ul li.current_page_item a:hover, .hero-subnav ul li.current_page_item a:active, .hero-subnav ul li.current-menu-item a:link, .hero-subnav ul li.current-menu-item a:hover, .hero-subnav ul li.current-menu-item a:active {
          background: none;
          border-bottom: 5px solid white;
          padding: 0 0 5px 0; }
      #hero #subsubmenu ul li .sub-menu, .hero-subnav ul li .sub-menu {
        width: 200px;
        height: auto;
        box-shadow: 0 7px 20px -3px rgba(0, 0, 0, 0.25);
        background-color: #fff !important;
        margin: 0;
        padding: 0; }
        #hero #subsubmenu ul li .sub-menu li, .hero-subnav ul li .sub-menu li {
          float: none;
          display: block;
          margin: 0;
          padding: 0; }
          #hero #subsubmenu ul li .sub-menu li.current_page_item a, .hero-subnav ul li .sub-menu li.current_page_item a {
            border: none;
            padding: 10px 10px; }
          #hero #subsubmenu ul li .sub-menu li a, .hero-subnav ul li .sub-menu li a {
            display: block;
            font-size: 14px;
            line-height: 18px;
            font-weight: 500;
            color: #546B85;
            padding: 10px 10px; }
  @media screen and (max-width: 1056px) {
    #hero #subsubmenu ul, .hero-subnav ul {
      margin: 0;
      padding: 0; }
      #hero #subsubmenu ul li, .hero-subnav ul li {
        display: block;
        width: 100%;
        height: auto;
        border-top: none;
        background: none;
        text-align: center;
        margin: 0 0 20px 0;
        padding: 0; }
        #hero #subsubmenu ul li:last-child, .hero-subnav ul li:last-child {
          margin-bottom: 0; }
        #hero #subsubmenu ul li a, .hero-subnav ul li a {
          height: auto;
          display: inline-block;
          padding: 0 0 5px 0 !important; }
          #hero #subsubmenu ul li a.sf-with-ul, .hero-subnav ul li a.sf-with-ul {
            text-indent: -9999px;
            margin: 0 !important;
            padding: 0 !important;
            height: 0 !important; }
        #hero #subsubmenu ul li .sub-menu, .hero-subnav ul li .sub-menu {
          display: block !important;
          width: 100%;
          position: relative;
          width: auto;
          top: 0;
          left: 0;
          background-color: transparent !important;
          box-shadow: none;
          float: none; }
          #hero #subsubmenu ul li .sub-menu li, .hero-subnav ul li .sub-menu li {
            margin: 0 0 20px 0 !important;
            padding: 0; }
            #hero #subsubmenu ul li .sub-menu li a, .hero-subnav ul li .sub-menu li a {
              width: 100%;
              font-size: 16px;
              color: #fff;
              padding: 0; } }

/* Hero / Home
-------------------------------------------------------------------- */
#hero.home {
  /* photo */
  /* content */
  /* pagination */ }
  #hero.home .wrap {
    padding: 0 20px; }
  #hero.home .bx-viewport {
    height: 340px !important; }
  #hero.home .bx-wrapper .bx-loading {
    background-color: transparent !important;
    z-index: 999 !important; }
  #hero.home .img {
    float: left;
    width: 650px;
    height: 340px;
    margin: 0 27px 0 0;
    padding: 0; }
    #hero.home .img img {
      width: inherit !important;
      height: inherit !important; }
  #hero.home .info {
    float: left;
    width: 320px;
    margin: 0;
    padding: 15px 0 0 0; }
    #hero.home .info h3 {
      font-family: "Roboto Slab";
      font-size: 24px;
      line-height: 30px;
      font-weight: 500;
      color: #fff;
      margin: 0 0 20px 0;
      padding: 0; }
      #hero.home .info h3 a {
        color: #fff;
        text-decoration: none; }
        #hero.home .info h3 a:hover {
          opacity: .75; }
    #hero.home .info p {
      font-size: 17px;
      line-height: 24px;
      font-weight: 300;
      letter-spacing: .5px;
      color: #fff;
      margin: 0;
      padding: 0; }
  #hero.home .bx-controls {
    z-index: 99;
    position: absolute;
    bottom: 10px;
    right: 0;
    width: 325px;
    height: 40px; }
    #hero.home .bx-controls .bx-pager {
      position: relative !important;
      top: 0 !important;
      left: 0 !important;
      right: 0 !important;
      bottom: 0 !important;
      margin: 0 !important;
      padding: 0 !important; }
  @media screen and (max-width: 1040px) {
    #hero.home {
      /* Spotlight */ }
      #hero.home .bx-wrapper {
        width: 100%; }
        #hero.home .bx-wrapper .bx-viewport {
          height: 550px !important; }
        #hero.home .bx-wrapper .spotlight_slides .img, #hero.home .bx-wrapper .spotlight_slides .info {
          float: none;
          width: 100%;
          height: auto;
          margin: 0;
          padding: 0; }
        #hero.home .bx-wrapper .spotlight_slides .info {
          margin-top: 30px; }
        #hero.home .bx-wrapper .bx-controls {
          position: relative;
          margin: 0 auto; } }
  @media screen and (max-width: 670px) {
    #hero.home {
      /* Spotlight */ }
      #hero.home .bx-controls {
        display: block; }
      #hero.home .bx-wrapper .spotlight_slides img {
        display: block !important; } }

/* Hero / About Us / Personnel
-------------------------------------------------------------------- */
#hero.personnel h1 {
  display: inline-block;
  font-family: "Roboto";
  font-size: 13px;
  line-height: 18px;
  font-weight: 700;
  letter-spacing: 1px;
  color: #c4d5e8;
  text-transform: uppercase;
  text-decoration: none;
  margin: 0 0 3px 0;
  padding: 0; }
  #hero.personnel h1 a {
    display: inline-block; }

/* Hero / About Us / Personnel / Custom Contact Form
-------------------------------------------------------------------- */
body.email-form #hero.about-us h1 {
  float: none;
  width: auto;
  border: none; }
  body.email-form #hero.about-us h1 a {
    display: inline; }

/* Hero / Programs
-------------------------------------------------------------------- */
#hero.programs {
  /* reset to default h1 */ }
  #hero.programs h1 a {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    color: inherit;
    text-transform: none;
    margin: inherit;
    padding: inherit; }
    #hero.programs h1 a:hover {
      opacity: .75; }

/* Hero / Areas of Work
-------------------------------------------------------------------- */
#hero.aow h1,
#hero.feat-init h1 {
  display: block;
  font-family: "Roboto";
  font-size: 13px;
  line-height: 18px;
  font-weight: 700;
  letter-spacing: 1px;
  color: #c4d5e8;
  text-transform: uppercase;
  text-decoration: none;
  margin: 0 0 3px 0;
  padding: 0; }

#hero.aow h2,
#hero.feat-init h2 {
  margin-bottom: 20px; }

body.page-template-aow-resourcelist-page #subsubmenu ul li#subsubmenu_resources {
  background: none; }
  body.page-template-aow-resourcelist-page #subsubmenu ul li#subsubmenu_resources a:link, body.page-template-aow-resourcelist-page #subsubmenu ul li#subsubmenu_resources a:hover, body.page-template-aow-resourcelist-page #subsubmenu ul li#subsubmenu_resources a:active {
    background: none;
    border-bottom: 5px solid white;
    padding: 0 0 5px 0; }

/* Hero / Areas of Work / Four Domains
-------------------------------------------------------------------- */
#hero.fourdomains {
  background-size: auto; }
  #hero.fourdomains .wrap {
    padding-top: 230px;
    padding-bottom: 30px; }
  #hero.fourdomains .hero-subnav ul li {
    padding: 0 5px; }

/* Hero / Areas of Work / Charters & Choice
-------------------------------------------------------------------- */
#hero.charters-choice {
  background-size: auto; }
  #hero.charters-choice .wrap {
    padding-top: 265px;
    padding-bottom: 30px; }
  #hero.charters-choice .hero-subnav ul li {
    padding: 0 15px; }

/* Hero / Areas of Work / Trauma
-------------------------------------------------------------------- */
#hero.trauma {
  background-size: auto; }
  #hero.trauma .wrap {
    padding-top: 265px;
    padding-bottom: 30px; }
  #hero.trauma .hero-subnav ul li {
    padding: 0 15px; }

/* Hero / Research & Evaluation
-------------------------------------------------------------------- */
#hero.res-eval h1 {
  display: block;
  font-family: "Roboto";
  font-size: 13px;
  line-height: 18px;
  font-weight: 700;
  letter-spacing: 1px;
  color: #c4d5e8;
  text-transform: uppercase;
  text-decoration: none;
  margin: 0 0 3px 0;
  padding: 0; }

#hero.res-eval .hero-column.l-col {
  float: left;
  width: 70%;
  margin: 0;
  padding: 0; }

#hero.res-eval .hero-column.r-col {
  float: right;
  width: 25%;
  margin: 0;
  padding: 0; }
  #hero.res-eval .hero-column.r-col h3 {
    font-size: 17px;
    line-height: 22px;
    font-weight: 700;
    color: #fff;
    margin: 22px 0 10px 0;
    padding: 0; }
  #hero.res-eval .hero-column.r-col ul {
    margin: 0 0 25px 0;
    padding: 0; }
    #hero.res-eval .hero-column.r-col ul li {
      list-style: none;
      margin: 0 0 14px 0;
      padding: 0; }
      #hero.res-eval .hero-column.r-col ul li a {
        display: block;
        border: 1px solid #fff;
        border-radius: 3px;
        font-size: 16px;
        line-height: 20px;
        font-weight: 700;
        color: #fff;
        text-decoration: none;
        padding: 5px 10px; }
        #hero.res-eval .hero-column.r-col ul li a:hover {
          opacity: .75; }

@media screen and (max-width: 800px) {
  #hero.res-eval .hero-column.l-col,
  #hero.res-eval .hero-column.r-col {
    float: none;
    width: 100%;
    margin: 0;
    padding: 0; } }

/* What We Do Subpages */
body.page-template-research-evaluation .hero-subnav ul li.current-page-ancestor a {
  border-bottom: 5px solid white;
  padding: 0 0 5px 0; }

/* Hero / Professional Development, Technical Assistance (separate pages but shared classes)
-------------------------------------------------------------------- */
#hero.services-plta .hero-column.l-col {
  float: left;
  width: 70%;
  margin: 0;
  padding: 0; }
  #hero.services-plta .hero-column.l-col h2 {
    margin-bottom: 20px; }
  #hero.services-plta .hero-column.l-col p {
    margin-bottom: 14px; }
  #hero.services-plta .hero-column.l-col a.btn-contact {
    display: inline-block;
    background-color: #fff;
    font-size: 16px;
    line-height: 20px;
    font-weight: 700;
    color: #1669c9;
    text-decoration: none;
    border-radius: 3px;
    margin: 25px 0 25px 0;
    padding: 8px 16px; }
    #hero.services-plta .hero-column.l-col a.btn-contact:hover {
      opacity: .75; }

#hero.services-plta .hero-column.r-col {
  float: right;
  width: 25%;
  margin: 0;
  padding: 0; }
  #hero.services-plta .hero-column.r-col h3 {
    font-size: 17px;
    line-height: 22px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 10px 0;
    padding: 0; }
  #hero.services-plta .hero-column.r-col ul {
    margin: 0 0 25px 0;
    padding: 0; }
    #hero.services-plta .hero-column.r-col ul li {
      list-style: none;
      margin: 0 0 14px 0;
      padding: 0; }
      #hero.services-plta .hero-column.r-col ul li a {
        display: block;
        border: 1px solid #fff;
        border-radius: 3px;
        font-size: 16px;
        line-height: 20px;
        font-weight: 700;
        color: #fff;
        text-decoration: none;
        padding: 5px 10px; }
        #hero.services-plta .hero-column.r-col ul li a:hover {
          opacity: .75; }

#hero.services-plta #subsubmenu ul li {
  padding: 0 15px; }

@media screen and (max-width: 800px) {
  #hero.services-plta .hero-column.l-col,
  #hero.services-plta .hero-column.r-col {
    float: none;
    width: 100%;
    margin: 0;
    padding: 0; } }

/* Hero / Services
-------------------------------------------------------------------- */
#hero.services {
  background-size: auto; }
  #hero.services .wrap {
    padding-top: 250px;
    padding-bottom: 10px; }

/* Hero / Resources
-------------------------------------------------------------------- */
body.woocommerce #hero.resources {
  /* spotlight */
  /* helpful links */ }
  body.woocommerce #hero.resources .wrap {
    overflow: visible !important; }
  body.woocommerce #hero.resources .hero-content {
    margin-bottom: 25px; }
  body.woocommerce #hero.resources #subsubmenu {
    margin: 22px 0 0 0;
    padding: 20px 0 0 0; }
    body.woocommerce #hero.resources #subsubmenu ul li {
      padding: 0 10px; }
  body.woocommerce #hero.resources .hero-column.l-col {
    margin: 0 0 40px 0;
    /* pagination balls */ }
    body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider {
      width: 700px;
      height: 300px;
      border-top: 4px solid #52749e;
      border-right: 4px solid #52749e;
      border-top-right-radius: 6px;
      margin: 0;
      padding: 30px 30px 30px 5px;
      /* thumbnail */
      /* content */ }
      body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .bx-controls {
        z-index: 333; }
      body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .bx-wrapper {
        height: 260px; }
      body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .bx-viewport {
        overflow: visible !important; }
      body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .photo {
        width: 175px !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important; }
        body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .photo a {
          width: 100% !important;
          height: auto !important; }
          body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .photo a img {
            width: 100% !important;
            height: auto !important;
            box-shadow: 6px 6px 10px rgba(0, 0, 0, 0.25); }
      body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .info {
        width: 450px;
        margin: 0;
        padding: 0; }
        body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .info .spotlight_header {
          font-size: 13px;
          line-height: 18px;
          font-weight: 700;
          letter-spacing: 1px;
          color: #6EA9ED;
          text-transform: uppercase;
          background-color: transparent;
          margin: 0 0 5px 0;
          padding: 0; }
        body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .info h3 a {
          font-family: "Roboto Slab";
          font-size: 22px;
          line-height: 28px;
          font-weight: 500;
          color: #fff;
          margin: 0 0 12px 0;
          padding: 0; }
      body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .excerpt {
        font-size: 18px;
        line-height: 22px;
        font-weight: 500;
        color: #fff;
        margin: 0;
        padding: 0; }
    body.woocommerce #hero.resources .hero-column.l-col .bx-controls {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%; }
      body.woocommerce #hero.resources .hero-column.l-col .bx-controls .bx-pager {
        margin: 0;
        padding: 0; }
  body.woocommerce #hero.resources .hero-column.r-col {
    /* search */ }
    body.woocommerce #hero.resources .hero-column.r-col #product_search_form {
      margin: 0 0 24px 0;
      padding: 0; }
      body.woocommerce #hero.resources .hero-column.r-col #product_search_form form {
        position: relative; }
      body.woocommerce #hero.resources .hero-column.r-col #product_search_form input[type="text"] {
        width: 100%;
        background-color: #fff;
        border: none;
        box-shadow: none;
        font-family: "Roboto";
        font-size: 16px;
        line-height: 24px;
        font-weight: 500;
        color: #546B85;
        border-radius: 3px;
        margin: 0;
        padding: 5px 10px; }
        body.woocommerce #hero.resources .hero-column.r-col #product_search_form input[type="text"]::-webkit-input-placeholder {
          /* Chrome/Opera/Safari */
          color: #999; }
        body.woocommerce #hero.resources .hero-column.r-col #product_search_form input[type="text"]::-moz-placeholder {
          /* Firefox 19+ */
          color: #999; }
        body.woocommerce #hero.resources .hero-column.r-col #product_search_form input[type="text"]:-ms-input-placeholder {
          /* IE 10+ */
          color: #999; }
        body.woocommerce #hero.resources .hero-column.r-col #product_search_form input[type="text"]:-moz-placeholder {
          /* Firefox 18- */
          color: #999; }
      body.woocommerce #hero.resources .hero-column.r-col #product_search_form input[type="submit"] {
        position: absolute;
        top: 7px;
        right: 10px;
        width: 13px;
        height: 20px;
        background-color: transparent;
        background: url("../images/icon-resources-search-arrow-blue.png") no-repeat 0 0;
        margin: 0;
        padding: 0; }
    body.woocommerce #hero.resources .hero-column.r-col h4 {
      font-size: 17px;
      line-height: 20px;
      font-weight: 700;
      color: #fff;
      margin: 0 0 10px 0;
      padding: 0; }
    body.woocommerce #hero.resources .hero-column.r-col .links a {
      font-weight: 500;
      margin-bottom: 12px; }
      body.woocommerce #hero.resources .hero-column.r-col .links a:hover {
        opacity: .75; }
  @media screen and (max-width: 1020px) {
    body.woocommerce #hero.resources .hero-column.l-col,
    body.woocommerce #hero.resources .hero-column.r-col {
      float: none;
      width: 100%;
      margin: 30px 0;
      padding: 0; }
    body.woocommerce #hero.resources .hero-column.l-col {
      height: auto; }
      body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider {
        width: 100%;
        height: auto;
        border: none;
        margin: 0;
        padding: 0; }
        body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .slide {
          width: 100% !important; }
        body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .bx-wrapper,
        body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .bx-viewport {
          height: 250px !important; }
        body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .photo {
          float: left;
          width: 25%;
          margin: 0 30px 30px 0;
          padding: 0; }
        body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .info {
          float: left;
          width: 70%;
          margin: 0;
          padding: 0 0 0 25px; }
      body.woocommerce #hero.resources .hero-column.l-col .bx-controls {
        position: relative;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0; }
    body.woocommerce #hero.resources .hero-column.r-col {
      margin-top: 60px; } }
  @media screen and (max-width: 700px) {
    body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .photo {
      float: none;
      width: 100%;
      margin: 0 0 30px 0;
      padding: 0; }
    body.woocommerce #hero.resources .hero-column.l-col #spotlight_slider .info {
      float: none;
      width: 100%;
      margin: 30px 0 0 0;
      padding: 0; } }

/* Resource Hero 2
-------------------------------------------------------------------- */
#hero.resources #resource-acct-tools,
#hero.page-hero #resource-acct-tools {
  float: right;
  width: 550px;
  text-align: right;
  margin: 0;
  padding: 0; }
  #hero.resources #resource-acct-tools .acct-tools,
  #hero.page-hero #resource-acct-tools .acct-tools {
    display: inline-block;
    margin: 0;
    padding: 5px 20px 0 0; }
    #hero.resources #resource-acct-tools .acct-tools a,
    #hero.page-hero #resource-acct-tools .acct-tools a {
      font-size: 13px;
      font-weight: 500;
      color: #8fc8fa;
      text-decoration: none;
      text-transform: uppercase;
      padding: 0 1px; }
      #hero.resources #resource-acct-tools .acct-tools a:hover,
      #hero.page-hero #resource-acct-tools .acct-tools a:hover {
        opacity: .75; }
      #hero.resources #resource-acct-tools .acct-tools a:after,
      #hero.page-hero #resource-acct-tools .acct-tools a:after {
        content: " • "; }
      #hero.resources #resource-acct-tools .acct-tools a:last-child:after,
      #hero.page-hero #resource-acct-tools .acct-tools a:last-child:after {
        content: " "; }
  #hero.resources #resource-acct-tools form,
  #hero.page-hero #resource-acct-tools form {
    position: relative;
    opacity: .5;
    display: inline-block;
    min-width: 250px;
    max-width: 250px;
    margin: 0;
    padding: 0; }
    #hero.resources #resource-acct-tools form input[type="text"],
    #hero.page-hero #resource-acct-tools form input[type="text"] {
      width: 100%;
      background-color: #fff;
      border: none;
      box-shadow: none;
      font-family: "Roboto";
      font-size: 16px;
      line-height: 24px;
      font-weight: 500;
      color: #546B85;
      border-radius: 3px;
      margin: 0;
      padding: 5px 10px; }
      #hero.resources #resource-acct-tools form input[type="text"]::-webkit-input-placeholder,
      #hero.page-hero #resource-acct-tools form input[type="text"]::-webkit-input-placeholder {
        /* Chrome/Opera/Safari */
        color: #666; }
      #hero.resources #resource-acct-tools form input[type="text"]::-moz-placeholder,
      #hero.page-hero #resource-acct-tools form input[type="text"]::-moz-placeholder {
        /* Firefox 19+ */
        color: #666; }
      #hero.resources #resource-acct-tools form input[type="text"]:-ms-input-placeholder,
      #hero.page-hero #resource-acct-tools form input[type="text"]:-ms-input-placeholder {
        /* IE 10+ */
        color: #666; }
      #hero.resources #resource-acct-tools form input[type="text"]:-moz-placeholder,
      #hero.page-hero #resource-acct-tools form input[type="text"]:-moz-placeholder {
        /* Firefox 18- */
        color: #666; }
    #hero.resources #resource-acct-tools form input[type="submit"],
    #hero.page-hero #resource-acct-tools form input[type="submit"] {
      position: absolute;
      top: 7px;
      right: 10px;
      width: 13px;
      height: 20px;
      background-color: transparent;
      background: url("../images/icon-resources-search-arrow-blue.png") no-repeat 0 0;
      margin: 0;
      padding: 0; }
  @media screen and (max-width: 800px) {
    #hero.resources #resource-acct-tools,
    #hero.page-hero #resource-acct-tools {
      width: auto;
      padding-bottom: 15px; }
      #hero.resources #resource-acct-tools .acct-tools,
      #hero.resources #resource-acct-tools form,
      #hero.page-hero #resource-acct-tools .acct-tools,
      #hero.page-hero #resource-acct-tools form {
        float: none;
        width: auto;
        min-width: 0;
        max-width: none;
        display: block;
        padding: 0; } }
  @media screen and (max-width: 525px) {
    #hero.resources #resource-acct-tools,
    #hero.page-hero #resource-acct-tools {
      float: none;
      text-align: left; } }

/* My Cart */
body.woocommerce-page #hero.page-hero h1 a {
  font-family: "Roboto Slab";
  font-size: 28px;
  line-height: 30px;
  font-weight: 400;
  letter-spacing: 1px;
  text-transform: none;
  color: #fff;
  margin: 0;
  padding: 0; }

/* Resources / Webinars
-------------------------------------------------------------------- */
body.page-template-webinars-home {
  /* Spotlight */ }
  body.page-template-webinars-home .spotlight {
    float: none;
    width: 100%;
    border-top: 3px solid #52749e;
    margin: 30px 0 0 0;
    padding: 30px 0 0 0;
    /* pagination balls */ }
    body.page-template-webinars-home .spotlight .bx-wrapper {
      width: 85%;
      max-width: none !important;
      margin: 0 auto;
      padding: 0; }
      body.page-template-webinars-home .spotlight .bx-wrapper .spotlight_item {
        width: 100% !important; }
        body.page-template-webinars-home .spotlight .bx-wrapper .spotlight_item .img {
          float: left;
          width: 40%;
          margin: 0;
          padding: 0; }
        body.page-template-webinars-home .spotlight .bx-wrapper .spotlight_item .info {
          float: left;
          width: 60%;
          color: #fff;
          margin: 15px 0 0 0;
          padding: 0 0 0 20px; }
          body.page-template-webinars-home .spotlight .bx-wrapper .spotlight_item .info h4 {
            font-size: 13px;
            line-height: 18px;
            font-weight: 700;
            letter-spacing: 1px;
            color: #6EA9ED;
            text-transform: uppercase;
            background-color: transparent;
            margin: 0 0 5px 0;
            padding: 0; }
          body.page-template-webinars-home .spotlight .bx-wrapper .spotlight_item .info h3 a {
            text-decoration: none;
            font-family: "Roboto Slab";
            font-size: 22px;
            line-height: 28px;
            font-weight: 500;
            color: #fff;
            margin: 0 0 12px 0;
            padding: 0; }
          body.page-template-webinars-home .spotlight .bx-wrapper .spotlight_item .info p {
            font-size: 18px;
            line-height: 22px;
            font-weight: 500;
            color: #fff;
            margin: 0;
            padding: 0; }
    body.page-template-webinars-home .spotlight .bx-controls {
      width: 100%;
      margin-top: 30px; }
      body.page-template-webinars-home .spotlight .bx-controls .bx-pager {
        bottom: 0 !important;
        right: 0 !important;
        text-align: center !important;
        margin: 0;
        padding: 0; }
        body.page-template-webinars-home .spotlight .bx-controls .bx-pager a {
          border: 2px solid #fff;
          background-color: transparent !important;
          margin: 0 5px !important;
          border-radius: 25px;
          opacity: .85; }
          body.page-template-webinars-home .spotlight .bx-controls .bx-pager a.active {
            background-color: #fff !important;
            opacity: 1; }
            body.page-template-webinars-home .spotlight .bx-controls .bx-pager a.active:hover {
              background-color: #fff !important; }
          body.page-template-webinars-home .spotlight .bx-controls .bx-pager a:hover {
            background-color: transparent !important; }
    @media screen and (max-width: 850px) {
      body.page-template-webinars-home .spotlight {
        /* Spotlight */ }
        body.page-template-webinars-home .spotlight .bx-wrapper {
          width: 100%; }
          body.page-template-webinars-home .spotlight .bx-wrapper .spotlight_item .img, body.page-template-webinars-home .spotlight .bx-wrapper .spotlight_item .info {
            float: none;
            width: 100%;
            margin: 0;
            padding: 0; }
          body.page-template-webinars-home .spotlight .bx-wrapper .spotlight_item .info {
            margin-top: 30px; } }
    @media screen and (max-width: 670px) {
      body.page-template-webinars-home .spotlight {
        /* Spotlight */ }
        body.page-template-webinars-home .spotlight .bx-controls {
          display: block; }
        body.page-template-webinars-home .spotlight .bx-wrapper .spotlight_item img {
          display: block !important; } }
    @media screen and (max-width: 580px) {
      body.page-template-webinars-home .spotlight {
        /* Spotlight */ } }

/* Hero / WestEd Events
-------------------------------------------------------------------- */
body.single-wested_event #hero.events h1 {
  display: block;
  font-family: "Roboto";
  font-size: 13px;
  line-height: 18px;
  font-weight: 700;
  letter-spacing: 1px;
  color: #c4d5e8;
  text-transform: uppercase;
  text-decoration: none;
  margin: 0 0 3px 0;
  padding: 0; }
  body.single-wested_event #hero.events h1 a {
    text-decoration: none;
    border: none;
    color: #c4d5e8; }

/* Hero / WestEd in New York
-------------------------------------------------------------------- */
#hero.new-york .hero-subnav ul li {
  padding: 0 12px; }

/* Hero / WestEd News
-------------------------------------------------------------------- */
#hero.wested-news h1 a {
  font-family: "Roboto Slab";
  font-size: 28px;
  line-height: 30px;
  font-weight: 400;
  letter-spacing: 1px;
  color: #fff;
  text-transform: none;
  margin: 0;
  padding: 0; }

/* Hero / R&D Alert
-------------------------------------------------------------------- */
#hero.rd_alert span.subtitle {
  margin: 0 0 -5px 0; }

#hero.rd_alert h1 a {
  font-family: "Roboto Slab";
  font-size: 28px;
  line-height: 30px;
  font-weight: 400;
  letter-spacing: 1px;
  color: #fff;
  margin: 0;
  padding: 0; }

#hero.rd_alert h1 span.reg {
  font-size: 16px !important;
  font-weight: 300 !important;
  vertical-align: super !important;
  margin: 0 !important;
  padding: 0 !important; }

/*
- Profile | Universal - (Board of Directors)
- Profile | Leadership
*/
/* ----------------------------------------------------------------------------------------------------------------------------------------------
Profile | Universal - (Board of Directors)
---------------------------------------------------------------------------------------------------------------------------------------------- */
/* Sizing
-------------------------------------------------------------------- */
/* wrap max width */
/* Fonts
-------------------------------------------------------------------- */
/* Color Defaults
-------------------------------------------------------------------- */
/* Color Custom
-------------------------------------------------------------------- */
.board_person {
  border: none;
  font-family: "Roboto";
  min-height: 190px; }
  .board_person .photo {
    float: left;
    position: relative;
    height: 130px;
    width: 100px; }
    .board_person .photo img {
      border: 1px solid #546B85; }
  .board_person .name {
    background: none;
    color: #3F648F;
    font-size: 20px;
    margin: 0;
    padding: 5px 0 7px 134px; }
  .board_person .title {
    color: #819AB6;
    font-size: 15px;
    font-weight: 300;
    line-height: 20px;
    margin-bottom: 0px;
    padding: 0px 5px 5px 134px; }
  .board_person .locale {
    color: #819AB6;
    font-size: 15px;
    font-weight: 300;
    padding: 0px 5px 5px 134px; }

/* ----------------------------------------------------------------------------------------------------------------------------------------------
Profile | Leadership
---------------------------------------------------------------------------------------------------------------------------------------------- */
.page-leadership #col_full_width {
  width: 100%;
  height: auto;
  overflow: hidden; }
  .page-leadership #col_full_width a.board_person {
    border: none !important;
    width: 16%;
    float: left;
    position: relative;
    overflow: hidden;
    min-height: 240px;
    z-index: 9999; }
    .page-leadership #col_full_width a.board_person:hover {
      border: none;
      cursor: pointer; }
    .page-leadership #col_full_width a.board_person .photo,
    .page-leadership #col_full_width a.board_person .name,
    .page-leadership #col_full_width a.board_person .title {
      display: block;
      margin: 0 auto;
      position: relative;
      float: none;
      padding: 0;
      text-align: center;
      left: 0;
      right: 0;
      top: 0; }
    .page-leadership #col_full_width a.board_person .name {
      background: none;
      font-family: "Roboto";
      font-size: 18px;
      margin-top: 10px;
      color: #1669C9; }
    .page-leadership #col_full_width a.board_person .title {
      width: 100%;
      color: #819AB6;
      font-family: "Roboto";
      font-weight: 400;
      font-size: 13px;
      margin-top: 3px; }

/*
- About Us | Overview
- Areas of Work | Universal
- Areas of Work | Overview
- Areas of Work | Projects
*/
/* ------------------------------------------------------------------------------------------------------------------------------------------
Slider | Universal
-------------------------------------------------------------------------------------------------------------------------------------------- */
/* Sizing
-------------------------------------------------------------------- */
/* wrap max width */
/* Fonts
-------------------------------------------------------------------- */
/* Color Defaults
-------------------------------------------------------------------- */
/* Color Custom
-------------------------------------------------------------------- */
.slider {
  padding: 10px 0 !important;
  margin-bottom: 1em !important;
  border-bottom: 1px solid #fff;
  min-height: auto; }
  .slider .intro_slide {
    color: #fff; }
    .slider .intro_slide h2 a {
      color: #fff; }

.intro_slide_pager, .bx-pager {
  position: static !important;
  width: 175px;
  margin: 30px auto 20px auto; }

.bx-pager-item {
  height: 26px;
  width: 26px;
  margin-right: 9px; }
  .bx-pager-item a {
    background: none !important;
    background-image: url(../images/slider_controls_sprite.png) !important;
    height: 26px !important;
    width: 26px !important;
    margin-right: 9px !important;
    background-position: -35px 0px !important; }
    .bx-pager-item a.active {
      background-position: 0px 0px !important; }

/* ------------------------------------------------------------------------------------------------------------------------------------------
About Us | Overview
-------------------------------------------------------------------------------------------------------------------------------------------- */
.page-about-us .slider {
  background: #ABC1DA url(/wp-content/themes/wested/images/about-us-overview-slider-bg.png) no-repeat top center;
  height: 377px;
  margin-bottom: 0 !important;
  border: 0; }
  @media only screen and (max-width: 796px) {
    .page-about-us .slider .container {
      padding-top: 10px; } }
  @media only screen and (max-width: 515px) {
    .page-about-us .slider .container {
      padding-top: 0; } }
  @media only screen and (max-width: 534px) {
    .page-about-us .slider .slider-about h1 {
      font-size: 25px; } }
  @media only screen and (max-width: 365px) {
    .page-about-us .slider .slider-about h1 {
      font-size: 20px; } }
  .page-about-us .slider .slider-about p {
    font-weight: 700;
    margin-top: 30px;
    color: #3F648F !important; }
    @media only screen and (max-width: 796px) {
      .page-about-us .slider .slider-about p {
        font-size: 22px;
        line-height: 30px; } }
    @media only screen and (max-width: 590px) {
      .page-about-us .slider .slider-about p {
        font-size: 19px; } }
    @media only screen and (max-width: 515px) {
      .page-about-us .slider .slider-about p {
        line-height: 26px; } }
    @media only screen and (max-width: 416px) {
      .page-about-us .slider .slider-about p {
        font-size: 18px; } }
    @media only screen and (max-width: 397px) {
      .page-about-us .slider .slider-about p {
        font-size: 16px;
        line-height: 24px; } }
    @media only screen and (max-width: 329px) {
      .page-about-us .slider .slider-about p {
        font-size: 15px; } }
  .page-about-us .slider .bx-pager {
    margin-top: -25px; }
    @media only screen and (max-width: 796px) {
      .page-about-us .slider .bx-pager {
        margin-top: 0px; } }
    @media only screen and (max-width: 705px) {
      .page-about-us .slider .bx-pager {
        margin-top: -30px; } }
    @media only screen and (max-width: 590px) {
      .page-about-us .slider .bx-pager {
        margin-top: -35px; } }
    @media only screen and (max-width: 534px) {
      .page-about-us .slider .bx-pager {
        margin-top: -25px; } }
    @media only screen and (max-width: 450px) {
      .page-about-us .slider .bx-pager {
        margin-top: -35px; } }
    @media only screen and (max-width: 416px) {
      .page-about-us .slider .bx-pager {
        margin-top: -40px; } }
    @media only screen and (max-width: 397px) {
      .page-about-us .slider .bx-pager {
        margin-top: -15px; } }
    @media only screen and (max-width: 397px) {
      .page-about-us .slider .bx-pager {
        margin-top: -25px; } }
    @media only screen and (max-width: 329px) {
      .page-about-us .slider .bx-pager {
        margin-top: -35px; } }

/* -----------------------------------------------------------------------------------------------------------------------------------------
Slider | WestEd Experts
----------------------------------------------------------------------------------------------------------------------------------------- */
.single-area_of_work .experts-intro {
  float: left;
  width: 25%; }
  @media only screen and (max-width: 950px) {
    .single-area_of_work .experts-intro {
      width: 100%;
      float: none; } }

.single-area_of_work .slider_wrap {
  float: right;
  width: 74%; }
  @media only screen and (max-width: 950px) {
    .single-area_of_work .slider_wrap {
      width: 100%;
      position: relative;
      float: none; } }

.single-area_of_work .experts_slider img {
  max-width: 140px;
  height: auto; }

.single-area_of_work .experts_slider .expert-photo {
  float: left;
  width: 25%; }
  @media only screen and (max-width: 950px) {
    .single-area_of_work .experts_slider .expert-photo {
      margin-top: 15px; } }

.single-area_of_work .experts_slider .expert-content {
  float: right;
  width: 74%; }
  @media only screen and (max-width: 950px) {
    .single-area_of_work .experts_slider .expert-content {
      width: 100%;
      position: relative;
      margin-top: 15px; } }

/*
- About Us | Universal
- About Us | Overview
- About Us | Board of Directors
- About Us | Leadership
- About Us | Staff Directory
- About Us | Staff | About Us | Clients and Funders
- About Us | Working With WestEd
- About Us | WestedEd Programs | Landing
- About Us | WestedEd Programs | Universal
- About Us | WestedEd Programs | Invidiual Program | Overview
- About Us | WestedEd Programs | Invidiual Program | Services
- About Us | WestedEd Programs | Invidiual Program | Projects
- About Us | WestedEd Programs | Invidiual Program | Projects | Invidual Project
- About Us | WestedEd Programs | Invidiual Program | Resources
*/
/* Sizing
-------------------------------------------------------------------- */
/* wrap max width */
/* Fonts
-------------------------------------------------------------------- */
/* Color Defaults
-------------------------------------------------------------------- */
/* Color Custom
-------------------------------------------------------------------- */
/* --------------------------------------------------------------------------------------------------------------------------------------------
About Us | Universal
---------------------------------------------------------------------------------------------------------------------------------------------- */
.content-full-width .featured-content__text p {
  margin-bottom: 15px; }
  .content-full-width .featured-content__text p:last-child {
    margin-bottom: 0; }

/* --------------------------------------------------------------------------------------------------------------------------------------------
About Us | Overview
---------------------------------------------------------------------------------------------------------------------------------------------- */
.page-about-us #content-sidebar-wrap .quote {
  display: none; }

.page-about-us #content-sidebar-wrap #section_header {
  display: none; }

/* ------------------------------------------------------------------------------------------------------------------------------------------
About Us | Board of Directors
-------------------------------------------------------------------------------------------------------------------------------------------- */
.page-board-of-directors #section_header, .page-board-of-directors .entry-child-title {
  display: none; }

@media (max-width: 768px) {
  .page-board-of-directors #main_content_wrap #content .name {
    width: 95%;
    text-align: left;
    word-wrap: break-word; } }

@media only screen and (max-width: 320px) {
  .page-board-of-directors #main_content_wrap #content .name {
    width: 100%;
    text-align: center;
    padding: 20px 0 10px 0; } }

.page-board-of-directors #main_content_wrap #content #col_full_width .board_person {
  float: left;
  width: 33.3%;
  background: white;
  border-bottom: none;
  /* change the layout on smaller devices */ }
  @media only screen and (max-width: 1000px) {
    .page-board-of-directors #main_content_wrap #content #col_full_width .board_person {
      width: 50%;
      min-height: 160px; } }
  @media only screen and (max-width: 765px) {
    .page-board-of-directors #main_content_wrap #content #col_full_width .board_person {
      width: 100%; } }
  .page-board-of-directors #main_content_wrap #content #col_full_width .board_person p {
    background: none !important; }

.page-board-of-directors #main_content_wrap #content #col_full_width .hide_at_mobile {
  display: none; }

@media (max-width: 768px) {
  .page-board-of-directors #main_content_wrap #content .title {
    width: 95%;
    text-align: left;
    word-wrap: break-word; } }

@media only screen and (max-width: 320px) {
  .page-board-of-directors #main_content_wrap #content .title {
    width: 100%;
    text-align: center;
    padding: 0; } }

.page-board-of-directors #main_content_wrap #content .photo {
  left: 0; }
  @media only screen and (max-width: 320px) {
    .page-board-of-directors #main_content_wrap #content .photo {
      display: block;
      float: none;
      margin: 0 auto; } }
  .page-board-of-directors #main_content_wrap #content .photo img {
    border: 1px solid #1b385f; }

@media only screen and (max-width: 320px) {
  .page-board-of-directors #main_content_wrap #content .locale {
    width: 100%;
    text-align: center;
    padding: 5px 0 0 0; } }

.page-board-of-directors #main_content_wrap #content #latest-agenda, .page-board-of-directors #main_content_wrap #content .page_content_box {
  display: none; }

/* -----------------------------------------------------------------------------------------------------------------------------------------
About Us | Leadership
-------------------------------------------------------------------------------------------------------------------------------------------- */
.page-leadership #section_header, .page-leadership .entry-child-title {
  display: none; }

.page-leadership #main_content_wrap #content .title {
  width: 90%; }

.page-leadership #main_content_wrap #content #col_halves {
  display: none; }

.page-leadership #main_content_wrap #content .board_person .photo img {
  border: 1px solid #1b385f !important; }

.page-leadership #main_content_wrap #content #administrative {
  padding: 0;
  margin: 0; }
  .page-leadership #main_content_wrap #content #administrative .board_person:nth-last-child(-n+3) {
    min-height: 200px; }
  @media (max-width: 320px) {
    .page-leadership #main_content_wrap #content #administrative .board_person:nth-last-child(-n+1) {
      min-height: 190px; } }

@media only screen and (max-width: 1000px) {
  .page-leadership #main_content_wrap #content #col_full_width .board_person {
    width: 25%; } }

@media (max-width: 768px) {
  .page-leadership #main_content_wrap #content #col_full_width .board_person {
    width: 32%;
    min-height: 240px; } }

@media (max-width: 570px) {
  .page-leadership #main_content_wrap #content #col_full_width .board_person {
    width: 50%; } }

@media (max-width: 390px) {
  .page-leadership #main_content_wrap #content #col_full_width .board_person {
    width: 100%; } }

.page-leadership #main_content_wrap #content #col_full_width .board_person .title {
  width: 95%; }
  @media (max-width: 320px) {
    .page-leadership #main_content_wrap #content #col_full_width .board_person .title {
      width: 50%; } }

.page-leadership #main_content_wrap .col {
  width: 32%; }

.page-leadership #main_content_wrap #col1 .entry-content {
  display: none; }

.page-leadership #main_content_wrap #col2 #latest_agenda {
  display: none; }

.page-leadership #main_content_wrap #col3 #forum_videos {
  display: none; }

/* -------------------------------------------------------------------------------------------------------------------------------------
About Us | Staff Directory
----------------------------------------------------------------------------------------------------------------------------------------- */
.page-staff-directory #section_header, .page-staff-directory .entry-content {
  display: none; }

.page-staff-directory #top ul {
  line-height: 20px;
  font-weight: 400; }

.page-staff-directory .entry-child-title {
  display: block;
  width: 1040px;
  font-size: 28px;
  font-family: "Roboto Slab";
  color: #51AF46;
  font-weight: 300;
  margin: 0 auto;
  padding: 40px 20px 20px 20px; }
  .page-staff-directory .entry-child-title:after {
    content: ' Directory'; }

.page-staff-directory #main_content_wrap {
  padding-top: 0; }
  .page-staff-directory #main_content_wrap #top .anchor_seperator {
    color: #819AB6;
    font-size: 18px;
    line-height: 3px;
    padding: 0 5px 0 3px; }
  .page-staff-directory #main_content_wrap #top a {
    border-right: none;
    border-bottom: none !important;
    padding: 0; }
    .page-staff-directory #main_content_wrap #top a:hover, .page-staff-directory #main_content_wrap #top a:link, .page-staff-directory #main_content_wrap #top a:active, .page-staff-directory #main_content_wrap #top a:visited {
      border-bottom: none; }
  .page-staff-directory #main_content_wrap .anchor_divider a {
    padding: 0; }
  .page-staff-directory #main_content_wrap a:hover, .page-staff-directory #main_content_wrap a:link, .page-staff-directory #main_content_wrap a:active, .page-staff-directory #main_content_wrap a:visited {
    color: #1669C9 !important;
    background: none;
    text-decoration: none; }
  .page-staff-directory #main_content_wrap .personnel_listing {
    padding: 5px 0;
    border: none; }
    .page-staff-directory #main_content_wrap .personnel_listing .name {
      color: #546B85; }
      .page-staff-directory #main_content_wrap .personnel_listing .name a {
        padding-right: 0; }
      .page-staff-directory #main_content_wrap .personnel_listing .name a {
        padding-right: 0; }
    .page-staff-directory #main_content_wrap .personnel_listing .title {
      color: #819AB6;
      font-weight: 400; }
      @media only screen and (max-width: 480px) {
        .page-staff-directory #main_content_wrap .personnel_listing .title {
          width: 75%; } }

/* -------------------------------------------------------------------------------------------------------------------------------------
About Us | Staff Detail
----------------------------------------------------------------------------------------------------------------------------------------- */
.single-personnel > #wrap > #inner {
  padding-top: 0; }
  .single-personnel > #wrap > #inner .wrap #content-sidebar-wrap #main_content_wrap {
    width: 1024px;
    margin: 0 auto;
    display: block; }
    @media only screen and (max-width: 1017px) {
      .single-personnel > #wrap > #inner .wrap #content-sidebar-wrap #main_content_wrap {
        width: 100%; } }
    .single-personnel > #wrap > #inner .wrap #content-sidebar-wrap #main_content_wrap > #content {
      width: 78%;
      padding-right: 0; }
      @media only screen and (max-width: 1017px) {
        .single-personnel > #wrap > #inner .wrap #content-sidebar-wrap #main_content_wrap > #content {
          width: 100%; } }
    .single-personnel > #wrap > #inner .wrap #content-sidebar-wrap #main_content_wrap .entry-content {
      font-size: 16px;
      line-height: 24px;
      color: #546B85;
      width: 74%; }
      @media only screen and (max-width: 1017px) {
        .single-personnel > #wrap > #inner .wrap #content-sidebar-wrap #main_content_wrap .entry-content {
          width: 77%; } }
      @media only screen and (max-width: 830px) {
        .single-personnel > #wrap > #inner .wrap #content-sidebar-wrap #main_content_wrap .entry-content {
          width: 100%; } }
      .single-personnel > #wrap > #inner .wrap #content-sidebar-wrap #main_content_wrap .entry-content ul li {
        font-size: 16px;
        font-weight: 300;
        color: #546B85; }
      @media only screen and (max-width: 768px) {
        .single-personnel > #wrap > #inner .wrap #content-sidebar-wrap #main_content_wrap .entry-content {
          width: 69%; } }

/* ----------------------------------------------------------------------------------------------------------------------------------------
About Us | Clients and Funders
-------------------------------------------------------------------------------------------------------------------------------------------- */
.page-clients .content-full-width {
  background: white;
  display: none; }

.page-clients #inner {
  padding-top: 0; }

.page-clients #section_header {
  display: none; }

.page-clients .hero {
  background: #3F648F; }

.page-clients .entry-child-title {
  display: none; }

@media only screen and (max-width: 320px) {
  .page-clients #main_content_wrap {
    width: 100%; } }

.page-clients #main_content_wrap .entry-content > p {
  display: none; }

.page-clients #main_content_wrap .entry-content .clients {
  border-bottom: 1px solid #819AB6;
  height: auto;
  display: block;
  overflow: hidden;
  padding: 50px 0; }
  .page-clients #main_content_wrap .entry-content .clients:last-child {
    border-bottom: none; }
  @media only screen and (max-width: 992px) {
    .page-clients #main_content_wrap .entry-content .clients:last-child {
      padding-bottom: 0; } }
  @media only screen and (max-width: 768px) {
    .page-clients #main_content_wrap .entry-content .clients:last-child {
      padding-bottom: 0; } }
  @media only screen and (max-width: 320px) {
    .page-clients #main_content_wrap .entry-content .clients {
      width: 100%;
      padding: 30px 20px 0px 20px; } }
  .page-clients #main_content_wrap .entry-content .clients:first-child {
    padding-top: 0; }
  .page-clients #main_content_wrap .entry-content .clients__title {
    float: left;
    width: 25%; }
    @media only screen and (max-width: 650px) {
      .page-clients #main_content_wrap .entry-content .clients__title {
        width: 100%; } }
    .page-clients #main_content_wrap .entry-content .clients__title h2 {
      color: #51AF46;
      font-family: "Roboto Slab";
      font-weight: 300;
      font-size: 28px;
      line-height: 34px;
      float: left;
      width: 100%;
      padding-right: 20px; }
      @media only screen and (max-width: 768px) {
        .page-clients #main_content_wrap .entry-content .clients__title h2 {
          font-size: 24px; } }
  .page-clients #main_content_wrap .entry-content .clients__names {
    float: left;
    width: 75%; }
    @media only screen and (max-width: 768px) {
      .page-clients #main_content_wrap .entry-content .clients__names {
        width: 100%; } }
    .page-clients #main_content_wrap .entry-content .clients__names ul {
      -webkit-column-count: 3;
      -moz-column-count: 3;
      column-count: 3;
      margin-bottom: 0; }
      @media only screen and (max-width: 768px) {
        .page-clients #main_content_wrap .entry-content .clients__names ul {
          -webkit-column-count: 2;
          -moz-column-count: 2;
          column-count: 2; } }
      @media only screen and (max-width: 650px) {
        .page-clients #main_content_wrap .entry-content .clients__names ul {
          -webkit-column-count: 1;
          -moz-column-count: 1;
          column-count: 1; } }
      .page-clients #main_content_wrap .entry-content .clients__names ul li {
        font-family: "Roboto";
        font-weight: 700;
        margin: 0 0 15px 0;
        line-height: 22px;
        list-style-type: none;
        font-size: 16px;
        color: #3F648F; }
        .page-clients #main_content_wrap .entry-content .clients__names ul li:last-child {
          margin-bottom: 0; }
        @media only screen and (max-width: 650px) {
          .page-clients #main_content_wrap .entry-content .clients__names ul li {
            padding-left: 0; } }

/* -----------------------------------------------------------------------------------------------------------------------------------------
About Us | WestedEd Programs
--------------------------------------------------------------------------------------------------------------------------------------------*/
.page-programs #section_header, .page-programs .entry-content, .page-programs .entry-child-title {
  display: none; }

.page-programs #main_content_wrap {
  padding: 40px 7px; }
  @media only screen and (max-width: 992px) {
    .page-programs #main_content_wrap {
      width: 100% !important;
      padding: 40px 20px; } }

.page-programs .col {
  width: 100%;
  margin: 0; }
  .page-programs .col .program_list_box {
    float: left;
    width: 22%;
    margin: 5px 20px;
    background-color: white;
    border: none;
    border-bottom: none !important;
    min-height: 200px;
    padding: 15px 0;
    /*             @media only screen and (max-width: 992px) {
        &:nth-child(4n + 2) {
          margin-left: 20px;
        }
        &:nth-child(4n+1) {
          margin-right: 20px;
        }
      }
      @media only screen and (max-width: 320px) {
        &:last-child {
          padding-bottom: 0;
        }
      } */
    /*       @media only screen and (max-width: 1027px) {
        width: 32%;
      } */
    /*       @media only screen and (max-width: 768px) {
        width: 27.8%;
      }
      @media only screen and (max-width: 480px) {
        width: 40.50%;
        min-height: 240px;
      }
      @media only screen and (max-width: 320px) {
        width: 85%;
        min-height: 220px;
      } */ }
    .page-programs .col .program_list_box:nth-child(4n + 2) {
      margin-left: 0px; }
    .page-programs .col .program_list_box:nth-child(4n+1) {
      margin-right: 0px; }
    @media only screen and (max-width: 1040px) {
      .page-programs .col .program_list_box {
        width: 33%;
        margin: 0;
        min-height: 240px; }
        .page-programs .col .program_list_box .name {
          width: 85% !important; } }
    @media only screen and (max-width: 740px) {
      .page-programs .col .program_list_box {
        width: 50%;
        margin: 0;
        min-height: 240px; }
        .page-programs .col .program_list_box .name {
          width: 70% !important; } }
    @media only screen and (max-width: 550px) {
      .page-programs .col .program_list_box {
        width: 50%;
        margin: 0;
        min-height: 300px; }
        .page-programs .col .program_list_box .name {
          width: 70% !important; } }
    @media only screen and (max-width: 488px) {
      .page-programs .col .program_list_box {
        width: 100%;
        margin: 0;
        min-height: 240px; }
        .page-programs .col .program_list_box .name {
          width: 50% !important; } }
    .page-programs .col .program_list_box .photo {
      width: 100%;
      padding: 0 0 15px 0; }
      .page-programs .col .program_list_box .photo img {
        height: 140px;
        width: 205px;
        margin: 0 auto;
        display: block;
        border-radius: 5px;
        filter: none;
        -webkit-filter: grayscale(0%); }
    .page-programs .col .program_list_box .name {
      text-align: center;
      color: #1669C9;
      font-size: 18px;
      width: 90%;
      margin: 0 auto;
      display: block; }
      @media only screen and (max-width: 992px) {
        .page-programs .col .program_list_box .name {
          width: 64%;
          margin: 0 auto;
          display: block; } }
      @media only screen and (max-width: 768px) {
        .page-programs .col .program_list_box .name {
          width: 75%;
          margin: 0 auto;
          display: block; } }

/* -----------------------------------------------------------------------------------------------------------------------------------------
About Us | WestedEd Programs | Invidiual Program | Overview
----------------------------------------------------------------------------------------------------------------------------------------- */
.single-program #section_header, .single-program #related_items_header, .single-program #related_items {
  display: none; }

.single-program #main_content_wrap #content {
  width: 83%; }
  @media only screen and (max-width: 950px) {
    .single-program #main_content_wrap #content {
      width: 100%;
      float: left;
      clear: both; } }
  .single-program #main_content_wrap #content .entry-content__body {
    float: left;
    width: 69%;
    padding-right: 30px; }
    @media only screen and (max-width: 950px) {
      .single-program #main_content_wrap #content .entry-content__body {
        width: 100%;
        padding-right: 0; } }
    .single-program #main_content_wrap #content .entry-content__body p {
      width: 100%;
      float: left;
      font-weight: 300; }
  .single-program #main_content_wrap #content .entry-content #program_directors_box {
    float: left;
    width: 210px;
    margin: 0;
    padding: 0;
    min-height: auto;
    border-radius: 5px; }
    @media only screen and (max-width: 950px) {
      .single-program #main_content_wrap #content .entry-content #program_directors_box {
        margin-top: 15px; } }
    .single-program #main_content_wrap #content .entry-content #program_directors_box img {
      border-radius: 5px;
      height: auto; }
    .single-program #main_content_wrap #content .entry-content #program_directors_box #program_directors_names {
      display: none; }

.single-program #recent-news img {
  border-radius: 5px; }

#recent-news {
  background-color: #E3ECF9; }
  #recent-news h2 {
    color: #51AF46;
    font-family: "Roboto Slab";
    font-weight: 100;
    font-weight: normal;
    margin-bottom: 1em; }
  #recent-news .container {
    max-width: 1000px;
    margin: 0 auto;
    padding: 2em 0; }
  #recent-news ul.newslist a {
    display: block;
    width: 100%; }
  #recent-news ul.newslist li {
    width: 50%;
    float: left;
    padding-right: 2em;
    min-height: 250px; }
    #recent-news ul.newslist li .img {
      float: left;
      width: 25%;
      margin-right: 3%; }
      #recent-news ul.newslist li .img img {
        width: 100%;
        height: auto; }
    #recent-news ul.newslist li .info {
      width: 70%;
      float: right;
      color: #546B85;
      font-size: 16px;
      line-height: 24px; }
  #recent-news ul.newslist h3 {
    color: #1669C9;
    font-size: 17px;
    line-height: 23px;
    margin-bottom: 10px; }
  #recent-news ul.newslist:after {
    content: "";
    display: table;
    clear: both; }

.view_more_btn {
  text-align: center; }
  .view_more_btn a {
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    text-decoration: none;
    letter-spacing: .5px !important;
    padding: 7px 12px;
    display: inline-block;
    border-radius: 4px;
    background-color: #5A799C; }

/* -----------------------------------------------------------------------------------------------------------------------------------------
About Us | WestedEd Programs | Invidiual Program | Services
----------------------------------------------------------------------------------------------------------------------------------------- */
.page-services #section_header {
  display: none; }

.page-services .intro {
  padding: 0 0 40px 0; }
  @media only screen and (max-width: 768px) {
    .page-services .intro {
      padding: 0 0 20px 0; } }
  .page-services .intro__wrap {
    width: 1024px;
    display: block;
    position: relative;
    float: none;
    margin: 0 auto;
    height: auto;
    overflow: hidden; }
    @media only screen and (max-width: 768px) {
      .page-services .intro__wrap {
        width: 100%; } }
    .page-services .intro__wrap p {
      font-size: 16px;
      line-height: 24px;
      font-weight: 300;
      margin-bottom: 15px; }
      .page-services .intro__wrap p:last-child {
        margin-bottom: 0; }

.page-services .col {
  width: 95%;
  margin: 0;
  padding: 0;
  float: right; }
  @media only screen and (max-width: 768px) {
    .page-services .col {
      width: 100%; } }
  .page-services .col .project_list_box {
    border: none;
    margin: 0 0 20px 0;
    padding: 0; }
    .page-services .col .project_list_box a {
      font-size: 17px; }
      .page-services .col .project_list_box a:link {
        border-bottom: none !important; }
    .page-services .col .project_list_box .description {
      font-size: 16px;
      font-weight: 300;
      color: #546B85;
      margin-bottom: 10px; }
      @media only screen and (max-width: 768px) {
        .page-services .col .project_list_box .description {
          margin-bottom: 0; } }

/* --------------------------------------------------------------------------------------------------------------------------------------------
About Us | WestEd Programs | Invidiual Program | Projects
-------------------------------------------------------------------------------------------------------------------------------------------- */
.page-projects #section_header, .page-projects #related_items_header, .page-projects #related_items, .page-projects #col_halves {
  display: none !important; }

.page-projects .program-projects .project_list_box {
  margin-bottom: 0;
  padding: 15px 0;
  border: none;
  border-bottom: 2px solid #E3ECF9; }
  .page-projects .program-projects .project_list_box:first-of-type {
    padding-top: 0; }
  .page-projects .program-projects .project_list_box:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none; }
  .page-projects .program-projects .project_list_box .logo a {
    border-bottom: none !important; }

.page-projects .program-projects .description h3 a {
  font-size: 17px !important;
  font-weight: 700 !important;
  color: #1669C9 !important;
  border-bottom: none !important; }

.page-projects .program-projects .description p {
  font-weight: 300 !important;
  color: #546B85; }

.page-projects .project_nav {
  margin-bottom: 2em; }
  .page-projects .project_nav li {
    display: inline-block;
    margin-right: 1.5em;
    list-style-type: none;
    line-height: 30px; }
  .page-projects .project_nav a {
    color: #1451BD !important;
    font-size: 15px;
    text-transform: uppercase;
    text-decoration: none;
    border-bottom: none !important;
    padding-bottom: 5px; }
    .page-projects .project_nav a.active {
      border-bottom: 5px solid #ABC1DA !important; }

/* --------------------------------------------------------------------------------------------------------------------------------------------
About Us | WestEd Programs | Invidiual Program | Projects | Invidual Project
-------------------------------------------------------------------------------------------------------------------------------------------- */
.single-project #content {
  width: 70%; }

@media only screen and (max-width: 768px) {
  .single-project .entry-content ul {
    margin-bottom: 15px; } }

.single-project .entry-content .page_content_box {
  display: none;
  border: none; }
  @media only screen and (max-width: 768px) {
    .single-project .entry-content .page_content_box {
      display: block;
      padding: 2px 0;
      border-top: 1px solid #ABC1DA; } }

.single-project #section_header {
  display: none; }

.single-project .project-header {
  float: left;
  clear: both;
  width: 100%;
  margin-bottom: 20px; }
  .single-project .project-header .project_title {
    font-family: "Roboto Slab";
    font-size: 28px;
    font-weight: 300;
    float: left;
    width: 100%;
    max-width: 650px;
    margin-top: 0px;
    color: #51AF46; }
  .single-project .project-header--w-logo .project_logo {
    float: left;
    width: 42%; }
    .single-project .project-header--w-logo .project_logo img {
      width: auto; }
  .single-project .project-header--w-logo .project_title {
    width: 58%;
    max-width: 340px; }

.postid-31568 .project_logo img {
  margin-top: -17px; }

/* --------------------------------------------------------------------------------------------------------------------------------------------
About Us | WestEd Programs | Individual Program | Resources
-------------------------------------------------------------------------------------------------------------------------------------------- */
.page-resources #section_header {
  display: none; }

/* --------------------------------------------------------------------------------------------------------------------------------------------
About Us | WestEd Programs | Individual Program | Key Staff
-------------------------------------------------------------------------------------------------------------------------------------------- */
.page-key-staff #section_header {
  display: none; }

@media only screen and (max-width: 992px) {
  .page-key-staff #main_content_wrap .col:first-child {
    margin-left: 0; } }

@media only screen and (max-width: 480px) {
  .page-key-staff #main_content_wrap .board_person:last-child {
    padding-bottom: 0;
    margin-bottom: 0; } }

.page-key-staff #main_content_wrap .board_person:hover {
  border: none; }

.page-key-staff #main_content_wrap .board_person .name a:link {
  border: none; }

.page-key-staff #main_content_wrap .board_person .locale {
  display: none; }

/* jjohns
-------------------------------------------------------------------- */
/* Board */
.page-board-of-directors .board_person {
  min-height: 230px !important; }
  .page-board-of-directors .board_person .name, .page-board-of-directors .board_person .title, .page-board-of-directors .board_person .locale {
    padding-left: 120px;
    padding-right: 20px; }
  @media screen and (max-width: 765px) {
    .page-board-of-directors .board_person {
      min-height: 0 !important; } }

/*
- Areas of Work | Universal
- Areas of Work | Overview
- Areas of Work | Projects
*/
/* Sizing
-------------------------------------------------------------------- */
/* wrap max width */
/* Fonts
-------------------------------------------------------------------- */
/* Color Defaults
-------------------------------------------------------------------- */
/* Color Custom
-------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------------------------------------------------------------------
Areas of Work | Universal
-------------------------------------------------------------------------------------------------------------------------------------------- */
/* AOW Overview float fix */
body.single-area_of_work #main_content_wrap {
  display: table; }

/* View More button alignment */
body.single-area_of_work span.viewmore {
  float: left;
  margin-left: 165px; }
  @media screen and (max-width: 950px) {
    body.single-area_of_work span.viewmore {
      margin: 0 0 40px 0; } }

#subsubmenu ul li {
  background-color: transparent !important; }

/* ------------------------------------------------------------------------------------------------------------------------------------------
Areas of Work | Overview
-------------------------------------------------------------------------------------------------------------------------------------------- */
.single-area_of_work .featured_fw {
  background-color: #E3ECF9; }
  .single-area_of_work .featured_fw .container {
    max-width: 1000px;
    margin: 0 auto;
    padding: 40px 20px; }
    @media only screen and (max-width: 1000px) {
      .single-area_of_work .featured_fw .container {
        width: 100%; } }
  .single-area_of_work .featured_fw #spotlight {
    margin: 0;
    background: none;
    height: auto !important; }
    .single-area_of_work .featured_fw #spotlight .featured_img {
      float: left;
      width: 25%;
      padding-right: 20px; }
      @media only screen and (max-width: 520px) {
        .single-area_of_work .featured_fw #spotlight .featured_img {
          width: 100%;
          padding: 0;
          margin: 0 0 25px 0;
          display: block;
          float: none; } }
    .single-area_of_work .featured_fw #spotlight .featured_content {
      float: right;
      width: 74%; }
      @media only screen and (max-width: 520px) {
        .single-area_of_work .featured_fw #spotlight .featured_content {
          width: 100%; } }
      .single-area_of_work .featured_fw #spotlight .featured_content h4 {
        color: #51AF46;
        font-size: 13px;
        text-transform: uppercase;
        margin-bottom: 5px;
        letter-spacing: 1px; }
      .single-area_of_work .featured_fw #spotlight .featured_content h3 {
        font-size: 20px;
        color: #1669C9;
        font-weight: 400; }
      .single-area_of_work .featured_fw #spotlight .featured_content p {
        font-size: 17px;
        line-height: 23px; }

/* ------------------------------------------------------------------------------------------------------------------------------------------
Areas of Work | Overview
-------------------------------------------------------------------------------------------------------------------------------------------- */
.single-area_of_work .content-full-width {
  background: #ABC1DA; }
  .single-area_of_work .content-full-width .container {
    padding: 40px 20px 20px 20px; }
  .single-area_of_work .content-full-width .experts-intro h3 {
    font-family: "Roboto Slab";
    font-weight: 100;
    font-size: 28px;
    color: white; }
  .single-area_of_work .content-full-width .experts-intro p {
    font-size: 15px;
    line-height: 20px;
    font-weight: 400;
    max-width: 200px; }
  .single-area_of_work .content-full-width .slider_wrap h3 {
    font-size: 20px;
    color: #1669C9;
    font-weight: 300; }
  .single-area_of_work .content-full-width .slider_wrap p {
    font-size: 17px; }

.single-area_of_work .intro_slide h2 {
  font-weight: normal;
  font-size: 18px; }

.single-area_of_work .intro_slide p {
  font-size: 18px; }

/* ------------------------------------------------------------------------------------------------------------------------------------------
Areas of Work | Projects
-------------------------------------------------------------------------------------------------------------------------------------------- */
.page-template-aow-projectlist-page .aow-projects .project_list_box {
  border: none;
  border-bottom: 2px solid #ABC1DA;
  padding: 30px 0;
  margin: 0; }
  .page-template-aow-projectlist-page .aow-projects .project_list_box:first-child .description .name {
    margin-top: 0; }
  .page-template-aow-projectlist-page .aow-projects .project_list_box .logo {
    float: left;
    width: 190px;
    overflow: hidden; }
    @media (max-width: 989px) {
      .page-template-aow-projectlist-page .aow-projects .project_list_box .logo {
        margin-bottom: 10px; } }
    @media (max-width: 765px) {
      .page-template-aow-projectlist-page .aow-projects .project_list_box .logo {
        margin-bottom: 0; } }
    .page-template-aow-projectlist-page .aow-projects .project_list_box .logo img {
      max-width: 100%;
      height: auto;
      padding-right: 15px; }
  .page-template-aow-projectlist-page .aow-projects .project_list_box .logo + .description {
    width: 80%; }
    @media (max-width: 944px) {
      .page-template-aow-projectlist-page .aow-projects .project_list_box .logo + .description {
        width: 100%; } }
  .page-template-aow-projectlist-page .aow-projects .project_list_box .description {
    float: left;
    width: 100%; }
    .page-template-aow-projectlist-page .aow-projects .project_list_box .description p {
      width: 100% !important; }
    @media (max-width: 765px) {
      .page-template-aow-projectlist-page .aow-projects .project_list_box .description {
        width: 100%; } }
    @media (max-width: 765px) {
      .page-template-aow-projectlist-page .aow-projects .project_list_box .description .name {
        margin-top: 15px; } }
  .page-template-aow-projectlist-page .aow-projects .project_list_box:first-child {
    padding-top: 0; }
  .page-template-aow-projectlist-page .aow-projects .project_list_box:last-child {
    border-bottom: none; }
  .page-template-aow-projectlist-page .aow-projects .project_list_box .description h3 {
    margin: 0 0 10px 0; }
    .page-template-aow-projectlist-page .aow-projects .project_list_box .description h3 a {
      font-size: 17px;
      line-height: 23px;
      font-weight: 700;
      text-decoration: none; }
  .page-template-aow-projectlist-page .aow-projects .project_list_box .description p {
    font-weight: 300; }

/* Sizing
-------------------------------------------------------------------- */
/* wrap max width */
/* Fonts
-------------------------------------------------------------------- */
/* Color Defaults
-------------------------------------------------------------------- */
/* Color Custom
-------------------------------------------------------------------- */
/*
- Professional Learning | Universal
*/
/* ------------------------------------------------------------------------------------------------------------------------------------------
Professional Learning | Universal
-------------------------------------------------------------------------------------------------------------------------------------------- */
.page-template-service-plta-page #inner #section_header .entry-title,
.page-template-professional-development-facetwp #inner #section_header .entry-title {
  font-family: "Roboto";
  letter-spacing: 1px; }

.page-template-service-plta-page #inner #section_header .entry-child-title,
.page-template-professional-development-facetwp #inner #section_header .entry-child-title {
  font-family: "Roboto Slab";
  font-size: 26px;
  font-weight: 400; }

.page-template-service-plta-page #inner #section_header h2, .page-template-service-plta-page #inner #section_header p,
.page-template-professional-development-facetwp #inner #section_header h2,
.page-template-professional-development-facetwp #inner #section_header p {
  font-size: 18px;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 10px; }

.page-template-service-plta-page .featured_fw h4,
.page-template-professional-development-facetwp .featured_fw h4 {
  color: #51AF46;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 0; }

.page-template-service-plta-page .featured_fw h3,
.page-template-professional-development-facetwp .featured_fw h3 {
  color: #1669C9;
  font-size: 20px;
  line-height: 26px; }

.page-template-service-plta-page .featured_fw p,
.page-template-professional-development-facetwp .featured_fw p {
  font-weight: 300;
  line-height: 23px;
  font-size: 17px;
  color: #31507C; }

.page-template-service-plta-page .featured_fw .featured_img,
.page-template-professional-development-facetwp .featured_fw .featured_img {
  width: 230px;
  float: left;
  margin-right: 20px; }
  @media screen and (max-width: 907px) {
    .page-template-service-plta-page .featured_fw .featured_img,
    .page-template-professional-development-facetwp .featured_fw .featured_img {
      margin-bottom: 15px; } }

.page-template-service-plta-page .featured_fw .featured_content,
.page-template-professional-development-facetwp .featured_fw .featured_content {
  float: right;
  width: 74%; }
  @media screen and (max-width: 907px) {
    .page-template-service-plta-page .featured_fw .featured_content,
    .page-template-professional-development-facetwp .featured_fw .featured_content {
      width: 100%; } }

.page-template-service-plta-page #main_content_wrap h2,
.page-template-professional-development-facetwp #main_content_wrap h2 {
  font-family: "Roboto Slab";
  font-weight: 100;
  color: #51AF46; }

.page-template-service-plta-page #main_content_wrap .filter,
.page-template-professional-development-facetwp #main_content_wrap .filter {
  background-color: white;
  float: left;
  width: 250px;
  padding-right: 0; }
  @media screen and (max-width: 850px) {
    .page-template-service-plta-page #main_content_wrap .filter,
    .page-template-professional-development-facetwp #main_content_wrap .filter {
      width: 100%;
      margin-bottom: 0;
      padding-bottom: 0; } }
  @media screen and (max-width: 850px) {
    .page-template-service-plta-page #main_content_wrap .filter label,
    .page-template-professional-development-facetwp #main_content_wrap .filter label {
      width: 90%; } }
  .page-template-service-plta-page #main_content_wrap .filter input[type="submit"],
  .page-template-professional-development-facetwp #main_content_wrap .filter input[type="submit"] {
    float: left;
    border-radius: 4px;
    background: #5A799C;
    text-transform: initial;
    font-size: 15px;
    letter-spacing: .4px;
    padding: 6px 16px; }
  .page-template-service-plta-page #main_content_wrap .filter h2,
  .page-template-professional-development-facetwp #main_content_wrap .filter h2 {
    font-family: "Roboto";
    font-size: 15px;
    line-height: 20px;
    color: #31507C;
    text-transform: uppercase;
    font-weight: 700; }
  .page-template-service-plta-page #main_content_wrap .filter li,
  .page-template-professional-development-facetwp #main_content_wrap .filter li {
    font-size: 14px;
    color: #31507C;
    font-weight: 400;
    line-height: 19px;
    position: relative;
    margin: 0 0 12px 0; }
    .page-template-service-plta-page #main_content_wrap .filter li:first-child,
    .page-template-professional-development-facetwp #main_content_wrap .filter li:first-child {
      margin-top: 0; }
    .page-template-service-plta-page #main_content_wrap .filter li input,
    .page-template-professional-development-facetwp #main_content_wrap .filter li input {
      -webkit-appearance: none;
      border: 1px solid #819AB6;
      border-radius: 2px;
      padding: 7px;
      background-color: #E3ECF9; }
    .page-template-service-plta-page #main_content_wrap .filter li [type="checkbox"]:checked + label:before,
    .page-template-professional-development-facetwp #main_content_wrap .filter li [type="checkbox"]:checked + label:before {
      content: 'X';
      position: absolute;
      top: 4px;
      left: 4px;
      font-size: 14px;
      line-height: 0.8;
      color: #1669C9;
      transition: all .2s;
      font-weight: 500; }
    .page-template-service-plta-page #main_content_wrap .filter li label,
    .page-template-professional-development-facetwp #main_content_wrap .filter li label {
      color: #3f648f;
      font-weight: 300;
      font-size: 14px; }

.page-template-service-plta-page #main_content_wrap .plta-list,
.page-template-professional-development-facetwp #main_content_wrap .plta-list {
  padding-top: 23px;
  padding-bottom: 0;
  background-color: white;
  float: none;
  width: auto;
  overflow: auto; }
  @media screen and (max-width: 675px) {
    .page-template-service-plta-page #main_content_wrap .plta-list,
    .page-template-professional-development-facetwp #main_content_wrap .plta-list {
      float: left;
      width: 100%;
      padding-top: 0px; } }
  .page-template-service-plta-page #main_content_wrap .plta-list #services-posts,
  .page-template-professional-development-facetwp #main_content_wrap .plta-list #services-posts {
    margin-top: 0; }
    .page-template-service-plta-page #main_content_wrap .plta-list #services-posts li,
    .page-template-professional-development-facetwp #main_content_wrap .plta-list #services-posts li {
      margin: 0 0 29px 0;
      padding-top: 0; }
      .page-template-service-plta-page #main_content_wrap .plta-list #services-posts li:last-child,
      .page-template-professional-development-facetwp #main_content_wrap .plta-list #services-posts li:last-child {
        margin-bottom: 0; }
      .page-template-service-plta-page #main_content_wrap .plta-list #services-posts li h3,
      .page-template-professional-development-facetwp #main_content_wrap .plta-list #services-posts li h3 {
        font-weight: 500; }
      .page-template-service-plta-page #main_content_wrap .plta-list #services-posts li p,
      .page-template-professional-development-facetwp #main_content_wrap .plta-list #services-posts li p {
        font-weight: 300; }

/* Sizing
-------------------------------------------------------------------- */
/* wrap max width */
/* Fonts
-------------------------------------------------------------------- */
/* Color Defaults
-------------------------------------------------------------------- */
/* Color Custom
-------------------------------------------------------------------- */
/*
- WooCommerce | Universal |  Resources
*/
/* --------------------------------------------------------------------------------------------------------------------------------------------
WooCommerce | Universal |  Resources
-------------------------------------------------------------------------------------------------------------------------------------------- */
.woocommerce #spotlight, .woocommerce #row_related_services, .woocommerce .page-title, .woocommerce-page #spotlight, .woocommerce-page #row_related_services, .woocommerce-page .page-title {
  display: none; }

.woocommerce ul.products, .woocommerce-page ul.products {
  margin: 0; }
  .woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
    float: left;
    width: 48%;
    border: none;
    height: auto;
    min-height: 235px;
    padding: 10px 0;
    list-style-type: none;
    margin: 0; }
    @media only screen and (max-width: 925px) {
      .woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
        width: 100% !important;
        min-height: 145px;
        padding: 20px 0 5px 0; } }
    .woocommerce ul.products li.product .thumbnail, .woocommerce-page ul.products li.product .thumbnail {
      background: none;
      box-shadow: none;
      display: inline;
      min-width: 100px;
      min-height: 100px;
      padding: 4px 0;
      float: left;
      width: auto; }
      @media only screen and (max-width: 925px) {
        .woocommerce ul.products li.product .thumbnail, .woocommerce-page ul.products li.product .thumbnail {
          margin-right: 25px; } }
      @media only screen and (max-width: 925px) {
        .woocommerce ul.products li.product .thumbnail, .woocommerce-page ul.products li.product .thumbnail {
          margin-bottom: 15px; } }
      @media only screen and (max-width: 460px) {
        .woocommerce ul.products li.product .thumbnail, .woocommerce-page ul.products li.product .thumbnail {
          padding: 0; } }
      .woocommerce ul.products li.product .thumbnail img, .woocommerce-page ul.products li.product .thumbnail img {
        margin: 2px 0 0 0px;
        float: left;
        border: 1px solid #ccc;
        max-width: 100% !important;
        height: auto; }
    .woocommerce ul.products li.product h3, .woocommerce-page ul.products li.product h3 {
      width: 100%;
      font-size: 17px;
      line-height: 23px;
      height: auto;
      min-height: auto;
      padding: 0px 0px 15px 20px;
      margin-bottom: 0;
      color: #1669C9; }
      @media only screen and (max-width: 925px) {
        .woocommerce ul.products li.product h3, .woocommerce-page ul.products li.product h3 {
          width: 83% !important;
          padding-left: 0px; } }
      @media only screen and (max-width: 777px) {
        .woocommerce ul.products li.product h3, .woocommerce-page ul.products li.product h3 {
          width: 95% !important; } }
    .woocommerce ul.products li.product .resource_description, .woocommerce-page ul.products li.product .resource_description {
      width: 100% !important;
      padding: 0px 0px 5px 20px; }
      @media only screen and (max-width: 925px) {
        .woocommerce ul.products li.product .resource_description, .woocommerce-page ul.products li.product .resource_description {
          width: 83% !important;
          padding-left: 0px; } }
      @media only screen and (max-width: 777px) {
        .woocommerce ul.products li.product .resource_description, .woocommerce-page ul.products li.product .resource_description {
          width: 95% !important; } }
    .woocommerce ul.products li.product .price, .woocommerce ul.products li.product .btn_cta, .woocommerce-page ul.products li.product .price, .woocommerce-page ul.products li.product .btn_cta {
      display: none; }

.woocommerce .finiteScroll, .woocommerce-page .finiteScroll {
  padding: 30px 0 0 0; }

/* Global / Legacy
-------------------------------------------------------------------- */
body {
  overflow-x: hidden;
  font-family: "Roboto";
  color: #546B85;
  font-size: 16px;
  line-height: 24px;
  font-weight: 300; }
  body #mobileSearchTop {
    display: none; }
  body .finiteScroll {
    clear: both;
    width: 100%; }
    body .finiteScroll .next_page {
      float: none;
      width: 100px;
      margin: 0 auto;
      display: block !important; }
      body .finiteScroll .next_page a {
        border-bottom: 0 !important;
        background-image: none;
        color: #fff !important;
        font-size: 15px;
        font-weight: bold;
        text-decoration: none;
        padding: 7px 12px;
        display: inline-block;
        border-radius: 4px;
        background-color: #5a799c;
        width: auto;
        height: auto;
        text-indent: 0; }
  body .full-width-content #main_content_wrap {
    overflow: hidden;
    display: block;
    position: relative;
    float: none;
    width: 100%;
    max-width: 1040px;
    margin: 0 auto;
    height: auto; }
  body #main_content_wrap {
    width: 100%;
    max-width: 1040px;
    background-image: none !important;
    margin: 0 auto;
    padding: 40px 20px; }
    @media only screen and (max-width: 768px) {
      body #main_content_wrap #content {
        width: 100%; } }
    @media only screen and (max-width: 768px) {
      body #main_content_wrap #content p {
        width: 100%; } }
    body #main_content_wrap p {
      font-size: 16px;
      line-height: 24px;
      font-weight: 300;
      color: #546B85; }
    body #main_content_wrap a {
      color: #1669c9; }
      body #main_content_wrap a:hover, body #main_content_wrap a:link, body #main_content_wrap a:active, body #main_content_wrap a:visited {
        color: #1669c9;
        border: none; }
      body #main_content_wrap a:hover {
        opacity: .75; }
  body .content-full-width {
    padding: 0; }
    body .content-full-width .container {
      margin: 0 auto;
      width: 1040px;
      padding: 40px 20px; }
      body .content-full-width .container p {
        color: #546B85 !important;
        font-size: 16px;
        line-height: 24px;
        text-align: left; }
  body .slider .container {
    padding: 25px 20px 60px 20px; }
    body .slider .container h1 {
      font-family: "Roboto Slab";
      font-weight: 300;
      text-align: center;
      color: white;
      margin-bottom: 0; }
    body .slider .container p {
      font-size: 25px;
      line-height: 35px;
      text-align: center;
      display: block;
      margin: 0 auto; }
  body #inner {
    margin: 0;
    padding: 0;
    border-top: none !important; }
    body #inner #content {
      padding: 0;
      margin: 0; }
    body #inner .entry-content {
      margin: 0;
      padding: 0;
      font-weight: 300; }
      body #inner .entry-content p {
        margin: 0 0 15px 0;
        padding: 0;
        font-family: "Roboto";
        font-weight: 300; }
        body #inner .entry-content p a {
          text-decoration: underline; }
        body #inner .entry-content p:last-child {
          margin-bottom: 0; }
      body #inner .entry-content ul li {
        font-weight: 300 !important; }

.content-full-width {
  background: #E3ECF9;
  padding: 40px 0; }
  @media only screen and (max-width: 992px) {
    .content-full-width .container {
      width: 100% !important; } }
  .content-full-width .featured-content {
    border-top: none;
    overflow: hidden;
    width: 100%; }
    .content-full-width .featured-content:last-child {
      margin-top: 20px; }
    .content-full-width .featured-content__headline {
      width: 25%;
      float: left; }
      @media only screen and (max-width: 480px) {
        .content-full-width .featured-content__headline {
          width: 100%;
          padding: 0;
          text-align: left;
          padding-left: 0px; } }
      .content-full-width .featured-content__headline h3 {
        color: #51AF46;
        font-size: 22px;
        max-width: 210px; }
    .content-full-width .featured-content__text {
      width: 75%;
      float: left; }
      @media only screen and (max-width: 480px) {
        .content-full-width .featured-content__text {
          width: 100%;
          padding: 0; } }

/* container max width */
#wrap {
  max-width: none; }

#inner .wrap {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden; }

#nav .wrap,
#section_header .wrap,
#header .logo-slogan,
#header .genesis-nav-menu,
#footer-widgets .wrap,
#footer .wrap {
  max-width: 1040px;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px; }

#footer .gototop {
  display: none; }

/* full width test */
#inner {
  border-top: 0; }

.entry-content {
  margin: 40px 0 30px 0; }

/* Global / Tweaks
-------------------------------------------------------------------- */
/* skip to content */
#skiptocontent a {
  padding: 5px;
  position: absolute;
  top: -40px;
  left: 0px;
  color: white;
  background: #3F648F;
  outline: none;
  -webkit-transition: top 1s ease-out;
  transition: top 1s ease-out;
  z-index: 9999; }
  #skiptocontent a:focus {
    position: absolute;
    left: 0px;
    top: 0px;
    outline-color: transparent;
    -webkit-transition: top .1s ease-in;
    transition: top .1s ease-in; }

.entry-content li {
  color: #546B85; }

abbr[title] {
  text-decoration: none; }

/* Browsersync styling */
#__bs_notify__ {
  top: 0 !important;
  left: 0 !important;
  opacity: .25; }

/* standard hr */
.entry-content hr {
  border-color: #ABC1DA;
  margin-top: 30px !important;
  margin-bottom: 30px !important; }

/* clears wrap */
#content-sidebar-wrap {
  float: none !important; }

/* accordion */
.accordion {
  margin: 40px 0 10px 0;
  padding: 0; }
  .accordion .accordion-item {
    border-bottom: 1px solid #ABC1DA;
    margin: 0;
    padding: 15px 0 13px 0; }
    .accordion .accordion-item:first-child {
      padding-top: 0; }
    .accordion .accordion-item:last-child {
      border: none; }
    .accordion .accordion-item h3.showhide {
      cursor: pointer;
      font-family: "Roboto";
      font-size: 16px;
      line-height: 18px;
      font-weight: 700;
      color: #6EA9ED;
      background: url("../images/icon-plus-blue-sm.png") no-repeat 0 0;
      margin: 0 0 5px 0;
      padding: 0 0 0 25px; }
      .accordion .accordion-item h3.showhide.arrowClose {
        background: url("../images/icon-minus-blue-sm.png") no-repeat 0 0; }
      .accordion .accordion-item h3.showhide:hover {
        opacity: .75; }
    .accordion .accordion-item .showhide-child {
      display: none;
      margin: 0 0 5px 50px;
      padding: 0; }
    .accordion .accordion-item .inner-content {
      margin: 0;
      padding: 5px 0 10px 25px; }

/* Responsive video embeds ala http://embedresponsively.com */
.embed-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%; }
  .embed-container iframe,
  .embed-container object,
  .embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

/* showhide default closed */
.showhide-child {
  display: none; }

/* bust out technique (full width elements) */
.entry-content,
body.single-product #content,
body.page-template-webinars-home,
body.four-domains,
body.charters-choice,
body.trauma,
body.covid-19-resources,
body.covid-19-services {
  overflow: initial;
  /* hopefully this causes no issues site wide */ }
  .entry-content .bust-out,
  body.single-product #content .bust-out,
  body.page-template-webinars-home .bust-out,
  body.four-domains .bust-out,
  body.charters-choice .bust-out,
  body.trauma .bust-out,
  body.covid-19-resources .bust-out,
  body.covid-19-services .bust-out {
    background-color: #EEF2F7;
    box-sizing: border-box;
    transform: translateX(calc(50vw - 50%));
    margin: auto calc(50% - 50vw);
    padding: 0 0 0 0; }
    .entry-content .bust-out .bust-out-content,
    body.single-product #content .bust-out .bust-out-content,
    body.page-template-webinars-home .bust-out .bust-out-content,
    body.four-domains .bust-out .bust-out-content,
    body.charters-choice .bust-out .bust-out-content,
    body.trauma .bust-out .bust-out-content,
    body.covid-19-resources .bust-out .bust-out-content,
    body.covid-19-services .bust-out .bust-out-content {
      width: 1000px;
      /* match .entry-content width */
      margin: 0 auto !important;
      padding: 30px 0 !important; }
  @media screen and (max-width: 1060px) {
    .entry-content .bust-out .bust-out-content,
    body.single-product #content .bust-out .bust-out-content,
    body.page-template-webinars-home .bust-out .bust-out-content,
    body.four-domains .bust-out .bust-out-content,
    body.charters-choice .bust-out .bust-out-content,
    body.trauma .bust-out .bust-out-content,
    body.covid-19-resources .bust-out .bust-out-content,
    body.covid-19-services .bust-out .bust-out-content {
      width: 92%; } }

/* close gap before footer when using bust out as last item on page */
body.subscribe #main_content_wrap,
body.single-product #main_content_wrap,
body.page-template-webinars-home #main_content_wrap {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important; }

/* match shared container dimensions */
#recent-news .container,
#related-resources .container {
  width: 100% !important;
  max-width: 1040px !important;
  padding-left: 20px !important;
  padding-right: 20px !important; }

/* Add This */
#addThisButtons a {
  text-decoration: none !important;
  border: none !important; }

/* hide ala Bootstrap */
.sr-only, .screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.sr-only-focusable:active,
.sr-only-focusable:focus,
.screen-reader-text:active,
.screen-reader-text:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto; }

/* button template */
.entry-content a.btn {
  display: inline-block;
  font-family: "Roboto" !important;
  font-size: 15px !important;
  line-height: 18px !important;
  font-weight: 500 !important;
  letter-spacing: .5px !important;
  color: #fff !important;
  background-color: #5a799c !important;
  border-radius: 6px !important;
  border: none !important;
  text-decoration: none !important;
  margin: 8px 0 0 0 !important;
  padding: 8px 16px 8px 16px !important; }
  .entry-content a.btn:hover {
    opacity: .75; }

/* hide default generated title */
body.page-wested-offices #content-sidebar-wrap h1.primary,
body.page-board-of-directors #content-sidebar-wrap h1.primary,
body.page-leadership #content-sidebar-wrap h1.primary,
body.page-staff-directory #content-sidebar-wrap h1.primary,
body.page-clients #content-sidebar-wrap h1.primary,
body.page-working-with-wested #content-sidebar-wrap h1.primary,
body.page-programs #content-sidebar-wrap h1.primary {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important; }

.view_more_btn {
  text-align: center; }
  .view_more_btn a {
    color: #fff;
    font-size: 15px;
    letter-spacing: .5px !important;
    font-weight: bold;
    text-decoration: none;
    padding: 7px 12px;
    display: inline-block;
    border-radius: 4px;
    background-color: #5A799C; }

/* anchor offset, usage:

  1) Please see our <a href="#overview">overview</a> section below.

  2) <p id="overview" class="anchor">anchor</p>
     <h2>Overview</h2>
     <p>We would like to welcome you to our overview...</p>

 */
p.anchor {
  display: block;
  position: relative;
  top: -200px;
  visibility: hidden;
  color: transparent !important;
  margin: 0 !important;
  padding: 0 !important; }

/* Global / Recent Posts (shared, multi post type)
-------------------------------------------------------------------- */
#recent-posts {
  background-color: #EEF2F7;
  margin: 0;
  padding: 0; }
  #recent-posts .container {
    width: 100% !important;
    max-width: 1040px !important;
    margin: 0 auto;
    padding: 30px 20px !important; }
  #recent-posts h2 {
    font-family: "Roboto Slab";
    font-size: 30px;
    line-height: 36px;
    font-weight: 300;
    color: #51AF46;
    margin: 0 0 30px 0;
    padding: 0; }
  #recent-posts ul {
    display: grid;
    width: 100%;
    grid-template-columns: 1fr 1fr;
    grid-gap: 20px;
    margin: 0;
    padding: 0; }
    #recent-posts ul li {
      width: 100% !important;
      /* css grid fallback */
      height: auto;
      min-height: 0;
      list-style: none;
      border-bottom: 1px solid #D3DBE6;
      float: left;
      /* css grid fallback */
      margin: 0 0 12px 0;
      padding: 0 0 22px 0; }
      #recent-posts ul li:nth-last-child(-n+2) {
        border: none; }
      #recent-posts ul li a {
        float: none;
        display: block;
        width: 100%; }
        #recent-posts ul li a .img {
          float: left;
          width: 25%;
          min-width: 140px !important;
          max-width: 140px !important;
          margin: 0 20px 0 0;
          padding: 0; }
          #recent-posts ul li a .img img {
            width: 100%;
            height: auto;
            border-radius: 5px; }
        #recent-posts ul li a .info {
          float: left;
          width: 58%;
          margin: 0;
          padding: 0; }
          #recent-posts ul li a .info h3 {
            font-size: 17px;
            line-height: 23px;
            font-weight: 600;
            color: #1669c9;
            margin: 0 0 5px 0;
            padding: 0; }
          #recent-posts ul li a .info p {
            font-size: 11px;
            line-height: 14px;
            font-weight: 500;
            color: #8E9FB5;
            text-transform: uppercase;
            margin: 0 0 6px 0;
            padding: 0; }
          #recent-posts ul li a .info span.excerpt {
            font-size: 16px;
            line-height: 24px;
            font-weight: 400;
            color: #546B85; }
    @media screen and (max-width: 890px) {
      #recent-posts ul {
        grid-template-columns: 1fr; }
        #recent-posts ul li a .info {
          width: 75%; }
        #recent-posts ul li:nth-last-child(-n+2) {
          border-bottom: 1px solid #D3DBE6; }
        #recent-posts ul li:last-child {
          border: none; } }
    @media screen and (max-width: 700px) {
      #recent-posts ul li a .img {
        width: 100%;
        margin: 0;
        padding: 0; }
      #recent-posts ul li a .info {
        width: 100%;
        margin: 20px 0 0 0;
        padding: 0; } }
  #recent-posts .view_more_btn {
    position: relative;
    text-align: center;
    margin: 40px 0 0 0;
    padding: 0; }
    #recent-posts .view_more_btn a {
      display: inline-block;
      width: auto;
      font-size: 11px !important;
      line-height: 15px !important;
      font-weight: 500 !important;
      color: #fff !important;
      letter-spacing: 1px !important;
      border-top-left-radius: 0 !important;
      border-top-right-radius: 0 !important;
      border-bottom-left-radius: 6px !important;
      border-bottom-right-radius: 6px !important;
      text-transform: uppercase !important;
      margin: 0 !important;
      padding: 1px 12px !important; }
      #recent-posts .view_more_btn a:before {
        content: "";
        background-color: #5a799c;
        width: 100%;
        height: 2px;
        position: absolute;
        top: 0;
        left: 0; }
    #recent-posts .view_more_btn:hover {
      opacity: .75; }

/* AOW */
body.single-area_of_work #recent-posts {
  background-color: transparent; }
  body.single-area_of_work #recent-posts .container {
    padding: 0 20px !important; }
  body.single-area_of_work #recent-posts .view_more_btn a {
    color: #fff; }

/* Service */
body.single-service #recent-posts {
  background-color: #EEF2F7; }

/* WestEd in New York, Georgia, Florida */
body.page-template-new-york #recent-posts,
body.page-template-georgia #recent-posts,
body.page-template-florida #recent-posts {
  background-color: transparent; }
  body.page-template-new-york #recent-posts .container,
  body.page-template-georgia #recent-posts .container,
  body.page-template-florida #recent-posts .container {
    padding: 0 !important; }
  body.page-template-new-york #recent-posts h2,
  body.page-template-georgia #recent-posts h2,
  body.page-template-florida #recent-posts h2 {
    line-height: 30px !important; }
  body.page-template-new-york #recent-posts ul.newslist,
  body.page-template-georgia #recent-posts ul.newslist,
  body.page-template-florida #recent-posts ul.newslist {
    display: block; }
    body.page-template-new-york #recent-posts ul.newslist li,
    body.page-template-georgia #recent-posts ul.newslist li,
    body.page-template-florida #recent-posts ul.newslist li {
      float: none;
      width: 100%;
      height: auto;
      padding-top: 10px;
      padding-bottom: 15px;
      /* last two */ }
      body.page-template-new-york #recent-posts ul.newslist li:before, body.page-template-new-york #recent-posts ul.newslist li:after,
      body.page-template-georgia #recent-posts ul.newslist li:before,
      body.page-template-georgia #recent-posts ul.newslist li:after,
      body.page-template-florida #recent-posts ul.newslist li:before,
      body.page-template-florida #recent-posts ul.newslist li:after {
        content: "";
        display: table; }
      body.page-template-new-york #recent-posts ul.newslist li:after,
      body.page-template-georgia #recent-posts ul.newslist li:after,
      body.page-template-florida #recent-posts ul.newslist li:after {
        clear: both; }
      @media screen and (max-width: 1014px) {
        body.page-template-new-york #recent-posts ul.newslist li,
        body.page-template-georgia #recent-posts ul.newslist li,
        body.page-template-florida #recent-posts ul.newslist li {
          padding-bottom: 0; } }
      @media screen and (max-width: 1014px) {
        body.page-template-new-york #recent-posts ul.newslist li a .img,
        body.page-template-georgia #recent-posts ul.newslist li a .img,
        body.page-template-florida #recent-posts ul.newslist li a .img {
          float: none; } }
      body.page-template-new-york #recent-posts ul.newslist li a .info,
      body.page-template-georgia #recent-posts ul.newslist li a .info,
      body.page-template-florida #recent-posts ul.newslist li a .info {
        float: left;
        width: 70%;
        margin-left: 20px;
        padding-bottom: 30px; }
        @media screen and (max-width: 1014px) {
          body.page-template-new-york #recent-posts ul.newslist li a .info,
          body.page-template-georgia #recent-posts ul.newslist li a .info,
          body.page-template-florida #recent-posts ul.newslist li a .info {
            float: none;
            width: auto;
            margin-left: 0; } }
      body.page-template-new-york #recent-posts ul.newslist li:nth-last-child(-n+2),
      body.page-template-georgia #recent-posts ul.newslist li:nth-last-child(-n+2),
      body.page-template-florida #recent-posts ul.newslist li:nth-last-child(-n+2) {
        border-bottom: 1px solid #D3DBE6; }
      body.page-template-new-york #recent-posts ul.newslist li:last-child,
      body.page-template-georgia #recent-posts ul.newslist li:last-child,
      body.page-template-florida #recent-posts ul.newslist li:last-child {
        border: none; }
  body.page-template-new-york #recent-posts ul.newslist.more_links_list.hidden,
  body.page-template-georgia #recent-posts ul.newslist.more_links_list.hidden,
  body.page-template-florida #recent-posts ul.newslist.more_links_list.hidden {
    display: none; }
  body.page-template-new-york #recent-posts ul.more_links_list li:first-child,
  body.page-template-georgia #recent-posts ul.more_links_list li:first-child,
  body.page-template-florida #recent-posts ul.more_links_list li:first-child {
    border-top: 1px solid #D3DBE6;
    padding-top: 20px; }
  body.page-template-new-york #recent-posts .view_more_btn a,
  body.page-template-georgia #recent-posts .view_more_btn a,
  body.page-template-florida #recent-posts .view_more_btn a {
    color: #fff; }

/* Home
-------------------------------------------------------------------- */
body.page-template-home {
  /* clears padding for full-width sections below */
  /* shared */
  /* WestEd Insights */
  /* Promo */
  /* News, Events */
  /* Making a Difference */ }
  body.page-template-home #main_content_wrap {
    padding: 0; }
    body.page-template-home #main_content_wrap #content {
      float: none !important; }
  body.page-template-home #wested-insights,
  body.page-template-home #subscribe-social-bar,
  body.page-template-home #wested-news-events,
  body.page-template-home #wested-in-action {
    width: 100%;
    margin: 0 auto;
    padding: 0; }
    body.page-template-home #wested-insights .container,
    body.page-template-home #subscribe-social-bar .container,
    body.page-template-home #wested-news-events .container,
    body.page-template-home #wested-in-action .container {
      width: 100%;
      margin: 0;
      padding: 0;
      /* button */ }
      body.page-template-home #wested-insights .container ul,
      body.page-template-home #subscribe-social-bar .container ul,
      body.page-template-home #wested-news-events .container ul,
      body.page-template-home #wested-in-action .container ul {
        margin: 0;
        padding: 0; }
        body.page-template-home #wested-insights .container ul li,
        body.page-template-home #subscribe-social-bar .container ul li,
        body.page-template-home #wested-news-events .container ul li,
        body.page-template-home #wested-in-action .container ul li {
          list-style: none;
          margin: 0;
          padding: 0; }
      body.page-template-home #wested-insights .container p.view-more,
      body.page-template-home #subscribe-social-bar .container p.view-more,
      body.page-template-home #wested-news-events .container p.view-more,
      body.page-template-home #wested-in-action .container p.view-more {
        width: 100% !important;
        height: 42px;
        text-align: center;
        margin: 0;
        padding: 25px 0 0 0; }
        body.page-template-home #wested-insights .container p.view-more .btn,
        body.page-template-home #subscribe-social-bar .container p.view-more .btn,
        body.page-template-home #wested-news-events .container p.view-more .btn,
        body.page-template-home #wested-in-action .container p.view-more .btn {
          font-family: "Roboto" !important;
          font-size: 15px !important;
          line-height: 18px !important;
          font-weight: 500 !important;
          color: #fff !important;
          background-color: #5a799c !important;
          border-radius: 6px !important;
          border: none !important;
          text-decoration: none !important;
          margin: 0 !important;
          padding: 8px 16px 8px 16px !important; }
          body.page-template-home #wested-insights .container p.view-more .btn:hover,
          body.page-template-home #subscribe-social-bar .container p.view-more .btn:hover,
          body.page-template-home #wested-news-events .container p.view-more .btn:hover,
          body.page-template-home #wested-in-action .container p.view-more .btn:hover {
            opacity: .75; }
  body.page-template-home #wested-insights {
    max-width: 1040px;
    margin-top: 30px;
    padding: 0 20px;
    padding-bottom: 20px;
    /* IE 11 */
    /* IE 11 */ }
    body.page-template-home #wested-insights h2 {
      font-family: "Roboto Slab";
      font-size: 28px;
      line-height: 34px;
      font-weight: 300;
      color: #51AF46;
      margin: 0 0 30px 0;
      padding: 0; }
      body.page-template-home #wested-insights h2 span {
        font-family: "Roboto";
        font-size: 14px;
        line-height: 18px;
        font-weight: 500;
        text-transform: lowercase; }
    body.page-template-home #wested-insights ul.wested-insights-entries {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      grid-gap: 30px;
      margin: 0;
      padding: 0;
      /* IE 11 */ }
      @supports not (display: grid) {
        body.page-template-home #wested-insights ul.wested-insights-entries:before, body.page-template-home #wested-insights ul.wested-insights-entries:after {
          content: "";
          display: table; }
        body.page-template-home #wested-insights ul.wested-insights-entries:after {
          clear: both; } }
      body.page-template-home #wested-insights ul.wested-insights-entries li {
        float: left;
        width: 100%;
        height: auto;
        margin: 0 0 20px 0;
        padding: 0; }
        @supports not (display: grid) {
          body.page-template-home #wested-insights ul.wested-insights-entries li {
            float: left;
            width: 32%;
            margin-right: 20px; }
            body.page-template-home #wested-insights ul.wested-insights-entries li:nth-child(3) {
              float: right;
              margin-right: 0; } }
        body.page-template-home #wested-insights ul.wested-insights-entries li .img {
          width: 310px;
          height: auto; }
          body.page-template-home #wested-insights ul.wested-insights-entries li .img img {
            width: 100%;
            height: auto;
            border-radius: 6px; }
        body.page-template-home #wested-insights ul.wested-insights-entries li .info h3 {
          font-size: 20px;
          line-height: 26px;
          font-weight: 400;
          margin: 15px 0;
          padding: 0; }
          body.page-template-home #wested-insights ul.wested-insights-entries li .info h3 a {
            text-decoration: none; }
        body.page-template-home #wested-insights ul.wested-insights-entries li .info p {
          font-size: 16px;
          line-height: 24px;
          font-weight: 400;
          margin: 0;
          padding: 0; }
      @media all and (-ms-high-contrast: none) {
        body.page-template-home #wested-insights ul.wested-insights-entries *::-ms-backdrop, body.page-template-home #wested-insights ul.wested-insights-entries li {
          width: 33%; } }
    @media all and (-ms-high-contrast: none) {
      body.page-template-home #wested-insights *::-ms-backdrop, body.page-template-home #wested-insights ul {
        clear: both; } }
    body.page-template-home #wested-insights p.view-more {
      height: auto !important;
      margin: 30px 0 20px 0 !important;
      padding: 0 !important; }
      body.page-template-home #wested-insights p.view-more:before, body.page-template-home #wested-insights p.view-more:after {
        content: "";
        display: table; }
      body.page-template-home #wested-insights p.view-more:after {
        clear: both; }
    @media all and (-ms-high-contrast: none) {
      body.page-template-home #wested-insights *::-ms-backdrop, body.page-template-home #wested-insights p.view-more {
        clear: both;
        padding-top: 30px !important; } }
    @media screen and (max-width: 1040px) {
      body.page-template-home #wested-insights ul.wested-insights-entries {
        grid-template-columns: 1fr; } }
  body.page-template-home #subscribe-social-bar {
    height: 200px;
    background-color: #3F648F;
    margin: 0;
    padding: 0; }
    body.page-template-home #subscribe-social-bar .container {
      max-width: 1040px;
      display: flex;
      flex-wrap: nowrap;
      margin: 0 auto;
      padding: 0 20px; }
    body.page-template-home #subscribe-social-bar .item {
      flex: 1 1 33.3%;
      text-align: center;
      border-right: 4px solid #6985aa;
      margin: 13px 0 0 0;
      padding: 0 20px;
      /* E-Bulletin */
      /* R&D Alert Online */
      /* Social */ }
      body.page-template-home #subscribe-social-bar .item:nth-child(1) {
        padding-left: 0; }
      body.page-template-home #subscribe-social-bar .item:nth-child(3) {
        border-right: 4px solid #3F648F;
        padding-right: 0; }
      body.page-template-home #subscribe-social-bar .item h2 {
        text-align: center;
        margin: 0 auto;
        padding: 14px 0 15px 0; }
        body.page-template-home #subscribe-social-bar .item h2 a {
          display: block;
          text-indent: -9999px; }
      body.page-template-home #subscribe-social-bar .item p {
        width: 100% !important;
        font-size: 15px;
        line-height: 18px;
        font-weight: 400;
        color: #fff;
        margin: 0 0 22px 0;
        padding: 0; }
        body.page-template-home #subscribe-social-bar .item p.btn-container {
          width: auto !important;
          margin: 0;
          padding: 0; }
          body.page-template-home #subscribe-social-bar .item p.btn-container a {
            font-family: "Roboto" !important;
            font-size: 15px !important;
            line-height: 18px !important;
            font-weight: 500 !important;
            color: #fff !important;
            background-color: transparent !important;
            border-radius: 6px !important;
            border: 2px solid #fff !important;
            text-decoration: none !important;
            margin: 0 !important;
            padding: 6px 10px !important; }
            body.page-template-home #subscribe-social-bar .item p.btn-container a:hover {
              opacity: .75; }
      body.page-template-home #subscribe-social-bar .item.ebulletin h2 a {
        background: url("../images/2019-home-promo-eb.svg") no-repeat top center; }
      body.page-template-home #subscribe-social-bar .item.rdalert h2 a {
        background: url("../images/2019-home-promo-rdalert.svg") no-repeat top center; }
      body.page-template-home #subscribe-social-bar .item.social h2 {
        text-indent: -9999px;
        background: url("../images/2019-home-promo-social.svg") no-repeat top center;
        margin: 8px 0 0 0;
        padding: 0 0 20px 0; }
      body.page-template-home #subscribe-social-bar .item.social p {
        margin-bottom: 14px; }
      body.page-template-home #subscribe-social-bar .item.social ul {
        margin: 0;
        padding: 0; }
        body.page-template-home #subscribe-social-bar .item.social ul li {
          list-style: none;
          display: inline-block;
          text-align: center;
          margin: 0 5px;
          padding: 0; }
          body.page-template-home #subscribe-social-bar .item.social ul li a {
            display: inline-block;
            width: 37px;
            height: 37px;
            text-indent: -9999px; }
            body.page-template-home #subscribe-social-bar .item.social ul li a.twitter {
              background: url("../images/icon-social-twitter-37x37.svg") no-repeat 0 0; }
            body.page-template-home #subscribe-social-bar .item.social ul li a.linkedin {
              background: url("../images/icon-social-linkedin-37x37.svg") no-repeat 0 0; }
            body.page-template-home #subscribe-social-bar .item.social ul li a.facebook {
              background: url("../images/icon-social-facebook-37x37.svg") no-repeat 0 0; }
  body.page-template-home #wested-news-events {
    background-color: #E3ECF9; }
    body.page-template-home #wested-news-events .container {
      max-width: 1040px;
      margin: 0 auto;
      padding: 40px 20px; }
    body.page-template-home #wested-news-events .wested-news,
    body.page-template-home #wested-news-events .wested-events {
      width: 49%;
      margin: 0;
      padding: 0; }
      body.page-template-home #wested-news-events .wested-news h2,
      body.page-template-home #wested-news-events .wested-events h2 {
        font-family: "Roboto Slab";
        font-size: 28px;
        line-height: 28px;
        font-weight: 300;
        color: #51AF46;
        text-align: center;
        margin: 0 0 30px 0;
        padding: 0 3px 0 0; }
      body.page-template-home #wested-news-events .wested-news ul,
      body.page-template-home #wested-news-events .wested-events ul {
        margin: 0;
        padding: 0; }
        body.page-template-home #wested-news-events .wested-news ul li,
        body.page-template-home #wested-news-events .wested-events ul li {
          list-style: none;
          height: 140px;
          border-bottom: 1px solid #fff;
          margin: 0 0 20px 0;
          padding: 0; }
          body.page-template-home #wested-news-events .wested-news ul li:last-child,
          body.page-template-home #wested-news-events .wested-events ul li:last-child {
            height: 120px;
            border: none; }
          body.page-template-home #wested-news-events .wested-news ul li .img,
          body.page-template-home #wested-news-events .wested-events ul li .img {
            float: left;
            width: 140px;
            height: auto; }
            body.page-template-home #wested-news-events .wested-news ul li .img img,
            body.page-template-home #wested-news-events .wested-events ul li .img img {
              width: 100%;
              height: auto;
              border-radius: 6px;
              border: 1px solid #fff; }
          body.page-template-home #wested-news-events .wested-news ul li .info,
          body.page-template-home #wested-news-events .wested-events ul li .info {
            float: right;
            width: 330px; }
            body.page-template-home #wested-news-events .wested-news ul li .info h3,
            body.page-template-home #wested-news-events .wested-events ul li .info h3 {
              font-size: 18px;
              line-height: 22px;
              font-weight: 500;
              margin: 0 0 6px 0;
              padding: 0; }
              body.page-template-home #wested-news-events .wested-news ul li .info h3 a,
              body.page-template-home #wested-news-events .wested-events ul li .info h3 a {
                text-decoration: none; }
            body.page-template-home #wested-news-events .wested-news ul li .info p,
            body.page-template-home #wested-news-events .wested-events ul li .info p {
              font-size: 11px;
              line-height: 14px;
              font-weight: 500;
              letter-spacing: .55px;
              color: #8E9FB5;
              text-transform: uppercase;
              margin: 0 0 4px 0;
              padding: 0; }
    body.page-template-home #wested-news-events .wested-news {
      float: left; }
      body.page-template-home #wested-news-events .wested-news h2 {
        background: url("../images/home-news-bg.png") no-repeat 0 3px; }
    body.page-template-home #wested-news-events .wested-events {
      float: right; }
      body.page-template-home #wested-news-events .wested-events h2 {
        background: url("../images/home-events-bg.png") no-repeat 0 3px; }
  body.page-template-home #wested-in-action {
    background-color: #EEF2F7;
    border-top: 4px solid #fff; }
    body.page-template-home #wested-in-action .container {
      max-width: 1040px;
      margin: 0 auto;
      padding: 40px 20px; }
    body.page-template-home #wested-in-action h2 {
      font-family: "Roboto Slab";
      font-size: 28px;
      line-height: 28px;
      font-weight: 300;
      color: #5A799C;
      margin: 0 0 30px 0;
      padding: 0 3px 0 0; }
      body.page-template-home #wested-in-action h2 span {
        font-family: "Roboto";
        font-size: 14px;
        line-height: 18px;
        font-weight: 500; }
    body.page-template-home #wested-in-action .making-a-difference {
      float: left;
      width: 48%;
      margin: 0;
      padding: 0; }
      body.page-template-home #wested-in-action .making-a-difference ul {
        margin: 0;
        padding: 0; }
        body.page-template-home #wested-in-action .making-a-difference ul li {
          list-style: none;
          border-bottom: 1px solid #fff;
          margin: 0 0 20px 0;
          padding: 0 0 20px 0; }
          body.page-template-home #wested-in-action .making-a-difference ul li:last-child {
            border: none; }
          body.page-template-home #wested-in-action .making-a-difference ul li .img {
            float: left;
            width: 95px;
            margin: 0;
            padding: 0; }
            body.page-template-home #wested-in-action .making-a-difference ul li .img img {
              width: 100%;
              height: auto;
              clip-path: circle(50px at center);
              border: 2px solid #fff;
              border-radius: 50px; }
          body.page-template-home #wested-in-action .making-a-difference ul li .info {
            float: right;
            width: 370px;
            margin: 0;
            padding: 0; }
            body.page-template-home #wested-in-action .making-a-difference ul li .info h3 {
              font-size: 18px;
              line-height: 22px;
              font-weight: 500;
              margin: 0 0 6px 0;
              padding: 0; }
              body.page-template-home #wested-in-action .making-a-difference ul li .info h3 a {
                text-decoration: none; }
            body.page-template-home #wested-in-action .making-a-difference ul li .info p {
              font-size: 14px;
              line-height: 18px;
              font-weight: 500;
              color: #546B85;
              margin: 0;
              padding: 0; }
      body.page-template-home #wested-in-action .making-a-difference p.view-more {
        height: auto;
        margin: 0;
        padding: 0; }
    body.page-template-home #wested-in-action .feat-init {
      float: right;
      width: 49%;
      background-color: #fff;
      border-radius: 6px;
      margin: 0;
      padding: 30px 30px 10px 30px; }
      body.page-template-home #wested-in-action .feat-init h3 {
        font-size: 13px;
        line-height: 16px;
        font-weight: 500;
        letter-spacing: 2.5px;
        color: #fff;
        background-color: #ABC1DA;
        text-transform: uppercase;
        border-top-left-radius: 6px;
        border-top-right-radius: 6px;
        margin: -30px -30px 0 -30px;
        padding: 5px 0 5px 10px; }
        body.page-template-home #wested-in-action .feat-init h3 a {
          color: #fff;
          text-decoration: none; }
      body.page-template-home #wested-in-action .feat-init #feat_init_slider .bx-viewport {
        height: 245px !important;
        margin: 0;
        padding: 30px 0 0 0; }
      body.page-template-home #wested-in-action .feat-init #feat_init_slider .slide {
        width: 100% !important; }
        body.page-template-home #wested-in-action .feat-init #feat_init_slider .slide .img {
          width: 100%;
          margin: 0;
          padding: 0; }
          body.page-template-home #wested-in-action .feat-init #feat_init_slider .slide .img img {
            width: auto;
            height: auto;
            max-height: 90px;
            margin: 0 auto;
            padding: 0; }
        body.page-template-home #wested-in-action .feat-init #feat_init_slider .slide .info {
          width: 100%;
          margin: 0;
          padding: 0; }
          body.page-template-home #wested-in-action .feat-init #feat_init_slider .slide .info p {
            width: 100% !important;
            font-size: 13px;
            line-height: 18px;
            font-weight: 500;
            color: #819AB6;
            border-top: 1px solid #ABC1DA;
            margin: 20px 0 0 0;
            padding: 20px 0 0 0; }
            body.page-template-home #wested-in-action .feat-init #feat_init_slider .slide .info p a {
              text-decoration: none; }
      body.page-template-home #wested-in-action .feat-init #feat_init_slider .bx-controls {
        display: none;
        /* hiding in place of view more btn */
        z-index: 300;
        position: relative !important;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 25px; }
        body.page-template-home #wested-in-action .feat-init #feat_init_slider .bx-controls .bx-pager {
          height: inherit;
          margin: 0;
          padding: 0; }
          body.page-template-home #wested-in-action .feat-init #feat_init_slider .bx-controls .bx-pager .bx-pager-item a {
            display: inline-block;
            background-image: url("../images/slider_controls_sprite_blue.png") !important; }
      body.page-template-home #wested-in-action .feat-init p.view-more {
        height: auto;
        margin: 0;
        padding: 0; }
  @media screen and (max-width: 1040px) {
    body.page-template-home #wested-insights ul.wested-insights-entries li {
      float: none;
      width: 100%;
      height: auto;
      margin: 0 0 20px 0;
      padding: 0; }
    body.page-template-home #subscribe-social-bar {
      height: auto; }
      body.page-template-home #subscribe-social-bar .container {
        display: block;
        padding-top: 5px; }
      body.page-template-home #subscribe-social-bar .item {
        border: none;
        border-bottom: 4px solid #6985aa;
        margin: 20px 0 0 0;
        padding: 0 0 40px 0; }
        body.page-template-home #subscribe-social-bar .item:last-child {
          border: none; }
    body.page-template-home #wested-news-events .wested-news,
    body.page-template-home #wested-news-events .wested-events {
      float: none;
      width: 100%;
      margin: 0;
      padding: 0; }
      body.page-template-home #wested-news-events .wested-news h2,
      body.page-template-home #wested-news-events .wested-events h2 {
        background: none;
        text-align: left; }
      body.page-template-home #wested-news-events .wested-news ul li,
      body.page-template-home #wested-news-events .wested-events ul li {
        height: auto;
        border: none;
        margin: 0 0 10px 0;
        padding: 0 0 10px 0; }
        body.page-template-home #wested-news-events .wested-news ul li .info,
        body.page-template-home #wested-news-events .wested-events ul li .info {
          float: left;
          width: 50%;
          margin-left: 20px; }
      body.page-template-home #wested-news-events .wested-news p.view-more,
      body.page-template-home #wested-news-events .wested-events p.view-more {
        text-align: left !important;
        margin: -20px 0 0 0 !important; }
    body.page-template-home #wested-news-events .wested-events {
      margin-top: 40px; }
    body.page-template-home #wested-in-action .making-a-difference {
      float: none;
      width: 100%;
      margin: 0;
      padding: 0; }
      body.page-template-home #wested-in-action .making-a-difference ul li {
        border: none; }
        body.page-template-home #wested-in-action .making-a-difference ul li .info {
          float: left;
          width: 60%;
          margin-left: 20px; }
      body.page-template-home #wested-in-action .making-a-difference p.view-more {
        text-align: left !important;
        margin: 0 0 50px 0; }
    body.page-template-home #wested-in-action .feat-init {
      float: none;
      width: 70%; } }
  @media screen and (max-width: 550px) {
    body.page-template-home #wested-news-events .wested-news ul li,
    body.page-template-home #wested-news-events .wested-events ul li {
      height: auto !important; }
      body.page-template-home #wested-news-events .wested-news ul li .img,
      body.page-template-home #wested-news-events .wested-events ul li .img {
        float: none; }
      body.page-template-home #wested-news-events .wested-news ul li .info,
      body.page-template-home #wested-news-events .wested-events ul li .info {
        width: 100%;
        margin: 10px 0 0 0; }
    body.page-template-home #wested-news-events .wested-news p.view-more,
    body.page-template-home #wested-news-events .wested-events p.view-more {
      margin: 20px 0 0 0 !important; }
    body.page-template-home #wested-news-events .wested-events {
      margin-top: 50px; }
    body.page-template-home #wested-in-action .making-a-difference ul li .img {
      float: none; }
    body.page-template-home #wested-in-action .making-a-difference ul li .info {
      width: 100%;
      margin: 10px 0 0 0; }
    body.page-template-home #wested-in-action .feat-init {
      width: 100%; } }
  @media screen and (max-width: 470px) {
    body.page-template-home #wested-insights h2 span, body.page-template-home #wested-insights h2 em,
    body.page-template-home #wested-in-action h2 span,
    body.page-template-home #wested-in-action h2 em {
      display: none; } }

/* About Us
-------------------------------------------------------------------- */
body.page-about-us #sidebar h4 {
  margin: 0; }

body.page-about-us #sidebar .at-a-glance-widget td {
  padding-bottom: 10px; }

body.page-about-us .featured-content a {
  color: #1669c9; }

body.page-about-us #content-sidebar-wrap #main_content_wrap #sidebar {
  /* 2018 Year in Review */ }
  body.page-about-us #content-sidebar-wrap #main_content_wrap #sidebar .yir {
    display: flex;
    border-top: 1px solid #ABC1DA;
    margin: 10px 0;
    padding: 20px 0; }
    body.page-about-us #content-sidebar-wrap #main_content_wrap #sidebar .yir a:link {
      border: none !important; }
    body.page-about-us #content-sidebar-wrap #main_content_wrap #sidebar .yir .thumb {
      min-width: 180px;
      margin: 0;
      padding: 0; }
    body.page-about-us #content-sidebar-wrap #main_content_wrap #sidebar .yir p {
      align-self: flex-end;
      max-width: 120px !important;
      margin: 0;
      padding: 0 0 0 20px; }
      body.page-about-us #content-sidebar-wrap #main_content_wrap #sidebar .yir p a:link {
        font-size: 13px;
        line-height: 17px;
        font-weight: 600;
        color: #819AB6 !important; }
  @media screen and (max-width: 800px) {
    body.page-about-us #content-sidebar-wrap #main_content_wrap #sidebar .yir {
      display: block; }
      body.page-about-us #content-sidebar-wrap #main_content_wrap #sidebar .yir p {
        max-width: none !important;
        margin: 20px 0 0 0;
        padding: 0; } }

/* About Us / Board of Directors
-------------------------------------------------------------------- */
body.page-template-board-page #col_full_width {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  grid-gap: 25px; }
  body.page-template-board-page #col_full_width .board_person {
    float: left;
    display: flex;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    background: transparent !important;
    margin: 0 0 25px 0;
    padding: 0; }
    body.page-template-board-page #col_full_width .board_person .photo {
      flex: 1 1 0;
      top: 0;
      left: 0;
      float: none;
      width: auto;
      max-width: 120px;
      height: auto;
      margin: 0 0;
      padding: 0; }
    body.page-template-board-page #col_full_width .board_person .meta {
      flex: 1 1 0;
      margin: 0;
      padding: 0; }
      body.page-template-board-page #col_full_width .board_person .meta h3 {
        font-size: 18px;
        margin: 0 0 10px 0;
        padding: 0; }
      body.page-template-board-page #col_full_width .board_person .meta .title {
        margin: 0;
        padding: 0; }
      body.page-template-board-page #col_full_width .board_person .meta .locale {
        margin: 0;
        padding: 0; }

/* About Us / Leadership
-------------------------------------------------------------------- */
body.page-template-leadership h3 {
  font-size: 28px;
  color: #51AF46;
  text-align: center;
  font-family: "Roboto Slab";
  font-weight: 400;
  padding: 30px 0; }

body.page-template-leadership h4 {
  font-size: 22px;
  color: #51AF46;
  text-align: center;
  font-family: "Roboto Slab";
  font-weight: 400;
  padding: 30px 0 15px 0; }

body.page-template-leadership #col_full_width {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(125px, 1fr));
  grid-gap: 30px; }
  body.page-template-leadership #col_full_width .board_person {
    float: left;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    background: transparent !important;
    text-align: center;
    margin: 0 0 20px 0;
    padding: 0; }
    body.page-template-leadership #col_full_width .board_person .photo {
      top: 0;
      left: 0;
      float: none;
      margin: 0 auto;
      padding: 0; }
    body.page-template-leadership #col_full_width .board_person .title {
      width: 100% !important;
      margin: 0;
      padding: 0; }

/* About Us / Working with WestEd
-------------------------------------------------------------------- */
body.page-working-with-wested #content p {
  width: 100% !important; }

body.page-working-with-wested #content h2 {
  font-family: "Roboto Slab";
  font-size: 28px;
  line-height: 33px;
  font-weight: 300;
  color: #51AF46;
  margin: 0 0 12px 0;
  padding: 0; }

body.page-working-with-wested #sidebar {
  width: 25%; }

/* About Us / WestEd Offices
-------------------------------------------------------------------- */
body.page-wested-offices .featured-content .contact {
  margin-top: 0 !important; }

body.page-wested-offices .featured-content .contact__icon {
  line-height: 40px !important; }
  body.page-wested-offices .featured-content .contact__icon.fa-phone {
    line-height: 34px !important; }
  body.page-wested-offices .featured-content .contact__icon.fa-print {
    line-height: 34px !important; }

body.page-wested-offices .featured-content .contact__address {
  margin: 0 !important;
  padding: 0 !important; }

body.page-wested-offices .featured-content .contact__phone {
  margin: 20px 0 0 0 !important; }

body.page-wested-offices .featured-content .contact__image {
  float: none !important;
  text-align: center !important; }

body.page-wested-offices #offices .wrap a {
  margin-bottom: 5px !important; }

body.page-wested-offices #offices .address span.text {
  font-weight: 400 !important; }

@media screen and (max-width: 700px) {
  body.page-wested-offices .featured-content .contact__image {
    display: none !important; } }

/* legacy code below */
.page-wested-offices #section_header, .page-wested-offices .entry-child-title, .page-wested-offices #content, .page-wested-offices #sidebar, .page-wested-offices #main_content_wrap {
  display: none; }

.page-wested-offices .content-full-width {
  background: white;
  padding: 40px 0px; }
  .page-wested-offices .content-full-width > .featured-content {
    padding: 40px 0; }
  .page-wested-offices .content-full-width .container {
    padding: 0px 0 25px 0; }
    @media only screen and (max-width: 1050px) {
      .page-wested-offices .content-full-width .container {
        width: 100%;
        padding: 0px 20px 20px 20px; } }
  @media only screen and (max-width: 480px) {
    .page-wested-offices .content-full-width .featured-content__headline {
      width: 100%; } }
  .page-wested-offices .content-full-width .featured-content__headline h3 {
    font-size: 28px;
    font-weight: 300;
    font-family: "Roboto Slab"; }
    @media only screen and (max-width: 480px) {
      .page-wested-offices .content-full-width .featured-content__headline h3 {
        padding-bottom: 20px; } }
    @media only screen and (max-width: 320px) {
      .page-wested-offices .content-full-width .featured-content__headline h3 {
        text-align: left;
        padding: 0; } }
  .page-wested-offices .content-full-width .featured-content {
    width: 1000px;
    margin: 0 auto;
    display: block;
    overflow: auto;
    padding: 40px 0px; }
    .page-wested-offices .content-full-width .featured-content:first-child {
      padding: 0px; }
    @media only screen and (max-width: 1050px) {
      .page-wested-offices .content-full-width .featured-content {
        width: 100%;
        padding: 40px 20px; } }
    @media only screen and (max-width: 320px) {
      .page-wested-offices .content-full-width .featured-content {
        width: 100%; } }
    .page-wested-offices .content-full-width .featured-content:nth-child(1) {
      margin-top: 10px; }
      @media only screen and (max-width: 480px) {
        .page-wested-offices .content-full-width .featured-content:nth-child(1) h3 {
          padding-bottom: 0px; } }
    .page-wested-offices .content-full-width .featured-content:nth-child(2) {
      border-top: 2px solid #E3ECF9;
      padding: 30px 0 0 0; }
      @media only screen and (max-width: 1050px) {
        .page-wested-offices .content-full-width .featured-content:nth-child(2) {
          padding: 40px 20px; } }
      @media only screen and (max-width: 768px) {
        .page-wested-offices .content-full-width .featured-content:nth-child(2) {
          padding-bottom: 0;
          margin-bottom: 0; } }
    @media only screen and (max-width: 975px) {
      .page-wested-offices .content-full-width .featured-content__text {
        width: 100%; } }
    .page-wested-offices .content-full-width .featured-content #offices {
      list-style-type: none;
      webkit-column-count: 2;
      -moz-column-count: 2;
      column-count: 2; }
      @media only screen and (max-width: 750px) {
        .page-wested-offices .content-full-width .featured-content #offices {
          webkit-column-count: 1;
          -moz-column-count: 1;
          column-count: 1; } }
      .page-wested-offices .content-full-width .featured-content #offices .group {
        -webkit-column-break-inside: avoid;
        page-break-inside: avoid;
        break-inside: avoid;
        min-height: 120px;
        margin-bottom: 5px; }
        .page-wested-offices .content-full-width .featured-content #offices .group .contact__icon {
          line-height: 38px; }
        .page-wested-offices .content-full-width .featured-content #offices .group .wrap {
          float: left;
          width: 86%; }
          @media only screen and (max-width: 320px) {
            .page-wested-offices .content-full-width .featured-content #offices .group .wrap {
              width: 70%; } }
          .page-wested-offices .content-full-width .featured-content #offices .group .wrap a, .page-wested-offices .content-full-width .featured-content #offices .group .wrap .address {
            float: left;
            max-width: 300px;
            line-height: 24px; }
            @media only screen and (max-width: 320px) {
              .page-wested-offices .content-full-width .featured-content #offices .group .wrap a, .page-wested-offices .content-full-width .featured-content #offices .group .wrap .address {
                max-width: 100%;
                text-align: left; } }
        .page-wested-offices .content-full-width .featured-content #offices .group a {
          color: #1669C9;
          font-weight: 700;
          text-decoration: none;
          float: left;
          font-size: 17px;
          clear: none;
          margin-bottom: 15px; }
        .page-wested-offices .content-full-width .featured-content #offices .group span {
          color: #3F648F;
          font-size: 16px;
          font-weight: 700; }
    .page-wested-offices .content-full-width .featured-content .contact {
      float: left;
      margin-top: -15px; }
      @media only screen and (max-width: 575px) {
        .page-wested-offices .content-full-width .featured-content .contact {
          clear: both;
          width: 100%; } }
      .page-wested-offices .content-full-width .featured-content .contact .wrap {
        padding-right: 15px; }
        .page-wested-offices .content-full-width .featured-content .contact .wrap a {
          color: #1669C9;
          font-weight: 700;
          text-decoration: none;
          float: left;
          font-size: 17px;
          text-align: left; }
          @media only screen and (max-width: 320px) {
            .page-wested-offices .content-full-width .featured-content .contact .wrap a {
              width: 80%; } }
        .page-wested-offices .content-full-width .featured-content .contact .wrap > div {
          padding-bottom: 15px;
          height: auto;
          overflow: hidden; }
          .page-wested-offices .content-full-width .featured-content .contact .wrap > div.contact__fax p {
            padding-top: 5px; }
      .page-wested-offices .content-full-width .featured-content .contact p {
        font-color: #3F648F;
        font-weight: 700;
        font-size: 16px;
        max-width: 310px;
        text-align: left; }
        .page-wested-offices .content-full-width .featured-content .contact p:empty {
          display: none; }
      .page-wested-offices .content-full-width .featured-content .contact__icon {
        float: left;
        clear: both;
        display: block;
        font-size: 43px;
        line-height: 68px;
        margin-right: 15px;
        color: #1669C9; }
      .page-wested-offices .content-full-width .featured-content .contact__image {
        float: left; }
      .page-wested-offices .content-full-width .featured-content .contact__fax .contact__icon, .page-wested-offices .content-full-width .featured-content .contact__phone .contact__icon {
        font-size: 22px;
        width: 32px;
        text-align: center;
        line-height: 32px;
        background: #51AF46;
        color: white;
        border-radius: 20px;
        margin-right: 10px; }

/* About Us / Personnel
-------------------------------------------------------------------- */
body.page-staff-directory h1.entry-child-title {
  display: none; }

/* adds underline for content with no p */
body.single-personnel .entry-content a {
  text-decoration: underline; }

/* directory */
body.page-staff-directory #content h2 {
  font-family: "Roboto Slab" !important;
  font-size: 28px !important;
  line-height: 32px !important;
  font-weight: 100 !important;
  color: #51AF46 !important;
  margin: 30px 0 0 0 !important;
  padding: 0 !important; }

body.page-staff-directory #content #top {
  margin-bottom: 15px !important; }

/* single personnel */
body.single-personnel {
  /* title & info */
  /* content */
  /* sidebar */ }
  body.single-personnel .sidebar--left {
    float: left !important;
    width: 25% !important;
    margin: 0 !important;
    padding: 0 !important; }
    body.single-personnel .sidebar--left .personnel_job_title,
    body.single-personnel .sidebar--left .phone-fax-container,
    body.single-personnel .sidebar--left .phone {
      font-size: 16px !important;
      font-weight: 400 !important; }
  body.single-personnel #content {
    width: 70% !important; }
    body.single-personnel #content .entry-content {
      float: left !important;
      width: 75% !important;
      margin: 0 !important;
      padding: 0 0 0 30px !important;
      font-size: 16px;
      line-height: 24px;
      font-weight: 300;
      color: #546B85;
      margin: 0;
      padding: 0; }
    body.single-personnel #content ul li {
      font-size: 16px;
      line-height: 24px;
      font-weight: 300;
      color: #546B85; }
  body.single-personnel #sidebar {
    float: right !important;
    width: 25% !important;
    margin: 0 !important;
    padding: 0 !important; }
    body.single-personnel #sidebar #content li {
      margin: 14px 0; }
      body.single-personnel #sidebar #content li a {
        line-height: 22px; }
    body.single-personnel #sidebar #content a {
      font-size: 15px !important;
      font-weight: 400 !important;
      color: #1669c9 !important; }
      body.single-personnel #sidebar #content a:hover {
        opacity: .75 !important; }
    body.single-personnel #sidebar #content .name:hover {
      opacity: .75; }
  @media screen and (max-width: 940px) {
    body.single-personnel .sidebar--left,
    body.single-personnel #content,
    body.single-personnel #sidebar {
      float: none !important;
      width: 100% !important;
      margin: 0 !important;
      padding: 0 !important; }
    body.single-personnel .sidebar--left .sidebar__title {
      margin-top: 0; }
    body.single-personnel .sidebar--left #bio_pic {
      float: left;
      width: auto;
      margin: 0 20px 0 0;
      padding: 0; }
    body.single-personnel .sidebar--left .phone-fax-container {
      display: block; }
    body.single-personnel .sidebar--left .email {
      display: block;
      float: none;
      background-color: transparent;
      width: auto !important;
      max-width: none;
      margin: 15px 0 15px 0;
      padding: 0; }
      body.single-personnel .sidebar--left .email a {
        width: 150px !important;
        border-radius: 6px;
        padding: 5px 10px 5px 10px; }
    body.single-personnel .sidebar {
      display: block; }
    body.single-personnel #content .entry-content {
      float: none !important;
      display: block !important;
      width: 100% !important;
      border-top: 1px solid #ABC1DA;
      margin: 10px 0 0 0 !important;
      padding: 15px 0 0 0 !important; }
    body.single-personnel #sidebar {
      border-top: 1px solid #ABC1DA;
      margin: 20px 0 0 0 !important;
      padding: 20px 0 0 0 !important; } }

/* About Us / Personnel / Contact Staff
-------------------------------------------------------------------- */
body.email-form #content {
  width: 100%; }

body.email-form #custom-staff-contact-form .sidebar {
  float: left;
  width: 30%;
  margin: 0;
  padding: 0; }
  body.email-form #custom-staff-contact-form .sidebar .photo {
    margin: 0 0 20px 0;
    padding: 0; }
  body.email-form #custom-staff-contact-form .sidebar h2.personnel_job_title {
    font-family: "Roboto";
    font-size: 16px;
    line-height: 20px;
    font-weight: 400;
    color: #3F648F;
    margin: 0;
    padding: 0; }
    body.email-form #custom-staff-contact-form .sidebar h2.personnel_job_title strong {
      display: block;
      font-family: "Roboto Slab";
      font-size: 24px;
      line-height: 30px;
      font-weight: 400;
      color: #51AF46;
      margin-bottom: 4px; }

body.email-form #custom-staff-contact-form .content {
  float: right;
  width: 70%;
  margin: 0;
  padding: 0;
  /* Marketo form */ }
  body.email-form #custom-staff-contact-form .content form.mktoForm {
    width: 100%;
    color: #3F648F;
    margin: 0;
    padding: 0;
    /* label */
    /* input */
    /* textarea */
    /* checkbox list */
    /* submit */ }
    body.email-form #custom-staff-contact-form .content form.mktoForm .mktoHtmlText {
      font-size: 12px;
      line-height: 14px;
      font-weight: 300;
      color: #3F648F;
      margin: 0;
      padding: 0; }
    body.email-form #custom-staff-contact-form .content form.mktoForm .mktoFormRow {
      margin: 0 0 12px 0;
      padding: 0; }
    body.email-form #custom-staff-contact-form .content form.mktoForm label {
      font-size: 10px;
      line-height: 14px;
      font-weight: 700;
      color: #3F648F;
      text-transform: uppercase;
      margin: 0 0 6px 0;
      padding: 0; }
    body.email-form #custom-staff-contact-form .content form.mktoForm input[type="text"],
    body.email-form #custom-staff-contact-form .content form.mktoForm input[type="email"],
    body.email-form #custom-staff-contact-form .content form.mktoForm select {
      height: 42px;
      border: none;
      border-radius: 4px;
      box-shadow: none;
      background-color: #E3ECF9;
      font-size: 14px;
      line-height: 18px;
      font-weight: 700;
      color: #3F648F;
      margin: 0;
      padding: 4px 12px; }
    body.email-form #custom-staff-contact-form .content form.mktoForm textarea {
      width: 100% !important;
      border: none;
      border-radius: 4px;
      box-shadow: none;
      background-color: #E3ECF9;
      font-size: 14px;
      line-height: 18px;
      font-weight: 700;
      color: #3F648F;
      margin: 0;
      padding: 4px 12px; }
    body.email-form #custom-staff-contact-form .content form.mktoForm .mktoCheckboxList {
      margin: 0;
      padding: 0;
      /* note: can't really use custom checkbox styling here seen elsewhere in site */ }
      body.email-form #custom-staff-contact-form .content form.mktoForm .mktoCheckboxList input[type="checkbox"] {
        width: auto;
        box-shadow: none;
        line-height: 18px;
        margin: 3px 8px 12px 0;
        padding: 0; }
      body.email-form #custom-staff-contact-form .content form.mktoForm .mktoCheckboxList label {
        cursor: pointer;
        font-size: 14px;
        line-height: 18px;
        font-weight: 700;
        color: #3F648F;
        text-transform: none;
        margin: 0 0 12px 0;
        padding: 0; }
        body.email-form #custom-staff-contact-form .content form.mktoForm .mktoCheckboxList label:hover {
          opacity: .75; }
    body.email-form #custom-staff-contact-form .content form.mktoForm .mktoButtonRow {
      display: block !important;
      width: 580px !important;
      margin: 0 !important;
      padding: 0 !important; }
      body.email-form #custom-staff-contact-form .content form.mktoForm .mktoButtonRow .mktoButtonWrap {
        display: block !important;
        text-align: center !important;
        margin: 0 !important;
        padding: 0 !important; }
        body.email-form #custom-staff-contact-form .content form.mktoForm .mktoButtonRow .mktoButtonWrap button {
          font-size: 15px !important;
          font-weight: 500 !important;
          color: #fff !important;
          background-color: #5a799c !important;
          border-radius: 6px !important;
          border: none !important;
          background-image: none !important;
          margin: 0 !important;
          padding: 8px 16px 8px 16px !important; }
          body.email-form #custom-staff-contact-form .content form.mktoForm .mktoButtonRow .mktoButtonWrap button:hover {
            opacity: .75; }

@media screen and (max-width: 980px) {
  body.email-form #custom-staff-contact-form .sidebar,
  body.email-form #custom-staff-contact-form .content {
    float: none;
    width: 100%;
    min-width: none;
    max-width: none; }
  body.email-form #custom-staff-contact-form .content {
    margin-top: 30px; } }

@media screen and (max-width: 490px) {
  body.email-form #custom-staff-contact-form .content form.mktoForm textarea {
    float: none !important;
    width: 100% !important;
    height: 100px !important; }
  body.email-form #custom-staff-contact-form .content form.mktoForm .mktoButtonRow {
    width: 100% !important; } }

/* About Us / Programs
-------------------------------------------------------------------- */
body.single-program {
  /* Recent Posts */
  /* Related Projects */ }
  body.single-program #recent-news {
    background-color: #EEF2F7; }
  body.single-program #main_content_wrap #content .entry-content__body p {
    float: none; }
  body.single-program #related-projects {
    background-color: #E3ECF9;
    /* list */ }
    body.single-program #related-projects .container {
      width: 100% !important;
      max-width: 1040px !important;
      margin: 0 auto;
      padding: 30px 20px !important; }
    body.single-program #related-projects h2 {
      float: left;
      font-family: "Roboto Slab";
      font-size: 30px;
      line-height: 36px;
      font-weight: 300;
      color: #51AF46;
      margin: 0 0 30px 0;
      padding: 0; }
    body.single-program #related-projects p.project-toggle {
      float: right;
      margin: 0 0 30px 0;
      padding: 10px 0 0 0; }
      body.single-program #related-projects p.project-toggle a {
        font-size: 15px;
        line-height: 18px;
        font-weight: 400;
        color: #1669c9;
        text-decoration: none;
        text-transform: uppercase; }
    body.single-program #related-projects .program-projects {
      clear: both; }
      body.single-program #related-projects .program-projects .project_list_box {
        display: flex;
        border-bottom: 1px solid #ABC1DA;
        margin: 0 0 25px 0;
        padding: 0 0 25px 0; }
        body.single-program #related-projects .program-projects .project_list_box:last-child {
          border: none;
          padding-bottom: 0; }
        body.single-program #related-projects .program-projects .project_list_box .logo {
          float: left;
          /* flex fallback */
          max-width: 200px;
          min-width: 200px;
          margin: 0 30px 0 0;
          padding: 0; }
          body.single-program #related-projects .program-projects .project_list_box .logo img {
            width: 100%; }
        body.single-program #related-projects .program-projects .project_list_box .description .description-inner h3 {
          font-size: 17px;
          line-height: 21px;
          font-weight: 500;
          margin: 0 0 8px 0;
          padding: 0; }
          body.single-program #related-projects .program-projects .project_list_box .description .description-inner h3 a {
            text-decoration: none;
            color: #1669c9; }
      body.single-program #related-projects .program-projects .project_list.more_links_list {
        border-top: 1px solid #ABC1DA;
        padding-top: 20px; }
  @media screen and (max-width: 665px) {
    body.single-program #related-projects .program-projects .project_list_box {
      display: block; }
      body.single-program #related-projects .program-projects .project_list_box .logo {
        margin-bottom: 15px; } }

@media screen and (max-width: 950px) {
  .single-program #sidebar .contactInfo .name {
    display: block; }
  .single-program #sidebar .contactInfo .phone-fax-container {
    display: block; } }

/* About Us / Project
-------------------------------------------------------------------- */
body.single-project {
  /* for projects with custom div content */
  /* sidebar */
  /* Recent News */
  /* Related Resources */ }
  body.single-project .entry-content div {
    width: 90%; }
  body.single-project .project-header {
    float: left;
    width: auto !important;
    margin: 0;
    padding: 0 20px 0 0; }
    body.single-project .project-header .project_logo {
      display: none;
      /* hiding */ }
  body.single-project #content {
    width: 68%;
    /* 2020-12 uses global show/hide, but with the styling below */ }
    body.single-project #content h3 {
      font-family: "Roboto";
      font-size: 20px;
      line-height: 26px;
      font-weight: 500;
      margin-bottom: 15px; }
    body.single-project #content ul {
      margin: 20px 40px 20px 0;
      padding: 0; }
    body.single-project #content h2.toggle-trigger {
      cursor: pointer;
      font-family: "Roboto";
      background: url("../images/icon-enhanced-project-plus.svg") no-repeat 0 0;
      margin: 20px 0 20px 0;
      padding: 0 0 0 35px; }
      body.single-project #content h2.toggle-trigger.expanded {
        background: url("../images/icon-enhanced-project-minus.svg") no-repeat 0 0; }
      body.single-project #content h2.toggle-trigger:hover {
        opacity: .75; }
  body.single-project .related-services-list {
    margin: 30px 0 0 0;
    padding: 0; }
  body.single-project #content .related-website {
    margin: 30px 0 20px 0;
    padding: 30px 0 0 0; }
    body.single-project #content .related-website .info {
      float: left;
      width: 60%; }
      body.single-project #content .related-website .info h3 {
        font-size: 20px;
        line-height: 26px;
        font-weight: 500;
        color: #546B85;
        margin: 0 0 6px 0;
        padding: 0; }
    body.single-project #content .related-website .img {
      float: right;
      width: 50%;
      max-width: 230px; }
    @media screen and (max-width: 700px) {
      body.single-project #content .related-website .info,
      body.single-project #content .related-website .img {
        float: none;
        width: 100%; }
      body.single-project #content .related-website .img {
        margin-top: 20px; } }
  body.single-project #sidebar .project_logo {
    width: 100%;
    border-bottom: 1px solid #ABC1DA;
    margin: 0 0 25px 0;
    padding: 0 0 25px 0; }
    body.single-project #sidebar .project_logo img {
      width: auto;
      height: auto;
      margin: 0;
      padding: 0; }
  body.single-project #sidebar_project_funder,
  body.single-project #sidebar_social_media,
  body.single-project #sidebar_related_project,
  body.single-project #sidebar_related_aow {
    border-top: 1px solid #ABC1DA !important;
    margin: 15px 0 15px 0 !important;
    padding: 15px 0 15px !important; }
    body.single-project #sidebar_project_funder .widgettitle,
    body.single-project #sidebar_social_media .widgettitle,
    body.single-project #sidebar_related_project .widgettitle,
    body.single-project #sidebar_related_aow .widgettitle {
      margin-left: 0 !important;
      margin-bottom: 12px !important; }
    body.single-project #sidebar_project_funder .sidebar_linklist .name a,
    body.single-project #sidebar_social_media .sidebar_linklist .name a,
    body.single-project #sidebar_related_project .sidebar_linklist .name a,
    body.single-project #sidebar_related_aow .sidebar_linklist .name a {
      font-weight: 400; }
  body.single-project #sidebar_related_aow ul li {
    border: none;
    margin-bottom: 12px; }
    body.single-project #sidebar_related_aow ul li a {
      line-height: 19px; }
    body.single-project #sidebar_related_aow ul li:last-child {
      margin-bottom: 0; }
  body.single-project #sidebar_project_funder .textwidget {
    font-size: 16px;
    line-height: 22px;
    font-weight: 500; }
  body.single-project #sidebar .socialicons li {
    margin-right: 10px; }
  body.single-project #sidebar {
    min-width: 290px; }
    body.single-project #sidebar .contactInfo {
      padding-bottom: 30px; }
    body.single-project #sidebar .name {
      max-width: 175px; }
    body.single-project #sidebar .photo-missing {
      width: 90px;
      height: 90px;
      border-radius: 5px;
      margin: 0 20px 0 0;
      padding: 0; }
    body.single-project #sidebar #sidebar_related_research_studies,
    body.single-project #sidebar #sidebar_related_project {
      border-top: 1px solid #ABC1DA; }
      body.single-project #sidebar #sidebar_related_research_studies h4,
      body.single-project #sidebar #sidebar_related_project h4 {
        margin: 0 0 12px 0;
        padding: 15px 0 0 0; }
      body.single-project #sidebar #sidebar_related_research_studies ul.sidebar_linklist li,
      body.single-project #sidebar #sidebar_related_project ul.sidebar_linklist li {
        border: none;
        margin: 0 0 15px 0;
        padding: 0 !important; }
        body.single-project #sidebar #sidebar_related_research_studies ul.sidebar_linklist li a,
        body.single-project #sidebar #sidebar_related_project ul.sidebar_linklist li a {
          font-weight: 400;
          line-height: 20px; }
  body.single-project #recent-news {
    border: 1px solid green; }
    body.single-project #recent-news ul.newslist {
      margin-bottom: 40px; }
      body.single-project #recent-news ul.newslist li {
        min-height: auto !important; }
    body.single-project #recent-news .img img {
      max-width: 125px;
      border-radius: 5px; }
  body.single-project #related-resources {
    background-color: #abc1da; }
    body.single-project #related-resources .container {
      margin: 0 auto;
      padding: 2em 0; }
    body.single-project #related-resources h3 {
      font-family: "Roboto Slab";
      font-size: 1.5rem;
      line-height: 1.2;
      font-weight: 300;
      color: #fff;
      margin-bottom: 25px !important; }
    body.single-project #related-resources .more_links {
      clear: both; }
    body.single-project #related-resources ul.resource_list {
      display: grid;
      grid-template-columns: 1fr 1fr;
      grid-gap: 30px;
      margin: 0 0 20px 0;
      padding: 0; }
      body.single-project #related-resources ul.resource_list li {
        float: left;
        width: 100%;
        height: auto;
        border: none;
        margin: 0 0 20px 0;
        padding: 0; }
        body.single-project #related-resources ul.resource_list li .thumb {
          float: left;
          width: 15%;
          min-width: 120px;
          max-width: 120px;
          margin: 0 20px 0 0; }
          body.single-project #related-resources ul.resource_list li .thumb img {
            width: 100%; }
        body.single-project #related-resources ul.resource_list li .info {
          float: left;
          width: 70%; }
    body.single-project #related-resources a {
      text-decoration: none !important; }
    body.single-project #related-resources h4 {
      font-size: 17px;
      line-height: 23px;
      color: #1451bd; }
    body.single-project #related-resources p {
      font-size: 16px;
      line-height: 24px;
      color: #546B85 !important; }
      body.single-project #related-resources p a {
        color: inherit; }
  @media screen and (max-width: 1040px) {
    body.single-project #related-resources ul.resource_list li .thumb {
      display: block !important; } }
  @media screen and (max-width: 950px) {
    body.single-project #content,
    body.single-project #sidebar {
      float: none;
      width: 100%; }
    body.single-project #content {
      padding-bottom: 20px !important; }
    body.single-project #related-resources ul.resource_list {
      grid-template-columns: 1fr; }
      body.single-project #related-resources ul.resource_list li .thumb {
        float: left !important;
        width: 20% !important;
        margin: 0 20px 0 0;
        padding: 0; }
      body.single-project #related-resources ul.resource_list li .info {
        float: left !important;
        width: 80% !important;
        margin: 0;
        padding: 0; } }
  @media screen and (max-width: 706px) {
    body.single-project #related-resources ul.resource_list {
      grid-template-columns: 1fr; }
      body.single-project #related-resources ul.resource_list li {
        margin: 0 !important;
        padding: 0 !important; }
        body.single-project #related-resources ul.resource_list li .info {
          margin-top: 20px !important; } }
  @media screen and (max-width: 770px) {
    body.single-project #sidebar {
      margin-top: 30px; }
      body.single-project #sidebar .widget {
        margin-bottom: 30px; }
      body.single-project #sidebar .widgettitle {
        margin: 0 0 20px 0 !important; }
      body.single-project #sidebar .contactInfo .photo {
        float: none;
        display: block; }
      body.single-project #sidebar .contactInfo .photo-missing {
        height: 10px; }
      body.single-project #sidebar .contactInfo .name {
        float: none;
        display: block; }
      body.single-project #sidebar .contactInfo .phone-fax-container {
        float: none;
        display: block; } }
  @media screen and (max-width: 700px) {
    body.single-project .project-header .project_logo {
      float: none;
      width: 100%; }
      body.single-project .project-header .project_logo img {
        max-width: none; }
    body.single-project .project-header .project_title {
      float: none;
      width: 100%;
      max-width: none;
      margin: 20px 0 20px 0; } }

/* 2020-03-24 adding Subscribe Social Bar styling to single project view (CHKS requested) */
body.single-project {
  /* Subscribe Social Bar */ }
  body.single-project #subscribe-social-bar {
    width: 95%;
    max-width: 630px;
    height: auto;
    border: 2px solid #E3ECF9;
    border-radius: 6px;
    margin: 40px 0;
    padding: 0; }
    body.single-project #subscribe-social-bar .container {
      width: 100%;
      margin: 0;
      padding: 20px 20px 10px 20px; }
      body.single-project #subscribe-social-bar .container ul {
        margin: 0;
        padding: 0; }
        body.single-project #subscribe-social-bar .container ul li {
          list-style: none;
          margin: 0;
          padding: 0; }
    body.single-project #subscribe-social-bar .subscribe {
      width: 100%;
      height: 110px;
      margin: 0;
      padding: 0; }
      body.single-project #subscribe-social-bar .subscribe .icon {
        float: left;
        width: 94px;
        height: 94px;
        background: url("../images/icon-write-filled.png") no-repeat 0 0;
        margin: 0 30px 0 0;
        padding: 0; }
      body.single-project #subscribe-social-bar .subscribe h2 {
        font-family: "Roboto";
        font-size: 22px;
        line-height: 26px;
        font-weight: 500;
        margin: 0;
        padding: 8px 0 5px 0; }
        body.single-project #subscribe-social-bar .subscribe h2 a {
          color: #6EA9ED; }
      body.single-project #subscribe-social-bar .subscribe p {
        width: 50% !important;
        float: left;
        font-size: 15px;
        line-height: 18px;
        font-weight: 500;
        color: #3F648F;
        margin: 0;
        padding: 0; }
        body.single-project #subscribe-social-bar .subscribe p.subscribe {
          float: right;
          width: auto !important;
          margin: 0;
          padding: 0; }
          body.single-project #subscribe-social-bar .subscribe p.subscribe a {
            font-family: "Roboto" !important;
            font-size: 15px !important;
            line-height: 18px !important;
            font-weight: 500 !important;
            color: #fff !important;
            background-color: #5a799c !important;
            border-radius: 6px !important;
            border: none !important;
            text-decoration: none !important;
            margin: 12px 0 !important;
            padding: 8px 16px 8px 16px !important; }
            body.single-project #subscribe-social-bar .subscribe p.subscribe a:hover {
              opacity: .75; }
    body.single-project #subscribe-social-bar .social {
      width: 79%;
      height: 65px;
      border-top: 2px solid #E3ECF9;
      margin: 0 0 0 125px;
      padding: 15px 0 0 0; }
      body.single-project #subscribe-social-bar .social h2 {
        float: left;
        font-family: "Roboto";
        font-size: 22px;
        line-height: 26px;
        font-weight: 500;
        color: #6EA9ED;
        margin: 0;
        padding: 6px 0 0 0; }
      body.single-project #subscribe-social-bar .social ul {
        float: right;
        width: 140px;
        margin: 0;
        padding: 0; }
        body.single-project #subscribe-social-bar .social ul li {
          list-style: none;
          display: inline-block;
          text-align: center;
          margin: 0;
          padding: 0; }
          body.single-project #subscribe-social-bar .social ul li a {
            display: block;
            width: 37px;
            height: 37px; }
            body.single-project #subscribe-social-bar .social ul li a.twitter {
              background: url("../images/icon-social-twitter-baby.png") no-repeat 0 0; }
            body.single-project #subscribe-social-bar .social ul li a.linkedin {
              background: url("../images/icon-social-linkedin-baby.png") no-repeat 0 0; }
            body.single-project #subscribe-social-bar .social ul li a.facebook {
              background: url("../images/icon-social-facebook-baby.png") no-repeat 0 0; }
    @media screen and (max-width: 1020px) {
      body.single-project #subscribe-social-bar {
        max-width: none;
        width: 100%; }
        body.single-project #subscribe-social-bar .subscribe {
          height: auto;
          padding-bottom: 30px; }
          body.single-project #subscribe-social-bar .subscribe .icon {
            display: none !important; }
          body.single-project #subscribe-social-bar .subscribe p {
            float: none !important;
            width: 100% !important; }
            body.single-project #subscribe-social-bar .subscribe p.subscribe {
              margin-top: 15px; }
        body.single-project #subscribe-social-bar .social {
          width: 100%;
          height: 100px;
          margin: 0; }
          body.single-project #subscribe-social-bar .social h2 {
            margin: 0 0 10px 0; }
          body.single-project #subscribe-social-bar .social ul {
            float: none; } }

/* About Us / Enhanced Project (2020-06) (Modeled for Strategic Resource Planning Implementation, but will be used again for others)
-------------------------------------------------------------------- */
body.single-project-enhanced {
  overflow: initial;
  /* for bust-out */
  /* global type */
  /* global bust-out */
  /* hero */
  /* Overview */
  /* Connect with WestEd */
  /* How We Can Help */
  /* News & Events */
  /* Projects */
  /* Resources */
  /* Our Team */ }
  body.single-project-enhanced #main_content_wrap {
    padding: 0 20px 0; }
    body.single-project-enhanced #main_content_wrap #content p {
      width: 100%; }
  body.single-project-enhanced #content {
    width: 100%; }
    body.single-project-enhanced #content h2 {
      font-family: "Roboto Slab";
      font-size: 28px;
      line-height: 37px;
      font-weight: 300;
      color: #51AF46;
      margin: 0 0 20px 0;
      padding: 0; }
    body.single-project-enhanced #content p {
      margin: 0 0 14px 0;
      padding: 0; }
    body.single-project-enhanced #content a.btn {
      display: inline-block;
      font-family: "Roboto" !important;
      font-size: 15px !important;
      line-height: 18px !important;
      font-weight: 500 !important;
      letter-spacing: .5px !important;
      color: #fff !important;
      background-color: #5a799c !important;
      border-radius: 6px !important;
      border: none !important;
      text-decoration: none !important;
      margin: 8px 0 0 0 !important;
      padding: 8px 16px 8px 16px !important; }
      body.single-project-enhanced #content a.btn:hover {
        opacity: .75; }
  body.single-project-enhanced .bust-out {
    background-color: transparent;
    box-sizing: border-box;
    transform: translateX(calc(50vw - 50%));
    margin: auto calc(50% - 50vw);
    padding: 0 0 0 0; }
    body.single-project-enhanced .bust-out .bust-out-content {
      width: 1000px;
      /* match .entry-content width */
      margin: 0 auto;
      padding: 50px 0 50px; }
  @media screen and (max-width: 1060px) {
    body.single-project-enhanced .bust-out .bust-out-content {
      width: 92%; } }
  body.single-project-enhanced #hero .hero-subnav ul li {
    padding: 0 20px; }
  body.single-project-enhanced #overview .group {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0 30px;
    margin: 0;
    padding: 0; }
    body.single-project-enhanced #overview .group .item {
      margin: 0;
      padding: 0; }
      body.single-project-enhanced #overview .group .item:nth-child(1) {
        grid-column: 1 / 4; }
      body.single-project-enhanced #overview .group .item:nth-child(2) {
        grid-column: 4 / 6;
        background: #E3ECF9 url("../images/icon-quote-white.svg") no-repeat 5px 5px;
        border-radius: 15px;
        padding: 35px 50px 20px 50px; }
        body.single-project-enhanced #overview .group .item:nth-child(2) p.quote {
          font-size: 18px;
          line-height: 30px;
          font-weight: 400;
          background: none;
          margin: 0 0 10px 0;
          padding: 0; }
        body.single-project-enhanced #overview .group .item:nth-child(2) p.quote-source {
          font-size: 13px;
          line-height: 18px;
          font-weight: 700;
          color: #8E9FB5;
          margin: 0;
          padding: 0 0 0 50px; }
  @media screen and (max-width: 900px) {
    body.single-project-enhanced #overview .group {
      display: block; }
      body.single-project-enhanced #overview .group .item {
        margin: 0 0 20px 0;
        padding: 0; } }
  body.single-project-enhanced #connect-with-wested {
    background-color: #3F648F; }
    body.single-project-enhanced #connect-with-wested .bust-out-content {
      padding: 0; }
    body.single-project-enhanced #connect-with-wested .group {
      display: grid;
      grid-gap: 0 30px;
      grid-template-columns: repeat(5, 1fr);
      margin: 0;
      padding: 0; }
      body.single-project-enhanced #connect-with-wested .group .item {
        margin: 0;
        padding: 0; }
        body.single-project-enhanced #connect-with-wested .group .item:nth-child(1) {
          grid-column: 1 / 4;
          display: grid;
          padding: 20px 0 20px;
          /* inner group */ }
          body.single-project-enhanced #connect-with-wested .group .item:nth-child(1) .group {
            display: grid;
            grid-gap: 0 0;
            grid-template-columns: repeat(6, 1fr);
            margin: 0;
            padding: 0; }
            body.single-project-enhanced #connect-with-wested .group .item:nth-child(1) .group .item {
              margin: 0;
              padding: 0; }
              body.single-project-enhanced #connect-with-wested .group .item:nth-child(1) .group .item:nth-child(1) {
                grid-column: 1 / 1; }
                body.single-project-enhanced #connect-with-wested .group .item:nth-child(1) .group .item:nth-child(1) .icon-connect {
                  width: 71px;
                  height: 71px; }
              body.single-project-enhanced #connect-with-wested .group .item:nth-child(1) .group .item:nth-child(2) {
                background-color: transparent;
                grid-column: 2 / 7; }
                body.single-project-enhanced #connect-with-wested .group .item:nth-child(1) .group .item:nth-child(2) h2 {
                  font-family: "Roboto" !important;
                  font-size: 22px;
                  line-height: 26px;
                  font-weight: 500;
                  margin: 0 0 6px 0;
                  padding: 0; }
                  body.single-project-enhanced #connect-with-wested .group .item:nth-child(1) .group .item:nth-child(2) h2 a {
                    color: #6EA9ED; }
                body.single-project-enhanced #connect-with-wested .group .item:nth-child(1) .group .item:nth-child(2) p {
                  font-size: 15px;
                  line-height: 20px;
                  font-weight: 500;
                  color: #fff;
                  margin: 0;
                  padding: 0; }
        body.single-project-enhanced #connect-with-wested .group .item:nth-child(2) {
          grid-column: 4 / 6;
          background-color: #5277A2;
          padding: 20px 30px 20px; }
          body.single-project-enhanced #connect-with-wested .group .item:nth-child(2) ul {
            margin: 0 auto;
            padding: 18px 0 0; }
            body.single-project-enhanced #connect-with-wested .group .item:nth-child(2) ul:before, body.single-project-enhanced #connect-with-wested .group .item:nth-child(2) ul:after {
              content: "";
              display: table; }
            body.single-project-enhanced #connect-with-wested .group .item:nth-child(2) ul:after {
              clear: both; }
            body.single-project-enhanced #connect-with-wested .group .item:nth-child(2) ul li {
              float: left;
              list-style: none;
              display: inline-block;
              margin: 0 5px;
              padding: 0; }
              body.single-project-enhanced #connect-with-wested .group .item:nth-child(2) ul li a.btn {
                display: block !important;
                background: transparent !important;
                border: 2px solid #fff !important;
                border-radius: 4px !important;
                margin: 0 20px 0 0 !important; }
              body.single-project-enhanced #connect-with-wested .group .item:nth-child(2) ul li a.social {
                display: block;
                width: 37px;
                height: 37px;
                text-indent: -9999px; }
              body.single-project-enhanced #connect-with-wested .group .item:nth-child(2) ul li a.twitter {
                background: url("../images/icon-social-twitter-37x37.svg") no-repeat 0 0; }
              body.single-project-enhanced #connect-with-wested .group .item:nth-child(2) ul li a.linkedin {
                background: url("../images/icon-social-linkedin-37x37.svg") no-repeat 0 0; }
              body.single-project-enhanced #connect-with-wested .group .item:nth-child(2) ul li a.facebook {
                background: url("../images/icon-social-facebook-37x37.svg") no-repeat 0 0; }
    @media screen and (max-width: 1065px) {
      body.single-project-enhanced #connect-with-wested .group {
        display: block !important; }
        body.single-project-enhanced #connect-with-wested .group .item {
          text-align: center;
          background: none !important; }
          body.single-project-enhanced #connect-with-wested .group .item ul {
            max-width: 320px;
            padding: 0 !important; }
          body.single-project-enhanced #connect-with-wested .group .item .group .item:nth-child(1) {
            display: none; } }
    @media screen and (max-width: 420px) {
      body.single-project-enhanced #connect-with-wested .group .item ul {
        max-width: none; }
        body.single-project-enhanced #connect-with-wested .group .item ul li {
          float: none !important;
          display: block !important;
          width: auto;
          text-align: center;
          margin: 0 auto 8px !important; }
          body.single-project-enhanced #connect-with-wested .group .item ul li a {
            display: block !important;
            margin: 0 auto !important; }
      body.single-project-enhanced #connect-with-wested .group .item:nth-child(2) ul li a.btn {
        margin-right: 0 !important; } }
  body.single-project-enhanced #how {
    background-color: #E3ECF9; }
    body.single-project-enhanced #how .group {
      display: grid;
      grid-template-columns: 1fr 2fr;
      grid-gap: 30px;
      margin: 0;
      padding: 0; }
      body.single-project-enhanced #how .group .item {
        margin: 0;
        padding: 0; }
        body.single-project-enhanced #how .group .item:nth-child(1) p {
          font-weight: 700;
          margin-bottom: 25px; }
        body.single-project-enhanced #how .group .item:nth-child(2) .how {
          border: 2px solid #fff;
          border-radius: 10px;
          margin: 0 0 20px 0;
          padding: 30px; }
          body.single-project-enhanced #how .group .item:nth-child(2) .how ul {
            column-count: 2;
            column-gap: 25px;
            margin: 0 0 0 40px;
            padding: 0; }
            body.single-project-enhanced #how .group .item:nth-child(2) .how ul li {
              margin: 0 0 10px 0; }
    @media screen and (max-width: 900px) {
      body.single-project-enhanced #how .group {
        display: block !important; } }
    @media screen and (max-width: 550px) {
      body.single-project-enhanced #how .group .item:nth-child(2) .how ul {
        column-count: auto; } }
  body.single-project-enhanced #news-events ul.newslist {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 30px;
    margin: 0;
    padding: 0; }
    body.single-project-enhanced #news-events ul.newslist li {
      margin: 0;
      padding: 0; }
      body.single-project-enhanced #news-events ul.newslist li a {
        float: none;
        width: 100%; }
        body.single-project-enhanced #news-events ul.newslist li a .img {
          margin: 0 0 15px 0;
          padding: 0; }
          body.single-project-enhanced #news-events ul.newslist li a .img img {
            max-width: 220px;
            width: 100%;
            height: auto; }
        body.single-project-enhanced #news-events ul.newslist li a .info h3 {
          margin: 0 0 5px 0;
          padding: 0; }
        body.single-project-enhanced #news-events ul.newslist li a .info p {
          font-size: 12px;
          font-weight: 700;
          text-transform: uppercase;
          color: #819AB6;
          margin: 0 0 15px 0;
          padding: 0; }
        body.single-project-enhanced #news-events ul.newslist li a .info span.excerpt,
        body.single-project-enhanced #news-events ul.newslist li a .info span.excerpt p {
          display: block !important;
          font-size: 16px !important;
          line-height: 24px !important;
          font-weight: 300 !important;
          color: #546B85 !important;
          text-transform: none !important;
          color: #546B85 !important; }
  body.single-project-enhanced #news-events .view_more_btn {
    position: relative;
    text-align: center;
    margin: 40px 0 0 0;
    padding: 0; }
    body.single-project-enhanced #news-events .view_more_btn a {
      display: inline-block;
      width: auto;
      font-size: 11px !important;
      line-height: 15px !important;
      font-weight: 500 !important;
      color: #fff !important;
      letter-spacing: 1px !important;
      border-top-left-radius: 0 !important;
      border-top-right-radius: 0 !important;
      border-bottom-left-radius: 6px !important;
      border-bottom-right-radius: 6px !important;
      text-transform: uppercase !important;
      margin: 0 !important;
      padding: 1px 12px !important; }
      body.single-project-enhanced #news-events .view_more_btn a:before {
        content: "";
        background-color: #5a799c;
        width: 100%;
        height: 2px;
        position: absolute;
        top: 0;
        left: 0; }
    body.single-project-enhanced #news-events .view_more_btn:hover {
      opacity: .75; }
  @media screen and (max-width: 900px) {
    body.single-project-enhanced #news-events ul.newslist {
      display: block; }
      body.single-project-enhanced #news-events ul.newslist li {
        margin: 0 0 30px 0; } }
  body.single-project-enhanced #projects {
    background-color: #ABC1DA; }
    body.single-project-enhanced #projects h2 {
      display: none; }
    body.single-project-enhanced #projects .group {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      grid-gap: 20px;
      margin: 0;
      padding: 0; }
      body.single-project-enhanced #projects .group .item {
        margin: 0;
        padding: 0; }
        body.single-project-enhanced #projects .group .item:nth-child(1) {
          grid-column: 1 / 1; }
        body.single-project-enhanced #projects .group .item:nth-child(2) {
          grid-column: 2 / 5; }
          body.single-project-enhanced #projects .group .item:nth-child(2) h2 {
            display: block;
            font-size: 32px;
            line-height: 43px;
            color: #fff; }
          body.single-project-enhanced #projects .group .item:nth-child(2) p {
            font-size: 20px;
            line-height: 27px;
            font-weight: 400; }
          body.single-project-enhanced #projects .group .item:nth-child(2) .project-list {
            margin: 40px 0 0 0;
            padding: 0; }
            body.single-project-enhanced #projects .group .item:nth-child(2) .project-list h3 {
              cursor: pointer;
              color: #fff;
              background: url("../images/icon-enhanced-project-plus.svg") no-repeat 0 0;
              margin: 0 0 20px 0;
              padding: 0 0 0 35px; }
              body.single-project-enhanced #projects .group .item:nth-child(2) .project-list h3.expanded {
                background: url("../images/icon-enhanced-project-minus.svg") no-repeat 0 0; }
              body.single-project-enhanced #projects .group .item:nth-child(2) .project-list h3:hover {
                opacity: .75; }
            body.single-project-enhanced #projects .group .item:nth-child(2) .project-list .toggle-group {
              margin: 0;
              padding: 0 0 30px 50px; }
              body.single-project-enhanced #projects .group .item:nth-child(2) .project-list .toggle-group p {
                font-size: 16px;
                line-height: 24px;
                font-weight: 400; }
            body.single-project-enhanced #projects .group .item:nth-child(2) .project-list .view-more-btn {
              border-top: 2px solid #5a799c;
              text-align: center;
              margin: 40px 0 0 0;
              padding: 0; }
              body.single-project-enhanced #projects .group .item:nth-child(2) .project-list .view-more-btn a {
                display: inline-block;
                width: auto;
                font-size: 11px !important;
                line-height: 15px !important;
                font-weight: 500 !important;
                letter-spacing: 1px !important;
                border-top-left-radius: 0 !important;
                border-top-right-radius: 0 !important;
                border-bottom-left-radius: 6px !important;
                border-bottom-right-radius: 6px !important;
                text-transform: uppercase !important;
                margin: 0 !important;
                padding: 1px 12px !important; }
              body.single-project-enhanced #projects .group .item:nth-child(2) .project-list .view-more-btn:hover {
                opacity: .75; }
    @media screen and (max-width: 900px) {
      body.single-project-enhanced #projects .group {
        display: block !important; }
        body.single-project-enhanced #projects .group .item:nth-child(1) {
          display: none; } }
  body.single-project-enhanced #resources ul.resource_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 40px;
    margin: 0;
    padding: 0; }
    body.single-project-enhanced #resources ul.resource_list li {
      list-style: none;
      margin: 0;
      padding: 0; }
      body.single-project-enhanced #resources ul.resource_list li a {
        text-decoration: none;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 15px; }
        body.single-project-enhanced #resources ul.resource_list li a .thumb {
          grid-column: 1 / 1;
          margin: 0;
          padding: 0; }
          body.single-project-enhanced #resources ul.resource_list li a .thumb img {
            width: 120px;
            min-width: 120px;
            max-width: 120px;
            height: auto; }
        body.single-project-enhanced #resources ul.resource_list li a .info {
          grid-column: 2 / 4;
          margin: 0;
          padding: 0; }
          body.single-project-enhanced #resources ul.resource_list li a .info h4 {
            font-size: 17px;
            line-height: 20px;
            margin: 0;
            padding: 0; }
  body.single-project-enhanced #resources .more_links {
    margin: 40px 0 0 !important;
    padding: 0; }
  body.single-project-enhanced #resources .more_links_list > .resource_list {
    margin: 30px 0 0;
    padding: 0; }
  @media screen and (max-width: 900px) {
    body.single-project-enhanced #resources ul.resource_list,
    body.single-project-enhanced #resources .more_links_list {
      display: block; }
      body.single-project-enhanced #resources ul.resource_list li,
      body.single-project-enhanced #resources .more_links_list li {
        margin: 0 0 25px 0; }
        body.single-project-enhanced #resources ul.resource_list li a,
        body.single-project-enhanced #resources .more_links_list li a {
          grid-template-columns: repeat(6, 1fr); }
          body.single-project-enhanced #resources ul.resource_list li a .thumb,
          body.single-project-enhanced #resources .more_links_list li a .thumb {
            grid-column: 1 / 1; }
          body.single-project-enhanced #resources ul.resource_list li a .info,
          body.single-project-enhanced #resources .more_links_list li a .info {
            grid-column: 2 / 7; } }
  body.single-project-enhanced #team {
    background-color: #EEF2F7; }
    body.single-project-enhanced #team ul.team-slider {
      list-style: none;
      margin: 30px 0 0 0;
      padding: 0 55px; }
      body.single-project-enhanced #team ul.team-slider .slick-track {
        display: flex; }
      body.single-project-enhanced #team ul.team-slider .slide {
        position: relative;
        height: auto;
        text-align: center;
        margin: 0 15px;
        padding: 0; }
        body.single-project-enhanced #team ul.team-slider .slide a {
          display: block;
          text-decoration: none; }
        body.single-project-enhanced #team ul.team-slider .slide img {
          margin: 0 auto; }
        body.single-project-enhanced #team ul.team-slider .slide strong {
          display: block;
          font-family: "Roboto Slab";
          font-size: 20px;
          line-height: 26px;
          font-weight: 400;
          text-align: center;
          margin: 15px 0 10px 0;
          padding: 0; }
        body.single-project-enhanced #team ul.team-slider .slide .bio {
          display: block;
          font-size: 16px;
          line-height: 22px;
          font-weight: 300;
          text-align: left;
          margin: 0 0 15px 0;
          padding-bottom: 35px; }
        body.single-project-enhanced #team ul.team-slider .slide a.btn {
          position: absolute;
          bottom: 0;
          left: 50%;
          transform: translate(-50%, 0);
          width: 100%;
          max-width: 150px;
          font-family: "Roboto" !important;
          font-size: 15px !important;
          line-height: 18px !important;
          font-weight: 500 !important;
          letter-spacing: .5px !important;
          color: #fff !important;
          background-color: #5a799c !important;
          border-radius: 6px !important;
          border: none !important;
          text-decoration: none !important;
          margin: 0 !important;
          padding: 8px 16px 8px 16px !important; }
          body.single-project-enhanced #team ul.team-slider .slide a.btn:hover {
            opacity: .75; }
      body.single-project-enhanced #team ul.team-slider .slick-prev,
      body.single-project-enhanced #team ul.team-slider .slick-next {
        width: 38px;
        height: 81px;
        top: 45%; }
        body.single-project-enhanced #team ul.team-slider .slick-prev:before,
        body.single-project-enhanced #team ul.team-slider .slick-next:before {
          display: inline-block;
          content: "";
          width: 38px;
          height: 81px;
          background-size: 38px 81px; }
      body.single-project-enhanced #team ul.team-slider .slick-prev {
        left: 0; }
        body.single-project-enhanced #team ul.team-slider .slick-prev:before {
          background-image: url("../images/2019-03-trauma-team-arrow-left.svg"); }
      body.single-project-enhanced #team ul.team-slider .slick-next {
        right: 20px; }
        body.single-project-enhanced #team ul.team-slider .slick-next:before {
          background-image: url("../images/2019-03-trauma-team-arrow-right.svg"); }

/* About Us / Enhanced Project / Project Overrides - use this for the hopefully relatively few projects that get additional overrides
-------------------------------------------------------------------- */
/* About Us / Year in Review
-------------------------------------------------------------------- */
body.year-in-review-2018 #main_content_wrap,
body.year-in-review-2019 #main_content_wrap {
  padding-top: 50px;
  padding-bottom: 0; }
  body.year-in-review-2018 #main_content_wrap #content p,
  body.year-in-review-2019 #main_content_wrap #content p {
    width: 100%; }

body.year-in-review-2018 .bust-out-resources,
body.year-in-review-2018 .bust-out-rd,
body.year-in-review-2019 .bust-out-resources,
body.year-in-review-2019 .bust-out-rd {
  padding-top: 15px; }
  body.year-in-review-2018 .bust-out-resources h2,
  body.year-in-review-2018 .bust-out-rd h2,
  body.year-in-review-2019 .bust-out-resources h2,
  body.year-in-review-2019 .bust-out-rd h2 {
    font-family: "Roboto Slab";
    font-size: 33px;
    line-height: 41px;
    margin-bottom: 30px; }
  body.year-in-review-2018 .bust-out-resources .lists:before, body.year-in-review-2018 .bust-out-resources .lists:after,
  body.year-in-review-2018 .bust-out-rd .lists:before,
  body.year-in-review-2018 .bust-out-rd .lists:after,
  body.year-in-review-2019 .bust-out-resources .lists:before,
  body.year-in-review-2019 .bust-out-resources .lists:after,
  body.year-in-review-2019 .bust-out-rd .lists:before,
  body.year-in-review-2019 .bust-out-rd .lists:after {
    content: "";
    display: table; }
  body.year-in-review-2018 .bust-out-resources .lists:after,
  body.year-in-review-2018 .bust-out-rd .lists:after,
  body.year-in-review-2019 .bust-out-resources .lists:after,
  body.year-in-review-2019 .bust-out-rd .lists:after {
    clear: both; }
  body.year-in-review-2018 .bust-out-resources ol,
  body.year-in-review-2018 .bust-out-rd ol,
  body.year-in-review-2019 .bust-out-resources ol,
  body.year-in-review-2019 .bust-out-rd ol {
    margin: 0;
    padding: 0; }
    body.year-in-review-2018 .bust-out-resources ol li,
    body.year-in-review-2018 .bust-out-rd ol li,
    body.year-in-review-2019 .bust-out-resources ol li,
    body.year-in-review-2019 .bust-out-rd ol li {
      list-style: none;
      background-size: 55px 55px !important;
      margin: 0;
      padding: 0 0 25px 75px; }
      body.year-in-review-2018 .bust-out-resources ol li:nth-child(1),
      body.year-in-review-2018 .bust-out-rd ol li:nth-child(1),
      body.year-in-review-2019 .bust-out-resources ol li:nth-child(1),
      body.year-in-review-2019 .bust-out-rd ol li:nth-child(1) {
        background: url("../images/2018-year-in-review-1.svg") no-repeat 0 0; }
      body.year-in-review-2018 .bust-out-resources ol li:nth-child(2),
      body.year-in-review-2018 .bust-out-rd ol li:nth-child(2),
      body.year-in-review-2019 .bust-out-resources ol li:nth-child(2),
      body.year-in-review-2019 .bust-out-rd ol li:nth-child(2) {
        background: url("../images/2018-year-in-review-2.svg") no-repeat 0 0; }
      body.year-in-review-2018 .bust-out-resources ol li:nth-child(3),
      body.year-in-review-2018 .bust-out-rd ol li:nth-child(3),
      body.year-in-review-2019 .bust-out-resources ol li:nth-child(3),
      body.year-in-review-2019 .bust-out-rd ol li:nth-child(3) {
        background: url("../images/2018-year-in-review-3.svg") no-repeat 0 0; }
      body.year-in-review-2018 .bust-out-resources ol li:nth-child(4),
      body.year-in-review-2018 .bust-out-rd ol li:nth-child(4),
      body.year-in-review-2019 .bust-out-resources ol li:nth-child(4),
      body.year-in-review-2019 .bust-out-rd ol li:nth-child(4) {
        background: url("../images/2018-year-in-review-4.svg") no-repeat 0 0; }
      body.year-in-review-2018 .bust-out-resources ol li:nth-child(5),
      body.year-in-review-2018 .bust-out-rd ol li:nth-child(5),
      body.year-in-review-2019 .bust-out-resources ol li:nth-child(5),
      body.year-in-review-2019 .bust-out-rd ol li:nth-child(5) {
        background: url("../images/2018-year-in-review-5.svg") no-repeat 0 0;
        padding-bottom: 40px;
        max-width: 350px !important; }
      body.year-in-review-2018 .bust-out-resources ol li a,
      body.year-in-review-2018 .bust-out-rd ol li a,
      body.year-in-review-2019 .bust-out-resources ol li a,
      body.year-in-review-2019 .bust-out-rd ol li a {
        font-size: 18px;
        line-height: 25px;
        font-weight: 500; }
    body.year-in-review-2018 .bust-out-resources ol.text,
    body.year-in-review-2018 .bust-out-rd ol.text,
    body.year-in-review-2019 .bust-out-resources ol.text,
    body.year-in-review-2019 .bust-out-rd ol.text {
      float: left;
      width: 45%; }
      body.year-in-review-2018 .bust-out-resources ol.text li,
      body.year-in-review-2018 .bust-out-rd ol.text li,
      body.year-in-review-2019 .bust-out-resources ol.text li,
      body.year-in-review-2019 .bust-out-rd ol.text li {
        max-width: 450px; }
    body.year-in-review-2018 .bust-out-resources ol.thumbs,
    body.year-in-review-2018 .bust-out-rd ol.thumbs,
    body.year-in-review-2019 .bust-out-resources ol.thumbs,
    body.year-in-review-2019 .bust-out-rd ol.thumbs {
      float: right;
      width: 50%; }
      body.year-in-review-2018 .bust-out-resources ol.thumbs:before, body.year-in-review-2018 .bust-out-resources ol.thumbs:after,
      body.year-in-review-2018 .bust-out-rd ol.thumbs:before,
      body.year-in-review-2018 .bust-out-rd ol.thumbs:after,
      body.year-in-review-2019 .bust-out-resources ol.thumbs:before,
      body.year-in-review-2019 .bust-out-resources ol.thumbs:after,
      body.year-in-review-2019 .bust-out-rd ol.thumbs:before,
      body.year-in-review-2019 .bust-out-rd ol.thumbs:after {
        content: "";
        display: table; }
      body.year-in-review-2018 .bust-out-resources ol.thumbs:after,
      body.year-in-review-2018 .bust-out-rd ol.thumbs:after,
      body.year-in-review-2019 .bust-out-resources ol.thumbs:after,
      body.year-in-review-2019 .bust-out-rd ol.thumbs:after {
        clear: both; }
      body.year-in-review-2018 .bust-out-resources ol.thumbs li,
      body.year-in-review-2018 .bust-out-rd ol.thumbs li,
      body.year-in-review-2019 .bust-out-resources ol.thumbs li,
      body.year-in-review-2019 .bust-out-rd ol.thumbs li {
        float: left;
        width: 31%;
        background: none;
        margin: 0 0 12px 10px;
        padding: 0; }
  @media screen and (max-width: 890px) {
    body.year-in-review-2018 .bust-out-resources ol.text,
    body.year-in-review-2018 .bust-out-resources ol.thumbs,
    body.year-in-review-2018 .bust-out-rd ol.text,
    body.year-in-review-2018 .bust-out-rd ol.thumbs,
    body.year-in-review-2019 .bust-out-resources ol.text,
    body.year-in-review-2019 .bust-out-resources ol.thumbs,
    body.year-in-review-2019 .bust-out-rd ol.text,
    body.year-in-review-2019 .bust-out-rd ol.thumbs {
      float: none;
      width: 100%;
      margin: 0 0 25px 0;
      padding: 0; } }

body.year-in-review-2018 .bust-out-resources,
body.year-in-review-2019 .bust-out-resources {
  background-color: #E3ECF9; }

body.year-in-review-2018 .bust-out-rd,
body.year-in-review-2019 .bust-out-rd {
  background-color: #fff; }
  body.year-in-review-2018 .bust-out-rd p.screenshot,
  body.year-in-review-2019 .bust-out-rd p.screenshot {
    float: left;
    width: 45% !important;
    margin: 0;
    padding: 0; }
    body.year-in-review-2018 .bust-out-rd p.screenshot img,
    body.year-in-review-2019 .bust-out-rd p.screenshot img {
      width: 100%;
      min-width: 350px;
      margin: 0;
      padding: 0; }
  body.year-in-review-2018 .bust-out-rd ol.text,
  body.year-in-review-2019 .bust-out-rd ol.text {
    float: right;
    width: 50%; }
  @media screen and (max-width: 1045px) {
    body.year-in-review-2018 .bust-out-rd p.screenshot,
    body.year-in-review-2018 .bust-out-rd ol.text,
    body.year-in-review-2019 .bust-out-rd p.screenshot,
    body.year-in-review-2019 .bust-out-rd ol.text {
      float: none;
      width: 100%;
      margin: 0 0 25px 0;
      padding: 0; } }

/* 2019 */
body.year-in-review-2019 {
  /* header */
  /* To 5 Resources */ }
  body.year-in-review-2019 .year-in-review-header {
    display: flex;
    margin: 0 0 60px 0;
    padding: 0; }
    body.year-in-review-2019 .year-in-review-header .item {
      flex: 1 1 auto; }
      body.year-in-review-2019 .year-in-review-header .item:first-child {
        min-width: 225px;
        margin-right: 25px; }
    body.year-in-review-2019 .year-in-review-header h1 {
      font-family: "Roboto Slab";
      font-size: 38px;
      line-height: 45px;
      font-weight: 300;
      color: #51AF46;
      margin: 0 0 15px 0;
      padding: 0; }
  body.year-in-review-2019 .bust-out-resources ol.thumbs {
    float: right;
    width: 50%; }
    body.year-in-review-2019 .bust-out-resources ol.thumbs:before, body.year-in-review-2019 .bust-out-resources ol.thumbs:after {
      content: "";
      display: table; }
    body.year-in-review-2019 .bust-out-resources ol.thumbs:after {
      clear: both; }
    body.year-in-review-2019 .bust-out-resources ol.thumbs li {
      float: left;
      width: 130px;
      height: auto;
      background: none;
      margin: 0 10px 15px 10px;
      padding: 0; }
      body.year-in-review-2019 .bust-out-resources ol.thumbs li:first-child img {
        max-height: 165px; }
  @media screen and (max-width: 900px) {
    body.year-in-review-2019 .year-in-review-header {
      display: block; }
      body.year-in-review-2019 .year-in-review-header .item:first-child {
        min-width: none;
        margin-bottom: 25px; }
    body.year-in-review-2019 .lists ol.text,
    body.year-in-review-2019 .lists ol.thumbs {
      float: none;
      width: 100%;
      margin: 0;
      padding: 0; } }

/* About Us / Year in Review / Timeline
-------------------------------------------------------------------- */
body.year-in-review-2018 .entry-content .bust-out-timeline,
body.year-in-review-2019 .entry-content .bust-out-timeline {
  background-color: #ABC1DA;
  margin-top: 50px; }
  body.year-in-review-2018 .entry-content .bust-out-timeline .bust-out-content,
  body.year-in-review-2019 .entry-content .bust-out-timeline .bust-out-content {
    padding: 40px 0 !important; }
    body.year-in-review-2018 .entry-content .bust-out-timeline .bust-out-content:before, body.year-in-review-2018 .entry-content .bust-out-timeline .bust-out-content:after,
    body.year-in-review-2019 .entry-content .bust-out-timeline .bust-out-content:before,
    body.year-in-review-2019 .entry-content .bust-out-timeline .bust-out-content:after {
      content: "";
      display: table; }
    body.year-in-review-2018 .entry-content .bust-out-timeline .bust-out-content:after,
    body.year-in-review-2019 .entry-content .bust-out-timeline .bust-out-content:after {
      clear: both; }

body.year-in-review-2018 .left,
body.year-in-review-2019 .left {
  float: left;
  width: 30%; }
  body.year-in-review-2018 .left h2,
  body.year-in-review-2019 .left h2 {
    max-width: 250px;
    font-family: "Roboto Slab";
    font-size: 33px;
    line-height: 42px;
    color: #fff;
    margin: 0;
    padding: 0; }

body.year-in-review-2018 .right,
body.year-in-review-2019 .right {
  float: right;
  width: 70%; }

body.year-in-review-2018 .timeline-container,
body.year-in-review-2019 .timeline-container {
  height: 450px;
  overflow: auto; }
  body.year-in-review-2018 .timeline-container::-webkit-scrollbar,
  body.year-in-review-2019 .timeline-container::-webkit-scrollbar {
    width: 15px; }
  body.year-in-review-2018 .timeline-container::-webkit-scrollbar-track,
  body.year-in-review-2019 .timeline-container::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); }
  body.year-in-review-2018 .timeline-container::-webkit-scrollbar-thumb,
  body.year-in-review-2019 .timeline-container::-webkit-scrollbar-thumb {
    background-color: #e4edf8;
    outline: 1px solid #e4edf8; }
  body.year-in-review-2018 .timeline-container .item,
  body.year-in-review-2019 .timeline-container .item {
    overflow-y: auto;
    padding: 0; }
  body.year-in-review-2018 .timeline-container #timeline,
  body.year-in-review-2019 .timeline-container #timeline {
    position: relative;
    display: table;
    height: 100%;
    margin: 0; }
    body.year-in-review-2018 .timeline-container #timeline:after,
    body.year-in-review-2019 .timeline-container #timeline:after {
      content: '';
      width: 2px;
      position: absolute;
      top: .5rem;
      bottom: 0rem;
      left: 91px;
      z-index: 1;
      background: #c8d1d8; }
    body.year-in-review-2018 .timeline-container #timeline h3,
    body.year-in-review-2019 .timeline-container #timeline h3 {
      font-family: "Roboto";
      font-size: 14px;
      font-weight: 600;
      color: #fff;
      text-transform: uppercase;
      margin: 0; }
    body.year-in-review-2018 .timeline-container #timeline section.year,
    body.year-in-review-2019 .timeline-container #timeline section.year {
      position: relative; }
      body.year-in-review-2018 .timeline-container #timeline section.year section,
      body.year-in-review-2019 .timeline-container #timeline section.year section {
        position: relative;
        padding-bottom: 10px;
        margin-bottom: 10px; }
        body.year-in-review-2018 .timeline-container #timeline section.year section ul,
        body.year-in-review-2019 .timeline-container #timeline section.year section ul {
          padding: 0 0 0 95px;
          margin: -1.35rem 0 1em; }
          body.year-in-review-2018 .timeline-container #timeline section.year section ul:last-child,
          body.year-in-review-2019 .timeline-container #timeline section.year section ul:last-child {
            margin-bottom: 0; }
          body.year-in-review-2018 .timeline-container #timeline section.year section ul:first-of-type:after,
          body.year-in-review-2019 .timeline-container #timeline section.year section ul:first-of-type:after {
            content: '';
            width: 10px;
            height: 10px;
            background: #d6cc4e;
            border: 2px solid #fff;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            -ms-border-radius: 50%;
            border-radius: 50%;
            position: absolute;
            left: 85px;
            top: 5px;
            z-index: 2; }
          body.year-in-review-2018 .timeline-container #timeline section.year section ul li,
          body.year-in-review-2019 .timeline-container #timeline section.year section ul li {
            list-style-type: none;
            line-height: 22px;
            padding-right: 40px;
            margin-left: 20px;
            margin-bottom: 15px; }
            body.year-in-review-2018 .timeline-container #timeline section.year section ul li a,
            body.year-in-review-2019 .timeline-container #timeline section.year section ul li a {
              font-size: 18px;
              line-height: 25px;
              font-weight: 500; }

@media screen and (max-width: 890px) {
  body.year-in-review-2018 .left,
  body.year-in-review-2018 .right,
  body.year-in-review-2019 .left,
  body.year-in-review-2019 .right {
    float: none;
    width: 100%;
    margin: 0 0 20px 0;
    padding: 0; }
  body.year-in-review-2018 .left h2,
  body.year-in-review-2019 .left h2 {
    max-width: none; }
  body.year-in-review-2018 .timeline-container #timeline section.year section ul li,
  body.year-in-review-2019 .timeline-container #timeline section.year section ul li {
    max-width: none; } }

body.year-in-review-2019 .entry-content .bust-out-timeline {
  background-color: transparent;
  margin-top: 0; }
  body.year-in-review-2019 .entry-content .bust-out-timeline .bust-out-content {
    padding-top: 0 !important; }
  body.year-in-review-2019 .entry-content .bust-out-timeline .right {
    width: 75%;
    border-top: 1px solid #c8d1d8;
    padding-top: 40px; }
  body.year-in-review-2019 .entry-content .bust-out-timeline h2 {
    font-family: "Roboto Slab";
    font-size: 33px;
    color: #51AF46;
    line-height: 41px;
    margin-bottom: 30px; }
  body.year-in-review-2019 .entry-content .bust-out-timeline .timeline-container #timeline h3 {
    color: #546B85; }
  body.year-in-review-2019 .entry-content .bust-out-timeline .timeline-container #timeline section.year section ul:first-of-type:after {
    background: #fff;
    border-color: #3F648F; }

@media screen and (max-width: 890px) {
  body.year-in-review-2019 .entry-content .bust-out-timeline .left,
  body.year-in-review-2019 .entry-content .bust-out-timeline .right {
    float: none;
    width: 100%; } }

/* About Us / Year in Review / Slider
-------------------------------------------------------------------- */
body.year-in-review-2019 .bust-out-slider {
  background-color: #abc1da; }
  body.year-in-review-2019 .bust-out-slider .bx-pager-item {
    margin-right: 3px !important; }
    body.year-in-review-2019 .bust-out-slider .bx-pager-item a {
      background-image: none !important;
      background-color: transparent !important;
      width: 16px !important;
      height: 16px !important;
      border: 1px solid #fff !important;
      border-radius: 50% !important; }
      body.year-in-review-2019 .bust-out-slider .bx-pager-item a.active {
        background-color: #fff !important; }

/* Recent News, Related Resources (Shared)
-------------------------------------------------------------------- */
#recent-news a:hover, #related-resources a:hover {
  opacity: .75 !important; }

#recent-news ul.newslist li .img, #related-resources ul.newslist li .img {
  width: 140px !important; }

#recent-news ul.newslist li .info, #related-resources ul.newslist li .info {
  width: 300px !important; }

@media screen and (max-width: 1040px) {
  #recent-news ul.newslist li, #recent-news ul.resource_list li, #related-resources ul.newslist li, #related-resources ul.resource_list li {
    float: none !important;
    width: 100% !important;
    min-height: 0 !important;
    border-bottom: 1px solid #3f648f;
    margin: 0 !important;
    padding: 12px 0 12px 0 !important; }
    #recent-news ul.newslist li:last-child, #recent-news ul.resource_list li:last-child, #related-resources ul.newslist li:last-child, #related-resources ul.resource_list li:last-child {
      border: none !important; }
    #recent-news ul.newslist li a, #recent-news ul.resource_list li a, #related-resources ul.newslist li a, #related-resources ul.resource_list li a {
      float: none !important; }
    #recent-news ul.newslist li .img, #recent-news ul.newslist li .thumb, #recent-news ul.resource_list li .img, #recent-news ul.resource_list li .thumb, #related-resources ul.newslist li .img, #related-resources ul.newslist li .thumb, #related-resources ul.resource_list li .img, #related-resources ul.resource_list li .thumb {
      display: none !important; }
    #recent-news ul.newslist li .info, #recent-news ul.resource_list li .info, #related-resources ul.newslist li .info, #related-resources ul.resource_list li .info {
      float: none !important;
      width: 100% !important; }
  #recent-news .view_more_btn, #recent-news .more_links, #related-resources .view_more_btn, #related-resources .more_links {
    margin-top: 20px !important; } }

/* Related Resources (base classes, unfortunately there are others) */
#related-resources h3 {
  margin-bottom: 10px !important; }

#related-resources ul li {
  float: left;
  height: 48.5%;
  list-style: none;
  margin: 0 0 15px 0;
  padding: 25px 0 0 0; }
  #related-resources ul li:nth-child(even) {
    float: right !important; }

@media screen and (max-width: 1040px) {
  #related-resources ul li {
    float: none;
    width: 100%;
    height: auto;
    margin: 0 0 15px 0 !important;
    padding: 0 0 15px 0 !important; }
    #related-resources ul li:nth-child(even) {
      float: none !important; } }

/* Areas of Work / Overview
-------------------------------------------------------------------- */
body.single-area_of_work {
  /* Featured Item */
  /* Recent News & Research Blog */ }
  body.single-area_of_work #spotlight {
    /* pagination */ }
    body.single-area_of_work #spotlight .bx-wrapper {
      max-width: none !important; }
    body.single-area_of_work #spotlight .spotlight_slider,
    body.single-area_of_work #spotlight .spotlight_single {
      margin: 0;
      padding: 0; }
      body.single-area_of_work #spotlight .spotlight_slider .slide,
      body.single-area_of_work #spotlight .spotlight_single .slide {
        width: 100% !important; }
        body.single-area_of_work #spotlight .spotlight_slider .slide .featured_img,
        body.single-area_of_work #spotlight .spotlight_single .slide .featured_img {
          width: 230px !important;
          margin: 0 20px 0 0 !important;
          padding: 0 !important; }
          body.single-area_of_work #spotlight .spotlight_slider .slide .featured_img img,
          body.single-area_of_work #spotlight .spotlight_single .slide .featured_img img {
            width: 100%;
            border-radius: 6px; }
        body.single-area_of_work #spotlight .spotlight_slider .slide .featured_content,
        body.single-area_of_work #spotlight .spotlight_single .slide .featured_content {
          float: left !important;
          width: 700px !important; }
          body.single-area_of_work #spotlight .spotlight_slider .slide .featured_content p,
          body.single-area_of_work #spotlight .spotlight_single .slide .featured_content p {
            color: #3F648F !important;
            margin: 0 0 12px 0;
            padding: 0; }
    body.single-area_of_work #spotlight .bx-controls {
      z-index: 998;
      position: relative;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      width: 100%;
      text-align: center;
      margin: 0 auto;
      padding: 0; }
    @media screen and (max-width: 1000px) {
      body.single-area_of_work #spotlight .spotlight_slider .slide .featured_content,
      body.single-area_of_work #spotlight .spotlight_single .slide .featured_content {
        width: 600px !important; } }
    @media screen and (max-width: 940px) {
      body.single-area_of_work #spotlight .spotlight_slider .slide .featured_img,
      body.single-area_of_work #spotlight .spotlight_single .slide .featured_img {
        float: none;
        margin: 0 0 20px 0 !important; }
      body.single-area_of_work #spotlight .spotlight_slider .slide .featured_content,
      body.single-area_of_work #spotlight .spotlight_single .slide .featured_content {
        float: none !important;
        width: 100% !important; } }
  body.single-area_of_work #content #sidebar_related_news .widget_news_post {
    margin: 0 0 25px 0 !important; }
    body.single-area_of_work #content #sidebar_related_news .widget_news_post .news_thumb {
      width: 140px;
      height: 140px;
      background: transparent; }
      body.single-area_of_work #content #sidebar_related_news .widget_news_post .news_thumb img {
        max-width: 140px;
        width: auto;
        height: auto; }
  body.single-area_of_work #content #sidebar_related_news span.viewmore {
    height: auto;
    border-radius: 5px; }
    body.single-area_of_work #content #sidebar_related_news span.viewmore a {
      display: inline-block;
      font-size: 15px;
      font-weight: 400;
      padding: 8px 16px 8px 16px; }
      body.single-area_of_work #content #sidebar_related_news span.viewmore a:hover {
        opacity: .75; }

/* Areas of Work / Services to Help You
-------------------------------------------------------------------- */
body.page-template-aow-services-to-help-you-page #content h2 {
  font-family: "Roboto Slab";
  font-size: 28px;
  line-height: 34px;
  font-weight: 300;
  color: #51AF46;
  border-bottom: 1px solid #ABC1DA;
  margin: 0 0 30px 0;
  padding: 0 0 6px 0; }

body.page-template-aow-services-to-help-you-page #content .aow-services {
  /* sidebar */
  /* service list */ }
  body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-sidebar {
    float: left;
    width: 22%;
    margin: 0;
    padding: 0; }
    body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-sidebar h4 {
      font-size: 17px;
      line-height: 22px; }
    body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-sidebar ul {
      margin: 0;
      padding: 0; }
      body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-sidebar ul li {
        list-style: none;
        margin: 0;
        padding: 0; }
        body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-sidebar ul li a {
          display: block;
          font-family: "Roboto" !important;
          font-size: 15px !important;
          line-height: 18px !important;
          font-weight: 500 !important;
          letter-spacing: .5px !important;
          color: #3F648F !important;
          background-color: #fff !important;
          border: 1px solid #ABC1DA !important;
          border-radius: 6px !important;
          text-decoration: none !important;
          margin: 0 0 15px 0 !important;
          padding: 8px 16px 8px 16px !important; }
  body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main {
    float: right;
    width: 75%;
    margin: 0;
    padding: 0;
    /* pagination */ }
    body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main .service_list_box {
      margin: 0 0 35px 0;
      padding: 0; }
      body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main .service_list_box h3.name {
        display: block;
        font-size: 17px;
        line-height: 23px;
        font-weight: 600;
        color: #1669c9;
        margin: 0 0 6px 0;
        padding: 0; }
        body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main .service_list_box h3.name a {
          text-decoration: none; }
      body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main .service_list_box p.description {
        width: auto !important;
        display: block;
        font-size: 16px;
        line-height: 24px;
        font-weight: 300;
        color: #546b85;
        margin: 0 0 12px 0;
        padding: 0; }
      body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main .service_list_box p.tags {
        width: 100% !important;
        display: block;
        margin: 0;
        padding: 0; }
        body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main .service_list_box p.tags span.tag {
          display: inline-block;
          background-color: #EEF2F7;
          border-radius: 4px;
          font-size: 11px;
          line-height: 16px;
          font-weight: 500;
          color: #3F648F;
          text-transform: uppercase;
          margin: 0 8px 0 0;
          padding: 2px 8px; }
    body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main .pagination {
      text-align: center;
      margin: 35px 0 10px 0;
      padding: 0; }
      body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main .pagination a {
        display: inline-block;
        color: #1669c9;
        text-decoration: none;
        font-size: 14px;
        font-weight: 400;
        margin: 0 6px;
        vertical-align: middle; }
        body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main .pagination a.prev, body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main .pagination a.next {
          text-indent: -9999px;
          display: inline-block;
          width: 12px;
          height: 15px; }
        body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main .pagination a.prev {
          background: url(../images/icon-arrow-left-purple.png) no-repeat 0 0; }
        body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main .pagination a.next {
          background: url(../images/icon-arrow-right-purple.png) no-repeat 0 0; }
  body.page-template-aow-services-to-help-you-page #content .aow-services span.current {
    display: inline-block;
    border: 1px solid #b4b1a6;
    background-color: #eef2f7;
    padding: 2px 6px;
    font-size: 14px;
    font-weight: 400;
    margin: 0 6px;
    vertical-align: middle; }

@media screen and (max-width: 850px) {
  body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-sidebar,
  body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main {
    float: none;
    width: 100%; }
  body.page-template-aow-services-to-help-you-page #content .aow-services .aow-services-main {
    margin-top: 30px; } }

/* Areas of Work / Featured Initiative / Shared Elements
  Charters & Choice
  COVID-19 Resources for Educators
  Online Professional Development (COVID Services)
  Four Domains for Rapid School Improvement
  Trauma-Informed Practice & Resiliency
-------------------------------------------------------------------- */
body.charters-choice,
body.covid-19-resources,
body.covid-19-services,
body.four-domains,
body.trauma {
  /* Recent Posts */ }
  body.charters-choice section.recent-posts,
  body.covid-19-resources section.recent-posts,
  body.covid-19-services section.recent-posts,
  body.four-domains section.recent-posts,
  body.trauma section.recent-posts {
    margin: 0;
    padding: 40px 0; }
    body.charters-choice section.recent-posts:before, body.charters-choice section.recent-posts:after,
    body.covid-19-resources section.recent-posts:before,
    body.covid-19-resources section.recent-posts:after,
    body.covid-19-services section.recent-posts:before,
    body.covid-19-services section.recent-posts:after,
    body.four-domains section.recent-posts:before,
    body.four-domains section.recent-posts:after,
    body.trauma section.recent-posts:before,
    body.trauma section.recent-posts:after {
      content: "";
      display: table; }
    body.charters-choice section.recent-posts:after,
    body.covid-19-resources section.recent-posts:after,
    body.covid-19-services section.recent-posts:after,
    body.four-domains section.recent-posts:after,
    body.trauma section.recent-posts:after {
      clear: both; }
    body.charters-choice section.recent-posts h2,
    body.covid-19-resources section.recent-posts h2,
    body.covid-19-services section.recent-posts h2,
    body.four-domains section.recent-posts h2,
    body.trauma section.recent-posts h2 {
      margin: 0 0 20px 0;
      padding: 0; }
    body.charters-choice section.recent-posts ul.newslist,
    body.covid-19-resources section.recent-posts ul.newslist,
    body.covid-19-services section.recent-posts ul.newslist,
    body.four-domains section.recent-posts ul.newslist,
    body.trauma section.recent-posts ul.newslist {
      max-width: 1000px;
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      grid-gap: 30px;
      margin: 0;
      padding: 0; }
      body.charters-choice section.recent-posts ul.newslist li,
      body.covid-19-resources section.recent-posts ul.newslist li,
      body.covid-19-services section.recent-posts ul.newslist li,
      body.four-domains section.recent-posts ul.newslist li,
      body.trauma section.recent-posts ul.newslist li {
        margin: 0;
        padding: 0; }
        body.charters-choice section.recent-posts ul.newslist li a,
        body.covid-19-resources section.recent-posts ul.newslist li a,
        body.covid-19-services section.recent-posts ul.newslist li a,
        body.four-domains section.recent-posts ul.newslist li a,
        body.trauma section.recent-posts ul.newslist li a {
          float: none;
          width: 100%; }
          body.charters-choice section.recent-posts ul.newslist li a .img,
          body.covid-19-resources section.recent-posts ul.newslist li a .img,
          body.covid-19-services section.recent-posts ul.newslist li a .img,
          body.four-domains section.recent-posts ul.newslist li a .img,
          body.trauma section.recent-posts ul.newslist li a .img {
            margin: 0 0 15px 0;
            padding: 0; }
            body.charters-choice section.recent-posts ul.newslist li a .img img,
            body.covid-19-resources section.recent-posts ul.newslist li a .img img,
            body.covid-19-services section.recent-posts ul.newslist li a .img img,
            body.four-domains section.recent-posts ul.newslist li a .img img,
            body.trauma section.recent-posts ul.newslist li a .img img {
              max-width: 220px;
              width: 100%;
              height: auto; }
          body.charters-choice section.recent-posts ul.newslist li a .info h3,
          body.covid-19-resources section.recent-posts ul.newslist li a .info h3,
          body.covid-19-services section.recent-posts ul.newslist li a .info h3,
          body.four-domains section.recent-posts ul.newslist li a .info h3,
          body.trauma section.recent-posts ul.newslist li a .info h3 {
            font-family: "Roboto" !important;
            color: #1669c9 !important;
            margin: 0 0 5px 0;
            padding: 0; }
          body.charters-choice section.recent-posts ul.newslist li a .info p,
          body.covid-19-resources section.recent-posts ul.newslist li a .info p,
          body.covid-19-services section.recent-posts ul.newslist li a .info p,
          body.four-domains section.recent-posts ul.newslist li a .info p,
          body.trauma section.recent-posts ul.newslist li a .info p {
            font-size: 12px !important;
            line-height: 18px !important;
            font-weight: 700 !important;
            text-transform: uppercase !important;
            color: #819AB6 !important;
            margin: 0 0 15px 0 !important;
            padding: 0 !important; }
          body.charters-choice section.recent-posts ul.newslist li a .info span.excerpt,
          body.charters-choice section.recent-posts ul.newslist li a .info span.excerpt p,
          body.covid-19-resources section.recent-posts ul.newslist li a .info span.excerpt,
          body.covid-19-resources section.recent-posts ul.newslist li a .info span.excerpt p,
          body.covid-19-services section.recent-posts ul.newslist li a .info span.excerpt,
          body.covid-19-services section.recent-posts ul.newslist li a .info span.excerpt p,
          body.four-domains section.recent-posts ul.newslist li a .info span.excerpt,
          body.four-domains section.recent-posts ul.newslist li a .info span.excerpt p,
          body.trauma section.recent-posts ul.newslist li a .info span.excerpt,
          body.trauma section.recent-posts ul.newslist li a .info span.excerpt p {
            display: block !important;
            font-size: 16px !important;
            line-height: 24px !important;
            font-weight: 300 !important;
            color: #546B85 !important;
            text-transform: none !important;
            color: #546B85 !important; }
    body.charters-choice section.recent-posts .view_more_btn,
    body.covid-19-resources section.recent-posts .view_more_btn,
    body.covid-19-services section.recent-posts .view_more_btn,
    body.four-domains section.recent-posts .view_more_btn,
    body.trauma section.recent-posts .view_more_btn {
      position: relative;
      text-align: center;
      margin: 40px 0 0 0;
      padding: 0; }
      body.charters-choice section.recent-posts .view_more_btn a,
      body.covid-19-resources section.recent-posts .view_more_btn a,
      body.covid-19-services section.recent-posts .view_more_btn a,
      body.four-domains section.recent-posts .view_more_btn a,
      body.trauma section.recent-posts .view_more_btn a {
        display: inline-block;
        width: auto;
        font-size: 11px !important;
        line-height: 15px !important;
        font-weight: 500 !important;
        color: #fff !important;
        letter-spacing: 1px !important;
        border-top-left-radius: 0 !important;
        border-top-right-radius: 0 !important;
        border-bottom-left-radius: 6px !important;
        border-bottom-right-radius: 6px !important;
        text-transform: uppercase !important;
        margin: 0 !important;
        padding: 1px 12px !important; }
        body.charters-choice section.recent-posts .view_more_btn a:before,
        body.covid-19-resources section.recent-posts .view_more_btn a:before,
        body.covid-19-services section.recent-posts .view_more_btn a:before,
        body.four-domains section.recent-posts .view_more_btn a:before,
        body.trauma section.recent-posts .view_more_btn a:before {
          content: "";
          background-color: #5a799c;
          width: 100%;
          height: 2px;
          position: absolute;
          top: 0;
          left: 0; }
      body.charters-choice section.recent-posts .view_more_btn:hover,
      body.covid-19-resources section.recent-posts .view_more_btn:hover,
      body.covid-19-services section.recent-posts .view_more_btn:hover,
      body.four-domains section.recent-posts .view_more_btn:hover,
      body.trauma section.recent-posts .view_more_btn:hover {
        opacity: .75; }
    @media screen and (max-width: 940px) {
      body.charters-choice section.recent-posts ul.newslist,
      body.covid-19-resources section.recent-posts ul.newslist,
      body.covid-19-services section.recent-posts ul.newslist,
      body.four-domains section.recent-posts ul.newslist,
      body.trauma section.recent-posts ul.newslist {
        display: block; }
        body.charters-choice section.recent-posts ul.newslist li,
        body.covid-19-resources section.recent-posts ul.newslist li,
        body.covid-19-services section.recent-posts ul.newslist li,
        body.four-domains section.recent-posts ul.newslist li,
        body.trauma section.recent-posts ul.newslist li {
          margin: 0 0 40px 0; }
          body.charters-choice section.recent-posts ul.newslist li .img img,
          body.covid-19-resources section.recent-posts ul.newslist li .img img,
          body.covid-19-services section.recent-posts ul.newslist li .img img,
          body.four-domains section.recent-posts ul.newslist li .img img,
          body.trauma section.recent-posts ul.newslist li .img img {
            max-width: 230px; } }

/* Areas of Work / Featured Initiative / Four Domains
-------------------------------------------------------------------- */
body.four-domains #main_content_wrap {
  padding-top: 20px;
  padding-bottom: 0; }

body.four-domains #content {
  /* Overview */
  /* bust out overrides */
  /* Promo */
  /* Services */
  /* Special Ed */
  /* English Learners */
  /* Family */ }
  body.four-domains #content p {
    width: 100% !important;
    margin: 0 0 12px 0;
    padding: 0; }
  body.four-domains #content h2 {
    font-family: "Roboto Slab";
    font-size: 28px;
    line-height: 32px;
    font-weight: 300;
    color: #51AF46;
    margin: 0 0 12px 0;
    padding: 0; }
    body.four-domains #content h2#overview {
      margin-top: 30px; }
  body.four-domains #content h3 {
    font-family: "Roboto Slab";
    font-size: 20px;
    line-height: 26px;
    font-weight: 500;
    color: #51AF46;
    margin: 0 0 12px 0;
    padding: 0; }
  body.four-domains #content .overview-container {
    border: 1px solid #D3DBE6;
    margin: 20px 0;
    margin-bottom: 40px;
    padding: 15px; }
    body.four-domains #content .overview-container .logo {
      float: left;
      width: 45%;
      margin: 0;
      padding: 0 15px 0 0; }
      body.four-domains #content .overview-container .logo p.quote {
        font-size: 20px;
        line-height: 26px;
        font-weight: 400;
        color: #6EA9ED;
        background: none;
        margin: 30px 0 30px 0;
        padding: 0; }
        body.four-domains #content .overview-container .logo p.quote::before {
          display: block;
          float: left;
          width: 112px;
          height: 80px;
          background: url("../images/2018-12-03-four-domains-quote.svg") center center/contain no-repeat;
          content: '';
          margin: 5px 20px 100px 0; }
      body.four-domains #content .overview-container .logo p.source {
        width: auto !important;
        max-width: 400px;
        font-size: 14px;
        line-height: 20px;
        font-weight: 600;
        color: #8E9FB5;
        margin: 0 0 0 0;
        padding: 0 0 0 150px; }
    body.four-domains #content .overview-container .resources {
      float: right;
      width: 55%;
      border-left: 2px solid #D3DBE6;
      margin: 0;
      padding: 0 0 0 20px; }
      body.four-domains #content .overview-container .resources ul {
        margin: 0;
        padding: 0; }
        body.four-domains #content .overview-container .resources ul li {
          border-top: 2px solid #D3DBE6;
          list-style: none;
          margin: 0 0 20px 0;
          padding: 25px 0 0 0; }
          body.four-domains #content .overview-container .resources ul li:first-child {
            border: none;
            padding-top: 10px; }
          body.four-domains #content .overview-container .resources ul li p.cover {
            float: left;
            width: auto !important;
            margin: 0 20px 0 0;
            padding: 0; }
          body.four-domains #content .overview-container .resources ul li h4 {
            font-size: 17px;
            line-height: 20px;
            font-weight: 600;
            margin: 0 0 10px 0;
            padding: 0; }
            body.four-domains #content .overview-container .resources ul li h4 a {
              text-decoration: none; }
          body.four-domains #content .overview-container .resources ul li p {
            line-height: 21px;
            padding-left: 120px; }
          body.four-domains #content .overview-container .resources ul li.nocover {
            border: none;
            padding: 0 0 0 125px; }
            body.four-domains #content .overview-container .resources ul li.nocover p {
              padding-left: 0; }
    @media screen and (max-width: 950px) {
      body.four-domains #content .overview-container .logo,
      body.four-domains #content .overview-container .resources {
        float: none;
        width: 100%;
        padding: 0; }
        body.four-domains #content .overview-container .logo p.quote::before,
        body.four-domains #content .overview-container .resources p.quote::before {
          height: 50px; }
      body.four-domains #content .overview-container .resources {
        border: none;
        margin-top: 30px; }
        body.four-domains #content .overview-container .resources ul li {
          min-height: 140px; }
          body.four-domains #content .overview-container .resources ul li.nocover {
            min-height: 0; } }
    @media screen and (max-width: 560px) {
      body.four-domains #content .overview-container .logo p.quote {
        margin: 0;
        padding: 0; }
        body.four-domains #content .overview-container .logo p.quote::before {
          display: none; }
      body.four-domains #content .overview-container .logo p.source {
        margin: 20px 0 0 20px;
        padding: 0; } }
  body.four-domains #content .bust-out.promo {
    background-color: #3F648F; }
    body.four-domains #content .bust-out.promo .bust-out-content {
      padding: 0 !important; }
  body.four-domains #content .bust-out.services {
    background-color: #E3ECF9; }
    body.four-domains #content .bust-out.services .bust-out-content {
      padding: 10px !important; }
  body.four-domains #content .bust-out.se {
    background-color: #ABC1DA; }
    body.four-domains #content .bust-out.se .bust-out-content {
      padding: 0 !important; }
  body.four-domains #content .bust-out.el {
    background-color: transparent; }
  body.four-domains #content .bust-out.family {
    background-color: #D3DBE6; }
    body.four-domains #content .bust-out.family .bust-out-content {
      padding: 0 !important; }
  body.four-domains #content #subscribe-social-bar {
    height: 100px;
    background-color: #3F648F;
    margin: 0;
    padding: 0; }
    body.four-domains #content #subscribe-social-bar .container {
      max-width: 1040px;
      margin: 0 auto;
      padding: 0; }
    body.four-domains #content #subscribe-social-bar .subscribe {
      float: left;
      width: 65%;
      height: 100px;
      margin: 0 0 0 80px;
      padding: 0; }
      body.four-domains #content #subscribe-social-bar .subscribe .icon {
        float: left;
        width: 65px;
        height: 65px;
        background: url("../images/icon-write.png") no-repeat 0 0;
        margin: 16px 20px 0 0;
        padding: 0; }
      body.four-domains #content #subscribe-social-bar .subscribe h2 {
        font-family: "Roboto" !important;
        font-size: 22px;
        line-height: 26px;
        font-weight: 500;
        margin: 0;
        padding: 16px 0 5px 0; }
        body.four-domains #content #subscribe-social-bar .subscribe h2 a {
          color: #6EA9ED; }
      body.four-domains #content #subscribe-social-bar .subscribe p {
        width: 60% !important;
        float: left;
        font-size: 15px;
        line-height: 18px;
        font-weight: 400;
        color: #fff;
        margin: 0;
        padding: 0; }
        body.four-domains #content #subscribe-social-bar .subscribe p.subscribe {
          width: auto !important;
          margin: 0;
          padding: 8px 0 0 0; }
          body.four-domains #content #subscribe-social-bar .subscribe p.subscribe a {
            font-family: "Roboto" !important;
            font-size: 15px !important;
            line-height: 18px !important;
            font-weight: 500 !important;
            color: #fff !important;
            background-color: transparent !important;
            border-radius: 6px !important;
            border: 2px solid #fff !important;
            text-decoration: none !important;
            margin: 0 !important;
            padding: 6px 10px !important; }
            body.four-domains #content #subscribe-social-bar .subscribe p.subscribe a:hover {
              opacity: .75; }
    body.four-domains #content #subscribe-social-bar .social {
      float: right;
      width: 23%;
      height: 100px;
      background-color: #5277A2;
      margin: 0;
      padding: 0; }
      body.four-domains #content #subscribe-social-bar .social h2 {
        font-family: "Roboto" !important;
        font-size: 22px;
        line-height: 26px;
        font-weight: 500;
        color: #fff;
        text-align: center;
        margin: 16px 0 8px 0;
        padding: 0; }
      body.four-domains #content #subscribe-social-bar .social ul {
        text-align: center;
        margin: 0 auto;
        padding: 0; }
        body.four-domains #content #subscribe-social-bar .social ul li {
          list-style: none;
          display: inline-block;
          text-align: center;
          margin: 0 3px 0 0;
          padding: 0; }
          body.four-domains #content #subscribe-social-bar .social ul li a {
            display: inline-block;
            width: 37px;
            height: 37px;
            text-indent: -9999px; }
            body.four-domains #content #subscribe-social-bar .social ul li a.twitter {
              background: url("../images/icon-social-twitter-37x37.svg") no-repeat 0 0; }
            body.four-domains #content #subscribe-social-bar .social ul li a.linkedin {
              background: url("../images/icon-social-linkedin-37x37.svg") no-repeat 0 0; }
            body.four-domains #content #subscribe-social-bar .social ul li a.facebook {
              background: url("../images/icon-social-facebook-37x37.svg") no-repeat 0 0; }
  @media screen and (max-width: 1040px) {
    body.four-domains #content #subscribe-social-bar {
      height: auto;
      margin: 0;
      padding: 0; }
      body.four-domains #content #subscribe-social-bar .subscribe {
        float: none;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0; }
        body.four-domains #content #subscribe-social-bar .subscribe .icon {
          display: none !important; }
        body.four-domains #content #subscribe-social-bar .subscribe p {
          float: none;
          width: 100% !important;
          float: none !important; }
          body.four-domains #content #subscribe-social-bar .subscribe p.subscribe {
            margin-top: 15px; }
      body.four-domains #content #subscribe-social-bar .social {
        float: none;
        width: 100%;
        height: auto;
        background-color: transparent;
        margin: 30px 0 0 0;
        padding: 0; }
        body.four-domains #content #subscribe-social-bar .social h2 {
          float: none;
          width: 100%;
          text-align: left;
          margin: 0;
          padding: 0; }
        body.four-domains #content #subscribe-social-bar .social ul {
          float: none;
          width: 100%;
          text-align: left;
          margin: 10px 0 15px 0;
          padding: 0; } }
  body.four-domains #content .services-container h2 {
    margin: 30px 0 10px 0; }
  body.four-domains #content .services-container ul {
    margin: 15px 0;
    padding: 0; }
    body.four-domains #content .services-container ul.list1 {
      float: left;
      width: 55%;
      border-right: 2px solid #D3DBE6;
      padding-right: 20px; }
    body.four-domains #content .services-container ul.list2 {
      float: right;
      width: 45%;
      padding-left: 20px; }
    body.four-domains #content .services-container ul li {
      list-style: none;
      margin: 0 0 25px 0;
      padding: 0; }
      body.four-domains #content .services-container ul li h4 {
        font-size: 17px;
        line-height: 20px;
        font-weight: 600;
        margin: 0 0 10px 0;
        padding: 0; }
        body.four-domains #content .services-container ul li h4 a {
          text-decoration: none; }
  @media screen and (max-width: 700px) {
    body.four-domains #content .services-container h2 {
      margin-bottom: 20px; }
    body.four-domains #content .services-container ul.list1, body.four-domains #content .services-container ul.list2 {
      float: none;
      width: 100%;
      border: none;
      margin: 0;
      padding: 0; } }
  body.four-domains #content .se-container .left {
    float: left;
    width: 77%;
    height: 600px;
    margin: 0;
    padding: 0 25px 0 0; }
    body.four-domains #content .se-container .left img {
      float: left;
      margin: 30px 25px 25px 0; }
    body.four-domains #content .se-container .left h2 {
      color: #fff;
      margin: 30px 0 0 0;
      padding: 0; }
    body.four-domains #content .se-container .left h3 {
      font-size: 17px;
      line-height: 23px;
      font-weight: 500;
      color: #fff;
      margin: 0 0 15px 0;
      padding: 0; }
    body.four-domains #content .se-container .left hr {
      border-color: #fff;
      margin-bottom: 30px; }
    body.four-domains #content .se-container .left p {
      font-size: 16px;
      line-height: 19px;
      font-weight: 400;
      color: #3F5460;
      margin: 0;
      padding: 0; }
      body.four-domains #content .se-container .left p.intro {
        font-size: 20px;
        line-height: 29px;
        font-weight: 400;
        color: #3F648F;
        margin: 0;
        padding: 0; }
      body.four-domains #content .se-container .left p.button {
        clear: both;
        text-align: center;
        margin: 0 auto; }
        body.four-domains #content .se-container .left p.button a {
          display: inline-block;
          font-family: "Roboto" !important;
          font-size: 15px !important;
          line-height: 18px !important;
          font-weight: 500 !important;
          letter-spacing: .5px !important;
          color: #fff !important;
          background-color: #5a799c !important;
          border-radius: 6px !important;
          border: none !important;
          text-decoration: none !important;
          margin: 8px 0 0 0 !important;
          padding: 8px 16px 8px 16px !important; }
          body.four-domains #content .se-container .left p.button a:hover {
            opacity: .75; }
    body.four-domains #content .se-container .left ul {
      float: left;
      width: 30%;
      margin: 20px 0 20px 20px;
      padding: 0; }
      body.four-domains #content .se-container .left ul li {
        font-size: 16px;
        line-height: 21px;
        font-weight: 400;
        color: #3F5460;
        margin: 0 0 12px 0;
        padding: 0 15px 0 0; }
  body.four-domains #content .se-container .right {
    float: right;
    width: 23%;
    height: 600px;
    background-color: #a5bcd5;
    margin: 0;
    padding: 25px; }
    body.four-domains #content .se-container .right p.subscribe {
      font-size: 17px;
      line-height: 24px;
      font-weight: 700;
      color: #fff;
      text-align: center;
      background: url("../images/2018-12-03-four-domains-subscribe.png") no-repeat top center;
      margin: 80px 0 0 0;
      padding: 115px 0 0 0; }
    body.four-domains #content .se-container .right p.button {
      clear: both;
      text-align: center;
      margin: 0 auto; }
      body.four-domains #content .se-container .right p.button a {
        display: inline-block;
        font-family: "Roboto" !important;
        font-size: 15px !important;
        line-height: 18px !important;
        font-weight: 500 !important;
        letter-spacing: .5px !important;
        color: #fff !important;
        background-color: transparent !important;
        border-radius: 6px !important;
        border: 2px solid #fff !important;
        text-decoration: none !important;
        margin: 20px 0 0 0 !important;
        padding: 8px 16px 8px 16px !important; }
        body.four-domains #content .se-container .right p.button a:hover {
          opacity: .75; }
    body.four-domains #content .se-container .right ul.social {
      text-align: center;
      margin: 40px auto;
      padding: 0; }
      body.four-domains #content .se-container .right ul.social li {
        list-style: none;
        display: inline-block;
        text-align: center;
        margin: 0;
        padding: 0; }
        body.four-domains #content .se-container .right ul.social li a {
          display: block;
          width: 37px;
          height: 37px; }
          body.four-domains #content .se-container .right ul.social li a.twitter {
            background: url("../images/icon-social-twitter-37x37.svg") no-repeat 0 0; }
          body.four-domains #content .se-container .right ul.social li a.linkedin {
            background: url("../images/icon-social-linkedin-37x37.svg") no-repeat 0 0; }
          body.four-domains #content .se-container .right ul.social li a.facebook {
            background: url("../images/icon-social-facebook-37x37.svg") no-repeat 0 0; }
  @media screen and (max-width: 1020px) {
    body.four-domains #content .se-container .left,
    body.four-domains #content .se-container .right {
      float: none;
      width: 100%;
      height: auto;
      background-color: transparent;
      margin: 0;
      padding: 0; }
      body.four-domains #content .se-container .left p.subscribe,
      body.four-domains #content .se-container .right p.subscribe {
        margin-top: 40px; } }
  @media screen and (max-width: 775px) {
    body.four-domains #content .se-container .left img,
    body.four-domains #content .se-container .right img {
      display: none; }
    body.four-domains #content .se-container .left hr,
    body.four-domains #content .se-container .right hr {
      margin-top: 20px; }
    body.four-domains #content .se-container .left ul,
    body.four-domains #content .se-container .right ul {
      float: none;
      width: 100%;
      margin: 0 0 0 20px;
      padding: 0; }
      body.four-domains #content .se-container .left ul.list1,
      body.four-domains #content .se-container .right ul.list1 {
        margin-top: 20px; }
      body.four-domains #content .se-container .left ul.list3,
      body.four-domains #content .se-container .right ul.list3 {
        margin-bottom: 20px; } }
  body.four-domains #content .el-container img {
    float: right;
    margin: 0 0 30px 30px; }
  body.four-domains #content .el-container hr {
    border-color: #B5C1CC;
    margin: 30px 0; }
  body.four-domains #content .el-container h2 {
    margin: 20px 0 2px 0;
    padding: 0; }
  body.four-domains #content .el-container h3 {
    font-size: 17px;
    line-height: 23px;
    font-weight: 500;
    color: #819AB6;
    margin: 0 0 20px 0;
    padding: 0; }
  body.four-domains #content .el-container p.intro {
    font-size: 20px;
    line-height: 29px;
    font-weight: 400;
    color: #3F648F;
    margin: 0;
    padding: 0; }
  body.four-domains #content .el-container ul {
    float: left;
    width: 30%;
    margin: 0 0 20px 20px;
    padding: 0; }
    body.four-domains #content .el-container ul li {
      font-size: 16px;
      line-height: 21px;
      font-weight: 400;
      color: #546B85;
      margin: 0 0 12px 0;
      padding: 0 15px 0 0; }
    body.four-domains #content .el-container ul.list1 {
      list-style: none;
      margin-left: 0; }
  body.four-domains #content .el-container p.button {
    clear: both;
    text-align: center;
    margin: 0 auto; }
    body.four-domains #content .el-container p.button a {
      display: inline-block;
      font-family: "Roboto" !important;
      font-size: 15px !important;
      line-height: 18px !important;
      font-weight: 500 !important;
      letter-spacing: .5px !important;
      color: #fff !important;
      background-color: #5a799c !important;
      border-radius: 6px !important;
      border: none !important;
      text-decoration: none !important;
      margin: 8px 0 0 0 !important;
      padding: 8px 16px 8px 16px !important; }
      body.four-domains #content .el-container p.button a:hover {
        opacity: .75; }
  body.four-domains #content .el-container #subscribe-social-bar {
    width: 800px;
    background-color: transparent;
    text-align: center;
    margin: 0 auto;
    margin-bottom: 20px;
    padding: 0; }
    body.four-domains #content .el-container #subscribe-social-bar .subscribe {
      width: 500px; }
      body.four-domains #content .el-container #subscribe-social-bar .subscribe .icon {
        width: 74px;
        height: 75px;
        background: url("../images/2018-12-03-four-domains-subscribe2.png") no-repeat 0 0;
        margin: 0 20px 0 0;
        padding: 0; }
      body.four-domains #content .el-container #subscribe-social-bar .subscribe p {
        width: 75% !important;
        font-weight: 500;
        color: #819AB6;
        text-align: left;
        margin: 0 0 25px 0;
        padding: 15px 0 0 0; }
        body.four-domains #content .el-container #subscribe-social-bar .subscribe p.subscribe {
          float: none;
          margin: 0 0 0 95px;
          padding: 0; }
          body.four-domains #content .el-container #subscribe-social-bar .subscribe p.subscribe a {
            color: #ABC1DA !important;
            border-color: #D3DBE6 !important; }
    body.four-domains #content .el-container #subscribe-social-bar .social {
      float: left;
      width: 175px;
      height: 120px;
      background-color: transparent;
      border-left: 2px solid #D3DBE6;
      margin-left: 20px; }
      body.four-domains #content .el-container #subscribe-social-bar .social ul {
        float: none;
        width: 100%;
        margin: 40px 0 0 0;
        padding: 0; }
        body.four-domains #content .el-container #subscribe-social-bar .social ul.twitter {
          background: url("../images/icon-social-twitter-37x37.svg") no-repeat 0 0; }
        body.four-domains #content .el-container #subscribe-social-bar .social ul.linkedin {
          background: url("../images/icon-social-linkedin-37x37.svg") no-repeat 0 0; }
        body.four-domains #content .el-container #subscribe-social-bar .social ul.facebook {
          background: url("../images/icon-social-facebook-37x37.svg") no-repeat 0 0; }
  @media screen and (max-width: 1050px) {
    body.four-domains #content .el-container #subscribe-social-bar {
      width: auto;
      text-align: left;
      margin-bottom: 30px; }
      body.four-domains #content .el-container #subscribe-social-bar .subscribe,
      body.four-domains #content .el-container #subscribe-social-bar .social {
        float: none;
        width: 100%;
        height: auto;
        border: none;
        margin: 0;
        padding: 0; }
        body.four-domains #content .el-container #subscribe-social-bar .subscribe .icon,
        body.four-domains #content .el-container #subscribe-social-bar .social .icon {
          display: none !important; }
        body.four-domains #content .el-container #subscribe-social-bar .subscribe p,
        body.four-domains #content .el-container #subscribe-social-bar .social p {
          width: 100% !important; }
          body.four-domains #content .el-container #subscribe-social-bar .subscribe p.subscribe,
          body.four-domains #content .el-container #subscribe-social-bar .social p.subscribe {
            margin: 0; }
        body.four-domains #content .el-container #subscribe-social-bar .subscribe ul,
        body.four-domains #content .el-container #subscribe-social-bar .social ul {
          width: auto;
          text-align: left;
          margin: 20px 0;
          padding: 0; }
          body.four-domains #content .el-container #subscribe-social-bar .subscribe ul li,
          body.four-domains #content .el-container #subscribe-social-bar .social ul li {
            margin: 0;
            padding: 0; } }
  @media screen and (max-width: 775px) {
    body.four-domains #content .el-container img {
      display: none; }
    body.four-domains #content .el-container ul {
      float: none;
      width: 100%;
      margin: 0 0 0 20px;
      padding: 0; }
      body.four-domains #content .el-container ul.list1 {
        margin-top: 20px; }
      body.four-domains #content .el-container ul.list3 {
        margin-bottom: 20px; } }
  body.four-domains #content .family-container .left {
    float: left;
    width: 77%;
    height: 670px;
    margin: 0;
    padding: 0 25px 0 0; }
    body.four-domains #content .family-container .left img {
      float: left;
      margin: 30px 25px 25px 0; }
    body.four-domains #content .family-container .left h2 {
      margin: 40px 0 0 0;
      padding: 0; }
    body.four-domains #content .family-container .left h3 {
      font-size: 17px;
      line-height: 23px;
      font-weight: 500;
      color: #819AB6;
      margin: 0 0 20px 0;
      padding: 0; }
    body.four-domains #content .family-container .left p.intro {
      font-size: 20px;
      line-height: 29px;
      font-weight: 400;
      color: #3F648F;
      margin: 0;
      padding: 0; }
    body.four-domains #content .family-container .left p.button {
      clear: both;
      text-align: center;
      margin: 0 auto; }
      body.four-domains #content .family-container .left p.button a {
        display: inline-block;
        font-family: "Roboto" !important;
        font-size: 15px !important;
        line-height: 18px !important;
        font-weight: 500 !important;
        letter-spacing: .5px !important;
        color: #fff !important;
        background-color: #5a799c !important;
        border-radius: 6px !important;
        border: none !important;
        text-decoration: none !important;
        margin: 8px 0 0 0 !important;
        padding: 8px 16px 8px 16px !important; }
        body.four-domains #content .family-container .left p.button a:hover {
          opacity: .75; }
    body.four-domains #content .family-container .left hr {
      border-color: #8E9FB5; }
    body.four-domains #content .family-container .left ul {
      float: left;
      width: 30%;
      margin: 20px 0 20px 20px;
      padding: 0; }
      body.four-domains #content .family-container .left ul li {
        font-size: 16px;
        line-height: 21px;
        font-weight: 400;
        color: #546B85;
        margin: 0 0 12px 0;
        padding: 0 15px 0 0; }
      body.four-domains #content .family-container .left ul.list1 {
        list-style: none;
        margin-left: 0; }
  body.four-domains #content .family-container .right {
    float: right;
    width: 23%;
    height: 670px;
    background-color: #c9d2de;
    margin: 0;
    padding: 25px; }
    body.four-domains #content .family-container .right p.subscribe {
      font-size: 17px;
      line-height: 24px;
      font-weight: 700;
      color: #fff;
      text-align: center;
      background: url("../images/2018-12-03-four-domains-subscribe.png") no-repeat top center;
      margin: 80px 0 0 0;
      padding: 115px 0 0 0; }
    body.four-domains #content .family-container .right p.button {
      clear: both;
      text-align: center;
      margin: 0 auto; }
      body.four-domains #content .family-container .right p.button a {
        display: inline-block;
        font-family: "Roboto" !important;
        font-size: 15px !important;
        line-height: 18px !important;
        font-weight: 500 !important;
        letter-spacing: .5px !important;
        color: #fff !important;
        background-color: transparent !important;
        border-radius: 6px !important;
        border: 2px solid #fff !important;
        text-decoration: none !important;
        margin: 20px 0 0 0 !important;
        padding: 8px 16px 8px 16px !important; }
        body.four-domains #content .family-container .right p.button a:hover {
          opacity: .75; }
    body.four-domains #content .family-container .right ul.social {
      text-align: center;
      margin: 40px auto;
      padding: 0; }
      body.four-domains #content .family-container .right ul.social li {
        list-style: none;
        display: inline-block;
        text-align: center;
        margin: 0;
        padding: 0; }
        body.four-domains #content .family-container .right ul.social li a {
          display: block;
          width: 37px;
          height: 37px; }
          body.four-domains #content .family-container .right ul.social li a.twitter {
            background: url("../images/icon-social-twitter-37x37.svg") no-repeat 0 0; }
          body.four-domains #content .family-container .right ul.social li a.linkedin {
            background: url("../images/icon-social-linkedin-37x37.svg") no-repeat 0 0; }
          body.four-domains #content .family-container .right ul.social li a.facebook {
            background: url("../images/icon-social-facebook-37x37.svg") no-repeat 0 0; }
  @media screen and (max-width: 1020px) {
    body.four-domains #content .family-container .left,
    body.four-domains #content .family-container .right {
      float: none;
      width: 100%;
      height: auto;
      background-color: transparent;
      margin: 0;
      padding: 0; }
      body.four-domains #content .family-container .left p.subscribe,
      body.four-domains #content .family-container .right p.subscribe {
        margin-top: 40px; } }
  @media screen and (max-width: 775px) {
    body.four-domains #content .family-container .left img,
    body.four-domains #content .family-container .right img {
      display: none; }
    body.four-domains #content .family-container .left hr,
    body.four-domains #content .family-container .right hr {
      margin-top: 20px; }
    body.four-domains #content .family-container .left ul,
    body.four-domains #content .family-container .right ul {
      float: none;
      width: 100%;
      margin: 0 0 0 20px;
      padding: 0; }
      body.four-domains #content .family-container .left ul.list1,
      body.four-domains #content .family-container .right ul.list1 {
        margin-top: 20px; }
      body.four-domains #content .family-container .left ul.list3,
      body.four-domains #content .family-container .right ul.list3 {
        margin-bottom: 20px; } }

/* Areas of Work / Featured Initiatives / Charters & Choice
-------------------------------------------------------------------- */
body.charters-choice #main_content_wrap {
  padding-top: 20px;
  padding-bottom: 0; }

body.charters-choice #content {
  /* Overview */
  /* News & Events */
  /* Supporting Resources */
  /* Promo */
  /* Services */
  /* Expertise */ }
  body.charters-choice #content p {
    width: 100% !important;
    margin: 0 0 12px 0;
    padding: 0; }
  body.charters-choice #content h2 {
    font-family: "Roboto Slab";
    font-size: 28px;
    line-height: 32px;
    font-weight: 300;
    color: #51AF46;
    margin: 0 0 12px 0;
    padding: 0; }
  body.charters-choice #content h3 {
    font-family: "Roboto Slab";
    font-size: 20px;
    line-height: 26px;
    font-weight: 500;
    color: #51AF46;
    margin: 0 0 12px 0;
    padding: 0; }
  body.charters-choice #content .overview {
    margin: 0 0 40px 0;
    padding: 0; }
    body.charters-choice #content .overview h2 {
      margin-top: 30px; }
    body.charters-choice #content .overview p {
      margin: 0 0 15px 0;
      padding: 0; }
    body.charters-choice #content .overview p, body.charters-choice #content .overview li {
      font-size: 20px;
      line-height: 29px; }
    body.charters-choice #content .overview a {
      font-weight: 500;
      text-decoration: none; }
    body.charters-choice #content .overview ul {
      margin: 25px 0 50px 60px;
      padding: 0; }
      body.charters-choice #content .overview ul li {
        margin: 0 0 20px 0;
        padding: 0; }
    body.charters-choice #content .overview .group {
      display: grid;
      grid-template-columns: 1fr 1fr;
      grid-gap: 20px;
      margin: 0;
      padding: 0; }
      body.charters-choice #content .overview .group .item {
        border: 1px solid #D3DBE6;
        margin: 0;
        padding: 20px; }
        body.charters-choice #content .overview .group .item h3 {
          font-family: "Roboto";
          font-size: 18px; }
        body.charters-choice #content .overview .group .item p {
          font-size: 18px;
          line-height: 22px; }
        body.charters-choice #content .overview .group .item hr {
          border: 1px solid #D3DBE6;
          height: 2px;
          margin: 50px 0 40px 0; }
      body.charters-choice #content .overview .group.clipboard {
        grid-template-columns: 1fr 3fr; }
        body.charters-choice #content .overview .group.clipboard .item {
          border: none;
          padding: 0; }
          body.charters-choice #content .overview .group.clipboard .item img {
            display: block;
            text-align: center;
            margin: 0 auto; }
          body.charters-choice #content .overview .group.clipboard .item p {
            font-size: 18px;
            line-height: 22px;
            font-weight: 500;
            color: #6EA9ED;
            margin: 0;
            padding: 0; }
      body.charters-choice #content .overview .group.ncsrc {
        grid-template-columns: 1fr;
        grid-gap: 0; }
        body.charters-choice #content .overview .group.ncsrc .item {
          border: none;
          padding: 0; }
          body.charters-choice #content .overview .group.ncsrc .item img {
            display: block;
            text-align: center;
            margin: 0 auto;
            margin-bottom: 30px; }
          body.charters-choice #content .overview .group.ncsrc .item p {
            font-size: 18px;
            line-height: 22px;
            font-weight: 500;
            color: #6EA9ED;
            margin: 0;
            padding: 0; }
      @media screen and (max-width: 900px) {
        body.charters-choice #content .overview .group {
          grid-template-columns: 1fr; } }
  body.charters-choice #content .bust-out-news-events {
    background-color: #E3ECF9; }
    body.charters-choice #content .bust-out-news-events section.recent-posts {
      padding: 20px 0; }
  body.charters-choice #content .bust-out-resources .bust-out-content {
    padding-top: 15px !important;
    padding-bottom: 40px !important; }
    body.charters-choice #content .bust-out-resources .bust-out-content:before, body.charters-choice #content .bust-out-resources .bust-out-content:after {
      content: "";
      display: table; }
    body.charters-choice #content .bust-out-resources .bust-out-content:after {
      clear: both; }
    body.charters-choice #content .bust-out-resources .bust-out-content h2 {
      margin-top: 30px; }
    body.charters-choice #content .bust-out-resources .bust-out-content .resource-list, body.charters-choice #content .bust-out-resources .bust-out-content .more_links_list {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      grid-gap: 20px;
      grid-row-gap: 40px;
      margin: 40px 0 30px 0;
      padding: 0; }
      body.charters-choice #content .bust-out-resources .bust-out-content .resource-list li, body.charters-choice #content .bust-out-resources .bust-out-content .more_links_list li {
        list-style: none;
        margin: 0 0 20px 0;
        padding: 0; }
        body.charters-choice #content .bust-out-resources .bust-out-content .resource-list li a, body.charters-choice #content .bust-out-resources .bust-out-content .more_links_list li a {
          text-decoration: none;
          display: grid;
          grid-template-columns: repeat(3, 1fr);
          grid-gap: 20px; }
          body.charters-choice #content .bust-out-resources .bust-out-content .resource-list li a .thumb, body.charters-choice #content .bust-out-resources .bust-out-content .more_links_list li a .thumb {
            grid-column: 1 / 1; }
            body.charters-choice #content .bust-out-resources .bust-out-content .resource-list li a .thumb img, body.charters-choice #content .bust-out-resources .bust-out-content .more_links_list li a .thumb img {
              max-width: 120px; }
          body.charters-choice #content .bust-out-resources .bust-out-content .resource-list li a .info, body.charters-choice #content .bust-out-resources .bust-out-content .more_links_list li a .info {
            grid-column: 2 / 4; }
            body.charters-choice #content .bust-out-resources .bust-out-content .resource-list li a .info h4, body.charters-choice #content .bust-out-resources .bust-out-content .more_links_list li a .info h4 {
              font-size: 17px;
              line-height: 20px;
              font-weight: 700;
              margin: 0;
              padding: 0; }
    body.charters-choice #content .bust-out-resources .bust-out-content .more_links_list.hidden {
      display: none; }
    @media screen and (max-width: 940px) {
      body.charters-choice #content .bust-out-resources .bust-out-content .resource-list, body.charters-choice #content .bust-out-resources .bust-out-content .more_links_list {
        grid-template-columns: 1fr; }
        body.charters-choice #content .bust-out-resources .bust-out-content .resource-list li a, body.charters-choice #content .bust-out-resources .bust-out-content .more_links_list li a {
          grid-template-columns: repeat(6, 1fr); }
          body.charters-choice #content .bust-out-resources .bust-out-content .resource-list li a .info, body.charters-choice #content .bust-out-resources .bust-out-content .more_links_list li a .info {
            grid-column: 2 / 7; } }
  body.charters-choice #content .bust-out-promo {
    background-color: #ABC1DA; }
    body.charters-choice #content .bust-out-promo .bust-out-content {
      background-color: transparent;
      padding: 0 !important; }
  body.charters-choice #content #subscribe-social-bar {
    height: 100px;
    margin: 0;
    padding: 0; }
    body.charters-choice #content #subscribe-social-bar .container {
      max-width: 1040px;
      margin: 0 auto;
      padding: 0; }
    body.charters-choice #content #subscribe-social-bar .subscribe {
      float: left;
      width: 65%;
      height: 100px;
      margin: 0 0 0 30px;
      padding: 0; }
      body.charters-choice #content #subscribe-social-bar .subscribe .icon {
        float: left;
        width: 74px;
        height: 74px;
        background: url("../images/2019-01-11-charters-subscribe.png") no-repeat 0 0;
        margin: 16px 20px 0 0;
        padding: 0; }
      body.charters-choice #content #subscribe-social-bar .subscribe h2 {
        font-family: "Roboto" !important;
        font-size: 22px;
        line-height: 26px;
        font-weight: 500;
        margin: 0;
        padding: 16px 0 5px 0; }
        body.charters-choice #content #subscribe-social-bar .subscribe h2 a {
          color: #fff; }
      body.charters-choice #content #subscribe-social-bar .subscribe p {
        width: 60% !important;
        float: left;
        font-size: 15px;
        line-height: 18px;
        font-weight: 400;
        color: #fff;
        margin: 0;
        padding: 0; }
        body.charters-choice #content #subscribe-social-bar .subscribe p.subscribe {
          width: auto !important;
          margin: 0;
          padding: 8px 0 0 0; }
          body.charters-choice #content #subscribe-social-bar .subscribe p.subscribe a {
            font-family: "Roboto" !important;
            font-size: 15px !important;
            line-height: 18px !important;
            font-weight: 500 !important;
            color: #fff !important;
            background-color: transparent !important;
            border-radius: 6px !important;
            border: 2px solid #fff !important;
            text-decoration: none !important;
            margin: 0 !important;
            padding: 6px 10px !important; }
            body.charters-choice #content #subscribe-social-bar .subscribe p.subscribe a:hover {
              opacity: .75; }
    body.charters-choice #content #subscribe-social-bar .social {
      float: right;
      width: 30%;
      height: 100px;
      background-color: #bbcde1;
      margin: 0;
      padding: 0; }
      body.charters-choice #content #subscribe-social-bar .social h2 {
        font-family: "Roboto" !important;
        font-size: 22px;
        line-height: 26px;
        font-weight: 500;
        color: #fff;
        text-align: center;
        margin: 16px 0 12px 0;
        padding: 0; }
      body.charters-choice #content #subscribe-social-bar .social ul {
        text-align: center;
        margin: 0 auto;
        padding: 0; }
        body.charters-choice #content #subscribe-social-bar .social ul li {
          list-style: none;
          display: inline-block;
          text-align: center;
          margin: 0 3px 0 0;
          padding: 0; }
          body.charters-choice #content #subscribe-social-bar .social ul li a {
            display: inline-block;
            width: 30px;
            height: 30px;
            text-indent: -9999px; }
            body.charters-choice #content #subscribe-social-bar .social ul li a.twitter {
              background: url("../images/icon-social-twitter-37x37.svg") no-repeat 0 0;
              background-size: 30px 30px; }
            body.charters-choice #content #subscribe-social-bar .social ul li a.linkedin {
              background: url("../images/icon-social-linkedin-37x37.svg") no-repeat 0 0;
              background-size: 30px 30px; }
            body.charters-choice #content #subscribe-social-bar .social ul li a.facebook {
              background: url("../images/icon-social-facebook-37x37.svg") no-repeat 0 0;
              background-size: 30px 30px; }
  @media screen and (max-width: 1040px) {
    body.charters-choice #content #subscribe-social-bar {
      height: auto;
      margin: 0;
      padding: 0; }
      body.charters-choice #content #subscribe-social-bar .subscribe {
        float: none;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0; }
        body.charters-choice #content #subscribe-social-bar .subscribe .icon {
          display: none !important; }
        body.charters-choice #content #subscribe-social-bar .subscribe p {
          float: none;
          width: 100% !important;
          float: none !important; }
          body.charters-choice #content #subscribe-social-bar .subscribe p.subscribe {
            margin-top: 15px; }
      body.charters-choice #content #subscribe-social-bar .social {
        float: none;
        width: 100%;
        height: auto;
        background-color: transparent;
        margin: 30px 0 0 0;
        padding: 0; }
        body.charters-choice #content #subscribe-social-bar .social h2 {
          float: none;
          width: 100%;
          text-align: left;
          margin: 0;
          padding: 0; }
        body.charters-choice #content #subscribe-social-bar .social ul {
          float: none;
          width: 100%;
          text-align: left;
          margin: 10px 0 15px 0;
          padding: 0; } }
  body.charters-choice #content .bust-out-services {
    background-color: #E3ECF9; }
    body.charters-choice #content .bust-out-services .bust-out-content {
      padding: 40px 0 !important; }
    body.charters-choice #content .bust-out-services p.intro {
      font-size: 20px;
      line-height: 29px; }
    body.charters-choice #content .bust-out-services .columns {
      columns: 2;
      margin: 30px 0 0 0;
      padding: 0; }
    body.charters-choice #content .bust-out-services p.btn-wrap {
      text-align: center;
      margin: 0 auto; }
    body.charters-choice #content .bust-out-services a.btn {
      display: inline-block;
      font-family: "Roboto" !important;
      font-size: 15px !important;
      line-height: 18px !important;
      font-weight: 500 !important;
      letter-spacing: .5px !important;
      color: #fff !important;
      background-color: #5a799c !important;
      border-radius: 6px !important;
      border: none !important;
      text-decoration: none !important;
      margin: 8px 0 0 0 !important;
      padding: 8px 16px 8px 16px !important; }
      body.charters-choice #content .bust-out-services a.btn:hover {
        opacity: .75; }
    @media screen and (max-width: 900px) {
      body.charters-choice #content .bust-out-services .columns {
        columns: 1; } }
    body.charters-choice #content .bust-out-services .group {
      display: grid;
      grid-template-columns: 2fr 1fr;
      grid-column-gap: 40px;
      border-top: 1px solid #fff;
      margin: 40px 0 0 0;
      padding: 40px 0 0 0; }
      body.charters-choice #content .bust-out-services .group .item {
        margin: 0;
        padding: 0; }
        body.charters-choice #content .bust-out-services .group .item:nth-child(1) h3 {
          font-family: "Roboto";
          font-size: 18px;
          margin-top: 30px; }
          body.charters-choice #content .bust-out-services .group .item:nth-child(1) h3:first-child {
            margin-top: 0; }
        body.charters-choice #content .bust-out-services .group .item:nth-child(1) p {
          font-size: 18px;
          line-height: 22px; }
        body.charters-choice #content .bust-out-services .group .item:nth-child(1) ul {
          margin: 15px 0 15px 40px;
          padding: 0; }
          body.charters-choice #content .bust-out-services .group .item:nth-child(1) ul li {
            margin: 0 0 7px 0;
            padding: 0; }
        body.charters-choice #content .bust-out-services .group .item:nth-child(2) .inner {
          background-color: #fff;
          padding: 20px; }
        body.charters-choice #content .bust-out-services .group .item:nth-child(2) h3 {
          text-align: center; }
        body.charters-choice #content .bust-out-services .group .item:nth-child(2) img {
          display: block;
          text-align: center;
          margin: 0 auto;
          padding: 0; }
        body.charters-choice #content .bust-out-services .group .item:nth-child(2) p {
          font-size: 16px;
          line-height: 22px;
          font-weight: 500;
          color: #6EA9ED;
          margin: 20px 0 20px 0;
          padding: 0; }
      @media screen and (max-width: 900px) {
        body.charters-choice #content .bust-out-services .group {
          grid-template-columns: 1fr; }
          body.charters-choice #content .bust-out-services .group .inner {
            margin-top: 20px; } }
  body.charters-choice #content .bust-out-expertise {
    background-color: #ABC1DA; }
    body.charters-choice #content .bust-out-expertise .bust-out-content {
      padding-top: 15px !important; }
      body.charters-choice #content .bust-out-expertise .bust-out-content h2 {
        margin-top: 30px; }
  body.charters-choice #content .expertise-container .subscribe {
    float: right;
    width: 300px;
    height: 300px;
    background-color: #c4d3e5;
    border-radius: 165px;
    text-align: center;
    margin: -40px 0 0 40px;
    padding: 20px; }
    body.charters-choice #content .expertise-container .subscribe .icon {
      width: 66px;
      height: 66px;
      background: url("../images/2019-01-11-charters-subscribe.png") no-repeat 0 0;
      background-size: 66px 66px;
      margin: 0;
      padding: 0; }
    body.charters-choice #content .expertise-container .subscribe p {
      font-size: 15px;
      line-height: 22px;
      font-weight: 500;
      color: #819AB6;
      margin: 5px 0 0 0;
      padding: 0 15px; }
      body.charters-choice #content .expertise-container .subscribe p a.btn {
        display: inline-block;
        font-family: "Roboto" !important;
        font-size: 15px !important;
        line-height: 18px !important;
        font-weight: 500 !important;
        letter-spacing: .5px !important;
        color: #fff !important;
        background-color: transparent !important;
        border-radius: 6px !important;
        border: 2px solid #fff !important;
        text-decoration: none !important;
        margin: 8px 0 0 0 !important;
        padding: 4px 8px 4px 8px !important; }
        body.charters-choice #content .expertise-container .subscribe p a.btn:hover {
          opacity: .75; }
    body.charters-choice #content .expertise-container .subscribe ul {
      text-align: center;
      margin: 0 auto;
      margin-top: 15px;
      padding: 0; }
      body.charters-choice #content .expertise-container .subscribe ul li {
        list-style: none;
        display: inline-block;
        text-align: center;
        margin: 0 3px 0 0;
        padding: 0; }
        body.charters-choice #content .expertise-container .subscribe ul li a {
          display: inline-block;
          width: 30px;
          height: 30px;
          text-indent: -9999px; }
          body.charters-choice #content .expertise-container .subscribe ul li a.twitter {
            background: url("../images/icon-social-twitter-37x37.svg") no-repeat 0 0;
            background-size: 30px 30px; }
          body.charters-choice #content .expertise-container .subscribe ul li a.linkedin {
            background: url("../images/icon-social-linkedin-37x37.svg") no-repeat 0 0;
            background-size: 30px 30px; }
          body.charters-choice #content .expertise-container .subscribe ul li a.facebook {
            background: url("../images/icon-social-facebook-37x37.svg") no-repeat 0 0;
            background-size: 30px 30px; }
  body.charters-choice #content .expertise-container h2 {
    color: #fff; }
  body.charters-choice #content .expertise-container h3 {
    font-size: 20px;
    color: #fff;
    margin: 30px 0 8px 0;
    padding: 0; }
  body.charters-choice #content .expertise-container p.intro {
    font-size: 18px;
    line-height: 26px;
    font-weight: 400;
    color: #3F648F;
    margin: 0;
    padding: 0; }
  body.charters-choice #content .expertise-container hr {
    border-color: #fff;
    margin: 30px 0; }
  body.charters-choice #content .expertise-container p.clearfix {
    clear: both;
    width: 100% !important;
    text-align: center;
    margin: 30px 0 0 0;
    padding: 0; }
    body.charters-choice #content .expertise-container p.clearfix:last-child {
      padding-top: 40px; }
    body.charters-choice #content .expertise-container p.clearfix a.btn {
      display: inline-block;
      font-family: "Roboto" !important;
      font-size: 15px !important;
      line-height: 18px !important;
      font-weight: 500 !important;
      letter-spacing: .5px !important;
      color: #fff !important;
      background-color: #5a799c !important;
      border-radius: 6px !important;
      border: none !important;
      text-decoration: none !important;
      margin: 8px 0 0 0 !important;
      padding: 8px 16px 8px 16px !important; }
      body.charters-choice #content .expertise-container p.clearfix a.btn:hover {
        opacity: .75; }
  body.charters-choice #content p.links a {
    text-decoration: none;
    font-weight: 500; }
    body.charters-choice #content p.links a:after {
      content: " • ";
      font-size: 15px;
      line-height: 10px;
      font-weight: 400; }
    body.charters-choice #content p.links a:last-child:after {
      content: ""; }
  body.charters-choice #content ul.team-slider {
    list-style: none;
    margin: 30px 0 30px 0;
    padding: 0 55px; }
    body.charters-choice #content ul.team-slider .slick-track {
      display: flex; }
    body.charters-choice #content ul.team-slider .slide {
      position: relative;
      height: auto;
      text-align: center;
      margin: 0 15px;
      padding: 0; }
      body.charters-choice #content ul.team-slider .slide a {
        display: block;
        text-decoration: none; }
      body.charters-choice #content ul.team-slider .slide img {
        margin: 0 auto; }
      body.charters-choice #content ul.team-slider .slide strong {
        display: block;
        font-family: "Roboto Slab";
        font-size: 20px;
        line-height: 26px;
        font-weight: 400;
        text-align: center;
        margin: 15px 0 10px 0;
        padding: 0; }
      body.charters-choice #content ul.team-slider .slide .bio {
        display: block;
        font-size: 16px;
        line-height: 22px;
        font-weight: 300;
        text-align: left;
        padding-bottom: 35px; }
      body.charters-choice #content ul.team-slider .slide a.btn {
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translate(-50%, 0);
        width: 100%;
        max-width: 150px;
        font-family: "Roboto" !important;
        font-size: 15px !important;
        line-height: 18px !important;
        font-weight: 500 !important;
        letter-spacing: .5px !important;
        color: #fff !important;
        background-color: #5a799c !important;
        border-radius: 6px !important;
        border: none !important;
        text-decoration: none !important;
        margin: 0 !important;
        padding: 8px 16px 8px 16px !important; }
        body.charters-choice #content ul.team-slider .slide a.btn:hover {
          opacity: .75; }
    body.charters-choice #content ul.team-slider .slick-prev,
    body.charters-choice #content ul.team-slider .slick-next {
      width: 38px;
      height: 81px;
      top: 45%; }
      body.charters-choice #content ul.team-slider .slick-prev:before,
      body.charters-choice #content ul.team-slider .slick-next:before {
        display: inline-block;
        content: "";
        width: 38px;
        height: 81px;
        background-size: 38px 81px; }
    body.charters-choice #content ul.team-slider .slick-prev {
      left: 0; }
      body.charters-choice #content ul.team-slider .slick-prev:before {
        background-image: url("../images/2019-03-trauma-team-arrow-left.svg"); }
    body.charters-choice #content ul.team-slider .slick-next {
      right: 20px; }
      body.charters-choice #content ul.team-slider .slick-next:before {
        background-image: url("../images/2019-03-trauma-team-arrow-right.svg"); }
  @media screen and (max-width: 950px) {
    body.charters-choice #content .expertise-container .subscribe {
      float: none;
      margin: 0 0 30px 0; } }

/* Areas of Work / Featured Initiatives / Trauma-informed Practice & Resilience
-------------------------------------------------------------------- */
body.trauma #main_content_wrap {
  padding-top: 20px;
  padding-bottom: 0; }

body.trauma #content {
  /* Overview */
  /* Guiding Principles */
  /* Services */
  /* Resources */
  /* Impact */
  /* Team */
  /* Promo */ }
  body.trauma #content p {
    width: 100% !important;
    font-size: 20px;
    line-height: 28px;
    font-weight: 300;
    color: #3F648F;
    margin: 0 0 12px 0;
    padding: 0; }
  body.trauma #content a.btn {
    display: inline-block;
    font-family: "Roboto" !important;
    font-size: 15px !important;
    line-height: 18px !important;
    font-weight: 500 !important;
    letter-spacing: .5px !important;
    color: #fff !important;
    background-color: #5a799c !important;
    border-radius: 6px !important;
    border: none !important;
    text-decoration: none !important;
    margin: 8px 0 0 0 !important;
    padding: 8px 16px 8px 16px !important; }
    body.trauma #content a.btn:hover {
      opacity: .75; }
  body.trauma #content li {
    font-size: 20px;
    line-height: 28px;
    font-weight: 300;
    color: #3F648F; }
  body.trauma #content h2 {
    font-family: "Roboto Slab";
    font-size: 28px;
    line-height: 32px;
    font-weight: 300;
    color: #51AF46;
    margin: 0 0 15px 0;
    padding: 0; }
  body.trauma #content h3 {
    font-family: "Roboto Slab";
    font-size: 20px;
    line-height: 26px;
    font-weight: 500;
    color: #51AF46;
    margin: 0 0 12px 0;
    padding: 0; }
  body.trauma #content .overview h2 {
    margin: 30px 0 -5px 0; }
  body.trauma #content .overview .flex {
    display: flex;
    margin: 0 -20px;
    padding: 0; }
    body.trauma #content .overview .flex .item {
      flex: 1 1 50%;
      margin: 20px;
      padding: 0; }
      body.trauma #content .overview .flex .item:first-child {
        flex-basis: 55%; }
      body.trauma #content .overview .flex .item:last-child {
        flex-basis: 45%; }
  @media screen and (max-width: 950px) {
    body.trauma #content .overview .flex {
      display: block;
      margin: 0 0 30px 0; }
      body.trauma #content .overview .flex .item {
        margin: 0; } }
  body.trauma #content .overview ul {
    margin: 0 0 0 25px;
    padding: 0; }
    body.trauma #content .overview ul li {
      margin: 0 0 20px 0;
      padding: 0; }
  body.trauma #content .overview .promo {
    border: 5px solid #E3ECF9;
    border-radius: 15px;
    background: #6ea9ed;
    background: linear-gradient(180deg, #6ea9ed 0%, white 100%);
    text-align: center;
    margin: 0 0 35px 0;
    padding: 20px; }
    body.trauma #content .overview .promo p {
      margin: 0; }
      body.trauma #content .overview .promo p:first-child {
        margin-bottom: 30px; }
  body.trauma #content .overview .quote {
    font-size: 25px;
    line-height: 34px;
    font-weight: 200;
    color: #6EA9ED;
    background: none; }
    body.trauma #content .overview .quote:before {
      float: left;
      content: "";
      background-image: url("../images/2019-03-trauma-quote-06EA9ED.svg");
      background-size: 88px 62px;
      width: 88px;
      height: 62px;
      margin: 0 15px 0 0; }
  body.trauma #content .overview .quote-source {
    font-size: 11px;
    line-height: 16px;
    font-weight: 400;
    color: #ABC1DA;
    font-style: italic; }
  body.trauma #content .bust-out-guiding {
    background-color: #EEF2F7; }
    body.trauma #content .bust-out-guiding h2 {
      margin-top: 10px;
      margin-bottom: 20px; }
    body.trauma #content .bust-out-guiding ul {
      list-style: none;
      display: flex;
      margin: 0 -10px;
      padding: 0; }
      body.trauma #content .bust-out-guiding ul li {
        flex: 1 1 0;
        text-align: center;
        border: 3px solid #E3ECF9;
        border-radius: 15px;
        background-color: #fff;
        margin: 10px;
        padding: 15px; }
        body.trauma #content .bust-out-guiding ul li h3 {
          font-family: "Roboto Condensed";
          font-size: 22px;
          line-height: 25px;
          font-weight: 700;
          color: #6EA9ED;
          text-transform: uppercase;
          border-bottom: 3px solid #EEF2F7;
          margin: 0 0 12px 0;
          padding: 0 0 12px 0; }
        body.trauma #content .bust-out-guiding ul li p {
          width: auto !important;
          font-size: 15px;
          line-height: 22px;
          font-weight: 500;
          color: #8E9FB5;
          margin: 0;
          padding: 0; }
    @media screen and (max-width: 1000px) {
      body.trauma #content .bust-out-guiding ul {
        margin: 0 -3px; }
        body.trauma #content .bust-out-guiding ul li {
          margin: 3px; } }
    @media screen and (max-width: 950px) {
      body.trauma #content .bust-out-guiding ul {
        display: block;
        margin: 0; }
        body.trauma #content .bust-out-guiding ul li {
          margin: 0 0 20px 0; } }
  body.trauma #content .bust-out-services {
    background-color: #EEF2F7; }
    body.trauma #content .bust-out-services h2 {
      margin-top: 20px; }
    body.trauma #content .bust-out-services hr {
      border-top: 4px solid #fff;
      margin: 30px 0; }
    body.trauma #content .bust-out-services .flex {
      display: flex;
      margin: 0 -20px;
      padding: 0; }
      body.trauma #content .bust-out-services .flex .item {
        flex: 1 1 50%;
        margin: 20px;
        padding: 0; }
        body.trauma #content .bust-out-services .flex .item:first-child {
          flex-basis: 65%; }
        body.trauma #content .bust-out-services .flex .item:last-child {
          flex-basis: 35%; }
    body.trauma #content .bust-out-services ul.focus {
      list-style: none;
      margin: 0;
      padding: 0; }
      body.trauma #content .bust-out-services ul.focus li {
        display: flex;
        margin: 0 0 30px 0;
        padding: 0; }
        body.trauma #content .bust-out-services ul.focus li h3 {
          flex: 1 1 25%;
          margin: 0;
          padding: 0; }
        body.trauma #content .bust-out-services ul.focus li p {
          flex: 1 1 75%;
          font-size: 16px;
          line-height: 22px;
          font-weight: 400;
          margin: 0;
          padding: 0 0 0 20px; }
    body.trauma #content .bust-out-services p.contact {
      text-align: center;
      margin: 0;
      padding: 0; }
    body.trauma #content .bust-out-services .featured {
      background-color: #fff;
      border-radius: 15px;
      margin: 0;
      padding: 20px; }
      body.trauma #content .bust-out-services .featured h3 {
        font-size: 22px;
        line-height: 29px;
        font-weight: 300; }
      body.trauma #content .bust-out-services .featured ul {
        margin: 0 0 0 30px;
        padding: 0; }
        body.trauma #content .bust-out-services .featured ul li {
          margin: 0 0 12px 0;
          padding: 0; }
          body.trauma #content .bust-out-services .featured ul li a {
            font-size: 18px;
            line-height: 20px;
            font-weight: 400;
            text-decoration: none; }
    @media screen and (max-width: 950px) {
      body.trauma #content .bust-out-services .flex {
        display: block;
        margin: 20px 0; }
        body.trauma #content .bust-out-services .flex .item {
          margin: 0; }
      body.trauma #content .bust-out-services .featured {
        margin-top: 30px; } }
    @media screen and (max-width: 550px) {
      body.trauma #content .bust-out-services ul.focus li {
        display: block; }
        body.trauma #content .bust-out-services ul.focus li p {
          margin: 10px 0;
          padding: 0; } }
  body.trauma #content .bust-out-resources {
    background-color: #E3ECF9; }
    body.trauma #content .bust-out-resources h2 {
      margin-top: 20px; }
    body.trauma #content .bust-out-resources .flex {
      display: flex;
      margin: 0 -10px;
      padding: 0; }
      body.trauma #content .bust-out-resources .flex .item {
        flex: 1 1 33.3%;
        margin: 10px;
        padding: 0; }
        body.trauma #content .bust-out-resources .flex .item h3 {
          font-family: "Roboto";
          font-size: 17px;
          line-height: 20px;
          font-weight: 500;
          color: #3F5460;
          text-transform: uppercase;
          background-color: #fff;
          border-radius: 5px;
          margin: 0 0 20px 0;
          padding: 3px 10px; }
        body.trauma #content .bust-out-resources .flex .item ul {
          list-style: none;
          margin: 0;
          padding: 0; }
          body.trauma #content .bust-out-resources .flex .item ul li {
            font-size: 17px;
            line-height: 22px;
            border-bottom: 1px solid #ABC1DA;
            margin: 0 0 10px 0;
            padding: 0 0 10px 0; }
            body.trauma #content .bust-out-resources .flex .item ul li:before, body.trauma #content .bust-out-resources .flex .item ul li:after {
              content: "";
              display: table; }
            body.trauma #content .bust-out-resources .flex .item ul li:after {
              clear: both; }
            body.trauma #content .bust-out-resources .flex .item ul li:last-child {
              border: none; }
            body.trauma #content .bust-out-resources .flex .item ul li a {
              font-size: 17px;
              line-height: 22px;
              font-weight: 400;
              text-decoration: none; }
            body.trauma #content .bust-out-resources .flex .item ul li .video {
              margin: 0 0 20px 0;
              padding: 0; }
            body.trauma #content .bust-out-resources .flex .item ul li .cover {
              float: left;
              margin: 0 20px 10px 0;
              padding: 0; }
        body.trauma #content .bust-out-resources .flex .item ul + h3 {
          margin-top: 25px; }
    @media screen and (max-width: 950px) {
      body.trauma #content .bust-out-resources .flex {
        display: block;
        margin: 20px 0; }
        body.trauma #content .bust-out-resources .flex .item {
          margin: 0; } }
  body.trauma #content .bust-out-impact {
    background-color: #8E9FB5; }
    body.trauma #content .bust-out-impact .bust-out-content {
      padding: 20px 0 20px 0 !important; }
    body.trauma #content .bust-out-impact h2 {
      position: absolute;
      top: 60px;
      left: 70px;
      opacity: .3;
      -webkit-transform: rotate(-90deg);
      -moz-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
      -o-transform: rotate(-90deg);
      transform-origin: left top 0;
      font-size: 105px;
      line-height: 105px;
      font-weight: 300;
      color: #fff;
      margin: 330px 0 0 0;
      padding: 0; }
    body.trauma #content .bust-out-impact .flex {
      display: flex;
      flex-wrap: wrap;
      margin: 0;
      padding: 0 0 0 100px; }
      body.trauma #content .bust-out-impact .flex .item {
        margin: 0;
        padding: 15px;
        /* temp adjustment due to no photos */ }
        body.trauma #content .bust-out-impact .flex .item:nth-child(1) {
          flex: 1 1 100%; }
        body.trauma #content .bust-out-impact .flex .item:nth-child(2) {
          flex: 1 1 35%; }
        body.trauma #content .bust-out-impact .flex .item:nth-child(3) {
          flex: 1 1 65%; }
        body.trauma #content .bust-out-impact .flex .item p {
          width: auto !important; }
        body.trauma #content .bust-out-impact .flex .item p.quote {
          font-family: "Roboto Slab";
          font-size: 18px;
          line-height: 28px;
          font-weight: 500;
          background: url("../images/2019-03-trauma-impact-quote.svg") no-repeat 0 0;
          color: #fff;
          margin: 0;
          padding: 0; }
        body.trauma #content .bust-out-impact .flex .item p.quote-source {
          font-size: 13px;
          line-height: 18px;
          font-weight: 700;
          color: #3F648F;
          margin: 0;
          padding: 0; }
        body.trauma #content .bust-out-impact .flex .item:nth-child(1) {
          display: flex;
          align-items: center; }
          body.trauma #content .bust-out-impact .flex .item:nth-child(1) p.quote {
            max-width: 600px;
            text-align: right;
            margin: 0;
            padding: 14px 0 0 20px; }
          body.trauma #content .bust-out-impact .flex .item:nth-child(1) p.quote-pic {
            margin: 0;
            padding: 0 0 0 20px; }
          body.trauma #content .bust-out-impact .flex .item:nth-child(1) p.quote-source {
            max-width: 150px;
            text-align: center;
            margin: 0;
            padding: 0; }
        body.trauma #content .bust-out-impact .flex .item:nth-child(2) {
          display: flex;
          flex-wrap: wrap; }
          body.trauma #content .bust-out-impact .flex .item:nth-child(2) p.quote {
            flex: 1 1 100%;
            text-align: right;
            background-position: 20px 0;
            margin: 0;
            padding: 14px 0 20px 5px; }
          body.trauma #content .bust-out-impact .flex .item:nth-child(2) p.quote-pic {
            flex: 1 1 40%;
            margin: 0;
            padding: 0; }
          body.trauma #content .bust-out-impact .flex .item:nth-child(2) p.quote-source {
            flex: 1 1 60%;
            text-align: center;
            margin: 0;
            padding: 20px 0 0 0; }
        body.trauma #content .bust-out-impact .flex .item:nth-child(3) {
          display: flex;
          flex-wrap: wrap;
          padding-left: 75px; }
          body.trauma #content .bust-out-impact .flex .item:nth-child(3) p.quote {
            flex: 1 1 100%;
            text-align: left;
            margin: 0;
            padding: 14px 0 20px 30px; }
          body.trauma #content .bust-out-impact .flex .item:nth-child(3) p.quote-pic {
            flex: 1 1 40%;
            text-align: right;
            margin: 0;
            padding: 0; }
          body.trauma #content .bust-out-impact .flex .item:nth-child(3) p.quote-source {
            flex: 1 1 60%;
            text-align: center;
            margin: 0;
            padding: 20px 0 0 20px; }
        body.trauma #content .bust-out-impact .flex .item:nth-child(1) {
          display: block; }
          body.trauma #content .bust-out-impact .flex .item:nth-child(1) p.quote-source {
            max-width: 600px;
            text-align: right; }
        body.trauma #content .bust-out-impact .flex .item:nth-child(2) {
          display: block; }
          body.trauma #content .bust-out-impact .flex .item:nth-child(2) p.quote {
            padding-bottom: 10px; }
          body.trauma #content .bust-out-impact .flex .item:nth-child(2) p.quote-source {
            text-align: right;
            padding-top: 0;
            padding-bottom: 20px; }
        body.trauma #content .bust-out-impact .flex .item:nth-child(3) {
          display: block; }
          body.trauma #content .bust-out-impact .flex .item:nth-child(3) p.quote {
            padding-bottom: 10px; }
          body.trauma #content .bust-out-impact .flex .item:nth-child(3) p.quote-source {
            text-align: left;
            padding-top: 0;
            padding-left: 30px;
            padding-bottom: 20px; }
    @media screen and (max-width: 1120px) {
      body.trauma #content .bust-out-impact h2 {
        top: -20px;
        font-size: 80px; } }
    @media screen and (max-width: 960px) {
      body.trauma #content .bust-out-impact h2 {
        opacity: 1;
        position: relative;
        top: 0;
        left: 0;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        font-size: 28px;
        line-height: 32px;
        margin: 0 0 20px 0;
        padding: 0; }
      body.trauma #content .bust-out-impact .flex {
        display: block;
        margin: 0;
        padding: 0; }
        body.trauma #content .bust-out-impact .flex .item,
        body.trauma #content .bust-out-impact .flex .item:nth-child(1),
        body.trauma #content .bust-out-impact .flex .item:nth-child(2),
        body.trauma #content .bust-out-impact .flex .item:nth-child(3) {
          display: block;
          text-align: left;
          margin: 0 0 40px 0;
          padding: 0; }
          body.trauma #content .bust-out-impact .flex .item p.quote,
          body.trauma #content .bust-out-impact .flex .item p.quote-pic,
          body.trauma #content .bust-out-impact .flex .item p.quote-source,
          body.trauma #content .bust-out-impact .flex .item:nth-child(1) p.quote,
          body.trauma #content .bust-out-impact .flex .item:nth-child(1) p.quote-pic,
          body.trauma #content .bust-out-impact .flex .item:nth-child(1) p.quote-source,
          body.trauma #content .bust-out-impact .flex .item:nth-child(2) p.quote,
          body.trauma #content .bust-out-impact .flex .item:nth-child(2) p.quote-pic,
          body.trauma #content .bust-out-impact .flex .item:nth-child(2) p.quote-source,
          body.trauma #content .bust-out-impact .flex .item:nth-child(3) p.quote,
          body.trauma #content .bust-out-impact .flex .item:nth-child(3) p.quote-pic,
          body.trauma #content .bust-out-impact .flex .item:nth-child(3) p.quote-source {
            max-width: none;
            text-align: left;
            margin: 0;
            padding: 0; }
          body.trauma #content .bust-out-impact .flex .item p.quote,
          body.trauma #content .bust-out-impact .flex .item:nth-child(1) p.quote,
          body.trauma #content .bust-out-impact .flex .item:nth-child(2) p.quote,
          body.trauma #content .bust-out-impact .flex .item:nth-child(3) p.quote {
            padding-top: 20px; }
          body.trauma #content .bust-out-impact .flex .item p.quote-pic,
          body.trauma #content .bust-out-impact .flex .item:nth-child(1) p.quote-pic,
          body.trauma #content .bust-out-impact .flex .item:nth-child(2) p.quote-pic,
          body.trauma #content .bust-out-impact .flex .item:nth-child(3) p.quote-pic {
            padding: 10px 0; } }
  body.trauma #content .bust-out-team {
    background-color: #ABC1DA; }
    body.trauma #content .bust-out-team .bust-out-content {
      padding: 20px 0 40px 0 !important; }
    body.trauma #content .bust-out-team h2 {
      color: #fff;
      margin-top: 20px; }
    body.trauma #content .bust-out-team .flex {
      display: flex;
      margin: 0 -20px;
      padding: 0; }
      body.trauma #content .bust-out-team .flex .item {
        flex: 1 1 50%;
        margin: 0 20px;
        padding: 0; }
        body.trauma #content .bust-out-team .flex .item:first-child {
          flex-basis: 70%;
          margin-right: 0; }
        body.trauma #content .bust-out-team .flex .item:last-child {
          flex-basis: 30%; }
        body.trauma #content .bust-out-team .flex .item p.subscribe {
          font-size: 16px;
          line-height: 22px;
          font-weight: 500;
          color: #fff;
          border-left: 2px solid #D3DBE6;
          background: url("../images/2019-01-11-charters-subscribe.png") no-repeat 10px top;
          margin: 0 0 0 0;
          padding: 0 0 0 95px; }
          body.trauma #content .bust-out-team .flex .item p.subscribe a {
            text-decoration: none; }
      @media screen and (max-width: 900px) {
        body.trauma #content .bust-out-team .flex {
          display: block;
          margin: 0; }
          body.trauma #content .bust-out-team .flex .item {
            margin: 0; }
            body.trauma #content .bust-out-team .flex .item p.subscribe {
              border-left: none;
              border-top: 2px solid #D3DBE6;
              background: none;
              margin: 15px 0 0 0;
              padding: 15px 0 0 0; } }
    body.trauma #content .bust-out-team hr {
      opacity: .3;
      border-top: 4px solid #E3ECF9;
      margin: 40px 0; }
    body.trauma #content .bust-out-team ul.team-slider {
      list-style: none;
      margin: 0;
      padding: 0 55px; }
      body.trauma #content .bust-out-team ul.team-slider .slick-track {
        display: flex; }
      body.trauma #content .bust-out-team ul.team-slider .slide {
        position: relative;
        height: auto;
        text-align: center;
        margin: 0 15px;
        padding: 0; }
        body.trauma #content .bust-out-team ul.team-slider .slide a {
          display: block;
          text-decoration: none; }
        body.trauma #content .bust-out-team ul.team-slider .slide img {
          margin: 0 auto; }
        body.trauma #content .bust-out-team ul.team-slider .slide strong {
          display: block;
          font-family: "Roboto Slab";
          font-size: 20px;
          line-height: 26px;
          font-weight: 400;
          text-align: center;
          margin: 15px 0 10px 0;
          padding: 0; }
        body.trauma #content .bust-out-team ul.team-slider .slide .bio {
          display: block;
          font-size: 16px;
          line-height: 22px;
          font-weight: 300;
          text-align: left;
          margin-bottom: 50px; }
        body.trauma #content .bust-out-team ul.team-slider .slide a.btn {
          position: absolute;
          bottom: 0;
          left: 50%;
          transform: translate(-50%, 0);
          width: 100%;
          max-width: 150px; }
      body.trauma #content .bust-out-team ul.team-slider .slick-prev,
      body.trauma #content .bust-out-team ul.team-slider .slick-next {
        width: 38px;
        height: 81px;
        top: 45%; }
        body.trauma #content .bust-out-team ul.team-slider .slick-prev:before,
        body.trauma #content .bust-out-team ul.team-slider .slick-next:before {
          display: inline-block;
          content: "";
          width: 38px;
          height: 81px;
          background-size: 38px 81px; }
      body.trauma #content .bust-out-team ul.team-slider .slick-prev {
        left: 0; }
        body.trauma #content .bust-out-team ul.team-slider .slick-prev:before {
          background-image: url("../images/2019-03-trauma-team-arrow-left.svg"); }
      body.trauma #content .bust-out-team ul.team-slider .slick-next {
        right: 20px; }
        body.trauma #content .bust-out-team ul.team-slider .slick-next:before {
          background-image: url("../images/2019-03-trauma-team-arrow-right.svg"); }
  body.trauma #content .bust-out-promo {
    background-color: #ABC1DA; }
    body.trauma #content .bust-out-promo .bust-out-content {
      background-color: transparent;
      padding: 0 !important; }
  body.trauma #content #subscribe-social-bar {
    height: 100px;
    margin: 0;
    padding: 0; }
    body.trauma #content #subscribe-social-bar .container {
      max-width: 1040px;
      margin: 0 auto;
      padding: 0; }
    body.trauma #content #subscribe-social-bar .subscribe {
      float: left;
      width: 63%;
      height: 100px;
      margin: 0 0 0 30px;
      padding: 0; }
      body.trauma #content #subscribe-social-bar .subscribe .icon {
        float: left;
        width: 74px;
        height: 74px;
        background: url("../images/2019-01-11-charters-subscribe.png") no-repeat 0 0;
        margin: 16px 20px 0 0;
        padding: 0; }
      body.trauma #content #subscribe-social-bar .subscribe h2 {
        font-family: "Roboto";
        font-size: 22px;
        line-height: 26px;
        font-weight: 500;
        margin: 0;
        padding: 16px 0 5px 0; }
        body.trauma #content #subscribe-social-bar .subscribe h2 a {
          color: #fff; }
      body.trauma #content #subscribe-social-bar .subscribe p {
        width: 60% !important;
        float: left;
        font-size: 15px;
        line-height: 18px;
        font-weight: 400;
        color: #fff;
        margin: 0;
        padding: 0; }
        body.trauma #content #subscribe-social-bar .subscribe p.subscribe {
          width: auto !important;
          margin: 0;
          padding: 0; }
          body.trauma #content #subscribe-social-bar .subscribe p.subscribe a {
            font-family: "Roboto" !important;
            font-size: 15px !important;
            line-height: 18px !important;
            font-weight: 500 !important;
            color: #fff !important;
            background-color: transparent !important;
            border-radius: 6px !important;
            border: 2px solid #fff !important;
            text-decoration: none !important;
            margin: 0 !important;
            padding: 6px 10px !important; }
            body.trauma #content #subscribe-social-bar .subscribe p.subscribe a:hover {
              opacity: .75; }
    body.trauma #content #subscribe-social-bar .social {
      float: right;
      width: 33%;
      height: 100px;
      background-color: #bbcde1;
      margin: 0;
      padding: 0; }
      body.trauma #content #subscribe-social-bar .social h2 {
        font-family: "Roboto";
        font-size: 22px;
        line-height: 26px;
        font-weight: 500;
        color: #fff;
        text-align: center;
        margin: 16px 0 12px 0;
        padding: 0; }
      body.trauma #content #subscribe-social-bar .social ul {
        text-align: center;
        margin: 0 auto;
        padding: 0; }
        body.trauma #content #subscribe-social-bar .social ul li {
          list-style: none;
          display: inline-block;
          text-align: center;
          margin: 0 3px 0 0;
          padding: 0; }
          body.trauma #content #subscribe-social-bar .social ul li a {
            display: inline-block;
            width: 30px;
            height: 30px;
            text-indent: -9999px; }
            body.trauma #content #subscribe-social-bar .social ul li a.twitter {
              background: url("../images/icon-social-twitter-37x37.svg") no-repeat 0 0;
              background-size: 30px 30px; }
            body.trauma #content #subscribe-social-bar .social ul li a.linkedin {
              background: url("../images/icon-social-linkedin-37x37.svg") no-repeat 0 0;
              background-size: 30px 30px; }
            body.trauma #content #subscribe-social-bar .social ul li a.facebook {
              background: url("../images/icon-social-facebook-37x37.svg") no-repeat 0 0;
              background-size: 30px 30px; }
  @media screen and (max-width: 1040px) {
    body.trauma #content #subscribe-social-bar {
      height: auto;
      margin: 0;
      padding: 0; }
      body.trauma #content #subscribe-social-bar .subscribe {
        float: none;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0; }
        body.trauma #content #subscribe-social-bar .subscribe .icon {
          display: none !important; }
        body.trauma #content #subscribe-social-bar .subscribe p {
          float: none;
          width: 100% !important;
          float: none !important; }
          body.trauma #content #subscribe-social-bar .subscribe p.subscribe {
            margin-top: 15px; }
      body.trauma #content #subscribe-social-bar .social {
        float: none;
        width: 100%;
        height: auto;
        background-color: transparent;
        margin: 30px 0 0 0;
        padding: 0; }
        body.trauma #content #subscribe-social-bar .social h2 {
          float: none;
          width: 100%;
          text-align: left;
          margin: 0;
          padding: 0; }
        body.trauma #content #subscribe-social-bar .social ul {
          float: none;
          width: 100%;
          text-align: left;
          margin: 10px 0 15px 0;
          padding: 0; } }

/* Areas of Work / Featured Initiatives / COVID-19 Resources and Services
-------------------------------------------------------------------- */
body.covid-19-resources #main_content_wrap,
body.covid-19-services #main_content_wrap {
  padding-top: 20px;
  padding-bottom: 0; }

body.covid-19-resources #content,
body.covid-19-services #content {
  /* Overview */
  /* Topic List */
  /* Slider */
  /* bust out */
  /* promo */
  /* Topic */ }
  body.covid-19-resources #content h1,
  body.covid-19-services #content h1 {
    font-family: "Roboto Slab";
    font-size: 42px;
    line-height: 50px;
    font-weight: 300;
    color: #51AF46;
    margin: 30px 0 20px 0;
    padding: 0; }
  body.covid-19-resources #content h2,
  body.covid-19-services #content h2 {
    font-family: "Roboto Slab";
    font-size: 28px;
    line-height: 37px;
    font-weight: 300;
    color: #51AF46;
    margin: 0 0 20px 0;
    padding: 0; }
  body.covid-19-resources #content p,
  body.covid-19-services #content p {
    width: auto !important; }
  body.covid-19-resources #content section.overview .group,
  body.covid-19-services #content section.overview .group {
    display: flex;
    flex-wrap: nowrap;
    margin: 0;
    padding: 0; }
    body.covid-19-resources #content section.overview .group .item,
    body.covid-19-services #content section.overview .group .item {
      margin: 0;
      padding: 0;
      /* text */
      /* CEO */ }
      body.covid-19-resources #content section.overview .group .item:nth-child(1),
      body.covid-19-services #content section.overview .group .item:nth-child(1) {
        flex: 1 1 70%; }
        body.covid-19-resources #content section.overview .group .item:nth-child(1) p,
        body.covid-19-services #content section.overview .group .item:nth-child(1) p {
          width: 90% !important;
          font-size: 18px;
          line-height: 24px;
          font-weight: 500;
          margin: 0 0 12px 0;
          padding: 0; }
      body.covid-19-resources #content section.overview .group .item:nth-child(2),
      body.covid-19-services #content section.overview .group .item:nth-child(2) {
        flex: 1 1 30%;
        background-color: #EEF2F7;
        margin: 0;
        padding: 15px; }
        body.covid-19-resources #content section.overview .group .item:nth-child(2) img,
        body.covid-19-services #content section.overview .group .item:nth-child(2) img {
          float: left;
          margin: 0 15px 5px 0;
          padding: 0; }
        body.covid-19-resources #content section.overview .group .item:nth-child(2) h2,
        body.covid-19-services #content section.overview .group .item:nth-child(2) h2 {
          font-size: 24px;
          line-height: 29px;
          color: #6EA9ED;
          margin: 30px 0 25px 0;
          padding: 0; }
        body.covid-19-resources #content section.overview .group .item:nth-child(2) p,
        body.covid-19-services #content section.overview .group .item:nth-child(2) p {
          margin: 0 0 12px 0;
          padding: 0; }
        body.covid-19-resources #content section.overview .group .item:nth-child(2) a,
        body.covid-19-services #content section.overview .group .item:nth-child(2) a {
          text-decoration: none; }
  @media screen and (max-width: 940px) {
    body.covid-19-resources #content section.overview .group,
    body.covid-19-services #content section.overview .group {
      display: block; }
      body.covid-19-resources #content section.overview .group .item:nth-child(1) p,
      body.covid-19-services #content section.overview .group .item:nth-child(1) p {
        width: 100% !important; }
      body.covid-19-resources #content section.overview .group .item:nth-child(2),
      body.covid-19-services #content section.overview .group .item:nth-child(2) {
        margin-top: 30px; }
        body.covid-19-resources #content section.overview .group .item:nth-child(2) h2,
        body.covid-19-services #content section.overview .group .item:nth-child(2) h2 {
          margin-bottom: 10px; } }
  @media screen and (max-width: 550px) {
    body.covid-19-resources #content section.overview .group .item:nth-child(2) img,
    body.covid-19-services #content section.overview .group .item:nth-child(2) img {
      float: none;
      margin: 0;
      padding: 0; }
    body.covid-19-resources #content section.overview .group .item:nth-child(2) h2,
    body.covid-19-services #content section.overview .group .item:nth-child(2) h2 {
      margin-top: 0; } }
  body.covid-19-resources #content section.topic,
  body.covid-19-services #content section.topic {
    margin: 30px 0;
    padding: 0; }
    body.covid-19-resources #content section.topic ul,
    body.covid-19-services #content section.topic ul {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      grid-gap: 20px;
      margin: 0;
      padding: 0; }
      body.covid-19-resources #content section.topic ul li,
      body.covid-19-services #content section.topic ul li {
        list-style: none;
        background-color: #5A799C;
        border-radius: 5px;
        margin: 0;
        padding: 0; }
        body.covid-19-resources #content section.topic ul li a,
        body.covid-19-services #content section.topic ul li a {
          text-decoration: none;
          display: block;
          text-align: center;
          font-size: 18px;
          line-height: 21px;
          font-weight: 400;
          color: #fff;
          padding: 10px 15px; }
    @media screen and (max-width: 940px) {
      body.covid-19-resources #content section.topic ul,
      body.covid-19-services #content section.topic ul {
        grid-template-columns: 1fr 1fr; } }
    @media screen and (max-width: 550px) {
      body.covid-19-resources #content section.topic ul,
      body.covid-19-services #content section.topic ul {
        grid-template-columns: 1fr; } }
  body.covid-19-resources #content section.slider,
  body.covid-19-services #content section.slider {
    border: 2px solid #ABC1DA;
    border-top: 20px solid #ABC1DA;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    margin: 50px 0 !important;
    padding: 50px 20px !important; }
    body.covid-19-resources #content section.slider ul.covid-slider,
    body.covid-19-services #content section.slider ul.covid-slider {
      list-style: none;
      margin: 0;
      padding: 0 55px;
      /* hide arrows */
      /* pagination */ }
      body.covid-19-resources #content section.slider ul.covid-slider .slick-prev,
      body.covid-19-resources #content section.slider ul.covid-slider .slick-next,
      body.covid-19-services #content section.slider ul.covid-slider .slick-prev,
      body.covid-19-services #content section.slider ul.covid-slider .slick-next {
        display: none !important; }
      body.covid-19-resources #content section.slider ul.covid-slider .slick-dots,
      body.covid-19-services #content section.slider ul.covid-slider .slick-dots {
        position: relative;
        top: 0;
        left: 0;
        bottom: 0;
        margin: 20px 0 0 0;
        padding: 0; }
        body.covid-19-resources #content section.slider ul.covid-slider .slick-dots li,
        body.covid-19-services #content section.slider ul.covid-slider .slick-dots li {
          margin: 0 7px;
          padding: 0; }
          body.covid-19-resources #content section.slider ul.covid-slider .slick-dots li button,
          body.covid-19-services #content section.slider ul.covid-slider .slick-dots li button {
            margin: 0;
            padding: 0; }
            body.covid-19-resources #content section.slider ul.covid-slider .slick-dots li button::before,
            body.covid-19-services #content section.slider ul.covid-slider .slick-dots li button::before {
              opacity: 1;
              content: "";
              border: 2px solid #1669C9;
              border-radius: 50%;
              margin: 0;
              padding: 0; }
            body.covid-19-resources #content section.slider ul.covid-slider .slick-dots li button:hover,
            body.covid-19-services #content section.slider ul.covid-slider .slick-dots li button:hover {
              opacity: .75; }
          body.covid-19-resources #content section.slider ul.covid-slider .slick-dots li.slick-active button::before,
          body.covid-19-services #content section.slider ul.covid-slider .slick-dots li.slick-active button::before {
            background-color: #1669C9; }
      body.covid-19-resources #content section.slider ul.covid-slider .slide,
      body.covid-19-services #content section.slider ul.covid-slider .slide {
        position: relative;
        height: auto;
        text-align: center;
        margin: 0 15px;
        padding: 0; }
        body.covid-19-resources #content section.slider ul.covid-slider .slide:focus,
        body.covid-19-services #content section.slider ul.covid-slider .slide:focus {
          outline: none; }
        body.covid-19-resources #content section.slider ul.covid-slider .slide .thumbnail,
        body.covid-19-services #content section.slider ul.covid-slider .slide .thumbnail {
          float: left;
          width: 35%;
          margin: 0;
          padding: 0 25px 0 0; }
          body.covid-19-resources #content section.slider ul.covid-slider .slide .thumbnail img,
          body.covid-19-services #content section.slider ul.covid-slider .slide .thumbnail img {
            max-width: 250px;
            height: auto;
            border: 1px solid #bbceea; }
        body.covid-19-resources #content section.slider ul.covid-slider .slide .content,
        body.covid-19-services #content section.slider ul.covid-slider .slide .content {
          float: left;
          width: 65%;
          margin: 0;
          padding: 0; }
          body.covid-19-resources #content section.slider ul.covid-slider .slide .content h2,
          body.covid-19-services #content section.slider ul.covid-slider .slide .content h2 {
            font-family: "Roboto";
            font-size: 13px;
            line-height: 13px;
            font-weight: 700;
            letter-spacing: 1px;
            color: #51AF46;
            text-align: left;
            text-transform: uppercase;
            margin: 0 0 7px 0;
            padding: 0; }
          body.covid-19-resources #content section.slider ul.covid-slider .slide .content h3,
          body.covid-19-services #content section.slider ul.covid-slider .slide .content h3 {
            font-family: "Roboto";
            font-size: 20px;
            line-height: 26px;
            font-weight: 400;
            text-align: left;
            margin: 0 0 15px 0;
            padding: 0; }
            body.covid-19-resources #content section.slider ul.covid-slider .slide .content h3 a,
            body.covid-19-services #content section.slider ul.covid-slider .slide .content h3 a {
              text-decoration: none; }
          body.covid-19-resources #content section.slider ul.covid-slider .slide .content p,
          body.covid-19-services #content section.slider ul.covid-slider .slide .content p {
            text-align: left;
            margin: 0 0 12px 0;
            padding: 0; }
      @media screen and (max-width: 975px) {
        body.covid-19-resources #content section.slider ul.covid-slider,
        body.covid-19-services #content section.slider ul.covid-slider {
          padding: 0 10px; }
          body.covid-19-resources #content section.slider ul.covid-slider .slide .thumbnail,
          body.covid-19-resources #content section.slider ul.covid-slider .slide .content,
          body.covid-19-services #content section.slider ul.covid-slider .slide .thumbnail,
          body.covid-19-services #content section.slider ul.covid-slider .slide .content {
            float: none;
            width: 100%;
            margin: 0;
            padding: 0; }
          body.covid-19-resources #content section.slider ul.covid-slider .slide .thumbnail,
          body.covid-19-services #content section.slider ul.covid-slider .slide .thumbnail {
            margin-bottom: 20px; }
            body.covid-19-resources #content section.slider ul.covid-slider .slide .thumbnail img,
            body.covid-19-services #content section.slider ul.covid-slider .slide .thumbnail img {
              width: 100%; } }
  body.covid-19-resources #content .bust-out-topic,
  body.covid-19-services #content .bust-out-topic {
    background-color: transparent; }
  body.covid-19-resources #content .bust-out-topic.shade,
  body.covid-19-services #content .bust-out-topic.shade {
    background-color: #E3ECF9; }
    body.covid-19-resources #content .bust-out-topic.shade .item, body.covid-19-resources #content .bust-out-topic.shade .meta,
    body.covid-19-services #content .bust-out-topic.shade .item,
    body.covid-19-services #content .bust-out-topic.shade .meta {
      border-color: #fff !important; }
    @media screen and (max-width: 650px) {
      body.covid-19-resources #content .bust-out-topic.shade .bust-out-content,
      body.covid-19-services #content .bust-out-topic.shade .bust-out-content {
        width: 90%; } }
  body.covid-19-resources #content .bust-out-connect,
  body.covid-19-services #content .bust-out-connect {
    background-color: #3F648F; }
    body.covid-19-resources #content .bust-out-connect .connect-container,
    body.covid-19-services #content .bust-out-connect .connect-container {
      max-width: 650px;
      margin: 0 auto;
      padding: 0; }
    body.covid-19-resources #content .bust-out-connect .icon,
    body.covid-19-services #content .bust-out-connect .icon {
      float: left;
      width: 94px;
      height: 94px;
      background: url(../images/icon-write-filled.png) no-repeat 0 0;
      margin: 0 30px 0 0;
      padding: 0; }
    body.covid-19-resources #content .bust-out-connect h2,
    body.covid-19-services #content .bust-out-connect h2 {
      font-size: 22px;
      line-height: 28px;
      font-weight: 500;
      color: #6EA9ED;
      margin: 0 0 4px 0;
      padding: 5px 0 0 0; }
    body.covid-19-resources #content .bust-out-connect p,
    body.covid-19-services #content .bust-out-connect p {
      width: 100% !important;
      font-size: 15px;
      line-height: 20px;
      font-weight: 500;
      color: #fff;
      margin: 0;
      padding: 0; }
    body.covid-19-resources #content .bust-out-connect a.btn,
    body.covid-19-services #content .bust-out-connect a.btn {
      display: inline-block;
      font-family: "Roboto" !important;
      font-size: 15px !important;
      line-height: 18px !important;
      font-weight: 500 !important;
      letter-spacing: .5px !important;
      color: #fff !important;
      background-color: #5a799c !important;
      border-radius: 6px !important;
      border: none !important;
      text-decoration: none !important;
      margin: 0 !important;
      padding: 8px 16px 8px 16px !important; }
      body.covid-19-resources #content .bust-out-connect a.btn:hover,
      body.covid-19-services #content .bust-out-connect a.btn:hover {
        opacity: .75; }
    body.covid-19-resources #content .bust-out-connect .social,
    body.covid-19-services #content .bust-out-connect .social {
      width: 100%;
      margin: 0 auto;
      margin-top: 30px;
      padding: 0 0 0 185px; }
      body.covid-19-resources #content .bust-out-connect .social:before, body.covid-19-resources #content .bust-out-connect .social:after,
      body.covid-19-services #content .bust-out-connect .social:before,
      body.covid-19-services #content .bust-out-connect .social:after {
        content: "";
        display: table; }
      body.covid-19-resources #content .bust-out-connect .social:after,
      body.covid-19-services #content .bust-out-connect .social:after {
        clear: both; }
      body.covid-19-resources #content .bust-out-connect .social p.btn-container,
      body.covid-19-services #content .bust-out-connect .social p.btn-container {
        float: left;
        text-align: left;
        width: 175px !important; }
      body.covid-19-resources #content .bust-out-connect .social a.btn,
      body.covid-19-services #content .bust-out-connect .social a.btn {
        background-color: #73a6d9 !important; }
      body.covid-19-resources #content .bust-out-connect .social ul,
      body.covid-19-services #content .bust-out-connect .social ul {
        float: left;
        width: 200px;
        margin: 0;
        padding: 0; }
        body.covid-19-resources #content .bust-out-connect .social ul li,
        body.covid-19-services #content .bust-out-connect .social ul li {
          list-style: none;
          display: inline-block;
          text-align: center;
          margin: 0 8px 0 0;
          padding: 0; }
          body.covid-19-resources #content .bust-out-connect .social ul li a,
          body.covid-19-services #content .bust-out-connect .social ul li a {
            display: block;
            width: 37px;
            height: 37px;
            margin: 0;
            padding: 0; }
            body.covid-19-resources #content .bust-out-connect .social ul li a.twitter,
            body.covid-19-services #content .bust-out-connect .social ul li a.twitter {
              background: url("../images/icon-social-twitter-37x37.svg") no-repeat 0 0; }
            body.covid-19-resources #content .bust-out-connect .social ul li a.linkedin,
            body.covid-19-services #content .bust-out-connect .social ul li a.linkedin {
              background: url("../images/icon-social-linkedin-37x37.svg") no-repeat 0 0; }
            body.covid-19-resources #content .bust-out-connect .social ul li a.facebook,
            body.covid-19-services #content .bust-out-connect .social ul li a.facebook {
              background: url("../images/icon-social-facebook-37x37.svg") no-repeat 0 0; }
    @media screen and (max-width: 640px) {
      body.covid-19-resources #content .bust-out-connect,
      body.covid-19-services #content .bust-out-connect {
        padding: 10px 20px; }
        body.covid-19-resources #content .bust-out-connect .icon,
        body.covid-19-services #content .bust-out-connect .icon {
          float: none; }
        body.covid-19-resources #content .bust-out-connect .social,
        body.covid-19-services #content .bust-out-connect .social {
          padding: 0; }
          body.covid-19-resources #content .bust-out-connect .social p.btn-container,
          body.covid-19-resources #content .bust-out-connect .social ul,
          body.covid-19-services #content .bust-out-connect .social p.btn-container,
          body.covid-19-services #content .bust-out-connect .social ul {
            float: none;
            width: 100%; }
          body.covid-19-resources #content .bust-out-connect .social ul,
          body.covid-19-services #content .bust-out-connect .social ul {
            margin-top: 20px; } }
  body.covid-19-resources #content .bust-out-topic .bust-out-content,
  body.covid-19-resources #content .bust-out-services .bust-out-content,
  body.covid-19-services #content .bust-out-topic .bust-out-content,
  body.covid-19-services #content .bust-out-services .bust-out-content {
    padding: 20px 0 !important; }
  body.covid-19-resources #content .bust-out-topic .group,
  body.covid-19-resources #content .bust-out-services .group,
  body.covid-19-services #content .bust-out-topic .group,
  body.covid-19-services #content .bust-out-services .group {
    margin: 0;
    padding: 0;
    /* show hide */ }
    body.covid-19-resources #content .bust-out-topic .group .item,
    body.covid-19-resources #content .bust-out-services .group .item,
    body.covid-19-services #content .bust-out-topic .group .item,
    body.covid-19-services #content .bust-out-services .group .item {
      display: flex;
      border-bottom: 2px solid #E3ECF9;
      margin: 20px 0;
      padding: 20px 0; }
      body.covid-19-resources #content .bust-out-topic .group .item:last-child,
      body.covid-19-resources #content .bust-out-services .group .item:last-child,
      body.covid-19-services #content .bust-out-topic .group .item:last-child,
      body.covid-19-services #content .bust-out-services .group .item:last-child {
        border: none; }
      body.covid-19-resources #content .bust-out-topic .group .item .content,
      body.covid-19-resources #content .bust-out-services .group .item .content,
      body.covid-19-services #content .bust-out-topic .group .item .content,
      body.covid-19-services #content .bust-out-services .group .item .content {
        display: flex;
        flex: 1 1 80%;
        margin: 0;
        padding: 0 15px 0 0; }
        body.covid-19-resources #content .bust-out-topic .group .item .content .thumbnail,
        body.covid-19-resources #content .bust-out-topic .group .item .content .thumbnail-wide,
        body.covid-19-resources #content .bust-out-services .group .item .content .thumbnail,
        body.covid-19-resources #content .bust-out-services .group .item .content .thumbnail-wide,
        body.covid-19-services #content .bust-out-topic .group .item .content .thumbnail,
        body.covid-19-services #content .bust-out-topic .group .item .content .thumbnail-wide,
        body.covid-19-services #content .bust-out-services .group .item .content .thumbnail,
        body.covid-19-services #content .bust-out-services .group .item .content .thumbnail-wide {
          margin: 0;
          padding: 0; }
          body.covid-19-resources #content .bust-out-topic .group .item .content .thumbnail img,
          body.covid-19-resources #content .bust-out-topic .group .item .content .thumbnail-wide img,
          body.covid-19-resources #content .bust-out-services .group .item .content .thumbnail img,
          body.covid-19-resources #content .bust-out-services .group .item .content .thumbnail-wide img,
          body.covid-19-services #content .bust-out-topic .group .item .content .thumbnail img,
          body.covid-19-services #content .bust-out-topic .group .item .content .thumbnail-wide img,
          body.covid-19-services #content .bust-out-services .group .item .content .thumbnail img,
          body.covid-19-services #content .bust-out-services .group .item .content .thumbnail-wide img {
            max-width: 140px;
            border: 1px solid #bbceea;
            margin: 0 20px 15px 0;
            padding: 0; }
        body.covid-19-resources #content .bust-out-topic .group .item .content .thumbnail-wide img,
        body.covid-19-resources #content .bust-out-services .group .item .content .thumbnail-wide img,
        body.covid-19-services #content .bust-out-topic .group .item .content .thumbnail-wide img,
        body.covid-19-services #content .bust-out-services .group .item .content .thumbnail-wide img {
          max-width: 250px; }
        body.covid-19-resources #content .bust-out-topic .group .item .content .description,
        body.covid-19-resources #content .bust-out-services .group .item .content .description,
        body.covid-19-services #content .bust-out-topic .group .item .content .description,
        body.covid-19-services #content .bust-out-services .group .item .content .description {
          margin: 0;
          padding: 0; }
        body.covid-19-resources #content .bust-out-topic .group .item .content p,
        body.covid-19-resources #content .bust-out-services .group .item .content p,
        body.covid-19-services #content .bust-out-topic .group .item .content p,
        body.covid-19-services #content .bust-out-services .group .item .content p {
          margin: 0 0 12px 0;
          padding: 0; }
        body.covid-19-resources #content .bust-out-topic .group .item .content h3,
        body.covid-19-resources #content .bust-out-services .group .item .content h3,
        body.covid-19-services #content .bust-out-topic .group .item .content h3,
        body.covid-19-services #content .bust-out-services .group .item .content h3 {
          font-family: "Roboto";
          font-size: 17px;
          line-height: 20px;
          font-weight: 700;
          color: #3F648F;
          margin: 0 0 15px 0;
          padding: 0; }
          body.covid-19-resources #content .bust-out-topic .group .item .content h3 img,
          body.covid-19-resources #content .bust-out-services .group .item .content h3 img,
          body.covid-19-services #content .bust-out-topic .group .item .content h3 img,
          body.covid-19-services #content .bust-out-services .group .item .content h3 img {
            float: left;
            margin: 0 12px 0 0;
            padding: 0; }
          body.covid-19-resources #content .bust-out-topic .group .item .content h3 a,
          body.covid-19-resources #content .bust-out-services .group .item .content h3 a,
          body.covid-19-services #content .bust-out-topic .group .item .content h3 a,
          body.covid-19-services #content .bust-out-services .group .item .content h3 a {
            text-decoration: none; }
        body.covid-19-resources #content .bust-out-topic .group .item .content ul,
        body.covid-19-resources #content .bust-out-services .group .item .content ul,
        body.covid-19-services #content .bust-out-topic .group .item .content ul,
        body.covid-19-services #content .bust-out-services .group .item .content ul {
          margin: 0 0 0 20px;
          padding: 0; }
          body.covid-19-resources #content .bust-out-topic .group .item .content ul li,
          body.covid-19-resources #content .bust-out-services .group .item .content ul li,
          body.covid-19-services #content .bust-out-topic .group .item .content ul li,
          body.covid-19-services #content .bust-out-services .group .item .content ul li {
            margin: 0 0 6px 0;
            padding: 0; }
      body.covid-19-resources #content .bust-out-topic .group .item .meta,
      body.covid-19-resources #content .bust-out-services .group .item .meta,
      body.covid-19-services #content .bust-out-topic .group .item .meta,
      body.covid-19-services #content .bust-out-services .group .item .meta {
        flex: 1 1 20%;
        border-left: 2px solid #fff;
        margin: 0;
        padding: 0 0 0 20px; }
        body.covid-19-resources #content .bust-out-topic .group .item .meta a.btn,
        body.covid-19-resources #content .bust-out-services .group .item .meta a.btn,
        body.covid-19-services #content .bust-out-topic .group .item .meta a.btn,
        body.covid-19-services #content .bust-out-services .group .item .meta a.btn {
          width: 100%;
          text-align: center;
          display: inline-block;
          font-family: "Roboto" !important;
          font-size: 15px !important;
          line-height: 18px !important;
          font-weight: 500 !important;
          letter-spacing: .5px !important;
          color: #fff !important;
          background-color: #5a799c !important;
          border-radius: 6px !important;
          border: none !important;
          text-decoration: none !important;
          margin: 8px 0 0 0 !important;
          padding: 8px 16px 8px 16px !important; }
          body.covid-19-resources #content .bust-out-topic .group .item .meta a.btn:hover,
          body.covid-19-resources #content .bust-out-services .group .item .meta a.btn:hover,
          body.covid-19-services #content .bust-out-topic .group .item .meta a.btn:hover,
          body.covid-19-services #content .bust-out-services .group .item .meta a.btn:hover {
            opacity: .75; }
        body.covid-19-resources #content .bust-out-topic .group .item .meta h4,
        body.covid-19-resources #content .bust-out-services .group .item .meta h4,
        body.covid-19-services #content .bust-out-topic .group .item .meta h4,
        body.covid-19-services #content .bust-out-services .group .item .meta h4 {
          font-family: "Roboto";
          font-size: 14px;
          line-height: 18px;
          font-weight: 700;
          color: #6EA9ED;
          text-transform: uppercase;
          margin: 0 0 2px 0;
          padding: 0; }
        body.covid-19-resources #content .bust-out-topic .group .item .meta p,
        body.covid-19-resources #content .bust-out-services .group .item .meta p,
        body.covid-19-services #content .bust-out-topic .group .item .meta p,
        body.covid-19-services #content .bust-out-services .group .item .meta p {
          font-size: 14px;
          line-height: 20px;
          font-weight: 700;
          color: #3F648F;
          margin: 0 0 15px 0;
          padding: 0; }
          body.covid-19-resources #content .bust-out-topic .group .item .meta p.btn-container,
          body.covid-19-resources #content .bust-out-services .group .item .meta p.btn-container,
          body.covid-19-services #content .bust-out-topic .group .item .meta p.btn-container,
          body.covid-19-services #content .bust-out-services .group .item .meta p.btn-container {
            margin: 20px 0 0 0;
            padding: 0; }
    body.covid-19-resources #content .bust-out-topic .group .more_links,
    body.covid-19-resources #content .bust-out-services .group .more_links,
    body.covid-19-services #content .bust-out-topic .group .more_links,
    body.covid-19-services #content .bust-out-services .group .more_links {
      margin-top: -22px !important;
      /* to cover the line above it */ }
  @media screen and (max-width: 940px) {
    body.covid-19-resources #content .bust-out-topic .group .item,
    body.covid-19-resources #content .bust-out-services .group .item,
    body.covid-19-services #content .bust-out-topic .group .item,
    body.covid-19-services #content .bust-out-services .group .item {
      display: block; }
      body.covid-19-resources #content .bust-out-topic .group .item .content,
      body.covid-19-resources #content .bust-out-services .group .item .content,
      body.covid-19-services #content .bust-out-topic .group .item .content,
      body.covid-19-services #content .bust-out-services .group .item .content {
        display: block;
        margin: 0;
        padding: 0; }
      body.covid-19-resources #content .bust-out-topic .group .item .meta,
      body.covid-19-resources #content .bust-out-services .group .item .meta,
      body.covid-19-services #content .bust-out-topic .group .item .meta,
      body.covid-19-services #content .bust-out-services .group .item .meta {
        border: none;
        margin: 20px 0 0 0;
        padding: 0; }
        body.covid-19-resources #content .bust-out-topic .group .item .meta a.btn,
        body.covid-19-resources #content .bust-out-services .group .item .meta a.btn,
        body.covid-19-services #content .bust-out-topic .group .item .meta a.btn,
        body.covid-19-services #content .bust-out-services .group .item .meta a.btn {
          width: auto; } }

/* COVID-19 Services
-------------------------------------------------------------------- */
body.covid-19-services #content {
  /* Overview */
  /* slider */
  /* services */ }
  body.covid-19-services #content h1 {
    max-width: 750px; }
  body.covid-19-services #content p.btn-container {
    text-align: center;
    margin: 0;
    padding: 0; }
  body.covid-19-services #content a.btn {
    display: inline-block;
    font-family: "Roboto" !important;
    font-size: 15px !important;
    line-height: 18px !important;
    font-weight: 500 !important;
    letter-spacing: .5px !important;
    color: #fff !important;
    background-color: #5a799c !important;
    border-radius: 6px !important;
    border: none !important;
    text-decoration: none !important;
    margin: 0 !important;
    padding: 8px 16px 8px 16px !important; }
    body.covid-19-services #content a.btn:hover {
      opacity: .75; }
  body.covid-19-services #content section.overview .group .item:nth-child(1) p.btn-container {
    margin-top: 30px; }
  body.covid-19-services #content section.overview .group .item:nth-child(2) h2 {
    font-size: 24px;
    line-height: 28px;
    font-weight: 400;
    background: url("../images/2020-04-covid19-resources.svg") no-repeat 0 0;
    color: #3F648F;
    margin: 0;
    padding: 0 0 20px 90px; }
  body.covid-19-services #content section.overview .group .item:nth-child(2) p.btn-container {
    margin-top: 5px; }
  body.covid-19-services #content section.slider ul.covid-slider .slide .content p.btn-container {
    margin: 20px 0;
    padding: 0; }
  body.covid-19-services #content .bust-out-services h2 {
    margin: 25px 0; }
  body.covid-19-services #content .bust-out-services .group .item {
    border-color: #fff;
    /* promo */ }
    body.covid-19-services #content .bust-out-services .group .item .content h3 {
      font-size: 24px;
      line-height: 28px;
      font-weight: 400;
      margin: 0 0 5px 0;
      padding: 0; }
    body.covid-19-services #content .bust-out-services .group .item .content h4 {
      font-size: 17px;
      line-height: 24px;
      font-weight: 700;
      color: #6EA9ED;
      font-style: italic;
      margin: 0 0 14px 0;
      padding: 0; }
    body.covid-19-services #content .bust-out-services .group .item.has-promo {
      border-bottom: 0; }
    body.covid-19-services #content .bust-out-services .group .item.promo {
      border: 4px solid #fff;
      border-radius: 20px;
      background-color: transparent;
      margin: 20px 0 35px 0;
      padding: 0; }
      body.covid-19-services #content .bust-out-services .group .item.promo .promo-header {
        flex: 1 1 20%;
        background-color: #fff;
        text-align: center;
        margin: 0;
        padding: 0; }
        body.covid-19-services #content .bust-out-services .group .item.promo .promo-header:before, body.covid-19-services #content .bust-out-services .group .item.promo .promo-header:after {
          content: "";
          display: table; }
        body.covid-19-services #content .bust-out-services .group .item.promo .promo-header:after {
          clear: both; }
        body.covid-19-services #content .bust-out-services .group .item.promo .promo-header img {
          width: 100%;
          max-width: 165px;
          height: auto;
          clip-path: circle(80px at center);
          border-radius: 50%;
          margin: 20px 0;
          padding: 0; }
        body.covid-19-services #content .bust-out-services .group .item.promo .promo-header a {
          display: block;
          font-family: "Roboto Slab";
          text-decoration: none;
          font-size: 18px;
          line-height: 24px;
          color: #6EA9ED;
          margin: 0 0 20px 0;
          padding: 0; }
      body.covid-19-services #content .bust-out-services .group .item.promo .promo-content {
        flex: 1 1 80%;
        margin: 0;
        padding: 30px; }
        body.covid-19-services #content .bust-out-services .group .item.promo .promo-content h3 {
          font-family: "Roboto Slab";
          font-size: 23px;
          line-height: 30px;
          font-weight: 300;
          color: #51AF46;
          margin: 0 0 10px 0;
          padding: 0; }
        body.covid-19-services #content .bust-out-services .group .item.promo .promo-content p {
          font-size: 17px;
          line-height: 26px;
          font-weight: 400; }
        body.covid-19-services #content .bust-out-services .group .item.promo .promo-content p.btn-container {
          margin: 20px 0 0 0;
          padding: 0; }

/* WestEd Experts (Shared)
-------------------------------------------------------------------- */
#wested-experts {
  /* pagination */ }
  #wested-experts .container {
    padding: 40px 20px 40px 20px; }
  #wested-experts .experts-intro h3 {
    margin-bottom: 10px; }
  #wested-experts .expert-photo {
    width: 100px;
    height: auto; }
    #wested-experts .expert-photo img {
      width: 100%; }
  #wested-experts .slide {
    width: 100% !important; }
  #wested-experts .expert-content {
    width: 83%; }
    #wested-experts .expert-content h3 {
      font-size: 20px;
      font-weight: 400;
      color: #546B85;
      margin: 0;
      padding: 0; }
      #wested-experts .expert-content h3 a {
        text-decoration: none;
        color: #1669c9; }
    #wested-experts .expert-content h4 {
      font-size: 12px;
      line-height: 20px;
      font-weight: 500;
      color: #546B85;
      text-transform: uppercase;
      margin: 0 0 10px 0;
      padding: 0; }
    #wested-experts .expert-content p {
      margin: 0 0 12px 0; }
  #wested-experts .bx-controls {
    float: right;
    width: 570px; }
    #wested-experts .bx-controls .bx-pager {
      margin: 10px 0 0 0 !important;
      padding: 0 !important; }
  @media screen and (max-width: 950px) {
    #wested-experts .container {
      padding-bottom: 0; }
    #wested-experts .expert-photo, #wested-experts .expert-content {
      float: none;
      width: 100%;
      max-width: none; }
    #wested-experts .expert-photo {
      max-width: 100px; }
    #wested-experts .experts-intro p {
      max-width: none; } }

/* Research & Evaluation / What We Do
-------------------------------------------------------------------- */
body.research-evaluation.page-research-evaluation {
  /* big ole chart */ }
  body.research-evaluation.page-research-evaluation h2 {
    font-family: "Roboto Slab";
    font-size: 28px;
    line-height: 36px;
    font-weight: 300;
    color: #51AF46;
    margin: 0 0 30px 0;
    padding: 0; }
  body.research-evaluation.page-research-evaluation .chart {
    position: relative;
    width: 997px;
    height: 1088px;
    background: url(../images/r&e-whatwedo-chart.png) no-repeat 0 0;
    margin: 0;
    padding: 0; }
    body.research-evaluation.page-research-evaluation .chart .box1,
    body.research-evaluation.page-research-evaluation .chart .box2,
    body.research-evaluation.page-research-evaluation .chart .box3,
    body.research-evaluation.page-research-evaluation .chart .box4 {
      position: absolute;
      width: 350px; }
      body.research-evaluation.page-research-evaluation .chart .box1 p, body.research-evaluation.page-research-evaluation .chart .box1 li,
      body.research-evaluation.page-research-evaluation .chart .box2 p,
      body.research-evaluation.page-research-evaluation .chart .box2 li,
      body.research-evaluation.page-research-evaluation .chart .box3 p,
      body.research-evaluation.page-research-evaluation .chart .box3 li,
      body.research-evaluation.page-research-evaluation .chart .box4 p,
      body.research-evaluation.page-research-evaluation .chart .box4 li {
        width: 100% !important;
        font-family: "Roboto";
        font-size: 16px;
        line-height: 20px;
        font-weight: 500;
        color: #546b85;
        margin: 0;
        padding: 0; }
        body.research-evaluation.page-research-evaluation .chart .box1 p a, body.research-evaluation.page-research-evaluation .chart .box1 li a,
        body.research-evaluation.page-research-evaluation .chart .box2 p a,
        body.research-evaluation.page-research-evaluation .chart .box2 li a,
        body.research-evaluation.page-research-evaluation .chart .box3 p a,
        body.research-evaluation.page-research-evaluation .chart .box3 li a,
        body.research-evaluation.page-research-evaluation .chart .box4 p a,
        body.research-evaluation.page-research-evaluation .chart .box4 li a {
          font-weight: 700;
          color: #546B85 !important;
          text-decoration: none !important; }
      body.research-evaluation.page-research-evaluation .chart .box1 ul,
      body.research-evaluation.page-research-evaluation .chart .box2 ul,
      body.research-evaluation.page-research-evaluation .chart .box3 ul,
      body.research-evaluation.page-research-evaluation .chart .box4 ul {
        margin: 0;
        padding: 0; }
        body.research-evaluation.page-research-evaluation .chart .box1 ul li,
        body.research-evaluation.page-research-evaluation .chart .box2 ul li,
        body.research-evaluation.page-research-evaluation .chart .box3 ul li,
        body.research-evaluation.page-research-evaluation .chart .box4 ul li {
          list-style: none;
          background: url("../images/r&e-bullet.png") no-repeat 0 2px;
          margin: 0 0 18px 0;
          padding: 0 0 0 20px; }
      body.research-evaluation.page-research-evaluation .chart .box1 a.btn,
      body.research-evaluation.page-research-evaluation .chart .box2 a.btn,
      body.research-evaluation.page-research-evaluation .chart .box3 a.btn,
      body.research-evaluation.page-research-evaluation .chart .box4 a.btn {
        display: inline-block !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        color: #fff !important;
        background-color: #5a799c !important;
        border-radius: 6px !important;
        margin: 12px 0 0 0 !important;
        padding: 6px 16px !important; }
    body.research-evaluation.page-research-evaluation .chart .box1 {
      top: 190px;
      left: 48px;
      height: 300px; }
    body.research-evaluation.page-research-evaluation .chart .box2 {
      top: 580px;
      left: 48px;
      height: 375px; }
    body.research-evaluation.page-research-evaluation .chart .box3 {
      top: 185px;
      left: 595px;
      height: 335px; }
    body.research-evaluation.page-research-evaluation .chart .box4 {
      top: 615px;
      left: 595px;
      height: 225px; }
  @media screen and (max-width: 1040px) {
    body.research-evaluation.page-research-evaluation {
      /* first reset all that stylization */ }
      body.research-evaluation.page-research-evaluation .chart {
        width: auto;
        height: auto;
        background: none;
        /* next reset to defaults */ }
        body.research-evaluation.page-research-evaluation .chart .sr-only {
          position: relative;
          width: auto;
          height: auto;
          margin: 0;
          padding: 0;
          overflow: auto; }
        body.research-evaluation.page-research-evaluation .chart .box1,
        body.research-evaluation.page-research-evaluation .chart .box2,
        body.research-evaluation.page-research-evaluation .chart .box3,
        body.research-evaluation.page-research-evaluation .chart .box4 {
          position: relative;
          top: 0;
          left: 0;
          width: auto;
          height: auto; }
        body.research-evaluation.page-research-evaluation .chart h3 {
          font-family: "Roboto" !important;
          font-size: 22px !important;
          line-height: 30px !important;
          font-weight: 400 !important;
          color: #546b85 !important;
          margin: 0 0 15px 0 !important;
          padding: 0 !important; }
        body.research-evaluation.page-research-evaluation .chart h4 {
          font-style: normal;
          font-family: "Roboto" !important;
          font-size: 18px !important;
          line-height: 25px !important;
          font-weight: 400 !important;
          color: #546b85 !important;
          margin: 0 0 15px 0 !important;
          padding: 0 !important; }
        body.research-evaluation.page-research-evaluation .chart p, body.research-evaluation.page-research-evaluation .chart li {
          font-family: "Roboto" !important;
          font-size: 16px !important;
          line-height: 24px !important;
          font-weight: 300 !important;
          color: #546b85 !important;
          margin: 0 0 15px 0 !important;
          padding: 0 !important; }
        body.research-evaluation.page-research-evaluation .chart ul {
          margin: 0 0 0 20px !important;
          padding: 0 !important; }
          body.research-evaluation.page-research-evaluation .chart ul li {
            background: url("../images/r&e-bullet.png") no-repeat 0 4px;
            margin: 0 0 18px 0 !important;
            padding: 0 0 0 20px !important; } }

/* Research & Evaluation / What We Do Subpages
-------------------------------------------------------------------- */
body.page-template-research-evaluation #main_content_wrap #content p {
  width: 100%; }

body.page-template-research-evaluation #content {
  position: relative; }
  body.page-template-research-evaluation #content .content {
    margin-right: 270px;
    /* two col portion at bottom */
    /* info box */ }
    body.page-template-research-evaluation #content .content h2 {
      font-size: 28px;
      line-height: 32px;
      font-weight: 300;
      margin: 0 0 15px 0;
      padding: 0; }
    body.page-template-research-evaluation #content .content p.intro {
      font-size: 19px;
      line-height: 26px;
      font-weight: 500;
      font-style: italic;
      color: #6EA9ED;
      border-bottom: 1px solid #ABC1DA;
      margin: 0 0 30px 0;
      padding: 0 0 18px 0; }
    body.page-template-research-evaluation #content .content h3 {
      font-family: "Roboto Slab";
      font-size: 24px;
      line-height: 30px;
      font-weight: 300;
      border-top: 1px solid #ABC1DA;
      margin: 25px 0 30px 0;
      padding: 25px 0 0 0; }
    body.page-template-research-evaluation #content .content .two-col {
      margin: 0;
      padding: 0 0 0 200px; }
      body.page-template-research-evaluation #content .content .two-col h4 {
        float: left;
        width: 150px;
        font-size: 18px;
        line-height: 24px;
        font-weight: 500;
        color: #51AF46;
        margin: 0 0 0 -200px;
        padding: 0; }
      body.page-template-research-evaluation #content .content .two-col p {
        margin-bottom: 30px; }
    body.page-template-research-evaluation #content .content .info {
      position: absolute;
      top: 45px;
      right: 0;
      width: 230px;
      height: auto;
      background-color: #EEF2F7;
      text-align: center;
      border-radius: 6px;
      margin: 0;
      padding: 85px 30px 20px 30px; }
      body.page-template-research-evaluation #content .content .info::before {
        content: "";
        display: inline-block;
        position: absolute;
        top: -45px;
        left: 54px;
        width: 119px;
        height: 119px;
        background-image: url("../images/icon-more-info-i.png");
        background-repeat: no-repeat; }
      body.page-template-research-evaluation #content .content .info a {
        display: block; }
        body.page-template-research-evaluation #content .content .info a.btn {
          display: inline-block; }
      body.page-template-research-evaluation #content .content .info p {
        font-size: 18px;
        line-height: 24px;
        font-weight: 700;
        color: #819AB6;
        margin: 0 0 10px 0;
        padding: 0; }
        body.page-template-research-evaluation #content .content .info p a {
          display: block;
          color: #1669c9;
          text-decoration: none !important;
          padding: 0; }
          body.page-template-research-evaluation #content .content .info p a.btn {
            display: inline-block;
            background-color: #5A799C;
            font-size: 15px;
            line-height: 18px;
            font-weight: 700;
            color: #fff;
            border-radius: 3px;
            padding: 8px 16px; }
        body.page-template-research-evaluation #content .content .info p:last-child {
          margin-bottom: 0; }
  @media screen and (max-width: 800px) {
    body.page-template-research-evaluation #content .content {
      margin-right: 0; }
      body.page-template-research-evaluation #content .content .info {
        position: relative;
        top: 0;
        width: 100%;
        text-align: left;
        margin: 30px 0;
        padding: 20px; }
        body.page-template-research-evaluation #content .content .info::before {
          background-image: none; }
        body.page-template-research-evaluation #content .content .info a {
          display: inline; }
          body.page-template-research-evaluation #content .content .info a.btn {
            max-width: 200px;
            display: block;
            text-align: center;
            margin: 0 auto; } }
  @media screen and (max-width: 600px) {
    body.page-template-research-evaluation #content .content .two-col {
      padding-left: 0; }
      body.page-template-research-evaluation #content .content .two-col h4 {
        float: none;
        width: auto;
        margin: 0 0 15px 0; } }

/* Research & Evaluation / How We Can Help
-------------------------------------------------------------------- */
body.page-template-re-how-page #main_content_wrap .accordion {
  margin-top: 15px; }
  body.page-template-re-how-page #main_content_wrap .accordion .accordion-item {
    border-bottom: 1px solid #ABC1DA;
    margin: 0;
    padding: 20px 0 18px 0; }
    body.page-template-re-how-page #main_content_wrap .accordion .accordion-item:first-child {
      padding-top: 0; }
    body.page-template-re-how-page #main_content_wrap .accordion .accordion-item:last-child {
      border: none; }
    body.page-template-re-how-page #main_content_wrap .accordion .accordion-item h3.showhide {
      cursor: pointer;
      font-size: 22px;
      line-height: 28px;
      font-weight: 700;
      letter-spacing: .5px;
      color: #6EA9ED;
      background: url("../images/icon-plus-blue.png") no-repeat 0 0;
      margin: 0 0 5px 0;
      padding: 0 0 0 35px; }
      body.page-template-re-how-page #main_content_wrap .accordion .accordion-item h3.showhide.arrowClose {
        background: url("../images/icon-minus-blue.png") no-repeat 0 0; }
    body.page-template-re-how-page #main_content_wrap .accordion .accordion-item .showhide-child {
      display: none;
      margin: 0 0 5px 50px;
      padding: 0; }
    body.page-template-re-how-page #main_content_wrap .accordion .accordion-item .inner-content {
      margin: 0;
      padding: 10px 0 10px 35px; }
    body.page-template-re-how-page #main_content_wrap .accordion .accordion-item .l-block {
      float: left;
      width: 55%; }
    body.page-template-re-how-page #main_content_wrap .accordion .accordion-item .r-block {
      float: right;
      width: 40%; }
    body.page-template-re-how-page #main_content_wrap .accordion .accordion-item .desc {
      margin: 0;
      padding: 0; }
      body.page-template-re-how-page #main_content_wrap .accordion .accordion-item .desc p {
        width: 100% !important;
        margin: 0 0 15px 0;
        padding: 0; }
    body.page-template-re-how-page #main_content_wrap .accordion .accordion-item .contact {
      max-width: 530px;
      height: 98px;
      position: relative;
      background-color: #EEF2F7;
      border-radius: 6px;
      margin: 30px 0 20px 25px;
      padding: 15px 15px 15px 75px; }
      body.page-template-re-how-page #main_content_wrap .accordion .accordion-item .contact::before {
        content: "";
        display: inline-block;
        position: absolute;
        top: -1px;
        left: -40px;
        width: 100px;
        height: 100px;
        background-image: url("../images/icon-more-info-i-sm.png");
        background-repeat: no-repeat; }
      body.page-template-re-how-page #main_content_wrap .accordion .accordion-item .contact p {
        width: 100% !important;
        font-size: 15px;
        line-height: 22px;
        font-weight: 700;
        color: #819AB6;
        margin: 0;
        padding: 0; }
        body.page-template-re-how-page #main_content_wrap .accordion .accordion-item .contact p a {
          text-decoration: none; }
    body.page-template-re-how-page #main_content_wrap .accordion .accordion-item blockquote {
      background: url("../images/icon-quote-green.png") no-repeat top left;
      margin: -10px 0 0 0;
      padding: 0; }
      body.page-template-re-how-page #main_content_wrap .accordion .accordion-item blockquote p {
        width: 100% !important;
        font-size: 16px;
        line-height: 30px;
        font-weight: 700;
        color: #51AF46;
        margin: 0;
        padding: 30px 30px 20px 30px; }
        body.page-template-re-how-page #main_content_wrap .accordion .accordion-item blockquote p:after {
          content: '"'; }
      body.page-template-re-how-page #main_content_wrap .accordion .accordion-item blockquote cite {
        display: block;
        font-size: 14px;
        line-height: 20px;
        font-weight: 700;
        color: #819AB6;
        margin: 0 0 0 60px;
        padding: 0; }
        body.page-template-re-how-page #main_content_wrap .accordion .accordion-item blockquote cite:before {
          content: '\2014 '; }

@media screen and (max-width: 1020px) {
  body.page-template-re-how-page #main_content_wrap .accordion .accordion-item .contact {
    width: 100%;
    background-color: transparent;
    margin: 40px 0 0 0;
    padding: 0; }
    body.page-template-re-how-page #main_content_wrap .accordion .accordion-item .contact::before {
      background: none; } }

@media screen and (max-width: 900px) {
  body.page-template-re-how-page #main_content_wrap .accordion .accordion-item .l-block,
  body.page-template-re-how-page #main_content_wrap .accordion .accordion-item .r-block {
    float: none;
    width: 100%; }
  body.page-template-re-how-page #main_content_wrap .accordion .accordion-item blockquote {
    margin-top: 30px; } }

/* Research & Evaluation / Reports & Publications
-------------------------------------------------------------------- */
body.page-template-re-reports_pub-page .search-results div.search {
  float: left;
  width: 25%; }
  body.page-template-re-reports_pub-page .search-results div.search h2 {
    clear: both;
    font-size: 14px;
    line-height: 20px;
    font-weight: 700;
    color: #546B85;
    text-transform: uppercase;
    margin: 0 0 15px 0;
    padding: 0; }
  body.page-template-re-reports_pub-page .search-results div.search hr {
    border: none;
    margin: 40px 0; }
  body.page-template-re-reports_pub-page .search-results div.search ul {
    margin: 0;
    padding: 0; }
    body.page-template-re-reports_pub-page .search-results div.search ul li {
      clear: left;
      position: relative;
      font-size: 14px;
      line-height: 19px;
      font-weight: 400;
      list-style: none;
      position: relative;
      margin: 0 0 12px 0;
      padding: 0; }
      body.page-template-re-reports_pub-page .search-results div.search ul li input[type="checkbox"] {
        display: inline-block;
        width: auto;
        vertical-align: top;
        -webkit-appearance: none;
        box-shadow: none;
        border: 1px solid #819AB6;
        border-radius: 2px;
        background-color: #E3ECF9;
        margin: 1px 8px 0 0;
        padding: 7px; }
      body.page-template-re-reports_pub-page .search-results div.search ul li [type="checkbox"]:checked + label:before {
        content: 'X';
        position: absolute;
        top: 4px;
        left: 4px;
        font-size: 14px;
        line-height: 0.8;
        color: #1669C9;
        transition: all .2s;
        font-weight: 500; }
      body.page-template-re-reports_pub-page .search-results div.search ul li label {
        cursor: pointer;
        display: inline-block;
        width: 190px;
        font-size: 14px;
        font-weight: 300;
        color: #3F648F;
        margin: 0; }
        body.page-template-re-reports_pub-page .search-results div.search ul li label:hover {
          opacity: .75; }
  body.page-template-re-reports_pub-page .search-results div.search input[type="submit"] {
    float: left;
    border-radius: 4px;
    background: #5A799C;
    text-transform: initial;
    font-size: 15px;
    letter-spacing: .4px;
    margin: 15px 0 0 0;
    padding: 6px 16px; }
    body.page-template-re-reports_pub-page .search-results div.search input[type="submit"]:hover {
      opacity: .75; }

body.page-template-re-reports_pub-page .search-results .results {
  float: right;
  width: 70%;
  margin: 0;
  padding: 0; }
  body.page-template-re-reports_pub-page .search-results .results ul {
    margin: 0;
    padding: 0; }
    body.page-template-re-reports_pub-page .search-results .results ul li {
      list-style: none;
      margin: 0 0 40px 0;
      padding: 0; }
      body.page-template-re-reports_pub-page .search-results .results ul li a.thumbnail {
        float: left;
        width: 15%;
        min-width: 130px;
        display: block;
        margin: 0;
        padding: 5px 0 0 0; }
        body.page-template-re-reports_pub-page .search-results .results ul li a.thumbnail img {
          box-shadow: 6px 6px 10px rgba(0, 0, 0, 0.15); }
      body.page-template-re-reports_pub-page .search-results .results ul li .fpost_content {
        float: right;
        width: 80%;
        margin: 0;
        padding: 0; }
        body.page-template-re-reports_pub-page .search-results .results ul li .fpost_content h3 {
          font-size: 17px;
          line-height: 22px;
          font-weight: 700;
          color: #1669c9;
          margin: 0 0 10px 0;
          padding: 0; }
          body.page-template-re-reports_pub-page .search-results .results ul li .fpost_content h3 a {
            text-decoration: none; }
        body.page-template-re-reports_pub-page .search-results .results ul li .fpost_content p {
          width: 100% !important; }
  body.page-template-re-reports_pub-page .search-results .results p.criteria {
    margin: 0 0 20px 0;
    padding: 0; }
  body.page-template-re-reports_pub-page .search-results .results .pagination {
    text-align: center;
    margin: 35px 0 10px 0;
    padding: 0; }
    body.page-template-re-reports_pub-page .search-results .results .pagination a {
      display: inline-block;
      color: #1669c9;
      text-decoration: none;
      font-size: 14px;
      font-weight: 400;
      margin: 0 6px;
      vertical-align: middle; }
      body.page-template-re-reports_pub-page .search-results .results .pagination a.prev, body.page-template-re-reports_pub-page .search-results .results .pagination a.next {
        text-indent: -9999px;
        display: inline-block;
        width: 12px;
        height: 15px; }
      body.page-template-re-reports_pub-page .search-results .results .pagination a.prev {
        background: url(../images/icon-arrow-left-purple.png) no-repeat 0 0; }
      body.page-template-re-reports_pub-page .search-results .results .pagination a.next {
        background: url(../images/icon-arrow-right-purple.png) no-repeat 0 0; }
    body.page-template-re-reports_pub-page .search-results .results .pagination span.current {
      display: inline-block;
      border: 1px solid #b4b1a6;
      background-color: #eef2f7;
      padding: 2px 6px;
      font-size: 14px;
      font-weight: 400;
      margin: 0 6px;
      vertical-align: middle; }

@media screen and (max-width: 990px) {
  body.page-template-re-reports_pub-page .search-results div.search,
  body.page-template-re-reports_pub-page .search-results .results {
    clear: both;
    float: none;
    width: 100%; }
    body.page-template-re-reports_pub-page .search-results div.search input[type=submit],
    body.page-template-re-reports_pub-page .search-results .results input[type=submit] {
      float: none; }
    body.page-template-re-reports_pub-page .search-results div.search hr,
    body.page-template-re-reports_pub-page .search-results .results hr {
      margin: 15px 0; }
  body.page-template-re-reports_pub-page .search-results .results {
    margin-top: 30px; } }

@media screen and (max-width: 720px) {
  body.page-template-re-reports_pub-page .search-results .results {
    float: none;
    width: 100%; }
    body.page-template-re-reports_pub-page .search-results .results ul li .fpost_content {
      float: none;
      width: 100%; } }

/* Research & Evaluation / WestEd Insights
-------------------------------------------------------------------- */
body.page-template-re-research_blog-page .blog ul {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 30px;
  margin: 0;
  padding: 0; }
  body.page-template-re-research_blog-page .blog ul li {
    width: 100%;
    float: left;
    list-style: none;
    margin: 0 0 20px 0;
    padding: 0; }
    body.page-template-re-research_blog-page .blog ul li a.thumbnail {
      float: left;
      width: 20%;
      min-width: 170px;
      max-width: 170px;
      display: block;
      margin: 0 20px 0 0;
      padding: 0; }
      body.page-template-re-research_blog-page .blog ul li a.thumbnail img {
        width: 100%; }
    body.page-template-re-research_blog-page .blog ul li .fpost_content {
      float: left;
      width: 55%;
      margin: 0;
      padding: 0; }
      body.page-template-re-research_blog-page .blog ul li .fpost_content p.post_date {
        font-size: 13px !important;
        line-height: 18px !important;
        font-weight: 700 !important;
        color: #6EA9ED !important;
        text-transform: uppercase !important;
        letter-spacing: 1px !important;
        margin: 0 0 5px 0 !important;
        padding: 0 !important; }
      body.page-template-re-research_blog-page .blog ul li .fpost_content h3 {
        font-size: 17px;
        line-height: 22px;
        font-weight: 700;
        color: #1669c9;
        margin: 0 0 10px 0;
        padding: 0; }
        body.page-template-re-research_blog-page .blog ul li .fpost_content h3 a {
          text-decoration: none; }
      body.page-template-re-research_blog-page .blog ul li .fpost_content p {
        width: 100% !important; }

body.page-template-re-research_blog-page .blog .pagination {
  text-align: center;
  margin: 0 0 10px 0;
  padding: 0; }
  body.page-template-re-research_blog-page .blog .pagination a {
    display: inline-block;
    color: #1669c9;
    text-decoration: none;
    font-size: 14px;
    font-weight: 400;
    margin: 0 6px;
    vertical-align: middle; }
    body.page-template-re-research_blog-page .blog .pagination a.prev, body.page-template-re-research_blog-page .blog .pagination a.next {
      text-indent: -9999px;
      display: inline-block;
      width: 12px;
      height: 15px; }
    body.page-template-re-research_blog-page .blog .pagination a.prev {
      background: url(../images/icon-arrow-left-purple.png) no-repeat 0 0; }
    body.page-template-re-research_blog-page .blog .pagination a.next {
      background: url(../images/icon-arrow-right-purple.png) no-repeat 0 0; }
  body.page-template-re-research_blog-page .blog .pagination span.current {
    display: inline-block;
    border: 1px solid #b4b1a6;
    background-color: #eef2f7;
    padding: 2px 6px;
    font-size: 14px;
    font-weight: 400;
    margin: 0 6px;
    vertical-align: middle; }

@media screen and (max-width: 985px) {
  body.page-template-re-research_blog-page .blog ul {
    grid-template-columns: 1fr; } }

@media screen and (max-width: 476px) {
  body.page-template-re-research_blog-page .blog ul li a.thumbnail {
    float: none;
    width: 100%; }
  body.page-template-re-research_blog-page .blog ul li .fpost_content {
    float: none;
    width: 100%;
    margin-top: 20px; } }

/*

Professional Development & Technical Assistance note: these used to be one page with the body class "plta", and have styling that still lives in plta.scss and /css/servicelist.css

*/
/* Professional Development
-------------------------------------------------------------------- */
body.professional-development {
  /* Featured */
  /* filters */
  /* sort bar */
  /* entries */
  /* pagination */ }
  body.professional-development #main_content_wrap {
    max-width: none;
    padding: 0; }
    body.professional-development #main_content_wrap #content .wrap {
      max-width: 1040px;
      margin: 0 auto;
      padding: 40px 20px; }
      body.professional-development #main_content_wrap #content .wrap h2 {
        border-bottom: 1px solid #ABC1DA;
        margin: 0 0 20px 0;
        padding: 0 0 12px 0; }
  body.professional-development #featured-content {
    background-color: #E3ECF9;
    margin: 0;
    padding: 0; }
    body.professional-development #featured-content .container {
      max-width: 1040px;
      margin: 0 auto;
      padding: 30px 20px 10px 20px; }
    body.professional-development #featured-content .bx-wrapper .bx-pager {
      padding: 0; }
  body.professional-development .service-filters {
    float: left;
    width: 25%;
    margin: 0;
    padding: 0; }
    body.professional-development .service-filters input[type="text"] {
      height: 33px !important;
      border: none !important;
      border-radius: 4px !important;
      background: none !important;
      background-color: #E3ECF9 !important;
      font-size: 14px !important;
      line-height: 18px !important;
      font-weight: 700 !important;
      color: #3F648F !important;
      box-shadow: none !important;
      margin: 0 !important;
      padding: 4px 12px !important; }
    body.professional-development .service-filters h3 {
      font-size: 15px;
      line-height: 18px;
      font-weight: 700;
      color: #3F648F;
      text-transform: uppercase;
      margin: 0 0 12px 0;
      padding: 0; }
    body.professional-development .service-filters .facetwp-checkbox {
      font-size: 14px;
      line-height: 18px;
      font-weight: 400;
      background-position: 0 3px;
      padding-bottom: 10px; }
    body.professional-development .service-filters .facetwp-facet {
      margin: 0 0 40px 0;
      padding: 0; }
  body.professional-development .result-sort-bar {
    float: right;
    width: 70%;
    margin: 0 0 20px 0;
    padding: 0; }
    body.professional-development .result-sort-bar .facetwp-counts {
      text-align: right;
      font-style: italic;
      margin: 0;
      padding: 0; }
    body.professional-development .result-sort-bar .facetwp-selections {
      margin: 15px 0 0 0;
      padding: 0; }
      body.professional-development .result-sort-bar .facetwp-selections .facetwp-selection-label {
        display: none; }
      body.professional-development .result-sort-bar .facetwp-selections .facetwp-selection-value {
        color: #fff;
        padding: 7px 30px 7px 15px;
        margin-bottom: 10px;
        border-radius: 30px;
        background-color: #3F648F;
        background-position: right 10px center;
        background-image: url("../images/pd-icon-close.png"); }
  body.professional-development #main_content_wrap .service-entries {
    float: right;
    width: 70%;
    margin: 0;
    padding: 0; }
    body.professional-development #main_content_wrap .service-entries .service-item {
      border: 1px solid #6EA9ED;
      margin: 0 0 30px 0;
      padding: 20px; }
      body.professional-development #main_content_wrap .service-entries .service-item .item-main {
        float: none;
        width: 100%;
        margin: 0;
        padding: 0; }
    body.professional-development #main_content_wrap .service-entries h3 {
      font-size: 23px;
      line-height: 27px;
      font-weight: 400;
      margin: 0 0 20px 0;
      padding: 0; }
      body.professional-development #main_content_wrap .service-entries h3 a {
        text-decoration: none; }
    body.professional-development #main_content_wrap .service-entries p {
      width: 100% !important;
      margin: 0;
      padding: 0; }
      body.professional-development #main_content_wrap .service-entries p.terms {
        font-size: 14px;
        line-height: 16px;
        font-weight: 400;
        color: #6EA9ED;
        text-transform: uppercase;
        margin-top: 12px; }
  body.professional-development .facetwp-pager {
    width: 70%;
    float: right;
    clear: both;
    text-align: center;
    margin: 0 0 40px 0;
    padding: 0; }
    body.professional-development .facetwp-pager a {
      font-size: 16px;
      font-weight: 400;
      vertical-align: middle;
      color: #1669c9; }
    body.professional-development .facetwp-pager a.active {
      border: 1px solid #b4b1a6;
      background-color: #EEF2F7;
      padding: 2px 8px; }
  @media screen and (max-width: 850px) {
    body.professional-development .service-filters,
    body.professional-development .result-sort-bar,
    body.professional-development .service-entries {
      float: none;
      width: 100%; } }

/* Technical Assistance
-------------------------------------------------------------------- */
body.technical-assistance {
  /* content */ }
  body.technical-assistance #main_content_wrap .bottom h2 {
    border-bottom: 1px solid #ABC1DA;
    margin: 0 0 25px 0;
    padding: 0 0 7px 0; }
  body.technical-assistance #main_content_wrap .filter {
    float: left;
    width: 25%;
    padding: 0; }
    body.technical-assistance #main_content_wrap .filter h2 {
      border: none;
      margin: 0 0 15px 0;
      padding: 0; }
  body.technical-assistance #main_content_wrap .plta-list {
    float: right;
    width: 75%;
    padding: 0; }
  body.technical-assistance #main_content_wrap #pagination {
    text-align: center;
    margin: 35px 0 10px 0;
    padding: 0; }
    body.technical-assistance #main_content_wrap #pagination li {
      margin: 0 5px 0 5px; }
      body.technical-assistance #main_content_wrap #pagination li a {
        color: #1669c9;
        vertical-align: middle; }
        body.technical-assistance #main_content_wrap #pagination li a.beginning, body.technical-assistance #main_content_wrap #pagination li a.ending {
          text-indent: -9999px;
          display: inline-block;
          width: 12px;
          height: 15px; }
        body.technical-assistance #main_content_wrap #pagination li a.beginning {
          background: url(../images/icon-arrow-left-purple.png) no-repeat 0 0; }
        body.technical-assistance #main_content_wrap #pagination li a.ending {
          background: url(../images/icon-arrow-right-purple.png) no-repeat 0 0; }
        body.technical-assistance #main_content_wrap #pagination li a.active {
          border-radius: 0;
          border-color: #b4b1a6;
          background-color: #EEF2F7; }
  @media screen and (max-width: 930px) {
    body.technical-assistance .featured_fw .featured_content {
      float: none;
      width: 100%; } }
  @media screen and (max-width: 850px) {
    body.technical-assistance .filter, body.technical-assistance .plta-list {
      float: none !important;
      width: 100% !important; } }

body.page-template-technical-assistance-child #main_content_wrap:before, body.page-template-technical-assistance-child #main_content_wrap:after {
  content: "";
  display: table; }

body.page-template-technical-assistance-child #main_content_wrap:after {
  clear: both; }

body.page-template-technical-assistance-child .page-content ul {
  margin: 20px 0 20px 40px; }

/* Service Detail
-------------------------------------------------------------------- */
body.single-service {
  /* Quote */
  /* content */
  /* sidebar */ }
  body.single-service #content {
    width: 73%; }
  body.single-service .featured_fw blockquote {
    min-height: 100px;
    background: url("../images/icon-quote-white.png") no-repeat 0 0;
    margin: 0;
    padding: 0; }
    body.single-service .featured_fw blockquote p {
      font-size: 16px;
      line-height: 26px;
      font-weight: 500;
      color: #3F648F;
      margin: 0;
      padding: 10px 0 0 165px; }
      body.single-service .featured_fw blockquote p:after {
        content: "\201D"; }
    body.single-service .featured_fw blockquote cite {
      display: block;
      font-size: 14px;
      line-height: 18px;
      font-weight: 500;
      color: #819AB6;
      margin: 0;
      padding: 15px 0 0 225px; }
      body.single-service .featured_fw blockquote cite:before {
        content: "\2013\00a0"; }
  body.single-service .entry-content {
    padding-left: 200px !important;
    /* Call to Action */ }
    body.single-service .entry-content h2 {
      float: left;
      width: 150px;
      font-family: "Roboto";
      font-size: 22px;
      line-height: 28px;
      font-weight: 500;
      color: #51AF46;
      border: none;
      margin: 0 0 0 -200px;
      padding: 0; }
    body.single-service .entry-content h3 {
      font-family: "Roboto";
      font-size: 20px;
      line-height: 26px;
      font-weight: 600;
      color: #546B85;
      margin: 0 0 10px 0;
      padding: 0; }
    body.single-service .entry-content ul {
      margin-left: 25px; }
      body.single-service .entry-content ul li {
        margin-left: 0; }
    body.single-service .entry-content .brochure {
      margin: 0 0 30px 0;
      padding: 0; }
      body.single-service .entry-content .brochure:before, body.single-service .entry-content .brochure:after {
        content: "";
        display: table; }
      body.single-service .entry-content .brochure:after {
        clear: both; }
      body.single-service .entry-content .brochure a.thumb {
        float: left;
        border: 1px solid red; }
    body.single-service .entry-content .showhide-container {
      margin: 0 0 30px 0;
      padding: 0; }
      body.single-service .entry-content .showhide-container .showhide {
        line-height: 22px; }
    body.single-service .entry-content .showhide:first-of-type {
      margin-top: 25px; }
    body.single-service .entry-content .cta {
      margin: 20px 0 0 0;
      padding: 0; }
      body.single-service .entry-content .cta p {
        font-size: 14px;
        line-height: 20px;
        font-weight: 700;
        color: #40545f;
        margin: 0;
        padding: 0; }
        body.single-service .entry-content .cta p strong {
          color: #568bb7; }
  body.single-service #sidebar {
    max-width: 230px; }
    body.single-service #sidebar #sidebar_sidebar_contact {
      position: relative;
      overflow: visible;
      border: none;
      background-color: #EEF2F7;
      border-radius: 6px;
      text-align: center;
      margin: 35px 0 0 0;
      padding: 75px 30px 20px 30px;
      /* name */
      /* phone */ }
      body.single-service #sidebar #sidebar_sidebar_contact::before {
        content: "";
        display: inline-block;
        position: absolute;
        top: -45px;
        left: 54px;
        width: 119px;
        height: 119px;
        background-image: url("../images/icon-more-info-i.png");
        background-repeat: no-repeat; }
      body.single-service #sidebar #sidebar_sidebar_contact .contactInfo {
        border: none;
        margin: 0;
        padding: 0; }
        body.single-service #sidebar #sidebar_sidebar_contact .contactInfo .contact_name {
          display: block;
          margin: 10px 0 5px 0;
          padding: 0; }
          body.single-service #sidebar #sidebar_sidebar_contact .contactInfo .contact_name a {
            font-size: 18px;
            font-weight: 500; }
      body.single-service #sidebar #sidebar_sidebar_contact .phone-fax-container {
        border: none;
        margin: 0;
        padding: 0; }
        body.single-service #sidebar #sidebar_sidebar_contact .phone-fax-container .phone {
          float: none;
          display: block;
          font-size: 18px;
          font-weight: 500;
          color: #819AB6 !important;
          margin: 0;
          padding: 0; }
        body.single-service #sidebar #sidebar_sidebar_contact .phone-fax-container .email {
          float: none !important;
          display: block;
          margin: 0 0 15px 0; }
          body.single-service #sidebar #sidebar_sidebar_contact .phone-fax-container .email .icon {
            display: none !important; }
          body.single-service #sidebar #sidebar_sidebar_contact .phone-fax-container .email a {
            display: block;
            border-radius: 6px;
            padding: 5px 10px 5px 10px; }
  @media screen and (max-width: 950px) {
    body.single-service #content {
      float: none;
      width: 100%;
      max-width: none; }
    body.single-service #sidebar {
      float: left;
      max-width: none; }
      body.single-service #sidebar #sidebar_sidebar_contact {
        margin-top: 40px;
        padding: 20px; }
        body.single-service #sidebar #sidebar_sidebar_contact:before {
          background-image: none; }
      body.single-service #sidebar .email a {
        display: inline-block !important; } }
  @media screen and (max-width: 600px) {
    body.single-service .entry-content {
      padding-left: 0 !important; }
      body.single-service .entry-content h2 {
        float: none;
        width: 100%;
        margin-left: 0;
        margin-bottom: 15px; }
    body.single-service .featured_fw blockquote {
      background: none; }
      body.single-service .featured_fw blockquote p {
        padding: 0; }
        body.single-service .featured_fw blockquote p:before {
          content: "\201C"; }
      body.single-service .featured_fw blockquote cite {
        padding: 15px 0 0 50px; } }

/* Resources / Home
-------------------------------------------------------------------- */
body.woocommerce {
  /* rows */ }
  body.woocommerce .bookstore_row {
    margin: 10px 0 !important;
    padding: 20px 0 40px 0 !important;
    /* section names */
    /* products */ }
    body.woocommerce .bookstore_row:first-child {
      margin-top: 0 !important;
      padding-top: 0 !important; }
    body.woocommerce .bookstore_row:last-child {
      border: none !important;
      margin-bottom: 0 !important;
      padding-bottom: 0 !important; }
    body.woocommerce .bookstore_row .heading_bar {
      background-image: none;
      height: 40px;
      margin: 0 0 20px 0;
      padding: 0; }
      body.woocommerce .bookstore_row .heading_bar h4 {
        font-family: "Roboto Slab" !important;
        font-size: 28px !important;
        line-height: 40px !important;
        font-weight: 300 !important;
        color: #51AF46 !important;
        text-transform: none !important;
        margin: 0 !important;
        padding: 0 !important; }
    body.woocommerce .bookstore_row p.view-more {
      width: 100% !important;
      text-align: center;
      margin: 15px 0 0 0;
      padding: 0; }
      body.woocommerce .bookstore_row p.view-more:before, body.woocommerce .bookstore_row p.view-more:after {
        content: "";
        display: table; }
      body.woocommerce .bookstore_row p.view-more:after {
        clear: both; }
      body.woocommerce .bookstore_row p.view-more a {
        font-size: 15px !important;
        font-weight: 500 !important;
        color: #fff !important;
        background-color: #5a799c !important;
        border-radius: 6px !important;
        border: none !important;
        text-decoration: none !important;
        margin: 12px 0 !important;
        padding: 8px 16px 8px 16px !important; }
        body.woocommerce .bookstore_row p.view-more a:hover {
          opacity: .75; }
    body.woocommerce .bookstore_row ul.products {
      display: grid;
      grid-template-columns: 1fr 1fr;
      grid-gap: 30px;
      margin: 0;
      padding: 0; }
      @supports not (display: grid) {
        body.woocommerce .bookstore_row ul.products {
          content: "";
          display: table;
          clear: both; } }
      body.woocommerce .bookstore_row ul.products::before {
        display: initial !important;
        content: unset !important; }
      body.woocommerce .bookstore_row ul.products::after {
        display: initial !important;
        content: unset !important; }
      body.woocommerce .bookstore_row ul.products li {
        width: 100%;
        height: auto;
        min-height: 0;
        background-color: #EEF2F7;
        border-radius: 8px;
        margin: 0 0 20px 0;
        padding: 25px; }
        @supports not (display: grid) {
          body.woocommerce .bookstore_row ul.products li {
            float: left;
            width: 50%; }
            body.woocommerce .bookstore_row ul.products li:first-child {
              float: left;
              width: 48%; }
            body.woocommerce .bookstore_row ul.products li:last-child {
              float: right;
              width: 48%; } }
        body.woocommerce .bookstore_row ul.products li div.img {
          float: left;
          width: 25%;
          min-width: 165px;
          max-width: 165px;
          height: auto;
          min-height: 0;
          margin: 0 30px 0 0;
          padding: 0; }
          body.woocommerce .bookstore_row ul.products li div.img .thumbnail {
            width: 100% !important;
            height: auto !important;
            min-width: 0 !important;
            min-height: 0 !important;
            margin: 0 !important;
            padding: 0 !important; }
            body.woocommerce .bookstore_row ul.products li div.img .thumbnail img {
              float: none !important;
              border: none !important;
              width: 100% !important;
              box-shadow: 6px 6px 10px rgba(0, 0, 0, 0.15);
              max-width: none !important;
              max-height: none !important;
              height: auto !important; }
        body.woocommerce .bookstore_row ul.products li div.info {
          display: block;
          float: left;
          width: 54%;
          margin: 0;
          padding: 0; }
          body.woocommerce .bookstore_row ul.products li div.info h3,
          body.woocommerce .bookstore_row ul.products li div.info p.resource_description,
          body.woocommerce .bookstore_row ul.products li div.info .price {
            float: none !important;
            display: block !important;
            margin: 0;
            padding: 0; }
          body.woocommerce .bookstore_row ul.products li div.info .resource_description strong {
            display: inline; }
          body.woocommerce .bookstore_row ul.products li div.info h3, body.woocommerce .bookstore_row ul.products li div.info .resource_title {
            width: 100% !important;
            font-size: 18px;
            line-height: 24px;
            font-weight: 400;
            margin: 0 0 10px 0;
            padding: 0; }
          body.woocommerce .bookstore_row ul.products li div.info p.resource_description {
            float: none !important;
            width: 100% !important;
            font-size: 15px !important;
            line-height: 24px !important;
            font-weight: 400 !important;
            color: #3F648F !important;
            margin: 0 !important;
            padding: 0 !important; }
          body.woocommerce .bookstore_row ul.products li div.info .price, body.woocommerce .bookstore_row ul.products li div.info .btn_cta {
            display: block !important;
            float: left !important;
            width: 100px;
            height: 50px;
            font-size: 16px;
            line-height: 20px;
            font-weight: 500;
            margin: 10px 0 0 0;
            padding: 0; }
            body.woocommerce .bookstore_row ul.products li div.info .price span, body.woocommerce .bookstore_row ul.products li div.info .btn_cta span {
              position: relative;
              display: inline-block; }
            body.woocommerce .bookstore_row ul.products li div.info .price a, body.woocommerce .bookstore_row ul.products li div.info .btn_cta a {
              float: none; }
          body.woocommerce .bookstore_row ul.products li div.info .price {
            display: none !important; }
          body.woocommerce .bookstore_row ul.products li div.info .btn_cta {
            float: none !important;
            width: 100%;
            height: auto;
            margin: 10px 0 0 0 !important;
            padding: 0 !important; }
            body.woocommerce .bookstore_row ul.products li div.info .btn_cta a.button {
              opacity: .5 !important;
              overflow: visible !important;
              max-width: 150px !important;
              text-indent: 0 !important;
              display: block !important;
              width: 100% !important;
              height: auto !important;
              background: none !important;
              font-size: 15px !important;
              font-weight: 500 !important;
              color: #fff !important;
              background-color: #5a799c !important;
              border-radius: 6px !important;
              border: none !important;
              text-decoration: none !important;
              text-align: center;
              text-transform: capitalize;
              margin: 12px 0 0 0 !important;
              padding: 8px 16px 8px 16px !important; }
              body.woocommerce .bookstore_row ul.products li div.info .btn_cta a.button:hover {
                opacity: .35 !important; }
  @media screen and (max-width: 1032px) {
    body.woocommerce .bookstore_row ul.products {
      grid-template-columns: 1fr; }
      body.woocommerce .bookstore_row ul.products li div.info {
        width: 70%; } }
  @media screen and (max-width: 1020px) {
    body.woocommerce .bookstore_row .heading_bar {
      height: auto; }
      body.woocommerce .bookstore_row .heading_bar h4 {
        margin-bottom: 5px !important; }
      body.woocommerce .bookstore_row .heading_bar .icon.viewall {
        float: none;
        margin-bottom: 40px; } }
  @media screen and (max-width: 760px) {
    body.woocommerce .bookstore_row ul.products li .img {
      float: none !important;
      width: 100% !important;
      margin: 0 !important;
      padding: 0 !important; }
    body.woocommerce .bookstore_row ul.products li div.info {
      float: none !important;
      width: 100% !important;
      margin: 20px 0 0 0 !important;
      padding: 0 !important; } }

/* Resources / New Releases, Best Sellers, Top Downloads, Free, Research (and shared with AOW Resources)
-------------------------------------------------------------------- */
body.woocommerce.tax-product_cat {
  /* AOW Filter */
  /* force out of ul */ }
  body.woocommerce.tax-product_cat .aow-filter-container {
    position: absolute;
    top: 0;
    right: 30px;
    z-index: 9999;
    width: 400px;
    background-color: #E3ECF9;
    box-shadow: 4px 4px 12px rgba(0, 0, 0, 0.15);
    margin: 0;
    padding: 0; }
    body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter {
      margin: 0;
      padding: 0; }
      body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter h4 {
        cursor: pointer;
        font-size: 15px;
        line-height: 18px;
        font-weight: 600;
        color: #3F648F;
        text-transform: uppercase;
        margin: 0;
        padding: 8px 15px; }
        body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter h4 span.arrow {
          display: inline-block;
          width: 17px;
          height: 11px;
          background: url("../images/icon-arrow-down-resources-aow-filter.png") no-repeat top right;
          margin: 0 0 0 5px;
          padding: 0; }
        body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter h4.filters-closed span.arrow {
          transform: rotate(-90deg); }
      body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter .form-inner {
        margin: 0;
        padding: 0; }
        body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter .form-inner ul {
          margin: 0;
          padding: 0; }
          body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter .form-inner ul li {
            list-style: none;
            margin: 0;
            padding: 8px 15px; }
            body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter .form-inner ul li:nth-child(odd) {
              background-color: #eef3fb; }
            body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter .form-inner ul li:hover {
              opacity: .75; }
            body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter .form-inner ul li input {
              margin: 0 8px 0 0;
              padding: 0; }
            body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter .form-inner ul li label {
              cursor: pointer;
              font-size: 15px;
              line-height: 18px;
              font-weight: 600;
              color: #5A799C;
              margin: 0;
              padding: 0; }
        body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter .form-inner #aow-filter-btn-wrap {
          border-top: 6px solid #eef3fb;
          margin: 0;
          padding: 0; }
          body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter .form-inner #aow-filter-btn-wrap #aow-filter-btn {
            cursor: pointer;
            display: block;
            max-width: 150px;
            font-family: "Roboto" !important;
            font-size: 15px !important;
            line-height: 18px !important;
            font-weight: 500 !important;
            color: #fff !important;
            background-color: #5a799c !important;
            border-radius: 6px !important;
            border: none !important;
            text-decoration: none !important;
            text-align: center;
            margin: 20px auto !important;
            padding: 8px 16px 8px 16px !important; }
            body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter .form-inner #aow-filter-btn-wrap #aow-filter-btn:hover {
              opacity: .75; }
  body.woocommerce.tax-product_cat .finiteScroll {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 40px;
    display: flex;
    flex-direction: column-reverse;
    margin: 0 !important;
    padding: 0 !important; }
  body.woocommerce.tax-product_cat .page-title {
    font-family: "Roboto Slab";
    font-size: 28px !important;
    line-height: 40px !important;
    font-weight: 300 !important;
    color: #51AF46 !important;
    text-transform: none !important;
    margin: 0 0 20px 0 !important;
    padding: 0 !important; }
  body.woocommerce.tax-product_cat .bookstore_row {
    margin: 35px 0 20px 0 !important;
    padding: 0 !important; }
    body.woocommerce.tax-product_cat .bookstore_row ul.products {
      display: block; }
      body.woocommerce.tax-product_cat .bookstore_row ul.products span.product_items {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        grid-gap: 30px;
        margin: 0;
        padding: 0; }
      @supports not (display: grid) {
        body.woocommerce.tax-product_cat .bookstore_row ul.products li {
          float: left;
          width: 100%; } }
      body.woocommerce.tax-product_cat .bookstore_row ul.products li div.img {
        float: none;
        width: 100%;
        min-width: none;
        max-width: 165px;
        margin: 0 auto;
        padding: 0; }
      body.woocommerce.tax-product_cat .bookstore_row ul.products li div.info {
        float: none;
        width: 100%;
        margin: 20px 0 0 0;
        padding: 0; }
        body.woocommerce.tax-product_cat .bookstore_row ul.products li div.info .btn_cta a.button {
          margin-bottom: 0 !important; }
  @media screen and (max-width: 990px) {
    body.woocommerce.tax-product_cat .bookstore_row ul.products span.product_items {
      grid-template-columns: 1fr 1fr; } }
  @media screen and (max-width: 770px) {
    body.woocommerce.tax-product_cat .bookstore_row ul.products span.product_items {
      grid-template-columns: 1fr; }
    body.woocommerce.tax-product_cat .bookstore_row ul.products li div.img {
      margin: 0; }
    body.woocommerce.tax-product_cat .aow-filter-container {
      position: relative;
      right: 0;
      width: 100%; }
      body.woocommerce.tax-product_cat .aow-filter-container form#aow-filter .form-inner #aow-filter-btn-wrap {
        padding-bottom: 5px; }
    body.woocommerce.tax-product_cat .bookstore_row ul.products .finiteScroll {
      margin-top: 0; } }

/* AOW Filtered */
body.woocommerce.tax-product_cat.aow-filter h1.page-title {
  font-family: "Roboto" !important;
  font-size: 13px !important;
  line-height: 18px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  margin: 0 !important;
  padding: 0 !important; }

body.woocommerce.tax-product_cat.aow-filter .active-filters {
  max-width: 525px;
  font-family: "Roboto Slab" !important;
  font-size: 28px !important;
  line-height: 40px !important;
  font-weight: 300 !important;
  color: #51AF46 !important;
  text-transform: none !important;
  margin: 0 !important;
  padding: 0 !important; }
  body.woocommerce.tax-product_cat.aow-filter .active-filters span {
    display: block; }

/* Resource listing pages only (since we don't want this styling applied to other sections that use /woocommerce/content-product.php like AOW Resources) */
body.tax-product_cat .bookstore_row ul.products li div.info {
  padding-bottom: 50px !important; }
  body.tax-product_cat .bookstore_row ul.products li div.info .btn_cta {
    position: absolute;
    bottom: 20px;
    left: 0; }
    body.tax-product_cat .bookstore_row ul.products li div.info .btn_cta a.button {
      margin: 0 auto !important; }

/* Resources / Resource lists displayed elsewhere (Programs, AOW)
-------------------------------------------------------------------- */
body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products,
body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products {
  width: 100%;
  margin: 0;
  padding: 0 0 50px 0;
  /* force out of ul */ }
  body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products span.product_items,
  body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products span.product_items {
    display: grid;
    width: 100%;
    grid-template-columns: 1fr 1fr;
    grid-gap: 30px;
    margin: 0;
    padding: 0; }
  body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products li,
  body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products li {
    width: 100% !important;
    /* css grid fallback */
    height: auto !important;
    min-height: 0;
    float: left;
    /* css grid fallback */
    background-color: transparent !important;
    border-radius: 0;
    margin: 0 0 40px 0;
    padding: 0;
    /* IE10, IE11 */ }
    @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products li,
      body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products li {
        margin-bottom: 40px; } }
    body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products li div.img,
    body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products li div.img {
      float: left;
      width: 20% !important;
      min-width: 100px !important;
      max-width: 100px !important;
      margin: 0 20px 0 0;
      padding: 0;
      /* IE10, IE11 */ }
      body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products li div.img span.thumbnail,
      body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products li div.img span.thumbnail {
        display: block;
        width: 100%; }
        body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products li div.img span.thumbnail img,
        body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products li div.img span.thumbnail img {
          width: 100% !important; }
      @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
        body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products li div.img,
        body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products li div.img {
          width: 15% !important; } }
    body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products li div.info,
    body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products li div.info {
      float: left;
      width: 70% !important;
      /* IE10, IE11 */ }
      body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products li div.info .price,
      body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products li div.info .btn_cta,
      body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products li div.info .price,
      body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products li div.info .btn_cta {
        display: none !important; }
      @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
        body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products li div.info,
        body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products li div.info {
          width: 85% !important; } }
  body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products .finiteScroll,
  body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products .finiteScroll {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 40px;
    display: flex;
    flex-direction: column-reverse;
    margin: 0 !important;
    padding: 0 !important; }

@media screen and (max-width: 890px) {
  body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products span.product_items,
  body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products span.product_items {
    grid-template-columns: 1fr; } }

@media screen and (max-width: 665px) {
  body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products li div.img,
  body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products li div.img {
    width: 100% !important; }
  body.woocommerce.page-template-program_resourcelist .bookstore_row ul.products li div.info,
  body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products li div.info {
    width: 100% !important; } }

body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products {
  display: block; }

@media screen and (max-width: 890px) {
  body.woocommerce.page-template-aow-resourcelist-page .bookstore_row ul.products li {
    margin-bottom: 10px; } }

/* Resources / Detail
-------------------------------------------------------------------- */
body.woocommerce.single-product {
  /* modal ala Remodal */
  /* account tools */
  /* title */
  /* product content */ }
  body.woocommerce.single-product .remodal-wrapper .remodal-close {
    left: auto;
    right: 0; }
    body.woocommerce.single-product .remodal-wrapper .remodal-close:hover {
      background-color: transparent; }
  body.woocommerce.single-product .remodal-wrapper h3 {
    text-align: left;
    font-family: "Roboto Slab";
    font-size: 28px;
    line-height: 34px;
    font-weight: 300;
    color: #51AF46;
    margin: 0 0 12px 0;
    padding: 0; }
  body.woocommerce.single-product .remodal-wrapper .modal-content {
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 300 !important;
    color: #546b85 !important;
    text-align: left; }
    body.woocommerce.single-product .remodal-wrapper .modal-content p {
      width: 100% !important;
      font-size: 16px !important;
      line-height: 24px !important;
      font-weight: 300 !important;
      color: #546b85 !important;
      margin: 0 0 14px 0 !important;
      padding: 0 !important; }
  body.woocommerce.single-product ol {
    margin: 0 0 0 40px; }
  body.woocommerce.single-product #account-tools {
    text-align: right;
    margin: -20px 0 30px 0;
    padding: 0; }
    body.woocommerce.single-product #account-tools a {
      display: inline-block;
      background-color: #EEF2F7;
      border-radius: 2px;
      font-size: 13px;
      font-weight: 500;
      color: #1669c9;
      text-transform: uppercase;
      margin: 0 0 0 10px;
      padding: 2px 6px; }
  body.woocommerce.single-product #resource_title {
    border: none;
    margin: 0 0 30px 0;
    padding: 0; }
    body.woocommerce.single-product #resource_title h1 {
      font-family: "Roboto Slab";
      font-size: 28px;
      line-height: 34px;
      font-weight: 300;
      color: #51AF46;
      margin: 0 0 6px 0;
      padding: 0; }
    body.woocommerce.single-product #resource_title p.resource_authors,
    body.woocommerce.single-product #resource_title p.resource_editors,
    body.woocommerce.single-product #resource_title p.resource_helpers {
      font-size: 13px;
      line-height: 18px;
      font-weight: 500;
      letter-spacing: 1px;
      color: #819AB6;
      text-transform: uppercase;
      margin: 0;
      padding: 1px 0; }
      body.woocommerce.single-product #resource_title p.resource_authors a,
      body.woocommerce.single-product #resource_title p.resource_editors a,
      body.woocommerce.single-product #resource_title p.resource_helpers a {
        color: inherit;
        border-bottom: 1px dotted #819AB6; }
  body.woocommerce.single-product .product {
    margin: 0;
    padding: 0;
    /* additional details in show/hide */ }
    body.woocommerce.single-product .product .summary {
      margin: 0;
      padding: 0; }
      body.woocommerce.single-product .product .summary .images {
        width: 20% !important;
        max-width: 200px !important;
        margin: 0 !important;
        padding: 0 !important;
        /* item details */ }
        body.woocommerce.single-product .product .summary .images img {
          width: 100% !important;
          max-width: 175px !important;
          box-shadow: 6px 6px 10px rgba(0, 0, 0, 0.15); }
        body.woocommerce.single-product .product .summary .images #price_top {
          margin: 30px 0 0 0;
          padding: 0; }
          body.woocommerce.single-product .product .summary .images #price_top .cart_box_top {
            overflow: visible; }
            body.woocommerce.single-product .product .summary .images #price_top .cart_box_top #resource_btnCart {
              float: none;
              width: 100% !important;
              border: none !important;
              margin: 0;
              padding: 0; }
              body.woocommerce.single-product .product .summary .images #price_top .cart_box_top #resource_btnCart a {
                overflow: visible !important;
                max-width: 175px !important;
                text-indent: 0 !important;
                display: block !important;
                width: 100% !important;
                background: none !important;
                font-size: 15px !important;
                font-weight: 500 !important;
                color: #fff !important;
                background-color: #5a799c !important;
                border-radius: 6px !important;
                border: none !important;
                text-decoration: none !important;
                text-align: center;
                text-transform: capitalize;
                margin: 0 0 12px 0 !important;
                padding: 8px 16px 8px 16px !important; }
            body.woocommerce.single-product .product .summary .images #price_top .cart_box_top .resource_price {
              float: none;
              width: 100%;
              max-width: none !important;
              margin: 0;
              padding: 0;
              font-family: "Roboto";
              font-size: 15px;
              line-height: 22px;
              font-weight: 500;
              color: #51AF46 !important;
              margin: 0;
              padding: 0; }
              body.woocommerce.single-product .product .summary .images #price_top .cart_box_top .resource_price del {
                display: inline-block; }
              body.woocommerce.single-product .product .summary .images #price_top .cart_box_top .resource_price ins {
                display: inline-block; }
              body.woocommerce.single-product .product .summary .images #price_top .cart_box_top .resource_price .woocommerce-Price-amount {
                font-family: "Roboto";
                font-size: 15px;
                line-height: 22px;
                font-weight: 500;
                color: #51AF46 !important; }
      body.woocommerce.single-product .product .summary .details {
        float: right;
        width: 79%;
        margin: 0 !important;
        padding: 0 !important;
        /* social icons */ }
        body.woocommerce.single-product .product .summary .details p, body.woocommerce.single-product .product .summary .details li {
          width: 100% !important;
          font-size: 16px !important;
          line-height: 24px !important;
          font-weight: 300 !important;
          color: #546b85 !important;
          margin: 0 0 14px 0 !important;
          padding: 0 !important; }
          body.woocommerce.single-product .product .summary .details p a, body.woocommerce.single-product .product .summary .details li a {
            border: none !important;
            text-decoration: underline !important; }
        body.woocommerce.single-product .product .summary .details ul {
          margin: 0 0 0 40px;
          padding: 0; }
        body.woocommerce.single-product .product .summary .details #addThisButtons {
          margin: 30px 0 30px 0;
          padding: 0; }
    body.woocommerce.single-product .product .additional_info {
      /* testing */
      /* section */
      /* Resource Details */
      /* Praise */
      /* Related Resources */
      /* Related Services */ }
      body.woocommerce.single-product .product .additional_info .page_content_box {
        border: none;
        border-bottom: 1px solid #ABC1DA;
        margin: 0;
        padding: 0;
        /* title */
        /* content */ }
        body.woocommerce.single-product .product .additional_info .page_content_box:last-child {
          border-bottom: none; }
        body.woocommerce.single-product .product .additional_info .page_content_box.collapsed .page_content_box_headline h3 {
          background: url("../images/icon-plus-blue.png") no-repeat 0 20px; }
        body.woocommerce.single-product .product .additional_info .page_content_box .page_content_box_headline {
          margin: 0;
          padding: 0; }
          body.woocommerce.single-product .product .additional_info .page_content_box .page_content_box_headline h3 {
            float: none;
            width: 100%;
            cursor: pointer;
            font-family: "Roboto" !important;
            font-size: 20px !important;
            line-height: 24px !important;
            font-weight: 500 !important;
            color: #6EA9ED !important;
            background: url("../images/icon-minus-blue.png") no-repeat 0 20px;
            margin: 0 !important;
            padding: 20px 20px 20px 35px !important; }
        body.woocommerce.single-product .product .additional_info .page_content_box .page_content_box_body_text {
          float: none;
          width: 100%;
          margin: 0;
          padding: 0 0 0 40px; }
      body.woocommerce.single-product .product .additional_info #resource-details h4 {
        font-size: 14px;
        line-height: 18px;
        font-weight: 500;
        color: #51AF46;
        text-transform: uppercase;
        margin: 0 0 10px 0;
        padding: 0; }
      body.woocommerce.single-product .product .additional_info #resource-details strong {
        font-size: 14px;
        font-weight: 500;
        color: #546B85; }
      body.woocommerce.single-product .product .additional_info #resource-details .product_information {
        float: left;
        width: 30%;
        min-height: 200px;
        background-color: #fff;
        border-radius: 5px;
        font-size: 14px;
        line-height: 24px;
        margin: 0 12px 20px 0;
        padding: 20px; }
      body.woocommerce.single-product .product .additional_info #resource-details .previews {
        float: left;
        width: 30%;
        min-height: 200px;
        background-color: #fff;
        border-radius: 5px;
        font-size: 14px;
        line-height: 24px;
        margin: 0 12px 20px 0;
        padding: 20px; }
        body.woocommerce.single-product .product .additional_info #resource-details .previews #bookPreview {
          margin-bottom: 12px; }
        body.woocommerce.single-product .product .additional_info #resource-details .previews .text {
          text-decoration: none !important; }
      body.woocommerce.single-product .product .additional_info #resource-details .requests {
        float: left;
        width: 30%;
        min-height: 200px;
        background-color: #fff;
        border-radius: 5px;
        font-size: 14px;
        line-height: 24px;
        margin: 0 12px 20px 0;
        padding: 20px; }
        body.woocommerce.single-product .product .additional_info #resource-details .requests a {
          display: block;
          width: 75%;
          font-size: 15px !important;
          font-weight: 500 !important;
          color: #fff !important;
          background-color: #5a799c !important;
          border-radius: 6px !important;
          border: none !important;
          text-decoration: none !important;
          text-align: center;
          margin: 12px 0 !important;
          padding: 4px 8px 4px 8px !important; }
          body.woocommerce.single-product .product .additional_info #resource-details .requests a:hover {
            opacity: .75; }
      body.woocommerce.single-product .product .additional_info #editorial_review ul {
        margin: 0;
        padding: 0; }
        body.woocommerce.single-product .product .additional_info #editorial_review ul li {
          border: none;
          background: none;
          margin: 0;
          padding: 0; }
          body.woocommerce.single-product .product .additional_info #editorial_review ul li .quote_container {
            min-height: 100px;
            border: none;
            background: url("../images/icon-quote-white.png") no-repeat 0 0;
            margin: 0 0 40px 0;
            padding: 0 40px 30px 165px; }
            body.woocommerce.single-product .product .additional_info #editorial_review ul li .quote_container .quote_text {
              margin: 0;
              padding: 0; }
              body.woocommerce.single-product .product .additional_info #editorial_review ul li .quote_container .quote_text p {
                width: 100% !important;
                font-size: 16px !important;
                line-height: 24px !important;
                font-weight: 500 !important;
                color: #3F648F !important;
                margin: 0 0 12px 0 !important;
                padding: 0 !important; }
            body.woocommerce.single-product .product .additional_info #editorial_review ul li .quote_container .quote_source {
              font-size: 14px !important;
              line-height: 18px !important;
              font-weight: 500 !important;
              color: #819AB6 !important;
              margin: 0 !important;
              padding: 0 0 0 75px !important; }
              body.woocommerce.single-product .product .additional_info #editorial_review ul li .quote_container .quote_source::before {
                content: "- "; }
      body.woocommerce.single-product .product .additional_info #related_resources #cross-sells {
        border: none !important;
        margin: 0 !important;
        padding: 0 !important; }
        body.woocommerce.single-product .product .additional_info #related_resources #cross-sells ul.products {
          width: 100%;
          margin: 0;
          padding: 0; }
          body.woocommerce.single-product .product .additional_info #related_resources #cross-sells ul.products li {
            display: block;
            width: 100%;
            border: none;
            margin: 0 0 40px 0;
            padding: 0; }
            body.woocommerce.single-product .product .additional_info #related_resources #cross-sells ul.products li div.img {
              float: left;
              width: 15%;
              min-width: 130px;
              max-width: 130px; }
              body.woocommerce.single-product .product .additional_info #related_resources #cross-sells ul.products li div.img img {
                width: 100px;
                height: auto;
                box-shadow: 6px 6px 10px rgba(0, 0, 0, 0.15); }
            body.woocommerce.single-product .product .additional_info #related_resources #cross-sells ul.products li div.info {
              float: left;
              width: 80%; }
              body.woocommerce.single-product .product .additional_info #related_resources #cross-sells ul.products li div.info h3 {
                float: none;
                width: 100%;
                margin: 0 0 6px 0;
                padding: 0; }
              body.woocommerce.single-product .product .additional_info #related_resources #cross-sells ul.products li div.info p.resource_description {
                display: block;
                float: none;
                width: 100% !important;
                margin: 0;
                padding: 0; }
          @media screen and (max-width: 1020px) {
            body.woocommerce.single-product .product .additional_info #related_resources #cross-sells ul.products li {
              float: none;
              width: 100% !important; } }
          @media screen and (max-width: 600px) {
            body.woocommerce.single-product .product .additional_info #related_resources #cross-sells ul.products li div.img {
              float: none;
              width: 100%;
              margin: 0;
              padding: 0; }
              body.woocommerce.single-product .product .additional_info #related_resources #cross-sells ul.products li div.img .thumbnail {
                min-height: 0; }
            body.woocommerce.single-product .product .additional_info #related_resources #cross-sells ul.products li div.info {
              float: none;
              width: 100%;
              margin: 0;
              padding: 0; } }
      body.woocommerce.single-product .product .additional_info #related_services ul.service_list {
        width: 100%;
        margin: 0;
        padding: 0; }
        body.woocommerce.single-product .product .additional_info #related_services ul.service_list li {
          display: block;
          width: 100%;
          border: none;
          margin: 0 0 20px 0;
          padding: 0; }
          body.woocommerce.single-product .product .additional_info #related_services ul.service_list li a {
            display: block;
            margin: 0;
            padding: 0; }
            body.woocommerce.single-product .product .additional_info #related_services ul.service_list li a .title {
              display: block;
              font-size: 17px;
              line-height: 23px;
              font-weight: 600;
              color: #1669c9;
              margin: 0 0 6px 0;
              padding: 0; }
            body.woocommerce.single-product .product .additional_info #related_services ul.service_list li a .excerpt {
              display: block;
              font-size: 16px;
              line-height: 24px;
              font-weight: 300;
              color: #546b85;
              margin: 0;
              padding: 0; }
  @media screen and (max-width: 940px) {
    body.woocommerce.single-product {
      /* product content */ }
      body.woocommerce.single-product .product {
        /* additional details with show/hide */ }
        body.woocommerce.single-product .product .summary .images {
          width: 100% !important;
          margin-bottom: 30px !important; }
          body.woocommerce.single-product .product .summary .images img {
            max-height: none !important; }
        body.woocommerce.single-product .product .summary .details {
          display: block;
          width: 100%; }
        body.woocommerce.single-product .product .summary #heading_description {
          display: none; }
        body.woocommerce.single-product .product .additional_info {
          /* Resource Details */ }
          body.woocommerce.single-product .product .additional_info .page_content_box_body_text {
            padding-left: 0 !important; }
          body.woocommerce.single-product .product .additional_info #resource-details .product_information,
          body.woocommerce.single-product .product .additional_info #resource-details .requests,
          body.woocommerce.single-product .product .additional_info #resource-details .previews {
            float: none;
            width: 100%;
            min-height: 0; } }
  @media screen and (max-width: 765px) {
    body.woocommerce.single-product .page_content_box.Two-column .page_content_box_body_text {
      display: block; } }
  @media screen and (max-width: 600px) {
    body.woocommerce.single-product {
      /* product content */ }
      body.woocommerce.single-product .product {
        /* additional details with show/hide */ }
        body.woocommerce.single-product .product .additional_info {
          /* Praise */ }
          body.woocommerce.single-product .product .additional_info #editorial_review ul li .quote_container {
            background: none;
            padding: 10px 15px; } }

/* Resources / Detail / Customizations
-------------------------------------------------------------------- */
/* Fostering Collaboration */
body.woocommerce.single-product.fostering-collab .description {
  float: left;
  max-width: 480px;
  margin: 0;
  padding: 0; }

body.woocommerce.single-product.fostering-collab .stages {
  float: right;
  width: 275px;
  height: auto;
  background-color: #E3ECF9;
  border-radius: 16px;
  margin: 0;
  padding: 20px; }
  body.woocommerce.single-product.fostering-collab .stages ul {
    text-align: center;
    margin: 0 0 12px 0 !important;
    padding: 0; }
    body.woocommerce.single-product.fostering-collab .stages ul li {
      list-style: none;
      margin: 0;
      padding: 0; }
      body.woocommerce.single-product.fostering-collab .stages ul li a {
        display: block; }
        body.woocommerce.single-product.fostering-collab .stages ul li a:hover {
          opacity: 1 !important; }

body.woocommerce.single-product.fostering-collab .product .summary .details .stages p {
  font-weight: 700 !important;
  margin-bottom: 20px !important; }

body.woocommerce.single-product.fostering-collab .product .summary .details .stages li {
  margin-bottom: 0 !important; }

body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content {
  display: flex;
  flex-wrap: nowrap; }
  body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(1) {
    flex: 1 1 0;
    max-width: 165px;
    margin-right: 15px; }
    body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(1) .thumb a {
      display: block; }
      body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(1) .thumb a:hover {
        opacity: .75; }
    body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(1) p.button {
      max-width: 153px;
      margin: 12px 0 0 0 !important;
      padding: 0 !important; }
      body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(1) p.button a {
        display: block;
        height: 32px;
        background-color: #5a799c;
        font-size: 15px;
        line-height: 30px;
        font-weight: 500;
        color: #fff;
        border-radius: 6px;
        text-align: center; }
        body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(1) p.button a:hover {
          opacity: .75; }
  body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(2) {
    flex: 2 1 0; }
    body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(2) h2 {
      font-size: 14px;
      line-height: 16px;
      font-weight: 700;
      color: #546B85;
      text-transform: uppercase;
      margin: 0 0 3px 0;
      padding: 0; }
    body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(2) h3 {
      font-size: 21px;
      line-height: 26px;
      font-weight: 400;
      color: #51AF46;
      margin: 0 0 15px 0;
      padding: 0; }
    body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(2) p {
      font-size: 16px;
      line-height: 24px;
      font-weight: 400;
      color: #546B85;
      margin: 0 0 15px 0;
      padding: 0; }
      body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(2) p.note {
        font-size: 15px !important;
        font-weight: 700 !important;
        font-style: italic; }
      body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(2) p a {
        color: #1669C9; }
    body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(2) hr {
      border-color: #ABC1DA;
      margin: 15px 0 15px 0; }

@media screen and (max-width: 550px) {
  body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content {
    display: block; }
    body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(1) {
      margin: 0; }
    body.woocommerce.single-product.fostering-collab .remodal-wrapper .modal-content .item:nth-child(2) {
      margin: 20px 0 0 0; } }

@media screen and (max-width: 1015px) {
  body.woocommerce.single-product.fostering-collab .description {
    float: none;
    width: 100%;
    max-width: none; }
  body.woocommerce.single-product.fostering-collab .stages {
    float: none;
    width: 100%;
    margin-top: 20px; } }

/* Resources / User Flow (Login/Register, My Account)
-------------------------------------------------------------------- */
body.woocommerce-account {
  /* Lost Password */
  /* My Account / Nav */
  /* My Account / Orders */
  /* My Account / Edit Address */
  /* My Account / Account Details */ }
  body.woocommerce-account button.button {
    opacity: 1 !important;
    height: 42px;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: #fff !important;
    background: none !important;
    background-color: #5a799c !important;
    border-radius: 6px !important;
    border: none !important;
    text-decoration: none !important;
    box-shadow: none !important;
    margin: 0 12px 0 0 !important;
    padding: 8px 16px 8px 16px !important; }
    body.woocommerce-account button.button:hover {
      opacity: .75 !important; }
  body.woocommerce-account #customer_login {
    background: url("../images/icon-or.png") no-repeat center center; }
    body.woocommerce-account #customer_login .col-1 {
      float: left; }
    body.woocommerce-account #customer_login .col-2 {
      float: right; }
    body.woocommerce-account #customer_login .col-1,
    body.woocommerce-account #customer_login .col-2 {
      width: 45%;
      height: 370px;
      border: 1px solid #819AB6;
      border-radius: 6px;
      margin: 0;
      padding: 20px;
      /* label */
      /* input */ }
      body.woocommerce-account #customer_login .col-1 h2,
      body.woocommerce-account #customer_login .col-2 h2 {
        font-size: 26px;
        line-height: 32px;
        text-transform: none;
        border: none;
        margin: 0 0 20px 0;
        padding: 0; }
      body.woocommerce-account #customer_login .col-1 p,
      body.woocommerce-account #customer_login .col-2 p {
        width: 100% !important; }
      body.woocommerce-account #customer_login .col-1 p.meta,
      body.woocommerce-account #customer_login .col-2 p.meta {
        height: 50px; }
        body.woocommerce-account #customer_login .col-1 p.meta label,
        body.woocommerce-account #customer_login .col-2 p.meta label {
          cursor: pointer;
          float: left;
          font-size: 14px !important;
          line-height: 18px !important;
          font-weight: 400 !important;
          color: #3F648F !important;
          text-transform: none !important; }
          body.woocommerce-account #customer_login .col-1 p.meta label input[type="checkbox"],
          body.woocommerce-account #customer_login .col-2 p.meta label input[type="checkbox"] {
            margin-right: 5px; }
        body.woocommerce-account #customer_login .col-1 p.meta a,
        body.woocommerce-account #customer_login .col-2 p.meta a {
          float: right;
          font-size: 14px !important;
          line-height: 18px !important;
          font-weight: 400 !important;
          color: #3F648F !important;
          text-transform: none !important;
          text-decoration: none !important; }
      body.woocommerce-account #customer_login .col-1 label,
      body.woocommerce-account #customer_login .col-2 label {
        display: block !important;
        font-size: 10px !important;
        line-height: 14px !important;
        font-weight: 700 !important;
        color: #3F648F !important;
        text-transform: uppercase !important;
        margin: 0 0 6px 0 !important;
        padding: 0 !important; }
      body.woocommerce-account #customer_login .col-1 input[type="text"],
      body.woocommerce-account #customer_login .col-1 input[type="email"],
      body.woocommerce-account #customer_login .col-1 input[type="password"],
      body.woocommerce-account #customer_login .col-2 input[type="text"],
      body.woocommerce-account #customer_login .col-2 input[type="email"],
      body.woocommerce-account #customer_login .col-2 input[type="password"] {
        height: 42px !important;
        border: none !important;
        border-radius: 4px !important;
        box-shadow: none !important;
        background-color: #E3ECF9 !important;
        font-size: 14px !important;
        line-height: 18px !important;
        font-weight: 700 !important;
        color: #3F648F !important;
        margin: 0 !important;
        padding: 4px 12px !important; }
      body.woocommerce-account #customer_login .col-1 input[type="submit"],
      body.woocommerce-account #customer_login .col-2 input[type="submit"] {
        width: 100% !important;
        height: 42px !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        color: #fff !important;
        background-color: #5a799c !important;
        border-radius: 6px !important;
        border: none !important;
        text-decoration: none !important;
        margin: 5px 0 10px 0 !important;
        padding: 8px 16px 8px 16px !important; }
        body.woocommerce-account #customer_login .col-1 input[type="submit"]:hover,
        body.woocommerce-account #customer_login .col-2 input[type="submit"]:hover {
          opacity: .75; }
  @media screen and (max-width: 860px) {
    body.woocommerce-account .col-1,
    body.woocommerce-account .col-2 {
      float: none !important;
      width: 100% !important; }
    body.woocommerce-account .col-1 {
      margin-bottom: 100px !important; }
    body.woocommerce-account .col-2 {
      margin-top: 100px !important; } }
  body.woocommerce-account form.lost_reset_password {
    max-width: 50%;
    /* label */
    /* input */ }
    body.woocommerce-account form.lost_reset_password p {
      width: 100% !important; }
    body.woocommerce-account form.lost_reset_password label {
      display: block !important;
      font-size: 10px !important;
      line-height: 14px !important;
      font-weight: 700 !important;
      color: #3F648F !important;
      text-transform: uppercase !important;
      margin: 0 0 6px 0 !important;
      padding: 0 !important; }
    body.woocommerce-account form.lost_reset_password input[type="text"] {
      height: 42px !important;
      border: none !important;
      border-radius: 4px !important;
      box-shadow: none !important;
      background-color: #E3ECF9 !important;
      font-size: 14px !important;
      line-height: 18px !important;
      font-weight: 700 !important;
      color: #3F648F !important;
      margin: 0 !important;
      padding: 4px 12px !important; }
    body.woocommerce-account form.lost_reset_password input[type="submit"] {
      width: 100% !important;
      height: 42px !important;
      font-size: 15px !important;
      font-weight: 500 !important;
      color: #fff !important;
      background-color: #5a799c !important;
      border-radius: 6px !important;
      border: none !important;
      text-decoration: none !important;
      margin: 5px 0 10px 0 !important;
      padding: 8px 16px 8px 16px !important; }
      body.woocommerce-account form.lost_reset_password input[type="submit"]:hover {
        opacity: .75; }
  body.woocommerce-account #content input.button {
    background-color: #5a799c !important; }
  body.woocommerce-account .woocommerce-message {
    border: none !important;
    border-radius: 0 !important;
    margin: 0 0 20px 0 !important;
    padding: 0 !important; }
  body.woocommerce-account .woocommerce-MyAccount-navigation {
    background: none !important;
    margin: 0 0 30px 0;
    padding: 0; }
    body.woocommerce-account .woocommerce-MyAccount-navigation ul {
      margin: 0;
      padding: 0; }
      body.woocommerce-account .woocommerce-MyAccount-navigation ul li {
        display: inline-block;
        margin: 0 0 40px 0;
        padding: 0; }
        body.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
          display: inline-block;
          font-family: "Roboto";
          font-size: 15px;
          line-height: 20px;
          font-weight: 400;
          text-transform: uppercase;
          text-decoration: none;
          color: #1669c9 !important;
          margin: 0 14px 0 0;
          padding: 5px 0 5px 0; }
        body.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
          border-bottom: 5px solid #ABC1DA !important; }
    @media screen and (max-width: 600px) {
      body.woocommerce-account .woocommerce-MyAccount-navigation ul {
        text-align: left; }
        body.woocommerce-account .woocommerce-MyAccount-navigation ul li {
          display: block !important;
          margin: 0 0 15px 0;
          padding: 0; } }
  body.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table td.woocommerce-orders-table__cell-order-actions a {
    margin-right: 7px !important; }
  body.woocommerce-account .woocommerce-MyAccount-content h2 {
    text-transform: none !important;
    border: none; }
  body.woocommerce-account .woocommerce-MyAccount-content h3 {
    font-family: "Roboto" !important;
    text-transform: none !important; }
  body.woocommerce-account .woocommerce-MyAccount-content table.order_details {
    border-spacing: 0;
    border-collapse: collapse; }
    body.woocommerce-account .woocommerce-MyAccount-content table.order_details td {
      border-bottom: 1px solid #ABC1DA !important;
      padding: 8px 10px 8px 0; }
    body.woocommerce-account .woocommerce-MyAccount-content table.order_details tfoot th {
      border-bottom: 1px solid #ABC1DA !important; }
  body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm fieldset {
    margin-bottom: 20px; }
  body.woocommerce-account .woocommerce-MyAccount-content a.button {
    float: none !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    color: #1669c9 !important;
    background: none !important;
    margin: 0 0 7px 0 !important;
    padding: 0 !important; }
  body.woocommerce-account .woocommerce-MyAccount-content p.order-again {
    margin-bottom: 20px !important; }
    body.woocommerce-account .woocommerce-MyAccount-content p.order-again a {
      text-decoration: none !important; }
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields {
    width: 50%;
    /* label */
    /* input */ }
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields .woocommerce-address-fields__field-wrapper {
      margin-bottom: 20px; }
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields label {
      display: block !important;
      font-size: 10px !important;
      line-height: 14px !important;
      font-weight: 700 !important;
      color: #3F648F !important;
      text-transform: uppercase !important;
      margin: 0 0 6px 0 !important;
      padding: 0 !important; }
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields input[type="text"],
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields input[type="tel"],
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields input[type="email"] {
      height: 42px !important;
      border: none !important;
      border-radius: 4px !important;
      box-shadow: none !important;
      background-color: #E3ECF9 !important;
      font-size: 14px !important;
      line-height: 18px !important;
      font-weight: 700 !important;
      color: #3F648F !important;
      margin: 0 !important;
      padding: 4px 12px !important; }
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields input[type="submit"] {
      width: 100% !important;
      height: 42px !important;
      font-size: 15px !important;
      font-weight: 500 !important;
      color: #fff !important;
      background-color: #5a799c !important;
      border-radius: 6px !important;
      border: none !important;
      text-decoration: none !important;
      margin: 5px 0 10px 0 !important;
      padding: 8px 16px 8px 16px !important; }
      body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields input[type="submit"]:hover {
        opacity: .75; }
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields .select2-container a {
      height: 42px !important;
      border: none !important;
      border-radius: 4px !important;
      box-shadow: none !important;
      background-color: #E3ECF9 !important;
      background-image: none !important;
      font-size: 14px !important;
      line-height: 18px !important;
      font-weight: 700 !important;
      color: #3F648F !important;
      text-decoration: none !important;
      margin: 0 !important;
      padding: 4px 12px !important; }
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields .select2-container .select2-choice {
      padding-top: 5px; }
      body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields .select2-container .select2-choice .select2-chosen {
        padding-top: 6px; }
      body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields .select2-container .select2-choice .select2-arrow {
        border: none;
        background: none; }
        body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields .select2-container .select2-choice .select2-arrow b {
          background: none; }
  body.woocommerce-account .woocommerce-MyAccount-content .edit-account {
    width: 50%;
    /* label */
    /* input */ }
    body.woocommerce-account .woocommerce-MyAccount-content .edit-account label {
      display: block !important;
      font-size: 10px !important;
      line-height: 14px !important;
      font-weight: 700 !important;
      color: #3F648F !important;
      text-transform: uppercase !important;
      margin: 0 0 6px 0 !important;
      padding: 0 !important; }
    body.woocommerce-account .woocommerce-MyAccount-content .edit-account input[type="text"],
    body.woocommerce-account .woocommerce-MyAccount-content .edit-account input[type="email"],
    body.woocommerce-account .woocommerce-MyAccount-content .edit-account input[type="password"] {
      height: 42px !important;
      border: none !important;
      border-radius: 4px !important;
      box-shadow: none !important;
      background-color: #E3ECF9 !important;
      font-size: 14px !important;
      line-height: 18px !important;
      font-weight: 700 !important;
      color: #3F648F !important;
      margin: 0 !important;
      padding: 4px 12px !important; }
    body.woocommerce-account .woocommerce-MyAccount-content .edit-account input[type="submit"] {
      width: 100% !important;
      height: 42px !important;
      font-size: 15px !important;
      font-weight: 500 !important;
      color: #fff !important;
      background-color: #5a799c !important;
      border-radius: 6px !important;
      border: none !important;
      text-decoration: none !important;
      margin: 5px 0 10px 0 !important;
      padding: 8px 16px 8px 16px !important; }
      body.woocommerce-account .woocommerce-MyAccount-content .edit-account input[type="submit"]:hover {
        opacity: .75; }

/* Resources / My Cart
-------------------------------------------------------------------- */
body.woocommerce-cart #content {
  /* buttons */ }
  body.woocommerce-cart #content .cart-empty:before {
    content: ""; }
  body.woocommerce-cart #content .return-to-shop {
    display: none; }
  body.woocommerce-cart #content table.shop_table {
    border-spacing: 0;
    border-collapse: collapse;
    border: none; }
    body.woocommerce-cart #content table.shop_table td {
      border: none;
      border-bottom: 1px solid #ABC1DA !important;
      padding: 8px 10px 8px 0; }
  body.woocommerce-cart #content td.actions {
    margin: 0 !important;
    padding: 12px !important; }
  body.woocommerce-cart #content input[type="text"] {
    height: 42px !important;
    border: none !important;
    border-radius: 4px !important;
    box-shadow: none !important;
    background-color: #E3ECF9 !important;
    font-size: 14px !important;
    line-height: 18px !important;
    font-weight: 700 !important;
    color: #3F648F !important;
    margin: 0 7px 0 0 !important;
    padding: 4px 12px !important; }
  body.woocommerce-cart #content input.button,
  body.woocommerce-cart #content button.button {
    opacity: 1 !important;
    height: 42px;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: #fff !important;
    background: none !important;
    background-color: #5a799c !important;
    border-radius: 6px !important;
    border: none !important;
    text-decoration: none !important;
    box-shadow: none !important;
    margin: 0 12px 0 0 !important;
    padding: 8px 16px 8px 16px !important; }
    body.woocommerce-cart #content input.button:hover,
    body.woocommerce-cart #content button.button:hover {
      opacity: .75 !important; }
  body.woocommerce-cart #content .cross-sells h2, body.woocommerce-cart #content .cart_totals h2 {
    font-family: "Roboto";
    font-size: 20px;
    text-transform: none;
    margin-bottom: 15px; }
  body.woocommerce-cart #content .cross-sells ul.products {
    margin: 0;
    padding: 0; }
    body.woocommerce-cart #content .cross-sells ul.products li {
      float: none;
      width: 100%;
      height: auto;
      min-height: 0;
      margin: 0 0 25px 0;
      padding: 0; }
      body.woocommerce-cart #content .cross-sells ul.products li:before, body.woocommerce-cart #content .cross-sells ul.products li:after {
        content: "";
        display: table; }
      body.woocommerce-cart #content .cross-sells ul.products li:after {
        clear: both; }
      body.woocommerce-cart #content .cross-sells ul.products li .img {
        float: left;
        width: 25%;
        margin: 0;
        padding: 0 20px 0 0; }
        body.woocommerce-cart #content .cross-sells ul.products li .img .thumbnail {
          float: none;
          min-width: 0;
          min-height: 0;
          margin: 0;
          padding: 0; }
          body.woocommerce-cart #content .cross-sells ul.products li .img .thumbnail img {
            float: none;
            border: none;
            width: 100%;
            max-height: none;
            margin: 0;
            padding: 0; }
      body.woocommerce-cart #content .cross-sells ul.products li .info {
        float: left;
        width: 75%; }
        body.woocommerce-cart #content .cross-sells ul.products li .info h3 {
          font-family: "Roboto";
          font-size: 18px;
          line-height: 24px;
          font-weight: 400;
          margin: 0 0 12px 0;
          padding: 0; }
  body.woocommerce-cart #content .cart_totals table th, body.woocommerce-cart #content .cart_totals table td {
    padding: 6px;
    border: none !important; }
  body.woocommerce-cart #content .cart_totals .select2-container {
    background: none; }
    body.woocommerce-cart #content .cart_totals .select2-container a {
      text-decoration: none;
      background: none;
      background-color: #E3ECF9; }
  body.woocommerce-cart #content .cart_totals input.input-text {
    height: auto !important;
    font-weight: 400 !important; }
  body.woocommerce-cart #content .cart_totals #calc_shipping_postcode_field:after {
    left: 90px; }
  body.woocommerce-cart #content .cart_totals p button {
    opacity: 1 !important;
    height: 42px;
    font-family: "Roboto";
    font-size: 15px !important;
    font-weight: 400 !important;
    color: #fff !important;
    background: none !important;
    background-color: #5a799c !important;
    border-radius: 6px !important;
    border: none !important;
    text-decoration: none !important;
    box-shadow: none !important;
    margin: 0 12px 0 0 !important;
    padding: 8px 16px 8px 16px !important; }
    body.woocommerce-cart #content .cart_totals p button:hover {
      opacity: .75 !important; }
  body.woocommerce-cart #content .wc-proceed-to-checkout {
    margin: 0;
    padding: 0; }
    body.woocommerce-cart #content .wc-proceed-to-checkout a {
      opacity: 1 !important;
      height: 42px !important;
      font-size: 15px !important;
      line-height: 28px !important;
      font-weight: 600 !important;
      color: #fff !important;
      background: none !important;
      background-color: #5a799c !important;
      border-radius: 6px !important;
      border: none !important;
      text-decoration: none !important;
      box-shadow: none !important;
      margin: 0 12px 0 0 !important;
      padding: 8px 16px 8px 16px !important; }
      body.woocommerce-cart #content .wc-proceed-to-checkout a:hover {
        opacity: .75 !important; }

/* Resources / Checkout
-------------------------------------------------------------------- */
body.woocommerce-checkout #content {
  /* hiding (optional) from subscribe message */ }
  body.woocommerce-checkout #content .woocommerce-additional-fields span.optional {
    display: none; }
  body.woocommerce-checkout #content p {
    width: 100% !important; }
  body.woocommerce-checkout #content #wcms_message {
    margin: 0;
    padding: 0; }
    body.woocommerce-checkout #content #wcms_message .woocommerce-info {
      margin: 0;
      padding: 15px; }
      body.woocommerce-checkout #content #wcms_message .woocommerce-info a.button {
        float: none;
        font-weight: 400;
        background-color: transparent;
        text-decoration: none; }
  body.woocommerce-checkout #content .woocommerce-info {
    margin: 0;
    padding: 15px; }
    body.woocommerce-checkout #content .woocommerce-info::before {
      content: ""; }
    body.woocommerce-checkout #content .woocommerce-info a {
      font-weight: 400;
      padding: 0; }
  body.woocommerce-checkout #content form.checkout_coupon {
    /* buttons */ }
    body.woocommerce-checkout #content form.checkout_coupon p {
      float: left;
      width: auto !important;
      margin: 0;
      padding: 0; }
      body.woocommerce-checkout #content form.checkout_coupon p.form-row-first {
        clear: both;
        width: 150px !important;
        margin: 15px 7px 0 0; }
      body.woocommerce-checkout #content form.checkout_coupon p.form-row-last {
        width: 300px;
        margin: 15px 0 0 0; }
    body.woocommerce-checkout #content form.checkout_coupon input[type="text"] {
      height: 42px !important;
      border: none !important;
      border-radius: 4px !important;
      box-shadow: none !important;
      background-color: #E3ECF9 !important;
      font-size: 14px !important;
      line-height: 18px !important;
      font-weight: 700 !important;
      color: #3F648F !important;
      margin: 0 7px 0 0 !important;
      padding: 4px 12px !important; }
    body.woocommerce-checkout #content form.checkout_coupon input.button,
    body.woocommerce-checkout #content form.checkout_coupon button.button {
      opacity: 1 !important;
      height: 42px;
      font-family: "Roboto";
      font-size: 15px !important;
      font-weight: 500 !important;
      color: #fff !important;
      background: none !important;
      background-color: #5a799c !important;
      border-radius: 6px !important;
      border: none !important;
      text-decoration: none !important;
      box-shadow: none !important;
      margin: 0 12px 0 0 !important;
      padding: 8px 16px 8px 16px !important; }
      body.woocommerce-checkout #content form.checkout_coupon input.button:hover,
      body.woocommerce-checkout #content form.checkout_coupon button.button:hover {
        opacity: .75 !important; }
  body.woocommerce-checkout #content h3 {
    width: 100%;
    font-family: "Roboto";
    text-transform: none;
    border-bottom: 1px solid #ccc;
    margin: 20px 0 15px 0;
    padding: 0 0 6px 0; }
  body.woocommerce-checkout #content .woocommerce-billing-fields,
  body.woocommerce-checkout #content .woocommerce-shipping-fields,
  body.woocommerce-checkout #content .woocommerce-additional-fields {
    /* buttons */ }
    body.woocommerce-checkout #content .woocommerce-billing-fields p,
    body.woocommerce-checkout #content .woocommerce-shipping-fields p,
    body.woocommerce-checkout #content .woocommerce-additional-fields p {
      float: none !important;
      width: 100% !important; }
    body.woocommerce-checkout #content .woocommerce-billing-fields input[type="text"], body.woocommerce-checkout #content .woocommerce-billing-fields input[type="tel"], body.woocommerce-checkout #content .woocommerce-billing-fields input[type="email"],
    body.woocommerce-checkout #content .woocommerce-shipping-fields input[type="text"],
    body.woocommerce-checkout #content .woocommerce-shipping-fields input[type="tel"],
    body.woocommerce-checkout #content .woocommerce-shipping-fields input[type="email"],
    body.woocommerce-checkout #content .woocommerce-additional-fields input[type="text"],
    body.woocommerce-checkout #content .woocommerce-additional-fields input[type="tel"],
    body.woocommerce-checkout #content .woocommerce-additional-fields input[type="email"] {
      height: 42px !important;
      border: none !important;
      border-radius: 4px !important;
      box-shadow: none !important;
      background-color: #E3ECF9 !important;
      font-family: "Roboto";
      font-size: 14px !important;
      line-height: 18px !important;
      font-weight: 700 !important;
      color: #3F648F !important;
      margin: 0 7px 0 0 !important;
      padding: 4px 12px !important; }
    body.woocommerce-checkout #content .woocommerce-billing-fields textarea,
    body.woocommerce-checkout #content .woocommerce-shipping-fields textarea,
    body.woocommerce-checkout #content .woocommerce-additional-fields textarea {
      width: 100%;
      box-shadow: none !important;
      background-color: #E3ECF9 !important;
      border: none;
      margin: 0 0 15px 0 !important;
      padding: 12px !important; }
    body.woocommerce-checkout #content .woocommerce-billing-fields .select2-container,
    body.woocommerce-checkout #content .woocommerce-shipping-fields .select2-container,
    body.woocommerce-checkout #content .woocommerce-additional-fields .select2-container {
      width: 100% !important; }
      body.woocommerce-checkout #content .woocommerce-billing-fields .select2-container a,
      body.woocommerce-checkout #content .woocommerce-shipping-fields .select2-container a,
      body.woocommerce-checkout #content .woocommerce-additional-fields .select2-container a {
        text-decoration: none;
        background: none;
        background-color: #E3ECF9; }
  body.woocommerce-checkout #content table.shop_table {
    border: none; }
  body.woocommerce-checkout #content #payment p.terms {
    float: none !important;
    width: 100% !important;
    text-align: left !important; }
    body.woocommerce-checkout #content #payment p.terms input[type="checkbox"] {
      float: left;
      margin-right: 20px; }
  body.woocommerce-checkout #content #payment input[type="submit"] {
    float: none !important;
    opacity: 1 !important;
    height: 42px;
    font-family: "Roboto";
    font-size: 15px !important;
    font-weight: 500 !important;
    color: #fff !important;
    background: none !important;
    background-color: #5a799c !important;
    border-radius: 6px !important;
    border: none !important;
    text-decoration: none !important;
    box-shadow: none !important;
    margin: 0 12px 0 0 !important;
    padding: 8px 16px 8px 16px !important; }
    body.woocommerce-checkout #content #payment input[type="submit"]:hover {
      opacity: .75 !important; }

body.page-checkout,
body.page-my-account {
  /* subscribe promo on receipt page */ }
  body.page-checkout table.custom-fields th.thwcfe-section-title,
  body.page-my-account table.custom-fields th.thwcfe-section-title {
    display: none; }
    body.page-checkout table.custom-fields th.thwcfe-section-title:after,
    body.page-my-account table.custom-fields th.thwcfe-section-title:after {
      content: ""; }
  body.page-checkout table.custom-fields td:last-child,
  body.page-my-account table.custom-fields td:last-child {
    text-indent: -9999px; }

body.page-checkout {
  /* subscribe promo */ }
  body.page-checkout table.order_details td.download-file a.button {
    color: #fff !important; }
  body.page-checkout p.woocommerce-customer-details--phone::before,
  body.page-checkout p.woocommerce-customer-details--email::before {
    content: "" !important; }
  body.page-checkout p#ebulletin_subscribe_field {
    border: 2px solid #ABC1DA;
    border-radius: 12px;
    margin: 0;
    padding: 20px; }
    body.page-checkout p#ebulletin_subscribe_field label {
      font-weight: 700; }

body.page-shipping-addresses a.btn-import-billing {
  margin-right: 10px; }

body.page-shipping-addresses form.wcms-address-form,
body.page-shipping-addresses form#address_form {
  /* buttons */ }
  body.page-shipping-addresses form.wcms-address-form label,
  body.page-shipping-addresses form#address_form label {
    margin-left: 0; }
  body.page-shipping-addresses form.wcms-address-form input[type="text"], body.page-shipping-addresses form.wcms-address-form input[type="tel"], body.page-shipping-addresses form.wcms-address-form input[type="email"],
  body.page-shipping-addresses form#address_form input[type="text"],
  body.page-shipping-addresses form#address_form input[type="tel"],
  body.page-shipping-addresses form#address_form input[type="email"] {
    height: 42px !important;
    border: none !important;
    border-radius: 4px !important;
    box-shadow: none !important;
    background-color: #E3ECF9 !important;
    font-family: "Roboto";
    font-size: 14px !important;
    line-height: 18px !important;
    font-weight: 700 !important;
    color: #3F648F !important;
    margin: 0 7px 0 0 !important;
    padding: 4px 12px !important; }
  body.page-shipping-addresses form.wcms-address-form textarea,
  body.page-shipping-addresses form#address_form textarea {
    width: 100%;
    box-shadow: none !important;
    background-color: #E3ECF9 !important;
    border: none;
    margin: 0 0 15px 0 !important;
    padding: 12px !important; }
  body.page-shipping-addresses form.wcms-address-form input[type="submit"],
  body.page-shipping-addresses form#address_form input[type="submit"] {
    opacity: 1 !important;
    height: 42px;
    font-family: "Roboto";
    font-size: 15px !important;
    font-weight: 500 !important;
    color: #fff !important;
    background: none !important;
    background-color: #5a799c !important;
    border-radius: 6px !important;
    border: none !important;
    text-decoration: none !important;
    box-shadow: none !important;
    margin: 0 12px 0 0 !important;
    padding: 8px 16px 8px 16px !important; }
    body.page-shipping-addresses form.wcms-address-form input[type="submit"]:hover,
    body.page-shipping-addresses form#address_form input[type="submit"]:hover {
      opacity: .75 !important; }
  body.page-shipping-addresses form.wcms-address-form .select2-container,
  body.page-shipping-addresses form#address_form .select2-container {
    width: 100% !important; }
    body.page-shipping-addresses form.wcms-address-form .select2-container a,
    body.page-shipping-addresses form#address_form .select2-container a {
      text-decoration: none;
      background: none;
      background-color: #E3ECF9; }

/* choose shipping address per item */
body.page-shipping-addresses #content {
  width: 100%; }

body.page-shipping-addresses a.h2-link {
  display: block;
  font-family: "Roboto Slab";
  font-size: 22px;
  line-height: 28px;
  font-weight: 300;
  color: #51AF46 !important;
  margin: 0 0 30px 0;
  padding: 0; }

body.page-shipping-addresses table {
  border-bottom: 1px solid #ABC1DA;
  margin: 0 0 20px 0;
  padding: 0 0 20px 0; }
  body.page-shipping-addresses table th {
    text-align: left;
    padding: 0 12px; }
  body.page-shipping-addresses table td {
    padding: 12px; }
    body.page-shipping-addresses table td input {
      padding: 4px 12px; }

body.page-shipping-addresses small {
  display: block;
  max-width: 700px;
  margin: 20px 0 0 0;
  padding: 0; }

/* Order received */
body.woocommerce-order-received th.download-file,
body.page-checkout th.download-file {
  text-align: center; }

body.woocommerce-order-received td.download-file,
body.page-checkout td.download-file {
  text-align: center; }
  body.woocommerce-order-received td.download-file a.button,
  body.page-checkout td.download-file a.button {
    background-color: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
    color: #1669c9 !important; }

body.woocommerce-order-received table.order_details td.download-file a.button,
body.page-checkout table.order_details td.download-file a.button {
  color: #1669c9 !important; }

/* Resources / Orders
-------------------------------------------------------------------- */
body.woocommerce-orders {
  /* hide "go to the" */ }
  body.woocommerce-orders .woocommerce-info a.woocommerce-Button {
    display: none; }

/* Resources / Downloads
-------------------------------------------------------------------- */
body.woocommerce-downloads {
  /* hide "go to the" */ }
  body.woocommerce-downloads .woocommerce-info a.woocommerce-Button {
    display: none; }

/* Resources / Catalogs
-------------------------------------------------------------------- */
body.v2017-catalogs #content h1 {
  width: 100% !important;
  font-family: "Roboto Slab" !important;
  font-size: 28px !important;
  line-height: 34px !important;
  font-weight: 300 !important;
  color: #51AF46 !important;
  margin: 0 !important;
  padding: 0 !important; }

body.v2017-catalogs #content h2 {
  width: 100% !important;
  font-size: 20px !important;
  line-height: 24px !important;
  font-weight: 500 !important;
  color: #546B85 !important;
  text-transform: none;
  margin: 0 0 15px 0 !important;
  padding: 0 !important; }

body.v2017-catalogs #content p {
  width: 100% !important;
  font-family: "Roboto";
  font-size: 16px;
  line-height: 24px;
  font-weight: 300;
  color: #546b85;
  margin: 0 0 14px 0;
  padding: 0; }
  body.v2017-catalogs #content p a.btn {
    font-size: 15px !important;
    font-weight: 500 !important;
    color: #fff !important;
    background-color: #5a799c !important;
    border-radius: 6px !important;
    border: none !important;
    text-decoration: none !important;
    margin: 0 12px 0 0 !important;
    padding: 8px 16px 8px 16px !important; }
    body.v2017-catalogs #content p a.btn:hover {
      opacity: .75; }

body.v2017-catalogs #content hr {
  border-color: #ABC1DA;
  margin: 25px 0; }

body.v2017-catalogs #content ul.group li strong {
  text-align: center;
  background: none;
  font-size: 17px;
  line-height: 22px;
  font-weight: 500;
  color: #1669c9; }

@media screen and (max-width: 765px) {
  body.v2017-catalogs #content ul.group li {
    margin-bottom: 30px; }
    body.v2017-catalogs #content ul.group li:last-child {
      margin-bottom: 0; }
    body.v2017-catalogs #content ul.group li strong {
      text-align: left; } }

@media screen and (max-width: 385px) {
  body.v2017-catalogs #content p a.btn {
    display: block;
    text-align: center;
    margin: 0 0 20px 0 !important; } }

/* Resources / Help
-------------------------------------------------------------------- */
body.page-resources-help .toc {
  width: 80%;
  margin: 0 0 30px 0;
  padding: 0; }
  body.page-resources-help .toc .colLeft {
    float: left;
    width: 50%; }
  body.page-resources-help .toc .colRight {
    float: right;
    width: 50%; }
  body.page-resources-help .toc a {
    font-weight: 500; }

@media screen and (max-width: 666px) {
  body.page-resources-help .toc .colLeft,
  body.page-resources-help .toc .colRight {
    float: none;
    width: 100%; } }

/* Resources / Reprint Permissions
-------------------------------------------------------------------- */
body.page-reprint-permissions .entry-content h3 {
  font-family: "Roboto";
  font-size: 18px;
  font-weight: 500;
  color: #546B85; }

body.page-reprint-permissions .entry-content blockquote {
  padding: 10px 40px; }

/* Resources / Webinars Home
-------------------------------------------------------------------- */
body.page-template-webinars-home {
  /* Upcoming Webinars */
  /* Recent & Popular Webinars */ }
  body.page-template-webinars-home #main_content_wrap {
    padding-top: 0 !important; }
  body.page-template-webinars-home .bar {
    background: none !important;
    margin: 0 !important;
    padding: 0 !important; }
    body.page-template-webinars-home .bar h2 {
      font-family: "Roboto Slab" !important;
      font-size: 24px !important;
      line-height: 28px !important;
      font-weight: 300 !important;
      color: #51AF46 !important;
      border: none !important;
      margin: 0 0 30px 0 !important;
      padding: 0 !important; }
      body.page-template-webinars-home .bar h2:first-child {
        margin-top: 0 !important; }
  body.page-template-webinars-home .upcoming {
    background: none;
    margin: 0;
    padding: 30px 0 0 0;
    /* webinar */ }
    body.page-template-webinars-home .upcoming .post {
      margin: 0 0 40px 0;
      padding: 0; }
      body.page-template-webinars-home .upcoming .post .intro .img {
        float: left;
        width: 150px; }
        body.page-template-webinars-home .upcoming .post .intro .img img {
          float: none;
          width: 100%;
          height: auto;
          margin: 0;
          padding: 0; }
      body.page-template-webinars-home .upcoming .post .intro .info {
        float: left;
        width: 500px;
        margin: 0;
        padding: 0 0 0 25px; }
        body.page-template-webinars-home .upcoming .post .intro .info h3 {
          font-size: 17px;
          line-height: 24px;
          font-weight: 500;
          margin: 0 0 10px 0;
          padding: 0; }
          body.page-template-webinars-home .upcoming .post .intro .info h3 a {
            color: #1669c9;
            text-decoration: none; }
        body.page-template-webinars-home .upcoming .post .intro .info p {
          width: 100% !important;
          font-size: 16px;
          line-height: 24px;
          font-weight: 300;
          color: #546b85;
          margin: 0;
          padding: 0; }
          body.page-template-webinars-home .upcoming .post .intro .info p.buttons {
            margin-top: 30px; }
          body.page-template-webinars-home .upcoming .post .intro .info p a.btn {
            font-size: 15px !important;
            font-weight: 500 !important;
            color: #fff !important;
            background-color: #5a799c !important;
            border-radius: 6px !important;
            border: none !important;
            text-decoration: none !important;
            margin: 0 12px 0 0 !important;
            padding: 8px 16px 8px 16px !important; }
            body.page-template-webinars-home .upcoming .post .intro .info p a.btn:hover {
              opacity: .75; }
      body.page-template-webinars-home .upcoming .post .details {
        border-left: 1px solid #ABC1DA;
        padding: 0 0 0 15px; }
        body.page-template-webinars-home .upcoming .post .details ul {
          margin: 0;
          padding: 0; }
          body.page-template-webinars-home .upcoming .post .details ul li {
            font-size: 15px;
            line-height: 18px;
            font-weight: 400;
            color: #3F648F;
            margin: 0 0 12px 0;
            padding: 0; }
            body.page-template-webinars-home .upcoming .post .details ul li:last-child {
              margin-bottom: 0; }
            body.page-template-webinars-home .upcoming .post .details ul li strong {
              display: block;
              font-size: 10px;
              line-height: 14px;
              font-weight: 500;
              letter-spacing: 1px;
              color: #51AF46;
              text-transform: uppercase;
              padding-bottom: 3px; }
  body.page-template-webinars-home .webinars_archive_bar {
    /* view more */ }
    body.page-template-webinars-home .webinars_archive_bar .recent, body.page-template-webinars-home .webinars_archive_bar .popular {
      float: left;
      width: 50%;
      border-right: 1px solid #ABC1DA;
      margin: 0 !important;
      padding: 0 20px 0 0; }
      body.page-template-webinars-home .webinars_archive_bar .recent h3, body.page-template-webinars-home .webinars_archive_bar .popular h3 {
        font-size: 13px;
        line-height: 16px;
        font-weight: 500;
        letter-spacing: 1px;
        color: #6EA9ED;
        text-transform: uppercase;
        margin: 0 0 10px 0;
        padding: 0; }
      body.page-template-webinars-home .webinars_archive_bar .recent ul, body.page-template-webinars-home .webinars_archive_bar .popular ul {
        margin: 0;
        padding: 0; }
        body.page-template-webinars-home .webinars_archive_bar .recent ul li, body.page-template-webinars-home .webinars_archive_bar .popular ul li {
          border: none;
          font-size: 16px !important;
          line-height: 24px !important;
          font-weight: 300 !important;
          color: #546b85 !important;
          margin: 0 0 25px 0 !important;
          padding: 0 !important; }
          body.page-template-webinars-home .webinars_archive_bar .recent ul li a, body.page-template-webinars-home .webinars_archive_bar .popular ul li a {
            display: block;
            background: none;
            font-size: 17px !important;
            line-height: 24px !important;
            font-weight: 500 !important;
            color: #1669c9 !important;
            margin-bottom: 10px !important;
            padding: 0 !important; }
          body.page-template-webinars-home .webinars_archive_bar .recent ul li p, body.page-template-webinars-home .webinars_archive_bar .popular ul li p {
            width: 100% !important; }
    body.page-template-webinars-home .webinars_archive_bar .popular {
      float: right;
      border: none;
      padding-left: 20px; }
    body.page-template-webinars-home .webinars_archive_bar .view_more_btn {
      clear: both;
      margin: 20px 0;
      padding: 40px 0 0 0; }
      body.page-template-webinars-home .webinars_archive_bar .view_more_btn a {
        font-size: 15px !important;
        font-weight: 500 !important;
        letter-spacing: .5px !important;
        color: #fff !important;
        background-color: #5a799c !important;
        border-radius: 6px !important;
        text-decoration: none !important;
        border: none !important;
        margin: 0 !important;
        padding: 7px 12px 7px 12px !important; }
      body.page-template-webinars-home .webinars_archive_bar .view_more_btn.arrowClose {
        display: none; }
  @media screen and (max-width: 980px) {
    body.page-template-webinars-home {
      /* Upcoming Webinars */
      /* Recent & Popular Webinars */ }
      body.page-template-webinars-home .upcoming .post .intro, body.page-template-webinars-home .upcoming .post .intro .img, body.page-template-webinars-home .upcoming .post .intro .info, body.page-template-webinars-home .upcoming .post .details {
        clear: both;
        float: none;
        width: 100%;
        margin: 0;
        padding: 0; }
      body.page-template-webinars-home .upcoming .post .intro .img img {
        max-width: 150px; }
      body.page-template-webinars-home .upcoming .post .info {
        margin-top: 15px !important; }
      body.page-template-webinars-home .upcoming .post .details {
        border: none;
        margin-top: 30px; }
      body.page-template-webinars-home .webinars_archive_bar .recent, body.page-template-webinars-home .webinars_archive_bar .popular {
        float: none;
        width: 100%;
        border: none;
        margin: 0;
        padding: 0; }
      body.page-template-webinars-home .webinars_archive_bar .popular {
        margin-top: 30px !important; } }

/* Resources / Webinars Archive
-------------------------------------------------------------------- */
body.page-template-webinar-list {
  /* out of bounds h1 */
  /* Filter */
  /* Webinar List */ }
  body.page-template-webinar-list #content-sidebar-wrap > .wrap {
    width: 100%;
    max-width: 1040px;
    margin: 0 auto;
    margin-bottom: -10px;
    padding: 40px 20px 0 20px; }
    body.page-template-webinar-list #content-sidebar-wrap > .wrap h1 {
      font-family: "Roboto Slab" !important;
      font-size: 24px !important;
      line-height: 28px !important;
      font-weight: 300 !important;
      color: #51AF46 !important;
      border-bottom: 1px solid #ABC1DA !important;
      margin: 0 !important;
      padding: 0 0 6px 0 !important; }
      body.page-template-webinar-list #content-sidebar-wrap > .wrap h1:first-child {
        margin-top: 0 !important; }
  body.page-template-webinar-list #filter-bar {
    float: left;
    width: 25%;
    margin: 0;
    padding: 0; }
    body.page-template-webinar-list #filter-bar #webinar_searchfilter {
      background-color: transparent;
      border: none;
      margin: 0;
      padding: 0; }
      body.page-template-webinar-list #filter-bar #webinar_searchfilter #webinar_search_form {
        margin: 0;
        padding: 0; }
        body.page-template-webinar-list #filter-bar #webinar_searchfilter #webinar_search_form fieldset {
          margin: 0; }
          body.page-template-webinar-list #filter-bar #webinar_searchfilter #webinar_search_form fieldset legend {
            font-size: 15px;
            line-height: 18px;
            font-weight: 500;
            color: #3F648F;
            text-transform: uppercase;
            margin: 0 0 15px 0;
            padding: 0; }
          body.page-template-webinar-list #filter-bar #webinar_searchfilter #webinar_search_form fieldset label {
            overflow: initial;
            clear: left;
            position: relative;
            display: block;
            font-size: 14px;
            line-height: 19px;
            font-weight: 400;
            list-style: none;
            position: relative;
            margin: 0 0 15px 0;
            padding: 0; }
            body.page-template-webinar-list #filter-bar #webinar_searchfilter #webinar_search_form fieldset label:before, body.page-template-webinar-list #filter-bar #webinar_searchfilter #webinar_search_form fieldset label:after {
              content: "";
              display: table; }
            body.page-template-webinar-list #filter-bar #webinar_searchfilter #webinar_search_form fieldset label:after {
              clear: both; }
            body.page-template-webinar-list #filter-bar #webinar_searchfilter #webinar_search_form fieldset label input[type="checkbox"] {
              display: inline-block;
              width: auto;
              vertical-align: top;
              -webkit-appearance: none;
              box-shadow: none;
              border: 1px solid #819AB6;
              border-radius: 2px;
              background-color: #E3ECF9;
              margin: 1px 8px 0 0;
              padding: 7px; }
            body.page-template-webinar-list #filter-bar #webinar_searchfilter #webinar_search_form fieldset label [type="checkbox"]:checked + span:before {
              content: 'X';
              position: absolute;
              top: 4px;
              left: 4px;
              font-size: 14px;
              line-height: 0.8;
              color: #1669C9;
              transition: all .2s;
              font-weight: 500; }
            body.page-template-webinar-list #filter-bar #webinar_searchfilter #webinar_search_form fieldset label span {
              cursor: pointer;
              display: inline-block;
              width: 190px;
              font-size: 14px;
              font-weight: 300;
              color: #3F648F;
              margin: 1px 0 0 0; }
              body.page-template-webinar-list #filter-bar #webinar_searchfilter #webinar_search_form fieldset label span:hover {
                opacity: .75; }
        body.page-template-webinar-list #filter-bar #webinar_searchfilter #webinar_search_form input[type="submit"] {
          font-size: 15px !important;
          font-weight: 500 !important;
          color: #fff !important;
          background-color: #5a799c !important;
          border-radius: 6px !important;
          border: none !important;
          text-decoration: none !important;
          margin: 12px 0 !important;
          padding: 8px 16px 8px 16px !important; }
          body.page-template-webinar-list #filter-bar #webinar_searchfilter #webinar_search_form input[type="submit"]:hover {
            opacity: .75; }
  body.page-template-webinar-list .article-list {
    float: left;
    width: 75%;
    margin: 0;
    padding: 0;
    /* sort */
    /* list */ }
    body.page-template-webinar-list .article-list .sort_menu {
      font-size: 15px;
      line-height: 20px;
      font-weight: 400;
      color: #1669c9;
      text-transform: uppercase;
      margin: 0 0 40px 0;
      padding: 0; }
      body.page-template-webinar-list .article-list .sort_menu strong {
        font-weight: 500;
        color: #3D6390;
        margin-right: 14px; }
      body.page-template-webinar-list .article-list .sort_menu a {
        font-size: 15px;
        line-height: 20px;
        font-weight: 400;
        color: #1669c9;
        text-transform: uppercase;
        margin: 0 14px 0 0;
        padding: 5px 0 5px 0; }
        body.page-template-webinar-list .article-list .sort_menu a.sort_active {
          border-bottom: 5px solid #ABC1DA !important; }
    body.page-template-webinar-list .article-list .product_items {
      margin: 0;
      padding: 0; }
      body.page-template-webinar-list .article-list .product_items .post {
        border: none;
        margin: 0 0 40px 0;
        padding: 0; }
        body.page-template-webinar-list .article-list .product_items .post h3 {
          font-size: 16px !important;
          line-height: 22px !important;
          font-weight: 500 !important;
          color: #1669c9 !important;
          margin: 0 0 12px 0 !important;
          padding: 0 !important; }
          body.page-template-webinar-list .article-list .product_items .post h3 a {
            text-decoration: none; }
        body.page-template-webinar-list .article-list .product_items .post p.presenters {
          font-size: 14px;
          line-height: 20px;
          font-weight: 400;
          color: #546B85;
          margin: 0;
          padding: 0; }
      body.page-template-webinar-list .article-list .product_items .finiteScroll span {
        width: auto;
        text-align: center;
        margin: 0 auto; }
        body.page-template-webinar-list .article-list .product_items .finiteScroll span a {
          display: inline-block;
          width: auto; }
  @media screen and (max-width: 990px) {
    body.page-template-webinar-list #filter-bar,
    body.page-template-webinar-list .webinar-archive {
      float: none;
      width: 100%; }
      body.page-template-webinar-list #filter-bar label span,
      body.page-template-webinar-list .webinar-archive label span {
        width: 400px !important; }
    body.page-template-webinar-list .webinar-archive {
      margin-top: 30px; } }

/* Resources / Webinars Detail (Upcoming, Archived)
-------------------------------------------------------------------- */
body.upcoming_webinar,
body.archived_webinar {
  /* social icons */
  /* title */
  /* main container */ }
  body.upcoming_webinar .addthis_toolbox,
  body.archived_webinar .addthis_toolbox {
    width: 100%;
    max-width: 1000px;
    min-height: 25px;
    text-align: right;
    margin: 0 auto;
    margin-top: 40px;
    margin-bottom: 15px;
    padding: 0; }
    body.upcoming_webinar .addthis_toolbox a,
    body.archived_webinar .addthis_toolbox a {
      display: inline-block;
      float: none; }
  body.upcoming_webinar #resource_title,
  body.archived_webinar #resource_title {
    width: 100% !important;
    max-width: 1000px !important;
    margin: 0 auto !important;
    margin-bottom: 35px !important;
    padding: 0 !important; }
    body.upcoming_webinar #resource_title #webinar_subtitle,
    body.archived_webinar #resource_title #webinar_subtitle {
      font-size: 13px !important;
      line-height: 16px !important;
      font-weight: 500 !important;
      color: #6EA9ED !important;
      text-transform: uppercase !important;
      margin: 0 0 4px 0 !important;
      padding: 0 !important; }
    body.upcoming_webinar #resource_title h1.entry-title,
    body.archived_webinar #resource_title h1.entry-title {
      font-family: "Roboto Slab" !important;
      font-size: 26px !important;
      line-height: 32px !important;
      font-weight: 300 !important;
      color: #51AF46 !important;
      margin: 0 !important;
      padding: 0 !important; }
  body.upcoming_webinar #main_content_wrap,
  body.archived_webinar #main_content_wrap {
    width: 100% !important;
    max-width: 1000px !important;
    margin: 0 auto !important;
    margin-bottom: 40px !important;
    padding: 0 !important; }
    body.upcoming_webinar #main_content_wrap #content,
    body.archived_webinar #main_content_wrap #content {
      width: 100% !important;
      border: none !important;
      margin: 0 !important;
      padding: 0 !important; }

/* reset styles for Archived Webinars as it shares same body class as webinar detail archived */
body.archived_webinar.page-template-webinar-list {
  /* main container */ }
  body.archived_webinar.page-template-webinar-list #main_content_wrap {
    max-width: 1040px !important;
    margin: 0 auto !important;
    padding: 40px 20px !important; }

/* Upcoming */
body.upcoming_webinar {
  /* full bleed blocks at bottom */
  /* main container */
  /* Related Services */
  /* Related Resources */ }
  body.upcoming_webinar #content-sidebar-wrap {
    margin-bottom: 0 !important; }
  body.upcoming_webinar #main_content_wrap {
    /* meta */
    /* content */ }
    body.upcoming_webinar #main_content_wrap #webinar_reg_info {
      float: left !important;
      width: 25% !important;
      margin: 0 !important;
      padding: 0 !important;
      /* date/time and fee */ }
      body.upcoming_webinar #main_content_wrap #webinar_reg_info #webinar_date_time,
      body.upcoming_webinar #main_content_wrap #webinar_reg_info #webinar_fee {
        font-size: 15px !important;
        line-height: 20px !important;
        font-weight: 500 !important;
        color: #3F648F !important;
        margin: 0 0 24px 0 !important;
        padding: 0 !important; }
        body.upcoming_webinar #main_content_wrap #webinar_reg_info #webinar_date_time strong,
        body.upcoming_webinar #main_content_wrap #webinar_reg_info #webinar_fee strong {
          display: block;
          font-size: 13px !important;
          line-height: 16px !important;
          font-weight: 500 !important;
          color: #51AF46 !important;
          text-transform: uppercase !important;
          margin: 0 0 4px 0 !important;
          padding: 0 !important; }
      body.upcoming_webinar #main_content_wrap #webinar_reg_info a.webinar_registration_url {
        display: initial !important;
        width: auto !important;
        max-width: 150px !important;
        height: auto !important;
        overflow: visible !important;
        text-indent: 0 !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        color: #fff !important;
        background: none !important;
        background-color: #5a799c !important;
        border-radius: 6px !important;
        border: none !important;
        text-decoration: none !important;
        text-align: center !important;
        margin: 12px 0 !important;
        padding: 8px 16px 8px 16px !important; }
        body.upcoming_webinar #main_content_wrap #webinar_reg_info a.webinar_registration_url:hover {
          opacity: .75; }
    body.upcoming_webinar #main_content_wrap .entry {
      clear: none !important;
      float: right !important;
      width: 75% !important;
      margin: 0 !important;
      padding: 0 !important;
      /* buttons */ }
      body.upcoming_webinar #main_content_wrap .entry .webinar-video {
        display: none; }
      body.upcoming_webinar #main_content_wrap .entry .summary {
        float: none !important;
        margin: 0 !important;
        padding: 0 !important;
        /* content */
        /* presenters */ }
        body.upcoming_webinar #main_content_wrap .entry .summary:before, body.upcoming_webinar #main_content_wrap .entry .summary:after {
          content: "";
          display: table; }
        body.upcoming_webinar #main_content_wrap .entry .summary:after {
          clear: both; }
        body.upcoming_webinar #main_content_wrap .entry .summary .details {
          float: left !important;
          width: 440px !important;
          margin: 0 !important;
          padding: 0 !important; }
        body.upcoming_webinar #main_content_wrap .entry .summary #webinar_presenters {
          clear: none !important;
          float: right !important;
          width: 265px !important;
          border: none !important;
          margin: 0 !important;
          padding: 0 !important; }
          body.upcoming_webinar #main_content_wrap .entry .summary #webinar_presenters h3 {
            display: block;
            font-size: 20px !important;
            line-height: 26px !important;
            font-weight: 500 !important;
            color: #546B85 !important;
            background: none !important;
            margin: 0 0 20px 0 !important;
            padding: 0 !important; }
          body.upcoming_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter {
            float: none !important;
            width: 100% !important;
            min-height: 0 !important;
            margin: 0 0 25px 0 !important;
            padding: 0 !important; }
            body.upcoming_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter:last-child {
              float: right !important; }
            body.upcoming_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter a {
              display: block !important;
              border: none !important; }
              body.upcoming_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter a .presenter_name {
                color: #1669c9; }
            body.upcoming_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter .thumb {
              float: left !important;
              width: 100px !important;
              height: auto !important; }
              body.upcoming_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter .thumb img {
                width: 100% !important;
                height: auto !important; }
            body.upcoming_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter .presenter_info {
              float: right !important;
              width: 150px !important;
              font-size: 13px !important;
              line-height: 18px !important;
              font-weight: 500 !important;
              color: #819AB6 !important;
              margin: 0 0 4px 0 !important;
              padding: 0 !important; }
              body.upcoming_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter .presenter_info .presenter_name {
                font-size: 16px !important;
                line-height: 22px !important; }
      body.upcoming_webinar #main_content_wrap .entry .btn-group {
        clear: both !important;
        margin: 30px 0 0 0 !important;
        padding: 0 !important; }
        body.upcoming_webinar #main_content_wrap .entry .btn-group a {
          width: auto !important;
          height: auto !important;
          overflow: visible !important;
          text-indent: 0 !important;
          font-size: 15px !important;
          font-weight: 500 !important;
          color: #fff !important;
          background: none !important;
          background-color: #5a799c !important;
          border-radius: 6px !important;
          border: none !important;
          text-decoration: none !important;
          text-transform: none !important;
          text-align: center !important;
          margin: 0 12px 0 0 !important;
          padding: 8px 16px 8px 16px !important; }
          body.upcoming_webinar #main_content_wrap .entry .btn-group a:hover {
            opacity: .75; }
  body.upcoming_webinar #related-services,
  body.upcoming_webinar #related-resources {
    width: 100%;
    background-color: #E3ECF9;
    margin: 0 !important;
    padding: 0 !important; }
    body.upcoming_webinar #related-services .container,
    body.upcoming_webinar #related-resources .container {
      width: 100% !important;
      max-width: 1040px !important;
      margin: 0 auto !important;
      padding: 20px 0 !important; }
      body.upcoming_webinar #related-services .container:before, body.upcoming_webinar #related-services .container:after,
      body.upcoming_webinar #related-resources .container:before,
      body.upcoming_webinar #related-resources .container:after {
        content: "";
        display: table; }
      body.upcoming_webinar #related-services .container:after,
      body.upcoming_webinar #related-resources .container:after {
        clear: both; }
    body.upcoming_webinar #related-services h2,
    body.upcoming_webinar #related-resources h2 {
      font-family: "Roboto Slab";
      font-size: 28px;
      line-height: 34px;
      font-weight: 300;
      color: #51AF46;
      margin: 0 0 20px 0;
      padding: 0; }
    body.upcoming_webinar #related-services .more_links,
    body.upcoming_webinar #related-resources .more_links {
      float: none;
      clear: both;
      width: 100%;
      text-align: center;
      margin: 0;
      padding: 0; }
      body.upcoming_webinar #related-services .more_links a,
      body.upcoming_webinar #related-resources .more_links a {
        display: inline-block;
        font-size: 15px !important;
        line-height: 18px !important;
        font-weight: 500 !important;
        color: #fff !important;
        background-color: #5a799c !important;
        border-radius: 6px !important;
        border: none !important;
        text-decoration: none !important;
        text-transform: initial;
        margin: 0 !important;
        padding: 8px 16px 8px 16px !important; }
        body.upcoming_webinar #related-services .more_links a span,
        body.upcoming_webinar #related-resources .more_links a span {
          background: none !important;
          margin: 0;
          padding: 0; }
        body.upcoming_webinar #related-services .more_links a:hover,
        body.upcoming_webinar #related-resources .more_links a:hover {
          opacity: .75; }
    body.upcoming_webinar #related-services ul.services-list,
    body.upcoming_webinar #related-services ul.resources-list,
    body.upcoming_webinar #related-resources ul.services-list,
    body.upcoming_webinar #related-resources ul.resources-list {
      display: grid;
      grid-template-columns: 1fr 1fr;
      grid-gap: 30px;
      margin: 0;
      padding: 0; }
      body.upcoming_webinar #related-services ul.services-list.hidden,
      body.upcoming_webinar #related-services ul.resources-list.hidden,
      body.upcoming_webinar #related-resources ul.services-list.hidden,
      body.upcoming_webinar #related-resources ul.resources-list.hidden {
        display: none; }
      body.upcoming_webinar #related-services ul.services-list li,
      body.upcoming_webinar #related-services ul.resources-list li,
      body.upcoming_webinar #related-resources ul.services-list li,
      body.upcoming_webinar #related-resources ul.resources-list li {
        list-style: none;
        float: left;
        width: 100%;
        margin: 0 0 20px 0;
        padding: 0; }
        body.upcoming_webinar #related-services ul.services-list li h3,
        body.upcoming_webinar #related-services ul.resources-list li h3,
        body.upcoming_webinar #related-resources ul.services-list li h3,
        body.upcoming_webinar #related-resources ul.resources-list li h3 {
          margin: 0 0 6px 0;
          padding: 0; }
          body.upcoming_webinar #related-services ul.services-list li h3 a,
          body.upcoming_webinar #related-services ul.resources-list li h3 a,
          body.upcoming_webinar #related-resources ul.services-list li h3 a,
          body.upcoming_webinar #related-resources ul.resources-list li h3 a {
            margin: 0;
            padding: 0; }
        body.upcoming_webinar #related-services ul.services-list li a,
        body.upcoming_webinar #related-services ul.resources-list li a,
        body.upcoming_webinar #related-resources ul.services-list li a,
        body.upcoming_webinar #related-resources ul.resources-list li a {
          display: block;
          font-size: 17px;
          line-height: 24px;
          font-weight: 500;
          color: #1669c9;
          margin: 0 0 10px 0;
          padding: 0; }
          body.upcoming_webinar #related-services ul.services-list li a .thumb,
          body.upcoming_webinar #related-services ul.resources-list li a .thumb,
          body.upcoming_webinar #related-resources ul.services-list li a .thumb,
          body.upcoming_webinar #related-resources ul.resources-list li a .thumb {
            float: left;
            margin: 0;
            padding: 0; }
          body.upcoming_webinar #related-services ul.services-list li a .info,
          body.upcoming_webinar #related-services ul.resources-list li a .info,
          body.upcoming_webinar #related-resources ul.services-list li a .info,
          body.upcoming_webinar #related-resources ul.resources-list li a .info {
            float: right;
            width: 350px;
            margin: 0;
            padding: 0; }
            body.upcoming_webinar #related-services ul.services-list li a .info h3,
            body.upcoming_webinar #related-services ul.resources-list li a .info h3,
            body.upcoming_webinar #related-resources ul.services-list li a .info h3,
            body.upcoming_webinar #related-resources ul.resources-list li a .info h3 {
              font-size: 17px;
              line-height: 24px;
              font-weight: 500;
              color: #1669c9;
              margin: 0 0 10px 0;
              padding: 0; }
        body.upcoming_webinar #related-services ul.services-list li p,
        body.upcoming_webinar #related-services ul.resources-list li p,
        body.upcoming_webinar #related-resources ul.services-list li p,
        body.upcoming_webinar #related-resources ul.resources-list li p {
          font-size: 16px;
          line-height: 24px;
          font-weight: 300;
          color: #546b85;
          margin: 0;
          padding: 0; }
  body.upcoming_webinar #related-resources {
    width: 100%;
    background-color: #ABC1DA;
    margin: 0 !important;
    padding: 0 !important; }
    body.upcoming_webinar #related-resources h2 {
      color: #fff; }
  @media screen and (max-width: 1050px) {
    body.upcoming_webinar .addthis_toolbox,
    body.upcoming_webinar #resource_title,
    body.upcoming_webinar #main_content_wrap,
    body.upcoming_webinar #related-services .container,
    body.upcoming_webinar #related-resources .container {
      width: 95% !important; } }
  @media screen and (max-width: 1065px) {
    body.upcoming_webinar #related-services ul.resources-list li,
    body.upcoming_webinar #related-resources ul.resources-list li {
      float: none !important;
      width: 100% !important;
      margin-bottom: 25px !important; }
      body.upcoming_webinar #related-services ul.resources-list li:last-child,
      body.upcoming_webinar #related-resources ul.resources-list li:last-child {
        margin-bottom: 0 !important; }
      body.upcoming_webinar #related-services ul.resources-list li .thumb,
      body.upcoming_webinar #related-resources ul.resources-list li .thumb {
        margin-right: 20px !important; }
      body.upcoming_webinar #related-services ul.resources-list li .info,
      body.upcoming_webinar #related-resources ul.resources-list li .info {
        float: none !important;
        width: auto !important; }
    body.upcoming_webinar #related-resources ul.resources-list {
      grid-template-columns: 1fr; }
      body.upcoming_webinar #related-resources ul.resources-list li {
        margin: 0 !important; } }
  @media screen and (max-width: 1020px) {
    body.upcoming_webinar #main_content_wrap .entry .summary .details,
    body.upcoming_webinar #main_content_wrap .entry .summary #webinar_presenters {
      float: none !important;
      width: 100% !important; }
    body.upcoming_webinar #main_content_wrap .entry .summary #webinar_presenters {
      margin-top: 30px !important; }
      body.upcoming_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter .presenter_info {
        float: left !important;
        margin: 0 0 0 15px !important;
        padding: 0 !important; } }
  @media screen and (max-width: 890px) {
    body.upcoming_webinar #related-services ul.services-list {
      grid-template-columns: 1fr; } }
  @media screen and (max-width: 780px) {
    body.upcoming_webinar #main_content_wrap #webinar_reg_info,
    body.upcoming_webinar #main_content_wrap .entry {
      float: none !important;
      width: 100% !important; }
    body.upcoming_webinar #main_content_wrap .entry {
      margin-top: 30px !important; } }
  @media screen and (max-width: 470px) {
    body.upcoming_webinar #related-resources ul.resources-list li .info {
      margin-top: 20px !important; }
    body.upcoming_webinar #main_content_wrap .entry .btn-group a {
      display: block !important;
      margin-bottom: 15px !important; } }

/* Archived */
body.archived_webinar {
  /* main container */ }
  body.archived_webinar #main_content_wrap {
    /* content */ }
    body.archived_webinar #main_content_wrap .entry {
      clear: none !important;
      float: none !important;
      width: 100% !important;
      margin: 0 !important;
      padding: 0 !important;
      /* video */
      /* buttons */ }
      body.archived_webinar #main_content_wrap .entry:before, body.archived_webinar #main_content_wrap .entry:after {
        content: "";
        display: table; }
      body.archived_webinar #main_content_wrap .entry:after {
        clear: both; }
      body.archived_webinar #main_content_wrap .entry .webinar-video {
        display: block !important;
        float: left !important;
        width: 25% !important;
        min-width: 385px !important;
        max-width: 385px !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important; }
        body.archived_webinar #main_content_wrap .entry .webinar-video iframe {
          max-width: 385px !important; }
      body.archived_webinar #main_content_wrap .entry .summary {
        float: right !important;
        width: 575px !important;
        margin: 0 !important;
        padding: 0 !important;
        /* presenters */
        /* materials */ }
        body.archived_webinar #main_content_wrap .entry .summary .details {
          width: 100% !important;
          margin: 0 !important;
          padding: 0 !important; }
          body.archived_webinar #main_content_wrap .entry .summary .details h4 {
            display: block;
            font-size: 13px !important;
            line-height: 16px !important;
            font-weight: 500 !important;
            letter-spacing: .6px !important;
            color: #819AB6 !important;
            text-transform: uppercase !important;
            margin: 0 0 4px 0 !important;
            padding: 0 !important; }
          body.archived_webinar #main_content_wrap .entry .summary .details h2 {
            font-size: 20px !important;
            line-height: 26px !important;
            font-weight: 500 !important;
            color: #546B85 !important;
            margin: 24px 0 8px 0 !important;
            padding: 0 !important; }
        body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters {
          border-top: 1px solid #ABC1DA;
          border-bottom: 1px solid #ABC1DA;
          margin: 20px 0 20px 0 !important;
          padding: 20px 0 20px 0 !important; }
          body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters h3 {
            font-size: 20px !important;
            line-height: 26px !important;
            font-weight: 400 !important;
            color: #546B85 !important;
            background: none !important;
            margin: 0 0 20px 0 !important;
            padding: 0 !important; }
          body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter {
            float: left !important;
            width: 48% !important;
            min-height: 0 !important;
            margin: 0 0 12px 0 !important;
            padding: 0 !important; }
            body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter:nth-child(odd) {
              float: right !important; }
            body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter a {
              display: block !important;
              border: none !important; }
              body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter a .presenter_name {
                color: #1669c9; }
            body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter .thumb {
              float: left !important;
              width: 100px !important;
              height: auto !important; }
              body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter .thumb img {
                width: 100% !important;
                height: auto !important; }
            body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter .presenter_info {
              float: right !important;
              width: 160px !important;
              font-size: 13px !important;
              line-height: 18px !important;
              font-weight: 500 !important;
              color: #819AB6 !important;
              margin: 0 0 4px 0 !important;
              padding: 0 !important; }
              body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter .presenter_info .presenter_name {
                font-size: 16px !important;
                line-height: 22px !important; }
        body.archived_webinar #main_content_wrap .entry .summary #webinar-materials {
          margin: 0 !important;
          padding: 0 !important; }
          body.archived_webinar #main_content_wrap .entry .summary #webinar-materials h3 {
            display: block !important;
            font-size: 20px !important;
            line-height: 26px !important;
            font-weight: 500 !important;
            color: #546B85 !important;
            background: none !important;
            margin: 0 0 20px 0 !important;
            padding: 0 !important; }
          body.archived_webinar #main_content_wrap .entry .summary #webinar-materials .webinar_materials_content iframe {
            width: 100% !important;
            margin: 0 !important;
            padding: 0 !important; }
      body.archived_webinar #main_content_wrap .entry .btn-group {
        clear: both !important;
        float: right !important;
        width: 100% !important;
        max-width: 575px !important;
        margin: 20px 0 0 0 !important;
        padding: 0 !important; }
        body.archived_webinar #main_content_wrap .entry .btn-group a {
          width: auto !important;
          height: auto !important;
          overflow: visible !important;
          text-indent: 0 !important;
          font-size: 15px !important;
          font-weight: 500 !important;
          color: #fff !important;
          background: none !important;
          background-color: #5a799c !important;
          border-radius: 6px !important;
          border: none !important;
          text-decoration: none !important;
          text-transform: none !important;
          text-align: center !important;
          margin: 0 12px 0 0 !important;
          padding: 8px 16px 8px 16px !important; }
          body.archived_webinar #main_content_wrap .entry .btn-group a:hover {
            opacity: .75; }
  @media screen and (max-width: 1050px) {
    body.archived_webinar .addthis_toolbox,
    body.archived_webinar #resource_title,
    body.archived_webinar #main_content_wrap,
    body.archived_webinar #related-services .container,
    body.archived_webinar #related-resources .container {
      width: 95% !important; }
    body.archived_webinar #main_content_wrap .entry .webinar-video,
    body.archived_webinar #main_content_wrap .entry .summary {
      float: none !important;
      width: 100% !important; }
    body.archived_webinar #main_content_wrap .entry .summary {
      margin-top: 30px !important; }
      body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter .presenter_info {
        float: left !important;
        margin: 0 0 0 15px !important;
        padding: 0 !important; } }
  @media screen and (max-width: 650px) {
    body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter {
      float: none !important;
      width: 100% !important; }
      body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter:last-child {
        margin-top: 20px !important; } }
  @media screen and (max-width: 470px) {
    body.archived_webinar #main_content_wrap .entry .btn-group a {
      display: block !important;
      margin-bottom: 15px !important; } }

body.upcoming_webinar #related-resources ul.resources-list {
  width: 100%;
  margin: 0 0 20px 0; }
  body.upcoming_webinar #related-resources ul.resources-list li {
    width: auto;
    height: auto; }
    body.upcoming_webinar #related-resources ul.resources-list li .thumb {
      float: left !important;
      width: 20% !important;
      min-width: 100px !important;
      max-width: 100px !important;
      margin: 0 20px 0 0 !important;
      padding: 0; }
    body.upcoming_webinar #related-resources ul.resources-list li .info {
      float: left !important;
      width: 70% !important;
      margin: 0;
      padding: 0; }

@media screen and (max-width: 1065px) {
  body.upcoming_webinar #related-resources ul.resources-list {
    grid-template-columns: 1fr 1fr; } }

@media screen and (max-width: 890px) {
  body.upcoming_webinar #related-resources ul.resources-list {
    grid-template-columns: 1fr; } }

/* Resources / R&D Alert
-------------------------------------------------------------------- */
body.page-template-rdalert-home #content {
  /* slideshow */
  /* promo */
  /* Additional R&D Alert Articles */
  /* R&D Alert in Print */ }
  body.page-template-rdalert-home #content h2 {
    font-family: "Roboto Slab";
    font-size: 28px;
    line-height: 34px;
    font-weight: 300;
    color: #51AF46;
    margin: 0 0 30px 0;
    padding: 0; }
  body.page-template-rdalert-home #content #spotlight_slider {
    margin: 0;
    padding: 0;
    /* pagination */
    /* slide */ }
    body.page-template-rdalert-home #content #spotlight_slider .bx-viewport {
      height: 370px !important; }
    body.page-template-rdalert-home #content #spotlight_slider .bx-controls {
      z-index: 999;
      position: absolute;
      bottom: 0;
      right: 0;
      width: 325px;
      height: 25px; }
      body.page-template-rdalert-home #content #spotlight_slider .bx-controls .bx-pager {
        height: inherit;
        margin: 0;
        padding: 0; }
        body.page-template-rdalert-home #content #spotlight_slider .bx-controls .bx-pager .bx-pager-item a {
          display: inline-block;
          background-image: url("../images/slider_controls_sprite_blue.png") !important; }
    body.page-template-rdalert-home #content #spotlight_slider .slide {
      /* photo */
      /* info */ }
      body.page-template-rdalert-home #content #spotlight_slider .slide .img {
        float: left;
        width: 650px;
        margin: 0;
        padding: 0; }
      body.page-template-rdalert-home #content #spotlight_slider .slide .info {
        float: right;
        width: 325px;
        margin: 0;
        padding: 0; }
        body.page-template-rdalert-home #content #spotlight_slider .slide .info h3 {
          font-size: 13px;
          line-height: 18px;
          font-weight: 500;
          color: #819AB6;
          text-transform: uppercase;
          letter-spacing: 1px;
          margin: 3px 0 6px 0;
          padding: 0; }
        body.page-template-rdalert-home #content #spotlight_slider .slide .info h4 {
          font-size: 28px;
          line-height: 32px;
          font-weight: 300;
          color: #1669c9;
          text-transform: none;
          margin: 0 0 10px 0;
          padding: 0; }
          body.page-template-rdalert-home #content #spotlight_slider .slide .info h4 a {
            text-decoration: none; }
  body.page-template-rdalert-home #content .promo {
    background-color: #E3ECF9;
    border-radius: 6px;
    margin: 40px 0 40px 0;
    padding: 20px 20px 15px 20px; }
    body.page-template-rdalert-home #content .promo p {
      width: 70% !important;
      font-size: 19px;
      line-height: 28px;
      font-weight: 500;
      color: #6EA9ED;
      background: url("../images/icon-write.png") no-repeat left center;
      margin: 0;
      padding: 10px 0 10px 85px; }
      body.page-template-rdalert-home #content .promo p a {
        color: #6EA9ED;
        text-decoration: none; }
      body.page-template-rdalert-home #content .promo p.button {
        float: right;
        width: auto !important;
        background: none;
        margin: 28px 50px 0 0;
        padding: 0; }
        body.page-template-rdalert-home #content .promo p.button a.btn {
          font-size: 15px !important;
          line-height: 18px !important;
          font-weight: 500 !important;
          color: #fff !important;
          background-color: #5a799c !important;
          border-radius: 6px !important;
          border: none !important;
          text-decoration: none !important;
          margin: 12px 0 !important;
          padding: 8px 16px 8px 16px !important; }
          body.page-template-rdalert-home #content .promo p.button a.btn:hover {
            opacity: .75; }
  body.page-template-rdalert-home #content .additional-rdalert-articles {
    border-bottom: 1px solid #ABC1DA;
    margin: 0 0 40px 0;
    padding: 0 0 40px 0; }
    body.page-template-rdalert-home #content .additional-rdalert-articles ul.addl_rdalerts {
      display: flex;
      margin: 0 0 40px 0;
      padding: 0; }
      body.page-template-rdalert-home #content .additional-rdalert-articles ul.addl_rdalerts li {
        float: left;
        list-style: none;
        width: 33.3%;
        /* IE10, IE11 */
        text-align: center;
        background-color: #EEF2F7;
        border-radius: 6px;
        margin: 0 20px 0 20px;
        padding: 30px; }
        @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
          body.page-template-rdalert-home #content .additional-rdalert-articles ul.addl_rdalerts li {
            width: 30%; } }
        body.page-template-rdalert-home #content .additional-rdalert-articles ul.addl_rdalerts li:first-child {
          margin-left: 0; }
        body.page-template-rdalert-home #content .additional-rdalert-articles ul.addl_rdalerts li:last-child {
          margin-right: 0; }
        body.page-template-rdalert-home #content .additional-rdalert-articles ul.addl_rdalerts li img {
          border-radius: 3px; }
        body.page-template-rdalert-home #content .additional-rdalert-articles ul.addl_rdalerts li h3 {
          font-size: 13px;
          line-height: 18px;
          font-weight: 500;
          color: #819AB6;
          text-transform: uppercase;
          letter-spacing: 1px;
          text-align: left;
          margin: 15px 0 8px 0;
          padding: 0; }
        body.page-template-rdalert-home #content .additional-rdalert-articles ul.addl_rdalerts li h4 {
          font-size: 17px;
          line-height: 22px;
          font-weight: 600;
          text-align: left;
          margin: 0;
          padding: 0; }
          body.page-template-rdalert-home #content .additional-rdalert-articles ul.addl_rdalerts li h4 a {
            text-decoration: none; }
    body.page-template-rdalert-home #content .additional-rdalert-articles p {
      width: 100% !important; }
      body.page-template-rdalert-home #content .additional-rdalert-articles p.button {
        text-align: center; }
      body.page-template-rdalert-home #content .additional-rdalert-articles p a.btn {
        font-size: 15px !important;
        line-height: 18px !important;
        font-weight: 500 !important;
        color: #fff !important;
        background-color: #5a799c !important;
        border-radius: 6px !important;
        border: none !important;
        text-decoration: none !important;
        margin: 12px 0 !important;
        padding: 8px 16px 8px 16px !important; }
        body.page-template-rdalert-home #content .additional-rdalert-articles p a.btn:hover {
          opacity: .75; }
  body.page-template-rdalert-home #content .rdalert-in-print {
    margin: 0;
    padding: 0; }
    body.page-template-rdalert-home #content .rdalert-in-print img.thumb {
      float: left;
      margin: 0 20px 0 0;
      padding: 0; }
    body.page-template-rdalert-home #content .rdalert-in-print h2 {
      margin: 0 0 12px 0; }
    body.page-template-rdalert-home #content .rdalert-in-print p {
      width: 100% !important; }
      body.page-template-rdalert-home #content .rdalert-in-print p.button {
        width: 100% !important;
        text-align: center;
        margin: 30px 0 0 0;
        padding: 0; }
        body.page-template-rdalert-home #content .rdalert-in-print p.button a.btn {
          font-size: 15px !important;
          line-height: 18px !important;
          font-weight: 500 !important;
          color: #fff !important;
          background-color: #5a799c !important;
          border-radius: 6px !important;
          border: none !important;
          text-decoration: none !important;
          margin: 0 0 0 -171px !important;
          padding: 8px 16px 8px 16px !important; }
          body.page-template-rdalert-home #content .rdalert-in-print p.button a.btn:hover {
            opacity: .75; }
  @media screen and (max-width: 1045px) {
    body.page-template-rdalert-home #content #spotlight_slider .bx-viewport {
      height: auto !important;
      min-height: 600px; }
    body.page-template-rdalert-home #content #spotlight_slider .bx-controls {
      position: relative;
      width: 100%; }
    body.page-template-rdalert-home #content #spotlight_slider .slide .img,
    body.page-template-rdalert-home #content #spotlight_slider .slide .info {
      float: none;
      width: 100%; }
    body.page-template-rdalert-home #content #spotlight_slider .slide .info {
      margin-top: 20px; } }
  @media screen and (max-width: 700px) {
    body.page-template-rdalert-home #content .promo p {
      float: none !important;
      width: 100% !important;
      background: none !important;
      text-align: center;
      margin: 0 !important;
      padding: 0 !important; }
      body.page-template-rdalert-home #content .promo p.button {
        margin: 0 auto !important;
        margin-bottom: 20px !important; }
    body.page-template-rdalert-home #content .additional-rdalert-articles ul {
      display: block !important; }
      body.page-template-rdalert-home #content .additional-rdalert-articles ul li {
        float: none !important;
        width: 100% !important;
        text-align: left !important;
        margin: 0 0 20px 0 !important; } }
  @media screen and (max-width: 585px) {
    body.page-template-rdalert-home #content .rdalert-in-print p.button {
      float: none !important;
      clear: both;
      margin: 0 !important;
      padding: 30px 0 0 0 !important; }
      body.page-template-rdalert-home #content .rdalert-in-print p.button a.btn {
        margin: 0 !important; } }

/* Resources / R&D Alert Archive
-------------------------------------------------------------------- */
body.page-template-rdalert-list #content {
  /* Additional R&D Alert Articles */ }
  body.page-template-rdalert-list #content h1 {
    font-family: "Roboto Slab";
    font-size: 28px;
    line-height: 34px;
    font-weight: 300;
    color: #51AF46;
    margin: 0 0 30px 0;
    padding: 0; }
  body.page-template-rdalert-list #content .article-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 40px 0;
    padding: 0;
    /* pagination */ }
    body.page-template-rdalert-list #content .article-list .post {
      flex: 1 1 250px;
      list-style: none;
      /* flex fallback */
      text-align: center;
      background-color: #EEF2F7;
      border-radius: 6px;
      border: none;
      margin: 10px;
      padding: 30px; }
      @supports not (display: grid) {
        body.page-template-rdalert-list #content .article-list .post {
          float: left;
          width: 30%;
          min-height: 330px; } }
      body.page-template-rdalert-list #content .article-list .post img {
        border-radius: 3px; }
      body.page-template-rdalert-list #content .article-list .post p.meta {
        font-size: 13px;
        line-height: 18px;
        font-weight: 500;
        color: #819AB6;
        text-transform: uppercase;
        letter-spacing: 1px;
        text-align: left;
        margin: 15px 0 8px 0;
        padding: 0; }
      body.page-template-rdalert-list #content .article-list .post h2 {
        font-size: 17px;
        line-height: 22px;
        font-weight: 600;
        text-align: left;
        margin: 0;
        padding: 0; }
        body.page-template-rdalert-list #content .article-list .post h2 a {
          color: #1669c9;
          text-decoration: none;
          border: none; }
    body.page-template-rdalert-list #content .article-list .navigation {
      clear: both;
      width: 100%;
      text-align: center;
      margin: 0;
      padding: 30px 0 0 0; }
      body.page-template-rdalert-list #content .article-list .navigation .nav-links a, body.page-template-rdalert-list #content .article-list .navigation .nav-links span.current {
        font-size: 14px;
        font-weight: 400;
        color: #1669c9; }
      body.page-template-rdalert-list #content .article-list .navigation .nav-links a {
        text-decoration: none;
        margin: 0 10px 0 10px;
        padding: 0; }
        body.page-template-rdalert-list #content .article-list .navigation .nav-links a.prev {
          display: inline-block;
          width: 12px;
          height: 15px;
          text-indent: -9999px;
          background: url(../images/icon-arrow-left-purple.png) no-repeat 0 0;
          vertical-align: middle; }
        body.page-template-rdalert-list #content .article-list .navigation .nav-links a.next {
          display: inline-block;
          width: 12px;
          height: 15px;
          text-indent: -9999px;
          background: url(../images/icon-arrow-right-purple.png) no-repeat 0 0;
          vertical-align: middle; }
      body.page-template-rdalert-list #content .article-list .navigation .nav-links span.current {
        border: 1px solid #b4b1a6;
        background-color: #eef2f7;
        padding: 2px 6px; }
  @media screen and (max-width: 800px) {
    body.page-template-rdalert-list #content .article-list .post {
      /* flex fallback */ }
      @supports not (display: grid) {
        body.page-template-rdalert-list #content .article-list .post {
          width: 45%; } } }
  @media screen and (max-width: 600px) {
    body.page-template-rdalert-list #content .article-list .post {
      /* flex fallback */ }
      @supports not (display: grid) {
        body.page-template-rdalert-list #content .article-list .post {
          float: none;
          width: 100%;
          min-height: 0; } } }

/* Resources / R&D Alert Articles
-------------------------------------------------------------------- */
body.single-rd_alert_online {
  /* Related Resources */ }
  body.single-rd_alert_online #content {
    /* intro */
    /* container */ }
    body.single-rd_alert_online #content .social-bar {
      float: right; }
      body.single-rd_alert_online #content .social-bar a {
        border: none !important; }
    body.single-rd_alert_online #content h1 {
      font-family: "Roboto Slab";
      font-size: 34px;
      line-height: 40px;
      font-weight: 300;
      color: #51AF46;
      margin: 0 0 5px 0;
      padding: 0; }
    body.single-rd_alert_online #content .entry-content h2 {
      float: none !important;
      width: 100% !important;
      font-family: "Roboto" !important;
      font-size: 13px !important;
      line-height: 18px !important;
      font-weight: 500 !important;
      color: #819AB6 !important;
      text-transform: uppercase !important;
      letter-spacing: 1px !important;
      text-align: left !important;
      border: none !important;
      margin: 0 0 20px 0 !important;
      padding: 0 !important; }
    body.single-rd_alert_online #content .intro {
      /* photo */
      /* Briefly */ }
      body.single-rd_alert_online #content .intro .post_image {
        float: left;
        width: 650px;
        margin: 0;
        padding: 0; }
      body.single-rd_alert_online #content .intro .toc {
        float: right;
        width: 340px;
        height: 370px;
        max-width: none;
        background-color: #EEF2F7;
        border: none;
        margin: 0;
        padding: 0; }
        body.single-rd_alert_online #content .intro .toc h2 {
          font-size: 18px !important;
          line-height: 25px !important;
          font-weight: 500 !important;
          color: #fff !important;
          background-color: #ABC1DA !important;
          text-transform: uppercase !important;
          letter-spacing: .5px !important;
          margin: 0 !important;
          padding: 2px 15px !important; }
        body.single-rd_alert_online #content .intro .toc .toc_content {
          margin: 0;
          padding: 15px; }
          body.single-rd_alert_online #content .intro .toc .toc_content ul {
            margin: 0;
            padding: 0; }
            body.single-rd_alert_online #content .intro .toc .toc_content ul li {
              list-style: none;
              background: url("../images/icon-arrow-right-green.png") no-repeat 0 3px;
              border: none;
              font-size: 16px;
              line-height: 22px;
              font-weight: 500 !important;
              margin: 0 0 15px 0;
              padding: 0 0 0 20px; }
              body.single-rd_alert_online #content .intro .toc .toc_content ul li:last-child {
                margin-bottom: 0; }
    body.single-rd_alert_online #content .container {
      margin: 30px 0 0 0;
      padding: 0;
      /* sidebar */
      /* content */ }
      body.single-rd_alert_online #content .container .rdalert-sidebar {
        float: left;
        width: 30%;
        max-width: 230px;
        margin: 0;
        padding: 0;
        /* contact */ }
        body.single-rd_alert_online #content .container .rdalert-sidebar .widget_text {
          margin: 0 0 30px 0;
          padding: 0; }
        body.single-rd_alert_online #content .container .rdalert-sidebar #sidebar_project_contact .widget-wrap {
          display: none !important; }
        body.single-rd_alert_online #content .container .rdalert-sidebar #sidebar_project_contact .contactInfo {
          position: relative;
          overflow: inherit;
          width: 230px;
          background-color: #EEF2F7;
          border-radius: 6px;
          border: none;
          text-align: center;
          margin: 45px 0 40px 0;
          padding: 85px 30px 20px 30px;
          /* name */
          /* phone */ }
          body.single-rd_alert_online #content .container .rdalert-sidebar #sidebar_project_contact .contactInfo::before {
            content: "";
            display: inline-block;
            position: absolute;
            top: -45px;
            left: 54px;
            width: 119px;
            height: 119px;
            background-image: url("../images/icon-more-info-i.png");
            background-repeat: no-repeat; }
          body.single-rd_alert_online #content .container .rdalert-sidebar #sidebar_project_contact .contactInfo p.name {
            border: none;
            margin: 0 0 10px 0;
            padding: 0; }
            body.single-rd_alert_online #content .container .rdalert-sidebar #sidebar_project_contact .contactInfo p.name a {
              font-size: 18px;
              font-weight: 500;
              text-decoration: none; }
          body.single-rd_alert_online #content .container .rdalert-sidebar #sidebar_project_contact .contactInfo p.phone {
            float: none !important;
            width: auto !important;
            font-size: 18px !important;
            font-weight: 500 !important;
            color: #819AB6 !important;
            margin: 0 !important;
            padding: 0 !important; }
            body.single-rd_alert_online #content .container .rdalert-sidebar #sidebar_project_contact .contactInfo p.phone span.icon {
              display: inline-block;
              width: 15px;
              height: 16px;
              background: url("../images/icon-phone.png") no-repeat 0 0; }
          body.single-rd_alert_online #content .container .rdalert-sidebar #sidebar_project_contact .contactInfo p.email {
            float: none !important;
            width: auto !important;
            margin: 10px 0 0 0 !important;
            padding: 0 !important; }
            body.single-rd_alert_online #content .container .rdalert-sidebar #sidebar_project_contact .contactInfo p.email a {
              display: block;
              border-radius: 6px;
              background-color: #5a799c;
              font-size: 15px;
              font-weight: 400;
              color: #fff !important;
              text-decoration: none !important;
              padding: 5px 10px 5px 10px; }
        body.single-rd_alert_online #content .container .rdalert-sidebar h4 {
          font-family: "Roboto";
          font-size: 13px;
          line-height: 18px;
          font-weight: 500;
          letter-spacing: 1px;
          color: #51AF46;
          text-transform: uppercase;
          margin: 0 0 6px 0;
          padding: 0; }
        body.single-rd_alert_online #content .container .rdalert-sidebar ul {
          margin: 0;
          padding: 0; }
          body.single-rd_alert_online #content .container .rdalert-sidebar ul li {
            list-style: none;
            font-size: 15px;
            line-height: 20px;
            font-weight: 500 !important;
            border: none;
            margin: 0 0 12px 0;
            padding: 0; }
            body.single-rd_alert_online #content .container .rdalert-sidebar ul li a {
              color: #1669c9 !important; }
      body.single-rd_alert_online #content .container .rdalert-content {
        float: right;
        width: 74%;
        margin: 0;
        padding: 0;
        /* removing */ }
        body.single-rd_alert_online #content .container .rdalert-content p.intro {
          float: none !important;
          width: auto !important; }
        body.single-rd_alert_online #content .container .rdalert-content h2 {
          font-size: 20px !important;
          line-height: 26px !important;
          font-weight: 500 !important;
          color: #546B85 !important;
          text-transform: none !important;
          margin: 25px 0 10px 0 !important;
          padding: 0 !important; }
        body.single-rd_alert_online #content .container .rdalert-content blockquote {
          float: none !important;
          width: 100% !important;
          min-height: 125px !important;
          border-radius: 5px !important;
          border: none !important;
          background: #EEF2F7 url("../images/icon-quote-white.png") no-repeat 15px 15px !important;
          margin: 20px 0 !important;
          padding: 20px 20px 20px 170px !important; }
          body.single-rd_alert_online #content .container .rdalert-content blockquote p {
            font-size: 16px !important;
            line-height: 20px !important;
            font-weight: 500 !important;
            color: #3F648F !important;
            font-style: normal !important;
            margin: 0 !important;
            padding: 0 !important; }
  body.single-rd_alert_online #related-resources {
    width: 100%;
    background-color: #ABC1DA;
    margin: 0 !important;
    padding: 0 !important; }
    body.single-rd_alert_online #related-resources .container {
      width: 100% !important;
      max-width: 1040px !important;
      margin: 0 auto !important;
      padding: 20px 20px !important; }
      body.single-rd_alert_online #related-resources .container:before, body.single-rd_alert_online #related-resources .container:after {
        content: "";
        display: table; }
      body.single-rd_alert_online #related-resources .container:after {
        clear: both; }
    body.single-rd_alert_online #related-resources h3 {
      font-family: "Roboto Slab";
      font-size: 28px;
      line-height: 34px;
      font-weight: 300;
      color: #fff;
      margin: 0;
      padding: 0 0 15px 0; }
    body.single-rd_alert_online #related-resources .more_links {
      float: none;
      clear: both;
      width: 100%;
      text-align: center;
      margin: 0;
      padding: 0; }
      body.single-rd_alert_online #related-resources .more_links a {
        display: inline-block;
        font-size: 15px !important;
        line-height: 18px !important;
        font-weight: 500 !important;
        color: #fff !important;
        background-color: #5a799c !important;
        border-radius: 6px !important;
        border: none !important;
        text-decoration: none !important;
        text-transform: initial;
        margin: 0 !important;
        padding: 8px 16px 8px 16px !important; }
        body.single-rd_alert_online #related-resources .more_links a span {
          background: none !important;
          margin: 0;
          padding: 0; }
        body.single-rd_alert_online #related-resources .more_links a:hover {
          opacity: .75; }
    body.single-rd_alert_online #related-resources ul.resource_list {
      width: 100%;
      display: grid;
      grid-template-columns: 1fr 1fr;
      grid-gap: 30px;
      margin: 0 0 20px 0;
      padding: 0; }
      body.single-rd_alert_online #related-resources ul.resource_list.hidden {
        display: none; }
      body.single-rd_alert_online #related-resources ul.resource_list li {
        width: 100% !important;
        /* css grid fallback */
        list-style: none;
        height: auto;
        width: auto !important;
        border-bottom: 0 !important;
        float: left;
        /* css grid fallback */
        margin: 0 0 20px 0 !important;
        padding: 0 !important; }
        body.single-rd_alert_online #related-resources ul.resource_list li:nth-child(even) {
          float: left !important; }
        body.single-rd_alert_online #related-resources ul.resource_list li a {
          display: block;
          font-size: 17px;
          line-height: 24px;
          font-weight: 500;
          color: #1669c9;
          text-decoration: none !important;
          margin: 0 0 10px 0;
          padding: 0; }
          body.single-rd_alert_online #related-resources ul.resource_list li a .thumb {
            float: left !important;
            width: 20% !important;
            min-width: 100px !important;
            max-width: 100px !important;
            margin: 0 20px 0 0;
            padding: 0; }
            body.single-rd_alert_online #related-resources ul.resource_list li a .thumb img {
              width: 100% !important; }
          body.single-rd_alert_online #related-resources ul.resource_list li a .info {
            float: left !important;
            width: 70% !important;
            margin: 0;
            padding: 0; }
            body.single-rd_alert_online #related-resources ul.resource_list li a .info h4 {
              font-size: 17px;
              line-height: 24px;
              font-weight: 500;
              color: #1669c9;
              margin: 0 0 10px 0;
              padding: 0; }
        body.single-rd_alert_online #related-resources ul.resource_list li p {
          font-size: 16px;
          line-height: 24px;
          font-weight: 300;
          color: #546b85;
          margin: 0;
          padding: 0; }
      @media screen and (max-width: 1040px) {
        body.single-rd_alert_online #related-resources ul.resource_list .thumb {
          display: block !important; } }
      @media screen and (max-width: 890px) {
        body.single-rd_alert_online #related-resources ul.resource_list {
          grid-template-columns: 1fr; } }

@media screen and (max-width: 1050px) {
  body.single-rd_alert_online #content .intro .post_image,
  body.single-rd_alert_online #content .intro .toc {
    float: none;
    width: 100%; }
  body.single-rd_alert_online #content .intro .toc {
    height: auto;
    margin-top: 20px; }
  body.single-rd_alert_online #content .container .rdalert-sidebar,
  body.single-rd_alert_online #content .container .rdalert-content {
    float: none;
    width: 100%;
    max-width: none; } }

@media screen and (max-width: 453px) {
  body.single-rd_alert_online #related-resources ul.resource_list li .info {
    margin-top: 20px !important; } }

/* Resources / Signup Modal
-------------------------------------------------------------------- */
#signup-modal {
  max-width: 800px;
  background-color: #3F648F;
  border-radius: 12px;
  box-shadow: 8px 8px 12px rgba(0, 0, 0, 0.25);
  padding: 0;
  /* initially hide */
  /* header */
  /* subscribe content */
  /* form */ }
  #signup-modal .mkto-form-wrap,
  #signup-modal .cont-dl {
    display: none; }
  #signup-modal .modal-header {
    background-color: #18395F;
    height: 42px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px; }
    #signup-modal .modal-header .remodal-close {
      float: right;
      background-color: #244a77;
      border-top-right-radius: 12px;
      color: #5a799c;
      height: 42px; }
      #signup-modal .modal-header .remodal-close:before {
        font-size: 42px;
        line-height: 42px; }
  #signup-modal .subscribe-dialog {
    display: flex;
    margin: 0;
    padding: 30px 40px; }
    #signup-modal .subscribe-dialog .item {
      margin: 0;
      padding: 0; }
      #signup-modal .subscribe-dialog .item:nth-child(1) {
        float: left;
        width: 60%;
        padding-right: 40px; }
      #signup-modal .subscribe-dialog .item:nth-child(2) {
        float: left;
        width: 40%;
        min-width: 264px; }
    #signup-modal .subscribe-dialog h2 {
      font-family: "Roboto Slab";
      font-size: 45px;
      line-height: 45px;
      font-weight: 400;
      color: #6EA9ED;
      margin: 0 0 20px 0;
      padding: 0; }
    #signup-modal .subscribe-dialog p {
      font-size: 22px;
      line-height: 30px;
      font-weight: 400;
      color: #fff;
      margin: 0 0 25px 0;
      padding: 0; }
      #signup-modal .subscribe-dialog p.note {
        max-width: 375px;
        font-size: 18px;
        line-height: 21px;
        color: #BAD8FB;
        font-style: italic;
        margin: 0 auto;
        margin-top: 40px; }
        #signup-modal .subscribe-dialog p.note a.sub-no {
          display: inline;
          cursor: pointer;
          border-bottom: 1px solid #BAD8FB;
          color: #BAD8FB; }
          #signup-modal .subscribe-dialog p.note a.sub-no:hover {
            opacity: .75; }
  #signup-modal .btn {
    display: inline-block;
    width: auto;
    background-color: #6EA9ED;
    border-radius: 6px;
    font-size: 18px;
    line-height: 18px;
    font-weight: 700;
    margin: 0;
    padding: 10px 40px; }
    #signup-modal .btn:hover {
      opacity: .75; }
  #signup-modal .mkto-form-wrap {
    border-top: 6px solid #59799e;
    margin: 0 40px;
    padding: 30px 0;
    /* label */
    /* input */
    /* submit */ }
    #signup-modal .mkto-form-wrap form {
      width: 85% !important;
      margin: 0 auto; }
      #signup-modal .mkto-form-wrap form .mktoFormCol {
        width: 50% !important;
        margin-bottom: 20px !important; }
      #signup-modal .mkto-form-wrap form .mktoFieldWrap {
        width: 90% !important; }
    #signup-modal .mkto-form-wrap label {
      width: 100% !important;
      font-size: 10px;
      line-height: 14px;
      font-weight: 700;
      color: #fff;
      text-transform: uppercase;
      margin: 0 0 6px 0;
      padding: 0; }
    #signup-modal .mkto-form-wrap input[type="text"],
    #signup-modal .mkto-form-wrap input[type="email"] {
      width: 100% !important;
      height: 42px;
      border: none;
      border-radius: 4px;
      box-shadow: none;
      background-color: #fff;
      font-size: 14px;
      line-height: 18px;
      font-weight: 700;
      color: #3F648F;
      margin: 0;
      padding: 4px 12px; }
    #signup-modal .mkto-form-wrap .mktoButtonRow {
      display: block !important;
      width: 100% !important;
      margin: 15px 0 0 0 !important;
      padding: 0 !important; }
      #signup-modal .mkto-form-wrap .mktoButtonRow .mktoButtonWrap {
        display: block !important;
        text-align: center !important;
        margin: 0 !important;
        padding: 0 !important; }
        #signup-modal .mkto-form-wrap .mktoButtonRow .mktoButtonWrap button {
          font-size: 18px !important;
          line-height: 18px !important;
          font-weight: 700 !important;
          color: #fff !important;
          background-color: #6EA9ED !important;
          border-radius: 6px !important;
          border: none !important;
          background-image: none !important;
          margin: 0 !important;
          padding: 8px 16px 8px 16px !important; }
          #signup-modal .mkto-form-wrap .mktoButtonRow .mktoButtonWrap button:hover {
            opacity: .75; }
  @media screen and (max-width: 645px) {
    #signup-modal .subscribe-dialog {
      display: block; }
      #signup-modal .subscribe-dialog .item:nth-child(1) {
        float: none;
        width: 100%;
        margin: 0;
        padding: 0; }
      #signup-modal .subscribe-dialog .item:nth-child(2) {
        display: none; } }

/* WestEd Events
-------------------------------------------------------------------- */
body.page-wested-events,
body.page-wested-past-events {
  /* required to prevent filter from being cut off by footer when page is short */
  /* event type filter */
  /* filter (subnav) */
  /* event list */
  /* pagination */ }
  body.page-wested-events #inner #content,
  body.page-wested-past-events #inner #content {
    min-height: 400px; }
  body.page-wested-events h2.event-warp,
  body.page-wested-past-events h2.event-warp {
    float: right;
    margin: 0;
    padding: 12px 0 0 0; }
    body.page-wested-events h2.event-warp a,
    body.page-wested-past-events h2.event-warp a {
      font-size: 18px;
      line-height: 20px;
      font-weight: 400;
      text-decoration: none; }
  body.page-wested-events #content hr,
  body.page-wested-past-events #content hr {
    border-color: transparent;
    margin: 65px 0 30px 0; }
  body.page-wested-events .event-filter-container,
  body.page-wested-past-events .event-filter-container {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 250px;
    background-color: #E3ECF9;
    box-shadow: 4px 4px 12px rgba(0, 0, 0, 0.15);
    margin: 0 0 40px 0;
    padding: 0; }
    body.page-wested-events .event-filter-container form#event-filter,
    body.page-wested-past-events .event-filter-container form#event-filter {
      margin: 0;
      padding: 0; }
      body.page-wested-events .event-filter-container form#event-filter h4,
      body.page-wested-past-events .event-filter-container form#event-filter h4 {
        cursor: pointer;
        font-size: 15px;
        line-height: 18px;
        font-weight: 600;
        color: #3F648F;
        text-transform: uppercase;
        margin: 0;
        padding: 8px 15px; }
        body.page-wested-events .event-filter-container form#event-filter h4 span.arrow,
        body.page-wested-past-events .event-filter-container form#event-filter h4 span.arrow {
          display: inline-block;
          width: 17px;
          height: 11px;
          background: url("../images/icon-arrow-down-resources-aow-filter.png") no-repeat top right;
          margin: 0 0 0 5px;
          padding: 0; }
        body.page-wested-events .event-filter-container form#event-filter h4.filters-closed span.arrow,
        body.page-wested-past-events .event-filter-container form#event-filter h4.filters-closed span.arrow {
          transform: rotate(-90deg); }
      body.page-wested-events .event-filter-container form#event-filter .form-inner,
      body.page-wested-past-events .event-filter-container form#event-filter .form-inner {
        margin: 0;
        padding: 0; }
        body.page-wested-events .event-filter-container form#event-filter .form-inner ul,
        body.page-wested-past-events .event-filter-container form#event-filter .form-inner ul {
          margin: 0;
          padding: 0; }
          body.page-wested-events .event-filter-container form#event-filter .form-inner ul li,
          body.page-wested-past-events .event-filter-container form#event-filter .form-inner ul li {
            list-style: none;
            margin: 0;
            padding: 8px 15px; }
            body.page-wested-events .event-filter-container form#event-filter .form-inner ul li:nth-child(odd),
            body.page-wested-past-events .event-filter-container form#event-filter .form-inner ul li:nth-child(odd) {
              background-color: #eef3fb; }
            body.page-wested-events .event-filter-container form#event-filter .form-inner ul li:hover,
            body.page-wested-past-events .event-filter-container form#event-filter .form-inner ul li:hover {
              opacity: .75; }
            body.page-wested-events .event-filter-container form#event-filter .form-inner ul li input,
            body.page-wested-past-events .event-filter-container form#event-filter .form-inner ul li input {
              width: auto;
              margin: 0 8px 0 0;
              padding: 0; }
            body.page-wested-events .event-filter-container form#event-filter .form-inner ul li label,
            body.page-wested-past-events .event-filter-container form#event-filter .form-inner ul li label {
              cursor: pointer;
              font-size: 15px;
              line-height: 18px;
              font-weight: 600;
              color: #5A799C;
              margin: 0;
              padding: 0; }
        body.page-wested-events .event-filter-container form#event-filter .form-inner #event-filter-btn-wrap,
        body.page-wested-past-events .event-filter-container form#event-filter .form-inner #event-filter-btn-wrap {
          border-top: 6px solid #eef3fb;
          margin: 0;
          padding: 0; }
          body.page-wested-events .event-filter-container form#event-filter .form-inner #event-filter-btn-wrap #event-filter-btn,
          body.page-wested-past-events .event-filter-container form#event-filter .form-inner #event-filter-btn-wrap #event-filter-btn {
            cursor: pointer;
            display: block;
            max-width: 150px;
            font-family: "Roboto" !important;
            font-size: 15px !important;
            line-height: 18px !important;
            font-weight: 500 !important;
            color: #fff !important;
            background-color: #5a799c !important;
            border-radius: 6px !important;
            border: none !important;
            text-decoration: none !important;
            text-align: center;
            margin: 20px auto !important;
            padding: 8px 16px 8px 16px !important; }
            body.page-wested-events .event-filter-container form#event-filter .form-inner #event-filter-btn-wrap #event-filter-btn:hover,
            body.page-wested-past-events .event-filter-container form#event-filter .form-inner #event-filter-btn-wrap #event-filter-btn:hover {
              opacity: .75; }
  body.page-wested-events .event-list,
  body.page-wested-past-events .event-list {
    margin: 0;
    padding: 0; }
    body.page-wested-events .event-list .event-post,
    body.page-wested-past-events .event-list .event-post {
      margin: 0 0 35px 0;
      padding: 0; }
      body.page-wested-events .event-list .event-post .event-post-thumbnail,
      body.page-wested-past-events .event-list .event-post .event-post-thumbnail {
        float: left;
        width: 175px;
        margin: 0;
        padding: 0 25px 0 0; }
        body.page-wested-events .event-list .event-post .event-post-thumbnail img,
        body.page-wested-past-events .event-list .event-post .event-post-thumbnail img {
          border-radius: 6px; }
      body.page-wested-events .event-list .event-post .event-post-content,
      body.page-wested-past-events .event-list .event-post .event-post-content {
        float: left;
        width: 550px;
        margin: 0;
        padding: 0; }
        body.page-wested-events .event-list .event-post .event-post-content h2,
        body.page-wested-past-events .event-list .event-post .event-post-content h2 {
          font-size: 17px;
          line-height: 24px;
          font-weight: 500;
          margin: 0 0 7px 0;
          padding: 0; }
          body.page-wested-events .event-list .event-post .event-post-content h2 a,
          body.page-wested-past-events .event-list .event-post .event-post-content h2 a {
            color: #1669c9; }
            body.page-wested-events .event-list .event-post .event-post-content h2 a:hover,
            body.page-wested-past-events .event-list .event-post .event-post-content h2 a:hover {
              opacity: .75; }
        body.page-wested-events .event-list .event-post .event-post-content p,
        body.page-wested-past-events .event-list .event-post .event-post-content p {
          width: 100% !important;
          font-size: 16px;
          line-height: 20px;
          font-weight: 400;
          margin: 0;
          padding: 0; }
      body.page-wested-events .event-list .event-post .event-post-meta,
      body.page-wested-past-events .event-list .event-post .event-post-meta {
        float: right;
        width: 225px;
        border-left: 1px solid #ABC1DA;
        margin: 0 0 0 15px;
        padding: 0 0 0 15px; }
        body.page-wested-events .event-list .event-post .event-post-meta h3,
        body.page-wested-past-events .event-list .event-post .event-post-meta h3 {
          font-size: 10px;
          line-height: 16px;
          letter-spacing: .75;
          font-weight: 500;
          color: #51AF46;
          text-transform: uppercase;
          margin: 0;
          padding: 0; }
        body.page-wested-events .event-list .event-post .event-post-meta p,
        body.page-wested-past-events .event-list .event-post .event-post-meta p {
          font-size: 16px;
          line-height: 20px;
          font-weight: 400;
          color: #3F648F;
          margin: 0 0 10px 0;
          padding: 0; }
  body.page-wested-events .pagination,
  body.page-wested-past-events .pagination {
    text-align: center;
    margin: 0 0 30px 0;
    padding: 0; }
    body.page-wested-events .pagination h2,
    body.page-wested-past-events .pagination h2 {
      text-indent: -9999px;
      height: 0;
      margin: 0;
      padding: 0; }
    body.page-wested-events .pagination .nav-links a, body.page-wested-events .pagination .nav-links span.current,
    body.page-wested-past-events .pagination .nav-links a,
    body.page-wested-past-events .pagination .nav-links span.current {
      font-size: 14px;
      font-weight: 400;
      color: #1669c9; }
    body.page-wested-events .pagination .nav-links a,
    body.page-wested-past-events .pagination .nav-links a {
      text-decoration: none;
      margin: 0 5px 0 5px;
      padding: 0; }
      body.page-wested-events .pagination .nav-links a.prev,
      body.page-wested-past-events .pagination .nav-links a.prev {
        display: inline-block;
        width: 12px;
        height: 15px;
        text-indent: -9999px;
        background: url(../images/icon-arrow-left-purple.png) no-repeat 0 0; }
      body.page-wested-events .pagination .nav-links a.next,
      body.page-wested-past-events .pagination .nav-links a.next {
        display: inline-block;
        width: 12px;
        height: 15px;
        text-indent: -9999px;
        background: url(../images/icon-arrow-right-purple.png) no-repeat 0 0; }
    body.page-wested-events .pagination .nav-links span.current,
    body.page-wested-past-events .pagination .nav-links span.current {
      border: 1px solid #b4b1a6;
      background-color: #eef2f7;
      padding: 2px 6px; }
  @media screen and (max-width: 1000px) {
    body.page-wested-events .event-list .event-post .event-post-thumbnail,
    body.page-wested-past-events .event-list .event-post .event-post-thumbnail {
      display: none; }
    body.page-wested-events .event-list .event-post .event-post-content,
    body.page-wested-past-events .event-list .event-post .event-post-content {
      float: none;
      width: auto;
      margin: 0;
      padding: 0; }
    body.page-wested-events .event-list .event-post .event-post-meta,
    body.page-wested-past-events .event-list .event-post .event-post-meta {
      float: none;
      clear: both;
      width: 100%;
      border: none;
      border-top: 1px solid #ABC1DA;
      margin: 15px 0 0 0;
      padding: 15px 0 0 0; } }
  @media screen and (max-width: 450px) {
    body.page-wested-events .event-filter-container,
    body.page-wested-past-events .event-filter-container {
      position: relative;
      width: 100%;
      margin: 0 0 20px 0; }
      body.page-wested-events .event-filter-container #event-filter-btn-wrap,
      body.page-wested-past-events .event-filter-container #event-filter-btn-wrap {
        padding-bottom: 1px !important; }
    body.page-wested-events h2.event-warp,
    body.page-wested-past-events h2.event-warp {
      float: none;
      margin: 0 0 20px 0; }
    body.page-wested-events #content hr,
    body.page-wested-past-events #content hr {
      margin: 0; } }

/* WestEd Events / Detail
-------------------------------------------------------------------- */
body.single-wested_event {
  /* col 1 - thumbnail */
  /* col 2 - content */
  /* col 3 - sidebar */
  /* 2020-06-03 ELSWD Summit 2020 Sessions */ }
  body.single-wested_event .wested-event-thumbnail {
    float: left;
    width: 225px;
    margin: 0;
    padding: 0; }
    body.single-wested_event .wested-event-thumbnail .post_image {
      width: 225px;
      height: auto; }
      body.single-wested_event .wested-event-thumbnail .post_image img {
        max-width: 200px;
        height: auto;
        border-radius: 6px; }
  body.single-wested_event .wested-event-content {
    float: left;
    width: 500px;
    margin: 0;
    padding: 0; }
    body.single-wested_event .wested-event-content h3 {
      font-size: 19px;
      margin-bottom: 15px; }
    body.single-wested_event .wested-event-content p {
      width: 100% !important;
      line-height: 28px !important; }
      body.single-wested_event .wested-event-content p.btn {
        display: inline-block !important;
        width: auto !important;
        background-color: transparent !important;
        margin: 30px 10px 15px 0 !important; }
        body.single-wested_event .wested-event-content p.btn a {
          font-size: 15px !important;
          font-weight: 500 !important;
          color: #fff !important;
          background-color: #5a799c !important;
          border-radius: 6px !important;
          text-decoration: none !important;
          margin: 0 !important;
          padding: 7px 12px 7px 12px !important; }
          body.single-wested_event .wested-event-content p.btn a:hover {
            background-color: #5a799c !important; }
    body.single-wested_event .wested-event-content blockquote {
      margin: 10px 0;
      padding: 10px 30px; }
  body.single-wested_event .wested-event-sidebar {
    float: right;
    width: 225px;
    border-left: 1px solid #ABC1DA;
    margin: 0 0 0 15px;
    padding: 0 0 0 15px; }
    body.single-wested_event .wested-event-sidebar h3 {
      font-family: "Roboto";
      font-size: 10px;
      line-height: 16px;
      letter-spacing: .75;
      font-weight: 500;
      color: #51AF46;
      text-transform: uppercase;
      margin: 0;
      padding: 0; }
    body.single-wested_event .wested-event-sidebar p {
      font-size: 16px;
      line-height: 20px;
      font-weight: 400;
      color: #3F648F;
      margin: 0 0 10px 0;
      padding: 0; }
  @media screen and (max-width: 1000px) {
    body.single-wested_event .wested-event-thumbnail {
      display: none; }
    body.single-wested_event .wested-event-content {
      float: none;
      width: auto;
      margin: 0;
      padding: 0; }
    body.single-wested_event .wested-event-sidebar {
      float: none;
      width: auto;
      border: none;
      border-top: 1px solid #ABC1DA;
      margin: 15px 0 0 0;
      padding: 15px 0 0 0; } }
  body.single-wested_event .elswd-summit-2020 .session {
    background-color: #e8eff6;
    margin: 0 0 2px 0;
    padding: 20px; }
  body.single-wested_event .elswd-summit-2020 h4 {
    font-size: 15px;
    line-height: 20px;
    font-weight: 400;
    color: #51AF46;
    margin: 0 0 5px 0;
    padding: 0; }
    body.single-wested_event .elswd-summit-2020 h4.date {
      font-size: 18px;
      line-height: 18px;
      font-weight: 700;
      text-transform: none;
      background-color: #e8eff6;
      border-top-left-radius: 12px;
      border-top-right-radius: 12px;
      margin: 30px 0 2px 0;
      padding: 25px 20px; }
  body.single-wested_event .elswd-summit-2020 h5 {
    font-size: 16px;
    line-height: 22px;
    font-weight: 700;
    color: #546B85;
    margin: 0 0 15px 0;
    padding: 0; }
  body.single-wested_event .elswd-summit-2020 h6 {
    font-size: 14px;
    font-weight: 700;
    color: #546B85;
    text-transform: uppercase;
    margin: 20px 0 5px 0;
    padding: 0; }
  body.single-wested_event .elswd-summit-2020 p:last-child {
    margin-bottom: 0; }
  body.single-wested_event .elswd-summit-2020 ul {
    margin: 0 0 0 20px;
    padding: 0; }
    body.single-wested_event .elswd-summit-2020 ul li {
      margin: 0 0 10px 0;
      padding: 0; }
      body.single-wested_event .elswd-summit-2020 ul li:last-child {
        margin-bottom: 0; }
    body.single-wested_event .elswd-summit-2020 ul ul {
      margin: 5px 0 0 20px;
      padding: 0; }

/* WestEd News & Research Blog (and tag view)
-------------------------------------------------------------------- */
body.page-wested-news,
body.tag,
body.page-research-blog {
  /* filter */
  /* posts */
  /* pagination */ }
  body.page-wested-news h1.entry-child-title,
  body.tag h1.entry-child-title,
  body.page-research-blog h1.entry-child-title {
    display: none; }
  body.page-wested-news .wested-news-filter,
  body.tag .wested-news-filter,
  body.page-research-blog .wested-news-filter {
    margin: 0 0 40px 0;
    padding: 0; }
    body.page-wested-news .wested-news-filter p,
    body.tag .wested-news-filter p,
    body.page-research-blog .wested-news-filter p {
      margin: 0;
      padding: 0; }
      body.page-wested-news .wested-news-filter p a,
      body.tag .wested-news-filter p a,
      body.page-research-blog .wested-news-filter p a {
        display: inline-block;
        font-size: 15px;
        line-height: 20px;
        font-weight: 400;
        text-transform: uppercase;
        text-decoration: none !important;
        color: #1669c9 !important;
        margin: 0 20px 0 0;
        padding: 5px 0 5px 0; }
        body.page-wested-news .wested-news-filter p a:hover,
        body.tag .wested-news-filter p a:hover,
        body.page-research-blog .wested-news-filter p a:hover {
          opacity: .75; }
        body.page-wested-news .wested-news-filter p a.on,
        body.tag .wested-news-filter p a.on,
        body.page-research-blog .wested-news-filter p a.on {
          border-bottom: 5px solid #ABC1DA !important; }
  body.page-wested-news .news-list,
  body.tag .news-list,
  body.page-research-blog .news-list {
    /* single post */ }
    body.page-wested-news .news-list .news-post,
    body.tag .news-list .news-post,
    body.page-research-blog .news-list .news-post {
      margin: 0 0 40px 0;
      padding: 0; }
      body.page-wested-news .news-list .news-post .news-post-thumbnail,
      body.tag .news-list .news-post .news-post-thumbnail,
      body.page-research-blog .news-list .news-post .news-post-thumbnail {
        float: left;
        margin: 0;
        padding: 0; }
        body.page-wested-news .news-list .news-post .news-post-thumbnail img,
        body.tag .news-list .news-post .news-post-thumbnail img,
        body.page-research-blog .news-list .news-post .news-post-thumbnail img {
          max-width: 150px;
          border-radius: 6px;
          height: auto; }
      body.page-wested-news .news-list .news-post .news-post-content,
      body.tag .news-list .news-post .news-post-content,
      body.page-research-blog .news-list .news-post .news-post-content {
        margin: 0 0 0 175px;
        padding: 0; }
        body.page-wested-news .news-list .news-post .news-post-content time,
        body.tag .news-list .news-post .news-post-content time,
        body.page-research-blog .news-list .news-post .news-post-content time {
          display: block;
          font-size: 12px;
          line-height: 16px;
          font-weight: 600;
          letter-spacing: 2px;
          color: #6EA9ED;
          text-transform: uppercase;
          margin: 0 0 4px 0;
          padding: 0; }
        body.page-wested-news .news-list .news-post .news-post-content h2,
        body.tag .news-list .news-post .news-post-content h2,
        body.page-research-blog .news-list .news-post .news-post-content h2 {
          margin: 0 0 15px 0;
          padding: 0; }
          body.page-wested-news .news-list .news-post .news-post-content h2 a,
          body.tag .news-list .news-post .news-post-content h2 a,
          body.page-research-blog .news-list .news-post .news-post-content h2 a {
            font-size: 17px;
            line-height: 20px;
            font-weight: 600; }
        body.page-wested-news .news-list .news-post .news-post-content p,
        body.tag .news-list .news-post .news-post-content p,
        body.page-research-blog .news-list .news-post .news-post-content p {
          width: 100% !important;
          margin: 0 0 12px 0;
          padding: 0; }
          body.page-wested-news .news-list .news-post .news-post-content p.tags,
          body.tag .news-list .news-post .news-post-content p.tags,
          body.page-research-blog .news-list .news-post .news-post-content p.tags {
            font-size: 11px !important;
            line-height: 14px !important;
            font-weight: 600 !important;
            text-transform: uppercase;
            margin: 15px 0 0 0; }
            body.page-wested-news .news-list .news-post .news-post-content p.tags span,
            body.tag .news-list .news-post .news-post-content p.tags span,
            body.page-research-blog .news-list .news-post .news-post-content p.tags span {
              display: inline-block;
              margin: 0 10px 10px 0;
              padding: 0; }
              body.page-wested-news .news-list .news-post .news-post-content p.tags span a,
              body.tag .news-list .news-post .news-post-content p.tags span a,
              body.page-research-blog .news-list .news-post .news-post-content p.tags span a {
                color: #819AB6 !important;
                background-color: #EEF2F7;
                border-radius: 4px;
                text-decoration: none;
                padding: 2px 10px; }
  body.page-wested-news h3.tag-name,
  body.tag h3.tag-name,
  body.page-research-blog h3.tag-name {
    font-family: "Roboto";
    font-size: 16px;
    line-height: 22px;
    font-weight: 700;
    color: #819AB6;
    text-transform: uppercase;
    margin: 0 0 20px 0;
    padding: 0; }
    body.page-wested-news h3.tag-name::before,
    body.tag h3.tag-name::before,
    body.page-research-blog h3.tag-name::before {
      content: "Tag > "; }
  body.page-wested-news .pagination,
  body.tag .pagination,
  body.page-research-blog .pagination {
    text-align: center;
    margin: 35px 0 10px 0;
    padding: 0; }
    body.page-wested-news .pagination a,
    body.tag .pagination a,
    body.page-research-blog .pagination a {
      display: inline-block;
      color: #1669c9;
      text-decoration: none;
      font-size: 14px;
      font-weight: 400;
      margin: 0 6px;
      vertical-align: middle; }
      body.page-wested-news .pagination a.prev, body.page-wested-news .pagination a.next,
      body.tag .pagination a.prev,
      body.tag .pagination a.next,
      body.page-research-blog .pagination a.prev,
      body.page-research-blog .pagination a.next {
        text-indent: -9999px;
        display: inline-block;
        width: 12px;
        height: 15px; }
      body.page-wested-news .pagination a.prev,
      body.tag .pagination a.prev,
      body.page-research-blog .pagination a.prev {
        background: url(../images/icon-arrow-left-purple.png) no-repeat 0 0; }
      body.page-wested-news .pagination a.next,
      body.tag .pagination a.next,
      body.page-research-blog .pagination a.next {
        background: url(../images/icon-arrow-right-purple.png) no-repeat 0 0; }
    body.page-wested-news .pagination span.current,
    body.tag .pagination span.current,
    body.page-research-blog .pagination span.current {
      display: inline-block;
      border: 1px solid #b4b1a6;
      background-color: #eef2f7;
      padding: 2px 6px;
      font-size: 14px;
      font-weight: 400;
      margin: 0 6px;
      vertical-align: middle; }
  @media screen and (max-width: 450px) {
    body.page-wested-news .wested-news-filter p,
    body.tag .wested-news-filter p,
    body.page-research-blog .wested-news-filter p {
      text-align: center; }
      body.page-wested-news .wested-news-filter p a,
      body.tag .wested-news-filter p a,
      body.page-research-blog .wested-news-filter p a {
        display: block;
        margin: 0 0 20px 0;
        padding: 0; }
        body.page-wested-news .wested-news-filter p a.on,
        body.tag .wested-news-filter p a.on,
        body.page-research-blog .wested-news-filter p a.on {
          border: none !important;
          text-decoration: underline !important; }
    body.page-wested-news .news-list .news-post .news-post-thumbnail,
    body.page-wested-news .news-list .news-post .news-post-content,
    body.tag .news-list .news-post .news-post-thumbnail,
    body.tag .news-list .news-post .news-post-content,
    body.page-research-blog .news-list .news-post .news-post-thumbnail,
    body.page-research-blog .news-list .news-post .news-post-content {
      float: none;
      width: 100%;
      margin: 0 0 20px 0;
      padding: 0; }
      body.page-wested-news .news-list .news-post .news-post-thumbnail img,
      body.page-wested-news .news-list .news-post .news-post-content img,
      body.tag .news-list .news-post .news-post-thumbnail img,
      body.tag .news-list .news-post .news-post-content img,
      body.page-research-blog .news-list .news-post .news-post-thumbnail img,
      body.page-research-blog .news-list .news-post .news-post-content img {
        width: 100%;
        max-width: none; } }

/* WestEd News / Detail
-------------------------------------------------------------------- */
body.post-template-default {
  /* image container */
  /* social icons */
  /* content container */ }
  body.post-template-default .entry-content {
    border: none; }
  body.post-template-default .single-img {
    float: left;
    max-width: 250px;
    margin: 0;
    padding: 0; }
    body.post-template-default .single-img img {
      border-radius: 6px; }
  body.post-template-default .social-bar {
    min-height: 25px;
    margin: 0 0 15px 0;
    padding: 0; }
    body.post-template-default .social-bar .addthis_default_style {
      float: right;
      border: none;
      margin: 0;
      padding: 0; }
  body.post-template-default .single-main {
    float: right;
    width: 725px;
    margin: 0;
    padding: 0;
    /* date */
    /* tags */
    /* button */ }
    body.post-template-default .single-main h2 {
      font-family: "Roboto Slab";
      font-size: 28px;
      line-height: 34px;
      font-weight: 300;
      color: #51AF46;
      margin: 0 0 15px 0;
      padding: 0;
      /* category */ }
      body.post-template-default .single-main h2.cat {
        font-family: "Roboto";
        font-size: 13px;
        line-height: 18px;
        font-weight: 700;
        color: #819AB6;
        text-transform: uppercase;
        margin: 0 0 5px 0;
        padding: 0; }
    body.post-template-default .single-main p.post-date {
      font-size: 13px !important;
      line-height: 18px !important;
      font-weight: 700 !important;
      letter-spacing: 1px;
      color: #51AF46 !important;
      text-transform: uppercase;
      border-top: 1px solid #E3ECF9;
      margin: 30px 0 0 0 !important;
      padding: 15px 0 !important; }
    body.post-template-default .single-main p.tags {
      width: 100% !important;
      border-bottom: 1px solid #E3ECF9;
      font-size: 11px !important;
      line-height: 14px !important;
      font-weight: 600 !important;
      text-transform: uppercase;
      margin: 0 0 15px 0 !important;
      padding: 0 0 10px 0 !important; }
      body.post-template-default .single-main p.tags span {
        display: inline-block;
        margin: 0 10px 10px 0;
        padding: 0; }
        body.post-template-default .single-main p.tags span a {
          color: #819AB6 !important;
          background-color: #EEF2F7;
          text-decoration: none !important;
          border-radius: 4px;
          text-decoration: none;
          padding: 2px 10px; }
    body.post-template-default .single-main p.more {
      margin: 10px 0 20px 0 !important; }
  @media screen and (max-width: 1030px) {
    body.post-template-default {
      /* image container */ }
      body.post-template-default .single-img,
      body.post-template-default .single-main {
        float: none;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0; } }

/* WestEd Insights, Making a Difference (Shared)
-------------------------------------------------------------------- */
body.category-wested-insights .entry-content,
body.category-making-a-difference .entry-content {
  border: none; }

body.category-wested-insights .post-list,
body.category-making-a-difference .post-list {
  /* pagination */ }
  body.category-wested-insights .post-list .post,
  body.category-making-a-difference .post-list .post {
    margin: 0 0 40px 0;
    padding: 0; }
    body.category-wested-insights .post-list .post .post-thumbnail,
    body.category-making-a-difference .post-list .post .post-thumbnail {
      float: left;
      width: 150px;
      margin: 0;
      padding: 0; }
      body.category-wested-insights .post-list .post .post-thumbnail img,
      body.category-making-a-difference .post-list .post .post-thumbnail img {
        border-radius: 6px; }
    body.category-wested-insights .post-list .post .post-content,
    body.category-making-a-difference .post-list .post .post-content {
      margin: 0 0 0 175px;
      padding: 0; }
      body.category-wested-insights .post-list .post .post-content time,
      body.category-making-a-difference .post-list .post .post-content time {
        display: block;
        font-size: 12px;
        line-height: 16px;
        font-weight: 600;
        letter-spacing: 2px;
        color: #6EA9ED;
        text-transform: uppercase;
        margin: 0 0 4px 0;
        padding: 0; }
      body.category-wested-insights .post-list .post .post-content h2,
      body.category-making-a-difference .post-list .post .post-content h2 {
        font-family: "Roboto";
        font-size: 17px;
        line-height: 20px;
        font-weight: 600;
        margin: 0 0 15px 0;
        padding: 0; }
      body.category-wested-insights .post-list .post .post-content p.tags,
      body.category-making-a-difference .post-list .post .post-content p.tags {
        display: none; }
  body.category-wested-insights .post-list .pagination,
  body.category-making-a-difference .post-list .pagination {
    text-align: center;
    margin: 35px 0 10px 0;
    padding: 0; }
    body.category-wested-insights .post-list .pagination a,
    body.category-making-a-difference .post-list .pagination a {
      display: inline-block;
      color: #1669c9;
      text-decoration: none;
      font-size: 14px;
      font-weight: 400;
      margin: 0 6px;
      vertical-align: middle; }
      body.category-wested-insights .post-list .pagination a.prev, body.category-wested-insights .post-list .pagination a.next,
      body.category-making-a-difference .post-list .pagination a.prev,
      body.category-making-a-difference .post-list .pagination a.next {
        text-indent: -9999px;
        display: inline-block;
        width: 12px;
        height: 15px; }
      body.category-wested-insights .post-list .pagination a.prev,
      body.category-making-a-difference .post-list .pagination a.prev {
        background: url(../images/icon-arrow-left-purple.png) no-repeat 0 0; }
      body.category-wested-insights .post-list .pagination a.next,
      body.category-making-a-difference .post-list .pagination a.next {
        background: url(../images/icon-arrow-right-purple.png) no-repeat 0 0; }
    body.category-wested-insights .post-list .pagination span.current,
    body.category-making-a-difference .post-list .pagination span.current {
      display: inline-block;
      border: 1px solid #b4b1a6;
      background-color: #eef2f7;
      padding: 2px 6px;
      font-size: 14px;
      font-weight: 400;
      margin: 0 6px;
      vertical-align: middle; }
  @media screen and (max-width: 450px) {
    body.category-wested-insights .post-list .post .post-thumbnail,
    body.category-making-a-difference .post-list .post .post-thumbnail {
      float: none; }
    body.category-wested-insights .post-list .post .post-content,
    body.category-making-a-difference .post-list .post .post-content {
      margin: 20px 0 0 0; } }

/* Making a Difference / List */
body.category-making-a-difference .post-list .post .post-thumbnail {
  margin: -5px 0 0 -5px; }
  body.category-making-a-difference .post-list .post .post-thumbnail a {
    display: block; }
    body.category-making-a-difference .post-list .post .post-thumbnail a img {
      width: 100%;
      height: auto;
      -webkit-clip-path: circle(80px at center);
      clip-path: circle(80px at center);
      border: 2px solid #fff;
      border-radius: 80px; }

/* Making a Difference / Detail */
body.single-post.making-a-difference .single-img img {
  width: 100%;
  height: auto;
  clip-path: circle(250px at center);
  border: 2px solid #fff;
  border-radius: 250px; }

/* Subscribe
-------------------------------------------------------------------- */
body.subscribe #inner .entry-content {
  /* Left */
  /* Right */
  /* E-Bulletin Archive */ }
  body.subscribe #inner .entry-content .colLeft {
    float: left;
    width: 35%;
    min-width: 320px;
    max-width: 320px;
    margin: 0;
    padding: 0; }
    body.subscribe #inner .entry-content .colLeft hr {
      clear: both;
      border: none 0;
      border-top: 2px solid #E3ECF9;
      text-align: center;
      width: 100%;
      height: 1px;
      margin: 15px 0 15px 0; }
    body.subscribe #inner .entry-content .colLeft p {
      float: left;
      width: 60% !important;
      font-size: 15px;
      line-height: 20px;
      font-weight: 700;
      color: #3F648F;
      margin: 0 0 15px 0;
      padding: 0; }
    body.subscribe #inner .entry-content .colLeft ul.social {
      float: right;
      width: 40%;
      text-align: right;
      margin: 0;
      padding: 0; }
      body.subscribe #inner .entry-content .colLeft ul.social li {
        list-style: none;
        display: inline-block;
        margin: 0;
        padding: 0; }
        body.subscribe #inner .entry-content .colLeft ul.social li a {
          display: block;
          width: 36px;
          height: 36px; }
          body.subscribe #inner .entry-content .colLeft ul.social li a.twitter {
            background: url("../images/icon-social-twitter-lite.png") no-repeat 0 0; }
          body.subscribe #inner .entry-content .colLeft ul.social li a.facebook {
            background: url("../images/icon-social-facebook-lite.png") no-repeat 0 0; }
          body.subscribe #inner .entry-content .colLeft ul.social li a.linkedin {
            background: url("../images/icon-social-linkedin-lite.png") no-repeat 0 0; }
  body.subscribe #inner .entry-content .colRight {
    float: right;
    width: 65%;
    margin: 0;
    padding: 0;
    /* Marketo form */ }
    body.subscribe #inner .entry-content .colRight form.mktoForm {
      width: 100%;
      color: #3F648F;
      margin: 0 0 30px 0;
      padding: 0;
      /* label */
      /* input */
      /* checkbox list */
      /* submit */ }
      body.subscribe #inner .entry-content .colRight form.mktoForm .mktoHtmlText {
        font-size: 12px;
        line-height: 14px;
        font-weight: 300;
        color: #3F648F;
        margin: 0;
        padding: 0; }
      body.subscribe #inner .entry-content .colRight form.mktoForm .mktoFormRow {
        margin: 0 0 12px 0;
        padding: 0; }
      body.subscribe #inner .entry-content .colRight form.mktoForm label {
        font-size: 10px;
        line-height: 14px;
        font-weight: 700;
        color: #3F648F;
        text-transform: uppercase;
        margin: 0 0 6px 0;
        padding: 0; }
      body.subscribe #inner .entry-content .colRight form.mktoForm input[type="text"],
      body.subscribe #inner .entry-content .colRight form.mktoForm input[type="email"],
      body.subscribe #inner .entry-content .colRight form.mktoForm select {
        clear: left;
        height: 42px;
        border: none;
        border-radius: 4px;
        box-shadow: none;
        background-color: #E3ECF9;
        font-size: 14px;
        line-height: 18px;
        font-weight: 700;
        color: #3F648F;
        margin: 0;
        padding: 4px 12px; }
      body.subscribe #inner .entry-content .colRight form.mktoForm .mktoCheckboxList {
        margin: 0;
        padding: 10px 0 0 0;
        /* note: can't really use custom checkbox styling here seen elsewhere in site */ }
        body.subscribe #inner .entry-content .colRight form.mktoForm .mktoCheckboxList input[type="checkbox"] {
          width: auto;
          box-shadow: none;
          line-height: 18px;
          margin: 3px 8px 12px 0;
          padding: 0; }
        body.subscribe #inner .entry-content .colRight form.mktoForm .mktoCheckboxList label {
          cursor: pointer;
          font-size: 14px;
          line-height: 18px;
          font-weight: 700;
          color: #3F648F;
          text-transform: none;
          margin: 0 0 12px 0;
          padding: 0; }
          body.subscribe #inner .entry-content .colRight form.mktoForm .mktoCheckboxList label:hover {
            opacity: .75; }
      body.subscribe #inner .entry-content .colRight form.mktoForm .mktoButtonRow {
        display: block !important;
        width: 580px !important;
        margin: 0 !important;
        padding: 0 !important; }
        body.subscribe #inner .entry-content .colRight form.mktoForm .mktoButtonRow .mktoButtonWrap {
          display: block !important;
          text-align: center !important;
          margin: 0 !important;
          padding: 0 !important; }
          body.subscribe #inner .entry-content .colRight form.mktoForm .mktoButtonRow .mktoButtonWrap button {
            font-size: 15px !important;
            font-weight: 500 !important;
            color: #fff !important;
            background-color: #5a799c !important;
            border-radius: 6px !important;
            border: none !important;
            background-image: none !important;
            margin: 0 !important;
            padding: 8px 16px 8px 16px !important; }
            body.subscribe #inner .entry-content .colRight form.mktoForm .mktoButtonRow .mktoButtonWrap button:hover {
              opacity: .75; }
  body.subscribe #inner .entry-content .bust-out {
    clear: both; }
  body.subscribe #inner .entry-content .ebulletin-archive {
    margin: 0;
    padding: 0; }
    body.subscribe #inner .entry-content .ebulletin-archive h2 {
      font-family: "Roboto Slab";
      font-size: 28px;
      line-height: 32px;
      font-weight: 300;
      color: #51AF46;
      margin: 0 0 20px 0;
      padding: 0; }
    body.subscribe #inner .entry-content .ebulletin-archive p.showhide {
      width: 100% !important;
      text-align: center; }
      body.subscribe #inner .entry-content .ebulletin-archive p.showhide a.btn {
        font-size: 15px;
        font-weight: 500;
        color: #fff;
        background-color: #5a799c;
        border-radius: 6px;
        text-decoration: none !important;
        border: none !important;
        margin: 0;
        padding: 7px 12px 7px 12px; }
      body.subscribe #inner .entry-content .ebulletin-archive p.showhide.arrowClose {
        display: none; }
    body.subscribe #inner .entry-content .ebulletin-archive table td {
      font-size: 16px;
      line-height: 20px;
      font-weight: 300;
      color: #546b85;
      padding: 0 0 14px 0; }
      body.subscribe #inner .entry-content .ebulletin-archive table td a {
        font-weight: 700; }
      body.subscribe #inner .entry-content .ebulletin-archive table td:first-child {
        width: 150px; }
  @media screen and (max-width: 980px) {
    body.subscribe #inner .entry-content .colLeft,
    body.subscribe #inner .entry-content .colRight {
      float: none;
      width: 100%;
      min-width: none;
      max-width: none; }
      body.subscribe #inner .entry-content .colLeft p, body.subscribe #inner .entry-content .colLeft ul.social,
      body.subscribe #inner .entry-content .colRight p,
      body.subscribe #inner .entry-content .colRight ul.social {
        float: none;
        width: 100% !important;
        text-align: left; } }
  @media screen and (max-width: 585px) {
    body.subscribe #inner .entry-content .colRight form.mktoForm .mktoButtonRow {
      width: 100% !important;
      margin-top: 40px !important; } }

/* Contact Us
-------------------------------------------------------------------- */
body.contactus #inner .entry-content {
  /* form */
  /* sidebar */ }
  body.contactus #inner .entry-content .contact-us-form {
    float: left;
    width: 65%;
    margin: 0;
    padding: 0; }
    body.contactus #inner .entry-content .contact-us-form form {
      margin: 0;
      padding: 0; }
      body.contactus #inner .entry-content .contact-us-form form .mktoOffset {
        width: 0 !important; }
      body.contactus #inner .entry-content .contact-us-form form .mktoButton {
        display: inline-block;
        font-family: "Roboto" !important;
        font-size: 15px !important;
        line-height: 18px !important;
        font-weight: 500 !important;
        letter-spacing: .5px !important;
        color: #fff !important;
        background-color: #5a799c !important;
        border-radius: 6px !important;
        border: none !important;
        text-decoration: none !important;
        margin: 8px 0 0 0 !important;
        padding: 8px 16px 8px 16px !important; }
        body.contactus #inner .entry-content .contact-us-form form .mktoButton:hover {
          opacity: .75; }
  body.contactus #inner .entry-content .contact-us-sidebar {
    float: right;
    width: 29%;
    margin: 15px 0 0 0;
    padding: 0; }
    body.contactus #inner .entry-content .contact-us-sidebar .item {
      border-bottom: 1px solid #ABC1DA;
      margin: 0 0 20px 0;
      padding: 0 0 20px 0; }
      body.contactus #inner .entry-content .contact-us-sidebar .item:last-child {
        border: none;
        margin-bottom: 0;
        padding-bottom: 0; }
    body.contactus #inner .entry-content .contact-us-sidebar h2 {
      font-family: "Roboto Slab";
      font-size: 19px;
      line-height: 22px;
      font-weight: 500;
      color: #51AF46;
      margin: 0 0 10px 0;
      padding: 0; }
    body.contactus #inner .entry-content .contact-us-sidebar p.eb {
      float: left;
      width: auto !important;
      margin: 10px 0 0 0;
      padding: 0; }
      body.contactus #inner .entry-content .contact-us-sidebar p.eb a {
        margin: 0 !important; }
    body.contactus #inner .entry-content .contact-us-sidebar ul.social {
      float: right;
      margin: 10px 0 0 0;
      padding: 0; }
      body.contactus #inner .entry-content .contact-us-sidebar ul.social li {
        list-style: none;
        display: inline-block;
        margin: 0;
        padding: 0; }
        body.contactus #inner .entry-content .contact-us-sidebar ul.social li a {
          display: block;
          width: 36px;
          height: 36px; }
          body.contactus #inner .entry-content .contact-us-sidebar ul.social li a.twitter {
            background: url("../images/icon-social-twitter-lite.png") no-repeat 0 0; }
          body.contactus #inner .entry-content .contact-us-sidebar ul.social li a.facebook {
            background: url("../images/icon-social-facebook-lite.png") no-repeat 0 0; }
          body.contactus #inner .entry-content .contact-us-sidebar ul.social li a.linkedin {
            background: url("../images/icon-social-linkedin-lite.png") no-repeat 0 0; }
  @media screen and (max-width: 945px) {
    body.contactus #inner .entry-content .contact-us-form,
    body.contactus #inner .entry-content .contact-us-sidebar {
      float: none;
      width: 100%; }
      body.contactus #inner .entry-content .contact-us-form p.eb,
      body.contactus #inner .entry-content .contact-us-form ul.social,
      body.contactus #inner .entry-content .contact-us-sidebar p.eb,
      body.contactus #inner .entry-content .contact-us-sidebar ul.social {
        float: none;
        width: 100%;
        margin: 20px 0 0 0; } }
  @media screen and (max-width: 480px) {
    body.contactus #inner .entry-content form.mktoForm .mktoFormRow .mktoFormCol,
    body.contactus #inner .entry-content form.mktoForm .mktoFieldWrap {
      width: 100%; } }

/* Contact Us Form
-------------------------------------------------------------------- */
body.page-template-page-no-form-footer {
  /* Marketo form */ }
  body.page-template-page-no-form-footer form.mktoForm {
    width: 100% !important;
    color: #3F648F;
    margin: 0 auto;
    margin-top: 30px;
    padding: 0;
    /* label */
    /* input */
    /* checkbox list */
    /* submit */ }
    body.page-template-page-no-form-footer form.mktoForm .mktoHtmlText {
      font-size: 12px;
      line-height: 14px;
      font-weight: 300;
      color: #3F648F;
      margin: 0;
      padding: 0; }
    body.page-template-page-no-form-footer form.mktoForm .mktoFormRow {
      margin: 0 0 12px 0;
      padding: 0;
      /* I have a question or comment about */
      /* Comment */
      /* checkbox */ }
      body.page-template-page-no-form-footer form.mktoForm .mktoFormRow:nth-child(5) .mktoFormCol .mktoFieldWrap {
        width: 97.5% !important; }
      body.page-template-page-no-form-footer form.mktoForm .mktoFormRow .mktoFormCol {
        width: 50%; }
      body.page-template-page-no-form-footer form.mktoForm .mktoFormRow:nth-child(5) .mktoFormCol {
        width: 100%; }
        body.page-template-page-no-form-footer form.mktoForm .mktoFormRow:nth-child(5) .mktoFormCol .mktoFieldWrap {
          width: 98%; }
      body.page-template-page-no-form-footer form.mktoForm .mktoFormRow:nth-child(6) .mktoFormCol {
        width: 100%; }
        body.page-template-page-no-form-footer form.mktoForm .mktoFormRow:nth-child(6) .mktoFormCol .mktoFieldWrap {
          width: 97.5%; }
      body.page-template-page-no-form-footer form.mktoForm .mktoFormRow:nth-child(7) .mktoFormCol {
        width: 100%; }
        body.page-template-page-no-form-footer form.mktoForm .mktoFormRow:nth-child(7) .mktoFormCol label {
          max-width: 500px;
          padding-left: 25px; }
        body.page-template-page-no-form-footer form.mktoForm .mktoFormRow:nth-child(7) .mktoFormCol .mktoCheckboxList {
          position: absolute;
          top: 0;
          left: 10ox;
          width: 30px !important; }
    body.page-template-page-no-form-footer form.mktoForm .mktoFieldWrap {
      width: 95%; }
    body.page-template-page-no-form-footer form.mktoForm label {
      width: 100% !important;
      font-size: 10px;
      line-height: 14px;
      font-weight: 700;
      color: #546B85;
      text-transform: uppercase;
      margin: 0 0 6px 0;
      padding: 0; }
    body.page-template-page-no-form-footer form.mktoForm input[type="text"],
    body.page-template-page-no-form-footer form.mktoForm input[type="email"],
    body.page-template-page-no-form-footer form.mktoForm select,
    body.page-template-page-no-form-footer form.mktoForm textarea {
      width: 100% !important;
      height: 42px;
      border: none;
      border-radius: 4px;
      box-shadow: none;
      background-color: #E3ECF9;
      font-size: 14px;
      line-height: 18px;
      font-weight: 700;
      color: #3F648F;
      margin: 0;
      padding: 4px 12px; }
    body.page-template-page-no-form-footer form.mktoForm textarea {
      height: auto; }
    body.page-template-page-no-form-footer form.mktoForm .mktoAsterix {
      display: none !important; }
    body.page-template-page-no-form-footer form.mktoForm .mktoCheckboxList {
      margin: 0;
      padding: 0;
      /* note: can't really use custom checkbox styling here seen elsewhere in site */ }
      body.page-template-page-no-form-footer form.mktoForm .mktoCheckboxList input[type="checkbox"] {
        width: auto;
        box-shadow: none;
        line-height: 18px;
        margin: 3px 8px 12px 0;
        padding: 0; }
      body.page-template-page-no-form-footer form.mktoForm .mktoCheckboxList label {
        cursor: pointer;
        font-size: 14px;
        line-height: 18px;
        font-weight: 700;
        color: #3F648F;
        text-transform: none;
        margin: 0 0 12px 0;
        padding: 0; }
        body.page-template-page-no-form-footer form.mktoForm .mktoCheckboxList label:hover {
          opacity: .75; }
    body.page-template-page-no-form-footer form.mktoForm .mktoButtonRow {
      display: block !important;
      width: 100% !important;
      margin: 0 !important;
      padding: 0 !important; }
      body.page-template-page-no-form-footer form.mktoForm .mktoButtonRow .mktoButtonWrap {
        display: block !important;
        text-align: center !important;
        margin: 0 !important;
        padding: 0 !important; }
        body.page-template-page-no-form-footer form.mktoForm .mktoButtonRow .mktoButtonWrap button {
          font-size: 15px !important;
          font-weight: 500 !important;
          color: #3F648F !important;
          background-color: #ABC1DA !important;
          border-radius: 6px !important;
          border: none !important;
          background-image: none !important;
          margin: 0 !important;
          padding: 8px 16px 8px 16px !important; }
          body.page-template-page-no-form-footer form.mktoForm .mktoButtonRow .mktoButtonWrap button:hover {
            opacity: .75; }

/* Work at WestEd
-------------------------------------------------------------------- */
body.workatwested {
  /* content */
  /* sidebar */ }
  body.workatwested #workatwested-content {
    float: left;
    width: 65%;
    margin: 0;
    padding: 0;
    /* Subscribe Social Bar */ }
    body.workatwested #workatwested-content h2 {
      font-family: "Roboto Slab";
      font-size: 22px;
      line-height: 28px;
      font-weight: 300;
      color: #51AF46;
      margin: 0 0 20px 0;
      padding: 0; }
    body.workatwested #workatwested-content h3 {
      font-size: 20px;
      line-height: 26px;
      font-weight: 500;
      color: #546B85;
      margin: 30px 0 15px 0;
      padding: 0; }
    body.workatwested #workatwested-content h4 {
      font-size: 18px;
      line-height: 22px;
      font-weight: 500;
      color: #4DB13F !important;
      margin: 22px 0 5px 0;
      padding: 0; }
    body.workatwested #workatwested-content ul {
      margin-left: 40px; }
    body.workatwested #workatwested-content p {
      width: 100% !important;
      font-family: "Roboto";
      font-size: 16px;
      line-height: 24px;
      font-weight: 300;
      color: #546b85;
      margin: 0 0 15px 0;
      padding: 0; }
    body.workatwested #workatwested-content #subscribe-social-bar {
      width: 100%;
      height: auto;
      border: 2px solid #E3ECF9;
      border-radius: 6px;
      margin: 40px auto;
      padding: 0; }
      body.workatwested #workatwested-content #subscribe-social-bar .container {
        width: 100%;
        margin: 0;
        padding: 20px 20px 10px 20px; }
        body.workatwested #workatwested-content #subscribe-social-bar .container ul {
          margin: 0;
          padding: 0; }
          body.workatwested #workatwested-content #subscribe-social-bar .container ul li {
            list-style: none;
            margin: 0;
            padding: 0; }
      body.workatwested #workatwested-content #subscribe-social-bar .subscribe {
        width: 100%;
        height: 110px;
        margin: 0;
        padding: 0; }
        body.workatwested #workatwested-content #subscribe-social-bar .subscribe .icon {
          float: left;
          width: 94px;
          height: 94px;
          background: url("../images/icon-write-filled.png") no-repeat 0 0;
          margin: 0 30px 0 0;
          padding: 0; }
        body.workatwested #workatwested-content #subscribe-social-bar .subscribe h2 {
          font-family: "Roboto";
          font-size: 22px;
          line-height: 26px;
          font-weight: 500;
          margin: 0;
          padding: 8px 0 5px 0; }
          body.workatwested #workatwested-content #subscribe-social-bar .subscribe h2 a {
            color: #6EA9ED; }
        body.workatwested #workatwested-content #subscribe-social-bar .subscribe p {
          width: 50% !important;
          float: left;
          font-size: 15px;
          line-height: 18px;
          font-weight: 500;
          color: #3F648F;
          margin: 0;
          padding: 0; }
          body.workatwested #workatwested-content #subscribe-social-bar .subscribe p.subscribe {
            float: right;
            width: auto !important;
            margin: 0;
            padding: 8px 0 0 0; }
            body.workatwested #workatwested-content #subscribe-social-bar .subscribe p.subscribe a {
              font-family: "Roboto" !important;
              font-size: 15px !important;
              line-height: 18px !important;
              font-weight: 500 !important;
              color: #fff !important;
              background-color: #5a799c !important;
              border-radius: 6px !important;
              border: none !important;
              text-decoration: none !important;
              margin: 12px 0 !important;
              padding: 8px 16px 8px 16px !important; }
              body.workatwested #workatwested-content #subscribe-social-bar .subscribe p.subscribe a:hover {
                opacity: .75; }
      body.workatwested #workatwested-content #subscribe-social-bar .social {
        width: 79%;
        height: 65px;
        border-top: 2px solid #E3ECF9;
        margin: 0 0 0 125px;
        padding: 15px 0 0 0; }
        body.workatwested #workatwested-content #subscribe-social-bar .social h2 {
          float: left;
          font-family: "Roboto";
          font-size: 22px;
          line-height: 26px;
          font-weight: 500;
          color: #6EA9ED;
          margin: 0;
          padding: 6px 0 0 0; }
        body.workatwested #workatwested-content #subscribe-social-bar .social ul {
          float: right;
          width: 160px;
          margin: 0;
          padding: 0; }
          body.workatwested #workatwested-content #subscribe-social-bar .social ul li {
            list-style: none;
            display: inline-block;
            text-align: center;
            margin: 0;
            padding: 0; }
            body.workatwested #workatwested-content #subscribe-social-bar .social ul li a {
              display: block;
              width: 37px;
              height: 37px; }
              body.workatwested #workatwested-content #subscribe-social-bar .social ul li a.twitter {
                background: url("../images/icon-social-twitter-baby.png") no-repeat 0 0; }
              body.workatwested #workatwested-content #subscribe-social-bar .social ul li a.linkedin {
                background: url("../images/icon-social-linkedin-baby.png") no-repeat 0 0; }
              body.workatwested #workatwested-content #subscribe-social-bar .social ul li a.facebook {
                background: url("../images/icon-social-facebook-baby.png") no-repeat 0 0; }
  body.workatwested #workatwested-sidebar {
    float: right;
    width: 39%;
    min-width: 315px;
    max-width: 315px;
    background-color: #EEF2F7;
    border-radius: 6px;
    margin: 0;
    padding: 30px; }
    body.workatwested #workatwested-sidebar h3 {
      font-family: "Roboto Slab";
      font-size: 21px;
      line-height: 23px;
      font-weight: 500;
      color: #fff;
      background-color: #ABC1DA;
      border-top-left-radius: 6px;
      border-top-right-radius: 6px;
      margin: -30px -30px 20px -30px;
      padding: 15px 30px; }
    body.workatwested #workatwested-sidebar p {
      width: 100% !important;
      font-size: 15px;
      line-height: 20px;
      font-weight: 500;
      color: #3F648F;
      margin: 0 0 15px 0;
      padding: 0; }
      body.workatwested #workatwested-sidebar p.glassdoor {
        position: relative;
        padding-left: 118px; }
        body.workatwested #workatwested-sidebar p.glassdoor a.logo {
          position: absolute;
          top: 0;
          left: 0; }
      body.workatwested #workatwested-sidebar p.subscribe {
        background: url("../images/icon-write.png") no-repeat 0 0; }
      body.workatwested #workatwested-sidebar p.indent {
        padding-left: 85px; }
    body.workatwested #workatwested-sidebar hr {
      clear: both;
      border: none 0;
      border-top: 2px solid #fff;
      text-align: center;
      width: 100%;
      height: 1px;
      margin: 25px 0 20px 0; }
    body.workatwested #workatwested-sidebar .video {
      margin: 30px 0;
      padding: 0; }
      body.workatwested #workatwested-sidebar .video iframe {
        border: 1px solid #ccc; }
    body.workatwested #workatwested-sidebar ul.social {
      margin: 12px 0 0 0;
      padding: 0 0 0 85px; }
      body.workatwested #workatwested-sidebar ul.social li {
        list-style: none;
        background: none;
        float: left;
        margin: 0 8px 0 0;
        padding: 0; }
        body.workatwested #workatwested-sidebar ul.social li a {
          display: inline-block;
          text-indent: -9999px;
          width: 29px;
          height: 29px; }
          body.workatwested #workatwested-sidebar ul.social li a.twitter {
            background: url("../images/icon-social-twitter-dark.png") no-repeat 0 0; }
          body.workatwested #workatwested-sidebar ul.social li a.linkedin {
            background: url("../images/icon-social-linkedin-dark.png") no-repeat 0 0; }
          body.workatwested #workatwested-sidebar ul.social li a.facebook {
            background: url("../images/icon-social-facebook-dark.png") no-repeat 0 0; }
  @media screen and (max-width: 1020px) {
    body.workatwested #workatwested-content {
      float: none;
      width: 100%;
      margin: 0;
      padding: 0; }
      body.workatwested #workatwested-content #subscribe-social-bar .subscribe {
        height: auto;
        padding-bottom: 30px; }
        body.workatwested #workatwested-content #subscribe-social-bar .subscribe .icon {
          display: none !important; }
        body.workatwested #workatwested-content #subscribe-social-bar .subscribe p {
          float: none !important;
          width: 100% !important; }
          body.workatwested #workatwested-content #subscribe-social-bar .subscribe p.subscribe {
            margin-top: 15px; }
      body.workatwested #workatwested-content #subscribe-social-bar .social {
        width: 100%;
        height: 100px;
        margin: 0; }
        body.workatwested #workatwested-content #subscribe-social-bar .social h2 {
          margin: 0 0 10px 0; }
        body.workatwested #workatwested-content #subscribe-social-bar .social ul {
          float: none; }
    body.workatwested #workatwested-sidebar {
      float: none;
      width: 100%;
      min-width: 0;
      margin-top: 30px; }
      body.workatwested #workatwested-sidebar p.subscribe, body.workatwested #workatwested-sidebar p.indent {
        background: none;
        padding-left: 0; }
      body.workatwested #workatwested-sidebar ul.social {
        padding-left: 0; } }
  @media screen and (max-width: 450px) {
    body.workatwested #workatwested-sidebar .video {
      width: 100%;
      overflow: hidden; } }
  body.workatwested ul.testimonials {
    margin: 40px 0 60px 0;
    padding: 0; }
    body.workatwested ul.testimonials li {
      position: relative;
      list-style: none;
      font-weight: 700;
      border-bottom: 2px solid #D3DBE6;
      margin: 5px 0 25px 70px;
      padding: 0 0 25px 0; }
      body.workatwested ul.testimonials li:before {
        position: absolute;
        top: 0;
        left: -110px;
        width: 89px;
        height: 61px;
        content: ""; }
      body.workatwested ul.testimonials li:nth-child(odd) {
        color: #3F648F; }
        body.workatwested ul.testimonials li:nth-child(odd):before {
          background: url("../images/2019-05-16-testimonial-quote1.svg") no-repeat 0 0; }
      body.workatwested ul.testimonials li:nth-child(even) {
        color: #819AB6; }
        body.workatwested ul.testimonials li:nth-child(even):before {
          background: url("../images/2019-05-16-testimonial-quote2.svg") no-repeat 0 0; }
      body.workatwested ul.testimonials li:last-child {
        border: none;
        margin-bottom: 0;
        padding-bottom: 0; }

/* Orphan / New York, Georgia, Florida
-------------------------------------------------------------------- */
body.new-york, body.georgia, body.florida {
  /* content */
  /* sidebar */ }
  body.new-york #ny-content, body.new-york #georgia-content, body.new-york #florida-content, body.georgia #ny-content, body.georgia #georgia-content, body.georgia #florida-content, body.florida #ny-content, body.florida #georgia-content, body.florida #florida-content {
    float: left;
    width: 65%;
    margin: 0;
    padding: 0;
    /* News & Events */
    /* Resources */
    /* subpage content */ }
    body.new-york #ny-content h2, body.new-york #georgia-content h2, body.new-york #florida-content h2, body.georgia #ny-content h2, body.georgia #georgia-content h2, body.georgia #florida-content h2, body.florida #ny-content h2, body.florida #georgia-content h2, body.florida #florida-content h2 {
      font-family: "Roboto Slab";
      font-size: 28px;
      line-height: 36px;
      font-weight: 300;
      color: #51AF46;
      margin: 0 0 15px 0;
      padding: 0; }
    body.new-york #ny-content p.cat-date, body.new-york #georgia-content p.cat-date, body.new-york #florida-content p.cat-date, body.georgia #ny-content p.cat-date, body.georgia #georgia-content p.cat-date, body.georgia #florida-content p.cat-date, body.florida #ny-content p.cat-date, body.florida #georgia-content p.cat-date, body.florida #florida-content p.cat-date {
      display: none;
      /* 2018-12-13 hiding event cat and date per CH */ }
    body.new-york #ny-content .news-events, body.new-york #georgia-content .news-events, body.new-york #florida-content .news-events, body.georgia #ny-content .news-events, body.georgia #georgia-content .news-events, body.georgia #florida-content .news-events, body.florida #ny-content .news-events, body.florida #georgia-content .news-events, body.florida #florida-content .news-events {
      margin: 0 0 10px 0;
      padding: 0; }
      body.new-york #ny-content .news-events ul, body.new-york #georgia-content .news-events ul, body.new-york #florida-content .news-events ul, body.georgia #ny-content .news-events ul, body.georgia #georgia-content .news-events ul, body.georgia #florida-content .news-events ul, body.florida #ny-content .news-events ul, body.florida #georgia-content .news-events ul, body.florida #florida-content .news-events ul {
        margin: 0;
        padding: 0; }
        body.new-york #ny-content .news-events ul li, body.new-york #georgia-content .news-events ul li, body.new-york #florida-content .news-events ul li, body.georgia #ny-content .news-events ul li, body.georgia #georgia-content .news-events ul li, body.georgia #florida-content .news-events ul li, body.florida #ny-content .news-events ul li, body.florida #georgia-content .news-events ul li, body.florida #florida-content .news-events ul li {
          clear: both;
          list-style: none;
          margin: 0 0 30px 0;
          padding: 0; }
          body.new-york #ny-content .news-events ul li .thumb, body.new-york #georgia-content .news-events ul li .thumb, body.new-york #florida-content .news-events ul li .thumb, body.georgia #ny-content .news-events ul li .thumb, body.georgia #georgia-content .news-events ul li .thumb, body.georgia #florida-content .news-events ul li .thumb, body.florida #ny-content .news-events ul li .thumb, body.florida #georgia-content .news-events ul li .thumb, body.florida #florida-content .news-events ul li .thumb {
            float: left;
            width: 115px;
            height: auto;
            border-radius: 6px;
            margin: 0 15px 15px 0;
            padding: 0; }
            body.new-york #ny-content .news-events ul li .thumb:hover, body.new-york #georgia-content .news-events ul li .thumb:hover, body.new-york #florida-content .news-events ul li .thumb:hover, body.georgia #ny-content .news-events ul li .thumb:hover, body.georgia #georgia-content .news-events ul li .thumb:hover, body.georgia #florida-content .news-events ul li .thumb:hover, body.florida #ny-content .news-events ul li .thumb:hover, body.florida #georgia-content .news-events ul li .thumb:hover, body.florida #florida-content .news-events ul li .thumb:hover {
              opacity: .75; }
          body.new-york #ny-content .news-events ul li h3, body.new-york #georgia-content .news-events ul li h3, body.new-york #florida-content .news-events ul li h3, body.georgia #ny-content .news-events ul li h3, body.georgia #georgia-content .news-events ul li h3, body.georgia #florida-content .news-events ul li h3, body.florida #ny-content .news-events ul li h3, body.florida #georgia-content .news-events ul li h3, body.florida #florida-content .news-events ul li h3 {
            font-size: 17px;
            line-height: 22px;
            font-weight: 500;
            margin: 0 0 8px 0;
            padding: 0; }
            body.new-york #ny-content .news-events ul li h3 a, body.new-york #georgia-content .news-events ul li h3 a, body.new-york #florida-content .news-events ul li h3 a, body.georgia #ny-content .news-events ul li h3 a, body.georgia #georgia-content .news-events ul li h3 a, body.georgia #florida-content .news-events ul li h3 a, body.florida #ny-content .news-events ul li h3 a, body.florida #georgia-content .news-events ul li h3 a, body.florida #florida-content .news-events ul li h3 a {
              text-decoration: none; }
              body.new-york #ny-content .news-events ul li h3 a:hover, body.new-york #georgia-content .news-events ul li h3 a:hover, body.new-york #florida-content .news-events ul li h3 a:hover, body.georgia #ny-content .news-events ul li h3 a:hover, body.georgia #georgia-content .news-events ul li h3 a:hover, body.georgia #florida-content .news-events ul li h3 a:hover, body.florida #ny-content .news-events ul li h3 a:hover, body.florida #georgia-content .news-events ul li h3 a:hover, body.florida #florida-content .news-events ul li h3 a:hover {
                opacity: .75; }
          body.new-york #ny-content .news-events ul li p, body.new-york #georgia-content .news-events ul li p, body.new-york #florida-content .news-events ul li p, body.georgia #ny-content .news-events ul li p, body.georgia #georgia-content .news-events ul li p, body.georgia #florida-content .news-events ul li p, body.florida #ny-content .news-events ul li p, body.florida #georgia-content .news-events ul li p, body.florida #florida-content .news-events ul li p {
            font-size: 16px;
            line-height: 20px; }
    body.new-york #ny-content .resources, body.new-york #georgia-content .resources, body.new-york #florida-content .resources, body.georgia #ny-content .resources, body.georgia #georgia-content .resources, body.georgia #florida-content .resources, body.florida #ny-content .resources, body.florida #georgia-content .resources, body.florida #florida-content .resources {
      margin: 0;
      padding: 0;
      /* Resources / show more */ }
      body.new-york #ny-content .resources ul, body.new-york #georgia-content .resources ul, body.new-york #florida-content .resources ul, body.georgia #ny-content .resources ul, body.georgia #georgia-content .resources ul, body.georgia #florida-content .resources ul, body.florida #ny-content .resources ul, body.florida #georgia-content .resources ul, body.florida #florida-content .resources ul {
        margin: 0;
        padding: 0; }
        body.new-york #ny-content .resources ul li, body.new-york #georgia-content .resources ul li, body.new-york #florida-content .resources ul li, body.georgia #ny-content .resources ul li, body.georgia #georgia-content .resources ul li, body.georgia #florida-content .resources ul li, body.florida #ny-content .resources ul li, body.florida #georgia-content .resources ul li, body.florida #florida-content .resources ul li {
          clear: both;
          list-style: none;
          margin: 0 0 30px 0;
          padding: 0; }
          body.new-york #ny-content .resources ul li a, body.new-york #georgia-content .resources ul li a, body.new-york #florida-content .resources ul li a, body.georgia #ny-content .resources ul li a, body.georgia #georgia-content .resources ul li a, body.georgia #florida-content .resources ul li a, body.florida #ny-content .resources ul li a, body.florida #georgia-content .resources ul li a, body.florida #florida-content .resources ul li a {
            text-decoration: none; }
            body.new-york #ny-content .resources ul li a:hover, body.new-york #georgia-content .resources ul li a:hover, body.new-york #florida-content .resources ul li a:hover, body.georgia #ny-content .resources ul li a:hover, body.georgia #georgia-content .resources ul li a:hover, body.georgia #florida-content .resources ul li a:hover, body.florida #ny-content .resources ul li a:hover, body.florida #georgia-content .resources ul li a:hover, body.florida #florida-content .resources ul li a:hover {
              opacity: .75; }
            body.new-york #ny-content .resources ul li a .thumb, body.new-york #georgia-content .resources ul li a .thumb, body.new-york #florida-content .resources ul li a .thumb, body.georgia #ny-content .resources ul li a .thumb, body.georgia #georgia-content .resources ul li a .thumb, body.georgia #florida-content .resources ul li a .thumb, body.florida #ny-content .resources ul li a .thumb, body.florida #georgia-content .resources ul li a .thumb, body.florida #florida-content .resources ul li a .thumb {
              float: left;
              width: 115px;
              height: auto;
              border-radius: 6px;
              margin: 0 15px 15px 0;
              padding: 0; }
              body.new-york #ny-content .resources ul li a .thumb:hover, body.new-york #georgia-content .resources ul li a .thumb:hover, body.new-york #florida-content .resources ul li a .thumb:hover, body.georgia #ny-content .resources ul li a .thumb:hover, body.georgia #georgia-content .resources ul li a .thumb:hover, body.georgia #florida-content .resources ul li a .thumb:hover, body.florida #ny-content .resources ul li a .thumb:hover, body.florida #georgia-content .resources ul li a .thumb:hover, body.florida #florida-content .resources ul li a .thumb:hover {
                opacity: .75; }
            body.new-york #ny-content .resources ul li a .name, body.new-york #georgia-content .resources ul li a .name, body.new-york #florida-content .resources ul li a .name, body.georgia #ny-content .resources ul li a .name, body.georgia #georgia-content .resources ul li a .name, body.georgia #florida-content .resources ul li a .name, body.florida #ny-content .resources ul li a .name, body.florida #georgia-content .resources ul li a .name, body.florida #florida-content .resources ul li a .name {
              display: block;
              font-size: 17px;
              line-height: 22px;
              font-weight: 500;
              margin: 0 0 8px 0;
              padding: 0; }
          body.new-york #ny-content .resources ul li .excerpt, body.new-york #georgia-content .resources ul li .excerpt, body.new-york #florida-content .resources ul li .excerpt, body.georgia #ny-content .resources ul li .excerpt, body.georgia #georgia-content .resources ul li .excerpt, body.georgia #florida-content .resources ul li .excerpt, body.florida #ny-content .resources ul li .excerpt, body.florida #georgia-content .resources ul li .excerpt, body.florida #florida-content .resources ul li .excerpt {
            display: inline-block;
            max-width: 485px;
            font-size: 16px;
            line-height: 20px; }
      body.new-york #ny-content .resources .finiteScroll .next_page a, body.new-york #georgia-content .resources .finiteScroll .next_page a, body.new-york #florida-content .resources .finiteScroll .next_page a, body.georgia #ny-content .resources .finiteScroll .next_page a, body.georgia #georgia-content .resources .finiteScroll .next_page a, body.georgia #florida-content .resources .finiteScroll .next_page a, body.florida #ny-content .resources .finiteScroll .next_page a, body.florida #georgia-content .resources .finiteScroll .next_page a, body.florida #florida-content .resources .finiteScroll .next_page a {
        font-size: 15px;
        font-weight: 500;
        color: #fff;
        background-color: #5a799c;
        border-radius: 6px;
        margin: 0;
        padding: 7px 12px 7px 12px; }
      body.new-york #ny-content .resources .loadimg, body.new-york #georgia-content .resources .loadimg, body.new-york #florida-content .resources .loadimg, body.georgia #ny-content .resources .loadimg, body.georgia #georgia-content .resources .loadimg, body.georgia #florida-content .resources .loadimg, body.florida #ny-content .resources .loadimg, body.florida #georgia-content .resources .loadimg, body.florida #florida-content .resources .loadimg {
        display: none;
        text-align: center;
        width: 100%; }
    body.new-york #ny-content.subpages h3, body.new-york #georgia-content.subpages h3, body.new-york #florida-content.subpages h3, body.georgia #ny-content.subpages h3, body.georgia #georgia-content.subpages h3, body.georgia #florida-content.subpages h3, body.florida #ny-content.subpages h3, body.florida #georgia-content.subpages h3, body.florida #florida-content.subpages h3 {
      font-size: 20px;
      font-weight: 500;
      color: #546B85;
      margin: 10px 0 12px 0;
      padding: 0; }
    body.new-york #ny-content.subpages p, body.new-york #georgia-content.subpages p, body.new-york #florida-content.subpages p, body.georgia #ny-content.subpages p, body.georgia #georgia-content.subpages p, body.georgia #florida-content.subpages p, body.florida #ny-content.subpages p, body.florida #georgia-content.subpages p, body.florida #florida-content.subpages p {
      font-size: 16px;
      line-height: 24px;
      font-weight: 300;
      color: #546B85;
      margin: 0 0 12px 0;
      padding: 0; }
    body.new-york #ny-content.subpages ul, body.new-york #georgia-content.subpages ul, body.new-york #florida-content.subpages ul, body.georgia #ny-content.subpages ul, body.georgia #georgia-content.subpages ul, body.georgia #florida-content.subpages ul, body.florida #ny-content.subpages ul, body.florida #georgia-content.subpages ul, body.florida #florida-content.subpages ul {
      margin: 0 0 20px 30px;
      padding: 0; }
      body.new-york #ny-content.subpages ul li, body.new-york #georgia-content.subpages ul li, body.new-york #florida-content.subpages ul li, body.georgia #ny-content.subpages ul li, body.georgia #georgia-content.subpages ul li, body.georgia #florida-content.subpages ul li, body.florida #ny-content.subpages ul li, body.florida #georgia-content.subpages ul li, body.florida #florida-content.subpages ul li {
        font-size: 16px;
        line-height: 24px;
        font-weight: 300;
        color: #546B85;
        margin: 0 0 12px 0;
        padding: 0; }
    body.new-york #ny-content.subpages .promo, body.new-york #georgia-content.subpages .promo, body.new-york #florida-content.subpages .promo, body.georgia #ny-content.subpages .promo, body.georgia #georgia-content.subpages .promo, body.georgia #florida-content.subpages .promo, body.florida #ny-content.subpages .promo, body.florida #georgia-content.subpages .promo, body.florida #florida-content.subpages .promo {
      width: 660px;
      height: 134px;
      text-indent: -9999px;
      background: url("../images/newyork-promo-contactus.png") no-repeat 0 0;
      margin: 30px 0 0 0;
      padding: 0; }
  body.new-york #ny-sidebar, body.new-york #georgia-sidebar, body.new-york #florida-sidebar, body.georgia #ny-sidebar, body.georgia #georgia-sidebar, body.georgia #florida-sidebar, body.florida #ny-sidebar, body.florida #georgia-sidebar, body.florida #florida-sidebar {
    float: right;
    width: 30%;
    margin: 0;
    padding: 0;
    /* sidebar container */ }
    body.new-york #ny-sidebar .widget, body.new-york #georgia-sidebar .widget, body.new-york #florida-sidebar .widget, body.georgia #ny-sidebar .widget, body.georgia #georgia-sidebar .widget, body.georgia #florida-sidebar .widget, body.florida #ny-sidebar .widget, body.florida #georgia-sidebar .widget, body.florida #florida-sidebar .widget {
      background-color: #EEF2F7;
      border-radius: 6px;
      margin: 0 0 20px 0;
      padding: 0;
      /* content */ }
      body.new-york #ny-sidebar .widget h3, body.new-york #georgia-sidebar .widget h3, body.new-york #florida-sidebar .widget h3, body.georgia #ny-sidebar .widget h3, body.georgia #georgia-sidebar .widget h3, body.georgia #florida-sidebar .widget h3, body.florida #ny-sidebar .widget h3, body.florida #georgia-sidebar .widget h3, body.florida #florida-sidebar .widget h3 {
        font-size: 20px;
        line-height: 30px;
        font-weight: 400;
        color: #fff;
        background-color: #B5C1CC;
        border-top-left-radius: 6px;
        border-top-right-radius: 6px;
        margin: 0;
        padding: 5px 15px; }
      body.new-york #ny-sidebar .widget p, body.new-york #georgia-sidebar .widget p, body.new-york #florida-sidebar .widget p, body.georgia #ny-sidebar .widget p, body.georgia #georgia-sidebar .widget p, body.georgia #florida-sidebar .widget p, body.florida #ny-sidebar .widget p, body.florida #georgia-sidebar .widget p, body.florida #florida-sidebar .widget p {
        font-size: 16px;
        line-height: 24px;
        font-weight: 400;
        color: #546B85;
        margin: 0 0 7px 0;
        padding: 15px; }
      body.new-york #ny-sidebar .widget ul, body.new-york #georgia-sidebar .widget ul, body.new-york #florida-sidebar .widget ul, body.georgia #ny-sidebar .widget ul, body.georgia #georgia-sidebar .widget ul, body.georgia #florida-sidebar .widget ul, body.florida #ny-sidebar .widget ul, body.florida #georgia-sidebar .widget ul, body.florida #florida-sidebar .widget ul {
        list-style: none;
        margin: 0;
        padding: 20px 15px; }
        body.new-york #ny-sidebar .widget ul li, body.new-york #georgia-sidebar .widget ul li, body.new-york #florida-sidebar .widget ul li, body.georgia #ny-sidebar .widget ul li, body.georgia #georgia-sidebar .widget ul li, body.georgia #florida-sidebar .widget ul li, body.florida #ny-sidebar .widget ul li, body.florida #georgia-sidebar .widget ul li, body.florida #florida-sidebar .widget ul li {
          font-size: 16px;
          line-height: 24px;
          font-weight: 400;
          color: #546B85;
          background: url("../images/bullet-blue-4x4.png") no-repeat 0 5px;
          margin: 0 0 12px 0;
          padding: 0 0 0 15px; }
          body.new-york #ny-sidebar .widget ul li a, body.new-york #georgia-sidebar .widget ul li a, body.new-york #florida-sidebar .widget ul li a, body.georgia #ny-sidebar .widget ul li a, body.georgia #georgia-sidebar .widget ul li a, body.georgia #florida-sidebar .widget ul li a, body.florida #ny-sidebar .widget ul li a, body.florida #georgia-sidebar .widget ul li a, body.florida #florida-sidebar .widget ul li a {
            text-decoration: none;
            color: #3379a2; }
            body.new-york #ny-sidebar .widget ul li a:hover, body.new-york #georgia-sidebar .widget ul li a:hover, body.new-york #florida-sidebar .widget ul li a:hover, body.georgia #ny-sidebar .widget ul li a:hover, body.georgia #georgia-sidebar .widget ul li a:hover, body.georgia #florida-sidebar .widget ul li a:hover, body.florida #ny-sidebar .widget ul li a:hover, body.florida #georgia-sidebar .widget ul li a:hover, body.florida #florida-sidebar .widget ul li a:hover {
              opacity: .75; }
        body.new-york #ny-sidebar .widget ul.social, body.new-york #georgia-sidebar .widget ul.social, body.new-york #florida-sidebar .widget ul.social, body.georgia #ny-sidebar .widget ul.social, body.georgia #georgia-sidebar .widget ul.social, body.georgia #florida-sidebar .widget ul.social, body.florida #ny-sidebar .widget ul.social, body.florida #georgia-sidebar .widget ul.social, body.florida #florida-sidebar .widget ul.social {
          margin: 12px 0 0 0;
          padding: 0; }
          body.new-york #ny-sidebar .widget ul.social li, body.new-york #georgia-sidebar .widget ul.social li, body.new-york #florida-sidebar .widget ul.social li, body.georgia #ny-sidebar .widget ul.social li, body.georgia #georgia-sidebar .widget ul.social li, body.georgia #florida-sidebar .widget ul.social li, body.florida #ny-sidebar .widget ul.social li, body.florida #georgia-sidebar .widget ul.social li, body.florida #florida-sidebar .widget ul.social li {
            list-style: none;
            background: none;
            float: left;
            margin: 0 8px 0 0;
            padding: 0; }
            body.new-york #ny-sidebar .widget ul.social li a, body.new-york #georgia-sidebar .widget ul.social li a, body.new-york #florida-sidebar .widget ul.social li a, body.georgia #ny-sidebar .widget ul.social li a, body.georgia #georgia-sidebar .widget ul.social li a, body.georgia #florida-sidebar .widget ul.social li a, body.florida #ny-sidebar .widget ul.social li a, body.florida #georgia-sidebar .widget ul.social li a, body.florida #florida-sidebar .widget ul.social li a {
              display: inline-block;
              text-indent: -9999px;
              width: 29px;
              height: 29px; }
              body.new-york #ny-sidebar .widget ul.social li a.twitter, body.new-york #georgia-sidebar .widget ul.social li a.twitter, body.new-york #florida-sidebar .widget ul.social li a.twitter, body.georgia #ny-sidebar .widget ul.social li a.twitter, body.georgia #georgia-sidebar .widget ul.social li a.twitter, body.georgia #florida-sidebar .widget ul.social li a.twitter, body.florida #ny-sidebar .widget ul.social li a.twitter, body.florida #georgia-sidebar .widget ul.social li a.twitter, body.florida #florida-sidebar .widget ul.social li a.twitter {
                background: url("../images/icon-social-twitter-dark.png") no-repeat 0 0; }
              body.new-york #ny-sidebar .widget ul.social li a.linkedin, body.new-york #georgia-sidebar .widget ul.social li a.linkedin, body.new-york #florida-sidebar .widget ul.social li a.linkedin, body.georgia #ny-sidebar .widget ul.social li a.linkedin, body.georgia #georgia-sidebar .widget ul.social li a.linkedin, body.georgia #florida-sidebar .widget ul.social li a.linkedin, body.florida #ny-sidebar .widget ul.social li a.linkedin, body.florida #georgia-sidebar .widget ul.social li a.linkedin, body.florida #florida-sidebar .widget ul.social li a.linkedin {
                background: url("../images/icon-social-linkedin-dark.png") no-repeat 0 0; }
              body.new-york #ny-sidebar .widget ul.social li a.facebook, body.new-york #georgia-sidebar .widget ul.social li a.facebook, body.new-york #florida-sidebar .widget ul.social li a.facebook, body.georgia #ny-sidebar .widget ul.social li a.facebook, body.georgia #georgia-sidebar .widget ul.social li a.facebook, body.georgia #florida-sidebar .widget ul.social li a.facebook, body.florida #ny-sidebar .widget ul.social li a.facebook, body.florida #georgia-sidebar .widget ul.social li a.facebook, body.florida #florida-sidebar .widget ul.social li a.facebook {
                background: url("../images/icon-social-facebook-dark.png") no-repeat 0 0; }
      body.new-york #ny-sidebar .widget .col-left, body.new-york #georgia-sidebar .widget .col-left, body.new-york #florida-sidebar .widget .col-left, body.georgia #ny-sidebar .widget .col-left, body.georgia #georgia-sidebar .widget .col-left, body.georgia #florida-sidebar .widget .col-left, body.florida #ny-sidebar .widget .col-left, body.florida #georgia-sidebar .widget .col-left, body.florida #florida-sidebar .widget .col-left {
        float: left;
        width: 80px;
        margin: 0;
        padding: 15px 0 15px 15px; }
        body.new-york #ny-sidebar .widget .col-left .icon, body.new-york #georgia-sidebar .widget .col-left .icon, body.new-york #florida-sidebar .widget .col-left .icon, body.georgia #ny-sidebar .widget .col-left .icon, body.georgia #georgia-sidebar .widget .col-left .icon, body.georgia #florida-sidebar .widget .col-left .icon, body.florida #ny-sidebar .widget .col-left .icon, body.florida #georgia-sidebar .widget .col-left .icon, body.florida #florida-sidebar .widget .col-left .icon {
          margin: 0;
          padding: 0; }
          body.new-york #ny-sidebar .widget .col-left .icon.icon-form, body.new-york #georgia-sidebar .widget .col-left .icon.icon-form, body.new-york #florida-sidebar .widget .col-left .icon.icon-form, body.georgia #ny-sidebar .widget .col-left .icon.icon-form, body.georgia #georgia-sidebar .widget .col-left .icon.icon-form, body.georgia #florida-sidebar .widget .col-left .icon.icon-form, body.florida #ny-sidebar .widget .col-left .icon.icon-form, body.florida #georgia-sidebar .widget .col-left .icon.icon-form, body.florida #florida-sidebar .widget .col-left .icon.icon-form {
            width: 69px;
            height: 69px;
            background: url("../images/icon-form.png") no-repeat 0 0; }
          body.new-york #ny-sidebar .widget .col-left .icon.icon-write, body.new-york #georgia-sidebar .widget .col-left .icon.icon-write, body.new-york #florida-sidebar .widget .col-left .icon.icon-write, body.georgia #ny-sidebar .widget .col-left .icon.icon-write, body.georgia #georgia-sidebar .widget .col-left .icon.icon-write, body.georgia #florida-sidebar .widget .col-left .icon.icon-write, body.florida #ny-sidebar .widget .col-left .icon.icon-write, body.florida #georgia-sidebar .widget .col-left .icon.icon-write, body.florida #florida-sidebar .widget .col-left .icon.icon-write {
            width: 65px;
            height: 65px;
            background: url("../images/icon-write.png") no-repeat 0 0; }
      body.new-york #ny-sidebar .widget .col-right, body.new-york #georgia-sidebar .widget .col-right, body.new-york #florida-sidebar .widget .col-right, body.georgia #ny-sidebar .widget .col-right, body.georgia #georgia-sidebar .widget .col-right, body.georgia #florida-sidebar .widget .col-right, body.florida #ny-sidebar .widget .col-right, body.florida #georgia-sidebar .widget .col-right, body.florida #florida-sidebar .widget .col-right {
        float: right;
        width: 200px;
        margin: 0;
        padding: 15px 15px 15px 0; }
        body.new-york #ny-sidebar .widget .col-right p, body.new-york #georgia-sidebar .widget .col-right p, body.new-york #florida-sidebar .widget .col-right p, body.georgia #ny-sidebar .widget .col-right p, body.georgia #georgia-sidebar .widget .col-right p, body.georgia #florida-sidebar .widget .col-right p, body.florida #ny-sidebar .widget .col-right p, body.florida #georgia-sidebar .widget .col-right p, body.florida #florida-sidebar .widget .col-right p {
          width: 100% !important;
          margin: 0;
          padding: 0; }
  @media screen and (max-width: 1040px) {
    body.new-york #ny-content, body.new-york #ny-sidebar, body.new-york #georgia-content, body.new-york #georgia-sidebar, body.new-york #florida-content, body.new-york #florida-sidebar, body.georgia #ny-content, body.georgia #ny-sidebar, body.georgia #georgia-content, body.georgia #georgia-sidebar, body.georgia #florida-content, body.georgia #florida-sidebar, body.florida #ny-content, body.florida #ny-sidebar, body.florida #georgia-content, body.florida #georgia-sidebar, body.florida #florida-content, body.florida #florida-sidebar {
      float: none;
      width: 100%; }
    body.new-york #ny-sidebar, body.new-york #georgia-sidebar, body.new-york #florida-sidebar, body.georgia #ny-sidebar, body.georgia #georgia-sidebar, body.georgia #florida-sidebar, body.florida #ny-sidebar, body.florida #georgia-sidebar, body.florida #florida-sidebar {
      max-width: 320px;
      margin-top: 30px; } }

/* Georgia tweaks */
body.georgia .hero-subnav ul li {
  padding: 0 5px; }

body.georgia #georgia-content a.btn {
  display: inline-block;
  font-family: "Roboto" !important;
  font-size: 15px !important;
  line-height: 18px !important;
  font-weight: 500 !important;
  letter-spacing: .5px !important;
  color: #fff !important;
  background-color: #5a799c !important;
  border-radius: 6px !important;
  border: none !important;
  text-decoration: none !important;
  margin: 8px 0 0 0 !important;
  padding: 8px 16px 8px 16px !important; }
  body.georgia #georgia-content a.btn:hover {
    opacity: .75; }

body.page-template-georgia #entry-content p + h2 {
  margin-top: 30px; }

body.page-template-georgia #entry-content p {
  font-size: 16px;
  line-height: 24px;
  font-weight: 300;
  color: #546B85;
  margin: 0 0 12px 0;
  padding: 0; }

body.page-template-georgia #entry-content ul {
  margin: 0 0 20px 30px;
  padding: 0; }
  body.page-template-georgia #entry-content ul li {
    font-size: 16px;
    line-height: 24px;
    font-weight: 300;
    color: #546B85;
    margin: 0 0 12px 0;
    padding: 0; }

body.page-template-georgia #recent-posts {
  margin-top: 30px; }

/* Florida tweaks */
body.florida .hero-subnav ul li {
  padding: 0 20px; }

/* Orphan / National Support Networks
-------------------------------------------------------------------- */
body.page-national-support-networks {
  /* What is TA */
  /* network */ }
  body.page-national-support-networks h2.intro {
    max-width: 625px;
    font-family: "Roboto Slab";
    font-size: 28px;
    line-height: 36px;
    font-weight: 300;
    color: #51AF46;
    margin: 0 0 15px 0;
    padding: 0; }
  body.page-national-support-networks .what-is {
    background-color: #E3ECF9;
    margin: 30px 0;
    padding: 20px; }
  body.page-national-support-networks .network {
    margin: 0;
    padding: 20px 0 20px 0;
    /* National Special Education Centers */
    /* Center to Improve */ }
    body.page-national-support-networks .network:before, body.page-national-support-networks .network:after {
      content: "";
      display: table; }
    body.page-national-support-networks .network:after {
      clear: both; }
    body.page-national-support-networks .network a:hover {
      opacity: .75; }
    body.page-national-support-networks .network h3 {
      font-size: 20px;
      line-height: 26px;
      font-weight: 500;
      color: #51AF46;
      border-bottom: 1px solid #ABC1DA;
      margin: 0 0 15px 0;
      padding: 0 0 8px 0; }
    body.page-national-support-networks .network .description {
      float: left;
      width: 330px;
      font-size: 14px;
      line-height: 26px;
      font-weight: 500;
      color: #3F648F;
      margin: 0;
      padding: 0; }
    body.page-national-support-networks .network ul {
      float: right;
      width: 640px;
      border-left: 1px solid #ABC1DA;
      margin: 0;
      padding: 0 0 0 20px; }
      body.page-national-support-networks .network ul li {
        list-style: none;
        background: none;
        margin: 0 0 30px 0;
        padding: 0; }
        body.page-national-support-networks .network ul li .thumb {
          float: left;
          width: 280px;
          text-align: right; }
          body.page-national-support-networks .network ul li .thumb img {
            width: auto; }
        body.page-national-support-networks .network ul li .thumb-desc {
          float: right;
          width: 315px; }
          body.page-national-support-networks .network ul li .thumb-desc a {
            font-weight: 500; }
        body.page-national-support-networks .network ul li.placeholder {
          height: 85px; }
    body.page-national-support-networks .network.special-ed .thumb {
      width: 25%;
      margin-right: 20px; }
    body.page-national-support-networks .network.special-ed .thumb-desc {
      width: 70%; }
    body.page-national-support-networks .network.center {
      border-top: 1px solid #ABC1DA;
      margin: 50px 0;
      padding: 30px 0 0 0; }
      body.page-national-support-networks .network.center h3 {
        border: none;
        margin: 0; }
      body.page-national-support-networks .network.center .description {
        float: right;
        margin: 0 0 20px 20px; }
  @media screen and (max-width: 1040px) {
    body.page-national-support-networks .network .description, body.page-national-support-networks .network ul {
      float: none;
      width: 100%;
      margin: 0 0 20px 0;
      padding: 0; }
    body.page-national-support-networks .network ul {
      border: none; }
      body.page-national-support-networks .network ul li {
        max-width: 400px;
        margin-bottom: 45px; }
        body.page-national-support-networks .network ul li .thumb {
          display: block;
          float: none;
          width: 100%;
          text-align: left;
          margin-bottom: 10px; }
        body.page-national-support-networks .network ul li .thumb-desc {
          display: block;
          float: none;
          width: 100%; }
        body.page-national-support-networks .network ul li.placeholder {
          display: none;
          height: 0; } }

/* Orphan / Policy Support
-------------------------------------------------------------------- */
body.page-policy-support h2.intro {
  font-family: "Roboto Slab";
  font-size: 28px;
  line-height: 36px;
  font-weight: 300;
  color: #51AF46;
  margin: 0 0 15px 0;
  padding: 0; }

body.page-policy-support .page-content {
  float: left;
  width: 75%;
  margin: 0;
  padding: 0 40px 0 0; }
  body.page-policy-support .page-content h3 {
    font-size: 18px;
    line-height: 24px;
    margin: 25px 0 12px 0;
    padding: 0; }

body.page-policy-support .page-sidebar {
  float: right;
  width: 25%;
  margin: 0;
  padding: 0; }
  body.page-policy-support .page-sidebar .info {
    position: relative;
    width: 230px;
    background-color: #EEF2F7;
    border-radius: 6px;
    text-align: center;
    margin: 0 0 0 0;
    padding: 85px 30px 20px 30px;
    /* name */
    /* phone */ }
    body.page-policy-support .page-sidebar .info::before {
      content: "";
      display: inline-block;
      position: absolute;
      top: -45px;
      left: 54px;
      width: 119px;
      height: 119px;
      background-image: url("../images/icon-more-info-i.png");
      background-repeat: no-repeat; }
    body.page-policy-support .page-sidebar .info h2 {
      border: none;
      margin: 0 0 10px 0;
      padding: 0; }
      body.page-policy-support .page-sidebar .info h2 a {
        font-family: "Roboto";
        font-size: 18px;
        font-weight: 500; }
    body.page-policy-support .page-sidebar .info p.phone {
      float: none !important;
      width: auto !important;
      font-size: 18px !important;
      font-weight: 500 !important;
      color: #819AB6 !important;
      margin: 0 !important;
      padding: 0 !important; }
      body.page-policy-support .page-sidebar .info p.phone span.icon {
        display: inline-block;
        width: 15px;
        height: 16px;
        background: url("../images/icon-phone.png") no-repeat 0 0; }
    body.page-policy-support .page-sidebar .info p.button {
      float: none !important;
      width: auto !important;
      margin: 10px 0 0 0 !important;
      padding: 0 !important; }
      body.page-policy-support .page-sidebar .info p.button a {
        display: block;
        border-radius: 6px;
        background-color: #5a799c;
        font-size: 15px;
        font-weight: 400;
        color: #fff !important;
        text-decoration: none !important;
        padding: 5px 10px 5px 10px; }

@media screen and (max-width: 770px) {
  body.page-policy-support .page-content, body.page-policy-support .page-sidebar {
    float: none;
    width: 100%;
    margin: 0;
    padding: 0; }
  body.page-policy-support .page-sidebar {
    margin-top: 20px; }
    body.page-policy-support .page-sidebar .info {
      width: 100%;
      max-width: none;
      padding: 20px; }
      body.page-policy-support .page-sidebar .info::before {
        background-image: none; }
      body.page-policy-support .page-sidebar .info p.button a {
        display: inline-block; } }

/* Orphan / 2020: WestEd Resources to Support Success for All Learners
-------------------------------------------------------------------- */
body.resources-2020 {
  /* Hero */
  /* Intro */
  /* TOC */ }
  body.resources-2020 #hero {
    background-color: transparent; }
    body.resources-2020 #hero .wrap {
      padding: 40px 20px 0 20px; }
    body.resources-2020 #hero h1 {
      max-width: 750px;
      font-family: "Roboto Slab";
      font-size: 42px;
      line-height: 50px;
      font-weight: 300;
      color: #51AF46;
      margin: 0;
      padding: 0; }
  body.resources-2020 section {
    border-top: 4px solid #E3ECF9;
    margin: 20px 0;
    padding: 20px 0; }
    body.resources-2020 section h2 {
      font-family: "Roboto Slab";
      font-size: 40px;
      line-height: 53px;
      font-weight: 300;
      color: #51AF46;
      margin: 0 0 20px 0;
      padding: 0; }
    body.resources-2020 section .group {
      display: grid;
      grid-template-columns: 1fr 3fr;
      grid-column-gap: 30px;
      margin: 0;
      padding: 0; }
      body.resources-2020 section .group .item {
        margin: 0;
        padding: 0; }
        body.resources-2020 section .group .item:nth-child(1) .box {
          background-color: #E3ECF9;
          border-radius: 10px;
          margin: 0;
          padding: 20px; }
        body.resources-2020 section .group .item:nth-child(1) p {
          font-size: 20px;
          line-height: 30px;
          font-weight: 400;
          color: #546B85;
          margin: 0;
          padding: 0; }
        body.resources-2020 section .group .item:nth-child(2) ul {
          margin: 0;
          padding: 0; }
          body.resources-2020 section .group .item:nth-child(2) ul li {
            list-style: none;
            margin: 0 0 15px 0;
            padding: 0; }
            body.resources-2020 section .group .item:nth-child(2) ul li a {
              display: block;
              font-size: 18px;
              line-height: 21px;
              font-weight: 700;
              margin: 0;
              padding: 0; }
        body.resources-2020 section .group .item:nth-child(2) p.btn-wrap {
          text-align: center; }
      @media screen and (max-width: 900px) {
        body.resources-2020 section .group {
          grid-template-columns: 1fr; }
          body.resources-2020 section .group .item:nth-child(2) {
            margin-top: 20px; } }
  body.resources-2020 section#intro {
    border: none;
    margin: 0 0 50px 0;
    padding: 0; }
    body.resources-2020 section#intro p {
      font-size: 18px;
      line-height: 23px;
      font-weight: 500; }
  body.resources-2020 section#toc {
    border: none;
    margin: 0 0 60px 0;
    padding: 0; }
    body.resources-2020 section#toc ul {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      grid-gap: 20px;
      margin: 0;
      padding: 0; }
      body.resources-2020 section#toc ul li {
        list-style: none;
        margin: 0;
        padding: 0; }
        body.resources-2020 section#toc ul li a {
          display: block;
          font-family: "Roboto";
          font-size: 15px;
          line-height: 18px;
          font-weight: 500;
          letter-spacing: .5px;
          color: #fff;
          background-color: #5a799c;
          border-radius: 6px;
          border: none;
          text-decoration: none;
          text-align: center;
          margin: 0;
          padding: 12px 0 !important; }
          body.resources-2020 section#toc ul li a:hover {
            opacity: .75; }
    @media screen and (max-width: 900px) {
      body.resources-2020 section#toc ul {
        grid-template-columns: 1fr; } }

/* Search Results / Global
-------------------------------------------------------------------- */
body.search-global #content {
  max-width: 1040px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  /* form */
  /* xxx results */
  /* results */
  /* pagination */ }
  body.search-global #content form#googlesearchform {
    display: none !important; }
  body.search-global #content h1 {
    font-family: "Roboto Slab";
    font-size: 28px;
    line-height: 32px;
    font-weight: 500;
    color: #51AF46;
    margin: 25px 0 10px 0;
    padding: 0; }
  body.search-global #content .gsc-control-cse {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important; }
  body.search-global #content .gsc-input-box-hover,
  body.search-global #content .gsc-input-box-focus {
    box-shadow: none !important; }
  body.search-global #content table,
  body.search-global #content td {
    margin: 0 !important;
    padding: 0 !important; }
  body.search-global #content form {
    display: block !important;
    width: 50% !important;
    margin: 0 !important;
    padding: 0 !important; }
    body.search-global #content form div {
      border: none !important; }
    body.search-global #content form .gsst_b {
      display: none !important; }
    body.search-global #content form input[type="text"] {
      height: 33px !important;
      border: none !important;
      border-radius: 4px !important;
      background: none !important;
      background-color: #E3ECF9 !important;
      font-size: 14px !important;
      line-height: 18px !important;
      font-weight: 700 !important;
      color: #3F648F !important;
      box-shadow: none !important;
      margin: 0 !important;
      padding: 4px 12px !important; }
      body.search-global #content form input[type="text"]:hover {
        box-shadow: none !important; }
    body.search-global #content form button {
      width: 53px;
      height: 33px;
      background-color: transparent;
      background: url("../images/button-go.png") no-repeat 0 0;
      border: none;
      margin: 0 0 0 8px; }
      body.search-global #content form button:hover {
        opacity: .75; }
      body.search-global #content form button svg {
        display: none !important; }
  body.search-global #content .gsc-above-wrapper-area {
    display: none;
    border: none;
    margin: 0 0 20px 0;
    padding: 0; }
  body.search-global #content .gsc-wrapper {
    margin: 40px 0 0 0;
    padding: 0;
    /* each result */ }
    body.search-global #content .gsc-wrapper .gsc-result {
      border: none;
      border-bottom: 1px solid #ABC1DA;
      margin: 0 0 20px 0;
      padding: 0 0 20px 0; }
  body.search-global #content .gs-title {
    font-size: 16px;
    line-height: 20px;
    font-weight: 700;
    color: #1669c9;
    text-decoration: none;
    margin: 0;
    padding: 0; }
    body.search-global #content .gs-title b {
      text-decoration: none;
      color: #1669c9; }
  body.search-global #content .gsc-thumbnail-inside {
    margin: 0;
    padding: 0; }
  body.search-global #content .gsc-thumbnail {
    display: none;
    /* decided to hide */
    width: auto;
    padding-right: 15px !important; }
  body.search-global #content .gs-web-image-box img {
    max-width: 150px !important;
    border: none; }
  body.search-global #content .gs-web-image-box {
    float: none;
    width: auto;
    margin: 0;
    padding: 0; }
  body.search-global #content .gsc-url-top,
  body.search-global #content .gsc-table-result {
    font-family: "Roboto";
    font-size: 16px;
    line-height: 24px;
    font-weight: 300;
    color: #546b85;
    margin: 0 0 15px 0;
    padding: 0; }
  body.search-global #content .gsc-cursor-box {
    border: none;
    text-align: center;
    margin: 0;
    padding: 10px 0 30px 0; }
    body.search-global #content .gsc-cursor-box .gsc-cursor-page {
      display: inline-block;
      font-size: 14px;
      font-weight: 400;
      color: #1669c9;
      vertical-align: middle;
      margin: 0 6px; }
    body.search-global #content .gsc-cursor-box .gsc-cursor-current-page {
      display: inline-block;
      border: 1px solid #b4b1a6;
      background-color: #eef2f7;
      padding: 2px 6px;
      font-size: 14px;
      font-weight: 400;
      margin: 0 6px;
      vertical-align: middle; }
  body.search-global #content .gcsc-branding,
  body.search-global #content .gcsc-more-maybe-branding-root {
    display: none !important; }

@media screen and (max-width: 950px) {
  body.search-global #content form {
    width: 100% !important; }
    body.search-global #content form input[type="text"] {
      width: 75%; } }

/* Search Results / Global 2020-08
-------------------------------------------------------------------- */
body.page-template-search-wested-global #content form {
  display: block !important;
  width: 100% !important;
  margin: 0 0 40px 0 !important;
  padding: 0 !important; }
  body.page-template-search-wested-global #content form label {
    margin: 0 !important;
    padding: 0 !important; }
  body.page-template-search-wested-global #content form input[type="search"] {
    height: 33px !important;
    border: none !important;
    border-radius: 4px !important;
    background: none !important;
    background-color: #E3ECF9 !important;
    font-size: 14px !important;
    line-height: 18px !important;
    font-weight: 700 !important;
    color: #3F648F !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 4px 12px !important; }
    body.page-template-search-wested-global #content form input[type="search"]:hover {
      box-shadow: none !important; }
  body.page-template-search-wested-global #content form input[type="submit"] {
    margin: 0 !important;
    padding: 8px 20px !important; }

body.page-template-search-wested-global #content .search-result {
  margin: 0 0 30px 0 !important;
  padding: 0 !important; }
  body.page-template-search-wested-global #content .search-result h3, body.page-template-search-wested-global #content .search-result p {
    width: 100% !important;
    font-family: "Roboto" !important;
    font-size: 16px !important;
    line-height: 20px !important;
    font-weight: 700 !important;
    color: #546B85 !important;
    margin: 0 0 2px 0 !important;
    padding: 0 !important; }
    body.page-template-search-wested-global #content .search-result h3 a, body.page-template-search-wested-global #content .search-result p a {
      text-decoration: none !important; }
  body.page-template-search-wested-global #content .search-result p {
    font-weight: 300 !important; }

body.page-template-search-wested-global #content .pagination {
  text-align: center; }
  body.page-template-search-wested-global #content .pagination span {
    margin: 0 5px; }
  body.page-template-search-wested-global #content .pagination a {
    margin: 0 5px; }

/* Search Results / Resources
-------------------------------------------------------------------- */
body.woocommerce.search-results h1.page-title,
body.woocommerce.search-no-results h1.page-title {
  max-width: 1040px;
  font-family: "Roboto Slab";
  font-size: 28px;
  line-height: 32px;
  font-weight: 500;
  color: #51AF46;
  margin: 0 auto;
  margin-top: 30px;
  padding: 0 20px; }

body.woocommerce.search-results #product_search_form.content-area,
body.woocommerce.search-no-results #product_search_form.content-area {
  max-width: 1040px;
  margin: 0 auto;
  margin-top: 12px;
  padding: 0 20px;
  /* form */ }
  body.woocommerce.search-results #product_search_form.content-area form,
  body.woocommerce.search-no-results #product_search_form.content-area form {
    display: block !important;
    width: 50% !important;
    vertical-align: top;
    margin: 0 !important;
    padding: 0 !important; }
    body.woocommerce.search-results #product_search_form.content-area form:before, body.woocommerce.search-results #product_search_form.content-area form:after,
    body.woocommerce.search-no-results #product_search_form.content-area form:before,
    body.woocommerce.search-no-results #product_search_form.content-area form:after {
      content: "";
      display: table; }
    body.woocommerce.search-results #product_search_form.content-area form:after,
    body.woocommerce.search-no-results #product_search_form.content-area form:after {
      clear: both; }
    body.woocommerce.search-results #product_search_form.content-area form input[type="text"],
    body.woocommerce.search-no-results #product_search_form.content-area form input[type="text"] {
      float: left;
      height: 33px !important;
      border: none !important;
      border-radius: 4px !important;
      background: none !important;
      background-color: #E3ECF9 !important;
      font-size: 14px !important;
      line-height: 18px !important;
      font-weight: 700 !important;
      color: #3F648F !important;
      box-shadow: none !important;
      margin: 0 !important;
      padding: 4px 12px !important; }
      body.woocommerce.search-results #product_search_form.content-area form input[type="text"]:hover,
      body.woocommerce.search-no-results #product_search_form.content-area form input[type="text"]:hover {
        box-shadow: none !important; }
    body.woocommerce.search-results #product_search_form.content-area form input[type="submit"],
    body.woocommerce.search-no-results #product_search_form.content-area form input[type="submit"] {
      float: left;
      width: 53px;
      height: 33px;
      background-color: transparent;
      background: url("../images/button-go.png") no-repeat 0 0;
      border: none;
      margin: 0 0 0 8px;
      padding: 0 0 12px 0; }
      body.woocommerce.search-results #product_search_form.content-area form input[type="submit"]:hover,
      body.woocommerce.search-no-results #product_search_form.content-area form input[type="submit"]:hover {
        opacity: .75; }

body.woocommerce.search-results #content,
body.woocommerce.search-no-results #content {
  /* pagination */ }
  body.woocommerce.search-results #content p.woocommerce-result-count,
  body.woocommerce.search-no-results #content p.woocommerce-result-count {
    display: none;
    margin: 0 0 5px 0;
    padding: 0; }
  body.woocommerce.search-results #content form,
  body.woocommerce.search-no-results #content form {
    display: none;
    float: none;
    width: 20%;
    margin: 0 0 30px 0;
    padding: 0; }
  body.woocommerce.search-results #content ul.products,
  body.woocommerce.search-no-results #content ul.products {
    margin: 0;
    padding: 0; }
    body.woocommerce.search-results #content ul.products li,
    body.woocommerce.search-no-results #content ul.products li {
      float: none;
      width: 100%;
      height: auto;
      min-height: 0;
      margin: 0 0 30px 0;
      padding: 0; }
      body.woocommerce.search-results #content ul.products li .img,
      body.woocommerce.search-no-results #content ul.products li .img {
        float: left;
        margin: 0;
        padding: 0; }
        body.woocommerce.search-results #content ul.products li .img span.thumbnail,
        body.woocommerce.search-no-results #content ul.products li .img span.thumbnail {
          float: none;
          margin: 0;
          padding: 0; }
        body.woocommerce.search-results #content ul.products li .img img,
        body.woocommerce.search-no-results #content ul.products li .img img {
          max-width: 100px !important; }
      body.woocommerce.search-results #content ul.products li .info,
      body.woocommerce.search-no-results #content ul.products li .info {
        margin: 0 0 0 120px;
        padding: 0; }
        body.woocommerce.search-results #content ul.products li .info h3,
        body.woocommerce.search-no-results #content ul.products li .info h3 {
          float: none;
          width: 100% !important;
          font-size: 16px;
          line-height: 20px;
          font-weight: 700;
          color: #1669c9;
          margin: 0 0 5px 0;
          padding: 0; }
        body.woocommerce.search-results #content ul.products li .info p,
        body.woocommerce.search-no-results #content ul.products li .info p {
          float: none;
          width: 100% !important;
          margin: 0;
          padding: 0; }
  body.woocommerce.search-results #content .woocommerce-pagination,
  body.woocommerce.search-no-results #content .woocommerce-pagination {
    margin: 20px 0;
    padding: 0; }
    body.woocommerce.search-results #content .woocommerce-pagination ul,
    body.woocommerce.search-no-results #content .woocommerce-pagination ul {
      border: none;
      margin: 0;
      padding: 0; }
      body.woocommerce.search-results #content .woocommerce-pagination ul li,
      body.woocommerce.search-no-results #content .woocommerce-pagination ul li {
        border: none;
        margin: 0;
        padding: 0; }
        body.woocommerce.search-results #content .woocommerce-pagination ul li a,
        body.woocommerce.search-no-results #content .woocommerce-pagination ul li a {
          display: inline-block;
          font-size: 14px;
          font-weight: 400;
          color: #1669c9;
          vertical-align: middle;
          margin: 0 3px; }
        body.woocommerce.search-results #content .woocommerce-pagination ul li .current,
        body.woocommerce.search-no-results #content .woocommerce-pagination ul li .current {
          display: inline-block;
          border: 1px solid #b4b1a6;
          background-color: #eef2f7;
          padding: 2px 6px;
          font-size: 14px;
          line-height: 22px;
          font-weight: 400;
          color: #1669c9;
          vertical-align: middle;
          margin: 0 6px; }

@media screen and (max-width: 950px) {
  body.woocommerce.search-results #product_search_form.content-area form,
  body.woocommerce.search-no-results #product_search_form.content-area form {
    width: 100% !important; }
    body.woocommerce.search-results #product_search_form.content-area form input[type="text"],
    body.woocommerce.search-no-results #product_search_form.content-area form input[type="text"] {
      width: 75%; } }

body.woocommerce.search-no-results #content h1 {
  display: none; }

body.woocommerce.search-no-results #content p.woocommerce-info {
  width: 100% !important;
  background-color: transparent;
  border: none !important;
  margin: 0;
  padding: 0; }
  body.woocommerce.search-no-results #content p.woocommerce-info::before {
    content: ""; }

/* 404 Not Found
-------------------------------------------------------------------- */
body.error404 #content h1 {
  font-family: "Roboto Slab";
  font-size: 28px;
  line-height: 32px;
  font-weight: 500;
  color: #51AF46;
  margin: 0 0 10px 0;
  padding: 0; }

body.error404 #content p {
  margin: 0 0 30px 0;
  padding: 0; }

body.error404 #content #notfound_search form {
  max-width: 50%; }
  body.error404 #content #notfound_search form input[type="text"] {
    float: left;
    width: 75%;
    height: 33px !important;
    border: none !important;
    border-radius: 4px !important;
    background: none !important;
    background-color: #E3ECF9 !important;
    font-size: 14px !important;
    line-height: 18px !important;
    font-weight: 700 !important;
    color: #3F648F !important;
    box-shadow: none !important;
    margin: 0 5px 0 0 !important;
    padding: 4px 12px !important; }
    body.error404 #content #notfound_search form input[type="text"]:hover {
      box-shadow: none !important; }
  body.error404 #content #notfound_search form input[type="submit"] {
    float: left;
    display: inline-block;
    width: auto;
    font-family: "Roboto" !important;
    font-size: 15px !important;
    line-height: 18px !important;
    font-weight: 500 !important;
    letter-spacing: .5px !important;
    color: #fff !important;
    background-color: #5a799c !important;
    border-radius: 6px !important;
    border: none !important;
    text-decoration: none !important;
    margin: 0 !important;
    padding: 8px 16px 8px 16px !important; }
    body.error404 #content #notfound_search form input[type="submit"]:hover {
      opacity: .75; }

@media screen and (max-width: 950px) {
  body.error404 #content #notfound_search form {
    max-width: none; }
    body.error404 #content #notfound_search form input[type="text"] {
      width: 75%; } }

/* Footer Banner
-------------------------------------------------------------------- */
/* Safari 4-8 */
@-webkit-keyframes footer-banner-slide-open {
  from {
    bottom: -320px; }
  to {
    bottom: 0; } }

@keyframes footer-banner-slide-open {
  from {
    bottom: -320px; }
  to {
    bottom: 0; } }

@-webkit-keyframes footer-banner-slide-close {
  from {
    bottom: 0; }
  to {
    bottom: -525px; } }

@keyframes footer-banner-slide-close {
  from {
    bottom: 0; }
  to {
    bottom: -525px; } }

#footer-banner {
  animation: 2.5s footer-banner-slide-open;
  z-index: 999;
  position: fixed;
  overflow: visible;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 320px;
  background: #1a2c42;
  background: linear-gradient(180deg, #1a2c42 0%, #1a446c 100%);
  border-top: 10px solid #51AF46;
  margin: 0;
  padding: 0; }
  #footer-banner.closed {
    animation: 2.5s footer-banner-slide-close;
    animation-fill-mode: forwards;
    /* maintains last position */ }
  #footer-banner .wrap {
    position: relative;
    max-width: 1040px;
    margin: 0 auto;
    padding: 30px 40px; }
  #footer-banner h2 {
    font-family: "Roboto Slab";
    font-size: 50px;
    line-height: 66px;
    font-weight: 300;
    color: #51AF46;
    margin: 0 0 12px 0;
    padding: 0; }
  #footer-banner p {
    max-width: 440px;
    font-size: 20px;
    line-height: 27px;
    font-weight: 700;
    letter-spacing: .5px;
    color: #fff;
    margin: 0 0 25px 0;
    padding: 0; }
    #footer-banner p.sample {
      position: absolute;
      top: 50px;
      right: 90px; }
      #footer-banner p.sample a {
        display: block; }
    #footer-banner p.close a {
      position: absolute;
      top: 50px;
      right: 40px;
      display: block; }
      #footer-banner p.close a:hover {
        opacity: .75; }
    #footer-banner p.button {
      text-align: center; }
      #footer-banner p.button a {
        float: none !important;
        height: auto !important;
        text-indent: 0 !important;
        display: inline-block !important;
        font-family: "Roboto" !important;
        font-size: 22px !important;
        line-height: 25px !important;
        font-weight: 500 !important;
        letter-spacing: .5px !important;
        color: #fff !important;
        background: none !important;
        background-color: transparent !important;
        border-radius: 6px !important;
        border: 2px solid #fff !important;
        text-decoration: none !important;
        margin: 8px 0 0 0 !important;
        padding: 8px 16px 8px 16px !important; }
        #footer-banner p.button a:hover {
          opacity: .75; }
  @media screen and (max-width: 1030px) {
    #footer-banner p {
      max-width: none; }
      #footer-banner p.sample {
        display: none; } }
  @media screen and (max-width: 525px) {
    #footer-banner {
      height: auto; }
      #footer-banner h2 {
        text-align: center;
        padding-top: 45px; }
      #footer-banner p {
        text-align: center; } }

/* Global / Priority Items
-------------------------------------------------------------------- */
/* show more/less template */
.finiteScroll {
  margin: 0 !important;
  padding: 5px 0 0 0 !important; }

.finiteScroll .next_page,
.more_links,
#main_content_wrap #sidebar #content span.more_links,
body.subscribe #inner .entry-content .ebulletin-archive p.showhide {
  float: none !important;
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  border-top: 2px solid #5a799c !important;
  margin: 20px 0 0 0 !important;
  padding: 0 !important; }
  .finiteScroll .next_page:hover,
  .more_links:hover,
  #main_content_wrap #sidebar #content span.more_links:hover,
  body.subscribe #inner .entry-content .ebulletin-archive p.showhide:hover {
    opacity: .75; }
  .finiteScroll .next_page span,
  .more_links span,
  #main_content_wrap #sidebar #content span.more_links span,
  body.subscribe #inner .entry-content .ebulletin-archive p.showhide span {
    font-size: 11px !important;
    line-height: 15px !important;
    font-weight: 500 !important;
    color: #fff !important;
    letter-spacing: 1px !important; }
  .finiteScroll .next_page a,
  .more_links a,
  #main_content_wrap #sidebar #content span.more_links a,
  body.subscribe #inner .entry-content .ebulletin-archive p.showhide a {
    display: inline-block !important;
    width: auto !important;
    font-family: "Roboto" !important;
    font-size: 11px !important;
    line-height: 15px !important;
    font-weight: 500 !important;
    color: #fff !important;
    background-color: #5a799c !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    border-bottom-left-radius: 6px !important;
    border-bottom-right-radius: 6px !important;
    border: none !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    margin: 0 auto !important;
    padding: 1px 12px 1px 12px !important; }
    .finiteScroll .next_page a:hover,
    .more_links a:hover,
    #main_content_wrap #sidebar #content span.more_links a:hover,
    body.subscribe #inner .entry-content .ebulletin-archive p.showhide a:hover {
      opacity: 1 !important; }
    .finiteScroll .next_page a span,
    .more_links a span,
    #main_content_wrap #sidebar #content span.more_links a span,
    body.subscribe #inner .entry-content .ebulletin-archive p.showhide a span {
      background: none !important;
      background-position: 0 0 !important;
      margin: 0 !important;
      padding: 0 !important; }

body.upcoming_webinar #related-resources .more_links a,
body.upcoming_webinar #related-services .more_links a,
body.single-rd_alert_online #related-resources .more_links a {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
  padding: 1px 12px 1px 12px !important; }

body.subscribe #inner .entry-content .ebulletin-archive p.arrowClose {
  display: none !important; }

.more_links,
#main_content_wrap #sidebar #content span.more_links {
  margin-bottom: 10px !important; }

/* print stylesheet */
@media print {
  /* --------------------------------------------------------------------

Print

-------------------------------------------------------------------- */
  /* Global
-------------------------------------------------------------------- */
  body {
    overflow: visible !important;
    background: #fff;
    color: #000;
    font: normal 18px/24px;
    margin: 0 !important;
    padding: 0 !important; }
  * {
    box-shadow: none !important; }
  a, a:link, a:visited {
    color: #546B85 !important;
    text-decoration: none !important;
    border: none !important; }
  /* force background colors */
  .color-print {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact; }
  /* hide */
  #nav,
  #nav-trigger,
  #header #title-area,
  #header .widget_nav_menu,
  #header #activateMainMenu,
  #sidebar,
  #footer-widgets,
  #footer .gototop,
  #mobileSearchTop {
    display: none !important; }
  #footer {
    background-color: transparent; }
    #footer .footer-bottom-nav ul {
      display: none; }
    #footer .footer-bottom-nav p, #footer .footer-bottom-nav p a {
      font-size: 12px !important;
      font-weight: 400 !important;
      color: #546B85 !important; }
    #footer .footer-bottom-nav a {
      margin-left: 5px; }
  #wrap, #content, #inner {
    width: 100% !important; }
  #inner {
    margin: 0 !important;
    padding: 20px !important; }
  #main_content_wrap {
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important; }
  /* Header */
  #header {
    width: 100% !important;
    height: auto !important;
    overflow: hidden !important;
    border-bottom: 4px solid #ccc !important;
    margin: 0;
    padding: 0; }
    #header .widget-area {
      display: block !important;
      width: 100% !important; }
    #header .logo {
      float: left !important;
      width: 150px !important;
      height: auto !important;
      padding: 10px 0 0 0 !important; }
    #header .slogan {
      position: relative !important;
      top: 15px !important;
      left: 0 !important;
      right: 0 !important;
      bottom: 0 !important;
      float: left !important;
      width: 475px !important;
      height: auto !important;
      font-size: 12px !important;
      line-height: 16px !important;
      margin: 0 0 0 40px !important;
      padding: 0 !important; }
  /* Hero */
  #hero {
    background: transparent !important;
    margin: 0 !important;
    padding: 0 0 40px 0 !important; }
    #hero .wrap {
      margin: 0 !important;
      padding: 0 !important; }
    #hero span.subtitle {
      font-size: 12px !important;
      line-height: 18px !important;
      font-weight: bold !important;
      color: #546B85 !important;
      margin: 0 !important;
      padding: 0 !important; }
      #hero span.subtitle a {
        color: #546B85 !important; }
    #hero h1 {
      font-size: 22px !important;
      line-height: 28px !important;
      font-weight: 500 !important;
      color: #546B85 !important;
      margin: 0 !important;
      padding: 0 !important; }
      #hero h1 a {
        color: #546B85 !important; }
      #hero h1 span.reg {
        font-size: 15px !important; }
    #hero p {
      font-size: 18px !important;
      line-height: 24px !important;
      font-weight: 500 !important;
      color: #546B85 !important;
      margin: 0 !important;
      padding: 0 !important; }
  #content h1 {
    font-size: 24px !important;
    line-height: 28px !important;
    font-weight: 500 !important;
    margin: 0 !important;
    padding: 0 !important; }
  #content h2 {
    font-size: 20px !important;
    line-height: 26px !important;
    font-weight: 500 !important;
    color: #000 !important;
    margin: 0 !important;
    padding: 0 !important; }
  #content p {
    width: 100% !important;
    font-size: 18px !important;
    line-height: 24px !important;
    color: #000 !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important; }
  #content ul,
  #content ol {
    margin: 10px 0 10px 30px;
    padding: 0; }
  #content li {
    width: 100% !important;
    font-size: 18px !important;
    line-height: 24px !important;
    color: #000 !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important; }
  /* Footer */
  #footer-form {
    display: none !important; }
  #footer {
    clear: both !important;
    width: 100% !important;
    border-top: 1px solid #999;
    margin: 20px 0 0 0 !important;
    padding: 0; }
    #footer .wrap {
      margin: 0 !important;
      padding: 0 !important; }
    #footer p,
    #footer p a {
      color: #000 !important; }
    #footer .creds {
      float: none;
      text-align: left; }
  /* Blog Posts
-------------------------------------------------------------------- */
  body.single-post #content .social-bar {
    display: none; }
  body.single-post #content .single-img {
    float: left;
    width: 25%;
    max-width: 200px;
    margin: 0;
    padding: 0; }
  body.single-post #content .single-main {
    float: left;
    width: 75%;
    margin: 0;
    padding: 0 0 0 40px; }
    body.single-post #content .single-main h2 {
      margin-bottom: 15px !important; }
    body.single-post #content .single-main p {
      margin-bottom: 15px !important; }
    body.single-post #content .single-main .post-date {
      margin-top: 40px !important;
      padding-top: 20px !important;
      font-weight: 400 !important; }
    body.single-post #content .single-main p.tags {
      padding-bottom: 15px !important; }
    body.single-post #content .single-main p.more {
      display: none; }
  /* Resources / R&D Alert Articles
-------------------------------------------------------------------- */
  body.single-rd_alert_online {
    /* 2019-04 hiding per CH */ }
    body.single-rd_alert_online #content .entry-content {
      /* intro */
      /* container */ }
      body.single-rd_alert_online #content .entry-content .social-bar {
        display: none; }
      body.single-rd_alert_online #content .entry-content h1 {
        font-size: 30px !important; }
      body.single-rd_alert_online #content .entry-content h2 {
        font-size: 12px !important;
        line-height: 16px !important;
        font-weight: normal !important;
        margin: 0 !important;
        padding: 0 !important; }
        body.single-rd_alert_online #content .entry-content h2.posted-on {
          display: none; }
      body.single-rd_alert_online #content .entry-content .intro .post_image,
      body.single-rd_alert_online #content .entry-content .intro .toc {
        float: none !important;
        width: 100% !important;
        height: auto !important; }
      body.single-rd_alert_online #content .entry-content .intro .post_image {
        margin: 20px 0 !important; }
        body.single-rd_alert_online #content .entry-content .intro .post_image img {
          width: 100% !important; }
      body.single-rd_alert_online #content .entry-content .intro .toc li {
        background: none !important; }
      body.single-rd_alert_online #content .entry-content .intro .toc .toc_content ul {
        margin: 0 0 0 20px;
        padding: 0; }
        body.single-rd_alert_online #content .entry-content .intro .toc .toc_content ul li {
          list-style: disc;
          margin: 0;
          padding: 0; }
      body.single-rd_alert_online #content .entry-content .container {
        display: table;
        /* sidebar */
        /* content */ }
        body.single-rd_alert_online #content .entry-content .container .rdalert-sidebar,
        body.single-rd_alert_online #content .entry-content .container .rdalert-content {
          float: none !important;
          width: 100% !important;
          max-width: none !important;
          height: auto !important; }
        body.single-rd_alert_online #content .entry-content .container .rdalert-sidebar {
          display: table-footer-group; }
        body.single-rd_alert_online #content .entry-content .container .rdalert-content {
          display: table-header-group; }
        body.single-rd_alert_online #content .entry-content .container .rdalert-sidebar .widget_text {
          margin: 30px 0 0 0;
          padding: 0; }
          body.single-rd_alert_online #content .entry-content .container .rdalert-sidebar .widget_text li a {
            font-family: "Roboto" !important; }
        body.single-rd_alert_online #content .entry-content .container .rdalert-sidebar #sidebar_project_contact {
          border-top: 1px solid #546B85;
          border-bottom: 1px solid #546B85;
          margin: 20px 0 20px 0 !important;
          padding: 20px 0 20px 0 !important; }
          body.single-rd_alert_online #content .entry-content .container .rdalert-sidebar #sidebar_project_contact .contactInfo {
            width: 100% !important;
            background-color: transparent !important;
            border-radius: 0 !important;
            text-align: left !important;
            margin: 0 !important;
            padding: 0 !important; }
            body.single-rd_alert_online #content .entry-content .container .rdalert-sidebar #sidebar_project_contact .contactInfo::before {
              background: none !important; }
            body.single-rd_alert_online #content .entry-content .container .rdalert-sidebar #sidebar_project_contact .contactInfo p.name {
              display: block !important;
              width: auto !important;
              font-size: 14px;
              font-weight: 500;
              color: #546B85;
              margin: 0 !important;
              padding: 0 !important; }
              body.single-rd_alert_online #content .entry-content .container .rdalert-sidebar #sidebar_project_contact .contactInfo p.name a {
                font-size: 14px;
                font-weight: 500;
                color: #546B85; }
              body.single-rd_alert_online #content .entry-content .container .rdalert-sidebar #sidebar_project_contact .contactInfo p.name::before {
                content: "Contact";
                display: block;
                font-family: "Roboto" !important;
                font-size: 13px !important;
                line-height: 18px !important;
                font-weight: 500 !important;
                color: #51AF46;
                text-transform: uppercase;
                letter-spacing: 1px;
                margin: 0 0 3px 0 !important;
                padding: 0 !important; }
            body.single-rd_alert_online #content .entry-content .container .rdalert-sidebar #sidebar_project_contact .contactInfo p.phone {
              display: inline-block !important;
              width: auto !important;
              font-size: 14px !important;
              font-weight: 500 !important;
              color: #546B85 !important; }
            body.single-rd_alert_online #content .entry-content .container .rdalert-sidebar #sidebar_project_contact .contactInfo p.email {
              display: none !important; }
        body.single-rd_alert_online #content .entry-content .container h2 {
          font-size: 20px !important;
          line-height: 26px !important;
          font-weight: bold !important;
          color: #546B85 !important;
          margin: 30px 0 15px 0 !important;
          padding: 0 !important; }
        body.single-rd_alert_online #content .entry-content .container blockquote {
          min-height: 0 !important;
          background: transparent !important;
          background-image: none !important;
          border-radius: 0 !important;
          margin: 40px 0 40px 40px !important;
          padding: 0 !important; }
          body.single-rd_alert_online #content .entry-content .container blockquote p {
            width: 75% !important;
            font-size: 18px !important;
            line-height: 22px !important;
            font-weight: bold !important;
            color: #546B85 !important;
            margin: 0 !important;
            padding: 0 !important; }
    body.single-rd_alert_online #sidebar_related_project,
    body.single-rd_alert_online #sidebar_related_program,
    body.single-rd_alert_online #sidebar_related_services,
    body.single-rd_alert_online #related-resources {
      display: none; }
    body.single-rd_alert_online #sidebar_project_contact {
      border-bottom: none !important; }
  body.single-rd_alert_online #related-resources {
    background-color: transparent !important; }
    body.single-rd_alert_online #related-resources .container {
      max-width: none !important;
      margin: 0 !important;
      padding: 0 !important; }
    body.single-rd_alert_online #related-resources h3 {
      font-family: "Roboto";
      font-size: 13px !important;
      line-height: 18px !important;
      font-weight: 500 !important;
      color: #51AF46 !important;
      text-transform: uppercase;
      letter-spacing: 1px;
      margin: 25px 0 10px 0 !important;
      padding: 0 !important; }
    body.single-rd_alert_online #related-resources ul {
      display: block !important; }
      body.single-rd_alert_online #related-resources ul li {
        float: none !important;
        width: 100% !important;
        margin: 0 0 20px 0 !important;
        padding: 0 !important; }
        body.single-rd_alert_online #related-resources ul li .thumb {
          display: none;
          float: left !important;
          width: auto !important;
          margin: 0 20px 0 0 !important; }
        body.single-rd_alert_online #related-resources ul li .info {
          float: left !important;
          width: 70% !important; }
          body.single-rd_alert_online #related-resources ul li .info h4 {
            font-family: "Roboto" !important;
            font-size: 14px !important;
            line-height: 18px !important;
            font-weight: 500 !important;
            margin: 0 0 6px 0 !important;
            padding: 0 !important; }
          body.single-rd_alert_online #related-resources ul li .info p {
            font-size: 14px !important;
            line-height: 18px !important; }
    body.single-rd_alert_online #related-resources .more_links {
      display: none !important; } }

/* prevent slides from flashing on page load */
#spotlight_slider .slide:nth-child(n+2),
#spotlight_slider .spotlight_item:nth-child(n+2),
.plta_feat_slider .slide:nth-child(n+2),
.plta_feat_slider .spotlight_item:nth-child(n+2),
.webinar_spotlight_slider .slide:nth-child(n+2),
.webinar_spotlight_slider .spotlight_item:nth-child(n+2) {
  display: none; }

/* Pages without standard layout
-------------------------------------------------------------------- */
body.perkins {
  /* header overrides */
  /* layout overrides */
  /* content */ }
  body.perkins #header {
    position: relative;
    top: 0;
    height: 140px !important;
    border-bottom: 25px solid #3F5460; }
    body.perkins #header .nav-wrap, body.perkins #header #custom_html-12 {
      display: none !important; }
  body.perkins #wrap {
    position: relative;
    height: auto;
    margin: 0;
    padding: 0; }
    body.perkins #wrap #inner {
      max-width: 1000px;
      margin: 0 auto !important;
      padding: 30px 20px !important; }
      body.perkins #wrap #inner #main_content_wrap {
        max-width: none !important;
        margin: 0;
        padding: 0; }
  body.perkins #main_content_wrap h1 {
    font-size: 30px;
    line-height: 36px;
    font-weight: 500;
    margin: 15px 0 30px 0;
    padding: 0; }
  body.perkins #main_content_wrap h2 {
    font-family: "Roboto Slab";
    font-size: 28px;
    line-height: 32px;
    font-weight: 300;
    color: #51AF46;
    margin: 30px 0 20px 0;
    padding: 0; }
  body.perkins #main_content_wrap h3 {
    font-family: "Roboto Slab";
    font-size: 20px;
    line-height: 32px;
    font-weight: 500;
    color: #51AF46;
    margin: 20px 0 5px 0;
    padding: 0; }
  body.perkins #main_content_wrap p {
    width: 100% !important;
    font-size: 16px;
    line-height: 24px;
    font-weight: 300;
    color: #546b85;
    margin: 0 0 14px 0;
    padding: 0; }
    body.perkins #main_content_wrap p.btn-container {
      text-align: center;
      margin: 20px auto;
      padding: 0; }
  body.perkins #main_content_wrap a.btn {
    display: inline-block;
    font-family: "Roboto" !important;
    font-size: 15px !important;
    line-height: 18px !important;
    font-weight: 500 !important;
    letter-spacing: .5px !important;
    color: #fff !important;
    background-color: #5a799c !important;
    border-radius: 6px !important;
    border: none !important;
    text-decoration: none !important;
    margin: 8px 0 0 0 !important;
    padding: 8px 16px 8px 16px !important; }
    body.perkins #main_content_wrap a.btn:hover {
      opacity: .75; }
  body.perkins #main_content_wrap ul {
    margin: 20px 0 20px 50px;
    padding: 0; }
    body.perkins #main_content_wrap ul li {
      font-size: 16px;
      line-height: 24px;
      font-weight: 300;
      color: #546b85;
      margin: 0 0 10px 0;
      padding: 0; }
    body.perkins #main_content_wrap ul.logos {
      display: flex;
      margin: 30px 0;
      padding: 0; }
      body.perkins #main_content_wrap ul.logos li {
        list-style: none;
        margin: 0 15px;
        padding: 0; }
  @media screen and (max-width: 800px) {
    body.perkins #header {
      height: auto !important; } }

/* Teacher Professional Development (orphan page created 2020-01-22)
-------------------------------------------------------------------- */
body.teacher-professional-development #hero {
  min-height: 300px; }

body.teacher-professional-development .entry-content ul {
  margin: 0;
  padding: 0; }
  body.teacher-professional-development .entry-content ul li {
    list-style: none;
    border-bottom: 1px solid #819ab6;
    margin: 0 0 20px 0;
    padding: 25px 0; }
    body.teacher-professional-development .entry-content ul li:last-child {
      border: none;
      padding-bottom: 0; }

/* 2020-09-08 temp fix
-------------------------------------------------------------------- */
/* 2020-03-24 Moved Nick styling here and stopped using separate stylesheet
-------------------------------------------------------------------- */
/* AOW Child Pages - TEMP styles */
body.page-template-aow-projectlist-page #section_header,
body.page-template-aow-resourcelist-page #section_header {
  display: block !important; }

/*
*
* Service/PLTA (service-plta-page.php) && Research & Evaluation Templates
*
*/
body.page-template-service-plta-page #inner #section_header {
  height: auto;
  background: none !important;
  overflow: hidden; }

body.page-template-service-plta-page #inner #section_header .entry-title {
  font-size: 13px; }

body.page-template-service-plta-page #featured-aow.featured .intro {
  float: none;
  width: auto; }

body.page-template-service-plta-page .l_col,
body.research-evaluation .l_col {
  float: left;
  width: 70%; }

body.page-template-service-plta-page .r_col,
body.research-evaluation .r_col {
  float: left;
  width: 25%;
  padding-right: 10px; }

body.page-template-service-plta-page #section_header .btn-contact,
body.single-service .hero_section_header .btn-contact,
body.research-evaluation #section_header .btn-contact {
  display: inline-block;
  font-size: 16px;
  font-weight: bold;
  color: #1669C9;
  background-color: #fff;
  padding: 10px;
  border-radius: 3px; }

/* Full-width Featured Section - To Integrate w/ Existing Styles */
body.page-template-service-plta-page .featured_fw,
body.single-service .featured_fw {
  background-color: #E3ECF9; }
  body.page-template-service-plta-page .featured_fw .container,
  body.single-service .featured_fw .container {
    max-width: 1040px;
    margin: 0 auto;
    padding: 40px 20px; }

/* Research & Evaluation Section Styles */
body.research-evaluation #inner #section_header {
  padding: 235px 0 40px;
  /* like PLTA hero section header */ }
  body.research-evaluation #inner #section_header h1.secondary {
    padding-top: 0 !important; }

body.research-evaluation #inner .entry-content h2 {
  font-family: "Roboto Slab";
  font-weight: 300;
  color: #51AF46; }

/* Single Project Template Styles - To Integrate w/ Main Redesign Styles */
.single-project .related-services-list {
  border-top: 1px solid #ABC1DA;
  padding-top: 2em;
  margin-top: 2em; }

.single-project .related-website {
  border-top: 1px solid #ABC1DA;
  padding-top: 2em; }
  .single-project .related-website .info {
    float: left;
    width: 60%; }

/*
*
* WestEd Events
*
*/
body.wested-event #inner #section_header {
  overflow: visible; }

body.wested-event .hero--events .container {
  max-width: 1040px;
  margin: 0 auto;
  padding: 25px 20px 25px 20px; }

/*
*
* WestEd in New York - Orphan Page Styles
*
*/
body.new-york #inner #section_header {
  padding: 235px 0 40px;
  /* like PLTA hero section header */
  overflow: visible;
  /* override global.css value */ }

body.new-york #inner .hero__body {
  margin: 15px 0 0 0; }

/*
*
* Publications & Resources - Temp Styles
*
*/
#hero.resources .hero-content {
  margin-bottom: 40px; }

#hero.resources .hero-column.l-col {
  float: left;
  width: 70%; }

#hero.resources .hero-column.r-col {
  float: right;
  width: 25%; }
  #hero.resources .hero-column.r-col h4 {
    color: #fff; }

#hero.resources .hero-column .links a {
  color: #fff;
  display: block;
  width: 100%;
  font-weight: bold;
  background-color: #819AB6;
  padding: 5px 10px;
  margin-bottom: 5px;
  border-radius: 3px; }

#hero.resources #subsubmenu ul li {
  padding: 0 20px; }

#hero.resources #spotlight_slider .slide .photo {
  width: 25%;
  text-align: left;
  height: auto; }

#hero.resources #spotlight_slider .slide .info {
  width: 70%;
  float: right;
  min-height: inherit; }

body.woocommerce .page-title,
body.woocommerce-page .page-title {
  display: block; }

/* Single Resource Detail - Accordion */
body.single-product .page_content_box.collapsed .page_content_box_body_text {
  /* test content */
  display: none; }

body.single-product .page_content_box .page_content_box_body.text.expanded {
  display: block; }

/* R&D Alert - Temp Styles */
.single-rd_alert_online #content {
  width: 100%; }
  .single-rd_alert_online #content .post_image {
    float: left;
    margin: 0 50px 20px 0;
    max-width: 680px; }
  .single-rd_alert_online #content .entry-content .toc {
    float: right;
    max-width: 300px; }
    .single-rd_alert_online #content .entry-content .toc h2 {
      float: none !important;
      width: auto !important; }

/* Homepage - Temp Styles */
body.home #main_content_wrap {
  max-width: inherit; }

body.home #content {
  background: none; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidjIwMTctcmVkZXNpZ24uY3NzIiwic291cmNlcyI6WyJ2MjAxNy1yZWRlc2lnbi5zY3NzIiwiY29tcG9uZW50cy9fdmFyaWFibGVzLnNjc3MiLCJjb21wb25lbnRzL190eXBlLnNjc3MiLCJjb21wb25lbnRzL19taXhpbnMuc2NzcyIsImNvbXBvbmVudHMvaGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL2Zvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9zaWRlYmFyLnNjc3MiLCJjb21wb25lbnRzL2hlcm8uc2NzcyIsImNvbXBvbmVudHMvcHJvZmlsZXMuc2NzcyIsImNvbXBvbmVudHMvc2xpZGVyLnNjc3MiLCJzZWN0aW9ucy9hYm91dC5zY3NzIiwic2VjdGlvbnMvYXJlYXMtb2Ytd29yay5zY3NzIiwic2VjdGlvbnMvcGx0YS5zY3NzIiwic2VjdGlvbnMvd29vY29tbWVyY2Uuc2NzcyIsImNvbXBvbmVudHMvcHJpbnQuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4yMDE3IFJlZGVzaWduXG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0ICdjb21wb25lbnRzL192YXJpYWJsZXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9fdHlwZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL19taXhpbnMnO1xuXG5AaW1wb3J0ICdjb21wb25lbnRzL2hlYWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvb3Rlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NpZGViYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9oZXJvJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZmlsZXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGlkZXInO1xuXG5AaW1wb3J0ICdzZWN0aW9ucy9hYm91dCc7XG5AaW1wb3J0ICdzZWN0aW9ucy9hcmVhcy1vZi13b3JrJztcbkBpbXBvcnQgJ3NlY3Rpb25zL3BsdGEnO1xuQGltcG9ydCAnc2VjdGlvbnMvd29vY29tbWVyY2UnO1xuXG5cbi8qIEdsb2JhbCAvIExlZ2FjeVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcblxuICAjbW9iaWxlU2VhcmNoVG9wIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmZpbml0ZVNjcm9sbCB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAubmV4dF9wYWdlIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgICBhIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDdweCAxMnB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC5mdWxsLXdpZHRoLWNvbnRlbnQge1xuXG4gICAgI21haW5fY29udGVudF93cmFwIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgfVxuXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG5cbiAgICAjY29udGVudCB7XG4gICAgICAvLyBtaW4taGVpZ2h0OiA1MDBweDtcblxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIC8vIDIwMjAtMTIgZmluYWxseSBjb21tZW50aW5nIHRoaXMgb2xkIHRoaW5nIG91dFxuICAgICAgICAvLyB3aWR0aDogOTMlO1xuXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG5cbiAgICAgICY6aG92ZXIsICY6bGluaywgJjphY3RpdmUsICY6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC5jb250ZW50LWZ1bGwtd2lkdGgge1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgd2lkdGg6IDEwNDBweDtcbiAgICAgIHBhZGRpbmc6IDQwcHggMjBweDtcblxuICAgICAgcCB7XG4gICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZXktMiAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAuc2xpZGVyIHtcblxuICAgIC5jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMjVweCAyMHB4IDYwcHggMjBweDtcblxuICAgICAgaDEge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAjaW5uZXIge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci10b3A6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICNjb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgdWwge1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG4uY29udGVudC1mdWxsLXdpZHRoIHtcbiAgYmFja2dyb3VuZDogJHdlc3RlZC1iYWJ5LWJsdWU7XG4gIHBhZGRpbmc6IDQwcHggMDtcblxuICAuY29udGFpbmVyIHtcblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxuICAuZmVhdHVyZWQtY29udGVudCB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG5cbiAgICAmX19oZWFkbGluZSB7XG4gICAgICB3aWR0aDogMjUlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIG1heC13aWR0aDogMjEwcHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgIHdpZHRoOiA3NSU7XG4gICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuLyogY29udGFpbmVyIG1heCB3aWR0aCAqL1xuI3dyYXAge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG4jaW5uZXIge1xuXG4gIC53cmFwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxufVxuI25hdiAud3JhcCxcbiNzZWN0aW9uX2hlYWRlciAud3JhcCxcbiNoZWFkZXIgLmxvZ28tc2xvZ2FuLFxuI2hlYWRlciAuZ2VuZXNpcy1uYXYtbWVudSxcbiNmb290ZXItd2lkZ2V0cyAud3JhcCxcbiNmb290ZXIgLndyYXAge1xuICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG59XG5cbiNmb290ZXIgLmdvdG90b3Age1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBmdWxsIHdpZHRoIHRlc3QgKi9cbi5mdWxsLXdpZHRoIHtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcbn1cbiNpbm5lciB7XG4gIGJvcmRlci10b3A6IDA7XG59XG4uZW50cnktY29udGVudCB7XG4gIG1hcmdpbjogNDBweCAwIDMwcHggMDtcbn1cblxuXG4vKiBHbG9iYWwgLyBUd2Vha3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIHNraXAgdG8gY29udGVudCAqL1xuI3NraXB0b2NvbnRlbnQgYSB7XG4gIHBhZGRpbmc6IDVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC00MHB4O1xuICBsZWZ0OiAwcHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogIzNGNjQ4RjtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB0b3AgMXMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IHRvcCAxcyBlYXNlLW91dDtcbiAgei1pbmRleDogOTk5OTtcblxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMHB4O1xuICAgIHRvcDogMHB4O1xuICAgIG91dGxpbmUtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdG9wIC4xcyBlYXNlLWluO1xuICAgIHRyYW5zaXRpb246IHRvcCAuMXMgZWFzZS1pbjtcbiAgfVxuXG59XG5cbi5lbnRyeS1jb250ZW50IGxpIHtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnk7XG59XG5cbmFiYnJbdGl0bGVdIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKiBCcm93c2Vyc3luYyBzdHlsaW5nICovXG4jX19ic19ub3RpZnlfXyB7XG4gIHRvcDogMCAhaW1wb3J0YW50O1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IC4yNTtcbn1cblxuLyogc3RhbmRhcmQgaHIgKi9cbi5lbnRyeS1jb250ZW50IGhyIHtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLXByaW1hcnk7XG4gIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweCAhaW1wb3J0YW50O1xufVxuXG4vKiBjbGVhcnMgd3JhcCAqL1xuI2NvbnRlbnQtc2lkZWJhci13cmFwIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogYWNjb3JkaW9uICovXG4uYWNjb3JkaW9uIHtcbiAgbWFyZ2luOiA0MHB4IDAgMTBweCAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNBQkMxREE7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDE1cHggMCAxM3B4IDA7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuXG4gICAgaDMuc2hvd2hpZGUge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXBsdXMtYmx1ZS1zbS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgIG1hcmdpbjogMCAwIDVweCAwO1xuICAgICAgcGFkZGluZzogMCAwIDAgMjVweDtcblxuICAgICAgJi5hcnJvd0Nsb3NlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tbWludXMtYmx1ZS1zbS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5zaG93aGlkZS1jaGlsZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgbWFyZ2luOiAwIDAgNXB4IDUwcHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5pbm5lci1jb250ZW50IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDVweCAwIDEwcHggMjVweDtcbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qIFJlc3BvbnNpdmUgdmlkZW8gZW1iZWRzIGFsYSBodHRwOi8vZW1iZWRyZXNwb25zaXZlbHkuY29tICovXG4uZW1iZWQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogMTAwJTtcblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxufVxuXG4vKiBzaG93aGlkZSBkZWZhdWx0IGNsb3NlZCAqL1xuLnNob3doaWRlLWNoaWxkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogYnVzdCBvdXQgdGVjaG5pcXVlIChmdWxsIHdpZHRoIGVsZW1lbnRzKSAqL1xuLmVudHJ5LWNvbnRlbnQsXG5ib2R5LnNpbmdsZS1wcm9kdWN0ICNjb250ZW50LFxuYm9keS5wYWdlLXRlbXBsYXRlLXdlYmluYXJzLWhvbWUsXG5ib2R5LmZvdXItZG9tYWlucyxcbmJvZHkuY2hhcnRlcnMtY2hvaWNlLFxuYm9keS50cmF1bWEsXG5ib2R5LmNvdmlkLTE5LXJlc291cmNlcyxcbmJvZHkuY292aWQtMTktc2VydmljZXMge1xuICBvdmVyZmxvdzogaW5pdGlhbDsgLyogaG9wZWZ1bGx5IHRoaXMgY2F1c2VzIG5vIGlzc3VlcyBzaXRlIHdpZGUgKi9cblxuICAuYnVzdC1vdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYyg1MHZ3IC0gNTAlKSk7XG4gICAgbWFyZ2luOiBhdXRvIGNhbGMoNTAlIC0gNTB2dyk7XG4gICAgcGFkZGluZzogMCAwIDAgMDtcblxuICAgIC5idXN0LW91dC1jb250ZW50IHtcbiAgICAgIHdpZHRoOiAxMDAwcHg7IC8qIG1hdGNoIC5lbnRyeS1jb250ZW50IHdpZHRoICovXG4gICAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMzBweCAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDYwcHgpIHtcblxuICAgIC5idXN0LW91dCB7XG5cbiAgICAgIC5idXN0LW91dC1jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDkyJTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuLyogY2xvc2UgZ2FwIGJlZm9yZSBmb290ZXIgd2hlbiB1c2luZyBidXN0IG91dCBhcyBsYXN0IGl0ZW0gb24gcGFnZSAqL1xuYm9keS5zdWJzY3JpYmUsXG5ib2R5LnNpbmdsZS1wcm9kdWN0LFxuYm9keS5wYWdlLXRlbXBsYXRlLXdlYmluYXJzLWhvbWUge1xuXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxufVxuXG4vKiBtYXRjaCBzaGFyZWQgY29udGFpbmVyIGRpbWVuc2lvbnMgKi9cbiNyZWNlbnQtbmV3cyxcbiNyZWxhdGVkLXJlc291cmNlcyB7XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEwNDBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMjBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHggIWltcG9ydGFudDtcbiAgfVxuXG59XG5cbi8qIEFkZCBUaGlzICovXG4jYWRkVGhpc0J1dHRvbnMge1xuXG4gIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbn1cblxuLyogaGlkZSBhbGEgQm9vdHN0cmFwICovXG4uc3Itb25seSwgLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyOiAwO1xufVxuLnNyLW9ubHktZm9jdXNhYmxlOmFjdGl2ZSxcbi5zci1vbmx5LWZvY3VzYWJsZTpmb2N1cyxcbi5zY3JlZW4tcmVhZGVyLXRleHQ6YWN0aXZlLFxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG59XG5cbi8qIGJ1dHRvbiB0ZW1wbGF0ZSAqL1xuLmVudHJ5LWNvbnRlbnQgYS5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgbWFyZ2luOiA4cHggMCAwIDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAmOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAuNzU7XG4gIH1cblxufVxuXG4vKiBoaWRlIGRlZmF1bHQgZ2VuZXJhdGVkIHRpdGxlICovXG5ib2R5LnBhZ2Utd2VzdGVkLW9mZmljZXMsXG5ib2R5LnBhZ2UtYm9hcmQtb2YtZGlyZWN0b3JzLFxuYm9keS5wYWdlLWxlYWRlcnNoaXAsXG5ib2R5LnBhZ2Utc3RhZmYtZGlyZWN0b3J5LFxuYm9keS5wYWdlLWNsaWVudHMsXG5ib2R5LnBhZ2Utd29ya2luZy13aXRoLXdlc3RlZCxcbmJvZHkucGFnZS1wcm9ncmFtcyB7XG5cbiAgI2NvbnRlbnQtc2lkZWJhci13cmFwIHtcblxuICAgIGgxLnByaW1hcnkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxufVxuXG4udmlld19tb3JlX2J0biB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgcGFkZGluZzogN3B4IDEycHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNUE3OTlDO1xuICB9XG5cbn1cblxuLyogYW5jaG9yIG9mZnNldCwgdXNhZ2U6XG5cbiAgMSkgUGxlYXNlIHNlZSBvdXIgPGEgaHJlZj1cIiNvdmVydmlld1wiPm92ZXJ2aWV3PC9hPiBzZWN0aW9uIGJlbG93LlxuXG4gIDIpIDxwIGlkPVwib3ZlcnZpZXdcIiBjbGFzcz1cImFuY2hvclwiPmFuY2hvcjwvcD5cbiAgICAgPGgyPk92ZXJ2aWV3PC9oMj5cbiAgICAgPHA+V2Ugd291bGQgbGlrZSB0byB3ZWxjb21lIHlvdSB0byBvdXIgb3ZlcnZpZXcuLi48L3A+XG5cbiAqL1xucC5hbmNob3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0yMDBweDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBjb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuXG4vKiBHbG9iYWwgLyBSZWNlbnQgUG9zdHMgKHNoYXJlZCwgbXVsdGkgcG9zdCB0eXBlKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNyZWNlbnQtcG9zdHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2VzdGVkLWJhYnktYmx1ZS1sdDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIC5jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiAxMDQwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHggIWltcG9ydGFudDtcbiAgfVxuXG4gIGgyIHtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgdWwge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIGdyaWQtZ2FwOiAyMHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgbGkge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgLyogY3NzIGdyaWQgZmFsbGJhY2sgKi9cbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEM0RCRTY7XG4gICAgICBmbG9hdDogbGVmdDsgLyogY3NzIGdyaWQgZmFsbGJhY2sgKi9cbiAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAyMnB4IDA7XG5cbiAgICAgICY6bnRoLWxhc3QtY2hpbGQoLW4rMikge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC5pbWcge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgbWluLXdpZHRoOiAxNDBweCAhaW1wb3J0YW50O1xuICAgICAgICAgIG1heC13aWR0aDogMTQwcHggIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgMjBweCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNTglO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA1cHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBjb2xvcjogIzhFOUZCNTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA2cHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc3Bhbi5leGNlcnB0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjNTQ2Qjg1O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5MHB4KSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICAgbGkge1xuXG4gICAgICAgIGEge1xuXG4gICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWxhc3QtY2hpbGQoLW4rMikge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDNEQkU2O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzAwcHgpIHtcblxuICAgICAgbGkge1xuXG4gICAgICAgIGEge1xuXG4gICAgICAgICAgLmltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLnZpZXdfbW9yZV9idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiA0MHB4IDAgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgZm9udC1zaXplOiAxMXB4ICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogMTVweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMXB4IDEycHggIWltcG9ydGFudDtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuXG4gIH1cblxufVxuXG4vKiBBT1cgKi9cbmJvZHkuc2luZ2xlLWFyZWFfb2Zfd29yayAjcmVjZW50LXBvc3RzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMCAyMHB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudmlld19tb3JlX2J0biBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuXG59XG5cbi8qIFNlcnZpY2UgKi9cbmJvZHkuc2luZ2xlLXNlcnZpY2UgI3JlY2VudC1wb3N0cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG59XG5cbi8qIFdlc3RFZCBpbiBOZXcgWW9yaywgR2VvcmdpYSwgRmxvcmlkYSAqL1xuYm9keS5wYWdlLXRlbXBsYXRlLW5ldy15b3JrLFxuYm9keS5wYWdlLXRlbXBsYXRlLWdlb3JnaWEsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtZmxvcmlkYSB7XG5cbiAgI3JlY2VudC1wb3N0cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBsaW5lLWhlaWdodDogMzBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIHVsLm5ld3NsaXN0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBsaSB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAxNHB4KSB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcblxuICAgICAgICAgIC5pbWcge1xuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDE0cHgpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDE0cHgpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLyogbGFzdCB0d28gKi9cbiAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgtbisyKSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEM0RCRTY7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICB1bC5uZXdzbGlzdC5tb3JlX2xpbmtzX2xpc3QuaGlkZGVuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgdWwubW9yZV9saW5rc19saXN0IHtcblxuICAgICAgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0QzREJFNjtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAudmlld19tb3JlX2J0biBhIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBIb21lXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wYWdlLXRlbXBsYXRlLWhvbWUge1xuXG4gIC8qIGNsZWFycyBwYWRkaW5nIGZvciBmdWxsLXdpZHRoIHNlY3Rpb25zIGJlbG93ICovXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgcGFkZGluZzogMDtcblxuICAgICNjb250ZW50IHtcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxuICAvKiBzaGFyZWQgKi9cbiAgI3dlc3RlZC1pbnNpZ2h0cyxcbiAgI3N1YnNjcmliZS1zb2NpYWwtYmFyLFxuICAjd2VzdGVkLW5ld3MtZXZlbnRzLFxuICAjd2VzdGVkLWluLWFjdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIGJ1dHRvbiAqL1xuICAgICAgcC52aWV3LW1vcmUge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDAgMCAwO1xuXG4gICAgICAgIC5idG4ge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogV2VzdEVkIEluc2lnaHRzICovXG4gICN3ZXN0ZWQtaW5zaWdodHMge1xuICAgIG1heC13aWR0aDogMTA0MHB4O1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgdWwud2VzdGVkLWluc2lnaHRzLWVudHJpZXMge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICBncmlkLWdhcDogMzBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIEBzdXBwb3J0cyBub3QgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgICAgIH1cblxuICAgICAgbGkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIEBzdXBwb3J0cyBub3QgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMzIlO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcblxuICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmltZyB7XG4gICAgICAgICAgd2lkdGg6IDMxMHB4O1xuICAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmZvIHtcblxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIElFIDExICovXG4gICAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6bm9uZSkge1xuXG4gICAgICAgICo6Oi1tcy1iYWNrZHJvcCwgbGkge1xuICAgICAgICAgIHdpZHRoOiAzMyU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogSUUgMTEgKi9cbiAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6bm9uZSkge1xuXG4gICAgICAqOjotbXMtYmFja2Ryb3AsIHVsIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBwLnZpZXctbW9yZSB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDMwcHggMCAyMHB4IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvKiBJRSAxMSAqL1xuICAgIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDpub25lKSB7XG5cbiAgICAgICo6Oi1tcy1iYWNrZHJvcCwgcC52aWV3LW1vcmUge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNDBweCkge1xuXG4gICAgICB1bC53ZXN0ZWQtaW5zaWdodHMtZW50cmllcyB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBQcm9tbyAqL1xuICAjc3Vic2NyaWJlLXNvY2lhbC1iYXIge1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdlc3RlZC1uYXZ5LWJsdWU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogMTA0MHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuXG4gICAgLml0ZW0ge1xuICAgICAgZmxleDogMSAxIDMzLjMlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgIzY5ODVhYTtcbiAgICAgIG1hcmdpbjogMTNweCAwIDAgMDtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcblxuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcblxuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkICR3ZXN0ZWQtbmF2eS1ibHVlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgfVxuXG4gICAgICBoMiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDE0cHggMCAxNXB4IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIG1hcmdpbjogMCAwIDIycHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAmLmJ0bi1jb250YWluZXIge1xuICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIEUtQnVsbGV0aW4gKi9cbiAgICAgICYuZWJ1bGxldGluIHtcblxuICAgICAgICBoMiBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS1ob21lLXByb21vLWViLnN2Z1wiKSBuby1yZXBlYXQgdG9wIGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIFImRCBBbGVydCBPbmxpbmUgKi9cbiAgICAgICYucmRhbGVydCB7XG5cbiAgICAgICAgaDIgYSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzLzIwMTktaG9tZS1wcm9tby1yZGFsZXJ0LnN2Z1wiKSBuby1yZXBlYXQgdG9wIGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIFNvY2lhbCAqL1xuICAgICAgJi5zb2NpYWwge1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS1ob21lLXByb21vLXNvY2lhbC5zdmdcIikgbm8tcmVwZWF0IHRvcCBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiA4cHggMCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDIwcHggMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiAzN3B4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDM3cHg7XG4gICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuXG4gICAgICAgICAgICAgICYudHdpdHRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLXR3aXR0ZXItMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmxpbmtlZGluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtbGlua2VkaW4tMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmZhY2Vib29rIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtZmFjZWJvb2stMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBOZXdzLCBFdmVudHMgKi9cbiAgI3dlc3RlZC1uZXdzLWV2ZW50cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdlc3RlZC1iYWJ5LWJsdWU7XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogMTA0MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgfVxuXG4gICAgLndlc3RlZC1uZXdzLFxuICAgIC53ZXN0ZWQtZXZlbnRzIHtcbiAgICAgIHdpZHRoOiA0OSU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICAgICAgcGFkZGluZzogMCAzcHggMCAwO1xuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBoZWlnaHQ6IDE0MHB4O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmltZyB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgd2lkdGg6IDMzMHB4O1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDZweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjU1cHg7XG4gICAgICAgICAgICAgIGNvbG9yOiAjOEU5RkI1O1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCA0cHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLy8gcC52aWV3LW1vcmUge1xuICAgICAgLy8gICBtYXJnaW46IDAgMCAwIC0xMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAvLyAgIHBhZGRpbmc6IDA7XG4gICAgICAvLyB9XG5cbiAgICB9XG5cbiAgICAud2VzdGVkLW5ld3Mge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2hvbWUtbmV3cy1iZy5wbmdcIikgbm8tcmVwZWF0IDAgM3B4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLndlc3RlZC1ldmVudHMge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgICBoMiB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9ob21lLWV2ZW50cy1iZy5wbmdcIikgbm8tcmVwZWF0IDAgM3B4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBNYWtpbmcgYSBEaWZmZXJlbmNlICovXG4gICN3ZXN0ZWQtaW4tYWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2VzdGVkLWJhYnktYmx1ZS1sdDtcbiAgICBib3JkZXItdG9wOiA0cHggc29saWQgI2ZmZjtcblxuICAgIC5jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiAxMDQwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHBhZGRpbmc6IDQwcHggMjBweDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICM1QTc5OUM7XG4gICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwIDNweCAwIDA7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5tYWtpbmctYS1kaWZmZXJlbmNlIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMjBweCAwO1xuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDk1cHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICBjbGlwLXBhdGg6IGNpcmNsZSg1MHB4IGF0IGNlbnRlcik7XG4gICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogMzcwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDZweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBjb2xvcjogIzU0NkI4NTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBwLnZpZXctbW9yZSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmZlYXQtaW5pdCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB3aWR0aDogNDklO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAxMHB4IDMwcHg7XG5cbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDIuNXB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0FCQzFEQTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNnB4O1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNnB4O1xuICAgICAgICBtYXJnaW46IC0zMHB4IC0zMHB4IDAgLTMwcHg7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwIDVweCAxMHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgICNmZWF0X2luaXRfc2xpZGVyIHtcblxuICAgICAgICAuYngtdmlld3BvcnQge1xuICAgICAgICAgIGhlaWdodDogMjQ1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMzBweCAwIDAgMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGlkZSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAgIC5pbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAjODE5QUI2O1xuICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0FCQzFEQTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMCAwO1xuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5ieC1jb250cm9scyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgLyogaGlkaW5nIGluIHBsYWNlIG9mIHZpZXcgbW9yZSBidG4gKi9cbiAgICAgICAgICB6LWluZGV4OiAzMDA7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMjVweDtcblxuICAgICAgICAgIC5ieC1wYWdlciB7XG4gICAgICAgICAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAuYngtcGFnZXItaXRlbSBhIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvc2xpZGVyX2NvbnRyb2xzX3Nwcml0ZV9ibHVlLnBuZ1wiKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBwLnZpZXctbW9yZSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDQwcHgpIHtcblxuICAgICN3ZXN0ZWQtaW5zaWdodHMge1xuXG4gICAgICB1bC53ZXN0ZWQtaW5zaWdodHMtZW50cmllcyB7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAjc3Vic2NyaWJlLXNvY2lhbC1iYXIge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgICB9XG5cbiAgICAgIC5pdGVtIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgIzY5ODVhYTtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgNDBweCAwO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5lYnVsbGV0aW4ge1xuXG4gICAgICAgIH1cblxuICAgICAgICAmLnJkYWxlcnQge1xuXG4gICAgICAgIH1cblxuICAgICAgICAmLnNvY2lhbCB7XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAjd2VzdGVkLW5ld3MtZXZlbnRzIHtcblxuICAgICAgLndlc3RlZC1uZXdzLFxuICAgICAgLndlc3RlZC1ldmVudHMge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDEwcHggMDtcblxuICAgICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHAudmlldy1tb3JlIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAtMjBweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLndlc3RlZC1ldmVudHMge1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgI3dlc3RlZC1pbi1hY3Rpb24ge1xuXG4gICAgICAubWFraW5nLWEtZGlmZmVyZW5jZSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIHVsIHtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHAudmlldy1tb3JlIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgNTBweCAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmZlYXQtaW5pdCB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NTBweCkge1xuXG4gICAgI3dlc3RlZC1uZXdzLWV2ZW50cyB7XG5cbiAgICAgIC53ZXN0ZWQtbmV3cyxcbiAgICAgIC53ZXN0ZWQtZXZlbnRzIHtcblxuICAgICAgICB1bCB7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblxuICAgICAgICAgICAgLmltZyB7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMCAwIDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHAudmlldy1tb3JlIHtcbiAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC53ZXN0ZWQtZXZlbnRzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgICN3ZXN0ZWQtaW4tYWN0aW9uIHtcblxuICAgICAgLm1ha2luZy1hLWRpZmZlcmVuY2Uge1xuXG4gICAgICAgIHVsIHtcblxuICAgICAgICAgIGxpIHtcblxuICAgICAgICAgICAgLmltZyB7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMCAwIDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5mZWF0LWluaXQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcwcHgpIHtcblxuICAgICN3ZXN0ZWQtaW5zaWdodHMgaDIsXG4gICAgI3dlc3RlZC1pbi1hY3Rpb24gaDIge1xuXG4gICAgICBzcGFuLCBlbSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQWJvdXQgVXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtYWJvdXQtdXMge1xuXG4gICNzaWRlYmFyIHtcblxuICAgIGg0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAuYXQtYS1nbGFuY2Utd2lkZ2V0IHtcblxuICAgICAgdGQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLmZlYXR1cmVkLWNvbnRlbnQge1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICB9XG5cbiAgfVxuXG4gICNjb250ZW50LXNpZGViYXItd3JhcCAjbWFpbl9jb250ZW50X3dyYXAgI3NpZGViYXIge1xuXG4gICAgLyogMjAxOCBZZWFyIGluIFJldmlldyAqL1xuICAgIC55aXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQUJDMURBO1xuICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICBwYWRkaW5nOiAyMHB4IDA7XG5cbiAgICAgIGE6bGluayB7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAudGh1bWIge1xuICAgICAgICBtaW4td2lkdGg6IDE4MHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjBweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XG5cbiAgICAgICAgYTpsaW5rIHtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBjb2xvcjogIzgxOUFCNiAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG5cbiAgICAgIC55aXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICBwIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQWJvdXQgVXMgLyBCb2FyZCBvZiBEaXJlY3RvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtYm9hcmQtcGFnZSB7XG5cbiAgI2NvbF9mdWxsX3dpZHRoIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjUwcHgsMWZyKSk7XG4gICAgZ3JpZC1nYXA6IDI1cHg7XG5cbiAgICAuYm9hcmRfcGVyc29uIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAucGhvdG8ge1xuICAgICAgICBmbGV4OiAxIDEgMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTIwcHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC5tZXRhIHtcbiAgICAgICAgZmxleDogMSAxIDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICB9XG5cbiAgICAgICAgLmxvY2FsZSB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQWJvdXQgVXMgLyBMZWFkZXJzaGlwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wYWdlLXRlbXBsYXRlLWxlYWRlcnNoaXAge1xuXG4gIGgzIHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgY29sb3I6ICM1MUFGNDY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCI7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBwYWRkaW5nOiAzMHB4IDA7XG4gIH1cblxuICBoNCB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgcGFkZGluZzogMzBweCAwIDE1cHggMDtcbiAgfVxuXG4gICNjb2xfZnVsbF93aWR0aCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDEyNXB4LDFmcikpO1xuICAgIGdyaWQtZ2FwOiAzMHB4O1xuXG4gICAgLmJvYXJkX3BlcnNvbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAucGhvdG8ge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQWJvdXQgVXMgLyBXb3JraW5nIHdpdGggV2VzdEVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wYWdlLXdvcmtpbmctd2l0aC13ZXN0ZWQge1xuXG4gICNjb250ZW50IHtcblxuICAgIHAge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMzcHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICB9XG5cbiAgI3NpZGViYXIge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cblxufVxuXG5cbi8qIEFib3V0IFVzIC8gV2VzdEVkIE9mZmljZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2Utd2VzdGVkLW9mZmljZXMge1xuXG4gIC5mZWF0dXJlZC1jb250ZW50IHtcblxuICAgIC5jb250YWN0IHtcbiAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuY29udGFjdF9faWNvbiB7XG4gICAgICBsaW5lLWhlaWdodDogNDBweCAhaW1wb3J0YW50O1xuXG4gICAgICAmLmZhLXBob25lIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM0cHggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgJi5mYS1wcmludCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuY29udGFjdF9fYWRkcmVzcyB7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuY29udGFjdF9fcGhvbmUge1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmNvbnRhY3RfX2ltYWdlIHtcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gICNvZmZpY2VzIHtcblxuICAgIC53cmFwIGEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmFkZHJlc3Mge1xuXG4gICAgICBzcGFuLnRleHQge1xuICAgICAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcwMHB4KSB7XG5cbiAgICAuZmVhdHVyZWQtY29udGVudCAuY29udGFjdF9faW1hZ2Uge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuLyogbGVnYWN5IGNvZGUgYmVsb3cgKi9cbi5wYWdlLXdlc3RlZC1vZmZpY2VzIHtcblxuICAjc2VjdGlvbl9oZWFkZXIsIC5lbnRyeS1jaGlsZC10aXRsZSwgI2NvbnRlbnQsICNzaWRlYmFyLCAjbWFpbl9jb250ZW50X3dyYXAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH0gLy8gcGFkZGluZyBoZXJlIGlzIHNldCB0byBtaW1pYyB0aGUgYmFzZSBsYXlvdXQgYmVpbmcgdGhhdCB0aGlzIHBhZ2UgaXMgc3RydWN0dXJlZCBhIGJpdCBkaWZmZXJlbnRseVxuICAuY29udGVudC1mdWxsLXdpZHRoIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBwYWRkaW5nOiA0MHB4IDBweDtcbiAgICAmPi5mZWF0dXJlZC1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAwcHggMCAyNXB4IDA7XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNTBweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMHB4IDIwcHggMjBweCAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuZmVhdHVyZWQtY29udGVudF9faGVhZGxpbmUge1xuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZmVhdHVyZWQtY29udGVudCB7XG4gICAgICB3aWR0aDogMTAwMHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgcGFkZGluZzogNDBweCAwcHg7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDUwcHgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMjBweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSAvLyA6bnRoLWNoaWxkKDEpXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkd2VzdGVkLWJhYnktYmx1ZTtcbiAgICAgICAgcGFkZGluZzogMzBweCAwIDAgMDtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDUwcHgpIHtcbiAgICAgICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH0gLy8gOm50aC1jaGlsZCgyKVxuICAgICAgJl9fdGV4dCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTc1cHgpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgI29mZmljZXMge1xuICAgICAgICAvLyBib3JkZXI6IDFweCBzb2xpZCByZWQ7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgd2Via2l0LWNvbHVtbi1jb3VudDogMjsgLy8gQ2hyb21lLCBTYWZhcmksIE9wZXJhXG4gICAgICAgIC1tb3otY29sdW1uLWNvdW50OiAyOyAvLyBGaXJlZm94XG4gICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NTBweCkge1xuICAgICAgICAgIHdlYmtpdC1jb2x1bW4tY291bnQ6IDE7IC8vIENocm9tZSwgU2FmYXJpLCBPcGVyYVxuICAgICAgICAgIC1tb3otY29sdW1uLWNvdW50OiAxOyAvLyBGaXJlZm94XG4gICAgICAgICAgY29sdW1uLWNvdW50OiAxO1xuICAgICAgICB9XG4gICAgICAgIC5ncm91cCB7XG4gICAgICAgICAgLy8gYm9yZGVyOiAxcHggc29saWQgZ3JlZW47XG5cbiAgICAgICAgICAtd2Via2l0LWNvbHVtbi1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICAgICAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuXG4gICAgICAgICAgbWluLWhlaWdodDogMTIwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgIC8vIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgICAgICAgLy8gJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAvLyAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgLy8gICBtaW4taGVpZ2h0OiA4N3B4O1xuICAgICAgICAgIC8vIH1cbiAgICAgICAgICAuY29udGFjdF9faWNvbiB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzhweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLndyYXAge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogODYlO1xuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSwgLmFkZHJlc3Mge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gLy8gLndyYXBcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWVsZWN0cmljLWJsdWU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtbmF2eS1ibHVlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICB9IC8vc3BhblxuICAgICAgICB9IC8vIC5ncm91cFxuICAgICAgICAvLyAjbG9jYXRpb25fb2FrbGFuZC1jYSB7XG4gICAgICAgIC8vICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgLy8gICBtaW4taGVpZ2h0OiA4N3B4O1xuICAgICAgICAvLyAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgICAgICAgLy8gICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICAgICAgICAvLyAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgLy8gICB9XG4gICAgICAgIC8vIH0gLy8jbG9jYXRpb25fb2FrbGFuZC1jYVxuICAgICAgfSAvLyAjb2ZmaWNlc1xuICAgICAgLmNvbnRhY3Qge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTE1cHg7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAud3JhcCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWVsZWN0cmljLWJsdWU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICAgICAgICB3aWR0aDogODAlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgID5kaXYge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgJi5jb250YWN0X19mYXgge1xuICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IC8vIC53cmFwXG4gICAgICAgIHAge1xuICAgICAgICAgIGZvbnQtY29sb3I6ICR3ZXN0ZWQtbmF2eS1ibHVlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIG1heC13aWR0aDogMzEwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAmOmVtcHR5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICZfX2ljb24ge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogNDNweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNjhweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZWxlY3RyaWMtYmx1ZTtcbiAgICAgICAgfVxuICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgJl9fZmF4LCAmX19waG9uZSB7XG4gICAgICAgICAgLmNvbnRhY3RfX2ljb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSAvLyAuY29udGFjdFxuICAgIH0gLy8gLmZlYXR1cmVkLWNvbnRlbnRcbiAgfSAvLyAuY29udGVudC1mdWxsLXdpZHRoXG59IC8vIC5wYWdlLXdlc3RlZC1vZmZpY2VzXG5cblxuXG5cblxuXG5cblxuLyogQWJvdXQgVXMgLyBQZXJzb25uZWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbmJvZHkucGFnZS1zdGFmZi1kaXJlY3RvcnkgaDEuZW50cnktY2hpbGQtdGl0bGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBhZGRzIHVuZGVybGluZSBmb3IgY29udGVudCB3aXRoIG5vIHAgKi9cbmJvZHkuc2luZ2xlLXBlcnNvbm5lbCAuZW50cnktY29udGVudCBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi8qIGRpcmVjdG9yeSAqL1xuYm9keS5wYWdlLXN0YWZmLWRpcmVjdG9yeSAjY29udGVudCBoMiB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnkgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAyOHB4ICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiAxMDAgIWltcG9ydGFudDtcbiAgY29sb3I6ICM1MUFGNDYgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAzMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cbmJvZHkucGFnZS1zdGFmZi1kaXJlY3RvcnkgI2NvbnRlbnQgI3RvcCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudDtcbn1cblxuLyogc2luZ2xlIHBlcnNvbm5lbCAqL1xuYm9keS5zaW5nbGUtcGVyc29ubmVsIHtcblxuICAvKiB0aXRsZSAmIGluZm8gKi9cbiAgLnNpZGViYXItLWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgIC5wZXJzb25uZWxfam9iX3RpdGxlLFxuICAgIC5waG9uZS1mYXgtY29udGFpbmVyLFxuICAgIC5waG9uZSB7XG4gICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIGNvbnRlbnQgKi9cbiAgI2NvbnRlbnQge1xuICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcblxuICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDMwcHggIWltcG9ydGFudDtcblxuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnk7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHVsIHtcblxuICAgICAgbGkge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogc2lkZWJhciAqL1xuICAjc2lkZWJhciB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICNjb250ZW50IHtcblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDE0cHggMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeSAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLm5hbWU6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk0MHB4KSB7XG5cbiAgICAuc2lkZWJhci0tbGVmdCxcbiAgICAjY29udGVudCxcbiAgICAjc2lkZWJhciB7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaWRlYmFyLS1sZWZ0IHtcblxuICAgICAgLnNpZGViYXJfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cblxuICAgICAgI2Jpb19waWMge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLnBob25lLWZheC1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgLmVtYWlsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBtYXJnaW46IDE1cHggMCAxNXB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgd2lkdGg6IDE1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4IDVweCAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5zaWRlYmFyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICNjb250ZW50IHtcblxuICAgICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5O1xuICAgICAgICBtYXJnaW46IDEwcHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMTVweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgI3NpZGViYXIge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItcHJpbWFyeTtcbiAgICAgIG1hcmdpbjogMjBweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMjBweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBBYm91dCBVcyAvIFBlcnNvbm5lbCAvIENvbnRhY3QgU3RhZmZcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LmVtYWlsLWZvcm0ge1xuXG4gICNjb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICNjdXN0b20tc3RhZmYtY29udGFjdC1mb3JtIHtcblxuICAgIC5zaWRlYmFyIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5waG90byB7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgaDIucGVyc29ubmVsX2pvYl90aXRsZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBjb2xvcjogJHdlc3RlZC1uYXZ5LWJsdWU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5jb250ZW50IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHdpZHRoOiA3MCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAvKiBNYXJrZXRvIGZvcm0gKi9cbiAgICAgIGZvcm0ubWt0b0Zvcm0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAubWt0b0h0bWxUZXh0IHtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ta3RvRm9ybVJvdyB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAvKiBsYWJlbCAqL1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBtYXJnaW46IDAgMCA2cHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogaW5wdXQgKi9cbiAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDRweCAxMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLyogdGV4dGFyZWEgKi9cbiAgICAgICAgdGV4dGFyZWEge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDRweCAxMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLyogY2hlY2tib3ggbGlzdCAqL1xuICAgICAgICAubWt0b0NoZWNrYm94TGlzdCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAvKiBub3RlOiBjYW4ndCByZWFsbHkgdXNlIGN1c3RvbSBjaGVja2JveCBzdHlsaW5nIGhlcmUgc2VlbiBlbHNld2hlcmUgaW4gc2l0ZSAqL1xuICAgICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgIG1hcmdpbjogM3B4IDhweCAxMnB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAvKiBzdWJtaXQgKi9cbiAgICAgICAgLm1rdG9CdXR0b25Sb3cge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDU4MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgLm1rdG9CdXR0b25XcmFwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTgwcHgpIHtcblxuICAgICAgLnNpZGViYXIsXG4gICAgICAuY29udGVudCB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiBub25lO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ5MHB4KSB7XG5cbiAgICAgIC5jb250ZW50IHtcblxuICAgICAgICBmb3JtLm1rdG9Gb3JtIHtcblxuICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5ta3RvQnV0dG9uUm93IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIEFib3V0IFVzIC8gUHJvZ3JhbXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnNpbmdsZS1wcm9ncmFtIHtcblxuICAvKiBSZWNlbnQgUG9zdHMgKi9cbiAgI3JlY2VudC1uZXdzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2VzdGVkLWJhYnktYmx1ZS1sdDtcbiAgfVxuXG4gICNtYWluX2NvbnRlbnRfd3JhcCAjY29udGVudCAuZW50cnktY29udGVudF9fYm9keSBwIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIC8qIFJlbGF0ZWQgUHJvamVjdHMgKi9cbiAgI3JlbGF0ZWQtcHJvamVjdHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3ZXN0ZWQtYmFieS1ibHVlO1xuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgbWF4LXdpZHRoOiAxMDQwcHggIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcGFkZGluZzogMzBweCAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHAucHJvamVjdC10b2dnbGUge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgcGFkZGluZzogMTBweCAwIDAgMDtcblxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBsaXN0ICovXG4gICAgLnByb2dyYW0tcHJvamVjdHMge1xuICAgICAgY2xlYXI6IGJvdGg7XG5cbiAgICAgIC5wcm9qZWN0X2xpc3RfYm94IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItcHJpbWFyeTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjVweCAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMjVweCAwO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvZ28ge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0OyAvKiBmbGV4IGZhbGxiYWNrICovXG4gICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgICAgICAgIG1hcmdpbjogMCAzMHB4IDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcblxuICAgICAgICAgIC5kZXNjcmlwdGlvbi1pbm5lciB7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgOHB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnByb2plY3RfbGlzdC5tb3JlX2xpbmtzX2xpc3Qge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5O1xuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjY1cHgpIHtcblxuICAgICNyZWxhdGVkLXByb2plY3RzIHtcblxuICAgICAgLnByb2dyYW0tcHJvamVjdHMge1xuXG4gICAgICAgIC5wcm9qZWN0X2xpc3RfYm94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuXG4gIC5zaW5nbGUtcHJvZ3JhbSB7XG5cbiAgICAjc2lkZWJhciB7XG5cbiAgICAgIC5jb250YWN0SW5mbyB7XG5cbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBob25lLWZheC1jb250YWluZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBBYm91dCBVcyAvIFByb2plY3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnNpbmdsZS1wcm9qZWN0IHtcblxuICAvKiBmb3IgcHJvamVjdHMgd2l0aCBjdXN0b20gZGl2IGNvbnRlbnQgKi9cbiAgLmVudHJ5LWNvbnRlbnQgZGl2IHtcbiAgICB3aWR0aDogOTAlO1xuICB9XG5cbiAgLnByb2plY3QtaGVhZGVyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuXG4gICAgLnByb2plY3RfbG9nbyB7XG4gICAgICBkaXNwbGF5OiBub25lOyAvKiBoaWRpbmcgKi9cbiAgICB9XG5cbiAgfVxuXG4gICNjb250ZW50IHtcbiAgICB3aWR0aDogNjglO1xuXG4gICAgaDMge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMjBweCA0MHB4IDIwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLyogMjAyMC0xMiB1c2VzIGdsb2JhbCBzaG93L2hpZGUsIGJ1dCB3aXRoIHRoZSBzdHlsaW5nIGJlbG93ICovXG4gICAgaDIudG9nZ2xlLXRyaWdnZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1lbmhhbmNlZC1wcm9qZWN0LXBsdXMuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICBtYXJnaW46IDIwcHggMCAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwIDAgMCAzNXB4O1xuXG4gICAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tZW5oYW5jZWQtcHJvamVjdC1taW51cy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgIH1cbiAgICAgIFxuICAgIH1cblxuICB9XG5cbiAgLnJlbGF0ZWQtc2VydmljZXMtbGlzdCB7XG4gICAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAjY29udGVudCAucmVsYXRlZC13ZWJzaXRlIHtcbiAgICBtYXJnaW46IDMwcHggMCAyMHB4IDA7XG4gICAgcGFkZGluZzogMzBweCAwIDAgMDtcblxuICAgIC5pbmZvIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDYwJTtcblxuICAgICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogIzU0NkI4NTtcbiAgICAgICAgbWFyZ2luOiAwIDAgNnB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuaW1nIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDIzMHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcwMHB4KSB7XG5cbiAgICAgIC5pbmZvLFxuICAgICAgLmltZyB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLmltZyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gICNzaWRlYmFyIC5wcm9qZWN0X2xvZ28ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQUJDMURBO1xuICAgIG1hcmdpbjogMCAwIDI1cHggMDtcbiAgICBwYWRkaW5nOiAwIDAgMjVweCAwO1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIHNpZGViYXIgKi9cbiAgI3NpZGViYXJfcHJvamVjdF9mdW5kZXIsXG4gICNzaWRlYmFyX3NvY2lhbF9tZWRpYSxcbiAgI3NpZGViYXJfcmVsYXRlZF9wcm9qZWN0LFxuICAjc2lkZWJhcl9yZWxhdGVkX2FvdyB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMTVweCAwIDE1cHggMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDE1cHggMCAxNXB4ICFpbXBvcnRhbnQ7XG5cbiAgICAud2lkZ2V0dGl0bGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEycHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2lkZWJhcl9saW5rbGlzdCAubmFtZSBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuXG4gIH1cblxuICAjc2lkZWJhcl9yZWxhdGVkX2FvdyB7XG5cbiAgICB1bCB7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgI3NpZGViYXJfcHJvamVjdF9mdW5kZXIge1xuXG4gICAgLnRleHR3aWRnZXQge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cblxuICB9XG5cbiAgI3NpZGViYXIgLnNvY2lhbGljb25zIHtcblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG5cbiAgfVxuXG4gICNzaWRlYmFyIHtcbiAgICBtaW4td2lkdGg6IDI5MHB4O1xuXG4gICAgLmNvbnRhY3RJbmZvIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgIH1cblxuICAgIC5uYW1lIHtcbiAgICAgIG1heC13aWR0aDogMTc1cHg7XG4gICAgfVxuXG4gICAgLnBob3RvLW1pc3Npbmcge1xuICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICBoZWlnaHQ6IDkwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBtYXJnaW46IDAgMjBweCAwIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgICNzaWRlYmFyX3JlbGF0ZWRfcmVzZWFyY2hfc3R1ZGllcyxcbiAgICAjc2lkZWJhcl9yZWxhdGVkX3Byb2plY3Qge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNBQkMxREE7XG4gICAgICBoNCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgcGFkZGluZzogMTVweCAwIDAgMDtcbiAgICAgIH1cblxuICAgICAgdWwuc2lkZWJhcl9saW5rbGlzdCB7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBSZWNlbnQgTmV3cyAqL1xuICAjcmVjZW50LW5ld3Mge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGdyZWVuO1xuXG4gICAgdWwubmV3c2xpc3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcblxuICAgICAgbGkge1xuICAgICAgICBtaW4taGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuaW1nIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDEyNXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIH1cblxuICB9XG5cbiAgLyogUmVsYXRlZCBSZXNvdXJjZXMgKi9cbiAgI3JlbGF0ZWQtcmVzb3VyY2VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWJjMWRhO1xuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHBhZGRpbmc6IDJlbSAwO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLm1vcmVfbGlua3Mge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgdWwucmVzb3VyY2VfbGlzdCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgZ3JpZC1nYXA6IDMwcHg7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAudGh1bWIge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAxNSU7XG4gICAgICAgICAgbWluLXdpZHRoOiAxMjBweDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMDtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gICAgICBjb2xvcjogIzE0NTFiZDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnkgIWltcG9ydGFudDtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDQwcHgpIHtcblxuICAgICNyZWxhdGVkLXJlc291cmNlcyB1bC5yZXNvdXJjZV9saXN0IHtcblxuICAgICAgbGkge1xuXG4gICAgICAgIC50aHVtYiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG5cbiAgICAjY29udGVudCxcbiAgICAjc2lkZWJhciB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICNjb250ZW50IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgI3JlbGF0ZWQtcmVzb3VyY2VzIHVsLnJlc291cmNlX2xpc3Qge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cbiAgICAgIGxpIHtcblxuICAgICAgICAudGh1bWIge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDIwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDgwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcwNnB4KSB7XG5cbiAgICAjcmVsYXRlZC1yZXNvdXJjZXMgdWwucmVzb3VyY2VfbGlzdCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NzBweCkge1xuXG4gICAgI3NpZGViYXIge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcblxuICAgICAgLndpZGdldCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICB9XG5cbiAgICAgIC53aWRnZXR0aXRsZSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAuY29udGFjdEluZm8ge1xuXG4gICAgICAgIC5waG90byB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAucGhvdG8tbWlzc2luZyB7XG4gICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBob25lLWZheC1jb250YWluZXIge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzAwcHgpIHtcblxuICAgIC5wcm9qZWN0LWhlYWRlciB7XG5cbiAgICAgIC5wcm9qZWN0X2xvZ28ge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAucHJvamVjdF90aXRsZSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBtYXJnaW46IDIwcHggMCAyMHB4IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qIDIwMjAtMDMtMjQgYWRkaW5nIFN1YnNjcmliZSBTb2NpYWwgQmFyIHN0eWxpbmcgdG8gc2luZ2xlIHByb2plY3QgdmlldyAoQ0hLUyByZXF1ZXN0ZWQpICovXG5ib2R5LnNpbmdsZS1wcm9qZWN0IHtcblxuICAvKiBTdWJzY3JpYmUgU29jaWFsIEJhciAqL1xuICAjc3Vic2NyaWJlLXNvY2lhbC1iYXIge1xuICAgIHdpZHRoOiA5NSU7XG4gICAgbWF4LXdpZHRoOiA2MzBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyOiAycHggc29saWQgI0UzRUNGOTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgbWFyZ2luOiA0MHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAyMHB4IDIwcHggMTBweCAyMHB4O1xuXG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuc3Vic2NyaWJlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMTBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5pY29uIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA5NHB4O1xuICAgICAgICBoZWlnaHQ6IDk0cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXdyaXRlLWZpbGxlZC5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgbWFyZ2luOiAwIDMwcHggMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDhweCAwIDVweCAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJi5zdWJzY3JpYmUge1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMTJweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnNvY2lhbCB7XG4gICAgICB3aWR0aDogNzklO1xuICAgICAgaGVpZ2h0OiA2NXB4O1xuICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNFM0VDRjk7XG4gICAgICBtYXJnaW46IDAgMCAwIDEyNXB4O1xuICAgICAgcGFkZGluZzogMTVweCAwIDAgMDtcblxuICAgICAgaDIge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDZweCAwIDAgMDtcbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDM3cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDM3cHg7XG5cbiAgICAgICAgICAgICYudHdpdHRlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC10d2l0dGVyLWJhYnkucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubGlua2VkaW4ge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtbGlua2VkaW4tYmFieS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5mYWNlYm9vayB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1mYWNlYm9vay1iYWJ5LnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyMHB4KSB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLnN1YnNjcmliZSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICYuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuc29jaWFsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBBYm91dCBVcyAvIEVuaGFuY2VkIFByb2plY3QgKDIwMjAtMDYpIChNb2RlbGVkIGZvciBTdHJhdGVnaWMgUmVzb3VyY2UgUGxhbm5pbmcgSW1wbGVtZW50YXRpb24sIGJ1dCB3aWxsIGJlIHVzZWQgYWdhaW4gZm9yIG90aGVycylcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnNpbmdsZS1wcm9qZWN0LWVuaGFuY2VkIHtcbiAgb3ZlcmZsb3c6IGluaXRpYWw7IC8qIGZvciBidXN0LW91dCAqL1xuXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgcGFkZGluZzogMCAyMHB4IDA7XG5cbiAgICAjY29udGVudCBwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICB9XG5cbiAgLyogZ2xvYmFsIHR5cGUgKi9cbiAgI2NvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzN3B4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMCAwIDE0cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgYS5idG4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiA4cHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIGdsb2JhbCBidXN0LW91dCAqL1xuICAuYnVzdC1vdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoNTB2dyAtIDUwJSkpO1xuICAgIG1hcmdpbjogYXV0byBjYWxjKDUwJSAtIDUwdncpO1xuICAgIHBhZGRpbmc6IDAgMCAwIDA7XG5cbiAgICAuYnVzdC1vdXQtY29udGVudCB7XG4gICAgICB3aWR0aDogMTAwMHB4OyAvKiBtYXRjaCAuZW50cnktY29udGVudCB3aWR0aCAqL1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwYWRkaW5nOiA1MHB4IDAgNTBweDtcbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNjBweCkge1xuXG4gICAgLmJ1c3Qtb3V0IHtcblxuICAgICAgLmJ1c3Qtb3V0LWNvbnRlbnQge1xuICAgICAgICB3aWR0aDogOTIlO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBoZXJvICovXG4gICNoZXJvIHtcblxuICAgIC5oZXJvLXN1Ym5hdiB1bCBsaSB7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuXG4gIH1cblxuICAvKiBPdmVydmlldyAqL1xuICAjb3ZlcnZpZXcge1xuXG4gICAgLmdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpO1xuICAgICAgZ2FwOiAwIDMwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAuaXRlbSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyA0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiA0IC8gNjtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjRTNFQ0Y5IHVybChcIi4uL2ltYWdlcy9pY29uLXF1b3RlLXdoaXRlLnN2Z1wiKSBuby1yZXBlYXQgNXB4IDVweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDM1cHggNTBweCAyMHB4IDUwcHg7XG5cbiAgICAgICAgICBwLnF1b3RlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHAucXVvdGUtc291cmNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjOEU5RkI1O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgNTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc20tYnJlYWspIHtcblxuICAgICAgLmdyb3VwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogQ29ubmVjdCB3aXRoIFdlc3RFZCAqL1xuICAjY29ubmVjdC13aXRoLXdlc3RlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNGNjQ4RjtcblxuICAgIC5idXN0LW91dC1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLWdhcDogMCAzMHB4O1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5pdGVtIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIDQ7XG4gICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMjBweDtcblxuICAgICAgICAgIC8qIGlubmVyIGdyb3VwICovXG4gICAgICAgICAgLmdyb3VwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLWdhcDogMCAwO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgMWZyKTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIDE7XG5cbiAgICAgICAgICAgICAgICAuaWNvbi1jb25uZWN0IHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiA3MXB4O1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3MXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gNztcblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCA2cHggMDtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiA0IC8gNjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTI3N0EyO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMzBweCAyMHB4O1xuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmc6IDE4cHggMCAwO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgYSB7XG5cbiAgICAgICAgICAgICAgICAmLmJ0biB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDIwcHggMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5zb2NpYWwge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMzdweDtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMzdweDtcbiAgICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYudHdpdHRlciB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtdHdpdHRlci0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmxpbmtlZGluIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1saW5rZWRpbi0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmZhY2Vib29rIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1mYWNlYm9vay0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDY1cHgpIHtcblxuICAgICAgLmdyb3VwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMyMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5ncm91cCB7XG5cbiAgICAgICAgICAgIC5pdGVtIHtcblxuICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MjBweCkge1xuXG4gICAgICAuZ3JvdXAge1xuXG4gICAgICAgIC5pdGVtIHtcblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byA4cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpudGgtY2hpbGQoMikgdWwgbGkgYS5idG4ge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBIb3cgV2UgQ2FuIEhlbHAgKi9cbiAgI2hvdyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcblxuICAgIC5ncm91cCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMmZyO1xuICAgICAgZ3JpZC1nYXA6IDMwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAuaXRlbSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuXG4gICAgICAgICAgLmhvdyB7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG5cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgICAgICAgICAgICBjb2x1bW4tZ2FwOiAyNXB4O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAwIDQwcHg7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc20tYnJlYWspIHtcblxuICAgICAgLmdyb3VwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU1MHB4KSB7XG5cbiAgICAgIC5ncm91cCB7XG5cbiAgICAgICAgLml0ZW0ge1xuXG4gICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuXG4gICAgICAgICAgICAuaG93IHVsIHtcbiAgICAgICAgICAgICAgY29sdW1uLWNvdW50OiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBOZXdzICYgRXZlbnRzICovXG4gICNuZXdzLWV2ZW50cyB7XG5cbiAgICB1bC5uZXdzbGlzdCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwxZnIpO1xuICAgICAgZ3JpZC1nYXA6IDMwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgIC5pbWcge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMjBweDtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5pbmZvIHtcblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCA1cHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgY29sb3I6ICM4MTlBQjY7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3Bhbi5leGNlcnB0LFxuICAgICAgICAgICAgc3Bhbi5leGNlcnB0IHAge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnZpZXdfbW9yZV9idG4ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiA0MHB4IDAgMCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAxcHggMTJweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWM7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbS1icmVhaykge1xuXG4gICAgICB1bC5uZXdzbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBQcm9qZWN0cyAqL1xuICAjcHJvamVjdHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNBQkMxREE7XG5cbiAgICBoMiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5ncm91cCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICAgIGdyaWQtZ2FwOiAyMHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLml0ZW0ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gMTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICBncmlkLWNvbHVtbjogMiAvIDU7XG5cbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0M3B4O1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjdweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnByb2plY3QtbGlzdCB7XG4gICAgICAgICAgICBtYXJnaW46IDQwcHggMCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLWVuaGFuY2VkLXByb2plY3QtcGx1cy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAzNXB4O1xuXG4gICAgICAgICAgICAgICYuZXhwYW5kZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLWVuaGFuY2VkLXByb2plY3QtbWludXMuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudG9nZ2xlLWdyb3VwIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMzBweCA1MHB4O1xuXG4gICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnZpZXctbW9yZS1idG4ge1xuICAgICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgIzVhNzk5YztcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBtYXJnaW46IDQwcHggMCAwIDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFweCAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtLWJyZWFrKSB7XG5cbiAgICAgIC5ncm91cCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLml0ZW0ge1xuXG4gICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIFJlc291cmNlcyAqL1xuICAjcmVzb3VyY2VzIHtcblxuICAgIHVsLnJlc291cmNlX2xpc3Qge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICBncmlkLWdhcDogNDBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgICAgZ3JpZC1nYXA6IDE1cHg7XG5cbiAgICAgICAgICAudGh1bWIge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAxO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgICBtaW4td2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMiAvIDQ7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5tb3JlX2xpbmtzIHtcbiAgICAgIG1hcmdpbjogNDBweCAwIDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLm1vcmVfbGlua3NfbGlzdCA+IC5yZXNvdXJjZV9saXN0IHtcbiAgICAgIG1hcmdpbjogMzBweCAwIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbS1icmVhaykge1xuXG4gICAgICB1bC5yZXNvdXJjZV9saXN0LFxuICAgICAgLm1vcmVfbGlua3NfbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsMWZyKTtcblxuICAgICAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gNztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogT3VyIFRlYW0gKi9cbiAgI3RlYW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG5cbiAgICB1bC50ZWFtLXNsaWRlciB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgICAgcGFkZGluZzogMCA1NXB4O1xuXG4gICAgICAuc2xpY2stdHJhY2sge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuXG4gICAgICAuc2xpZGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDAgMTVweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDE1cHggMCAxMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iaW8ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYS5idG4ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5zbGljay1wcmV2LFxuICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgaGVpZ2h0OiA4MXB4O1xuICAgICAgICB0b3A6IDQ1JTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgd2lkdGg6IDM4cHg7XG4gICAgICAgICAgaGVpZ2h0OiA4MXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzhweCA4MXB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnNsaWNrLXByZXYge1xuICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS0wMy10cmF1bWEtdGVhbS1hcnJvdy1sZWZ0LnN2Z1wiKTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy8yMDE5LTAzLXRyYXVtYS10ZWFtLWFycm93LXJpZ2h0LnN2Z1wiKTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQWJvdXQgVXMgLyBFbmhhbmNlZCBQcm9qZWN0IC8gUHJvamVjdCBPdmVycmlkZXMgLSB1c2UgdGhpcyBmb3IgdGhlIGhvcGVmdWxseSByZWxhdGl2ZWx5IGZldyBwcm9qZWN0cyB0aGF0IGdldCBhZGRpdGlvbmFsIG92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuc2luZ2xlLXByb2plY3QtZW5oYW5jZWQucHJvamVjdC1uYW1lIHtcblxuXG5cbn1cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi8qIEFib3V0IFVzIC8gWWVhciBpbiBSZXZpZXdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnllYXItaW4tcmV2aWV3LTIwMTgsXG5ib2R5LnllYXItaW4tcmV2aWV3LTIwMTkge1xuXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAjY29udGVudCBwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICB9XG5cbiAgLmJ1c3Qtb3V0LXJlc291cmNlcyxcbiAgLmJ1c3Qtb3V0LXJkIHtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcblxuICAgIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDMzcHg7XG4gICAgICBsaW5lLWhlaWdodDogNDFweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuXG4gICAgLmxpc3RzIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gICAgfVxuXG4gICAgb2wge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDU1cHggNTVweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAyNXB4IDc1cHg7XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMSkgeyBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOC15ZWFyLWluLXJldmlldy0xLnN2Z1wiKSBuby1yZXBlYXQgMCAwOyB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikgeyBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOC15ZWFyLWluLXJldmlldy0yLnN2Z1wiKSBuby1yZXBlYXQgMCAwOyB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMykgeyBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOC15ZWFyLWluLXJldmlldy0zLnN2Z1wiKSBuby1yZXBlYXQgMCAwOyB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoNCkgeyBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOC15ZWFyLWluLXJldmlldy00LnN2Z1wiKSBuby1yZXBlYXQgMCAwOyB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoNSkgeyBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOC15ZWFyLWluLXJldmlldy01LnN2Z1wiKSBuby1yZXBlYXQgMCAwOyBwYWRkaW5nLWJvdHRvbTogNDBweDsgbWF4LXdpZHRoOiAzNTBweCAhaW1wb3J0YW50O31cblxuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgICYudGV4dCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNDUlO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDQ1MHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgJi50aHVtYnMge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAzMSU7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDEwcHg7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTBweCkge1xuXG4gICAgICBvbC50ZXh0LFxuICAgICAgb2wudGh1bWJzIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC5idXN0LW91dC1yZXNvdXJjZXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gIH1cblxuICAuYnVzdC1vdXQtcmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgICBwLnNjcmVlbnNob3Qge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNDUlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAzNTBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgb2wudGV4dCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNDVweCkge1xuXG4gICAgICBwLnNjcmVlbnNob3QsXG4gICAgICBvbC50ZXh0IHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qIDIwMTkgKi9cbmJvZHkueWVhci1pbi1yZXZpZXctMjAxOSB7XG5cbiAgLyogaGVhZGVyICovXG4gIC55ZWFyLWluLXJldmlldy1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luOiAwIDAgNjBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuaXRlbSB7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1pbi13aWR0aDogMjI1cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIGgxIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDM4cHg7XG4gICAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gIH1cblxuICAvKiBUbyA1IFJlc291cmNlcyAqL1xuICAuYnVzdC1vdXQtcmVzb3VyY2VzIG9sLnRodW1icyB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDUwJTtcblxuICAgIGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDEzMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIG1hcmdpbjogMCAxMHB4IDE1cHggMTBweDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWF4LWhlaWdodDogMTY1cHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuXG4gICAgLnllYXItaW4tcmV2aWV3LWhlYWRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgLml0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICBtaW4td2lkdGg6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAubGlzdHMge1xuXG4gICAgICBvbC50ZXh0LFxuICAgICAgb2wudGh1bWJzIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQWJvdXQgVXMgLyBZZWFyIGluIFJldmlldyAvIFRpbWVsaW5lXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS55ZWFyLWluLXJldmlldy0yMDE4LFxuYm9keS55ZWFyLWluLXJldmlldy0yMDE5IHtcblxuICAuZW50cnktY29udGVudCB7XG5cbiAgICAuYnVzdC1vdXQtdGltZWxpbmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0FCQzFEQTtcbiAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG5cbiAgICAgIC5idXN0LW91dC1jb250ZW50IHtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAubGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMwJTtcblxuICAgIGgyIHtcbiAgICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiAzM3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQycHg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gIH1cblxuICAucmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogNzAlO1xuICB9XG5cbiAgLnRpbWVsaW5lLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiA0NTBweDtcbiAgICBvdmVyZmxvdzogYXV0bztcblxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMCA2cHggcmdiYSgwLDAsMCwwLjMpO1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGVkZjg7XG4gICAgICBvdXRsaW5lOiAxcHggc29saWQgI2U0ZWRmODtcbiAgICB9XG5cbiAgICAuaXRlbSB7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAjdGltZWxpbmUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDJweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC41cmVtO1xuICAgICAgICBib3R0b206IDByZW07XG4gICAgICAgIGxlZnQ6IDkxcHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGJhY2tncm91bmQ6ICNjOGQxZDg7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgc2VjdGlvbi55ZWFyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIHNlY3Rpb24ge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgOTVweDtcbiAgICAgICAgICAgIG1hcmdpbjogLTEuMzVyZW0gMCAxZW07XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZTphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZDZjYzRlO1xuICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICAgICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgIC1tcy1ib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICBsZWZ0OiA4NXB4O1xuICAgICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAvLyBtYXgtd2lkdGg6IDQ3NXB4O1xuICAgICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5MHB4KSB7XG5cbiAgICAubGVmdCxcbiAgICAucmlnaHQge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmxlZnQge1xuXG4gICAgICBoMiB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC50aW1lbGluZS1jb250YWluZXIgI3RpbWVsaW5lIHNlY3Rpb24ueWVhciBzZWN0aW9uIHtcblxuICAgICAgdWwge1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5ib2R5LnllYXItaW4tcmV2aWV3LTIwMTkge1xuXG4gIC5lbnRyeS1jb250ZW50IHtcblxuICAgIC5idXN0LW91dC10aW1lbGluZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgIC5idXN0LW91dC1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLnJpZ2h0IHtcbiAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjOGQxZDg7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgfVxuXG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIGZvbnQtc2l6ZTogMzNweDtcbiAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgfVxuXG4gICAgICAudGltZWxpbmUtY29udGFpbmVyICN0aW1lbGluZSB7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgc2VjdGlvbi55ZWFyIHNlY3Rpb24gdWw6Zmlyc3Qtb2YtdHlwZTphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICR3ZXN0ZWQtbmF2eS1ibHVlO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkwcHgpIHtcblxuICAgIC5lbnRyeS1jb250ZW50IC5idXN0LW91dC10aW1lbGluZSB7XG5cbiAgICAgIC5sZWZ0LFxuICAgICAgLnJpZ2h0IHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIEFib3V0IFVzIC8gWWVhciBpbiBSZXZpZXcgLyBTbGlkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnllYXItaW4tcmV2aWV3LTIwMTkge1xuXG4gIC5idXN0LW91dC1zbGlkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhYmMxZGE7XG5cbiAgICAuYngtcGFnZXItaXRlbSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDNweCAhaW1wb3J0YW50O1xuXG4gICAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZWNlbnQgTmV3cywgUmVsYXRlZCBSZXNvdXJjZXMgKFNoYXJlZClcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jcmVjZW50LW5ld3MsICNyZWxhdGVkLXJlc291cmNlcyB7XG5cbiAgYTpob3ZlciB7XG4gICAgb3BhY2l0eTogLjc1ICFpbXBvcnRhbnQ7XG4gIH1cblxuICB1bC5uZXdzbGlzdCBsaSB7XG5cbiAgICAuaW1nIHtcbiAgICAgIHdpZHRoOiAxNDBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5pbmZvIHtcbiAgICAgIHdpZHRoOiAzMDBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA0MHB4KSB7XG5cbiAgICB1bC5uZXdzbGlzdCwgdWwucmVzb3VyY2VfbGlzdCB7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzNmNjQ4ZjtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMCAxMnB4IDAgIWltcG9ydGFudDtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbWcsIC50aHVtYiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAudmlld19tb3JlX2J0biwgLm1vcmVfbGlua3Mge1xuICAgICAgbWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuLyogUmVsYXRlZCBSZXNvdXJjZXMgKGJhc2UgY2xhc3NlcywgdW5mb3J0dW5hdGVseSB0aGVyZSBhcmUgb3RoZXJzKSAqL1xuI3JlbGF0ZWQtcmVzb3VyY2VzIHtcblxuICBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgdWwge1xuXG4gICAgbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBoZWlnaHQ6IDQ4LjUlO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgIHBhZGRpbmc6IDI1cHggMCAwIDA7XG5cbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNDBweCkge1xuXG4gICAgdWwge1xuXG4gICAgICBsaSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAwIDE1cHggMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBBcmVhcyBvZiBXb3JrIC8gT3ZlcnZpZXdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnNpbmdsZS1hcmVhX29mX3dvcmsge1xuXG4gIC8qIEZlYXR1cmVkIEl0ZW0gKi9cbiAgI3Nwb3RsaWdodCB7XG5cbiAgICAuYngtd3JhcHBlciB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc3BvdGxpZ2h0X3NsaWRlcixcbiAgICAuc3BvdGxpZ2h0X3NpbmdsZSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAuc2xpZGUge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgIC5mZWF0dXJlZF9pbWcge1xuICAgICAgICAgIHdpZHRoOiAyMzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5mZWF0dXJlZF9jb250ZW50IHtcbiAgICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiA3MDBweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBwYWdpbmF0aW9uICovXG4gICAgLmJ4LWNvbnRyb2xzIHtcbiAgICAgIHotaW5kZXg6IDk5ODtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuXG4gICAgICAuc3BvdGxpZ2h0X3NsaWRlcixcbiAgICAgIC5zcG90bGlnaHRfc2luZ2xlIHtcblxuICAgICAgICAuc2xpZGUgLmZlYXR1cmVkX2NvbnRlbnQge1xuICAgICAgICAgIHdpZHRoOiA2MDBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk0MHB4KSB7XG5cbiAgICAgIC5zcG90bGlnaHRfc2xpZGVyLFxuICAgICAgLnNwb3RsaWdodF9zaW5nbGUge1xuXG4gICAgICAgIC5zbGlkZSB7XG5cbiAgICAgICAgICAuZmVhdHVyZWRfaW1nIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmZlYXR1cmVkX2NvbnRlbnQge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBSZWNlbnQgTmV3cyAmIFJlc2VhcmNoIEJsb2cgKi9cbiAgI2NvbnRlbnQgI3NpZGViYXJfcmVsYXRlZF9uZXdzIHtcblxuICAgIC53aWRnZXRfbmV3c19wb3N0IHtcbiAgICAgIG1hcmdpbjogMCAwIDI1cHggMCAhaW1wb3J0YW50O1xuXG4gICAgICAubmV3c190aHVtYiB7XG4gICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgICAgaGVpZ2h0OiAxNDBweDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDE0MHB4O1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBzcGFuLnZpZXdtb3JlIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIEFyZWFzIG9mIFdvcmsgLyBTZXJ2aWNlcyB0byBIZWxwIFlvdVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkucGFnZS10ZW1wbGF0ZS1hb3ctc2VydmljZXMtdG8taGVscC15b3UtcGFnZSAjY29udGVudCB7XG5cbiAgaDIge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgY29sb3I6ICM1MUFGNDY7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNBQkMxREE7XG4gICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgIHBhZGRpbmc6IDAgMCA2cHggMDtcbiAgfVxuXG4gIC5hb3ctc2VydmljZXMge1xuXG4gICAgLyogc2lkZWJhciAqL1xuICAgIC5hb3ctc2VydmljZXMtc2lkZWJhciB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAyMiU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICB9XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNBQkMxREEgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBzZXJ2aWNlIGxpc3QgKi9cbiAgICAuYW93LXNlcnZpY2VzLW1haW4ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDc1JTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5zZXJ2aWNlX2xpc3RfYm94IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMzVweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGgzLm5hbWUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDZweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgY29sb3I6ICM1NDZiODU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBwLnRhZ3Mge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBzcGFuLnRhZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDhweCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAycHggOHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogcGFnaW5hdGlvbiAqL1xuICAgICAgLnBhZ2luYXRpb24ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMzVweCAwIDEwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIG1hcmdpbjogMCA2cHg7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICAgICYucHJldiwgJi5uZXh0IHtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5wcmV2IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1hcnJvdy1sZWZ0LXB1cnBsZS5wbmcpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5uZXh0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1hcnJvdy1yaWdodC1wdXJwbGUucG5nKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIHNwYW4uY3VycmVudCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjRiMWE2O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZjJmNztcbiAgICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NTBweCkge1xuXG4gICAgLmFvdy1zZXJ2aWNlcyB7XG5cbiAgICAgIC5hb3ctc2VydmljZXMtc2lkZWJhcixcbiAgICAgIC5hb3ctc2VydmljZXMtbWFpbiB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLmFvdy1zZXJ2aWNlcy1tYWluIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBBcmVhcyBvZiBXb3JrIC8gRmVhdHVyZWQgSW5pdGlhdGl2ZSAvIFNoYXJlZCBFbGVtZW50c1xuICBDaGFydGVycyAmIENob2ljZVxuICBDT1ZJRC0xOSBSZXNvdXJjZXMgZm9yIEVkdWNhdG9yc1xuICBPbmxpbmUgUHJvZmVzc2lvbmFsIERldmVsb3BtZW50IChDT1ZJRCBTZXJ2aWNlcylcbiAgRm91ciBEb21haW5zIGZvciBSYXBpZCBTY2hvb2wgSW1wcm92ZW1lbnRcbiAgVHJhdW1hLUluZm9ybWVkIFByYWN0aWNlICYgUmVzaWxpZW5jeVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuY2hhcnRlcnMtY2hvaWNlLFxuYm9keS5jb3ZpZC0xOS1yZXNvdXJjZXMsXG5ib2R5LmNvdmlkLTE5LXNlcnZpY2VzLFxuYm9keS5mb3VyLWRvbWFpbnMsXG5ib2R5LnRyYXVtYSB7XG5cbiAgLyogUmVjZW50IFBvc3RzICovXG4gIHNlY3Rpb24ucmVjZW50LXBvc3RzIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogNDBweCAwO1xuXG4gICAgaDIge1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICB1bC5uZXdzbGlzdCB7XG4gICAgICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LDFmcik7XG4gICAgICBncmlkLWdhcDogMzBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgLmltZyB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIyMHB4O1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmluZm8ge1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogIzgxOUFCNiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuLmV4Y2VycHQsXG4gICAgICAgICAgICBzcGFuLmV4Y2VycHQgcCB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAudmlld19tb3JlX2J0biB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDQwcHggMCAwIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgZm9udC1zaXplOiAxMXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDFweCAxMnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTQwcHgpIHtcblxuICAgICAgdWwubmV3c2xpc3Qge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuXG4gICAgICAgICAgLmltZyBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyMzBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQXJlYXMgb2YgV29yayAvIEZlYXR1cmVkIEluaXRpYXRpdmUgLyBGb3VyIERvbWFpbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LmZvdXItZG9tYWlucyB7XG5cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gICNjb250ZW50IHtcblxuICAgIHAge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJiNvdmVydmlldyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8qIE92ZXJ2aWV3ICovXG4gICAgLm92ZXJ2aWV3LWNvbnRhaW5lciB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjRDNEQkU2O1xuICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgcGFkZGluZzogMTVweDtcblxuICAgICAgLmxvZ28ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHggMCAwO1xuXG4gICAgICAgIHAucXVvdGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMzBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiAxMTJweDtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDE4LTEyLTAzLWZvdXItZG9tYWlucy1xdW90ZS5zdmdcIikgY2VudGVyIGNlbnRlci9jb250YWluIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgbWFyZ2luOiA1cHggMjBweCAxMDBweCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgcC5zb3VyY2Uge1xuICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBjb2xvcjogIzhFOUZCNTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDAgMTUwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAucmVzb3VyY2VzIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogNTUlO1xuICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICNEM0RCRTY7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMjBweDtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgI0QzREJFNjtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDAgMCAwO1xuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcC5jb3ZlciB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMjBweCAwIDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEyMHB4XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubm9jb3ZlciB7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMTI1cHg7XG5cbiAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcblxuICAgICAgICAubG9nbyxcbiAgICAgICAgLnJlc291cmNlcyB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIHAucXVvdGUge1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXNvdXJjZXMge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgICAgICAgdWwge1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDE0MHB4O1xuXG4gICAgICAgICAgICAgICYubm9jb3ZlciB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU2MHB4KSB7XG5cbiAgICAgICAgLmxvZ28ge1xuXG4gICAgICAgICAgcC5xdW90ZSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcC5zb3VyY2Uge1xuICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBidXN0IG91dCBvdmVycmlkZXMgKi9cbiAgICAuYnVzdC1vdXQge1xuXG4gICAgICAmLnByb21vIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNGNjQ4RjtcblxuICAgICAgICAuYnVzdC1vdXQtY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgJi5zZXJ2aWNlcyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG5cbiAgICAgICAgLmJ1c3Qtb3V0LWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgICYuc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQUJDMURBO1xuXG4gICAgICAgIC5idXN0LW91dC1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAmLmVsIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG5cbiAgICAgICYuZmFtaWx5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0QzREJFNjtcblxuICAgICAgICAuYnVzdC1vdXQtY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIFByb21vICovXG4gICAgI3N1YnNjcmliZS1zb2NpYWwtYmFyIHtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2VzdGVkLW5hdnktYmx1ZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDEwNDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC5zdWJzY3JpYmUge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDY1JTtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCA4MHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNjVweDtcbiAgICAgICAgICBoZWlnaHQ6IDY1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24td3JpdGUucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgbWFyZ2luOiAxNnB4IDIwcHggMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMTZweCAwIDVweCAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICYuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMCAwIDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnNvY2lhbCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDIzJTtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzUyNzdBMjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDE2cHggMCA4cHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMCAzcHggMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDM3cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzdweDtcbiAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG5cbiAgICAgICAgICAgICAgJi50d2l0dGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtdHdpdHRlci0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYubGlua2VkaW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1saW5rZWRpbi0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1mYWNlYm9vay0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDQwcHgpIHtcblxuICAgICAgI3N1YnNjcmliZS1zb2NpYWwtYmFyIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLnN1YnNjcmliZSB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJi5zdWJzY3JpYmUge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuc29jaWFsIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMCAxNXB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIFNlcnZpY2VzICovXG4gICAgLnNlcnZpY2VzLWNvbnRhaW5lciB7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMTBweCAwO1xuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICYubGlzdDEge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiA1NSU7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgI0QzREJFNjtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5saXN0MiB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIHdpZHRoOiA0NSU7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjVweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcwMHB4KSB7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG5cbiAgICAgICAgICAmLmxpc3QxLFxuICAgICAgICAgICYubGlzdDIge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogU3BlY2lhbCBFZCAqL1xuICAgIC5zZS1jb250YWluZXIge1xuXG4gICAgICAubGVmdCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNzclO1xuICAgICAgICBoZWlnaHQ6IDYwMHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMjVweCAwIDA7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW46IDMwcHggMjVweCAyNXB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBociB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogIzNGNTQ2MDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICYuaW50cm8ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI5cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuYnV0dG9uIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiA4cHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICBtYXJnaW46IDIwcHggMCAyMHB4IDIwcHg7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjM0Y1NDYwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4IDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5yaWdodCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDIzJTtcbiAgICAgICAgaGVpZ2h0OiA2MDBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E1YmNkNTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAyNXB4O1xuXG4gICAgICAgIHAge1xuXG4gICAgICAgICAgJi5zdWJzY3JpYmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOC0xMi0wMy1mb3VyLWRvbWFpbnMtc3Vic2NyaWJlLnBuZ1wiKSBuby1yZXBlYXQgdG9wIGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogODBweCAwIDAgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDExNXB4IDAgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuYnV0dG9uIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICB1bC5zb2NpYWwge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDQwcHggYXV0bztcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDM3cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzdweDtcblxuICAgICAgICAgICAgICAmLnR3aXR0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC10d2l0dGVyLTM3eDM3LnN2Z1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJi5saW5rZWRpbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLWxpbmtlZGluLTM3eDM3LnN2Z1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJi5mYWNlYm9vayB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLWZhY2Vib29rLTM3eDM3LnN2Z1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyMHB4KSB7XG5cbiAgICAgICAgLmxlZnQsXG4gICAgICAgIC5yaWdodCB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgcC5zdWJzY3JpYmUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzc1cHgpIHtcblxuICAgICAgICAubGVmdCxcbiAgICAgICAgLnJpZ2h0IHtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGhyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICYubGlzdDEge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmxpc3QzIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIEVuZ2xpc2ggTGVhcm5lcnMgKi9cbiAgICAuZWwtY29udGFpbmVyIHtcblxuICAgICAgaW1nIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDMwcHg7XG4gICAgICB9XG5cbiAgICAgIGhyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjQjVDMUNDO1xuICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgIH1cblxuICAgICAgaDIge1xuICAgICAgICBtYXJnaW46IDIwcHggMCAycHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogIzgxOUFCNjtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICBwIHtcblxuICAgICAgICAmLmludHJvIHtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI5cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIHVsIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggMjBweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgY29sb3I6ICM1NDZCODU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTVweCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmxpc3QxIHtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgcC5idXR0b24ge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogOHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgI3N1YnNjcmliZS1zb2NpYWwtYmFyIHtcbiAgICAgICAgd2lkdGg6IDgwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuc3Vic2NyaWJlIHtcbiAgICAgICAgICB3aWR0aDogNTAwcHg7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogNzRweDtcbiAgICAgICAgICAgIGhlaWdodDogNzVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDE4LTEyLTAzLWZvdXItZG9tYWlucy1zdWJzY3JpYmUyLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDIwcHggMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBjb2xvcjogIzgxOUFCNjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMCAwO1xuXG4gICAgICAgICAgICAmLnN1YnNjcmliZSB7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAwIDk1cHg7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNBQkMxREEgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNEM0RCRTYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5zb2NpYWwge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAxNzVweDtcbiAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgI0QzREJFNjtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDQwcHggMCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICYudHdpdHRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLXR3aXR0ZXItMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmxpbmtlZGluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtbGlua2VkaW4tMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmZhY2Vib29rIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtZmFjZWJvb2stMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA1MHB4KSB7XG5cbiAgICAgICAgI3N1YnNjcmliZS1zb2NpYWwtYmFyIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAgICAgICAuc3Vic2NyaWJlLFxuICAgICAgICAgIC5zb2NpYWwge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmLnN1YnNjcmliZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NzVweCkge1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDIwcHg7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICYubGlzdDEge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmxpc3QzIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogRmFtaWx5ICovXG4gICAgLmZhbWlseS1jb250YWluZXIge1xuXG4gICAgICAubGVmdCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNzclO1xuICAgICAgICBoZWlnaHQ6IDY3MHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMjVweCAwIDA7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW46IDMwcHggMjVweCAyNXB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgbWFyZ2luOiA0MHB4IDAgMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICM4MTlBQjY7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcblxuICAgICAgICAgICYuaW50cm8ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI5cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuYnV0dG9uIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiA4cHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBociB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjOEU5RkI1O1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMjBweCAyMHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBjb2xvcjogIzU0NkI4NTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5saXN0MSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAucmlnaHQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiAyMyU7XG4gICAgICAgIGhlaWdodDogNjcwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjOWQyZGU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMjVweDtcblxuICAgICAgICBwIHtcblxuICAgICAgICAgICYuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzLzIwMTgtMTItMDMtZm91ci1kb21haW5zLXN1YnNjcmliZS5wbmdcIikgbm8tcmVwZWF0IHRvcCBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDgwcHggMCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMTVweCAwIDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmJ1dHRvbiB7XG4gICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgdWwuc29jaWFsIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiA0MHB4IGF1dG87XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiAzN3B4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDM3cHg7XG5cbiAgICAgICAgICAgICAgJi50d2l0dGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtdHdpdHRlci0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYubGlua2VkaW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1saW5rZWRpbi0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1mYWNlYm9vay0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjBweCkge1xuXG4gICAgICAgIC5sZWZ0LFxuICAgICAgICAucmlnaHQge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIHAuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc3NXB4KSB7XG5cbiAgICAgICAgLmxlZnQsXG4gICAgICAgIC5yaWdodCB7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBociB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwIDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAmLmxpc3QxIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5saXN0MyB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQXJlYXMgb2YgV29yayAvIEZlYXR1cmVkIEluaXRpYXRpdmVzIC8gQ2hhcnRlcnMgJiBDaG9pY2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LmNoYXJ0ZXJzLWNob2ljZSB7XG5cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gICNjb250ZW50IHtcblxuICAgIHAge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8qIE92ZXJ2aWV3ICovXG4gICAgLm92ZXJ2aWV3IHtcbiAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgcCwgbGkge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOXB4O1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMjVweCAwIDUwcHggNjBweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5ncm91cCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgZ3JpZC1nYXA6IDIwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgXG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRDNEQkU2O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBociB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRDNEQkU2O1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBtYXJnaW46IDUwcHggMCA0MHB4IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmLmNsaXBib2FyZCB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgM2ZyO1xuICAgICAgICAgIFxuICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgfVxuICBcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgICAgJi5uY3NyYyB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgICAgZ3JpZC1nYXA6IDA7XG4gICAgICAgICAgXG4gICAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIH1cbiAgXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICM2RUE5RUQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbS1icmVhaykge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyAgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBOZXdzICYgRXZlbnRzICovXG4gICAgLmJ1c3Qtb3V0LW5ld3MtZXZlbnRzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gICAgICBcbiAgICAgIHNlY3Rpb24ucmVjZW50LXBvc3RzIHtcbiAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgfVxuICAgICAgXG4gICAgfVxuXG4gICAgLyogU3VwcG9ydGluZyBSZXNvdXJjZXMgKi9cbiAgICAuYnVzdC1vdXQtcmVzb3VyY2VzIC5idXN0LW91dC1jb250ZW50IHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgcGFkZGluZy10b3A6IDE1cHggIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIH1cblxuICAgICAgLnJlc291cmNlLWxpc3QsIC5tb3JlX2xpbmtzX2xpc3Qge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgICBncmlkLWdhcDogMjBweDtcbiAgICAgICAgZ3JpZC1yb3ctZ2FwOiA0MHB4O1xuICAgICAgICBtYXJnaW46IDQwcHggMCAzMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIFxuICAgICAgICBsaSB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgIFxuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgICAgICBncmlkLWdhcDogMjBweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAxO1xuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gNDtcbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5tb3JlX2xpbmtzX2xpc3QuaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTQwcHgpIHtcbiAgICAgICAgXG4gICAgICAgIC5yZXNvdXJjZS1saXN0LCAubW9yZV9saW5rc19saXN0IHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgICBcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg2LCAxZnIpO1xuICAgICAgICAgIFxuICAgICAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyA3O1xuICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogUHJvbW8gKi9cbiAgICAuYnVzdC1vdXQtcHJvbW8ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0FCQzFEQTtcblxuICAgICAgLmJ1c3Qtb3V0LWNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuICAgICNzdWJzY3JpYmUtc29jaWFsLWJhciB7XG4gICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogMTA0MHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLnN1YnNjcmliZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNjUlO1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBtYXJnaW46IDAgMCAwIDMwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiA3NHB4O1xuICAgICAgICAgIGhlaWdodDogNzRweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS0wMS0xMS1jaGFydGVycy1zdWJzY3JpYmUucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgbWFyZ2luOiAxNnB4IDIwcHggMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMTZweCAwIDVweCAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICYuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMCAwIDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnNvY2lhbCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JiY2RlMTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDE2cHggMCAxMnB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDAgM3B4IDAgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuXG4gICAgICAgICAgICAgICYudHdpdHRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLXR3aXR0ZXItMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmxpbmtlZGluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtbGlua2VkaW4tMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmZhY2Vib29rIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtZmFjZWJvb2stMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA0MHB4KSB7XG5cbiAgICAgICNzdWJzY3JpYmUtc29jaWFsLWJhciB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5zdWJzY3JpYmUge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICYuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbCB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIG1hcmdpbjogMzBweCAwIDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaDIge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMTVweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBTZXJ2aWNlcyAqL1xuICAgIC5idXN0LW91dC1zZXJ2aWNlcyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5O1xuXG4gICAgICAuYnVzdC1vdXQtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBwLmludHJvIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjlweDtcbiAgICAgIH1cblxuICAgICAgLmNvbHVtbnMge1xuICAgICAgICBjb2x1bW5zOiAyO1xuICAgICAgICBtYXJnaW46IDMwcHggMCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIHAuYnRuLXdyYXAge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuXG4gICAgICBhLmJ0biB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHggIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDhweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbS1icmVhaykge1xuICAgICAgICBcbiAgICAgICAgLmNvbHVtbnMge1xuICAgICAgICAgIGNvbHVtbnM6IDE7XG4gICAgICAgIH1cbiAgICAgIFxuICAgICAgfVxuXG4gICAgICAuZ3JvdXAge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDJmciAxZnI7XG4gICAgICAgIGdyaWQtY29sdW1uLWdhcDogNDBweDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7XG4gICAgICAgIG1hcmdpbjogNDBweCAwIDAgMDtcbiAgICAgICAgcGFkZGluZzogNDBweCAwIDAgMDtcbiAgICAgICAgXG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBcbiAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gIFxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICBtYXJnaW46IDE1cHggMCAxNXB4IDQwcHg7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgN3B4IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDsgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgcGFkZGluZzogMjBweDsgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMjBweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtLWJyZWFrKSB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgICAgXG4gICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIEV4cGVydGlzZSAqL1xuICAgIC5idXN0LW91dC1leHBlcnRpc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0FCQzFEQTtcblxuICAgICAgLmJ1c3Qtb3V0LWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTVweCAhaW1wb3J0YW50O1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5leHBlcnRpc2UtY29udGFpbmVyIHtcblxuICAgICAgLnN1YnNjcmliZSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzRkM2U1O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNjVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IC00MHB4IDAgMCA0MHB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICB3aWR0aDogNjZweDtcbiAgICAgICAgICBoZWlnaHQ6IDY2cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzLzIwMTktMDEtMTEtY2hhcnRlcnMtc3Vic2NyaWJlLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNjZweCA2NnB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICM4MTlBQjY7XG4gICAgICAgICAgbWFyZ2luOiA1cHggMCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuXG4gICAgICAgICAgYS5idG4ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDhweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogNHB4IDhweCA0cHggOHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMCAzcHggMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG5cbiAgICAgICAgICAgICAgJi50d2l0dGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtdHdpdHRlci0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHggMzBweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYubGlua2VkaW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1saW5rZWRpbi0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHggMzBweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1mYWNlYm9vay0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHggMzBweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGgyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgOHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIHAuaW50cm8ge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICBociB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgICB9XG5cbiAgICAgIHAuY2xlYXJmaXgge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDMwcHggMCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEuYnRuIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogOHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIHAubGlua3Mge1xuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIOKAoiBcIjtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgfVxuICBcbiAgICAgIH1cblxuICAgIH1cblxuICAgIHVsLnRlYW0tc2xpZGVyIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDMwcHggMCAzMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwIDU1cHg7XG5cbiAgICAgIC5zbGljay10cmFjayB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG5cbiAgICAgIC5zbGlkZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMCAxNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbjogMTVweCAwIDEwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJpbyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEuYnRuIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHggIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuc2xpY2stcHJldixcbiAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgd2lkdGg6IDM4cHg7XG4gICAgICAgIGhlaWdodDogODFweDtcbiAgICAgICAgdG9wOiA0NSU7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgICAgIGhlaWdodDogODFweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDM4cHggODFweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgbGVmdDogMDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzLzIwMTktMDMtdHJhdW1hLXRlYW0tYXJyb3ctbGVmdC5zdmdcIik7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS0wMy10cmF1bWEtdGVhbS1hcnJvdy1yaWdodC5zdmdcIik7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcblxuICAgICAgLmV4cGVydGlzZS1jb250YWluZXIge1xuXG4gICAgICAgIC5zdWJzY3JpYmUge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQXJlYXMgb2YgV29yayAvIEZlYXR1cmVkIEluaXRpYXRpdmVzIC8gVHJhdW1hLWluZm9ybWVkIFByYWN0aWNlICYgUmVzaWxpZW5jZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkudHJhdW1hIHtcblxuICAjbWFpbl9jb250ZW50X3dyYXAge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbiAgI2NvbnRlbnQge1xuXG4gICAgcCB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIGEuYnRuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogOHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8qIE92ZXJ2aWV3ICovXG4gICAgLm92ZXJ2aWV3IHtcblxuICAgICAgaDIge1xuICAgICAgICBtYXJnaW46IDMwcHggMCAtNXB4IDA7XG4gICAgICB9XG5cbiAgICAgIC5mbGV4IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luOiAwIC0yMHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICBmbGV4OiAxIDEgNTAlO1xuICAgICAgICAgIG1hcmdpbjogMjBweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiA1NSU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDQ1JTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG5cbiAgICAgICAgLmZsZXgge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcblxuICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAyNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5wcm9tbyB7XG4gICAgICAgIGJvcmRlcjogNXB4IHNvbGlkICNFM0VDRjk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYigxMTAsMTY5LDIzNyk7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMTEwLDE2OSwyMzcsMSkgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMSkgMTAwJSk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwIDAgMzVweCAwO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5xdW90ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy8yMDE5LTAzLXRyYXVtYS1xdW90ZS0wNkVBOUVELnN2Z1wiKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDg4cHggNjJweDtcbiAgICAgICAgICB3aWR0aDogODhweDtcbiAgICAgICAgICBoZWlnaHQ6IDYycHg7XG4gICAgICAgICAgbWFyZ2luOiAwIDE1cHggMCAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnF1b3RlLXNvdXJjZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGNvbG9yOiAjQUJDMURBO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBHdWlkaW5nIFByaW5jaXBsZXMgKi9cbiAgICAuYnVzdC1vdXQtZ3VpZGluZyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuXG4gICAgICBoMiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICB9XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luOiAwIC0xMHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBmbGV4OiAxIDEgMDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgI0UzRUNGOTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG5cbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG8gQ29uZGVuc2VkXCI7XG4gICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgI0VFRjJGNztcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAxMnB4IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICM4RTlGQjU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAwMHB4KSB7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIG1hcmdpbjogMCAtM3B4O1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luOiAzcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogU2VydmljZXMgKi9cbiAgICAuYnVzdC1vdXQtc2VydmljZXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjJGNztcblxuICAgICAgaDIge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgfVxuXG4gICAgICBociB7XG4gICAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjZmZmO1xuICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgIH1cblxuICAgICAgLmZsZXgge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW46IDAgLTIwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgIGZsZXg6IDEgMSA1MCU7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDY1JTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgZmxleC1iYXNpczogMzUlO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgdWwuZm9jdXMge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgMjUlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSA3NSU7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgcC5jb250YWN0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC5mZWF0dXJlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgICBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOXB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCAzMHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuXG4gICAgICAgIC5mbGV4IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDIwcHggMDtcblxuICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5mZWF0dXJlZCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU1MHB4KSB7XG5cbiAgICAgICAgdWwuZm9jdXMgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogUmVzb3VyY2VzICovXG4gICAgLmJ1c3Qtb3V0LXJlc291cmNlcyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5O1xuXG4gICAgICBoMiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICB9XG5cbiAgICAgIC5mbGV4IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luOiAwIC0xMHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICBmbGV4OiAxIDEgMzMuMyU7XG4gICAgICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjM0Y1NDYwO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggMTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNBQkMxREE7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDEwcHggMDtcblxuICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC52aWRlbyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAuY292ZXIge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDEwcHggMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIHVsICsgaDMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG5cbiAgICAgICAgLmZsZXgge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuXG4gICAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIEltcGFjdCAqL1xuICAgIC5idXN0LW91dC1pbXBhY3Qge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzhFOUZCNTtcblxuICAgICAgLmJ1c3Qtb3V0LWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGgyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDYwcHg7XG4gICAgICAgIGxlZnQ6IDcwcHg7XG4gICAgICAgIG9wYWNpdHk6IC4zO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wIDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTA1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMDVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIG1hcmdpbjogMzMwcHggMCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC5mbGV4IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDEwMHB4O1xuXG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMTVweDtcblxuICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHsgZmxleDogMSAxIDEwMCU7IH1cbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7IGZsZXg6IDEgMSAzNSU7ICB9XG4gICAgICAgICAgJjpudGgtY2hpbGQoMykgeyBmbGV4OiAxIDEgNjUlOyAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHAucXVvdGUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDE5LTAzLXRyYXVtYS1pbXBhY3QtcXVvdGUuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcC5xdW90ZS1zb3VyY2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBwLnF1b3RlIHtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTRweCAwIDAgMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcC5xdW90ZS1waWMge1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAucXVvdGUtc291cmNlIHtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICBwLnF1b3RlIHtcbiAgICAgICAgICAgICAgZmxleDogMSAxIDEwMCU7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyMHB4IDA7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTRweCAwIDIwcHggNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwLnF1b3RlLXBpYyB7XG4gICAgICAgICAgICAgIGZsZXg6IDEgMSA0MCU7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcC5xdW90ZS1zb3VyY2Uge1xuICAgICAgICAgICAgICBmbGV4OiAxIDEgNjAlO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAwIDAgMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDc1cHg7XG5cbiAgICAgICAgICAgIHAucXVvdGUge1xuICAgICAgICAgICAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDAgMjBweCAzMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwLnF1b3RlLXBpYyB7XG4gICAgICAgICAgICAgIGZsZXg6IDEgMSA0MCU7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAucXVvdGUtc291cmNlIHtcbiAgICAgICAgICAgICAgZmxleDogMSAxIDYwJTtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMCAwIDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvKiB0ZW1wIGFkanVzdG1lbnQgZHVlIHRvIG5vIHBob3RvcyAqL1xuICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICBwLnF1b3RlLXNvdXJjZSB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICBwLnF1b3RlIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAucXVvdGUtc291cmNlIHtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cbiAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgcC5xdW90ZSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwLnF1b3RlLXNvdXJjZSB7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTIwcHgpIHtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgdG9wOiAtMjBweDtcbiAgICAgICAgICBmb250LXNpemU6IDgwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIC1vLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuZmxleCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAuaXRlbSxcbiAgICAgICAgICAuaXRlbTpudGgtY2hpbGQoMSksXG4gICAgICAgICAgLml0ZW06bnRoLWNoaWxkKDIpLFxuICAgICAgICAgIC5pdGVtOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBwLnF1b3RlLFxuICAgICAgICAgICAgcC5xdW90ZS1waWMsXG4gICAgICAgICAgICBwLnF1b3RlLXNvdXJjZSB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwLnF1b3RlIHtcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAucXVvdGUtcGljIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogVGVhbSAqL1xuICAgIC5idXN0LW91dC10ZWFtIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNBQkMxREE7XG5cbiAgICAgIC5idXN0LW91dC1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMjBweCAwIDQwcHggMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBoMiB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgfVxuXG4gICAgICAuZmxleCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbjogMCAtMjBweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgZmxleDogMSAxIDUwJTtcbiAgICAgICAgICBtYXJnaW46IDAgMjBweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiA3MCU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDMwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwLnN1YnNjcmliZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgI0QzREJFNjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDE5LTAxLTExLWNoYXJ0ZXJzLXN1YnNjcmliZS5wbmdcIikgbm8tcmVwZWF0IDEwcHggdG9wO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgOTVweDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgIHAuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjRDNEQkU2O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICBtYXJnaW46IDE1cHggMCAwIDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMCAwIDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGhyIHtcbiAgICAgICAgb3BhY2l0eTogLjM7XG4gICAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjRTNFQ0Y5O1xuICAgICAgICBtYXJnaW46IDQwcHggMDtcbiAgICAgIH1cblxuICAgICAgdWwudGVhbS1zbGlkZXIge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgNTVweDtcblxuICAgICAgICAuc2xpY2stdHJhY2sge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpZGUge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbjogMCAxNXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDAgMTBweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuYmlvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYS5idG4ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stcHJldixcbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgICAgIGhlaWdodDogODFweDtcbiAgICAgICAgICB0b3A6IDQ1JTtcblxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgICAgIGhlaWdodDogODFweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzhweCA4MXB4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLXByZXYge1xuICAgICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS0wMy10cmF1bWEtdGVhbS1hcnJvdy1sZWZ0LnN2Z1wiKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICByaWdodDogMjBweDtcblxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy8yMDE5LTAzLXRyYXVtYS10ZWFtLWFycm93LXJpZ2h0LnN2Z1wiKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBQcm9tbyAqL1xuICAgIC5idXN0LW91dC1wcm9tbyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQUJDMURBO1xuXG4gICAgICAuYnVzdC1vdXQtY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG4gICAgI3N1YnNjcmliZS1zb2NpYWwtYmFyIHtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDQwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAuc3Vic2NyaWJlIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA2MyU7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMzBweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDc0cHg7XG4gICAgICAgICAgaGVpZ2h0OiA3NHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDE5LTAxLTExLWNoYXJ0ZXJzLXN1YnNjcmliZS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICBtYXJnaW46IDE2cHggMjBweCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMTZweCAwIDVweCAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICYuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMTBweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5zb2NpYWwge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiAzMyU7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiYmNkZTE7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbjogMTZweCAwIDEycHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMCAzcHggMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG5cbiAgICAgICAgICAgICAgJi50d2l0dGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtdHdpdHRlci0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHggMzBweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYubGlua2VkaW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1saW5rZWRpbi0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHggMzBweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1mYWNlYm9vay0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHggMzBweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDQwcHgpIHtcblxuICAgICAgI3N1YnNjcmliZS1zb2NpYWwtYmFyIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLnN1YnNjcmliZSB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJi5zdWJzY3JpYmUge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuc29jaWFsIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMCAxNXB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBBcmVhcyBvZiBXb3JrIC8gRmVhdHVyZWQgSW5pdGlhdGl2ZXMgLyBDT1ZJRC0xOSBSZXNvdXJjZXMgYW5kIFNlcnZpY2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5jb3ZpZC0xOS1yZXNvdXJjZXMsXG5ib2R5LmNvdmlkLTE5LXNlcnZpY2VzIHtcblxuICAjbWFpbl9jb250ZW50X3dyYXAge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbiAgI2NvbnRlbnQge1xuXG4gICAgaDEge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogNDJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAzMHB4IDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM3cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvKiBPdmVydmlldyAqL1xuICAgIHNlY3Rpb24ub3ZlcnZpZXcge1xuXG4gICAgICAuZ3JvdXAge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIC8qIHRleHQgKi9cbiAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgNzAlO1xuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDkwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvKiBDRU8gKi9cbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgMzAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjJGNztcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMTVweCA1cHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOXB4O1xuICAgICAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMjVweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NDBweCkge1xuXG4gICAgICAgIC5ncm91cCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAuaXRlbSB7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcblxuICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTUwcHgpIHtcblxuICAgICAgICAuZ3JvdXAge1xuXG4gICAgICAgICAgLml0ZW06bnRoLWNoaWxkKDIpIHtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogVG9waWMgTGlzdCAqL1xuICAgIHNlY3Rpb24udG9waWMge1xuICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgIGdyaWQtZ2FwOiAyMHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVBNzk5QztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NDBweCkge1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NTBweCkge1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBTbGlkZXIgKi9cbiAgICBzZWN0aW9uLnNsaWRlciB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjQUJDMURBO1xuICAgICAgYm9yZGVyLXRvcDogMjBweCBzb2xpZCAjQUJDMURBO1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMTJweDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxMnB4O1xuICAgICAgbWFyZ2luOiA1MHB4IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDUwcHggMjBweCAhaW1wb3J0YW50O1xuXG4gICAgICB1bC5jb3ZpZC1zbGlkZXIge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgNTVweDtcblxuICAgICAgICAvKiBoaWRlIGFycm93cyAqL1xuICAgICAgICAuc2xpY2stcHJldixcbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIHBhZ2luYXRpb24gKi9cbiAgICAgICAgLnNsaWNrLWRvdHMge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgN3B4O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMxNjY5Qzk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOjpiZWZvcmUge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTY2OUM5O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuc2xpZGUge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbjogMCAxNXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnRodW1ibmFpbCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiAzNSU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDI1cHggMCAwO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiYmNlZWE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA2NSU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgN3B4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NzVweCkge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcblxuICAgICAgICAgIC5zbGlkZSB7XG5cbiAgICAgICAgICAgIC50aHVtYm5haWwsXG4gICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGh1bWJuYWlsIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIGJ1c3Qgb3V0ICovXG4gICAgLmJ1c3Qtb3V0LXRvcGljIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC5idXN0LW91dC10b3BpYy5zaGFkZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5O1xuXG4gICAgICAuaXRlbSwgLm1ldGEge1xuICAgICAgICBib3JkZXItY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjUwcHgpIHtcblxuICAgICAgICAuYnVzdC1vdXQtY29udGVudCB7XG4gICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBwcm9tbyAqL1xuICAgIC5idXN0LW91dC1jb25uZWN0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzRjY0OEY7XG5cbiAgICAgIC5jb25uZWN0LWNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogNjUwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAuaWNvbiB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogOTRweDtcbiAgICAgICAgaGVpZ2h0OiA5NHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24td3JpdGUtZmlsbGVkLnBuZykgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgbWFyZ2luOiAwIDMwcHggMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICBtYXJnaW46IDAgMCA0cHggMDtcbiAgICAgICAgcGFkZGluZzogNXB4IDAgMCAwO1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgYS5idG4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnNvY2lhbCB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDE4NXB4O1xuXG4gICAgICAgIHAuYnRuLWNvbnRhaW5lciB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMTc1cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEuYnRuIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzNhNmQ5ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMCA4cHggMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogMzdweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAzN3B4O1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgJi50d2l0dGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtdHdpdHRlci0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYubGlua2VkaW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1saW5rZWRpbi0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1mYWNlYm9vay0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuc29jaWFsIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgcC5idG4tY29udGFpbmVyLFxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBUb3BpYyAqL1xuICAgIC5idXN0LW91dC10b3BpYyxcbiAgICAuYnVzdC1vdXQtc2VydmljZXMge1xuXG4gICAgICAuYnVzdC1vdXQtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAuZ3JvdXAge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNFM0VDRjk7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleDogMSAxIDgwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweCAwIDA7XG5cbiAgICAgICAgICAgIC50aHVtYm5haWwsXG4gICAgICAgICAgICAudGh1bWJuYWlsLXdpZGUge1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE0MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiYmNlZWE7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDIwcHggMTVweCAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGh1bWJuYWlsLXdpZGUge1xuXG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMnB4IDAgMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAwIDIwcHg7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDZweCAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm1ldGEge1xuICAgICAgICAgICAgZmxleDogMSAxIDIwJTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgI2ZmZjtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XG5cbiAgICAgICAgICAgIGEuYnRuIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogOHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICM2RUE5RUQ7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDJweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAmLmJ0bi1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwIDAgMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLyogc2hvdyBoaWRlICovXG4gICAgICAgIC5tb3JlX2xpbmtzIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMjJweCAhaW1wb3J0YW50OyAvKiB0byBjb3ZlciB0aGUgbGluZSBhYm92ZSBpdCAqL1xuICAgICAgICB9XG4gICAgICBcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTQwcHgpIHtcblxuICAgICAgICAuZ3JvdXAge1xuXG4gICAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1ldGEge1xuICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwIDAgMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICBhLmJ0biB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIENPVklELTE5IFNlcnZpY2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5jb3ZpZC0xOS1zZXJ2aWNlcyAjY29udGVudCB7XG5cbiAgaDEge1xuICAgIG1heC13aWR0aDogNzUwcHg7XG4gIH1cblxuICBwLmJ0bi1jb250YWluZXIge1xuICAgIC8vIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgYS5idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cblxuICB9XG5cbiAgLyogT3ZlcnZpZXcgKi9cbiAgc2VjdGlvbi5vdmVydmlldyB7XG5cbiAgICAuZ3JvdXAge1xuXG4gICAgICAuaXRlbSB7XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuXG4gICAgICAgICAgcC5idG4tY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG5cbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAyMC0wNC1jb3ZpZDE5LXJlc291cmNlcy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDIwcHggOTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwLmJ0bi1jb250YWluZXIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogc2xpZGVyICovXG4gIHNlY3Rpb24uc2xpZGVyIHVsLmNvdmlkLXNsaWRlciAuc2xpZGUgLmNvbnRlbnQgcC5idG4tY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLyogc2VydmljZXMgKi9cbiAgLmJ1c3Qtb3V0LXNlcnZpY2VzIHtcblxuICAgIGgyIHtcbiAgICAgIG1hcmdpbjogMjVweCAwO1xuICAgIH1cblxuICAgIC5ncm91cCB7XG5cbiAgICAgIC5pdGVtIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuXG4gICAgICAgIC5jb250ZW50IHtcblxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDE0cHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmLmhhcy1wcm9tbyB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIHByb21vICovXG4gICAgICAgICYucHJvbW8ge1xuICAgICAgICAgIGJvcmRlcjogNHB4IHNvbGlkICNmZmY7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBtYXJnaW46IDIwcHggMCAzNXB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIC5wcm9tby1oZWFkZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgICAgICBmbGV4OiAxIDEgMjAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE2NXB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIGNsaXAtcGF0aDogY2lyY2xlKDgwcHggYXQgY2VudGVyKTtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAucHJvbW8tY29udGVudCB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgODAlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDIzcHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcC5idG4tY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFdlc3RFZCBFeHBlcnRzIChTaGFyZWQpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3dlc3RlZC1leHBlcnRzIHtcblxuICAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiA0MHB4IDIwcHggNDBweCAyMHB4O1xuICB9XG5cbiAgLmV4cGVydHMtaW50cm8ge1xuXG4gICAgaDMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG5cbiAgfVxuXG4gIC5leHBlcnQtcGhvdG8ge1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gIH1cblxuICAuc2xpZGUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZXhwZXJ0LWNvbnRlbnQge1xuICAgIHdpZHRoOiA4MyU7XG5cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnk7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiAjNTQ2Qjg1O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDBcbiAgICB9XG5cbiAgfVxuXG4gIC8qIHBhZ2luYXRpb24gKi9cbiAgLmJ4LWNvbnRyb2xzIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDU3MHB4O1xuXG4gICAgLmJ4LXBhZ2VyIHtcbiAgICAgIG1hcmdpbjogMTBweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcblxuICAgIC5jb250YWluZXIge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLmV4cGVydC1waG90bywgLmV4cGVydC1jb250ZW50IHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgfVxuXG4gICAgLmV4cGVydC1waG90byB7XG4gICAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICAgIH1cblxuICAgIC5leHBlcnRzLWludHJvIHAge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNlYXJjaCAmIEV2YWx1YXRpb24gLyBXaGF0IFdlIERvXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5yZXNlYXJjaC1ldmFsdWF0aW9uLnBhZ2UtcmVzZWFyY2gtZXZhbHVhdGlvbiB7XG5cbiAgaDIge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgY29sb3I6ICM1MUFGNDY7XG4gICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvKiBiaWcgb2xlIGNoYXJ0ICovXG4gIC5jaGFydCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA5OTdweDtcbiAgICBoZWlnaHQ6IDEwODhweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3ImZS13aGF0d2Vkby1jaGFydC5wbmcpIG5vLXJlcGVhdCAwIDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuYm94MSxcbiAgICAuYm94MixcbiAgICAuYm94MyxcbiAgICAuYm94NCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMzUwcHg7XG5cbiAgICAgIHAsIGxpIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjNTQ2Yjg1O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3ImZS1idWxsZXQucG5nXCIpIG5vLXJlcGVhdCAwIDJweDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxOHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDAgMjBweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGEuYnRuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMTJweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA2cHggMTZweCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmJveDEge1xuICAgICAgdG9wOiAxOTBweDtcbiAgICAgIGxlZnQ6IDQ4cHg7XG4gICAgICBoZWlnaHQ6IDMwMHB4O1xuICAgIH1cblxuICAgIC5ib3gyIHtcbiAgICAgIHRvcDogNTgwcHg7XG4gICAgICBsZWZ0OiA0OHB4O1xuICAgICAgaGVpZ2h0OiAzNzVweDtcbiAgICB9XG5cbiAgICAuYm94MyB7XG4gICAgICB0b3A6IDE4NXB4O1xuICAgICAgbGVmdDogNTk1cHg7XG4gICAgICBoZWlnaHQ6IDMzNXB4O1xuICAgIH1cblxuICAgIC5ib3g0IHtcbiAgICAgIHRvcDogNjE1cHg7XG4gICAgICBsZWZ0OiA1OTVweDtcbiAgICAgIGhlaWdodDogMjI1cHg7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDQwcHgpIHtcblxuICAgIC8qIGZpcnN0IHJlc2V0IGFsbCB0aGF0IHN0eWxpemF0aW9uICovXG4gICAgLmNoYXJ0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgLnNyLW9ubHkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICB9XG5cbiAgICAgIC5ib3gxLFxuICAgICAgLmJveDIsXG4gICAgICAuYm94MyxcbiAgICAgIC5ib3g0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG5cbiAgICAgIC8qIG5leHQgcmVzZXQgdG8gZGVmYXVsdHMgKi9cbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICM1NDZiODUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgaDQge1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMjVweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjNTQ2Yjg1ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHggMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIHAsIGxpIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICM1NDZiODUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICBtYXJnaW46IDAgMCAwIDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvciZlLWJ1bGxldC5wbmdcIikgbm8tcmVwZWF0IDAgNHB4O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDE4cHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogUmVzZWFyY2ggJiBFdmFsdWF0aW9uIC8gV2hhdCBXZSBEbyBTdWJwYWdlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkucGFnZS10ZW1wbGF0ZS1yZXNlYXJjaC1ldmFsdWF0aW9uIHtcblxuICAjbWFpbl9jb250ZW50X3dyYXAgI2NvbnRlbnQgcCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAjY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNzBweDtcblxuICAgICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIHAuaW50cm8ge1xuICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5O1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAxOHB4IDA7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItcHJpbWFyeTtcbiAgICAgICAgbWFyZ2luOiAyNXB4IDAgMzBweCAwO1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDAgMCAwO1xuICAgICAgfVxuXG4gICAgICAvKiB0d28gY29sIHBvcnRpb24gYXQgYm90dG9tICovXG4gICAgICAudHdvLWNvbCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMjAwcHg7XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbjtcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIC0yMDBweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIGluZm8gYm94ICovXG4gICAgICAuaW5mbyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA0NXB4O1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDIzMHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDg1cHggMzBweCAyMHB4IDMwcHg7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAtNDVweDtcbiAgICAgICAgICBsZWZ0OiA1NHB4O1xuICAgICAgICAgIHdpZHRoOiAxMTlweDtcbiAgICAgICAgICBoZWlnaHQ6IDExOXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29uLW1vcmUtaW5mby1pLnBuZ1wiKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAmLmJ0biB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBjb2xvcjogJHdlc3RlZC1saWdodC1ibHVlO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAmLmJ0biB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVBNzk5QztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuXG4gICAgICAuY29udGVudCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbjogMzBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcblxuICAgICAgICAgICAgJi5idG4ge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG5cbiAgICAgIC5jb250ZW50IHtcblxuICAgICAgICAudHdvLWNvbCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICAgICAgaDQge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogUmVzZWFyY2ggJiBFdmFsdWF0aW9uIC8gSG93IFdlIENhbiBIZWxwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wYWdlLXRlbXBsYXRlLXJlLWhvdy1wYWdlICNtYWluX2NvbnRlbnRfd3JhcCB7XG5cbiAgLmFjY29yZGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuXG4gICAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQUJDMURBO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMjBweCAwIDE4cHggMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIGgzLnNob3doaWRlIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgICAgY29sb3I6ICM2RUE5RUQ7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXBsdXMtYmx1ZS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgNXB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDM1cHg7XG5cbiAgICAgICAgJi5hcnJvd0Nsb3NlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1taW51cy1ibHVlLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnNob3doaWRlLWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgNXB4IDUwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC5pbm5lci1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCAzNXB4O1xuICAgICAgfVxuXG4gICAgICAubC1ibG9jayB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNTUlO1xuICAgICAgfVxuXG4gICAgICAuci1ibG9jayB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIH1cblxuICAgICAgLmRlc2Mge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5jb250YWN0IHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MzBweDtcbiAgICAgICAgaGVpZ2h0OiA5OHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMjBweCAyNXB4O1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDE1cHggMTVweCA3NXB4O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgICBsZWZ0OiAtNDBweDtcbiAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1tb3JlLWluZm8taS1zbS5wbmdcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgY29sb3I6ICM4MTlBQjY7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGJsb2NrcXVvdGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1xdW90ZS1ncmVlbi5wbmdcIikgbm8tcmVwZWF0IHRvcCBsZWZ0O1xuICAgICAgICBtYXJnaW46IC0xMHB4IDAgMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAyMHB4IDMwcHg7XG5cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcIic7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBjaXRlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBjb2xvcjogIzgxOUFCNjtcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDYwcHg7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXDIwMTQgJztcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjBweCkge1xuXG4gICAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmNvbnRhY3Qge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIG1hcmdpbjogNDBweCAwIDAgMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbS1icmVhaykge1xuXG4gICAgLmFjY29yZGlvbiB7XG5cbiAgICAgIC5hY2NvcmRpb24taXRlbSB7XG5cbiAgICAgICAgLmwtYmxvY2ssXG4gICAgICAgIC5yLWJsb2NrIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIGJsb2NrcXVvdGUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc2VhcmNoICYgRXZhbHVhdGlvbiAvIFJlcG9ydHMgJiBQdWJsaWNhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcmUtcmVwb3J0c19wdWItcGFnZSB7XG5cbiAgLnNlYXJjaC1yZXN1bHRzIHtcblxuICAgIGRpdi5zZWFyY2gge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMjUlO1xuXG4gICAgICBoMiB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogIzU0NkI4NTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICBociB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luOiA0MHB4IDA7XG4gICAgICB9XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBjbGVhcjogbGVmdDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOXB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM4MTlBQjY7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2VzdGVkLWJhYnktYmx1ZTtcbiAgICAgICAgICAgIG1hcmdpbjogMXB4IDhweCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiA3cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdYJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgICAgICAgbGVmdDogNHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuODtcbiAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWVsZWN0cmljLWJsdWU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTkwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjNUE3OTlDO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjRweDtcbiAgICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xuICAgICAgICBwYWRkaW5nOiA2cHggMTZweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnJlc3VsdHMge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDcwJTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYS50aHVtYm5haWwge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMTUlO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMzBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDAgMCAwO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICBib3gtc2hhZG93OiA2cHggNnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5mcG9zdF9jb250ZW50IHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIHAuY3JpdGVyaWEge1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDM1cHggMCAxMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBtYXJnaW46IDAgNnB4O1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICAmLnByZXYsICYubmV4dCB7XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYucHJldiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tYXJyb3ctbGVmdC1wdXJwbGUucG5nKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYubmV4dCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tYXJyb3ctcmlnaHQtcHVycGxlLnBuZykgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4uY3VycmVudCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiNGIxYTY7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZjJmNztcbiAgICAgICAgICBwYWRkaW5nOiAycHggNnB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIG1hcmdpbjogMCA2cHg7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MHB4KSB7XG5cbiAgICAuc2VhcmNoLXJlc3VsdHMge1xuXG4gICAgICBkaXYuc2VhcmNoLFxuICAgICAgLnJlc3VsdHMge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBociB7XG4gICAgICAgICAgbWFyZ2luOiAxNXB4IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAucmVzdWx0cyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcyMHB4KSB7XG5cbiAgICAuc2VhcmNoLXJlc3VsdHMge1xuXG4gICAgICAucmVzdWx0cyB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICB1bCBsaSAuZnBvc3RfY29udGVudCB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc2VhcmNoICYgRXZhbHVhdGlvbiAvIFdlc3RFZCBJbnNpZ2h0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkucGFnZS10ZW1wbGF0ZS1yZS1yZXNlYXJjaF9ibG9nLXBhZ2Uge1xuXG4gIC5ibG9nIHtcblxuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICBncmlkLWdhcDogMzBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgYS50aHVtYm5haWwge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgICAgbWluLXdpZHRoOiAxNzBweDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDE3MHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmZwb3N0X2NvbnRlbnQge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiA1NSU7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBwLnBvc3RfZGF0ZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogIzZFQTlFRCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBtYXJnaW46IDAgNnB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICYucHJldiwgJi5uZXh0IHtcbiAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5wcmV2IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tYXJyb3ctbGVmdC1wdXJwbGUucG5nKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5uZXh0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tYXJyb3ctcmlnaHQtcHVycGxlLnBuZykgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIHNwYW4uY3VycmVudCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2I0YjFhNjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZjJmNztcbiAgICAgICAgcGFkZGluZzogMnB4IDZweDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBtYXJnaW46IDAgNnB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5ODVweCkge1xuXG4gICAgLmJsb2cge1xuXG4gICAgICB1bCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzZweCkge1xuXG4gICAgLmJsb2cge1xuXG4gICAgICB1bCB7XG5cbiAgICAgICAgbGkge1xuXG4gICAgICAgICAgYS50aHVtYm5haWwge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZnBvc3RfY29udGVudCB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qXG5cblByb2Zlc3Npb25hbCBEZXZlbG9wbWVudCAmIFRlY2huaWNhbCBBc3Npc3RhbmNlIG5vdGU6IHRoZXNlIHVzZWQgdG8gYmUgb25lIHBhZ2Ugd2l0aCB0aGUgYm9keSBjbGFzcyBcInBsdGFcIiwgYW5kIGhhdmUgc3R5bGluZyB0aGF0IHN0aWxsIGxpdmVzIGluIHBsdGEuc2NzcyBhbmQgL2Nzcy9zZXJ2aWNlbGlzdC5jc3NcblxuKi9cblxuXG4vKiBQcm9mZXNzaW9uYWwgRGV2ZWxvcG1lbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnByb2Zlc3Npb25hbC1kZXZlbG9wbWVudCB7XG5cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcblxuICAgICNjb250ZW50IHtcbiAgXG4gICAgICAud3JhcCB7XG4gICAgICAgIG1heC13aWR0aDogMTA0MHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogNDBweCAyMHB4OyAgICAgIFxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0FCQzFEQTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDEycHggMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgICBcbiAgICB9XG5cbiAgfVxuXG4gIC8qIEZlYXR1cmVkICovXG4gICNmZWF0dXJlZC1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIFxuICAgIC5jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiAxMDQwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHBhZGRpbmc6IDMwcHggMjBweCAxMHB4IDIwcHg7XG4gICAgfVxuXG4gICAgLmJ4LXdyYXBwZXIgLmJ4LXBhZ2VyIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gIH1cblxuICAvKiBmaWx0ZXJzICovXG4gIC5zZXJ2aWNlLWZpbHRlcnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICBoZWlnaHQ6IDMzcHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA0cHggMTJweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmZhY2V0d3AtY2hlY2tib3gge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAzcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICB9XG4gICAgXG4gICAgLmZhY2V0d3AtZmFjZXQge1xuICAgICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIHNvcnQgYmFyICovXG4gIC5yZXN1bHQtc29ydC1iYXIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogNzAlO1xuICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLmZhY2V0d3AtY291bnRzIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuZmFjZXR3cC1zZWxlY3Rpb25zIHtcbiAgICAgIG1hcmdpbjogMTVweCAwIDAgMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5mYWNldHdwLXNlbGVjdGlvbi1sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5mYWNldHdwLXNlbGVjdGlvbi12YWx1ZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBwYWRkaW5nOiA3cHggMzBweCA3cHggMTVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTBweCBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9wZC1pY29uLWNsb3NlLnBuZ1wiKTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogZW50cmllcyAqL1xuICAjbWFpbl9jb250ZW50X3dyYXAgLnNlcnZpY2UtZW50cmllcyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiA3MCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuc2VydmljZS1pdGVtIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM2RUE5RUQ7XG4gICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAuaXRlbS1tYWluIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICB9XG4gICAgXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAyM3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIFxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIHAge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBcbiAgICAgICYuZXhjZXJwdCB7XG4gICAgICB9XG4gICAgICBcbiAgICAgICYudGVybXMge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMTJweDsgICAgICAgIFxuICAgICAgfVxuICAgICAgXG4gICAgfVxuXG4gIH1cblxuICAvKiBwYWdpbmF0aW9uICovXG4gIC5mYWNldHdwLXBhZ2VyIHtcbiAgICB3aWR0aDogNzAlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBjbGVhcjogYm90aDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgY29sb3I6ICMxNjY5Yzk7XG4gICAgfVxuICAgIFxuICAgIGEuYWN0aXZlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiNGIxYTY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuICAgICAgcGFkZGluZzogMnB4IDhweDtcbiAgICB9XG4gICAgXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NTBweCkge1xuICAgIFxuICAgIC5zZXJ2aWNlLWZpbHRlcnMsXG4gICAgLnJlc3VsdC1zb3J0LWJhcixcbiAgICAuc2VydmljZS1lbnRyaWVzIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIFxuICB9XG5cbn1cblxuXG4vKiBUZWNobmljYWwgQXNzaXN0YW5jZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkudGVjaG5pY2FsLWFzc2lzdGFuY2Uge1xuXG4gIC8qIGNvbnRlbnQgKi9cbiAgI21haW5fY29udGVudF93cmFwIHtcblxuICAgIC5ib3R0b20ge1xuXG4gICAgICBoMiB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnk7XG4gICAgICAgIG1hcmdpbjogMCAwIDI1cHggMDtcbiAgICAgICAgcGFkZGluZzogMCAwIDdweCAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmZpbHRlciB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAyNSU7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBoMiB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnBsdGEtbGlzdCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB3aWR0aDogNzUlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAjcGFnaW5hdGlvbiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDM1cHggMCAxMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbjogMCA1cHggMCA1cHg7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICAgICYuYmVnaW5uaW5nLCAmLmVuZGluZyB7XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuYmVnaW5uaW5nIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1hcnJvdy1sZWZ0LXB1cnBsZS5wbmcpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5lbmRpbmcge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWFycm93LXJpZ2h0LXB1cnBsZS5wbmcpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2I0YjFhNjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MzBweCkge1xuXG4gICAgLmZlYXR1cmVkX2Z3IHtcblxuICAgICAgLmZlYXR1cmVkX2NvbnRlbnQge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg1MHB4KSB7XG5cbiAgICAuZmlsdGVyLCAucGx0YS1saXN0IHtcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuYm9keS5wYWdlLXRlbXBsYXRlLXRlY2huaWNhbC1hc3Npc3RhbmNlLWNoaWxkIHtcblxuICAjbWFpbl9jb250ZW50X3dyYXAge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgLnBhZ2UtY29udGVudCB7XG5cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDIwcHggMCAyMHB4IDQwcHg7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFNlcnZpY2UgRGV0YWlsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5zaW5nbGUtc2VydmljZSB7XG5cbiAgI2NvbnRlbnQge1xuICAgIHdpZHRoOiA3MyU7XG4gIH1cblxuICAvKiBRdW90ZSAqL1xuICAuZmVhdHVyZWRfZncge1xuXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXF1b3RlLXdoaXRlLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMCAwIDE2NXB4O1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyMDFEXCI7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBjaXRlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjODE5QUI2O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMCAwIDIyNXB4O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcMjAxM1xcMDBhMFwiO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogY29udGVudCAqL1xuICAuZW50cnktY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMDBweCAhaW1wb3J0YW50O1xuXG5cbiAgICBoMiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgMCAwIC0yMDBweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeTtcbiAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuYnJvY2h1cmUge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBhLnRodW1iIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJlZDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5zaG93aGlkZS1jb250YWluZXIge1xuICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLnNob3doaWRlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuc2hvd2hpZGU6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIH1cblxuICAgIC8qIENhbGwgdG8gQWN0aW9uICovXG4gICAgLmN0YSB7XG4gICAgICBtYXJnaW46IDIwcHggMCAwIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICM0MDU0NWY7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgIGNvbG9yOiAjNTY4YmI3O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogc2lkZWJhciAqL1xuICAjc2lkZWJhciB7XG4gICAgbWF4LXdpZHRoOiAyMzBweDtcblxuICAgICNzaWRlYmFyX3NpZGViYXJfY29udGFjdCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDM1cHggMCAwIDA7XG4gICAgICBwYWRkaW5nOiA3NXB4IDMwcHggMjBweCAzMHB4O1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtNDVweDtcbiAgICAgICAgbGVmdDogNTRweDtcbiAgICAgICAgd2lkdGg6IDExOXB4O1xuICAgICAgICBoZWlnaHQ6IDExOXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1tb3JlLWluZm8taS5wbmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB9XG5cbiAgICAgIC8qIG5hbWUgKi9cbiAgICAgIC5jb250YWN0SW5mbyB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5jb250YWN0X25hbWUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMTBweCAwIDVweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBwaG9uZSAqL1xuICAgICAgLnBob25lLWZheC1jb250YWluZXIge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAucGhvbmUge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGNvbG9yOiAjODE5QUI2ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuZW1haWwge1xuICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweCA1cHggMTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG5cbiAgICAjY29udGVudCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgICNzaWRlYmFyIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgICAjc2lkZWJhcl9zaWRlYmFyX2NvbnRhY3Qge1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmVtYWlsIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcblxuICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuXG4gICAgICBoMiB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuZmVhdHVyZWRfZncge1xuXG4gICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXDIwMUNcIjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGNpdGUge1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMCAwIDUwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIEhvbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5Lndvb2NvbW1lcmNlIHtcblxuICAvKiByb3dzICovXG4gIC5ib29rc3RvcmVfcm93IHtcbiAgICBtYXJnaW46IDEwcHggMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDIwcHggMCA0MHB4IDAgIWltcG9ydGFudDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8qIHNlY3Rpb24gbmFtZXMgKi9cbiAgICAuaGVhZGluZ19iYXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGg0IHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDI4cHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbiAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgcC52aWV3LW1vcmUge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAxMnB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogcHJvZHVjdHMgKi9cbiAgICB1bC5wcm9kdWN0cyB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgZ3JpZC1nYXA6IDMwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBAc3VwcG9ydHMgbm90IChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5pdGlhbCAhaW1wb3J0YW50O1xuICAgICAgICBjb250ZW50OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICAgICAgY29udGVudDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgbGkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuXG4gICAgICAgIEBzdXBwb3J0cyBub3QgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgcGFkZGluZzogMjVweDtcblxuICAgICAgICBkaXYuaW1nIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgIG1pbi13aWR0aDogMTY1cHg7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxNjVweDtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgICBtYXJnaW46IDAgMzBweCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIC50aHVtYm5haWwge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDZweCA2cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgZGl2LmluZm8ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiA1NCU7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBoMyxcbiAgICAgICAgICBwLnJlc291cmNlX2Rlc2NyaXB0aW9uLFxuICAgICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnJlc291cmNlX2Rlc2NyaXB0aW9uIHN0cm9uZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDMsIC5yZXNvdXJjZV90aXRsZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwLnJlc291cmNlX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5wcmljZSwgLmJ0bl9jdGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmJ0bl9jdGEge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIGEuYnV0dG9uIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogLjUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWluZGVudDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAxMnB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjM1ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDMycHgpIHtcblxuICAgIC5ib29rc3RvcmVfcm93IHVsLnByb2R1Y3RzIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXG4gICAgICBsaSB7XG5cbiAgICAgICAgZGl2LmluZm8ge1xuICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIwcHgpIHtcblxuICAgIC5ib29rc3RvcmVfcm93IHtcblxuICAgICAgLmhlYWRpbmdfYmFyIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgIGg0IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uLnZpZXdhbGwge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjBweCkge1xuXG4gICAgLmJvb2tzdG9yZV9yb3cgdWwucHJvZHVjdHMge1xuXG4gICAgICBsaSB7XG5cbiAgICAgICAgLmltZyB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGRpdi5pbmZvIHtcbiAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBOZXcgUmVsZWFzZXMsIEJlc3QgU2VsbGVycywgVG9wIERvd25sb2FkcywgRnJlZSwgUmVzZWFyY2ggKGFuZCBzaGFyZWQgd2l0aCBBT1cgUmVzb3VyY2VzKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkud29vY29tbWVyY2UudGF4LXByb2R1Y3RfY2F0IHtcblxuICAvKiBBT1cgRmlsdGVyICovXG4gIC5hb3ctZmlsdGVyLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMzBweDtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIHdpZHRoOiA0MDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5O1xuICAgIGJveC1zaGFkb3c6IDRweCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgZm9ybSNhb3ctZmlsdGVyIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGg0IHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiA4cHggMTVweDtcblxuICAgICAgICBzcGFuLmFycm93IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDE3cHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMXB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLWFycm93LWRvd24tcmVzb3VyY2VzLWFvdy1maWx0ZXIucG5nXCIpIG5vLXJlcGVhdCB0b3AgcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCA1cHg7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZmlsdGVycy1jbG9zZWQgc3Bhbi5hcnJvdyB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5mb3JtLWlubmVyIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTVweDtcblxuICAgICAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWYzZmI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDhweCAwIDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICBjb2xvcjogIzVBNzk5QztcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAjYW93LWZpbHRlci1idG4td3JhcCB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogNnB4IHNvbGlkICNlZWYzZmI7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAjYW93LWZpbHRlci1idG4ge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogZm9yY2Ugb3V0IG9mIHVsICovXG4gIC5maW5pdGVTY3JvbGwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYWdlLXRpdGxlIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtc2l6ZTogMjhweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuICFpbXBvcnRhbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgMCAyMHB4IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYm9va3N0b3JlX3JvdyB7XG4gICAgbWFyZ2luOiAzNXB4IDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgdWwucHJvZHVjdHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIHNwYW4ucHJvZHVjdF9pdGVtcyB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgIGdyaWQtZ2FwOiAzMHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIGxpIHtcblxuICAgICAgICBAc3VwcG9ydHMgbm90IChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBkaXYuaW1nIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtaW4td2lkdGg6IG5vbmU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxNjVweDtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgZGl2LmluZm8ge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbjogMjBweCAwIDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgLmJ0bl9jdGEgYS5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkwcHgpIHtcblxuICAgIC5ib29rc3RvcmVfcm93IHVsLnByb2R1Y3RzIHtcblxuICAgICAgc3Bhbi5wcm9kdWN0X2l0ZW1zIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NzBweCkge1xuXG4gICAgLmJvb2tzdG9yZV9yb3cgdWwucHJvZHVjdHMge1xuXG4gICAgICBzcGFuLnByb2R1Y3RfaXRlbXMge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgIH1cblxuICAgICAgbGkge1xuXG4gICAgICAgIGRpdi5pbWcge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuYW93LWZpbHRlci1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgZm9ybSNhb3ctZmlsdGVyIC5mb3JtLWlubmVyICNhb3ctZmlsdGVyLWJ0bi13cmFwIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5ib29rc3RvcmVfcm93IHtcblxuICAgICAgdWwucHJvZHVjdHMge1xuXG4gICAgICAgIC5maW5pdGVTY3JvbGwge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG4vKiBBT1cgRmlsdGVyZWQgKi9cbmJvZHkud29vY29tbWVyY2UudGF4LXByb2R1Y3RfY2F0LmFvdy1maWx0ZXIge1xuXG4gIGgxLnBhZ2UtdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hY3RpdmUtZmlsdGVycyB7XG4gICAgbWF4LXdpZHRoOiA1MjVweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAyOHB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW4gIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gIH1cblxufVxuXG4vKiBSZXNvdXJjZSBsaXN0aW5nIHBhZ2VzIG9ubHkgKHNpbmNlIHdlIGRvbid0IHdhbnQgdGhpcyBzdHlsaW5nIGFwcGxpZWQgdG8gb3RoZXIgc2VjdGlvbnMgdGhhdCB1c2UgL3dvb2NvbW1lcmNlL2NvbnRlbnQtcHJvZHVjdC5waHAgbGlrZSBBT1cgUmVzb3VyY2VzKSAqL1xuYm9keS50YXgtcHJvZHVjdF9jYXQge1xuXG4gIC5ib29rc3RvcmVfcm93IHVsLnByb2R1Y3RzIGxpIHtcblxuICAgIGRpdi5pbmZvIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgIC5idG5fY3RhIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgYS5idXR0b24ge1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIFJlc291cmNlIGxpc3RzIGRpc3BsYXllZCBlbHNld2hlcmUgKFByb2dyYW1zLCBBT1cpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS53b29jb21tZXJjZS5wYWdlLXRlbXBsYXRlLXByb2dyYW1fcmVzb3VyY2VsaXN0LFxuYm9keS53b29jb21tZXJjZS5wYWdlLXRlbXBsYXRlLWFvdy1yZXNvdXJjZWxpc3QtcGFnZSB7XG5cbiAgLmJvb2tzdG9yZV9yb3cgdWwucHJvZHVjdHMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAgNTBweCAwO1xuXG4gICAgc3Bhbi5wcm9kdWN0X2l0ZW1zIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgIGdyaWQtZ2FwOiAzMHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyAvKiBjc3MgZ3JpZCBmYWxsYmFjayAqL1xuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgZmxvYXQ6IGxlZnQ7IC8qIGNzcyBncmlkIGZhbGxiYWNrICovXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC8qIElFMTAsIElFMTEgKi9cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgfVxuXG4gICAgICBkaXYuaW1nIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiAxMDBweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBzcGFuLnRodW1ibmFpbCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIElFMTAsIElFMTEgKi9cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgICAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgICB3aWR0aDogMTUlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBkaXYuaW5mbyB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNzAlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLnByaWNlLFxuICAgICAgICAuYnRuX2N0YSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLyogSUUxMCwgSUUxMSAqL1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICAgICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgICAgICAgIHdpZHRoOiA4NSUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBmb3JjZSBvdXQgb2YgdWwgKi9cbiAgICAuZmluaXRlU2Nyb2xsIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkwcHgpIHtcblxuICAgIC5ib29rc3RvcmVfcm93IHVsLnByb2R1Y3RzIHtcblxuICAgICAgc3Bhbi5wcm9kdWN0X2l0ZW1zIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2NXB4KSB7XG5cbiAgICAuYm9va3N0b3JlX3JvdyB1bC5wcm9kdWN0cyB7XG5cbiAgICAgIGxpIHtcblxuICAgICAgICBkaXYuaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgZGl2LmluZm8ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5ib2R5Lndvb2NvbW1lcmNlLnBhZ2UtdGVtcGxhdGUtYW93LXJlc291cmNlbGlzdC1wYWdlIHtcblxuICAuYm9va3N0b3JlX3JvdyB7XG5cbiAgICB1bC5wcm9kdWN0cyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5MHB4KSB7XG5cbiAgICAuYm9va3N0b3JlX3JvdyB7XG5cbiAgICAgIHVsLnByb2R1Y3RzIHtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogUmVzb3VyY2VzIC8gRGV0YWlsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCB7XG5cbiAgLyogbW9kYWwgYWxhIFJlbW9kYWwgKi9cbiAgLnJlbW9kYWwtd3JhcHBlciB7XG5cbiAgICAucmVtb2RhbC1jbG9zZSB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDI0cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjNTQ2Yjg1ICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICBwIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICM1NDZiODUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTRweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgb2wge1xuICAgIG1hcmdpbjogMCAwIDAgNDBweDtcbiAgfVxuXG4gIC8qIGFjY291bnQgdG9vbHMgKi9cbiAgI2FjY291bnQtdG9vbHMge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG1hcmdpbjogLTIwcHggMCAzMHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjJGNztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW46IDAgMCAwIDEwcHg7XG4gICAgICBwYWRkaW5nOiAycHggNnB4O1xuICAgIH1cblxuICB9XG5cbiAgLyogdGl0bGUgKi9cbiAgI3Jlc291cmNlX3RpdGxlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBoMSB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICBtYXJnaW46IDAgMCA2cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgcC5yZXNvdXJjZV9hdXRob3JzLFxuICAgIHAucmVzb3VyY2VfZWRpdG9ycyxcbiAgICBwLnJlc291cmNlX2hlbHBlcnMge1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIGNvbG9yOiAkd2VzdGVkLWxpZ2h0LWJsdWU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMXB4IDA7XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAkd2VzdGVkLWxpZ2h0LWJsdWU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIHByb2R1Y3QgY29udGVudCAqL1xuICAucHJvZHVjdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuc3VtbWFyeSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAuaW1hZ2VzIHtcbiAgICAgICAgd2lkdGg6IDIwJSAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDIwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1heC13aWR0aDogMTc1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBib3gtc2hhZG93OiA2cHggNnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIGl0ZW0gZGV0YWlscyAqL1xuICAgICAgICAjcHJpY2VfdG9wIHtcbiAgICAgICAgICBtYXJnaW46IDMwcHggMCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIC5jYXJ0X2JveF90b3Age1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICAgICAgICYubm9jaGFyZ2Uge1xuICAgICAgICAgICAgICAvLyBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI3Jlc291cmNlX2J0bkNhcnQge1xuICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTc1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmVzb3VyY2VfcHJpY2Uge1xuICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCI7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICBkZWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGlucyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLndvb2NvbW1lcmNlLVByaWNlLWFtb3VudCB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCI7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW4gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5kZXRhaWxzIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogNzklO1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIHAsIGxpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAjNTQ2Yjg1ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTRweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCA0MHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAvKiBzb2NpYWwgaWNvbnMgKi9cbiAgICAgICAgI2FkZFRoaXNCdXR0b25zIHtcbiAgICAgICAgICBtYXJnaW46IDMwcHggMCAzMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBhZGRpdGlvbmFsIGRldGFpbHMgaW4gc2hvdy9oaWRlICovXG4gICAgLmFkZGl0aW9uYWxfaW5mbyB7XG5cbiAgICAgIC8qIHRlc3RpbmcgKi9cbiAgICAgIC5wYWdlX2NvbnRlbnRfYm94X2JvZHlfdGV4dCB7XG4gICAgICAgIC8vIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAvKiBzZWN0aW9uICovXG4gICAgICAucGFnZV9jb250ZW50X2JveCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNBQkMxREE7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNvbGxhcHNlZCAucGFnZV9jb250ZW50X2JveF9oZWFkbGluZSBoMyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tcGx1cy1ibHVlLnBuZ1wiKSBuby1yZXBlYXQgMCAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLyogdGl0bGUgKi9cbiAgICAgICAgLnBhZ2VfY29udGVudF9ib3hfaGVhZGxpbmUge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogIzZFQTlFRCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tbWludXMtYmx1ZS5wbmdcIikgbm8tcmVwZWF0IDAgMjBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDIwcHggMzVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLyogY29udGVudCAqL1xuICAgICAgICAucGFnZV9jb250ZW50X2JveF9ib2R5X3RleHQge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMCA0MHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogUmVzb3VyY2UgRGV0YWlscyAqL1xuICAgICAgI3Jlc291cmNlLWRldGFpbHMge1xuXG4gICAgICAgIGg0IHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBjb2xvcjogIzU0NkI4NTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0X2luZm9ybWF0aW9uIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICBtYXJnaW46IDAgMTJweCAyMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcmV2aWV3cyB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgbWFyZ2luOiAwIDEycHggMjBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgICAjYm9va1ByZXZpZXcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXF1ZXN0cyB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgbWFyZ2luOiAwIDEycHggMjBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMTJweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiA0cHggOHB4IDRweCA4cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogUHJhaXNlICovXG4gICAgICAjZWRpdG9yaWFsX3JldmlldyB7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIC5xdW90ZV9jb250YWluZXIge1xuICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1xdW90ZS13aGl0ZS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDQwcHggMzBweCAxNjVweDtcblxuICAgICAgICAgICAgICAucXVvdGVfdGV4dCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1uYXZ5LWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLnF1b3RlX3NvdXJjZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM4MTlBQjYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCA3NXB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgY29udGVudDogXCItIFwiO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogUmVsYXRlZCBSZXNvdXJjZXMgKi9cbiAgICAgICNyZWxhdGVkX3Jlc291cmNlcyB7XG5cbiAgICAgICAgI2Nyb3NzLXNlbGxzIHtcbiAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICB1bC5wcm9kdWN0cyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgLy8gJjpiZWZvcmUsXG4gICAgICAgICAgICAvLyAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgLy8gICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAvLyAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICAvLyAgIH1cblxuICAgICAgICAgICAgLy8gICAmOmFmdGVyIHtcbiAgICAgICAgICAgIC8vICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgIC8vICAgfVxuXG4gICAgICAgICAgICAgIGRpdi5pbWcge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNSU7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMzBweDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEzMHB4O1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDZweCA2cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgZGl2LmluZm8ge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgNnB4IDA7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAucmVzb3VyY2VfZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyMHB4KSB7XG5cbiAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuXG4gICAgICAgICAgICAgIGxpIHtcblxuICAgICAgICAgICAgICAgIGRpdi5pbWcge1xuICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgIC50aHVtYm5haWwge1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgZGl2LmluZm8ge1xuICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBSZWxhdGVkIFNlcnZpY2VzICovXG4gICAgICAjcmVsYXRlZF9zZXJ2aWNlcyB7XG5cbiAgICAgICAgdWwuc2VydmljZV9saXN0IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDZweCAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAuZXhjZXJwdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM1NDZiODU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NDBweCkge1xuXG4gICAgLyogcHJvZHVjdCBjb250ZW50ICovXG4gICAgLnByb2R1Y3Qge1xuXG4gICAgICAuc3VtbWFyeSB7XG5cbiAgICAgICAgLmltYWdlcyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmRldGFpbHMge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgI2hlYWRpbmdfZGVzY3JpcHRpb24ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBhZGRpdGlvbmFsIGRldGFpbHMgd2l0aCBzaG93L2hpZGUgKi9cbiAgICAgIC5hZGRpdGlvbmFsX2luZm8ge1xuXG4gICAgICAgIC5wYWdlX2NvbnRlbnRfYm94X2JvZHlfdGV4dCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAvKiBSZXNvdXJjZSBEZXRhaWxzICovXG4gICAgICAgICNyZXNvdXJjZS1kZXRhaWxzIHtcblxuICAgICAgICAgIC5wcm9kdWN0X2luZm9ybWF0aW9uLFxuICAgICAgICAgIC5yZXF1ZXN0cyxcbiAgICAgICAgICAucHJldmlld3Mge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjVweCkge1xuXG4gICAgLnBhZ2VfY29udGVudF9ib3guVHdvLWNvbHVtbiAucGFnZV9jb250ZW50X2JveF9ib2R5X3RleHQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuXG4gICAgLyogcHJvZHVjdCBjb250ZW50ICovXG4gICAgLnByb2R1Y3Qge1xuXG4gICAgICAvKiBhZGRpdGlvbmFsIGRldGFpbHMgd2l0aCBzaG93L2hpZGUgKi9cbiAgICAgIC5hZGRpdGlvbmFsX2luZm8ge1xuXG4gICAgICAgIC8qIFByYWlzZSAqL1xuICAgICAgICAjZWRpdG9yaWFsX3JldmlldyB7XG5cbiAgICAgICAgICB1bCB7XG5cbiAgICAgICAgICAgIGxpIHtcblxuICAgICAgICAgICAgICAucXVvdGVfY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogUmVzb3VyY2VzIC8gRGV0YWlsIC8gQ3VzdG9taXphdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIEZvc3RlcmluZyBDb2xsYWJvcmF0aW9uICovXG5ib2R5Lndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0LmZvc3RlcmluZy1jb2xsYWIge1xuXG4gIC5kZXNjcmlwdGlvbiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWF4LXdpZHRoOiA0ODBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5zdGFnZXMge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogMjc1cHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMjBweDtcblxuICAgIHVsIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMCAwIDEycHggMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC5wcm9kdWN0IC5zdW1tYXJ5IC5kZXRhaWxzIC5zdGFnZXMgcCB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wcm9kdWN0IC5zdW1tYXJ5IC5kZXRhaWxzIC5zdGFnZXMgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5yZW1vZGFsLXdyYXBwZXIge1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gICAgICAuaXRlbSB7XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgIGZsZXg6IDEgMSAwO1xuICAgICAgICAgIG1heC13aWR0aDogMTY1cHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuXG4gICAgICAgICAgLnRodW1iIHtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwLmJ1dHRvbiB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE1M3B4O1xuICAgICAgICAgICAgbWFyZ2luOiAxMnB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIGZsZXg6IDIgMSAwO1xuXG4gICAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgY29sb3I6ICM1NDZCODU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgM3B4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjNTQ2Qjg1O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgJi5ub3RlIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6ICMxNjY5Qzk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBociB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNBQkMxREE7XG4gICAgICAgICAgICBtYXJnaW46IDE1cHggMCAxNXB4IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NTBweCkge1xuXG4gICAgLnJlbW9kYWwtd3JhcHBlciB7XG5cbiAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgLml0ZW0ge1xuXG4gICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCAwIDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMTVweCkge1xuXG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgfVxuXG4gICAgLnN0YWdlcyB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogUmVzb3VyY2VzIC8gVXNlciBGbG93IChMb2dpbi9SZWdpc3RlciwgTXkgQWNjb3VudClcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5Lndvb2NvbW1lcmNlLWFjY291bnQge1xuXG4gIGJ1dHRvbi5idXR0b24ge1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDQycHg7XG4gICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIDEycHggMCAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjc1ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxuICAjY3VzdG9tZXJfbG9naW4ge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLW9yLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcblxuICAgIC5jb2wtMSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAuY29sLTIge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cblxuICAgIC5jb2wtMSxcbiAgICAuY29sLTIge1xuICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgIGhlaWdodDogMzcwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2VzdGVkLWxpZ2h0LWJsdWU7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIHAubWV0YSB7XG4gICAgICAgIGhlaWdodDogNTBweDtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBsYWJlbCAqL1xuICAgICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDEwcHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDZweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLyogaW5wdXQgKi9cbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgICAgICAgaGVpZ2h0OiA0MnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA0cHggMTJweCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiA0MnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiA1cHggMCAxMHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuXG4gICAgLmNvbC0xLFxuICAgIC5jb2wtMiB7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuY29sLTEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuY29sLTIge1xuICAgICAgbWFyZ2luLXRvcDogMTAwcHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIExvc3QgUGFzc3dvcmQgKi9cbiAgZm9ybS5sb3N0X3Jlc2V0X3Bhc3N3b3JkIHtcbiAgICBtYXgtd2lkdGg6IDUwJTtcblxuICAgIHAge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvKiBsYWJlbCAqL1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDEwcHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIDAgNnB4IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvKiBpbnB1dCAqL1xuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgIGhlaWdodDogNDJweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDRweCAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiA0MnB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDVweCAwIDEwcHggMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgI2NvbnRlbnQgaW5wdXQuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gIH1cblxuICAud29vY29tbWVyY2UtbWVzc2FnZSB7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAwIDIwcHggMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8qIE15IEFjY291bnQgLyBOYXYgKi9cbiAgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBjb2xvcjogIzE2NjljOSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAxNHB4IDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiA1cHggMCA1cHggMFxuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1hY3RpdmUgYSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICRib3JkZXItcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIE15IEFjY291bnQgLyBPcmRlcnMgKi9cbiAgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHtcblxuICAgIHRhYmxlLmFjY291bnQtb3JkZXJzLXRhYmxlIHtcblxuICAgICAgdGQud29vY29tbWVyY2Utb3JkZXJzLXRhYmxlX19jZWxsLW9yZGVyLWFjdGlvbnMge1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogN3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiAhaW1wb3J0YW50O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICB0YWJsZS5vcmRlcl9kZXRhaWxzIHtcbiAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblxuICAgICAgdGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxMHB4IDhweCAwO1xuICAgICAgfVxuXG4gICAgICB0Zm9vdCB7XG5cbiAgICAgICAgdGgge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBmb3JtLndvb2NvbW1lcmNlLUVkaXRBY2NvdW50Rm9ybSB7XG5cbiAgICAgIGZpZWxkc2V0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIGEuYnV0dG9uIHtcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgMCA3cHggMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIHAub3JkZXItYWdhaW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIE15IEFjY291bnQgLyBFZGl0IEFkZHJlc3MgKi9cbiAgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHtcblxuICAgIC53b29jb21tZXJjZS1hZGRyZXNzLWZpZWxkcyB7XG4gICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAud29vY29tbWVyY2UtYWRkcmVzcy1maWVsZHNfX2ZpZWxkLXdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgfVxuXG4gICAgICAvKiBsYWJlbCAqL1xuICAgICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDEwcHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDZweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLyogaW5wdXQgKi9cbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgaW5wdXRbdHlwZT1cInRlbFwiXSxcbiAgICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSB7XG4gICAgICAgIGhlaWdodDogNDJweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogNHB4IDEycHggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogNDJweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogNXB4IDAgMTBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnNlbGVjdDItY29udGFpbmVyIHtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBoZWlnaHQ6IDQycHggIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOSAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDRweCAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuc2VsZWN0Mi1jaG9pY2Uge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG5cbiAgICAgICAgICAuc2VsZWN0Mi1jaG9zZW4ge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDZweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuc2VsZWN0Mi1hcnJvdyB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAgICAgICBiIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogTXkgQWNjb3VudCAvIEFjY291bnQgRGV0YWlscyAqL1xuICAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQge1xuXG4gICAgLmVkaXQtYWNjb3VudCB7XG4gICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAvKiBsYWJlbCAqL1xuICAgICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDEwcHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDZweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLyogaW5wdXQgKi9cbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgICAgICAgaGVpZ2h0OiA0MnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA0cHggMTJweCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiA0MnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiA1cHggMCAxMHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIE15IENhcnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5Lndvb2NvbW1lcmNlLWNhcnQgI2NvbnRlbnQge1xuXG4gIC5jYXJ0LWVtcHR5OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5yZXR1cm4tdG8tc2hvcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHRhYmxlLnNob3BfdGFibGUge1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyOiBub25lO1xuXG4gICAgdGQge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogOHB4IDEwcHggOHB4IDA7XG4gICAgfVxuXG4gIH1cblxuICB0ZC5hY3Rpb25zIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxMnB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKiBidXR0b25zICovXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICBoZWlnaHQ6IDQycHggIWltcG9ydGFudDtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIDdweCAwIDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA0cHggMTJweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgaW5wdXQuYnV0dG9uLFxuICBidXR0b24uYnV0dG9uIHtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAxMnB4IDAgMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IC43NSAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgLmNyb3NzLXNlbGxzLCAuY2FydF90b3RhbHMge1xuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuXG4gIH1cblxuICAuY3Jvc3Mtc2VsbHMge1xuXG4gICAgdWwucHJvZHVjdHMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbjogMCAwIDI1cHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuaW1nIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuXG4gICAgICAgICAgLnRodW1ibmFpbCB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDc1JTtcblxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC5jYXJ0X3RvdGFscyB7XG5cbiAgICB0YWJsZSB7XG5cbiAgICAgIHRoLCB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDZweDtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1jb250YWluZXIge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIGlucHV0LmlucHV0LXRleHQge1xuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgI2NhbGNfc2hpcHBpbmdfcG9zdGNvZGVfZmllbGQ6YWZ0ZXIge1xuICAgICAgbGVmdDogOTBweDtcbiAgICB9XG5cbiAgICBwIGJ1dHRvbiB7XG4gICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAxMnB4IDAgMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC43NSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAud2MtcHJvY2VlZC10by1jaGVja291dCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBhIHtcbiAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogNDJweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogMjhweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAxMnB4IDAgMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC43NSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIENoZWNrb3V0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS53b29jb21tZXJjZS1jaGVja291dCAjY29udGVudCB7XG5cbiAgLyogaGlkaW5nIChvcHRpb25hbCkgZnJvbSBzdWJzY3JpYmUgbWVzc2FnZSAqL1xuICAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMge1xuXG4gICAgc3Bhbi5vcHRpb25hbCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICB9XG5cbiAgcCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gICN3Y21zX21lc3NhZ2Uge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLndvb2NvbW1lcmNlLWluZm8ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMTVweDtcblxuICAgICAgYS5idXR0b24ge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLndvb2NvbW1lcmNlLWluZm8ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxNXB4O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgfVxuXG4gIGZvcm0uY2hlY2tvdXRfY291cG9uIHtcblxuICAgIHAge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJi5mb3JtLXJvdy1maXJzdCB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB3aWR0aDogMTUwcHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAxNXB4IDdweCAwIDA7XG4gICAgICB9XG5cbiAgICAgICYuZm9ybS1yb3ctbGFzdCB7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogYnV0dG9ucyAqL1xuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgIGhlaWdodDogNDJweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgN3B4IDAgMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogNHB4IDEycHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBpbnB1dC5idXR0b24sXG4gICAgYnV0dG9uLmJ1dHRvbiB7XG4gICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAxMnB4IDAgMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC43NSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBoMyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XG4gICAgbWFyZ2luOiAyMHB4IDAgMTVweCAwO1xuICAgIHBhZGRpbmc6IDAgMCA2cHggMDtcbiAgfVxuXG4gIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyxcbiAgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyxcbiAgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIHtcblxuICAgIHAge1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLyogYnV0dG9ucyAqL1xuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwidGVsXCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuICAgICAgaGVpZ2h0OiA0MnB4ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIDdweCAwIDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDRweCAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgdGV4dGFyZWEge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDEycHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgdGFibGUuc2hvcF90YWJsZSB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgI3BheW1lbnQge1xuXG4gICAgcC50ZXJtcyB7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcblxuICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogNDJweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIDEycHggMCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjc1ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbmJvZHkucGFnZS1jaGVja291dCxcbmJvZHkucGFnZS1teS1hY2NvdW50IHtcblxuICAvKiBzdWJzY3JpYmUgcHJvbW8gb24gcmVjZWlwdCBwYWdlICovXG4gIHRhYmxlLmN1c3RvbS1maWVsZHMge1xuXG4gICAgdGgudGh3Y2ZlLXNlY3Rpb24tdGl0bGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgIH1cblxuICB9XG5cbn1cblxuYm9keS5wYWdlLWNoZWNrb3V0IHtcblxuICB0YWJsZS5vcmRlcl9kZXRhaWxzIHtcblxuICAgIHRkLmRvd25sb2FkLWZpbGUgYS5idXR0b24ge1xuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIHAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscy0tcGhvbmUsXG4gIHAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscy0tZW1haWwge1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCIgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIHN1YnNjcmliZSBwcm9tbyAqL1xuICBwI2VidWxsZXRpbl9zdWJzY3JpYmVfZmllbGQge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRib3JkZXItcHJpbWFyeTtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgbGFiZWwge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgfVxuXG59XG5cbmJvZHkucGFnZS1zaGlwcGluZy1hZGRyZXNzZXMge1xuXG4gIGEuYnRuLWltcG9ydC1iaWxsaW5nIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cblxuICBmb3JtLndjbXMtYWRkcmVzcy1mb3JtLFxuICBmb3JtI2FkZHJlc3NfZm9ybSB7XG5cbiAgICBsYWJlbCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAvKiBidXR0b25zICovXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0sIGlucHV0W3R5cGU9XCJ0ZWxcIl0sIGlucHV0W3R5cGU9XCJlbWFpbFwiXSB7XG4gICAgICBoZWlnaHQ6IDQycHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgN3B4IDAgMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogNHB4IDEycHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjkgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMTJweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgMTJweCAwIDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuNzUgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5zZWxlY3QyLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG4vKiBjaG9vc2Ugc2hpcHBpbmcgYWRkcmVzcyBwZXIgaXRlbSAqL1xuYm9keS5wYWdlLXNoaXBwaW5nLWFkZHJlc3NlcyB7XG5cbiAgI2NvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgYS5oMi1saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjNTFBRjQ2ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICB0YWJsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItcHJpbWFyeTtcbiAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgcGFkZGluZzogMCAwIDIwcHggMDtcblxuICAgIHRoIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAwIDEycHg7XG4gICAgfVxuXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogMTJweDtcblxuICAgICAgaW5wdXQge1xuICAgICAgICBwYWRkaW5nOiA0cHggMTJweDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgc21hbGwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxufVxuXG4vKiBPcmRlciByZWNlaXZlZCAqL1xuYm9keS53b29jb21tZXJjZS1vcmRlci1yZWNlaXZlZCxcbmJvZHkucGFnZS1jaGVja291dCB7XG5cbiAgdGguZG93bmxvYWQtZmlsZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgdGQuZG93bmxvYWQtZmlsZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYS5idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxuICB0YWJsZS5vcmRlcl9kZXRhaWxzIHRkLmRvd25sb2FkLWZpbGUgYS5idXR0b24ge1xuICAgIGNvbG9yOiAkbGluay1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIE9yZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkud29vY29tbWVyY2Utb3JkZXJzIHtcblxuICAvKiBoaWRlIFwiZ28gdG8gdGhlXCIgKi9cbiAgLndvb2NvbW1lcmNlLWluZm8gYS53b29jb21tZXJjZS1CdXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIERvd25sb2Fkc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkud29vY29tbWVyY2UtZG93bmxvYWRzIHtcblxuICAvKiBoaWRlIFwiZ28gdG8gdGhlXCIgKi9cbiAgLndvb2NvbW1lcmNlLWluZm8gYS53b29jb21tZXJjZS1CdXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIENhdGFsb2dzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS52MjAxNy1jYXRhbG9ncyAjY29udGVudCB7XG5cbiAgaDEge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIiAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMjhweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAzNHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgaDIge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAxNXB4IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICBwIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjNTQ2Yjg1O1xuICAgIG1hcmdpbjogMCAwIDE0cHggMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYS5idG4ge1xuICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIDEycHggMCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBociB7XG4gICAgYm9yZGVyLWNvbG9yOiAjQUJDMURBO1xuICAgIG1hcmdpbjogMjVweCAwO1xuICB9XG5cbiAgdWwuZ3JvdXAge1xuXG4gICAgbGkge1xuXG4gICAgICBzdHJvbmcge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjVweCkge1xuXG4gICAgdWwuZ3JvdXAge1xuXG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzg1cHgpIHtcblxuICAgIHAgYS5idG4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogUmVzb3VyY2VzIC8gSGVscFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkucGFnZS1yZXNvdXJjZXMtaGVscCB7XG5cbiAgLnRvYyB7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5jb2xMZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG5cbiAgICAuY29sUmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NjZweCkge1xuXG4gICAgLnRvYyB7XG5cbiAgICAgIC5jb2xMZWZ0LFxuICAgICAgLmNvbFJpZ2h0IHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIFJlcHJpbnQgUGVybWlzc2lvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtcmVwcmludC1wZXJtaXNzaW9ucyB7XG5cbiAgLmVudHJ5LWNvbnRlbnQge1xuXG4gICAgaDMge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnk7XG4gICAgfVxuXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDQwcHg7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIFdlYmluYXJzIEhvbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtd2ViaW5hcnMtaG9tZSB7XG5cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmJhciB7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAwIDMwcHggMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBVcGNvbWluZyBXZWJpbmFycyAqL1xuICAudXBjb21pbmcge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDMwcHggMCAwIDA7XG5cbiAgICAvKiB3ZWJpbmFyICovXG4gICAgLnBvc3Qge1xuICAgICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLmludHJvIHtcblxuICAgICAgICAuaW1nIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMTUwcHg7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDUwMHB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAyNXB4O1xuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICBjb2xvcjogIzU0NmI4NTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICYuYnV0dG9ucyB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEuYnRuIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMTJweCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuZGV0YWlscyB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5O1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAxNXB4O1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3B4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBSZWNlbnQgJiBQb3B1bGFyIFdlYmluYXJzICovXG4gIC53ZWJpbmFyc19hcmNoaXZlX2JhciB7XG5cbiAgICAucmVjZW50LCAucG9wdWxhciB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnk7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgMjBweCAwIDA7XG5cbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgY29sb3I6ICM2RUE5RUQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogIzU0NmI4NSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDI1cHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnBvcHVsYXIge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIH1cblxuICAgIC8qIHZpZXcgbW9yZSAqL1xuICAgIC52aWV3X21vcmVfYnRuIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiA0MHB4IDAgMCAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHggIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogN3B4IDEycHggN3B4IDEycHggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgJi5hcnJvd0Nsb3NlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTgwcHgpIHtcblxuICAgIC8qIFVwY29taW5nIFdlYmluYXJzICovXG4gICAgLnVwY29taW5nIHtcblxuICAgICAgLnBvc3Qge1xuXG4gICAgICAgIC5pbnRybywgLmludHJvIC5pbWcsIC5pbnRybyAuaW5mbywgLmRldGFpbHMge1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmludHJvIHtcblxuICAgICAgICAgIC5pbWcge1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmRldGFpbHMge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIFJlY2VudCAmIFBvcHVsYXIgV2ViaW5hcnMgKi9cbiAgICAud2ViaW5hcnNfYXJjaGl2ZV9iYXIge1xuXG4gICAgICAucmVjZW50LCAucG9wdWxhciB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC5wb3B1bGFyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIFdlYmluYXJzIEFyY2hpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtd2ViaW5hci1saXN0IHtcblxuICAvKiBvdXQgb2YgYm91bmRzIGgxICovXG4gICNjb250ZW50LXNpZGViYXItd3JhcCA+IC53cmFwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwNDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAtMTBweDtcbiAgICBwYWRkaW5nOiA0MHB4IDIwcHggMCAyMHB4O1xuXG4gICAgaDEge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAyNHB4ICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogMjhweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICM1MUFGNDYgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAwIDZweCAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIEZpbHRlciAqL1xuICAjZmlsdGVyLWJhciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICN3ZWJpbmFyX3NlYXJjaGZpbHRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICN3ZWJpbmFyX3NlYXJjaF9mb3JtIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGZpZWxkc2V0IHtcbiAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICBsZWdlbmQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaW5pdGlhbDtcbiAgICAgICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTlweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjODE5QUI2O1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3ZXN0ZWQtYmFieS1ibHVlO1xuICAgICAgICAgICAgICBtYXJnaW46IDFweCA4cHggMCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiA3cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIHNwYW46YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDogJ1gnO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgICAgICAgICBsZWZ0OiA0cHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuODtcbiAgICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZWxlY3RyaWMtYmx1ZTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogMTkwcHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgICAgIG1hcmdpbjogMXB4IDAgMCAwO1xuXG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDEycHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIFdlYmluYXIgTGlzdCAqL1xuICAuYXJ0aWNsZS1saXN0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNzUlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLyogc29ydCAqL1xuICAgIC5zb3J0X21lbnUge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgc3Ryb25nIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6ICMzRDYzOTA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTRweDtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW46IDAgMTRweCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwIDVweCAwO1xuXG4gICAgICAgICYuc29ydF9hY3RpdmUge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAjQUJDMURBICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogbGlzdCAqL1xuICAgIC5wcm9kdWN0X2l0ZW1zIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5wb3N0IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBwLnByZXNlbnRlcnMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGNvbG9yOiAjNTQ2Qjg1O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuZmluaXRlU2Nyb2xsIHtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkwcHgpIHtcblxuICAgICNmaWx0ZXItYmFyLFxuICAgIC53ZWJpbmFyLWFyY2hpdmUge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgbGFiZWwgc3BhbiB7XG4gICAgICAgIHdpZHRoOiA0MDBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLndlYmluYXItYXJjaGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBXZWJpbmFycyBEZXRhaWwgKFVwY29taW5nLCBBcmNoaXZlZClcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnVwY29taW5nX3dlYmluYXIsXG5ib2R5LmFyY2hpdmVkX3dlYmluYXIge1xuXG4gIC8qIHNvY2lhbCBpY29ucyAqL1xuICAuYWRkdGhpc190b29sYm94IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgICBtaW4taGVpZ2h0OiAyNXB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIHRpdGxlICovXG4gICNyZXNvdXJjZV90aXRsZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEwMDBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICN3ZWJpbmFyX3N1YnRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDE2cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjNkVBOUVEICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgMCA0cHggMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGgxLmVudHJ5LXRpdGxlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMjZweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDMycHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgIH1cblxuICB9XG5cbiAgLyogbWFpbiBjb250YWluZXIgKi9cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMTAwMHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgI2NvbnRlbnQge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxufVxuXG4vKiByZXNldCBzdHlsZXMgZm9yIEFyY2hpdmVkIFdlYmluYXJzIGFzIGl0IHNoYXJlcyBzYW1lIGJvZHkgY2xhc3MgYXMgd2ViaW5hciBkZXRhaWwgYXJjaGl2ZWQgKi9cbmJvZHkuYXJjaGl2ZWRfd2ViaW5hci5wYWdlLXRlbXBsYXRlLXdlYmluYXItbGlzdCB7XG5cbiAgLyogbWFpbiBjb250YWluZXIgKi9cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICBtYXgtd2lkdGg6IDEwNDBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogNDBweCAyMHB4ICFpbXBvcnRhbnQ7XG4gIH1cblxufVxuXG4vKiBVcGNvbWluZyAqL1xuYm9keS51cGNvbWluZ193ZWJpbmFyIHtcblxuICAvKiBmdWxsIGJsZWVkIGJsb2NrcyBhdCBib3R0b20gKi9cbiAgI2NvbnRlbnQtc2lkZWJhci13cmFwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKiBtYWluIGNvbnRhaW5lciAqL1xuICAjbWFpbl9jb250ZW50X3dyYXAge1xuXG4gICAgLyogbWV0YSAqL1xuICAgICN3ZWJpbmFyX3JlZ19pbmZvIHtcbiAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgLyogZGF0ZS90aW1lIGFuZCBmZWUgKi9cbiAgICAgICN3ZWJpbmFyX2RhdGVfdGltZSxcbiAgICAgICN3ZWJpbmFyX2ZlZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDI0cHggMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbiAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgMCA0cHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGEud2ViaW5hcl9yZWdpc3RyYXRpb25fdXJsIHtcbiAgICAgICAgZGlzcGxheTogaW5pdGlhbCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDE1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWluZGVudDogMCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMTJweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIGNvbnRlbnQgKi9cbiAgICAuZW50cnkge1xuICAgICAgY2xlYXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIC53ZWJpbmFyLXZpZGVvIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLnN1bW1hcnkge1xuXG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIH1cblxuICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIC8qIGNvbnRlbnQgKi9cbiAgICAgICAgLmRldGFpbHMge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDQ0MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLyogcHJlc2VudGVycyAqL1xuICAgICAgICAjd2ViaW5hcl9wcmVzZW50ZXJzIHtcbiAgICAgICAgICBjbGVhcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiAyNjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICM1NDZCODUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5wcmVzZW50ZXIge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyNXB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAucHJlc2VudGVyX25hbWUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcmVzZW50ZXJfaW5mbyB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB3aWR0aDogMTUwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgY29sb3I6ICM4MTlBQjYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgNHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgIC5wcmVzZW50ZXJfbmFtZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIGJ1dHRvbnMgKi9cbiAgICAgIC5idG4tZ3JvdXAge1xuICAgICAgICBjbGVhcjogYm90aCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDMwcHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LWluZGVudDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgMTJweCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBSZWxhdGVkIFNlcnZpY2VzICovXG4gICNyZWxhdGVkLXNlcnZpY2VzLFxuICAjcmVsYXRlZC1yZXNvdXJjZXMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3ZXN0ZWQtYmFieS1ibHVlO1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgIC5jb250YWluZXIge1xuXG4gICAgICAmOmJlZm9yZSxcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIH1cblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgfVxuXG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgbWF4LXdpZHRoOiAxMDQwcHggIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAyMHB4IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5tb3JlX2xpbmtzIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICB1bC5zZXJ2aWNlcy1saXN0LFxuICAgIHVsLnJlc291cmNlcy1saXN0IHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICBncmlkLWdhcDogMzBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICYuaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBoMyB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgNnB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogMzUwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIGNvbG9yOiAjNTQ2Yjg1O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogUmVsYXRlZCBSZXNvdXJjZXMgKi9cbiAgI3JlbGF0ZWQtcmVzb3VyY2VzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQUJDMURBO1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgIGgyIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA1MHB4KSB7XG5cbiAgICAuYWRkdGhpc190b29sYm94LFxuICAgICNyZXNvdXJjZV90aXRsZSxcbiAgICAjbWFpbl9jb250ZW50X3dyYXAsXG4gICAgI3JlbGF0ZWQtc2VydmljZXMgLmNvbnRhaW5lcixcbiAgICAjcmVsYXRlZC1yZXNvdXJjZXMgLmNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogOTUlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDY1cHgpIHtcblxuICAgICNyZWxhdGVkLXNlcnZpY2VzLFxuICAgICNyZWxhdGVkLXJlc291cmNlcyB7XG5cbiAgICAgIHVsLnJlc291cmNlcy1saXN0IGxpIHtcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgI3JlbGF0ZWQtcmVzb3VyY2VzIHtcblxuICAgICAgdWwucmVzb3VyY2VzLWxpc3Qge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIwcHgpIHtcblxuICAgICNtYWluX2NvbnRlbnRfd3JhcCB7XG5cbiAgICAgIC5lbnRyeSB7XG5cbiAgICAgICAgLnN1bW1hcnkge1xuXG4gICAgICAgICAgLmRldGFpbHMsXG4gICAgICAgICAgI3dlYmluYXJfcHJlc2VudGVycyB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAjd2ViaW5hcl9wcmVzZW50ZXJzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgLnByZXNlbnRlciB7XG5cbiAgICAgICAgICAgICAgLnByZXNlbnRlcl9pbmZvIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5MHB4KSB7XG5cbiAgICAjcmVsYXRlZC1zZXJ2aWNlcyB1bC5zZXJ2aWNlcy1saXN0IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzgwcHgpIHtcblxuICAgICNtYWluX2NvbnRlbnRfd3JhcCB7XG5cbiAgICAgICN3ZWJpbmFyX3JlZ19pbmZvLFxuICAgICAgLmVudHJ5IHtcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLmVudHJ5IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzBweCkge1xuXG4gICAgI3JlbGF0ZWQtcmVzb3VyY2VzIHtcblxuICAgICAgdWwucmVzb3VyY2VzLWxpc3QgbGkgLmluZm8ge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAjbWFpbl9jb250ZW50X3dyYXAge1xuXG4gICAgICAuZW50cnkge1xuXG4gICAgICAgIC5idG4tZ3JvdXAge1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuLyogQXJjaGl2ZWQgKi9cbmJvZHkuYXJjaGl2ZWRfd2ViaW5hciB7XG5cbiAgLyogbWFpbiBjb250YWluZXIgKi9cbiAgI21haW5fY29udGVudF93cmFwIHtcblxuICAgIC8qIGNvbnRlbnQgKi9cbiAgICAuZW50cnkge1xuXG4gICAgICAmOmJlZm9yZSxcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIH1cblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgfVxuXG4gICAgICBjbGVhcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgLyogdmlkZW8gKi9cbiAgICAgIC53ZWJpbmFyLXZpZGVvIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IDM4NXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogMzg1cHggIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDM4NXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuc3VtbWFyeSB7XG4gICAgICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogNTc1cHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAuZGV0YWlscyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICBoNCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1saWdodC1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA0cHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjNTQ2Qjg1ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDI0cHggMCA4cHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLyogcHJlc2VudGVycyAqL1xuICAgICAgICAjd2ViaW5hcl9wcmVzZW50ZXJzIHtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnk7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMjBweCAwIDIwcHggMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICM1NDZCODUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5wcmVzZW50ZXIge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiA0OCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAucHJlc2VudGVyX25hbWUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcmVzZW50ZXJfaW5mbyB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB3aWR0aDogMTYwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgY29sb3I6ICM4MTlBQjYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgNHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgIC5wcmVzZW50ZXJfbmFtZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIG1hdGVyaWFscyAqL1xuICAgICAgICAjd2ViaW5hci1tYXRlcmlhbHMge1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogIzU0NkI4NSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLndlYmluYXJfbWF0ZXJpYWxzX2NvbnRlbnQge1xuXG4gICAgICAgICAgICBpZnJhbWUge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBidXR0b25zICovXG4gICAgICAuYnRuLWdyb3VwIHtcbiAgICAgICAgY2xlYXI6IGJvdGggIWltcG9ydGFudDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogNTc1cHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1pbmRlbnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDEycHggMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA1MHB4KSB7XG5cbiAgICAuYWRkdGhpc190b29sYm94LFxuICAgICNyZXNvdXJjZV90aXRsZSxcbiAgICAjbWFpbl9jb250ZW50X3dyYXAsXG4gICAgI3JlbGF0ZWQtc2VydmljZXMgLmNvbnRhaW5lcixcbiAgICAjcmVsYXRlZC1yZXNvdXJjZXMgLmNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogOTUlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgI21haW5fY29udGVudF93cmFwIHtcblxuICAgICAgLmVudHJ5IHtcblxuICAgICAgICAud2ViaW5hci12aWRlbyxcbiAgICAgICAgLnN1bW1hcnkge1xuICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdW1tYXJ5IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAjd2ViaW5hcl9wcmVzZW50ZXJzIHtcblxuICAgICAgICAgICAgLnByZXNlbnRlciB7XG5cbiAgICAgICAgICAgICAgLnByZXNlbnRlcl9pbmZvIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XG5cbiAgICAjbWFpbl9jb250ZW50X3dyYXAge1xuXG4gICAgICAuZW50cnkge1xuXG4gICAgICAgIC5zdW1tYXJ5IHtcblxuICAgICAgICAgICN3ZWJpbmFyX3ByZXNlbnRlcnMge1xuXG4gICAgICAgICAgICAucHJlc2VudGVyIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5wcmVzZW50ZXJfaW5mbyB7XG5cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3MHB4KSB7XG5cbiAgICAjbWFpbl9jb250ZW50X3dyYXAge1xuXG4gICAgICAuZW50cnkge1xuXG4gICAgICAgIC5idG4tZ3JvdXAge1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuYm9keS51cGNvbWluZ193ZWJpbmFyICNyZWxhdGVkLXJlc291cmNlcyB7XG5cbiAgdWwucmVzb3VyY2VzLWxpc3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCAwIDIwcHggMDtcblxuICAgIGxpIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAudGh1bWIge1xuICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi13aWR0aDogMTAwcHggIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDBweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgMjBweCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLmluZm8ge1xuICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogNzAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA2NXB4KSB7XG5cbiAgICB1bC5yZXNvdXJjZXMtbGlzdCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTBweCkge1xuXG4gICAgdWwucmVzb3VyY2VzLWxpc3Qge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIFImRCBBbGVydFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkucGFnZS10ZW1wbGF0ZS1yZGFsZXJ0LWhvbWUge1xuXG4gICNjb250ZW50IHtcblxuICAgIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLyogc2xpZGVzaG93ICovXG4gICAgI3Nwb3RsaWdodF9zbGlkZXIge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLmJ4LXZpZXdwb3J0IHtcbiAgICAgICAgaGVpZ2h0OiAzNzBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAvKiBwYWdpbmF0aW9uICovXG4gICAgICAuYngtY29udHJvbHMge1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDMyNXB4O1xuICAgICAgICBoZWlnaHQ6IDI1cHg7XG5cbiAgICAgICAgLmJ4LXBhZ2VyIHtcbiAgICAgICAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAuYngtcGFnZXItaXRlbSBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9zbGlkZXJfY29udHJvbHNfc3ByaXRlX2JsdWUucG5nXCIpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBzbGlkZSAqL1xuICAgICAgLnNsaWRlIHtcblxuICAgICAgICAvKiBwaG90byAqL1xuICAgICAgICAuaW1nIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNjUwcHg7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAvKiBpbmZvICovXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgd2lkdGg6IDMyNXB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICM4MTlBQjY7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICAgIG1hcmdpbjogM3B4IDAgNnB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogcHJvbW8gKi9cbiAgICAucHJvbW8ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgIG1hcmdpbjogNDBweCAwIDQwcHggMDtcbiAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAxNXB4IDIwcHg7XG5cbiAgICAgIHAge1xuICAgICAgICB3aWR0aDogNzAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi13cml0ZS5wbmdcIikgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMCAxMHB4IDg1cHg7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICM2RUE5RUQ7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5idXR0b24ge1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAyOHB4IDUwcHggMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhLmJ0biB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAxMnB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBBZGRpdGlvbmFsIFImRCBBbGVydCBBcnRpY2xlcyAqL1xuICAgIC5hZGRpdGlvbmFsLXJkYWxlcnQtYXJ0aWNsZXMge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItcHJpbWFyeTtcbiAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgIHBhZGRpbmc6IDAgMCA0MHB4IDA7XG5cbiAgICAgIHVsLmFkZGxfcmRhbGVydHMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGl7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMzMuMyU7XG5cbiAgICAgICAgICAvKiBJRTEwLCBJRTExICovXG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgICAgICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjJGNztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgbWFyZ2luOiAwIDIwcHggMCAyMHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG5cbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBjb2xvcjogIzgxOUFCNjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbjogMTVweCAwIDhweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuXG4gICAgICBwIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAmLmJ1dHRvbiB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgYS5idG4ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMTJweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIFImRCBBbGVydCBpbiBQcmludCAqL1xuICAgIC5yZGFsZXJ0LWluLXByaW50IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGltZy50aHVtYiB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW46IDAgMjBweCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIGgyIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAmLmJ1dHRvbiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhLmJ0biB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAtMTcxcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDQ1cHgpIHtcblxuICAgICAgI3Nwb3RsaWdodF9zbGlkZXIge1xuXG4gICAgICAgIC5ieC12aWV3cG9ydCB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWluLWhlaWdodDogNjAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYngtY29udHJvbHMge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGlkZSB7XG5cbiAgICAgICAgICAuaW1nLFxuICAgICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MDBweCkge1xuXG4gICAgICAucHJvbW8ge1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICYuYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuYWRkaXRpb25hbC1yZGFsZXJ0LWFydGljbGVzIHtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTg1cHgpIHtcblxuICAgICAgLnJkYWxlcnQtaW4tcHJpbnQge1xuXG4gICAgICAgIHAuYnV0dG9uIHtcbiAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHggMCAwIDAgIWltcG9ydGFudDtcblxuICAgICAgICAgIGEuYnRuIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBSJkQgQWxlcnQgQXJjaGl2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkucGFnZS10ZW1wbGF0ZS1yZGFsZXJ0LWxpc3Qge1xuXG4gICNjb250ZW50IHtcblxuICAgIGgxIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLyogQWRkaXRpb25hbCBSJkQgQWxlcnQgQXJ0aWNsZXMgKi9cbiAgICAuYXJ0aWNsZS1saXN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAucG9zdCB7XG4gICAgICAgIGZsZXg6IDEgMSAyNTBweDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICAvKiBmbGV4IGZhbGxiYWNrICovXG4gICAgICAgIEBzdXBwb3J0cyBub3QgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDMzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgICBwYWRkaW5nOiAzMHB4O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICB9XG5cbiAgICAgICAgcC5tZXRhIHtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBjb2xvcjogIzgxOUFCNjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBtYXJnaW46IDE1cHggMCA4cHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogcGFnaW5hdGlvbiAqL1xuICAgICAgLm5hdmlnYXRpb24ge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDAgMCAwO1xuXG4gICAgICAgIC5uYXYtbGlua3Mge1xuXG4gICAgICAgICAgYSwgc3Bhbi5jdXJyZW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMTBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICYucHJldiB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1hcnJvdy1sZWZ0LXB1cnBsZS5wbmcpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubmV4dCB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1hcnJvdy1yaWdodC1wdXJwbGUucG5nKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc3Bhbi5jdXJyZW50IHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiNGIxYTY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmMmY3O1xuICAgICAgICAgICAgcGFkZGluZzogMnB4IDZweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuXG4gICAgICAuYXJ0aWNsZS1saXN0IHtcblxuICAgICAgICAucG9zdCB7XG5cbiAgICAgICAgICAvKiBmbGV4IGZhbGxiYWNrICovXG4gICAgICAgICAgQHN1cHBvcnRzIG5vdCAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuXG4gICAgICAuYXJ0aWNsZS1saXN0IHtcblxuICAgICAgICAucG9zdCB7XG5cbiAgICAgICAgICAvKiBmbGV4IGZhbGxiYWNrICovXG4gICAgICAgICAgQHN1cHBvcnRzIG5vdCAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIFImRCBBbGVydCBBcnRpY2xlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuc2luZ2xlLXJkX2FsZXJ0X29ubGluZSB7XG5cbiAgI2NvbnRlbnQge1xuXG4gICAgLnNvY2lhbC1iYXIge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgICBhIHtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiAzNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCA1cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmVudHJ5LWNvbnRlbnQgaDIge1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICM4MTlBQjYgIWltcG9ydGFudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHggIWltcG9ydGFudDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLyogaW50cm8gKi9cbiAgICAuaW50cm8ge1xuXG4gICAgICAvKiBwaG90byAqL1xuICAgICAgLnBvc3RfaW1hZ2Uge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDY1MHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC8qIEJyaWVmbHkgKi9cbiAgICAgIC50b2Mge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiAzNDBweDtcbiAgICAgICAgaGVpZ2h0OiAzNzBweDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQUJDMURBICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMnB4IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50b2NfY29udGVudCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG5cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLWFycm93LXJpZ2h0LWdyZWVuLnBuZ1wiKSBuby1yZXBlYXQgMCAzcHg7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XG5cbiAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIGNvbnRhaW5lciAqL1xuICAgIC5jb250YWluZXIge1xuICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLyogc2lkZWJhciAqL1xuICAgICAgLnJkYWxlcnQtc2lkZWJhciB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICBtYXgtd2lkdGg6IDIzMHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLndpZGdldF90ZXh0IHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIGNvbnRhY3QgKi9cbiAgICAgICAgI3NpZGViYXJfcHJvamVjdF9jb250YWN0IHtcblxuICAgICAgICAgIC53aWRnZXQtd3JhcCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmNvbnRhY3RJbmZvIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgICAgICAgICAgd2lkdGg6IDIzMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjJGNztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogNDVweCAwIDQwcHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDg1cHggMzBweCAyMHB4IDMwcHg7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB0b3A6IC00NXB4O1xuICAgICAgICAgICAgICBsZWZ0OiA1NHB4O1xuICAgICAgICAgICAgICB3aWR0aDogMTE5cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMTE5cHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29uLW1vcmUtaW5mby1pLnBuZ1wiKTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyogbmFtZSAqL1xuICAgICAgICAgICAgcC5uYW1lIHtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyogcGhvbmUgKi9cbiAgICAgICAgICAgIHAucGhvbmUge1xuICAgICAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogIzgxOUFCNiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgIHNwYW4uaWNvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1waG9uZS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAuZW1haWwge1xuICAgICAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHggNXB4IDEwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBoNCB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDZweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogY29udGVudCAqL1xuICAgICAgLnJkYWxlcnQtY29udGVudCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDc0JTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC8qIHJlbW92aW5nICovXG4gICAgICAgIHAuaW50cm8ge1xuICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogIzU0NkI4NSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAyNXB4IDAgMTBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDEyNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZDogI0VFRjJGNyB1cmwoXCIuLi9pbWFnZXMvaWNvbi1xdW90ZS13aGl0ZS5wbmdcIikgbm8tcmVwZWF0IDE1cHggMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDIwcHggMTcwcHggIWltcG9ydGFudDtcblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBSZWxhdGVkIFJlc291cmNlcyAqL1xuICAjcmVsYXRlZC1yZXNvdXJjZXMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNBQkMxREE7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgLmNvbnRhaW5lciB7XG5cbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICB9XG5cbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBtYXgtd2lkdGg6IDEwNDBweCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAxNXB4IDA7XG4gICAgfVxuXG4gICAgLm1vcmVfbGlua3Mge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIHVsLnJlc291cmNlX2xpc3Qge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgZ3JpZC1nYXA6IDMwcHg7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmLmhpZGRlbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgLyogY3NzIGdyaWQgZmFsbGJhY2sgKi9cbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyAvKiBjc3MgZ3JpZCBmYWxsYmFjayAqL1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAudGh1bWIge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgd2lkdGg6IDcwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICBjb2xvcjogIzU0NmI4NTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNDBweCkge1xuXG4gICAgICAgIC50aHVtYiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5MHB4KSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5ib2R5LnNpbmdsZS1yZF9hbGVydF9vbmxpbmUge1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNTBweCkge1xuXG4gICAgI2NvbnRlbnQge1xuXG4gICAgICAuaW50cm8ge1xuXG4gICAgICAgIC5wb3N0X2ltYWdlLFxuICAgICAgICAudG9jIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50b2Mge1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmNvbnRhaW5lciB7XG5cbiAgICAgICAgLnJkYWxlcnQtc2lkZWJhcixcbiAgICAgICAgLnJkYWxlcnQtY29udGVudCB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuYm9keS5zaW5nbGUtcmRfYWxlcnRfb25saW5lICNyZWxhdGVkLXJlc291cmNlcyB7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDUzcHgpIHtcblxuICAgIHVsLnJlc291cmNlX2xpc3Qge1xuXG4gICAgICBsaSB7XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogUmVzb3VyY2VzIC8gU2lnbnVwIE1vZGFsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI3NpZ251cC1tb2RhbCB7XG4gIG1heC13aWR0aDogODAwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzRjY0OEY7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGJveC1zaGFkb3c6IDhweCA4cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBwYWRkaW5nOiAwO1xuXG4gIC8qIGluaXRpYWxseSBoaWRlICovXG4gIC5ta3RvLWZvcm0td3JhcCxcbiAgLmNvbnQtZGwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvKiBoZWFkZXIgKi9cbiAgLm1vZGFsLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE4Mzk1RjtcbiAgICBoZWlnaHQ6IDQycHg7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTJweDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTJweDtcblxuICAgIC5yZW1vZGFsLWNsb3NlIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyNDRhNzc7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTJweDtcbiAgICAgIGNvbG9yOiAjNWE3OTljO1xuICAgICAgaGVpZ2h0OiA0MnB4O1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQycHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIHN1YnNjcmliZSBjb250ZW50ICovXG4gIC5zdWJzY3JpYmUtZGlhbG9nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAzMHB4IDQwcHg7XG5cbiAgICAuaXRlbSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICBtaW4td2lkdGg6IDI2NHB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogNDVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgbWFyZ2luOiAwIDAgMjVweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJi5ub3RlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzNzVweDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgICAgICAgY29sb3I6ICNCQUQ4RkI7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG5cbiAgICAgICAgYS5zdWItbm8ge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNCQUQ4RkI7XG4gICAgICAgICAgY29sb3I6ICNCQUQ4RkI7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC5idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNkVBOUVEO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMTBweCA0MHB4O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuXG4gIH1cblxuICAvKiBmb3JtICovXG4gIC5ta3RvLWZvcm0td3JhcCB7XG4gICAgYm9yZGVyLXRvcDogNnB4IHNvbGlkICM1OTc5OWU7XG4gICAgbWFyZ2luOiAwIDQwcHg7XG4gICAgcGFkZGluZzogMzBweCAwO1xuXG4gICAgZm9ybSB7XG4gICAgICB3aWR0aDogODUlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgLm1rdG9Gb3JtQ29sIHtcbiAgICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIC5ta3RvRmllbGRXcmFwIHtcbiAgICAgICAgd2lkdGg6IDkwJSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogbGFiZWwgKi9cbiAgICBsYWJlbCB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luOiAwIDAgNnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8qIGlucHV0ICovXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogNHB4IDEycHg7XG4gICAgfVxuXG4gICAgLyogc3VibWl0ICovXG4gICAgLm1rdG9CdXR0b25Sb3cge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDE1cHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgLm1rdG9CdXR0b25XcmFwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2RUE5RUQgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQ1cHgpIHtcblxuICAgIC5zdWJzY3JpYmUtZGlhbG9nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAuaXRlbSB7XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFdlc3RFZCBFdmVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2Utd2VzdGVkLWV2ZW50cyxcbmJvZHkucGFnZS13ZXN0ZWQtcGFzdC1ldmVudHMge1xuXG4gIC8qIHJlcXVpcmVkIHRvIHByZXZlbnQgZmlsdGVyIGZyb20gYmVpbmcgY3V0IG9mZiBieSBmb290ZXIgd2hlbiBwYWdlIGlzIHNob3J0ICovXG4gICNpbm5lciAjY29udGVudCB7XG4gICAgbWluLWhlaWdodDogNDAwcHg7XG4gIH1cblxuICBoMi5ldmVudC13YXJwIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDEycHggMCAwIDA7XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgfVxuXG4gICNjb250ZW50IGhyIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG1hcmdpbjogNjVweCAwIDMwcHggMDtcbiAgfVxuXG4gIC8qIGV2ZW50IHR5cGUgZmlsdGVyICovXG4gIC5ldmVudC1maWx0ZXItY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogOTk5OTtcbiAgICB3aWR0aDogMjUwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcbiAgICBib3gtc2hhZG93OiA0cHggNHB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGZvcm0jZXZlbnQtZmlsdGVyIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGg0IHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiA4cHggMTVweDtcblxuICAgICAgICBzcGFuLmFycm93IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDE3cHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMXB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLWFycm93LWRvd24tcmVzb3VyY2VzLWFvdy1maWx0ZXIucG5nXCIpIG5vLXJlcGVhdCB0b3AgcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCA1cHg7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZmlsdGVycy1jbG9zZWQgc3Bhbi5hcnJvdyB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5mb3JtLWlubmVyIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTVweDtcblxuICAgICAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWYzZmI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgIG1hcmdpbjogMCA4cHggMCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICM1QTc5OUM7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgI2V2ZW50LWZpbHRlci1idG4td3JhcCB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogNnB4IHNvbGlkICNlZWYzZmI7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAjZXZlbnQtZmlsdGVyLWJ0biB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBmaWx0ZXIgKHN1Ym5hdikgKi9cbiAgLy8gLndlc3RlZC1ldmVudC1maWx0ZXIge1xuICAvLyAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgLy8gICBwYWRkaW5nOiAwO1xuXG4gIC8vICAgcCB7XG4gIC8vICAgICBtYXJnaW46IDA7XG4gIC8vICAgICBwYWRkaW5nOiAwO1xuXG4gIC8vICAgICBhIHtcbiAgLy8gICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvLyAgICAgICBmb250LXNpemU6IDE0cHg7XG4gIC8vICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAvLyAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAvLyAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAvLyAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIC8vICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gIC8vICAgICAgIG1hcmdpbjogMCAxNXB4IDAgMDtcbiAgLy8gICAgICAgcGFkZGluZzogNXB4IDAgNXB4IDA7XG5cbiAgLy8gICAgICAgJjpob3ZlciB7XG4gIC8vICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAvLyAgICAgICB9XG5cbiAgLy8gICAgICAgJi5vbiB7XG4gIC8vICAgICAgICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICRib3JkZXItcHJpbWFyeSAhaW1wb3J0YW50O1xuICAvLyAgICAgICB9XG5cbiAgLy8gICAgIH1cblxuICAvLyAgIH1cblxuICAvLyB9XG5cbiAgLyogZXZlbnQgbGlzdCAqL1xuICAuZXZlbnQtbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuZXZlbnQtcG9zdCB7XG4gICAgICBtYXJnaW46IDAgMCAzNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAuZXZlbnQtcG9zdC10aHVtYm5haWwge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDE3NXB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMjVweCAwIDA7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuZXZlbnQtcG9zdC1jb250ZW50IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA1NTBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBtYXJnaW46IDAgMCA3cHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5ldmVudC1wb3N0LW1ldGEge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiAyMjVweDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnk7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMTVweDtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMTVweDtcblxuICAgICAgICBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuNzU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBwYWdpbmF0aW9uICovXG4gIC5wYWdpbmF0aW9uIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBoMiB7XG4gICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLm5hdi1saW5rcyB7XG5cbiAgICAgIGEsIHNwYW4uY3VycmVudCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCA1cHggMCA1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJi5wcmV2IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1hcnJvdy1sZWZ0LXB1cnBsZS5wbmcpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLm5leHQge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWFycm93LXJpZ2h0LXB1cnBsZS5wbmcpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBzcGFuLmN1cnJlbnQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjRiMWE2O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmMmY3O1xuICAgICAgICBwYWRkaW5nOiAycHggNnB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDAwcHgpIHtcblxuICAgIC5ldmVudC1saXN0IHtcblxuICAgICAgLmV2ZW50LXBvc3Qge1xuXG4gICAgICAgIC5ldmVudC1wb3N0LXRodW1ibmFpbCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ldmVudC1wb3N0LWNvbnRlbnQge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmV2ZW50LXBvc3QtbWV0YSB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnk7XG4gICAgICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NTBweCkge1xuXG4gICAgLmV2ZW50LWZpbHRlci1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG5cbiAgICAgICNldmVudC1maWx0ZXItYnRuLXdyYXAge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBoMi5ldmVudC13YXJwIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgIH1cblxuICAgICNjb250ZW50IGhyIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogV2VzdEVkIEV2ZW50cyAvIERldGFpbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuc2luZ2xlLXdlc3RlZF9ldmVudCB7XG5cbiAgLyogY29sIDEgLSB0aHVtYm5haWwgKi9cbiAgLndlc3RlZC1ldmVudC10aHVtYm5haWwge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMjVweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5wb3N0X2ltYWdlIHtcbiAgICAgIHdpZHRoOiAyMjVweDtcbiAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIGNvbCAyIC0gY29udGVudCAqL1xuICAud2VzdGVkLWV2ZW50LWNvbnRlbnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MDBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGgyIHtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICYuYnRuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMzBweCAxMHB4IDE1cHggMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiA3cHggMTJweCA3cHggMTJweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgIHBhZGRpbmc6IDEwcHggMzBweDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIGNvbCAzIC0gc2lkZWJhciAqL1xuICAud2VzdGVkLWV2ZW50LXNpZGViYXIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogMjI1cHg7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnk7XG4gICAgbWFyZ2luOiAwIDAgMCAxNXB4O1xuICAgIHBhZGRpbmc6IDAgMCAwIDE1cHg7XG5cbiAgICBoMyB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC43NTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAwMHB4KSB7XG5cbiAgICAud2VzdGVkLWV2ZW50LXRodW1ibmFpbCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC53ZXN0ZWQtZXZlbnQtY29udGVudCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAud2VzdGVkLWV2ZW50LXNpZGViYXIge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnk7XG4gICAgICBtYXJnaW46IDE1cHggMCAwIDA7XG4gICAgICBwYWRkaW5nOiAxNXB4IDAgMCAwO1xuICAgIH1cblxuICB9XG5cbiAgLyogMjAyMC0wNi0wMyBFTFNXRCBTdW1taXQgMjAyMCBTZXNzaW9ucyAqL1xuICAuZWxzd2Qtc3VtbWl0LTIwMjAge1xuXG4gICAgLnNlc3Npb24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZWZmNjtcbiAgICAgIG1hcmdpbjogMCAwIDJweCAwO1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgIG1hcmdpbjogMCAwIDVweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJi5kYXRlIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOGVmZjY7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEycHg7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMnB4O1xuICAgICAgICBtYXJnaW46IDMwcHggMCAycHggMDtcbiAgICAgICAgcGFkZGluZzogMjVweCAyMHB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICM1NDZCODU7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIGg2IHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogIzU0NkI4NTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW46IDIwcHggMCA1cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgcCB7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDAgMCAwIDIwcHg7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogNXB4IDAgMCAyMHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cblxuXG4vKiBXZXN0RWQgTmV3cyAmIFJlc2VhcmNoIEJsb2cgKGFuZCB0YWcgdmlldylcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2Utd2VzdGVkLW5ld3MsXG5ib2R5LnRhZyxcbmJvZHkucGFnZS1yZXNlYXJjaC1ibG9nIHtcblxuICBoMS5lbnRyeS1jaGlsZC10aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8qIGZpbHRlciAqL1xuICAud2VzdGVkLW5ld3MtZmlsdGVyIHtcbiAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMDtcbiAgICAgICAgcGFkZGluZzogNXB4IDAgNXB4IDA7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5vbiB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICRib3JkZXItcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogcG9zdHMgKi9cbiAgLm5ld3MtbGlzdCB7XG5cbiAgICAvKiBzaW5nbGUgcG9zdCAqL1xuICAgIC5uZXdzLXBvc3Qge1xuICAgICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLm5ld3MtcG9zdC10aHVtYm5haWwge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLm5ld3MtcG9zdC1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAxNzVweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICB0aW1lIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgNHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICYudGFncyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMTBweCAxMHB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM4MTlBQjYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMnB4IDEwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBoMy50YWctbmFtZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCI7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICM4MTlBQjY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlRhZyA+IFwiO1xuICAgIH1cblxuICB9XG5cbiAgLyogcGFnaW5hdGlvbiAqL1xuICAucGFnaW5hdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMzVweCAwIDEwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBtYXJnaW46IDAgNnB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgJi5wcmV2LCAmLm5leHQge1xuICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgfVxuXG4gICAgICAmLnByZXYge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tYXJyb3ctbGVmdC1wdXJwbGUucG5nKSBuby1yZXBlYXQgMCAwO1xuICAgICAgfVxuXG4gICAgICAmLm5leHQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tYXJyb3ctcmlnaHQtcHVycGxlLnBuZykgbm8tcmVwZWF0IDAgMDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIHNwYW4uY3VycmVudCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjRiMWE2O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZjJmNztcbiAgICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NTBweCkge1xuXG4gICAgLndlc3RlZC1uZXdzLWZpbHRlciB7XG5cbiAgICAgIHAge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAmLm9uIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAubmV3cy1saXN0IHtcblxuICAgICAgLm5ld3MtcG9zdCB7XG5cbiAgICAgICAgLm5ld3MtcG9zdC10aHVtYm5haWwsXG4gICAgICAgIC5uZXdzLXBvc3QtY29udGVudCB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFdlc3RFZCBOZXdzIC8gRGV0YWlsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wb3N0LXRlbXBsYXRlLWRlZmF1bHQge1xuXG4gIC5lbnRyeS1jb250ZW50IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cblxuICAvKiBpbWFnZSBjb250YWluZXIgKi9cbiAgLnNpbmdsZS1pbWcge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIH1cblxuICB9XG5cbiAgLyogc29jaWFsIGljb25zICovXG4gIC5zb2NpYWwtYmFyIHtcbiAgICBtaW4taGVpZ2h0OiAyNXB4O1xuICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLmFkZHRoaXNfZGVmYXVsdF9zdHlsZSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICB9XG5cbiAgLyogY29udGVudCBjb250YWluZXIgKi9cbiAgLnNpbmdsZS1tYWluIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDcyNXB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLyogY2F0ZWdvcnkgKi9cbiAgICAgICYuY2F0IHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAjODE5QUI2O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW46IDAgMCA1cHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIGRhdGUgKi9cbiAgICBwLnBvc3QtZGF0ZSB7XG4gICAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW4gIWltcG9ydGFudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHdlc3RlZC1iYWJ5LWJsdWU7XG4gICAgICBtYXJnaW46IDMwcHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDE1cHggMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8qIHRhZ3MgKi9cbiAgICBwLnRhZ3Mge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2VzdGVkLWJhYnktYmx1ZTtcbiAgICAgIGZvbnQtc2l6ZTogMTFweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDE0cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgMCAxMHB4IDAgIWltcG9ydGFudDtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMTBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjODE5QUI2ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjJGNztcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6IDJweCAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIGJ1dHRvbiAqL1xuICAgIHAubW9yZSB7XG4gICAgICBtYXJnaW46IDEwcHggMCAyMHB4IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMzBweCkge1xuXG4gICAgLyogaW1hZ2UgY29udGFpbmVyICovXG4gICAgLnNpbmdsZS1pbWcsXG4gICAgLnNpbmdsZS1tYWluIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBXZXN0RWQgSW5zaWdodHMsIE1ha2luZyBhIERpZmZlcmVuY2UgKFNoYXJlZClcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LmNhdGVnb3J5LXdlc3RlZC1pbnNpZ2h0cyxcbmJvZHkuY2F0ZWdvcnktbWFraW5nLWEtZGlmZmVyZW5jZSB7XG5cbiAgLmVudHJ5LWNvbnRlbnQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIC5wb3N0LWxpc3Qge1xuXG4gICAgLnBvc3Qge1xuICAgICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLnBvc3QtdGh1bWJuYWlsIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnBvc3QtY29udGVudCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMTc1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgdGltZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDRweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBwLnRhZ3Mge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogcGFnaW5hdGlvbiAqL1xuICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMzVweCAwIDEwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICAmLnByZXYsICYubmV4dCB7XG4gICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYucHJldiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWFycm93LWxlZnQtcHVycGxlLnBuZykgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYubmV4dCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWFycm93LXJpZ2h0LXB1cnBsZS5wbmcpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBzcGFuLmN1cnJlbnQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiNGIxYTY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWYyZjc7XG4gICAgICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ1MHB4KSB7XG5cbiAgICAgIC5wb3N0IHtcblxuICAgICAgICAucG9zdC10aHVtYm5haWwge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc3QtY29udGVudCB7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuLyogTWFraW5nIGEgRGlmZmVyZW5jZSAvIExpc3QgKi9cbmJvZHkuY2F0ZWdvcnktbWFraW5nLWEtZGlmZmVyZW5jZSB7XG5cbiAgLnBvc3QtbGlzdCB7XG5cbiAgICAucG9zdCB7XG5cbiAgICAgIC5wb3N0LXRodW1ibmFpbCB7XG4gICAgICAgIG1hcmdpbjogLTVweCAwIDAgLTVweDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIC13ZWJraXQtY2xpcC1wYXRoOiBjaXJjbGUoODBweCBhdCBjZW50ZXIpO1xuICAgICAgICAgICAgY2xpcC1wYXRoOiBjaXJjbGUoODBweCBhdCBjZW50ZXIpO1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDgwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG4vKiBNYWtpbmcgYSBEaWZmZXJlbmNlIC8gRGV0YWlsICovXG5ib2R5LnNpbmdsZS1wb3N0Lm1ha2luZy1hLWRpZmZlcmVuY2Uge1xuXG4gIC5zaW5nbGUtaW1nIHtcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGNsaXAtcGF0aDogY2lyY2xlKDI1MHB4IGF0IGNlbnRlcik7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICAgICAgYm9yZGVyLXJhZGl1czogMjUwcHg7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFN1YnNjcmliZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuc3Vic2NyaWJlICNpbm5lciAuZW50cnktY29udGVudCB7XG5cbiAgLyogTGVmdCAqL1xuICAuY29sTGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDM1JTtcbiAgICBtaW4td2lkdGg6IDMyMHB4O1xuICAgIG1heC13aWR0aDogMzIwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBociB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIGJvcmRlcjogbm9uZSAwO1xuICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNFM0VDRjk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgbWFyZ2luOiAxNXB4IDAgMTVweCAwO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNjAlICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgdWwuc29jaWFsIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHdpZHRoOiA0MCU7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgICAgaGVpZ2h0OiAzNnB4O1xuXG4gICAgICAgICAgJi50d2l0dGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC10d2l0dGVyLWxpdGUucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5mYWNlYm9vayB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtZmFjZWJvb2stbGl0ZS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmxpbmtlZGluIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1saW5rZWRpbi1saXRlLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogUmlnaHQgKi9cbiAgLmNvbFJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDY1JTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC8qIE1hcmtldG8gZm9ybSAqL1xuICAgIGZvcm0ubWt0b0Zvcm0ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5ta3RvSHRtbFRleHQge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAubWt0b0Zvcm1Sb3cge1xuICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC8qIGxhYmVsICovXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW46IDAgMCA2cHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLyogaW5wdXQgKi9cbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgIGhlaWdodDogNDJweDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDRweCAxMnB4O1xuICAgICAgfVxuXG4gICAgICAvKiBjaGVja2JveCBsaXN0ICovXG4gICAgICAubWt0b0NoZWNrYm94TGlzdCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMTBweCAwIDAgMDtcblxuICAgICAgICAvKiBub3RlOiBjYW4ndCByZWFsbHkgdXNlIGN1c3RvbSBjaGVja2JveCBzdHlsaW5nIGhlcmUgc2VlbiBlbHNld2hlcmUgaW4gc2l0ZSAqL1xuICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgbWFyZ2luOiAzcHggOHB4IDEycHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogc3VibWl0ICovXG4gICAgICAubWt0b0J1dHRvblJvdyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiA1ODBweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIC5ta3RvQnV0dG9uV3JhcCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLmJ1c3Qtb3V0IHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuXG4gIC8qIEUtQnVsbGV0aW4gQXJjaGl2ZSAqL1xuICAuZWJ1bGxldGluLWFyY2hpdmUge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBwLnNob3doaWRlIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIGEuYnRuIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogN3B4IDEycHggN3B4IDEycHg7XG4gICAgICB9XG5cbiAgICAgICYuYXJyb3dDbG9zZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICB0YWJsZSB7XG5cbiAgICAgIHRkIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgY29sb3I6ICM1NDZiODU7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAxNHB4IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk4MHB4KSB7XG5cbiAgICAuY29sTGVmdCxcbiAgICAuY29sUmlnaHQge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1pbi13aWR0aDogbm9uZTtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcblxuICAgICAgcCwgdWwuc29jaWFsIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU4NXB4KSB7XG5cbiAgICAuY29sUmlnaHQgZm9ybS5ta3RvRm9ybSAubWt0b0J1dHRvblJvdyB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLXRvcDogNDBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBDb250YWN0IFVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5jb250YWN0dXMgI2lubmVyIC5lbnRyeS1jb250ZW50IHtcblxuICAvKiBmb3JtICovXG4gIC5jb250YWN0LXVzLWZvcm0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA2NSU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBmb3JtIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5ta3RvT2Zmc2V0IHtcbiAgICAgICAgd2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLm1rdG9CdXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiA4cHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBzaWRlYmFyICovXG4gIC5jb250YWN0LXVzLXNpZGViYXIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogMjklO1xuICAgIG1hcmdpbjogMTVweCAwIDAgMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLml0ZW0ge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNBQkMxREE7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwIDAgMjBweCAwO1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBwLmViIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMTBweCAwIDAgMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGEge1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIHVsLnNvY2lhbCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW46IDEwcHggMCAwIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICAgIGhlaWdodDogMzZweDtcblxuICAgICAgICAgICYudHdpdHRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtdHdpdHRlci1saXRlLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLWZhY2Vib29rLWxpdGUucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5saW5rZWRpbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtbGlua2VkaW4tbGl0ZS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk0NXB4KSB7XG5cbiAgICAuY29udGFjdC11cy1mb3JtLFxuICAgIC5jb250YWN0LXVzLXNpZGViYXIge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgcC5lYixcbiAgICAgIHVsLnNvY2lhbCB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuXG4gICAgZm9ybS5ta3RvRm9ybSAubWt0b0Zvcm1Sb3cgLm1rdG9Gb3JtQ29sLFxuICAgIGZvcm0ubWt0b0Zvcm0gLm1rdG9GaWVsZFdyYXAge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIENvbnRhY3QgVXMgRm9ybVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLW5vLWZvcm0tZm9vdGVyIHtcblxuICAvKiBNYXJrZXRvIGZvcm0gKi9cbiAgZm9ybS5ta3RvRm9ybSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAubWt0b0h0bWxUZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAubWt0b0Zvcm1Sb3cge1xuICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjpudGgtY2hpbGQoNSkgLm1rdG9Gb3JtQ29sIC5ta3RvRmllbGRXcmFwIHtcbiAgICAgICAgd2lkdGg6IDk3LjUlICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIC5ta3RvRm9ybUNvbCB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG5cbiAgICAgIC8qIEkgaGF2ZSBhIHF1ZXN0aW9uIG9yIGNvbW1lbnQgYWJvdXQgKi9cbiAgICAgICY6bnRoLWNoaWxkKDUpIC5ta3RvRm9ybUNvbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC5ta3RvRmllbGRXcmFwIHtcbiAgICAgICAgICB3aWR0aDogOTglO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogQ29tbWVudCAqL1xuICAgICAgJjpudGgtY2hpbGQoNikgLm1rdG9Gb3JtQ29sIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLm1rdG9GaWVsZFdyYXAge1xuICAgICAgICAgIHdpZHRoOiA5Ny41JTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIGNoZWNrYm94ICovXG4gICAgICAmOm50aC1jaGlsZCg3KSAubWt0b0Zvcm1Db2wge1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAubWt0b0NoZWNrYm94TGlzdCB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAxMG94O1xuICAgICAgICAgIHdpZHRoOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLm1rdG9GaWVsZFdyYXAge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG5cbiAgICAvKiBsYWJlbCAqL1xuICAgIGxhYmVsIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW46IDAgMCA2cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLyogaW5wdXQgKi9cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgc2VsZWN0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogNHB4IDEycHg7XG4gICAgfVxuXG4gICAgdGV4dGFyZWEge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC5ta3RvQXN0ZXJpeCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLyogY2hlY2tib3ggbGlzdCAqL1xuICAgIC5ta3RvQ2hlY2tib3hMaXN0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC8qIG5vdGU6IGNhbid0IHJlYWxseSB1c2UgY3VzdG9tIGNoZWNrYm94IHN0eWxpbmcgaGVyZSBzZWVuIGVsc2V3aGVyZSBpbiBzaXRlICovXG4gICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgIG1hcmdpbjogM3B4IDhweCAxMnB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogc3VibWl0ICovXG4gICAgLm1rdG9CdXR0b25Sb3cge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgLm1rdG9CdXR0b25XcmFwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQUJDMURBICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogV29yayBhdCBXZXN0RWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LndvcmthdHdlc3RlZCB7XG5cbiAgLyogY29udGVudCAqL1xuICAjd29ya2F0d2VzdGVkLWNvbnRlbnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA2NSU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBoMiB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5O1xuICAgICAgbWFyZ2luOiAzMHB4IDAgMTVweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogIzREQjEzRiAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAyMnB4IDAgNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICM1NDZiODU7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8qIFN1YnNjcmliZSBTb2NpYWwgQmFyICovXG4gICAgI3N1YnNjcmliZS1zb2NpYWwtYmFyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgI0UzRUNGOTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgIG1hcmdpbjogNDBweCBhdXRvO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAxMHB4IDIwcHg7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuc3Vic2NyaWJlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTEwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDk0cHg7XG4gICAgICAgICAgaGVpZ2h0OiA5NHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXdyaXRlLWZpbGxlZC5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICBtYXJnaW46IDAgMzBweCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIjtcbiAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDAgNXB4IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgJi5zdWJzY3JpYmUge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwIDAgMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAxMnB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuc29jaWFsIHtcbiAgICAgICAgd2lkdGg6IDc5JTtcbiAgICAgICAgaGVpZ2h0OiA2NXB4O1xuICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgI0UzRUNGOTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAxMjVweDtcbiAgICAgICAgcGFkZGluZzogMTVweCAwIDAgMDtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCI7XG4gICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICM2RUE5RUQ7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDZweCAwIDAgMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgd2lkdGg6IDE2MHB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDM3cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzdweDtcblxuICAgICAgICAgICAgICAmLnR3aXR0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC10d2l0dGVyLWJhYnkucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmxpbmtlZGluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtbGlua2VkaW4tYmFieS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1mYWNlYm9vay1iYWJ5LnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogc2lkZWJhciAqL1xuICAjd29ya2F0d2VzdGVkLXNpZGViYXIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogMzklO1xuICAgIG1pbi13aWR0aDogMzE1cHg7XG4gICAgbWF4LXdpZHRoOiAzMTVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMzBweDtcblxuICAgIGgzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCI7XG4gICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNBQkMxREE7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA2cHg7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNnB4O1xuICAgICAgbWFyZ2luOiAtMzBweCAtMzBweCAyMHB4IC0zMHB4O1xuICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJi5nbGFzc2Rvb3Ige1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTE4cHg7XG5cbiAgICAgICAgYS5sb2dvIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAmLnN1YnNjcmliZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXdyaXRlLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgfVxuXG4gICAgICAmLmluZGVudCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogODVweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIGhyIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgYm9yZGVyOiBub25lIDA7XG4gICAgICBib3JkZXItdG9wOiAycHggc29saWQgI2ZmZjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBtYXJnaW46IDI1cHggMCAyMHB4IDA7XG4gICAgfVxuXG4gICAgLnZpZGVvIHtcbiAgICAgIG1hcmdpbjogMzBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgaWZyYW1lIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgICAgIH1cblxuICAgIH1cblxuICAgIHVsLnNvY2lhbCB7XG4gICAgICBtYXJnaW46IDEycHggMCAwIDA7XG4gICAgICBwYWRkaW5nOiAwIDAgMCA4NXB4O1xuXG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW46IDAgOHB4IDAgMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgd2lkdGg6IDI5cHg7XG4gICAgICAgICAgaGVpZ2h0OiAyOXB4O1xuXG4gICAgICAgICAgJi50d2l0dGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC10d2l0dGVyLWRhcmsucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5saW5rZWRpbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtbGlua2VkaW4tZGFyay5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmZhY2Vib29rIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1mYWNlYm9vay1kYXJrLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyMHB4KSB7XG5cbiAgICAjd29ya2F0d2VzdGVkLWNvbnRlbnQge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICNzdWJzY3JpYmUtc29jaWFsLWJhciB7XG5cbiAgICAgICAgLnN1YnNjcmliZSB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICYuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgI3dvcmthdHdlc3RlZC1zaWRlYmFyIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgICBwIHtcblxuICAgICAgICAmLnN1YnNjcmliZSxcbiAgICAgICAgJi5pbmRlbnQge1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgdWwuc29jaWFsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NTBweCkge1xuXG4gICAgI3dvcmthdHdlc3RlZC1zaWRlYmFyIHtcblxuICAgICAgLnZpZGVvIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIHVsLnRlc3RpbW9uaWFscyB7XG4gICAgbWFyZ2luOiA0MHB4IDAgNjBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjRDNEQkU2O1xuICAgICAgbWFyZ2luOiA1cHggMCAyNXB4IDcwcHg7XG4gICAgICBwYWRkaW5nOiAwIDAgMjVweCAwO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAtMTEwcHg7XG4gICAgICAgIHdpZHRoOiA4OXB4O1xuICAgICAgICBoZWlnaHQ6IDYxcHg7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBjb2xvcjogIzNGNjQ4RjtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzLzIwMTktMDUtMTYtdGVzdGltb25pYWwtcXVvdGUxLnN2Z1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBjb2xvcjogIzgxOUFCNjtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzLzIwMTktMDUtMTYtdGVzdGltb25pYWwtcXVvdGUyLnN2Z1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBPcnBoYW4gLyBOZXcgWW9yaywgR2VvcmdpYSwgRmxvcmlkYVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkubmV3LXlvcmssIGJvZHkuZ2VvcmdpYSwgYm9keS5mbG9yaWRhIHtcblxuICAvKiBjb250ZW50ICovXG4gICNueS1jb250ZW50LCAjZ2VvcmdpYS1jb250ZW50LCAjZmxvcmlkYS1jb250ZW50IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNjUlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBwLmNhdC1kYXRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IC8qIDIwMTgtMTItMTMgaGlkaW5nIGV2ZW50IGNhdCBhbmQgZGF0ZSBwZXIgQ0ggKi9cbiAgICB9XG5cbiAgICAvKiBOZXdzICYgRXZlbnRzICovXG4gICAgLm5ld3MtZXZlbnRzIHtcbiAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDExNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHggMTVweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDhweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBSZXNvdXJjZXMgKi9cbiAgICAucmVzb3VyY2VzIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50aHVtYiB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICB3aWR0aDogMTE1cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMTVweCAxNXB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm5hbWUge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgOHB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZXhjZXJwdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQ4NXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBSZXNvdXJjZXMgLyBzaG93IG1vcmUgKi9cbiAgICAgIC5maW5pdGVTY3JvbGwgLm5leHRfcGFnZSBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDdweCAxMnB4IDdweCAxMnB4O1xuICAgICAgfVxuXG4gICAgICAubG9hZGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBzdWJwYWdlIGNvbnRlbnQgKi9cbiAgICAmLnN1YnBhZ2VzIHtcblxuICAgICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5O1xuICAgICAgICBtYXJnaW46IDEwcHggMCAxMnB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggMzBweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnk7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAucHJvbW8ge1xuICAgICAgICB3aWR0aDogNjYwcHg7XG4gICAgICAgIGhlaWdodDogMTM0cHg7XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL25ld3lvcmstcHJvbW8tY29udGFjdHVzLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogc2lkZWJhciAqL1xuICAjbnktc2lkZWJhciwgI2dlb3JnaWEtc2lkZWJhciwgI2Zsb3JpZGEtc2lkZWJhciB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAzMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAvKiBzaWRlYmFyIGNvbnRhaW5lciAqL1xuICAgIC53aWRnZXQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjJGNztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNCNUMxQ0M7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDZweDtcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDZweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiA1cHggMTVweDtcbiAgICAgIH1cblxuICAgICAgLyogY29udGVudCAqL1xuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5O1xuICAgICAgICBtYXJnaW46IDAgMCA3cHggMDtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMTVweDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnk7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2J1bGxldC1ibHVlLTR4NC5wbmdcIikgbm8tcmVwZWF0IDAgNXB4O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxNXB4O1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogIzMzNzlhMjtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5zb2NpYWwge1xuICAgICAgICAgIG1hcmdpbjogMTJweCAwIDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbjogMCA4cHggMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgICAgIHdpZHRoOiAyOXB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDI5cHg7XG5cbiAgICAgICAgICAgICAgJi50d2l0dGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtdHdpdHRlci1kYXJrLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJi5saW5rZWRpbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLWxpbmtlZGluLWRhcmsucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmZhY2Vib29rIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtZmFjZWJvb2stZGFyay5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5jb2wtbGVmdCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMTVweCAxNXB4O1xuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICYuaWNvbi1mb3JtIHtcbiAgICAgICAgICAgIHdpZHRoOiA2OXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2OXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tZm9ybS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmljb24td3JpdGUge1xuICAgICAgICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDY1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi13cml0ZS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5jb2wtcmlnaHQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDE1cHggMTVweCAwO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDQwcHgpIHtcblxuICAgICNueS1jb250ZW50LCAjbnktc2lkZWJhciwgI2dlb3JnaWEtY29udGVudCwgI2dlb3JnaWEtc2lkZWJhciwgI2Zsb3JpZGEtY29udGVudCwgI2Zsb3JpZGEtc2lkZWJhciB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICNueS1zaWRlYmFyLCAjZ2VvcmdpYS1zaWRlYmFyLCAjZmxvcmlkYS1zaWRlYmFyIHtcbiAgICAgIG1heC13aWR0aDogMzIwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cblxuICB9XG5cbn1cblxuLyogR2VvcmdpYSB0d2Vha3MgKi9cbmJvZHkuZ2VvcmdpYSB7XG5cbiAgLmhlcm8tc3VibmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nOiAwIDVweDtcbiAgfVxuXG4gICNnZW9yZ2lhLWNvbnRlbnQgYS5idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiA4cHggMCAwIDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuXG4gIH1cblxufVxuXG5ib2R5LnBhZ2UtdGVtcGxhdGUtZ2VvcmdpYSB7XG5cbiAgI2VudHJ5LWNvbnRlbnQge1xuXG4gICAgcCArIGgyIHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeTtcbiAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAzMHB4O1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAjcmVjZW50LXBvc3RzIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG5cbn1cblxuLyogRmxvcmlkYSB0d2Vha3MgKi9cbmJvZHkuZmxvcmlkYSB7XG5cbiAgLmhlcm8tc3VibmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cblxufVxuXG5cbi8qIE9ycGhhbiAvIE5hdGlvbmFsIFN1cHBvcnQgTmV0d29ya3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtbmF0aW9uYWwtc3VwcG9ydC1uZXR3b3JrcyB7XG5cbiAgaDIuaW50cm8ge1xuICAgIG1heC13aWR0aDogNjI1cHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogIzUxQUY0NjtcbiAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8qIFdoYXQgaXMgVEEgKi9cbiAgLndoYXQtaXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3ZXN0ZWQtYmFieS1ibHVlO1xuICAgIG1hcmdpbjogMzBweCAwO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cblxuICAvKiBuZXR3b3JrICovXG4gIC5uZXR3b3JrIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMjBweCAwIDIwcHggMDtcblxuICAgIGE6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItcHJpbWFyeTtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgIHBhZGRpbmc6IDAgMCA4cHggMDtcbiAgICB9XG5cbiAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMzMwcHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDY0MHB4O1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnk7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xuXG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAudGh1bWIge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAyODBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC50aHVtYi1kZXNjIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgd2lkdGg6IDMxNXB4O1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5wbGFjZWhvbGRlciB7XG4gICAgICAgICAgaGVpZ2h0OiA4NXB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIE5hdGlvbmFsIFNwZWNpYWwgRWR1Y2F0aW9uIENlbnRlcnMgKi9cbiAgICAmLnNwZWNpYWwtZWQge1xuXG4gICAgICAudGh1bWIge1xuICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgaW1nIHtcblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnRodW1iLWRlc2Mge1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogQ2VudGVyIHRvIEltcHJvdmUgKi9cbiAgICAmLmNlbnRlciB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5O1xuICAgICAgbWFyZ2luOiA1MHB4IDA7XG4gICAgICBwYWRkaW5nOiAzMHB4IDAgMCAwO1xuXG4gICAgICBoMyB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuXG4gICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggMjBweDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA0MHB4KSB7XG5cbiAgICAubmV0d29yayB7XG5cbiAgICAgIC5kZXNjcmlwdGlvbiwgdWwge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcblxuICAgICAgICAgIC50aHVtYiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAudGh1bWItZGVzYyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBPcnBoYW4gLyBQb2xpY3kgU3VwcG9ydFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkucGFnZS1wb2xpY3ktc3VwcG9ydCB7XG5cbiAgaDIuaW50cm8ge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgY29sb3I6ICM1MUFGNDY7XG4gICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAucGFnZS1jb250ZW50IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNzUlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDQwcHggMCAwO1xuXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICBtYXJnaW46IDI1cHggMCAxMnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICB9XG5cbiAgLnBhZ2Utc2lkZWJhciB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAyNSU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuaW5mbyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMjMwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgICAgcGFkZGluZzogODVweCAzMHB4IDIwcHggMzBweDtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTQ1cHg7XG4gICAgICAgIGxlZnQ6IDU0cHg7XG4gICAgICAgIHdpZHRoOiAxMTlweDtcbiAgICAgICAgaGVpZ2h0OiAxMTlweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb24tbW9yZS1pbmZvLWkucG5nXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgfVxuXG4gICAgICAvKiBuYW1lICovXG4gICAgICBoMiB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogcGhvbmUgKi9cbiAgICAgIHAucGhvbmUge1xuICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzgxOUFCNiAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIHNwYW4uaWNvbiB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1waG9uZS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIHAuYnV0dG9uIHtcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YztcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4IDVweCAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzcwcHgpIHtcblxuICAgIC5wYWdlLWNvbnRlbnQsIC5wYWdlLXNpZGViYXIge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLnBhZ2Utc2lkZWJhciB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICAuaW5mbyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgcC5idXR0b24gYSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBPcnBoYW4gLyAyMDIwOiBXZXN0RWQgUmVzb3VyY2VzIHRvIFN1cHBvcnQgU3VjY2VzcyBmb3IgQWxsIExlYXJuZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5yZXNvdXJjZXMtMjAyMCB7XG5cbiAgLyogSGVybyAqL1xuICAjaGVybyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgXG4gICAgLndyYXAge1xuICAgICAgcGFkZGluZzogNDBweCAyMHB4IDAgMjBweDtcbiAgICB9XG4gICAgXG4gICAgaDEge1xuICAgICAgbWF4LXdpZHRoOiA3NTBweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDQycHg7XG4gICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICAgICAgICBcbiAgfVxuXG4gIHNlY3Rpb24ge1xuICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjRTNFQ0Y5O1xuICAgIG1hcmdpbjogMjBweCAwO1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICBcbiAgICBoMiB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDUzcHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICBcbiAgICAuZ3JvdXAge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDNmcjtcbiAgICAgIGdyaWQtY29sdW1uLWdhcDogMzBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBcbiAgICAgIC5pdGVtIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBcbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgIFxuICAgICAgICAgIC5ib3gge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4OyAgICAgICAgICAgIFxuICAgICAgICAgIH1cblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgY29sb3I6ICM1NDZCODU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIFxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIHAuYnRuLXdyYXAge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgIH1cbiAgICAgIFxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtLWJyZWFrKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICBcbiAgICAgICAgLml0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICB9XG4gICAgICBcbiAgICB9XG4gICAgXG4gIH1cblxuICAvKiBJbnRybyAqL1xuICBzZWN0aW9uI2ludHJvIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgNTBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIFxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgICBcbiAgfVxuICBcbiAgLyogVE9DICovXG4gIHNlY3Rpb24jdG9jIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgNjBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgXG4gICAgdWwge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICBncmlkLWdhcDogMjBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBcbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMTJweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIFxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIH1cblxuICAgICAgfSAgICAgIFxuXG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbS1icmVhaykge1xuICAgICAgXG4gICAgICB1bCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgfVxuICAgICAgXG4gICAgfVxuICAgIFxuICB9XG4gIFxufVxuXG5cbi8qIFNlYXJjaCBSZXN1bHRzIC8gR2xvYmFsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5zZWFyY2gtZ2xvYmFsIHtcblxuICAjY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiAxMDQwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgMjBweCAhaW1wb3J0YW50O1xuXG4gICAgZm9ybSNnb29nbGVzZWFyY2hmb3JtIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICBtYXJnaW46IDI1cHggMCAxMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5nc2MtY29udHJvbC1jc2Uge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5nc2MtaW5wdXQtYm94LWhvdmVyLFxuICAgIC5nc2MtaW5wdXQtYm94LWZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICB0YWJsZSxcbiAgICB0ZCB7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvKiBmb3JtICovXG4gICAgZm9ybSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIGRpdiB7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAuZ3NzdF9iIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgIGhlaWdodDogMzNweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA0cHggMTJweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiA1M3B4O1xuICAgICAgICBoZWlnaHQ6IDMzcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvYnV0dG9uLWdvLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgOHB4O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIHh4eCByZXN1bHRzICovXG4gICAgLmdzYy1hYm92ZS13cmFwcGVyLWFyZWEge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLyogcmVzdWx0cyAqL1xuICAgIC5nc2Mtd3JhcHBlciB7XG4gICAgICBtYXJnaW46IDQwcHggMCAwIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAvKiBlYWNoIHJlc3VsdCAqL1xuICAgICAgLmdzYy1yZXN1bHQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnk7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgcGFkZGluZzogMCAwIDIwcHggMDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5ncy10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmdzYy10aHVtYm5haWwtaW5zaWRlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmdzYy10aHVtYm5haWwge1xuICAgICAgZGlzcGxheTogbm9uZTsgLyogZGVjaWRlZCB0byBoaWRlICovXG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuZ3Mtd2ViLWltYWdlLWJveCB7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTUwcHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmdzLXdlYi1pbWFnZS1ib3gge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmdzYy11cmwtdG9wLFxuICAgIC5nc2MtdGFibGUtcmVzdWx0IHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICM1NDZiODU7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8qIHBhZ2luYXRpb24gKi9cbiAgICAuZ3NjLWN1cnNvci1ib3gge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMTBweCAwIDMwcHggMDtcblxuICAgICAgLmdzYy1jdXJzb3ItcGFnZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgIH1cblxuICAgICAgLmdzYy1jdXJzb3ItY3VycmVudC1wYWdlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjRiMWE2O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmMmY3O1xuICAgICAgICBwYWRkaW5nOiAycHggNnB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIG1hcmdpbjogMCA2cHg7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuZ2NzYy1icmFuZGluZyxcbiAgICAuZ2NzYy1tb3JlLW1heWJlLWJyYW5kaW5nLXJvb3Qge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcblxuICAgICNjb250ZW50IHtcblxuICAgICAgZm9ybSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFNlYXJjaCBSZXN1bHRzIC8gR2xvYmFsIDIwMjAtMDhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtc2VhcmNoLXdlc3RlZC1nbG9iYWwgI2NvbnRlbnQge1xuXG4gIGZvcm0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgMCA0MHB4IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICBsYWJlbCB7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAgIGhlaWdodDogMzNweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDRweCAxMnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogOHB4IDIwcHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIC5zZWFyY2gtcmVzdWx0IHtcbiAgICBtYXJnaW46IDAgMCAzMHB4IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICBoMywgcCB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgMCAycHggMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIC5wYWdpbmF0aW9uIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBzcGFuIHtcbiAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBtYXJnaW46IDAgNXB4O1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBTZWFyY2ggUmVzdWx0cyAvIFJlc291cmNlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkud29vY29tbWVyY2Uuc2VhcmNoLXJlc3VsdHMsXG5ib2R5Lndvb2NvbW1lcmNlLnNlYXJjaC1uby1yZXN1bHRzIHtcblxuICBoMS5wYWdlLXRpdGxlIHtcbiAgICBtYXgtd2lkdGg6IDEwNDBweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICB9XG5cbiAgI3Byb2R1Y3Rfc2VhcmNoX2Zvcm0uY29udGVudC1hcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwNDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgIHBhZGRpbmc6IDAgMjBweDtcblxuICAgIC8qIGZvcm0gKi9cbiAgICBmb3JtIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgaGVpZ2h0OiAzM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDRweCAxMnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNTNweDtcbiAgICAgICAgaGVpZ2h0OiAzM3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2J1dHRvbi1nby5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMCAwIDhweDtcbiAgICAgICAgcGFkZGluZzogMCAwIDEycHggMDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAjY29udGVudCB7XG5cbiAgICBwLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgbWFyZ2luOiAwIDAgNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIGZvcm0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDIwJTtcbiAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgdWwucHJvZHVjdHMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5pbWcge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgc3Bhbi50aHVtYm5haWwge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCAxMjBweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA1cHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIHBhZ2luYXRpb24gKi9cbiAgICAud29vY29tbWVyY2UtcGFnaW5hdGlvbiB7XG4gICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjMTY2OWM5O1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAzcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmN1cnJlbnQge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2I0YjFhNjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWYyZjc7XG4gICAgICAgICAgICBwYWRkaW5nOiAycHggNnB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG5cbiAgICAjcHJvZHVjdF9zZWFyY2hfZm9ybS5jb250ZW50LWFyZWEge1xuXG4gICAgICBmb3JtIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbmJvZHkud29vY29tbWVyY2Uuc2VhcmNoLW5vLXJlc3VsdHMge1xuXG4gICNjb250ZW50IHtcblxuICAgIGgxIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgcC53b29jb21tZXJjZS1pbmZvIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiA0MDQgTm90IEZvdW5kXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5lcnJvcjQwNCAjY29udGVudCB7XG5cbiAgaDEge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICBwIHtcbiAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gICNub3Rmb3VuZF9zZWFyY2gge1xuXG4gICAgZm9ybSB7XG4gICAgICBtYXgtd2lkdGg6IDUwJTtcblxuICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgaGVpZ2h0OiAzM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwIDVweCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogNHB4IDEycHggIWltcG9ydGFudDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcblxuICAgICNub3Rmb3VuZF9zZWFyY2gge1xuXG4gICAgICBmb3JtIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBGb290ZXIgQmFubmVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogU2FmYXJpIDQtOCAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGZvb3Rlci1iYW5uZXItc2xpZGUtb3BlbiB7XG4gIGZyb20geyBib3R0b206IC0zMjBweDsgfVxuICB0byB7IGJvdHRvbTogMDsgfVxufVxuQGtleWZyYW1lcyBmb290ZXItYmFubmVyLXNsaWRlLW9wZW4ge1xuICBmcm9tIHsgYm90dG9tOiAtMzIwcHg7IH1cbiAgdG8geyBib3R0b206IDA7IH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmb290ZXItYmFubmVyLXNsaWRlLWNsb3NlIHtcbiAgZnJvbSB7IGJvdHRvbTogMDsgfVxuICB0byB7IGJvdHRvbTogLTUyNXB4OyB9XG59XG5Aa2V5ZnJhbWVzIGZvb3Rlci1iYW5uZXItc2xpZGUtY2xvc2Uge1xuICBmcm9tIHsgYm90dG9tOiAwOyB9XG4gIHRvIHsgYm90dG9tOiAtNTI1cHg7IH1cbn1cblxuI2Zvb3Rlci1iYW5uZXIge1xuICBhbmltYXRpb246IDIuNXMgZm9vdGVyLWJhbm5lci1zbGlkZS1vcGVuO1xuICB6LWluZGV4OiA5OTk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzIwcHg7XG4gIGJhY2tncm91bmQ6IHJnYigyNiw0NCw2Nik7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjYsNDQsNjYsMSkgMCUsIHJnYmEoMjYsNjgsMTA4LDEpIDEwMCUpO1xuICBib3JkZXItdG9wOiAxMHB4IHNvbGlkICM1MUFGNDY7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcblxuICAmLmNsb3NlZCB7XG4gICAgYW5pbWF0aW9uOiAyLjVzIGZvb3Rlci1iYW5uZXItc2xpZGUtY2xvc2U7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7IC8qIG1haW50YWlucyBsYXN0IHBvc2l0aW9uICovXG4gIH1cblxuICAud3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAzMHB4IDQwcHg7XG4gIH1cblxuICBoMiB7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICBmb250LXNpemU6IDUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDY2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogIzUxQUY0NjtcbiAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIHAge1xuICAgIG1heC13aWR0aDogNDQwcHg7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbWFyZ2luOiAwIDAgMjVweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmLnNhbXBsZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwcHg7XG4gICAgICByaWdodDogOTBweDtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAvLyB3aWR0aDogNDQzcHg7XG4gICAgICAgIC8vIGhlaWdodDogMjY0cHg7XG4gICAgICAgIC8vIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDE5LTA4LTE2LWZvb3Rlci1iYW5uZXItZWIucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAmLmNsb3NlIGEge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MHB4O1xuICAgICAgcmlnaHQ6IDQwcHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIC8vIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDE5LTA4LTE2LWZvb3Rlci1iYW5uZXItYXJyb3cuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAvLyB3aWR0aDogNTBweDtcbiAgICAgIC8vIGhlaWdodDogMzBweDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgICYuYnV0dG9uIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgYSB7XG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWluZGVudDogMCAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHggIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiA4cHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDMwcHgpIHtcblxuICAgIHAge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgICAmLnNhbXBsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUyNXB4KSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgaDIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZy10b3A6IDQ1cHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIEdsb2JhbCAvIFByaW9yaXR5IEl0ZW1zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBzaG93IG1vcmUvbGVzcyB0ZW1wbGF0ZSAqL1xuLmZpbml0ZVNjcm9sbCB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiA1cHggMCAwIDAgIWltcG9ydGFudDtcbn1cbi5maW5pdGVTY3JvbGwgLm5leHRfcGFnZSxcbi5tb3JlX2xpbmtzLFxuI21haW5fY29udGVudF93cmFwICNzaWRlYmFyICNjb250ZW50IHNwYW4ubW9yZV9saW5rcyxcbmJvZHkuc3Vic2NyaWJlICNpbm5lciAuZW50cnktY29udGVudCAuZWJ1bGxldGluLWFyY2hpdmUgcC5zaG93aGlkZSB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wOiAycHggc29saWQgIzVhNzk5YyAhaW1wb3J0YW50O1xuICBtYXJnaW46IDIwcHggMCAwIDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICY6aG92ZXIge1xuICAgIG9wYWNpdHk6IC43NTtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMTFweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTFweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMXB4IDEycHggMXB4IDEycHggIWltcG9ydGFudDtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG59XG5ib2R5LnVwY29taW5nX3dlYmluYXIgI3JlbGF0ZWQtcmVzb3VyY2VzIC5tb3JlX2xpbmtzIGEsXG5ib2R5LnVwY29taW5nX3dlYmluYXIgI3JlbGF0ZWQtc2VydmljZXMgLm1vcmVfbGlua3MgYSxcbmJvZHkuc2luZ2xlLXJkX2FsZXJ0X29ubGluZSAjcmVsYXRlZC1yZXNvdXJjZXMgLm1vcmVfbGlua3MgYSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMXB4IDEycHggMXB4IDEycHggIWltcG9ydGFudDtcbn1cbmJvZHkuc3Vic2NyaWJlICNpbm5lciAuZW50cnktY29udGVudCAuZWJ1bGxldGluLWFyY2hpdmUgcC5hcnJvd0Nsb3NlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50XG59XG5cbi5tb3JlX2xpbmtzLFxuI21haW5fY29udGVudF93cmFwICNzaWRlYmFyICNjb250ZW50IHNwYW4ubW9yZV9saW5rcyB7XG4gbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50OyBcbn1cblxuLyogcHJpbnQgc3R5bGVzaGVldCAqL1xuQG1lZGlhIHByaW50IHtcbiAgQGltcG9ydCAnY29tcG9uZW50cy9wcmludCc7XG59XG5cbi8qIHByZXZlbnQgc2xpZGVzIGZyb20gZmxhc2hpbmcgb24gcGFnZSBsb2FkICovXG4jc3BvdGxpZ2h0X3NsaWRlcixcbi5wbHRhX2ZlYXRfc2xpZGVyLFxuLndlYmluYXJfc3BvdGxpZ2h0X3NsaWRlciB7XG5cbiAgLnNsaWRlOm50aC1jaGlsZChuKzIpLFxuICAuc3BvdGxpZ2h0X2l0ZW06bnRoLWNoaWxkKG4rMikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxufVxuXG5cbi8qIFBhZ2VzIHdpdGhvdXQgc3RhbmRhcmQgbGF5b3V0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wZXJraW5zIHtcblxuICAvKiBoZWFkZXIgb3ZlcnJpZGVzICovXG4gICNoZWFkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAxNDBweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b206IDI1cHggc29saWQgIzNGNTQ2MDtcblxuICAgIC5sb2dvLXNsb2dhbiB7XG4gICAgfVxuXG4gICAgLm5hdi13cmFwLCAjY3VzdG9tX2h0bWwtMTIge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgLyogbGF5b3V0IG92ZXJyaWRlcyAqL1xuICAjd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICNpbm5lciB7XG4gICAgICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAzMHB4IDIwcHggIWltcG9ydGFudDtcblxuICAgICAgI21haW5fY29udGVudF93cmFwIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogY29udGVudCAqL1xuICAjbWFpbl9jb250ZW50X3dyYXAge1xuXG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbWFyZ2luOiAxNXB4IDAgMzBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDMwcHggMCAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCI7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgIG1hcmdpbjogMjBweCAwIDVweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzU0NmI4NTtcbiAgICAgIG1hcmdpbjogMCAwIDE0cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICYuYnRuLWNvbnRhaW5lciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBhLmJ0biB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHggIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDhweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMjBweCAwIDIwcHggNTBweDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgY29sb3I6ICM1NDZiODU7XG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgJi5sb2dvcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIC8vIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IDAgMTVweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcblxuICAgICNoZWFkZXIge1xuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFRlYWNoZXIgUHJvZmVzc2lvbmFsIERldmVsb3BtZW50IChvcnBoYW4gcGFnZSBjcmVhdGVkIDIwMjAtMDEtMjIpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS50ZWFjaGVyLXByb2Zlc3Npb25hbC1kZXZlbG9wbWVudCB7XG5cbiAgI2hlcm8ge1xuICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICB9XG5cbiAgLmVudHJ5LWNvbnRlbnQge1xuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzgxOWFiNjtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDA7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIDIwMjAtMDktMDggdGVtcCBmaXhcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vLyBib2R5Lndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0LnBvc3RpZC05ODk3OSAucHJvZHVjdCAuc3VtbWFyeSAuaW1hZ2VzICNwcmljZV90b3AgLmNhcnRfYm94X3RvcCAjcmVzb3VyY2VfYnRuQ2FydCxcbi8vIGJvZHkud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QucG9zdGlkLTk4OTUzIC5wcm9kdWN0IC5zdW1tYXJ5IC5pbWFnZXMgI3ByaWNlX3RvcCAuY2FydF9ib3hfdG9wICNyZXNvdXJjZV9idG5DYXJ0LFxuLy8gYm9keS53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdC5wb3N0aWQtODYyOTEgLnByb2R1Y3QgLnN1bW1hcnkgLmltYWdlcyAjcHJpY2VfdG9wIC5jYXJ0X2JveF90b3AgI3Jlc291cmNlX2J0bkNhcnQsXG4vLyBib2R5Lndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0LnBvc3RpZC05ODk2MCAucHJvZHVjdCAuc3VtbWFyeSAuaW1hZ2VzICNwcmljZV90b3AgLmNhcnRfYm94X3RvcCAjcmVzb3VyY2VfYnRuQ2FydCB7XG4vLyBcbi8vICAgYS5hZGRfdG9fY2FydF9idXR0b24ge1xuLy8gICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbi8vICAgfVxuLy8gXG4vLyB9XG4vLyBcblxuXG5cblxuLyogMjAyMC0wMy0yNCBNb3ZlZCBOaWNrIHN0eWxpbmcgaGVyZSBhbmQgc3RvcHBlZCB1c2luZyBzZXBhcmF0ZSBzdHlsZXNoZWV0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBBT1cgQ2hpbGQgUGFnZXMgLSBURU1QIHN0eWxlcyAqL1xuXG5ib2R5LnBhZ2UtdGVtcGxhdGUtYW93LXByb2plY3RsaXN0LXBhZ2UgI3NlY3Rpb25faGVhZGVyLFxuYm9keS5wYWdlLXRlbXBsYXRlLWFvdy1yZXNvdXJjZWxpc3QtcGFnZSAjc2VjdGlvbl9oZWFkZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cblxuLypcbipcbiogU2VydmljZS9QTFRBIChzZXJ2aWNlLXBsdGEtcGFnZS5waHApICYmIFJlc2VhcmNoICYgRXZhbHVhdGlvbiBUZW1wbGF0ZXNcbipcbiovXG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1zZXJ2aWNlLXBsdGEtcGFnZSAjaW5uZXIgI3NlY3Rpb25faGVhZGVyIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5ib2R5LnBhZ2UtdGVtcGxhdGUtc2VydmljZS1wbHRhLXBhZ2UgLmhlcm8ge1xuICAgIC8vaGVpZ2h0OiA0MDBweDtcbn1cbmJvZHkucGFnZS10ZW1wbGF0ZS1zZXJ2aWNlLXBsdGEtcGFnZSAjaW5uZXIgI3NlY3Rpb25faGVhZGVyIC5lbnRyeS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xufVxuXG5ib2R5LnBhZ2UtdGVtcGxhdGUtc2VydmljZS1wbHRhLXBhZ2UgI2ZlYXR1cmVkLWFvdy5mZWF0dXJlZCAuaW50cm8ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xufVxuYm9keS5wYWdlLXRlbXBsYXRlLXNlcnZpY2UtcGx0YS1wYWdlIC5sX2NvbCxcbmJvZHkucmVzZWFyY2gtZXZhbHVhdGlvbiAubF9jb2wge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA3MCU7XG59XG5ib2R5LnBhZ2UtdGVtcGxhdGUtc2VydmljZS1wbHRhLXBhZ2UgLnJfY29sLFxuYm9keS5yZXNlYXJjaC1ldmFsdWF0aW9uIC5yX2NvbHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1zZXJ2aWNlLXBsdGEtcGFnZSAjc2VjdGlvbl9oZWFkZXIgLmJ0bi1jb250YWN0LFxuYm9keS5zaW5nbGUtc2VydmljZSAuaGVyb19zZWN0aW9uX2hlYWRlciAuYnRuLWNvbnRhY3QsXG5ib2R5LnJlc2VhcmNoLWV2YWx1YXRpb24gI3NlY3Rpb25faGVhZGVyIC5idG4tY29udGFjdCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogIzE2NjlDOTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuXG4vKiBGdWxsLXdpZHRoIEZlYXR1cmVkIFNlY3Rpb24gLSBUbyBJbnRlZ3JhdGUgdy8gRXhpc3RpbmcgU3R5bGVzICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtc2VydmljZS1wbHRhLXBhZ2UgLmZlYXR1cmVkX2Z3LFxuYm9keS5zaW5nbGUtc2VydmljZSAuZmVhdHVyZWRfZncge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogMTA0MHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogNDBweCAyMHB4O1xuICAgIH1cbn1cblxuXG4vKiBSZXNlYXJjaCAmIEV2YWx1YXRpb24gU2VjdGlvbiBTdHlsZXMgKi9cbmJvZHkucmVzZWFyY2gtZXZhbHVhdGlvbiB7XG4gICAgI2lubmVyIHtcbiAgICAgICAgI3NlY3Rpb25faGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIzNXB4IDAgNDBweDsgLyogbGlrZSBQTFRBIGhlcm8gc2VjdGlvbiBoZWFkZXIgKi9cbiAgICAgICAgICAgIGgxLnNlY29uZGFyeSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZW50cnktY29udGVudCB7XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cblxuLyogU2luZ2xlIFByb2plY3QgVGVtcGxhdGUgU3R5bGVzIC0gVG8gSW50ZWdyYXRlIHcvIE1haW4gUmVkZXNpZ24gU3R5bGVzICovXG4uc2luZ2xlLXByb2plY3Qge1xuICAgIC5yZWxhdGVkLXNlcnZpY2VzLWxpc3Qge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0FCQzFEQTtcbiAgICAgICAgcGFkZGluZy10b3A6IDJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMmVtO1xuICAgIH1cbiAgICAucmVsYXRlZC13ZWJzaXRlIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNBQkMxREE7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyZW07XG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cblxuLypcbipcbiogV2VzdEVkIEV2ZW50c1xuKlxuKi9cbmJvZHkud2VzdGVkLWV2ZW50IHtcbiAgICAjaW5uZXIge1xuICAgICAgICAjc2VjdGlvbl9oZWFkZXIge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmhlcm8tLWV2ZW50cyB7XG4gICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDQwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMjBweCAyNXB4IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG5cbi8qXG4qXG4qIFdlc3RFZCBpbiBOZXcgWW9yayAtIE9ycGhhbiBQYWdlIFN0eWxlc1xuKlxuKi9cblxuYm9keS5uZXcteW9yayB7XG4gICAgI2lubmVyIHtcbiAgICAgICAgI3NlY3Rpb25faGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIzNXB4IDAgNDBweDsgLyogbGlrZSBQTFRBIGhlcm8gc2VjdGlvbiBoZWFkZXIgKi9cbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiBvdmVycmlkZSBnbG9iYWwuY3NzIHZhbHVlICovXG4gICAgICAgIH1cbiAgICAgICAgLmhlcm9fX2JvZHkge1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cblxuLypcbipcbiogUHVibGljYXRpb25zICYgUmVzb3VyY2VzIC0gVGVtcCBTdHlsZXNcbipcbiovXG5cbiNoZXJvLnJlc291cmNlcyB7XG4gICAgLmhlcm8tY29udGVudCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuICAgIC5oZXJvLWNvbHVtbiB7XG4gICAgICAgICYubC1jb2wge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICB9XG4gICAgICAgICYuci1jb2wge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGlua3Mge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzgxOUFCNjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICNzdWJzdWJtZW51IHVsIGxpIHtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgIH1cbiAgICAjc3BvdGxpZ2h0X3NsaWRlciB7IC8vIHNsaWRlciBzdHlsZSBvdmVycmlkZXMgKHNlZSByZXNvdXJjZXNnbG9iYWwuY3NzKVxuICAgICAgICAuc2xpZGUge1xuICAgICAgICAgICAgLnBob3RvIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmJvZHkud29vY29tbWVyY2UsXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2Uge1xuICAgIC5wYWdlLXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IC8vIHRlbXAgb3ZlcnJpZGUgdG8gZGlzcGxheSBzZWN0aW9uICh0YXhvbm9teSkgaGVhZGluZ3NcbiAgICB9XG59XG5cbi8qIFNpbmdsZSBSZXNvdXJjZSBEZXRhaWwgLSBBY2NvcmRpb24gKi9cbmJvZHkuc2luZ2xlLXByb2R1Y3Qge1xuICAgIC5wYWdlX2NvbnRlbnRfYm94IHtcbiAgICAgICAgJi5jb2xsYXBzZWQgLnBhZ2VfY29udGVudF9ib3hfYm9keV90ZXh0IHsgLyogdGVzdCBjb250ZW50ICovXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5wYWdlX2NvbnRlbnRfYm94X2JvZHkudGV4dCB7XG4gICAgICAgICAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKiBSJkQgQWxlcnQgLSBUZW1wIFN0eWxlcyAqL1xuLnNpbmdsZS1yZF9hbGVydF9vbmxpbmUge1xuICAgICNjb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIC5wb3N0X2ltYWdlIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDUwcHggMjBweCAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA2ODBweDtcbiAgICAgICAgfVxuICAgICAgICAuZW50cnktY29udGVudCB7XG4gICAgICAgICAgICAudG9jIHtcbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMwMHB4XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuXG4vKiBIb21lcGFnZSAtIFRlbXAgU3R5bGVzICovXG5ib2R5LmhvbWUge1xuICAgICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgICB9XG4gICAgI2NvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIH1cbn1cblxuIiwiLyogU2l6aW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJHNtLWJyZWFrOiA5MDBweDtcblxuLyogd3JhcCBtYXggd2lkdGggKi9cbiRtYXgtd2lkdGg6IDEwNDBweDtcblxuXG4vKiBGb250c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiRmb250LXByaW1hcnk6IFwiUm9ib3RvXCI7XG4kZm9udC1zZWNvbmRhcnk6IFwiUm9ib3RvIFNsYWJcIjtcblxuXG4vKiBDb2xvciBEZWZhdWx0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiR0ZXh0LWNvbG9yLXByaW1hcnk6ICM1NDZCODU7XG5cbiRsaW5rLXByaW1hcnk6ICMxNjY5Yzk7XG5cbiRib3JkZXItcHJpbWFyeTogI0FCQzFEQTtcblxuXG4vKiBDb2xvciBDdXN0b21cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4kd2VzdGVkLWdyZWVuOiAjNTFBRjQ2O1xuXG4kd2VzdGVkLWdyZXk6ICNENURCREQ7XG4kd2VzdGVkLWdyZXktMjogIzU0NkI4NTtcbiR3ZXN0ZWQtZ3JleS0zOiAjNUE3OTlDO1xuJHdlc3RlZC1ncmV5LTQ6ICNBQkMxREE7XG4kd2VzdGVkLWdyZXktNTogIzMxNTA3QztcblxuJHdlc3RlZC1uYXZ5LWJsdWU6ICMzRjY0OEY7XG4kd2VzdGVkLWRhcmstbmF2eS1ibHVlOiAjMWIzODVmO1xuJHdlc3RlZC1lbGVjdHJpYy1ibHVlOiAjMTY2OUM5O1xuJHdlc3RlZC1saWdodC1ibHVlOiAjODE5QUI2O1xuJHdlc3RlZC1iYWJ5LWJsdWU6ICNFM0VDRjk7XG4kd2VzdGVkLWJhYnktYmx1ZS1sdDogI0VFRjJGNztcblxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuVHlwb2dyYXBoeVxuXG4tIC0gLVxuXG5Hb29nbGUgRm9udHNcblxuQm9keVxuUm9ib3RvIDEwMCB0aGluXG5Sb2JvdG8gMzAwIGxpZ2h0XG5Sb2JvdG8gNDAwIHJlZ3VsYXJcblJvYm90byA1MDAgbWVkaXVtXG5Sb2JvdG8gNzAwIGJvbGRcblxuaDFcblJvYm90byBTbGFiIDMwMCBsaWdodFxuUm9ib3RvIFNsYWIgNDAwIHJlZ3VsYXJcblJvYm90byBTbGFiIDcwMCBib2xkXG5cbk5hdlxuUm9ib3RvIENvbmRlbnNlZCA0MDAgcmVndWxhclxuXG4tIC0gLVxuXG5HbG9iYWxcblxucCB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogIzU0NmI4NTtcbiAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4tIC0gLVxuXG5IZXJvXG5cbnAge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICNmZmY7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuXG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5lbnRyeS1jb250ZW50IHtcblxuICBoMiB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogIzUxQUY0NjtcbiAgICBtYXJnaW46IDI1cHggMCAxMHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgfVxuXG4gIGgzIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgIG1hcmdpbjogMjVweCAwIDEwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgdWwsIG9sIHtcblxuICAgIGxpIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuXG4gIH1cblxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxufVxuXG5cblxuXG4iLCIvKiBNaXhpbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuLyogY2xlYXJmaXhcbkBpbmNsdWRlIGNsZWFyZml4KCk7XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGNsZWFyZml4KCkge1xuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cblxufVxuXG4uY2xlYXJmaXgge1xuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cblxufVxuXG5cbi8qIGJvcmRlci1yYWRpdXNcbkBpbmNsdWRlIGJvcmRlci1yYWRpdXMoeHB4KTtcbkBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHhweCk7XG5AaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKHhweCk7XG5AaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh4cHgpO1xuQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzICh4cHgpO1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94OyAgLyogc3RvcHMgYmcgY29sb3IgZnJvbSBsZWFraW5nIG91dHNpZGUgdGhlIGJvcmRlcjogKi9cbn1cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG59XG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbn1cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG59XG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5IZWFkZXIgU3R5bGluZ1xuLSBMb2dvIGFuZCBTbG9nYW5cbi0gVXRpbGl0eSBOYXZcbi0gTWFpbiBOYXZcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgJ192YXJpYWJsZXMnO1xuXG5cbi8qIEZpeGVkIGhlYWRlciBlbGVtZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg1MXB4KSB7XG5cbiAgI3dyYXAge1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuXG4gICNoZWFkZXIge1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIHJlcXVpcmVkIHRvIHNob3cgZHJvcGRvd25zICovXG4gICAgdG9wOiAzNXB4O1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxNjVweCAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG5cbiAgI2hlcm8ge1xuICAgIG1hcmdpbi10b3A6IDIwMHB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAjaW5uZXIge1xuICAgIG1hcmdpbi10b3A6IDIwMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAjaGVybyB7XG4gICAgICBtYXJnaW4tdG9wOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxuICAjaGVybyArICNpbm5lciB7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICB9XG5cbn1cblxuLyogcmVwb3NpdGlvbnMgd3AgYWRtaW4gYmFyIGFuZCB3b3JrIGludG8gaGVybyBzdHlsaW5nICovXG4jd3BhZG1pbmJhciB7XG4gIHotaW5kZXg6IDk5ODtcbiAgdG9wOiAxODZweDtcbiAgaGVpZ2h0OiA0NnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Y1NDYwO1xuICBwYWRkaW5nLXRvcDogOHB4O1xuXG4gIGxpOmhvdmVyIC5hYi1pdGVtLFxuICAuYWItc3ViLXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZjU0NjAgIWltcG9ydGFudDtcbiAgfVxuXG59XG5cblxuLyogTG9nbyBhbmQgU2xvZ2FuIChXaWRnZXQ6IHNpdGUgbG9nbyBhbmQgc2xvZ2FuKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZWFkZXIge1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1ib3R0b206IDE0cHggc29saWQgIzNGNTQ2MDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIC8qIGhpZGUgZGVmYXVsdCBsb2dvICovXG4gICN0aXRsZS1hcmVhIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLyogbG9nbyAmIHNsb2dhbiAqL1xuICAubG9nby1zbG9nYW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHggMzBweCAyMHB4O1xuXG4gICAgLyogbG9nbyAqL1xuICAgIC5sb2dvIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDI4N3B4O1xuICAgICAgaGVpZ2h0OiA0OXB4O1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiBpbmhlcml0O1xuICAgICAgICBoZWlnaHQ6IGluaGVyaXQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIHNsb2dhbiAqL1xuICAgIC5zbG9nYW4ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAyOCU7XG4gICAgICBsZWZ0OiAzMjhweDtcbiAgICAgIHdpZHRoOiA0NDdweDtcbiAgICAgIGhlaWdodDogNTBweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuXG4gICAgLmxvZ28tc2xvZ2FuIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLmxvZ28ge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnNsb2dhbiB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBVdGlsaXR5IE5hdiAoV1AgTWVudSBcIlV0aWxpdHlcIiwgYnV0IGl0ZW1zIGFyZSBhbGwgaW5cbi9saWIvbmF2L3V0aWxpdGllcy5waHApXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI25hdiB7XG4gIGZsb2F0OiBub25lO1xuICBoZWlnaHQ6IDM1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCNUMxQ0M7XG5cbiAgdWwge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICBsaSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIFNvY2lhbCBJY29ucyAqL1xuICBsaS5tZW51LWl0ZW0tbGluayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvbmF2LWJhbGwucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQ7XG4gICAgcGFkZGluZzogMCAxMHB4IDAgNXB4O1xuXG4gICAgYSB7XG4gICAgICBmb250LWZhbWlseTogJHdlc3RlZC1uYXZ5LWJsdWU7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBwYWRkaW5nOiA2cHggNXB4IDVweCA1cHg7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBTb2NpYWwgSWNvbnMgKi9cbiAgbGkubWVudS1pdGVtLXNvY2lhbCB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL25hdi1iYWxsLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xuXG4gICAgYSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgbWFyZ2luOiAxMHB4IDZweCAwIDZweDtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICB9XG5cbiAgICAgICYudHdpdHRlciB7XG4gICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXR3aXR0ZXItbmF2LnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgfVxuXG4gICAgICAmLmxpbmtlZGluIHtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tbGlua2VkaW4tbmF2LnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgfVxuXG4gICAgICAmLmZhY2Vib29rIHtcbiAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1mYWNlYm9vay1uYXYucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIENhcnQgKi9cbiAgbGkudmlld19jYXJ0IHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvbmF2LWJhbGwucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQ7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMTBweCAwIDA7XG5cbiAgICBhIHtcbiAgICAgIG1hcmdpbjogNnB4IDZweCAwIDZweDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG5cbiAgICAgIHNwYW4uc2VwIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgc3Bhbi5jb3VudCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC45O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIHRyYW5zaXRpb246IGluaGVyaXQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIFNlYXJjaCBzbGlkZXIgKi9cbiAgbGkubWVudS1pdGVtLXNlYXJjaCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgdHJhbnNpdGlvbjogd2lkdGggMC4zcztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogNXB4IDAgMCAwO1xuXG4gICAgLnNlYXJjaGJveCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB3aWR0aDogMzZweDtcbiAgICAgIG1pbi13aWR0aDogMzZweDtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzO1xuICAgIH1cblxuICAgIC5zZWFyY2hib3gtb3BlbiB7XG4gICAgICB3aWR0aDogMjUwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgfVxuXG4gICAgLyogaW5wdXQgKi9cbiAgICBpbnB1dCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXG4gICAgICAmLnNlYXJjaGJveC1pbnB1dCB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogdHJpZ2dlciAqL1xuICAgIC5zZWFyY2hib3gtaWNvbixcbiAgICAuc2VhcmNoYm94LXN1Ym1pdCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgY29sb3I6ICNkY2RkZDg7XG4gICAgICBiYWNrZ3JvdW5kOiAjYjVjMWNjIHVybChcIi4uL2ltYWdlcy9pY29uLXNlYXJjaC13aGl0ZS5wbmdcIikgbm8tcmVwZWF0IGNlbnRlciByaWdodDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDVweCA4cHggNXB4IDhweDtcbiAgICB9XG5cbiAgICAuc2VhcmNoYm94LXN1Ym1pdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzkyYTViNztcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIH1cblxuICB9XG5cbiAgLyogaGlkZSB1dGlsaXR5IG5hdiBhdCBtb2JpbGUgKi9cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjVweCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxufVxuXG5cbi8qIE1haW4gTmF2IHdpdGggRHJvcGRvd25zICgvbGliL25hdi9wcmltYXJ5LW5hdi5waHApXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlYWRlciAuaGVhZGVyLXdpZGdldC1hcmVhIHtcbiAgLyogU2FmYXJpIGZpeCB3aGVuIHVzaW5nIGZpeGVkIHBvc2l0aW9uaW5nICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXG4gIC5uYXYtd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkd2VzdGVkLWdyZXk7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAjbmF2LXByaW1hcnktY3VzdG9tIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDQwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcblxuICAgICAgdWwjbmF2LXByaW1hcnkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbjogMCAtNHB4IDAgMDsgLyogaW5saW5lLWJsb2NrIGdhcCBmaXggKi9cbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLW5hdnktYmx1ZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDEwcHg7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLyogZHJvcGRvd24gKi9cbiAgICAgICAgICB1bC5zdWItbWVudSB7XG5cbiAgICAgICAgICAgIC8qIHRlc3RpbmcgKi9cbiAgICAgICAgICAgIC8vIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHotaW5kZXg6IDMwMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDE0cHggc29saWQgIzNmNTQ2MDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgN3B4IDIwcHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAubmF2LWl0ZW0tY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgIC5jb2wtd3JhcCB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTA0MHB4O1xuICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAuY29sIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMSAxIDIwMHB4O1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDsgLyogZmxleGJveCBmYWxsYmFjayAqL1xuXG4gICAgICAgICAgICAgICAgICAgIC8qIElFMTAsIElFMTEgKi9cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgICAgICAgICAgICAgICAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjUwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRDNEQkU2O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmludHJvIHtcbiAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAudmVydGljYWwtd3JhcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAvKiBJRTEwLCBJRTExICovXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICAgICAgICAgICAgICAgICAgICAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAvKiBzZXBhcmF0b3IgKi9cbiAgICAgICAgICAgICAgICAgICAgICAgICYuc2VwIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICBociB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjRDNEQkU2O1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5zZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM4MTlhYjY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1uYXZ5LWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvKiBBYm91dCBVcyAqL1xuICAgICAgICAgICYubmF2LWFib3V0LXVzIHtcblxuICAgICAgICAgICAgLmNvbC5pbnRybyB7XG5cbiAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMDBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLyogQU9XICovXG4gICAgICAgICAgJi5uYXYtYW93IHtcblxuICAgICAgICAgICAgLyogdGVzdGluZyAqL1xuICAgICAgICAgICAgLy8gdWwuc3ViLW1lbnUge2Rpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7fVxuXG4gICAgICAgICAgICAuY29sLmludHJvIHtcblxuICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxpLnNlY3Qge1xuICAgICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8qIFJlc2VhcmNoICYgRXZhbHVhdGlvbiAqL1xuICAgICAgICAgICYubmF2LXJlcy1ldmFsIHtcblxuICAgICAgICAgICAgLmNvbC5pbnRybyB7XG4gICAgICAgICAgICAgIC8qIG92ZXJyaWRlIGluaXRpYWwgZmxleCB3aWR0aCAqL1xuICAgICAgICAgICAgICBmbGV4OiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHdpZHRoOiA0NTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLyogUmVzb3VyY2VzICovXG4gICAgICAgICAgJi5uYXYtcmVzb3VyY2VzIHtcblxuXG4gICAgICAgICAgICAuY29sLmludHJvIHtcbiAgICAgICAgICAgICAgZmxleDogaW5pdGlhbCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB3aWR0aDogMzUwcHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8qIFdvcmsgYXQgV2VzdEVkLCBTZWFyY2ggKG1vYmlsZSkgKi9cbiAgICAgICAgICAmLm5hdi1jYXJlZXJzLFxuICAgICAgICAgICYubmF2LXNlYXJjaCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgdWwjbmF2LXByaW1hcnkge1xuXG4gICAgLyogc2hyaW5rIHBhZGRpbmcgKi9cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4ODhweCkge1xuXG4gICAgICBsaSBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBoaWRlIGhhbWJ1cmdlciBmb3IgZGVza3RvcCAqL1xuICAjY3VzdG9tX2h0bWwtMTIsXG4gICNjdXN0b21faHRtbC04LFxuICAjY3VzdG9tX2h0bWwtNSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2NXB4KSB7XG5cbiAgICAvKiBkaXNwbGF5IG1haW4gbmF2IGFnYWluIG9uY2Ugd2lkZSBlbm91Z2ggKi9cbiAgICAubmF2LXdyYXAge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY1cHgpIHtcblxuICAgIC8qIGRpc3BsYXkgaGFtYnVyZ2VyIGZvciBtb2JpbGUgKi9cbiAgICAjY3VzdG9tX2h0bWwtMTIsXG4gICAgI2N1c3RvbV9odG1sLTgsXG4gICAgI2N1c3RvbV9odG1sLTUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDIwcHg7XG4gICAgICByaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgc3Bhbi5saW5lIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICR3ZXN0ZWQtbmF2eS1ibHVlO1xuICAgICAgICBtYXJnaW46IDAgMCA1cHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIG1vYmlsaXplIG1haW4gbmF2ICovXG4gICAgLm5hdi13cmFwIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB6LWluZGV4OiA5OTk5O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAjbmF2LXByaW1hcnktY3VzdG9tIHtcblxuICAgICAgICB1bCNuYXYtcHJpbWFyeSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAvKiBXb3JrIGF0IFdlc3RFZCwgU2VhcmNoIChtb2JpbGUpICovXG4gICAgICAgICAgICAmLm5hdi1jYXJlZXJzLFxuICAgICAgICAgICAgJi5uYXYtc2VhcmNoIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubmF2LXNlYXJjaHtcblxuICAgICAgICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgZmxleDogMSAxIDUwcHg7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCA1cHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICAgICAgZmxleDogMiAxIGF1dG87XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCA1cHggMTBweCAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxMnB4O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgICAgICAgICAgZmxleDogMSAxIDUwcHg7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3NXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDJweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDE1cHggMCAxMHB4IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDA7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM0MHB4KSB7XG5cbiAgICAgICAgICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCAwIDVweCAwO1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IDE1cHggMCA1cHggMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1uYXZ5LWJsdWU7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2VzdGVkLWdyZXk7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuXG4gICAgICAgICAgICAgICYuc2Ytd2l0aC11bCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL21lbnUtbW9iaWxlLWFycm93X3JpZ2h0LmdpZlwiKSBuby1yZXBlYXQgcmlnaHQgY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvbWVudS1tb2JpbGUtYXJyb3cuZ2lmXCIpIG5vLXJlcGVhdCByaWdodCBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKiBkcm9wZG93bnMgKi9cbiAgICAgICAgICAgIHVsLnN1Yi1tZW51IHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3ZXN0ZWQtZ3JleTtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCAyMHB4O1xuXG4gICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1uYXZ5LWJsdWU7XG4gICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4IDEwcHggMzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5uYXYtaXRlbS1jb250YWluZXIge1xuXG4gICAgICAgICAgICAgICAgICAuY29sLXdyYXAge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIC5jb2wge1xuICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICYuaW50cm8ge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAudmVydGljYWwtd3JhcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMCAxMHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAmLnNlcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICYuc2VjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogTmF2IG9uIHN0YXRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZWFkZXIgLmhlYWRlci13aWRnZXQtYXJlYSB7XG5cbiAgbGkuY3VycmVudC1tZW51LWl0ZW0sXG4gIGxpLmN1cnJlbnQtbWVudS1hbmNlc3RvcixcbiAgbGkuY3VycmVudC1tZW51LXBhcmVudCB7XG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9uYXYtYXJyb3cucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgMzFweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbjtcbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qIEFib3V0IFVzICovXG5ib2R5LnBhZ2UtYWJvdXQtdXMsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtYm9hcmQtcGFnZSxcbmJvZHkucGFnZS10ZW1wbGF0ZS1sZWFkZXJzaGlwLFxuYm9keS5wYWdlLXRlbXBsYXRlLXN0YWZmZGlyZWN0b3J5LXBhZ2UsXG5ib2R5LnNpbmdsZS1wZXJzb25uZWwsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcHJvZ3JhbXNfbGlzdC1wYWdlLFxuYm9keS5zaW5nbGUtcHJvZ3JhbSxcbmJvZHkucGFnZS10ZW1wbGF0ZS1wcm9ncmFtX3NlcnZpY2VsaXN0LFxuYm9keS5wYWdlLXRlbXBsYXRlLXByb2plY3RfbGlzdC1wYWdlLFxuYm9keS5wYWdlLXRlbXBsYXRlLXByb2dyYW1fcmVzb3VyY2VsaXN0LFxuYm9keS5wYWdlLXRlbXBsYXRlLXByb2dyYW1fa2V5X3N0YWZmLXBhZ2UsXG5ib2R5LnBhZ2Utd2VzdGVkLW9mZmljZXMsXG5ib2R5LnBhZ2UtY2xpZW50cyxcbmJvZHkucGFnZS13b3JraW5nLXdpdGgtd2VzdGVkLFxuYm9keS5lbWFpbC1mb3JtIHtcblxuICAjaGVhZGVyIHVsI25hdi1wcmltYXJ5IGxpLm5hdi1hYm91dC11cyBhIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL25hdi1hcnJvdy5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgMzFweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzUxYWY0NiAhaW1wb3J0YW50O1xuXG4gICAgLyogaGlkZSBkb3duIGFycm93IGF0IG1vYmlsZSAqL1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2NXB4KSB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxufVxuXG4vKiBBcmVhcyBvZiBXb3JrICovXG5ib2R5LmFyZWFfb2Zfd29yay10ZW1wbGF0ZS1kZWZhdWx0LFxuYm9keS5wYWdlLXRlbXBsYXRlLWFvdy1wcm9qZWN0bGlzdC1wYWdlLFxuYm9keS5wYWdlLXRlbXBsYXRlLWFvdy1yZXNvdXJjZWxpc3QtcGFnZSxcbmJvZHkucGFnZS10ZW1wbGF0ZS1tYWpvcmluaXRpYXRpdmVzLWxpc3QtcGFnZSxcbmJvZHkuZm91ci1kb21haW5zLFxuYm9keS5jaGFydGVycy1jaG9pY2UsXG5ib2R5LnRyYXVtYSxcbmJvZHkuY292aWQtMTktcmVzb3VyY2VzLFxuYm9keS5jb3ZpZC0xOS1zZXJ2aWNlcyB7XG5cbiAgI2hlYWRlciB1bCNuYXYtcHJpbWFyeSBsaS5uYXYtYW93IGEge1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbmF2LWFycm93LnBuZykgbm8tcmVwZWF0IGNlbnRlciAzMXB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNTFhZjQ2ICFpbXBvcnRhbnQ7XG5cbiAgICAvKiBoaWRlIGRvd24gYXJyb3cgYXQgbW9iaWxlICovXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY1cHgpIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qIFJlc2VhcmNoICYgRXZhbHVhdGlvbiAqL1xuYm9keS5wYWdlLXRlbXBsYXRlLXJlc2VhcmNoLWV2YWx1YXRpb24sXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcmUtaG93LXBhZ2UsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcmUtcmVwb3J0c19wdWItcGFnZSxcbmJvZHkucGFnZS10ZW1wbGF0ZS1yZS1yZXNlYXJjaF9ibG9nLXBhZ2Uge1xuXG4gICNoZWFkZXIgdWwjbmF2LXByaW1hcnkgbGkubmF2LXJlcy1ldmFsIGEge1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbmF2LWFycm93LnBuZykgbm8tcmVwZWF0IGNlbnRlciAzMXB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNTFhZjQ2ICFpbXBvcnRhbnQ7XG5cbiAgICAvKiBoaWRlIGRvd24gYXJyb3cgYXQgbW9iaWxlICovXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY1cHgpIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qIFByb2Zlc3Npb25hbCBEZXZlbG9wbWVudCAqL1xuYm9keS5wYWdlLXRlbXBsYXRlLXByb2Zlc3Npb25hbC1kZXZlbG9wbWVudC1wYWdlLFxuYm9keS50eXBlLXByb2Zlc3Npb25hbC1kZXZlbG9wbWVudCxcbmJvZHkucHJvZmVzc2lvbmFsLWRldmVsb3BtZW50IHtcblxuICAjaGVhZGVyIHVsI25hdi1wcmltYXJ5IGxpLm5hdi1wZCBhIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL25hdi1hcnJvdy5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgMzFweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzUxYWY0NiAhaW1wb3J0YW50O1xuXG4gICAgLyogaGlkZSBkb3duIGFycm93IGF0IG1vYmlsZSAqL1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2NXB4KSB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxufVxuXG4vKiBUZWNobmljYWwgQXNzaXN0YW5jZSAqL1xuYm9keS5wYWdlLXRlbXBsYXRlLXRlY2huaWNhbC1hc3Npc3RhbmNlLXBhZ2UsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtdGVjaG5pY2FsLWFzc2lzdGFuY2UtY2hpbGQsXG5ib2R5LnR5cGUtdGVjaG5pY2FsLWFzc2lzdGFuY2UsXG5ib2R5LnRlY2huaWNhbC1hc3Npc3RhbmNlIHtcblxuICAjaGVhZGVyIHVsI25hdi1wcmltYXJ5IGxpLm5hdi10YSBhIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL25hdi1hcnJvdy5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgMzFweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzUxYWY0NiAhaW1wb3J0YW50O1xuXG4gICAgLyogaGlkZSBkb3duIGFycm93IGF0IG1vYmlsZSAqL1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2NXB4KSB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxufVxuXG4vKiBSZXNvdXJjZXMgKi9cbmJvZHkud29vY29tbWVyY2UtcGFnZSxcbmJvZHkucGFnZS1yZXByaW50LXBlcm1pc3Npb25zLFxuYm9keS5wYWdlLXJlc291cmNlcy1oZWxwLFxuYm9keS52MjAxNy1jYXRhbG9ncyxcbmJvZHkud2ViaW5hcnMsXG5ib2R5LmFyY2hpdmVkX3dlYmluYXIsXG5ib2R5LnJkYWxlcnQsXG5ib2R5Lndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IHtcblxuICAjaGVhZGVyIHVsI25hdi1wcmltYXJ5IGxpLm5hdi1yZXNvdXJjZXMgYSB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9uYXYtYXJyb3cucG5nKSBuby1yZXBlYXQgY2VudGVyIDMxcHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICM1MWFmNDYgIWltcG9ydGFudDtcblxuICAgIC8qIGhpZGUgZG93biBhcnJvdyBhdCBtb2JpbGUgKi9cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjVweCkge1xuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuLyogV2VzdEVkIEV2ZW50cyAqL1xuYm9keS53ZXN0ZWQtZXZlbnQsXG5ib2R5Lndlc3RlZF9ldmVudC10ZW1wbGF0ZS1kZWZhdWx0LFxuYm9keS5wYWdlLXRlbXBsYXRlLXdlc3RlZF9ldmVudC1hcmNoaXZlIHtcblxuICAjaGVhZGVyIHVsI25hdi1wcmltYXJ5IGxpLm5hdi1ldmVudHMgYSB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9uYXYtYXJyb3cucG5nKSBuby1yZXBlYXQgY2VudGVyIDMxcHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICM1MWFmNDYgIWltcG9ydGFudDtcblxuICAgIC8qIGhpZGUgZG93biBhcnJvdyBhdCBtb2JpbGUgKi9cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjVweCkge1xuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuRm9vdGVyXG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0ICdfdmFyaWFibGVzJztcblxuXG4vKiBGb290ZXIgRm9ybVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNmb290ZXItZm9ybSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3ZXN0ZWQtbmF2eS1ibHVlO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIC53cmFwIHtcbiAgICBtYXgtd2lkdGg6IDEwNDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gIH1cblxuICAuZmZhIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTgwcHg7XG4gIH1cblxuICBoMiB7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLyogY29sbGFwc2UgKi9cbiAgLmNvbnRhY3QtZm9ybS10b2dnbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxNDRweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9mb290ZXItZm9ybS1jbG9zZWQucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IC43NTtcbiAgICB9XG5cbiAgICAvKiB3aGVuIG9wZW4sIGhpZGUgdHJpZ2dlciAqL1xuICAgICYuZXhwYW5kZWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIE1hcmtldG8gZm9ybSAqL1xuICBmb3JtLm1rdG9Gb3JtIHtcbiAgICB3aWR0aDogNjYuNiUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAubWt0b0h0bWxUZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAubWt0b0Zvcm1Sb3cge1xuICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjpudGgtY2hpbGQoNSkgLm1rdG9Gb3JtQ29sIC5ta3RvRmllbGRXcmFwIHtcbiAgICAgICAgd2lkdGg6IDk3LjUlICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIC5ta3RvRm9ybUNvbCB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG5cbiAgICAgIC8qIEkgaGF2ZSBhIHF1ZXN0aW9uIG9yIGNvbW1lbnQgYWJvdXQgKi9cbiAgICAgICY6bnRoLWNoaWxkKDUpIC5ta3RvRm9ybUNvbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC5ta3RvRmllbGRXcmFwIHtcbiAgICAgICAgICB3aWR0aDogOTglO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogQ29tbWVudCAqL1xuICAgICAgJjpudGgtY2hpbGQoNikgLm1rdG9Gb3JtQ29sIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLm1rdG9GaWVsZFdyYXAge1xuICAgICAgICAgIHdpZHRoOiA5Ny41JTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIGNoZWNrYm94ICovXG4gICAgICAmOm50aC1jaGlsZCg3KSAubWt0b0Zvcm1Db2wge1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAubWt0b0NoZWNrYm94TGlzdCB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAxMG94O1xuICAgICAgICAgIHdpZHRoOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLm1rdG9GaWVsZFdyYXAge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG5cbiAgICAvKiBsYWJlbCAqL1xuICAgIGxhYmVsIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW46IDAgMCA2cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLyogaW5wdXQgKi9cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgc2VsZWN0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogNHB4IDEycHg7XG4gICAgfVxuXG4gICAgdGV4dGFyZWEge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC5ta3RvQXN0ZXJpeCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLyogY2hlY2tib3ggbGlzdCAqL1xuICAgIC5ta3RvQ2hlY2tib3hMaXN0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC8qIG5vdGU6IGNhbid0IHJlYWxseSB1c2UgY3VzdG9tIGNoZWNrYm94IHN0eWxpbmcgaGVyZSBzZWVuIGVsc2V3aGVyZSBpbiBzaXRlICovXG4gICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgIG1hcmdpbjogM3B4IDhweCAxMnB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogc3VibWl0ICovXG4gICAgLm1rdG9CdXR0b25Sb3cge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgLm1rdG9CdXR0b25XcmFwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQUJDMURBICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1ob21lIHtcblxuICAjZm9vdGVyLWZvcm0ge1xuXG4gICAgLndyYXAge1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gIH1cblxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MDBweCkge1xuXG4gICNmb290ZXItZm9ybSB7XG5cbiAgICBmb3JtLm1rdG9Gb3JtIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cblxuICAgIH1cblxuICB9XG5cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcblxuICAjZm9vdGVyLWZvcm0ge1xuXG4gICAgZm9ybS5ta3RvRm9ybSB7XG5cbiAgICAgIC5ta3RvRm9ybVJvdyAubWt0b0Zvcm1Db2wge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFdpZGdldCBBcmVhXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZvb3Rlci13aWRnZXRzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3ZXN0ZWQtZ3JleS0yO1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMjBweCAwIDAgMDtcblxuICAud2lkZ2V0LWFyZWEsXG4gIC5mb290ZXItd2lkZ2V0cy0xLFxuICAuZm9vdGVyLXdpZGdldHMtMixcbiAgLmZvb3Rlci13aWRnZXRzLTMsXG4gIC5mb290ZXItd2lkZ2V0cy00IHtcbiAgICBtaW4taGVpZ2h0OiAyODBweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzgxOUFCNjtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAwIDAgMjBweDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAmLmZvb3Rlci13aWRnZXRzLTEge1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICB9XG4gICAgJi5mb290ZXItd2lkZ2V0cy0yIHtcbiAgICAgIHdpZHRoOiAyNyU7XG4gICAgfVxuICAgICYuZm9vdGVyLXdpZGdldHMtMyB7XG4gICAgICB3aWR0aDogMjEuNSU7XG4gICAgfVxuICAgICYuZm9vdGVyLXdpZGdldHMtNCB7XG4gICAgICB3aWR0aDogMjEuNSU7XG4gICAgfVxuXG4gICAgLndpZGdldCB7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgaDQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICB1bC5tZW51IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCA2cHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjQUJDMURBO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLndpZGdldCArIC53aWRnZXQge1xuICAgICAgbWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8qIFByaXZhY3kgKi9cbiAgICAubWVudS1mb290ZXItcHJpdmFjeS1jb250YWluZXIge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7XG5cbiAgICAgIHVsIHtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBwcm9wZXIgb3JkZXIgYW5kIGZsZXggd2lkdGhzICovXG4gIFtjbGFzcyo9XCJmb290ZXItd2lkZ2V0cy1cIl0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc20tYnJlYWspIHtcblxuICAgIC53aWRnZXQtYXJlYSxcbiAgICAuZm9vdGVyLXdpZGdldHMtMSxcbiAgICAuZm9vdGVyLXdpZGdldHMtMixcbiAgICAuZm9vdGVyLXdpZGdldHMtMyxcbiAgICAuZm9vdGVyLXdpZGdldHMtNCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAxMHB4IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogRm9vdGVyIEJvdHRvbSBOYXZcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU0NkI4NTtcblxuICAud3JhcCB7XG4gICAgcGFkZGluZzogMTBweCAzMHB4IDMwcHggMzBweDtcbiAgfVxuXG4gIC5mb290ZXItYm90dG9tLW5hdiB7XG5cbiAgICB1bCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMTBweCwxZnIpKTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjODE5QUI2O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM4MTlBQjY7XG4gICAgICBtYXJnaW46IDEycHggMDtcbiAgICAgIHBhZGRpbmc6IDEycHggMDtcblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgY29sb3I6ICNBQkMxREE7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgY29sb3I6ICM4RTlGQjU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAxNXB4IDAgMCAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICM4RTlGQjU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMCA1cHg7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtLWJyZWFrKSB7XG5cbiAgICAuZm9vdGVyLWJvdHRvbS1uYXYge1xuXG4gICAgICB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG4iLCIvKlxuLSBBbGwgU2lkZWJhcnNcbi0gQWJvdXQgVXMgU2lkZWJhclxuLSBBYm91dCBVcyB8IFN0YWZmIHwgUGVyc29ubmVsIFNpZGViYXJcbi0gQWJvdXQgVXMgfCBQcm9ncmFtIHwgU2lkZWJhclxuLSBBYm91dCBVcyB8IFByb2dyYW0gfCBDZW50ZXIgZm9yIFByZXZlbnRpb24gJiBFYXJseSBJbnRlcnZlbnRpb24gU2lkZWJhclxuLSBBYm91dCBVcyB8IFdlc3RFZCBQcm9ncmFtcyB8IEluZGl2aWR1YWwgUHJvZ3JhbSB8IFByb2plY3RzIHwgSW5kaXZpZHVhbCBQcm9qZWN0IFNpZGViYXJcbi0gQWJvdXQgVXMgfCBQcm9ncmFtIHwgSW5kaXZpZHVhbCBQcm9ncmFtcyB8IEN1c3RvbSBTaWRlYmFyc1xuLSBBYm91dCBVcyB8IEFyZWEgb2YgV29yayB8IE92ZXJ2aWV3IFNpZGViYXJzXG4qL1xuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkFsbCBTaWRlYmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0ICdfdmFyaWFibGVzJztcblxuXG4jc2lkZWJhciwgLnNpZGViYXIge1xuXG4gIC53aWRnZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci10b3A6IDBweDtcbiAgICAud2lkZ2V0dGl0bGUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgfSAvLyAud2lkZ2V0dGl0bGVcbiAgICAuYXQtYS1nbGFuY2Utd2lkZ2V0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgZm9udC1mYW1pbHk6IGhlbHZldGljYTtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIHBhZGRpbmc6IDVweCAwcHggNXB4IDI1cHg7XG4gICAgfSAvLyAuYXQtYS1nbGFuY2Utd2lkZ2V0XG4gICAgYSwgc3BhbiB7XG4gICAgICBjb2xvcjogJGxpbmstcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfSAvLyBhLCBzcGFuXG4gICAgYSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZWxlY3RyaWMtYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICB9XG4gICAgfSAvLyBhXG4gICAgLnNpZGViYXJfbGlua2xpc3Qge1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkd2VzdGVkLWVsZWN0cmljLWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZWxlY3RyaWMtYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuICAgICAgfSAvLyBhXG4gICAgfSAvLyAuc2lkZWJhcl9saW5rbGlzdFxuICAgIC5lbWFpbCB7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgYmFja2dyb3VuZDogJHdlc3RlZC1ncmV5LTM7XG4gICAgICB9IC8vIGFcbiAgICB9IC8vIC5lbWFpbFxuICAgIC5uYW1lLCAuZ3JvdXAge1xuICAgICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIH0gLy8gYVxuICAgIH0gLy8gLm5hbWUsIC5ncm91cFxuICAgIC5uZXdzX3RpdGxlLCAubmFtZSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgfSAvLyAubmV3c190aXRsZSwgLm5hbWVcbiAgfSAvLyAud2lkZ2V0XG5cbiAgJl9faGVhZGVyIHtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICB9IC8vICZfX2hlYWRlclxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAyMHB4IDAgMCAwO1xuICB9XG5cbn0gLy8gI3NpZGViYXIsIC5zaWRlYmFyXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblJpZ2h0IFNpZGViYXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4jc2lkZWJhciB7XG5cbiAgbGkge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfSAvLyBsaVxuXG4gIHNwYW4ge1xuICAgICYudGh1bWIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9IC8vICYudGh1bWJcbiAgfSAvLyBzcGFuXG5cbn0gLy8gI3NpZGViYXJcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWJvdXQgVXMgfCBPdmVydmlldyB8IFNpZGViYXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucGFnZS1hYm91dC11cyB7XG5cbiAgLnF1b3RlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9IC8vIC5xdW90ZVxuXG4gICNjb250ZW50LXNpZGViYXItd3JhcCB7XG5cbiAgICAjc2VjdGlvbl9oZWFkZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9IC8vICNzZWN0aW9uX2hlYWRlclxuXG4gICAgI21haW5fY29udGVudF93cmFwIHtcblxuICAgICAgI3NpZGViYXIge1xuICAgICAgICAud2lkZ2V0X3RleHQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9IC8vLndpZGdldF90ZXh0Om5vdCg6bnRoLWNoaWxkKDIpKVxuICAgICAgICBhIHtcbiAgICAgICAgICAmOmhvdmVyLCAmOmxpbmssICY6YWN0aXZlLCAmOnZpc2l0ZWQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IGRvdHRlZCAkd2VzdGVkLWVsZWN0cmljLWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLW5hdnktYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfSAvLyBhXG4gICAgICB9IC8vICNzaWRlYmFyXG5cbiAgICAgIC53aWRnZXR0aXRsZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB9IC8vIC53aWRnZXR0aXRsZVxuXG4gICAgICAuYXQtYS1nbGFuY2Utd2lkZ2V0IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdGFibGUge1xuICAgICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgICAgIH0gLy8gdGFibGVcbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgfSAvLyB0aCwgdGRcbiAgICAgICAgdGgge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgfSAvLyB0aFxuICAgICAgICB0ZCB7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtbmF2eS1ibHVlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9IC8vIHRkXG4gICAgICB9IC8vIC5hdC1hLWdsYW5jZS13aWRnZXRcblxuICAgIH0gLy8gI21haW5fY29udGVudF93cmFwXG4gIH0gLy8gI2NvbnRlbnQtc2lkZWJhci13cmFwXG59IC8vIC9wYWdlLWFib3V0LXVzXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgQWJvdXQgVXMgfCBTdGFmZiB8IFNpZGViYXJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2luZ2xlLXBlcnNvbm5lbCB7XG4gIC5zaWRlYmFyLS1sZWZ0IHtcbiAgICAvLyBmbG9hdDogbGVmdDtcbiAgICAvLyB3aWR0aDogMjMlO1xuICAgIC8vIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODMwcHgpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC53aWRnZXQge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICB9IC8vIC53aWRnZXRcbiAgICAuc2lkZWJhcl9fdGl0bGUge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICB9XG4gICAgLmFkZHJlc3MsIC5mYXgge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmljb24ge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnBob25lIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGNvbG9yOiAkd2VzdGVkLW5hdnktYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwidGVsOlwiO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgIH1cbiAgICB9IC8vIC5waG9uZVxuICAgIC5lbWFpbCB7XG4gICAgICB3aWR0aDogMTQzcHg7XG4gICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgIG1hcmdpbjogMjBweCAwIDAgMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3ZXN0ZWQtZ3JleS0zO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgJjpob3ZlciwgJjpsaW5rLCAmOmFjdGl2ZSwgJjp2aXNpdGVkIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IC8vLmVtYWlsXG4gICAgLnBlcnNvbm5lbF9qb2JfdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgY29sb3I6ICR3ZXN0ZWQtbmF2eS1ibHVlO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICB9XG4gICAgI2Jpb19waWMge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjVweCkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgfVxuICAgIH0gLy8gI2Jpb19waWNcbiAgICAjc2lkZWJhcl9jb250YWN0IHtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAud2lkZ2V0dGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfSAvLyAjc2lkZWJhcl9jb250YWN0XG4gIH0gLy8gLnNpZGViYXItLWxlZnRcbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICAjc2lkZWJhciB7XG4gICAgICAvLyBmbG9hdDogbGVmdDtcbiAgICAgIC8vIHdpZHRoOiAyMiU7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDE3cHgpIHtcbiAgICAgICAgbWFyZ2luOiAyNXB4IDAgMCAyMyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzMHB4KSB7XG4gICAgICAgIG1hcmdpbjogMjVweCAwIDAgMDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB9XG4gICAgICAjY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAjc2lkZWJhcl9yZWxhdGVkX3Byb2dyYW1zIHtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1lbGVjdHJpYy1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IC8vIGFcbiAgICAgICAgfSAvLyAjc2lkZWJhcl9yZWxhdGVkX3Byb2dyYW1zXG4gICAgICB9XG4gICAgICBsaSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICB9XG4gICAgICAud2lkZ2V0IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3ZXN0ZWQtYmFieS1ibHVlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDAgNnB4IDA7XG4gICAgICAgIC53aWRnZXQtd3JhcCB7XG4gICAgICAgICAgLndpZGdldHRpdGxlIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1uYXZ5LWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGEsIC5uYW1lIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmljb24sIGltZywgLmFsbF9uZXdzX2xpbmssIC5uZXdzX2RhdGUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLyogLndpZGdldCAqL1xuICAgIH0gLy8gI3NpZGViYXJcbiAgfSAvLyAjbWFpbl9jb250ZW50X3dyYXBcbn0gLy8gLnNpbmdsZS1wZXJzb25uZWxcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBBYm91dCBVcyB8IFdvcmtpbmcgV2l0aCBXZXN0RWQgU2lkZWJhclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhZ2Utd29ya2luZy13aXRoLXdlc3RlZCB7XG4gICNzaWRlYmFyIHtcbiAgICB3aWR0aDogMjIlO1xuICAgIHAge1xuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTVweCkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMjBweCAwIDAgMDtcbiAgICB9XG4gICAgLndpZGdldCB7XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgICAgLndpZGdldHRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB9XG4gICAgfSAvLyAud2lkZ2V0XG4gICAgLnRleHR3aWRnZXQge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG4gIH0gLy8gI3NpZGViYXJcbn0gLy8gLnBhZ2Utd29ya2luZy13aXRoLXdlc3RlZFxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQWJvdXQgVXMgfCBQcm9ncmFtIFNpZGViYXJcbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zaW5nbGUtcHJvZ3JhbSB7XG4gICNzaWRlYmFyIHtcbiAgICB3aWR0aDogMTclO1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLndpZGdldCB7XG4gICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAud2lkZ2V0dGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC45cHg7XG4gICAgICB9XG4gICAgICAucGhvbmUsIC5hZGRyZXNzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC5kaXJlY3Rvcl9uYW1lIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMCAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9IC8vIC5kaXJlY3Rvcl9uYW1lXG4gICAgICAuY29udGFjdEluZm8ge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAuZW1haWwge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiA0cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2VzdGVkLW5hdnktYmx1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gLy8gLmVtYWlsXG4gICAgICAgIC5uYW1lIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfSAvLyAubmFtZVxuICAgICAgfSAvLyAuY29udGFjdEluZm9cbiAgICAgIC5pY29uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgfSAvLyAuaWNvblxuICAgIH0gLy8gLndpZGdldFxuICAgICNzaWRlYmFyX3dlYnNpdGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgI3NpZGViYXJfc29jaWFsX21lZGlhIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9IC8vICNzaWRlYmFyXG59IC8vIHNpbmdsZS1wcm9ncmFtXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEFib3V0IFVzIHwgV2VzdEVkIFByb2dyYW1zIHwgSW5kaXZpZHVhbCBQcm9ncmFtIHwgUHJvamVjdHMgfCBJbnZpZHVhbCBQcm9qZWN0IFNpZGViYXJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2luZ2xlLXByb2plY3Qge1xuICAjc2lkZWJhciB7XG4gICAgd2lkdGg6IDMwJTtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuICAgIC53aWRnZXQge1xuICAgICAgLndpZGdldHRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTNweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAxMTBweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICB9XG4gICAgfSAvLyAud2lkZ2V0XG4gICAgLmNvbnRhY3RJbmZvIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAmOm50aC1vZi10eXBlKG4rMikge1xuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgICAucGhvdG8ge1xuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA3cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucGhvdG8ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICB9XG4gICAgICB9IC8vLiBwaG90b1xuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubmFtZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbjogMTBweCAwIDVweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBjb2xvcjogJHdlc3RlZC1lbGVjdHJpYy1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9IC8vIC5uYW1lXG4gICAgfSAvLyAuY29udGFjdEluZm9cbiAgICAucGhvbmUtZmF4LWNvbnRhaW5lciB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiA1NSU7XG4gICAgICBtaW4td2lkdGg6IDE1MHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgLmljb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9IC8vIC5pY29uXG4gICAgICAuZW1haWwge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgcGFkZGluZzogNnB4IDEzcHg7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIH1cbiAgICAgIH0gLy8gLmVtYWlsXG4gICAgICAucGhvbmUge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIG1hcmdpbjogN3B4IDAgMCAwO1xuICAgICAgICBjb2xvcjogJHdlc3RlZC1saWdodC1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICB9IC8vIC5waG9uZVxuICAgIH0gLy8ucGhvbmUtZmF4LWNvbnRhaW5lclxuICB9IC8vI3NpZGViYXJcbn0gLy8gLnNpbmdsZS1wcm9qZWN0XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgQWJvdXQgVXMgfCBQcm9ncmFtIHwgSW5kaXZpZHVhbCBQcm9ncmFtcyB8IEN1c3RvbSBTaWRlYmFyc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wb3N0aWQtMzE0NzMsIC5wb3N0aWQtMzE0NzQsIC5wb3N0aWQtMzE0NzIsIC5wb3N0aWQtMzE0NjQsIC5wb3N0aWQtMzE0NjcsIC5wb3N0aWQtMzE0NjgsIC5wb3N0aWQtMzE0NjksIC5wb3N0aWQtMzE0NzEge1xuICAjc2lkZWJhciB7XG4gICAgLndpZGdldCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgLnRleHR3aWRnZXQge1xuICAgICAgICAgIC8qIGRpc3BsYXk6IG5vbmU7ICovIC8qIE5QIFRFU1QgKi9cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLyogLmZpcnN0LWNoaWxkICovXG4gICAgICAmOm50aC1vZi10eXBlKDIpIHtcbiAgICAgICAgLndpZGdldHRpdGxlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9IC8vIC5sYXN0LWNoaWxkXG4gICAgfSAvLyAud2lkZ2V0XG4gIH0gLy8gI3NpZGViYXJcbn0gLy8gLnBvc3RpZC0jIyMjI1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBBYm91dCBVcyB8IEFyZWEgb2YgV29yayB8IE92ZXJ2aWV3IFNpZGViYXJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2luZ2xlLWFyZWFfb2Zfd29yayB7XG4gICNjb250ZW50IHtcbiAgICAjc2lkZWJhcl9yZWxhdGVkX25ld3Mge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICAgIHdpZHRoOiA0NyU7XG4gICAgICBtYXJnaW46IDAgMyUgMCAwO1xuICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDIwcHgpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB1bCB7XG4gICAgICAgICYubmV3c2xpc3Qge1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gLy8gbGlcbiAgICAgICAgfSAvLy5uZXdzbGlzdFxuICAgICAgfSAvLyB1bFxuICAgICAgLmhlYWRpbmdfYmFyIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAudmlld21vcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgaDQge1xuICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAyOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDEwMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMzVweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICB9IC8vIGg0XG4gICAgICB9IC8vIC5oZWFkaW5nX2JhclxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgaDQge31cbiAgICAgIH0gLy8gUmVzZWFyY2ggQmxvZ1xuICAgICAgLndpZGdldF9uZXdzX3Bvc3Qge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWluLWhlaWdodDogMTMwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIC5uZXdzX3RodW1iIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAxMjBweDtcbiAgICAgICAgICBtaW4td2lkdGg6IDEyMHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNjY2M7XG4gICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MzBweCkge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MzBweCkge1xuICAgICAgICAgICAgICBtYXJnaW46IDE1cHggMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0gLy8gLm5ld3NfdGh1bWJcbiAgICAgICAgLm5ld3NfdGl0bGUge1xuICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWVsZWN0cmljLWJsdWU7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICB9IC8vIC5uZXdzX3RpdGxlXG4gICAgICAgIC5uZXdzX2RhdGUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH0gLy8gLm5ld3NfZGF0ZVxuICAgICAgICAuZXhjZXJwdCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIH1cbiAgICAgIH0gLy8gLndpZGdldF9uZXdzX3Bvc3RcbiAgICB9IC8vIFJlY2VudCBOZXdzXG4gIH0gLy8gI2NvbnRlbnRcbiAgI3NpZGViYXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9IC8vICNzaWRlYmFyXG59IC8vIC5zaW5nbGUtYXJlYV9vZl93b3JrXG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODMwcHgpIHtcblxuICAuc2luZ2xlLXBlcnNvbm5lbCAjc2lkZWJhcl9jb250YWN0IHtcblxuICAgIC5waG9uZS1mYXgtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICBzcGFuLmVtYWlsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIG1heC13aWR0aDogMjAwcHggIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMTVweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODMwcHgpIHtcblxuICAuc2luZ2xlLXBlcnNvbm5lbCA+ICN3cmFwID4gI2lubmVyIC53cmFwICNjb250ZW50LXNpZGViYXItd3JhcCAjbWFpbl9jb250ZW50X3dyYXAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7XG4gIH1cblxufVxuXG5cblxuXG5cblxuXG5cblxuXG5cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkhlcm8gU3R5bGluZ1xuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAnX3ZhcmlhYmxlcyc7XG5cblxuLyogSGVybyAvIEdsb2JhbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZXJvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3ZXN0ZWQtbmF2eS1ibHVlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuXG4gIC53cmFwIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICBtYXgtd2lkdGg6IDEwNDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gIH1cblxuICAuc3VidGl0bGUsXG4gIGgxIGEsXG4gIC5icmVhZGNydW1icyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBjb2xvcjogI2M0ZDVlODtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAzcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBjb2xvcjogI2M0ZDVlODtcbiAgICB9XG5cbiAgfVxuXG4gIHAgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYnJlYWRjcnVtYnMge1xuXG4gICAgc3Bhbi5zZWN0aW9uLFxuICAgIHNwYW4ucGFyZW50LFxuICAgIHNwYW4uc2VjdGlvbl9zdWIge1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiID4gXCI7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBzcGFuOmxhc3Qtb2YtdHlwZTo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgfVxuXG4gIGgxLCBoMSArIGgyIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICBoMSBzcGFuLndlc3RlZC1pbnNpZ2h0cyB7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCI7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgfVxuXG4gIC5pbnRybyB7XG5cbiAgICBoMiwgcCB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG5cbiAgfVxuXG4gIGEuYnRuLWNvbnRhY3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgbWFyZ2luOiAzMHB4IDAgMzBweCAwO1xuICAgIHBhZGRpbmc6IDhweCAxNnB4O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuXG4gIH1cblxuICAvKiBTbGlkZXIgKi9cbiAgLnNsaWRlciB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG92ZXJmbG93OiBpbml0aWFsO1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgMCAyMHB4IDAgIWltcG9ydGFudDtcblxuICAgICYuZW50cnktY29udGVudCBhIHtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMiwgcCB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGgyIGEsIHAgYSB7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICNmZmY7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBwYWdpbmF0aW9uICovXG4gICAgLmludHJvX3NsaWRlX3BhZ2VyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDIwcHggYXV0byAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTIwcHggIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgLmJ4LXBhZ2VyIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLmhlcm8tY29udGVudCB7XG4gICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgcCArIHAge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICB9XG5cbiAgICAvKiBRdW90ZXMgKi9cbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMTEycHg7XG4gICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9xdW90ZS5zdmdcIikgY2VudGVyIGNlbnRlciAvIGNvbnRhaW4gbm8tcmVwZWF0O1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIG1hcmdpbjogNXB4IDIwcHggMTAwcHggMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcMjAxRFwiO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzUwcHgpIHtcblxuICAgICAgICBwIHtcblxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgcCBjaXRlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMCU7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXDIwMTQnO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBoaWRlIHN1YnN1Ym5hdiBsb2dpbiBsaW5rICovXG4gICNzdWJzdWJtZW51X2xvZ2luIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxufVxuXG5cbi8qIEhlcm8gLyBQaG90b3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIEFib3V0IFVzICovXG4ucGFnZS1hYm91dC11cyAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy93ZXN0ZWQvaW1hZ2VzL2Fib3V0LXVzLWhlcm8tb3ZlcnZpZXctYmcucG5nXCIpOyB9XG5cbi8qIEFib3V0IFVzIHwgQm9hcmQgb2YgRGlyZWN0b3JzICovXG4ucGFnZS1ib2FyZC1vZi1kaXJlY3RvcnMgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9hYm91dC11cy1oZXJvLWJvYXJkLW9mLWRpcmVjdG9ycy1iZy5wbmdcIik7IH1cblxuLyogQWJvdXQgVXMgfCBMZWFkZXJzaGlwICovXG4ucGFnZS1sZWFkZXJzaGlwICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvYWJvdXQtdXMtaGVyby1sZWFkZXJzaGlwLWJnLnBuZ1wiKTsgfVxuXG4vKiBBYm91dCBVcyB8IFN0YWZmIERpcmVjdG9yeSAqL1xuLnBhZ2Utc3RhZmYtZGlyZWN0b3J5ICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvYWJvdXQtdXMtaGVyby1zdGFmZi1iZy5wbmdcIik7IH1cblxuLyogQWJvdXQgVXMgfCBQcm9ncmFtcyAqL1xuLnBhZ2UtcHJvZ3JhbXMgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9hYm91dC11cy1oZXJvLXByb2dyYW1zLWJnLnBuZ1wiKTsgfVxuXG4vKiBBT1cgLyBDb2xsZWdlICYgQ2FyZWVyICovXG5ib2R5LmNvbGxlZ2UtY2FyZWVyICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby9BT1ctSGVyby1Db2xsZWdlLnBuZ1wiKTsgfVxuXG4vKiBBT1cgLyBFYXJseSBDaGlsZGhvb2QgKi9cbmJvZHkuZWFybHktY2hpbGRob29kLWRldmVsb3BtZW50LWxlYXJuaW5nICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby9BT1ctSGVyby1FYXJseS1DaGlsZGhvb2QucG5nXCIpOyB9XG5cbi8qIEFPVyAvIEVMTCAqL1xuYm9keS5lbmdsaXNoLWxhbmd1YWdlLWxlYXJuZXJzICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby9BT1ctSGVyby1FTEwucG5nXCIpOyB9XG5cbi8qIEFPVyAvIEhlYWx0aCwgU2FmZXR5LCAmIFdlbGwtQmVpbmcgKi9cbmJvZHkuaGVhbHRoLXNhZmV0eS13ZWxsLWJlaW5nICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby9BT1ctSGVyby1IZWFsdGgucG5nXCIpOyB9XG5cbi8qIEFPVyAvIExpdGVyYWN5ICovXG5ib2R5LmxpdGVyYWN5ICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby9BT1ctSGVyby1MaXRlcmFjeS5wbmdcIik7IH1cblxuLyogQU9XIC8gU2Nob29scywgRGlzdHJpY3RzLCAmIFN0YXRlIEVkdWNhdGlvbiBTeXN0ZW1zICovXG5ib2R5LnNjaG9vbHMtZGlzdHJpY3RzLXN0YXRlLWVkdWNhdGlvbi1zeXN0ZW1zICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby9BT1ctSGVyby1TY2hvb2wtU3lzdGVtcy5wbmdcIik7IH1cblxuLyogQU9XIC8gU2NpZW5jZSwgVGVjaG5vbG9neSwgRW5naW5lZXJpbmcsICYgTWF0aGVtYXRpY3MgKi9cbmJvZHkuc2NpZW5jZS10ZWNobm9sb2d5LWVuZ2luZWVyaW5nLW1hdGhlbWF0aWNzICAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy93ZXN0ZWQvaW1hZ2VzL2hlcm8vQU9XLUhlcm8tU1RFTS5wbmdcIik7IH1cblxuLyogQU9XIC8gU3BlY2lhbCBFZCAqL1xuYm9keS5zcGVjaWFsLWVkdWNhdGlvbiAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy93ZXN0ZWQvaW1hZ2VzL2hlcm8vQU9XLUhlcm8tU3BlY0VkLnBuZ1wiKTsgfVxuXG4vKiBBT1cgLyBTdGFuZGFyZHMsIEFzc2Vzc21lbnQsICYgQWNjb3VudGFiaWxpdHkgKi9cbmJvZHkuc3RhbmRhcmRzLWFzc2Vzc21lbnQtYWNjb3VudGFiaWxpdHkgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9oZXJvL0FPVy1IZXJvLVN0YW5kYXJkcy5wbmdcIik7IH1cblxuLyogQU9XIC8gVGVhY2hlcnMgJiBMZWFkZXJzICovXG5ib2R5LnRlYWNoZXJzLWxlYWRlcnMgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9oZXJvL0FPVy1IZXJvLVRlYWNoZXJzLnBuZ1wiKTsgfVxuXG4vKiBBT1cgLyBGb3VyIERvbWFpbnMgKi9cbmJvZHkuZm91ci1kb21haW5zICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby9BT1ctSGVyby1Gb3VyLURvbWFpbnMucG5nXCIpOyB9XG5cbi8qIEFPVyAvIENoYXJ0ZXJzICYgQ2hvaWNlICovXG5ib2R5LmNoYXJ0ZXJzLWNob2ljZSAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy93ZXN0ZWQvaW1hZ2VzL2hlcm8vQU9XLUhlcm8tQ2hhcnRlcnMucG5nXCIpOyB9XG5cbi8qIEFPVyAvIFRyYXVtYSAqL1xuYm9keS50cmF1bWEgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9oZXJvLzIwMTktMDMtdHJhdW1hLWhlcm8ucG5nXCIpOyB9XG5cbi8qIFJlc2VhcmNoICYgRXZhbHVhdGlvbiB8IExhbmRpbmcsIFdoYXQgV2UgRG8gKi9cbi5wYWdlLXJlc2VhcmNoLWV2YWx1YXRpb24gI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9oZXJvL2hlcm8tcGhvdG8tcmVzZWFyY2gtZXZhbHVhdGlvbi5wbmdcIik7IH1cblxuLyogUmVzZWFyY2ggJiBFdmFsdWF0aW9uIHwgSG93IFdlIENhbiBIZWxwICovXG4ucmVzZWFyY2gtZXZhbHVhdGlvbi5wYWdlLWhvdy13ZS1jYW4taGVscCAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy93ZXN0ZWQvaW1hZ2VzL2hlcm8tcGhvdG8tcmVzZWFyY2gtZXZhbHVhdGlvbi1oZWxwLnBuZ1wiKTsgfVxuXG4vKiBSZXNlYXJjaCAmIEV2YWx1YXRpb24gfCBSZXBvcnRzICYgUHVibGljYXRpb25zICovXG4ucmVzZWFyY2gtZXZhbHVhdGlvbi5wYWdlLXJlcG9ydHMtcHVibGljYXRpb25zICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby1waG90by1yZXNlYXJjaC1ldmFsdWF0aW9uLXJlcG9ydHNwdWIucG5nXCIpOyB9XG5cbi8qIFJlc2VhcmNoICYgRXZhbHVhdGlvbiAvIFJlc2VhcmNoIEJsb2cgKi9cbi5yZXNlYXJjaC1ldmFsdWF0aW9uLnBhZ2UtcmVzZWFyY2gtYmxvZyAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy93ZXN0ZWQvaW1hZ2VzL2hlcm8tcGhvdG8tcmVzZWFyY2gtZXZhbHVhdGlvbi1yZXNlYXJjaGJsb2cucG5nXCIpOyB9XG5cbi8qIFBMVEEgbGFuZGluZyAqL1xuLnBhZ2UtcHJvZmVzc2lvbmFsLWxlYXJuaW5nLWFuZC10ZWNobmljYWwtYXNzaXN0YW5jZSAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy93ZXN0ZWQvaW1hZ2VzL2hlcm8tcGhvdG8tcGx0YS5wbmdcIik7IH1cblxuLyogT3JwaGFuIHwgV2VzdEVkIGluIE5ldyBZb3JrLCBHZW9yZ2lhLCBGbG9yaWRhICovXG4ubmV3LXlvcmsgI2hlcm8sIC5nZW9yZ2lhICNoZXJvLCAuZmxvcmlkYSAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy93ZXN0ZWQvaW1hZ2VzL2hlcm8tcGhvdG8tbmV3eW9yay5wbmdcIik7IH1cblxuLyogT3JwaGFuIHwgVGVhY2hlciBQcm9mZXNzaW9uYWwgRGV2ZWxvcG1lbnQgKi9cbi50ZWFjaGVyLXByb2Zlc3Npb25hbC1kZXZlbG9wbWVudCAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3VwbG9hZHMvMjAxOC8wNy9IZXJvLVNlcnZpY2VzLVF1YWxpdHktVGVhY2hpbmctZm9yLUVuZ2xpc2gtTGVhcm5lcnMucG5nXCIpOyB9XG5cblxuLyogSGVybyAvIFN1Ym5hdlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZXJvICNzdWJzdWJtZW51LCAuaGVyby1zdWJuYXYge1xuICBjbGVhcjogYm90aDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7XG4gIG1hcmdpbjogMzBweCAwIDAgMDtcbiAgcGFkZGluZzogMzBweCAwIDAgMDtcblxuICB1bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2Ytd2l0aC11bCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL25hdi1hcnJvdy1kb3duLXdoaXRlLnBuZ1wiKSBuby1yZXBlYXQgcmlnaHQgNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMjRweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgICYuY3VycmVudF9wYWdlX2l0ZW0sXG4gICAgICAmLmN1cnJlbnQtbWVudS1pdGVtIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgICBhOmxpbmssIGE6aG92ZXIsIGE6YWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgNXB4IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBvdGhlciByZXNvdXJjZXMgZHJvcGRvd24gKi9cbiAgICAgIC5zdWItbWVudSB7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3gtc2hhZG93OiAwIDdweCAyMHB4IC0zcHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgJi5jdXJyZW50X3BhZ2VfaXRlbSBhIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnk7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDU2cHgpIHtcblxuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDVweCAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmLnNmLXdpdGgtdWwge1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLnN1Yi1tZW51IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBIZXJvIC8gSG9tZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZXJvLmhvbWUge1xuXG4gIC53cmFwIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cblxuICAuYngtdmlld3BvcnQge1xuICAgIGhlaWdodDogMzQwcHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5ieC13cmFwcGVyIC5ieC1sb2FkaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6IDk5OSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyogcGhvdG8gKi9cbiAgLmltZyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDY1MHB4O1xuICAgIGhlaWdodDogMzQwcHg7XG4gICAgbWFyZ2luOiAwIDI3cHggMCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgLyogY29udGVudCAqL1xuICAuaW5mbyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMyMHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxNXB4IDAgMCAwO1xuXG4gICAgaDMge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gIH1cblxuICAvKiBwYWdpbmF0aW9uICovXG4gIC5ieC1jb250cm9scyB7XG4gICAgei1pbmRleDogOTk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMTBweDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMzI1cHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuXG4gICAgLmJ4LXBhZ2VyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICByaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNDBweCkge1xuXG4gICAgLyogU3BvdGxpZ2h0ICovXG4gICAgLmJ4LXdyYXBwZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC5ieC12aWV3cG9ydCB7XG4gICAgICAgIGhlaWdodDogNTUwcHggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLnNwb3RsaWdodF9zbGlkZXMge1xuXG4gICAgICAgIC5pbWcsIC5pbmZvIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgLy8gd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIC8vIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuYngtY29udHJvbHMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NzBweCkge1xuXG4gICAgLmJ4LWNvbnRyb2xzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qIFNwb3RsaWdodCAqL1xuICAgIC5ieC13cmFwcGVyIHtcblxuICAgICAgLnNwb3RsaWdodF9zbGlkZXMge1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogSGVybyAvIEFib3V0IFVzIC8gUGVyc29ubmVsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlcm8ucGVyc29ubmVsIHtcblxuICBoMSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgY29sb3I6ICNjNGQ1ZTg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgM3B4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBIZXJvIC8gQWJvdXQgVXMgLyBQZXJzb25uZWwgLyBDdXN0b20gQ29udGFjdCBGb3JtXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5lbWFpbC1mb3JtICNoZXJvLmFib3V0LXVzIHtcblxuICBoMSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyOiBub25lO1xuXG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIEhlcm8gLyBQcm9ncmFtc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZXJvLnByb2dyYW1zIHtcblxuICAvKiByZXNldCB0byBkZWZhdWx0IGgxICovXG4gIGgxIGEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBtYXJnaW46IGluaGVyaXQ7XG4gICAgcGFkZGluZzogaW5oZXJpdDtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBIZXJvIC8gQXJlYXMgb2YgV29ya1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZXJvLmFvdyxcbiNoZXJvLmZlYXQtaW5pdCB7XG5cbiAgaDEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgY29sb3I6ICNjNGQ1ZTg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgM3B4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbn1cblxuYm9keS5wYWdlLXRlbXBsYXRlLWFvdy1yZXNvdXJjZWxpc3QtcGFnZSB7XG5cbiAgI3N1YnN1Ym1lbnUgdWwgbGkjc3Vic3VibWVudV9yZXNvdXJjZXMge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICBhOmxpbmssIGE6aG92ZXIsIGE6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgd2hpdGU7XG4gICAgICBwYWRkaW5nOiAwIDAgNXB4IDA7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIEhlcm8gLyBBcmVhcyBvZiBXb3JrIC8gRm91ciBEb21haW5zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlcm8uZm91cmRvbWFpbnMge1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG87XG5cbiAgLndyYXAge1xuICAgIHBhZGRpbmctdG9wOiAyMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC5oZXJvLXN1Ym5hdiB1bCBsaSB7XG4gICAgcGFkZGluZzogMCA1cHg7XG4gIH1cblxufVxuXG5cbi8qIEhlcm8gLyBBcmVhcyBvZiBXb3JrIC8gQ2hhcnRlcnMgJiBDaG9pY2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jaGVyby5jaGFydGVycy1jaG9pY2Uge1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG87XG5cbiAgLndyYXAge1xuICAgIHBhZGRpbmctdG9wOiAyNjVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC5oZXJvLXN1Ym5hdiB1bCBsaSB7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG5cbn1cblxuXG4vKiBIZXJvIC8gQXJlYXMgb2YgV29yayAvIFRyYXVtYVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZXJvLnRyYXVtYSB7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0bztcblxuICAud3JhcCB7XG4gICAgcGFkZGluZy10b3A6IDI2NXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgLmhlcm8tc3VibmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gIH1cblxufVxuXG5cbi8qIEhlcm8gLyBSZXNlYXJjaCAmIEV2YWx1YXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jaGVyby5yZXMtZXZhbCB7XG5cbiAgaDEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgY29sb3I6ICNjNGQ1ZTg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgM3B4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5oZXJvLWNvbHVtbi5sLWNvbCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDcwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5oZXJvLWNvbHVtbi5yLWNvbCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAyNSU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbjogMjJweCAwIDEwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwIDAgMjVweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMCAxNHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuXG4gICAgLmhlcm8tY29sdW1uLmwtY29sLFxuICAgIC5oZXJvLWNvbHVtbi5yLWNvbCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qIFdoYXQgV2UgRG8gU3VicGFnZXMgKi9cbmJvZHkucGFnZS10ZW1wbGF0ZS1yZXNlYXJjaC1ldmFsdWF0aW9uICB7XG5cbiAgLmhlcm8tc3VibmF2IHVsIGxpLmN1cnJlbnQtcGFnZS1hbmNlc3RvciBhIHtcbiAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgd2hpdGU7XG4gICAgcGFkZGluZzogMCAwIDVweCAwO1xuICB9XG5cbn1cblxuXG4vKiBIZXJvIC8gUHJvZmVzc2lvbmFsIERldmVsb3BtZW50LCBUZWNobmljYWwgQXNzaXN0YW5jZSAoc2VwYXJhdGUgcGFnZXMgYnV0IHNoYXJlZCBjbGFzc2VzKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZXJvLnNlcnZpY2VzLXBsdGEge1xuXG4gIC5oZXJvLWNvbHVtbi5sLWNvbCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDcwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGgyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgIH1cblxuICAgIGEuYnRuLWNvbnRhY3Qge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgbWFyZ2luOiAyNXB4IDAgMjVweCAwO1xuICAgICAgcGFkZGluZzogOHB4IDE2cHg7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC5oZXJvLWNvbHVtbi5yLWNvbCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAyNSU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwIDAgMjVweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMCAxNHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAjc3Vic3VibWVudSB7XG5cbiAgICB1bCB7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG5cbiAgICAuaGVyby1jb2x1bW4ubC1jb2wsXG4gICAgLmhlcm8tY29sdW1uLnItY29sIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBIZXJvIC8gU2VydmljZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jaGVyby5zZXJ2aWNlcyB7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0bztcblxuICAud3JhcCB7XG4gICAgcGFkZGluZy10b3A6IDI1MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG5cbn1cblxuXG4vKiBIZXJvIC8gUmVzb3VyY2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS53b29jb21tZXJjZSAjaGVyby5yZXNvdXJjZXMge1xuXG4gIC53cmFwIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmhlcm8tY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxuXG4gICNzdWJzdWJtZW51IHtcbiAgICBtYXJnaW46IDIycHggMCAwIDA7XG4gICAgcGFkZGluZzogMjBweCAwIDAgMDtcblxuICAgIHVsIGxpIHtcbiAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIHNwb3RsaWdodCAqL1xuICAuaGVyby1jb2x1bW4ubC1jb2wge1xuICAgIG1hcmdpbjogMCAwIDQwcHggMDtcblxuICAgICNzcG90bGlnaHRfc2xpZGVyIHtcbiAgICAgIHdpZHRoOiA3MDBweDtcbiAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICBib3JkZXItdG9wOiA0cHggc29saWQgIzUyNzQ5ZTtcbiAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkICM1Mjc0OWU7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNnB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMzBweCAzMHB4IDMwcHggNXB4O1xuXG4gICAgICAuYngtY29udHJvbHMge1xuICAgICAgICB6LWluZGV4OiAzMzM7XG4gICAgICB9XG5cbiAgICAgIC5ieC13cmFwcGVyIHtcbiAgICAgICAgaGVpZ2h0OiAyNjBweDtcbiAgICAgIH1cblxuICAgICAgLmJ4LXZpZXdwb3J0IHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLyogdGh1bWJuYWlsICovXG4gICAgICAucGhvdG8ge1xuICAgICAgICB3aWR0aDogMTc1cHggIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3gtc2hhZG93OiA2cHggNnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIGNvbnRlbnQgKi9cbiAgICAgIC5pbmZvIHtcbiAgICAgICAgd2lkdGg6IDQ1MHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLnNwb3RsaWdodF9oZWFkZXIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgICAgY29sb3I6ICM2RUE5RUQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBtYXJnaW46IDAgMCA1cHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmV4Y2VycHQge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogcGFnaW5hdGlvbiBiYWxscyAqL1xuICAgIC5ieC1jb250cm9scyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC5ieC1wYWdlciB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogaGVscGZ1bCBsaW5rcyAqL1xuICAuaGVyby1jb2x1bW4uci1jb2wge1xuXG4gICAgLyogc2VhcmNoICovXG4gICAgI3Byb2R1Y3Rfc2VhcmNoX2Zvcm0ge1xuICAgICAgbWFyZ2luOiAwIDAgMjRweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgZm9ybSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cblxuICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcblxuICAgICAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsgLyogQ2hyb21lL09wZXJhL1NhZmFyaSAqL1xuICAgICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICB9XG4gICAgICAgICY6Oi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE5KyAqL1xuICAgICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICB9XG4gICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgLyogSUUgMTArICovXG4gICAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICAgIH1cbiAgICAgICAgJjotbW96LXBsYWNlaG9sZGVyIHsgLyogRmlyZWZveCAxOC0gKi9cbiAgICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogN3B4O1xuICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXJlc291cmNlcy1zZWFyY2gtYXJyb3ctYmx1ZS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5saW5rcyB7XG5cbiAgICAgIGEge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjBweCkge1xuXG4gICAgLmhlcm8tY29sdW1uLmwtY29sLFxuICAgIC5oZXJvLWNvbHVtbi5yLWNvbCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5oZXJvLWNvbHVtbi5sLWNvbCB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICNzcG90bGlnaHRfc2xpZGVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLnNsaWRlIHtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ4LXdyYXBwZXIsXG4gICAgICAgIC5ieC12aWV3cG9ydCB7XG4gICAgICAgICAgaGVpZ2h0OiAyNTBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnBob3RvIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgIG1hcmdpbjogMCAzMHB4IDMwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDI1cHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuYngtY29udHJvbHMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5oZXJvLWNvbHVtbi5yLWNvbCB7XG4gICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzAwcHgpIHtcblxuICAgIC5oZXJvLWNvbHVtbi5sLWNvbCB7XG5cbiAgICAgICNzcG90bGlnaHRfc2xpZGVyIHtcblxuICAgICAgICAuYngtd3JhcHBlcixcbiAgICAgICAgLmJ4LXZpZXdwb3J0IHtcbiAgICAgICAgICAvLyBoZWlnaHQ6IDQ1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAucGhvdG8ge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbjogMzBweCAwIDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZSBIZXJvIDJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jaGVyby5yZXNvdXJjZXMsXG4jaGVyby5wYWdlLWhlcm8ge1xuXG4gICNyZXNvdXJjZS1hY2N0LXRvb2xzIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDU1MHB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLmFjY3QtdG9vbHMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogNXB4IDIwcHggMCAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogIzhmYzhmYTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBwYWRkaW5nOiAwIDFweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIiDigKIgXCI7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIGZvcm0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3BhY2l0eTogLjU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtaW4td2lkdGg6IDI1MHB4O1xuICAgICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG5cbiAgICAgICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIENocm9tZS9PcGVyYS9TYWZhcmkgKi9cbiAgICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgfVxuICAgICAgICAmOjotbW96LXBsYWNlaG9sZGVyIHsgLyogRmlyZWZveCAxOSsgKi9cbiAgICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgfVxuICAgICAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIElFIDEwKyAqL1xuICAgICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICB9XG4gICAgICAgICY6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTgtICovXG4gICAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1yZXNvdXJjZXMtc2VhcmNoLWFycm93LWJsdWUucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuXG4gICAgICAuYWNjdC10b29scyxcbiAgICAgIGZvcm0ge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUyNXB4KSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gIH1cblxufVxuXG4vKiBNeSBDYXJ0ICovXG5ib2R5Lndvb2NvbW1lcmNlLXBhZ2UgI2hlcm8ucGFnZS1oZXJvIHtcblxuICBoMSB7XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCI7XG4gICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIFdlYmluYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wYWdlLXRlbXBsYXRlLXdlYmluYXJzLWhvbWUge1xuXG4gIC8qIFNwb3RsaWdodCAqL1xuICAuc3BvdGxpZ2h0IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgIzUyNzQ5ZTtcbiAgICBtYXJnaW46IDMwcHggMCAwIDA7XG4gICAgcGFkZGluZzogMzBweCAwIDAgMDtcblxuICAgIC5ieC13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiA4NSU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLy8gLmJ4LXZpZXdwb3J0IHtcbiAgICAgIC8vICAgaGVpZ2h0OiAyNDBweCAhaW1wb3J0YW50O1xuICAgICAgLy8gfVxuXG4gICAgICAuc3BvdGxpZ2h0X2l0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgIC5pbWcge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBtYXJnaW46IDE1cHggMCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDAgMjBweDtcblxuICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMyB7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCI7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBwYWdpbmF0aW9uIGJhbGxzICovXG4gICAgLmJ4LWNvbnRyb2xzIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcblxuICAgICAgLmJ4LXBhZ2VyIHtcbiAgICAgICAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCA1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICAgICAgICAgIG9wYWNpdHk6IC44NTtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODUwcHgpIHtcblxuICAgICAgLyogU3BvdGxpZ2h0ICovXG4gICAgICAuYngtd3JhcHBlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC5ieC12aWV3cG9ydCB7XG4gICAgICAgICAgLy8gaGVpZ2h0OiA0NTBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNwb3RsaWdodF9pdGVtIHtcblxuICAgICAgICAgIC5pbWcsIC5pbmZvIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjcwcHgpIHtcblxuICAgICAgLmJ4LWNvbnRyb2xzIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIC8qIFNwb3RsaWdodCAqL1xuICAgICAgLmJ4LXdyYXBwZXIge1xuXG4gICAgICAgIC5zcG90bGlnaHRfaXRlbSB7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1ODBweCkge1xuXG4gICAgICAvKiBTcG90bGlnaHQgKi9cbiAgICAgIC5ieC13cmFwcGVyIHtcblxuICAgICAgICAuYngtdmlld3BvcnQge1xuICAgICAgICAgIC8vIGhlaWdodDogNTAwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogSGVybyAvIFdlc3RFZCBFdmVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnNpbmdsZS13ZXN0ZWRfZXZlbnQgI2hlcm8uZXZlbnRzIHtcblxuICBoMSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBjb2xvcjogI2M0ZDVlODtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAzcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBjb2xvcjogI2M0ZDVlODtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogSGVybyAvIFdlc3RFZCBpbiBOZXcgWW9ya1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZXJvLm5ldy15b3JrIHtcblxuICAuaGVyby1zdWJuYXYge1xuXG4gICAgdWwge1xuXG4gICAgICBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBIZXJvIC8gV2VzdEVkIE5ld3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jaGVyby53ZXN0ZWQtbmV3cyB7XG5cbiAgaDEgYSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbn1cblxuXG4vKiBIZXJvIC8gUiZEIEFsZXJ0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlcm8ucmRfYWxlcnQge1xuXG4gIHNwYW4uc3VidGl0bGUge1xuICAgIG1hcmdpbjogMCAwIC01cHggMDtcbiAgfVxuXG4gIGgxIHtcblxuICAgIGEge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgc3Bhbi5yZWcge1xuICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXIgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuXG5cblxuXG5cblxuXG5cbiIsIi8qXG4tIFByb2ZpbGUgfCBVbml2ZXJzYWwgLSAoQm9hcmQgb2YgRGlyZWN0b3JzKVxuLSBQcm9maWxlIHwgTGVhZGVyc2hpcFxuKi9cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuUHJvZmlsZSB8IFVuaXZlcnNhbCAtIChCb2FyZCBvZiBEaXJlY3RvcnMpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0ICdfdmFyaWFibGVzJztcblxuLmJvYXJkX3BlcnNvbiB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgIG1pbi1oZWlnaHQ6IDE5MHB4O1xuXG4gICAgLnBob3RvIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiAxMzBweDtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHdlc3RlZC1ncmV5LTI7XG4gICAgICAgIH0gLy8gaW1nXG4gICAgfSAvLyAucGhvdG9cblxuICAgIC5uYW1lIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgY29sb3I6ICR3ZXN0ZWQtbmF2eS1ibHVlO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogNXB4IDAgN3B4IDEzNHB4O1xuICAgIH0gLy8gLm5hbWVcblxuICAgIC50aXRsZSB7XG4gICAgICAgIGNvbG9yOiAkd2VzdGVkLWxpZ2h0LWJsdWU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgcGFkZGluZzogMHB4IDVweCA1cHggMTM0cHg7XG4gICAgfSAvLyAudGl0bGVcblxuICAgIC5sb2NhbGUge1xuICAgICAgICBjb2xvcjogJHdlc3RlZC1saWdodC1ibHVlO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIHBhZGRpbmc6IDBweCA1cHggNXB4IDEzNHB4O1xuICAgIH0gLy8gLmxvY2FsZVxuXG59IC8vIC5ib2FyZF9wZXJzb25cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuUHJvZmlsZSB8IExlYWRlcnNoaXBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhZ2UtbGVhZGVyc2hpcCB7XG5cbiAgICAjY29sX2Z1bGxfd2lkdGgge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgJi5ib2FyZF9wZXJzb24ge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNiU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjQwcHg7XG4gICAgICAgICAgICAgICAgei1pbmRleDogOTk5OTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgICAgICAgICAgICAgIH0gLy8gJjpob3ZlclxuXG4gICAgICAgICAgICAgICAgLnBob3RvLFxuICAgICAgICAgICAgICAgIC5uYW1lLFxuICAgICAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIH0gLy8gICAucGhvdG8sIC5uYW1lLCAudGl0bGVcblxuICAgICAgICAgICAgICAgIC5uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZWxlY3RyaWMtYmx1ZTtcbiAgICAgICAgICAgICAgICB9IC8vIC5uYW1lXG5cbiAgICAgICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgICAgICAgICAgIH0gLy8gLnRpdGxlXG4gICAgICAgICAgICB9IC8vICYgLmJvYXJkX3BlcnNvblxuICAgICAgICB9IC8vYVxuXG4gICAgfSAvLyAjY29sX2Z1bGxfd2lkdGhcbn0gLy8gLnBhZ2UtbGVhZGVyc2hpcFxuIiwiLypcbi0gQWJvdXQgVXMgfCBPdmVydmlld1xuLSBBcmVhcyBvZiBXb3JrIHwgVW5pdmVyc2FsXG4tIEFyZWFzIG9mIFdvcmsgfCBPdmVydmlld1xuLSBBcmVhcyBvZiBXb3JrIHwgUHJvamVjdHNcbiovXG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5TbGlkZXIgfCBVbml2ZXJzYWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0ICdfdmFyaWFibGVzJztcblxuXG4uc2xpZGVyIHtcbiAgICBwYWRkaW5nOiAxMHB4IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW0gIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjtcbiAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgIC5pbnRyb19zbGlkZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gLy8gLmludHJvX3NsaWRlXG59IC8vIC5zbGlkZXJcbi5pbnRyb19zbGlkZV9wYWdlciwgLmJ4LXBhZ2VyIHtcbiAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDE3NXB4O1xuICAgIG1hcmdpbjogMzBweCBhdXRvIDIwcHggYXV0bztcbn0gLy8gLmludHJvX3NsaWRlcl9wYWdlclxuLmJ4LXBhZ2VyLWl0ZW0ge1xuICAgIGhlaWdodDogMjZweDtcbiAgICB3aWR0aDogMjZweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDlweDtcbiAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3NsaWRlcl9jb250cm9sc19zcHJpdGUucG5nKSAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDI2cHggIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDI2cHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA5cHggIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1cHggMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH0gLy8gYVxufSAvLyAuYngtcGFnZXItaXRlbVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkFib3V0IFVzIHwgT3ZlcnZpZXdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wYWdlLWFib3V0LXVzIHtcblxuICAgIC5zbGlkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2VzdGVkLWdyZXktNCB1cmwoL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvYWJvdXQtdXMtb3ZlcnZpZXctc2xpZGVyLWJnLnBuZykgbm8tcmVwZWF0IHRvcCBjZW50ZXI7XG4gICAgICAgIGhlaWdodDogMzc3cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzk2cHgpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTE1cHgpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAvLyAuY29udGFpbmVyXG5cbiAgICAgICAgLnNsaWRlci1hYm91dCB7XG4gICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MzRweCkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzY1cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gLy8gaDFcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3OTZweCkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5MHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MTVweCkge1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MTZweCkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzk3cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjlweCkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSAvLyBwXG4gICAgICAgIH0gLy8gLnNsaWRlci1hYm91dFxuXG4gICAgICAgIC5ieC1wYWdlciB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjVweDtcbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzk2cHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcwNXB4KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5MHB4KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTM1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUzNHB4KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTI1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ1MHB4KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTM1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQxNnB4KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5N3B4KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5N3B4KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTI1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyOXB4KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTM1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gLy8gLmJ4LXBhZ2VyXG5cbiAgICB9IC8vIC5zbGlkZXJcbn0gLy8gLnBhZ2UtYWJvdXQtdXNcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblNsaWRlciB8IFdlc3RFZCBFeHBlcnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2luZ2xlLWFyZWFfb2Zfd29yayB7XG4gICAgLmV4cGVydHMtaW50cm8ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc2xpZGVyX3dyYXAge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiA3NCU7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmV4cGVydHNfc2xpZGVyIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH0gLy8gaW1nXG4gICAgICAgIC5leHBlcnQtcGhvdG8ge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gLy8gLmV4cGVydC1waG90b1xuICAgICAgICAuZXhwZXJ0LWNvbnRlbnQge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgd2lkdGg6IDc0JTtcbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBsaSB7fVxuICAgICAgICAvLyBsaVxuICAgIH0gLy8gLmV4cGVydHNfc2xpZGVyXG59IC8vIC5zaW5nbGUtYXJlYV9vZl93b3JrXG4iLCIvKlxuLSBBYm91dCBVcyB8IFVuaXZlcnNhbFxuLSBBYm91dCBVcyB8IE92ZXJ2aWV3XG4tIEFib3V0IFVzIHwgQm9hcmQgb2YgRGlyZWN0b3JzXG4tIEFib3V0IFVzIHwgTGVhZGVyc2hpcFxuLSBBYm91dCBVcyB8IFN0YWZmIERpcmVjdG9yeVxuLSBBYm91dCBVcyB8IFN0YWZmIHwgQWJvdXQgVXMgfCBDbGllbnRzIGFuZCBGdW5kZXJzXG4tIEFib3V0IFVzIHwgV29ya2luZyBXaXRoIFdlc3RFZFxuLSBBYm91dCBVcyB8IFdlc3RlZEVkIFByb2dyYW1zIHwgTGFuZGluZ1xuLSBBYm91dCBVcyB8IFdlc3RlZEVkIFByb2dyYW1zIHwgVW5pdmVyc2FsXG4tIEFib3V0IFVzIHwgV2VzdGVkRWQgUHJvZ3JhbXMgfCBJbnZpZGl1YWwgUHJvZ3JhbSB8IE92ZXJ2aWV3XG4tIEFib3V0IFVzIHwgV2VzdGVkRWQgUHJvZ3JhbXMgfCBJbnZpZGl1YWwgUHJvZ3JhbSB8IFNlcnZpY2VzXG4tIEFib3V0IFVzIHwgV2VzdGVkRWQgUHJvZ3JhbXMgfCBJbnZpZGl1YWwgUHJvZ3JhbSB8IFByb2plY3RzXG4tIEFib3V0IFVzIHwgV2VzdGVkRWQgUHJvZ3JhbXMgfCBJbnZpZGl1YWwgUHJvZ3JhbSB8IFByb2plY3RzIHwgSW52aWR1YWwgUHJvamVjdFxuLSBBYm91dCBVcyB8IFdlc3RlZEVkIFByb2dyYW1zIHwgSW52aWRpdWFsIFByb2dyYW0gfCBSZXNvdXJjZXNcbiovXG5cbkBpbXBvcnQgJy4uL2NvbXBvbmVudHMvX3ZhcmlhYmxlcyc7XG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkFib3V0IFVzIHwgVW5pdmVyc2FsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jb250ZW50LWZ1bGwtd2lkdGgge1xuXG4gIC5mZWF0dXJlZC1jb250ZW50X190ZXh0IHtcbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH0gLy8gcFxuICB9IC8vIC5mZWF0dXJlZC1jb250ZW50X190ZXh0XG5cbn0gLy8gLmNvbnRlbnQtZnVsbC13aWR0aFxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWJvdXQgVXMgfCBPdmVydmlld1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucGFnZS1hYm91dC11cyB7XG5cbiAgI2NvbnRlbnQtc2lkZWJhci13cmFwIHtcbiAgICAucXVvdGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgI3NlY3Rpb25faGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9IC8vICNjb250ZW50LXNpZGViYXItd3JhcFxuXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgcCB7XG4gICAgICAgICY6bnRoLWxhc3QtY2hpbGQoLW4rMikge1xuICAgICAgICAgIC8vIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAvLyBjb2xvcjogJHdlc3RlZC1saWdodC1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICAmOmhvdmVyLCAmOmxpbmssICY6YWN0aXZlLCAmOnZpc2l0ZWQge1xuICAgICAgICAgICAgICAvLyBjb2xvcjogJHdlc3RlZC1saWdodC1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSAvLyAuZW50cnktY29udGVudFxuICB9IC8vICNtYWluX2NvbnRlbnRfd3JhcFxuXG59IC8vIC5wYWdlLWFib3V0LXVzXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWJvdXQgVXMgfCBCb2FyZCBvZiBEaXJlY3RvcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wYWdlLWJvYXJkLW9mLWRpcmVjdG9ycyB7XG4gICNzZWN0aW9uX2hlYWRlciwgLmVudHJ5LWNoaWxkLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgI2NvbnRlbnQge1xuICAgICAgLm5hbWUge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICB3aWR0aDogOTUlO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZzogMjBweCAwIDEwcHggMDtcbiAgICAgICAgfVxuICAgICAgfSAvLyAubmFtZVxuICAgICAgI2NvbF9mdWxsX3dpZHRoIHtcbiAgICAgICAgLmJvYXJkX3BlcnNvbiB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDMzLjMlO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgLyogY2hhbmdlIHRoZSBsYXlvdXQgb24gc21hbGxlciBkZXZpY2VzICovXG4gICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxNjBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjVweCkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfSAvLyAuYm9hcmRfcGVyc29uXG4gICAgICAgIC5oaWRlX2F0X21vYmlsZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfSAvLyAjY29sX2Z1bGxfd2lkdGhcbiAgICAgIC50aXRsZSB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIHdpZHRoOiA5NSU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICB9IC8vIC50aXRsZVxuICAgICAgLnBob3RvIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHdlc3RlZC1kYXJrLW5hdnktYmx1ZTtcbiAgICAgICAgfVxuICAgICAgfSAvLyAucGhvdG9cbiAgICAgIC5sb2NhbGUge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAwIDAgMDtcbiAgICAgICAgfVxuICAgICAgfSAvLyAubG9jYWxcbiAgICAgICNsYXRlc3QtYWdlbmRhLCAucGFnZV9jb250ZW50X2JveCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9IC8vICNsYXRlc3QtYWdlbmRhXG4gICAgfSAvLyAjY29udGVudFxuICB9IC8vICNtYWluX2NvbnRlbnRfd3JhcFxufSAvLyAucGFnZS1ib2FyZC1vZi1kaXJlY3RvcnNcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkFib3V0IFVzIHwgTGVhZGVyc2hpcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhZ2UtbGVhZGVyc2hpcCB7XG4gICNzZWN0aW9uX2hlYWRlciwgLmVudHJ5LWNoaWxkLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgI2NvbnRlbnQge1xuICAgICAgLnRpdGxlIHtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIH1cbiAgICAgICNjb2xfaGFsdmVzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH0gLy8gcmVtb3ZlIG1pbiBoZWlnaHQgb24gdGhlIGxhc3Qgcm93IHRvIGtlZXAgcGFkZGluZyBldmVuIG9uIGFsbCBwYWdlc1xuICAgICAgLmJvYXJkX3BlcnNvbiB7XG4gICAgICAgIC5waG90byB7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR3ZXN0ZWQtZGFyay1uYXZ5LWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH0gLy8gLnBob3RvXG4gICAgICB9IC8vIC5ib2FyZF9wZXJzb25cbiAgICAgICNhZG1pbmlzdHJhdGl2ZSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgLmJvYXJkX3BlcnNvbiB7XG4gICAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgtbiszKSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICAgICAgICAmOm50aC1sYXN0LWNoaWxkKC1uKzEpIHtcbiAgICAgICAgICAgICAgbWluLWhlaWdodDogMTkwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IC8vIC5ib2FyZF9wZXJzb25cbiAgICAgIH0gLy8gI2FkbWluc2l0cmF0aXZlXG4gICAgICAjY29sX2Z1bGxfd2lkdGgge1xuICAgICAgICAuYm9hcmRfcGVyc29uIHtcbiAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogMzIlO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMjQwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzBweCkge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM5MHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgIHdpZHRoOiA5NSU7XG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IC8vIC50aXRsZVxuICAgICAgICB9IC8vIC5ib2FyZF9wZXJzb25cbiAgICAgIH0gLy8gI2NvbF9mdWxsX3dpZHRoXG4gICAgfVxuICAgIC5jb2wge1xuICAgICAgd2lkdGg6IDMyJTtcbiAgICB9XG4gICAgI2NvbDEge1xuICAgICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH0gLy8gI2NvbDFcbiAgICAjY29sMiB7XG4gICAgICAjbGF0ZXN0X2FnZW5kYSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfSAvLyAjY29sMlxuICAgICNjb2wzIHtcbiAgICAgICNmb3J1bV92aWRlb3Mge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH0gLy8jY29sM1xuICB9IC8vICNtYWluX2NvbnRlbnRfd3JhcFxufSAvLyAjYWRtaW5pc3RyYXRpdmVcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWJvdXQgVXMgfCBTdGFmZiBEaXJlY3Rvcnlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wYWdlLXN0YWZmLWRpcmVjdG9yeSB7XG4gICNzZWN0aW9uX2hlYWRlciwgLmVudHJ5LWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI3RvcCB7XG4gICAgdWwge1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cbiAgfVxuICAuZW50cnktY2hpbGQtdGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDQwcHg7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiA0MHB4IDIwcHggMjBweCAyMHB4O1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnIERpcmVjdG9yeSc7XG4gICAgfVxuICB9IC8vIGVudHJ5LWNoaWxkLXRpdGxlXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgI3RvcCB7XG4gICAgICAuYW5jaG9yX3NlcGVyYXRvciB7XG4gICAgICAgIGNvbG9yOiAkd2VzdGVkLWxpZ2h0LWJsdWU7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDNweDtcbiAgICAgICAgcGFkZGluZzogMCA1cHggMCAzcHg7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICY6aG92ZXIsICY6bGluaywgJjphY3RpdmUsICY6dmlzaXRlZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gLy8gI3RvcFxuICAgIC5hbmNob3JfZGl2aWRlciB7XG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICAmOmhvdmVyLCAmOmxpbmssICY6YWN0aXZlLCAmOnZpc2l0ZWQge1xuICAgICAgICBjb2xvcjogJHdlc3RlZC1lbGVjdHJpYy1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnBlcnNvbm5lbF9saXN0aW5nIHtcbiAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgLm5hbWUge1xuICAgICAgICBjb2xvcjogJHdlc3RlZC1ncmV5LTI7XG4gICAgICAgIGEge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgY29sb3I6ICR3ZXN0ZWQtbGlnaHQtYmx1ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgIH1cbiAgICAgIH0gLy8gLnRpdGxlXG4gICAgfSAvLyAucGVyc29ubmVsX2xpc3RpbmdcbiAgfSAvLyAjbWFpbl9jb250ZW50X3dyYXBcbn0gLy8gLnBhZ2Utc3RhZmYtZGlyZWN0b3J5XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkFib3V0IFVzIHwgU3RhZmYgRGV0YWlsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2luZ2xlLXBlcnNvbm5lbCB7XG4gID4jd3JhcCB7XG4gICAgPiNpbm5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIC53cmFwIHtcbiAgICAgICAgI2NvbnRlbnQtc2lkZWJhci13cmFwIHtcbiAgICAgICAgICAjbWFpbl9jb250ZW50X3dyYXAge1xuICAgICAgICAgICAgd2lkdGg6IDEwMjRweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMTdweCkge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4jY29udGVudCB7XG4gICAgICAgICAgICAgIHdpZHRoOiA3OCU7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAxN3B4KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gLy8gPiNjb250ZW50XG4gICAgICAgICAgICAuZW50cnktY29udGVudCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZXktMjtcbiAgICAgICAgICAgICAgd2lkdGg6IDc0JTtcbiAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDE3cHgpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNzclO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODMwcHgpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZXktMjtcbiAgICAgICAgICAgICAgICB9IC8vIGxpXG4gICAgICAgICAgICAgIH0gLy8gdWxcbiAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2OSU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gLy8gLmVudHJ5LWNvbnRlbnRcbiAgICAgICAgICB9IC8vICNtYWluX2NvbnRlbnRfd3JhcFxuICAgICAgICB9IC8vICMgY29udGVudC1zaWRlYmFyLXdyYXBcbiAgICAgIH0gLy8gLndyYXBcbiAgICB9IC8vID4jd3JhcFxuICB9IC8vID4jd3JhcFxufSAvLy5zaW5nbGUtcGVyc29ubmVsXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkFib3V0IFVzIHwgQ2xpZW50cyBhbmQgRnVuZGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhZ2UtY2xpZW50cyB7XG4gIC5jb250ZW50LWZ1bGwtd2lkdGgge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI2lubmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuICAjc2VjdGlvbl9oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmhlcm8ge1xuICAgIGJhY2tncm91bmQ6ICR3ZXN0ZWQtbmF2eS1ibHVlO1xuICB9XG4gIC5lbnRyeS1jaGlsZC10aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAjbWFpbl9jb250ZW50X3dyYXAge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAuZW50cnktY29udGVudCB7XG4gICAgICA+cCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAuY2xpZW50cyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2VzdGVkLWxpZ2h0LWJsdWU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMDtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHggMHB4IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICZfX25hbWVzIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMztcbiAgICAgICAgICAgIC1tb3otY29sdW1uLWNvdW50OiAzO1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAzO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDI7XG4gICAgICAgICAgICAgIC1tb3otY29sdW1uLWNvdW50OiAyO1xuICAgICAgICAgICAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgICAgICAgICB9IC8vIGNoYW5naW5nIGNvbHVtbiBzaXplIGRlcGVuZGluZyBvbiBtZWRpYSBxdWVyeVxuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xuICAgICAgICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMTtcbiAgICAgICAgICAgICAgLW1vei1jb2x1bW4tY291bnQ6IDE7XG4gICAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMTtcbiAgICAgICAgICAgIH0gLy8gY2hhbmdpbmcgY29sdW1uIHNpemUgZGVwZW5kaW5nIG9uIG1lZGlhIHF1ZXJ5XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtbmF2eS1ibHVlO1xuICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gLy8gdWxcbiAgICAgICAgfSAvLyAuY2xpZW50c19fbmFtZXNcbiAgICAgIH0gLy8gLmNsaWVudHNcbiAgICB9IC8vIC5lbnRyeS1jb250ZW50XG4gIH0gLy8gI21haW5fY29udGVudF93cmFwXG59IC8vIC5wYWdlLWNsaWVudHNcblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWJvdXQgVXMgfCBXZXN0ZWRFZCBQcm9ncmFtc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucGFnZS1wcm9ncmFtcyB7XG4gIC8vIHJlbW92ZSBkZWZhdWx0IHBhZ2UgZWxlbWVudHMgdGhhdCB3ZSBkb24ndCBuZWVkXG4gICNzZWN0aW9uX2hlYWRlciwgLmVudHJ5LWNvbnRlbnQsIC5lbnRyeS1jaGlsZC10aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfSAvLyBjZW50ZXIgdGhlIG1haW4gY29udGVudCBhcmVhXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgcGFkZGluZzogNDBweCA3cHg7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDQwcHggMjBweDtcbiAgICB9XG4gIH0gLy8gY2hhbmdlIHRoZSBsb29rIG9mIHRoZSBwcm9ncmFtIHRpbGVzXG4gIC5jb2wge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICAucHJvZ3JhbV9saXN0X2JveCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAyMiU7XG4gICAgICBtYXJnaW46IDVweCAyMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgICAgIHBhZGRpbmc6IDE1cHggMDsgLy8gbG9naWMgdGhhdCBpZ25vcmVzIHRoZSBzdGFuZGFyZCB0aGUgbWFyZ2lucyBvbiB0aGUgcGhvdG9zIHNvIHRoYXQgdGhleSBoaXQgdGhlIGVkZ2Ugb2YgdGhlIHBhZ2Ugb24gZGVza3RvcFxuICAgICAgJjpudGgtY2hpbGQoNG4gKyAyKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCg0bisxKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICAgICAgfSAvLyByZXZlcnQgYmFjayB0byBhZGhlcmluZyB0byB0aGUgc3RhbmRhcmQgYmVoYXZpb3Igb2YgY29udGVudCBpbnNpZGUgb2YgdGhlIHdyYXBwZXIgdGhhdCB1dGlsaXplcyB0aGUgI21haW5fY29udGVudF93cmFwIHBhZGRpbmdcbiAgICAgIC8qICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgICAgJjpudGgtY2hpbGQoNG4gKyAyKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoNG4rMSkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9ICovXG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNDBweCkge1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI0MHB4O1xuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgd2lkdGg6IDg1JSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0MHB4KSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbWluLWhlaWdodDogMjQwcHg7XG4gICAgICAgIC5uYW1lIHtcbiAgICAgICAgICB3aWR0aDogNzAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTUwcHgpIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODhweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiAyNDBweDtcbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLyogICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI3cHgpIHtcbiAgICAgICAgd2lkdGg6IDMyJTtcbiAgICAgIH0gKi9cbiAgICAgIC8qICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgd2lkdGg6IDI3LjglO1xuICAgICAgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICB3aWR0aDogNDAuNTAlO1xuICAgICAgICBtaW4taGVpZ2h0OiAyNDBweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgICAgICAgd2lkdGg6IDg1JTtcbiAgICAgICAgbWluLWhlaWdodDogMjIwcHg7XG4gICAgICB9ICovXG4gICAgICAucGhvdG8ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMCAwIDE1cHggMDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBoZWlnaHQ6IDE0MHB4O1xuICAgICAgICAgIHdpZHRoOiAyMDVweDtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgZmlsdGVyOiBub25lO1xuICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMCUpO1xuICAgICAgICB9XG4gICAgICB9IC8vIC5waG90b1xuICAgICAgLy8gYWRqdXN0IHRoZSB0aXRsZXMgb2YgdGhlIHByb2dyYW0gbmFtZVxuICAgICAgLm5hbWUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkd2VzdGVkLWVsZWN0cmljLWJsdWU7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgd2lkdGg6IDY0JTtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gLy8gLnByb2dyYW1fbGlzdF9ib3hcbiAgfSAvLyAuY29sXG59IC8vIC5wYWdlLXByb2dyYW1zXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BYm91dCBVcyB8IFdlc3RlZEVkIFByb2dyYW1zIHwgSW52aWRpdWFsIFByb2dyYW0gfCBPdmVydmlld1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNpbmdsZS1wcm9ncmFtIHtcbiAgI3NlY3Rpb25faGVhZGVyLCAjcmVsYXRlZF9pdGVtc19oZWFkZXIsICNyZWxhdGVkX2l0ZW1zIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgI2NvbnRlbnQge1xuICAgICAgd2lkdGg6IDgzJTtcbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgIH1cbiAgICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgICAgJl9fYm9keSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDY5JTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICB9XG4gICAgICAgIH0gLy8gLmVudHJ5LWNvbnRlbnRfX2JvZHlcbiAgICAgICAgI3Byb2dyYW1fZGlyZWN0b3JzX2JveCB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDIxMHB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgfVxuICAgICAgICAgICNwcm9ncmFtX2RpcmVjdG9yc19uYW1lcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfSAvLyAucHJvZ3JhbV9kaXJlY3RvcnNfYm94XG4gICAgICB9IC8vIC5lbnRyeS1jb250ZW50XG4gICAgfSAvLyAjY29udGVudFxuICB9IC8vICNtYWluX2NvbnRlbnRfd3JhcFxuICAjcmVjZW50LW5ld3Mge1xuICAgIGltZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgfVxuICB9IC8vIC5yZWNlbnQtbmV3c1xufSAvLyAuc2luZ2xlLXByb2dyYW1cbiNyZWNlbnQtbmV3cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gIGgyIHtcbiAgICBjb2xvcjogIzUxQUY0NjtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIH1cbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxMDAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMmVtIDA7XG4gIH1cbiAgdWwubmV3c2xpc3Qge1xuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgbGkge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMmVtO1xuICAgICAgbWluLWhlaWdodDogMjUwcHg7XG4gICAgICAuaW1nIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMyU7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuaW5mbyB7XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgY29sb3I6ICM1NDZCODU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICB9XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGNvbG9yOiAjMTY2OUM5O1xuICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgfVxufVxuLnZpZXdfbW9yZV9idG4ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogN3B4IDEycHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNUE3OTlDO1xuICB9XG59IC8vICNyZWNlbnQtbmV3c1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWJvdXQgVXMgfCBXZXN0ZWRFZCBQcm9ncmFtcyB8IEludmlkaXVhbCBQcm9ncmFtIHwgU2VydmljZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wYWdlLXNlcnZpY2VzIHtcbiAgI3NlY3Rpb25faGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5pbnRybyB7XG4gICAgcGFkZGluZzogMCAwIDQwcHggMDtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICBwYWRkaW5nOiAwIDAgMjBweCAwO1xuICAgIH1cbiAgICAmX193cmFwIHtcbiAgICAgIHdpZHRoOiAxMDI0cHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IC8vIC5pbnRyb19fd3JhcFxuICB9IC8vIC5pbnRyb1xuICAuY29sIHtcbiAgICB3aWR0aDogOTUlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLnByb2plY3RfbGlzdF9ib3gge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICY6bGluayB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZXktMjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH0gLy8gLmRlc2NyaXB0aW9uXG4gICAgfSAvLyAucHJvamVjdF9saXN0X2JveFxuICB9IC8vIC5jb2xcbn0gLy8gLnBhZ2Utc2VydmljZXNcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkFib3V0IFVzIHwgV2VzdEVkIFByb2dyYW1zIHwgSW52aWRpdWFsIFByb2dyYW0gfCBQcm9qZWN0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhZ2UtcHJvamVjdHMge1xuICAjc2VjdGlvbl9oZWFkZXIsICNyZWxhdGVkX2l0ZW1zX2hlYWRlciwgI3JlbGF0ZWRfaXRlbXMsICNjb2xfaGFsdmVzIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByb2dyYW0tcHJvamVjdHMge1xuICAgIC5wcm9qZWN0X2xpc3RfYm94IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHdlc3RlZC1iYWJ5LWJsdWU7XG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgfVxuICAgICAgLmxvZ28ge1xuICAgICAgICBhIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgIGgzIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWVsZWN0cmljLWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZXktMjtcbiAgICAgIH1cbiAgICB9XG4gIH0gLy8gLnByb2dyYW0tcHJvamVjdHNcbiAgLnByb2plY3RfbmF2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjVlbTtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjMTQ1MUJEICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICNBQkMxREEgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH0gLy8gLnByb2plY3RfbmF2XG59IC8vIC5wYWdlLXByb2plY3RzXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BYm91dCBVcyB8IFdlc3RFZCBQcm9ncmFtcyB8IEludmlkaXVhbCBQcm9ncmFtIHwgUHJvamVjdHMgfCBJbnZpZHVhbCBQcm9qZWN0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2luZ2xlLXByb2plY3Qge1xuICAjY29udGVudCB7XG4gICAgd2lkdGg6IDcwJTtcbiAgfVxuICAuZW50cnktY29udGVudCB7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgdWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgfVxuICAgIH1cbiAgICAucGFnZV9jb250ZW50X2JveCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMnB4IDA7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkd2VzdGVkLWdyZXktNDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgI3NlY3Rpb25faGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5wcm9qZWN0LWhlYWRlciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAucHJvamVjdF90aXRsZSB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDY1MHB4O1xuICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgfSAvLyAucHJvamVjdF90aXRsZVxuICAgICYtLXctbG9nbyB7XG4gICAgICAucHJvamVjdF9sb2dvIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA0MiU7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgLy8gd2lkdGg6IDI2OHB4O1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9IC8vIC5wcm9qZWN0X2xvZ29cbiAgICAgIC5wcm9qZWN0X3RpdGxlIHtcbiAgICAgICAgd2lkdGg6IDU4JTtcbiAgICAgICAgbWF4LXdpZHRoOiAzNDBweDtcbiAgICAgIH0gLy8gLnByb2plY3RfdGl0bGVcbiAgICB9IC8vIC53LWxvZ29cbiAgfSAvLyAucHJvamVjdC1oZWFkZXJcbn0gLy8gLnNpbmdsZS1wcm9qZWN0XG4vL21vdmUgdGhlIGltYWdlIGZvciBDYWxpZm9ybmlhIENvbXByZWhlbnNpdmUgQ2VudGVyIHVwIHNsaWdodGx5IChkdWUgdG8gdGhlIHBhZGluZyBvbiB0aGUgYWN0dWFsIC5wbmcgZmlsZSlcbi5wb3N0aWQtMzE1Njgge1xuICAucHJvamVjdF9sb2dvIHtcbiAgICBpbWcge1xuICAgICAgbWFyZ2luLXRvcDogLTE3cHg7XG4gICAgfVxuICB9XG59IC8vIC5zaW5nbGUtcHJvamVjdFxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWJvdXQgVXMgfCBXZXN0RWQgUHJvZ3JhbXMgfCBJbmRpdmlkdWFsIFByb2dyYW0gfCBSZXNvdXJjZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wYWdlLXJlc291cmNlcyB7XG4gICNzZWN0aW9uX2hlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufSAvLyAucGFnZS1yZXNvdXJjZXNcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkFib3V0IFVzIHwgV2VzdEVkIFByb2dyYW1zIHwgSW5kaXZpZHVhbCBQcm9ncmFtIHwgS2V5IFN0YWZmXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucGFnZS1rZXktc3RhZmYge1xuICAjc2VjdGlvbl9oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICAuY29sIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJvYXJkX3BlcnNvbiB7XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIH0gLy8gJjpob3ZlclxuICAgICAgLm5hbWUge1xuICAgICAgICBhIHtcbiAgICAgICAgICAmOmxpbmsge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSAvLyAubmFtZVxuICAgICAgLmxvY2FsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfSAvLyAuYm9hcmRfcGVyc29uXG4gIH0gLy8gI21haW5fY29udGVudF93cmFwXG59IC8vIC5wYWdlLWtleS1zdGFmZlxuXG5cbi8qIGpqb2huc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogQm9hcmQgKi9cbi5wYWdlLWJvYXJkLW9mLWRpcmVjdG9ycyAuYm9hcmRfcGVyc29uIHtcbiAgbWluLWhlaWdodDogMjMwcHggIWltcG9ydGFudDtcblxuICAubmFtZSwgLnRpdGxlLCAubG9jYWxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjVweCkge1xuICAgIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcblxuICB9XG5cbn1cblxuXG5cblxuXG5cblxuXG5cbiIsIi8qXG4tIEFyZWFzIG9mIFdvcmsgfCBVbml2ZXJzYWxcbi0gQXJlYXMgb2YgV29yayB8IE92ZXJ2aWV3XG4tIEFyZWFzIG9mIFdvcmsgfCBQcm9qZWN0c1xuKi9cblxuQGltcG9ydCAnLi4vY29tcG9uZW50cy9fdmFyaWFibGVzJztcblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkFyZWFzIG9mIFdvcmsgfCBVbml2ZXJzYWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIEFPVyBPdmVydmlldyBmbG9hdCBmaXggKi9cbmJvZHkuc2luZ2xlLWFyZWFfb2Zfd29yayAjbWFpbl9jb250ZW50X3dyYXAge1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLyogVmlldyBNb3JlIGJ1dHRvbiBhbGlnbm1lbnQgKi9cbmJvZHkuc2luZ2xlLWFyZWFfb2Zfd29yayBzcGFuLnZpZXdtb3JlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAxNjVweDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgfVxuXG59XG5cbiNzdWJzdWJtZW51IHtcbiAgdWwge1xuICAgIGxpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgfSAvLyBsaVxuICB9IC8vIHVsXG59IC8vICNzdWJzdWJtZW51XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXJlYXMgb2YgV29yayB8IE92ZXJ2aWV3XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2luZ2xlLWFyZWFfb2Zfd29yayB7XG4gIC5mZWF0dXJlZF9mdyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdlc3RlZC1iYWJ5LWJsdWU7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcGFkZGluZzogNDBweCAyMHB4O1xuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgICNzcG90bGlnaHQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgLmZlYXR1cmVkX2ltZyB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUyMHB4KSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5mZWF0dXJlZF9jb250ZW50IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogNzQlO1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUyMHB4KSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgaDQge1xuICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICB9XG4gICAgICAgIGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZWxlY3RyaWMtYmx1ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICAgICAgfVxuICAgICAgfSAvLyAuZmVhdHVyZWRfY29udGVudFxuICAgIH0gLy8gI3Nwb3RsaWdodFxuICB9IC8vIC5mZWF0dXJlZF9md1xufSAvLy5zaW5nbGUtYXJlYV9vZl93b3JrXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXJlYXMgb2YgV29yayB8IE92ZXJ2aWV3XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2luZ2xlLWFyZWFfb2Zfd29yayB7XG4gIC5jb250ZW50LWZ1bGwtd2lkdGgge1xuICAgIGJhY2tncm91bmQ6ICR3ZXN0ZWQtZ3JleS00O1xuICAgIC5jb250YWluZXIge1xuICAgICAgcGFkZGluZzogNDBweCAyMHB4IDIwcHggMjBweDtcbiAgICB9IC8vIC5jb250YWluZXJcbiAgICAuZXhwZXJ0cy1pbnRybyB7XG4gICAgICBoMyB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgICB9XG4gICAgfSAvLyAuZXhwZXJ0cy1pbnRyb1xuICAgIC5zbGlkZXJfd3JhcCB7XG4gICAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZWxlY3RyaWMtYmx1ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICB9XG4gICAgfVxuICB9IC8vIC5jb250ZW50LWZ1bGwtd2lkdGhcbiAgLmludHJvX3NsaWRlIHtcbiAgICBoMiB7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICB9XG4gIH0gLy8gLmludHJvX3NsaWRlXG59IC8vIC5zaW5nbGUtYXJlYV9vZl93b3JrXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXJlYXMgb2YgV29yayB8IFByb2plY3RzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucGFnZS10ZW1wbGF0ZS1hb3ctcHJvamVjdGxpc3QtcGFnZSB7XG4gIC5hb3ctcHJvamVjdHMge1xuICAgIC5wcm9qZWN0X2xpc3RfYm94IHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkd2VzdGVkLWdyZXktNDtcbiAgICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgIC5uYW1lIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfSAvLyAubmFtZVxuICAgICAgICB9IC8vIC5kZXNjcmlwdGlvblxuICAgICAgfSAvLyA6Zmlyc3QtY2hpbGRcbiAgICAgIC5sb2dvIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxOTBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk4OXB4KSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY1cHgpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICB9IC8vIGltZ1xuICAgICAgfSAvLyAubG9nb1xuICAgICAgLmxvZ28rLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk0NHB4KSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH0gLy8gLmxvZ28gKyBkZXNjcmlwdGlvbiAtLSBmb3IgZXZlcnkgaXRlbSB3aXRoIGEgbG9nbywgY2hhbmdlIHRoZSB3aWR0aCBvZiB0aGUgZGVzY3JpcHRpb24gdGV4dFxuICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwIHtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjVweCkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC5uYW1lIHtcbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY1cHgpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IC8vIC5kZXNjcmlwdGlvblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgfSAvLyAmOmZpcnN0LWNoaWxkXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgfSAvLyAmOmxhc3QtY2hpbGRcbiAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9IC8vIGgzXG4gICAgICAgIHAge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIH0gLy8gcFxuICAgICAgfSAvLyAuZGVzY3JpcHRpb25cbiAgICB9IC8vIC5wcm9qZWN0X2xpc3RfYm94XG4gIH0gLy8gLmFvdy1wcm9qZWN0c1xufSAvLyAucGFnZS10ZW1wbGF0ZS1hb3ctcHJvamVjdGxpc3QtcGFnZVxuIiwiQGltcG9ydCAnLi4vY29tcG9uZW50cy9fdmFyaWFibGVzJztcblxuLypcbi0gUHJvZmVzc2lvbmFsIExlYXJuaW5nIHwgVW5pdmVyc2FsXG4qL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Qcm9mZXNzaW9uYWwgTGVhcm5pbmcgfCBVbml2ZXJzYWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wYWdlLXRlbXBsYXRlLXNlcnZpY2UtcGx0YS1wYWdlLFxuLnBhZ2UtdGVtcGxhdGUtcHJvZmVzc2lvbmFsLWRldmVsb3BtZW50LWZhY2V0d3Age1xuXG5cdCNpbm5lciB7XG5cdFx0I3NlY3Rpb25faGVhZGVyIHtcblx0XHRcdC5lbnRyeS10aXRsZSB7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuXHRcdFx0XHRsZXR0ZXItc3BhY2luZzogMXB4O1xuXHRcdFx0fSAvLyAuZW50cnktdGl0bGVcblx0XHRcdC5lbnRyeS1jaGlsZC10aXRsZSB7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjZweDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdH0gLy8gLmVudHJ5LWNoaWxkLXRpdGxlXG5cdFx0XHRoMiwgcCB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMThweDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHRcdH0gLy8gaDIsIHBcblx0XHR9IC8vICNzZWN0aW9uX2hlYWRlclxuXHR9IC8vICNpbm5lclxuXG5cdC5mZWF0dXJlZF9mdyB7XG5cdFx0aDQge1xuXHRcdFx0Y29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG5cdFx0XHRmb250LXNpemU6IDEzcHg7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDFweDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fSAvLyBoNFxuXHRcdGgzIHtcblx0XHRcdGNvbG9yOiAkd2VzdGVkLWVsZWN0cmljLWJsdWU7XG5cdFx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMjZweDtcblx0XHR9IC8vIGgzXG5cdFx0cCB7XG5cdFx0XHRmb250LXdlaWdodDogMzAwO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDIzcHg7XG5cdFx0XHRmb250LXNpemU6IDE3cHg7XG5cdFx0XHRjb2xvcjogJHdlc3RlZC1ncmV5LTU7XG5cdFx0fSAvLyBwXG5cdFx0LmZlYXR1cmVkX2ltZyB7XG5cdFx0XHR3aWR0aDogMjMwcHg7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwN3B4KSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDE1cHg7XG5cdFx0XHR9XG5cdFx0fSAvLyAuZmVhdHVyZWRfaW1nXG5cdFx0LmZlYXR1cmVkX2NvbnRlbnQge1xuXHRcdFx0IGZsb2F0OiByaWdodDtcbiAgIFx0XHRcdCB3aWR0aDogNzQlO1xuXHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTA3cHgpIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cdFx0fSAvLyAuZmVhdHVyZWRfY29udGVudFxuXHR9IC8vIC5mZWF0dXJlZF9md1xuXG5cdCNtYWluX2NvbnRlbnRfd3JhcCB7XG5cblx0XHRoMiB7XG5cdFx0XHRmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDEwMDtcblx0XHRcdGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuXHRcdH0gLy8gaDJcblxuXHRcdC5maWx0ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHdpZHRoOiAyNTBweDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NTBweCkge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0XHR9XG5cblx0XHRcdGxhYmVsIHtcblx0XHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODUwcHgpIHtcblx0XHRcdFx0XHR3aWR0aDogOTAlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2VzdGVkLWdyZXktMztcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTVweDtcbiAgICBcdFx0XHRcdGxldHRlci1zcGFjaW5nOiAuNHB4O1xuXHRcdFx0XHRwYWRkaW5nOiA2cHggMTZweDtcblx0XHRcdH0gLy8gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXVxuXHRcdFx0aDIge1xuXHRcdFx0XHRmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcblx0XHRcdFx0Zm9udC1zaXplOiAxNXB4O1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMjBweDtcblx0XHRcdFx0Y29sb3I6ICR3ZXN0ZWQtZ3JleS01O1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0fSAvLyBoMlxuXHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdFx0XHRcdGNvbG9yOiAkd2VzdGVkLWdyZXktNTtcblx0XHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAxOXB4O1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRtYXJnaW46IDAgMCAxMnB4IDA7XG5cdFx0XHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRpbnB1dCB7XG5cdFx0XHRcdFx0XHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cdFx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjODE5QUI2O1xuXHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMnB4O1xuXHRcdFx0XHRcdFx0cGFkZGluZzogN3B4O1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdlc3RlZC1iYWJ5LWJsdWU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRjb250ZW50OiAnWCc7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHR0b3A6IDRweDtcblx0XHRcdFx0XHRcdGxlZnQ6IDRweDtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAwLjg7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHdlc3RlZC1lbGVjdHJpYy1ibHVlO1xuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIC4ycztcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHRcdFx0fSAvLyBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmVcblx0XHRcdFx0XHRsYWJlbCB7XG5cdFx0XHRcdFx0XHRjb2xvcjogIzNmNjQ4Zjtcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0XHRcdFx0fSAvLyBsYWJlbFxuXHRcdFx0XHR9IC8vIGxpXG5cdFx0XHR9IC8vIC5maWx0ZXJcblxuXHRcdFx0LnBsdGEtbGlzdCB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiAyM3B4O1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdFx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdFx0b3ZlcmZsb3c6IGF1dG87XG5cblx0XHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjc1cHgpIHtcblx0XHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRwYWRkaW5nLXRvcDogMHB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0XHQjc2VydmljZXMtcG9zdHMge1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luOiAwIDAgMjlweCAwO1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHRcdFx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogMzAwO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH0gLy8gbGlcblx0XHRcdFx0XHR9IC8vICNzZXJ2aWNlcy1wb3N0c1xuXHRcdFx0fSAvLyAucGx0YS1saXN0XG5cblx0fSAvLyAjbWFpbl9jb250ZW50X3dyYXBcbn0vLyAucGFnZS10ZW1wbGF0ZS1zZXJ2aWNlLXBsdGEtcGFnZVxuIiwiQGltcG9ydCAnLi4vY29tcG9uZW50cy9fdmFyaWFibGVzJztcblxuLypcbi0gV29vQ29tbWVyY2UgfCBVbml2ZXJzYWwgfCAgUmVzb3VyY2VzXG4qL1xuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Xb29Db21tZXJjZSB8IFVuaXZlcnNhbCB8ICBSZXNvdXJjZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi53b29jb21tZXJjZSwgLndvb2NvbW1lcmNlLXBhZ2Uge1xuICAjc3BvdGxpZ2h0LCAjcm93X3JlbGF0ZWRfc2VydmljZXMsIC5wYWdlLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHVsLnByb2R1Y3RzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGkucHJvZHVjdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiA0OCU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtaW4taGVpZ2h0OiAyMzVweDtcbiAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTI1cHgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWluLWhlaWdodDogMTQ1cHg7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMCA1cHggMDtcbiAgICAgIH1cbiAgICAgIC50aHVtYm5haWwge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIG1pbi13aWR0aDogMTAwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHB4O1xuICAgICAgICBwYWRkaW5nOiA0cHggMDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkyNXB4KSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTI1cHgpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDYwcHgpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWFyZ2luOiAycHggMCAwIDBweDtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfSAvLyAudGh1bWJuYWlsXG4gICAgICBoMyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDBweCAwcHggMTVweCAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBjb2xvcjogJHdlc3RlZC1lbGVjdHJpYy1ibHVlO1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkyNXB4KSB7XG4gICAgICAgICAgd2lkdGg6IDgzJSAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzc3cHgpIHtcbiAgICAgICAgICB3aWR0aDogOTUlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH0gLy8gaDNcbiAgICAgIC5yZXNvdXJjZV9kZXNjcmlwdGlvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDBweCAwcHggNXB4IDIwcHg7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTI1cHgpIHtcbiAgICAgICAgICB3aWR0aDogODMlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NzdweCkge1xuICAgICAgICAgIHdpZHRoOiA5NSUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfSAvLyAucmVzb3VyY2VfZGVzY3JpcHRpb25cbiAgICAgIC5wcmljZSwgLmJ0bl9jdGEge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH0gLy8gbGkucHJvZHVjdFxuICB9IC8vIHVsLnByb2R1Y3RzXG4gIC5maW5pdGVTY3JvbGwge1xuICAgIHBhZGRpbmc6IDMwcHggMCAwIDA7XG4gIH0gLy8gLmZpbml0ZVNyb2xsXG59IC8vIC53b29jb21tZXJjZVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuUHJpbnRcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG4vKiBHbG9iYWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5IHtcbiAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQ6IG5vcm1hbCAxOHB4LzI0cHg7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbioge1xuICAvLyBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmEsIGE6bGluaywgYTp2aXNpdGVkIHtcbiAgY29sb3I6ICM1NDZCODUgIWltcG9ydGFudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiBmb3JjZSBiYWNrZ3JvdW5kIGNvbG9ycyAqL1xuLmNvbG9yLXByaW50IHtcbiAgLXdlYmtpdC1wcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0O1xuICBwcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0O1xufVxuXG4vKiBoaWRlICovXG4jbmF2LFxuI25hdi10cmlnZ2VyLFxuI2hlYWRlciAjdGl0bGUtYXJlYSxcbiNoZWFkZXIgLndpZGdldF9uYXZfbWVudSxcbiNoZWFkZXIgI2FjdGl2YXRlTWFpbk1lbnUsXG4jc2lkZWJhcixcbiNmb290ZXItd2lkZ2V0cyxcbiNmb290ZXIgLmdvdG90b3AsXG4jbW9iaWxlU2VhcmNoVG9wIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4jZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgLmZvb3Rlci1ib3R0b20tbmF2IHtcblxuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgcCwgcCBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICM1NDZCODUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgfVxuXG4gIH1cblxufVxuXG4jd3JhcCwgI2NvbnRlbnQsICNpbm5lciB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbiNpbm5lciB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbiNtYWluX2NvbnRlbnRfd3JhcCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4vKiBIZWFkZXIgKi9cbiNoZWFkZXIge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tOiA0cHggc29saWQgI2NjYyAhaW1wb3J0YW50O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgLndpZGdldC1hcmVhIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubG9nbyB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTUwcHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuc2xvZ2FuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICB0b3A6IDE1cHggIWltcG9ydGFudDtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA0NzVweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgLy8gY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgMCAwIDQwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxufVxuXG4vKiBIZXJvICovXG4jaGVybyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwIDAgNDBweCAwICFpbXBvcnRhbnQ7XG5cbiAgLndyYXAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIHNwYW4uc3VidGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzU0NkI4NSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICM1NDZCODUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IDIycHggIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMjhweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzU0NkI4NSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICM1NDZCODUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBzcGFuLnJlZyB7XG4gICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gcCB7XG4gICAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICM1NDZCODUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxufVxuXG4jY29udGVudCB7XG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMjRweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgIC8vIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAyNnB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgcCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIDAgMTBweCAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgdWwsXG4gIG9sIHtcbiAgICBtYXJnaW46IDEwcHggMCAxMHB4IDMwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIGxpIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgMCAxMHB4IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxufVxuXG4vKiBGb290ZXIgKi9cbiNmb290ZXItZm9ybSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiNmb290ZXIge1xuICBjbGVhcjogYm90aCAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzk5OTtcbiAgbWFyZ2luOiAyMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDA7XG5cbiAgLndyYXAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIHAsXG4gIHAgYSB7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jcmVkcyB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG59XG5cblxuLyogQmxvZyBQb3N0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuc2luZ2xlLXBvc3QgI2NvbnRlbnQge1xuXG4gIC5zb2NpYWwtYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnNpbmdsZS1pbWcge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5zaW5nbGUtbWFpbiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDc1JTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAwIDAgNDBweDtcblxuICAgIGgyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucG9zdC1kYXRlIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHggIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgcC50YWdzIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgcC5tb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIFImRCBBbGVydCBBcnRpY2xlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuc2luZ2xlLXJkX2FsZXJ0X29ubGluZSB7XG5cbiAgI2NvbnRlbnQgLmVudHJ5LWNvbnRlbnQge1xuXG4gICAgLnNvY2lhbC1iYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICBmb250LXNpemU6IDMwcHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgICAvLyBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICYucG9zdGVkLW9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIGludHJvICovXG4gICAgLmludHJvIHtcblxuICAgICAgLnBvc3RfaW1hZ2UsXG4gICAgICAudG9jIHtcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIC5wb3N0X2ltYWdlIHtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgIWltcG9ydGFudDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAudG9jIGxpIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAudG9jIC50b2NfY29udGVudCB1bCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMjBweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogZGlzYztcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBjb250YWluZXIgKi9cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuXG4gICAgICAvKiBzaWRlYmFyICovXG4gICAgICAucmRhbGVydC1zaWRlYmFyLFxuICAgICAgLnJkYWxlcnQtY29udGVudCB7XG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLnJkYWxlcnQtc2lkZWJhciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWZvb3Rlci1ncm91cDtcbiAgICAgIH1cblxuICAgICAgLnJkYWxlcnQtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgICAgIH1cblxuICAgICAgLnJkYWxlcnQtc2lkZWJhciB7XG5cbiAgICAgICAgLndpZGdldF90ZXh0IHtcbiAgICAgICAgICBtYXJnaW46IDMwcHggMCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIGEge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgICNzaWRlYmFyX3Byb2plY3RfY29udGFjdCB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM1NDZCODU7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM1NDZCODU7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMjBweCAwIDIwcHggMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgLmNvbnRhY3RJbmZvIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcC5uYW1lIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBjb2xvcjogIzU0NkI4NTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzU0NkI4NTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJDb250YWN0XCI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgM3B4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAucGhvbmUge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgY29sb3I6ICM1NDZCODUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcC5lbWFpbCB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogY29udGVudCAqL1xuICAgICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICM1NDZCODUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMTVweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogNDBweCAwIDQwcHggNDBweCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogIzU0NkI4NSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIDIwMTktMDQgaGlkaW5nIHBlciBDSCAqL1xuICAjc2lkZWJhcl9yZWxhdGVkX3Byb2plY3QsXG4gICNzaWRlYmFyX3JlbGF0ZWRfcHJvZ3JhbSxcbiAgI3NpZGViYXJfcmVsYXRlZF9zZXJ2aWNlcyxcbiAgI3JlbGF0ZWQtcmVzb3VyY2VzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICNzaWRlYmFyX3Byb2plY3RfY29udGFjdCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbn1cblxuYm9keS5zaW5nbGUtcmRfYWxlcnRfb25saW5lIHtcblxuICAjcmVsYXRlZC1yZXNvdXJjZXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCI7XG4gICAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogIzUxQUY0NiAhaW1wb3J0YW50O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICBtYXJnaW46IDI1cHggMCAxMHB4IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgICBsaSB7XG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgMjBweCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcblxuICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA2cHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5tb3JlX2xpbmtzIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7dUVBSXVFO0FDSnZFO3VFQUN1RTtBQUd2RSxvQkFBb0I7QUFJcEI7dUVBQ3VFO0FBS3ZFO3VFQUN1RTtBQVF2RTt1RUFDdUU7QUN4QnZFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozt1RUFxRHVFO0FBRXZFLEFBRUUsY0FGWSxDQUVaLEVBQUUsQ0FBQztFQUNELFdBQVcsRUQvQ0UsYUFBYTtFQ2dEMUIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSTtFQUNqQixXQUFXLEVBQUUsR0FBRztFQUNoQixLQUFLLEVBQUUsT0FBTztFQUNkLE1BQU0sRUFBRSxhQUFhO0VBQ3JCLE9BQU8sRUFBRSxDQUFDLEdBTVg7RUFmSCxBQVdJLGNBWFUsQ0FFWixFQUFFLEFBU0MsWUFBWSxDQUFDO0lBQ1osVUFBVSxFQUFFLENBQUMsR0FDZDs7QUFiTCxBQWlCRSxjQWpCWSxDQWlCWixFQUFFLENBQUM7RUFDRCxXQUFXLEVEOURFLGFBQWE7RUMrRDFCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7RUFDakIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsS0FBSyxFQUFFLE9BQU87RUFDZCxNQUFNLEVBQUUsYUFBYTtFQUNyQixPQUFPLEVBQUUsQ0FBQyxHQUNYOztBQXpCSCxBQTZCSSxjQTdCVSxDQTJCWixFQUFFLENBRUEsRUFBRSxFQTdCTixjQUFjLENBMkJSLEVBQUUsQ0FFSixFQUFFLENBQUM7RUFDRCxXQUFXLEVEM0VGLFFBQVE7RUM0RWpCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLGFBQWEsRUFBRSxJQUFJLEdBQ3BCOztBQWpDTCxBQXFDRSxjQXJDWSxDQXFDWixHQUFHLENBQUM7RUFDRixT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 */
