@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

2021-01 Note: When starting 2020 Year in Review, I started to clean up the SCSS, but it quickly became a mess. Best to do a full rewrite when the design changes in future years.

-------------------------------------------------------------------- */
body.year-in-review-2018 #main_content_wrap,
body.year-in-review-2019 #main_content_wrap,
body.year-in-review-2020 #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,
  body.year-in-review-2020 #main_content_wrap #content p {
    width: 100%; }

body.year-in-review-2018 .bust-out-resources,
body.year-in-review-2019 .bust-out-resources,
body.year-in-review-2020 .bust-out-resources {
  padding-top: 15px; }
  body.year-in-review-2018 .bust-out-resources h2,
  body.year-in-review-2019 .bust-out-resources h2,
  body.year-in-review-2020 .bust-out-resources 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-2019 .bust-out-resources .lists:before,
  body.year-in-review-2019 .bust-out-resources .lists:after,
  body.year-in-review-2020 .bust-out-resources .lists:before,
  body.year-in-review-2020 .bust-out-resources .lists:after {
    content: "";
    display: table; }
  body.year-in-review-2018 .bust-out-resources .lists:after,
  body.year-in-review-2019 .bust-out-resources .lists:after,
  body.year-in-review-2020 .bust-out-resources .lists:after {
    clear: both; }
  body.year-in-review-2018 .bust-out-resources ol,
  body.year-in-review-2019 .bust-out-resources ol,
  body.year-in-review-2020 .bust-out-resources ol {
    margin: 0;
    padding: 0; }
    body.year-in-review-2018 .bust-out-resources ol li,
    body.year-in-review-2019 .bust-out-resources ol li,
    body.year-in-review-2020 .bust-out-resources 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-2019 .bust-out-resources ol li:nth-child(1),
      body.year-in-review-2020 .bust-out-resources 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-2019 .bust-out-resources ol li:nth-child(2),
      body.year-in-review-2020 .bust-out-resources 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-2019 .bust-out-resources ol li:nth-child(3),
      body.year-in-review-2020 .bust-out-resources 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-2019 .bust-out-resources ol li:nth-child(4),
      body.year-in-review-2020 .bust-out-resources 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-2019 .bust-out-resources ol li:nth-child(5),
      body.year-in-review-2020 .bust-out-resources 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-2019 .bust-out-resources ol li a,
      body.year-in-review-2020 .bust-out-resources 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-2019 .bust-out-resources ol.text,
    body.year-in-review-2020 .bust-out-resources ol.text {
      float: left;
      width: 45%; }
      body.year-in-review-2018 .bust-out-resources ol.text li,
      body.year-in-review-2019 .bust-out-resources ol.text li,
      body.year-in-review-2020 .bust-out-resources ol.text li {
        max-width: 450px; }
    body.year-in-review-2018 .bust-out-resources ol.thumbs,
    body.year-in-review-2019 .bust-out-resources ol.thumbs,
    body.year-in-review-2020 .bust-out-resources 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-2019 .bust-out-resources ol.thumbs:before,
      body.year-in-review-2019 .bust-out-resources ol.thumbs:after,
      body.year-in-review-2020 .bust-out-resources ol.thumbs:before,
      body.year-in-review-2020 .bust-out-resources ol.thumbs:after {
        content: "";
        display: table; }
      body.year-in-review-2018 .bust-out-resources ol.thumbs:after,
      body.year-in-review-2019 .bust-out-resources ol.thumbs:after,
      body.year-in-review-2020 .bust-out-resources ol.thumbs:after {
        clear: both; }
      body.year-in-review-2018 .bust-out-resources ol.thumbs li,
      body.year-in-review-2019 .bust-out-resources ol.thumbs li,
      body.year-in-review-2020 .bust-out-resources 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-2019 .bust-out-resources ol.text,
    body.year-in-review-2019 .bust-out-resources ol.thumbs,
    body.year-in-review-2020 .bust-out-resources ol.text,
    body.year-in-review-2020 .bust-out-resources 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,
body.year-in-review-2020 .bust-out-resources {
  background-color: #E3ECF9; }

/* 2019 */
body.year-in-review-2019,
body.year-in-review-2020 {
  /* header */
  /* To 5 Resources */ }
  body.year-in-review-2019 .year-in-review-header,
  body.year-in-review-2020 .year-in-review-header {
    display: flex;
    margin: 0 0 60px 0;
    padding: 0; }
    body.year-in-review-2019 .year-in-review-header .item,
    body.year-in-review-2020 .year-in-review-header .item {
      flex: 1 1 auto; }
      body.year-in-review-2019 .year-in-review-header .item:first-child,
      body.year-in-review-2020 .year-in-review-header .item:first-child {
        min-width: 225px;
        margin-right: 25px; }
    body.year-in-review-2019 .year-in-review-header h1,
    body.year-in-review-2020 .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,
  body.year-in-review-2020 .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,
    body.year-in-review-2020 .bust-out-resources ol.thumbs:before,
    body.year-in-review-2020 .bust-out-resources ol.thumbs:after {
      content: "";
      display: table; }
    body.year-in-review-2019 .bust-out-resources ol.thumbs:after,
    body.year-in-review-2020 .bust-out-resources ol.thumbs:after {
      clear: both; }
    body.year-in-review-2019 .bust-out-resources ol.thumbs li,
    body.year-in-review-2020 .bust-out-resources ol.thumbs li {
      float: left;
      width: 130px;
      height: 170px;
      background: none;
      margin: 0 10px 15px 10px;
      padding: 0; }
      body.year-in-review-2019 .bust-out-resources ol.thumbs li:first-child img,
      body.year-in-review-2020 .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,
    body.year-in-review-2020 .year-in-review-header {
      display: block; }
      body.year-in-review-2019 .year-in-review-header .item:first-child,
      body.year-in-review-2020 .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,
    body.year-in-review-2020 .lists ol.text,
    body.year-in-review-2020 .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,
body.year-in-review-2020 .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,
  body.year-in-review-2020 .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,
    body.year-in-review-2020 .entry-content .bust-out-timeline .bust-out-content:before,
    body.year-in-review-2020 .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,
    body.year-in-review-2020 .entry-content .bust-out-timeline .bust-out-content:after {
      clear: both; }

body.year-in-review-2018 .left,
body.year-in-review-2019 .left,
body.year-in-review-2020 .left {
  float: left;
  width: 30%; }
  body.year-in-review-2018 .left h2,
  body.year-in-review-2019 .left h2,
  body.year-in-review-2020 .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,
body.year-in-review-2020 .right {
  float: right;
  width: 70%; }

body.year-in-review-2018 .timeline-container,
body.year-in-review-2019 .timeline-container,
body.year-in-review-2020 .timeline-container {
  height: 450px;
  overflow: auto; }
  body.year-in-review-2018 .timeline-container::-webkit-scrollbar,
  body.year-in-review-2019 .timeline-container::-webkit-scrollbar,
  body.year-in-review-2020 .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,
  body.year-in-review-2020 .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,
  body.year-in-review-2020 .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,
  body.year-in-review-2020 .timeline-container .item {
    overflow-y: auto;
    padding: 0; }
  body.year-in-review-2018 .timeline-container #timeline,
  body.year-in-review-2019 .timeline-container #timeline,
  body.year-in-review-2020 .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,
    body.year-in-review-2020 .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,
    body.year-in-review-2020 .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,
    body.year-in-review-2020 .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,
      body.year-in-review-2020 .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,
        body.year-in-review-2020 .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,
          body.year-in-review-2020 .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,
          body.year-in-review-2020 .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,
          body.year-in-review-2020 .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,
            body.year-in-review-2020 .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,
  body.year-in-review-2020 .left,
  body.year-in-review-2020 .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,
  body.year-in-review-2020 .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,
  body.year-in-review-2020 .timeline-container #timeline section.year section ul li {
    max-width: none; } }

body.year-in-review-2019 .entry-content .bust-out-timeline,
body.year-in-review-2020 .entry-content .bust-out-timeline {
  background-color: transparent;
  margin-top: 0; }
  body.year-in-review-2019 .entry-content .bust-out-timeline .bust-out-content,
  body.year-in-review-2020 .entry-content .bust-out-timeline .bust-out-content {
    padding-top: 0 !important; }
  body.year-in-review-2019 .entry-content .bust-out-timeline .right,
  body.year-in-review-2020 .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,
  body.year-in-review-2020 .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,
  body.year-in-review-2020 .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,
  body.year-in-review-2020 .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,
  body.year-in-review-2020 .entry-content .bust-out-timeline .left,
  body.year-in-review-2020 .entry-content .bust-out-timeline .right {
    float: none;
    width: 100%; } }

/* About Us / Year in Review / Slider
-------------------------------------------------------------------- */
body.year-in-review-2019 .bust-out-slider,
body.year-in-review-2020 .bust-out-slider {
  background-color: #abc1da; }
  body.year-in-review-2019 .bust-out-slider .bx-pager-item,
  body.year-in-review-2020 .bust-out-slider .bx-pager-item {
    margin-right: 3px !important; }
    body.year-in-review-2019 .bust-out-slider .bx-pager-item a,
    body.year-in-review-2020 .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,
      body.year-in-review-2020 .bust-out-slider .bx-pager-item a.active {
        background-color: #fff !important; }

/* About Us / Year in Review / Most Viewed Videos
-------------------------------------------------------------------- */
body.year-in-review-2020 .bust-out-videos {
  background-color: #eef2f7; }
  body.year-in-review-2020 .bust-out-videos h2 {
    font-size: 33px;
    line-height: 41px; }
  body.year-in-review-2020 .bust-out-videos ol {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-column-gap: 40px;
    grid-row-gap: 40px;
    margin: 30px 0;
    padding: 0; }
    body.year-in-review-2020 .bust-out-videos ol li {
      list-style: none;
      margin: 0;
      padding: 0; }
      body.year-in-review-2020 .bust-out-videos ol li a {
        font-size: 18px;
        line-height: 25px;
        font-weight: 500; }
      body.year-in-review-2020 .bust-out-videos ol li .thumb {
        display: block;
        margin: 0 0 12px 0;
        padding: 0; }
        body.year-in-review-2020 .bust-out-videos ol li .thumb img {
          width: 100%;
          height: auto; }
  @media screen and (max-width: 1080px) {
    body.year-in-review-2020 .bust-out-videos ol {
      grid-template-columns: 1fr; }
      body.year-in-review-2020 .bust-out-videos ol li {
        max-width: 300px; } }

/* 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 15px 0;
    padding: 0; }
  body.trauma #content .overview {
    margin: 0 0 50px 0;
    padding: 0; }
    body.trauma #content .overview h2 {
      margin: 30px 0 15px 0; }
    body.trauma #content .overview h3 {
      margin: 40px 0 15px 0; }
    body.trauma #content .overview ul {
      margin: 20px 0 0 30px;
      padding: 0; }
      body.trauma #content .overview ul li {
        margin: 0 0 20px 0;
        padding: 0; }
    body.trauma #content .overview .promo {
      float: right;
      width: 325px;
      border-radius: 6px;
      background-color: #6EA9ED;
      margin: 0 0 35px 50px;
      padding: 30px; }
      body.trauma #content .overview .promo p {
        font-size: 21px;
        line-height: 30px;
        font-weight: 400;
        color: #fff;
        margin: 0;
        padding: 0; }
        body.trauma #content .overview .promo p.quote-source {
          font-size: 18px;
          line-height: 22px;
          font-style: italic;
          text-align: right;
          margin: 15px 0 0 0;
          padding: 0; }
        body.trauma #content .overview .promo p span.icon {
          float: left;
          width: 83px;
          height: 58px;
          background: url("../images/2021-02-trauma-quote.svg") no-repeat 0 0;
          margin: -5px 10px 0 0;
          padding: 0; }
    @media screen and (max-width: 800px) {
      body.trauma #content .overview .promo {
        float: none;
        width: 100%;
        margin: 0 0 30px 0; } }
  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 h3 {
          display: block !important;
          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 {
          display: grid;
          grid-template-columns: 1fr 1fr;
          grid-gap: 20px;
          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 .presenter {
            margin: 0 !important;
            padding: 0 !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 {
        grid-template-columns: 1fr; }
        body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter {
          float: none;
          width: auto;
          max-width: 300px;
          min-height: 0;
          margin-bottom: 20px !important; }
          body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter .thumb {
            display: block;
            float: none !important;
            width: auto !important;
            margin-bottom: 10px !important; }
            body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter .thumb img {
              width: auto !important; }
          body.archived_webinar #main_content_wrap .entry .summary #webinar_presenters .presenter .presenter_info {
            float: none !important;
            margin: 0 !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;
      margin-bottom: 20px; }
    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+IC5yZXNvdXJjZV9saXN0IHtcbiAgICAgIG1hcmdpbjogMzBweCAwIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbS1icmVhaykge1xuXG4gICAgICB1bC5yZXNvdXJjZV9saXN0LFxuICAgICAgLm1vcmVfbGlua3NfbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsMWZyKTtcblxuICAgICAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gNztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogT3VyIFRlYW0gKi9cbiAgI3RlYW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG5cbiAgICB1bC50ZWFtLXNsaWRlciB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgICAgcGFkZGluZzogMCA1NXB4O1xuXG4gICAgICAuc2xpY2stdHJhY2sge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuXG4gICAgICAuc2xpZGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDAgMTVweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDE1cHggMCAxMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iaW8ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYS5idG4ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5zbGljay1wcmV2LFxuICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgaGVpZ2h0OiA4MXB4O1xuICAgICAgICB0b3A6IDQ1JTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgd2lkdGg6IDM4cHg7XG4gICAgICAgICAgaGVpZ2h0OiA4MXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzhweCA4MXB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnNsaWNrLXByZXYge1xuICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS0wMy10cmF1bWEtdGVhbS1hcnJvdy1sZWZ0LnN2Z1wiKTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy8yMDE5LTAzLXRyYXVtYS10ZWFtLWFycm93LXJpZ2h0LnN2Z1wiKTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQWJvdXQgVXMgLyBFbmhhbmNlZCBQcm9qZWN0IC8gUHJvamVjdCBPdmVycmlkZXMgLSB1c2UgdGhpcyBmb3IgdGhlIGhvcGVmdWxseSByZWxhdGl2ZWx5IGZldyBwcm9qZWN0cyB0aGF0IGdldCBhZGRpdGlvbmFsIG92ZXJyaWRlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuc2luZ2xlLXByb2plY3QtZW5oYW5jZWQucHJvamVjdC1uYW1lIHtcblxuXG5cbn1cblxuXG4vKiBBYm91dCBVcyAvIFllYXIgaW4gUmV2aWV3XG5cbjIwMjEtMDEgTm90ZTogV2hlbiBzdGFydGluZyAyMDIwIFllYXIgaW4gUmV2aWV3LCBJIHN0YXJ0ZWQgdG8gY2xlYW4gdXAgdGhlIFNDU1MsIGJ1dCBpdCBxdWlja2x5IGJlY2FtZSBhIG1lc3MuIEJlc3QgdG8gZG8gYSBmdWxsIHJld3JpdGUgd2hlbiB0aGUgZGVzaWduIGNoYW5nZXMgaW4gZnV0dXJlIHllYXJzLlxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS55ZWFyLWluLXJldmlldy0yMDE4LFxuYm9keS55ZWFyLWluLXJldmlldy0yMDE5LFxuYm9keS55ZWFyLWluLXJldmlldy0yMDIwIHtcblxuICAjbWFpbl9jb250ZW50X3dyYXAge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgI2NvbnRlbnQgcCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgfVxuXG4gIC5idXN0LW91dC1yZXNvdXJjZXMge1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMzNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG5cbiAgICAubGlzdHMge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgICB9XG5cbiAgICBvbCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNTVweCA1NXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMCAwIDI1cHggNzVweDtcblxuICAgICAgICAmOm50aC1jaGlsZCgxKSB7IGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDE4LXllYXItaW4tcmV2aWV3LTEuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7IH1cblxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7IGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDE4LXllYXItaW4tcmV2aWV3LTIuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7IH1cblxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7IGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDE4LXllYXItaW4tcmV2aWV3LTMuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7IH1cblxuICAgICAgICAmOm50aC1jaGlsZCg0KSB7IGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDE4LXllYXItaW4tcmV2aWV3LTQuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7IH1cblxuICAgICAgICAmOm50aC1jaGlsZCg1KSB7IGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDE4LXllYXItaW4tcmV2aWV3LTUuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7IHBhZGRpbmctYm90dG9tOiA0MHB4OyBtYXgtd2lkdGg6IDM1MHB4ICFpbXBvcnRhbnQ7fVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgJi50ZXh0IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA0NSU7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIG1heC13aWR0aDogNDUwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAmLnRodW1icyB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDMxJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMTBweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5MHB4KSB7XG5cbiAgICAgIG9sLnRleHQsXG4gICAgICBvbC50aHVtYnMge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMCAwIDI1cHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLmJ1c3Qtb3V0LXJlc291cmNlcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcbiAgfVxuXG59XG5cbi8qIDIwMTkgKi9cbmJvZHkueWVhci1pbi1yZXZpZXctMjAxOSxcbmJvZHkueWVhci1pbi1yZXZpZXctMjAyMCB7XG5cbiAgLyogaGVhZGVyICovXG4gIC55ZWFyLWluLXJldmlldy1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luOiAwIDAgNjBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuaXRlbSB7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1pbi13aWR0aDogMjI1cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIGgxIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDM4cHg7XG4gICAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gIH1cblxuICAvKiBUbyA1IFJlc291cmNlcyAqL1xuICAuYnVzdC1vdXQtcmVzb3VyY2VzIG9sLnRodW1icyB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDUwJTtcblxuICAgIGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDEzMHB4O1xuICAgICAgaGVpZ2h0OiAxNzBweDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgMTBweCAxNXB4IDEwcHg7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDE2NXB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcblxuICAgIC55ZWFyLWluLXJldmlldy1oZWFkZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIC5pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWluLXdpZHRoOiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmxpc3RzIHtcblxuICAgICAgb2wudGV4dCxcbiAgICAgIG9sLnRodW1icyB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIEFib3V0IFVzIC8gWWVhciBpbiBSZXZpZXcgLyBUaW1lbGluZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkueWVhci1pbi1yZXZpZXctMjAxOCxcbmJvZHkueWVhci1pbi1yZXZpZXctMjAxOSxcbmJvZHkueWVhci1pbi1yZXZpZXctMjAyMCB7XG5cbiAgLmVudHJ5LWNvbnRlbnQge1xuXG4gICAgLmJ1c3Qtb3V0LXRpbWVsaW5lIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNBQkMxREE7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuXG4gICAgICAuYnVzdC1vdXQtY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLmxlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzMCU7XG5cbiAgICBoMiB7XG4gICAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMzNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICB9XG5cbiAgLnJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDcwJTtcbiAgfVxuXG4gIC50aW1lbGluZS1jb250YWluZXIge1xuICAgIGhlaWdodDogNDUwcHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDAgNnB4IHJnYmEoMCwwLDAsMC4zKTtcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlZGY4O1xuICAgICAgb3V0bGluZTogMXB4IHNvbGlkICNlNGVkZjg7XG4gICAgfVxuXG4gICAgLml0ZW0ge1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgI3RpbWVsaW5lIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAuNXJlbTtcbiAgICAgICAgYm90dG9tOiAwcmVtO1xuICAgICAgICBsZWZ0OiA5MXB4O1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjYzhkMWQ4O1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG5cbiAgICAgIHNlY3Rpb24ueWVhciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBzZWN0aW9uIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDk1cHg7XG4gICAgICAgICAgICBtYXJnaW46IC0xLjM1cmVtIDAgMWVtO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGU6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2Q2Y2M0ZTtcbiAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAtbXMtYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgbGVmdDogODVweDtcbiAgICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgLy8gbWF4LXdpZHRoOiA0NzVweDtcbiAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTBweCkge1xuXG4gICAgLmxlZnQsXG4gICAgLnJpZ2h0IHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5sZWZ0IHtcblxuICAgICAgaDIge1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAudGltZWxpbmUtY29udGFpbmVyICN0aW1lbGluZSBzZWN0aW9uLnllYXIgc2VjdGlvbiB7XG5cbiAgICAgIHVsIHtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuYm9keS55ZWFyLWluLXJldmlldy0yMDE5LFxuYm9keS55ZWFyLWluLXJldmlldy0yMDIwIHtcblxuICAuZW50cnktY29udGVudCB7XG5cbiAgICAuYnVzdC1vdXQtdGltZWxpbmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAuYnVzdC1vdXQtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIC5yaWdodCB7XG4gICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzhkMWQ4O1xuICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgIH1cblxuICAgICAgaDIge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICBmb250LXNpemU6IDMzcHg7XG4gICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgICAgICBsaW5lLWhlaWdodDogNDFweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIH1cblxuICAgICAgLnRpbWVsaW5lLWNvbnRhaW5lciAjdGltZWxpbmUge1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNlY3Rpb24ueWVhciBzZWN0aW9uIHVsOmZpcnN0LW9mLXR5cGU6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkd2VzdGVkLW5hdnktYmx1ZTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5MHB4KSB7XG5cbiAgICAuZW50cnktY29udGVudCAuYnVzdC1vdXQtdGltZWxpbmUge1xuXG4gICAgICAubGVmdCxcbiAgICAgIC5yaWdodCB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBBYm91dCBVcyAvIFllYXIgaW4gUmV2aWV3IC8gU2xpZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS55ZWFyLWluLXJldmlldy0yMDE5LFxuYm9keS55ZWFyLWluLXJldmlldy0yMDIwIHtcblxuICAuYnVzdC1vdXQtc2xpZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWJjMWRhO1xuXG4gICAgLmJ4LXBhZ2VyLWl0ZW0ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzcHggIWltcG9ydGFudDtcblxuICAgICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQWJvdXQgVXMgLyBZZWFyIGluIFJldmlldyAvIE1vc3QgVmlld2VkIFZpZGVvc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkueWVhci1pbi1yZXZpZXctMjAyMCB7XG5cbiAgLmJ1c3Qtb3V0LXZpZGVvcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZjJmNztcblxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMzNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MXB4O1xuICAgIH1cblxuICAgIG9sIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiA0MHB4O1xuICAgICAgZ3JpZC1yb3ctZ2FwOiA0MHB4O1xuICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgXG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDsgIFxuICAgICAgICBcbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7ICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC50aHVtYiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7ICAgICAgICAgICAgXG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgfVxuICAgICAgXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA4MHB4KSB7XG4gICAgXG4gICAgICBvbCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIFxuICAgICAgICBsaSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAzMDBweDsgICAgICAgICAgXG4gICAgICAgIH1cbiAgICBcbiAgICAgIH1cbiAgICBcbiAgICB9XG4gICAgXG4gIH1cbiAgICBcbn0gICBcblxuXG4vKiBSZWNlbnQgTmV3cywgUmVsYXRlZCBSZXNvdXJjZXMgKFNoYXJlZClcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jcmVjZW50LW5ld3MsICNyZWxhdGVkLXJlc291cmNlcyB7XG5cbiAgYTpob3ZlciB7XG4gICAgb3BhY2l0eTogLjc1ICFpbXBvcnRhbnQ7XG4gIH1cblxuICB1bC5uZXdzbGlzdCBsaSB7XG5cbiAgICAuaW1nIHtcbiAgICAgIHdpZHRoOiAxNDBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5pbmZvIHtcbiAgICAgIHdpZHRoOiAzMDBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA0MHB4KSB7XG5cbiAgICB1bC5uZXdzbGlzdCwgdWwucmVzb3VyY2VfbGlzdCB7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzNmNjQ4ZjtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMCAxMnB4IDAgIWltcG9ydGFudDtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbWcsIC50aHVtYiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAudmlld19tb3JlX2J0biwgLm1vcmVfbGlua3Mge1xuICAgICAgbWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuLyogUmVsYXRlZCBSZXNvdXJjZXMgKGJhc2UgY2xhc3NlcywgdW5mb3J0dW5hdGVseSB0aGVyZSBhcmUgb3RoZXJzKSAqL1xuI3JlbGF0ZWQtcmVzb3VyY2VzIHtcblxuICBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgdWwge1xuXG4gICAgbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBoZWlnaHQ6IDQ4LjUlO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgIHBhZGRpbmc6IDI1cHggMCAwIDA7XG5cbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNDBweCkge1xuXG4gICAgdWwge1xuXG4gICAgICBsaSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAwIDE1cHggMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBBcmVhcyBvZiBXb3JrIC8gT3ZlcnZpZXdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnNpbmdsZS1hcmVhX29mX3dvcmsge1xuXG4gIC8qIEZlYXR1cmVkIEl0ZW0gKi9cbiAgI3Nwb3RsaWdodCB7XG5cbiAgICAuYngtd3JhcHBlciB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc3BvdGxpZ2h0X3NsaWRlcixcbiAgICAuc3BvdGxpZ2h0X3NpbmdsZSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAuc2xpZGUge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgIC5mZWF0dXJlZF9pbWcge1xuICAgICAgICAgIHdpZHRoOiAyMzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5mZWF0dXJlZF9jb250ZW50IHtcbiAgICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiA3MDBweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBwYWdpbmF0aW9uICovXG4gICAgLmJ4LWNvbnRyb2xzIHtcbiAgICAgIHotaW5kZXg6IDk5ODtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuXG4gICAgICAuc3BvdGxpZ2h0X3NsaWRlcixcbiAgICAgIC5zcG90bGlnaHRfc2luZ2xlIHtcblxuICAgICAgICAuc2xpZGUgLmZlYXR1cmVkX2NvbnRlbnQge1xuICAgICAgICAgIHdpZHRoOiA2MDBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk0MHB4KSB7XG5cbiAgICAgIC5zcG90bGlnaHRfc2xpZGVyLFxuICAgICAgLnNwb3RsaWdodF9zaW5nbGUge1xuXG4gICAgICAgIC5zbGlkZSB7XG5cbiAgICAgICAgICAuZmVhdHVyZWRfaW1nIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmZlYXR1cmVkX2NvbnRlbnQge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBSZWNlbnQgTmV3cyAmIFJlc2VhcmNoIEJsb2cgKi9cbiAgI2NvbnRlbnQgI3NpZGViYXJfcmVsYXRlZF9uZXdzIHtcblxuICAgIC53aWRnZXRfbmV3c19wb3N0IHtcbiAgICAgIG1hcmdpbjogMCAwIDI1cHggMCAhaW1wb3J0YW50O1xuXG4gICAgICAubmV3c190aHVtYiB7XG4gICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgICAgaGVpZ2h0OiAxNDBweDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDE0MHB4O1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBzcGFuLnZpZXdtb3JlIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIEFyZWFzIG9mIFdvcmsgLyBTZXJ2aWNlcyB0byBIZWxwIFlvdVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkucGFnZS10ZW1wbGF0ZS1hb3ctc2VydmljZXMtdG8taGVscC15b3UtcGFnZSAjY29udGVudCB7XG5cbiAgaDIge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgY29sb3I6ICM1MUFGNDY7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNBQkMxREE7XG4gICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgIHBhZGRpbmc6IDAgMCA2cHggMDtcbiAgfVxuXG4gIC5hb3ctc2VydmljZXMge1xuXG4gICAgLyogc2lkZWJhciAqL1xuICAgIC5hb3ctc2VydmljZXMtc2lkZWJhciB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAyMiU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICB9XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNBQkMxREEgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBzZXJ2aWNlIGxpc3QgKi9cbiAgICAuYW93LXNlcnZpY2VzLW1haW4ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDc1JTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5zZXJ2aWNlX2xpc3RfYm94IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMzVweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGgzLm5hbWUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDZweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgY29sb3I6ICM1NDZiODU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBwLnRhZ3Mge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBzcGFuLnRhZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDhweCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAycHggOHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogcGFnaW5hdGlvbiAqL1xuICAgICAgLnBhZ2luYXRpb24ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMzVweCAwIDEwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIG1hcmdpbjogMCA2cHg7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICAgICYucHJldiwgJi5uZXh0IHtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5wcmV2IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1hcnJvdy1sZWZ0LXB1cnBsZS5wbmcpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5uZXh0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1hcnJvdy1yaWdodC1wdXJwbGUucG5nKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIHNwYW4uY3VycmVudCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjRiMWE2O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZjJmNztcbiAgICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NTBweCkge1xuXG4gICAgLmFvdy1zZXJ2aWNlcyB7XG5cbiAgICAgIC5hb3ctc2VydmljZXMtc2lkZWJhcixcbiAgICAgIC5hb3ctc2VydmljZXMtbWFpbiB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLmFvdy1zZXJ2aWNlcy1tYWluIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBBcmVhcyBvZiBXb3JrIC8gRmVhdHVyZWQgSW5pdGlhdGl2ZSAvIFNoYXJlZCBFbGVtZW50c1xuICBDaGFydGVycyAmIENob2ljZVxuICBDT1ZJRC0xOSBSZXNvdXJjZXMgZm9yIEVkdWNhdG9yc1xuICBPbmxpbmUgUHJvZmVzc2lvbmFsIERldmVsb3BtZW50IChDT1ZJRCBTZXJ2aWNlcylcbiAgRm91ciBEb21haW5zIGZvciBSYXBpZCBTY2hvb2wgSW1wcm92ZW1lbnRcbiAgVHJhdW1hLUluZm9ybWVkIFByYWN0aWNlICYgUmVzaWxpZW5jeVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuY2hhcnRlcnMtY2hvaWNlLFxuYm9keS5jb3ZpZC0xOS1yZXNvdXJjZXMsXG5ib2R5LmNvdmlkLTE5LXNlcnZpY2VzLFxuYm9keS5mb3VyLWRvbWFpbnMsXG5ib2R5LnRyYXVtYSB7XG5cbiAgLyogUmVjZW50IFBvc3RzICovXG4gIHNlY3Rpb24ucmVjZW50LXBvc3RzIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogNDBweCAwO1xuXG4gICAgaDIge1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICB1bC5uZXdzbGlzdCB7XG4gICAgICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LDFmcik7XG4gICAgICBncmlkLWdhcDogMzBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgLmltZyB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIyMHB4O1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmluZm8ge1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogIzgxOUFCNiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuLmV4Y2VycHQsXG4gICAgICAgICAgICBzcGFuLmV4Y2VycHQgcCB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAudmlld19tb3JlX2J0biB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDQwcHggMCAwIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgZm9udC1zaXplOiAxMXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDFweCAxMnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTQwcHgpIHtcblxuICAgICAgdWwubmV3c2xpc3Qge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuXG4gICAgICAgICAgLmltZyBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyMzBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQXJlYXMgb2YgV29yayAvIEZlYXR1cmVkIEluaXRpYXRpdmUgLyBGb3VyIERvbWFpbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LmZvdXItZG9tYWlucyB7XG5cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gICNjb250ZW50IHtcblxuICAgIHAge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJiNvdmVydmlldyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8qIE92ZXJ2aWV3ICovXG4gICAgLm92ZXJ2aWV3LWNvbnRhaW5lciB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjRDNEQkU2O1xuICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgcGFkZGluZzogMTVweDtcblxuICAgICAgLmxvZ28ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHggMCAwO1xuXG4gICAgICAgIHAucXVvdGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMzBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiAxMTJweDtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDE4LTEyLTAzLWZvdXItZG9tYWlucy1xdW90ZS5zdmdcIikgY2VudGVyIGNlbnRlci9jb250YWluIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgbWFyZ2luOiA1cHggMjBweCAxMDBweCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgcC5zb3VyY2Uge1xuICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBjb2xvcjogIzhFOUZCNTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDAgMTUwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAucmVzb3VyY2VzIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogNTUlO1xuICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICNEM0RCRTY7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMjBweDtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgI0QzREJFNjtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDAgMCAwO1xuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcC5jb3ZlciB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMjBweCAwIDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEyMHB4XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubm9jb3ZlciB7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMTI1cHg7XG5cbiAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcblxuICAgICAgICAubG9nbyxcbiAgICAgICAgLnJlc291cmNlcyB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIHAucXVvdGUge1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXNvdXJjZXMge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgICAgICAgdWwge1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDE0MHB4O1xuXG4gICAgICAgICAgICAgICYubm9jb3ZlciB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU2MHB4KSB7XG5cbiAgICAgICAgLmxvZ28ge1xuXG4gICAgICAgICAgcC5xdW90ZSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcC5zb3VyY2Uge1xuICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBidXN0IG91dCBvdmVycmlkZXMgKi9cbiAgICAuYnVzdC1vdXQge1xuXG4gICAgICAmLnByb21vIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNGNjQ4RjtcblxuICAgICAgICAuYnVzdC1vdXQtY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgJi5zZXJ2aWNlcyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG5cbiAgICAgICAgLmJ1c3Qtb3V0LWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgICYuc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQUJDMURBO1xuXG4gICAgICAgIC5idXN0LW91dC1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAmLmVsIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG5cbiAgICAgICYuZmFtaWx5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0QzREJFNjtcblxuICAgICAgICAuYnVzdC1vdXQtY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIFByb21vICovXG4gICAgI3N1YnNjcmliZS1zb2NpYWwtYmFyIHtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2VzdGVkLW5hdnktYmx1ZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDEwNDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC5zdWJzY3JpYmUge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDY1JTtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCA4MHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNjVweDtcbiAgICAgICAgICBoZWlnaHQ6IDY1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24td3JpdGUucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgbWFyZ2luOiAxNnB4IDIwcHggMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMTZweCAwIDVweCAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICYuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMCAwIDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnNvY2lhbCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDIzJTtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzUyNzdBMjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDE2cHggMCA4cHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMCAzcHggMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDM3cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzdweDtcbiAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG5cbiAgICAgICAgICAgICAgJi50d2l0dGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtdHdpdHRlci0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYubGlua2VkaW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1saW5rZWRpbi0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1mYWNlYm9vay0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDQwcHgpIHtcblxuICAgICAgI3N1YnNjcmliZS1zb2NpYWwtYmFyIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLnN1YnNjcmliZSB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJi5zdWJzY3JpYmUge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuc29jaWFsIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMCAxNXB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIFNlcnZpY2VzICovXG4gICAgLnNlcnZpY2VzLWNvbnRhaW5lciB7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMTBweCAwO1xuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICYubGlzdDEge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiA1NSU7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgI0QzREJFNjtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5saXN0MiB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIHdpZHRoOiA0NSU7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjVweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcwMHB4KSB7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG5cbiAgICAgICAgICAmLmxpc3QxLFxuICAgICAgICAgICYubGlzdDIge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogU3BlY2lhbCBFZCAqL1xuICAgIC5zZS1jb250YWluZXIge1xuXG4gICAgICAubGVmdCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNzclO1xuICAgICAgICBoZWlnaHQ6IDYwMHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMjVweCAwIDA7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW46IDMwcHggMjVweCAyNXB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBociB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogIzNGNTQ2MDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICYuaW50cm8ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI5cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuYnV0dG9uIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiA4cHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICBtYXJnaW46IDIwcHggMCAyMHB4IDIwcHg7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjM0Y1NDYwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4IDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5yaWdodCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDIzJTtcbiAgICAgICAgaGVpZ2h0OiA2MDBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E1YmNkNTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAyNXB4O1xuXG4gICAgICAgIHAge1xuXG4gICAgICAgICAgJi5zdWJzY3JpYmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOC0xMi0wMy1mb3VyLWRvbWFpbnMtc3Vic2NyaWJlLnBuZ1wiKSBuby1yZXBlYXQgdG9wIGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogODBweCAwIDAgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDExNXB4IDAgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuYnV0dG9uIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICB1bC5zb2NpYWwge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDQwcHggYXV0bztcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDM3cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzdweDtcblxuICAgICAgICAgICAgICAmLnR3aXR0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC10d2l0dGVyLTM3eDM3LnN2Z1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJi5saW5rZWRpbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLWxpbmtlZGluLTM3eDM3LnN2Z1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJi5mYWNlYm9vayB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLWZhY2Vib29rLTM3eDM3LnN2Z1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyMHB4KSB7XG5cbiAgICAgICAgLmxlZnQsXG4gICAgICAgIC5yaWdodCB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgcC5zdWJzY3JpYmUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzc1cHgpIHtcblxuICAgICAgICAubGVmdCxcbiAgICAgICAgLnJpZ2h0IHtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGhyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICYubGlzdDEge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmxpc3QzIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIEVuZ2xpc2ggTGVhcm5lcnMgKi9cbiAgICAuZWwtY29udGFpbmVyIHtcblxuICAgICAgaW1nIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDMwcHg7XG4gICAgICB9XG5cbiAgICAgIGhyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjQjVDMUNDO1xuICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgIH1cblxuICAgICAgaDIge1xuICAgICAgICBtYXJnaW46IDIwcHggMCAycHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogIzgxOUFCNjtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICBwIHtcblxuICAgICAgICAmLmludHJvIHtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI5cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIHVsIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHggMjBweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgY29sb3I6ICM1NDZCODU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTVweCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmxpc3QxIHtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgcC5idXR0b24ge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogOHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgI3N1YnNjcmliZS1zb2NpYWwtYmFyIHtcbiAgICAgICAgd2lkdGg6IDgwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuc3Vic2NyaWJlIHtcbiAgICAgICAgICB3aWR0aDogNTAwcHg7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogNzRweDtcbiAgICAgICAgICAgIGhlaWdodDogNzVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDE4LTEyLTAzLWZvdXItZG9tYWlucy1zdWJzY3JpYmUyLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDIwcHggMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBjb2xvcjogIzgxOUFCNjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMCAwO1xuXG4gICAgICAgICAgICAmLnN1YnNjcmliZSB7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAwIDk1cHg7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNBQkMxREEgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNEM0RCRTYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5zb2NpYWwge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAxNzVweDtcbiAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgI0QzREJFNjtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDQwcHggMCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICYudHdpdHRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLXR3aXR0ZXItMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmxpbmtlZGluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtbGlua2VkaW4tMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmZhY2Vib29rIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtZmFjZWJvb2stMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA1MHB4KSB7XG5cbiAgICAgICAgI3N1YnNjcmliZS1zb2NpYWwtYmFyIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAgICAgICAuc3Vic2NyaWJlLFxuICAgICAgICAgIC5zb2NpYWwge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmLnN1YnNjcmliZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NzVweCkge1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDIwcHg7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICYubGlzdDEge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmxpc3QzIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogRmFtaWx5ICovXG4gICAgLmZhbWlseS1jb250YWluZXIge1xuXG4gICAgICAubGVmdCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNzclO1xuICAgICAgICBoZWlnaHQ6IDY3MHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMjVweCAwIDA7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW46IDMwcHggMjVweCAyNXB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgbWFyZ2luOiA0MHB4IDAgMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICM4MTlBQjY7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcblxuICAgICAgICAgICYuaW50cm8ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI5cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuYnV0dG9uIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiA4cHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBociB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjOEU5RkI1O1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMjBweCAyMHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBjb2xvcjogIzU0NkI4NTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5saXN0MSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAucmlnaHQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiAyMyU7XG4gICAgICAgIGhlaWdodDogNjcwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjOWQyZGU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMjVweDtcblxuICAgICAgICBwIHtcblxuICAgICAgICAgICYuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzLzIwMTgtMTItMDMtZm91ci1kb21haW5zLXN1YnNjcmliZS5wbmdcIikgbm8tcmVwZWF0IHRvcCBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDgwcHggMCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMTVweCAwIDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmJ1dHRvbiB7XG4gICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgdWwuc29jaWFsIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiA0MHB4IGF1dG87XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiAzN3B4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDM3cHg7XG5cbiAgICAgICAgICAgICAgJi50d2l0dGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtdHdpdHRlci0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYubGlua2VkaW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1saW5rZWRpbi0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1mYWNlYm9vay0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjBweCkge1xuXG4gICAgICAgIC5sZWZ0LFxuICAgICAgICAucmlnaHQge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIHAuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc3NXB4KSB7XG5cbiAgICAgICAgLmxlZnQsXG4gICAgICAgIC5yaWdodCB7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBociB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwIDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAmLmxpc3QxIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5saXN0MyB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQXJlYXMgb2YgV29yayAvIEZlYXR1cmVkIEluaXRpYXRpdmVzIC8gQ2hhcnRlcnMgJiBDaG9pY2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LmNoYXJ0ZXJzLWNob2ljZSB7XG5cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gICNjb250ZW50IHtcblxuICAgIHAge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8qIE92ZXJ2aWV3ICovXG4gICAgLm92ZXJ2aWV3IHtcbiAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgcCwgbGkge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOXB4O1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMjVweCAwIDUwcHggNjBweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5ncm91cCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgZ3JpZC1nYXA6IDIwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgXG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRDNEQkU2O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBociB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRDNEQkU2O1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBtYXJnaW46IDUwcHggMCA0MHB4IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmLmNsaXBib2FyZCB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgM2ZyO1xuICAgICAgICAgIFxuICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgfVxuICBcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgICAgJi5uY3NyYyB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgICAgZ3JpZC1nYXA6IDA7XG4gICAgICAgICAgXG4gICAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIH1cbiAgXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICM2RUE5RUQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbS1icmVhaykge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyAgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBOZXdzICYgRXZlbnRzICovXG4gICAgLmJ1c3Qtb3V0LW5ld3MtZXZlbnRzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gICAgICBcbiAgICAgIHNlY3Rpb24ucmVjZW50LXBvc3RzIHtcbiAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgfVxuICAgICAgXG4gICAgfVxuXG4gICAgLyogU3VwcG9ydGluZyBSZXNvdXJjZXMgKi9cbiAgICAuYnVzdC1vdXQtcmVzb3VyY2VzIC5idXN0LW91dC1jb250ZW50IHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgcGFkZGluZy10b3A6IDE1cHggIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIH1cblxuICAgICAgLnJlc291cmNlLWxpc3QsIC5tb3JlX2xpbmtzX2xpc3Qge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgICBncmlkLWdhcDogMjBweDtcbiAgICAgICAgZ3JpZC1yb3ctZ2FwOiA0MHB4O1xuICAgICAgICBtYXJnaW46IDQwcHggMCAzMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIFxuICAgICAgICBsaSB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgIFxuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgICAgICBncmlkLWdhcDogMjBweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAxO1xuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gNDtcbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5tb3JlX2xpbmtzX2xpc3QuaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTQwcHgpIHtcbiAgICAgICAgXG4gICAgICAgIC5yZXNvdXJjZS1saXN0LCAubW9yZV9saW5rc19saXN0IHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgICBcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg2LCAxZnIpO1xuICAgICAgICAgIFxuICAgICAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyA3O1xuICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogUHJvbW8gKi9cbiAgICAuYnVzdC1vdXQtcHJvbW8ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0FCQzFEQTtcblxuICAgICAgLmJ1c3Qtb3V0LWNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuICAgICNzdWJzY3JpYmUtc29jaWFsLWJhciB7XG4gICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogMTA0MHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLnN1YnNjcmliZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNjUlO1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBtYXJnaW46IDAgMCAwIDMwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiA3NHB4O1xuICAgICAgICAgIGhlaWdodDogNzRweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS0wMS0xMS1jaGFydGVycy1zdWJzY3JpYmUucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgbWFyZ2luOiAxNnB4IDIwcHggMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMTZweCAwIDVweCAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICYuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMCAwIDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnNvY2lhbCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JiY2RlMTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDE2cHggMCAxMnB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDAgM3B4IDAgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuXG4gICAgICAgICAgICAgICYudHdpdHRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLXR3aXR0ZXItMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmxpbmtlZGluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtbGlua2VkaW4tMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmZhY2Vib29rIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtZmFjZWJvb2stMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA0MHB4KSB7XG5cbiAgICAgICNzdWJzY3JpYmUtc29jaWFsLWJhciB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5zdWJzY3JpYmUge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICYuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbCB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIG1hcmdpbjogMzBweCAwIDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaDIge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMTVweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBTZXJ2aWNlcyAqL1xuICAgIC5idXN0LW91dC1zZXJ2aWNlcyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5O1xuXG4gICAgICAuYnVzdC1vdXQtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBwLmludHJvIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjlweDtcbiAgICAgIH1cblxuICAgICAgLmNvbHVtbnMge1xuICAgICAgICBjb2x1bW5zOiAyO1xuICAgICAgICBtYXJnaW46IDMwcHggMCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIHAuYnRuLXdyYXAge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuXG4gICAgICBhLmJ0biB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHggIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDhweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbS1icmVhaykge1xuICAgICAgICBcbiAgICAgICAgLmNvbHVtbnMge1xuICAgICAgICAgIGNvbHVtbnM6IDE7XG4gICAgICAgIH1cbiAgICAgIFxuICAgICAgfVxuXG4gICAgICAuZ3JvdXAge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDJmciAxZnI7XG4gICAgICAgIGdyaWQtY29sdW1uLWdhcDogNDBweDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7XG4gICAgICAgIG1hcmdpbjogNDBweCAwIDAgMDtcbiAgICAgICAgcGFkZGluZzogNDBweCAwIDAgMDtcbiAgICAgICAgXG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBcbiAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gIFxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICBtYXJnaW46IDE1cHggMCAxNXB4IDQwcHg7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgN3B4IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDsgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgcGFkZGluZzogMjBweDsgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMjBweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtLWJyZWFrKSB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgICAgXG4gICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIEV4cGVydGlzZSAqL1xuICAgIC5idXN0LW91dC1leHBlcnRpc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0FCQzFEQTtcblxuICAgICAgLmJ1c3Qtb3V0LWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTVweCAhaW1wb3J0YW50O1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5leHBlcnRpc2UtY29udGFpbmVyIHtcblxuICAgICAgLnN1YnNjcmliZSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzRkM2U1O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNjVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IC00MHB4IDAgMCA0MHB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICB3aWR0aDogNjZweDtcbiAgICAgICAgICBoZWlnaHQ6IDY2cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzLzIwMTktMDEtMTEtY2hhcnRlcnMtc3Vic2NyaWJlLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNjZweCA2NnB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICM4MTlBQjY7XG4gICAgICAgICAgbWFyZ2luOiA1cHggMCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuXG4gICAgICAgICAgYS5idG4ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDhweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogNHB4IDhweCA0cHggOHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMCAzcHggMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG5cbiAgICAgICAgICAgICAgJi50d2l0dGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtdHdpdHRlci0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHggMzBweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYubGlua2VkaW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1saW5rZWRpbi0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHggMzBweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1mYWNlYm9vay0zN3gzNy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHggMzBweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGgyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgOHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIHAuaW50cm8ge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICBociB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgICB9XG5cbiAgICAgIHAuY2xlYXJmaXgge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDMwcHggMCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEuYnRuIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogOHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIHAubGlua3Mge1xuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIOKAoiBcIjtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgfVxuICBcbiAgICAgIH1cblxuICAgIH1cblxuICAgIHVsLnRlYW0tc2xpZGVyIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDMwcHggMCAzMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwIDU1cHg7XG5cbiAgICAgIC5zbGljay10cmFjayB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG5cbiAgICAgIC5zbGlkZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMCAxNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbjogMTVweCAwIDEwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJpbyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEuYnRuIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHggIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuc2xpY2stcHJldixcbiAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgd2lkdGg6IDM4cHg7XG4gICAgICAgIGhlaWdodDogODFweDtcbiAgICAgICAgdG9wOiA0NSU7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgICAgIGhlaWdodDogODFweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDM4cHggODFweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgbGVmdDogMDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzLzIwMTktMDMtdHJhdW1hLXRlYW0tYXJyb3ctbGVmdC5zdmdcIik7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS0wMy10cmF1bWEtdGVhbS1hcnJvdy1yaWdodC5zdmdcIik7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcblxuICAgICAgLmV4cGVydGlzZS1jb250YWluZXIge1xuXG4gICAgICAgIC5zdWJzY3JpYmUge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQXJlYXMgb2YgV29yayAvIEZlYXR1cmVkIEluaXRpYXRpdmVzIC8gVHJhdW1hLWluZm9ybWVkIFByYWN0aWNlICYgUmVzaWxpZW5jZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkudHJhdW1hIHtcblxuICAjbWFpbl9jb250ZW50X3dyYXAge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbiAgI2NvbnRlbnQge1xuXG4gICAgcCB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIGEuYnRuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogOHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8qIE92ZXJ2aWV3ICovXG4gICAgLm92ZXJ2aWV3IHtcbiAgICAgIG1hcmdpbjogMCAwIDUwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMTVweCAwO1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIG1hcmdpbjogNDBweCAwIDE1cHggMDtcbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICBtYXJnaW46IDIwcHggMCAwIDMwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnByb21vIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogMzI1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzZFQTlFRDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMzVweCA1MHB4O1xuICAgICAgICBwYWRkaW5nOiAzMHB4O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICBcbiAgICAgICAgICAmLnF1b3RlLXNvdXJjZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBzcGFuLmljb24ge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogODNweDtcbiAgICAgICAgICAgIGhlaWdodDogNThweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy8yMDIxLTAyLXRyYXVtYS1xdW90ZS5zdmdcIikgbm8tcmVwZWF0IDAgMDsgICAgICAgICAgICBcbiAgICAgICAgICAgIG1hcmdpbjogLTVweCAxMHB4IDAgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuICBcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgICBcbiAgICAgICAgLnByb21vIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICAgIH1cbiAgICAgIFxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogR3VpZGluZyBQcmluY2lwbGVzICovXG4gICAgLmJ1c3Qtb3V0LWd1aWRpbmcge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjJGNztcblxuICAgICAgaDIge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbjogMCAtMTBweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgZmxleDogMSAxIDA7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNFM0VDRjk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIENvbmRlbnNlZFwiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgY29sb3I6ICM2RUE5RUQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNFRUYyRjc7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMTJweCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjOEU5RkI1O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDAgLTNweDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbjogM3B4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIFNlcnZpY2VzICovXG4gICAgLmJ1c3Qtb3V0LXNlcnZpY2VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIH1cblxuICAgICAgaHIge1xuICAgICAgICBib3JkZXItdG9wOiA0cHggc29saWQgI2ZmZjtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgICB9XG5cbiAgICAgIC5mbGV4IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luOiAwIC0yMHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICBmbGV4OiAxIDEgNTAlO1xuICAgICAgICAgIG1hcmdpbjogMjBweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiA2NSU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDM1JTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIHVsLmZvY3VzIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZmxleDogMSAxIDI1JTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgNzUlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIHAuY29udGFjdCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAuZmVhdHVyZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjlweDtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDAgMzBweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcblxuICAgICAgICAuZmxleCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG5cbiAgICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuZmVhdHVyZWQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NTBweCkge1xuXG4gICAgICAgIHVsLmZvY3VzIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIFJlc291cmNlcyAqL1xuICAgIC5idXN0LW91dC1yZXNvdXJjZXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcblxuICAgICAgaDIge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgfVxuXG4gICAgICAuZmxleCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbjogMCAtMTBweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgZmxleDogMSAxIDMzLjMlO1xuICAgICAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBjb2xvcjogIzNGNTQ2MDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogM3B4IDEwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQUJDMURBO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAxMHB4IDA7XG5cbiAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAudmlkZW8ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLmNvdmVyIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMjBweCAxMHB4IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICB1bCArIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuXG4gICAgICAgIC5mbGV4IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDIwcHggMDtcblxuICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBJbXBhY3QgKi9cbiAgICAuYnVzdC1vdXQtaW1wYWN0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4RTlGQjU7XG5cbiAgICAgIC5idXN0LW91dC1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMjBweCAwIDIwcHggMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBoMiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA2MHB4O1xuICAgICAgICBsZWZ0OiA3MHB4O1xuICAgICAgICBvcGFjaXR5OiAuMztcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcCAwO1xuICAgICAgICBmb250LXNpemU6IDEwNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTA1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW46IDMzMHB4IDAgMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAuZmxleCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAxMDBweDtcblxuICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG5cbiAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7IGZsZXg6IDEgMSAxMDAlOyB9XG4gICAgICAgICAgJjpudGgtY2hpbGQoMikgeyBmbGV4OiAxIDEgMzUlOyAgfVxuICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHsgZmxleDogMSAxIDY1JTsgIH1cblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwLnF1b3RlIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS0wMy10cmF1bWEtaW1wYWN0LXF1b3RlLnN2Z1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHAucXVvdGUtc291cmNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgcC5xdW90ZSB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggMCAwIDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAucXVvdGUtcGljIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwLnF1b3RlLXNvdXJjZSB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAgICAgcC5xdW90ZSB7XG4gICAgICAgICAgICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMjBweCAwO1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggMCAyMHB4IDVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcC5xdW90ZS1waWMge1xuICAgICAgICAgICAgICBmbGV4OiAxIDEgNDAlO1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAucXVvdGUtc291cmNlIHtcbiAgICAgICAgICAgICAgZmxleDogMSAxIDYwJTtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMCAwIDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA3NXB4O1xuXG4gICAgICAgICAgICBwLnF1b3RlIHtcbiAgICAgICAgICAgICAgZmxleDogMSAxIDEwMCU7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTRweCAwIDIwcHggMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcC5xdW90ZS1waWMge1xuICAgICAgICAgICAgICBmbGV4OiAxIDEgNDAlO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwLnF1b3RlLXNvdXJjZSB7XG4gICAgICAgICAgICAgIGZsZXg6IDEgMSA2MCU7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMCAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLyogdGVtcCBhZGp1c3RtZW50IGR1ZSB0byBubyBwaG90b3MgKi9cbiAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgcC5xdW90ZS1zb3VyY2Uge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgcC5xdW90ZSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwLnF1b3RlLXNvdXJjZSB7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG4gICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIHAucXVvdGUge1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcC5xdW90ZS1zb3VyY2Uge1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTEyMHB4KSB7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIHRvcDogLTIwcHg7XG4gICAgICAgICAgZm9udC1zaXplOiA4MHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAtby10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZsZXgge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgLml0ZW0sXG4gICAgICAgICAgLml0ZW06bnRoLWNoaWxkKDEpLFxuICAgICAgICAgIC5pdGVtOm50aC1jaGlsZCgyKSxcbiAgICAgICAgICAuaXRlbTpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgcC5xdW90ZSxcbiAgICAgICAgICAgIHAucXVvdGUtcGljLFxuICAgICAgICAgICAgcC5xdW90ZS1zb3VyY2Uge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcC5xdW90ZSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwLnF1b3RlLXBpYyB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIFRlYW0gKi9cbiAgICAuYnVzdC1vdXQtdGVhbSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQUJDMURBO1xuXG4gICAgICAuYnVzdC1vdXQtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMCA0MHB4IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgaDIge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIH1cblxuICAgICAgLmZsZXgge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW46IDAgLTIwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgIGZsZXg6IDEgMSA1MCU7XG4gICAgICAgICAgbWFyZ2luOiAwIDIwcHg7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgZmxleC1iYXNpczogNzAlO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAzMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcC5zdWJzY3JpYmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICNEM0RCRTY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS0wMS0xMS1jaGFydGVycy1zdWJzY3JpYmUucG5nXCIpIG5vLXJlcGVhdCAxMHB4IHRvcDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDk1cHg7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICBwLnN1YnNjcmliZSB7XG4gICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgI0QzREJFNjtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBociB7XG4gICAgICAgIG9wYWNpdHk6IC4zO1xuICAgICAgICBib3JkZXItdG9wOiA0cHggc29saWQgI0UzRUNGOTtcbiAgICAgICAgbWFyZ2luOiA0MHB4IDA7XG4gICAgICB9XG5cbiAgICAgIHVsLnRlYW0tc2xpZGVyIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDU1cHg7XG5cbiAgICAgICAgLnNsaWNrLXRyYWNrIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWRlIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDAgMTVweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMTVweCAwIDEwcHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmJpbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGEuYnRuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLXByZXYsXG4gICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgICBoZWlnaHQ6IDgxcHg7XG4gICAgICAgICAgdG9wOiA0NSU7XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgd2lkdGg6IDM4cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDgxcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDM4cHggODFweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzLzIwMTktMDMtdHJhdW1hLXRlYW0tYXJyb3ctbGVmdC5zdmdcIik7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgICAgcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS0wMy10cmF1bWEtdGVhbS1hcnJvdy1yaWdodC5zdmdcIik7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogUHJvbW8gKi9cbiAgICAuYnVzdC1vdXQtcHJvbW8ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0FCQzFEQTtcblxuICAgICAgLmJ1c3Qtb3V0LWNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuICAgICNzdWJzY3JpYmUtc29jaWFsLWJhciB7XG4gICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogMTA0MHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLnN1YnNjcmliZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNjMlO1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBtYXJnaW46IDAgMCAwIDMwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiA3NHB4O1xuICAgICAgICAgIGhlaWdodDogNzRweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS0wMS0xMS1jaGFydGVycy1zdWJzY3JpYmUucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgbWFyZ2luOiAxNnB4IDIwcHggMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDE2cHggMCA1cHggMDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICB3aWR0aDogNjAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAmLnN1YnNjcmliZSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDEwcHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuc29jaWFsIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmJjZGUxO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDE2cHggMCAxMnB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDAgM3B4IDAgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuXG4gICAgICAgICAgICAgICYudHdpdHRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLXR3aXR0ZXItMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmxpbmtlZGluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtbGlua2VkaW4tMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmZhY2Vib29rIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtZmFjZWJvb2stMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA0MHB4KSB7XG5cbiAgICAgICNzdWJzY3JpYmUtc29jaWFsLWJhciB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5zdWJzY3JpYmUge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICYuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbCB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIG1hcmdpbjogMzBweCAwIDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaDIge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMTVweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQXJlYXMgb2YgV29yayAvIEZlYXR1cmVkIEluaXRpYXRpdmVzIC8gQ09WSUQtMTkgUmVzb3VyY2VzIGFuZCBTZXJ2aWNlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuY292aWQtMTktcmVzb3VyY2VzLFxuYm9keS5jb3ZpZC0xOS1zZXJ2aWNlcyB7XG5cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gICNjb250ZW50IHtcblxuICAgIGgxIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDQycHg7XG4gICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgIG1hcmdpbjogMzBweCAwIDIwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzN3B4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLyogT3ZlcnZpZXcgKi9cbiAgICBzZWN0aW9uLm92ZXJ2aWV3IHtcblxuICAgICAgLmdyb3VwIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAvKiB0ZXh0ICovXG4gICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgZmxleDogMSAxIDcwJTtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLyogQ0VPICovXG4gICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgZmxleDogMSAxIDMwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHggNXB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjlweDtcbiAgICAgICAgICAgICAgY29sb3I6ICM2RUE5RUQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMzBweCAwIDI1cHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTQwcHgpIHtcblxuICAgICAgICAuZ3JvdXAge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgLml0ZW0ge1xuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG5cbiAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcblxuICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU1MHB4KSB7XG5cbiAgICAgICAgLmdyb3VwIHtcblxuICAgICAgICAgIC5pdGVtOm50aC1jaGlsZCgyKSB7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIFRvcGljIExpc3QgKi9cbiAgICBzZWN0aW9uLnRvcGljIHtcbiAgICAgIG1hcmdpbjogMzBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgdWwge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgICBncmlkLWdhcDogMjBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1QTc5OUM7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTQwcHgpIHtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTUwcHgpIHtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogU2xpZGVyICovXG4gICAgc2VjdGlvbi5zbGlkZXIge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgI0FCQzFEQTtcbiAgICAgIGJvcmRlci10b3A6IDIwcHggc29saWQgI0FCQzFEQTtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDEycHg7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTJweDtcbiAgICAgIG1hcmdpbjogNTBweCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA1MHB4IDIwcHggIWltcG9ydGFudDtcblxuICAgICAgdWwuY292aWQtc2xpZGVyIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDU1cHg7XG5cbiAgICAgICAgLyogaGlkZSBhcnJvd3MgKi9cbiAgICAgICAgLnNsaWNrLXByZXYsXG4gICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAvKiBwYWdpbmF0aW9uICovXG4gICAgICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIG1hcmdpbjogMjBweCAwIDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDdweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjMTY2OUM5O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2xpY2stYWN0aXZlIGJ1dHRvbjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE2NjlDOTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWRlIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDAgMTVweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC50aHVtYm5haWwge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMzUlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAyNXB4IDAgMDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYmJjZWVhO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogNjUlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTNweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDdweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTc1cHgpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG5cbiAgICAgICAgICAuc2xpZGUge1xuXG4gICAgICAgICAgICAudGh1bWJuYWlsLFxuICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRodW1ibmFpbCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBidXN0IG91dCAqL1xuICAgIC5idXN0LW91dC10b3BpYyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAuYnVzdC1vdXQtdG9waWMuc2hhZGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcblxuICAgICAgLml0ZW0sIC5tZXRhIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XG5cbiAgICAgICAgLmJ1c3Qtb3V0LWNvbnRlbnQge1xuICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogcHJvbW8gKi9cbiAgICAuYnVzdC1vdXQtY29ubmVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM0Y2NDhGO1xuXG4gICAgICAuY29ubmVjdC1jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDY1MHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLmljb24ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDk0cHg7XG4gICAgICAgIGhlaWdodDogOTRweDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLXdyaXRlLWZpbGxlZC5wbmcpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgIG1hcmdpbjogMCAzMHB4IDAgMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgbWFyZ2luOiAwIDAgNHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwIDAgMDtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIGEuYnRuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5zb2NpYWwge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAxODVweDtcblxuICAgICAgICBwLmJ0bi1jb250YWluZXIge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDE3NXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBhLmJ0biB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzczYTZkOSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDAgOHB4IDAgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDM3cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzdweDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICYudHdpdHRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLXR3aXR0ZXItMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmxpbmtlZGluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtbGlua2VkaW4tMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmZhY2Vib29rIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtZmFjZWJvb2stMzd4Mzcuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbCB7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIHAuYnRuLWNvbnRhaW5lcixcbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogVG9waWMgKi9cbiAgICAuYnVzdC1vdXQtdG9waWMsXG4gICAgLmJ1c3Qtb3V0LXNlcnZpY2VzIHtcblxuICAgICAgLmJ1c3Qtb3V0LWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLmdyb3VwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjRTNFQ0Y5O1xuICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDtcblxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXg6IDEgMSA4MCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHggMCAwO1xuXG4gICAgICAgICAgICAudGh1bWJuYWlsLFxuICAgICAgICAgICAgLnRodW1ibmFpbC13aWRlIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNDBweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYmJjZWVhO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDE1cHggMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRodW1ibmFpbC13aWRlIHtcblxuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMTJweCAwIDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAyMHB4O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCA2cHggMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5tZXRhIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSAyMCU7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICNmZmY7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xuXG4gICAgICAgICAgICBhLmJ0biB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDhweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAycHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgJi5idG4tY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIHNob3cgaGlkZSAqL1xuICAgICAgICAubW9yZV9saW5rcyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTIycHggIWltcG9ydGFudDsgLyogdG8gY292ZXIgdGhlIGxpbmUgYWJvdmUgaXQgKi9cbiAgICAgICAgfVxuICAgICAgXG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk0MHB4KSB7XG5cbiAgICAgICAgLmdyb3VwIHtcblxuICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tZXRhIHtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgYS5idG4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBDT1ZJRC0xOSBTZXJ2aWNlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuY292aWQtMTktc2VydmljZXMgI2NvbnRlbnQge1xuXG4gIGgxIHtcbiAgICBtYXgtd2lkdGg6IDc1MHB4O1xuICB9XG5cbiAgcC5idG4tY29udGFpbmVyIHtcbiAgICAvLyB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIGEuYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IC43NTtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIE92ZXJ2aWV3ICovXG4gIHNlY3Rpb24ub3ZlcnZpZXcge1xuXG4gICAgLmdyb3VwIHtcblxuICAgICAgLml0ZW0ge1xuXG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHtcblxuICAgICAgICAgIHAuYnRuLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuXG4gICAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzLzIwMjAtMDQtY292aWQxOS1yZXNvdXJjZXMuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAyMHB4IDkwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcC5idG4tY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIHNsaWRlciAqL1xuICBzZWN0aW9uLnNsaWRlciB1bC5jb3ZpZC1zbGlkZXIgLnNsaWRlIC5jb250ZW50IHAuYnRuLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8qIHNlcnZpY2VzICovXG4gIC5idXN0LW91dC1zZXJ2aWNlcyB7XG5cbiAgICBoMiB7XG4gICAgICBtYXJnaW46IDI1cHggMDtcbiAgICB9XG5cbiAgICAuZ3JvdXAge1xuXG4gICAgICAuaXRlbSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcblxuICAgICAgICAuY29udGVudCB7XG5cbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA1cHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgY29sb3I6ICM2RUE5RUQ7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxNHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5oYXMtcHJvbW8ge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICAvKiBwcm9tbyAqL1xuICAgICAgICAmLnByb21vIHtcbiAgICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAjZmZmO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMzVweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAucHJvbW8taGVhZGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICAgICAgZmxleDogMSAxIDIwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNjVweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICBjbGlwLXBhdGg6IGNpcmNsZSg4MHB4IGF0IGNlbnRlcik7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnByb21vLWNvbnRlbnQge1xuICAgICAgICAgICAgZmxleDogMSAxIDgwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAuYnRuLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwIDAgMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBXZXN0RWQgRXhwZXJ0cyAoU2hhcmVkKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiN3ZXN0ZWQtZXhwZXJ0cyB7XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogNDBweCAyMHB4IDQwcHggMjBweDtcbiAgfVxuXG4gIC5leHBlcnRzLWludHJvIHtcblxuICAgIGgzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuXG4gIH1cblxuICAuZXhwZXJ0LXBob3RvIHtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICB9XG5cbiAgLnNsaWRlIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmV4cGVydC1jb250ZW50IHtcbiAgICB3aWR0aDogODMlO1xuXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogIzU0NkI4NTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwIDAgMTJweCAwXG4gICAgfVxuXG4gIH1cblxuICAvKiBwYWdpbmF0aW9uICovXG4gIC5ieC1jb250cm9scyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiA1NzBweDtcblxuICAgIC5ieC1wYWdlciB7XG4gICAgICBtYXJnaW46IDEwcHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5leHBlcnQtcGhvdG8sIC5leHBlcnQtY29udGVudCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgIC5leHBlcnQtcGhvdG8ge1xuICAgICAgbWF4LXdpZHRoOiAxMDBweDtcbiAgICB9XG5cbiAgICAuZXhwZXJ0cy1pbnRybyBwIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogUmVzZWFyY2ggJiBFdmFsdWF0aW9uIC8gV2hhdCBXZSBEb1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkucmVzZWFyY2gtZXZhbHVhdGlvbi5wYWdlLXJlc2VhcmNoLWV2YWx1YXRpb24ge1xuXG4gIGgyIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLyogYmlnIG9sZSBjaGFydCAqL1xuICAuY2hhcnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogOTk3cHg7XG4gICAgaGVpZ2h0OiAxMDg4cHg7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9yJmUtd2hhdHdlZG8tY2hhcnQucG5nKSBuby1yZXBlYXQgMCAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLmJveDEsXG4gICAgLmJveDIsXG4gICAgLmJveDMsXG4gICAgLmJveDQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDM1MHB4O1xuXG4gICAgICBwLCBsaSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogIzU0NmI4NTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9yJmUtYnVsbGV0LnBuZ1wiKSBuby1yZXBlYXQgMCAycHg7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMThweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBhLmJ0biB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDEycHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogNnB4IDE2cHggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5ib3gxIHtcbiAgICAgIHRvcDogMTkwcHg7XG4gICAgICBsZWZ0OiA0OHB4O1xuICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICB9XG5cbiAgICAuYm94MiB7XG4gICAgICB0b3A6IDU4MHB4O1xuICAgICAgbGVmdDogNDhweDtcbiAgICAgIGhlaWdodDogMzc1cHg7XG4gICAgfVxuXG4gICAgLmJveDMge1xuICAgICAgdG9wOiAxODVweDtcbiAgICAgIGxlZnQ6IDU5NXB4O1xuICAgICAgaGVpZ2h0OiAzMzVweDtcbiAgICB9XG5cbiAgICAuYm94NCB7XG4gICAgICB0b3A6IDYxNXB4O1xuICAgICAgbGVmdDogNTk1cHg7XG4gICAgICBoZWlnaHQ6IDIyNXB4O1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA0MHB4KSB7XG5cbiAgICAvKiBmaXJzdCByZXNldCBhbGwgdGhhdCBzdHlsaXphdGlvbiAqL1xuICAgIC5jaGFydCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICAgIC5zci1vbmx5IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgfVxuXG4gICAgICAuYm94MSxcbiAgICAgIC5ib3gyLFxuICAgICAgLmJveDMsXG4gICAgICAuYm94NCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuXG4gICAgICAvKiBuZXh0IHJlc2V0IHRvIGRlZmF1bHRzICovXG4gICAgICBoMyB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjNTQ2Yjg1ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHggMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGg0IHtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzU0NmI4NSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBwLCBsaSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjNTQ2Yjg1ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHggMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3ImZS1idWxsZXQucG5nXCIpIG5vLXJlcGVhdCAwIDRweDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxOHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc2VhcmNoICYgRXZhbHVhdGlvbiAvIFdoYXQgV2UgRG8gU3VicGFnZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcmVzZWFyY2gtZXZhbHVhdGlvbiB7XG5cbiAgI21haW5fY29udGVudF93cmFwICNjb250ZW50IHAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgI2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjcwcHg7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICBwLmludHJvIHtcbiAgICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItcHJpbWFyeTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMThweCAwO1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnk7XG4gICAgICAgIG1hcmdpbjogMjVweCAwIDMwcHggMDtcbiAgICAgICAgcGFkZGluZzogMjVweCAwIDAgMDtcbiAgICAgIH1cblxuICAgICAgLyogdHdvIGNvbCBwb3J0aW9uIGF0IGJvdHRvbSAqL1xuICAgICAgLnR3by1jb2wge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwMHB4O1xuXG4gICAgICAgIGg0IHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCAtMjAwcHg7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBpbmZvIGJveCAqL1xuICAgICAgLmluZm8ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNDVweDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAyMzBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiA4NXB4IDMwcHggMjBweCAzMHB4O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogLTQ1cHg7XG4gICAgICAgICAgbGVmdDogNTRweDtcbiAgICAgICAgICB3aWR0aDogMTE5cHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMTlweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1tb3JlLWluZm8taS5wbmdcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgJi5idG4ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtbGlnaHQtYmx1ZTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgJi5idG4ge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1QTc5OUM7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcblxuICAgICAgLmNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG5cbiAgICAgICAgICAgICYuYnRuIHtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuXG4gICAgICAuY29udGVudCB7XG5cbiAgICAgICAgLnR3by1jb2wge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc2VhcmNoICYgRXZhbHVhdGlvbiAvIEhvdyBXZSBDYW4gSGVscFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkucGFnZS10ZW1wbGF0ZS1yZS1ob3ctcGFnZSAjbWFpbl9jb250ZW50X3dyYXAge1xuXG4gIC5hY2NvcmRpb24ge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcblxuICAgIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0FCQzFEQTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDIwcHggMCAxOHB4IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgfVxuXG4gICAgICBoMy5zaG93aGlkZSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1wbHVzLWJsdWUucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgIG1hcmdpbjogMCAwIDVweCAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAzNXB4O1xuXG4gICAgICAgICYuYXJyb3dDbG9zZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tbWludXMtYmx1ZS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5zaG93aGlkZS1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAwIDVweCA1MHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAuaW5uZXItY29udGVudCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMTBweCAwIDEwcHggMzVweDtcbiAgICAgIH1cblxuICAgICAgLmwtYmxvY2sge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDU1JTtcbiAgICAgIH1cblxuICAgICAgLnItYmxvY2sge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICB9XG5cbiAgICAgIC5kZXNjIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuY29udGFjdCB7XG4gICAgICAgIG1heC13aWR0aDogNTMwcHg7XG4gICAgICAgIGhlaWdodDogOThweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIG1hcmdpbjogMzBweCAwIDIwcHggMjVweDtcbiAgICAgICAgcGFkZGluZzogMTVweCAxNXB4IDE1cHggNzVweDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgICAgbGVmdDogLTQwcHg7XG4gICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb24tbW9yZS1pbmZvLWktc20ucG5nXCIpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGNvbG9yOiAjODE5QUI2O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tcXVvdGUtZ3JlZW4ucG5nXCIpIG5vLXJlcGVhdCB0b3AgbGVmdDtcbiAgICAgICAgbWFyZ2luOiAtMTBweCAwIDAgMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBwIHtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAzMHB4IDMwcHggMjBweCAzMHB4O1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXCInO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgY2l0ZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgY29sb3I6ICM4MTlBQjY7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCA2MHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFwyMDE0ICc7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIwcHgpIHtcblxuICAgIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5jb250YWN0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBtYXJnaW46IDQwcHggMCAwIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc20tYnJlYWspIHtcblxuICAgIC5hY2NvcmRpb24ge1xuXG4gICAgICAuYWNjb3JkaW9uLWl0ZW0ge1xuXG4gICAgICAgIC5sLWJsb2NrLFxuICAgICAgICAuci1ibG9jayB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNlYXJjaCAmIEV2YWx1YXRpb24gLyBSZXBvcnRzICYgUHVibGljYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wYWdlLXRlbXBsYXRlLXJlLXJlcG9ydHNfcHViLXBhZ2Uge1xuXG4gIC5zZWFyY2gtcmVzdWx0cyB7XG5cbiAgICBkaXYuc2VhcmNoIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDI1JTtcblxuICAgICAgaDIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICM1NDZCODU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgaHIge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogNDBweCAwO1xuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTlweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjODE5QUI2O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdlc3RlZC1iYWJ5LWJsdWU7XG4gICAgICAgICAgICBtYXJnaW46IDFweCA4cHggMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogN3B4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnWCc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDRweDtcbiAgICAgICAgICAgIGxlZnQ6IDRweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjg7XG4gICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1lbGVjdHJpYy1ibHVlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDE5MHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgYmFja2dyb3VuZDogIzVBNzk5QztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC40cHg7XG4gICAgICAgIG1hcmdpbjogMTVweCAwIDAgMDtcbiAgICAgICAgcGFkZGluZzogNnB4IDE2cHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5yZXN1bHRzIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHdpZHRoOiA3MCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGEudGh1bWJuYWlsIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDE1JTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTMwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwIDAgMDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogNnB4IDZweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZnBvc3RfY29udGVudCB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBwLmNyaXRlcmlhIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAucGFnaW5hdGlvbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAzNXB4IDAgMTBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICAgJi5wcmV2LCAmLm5leHQge1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnByZXYge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWFycm93LWxlZnQtcHVycGxlLnBuZykgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLm5leHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWFycm93LXJpZ2h0LXB1cnBsZS5wbmcpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBzcGFuLmN1cnJlbnQge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjRiMWE2O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWYyZjc7XG4gICAgICAgICAgcGFkZGluZzogMnB4IDZweDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBtYXJnaW46IDAgNnB4O1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTBweCkge1xuXG4gICAgLnNlYXJjaC1yZXN1bHRzIHtcblxuICAgICAgZGl2LnNlYXJjaCxcbiAgICAgIC5yZXN1bHRzIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgaHIge1xuICAgICAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnJlc3VsdHMge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MjBweCkge1xuXG4gICAgLnNlYXJjaC1yZXN1bHRzIHtcblxuICAgICAgLnJlc3VsdHMge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgdWwgbGkgLmZwb3N0X2NvbnRlbnQge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNlYXJjaCAmIEV2YWx1YXRpb24gLyBXZXN0RWQgSW5zaWdodHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcmUtcmVzZWFyY2hfYmxvZy1wYWdlIHtcblxuICAuYmxvZyB7XG5cbiAgICB1bCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgZ3JpZC1nYXA6IDMwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEudGh1bWJuYWlsIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICAgIG1pbi13aWR0aDogMTcwcHg7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxNzBweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgMjBweCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5mcG9zdF9jb250ZW50IHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNTUlO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgcC5wb3N0X2RhdGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICM2RUE5RUQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICAmLnByZXYsICYubmV4dCB7XG4gICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYucHJldiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWFycm93LWxlZnQtcHVycGxlLnBuZykgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYubmV4dCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWFycm93LXJpZ2h0LXB1cnBsZS5wbmcpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBzcGFuLmN1cnJlbnQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiNGIxYTY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWYyZjc7XG4gICAgICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTg1cHgpIHtcblxuICAgIC5ibG9nIHtcblxuICAgICAgdWwge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDc2cHgpIHtcblxuICAgIC5ibG9nIHtcblxuICAgICAgdWwge1xuXG4gICAgICAgIGxpIHtcblxuICAgICAgICAgIGEudGh1bWJuYWlsIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmZwb3N0X2NvbnRlbnQge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG4vKlxuXG5Qcm9mZXNzaW9uYWwgRGV2ZWxvcG1lbnQgJiBUZWNobmljYWwgQXNzaXN0YW5jZSBub3RlOiB0aGVzZSB1c2VkIHRvIGJlIG9uZSBwYWdlIHdpdGggdGhlIGJvZHkgY2xhc3MgXCJwbHRhXCIsIGFuZCBoYXZlIHN0eWxpbmcgdGhhdCBzdGlsbCBsaXZlcyBpbiBwbHRhLnNjc3MgYW5kIC9jc3Mvc2VydmljZWxpc3QuY3NzXG5cbiovXG5cblxuLyogUHJvZmVzc2lvbmFsIERldmVsb3BtZW50XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wcm9mZXNzaW9uYWwtZGV2ZWxvcG1lbnQge1xuXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAjY29udGVudCB7XG4gIFxuICAgICAgLndyYXAge1xuICAgICAgICBtYXgtd2lkdGg6IDEwNDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMjBweDsgICAgICBcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNBQkMxREE7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAxMnB4IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgICAgXG4gICAgfVxuXG4gIH1cblxuICAvKiBGZWF0dXJlZCAqL1xuICAjZmVhdHVyZWQtY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogMTA0MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwYWRkaW5nOiAzMHB4IDIwcHggMTBweCAyMHB4O1xuICAgIH1cblxuICAgIC5ieC13cmFwcGVyIC5ieC1wYWdlciB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICB9XG5cbiAgLyogZmlsdGVycyAqL1xuICAuc2VydmljZS1maWx0ZXJzIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgaGVpZ2h0OiAzM3B4ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogNHB4IDEycHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5mYWNldHdwLWNoZWNrYm94IHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgM3B4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgIFxuICAgIC5mYWNldHdwLWZhY2V0IHtcbiAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gIH1cblxuICAvKiBzb3J0IGJhciAqL1xuICAucmVzdWx0LXNvcnQtYmFyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDcwJTtcbiAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5mYWNldHdwLWNvdW50cyB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmZhY2V0d3Atc2VsZWN0aW9ucyB7XG4gICAgICBtYXJnaW46IDE1cHggMCAwIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAuZmFjZXR3cC1zZWxlY3Rpb24tbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAuZmFjZXR3cC1zZWxlY3Rpb24tdmFsdWUge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgcGFkZGluZzogN3B4IDMwcHggN3B4IDE1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzRjY0OEY7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEwcHggY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvcGQtaWNvbi1jbG9zZS5wbmdcIik7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIGVudHJpZXMgKi9cbiAgI21haW5fY29udGVudF93cmFwIC5zZXJ2aWNlLWVudHJpZXMge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogNzAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLnNlcnZpY2UtaXRlbSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNkVBOUVEO1xuICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgLml0ZW0tbWFpbiB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuICAgIFxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBcbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgXG4gICAgICAmLmV4Y2VycHQge1xuICAgICAgfVxuICAgICAgXG4gICAgICAmLnRlcm1zIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgY29sb3I6ICM2RUE5RUQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbi10b3A6IDEycHg7ICAgICAgICBcbiAgICAgIH1cbiAgICAgIFxuICAgIH1cblxuICB9XG5cbiAgLyogcGFnaW5hdGlvbiAqL1xuICAuZmFjZXR3cC1wYWdlciB7XG4gICAgd2lkdGg6IDcwJTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGNvbG9yOiAjMTY2OWM5O1xuICAgIH1cbiAgICBcbiAgICBhLmFjdGl2ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjRiMWE2O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjJGNztcbiAgICAgIHBhZGRpbmc6IDJweCA4cHg7XG4gICAgfVxuICAgIFxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODUwcHgpIHtcbiAgICBcbiAgICAuc2VydmljZS1maWx0ZXJzLFxuICAgIC5yZXN1bHQtc29ydC1iYXIsXG4gICAgLnNlcnZpY2UtZW50cmllcyB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBcbiAgfVxuXG59XG5cblxuLyogVGVjaG5pY2FsIEFzc2lzdGFuY2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnRlY2huaWNhbC1hc3Npc3RhbmNlIHtcblxuICAvKiBjb250ZW50ICovXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG5cbiAgICAuYm90dG9tIHtcblxuICAgICAgaDIge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5O1xuICAgICAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMCA3cHggMDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5maWx0ZXIge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMjUlO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgaDIge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5wbHRhLWxpc3Qge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDc1JTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgI3BhZ2luYXRpb24ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAzNXB4IDAgMTBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDAgNXB4IDAgNXB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICAmLmJlZ2lubmluZywgJi5lbmRpbmcge1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmJlZ2lubmluZyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tYXJyb3ctbGVmdC1wdXJwbGUucG5nKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuZW5kaW5nIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1hcnJvdy1yaWdodC1wdXJwbGUucG5nKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNiNGIxYTY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTMwcHgpIHtcblxuICAgIC5mZWF0dXJlZF9mdyB7XG5cbiAgICAgIC5mZWF0dXJlZF9jb250ZW50IHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NTBweCkge1xuXG4gICAgLmZpbHRlciwgLnBsdGEtbGlzdCB7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG59XG5cbmJvZHkucGFnZS10ZW1wbGF0ZS10ZWNobmljYWwtYXNzaXN0YW5jZS1jaGlsZCB7XG5cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIC5wYWdlLWNvbnRlbnQge1xuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMjBweCA0MHB4O1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBTZXJ2aWNlIERldGFpbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuc2luZ2xlLXNlcnZpY2Uge1xuXG4gICNjb250ZW50IHtcbiAgICB3aWR0aDogNzMlO1xuICB9XG5cbiAgLyogUXVvdGUgKi9cbiAgLmZlYXR1cmVkX2Z3IHtcblxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgbWluLWhlaWdodDogMTAwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1xdW90ZS13aGl0ZS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMCAxNjVweDtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcMjAxRFwiO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgY2l0ZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogIzgxOUFCNjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMCAyMjVweDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcXDIwMTNcXDAwYTBcIjtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIGNvbnRlbnQgKi9cbiAgLmVudHJ5LWNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMjAwcHggIWltcG9ydGFudDtcblxuXG4gICAgaDIge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMTUwcHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgbWFyZ2luOiAwIDAgMCAtMjAwcHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnk7XG4gICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuXG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmJyb2NodXJlIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgYS50aHVtYiB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZWQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuc2hvd2hpZGUtY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5zaG93aGlkZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnNob3doaWRlOmZpcnN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICB9XG5cbiAgICAvKiBDYWxsIHRvIEFjdGlvbiAqL1xuICAgIC5jdGEge1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAjNDA1NDVmO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICBjb2xvcjogIzU2OGJiNztcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIHNpZGViYXIgKi9cbiAgI3NpZGViYXIge1xuICAgIG1heC13aWR0aDogMjMwcHg7XG5cbiAgICAjc2lkZWJhcl9zaWRlYmFyX2NvbnRhY3Qge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAzNXB4IDAgMCAwO1xuICAgICAgcGFkZGluZzogNzVweCAzMHB4IDIwcHggMzBweDtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTQ1cHg7XG4gICAgICAgIGxlZnQ6IDU0cHg7XG4gICAgICAgIHdpZHRoOiAxMTlweDtcbiAgICAgICAgaGVpZ2h0OiAxMTlweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb24tbW9yZS1pbmZvLWkucG5nXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgfVxuXG4gICAgICAvKiBuYW1lICovXG4gICAgICAuY29udGFjdEluZm8ge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuY29udGFjdF9uYW1lIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDEwcHggMCA1cHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogcGhvbmUgKi9cbiAgICAgIC5waG9uZS1mYXgtY29udGFpbmVyIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLnBob25lIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBjb2xvcjogIzgxOUFCNiAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmVtYWlsIHtcbiAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHggNXB4IDEwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuXG4gICAgI2NvbnRlbnQge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG5cbiAgICAjc2lkZWJhciB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcblxuICAgICAgI3NpZGViYXJfc2lkZWJhcl9jb250YWN0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5lbWFpbCBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG5cbiAgICAuZW50cnktY29udGVudCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcblxuICAgICAgaDIge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmZlYXR1cmVkX2Z3IHtcblxuICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyMDFDXCI7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBjaXRlIHtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMCA1MHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBIb21lXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS53b29jb21tZXJjZSB7XG5cbiAgLyogcm93cyAqL1xuICAuYm9va3N0b3JlX3JvdyB7XG4gICAgbWFyZ2luOiAxMHB4IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAyMHB4IDAgNDBweCAwICFpbXBvcnRhbnQ7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvKiBzZWN0aW9uIG5hbWVzICovXG4gICAgLmhlYWRpbmdfYmFyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBoNCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnkgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW4gIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIHAudmlldy1tb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMTVweCAwIDAgMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMTJweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIHByb2R1Y3RzICovXG4gICAgdWwucHJvZHVjdHMge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgIGdyaWQtZ2FwOiAzMHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgQHN1cHBvcnRzIG5vdCAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICAgICAgY29udGVudDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbnRlbnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWluLWhlaWdodDogMDtcblxuICAgICAgICBAc3VwcG9ydHMgbm90IChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogNDglO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogNDglO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjJGNztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDI1cHg7XG5cbiAgICAgICAgZGl2LmltZyB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgICBtaW4td2lkdGg6IDE2NXB4O1xuICAgICAgICAgIG1heC13aWR0aDogMTY1cHg7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgICAgbWFyZ2luOiAwIDMwcHggMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAudGh1bWJuYWlsIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3gtc2hhZG93OiA2cHggNnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGRpdi5pbmZvIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNTQlO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaDMsXG4gICAgICAgICAgcC5yZXNvdXJjZV9kZXNjcmlwdGlvbixcbiAgICAgICAgICAucHJpY2Uge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5yZXNvdXJjZV9kZXNjcmlwdGlvbiBzdHJvbmcge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGgzLCAucmVzb3VyY2VfdGl0bGUge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcC5yZXNvdXJjZV9kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAucHJpY2UsIC5idG5fY3RhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAucHJpY2Uge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5idG5fY3RhIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBhLmJ1dHRvbiB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IC41ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgIG1hcmdpbjogMTJweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC4zNSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAzMnB4KSB7XG5cbiAgICAuYm9va3N0b3JlX3JvdyB1bC5wcm9kdWN0cyB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICAgbGkge1xuXG4gICAgICAgIGRpdi5pbmZvIHtcbiAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyMHB4KSB7XG5cbiAgICAuYm9va3N0b3JlX3JvdyB7XG5cbiAgICAgIC5oZWFkaW5nX2JhciB7XG4gICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICBoNCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbi52aWV3YWxsIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzYwcHgpIHtcblxuICAgIC5ib29rc3RvcmVfcm93IHVsLnByb2R1Y3RzIHtcblxuICAgICAgbGkge1xuXG4gICAgICAgIC5pbWcge1xuICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBkaXYuaW5mbyB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMjBweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogUmVzb3VyY2VzIC8gTmV3IFJlbGVhc2VzLCBCZXN0IFNlbGxlcnMsIFRvcCBEb3dubG9hZHMsIEZyZWUsIFJlc2VhcmNoIChhbmQgc2hhcmVkIHdpdGggQU9XIFJlc291cmNlcylcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5Lndvb2NvbW1lcmNlLnRheC1wcm9kdWN0X2NhdCB7XG5cbiAgLyogQU9XIEZpbHRlciAqL1xuICAuYW93LWZpbHRlci1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDMwcHg7XG4gICAgei1pbmRleDogOTk5OTtcbiAgICB3aWR0aDogNDAwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcbiAgICBib3gtc2hhZG93OiA0cHggNHB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGZvcm0jYW93LWZpbHRlciB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBoNCB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XG5cbiAgICAgICAgc3Bhbi5hcnJvdyB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxN3B4O1xuICAgICAgICAgIGhlaWdodDogMTFweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1hcnJvdy1kb3duLXJlc291cmNlcy1hb3ctZmlsdGVyLnBuZ1wiKSBuby1yZXBlYXQgdG9wIHJpZ2h0O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDAgNXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmZpbHRlcnMtY2xvc2VkIHNwYW4uYXJyb3cge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuZm9ybS1pbm5lciB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmM2ZiO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCA4cHggMCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICM1QTc5OUM7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgI2Fvdy1maWx0ZXItYnRuLXdyYXAge1xuICAgICAgICAgIGJvcmRlci10b3A6IDZweCBzb2xpZCAjZWVmM2ZiO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgI2Fvdy1maWx0ZXItYnRuIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIGZvcmNlIG91dCBvZiB1bCAqL1xuICAuZmluaXRlU2Nyb2xsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNDBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGFnZS10aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6IDI4cHggIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogNDBweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJHdlc3RlZC1ncmVlbiAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmJvb2tzdG9yZV9yb3cge1xuICAgIG1hcmdpbjogMzVweCAwIDIwcHggMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgIHVsLnByb2R1Y3RzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBzcGFuLnByb2R1Y3RfaXRlbXMge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgICBncmlkLWdhcDogMzBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICBsaSB7XG5cbiAgICAgICAgQHN1cHBvcnRzIG5vdCAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgZGl2LmltZyB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWluLXdpZHRoOiBub25lO1xuICAgICAgICAgIG1heC13aWR0aDogMTY1cHg7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGRpdi5pbmZvIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIC5idG5fY3RhIGEuYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MHB4KSB7XG5cbiAgICAuYm9va3N0b3JlX3JvdyB1bC5wcm9kdWN0cyB7XG5cbiAgICAgIHNwYW4ucHJvZHVjdF9pdGVtcyB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzcwcHgpIHtcblxuICAgIC5ib29rc3RvcmVfcm93IHVsLnByb2R1Y3RzIHtcblxuICAgICAgc3Bhbi5wcm9kdWN0X2l0ZW1zIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICB9XG5cbiAgICAgIGxpIHtcblxuICAgICAgICBkaXYuaW1nIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmFvdy1maWx0ZXItY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIGZvcm0jYW93LWZpbHRlciAuZm9ybS1pbm5lciAjYW93LWZpbHRlci1idG4td3JhcCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuYm9va3N0b3JlX3JvdyB7XG5cbiAgICAgIHVsLnByb2R1Y3RzIHtcblxuICAgICAgICAuZmluaXRlU2Nyb2xsIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuLyogQU9XIEZpbHRlcmVkICovXG5ib2R5Lndvb2NvbW1lcmNlLnRheC1wcm9kdWN0X2NhdC5hb3ctZmlsdGVyIHtcblxuICBoMS5wYWdlLXRpdGxlIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYWN0aXZlLWZpbHRlcnMge1xuICAgIG1heC13aWR0aDogNTI1cHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMjhweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuICFpbXBvcnRhbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICB9XG5cbn1cblxuLyogUmVzb3VyY2UgbGlzdGluZyBwYWdlcyBvbmx5IChzaW5jZSB3ZSBkb24ndCB3YW50IHRoaXMgc3R5bGluZyBhcHBsaWVkIHRvIG90aGVyIHNlY3Rpb25zIHRoYXQgdXNlIC93b29jb21tZXJjZS9jb250ZW50LXByb2R1Y3QucGhwIGxpa2UgQU9XIFJlc291cmNlcykgKi9cbmJvZHkudGF4LXByb2R1Y3RfY2F0IHtcblxuICAuYm9va3N0b3JlX3JvdyB1bC5wcm9kdWN0cyBsaSB7XG5cbiAgICBkaXYuaW5mbyB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTBweCAhaW1wb3J0YW50O1xuXG4gICAgICAuYnRuX2N0YSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAyMHB4O1xuICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgIGEuYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBSZXNvdXJjZSBsaXN0cyBkaXNwbGF5ZWQgZWxzZXdoZXJlIChQcm9ncmFtcywgQU9XKVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkud29vY29tbWVyY2UucGFnZS10ZW1wbGF0ZS1wcm9ncmFtX3Jlc291cmNlbGlzdCxcbmJvZHkud29vY29tbWVyY2UucGFnZS10ZW1wbGF0ZS1hb3ctcmVzb3VyY2VsaXN0LXBhZ2Uge1xuXG4gIC5ib29rc3RvcmVfcm93IHVsLnByb2R1Y3RzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAwIDUwcHggMDtcblxuICAgIHNwYW4ucHJvZHVjdF9pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICBncmlkLWdhcDogMzBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgLyogY3NzIGdyaWQgZmFsbGJhY2sgKi9cbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgIGZsb2F0OiBsZWZ0OyAvKiBjc3MgZ3JpZCBmYWxsYmFjayAqL1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAvKiBJRTEwLCBJRTExICovXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgIH1cblxuICAgICAgZGl2LmltZyB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi13aWR0aDogMTAwcHggIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDBweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgMjBweCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgc3Bhbi50aHVtYm5haWwge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAvKiBJRTEwLCBJRTExICovXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgICAgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICAgICAgd2lkdGg6IDE1JSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgZGl2LmluZm8ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDcwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgIC5wcmljZSxcbiAgICAgICAgLmJ0bl9jdGEge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIElFMTAsIElFMTEgKi9cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgICAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgICB3aWR0aDogODUlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogZm9yY2Ugb3V0IG9mIHVsICovXG4gICAgLmZpbml0ZVNjcm9sbCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5MHB4KSB7XG5cbiAgICAuYm9va3N0b3JlX3JvdyB1bC5wcm9kdWN0cyB7XG5cbiAgICAgIHNwYW4ucHJvZHVjdF9pdGVtcyB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NjVweCkge1xuXG4gICAgLmJvb2tzdG9yZV9yb3cgdWwucHJvZHVjdHMge1xuXG4gICAgICBsaSB7XG5cbiAgICAgICAgZGl2LmltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGRpdi5pbmZvIHtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuYm9keS53b29jb21tZXJjZS5wYWdlLXRlbXBsYXRlLWFvdy1yZXNvdXJjZWxpc3QtcGFnZSB7XG5cbiAgLmJvb2tzdG9yZV9yb3cge1xuXG4gICAgdWwucHJvZHVjdHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTBweCkge1xuXG4gICAgLmJvb2tzdG9yZV9yb3cge1xuXG4gICAgICB1bC5wcm9kdWN0cyB7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIERldGFpbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3Qge1xuXG4gIC8qIG1vZGFsIGFsYSBSZW1vZGFsICovXG4gIC5yZW1vZGFsLXdyYXBwZXIge1xuXG4gICAgLnJlbW9kYWwtY2xvc2Uge1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogIzU0NmI4NSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgcCB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjNTQ2Yjg1ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDE0cHggMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIG9sIHtcbiAgICBtYXJnaW46IDAgMCAwIDQwcHg7XG4gIH1cblxuICAvKiBhY2NvdW50IHRvb2xzICovXG4gICNhY2NvdW50LXRvb2xzIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBtYXJnaW46IC0yMHB4IDAgMzBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xuICAgICAgcGFkZGluZzogMnB4IDZweDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIHRpdGxlICovXG4gICNyZXNvdXJjZV90aXRsZSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgaDEge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgICAgbWFyZ2luOiAwIDAgNnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHAucmVzb3VyY2VfYXV0aG9ycyxcbiAgICBwLnJlc291cmNlX2VkaXRvcnMsXG4gICAgcC5yZXNvdXJjZV9oZWxwZXJzIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICBjb2xvcjogJHdlc3RlZC1saWdodC1ibHVlO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDFweCAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgJHdlc3RlZC1saWdodC1ibHVlO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBwcm9kdWN0IGNvbnRlbnQgKi9cbiAgLnByb2R1Y3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLnN1bW1hcnkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLmltYWdlcyB7XG4gICAgICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAyMDBweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDE3NXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm94LXNoYWRvdzogNnB4IDZweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgIH1cblxuICAgICAgICAvKiBpdGVtIGRldGFpbHMgKi9cbiAgICAgICAgI3ByaWNlX3RvcCB7XG4gICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAuY2FydF9ib3hfdG9wIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgICAgICAgICAmLm5vY2hhcmdlIHtcbiAgICAgICAgICAgICAgLy8gbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNyZXNvdXJjZV9idG5DYXJ0IHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE3NXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJlc291cmNlX3ByaWNlIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgZGVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpbnMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC53b29jb21tZXJjZS1QcmljZS1hbW91bnQge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuZGV0YWlscyB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDc5JTtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICBwLCBsaSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogIzU0NmI4NSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDE0cHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDAgNDBweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogc29jaWFsIGljb25zICovXG4gICAgICAgICNhZGRUaGlzQnV0dG9ucyB7XG4gICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMzBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogYWRkaXRpb25hbCBkZXRhaWxzIGluIHNob3cvaGlkZSAqL1xuICAgIC5hZGRpdGlvbmFsX2luZm8ge1xuXG4gICAgICAvKiB0ZXN0aW5nICovXG4gICAgICAucGFnZV9jb250ZW50X2JveF9ib2R5X3RleHQge1xuICAgICAgICAvLyBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgLyogc2VjdGlvbiAqL1xuICAgICAgLnBhZ2VfY29udGVudF9ib3gge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQUJDMURBO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jb2xsYXBzZWQgLnBhZ2VfY29udGVudF9ib3hfaGVhZGxpbmUgaDMge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXBsdXMtYmx1ZS5wbmdcIikgbm8tcmVwZWF0IDAgMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIHRpdGxlICovXG4gICAgICAgIC5wYWdlX2NvbnRlbnRfYm94X2hlYWRsaW5lIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICM2RUE5RUQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLW1pbnVzLWJsdWUucG5nXCIpIG5vLXJlcGVhdCAwIDIwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDM1cHggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIGNvbnRlbnQgKi9cbiAgICAgICAgLnBhZ2VfY29udGVudF9ib3hfYm9keV90ZXh0IHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDAgNDBweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIFJlc291cmNlIERldGFpbHMgKi9cbiAgICAgICNyZXNvdXJjZS1kZXRhaWxzIHtcblxuICAgICAgICBoNCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICM1NDZCODU7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdF9pbmZvcm1hdGlvbiB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgbWFyZ2luOiAwIDEycHggMjBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAucHJldmlld3Mge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIG1hcmdpbjogMCAxMnB4IDIwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgI2Jvb2tQcmV2aWV3IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAucmVxdWVzdHMge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIG1hcmdpbjogMCAxMnB4IDIwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDEycHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogNHB4IDhweCA0cHggOHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIFByYWlzZSAqL1xuICAgICAgI2VkaXRvcmlhbF9yZXZpZXcge1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAucXVvdGVfY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgbWluLWhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tcXVvdGUtd2hpdGUucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCA0MHB4IDMwcHggMTY1cHg7XG5cbiAgICAgICAgICAgICAgLnF1b3RlX3RleHQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtbmF2eS1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5xdW90ZV9zb3VyY2Uge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjODE5QUI2ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgNzVweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiLSBcIjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIFJlbGF0ZWQgUmVzb3VyY2VzICovXG4gICAgICAjcmVsYXRlZF9yZXNvdXJjZXMge1xuXG4gICAgICAgICNjcm9zcy1zZWxscyB7XG4gICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgdWwucHJvZHVjdHMge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIC8vICY6YmVmb3JlLFxuICAgICAgICAgICAgLy8gICAmOmFmdGVyIHtcbiAgICAgICAgICAgIC8vICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgLy8gICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgLy8gICB9XG5cbiAgICAgICAgICAgIC8vICAgJjphZnRlciB7XG4gICAgICAgICAgICAvLyAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICAvLyAgIH1cblxuICAgICAgICAgICAgICBkaXYuaW1nIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTUlO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTMwcHg7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMzBweDtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiA2cHggNnB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGRpdi5pbmZvIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDZweCAwO1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwLnJlc291cmNlX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjBweCkge1xuXG4gICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcblxuICAgICAgICAgICAgICBsaSB7XG5cbiAgICAgICAgICAgICAgICBkaXYuaW1nIHtcbiAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAudGh1bWJuYWlsIHtcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGRpdi5pbmZvIHtcbiAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogUmVsYXRlZCBTZXJ2aWNlcyAqL1xuICAgICAgI3JlbGF0ZWRfc2VydmljZXMge1xuXG4gICAgICAgIHVsLnNlcnZpY2VfbGlzdCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCA2cHggMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLmV4Y2VycHQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNTQ2Yjg1O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTQwcHgpIHtcblxuICAgIC8qIHByb2R1Y3QgY29udGVudCAqL1xuICAgIC5wcm9kdWN0IHtcblxuICAgICAgLnN1bW1hcnkge1xuXG4gICAgICAgIC5pbWFnZXMge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXRhaWxzIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICNoZWFkaW5nX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogYWRkaXRpb25hbCBkZXRhaWxzIHdpdGggc2hvdy9oaWRlICovXG4gICAgICAuYWRkaXRpb25hbF9pbmZvIHtcblxuICAgICAgICAucGFnZV9jb250ZW50X2JveF9ib2R5X3RleHQge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLyogUmVzb3VyY2UgRGV0YWlscyAqL1xuICAgICAgICAjcmVzb3VyY2UtZGV0YWlscyB7XG5cbiAgICAgICAgICAucHJvZHVjdF9pbmZvcm1hdGlvbixcbiAgICAgICAgICAucmVxdWVzdHMsXG4gICAgICAgICAgLnByZXZpZXdzIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY1cHgpIHtcblxuICAgIC5wYWdlX2NvbnRlbnRfYm94LlR3by1jb2x1bW4gLnBhZ2VfY29udGVudF9ib3hfYm9keV90ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcblxuICAgIC8qIHByb2R1Y3QgY29udGVudCAqL1xuICAgIC5wcm9kdWN0IHtcblxuICAgICAgLyogYWRkaXRpb25hbCBkZXRhaWxzIHdpdGggc2hvdy9oaWRlICovXG4gICAgICAuYWRkaXRpb25hbF9pbmZvIHtcblxuICAgICAgICAvKiBQcmFpc2UgKi9cbiAgICAgICAgI2VkaXRvcmlhbF9yZXZpZXcge1xuXG4gICAgICAgICAgdWwge1xuXG4gICAgICAgICAgICBsaSB7XG5cbiAgICAgICAgICAgICAgLnF1b3RlX2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIERldGFpbCAvIEN1c3RvbWl6YXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBGb3N0ZXJpbmcgQ29sbGFib3JhdGlvbiAqL1xuYm9keS53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdC5mb3N0ZXJpbmctY29sbGFiIHtcblxuICAuZGVzY3JpcHRpb24ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1heC13aWR0aDogNDgwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAuc3RhZ2VzIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDI3NXB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5O1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICB1bCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAucHJvZHVjdCAuc3VtbWFyeSAuZGV0YWlscyAuc3RhZ2VzIHAge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHJvZHVjdCAuc3VtbWFyeSAuZGV0YWlscyAuc3RhZ2VzIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucmVtb2RhbC13cmFwcGVyIHtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgICAgLml0ZW0ge1xuXG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICBmbGV4OiAxIDEgMDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDE2NXB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcblxuICAgICAgICAgIC50aHVtYiB7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcC5idXR0b24ge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTNweDtcbiAgICAgICAgICAgIG1hcmdpbjogMTJweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICBmbGV4OiAyIDEgMDtcblxuICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjNTQ2Qjg1O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDNweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBjb2xvcjogIzU0NkI4NTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICYubm90ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjMTY2OUM5O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaHIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjQUJDMURBO1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDAgMTVweCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTUwcHgpIHtcblxuICAgIC5yZW1vZGFsLXdyYXBwZXIge1xuXG4gICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIC5pdGVtIHtcblxuICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDE1cHgpIHtcblxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgIC5zdGFnZXMge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIFVzZXIgRmxvdyAoTG9naW4vUmVnaXN0ZXIsIE15IEFjY291bnQpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS53b29jb21tZXJjZS1hY2NvdW50IHtcblxuICBidXR0b24uYnV0dG9uIHtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAxMnB4IDAgMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IC43NSAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgI2N1c3RvbWVyX2xvZ2luIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1vci5wbmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG5cbiAgICAuY29sLTEge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLmNvbC0yIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG5cbiAgICAuY29sLTEsXG4gICAgLmNvbC0yIHtcbiAgICAgIHdpZHRoOiA0NSU7XG4gICAgICBoZWlnaHQ6IDM3MHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHdlc3RlZC1saWdodC1ibHVlO1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBwLm1ldGEge1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogbGFiZWwgKi9cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgMCA2cHggMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIC8qIGlucHV0ICovXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSB7XG4gICAgICAgIGhlaWdodDogNDJweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogNHB4IDEycHggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogNDJweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogNXB4IDAgMTBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcblxuICAgIC5jb2wtMSxcbiAgICAuY29sLTIge1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmNvbC0xIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmNvbC0yIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxuICAvKiBMb3N0IFBhc3N3b3JkICovXG4gIGZvcm0ubG9zdF9yZXNldF9wYXNzd29yZCB7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG5cbiAgICBwIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLyogbGFiZWwgKi9cbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogMTRweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAwIDZweCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLyogaW5wdXQgKi9cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICBoZWlnaHQ6IDQycHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA0cHggMTJweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogNDJweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiA1cHggMCAxMHB4IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gICNjb250ZW50IGlucHV0LmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICB9XG5cbiAgLndvb2NvbW1lcmNlLW1lc3NhZ2Uge1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgMCAyMHB4IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKiBNeSBBY2NvdW50IC8gTmF2ICovXG4gIC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgY29sb3I6ICMxNjY5YzkgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgMTRweCAwIDA7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDAgNXB4IDBcbiAgICAgICAgfVxuXG4gICAgICAgICYuaXMtYWN0aXZlIGEge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAkYm9yZGVyLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuXG4gICAgICB1bCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBNeSBBY2NvdW50IC8gT3JkZXJzICovXG4gIC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCB7XG5cbiAgICB0YWJsZS5hY2NvdW50LW9yZGVycy10YWJsZSB7XG5cbiAgICAgIHRkLndvb2NvbW1lcmNlLW9yZGVycy10YWJsZV9fY2VsbC1vcmRlci1hY3Rpb25zIHtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDdweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIgIWltcG9ydGFudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgdGFibGUub3JkZXJfZGV0YWlscyB7XG4gICAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cbiAgICAgIHRkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA4cHggMTBweCA4cHggMDtcbiAgICAgIH1cblxuICAgICAgdGZvb3Qge1xuXG4gICAgICAgIHRoIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgZm9ybS53b29jb21tZXJjZS1FZGl0QWNjb3VudEZvcm0ge1xuXG4gICAgICBmaWVsZHNldCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBhLmJ1dHRvbiB7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGxpbmstcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIDAgN3B4IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBwLm9yZGVyLWFnYWluIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHggIWltcG9ydGFudDtcblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBNeSBBY2NvdW50IC8gRWRpdCBBZGRyZXNzICovXG4gIC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCB7XG5cbiAgICAud29vY29tbWVyY2UtYWRkcmVzcy1maWVsZHMge1xuICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgLndvb2NvbW1lcmNlLWFkZHJlc3MtZmllbGRzX19maWVsZC13cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIH1cblxuICAgICAgLyogbGFiZWwgKi9cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgMCA2cHggMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIC8qIGlucHV0ICovXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAgIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gICAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuICAgICAgICBoZWlnaHQ6IDQycHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjkgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDRweCAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDQycHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDVweCAwIDEwcHggMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5zZWxlY3QyLWNvbnRhaW5lciB7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgaGVpZ2h0OiA0MnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjkgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiA0cHggMTJweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNlbGVjdDItY2hvaWNlIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xuXG4gICAgICAgICAgLnNlbGVjdDItY2hvc2VuIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnNlbGVjdDItYXJyb3cge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgICAgICAgYiB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIE15IEFjY291bnQgLyBBY2NvdW50IERldGFpbHMgKi9cbiAgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHtcblxuICAgIC5lZGl0LWFjY291bnQge1xuICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgLyogbGFiZWwgKi9cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgMCA2cHggMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIC8qIGlucHV0ICovXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSB7XG4gICAgICAgIGhlaWdodDogNDJweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogNHB4IDEycHggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogNDJweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogNXB4IDAgMTBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBNeSBDYXJ0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS53b29jb21tZXJjZS1jYXJ0ICNjb250ZW50IHtcblxuICAuY2FydC1lbXB0eTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAucmV0dXJuLXRvLXNob3Age1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0YWJsZS5zaG9wX3RhYmxlIHtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlcjogbm9uZTtcblxuICAgIHRkIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDhweCAxMHB4IDhweCAwO1xuICAgIH1cblxuICB9XG5cbiAgdGQuYWN0aW9ucyB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMTJweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyogYnV0dG9ucyAqL1xuICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgaGVpZ2h0OiA0MnB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjkgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCA3cHggMCAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogNHB4IDEycHggIWltcG9ydGFudDtcbiAgfVxuXG4gIGlucHV0LmJ1dHRvbixcbiAgYnV0dG9uLmJ1dHRvbiB7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogNDJweDtcbiAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgMTJweCAwIDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAuNzUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIC5jcm9zcy1zZWxscywgLmNhcnRfdG90YWxzIHtcblxuICAgIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cblxuICB9XG5cbiAgLmNyb3NzLXNlbGxzIHtcblxuICAgIHVsLnByb2R1Y3RzIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLmltZyB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMCAyMHB4IDAgMDtcblxuICAgICAgICAgIC50aHVtYm5haWwge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiA3NSU7XG5cbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAuY2FydF90b3RhbHMge1xuXG4gICAgdGFibGUge1xuXG4gICAgICB0aCwgdGQge1xuICAgICAgICBwYWRkaW5nOiA2cHg7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnNlbGVjdDItY29udGFpbmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBpbnB1dC5pbnB1dC10ZXh0IHtcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICNjYWxjX3NoaXBwaW5nX3Bvc3Rjb2RlX2ZpZWxkOmFmdGVyIHtcbiAgICAgIGxlZnQ6IDkwcHg7XG4gICAgfVxuXG4gICAgcCBidXR0b24ge1xuICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgMTJweCAwIDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuNzUgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYSB7XG4gICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDQycHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgMTJweCAwIDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuNzUgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBDaGVja291dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkud29vY29tbWVyY2UtY2hlY2tvdXQgI2NvbnRlbnQge1xuXG4gIC8qIGhpZGluZyAob3B0aW9uYWwpIGZyb20gc3Vic2NyaWJlIG1lc3NhZ2UgKi9cbiAgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIHtcblxuICAgIHNwYW4ub3B0aW9uYWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgfVxuXG4gIHAge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAjd2Ntc19tZXNzYWdlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC53b29jb21tZXJjZS1pbmZvIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG5cbiAgICAgIGEuYnV0dG9uIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC53b29jb21tZXJjZS1pbmZvIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMTVweDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gIH1cblxuICBmb3JtLmNoZWNrb3V0X2NvdXBvbiB7XG5cbiAgICBwIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICYuZm9ybS1yb3ctZmlyc3Qge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgd2lkdGg6IDE1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMTVweCA3cHggMCAwO1xuICAgICAgfVxuXG4gICAgICAmLmZvcm0tcm93LWxhc3Qge1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgIG1hcmdpbjogMTVweCAwIDAgMDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIGJ1dHRvbnMgKi9cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICBoZWlnaHQ6IDQycHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIDdweCAwIDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDRweCAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaW5wdXQuYnV0dG9uLFxuICAgIGJ1dHRvbi5idXR0b24ge1xuICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgMTJweCAwIDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuNzUgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgaDMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuICAgIG1hcmdpbjogMjBweCAwIDE1cHggMDtcbiAgICBwYWRkaW5nOiAwIDAgNnB4IDA7XG4gIH1cblxuICAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHMsXG4gIC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMsXG4gIC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyB7XG5cbiAgICBwIHtcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8qIGJ1dHRvbnMgKi9cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSwgaW5wdXRbdHlwZT1cInRlbFwiXSwgaW5wdXRbdHlwZT1cImVtYWlsXCJdIHtcbiAgICAgIGhlaWdodDogNDJweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCA3cHggMCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA0cHggMTJweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgbWFyZ2luOiAwIDAgMTVweCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNlbGVjdDItY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIHRhYmxlLnNob3BfdGFibGUge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gICNwYXltZW50IHtcblxuICAgIHAudGVybXMge1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG5cbiAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAxMnB4IDAgMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC43NSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5ib2R5LnBhZ2UtY2hlY2tvdXQsXG5ib2R5LnBhZ2UtbXktYWNjb3VudCB7XG5cbiAgLyogc3Vic2NyaWJlIHByb21vIG9uIHJlY2VpcHQgcGFnZSAqL1xuICB0YWJsZS5jdXN0b20tZmllbGRzIHtcblxuICAgIHRoLnRod2NmZS1zZWN0aW9uLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgdGQ6bGFzdC1jaGlsZCB7XG4gICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICB9XG5cbiAgfVxuXG59XG5cbmJvZHkucGFnZS1jaGVja291dCB7XG5cbiAgdGFibGUub3JkZXJfZGV0YWlscyB7XG5cbiAgICB0ZC5kb3dubG9hZC1maWxlIGEuYnV0dG9uIHtcbiAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxuICBwLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMtLXBob25lLFxuICBwLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMtLWVtYWlsIHtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxuICAvKiBzdWJzY3JpYmUgcHJvbW8gKi9cbiAgcCNlYnVsbGV0aW5fc3Vic2NyaWJlX2ZpZWxkIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkYm9yZGVyLXByaW1hcnk7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMjBweDtcblxuICAgIGxhYmVsIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG4gIH1cblxufVxuXG5ib2R5LnBhZ2Utc2hpcHBpbmctYWRkcmVzc2VzIHtcblxuICBhLmJ0bi1pbXBvcnQtYmlsbGluZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG5cbiAgZm9ybS53Y21zLWFkZHJlc3MtZm9ybSxcbiAgZm9ybSNhZGRyZXNzX2Zvcm0ge1xuXG4gICAgbGFiZWwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLyogYnV0dG9ucyAqL1xuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwidGVsXCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuICAgICAgaGVpZ2h0OiA0MnB4ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIDdweCAwIDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDRweCAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgdGV4dGFyZWEge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDEycHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogNDJweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIDEycHggMCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjc1ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuLyogY2hvb3NlIHNoaXBwaW5nIGFkZHJlc3MgcGVyIGl0ZW0gKi9cbmJvZHkucGFnZS1zaGlwcGluZy1hZGRyZXNzZXMge1xuXG4gICNjb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIGEuaDItbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogIzUxQUY0NiAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgdGFibGUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnk7XG4gICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgIHBhZGRpbmc6IDAgMCAyMHB4IDA7XG5cbiAgICB0aCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgcGFkZGluZzogMCAxMnB4O1xuICAgIH1cblxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6IDEycHg7XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgcGFkZGluZzogNHB4IDEycHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIHNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgIG1hcmdpbjogMjBweCAwIDAgMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbn1cblxuLyogT3JkZXIgcmVjZWl2ZWQgKi9cbmJvZHkud29vY29tbWVyY2Utb3JkZXItcmVjZWl2ZWQsXG5ib2R5LnBhZ2UtY2hlY2tvdXQge1xuXG4gIHRoLmRvd25sb2FkLWZpbGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIHRkLmRvd25sb2FkLWZpbGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGEuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGxpbmstcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgdGFibGUub3JkZXJfZGV0YWlscyB0ZC5kb3dubG9hZC1maWxlIGEuYnV0dG9uIHtcbiAgICBjb2xvcjogJGxpbmstcHJpbWFyeSAhaW1wb3J0YW50O1xuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBPcmRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5Lndvb2NvbW1lcmNlLW9yZGVycyB7XG5cbiAgLyogaGlkZSBcImdvIHRvIHRoZVwiICovXG4gIC53b29jb21tZXJjZS1pbmZvIGEud29vY29tbWVyY2UtQnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBEb3dubG9hZHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5Lndvb2NvbW1lcmNlLWRvd25sb2FkcyB7XG5cbiAgLyogaGlkZSBcImdvIHRvIHRoZVwiICovXG4gIC53b29jb21tZXJjZS1pbmZvIGEud29vY29tbWVyY2UtQnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBDYXRhbG9nc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkudjIwMTctY2F0YWxvZ3MgI2NvbnRlbnQge1xuXG4gIGgxIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCIgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDI4cHggIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMzRweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJHdlc3RlZC1ncmVlbiAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIGgyIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgMTVweCAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgcCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogIzU0NmI4NTtcbiAgICBtYXJnaW46IDAgMCAxNHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGEuYnRuIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAxMnB4IDAgMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgaHIge1xuICAgIGJvcmRlci1jb2xvcjogI0FCQzFEQTtcbiAgICBtYXJnaW46IDI1cHggMDtcbiAgfVxuXG4gIHVsLmdyb3VwIHtcblxuICAgIGxpIHtcblxuICAgICAgc3Ryb25nIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY1cHgpIHtcblxuICAgIHVsLmdyb3VwIHtcblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM4NXB4KSB7XG5cbiAgICBwIGEuYnRuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIEhlbHBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtcmVzb3VyY2VzLWhlbHAge1xuXG4gIC50b2Mge1xuICAgIHdpZHRoOiA4MCU7XG4gICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuY29sTGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuXG4gICAgLmNvbFJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjY2cHgpIHtcblxuICAgIC50b2Mge1xuXG4gICAgICAuY29sTGVmdCxcbiAgICAgIC5jb2xSaWdodCB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBSZXByaW50IFBlcm1pc3Npb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wYWdlLXJlcHJpbnQtcGVybWlzc2lvbnMge1xuXG4gIC5lbnRyeS1jb250ZW50IHtcblxuICAgIGgzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5O1xuICAgIH1cblxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgcGFkZGluZzogMTBweCA0MHB4O1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBXZWJpbmFycyBIb21lXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wYWdlLXRlbXBsYXRlLXdlYmluYXJzLWhvbWUge1xuXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5iYXIge1xuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICBoMiB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDI0cHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogIzUxQUY0NiAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgMCAzMHB4IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogVXBjb21pbmcgV2ViaW5hcnMgKi9cbiAgLnVwY29taW5nIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAzMHB4IDAgMCAwO1xuXG4gICAgLyogd2ViaW5hciAqL1xuICAgIC5wb3N0IHtcbiAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5pbnRybyB7XG5cbiAgICAgICAgLmltZyB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDE1MHB4O1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiA1MDBweDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDAgMjVweDtcblxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgY29sb3I6ICM1NDZiODU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAmLmJ1dHRvbnMge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhLmJ0biB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDEycHggMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmRldGFpbHMge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRib3JkZXItcHJpbWFyeTtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMTVweDtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbjtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDNweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogUmVjZW50ICYgUG9wdWxhciBXZWJpbmFycyAqL1xuICAud2ViaW5hcnNfYXJjaGl2ZV9iYXIge1xuXG4gICAgLnJlY2VudCwgLnBvcHVsYXIge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuXG4gICAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICM1NDZiODUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAyNXB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5wb3B1bGFyIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICB9XG5cbiAgICAvKiB2aWV3IG1vcmUgKi9cbiAgICAudmlld19tb3JlX2J0biB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgcGFkZGluZzogNDBweCAwIDAgMDtcblxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDdweCAxMnB4IDdweCAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgICYuYXJyb3dDbG9zZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk4MHB4KSB7XG5cbiAgICAvKiBVcGNvbWluZyBXZWJpbmFycyAqL1xuICAgIC51cGNvbWluZyB7XG5cbiAgICAgIC5wb3N0IHtcblxuICAgICAgICAuaW50cm8sIC5pbnRybyAuaW1nLCAuaW50cm8gLmluZm8sIC5kZXRhaWxzIHtcbiAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnRybyB7XG5cbiAgICAgICAgICAuaW1nIHtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXRhaWxzIHtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBSZWNlbnQgJiBQb3B1bGFyIFdlYmluYXJzICovXG4gICAgLndlYmluYXJzX2FyY2hpdmVfYmFyIHtcblxuICAgICAgLnJlY2VudCwgLnBvcHVsYXIge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAucG9wdWxhciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBXZWJpbmFycyBBcmNoaXZlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wYWdlLXRlbXBsYXRlLXdlYmluYXItbGlzdCB7XG5cbiAgLyogb3V0IG9mIGJvdW5kcyBoMSAqL1xuICAjY29udGVudC1zaWRlYmFyLXdyYXAgPiAud3JhcCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDQwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XG4gICAgcGFkZGluZzogNDBweCAyMHB4IDAgMjBweDtcblxuICAgIGgxIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgMCA2cHggMCAhaW1wb3J0YW50O1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBGaWx0ZXIgKi9cbiAgI2ZpbHRlci1iYXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAjd2ViaW5hcl9zZWFyY2hmaWx0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAjd2ViaW5hcl9zZWFyY2hfZm9ybSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBmaWVsZHNldCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgbGVnZW5kIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGluaXRpYWw7XG4gICAgICAgICAgICBjbGVhcjogbGVmdDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzgxOUFCNjtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2VzdGVkLWJhYnktYmx1ZTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAxcHggOHB4IDAgMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogN3B4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBzcGFuOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6ICdYJztcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB0b3A6IDRweDtcbiAgICAgICAgICAgICAgbGVmdDogNHB4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjg7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWVsZWN0cmljLWJsdWU7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDE5MHB4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICAgICAgICBtYXJnaW46IDFweCAwIDAgMDtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAxMnB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBXZWJpbmFyIExpc3QgKi9cbiAgLmFydGljbGUtbGlzdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDc1JTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC8qIHNvcnQgKi9cbiAgICAuc29ydF9tZW51IHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjM0Q2MzkwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE0cHg7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luOiAwIDE0cHggMCAwO1xuICAgICAgICBwYWRkaW5nOiA1cHggMCA1cHggMDtcblxuICAgICAgICAmLnNvcnRfYWN0aXZlIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgI0FCQzFEQSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIGxpc3QgKi9cbiAgICAucHJvZHVjdF9pdGVtcyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAucG9zdCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjJweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgcC5wcmVzZW50ZXJzIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogIzU0NkI4NTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmZpbml0ZVNjcm9sbCB7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MHB4KSB7XG5cbiAgICAjZmlsdGVyLWJhcixcbiAgICAud2ViaW5hci1hcmNoaXZlIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIGxhYmVsIHNwYW4ge1xuICAgICAgICB3aWR0aDogNDAwcHggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC53ZWJpbmFyLWFyY2hpdmUge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogUmVzb3VyY2VzIC8gV2ViaW5hcnMgRGV0YWlsIChVcGNvbWluZywgQXJjaGl2ZWQpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS51cGNvbWluZ193ZWJpbmFyLFxuYm9keS5hcmNoaXZlZF93ZWJpbmFyIHtcblxuICAvKiBzb2NpYWwgaWNvbnMgKi9cbiAgLmFkZHRoaXNfdG9vbGJveCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAwcHg7XG4gICAgbWluLWhlaWdodDogMjVweDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuXG4gIH1cblxuICAvKiB0aXRsZSAqL1xuICAjcmVzb3VyY2VfdGl0bGUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAjd2ViaW5hcl9zdWJ0aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogIzZFQTlFRCAhaW1wb3J0YW50O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIDAgNHB4IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMS5lbnRyeS10aXRsZSB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDI2cHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogIzUxQUY0NiAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIG1haW4gY29udGFpbmVyICovXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEwMDBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICNjb250ZW50IHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuLyogcmVzZXQgc3R5bGVzIGZvciBBcmNoaXZlZCBXZWJpbmFycyBhcyBpdCBzaGFyZXMgc2FtZSBib2R5IGNsYXNzIGFzIHdlYmluYXIgZGV0YWlsIGFyY2hpdmVkICovXG5ib2R5LmFyY2hpdmVkX3dlYmluYXIucGFnZS10ZW1wbGF0ZS13ZWJpbmFyLWxpc3Qge1xuXG4gIC8qIG1haW4gY29udGFpbmVyICovXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgbWF4LXdpZHRoOiAxMDQwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDQwcHggMjBweCAhaW1wb3J0YW50O1xuICB9XG5cbn1cblxuLyogVXBjb21pbmcgKi9cbmJvZHkudXBjb21pbmdfd2ViaW5hciB7XG5cbiAgLyogZnVsbCBibGVlZCBibG9ja3MgYXQgYm90dG9tICovXG4gICNjb250ZW50LXNpZGViYXItd3JhcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyogbWFpbiBjb250YWluZXIgKi9cbiAgI21haW5fY29udGVudF93cmFwIHtcblxuICAgIC8qIG1ldGEgKi9cbiAgICAjd2ViaW5hcl9yZWdfaW5mbyB7XG4gICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIC8qIGRhdGUvdGltZSBhbmQgZmVlICovXG4gICAgICAjd2ViaW5hcl9kYXRlX3RpbWUsXG4gICAgICAjd2ViaW5hcl9mZWUge1xuICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgMCAyNHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW4gIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgNHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBhLndlYmluYXJfcmVnaXN0cmF0aW9uX3VybCB7XG4gICAgICAgIGRpc3BsYXk6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAxNTBweCAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDEycHggMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBjb250ZW50ICovXG4gICAgLmVudHJ5IHtcbiAgICAgIGNsZWFyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAud2ViaW5hci12aWRlbyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5zdW1tYXJ5IHtcblxuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB9XG5cbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAvKiBjb250ZW50ICovXG4gICAgICAgIC5kZXRhaWxzIHtcbiAgICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiA0NDBweCAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIHByZXNlbnRlcnMgKi9cbiAgICAgICAgI3dlYmluYXJfcHJlc2VudGVycyB7XG4gICAgICAgICAgY2xlYXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgICB3aWR0aDogMjY1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjNTQ2Qjg1ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAucHJlc2VudGVyIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjVweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgLnByZXNlbnRlcl9uYW1lIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50aHVtYiB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJlc2VudGVyX2luZm8ge1xuICAgICAgICAgICAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgd2lkdGg6IDE1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAjODE5QUI2ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDRweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAucHJlc2VudGVyX25hbWUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBidXR0b25zICovXG4gICAgICAuYnRuLWdyb3VwIHtcbiAgICAgICAgY2xlYXI6IGJvdGggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1pbmRlbnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDEycHggMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogUmVsYXRlZCBTZXJ2aWNlcyAqL1xuICAjcmVsYXRlZC1zZXJ2aWNlcyxcbiAgI3JlbGF0ZWQtcmVzb3VyY2VzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2VzdGVkLWJhYnktYmx1ZTtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAuY29udGFpbmVyIHtcblxuICAgICAgJjpiZWZvcmUsXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICB9XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgIH1cblxuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIG1heC13aWR0aDogMTA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAubW9yZV9saW5rcyB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgdWwuc2VydmljZXMtbGlzdCxcbiAgICB1bC5yZXNvdXJjZXMtbGlzdCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgZ3JpZC1nYXA6IDMwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmLmhpZGRlbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDZweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIC50aHVtYiB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgd2lkdGg6IDM1MHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICBjb2xvcjogIzU0NmI4NTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIFJlbGF0ZWQgUmVzb3VyY2VzICovXG4gICNyZWxhdGVkLXJlc291cmNlcyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0FCQzFEQTtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICBoMiB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNTBweCkge1xuXG4gICAgLmFkZHRoaXNfdG9vbGJveCxcbiAgICAjcmVzb3VyY2VfdGl0bGUsXG4gICAgI21haW5fY29udGVudF93cmFwLFxuICAgICNyZWxhdGVkLXNlcnZpY2VzIC5jb250YWluZXIsXG4gICAgI3JlbGF0ZWQtcmVzb3VyY2VzIC5jb250YWluZXIge1xuICAgICAgd2lkdGg6IDk1JSAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA2NXB4KSB7XG5cbiAgICAjcmVsYXRlZC1zZXJ2aWNlcyxcbiAgICAjcmVsYXRlZC1yZXNvdXJjZXMge1xuXG4gICAgICB1bC5yZXNvdXJjZXMtbGlzdCBsaSB7XG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHggIWltcG9ydGFudDtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aHVtYiB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgICNyZWxhdGVkLXJlc291cmNlcyB7XG5cbiAgICAgIHVsLnJlc291cmNlcy1saXN0IHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyMHB4KSB7XG5cbiAgICAjbWFpbl9jb250ZW50X3dyYXAge1xuXG4gICAgICAuZW50cnkge1xuXG4gICAgICAgIC5zdW1tYXJ5IHtcblxuICAgICAgICAgIC5kZXRhaWxzLFxuICAgICAgICAgICN3ZWJpbmFyX3ByZXNlbnRlcnMge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgI3dlYmluYXJfcHJlc2VudGVycyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIC5wcmVzZW50ZXIge1xuXG4gICAgICAgICAgICAgIC5wcmVzZW50ZXJfaW5mbyB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAwIDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTBweCkge1xuXG4gICAgI3JlbGF0ZWQtc2VydmljZXMgdWwuc2VydmljZXMtbGlzdCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc4MHB4KSB7XG5cbiAgICAjbWFpbl9jb250ZW50X3dyYXAge1xuXG4gICAgICAjd2ViaW5hcl9yZWdfaW5mbyxcbiAgICAgIC5lbnRyeSB7XG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIC5lbnRyeSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcwcHgpIHtcblxuICAgICNyZWxhdGVkLXJlc291cmNlcyB7XG5cbiAgICAgIHVsLnJlc291cmNlcy1saXN0IGxpIC5pbmZvIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgI21haW5fY29udGVudF93cmFwIHtcblxuICAgICAgLmVudHJ5IHtcblxuICAgICAgICAuYnRuLWdyb3VwIHtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qIEFyY2hpdmVkICovXG5ib2R5LmFyY2hpdmVkX3dlYmluYXIge1xuXG4gIC8qIG1haW4gY29udGFpbmVyICovXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG5cbiAgICAvKiBjb250ZW50ICovXG4gICAgLmVudHJ5IHtcblxuICAgICAgJjpiZWZvcmUsXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICB9XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgIH1cblxuICAgICAgY2xlYXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIC8qIHZpZGVvICovXG4gICAgICAud2ViaW5hci12aWRlbyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiAzODVweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDM4NXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAzODVweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnN1bW1hcnkge1xuICAgICAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDU3NXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLmRldGFpbHMge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgaDQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtbGlnaHQtYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgNHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogIzU0NkI4NSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAyNHB4IDAgOHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAjNTQ2Qjg1ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIHByZXNlbnRlcnMgKi9cbiAgICAgICAgI3dlYmluYXJfcHJlc2VudGVycyB7XG4gICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgICAgZ3JpZC1nYXA6IDIwcHg7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItcHJpbWFyeTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5O1xuICAgICAgICAgIG1hcmdpbjogMjBweCAwIDIwcHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMCAyMHB4IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgIC5wcmVzZW50ZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAucHJlc2VudGVyX25hbWUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcmVzZW50ZXJfaW5mbyB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB3aWR0aDogMTYwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgY29sb3I6ICM4MTlBQjYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgNHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgIC5wcmVzZW50ZXJfbmFtZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIG1hdGVyaWFscyAqL1xuICAgICAgICAjd2ViaW5hci1tYXRlcmlhbHMge1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogIzU0NkI4NSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLndlYmluYXJfbWF0ZXJpYWxzX2NvbnRlbnQge1xuXG4gICAgICAgICAgICBpZnJhbWUge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBidXR0b25zICovXG4gICAgICAuYnRuLWdyb3VwIHtcbiAgICAgICAgY2xlYXI6IGJvdGggIWltcG9ydGFudDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogNTc1cHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1pbmRlbnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDEycHggMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA1MHB4KSB7XG5cbiAgICAuYWRkdGhpc190b29sYm94LFxuICAgICNyZXNvdXJjZV90aXRsZSxcbiAgICAjbWFpbl9jb250ZW50X3dyYXAsXG4gICAgI3JlbGF0ZWQtc2VydmljZXMgLmNvbnRhaW5lcixcbiAgICAjcmVsYXRlZC1yZXNvdXJjZXMgLmNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogOTUlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgI21haW5fY29udGVudF93cmFwIHtcblxuICAgICAgLmVudHJ5IHtcblxuICAgICAgICAud2ViaW5hci12aWRlbyxcbiAgICAgICAgLnN1bW1hcnkge1xuICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdW1tYXJ5IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAjd2ViaW5hcl9wcmVzZW50ZXJzIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXG4gICAgICAgICAgICAucHJlc2VudGVyIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5wcmVzZW50ZXJfaW5mbyB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xuXG4gICAgI21haW5fY29udGVudF93cmFwIHtcblxuICAgICAgLmVudHJ5IHtcblxuICAgICAgICAuc3VtbWFyeSB7XG5cbiAgICAgICAgICAjd2ViaW5hcl9wcmVzZW50ZXJzIHtcblxuICAgICAgICAgICAgLnByZXNlbnRlciB7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAucHJlc2VudGVyX2luZm8ge1xuXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzBweCkge1xuXG4gICAgI21haW5fY29udGVudF93cmFwIHtcblxuICAgICAgLmVudHJ5IHtcblxuICAgICAgICAuYnRuLWdyb3VwIHtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbmJvZHkudXBjb21pbmdfd2ViaW5hciAjcmVsYXRlZC1yZXNvdXJjZXMge1xuXG4gIHVsLnJlc291cmNlcy1saXN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG5cbiAgICBsaSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgLnRodW1iIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDIwJSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogMTAwcHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwIDIwcHggMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC5pbmZvIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDcwJSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNjVweCkge1xuXG4gICAgdWwucmVzb3VyY2VzLWxpc3Qge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkwcHgpIHtcblxuICAgIHVsLnJlc291cmNlcy1saXN0IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBSJkQgQWxlcnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcmRhbGVydC1ob21lIHtcblxuICAjY29udGVudCB7XG5cbiAgICBoMiB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8qIHNsaWRlc2hvdyAqL1xuICAgICNzcG90bGlnaHRfc2xpZGVyIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5ieC12aWV3cG9ydCB7XG4gICAgICAgIGhlaWdodDogMzcwcHggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLyogcGFnaW5hdGlvbiAqL1xuICAgICAgLmJ4LWNvbnRyb2xzIHtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAzMjVweDtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuXG4gICAgICAgIC5ieC1wYWdlciB7XG4gICAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgLmJ4LXBhZ2VyLWl0ZW0gYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvc2xpZGVyX2NvbnRyb2xzX3Nwcml0ZV9ibHVlLnBuZ1wiKSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogc2xpZGUgKi9cbiAgICAgIC5zbGlkZSB7XG5cbiAgICAgICAgLyogcGhvdG8gKi9cbiAgICAgICAgLmltZyB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDY1MHB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogaW5mbyAqL1xuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIHdpZHRoOiAzMjVweDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjODE5QUI2O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgICAgICBtYXJnaW46IDNweCAwIDZweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIHByb21vICovXG4gICAgLnByb21vIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICBtYXJnaW46IDQwcHggMCA0MHB4IDA7XG4gICAgICBwYWRkaW5nOiAyMHB4IDIwcHggMTVweCAyMHB4O1xuXG4gICAgICBwIHtcbiAgICAgICAgd2lkdGg6IDcwJSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24td3JpdGUucG5nXCIpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCA4NXB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYnV0dG9uIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgIG1hcmdpbjogMjhweCA1MHB4IDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYS5idG4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMTJweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogQWRkaXRpb25hbCBSJkQgQWxlcnQgQXJ0aWNsZXMgKi9cbiAgICAuYWRkaXRpb25hbC1yZGFsZXJ0LWFydGljbGVzIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnk7XG4gICAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgICBwYWRkaW5nOiAwIDAgNDBweCAwO1xuXG4gICAgICB1bC5hZGRsX3JkYWxlcnRzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpe1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDMzLjMlO1xuXG4gICAgICAgICAgLyogSUUxMCwgSUUxMSAqL1xuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgICAgICAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMjBweDtcbiAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICM4MTlBQjY7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDE1cHggMCA4cHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cblxuICAgICAgcCB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJi5idXR0b24ge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGEuYnRuIHtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDEycHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBSJkQgQWxlcnQgaW4gUHJpbnQgKi9cbiAgICAucmRhbGVydC1pbi1wcmludCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBpbWcudGh1bWIge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAwIDIwcHggMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICBoMiB7XG4gICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJi5idXR0b24ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbjogMzBweCAwIDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYS5idG4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgLTE3MXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA0NXB4KSB7XG5cbiAgICAgICNzcG90bGlnaHRfc2xpZGVyIHtcblxuICAgICAgICAuYngtdmlld3BvcnQge1xuICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDYwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ4LWNvbnRyb2xzIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpZGUge1xuXG4gICAgICAgICAgLmltZyxcbiAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzAwcHgpIHtcblxuICAgICAgLnByb21vIHtcblxuICAgICAgICBwIHtcbiAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmLmJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmFkZGl0aW9uYWwtcmRhbGVydC1hcnRpY2xlcyB7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU4NXB4KSB7XG5cbiAgICAgIC5yZGFsZXJ0LWluLXByaW50IHtcblxuICAgICAgICBwLmJ1dHRvbiB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiAzMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICBhLmJ0biB7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogUmVzb3VyY2VzIC8gUiZEIEFsZXJ0IEFyY2hpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcmRhbGVydC1saXN0IHtcblxuICAjY29udGVudCB7XG5cbiAgICBoMSB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8qIEFkZGl0aW9uYWwgUiZEIEFsZXJ0IEFydGljbGVzICovXG4gICAgLmFydGljbGUtbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLnBvc3Qge1xuICAgICAgICBmbGV4OiAxIDEgMjUwcHg7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgLyogZmxleCBmYWxsYmFjayAqL1xuICAgICAgICBAc3VwcG9ydHMgbm90IChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAzMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjJGNztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgICAgcGFkZGluZzogMzBweDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHAubWV0YSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICM4MTlBQjY7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luOiAxNXB4IDAgOHB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIHBhZ2luYXRpb24gKi9cbiAgICAgIC5uYXZpZ2F0aW9uIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMzBweCAwIDAgMDtcblxuICAgICAgICAubmF2LWxpbmtzIHtcblxuICAgICAgICAgIGEsIHNwYW4uY3VycmVudCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMTBweCAwIDEwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAmLnByZXYge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tYXJyb3ctbGVmdC1wdXJwbGUucG5nKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm5leHQge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tYXJyb3ctcmlnaHQtcHVycGxlLnBuZykgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIHNwYW4uY3VycmVudCB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjRiMWE2O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZjJmNztcbiAgICAgICAgICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcblxuICAgICAgLmFydGljbGUtbGlzdCB7XG5cbiAgICAgICAgLnBvc3Qge1xuXG4gICAgICAgICAgLyogZmxleCBmYWxsYmFjayAqL1xuICAgICAgICAgIEBzdXBwb3J0cyBub3QgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgICAgIHdpZHRoOiA0NSU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcblxuICAgICAgLmFydGljbGUtbGlzdCB7XG5cbiAgICAgICAgLnBvc3Qge1xuXG4gICAgICAgICAgLyogZmxleCBmYWxsYmFjayAqL1xuICAgICAgICAgIEBzdXBwb3J0cyBub3QgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBSZXNvdXJjZXMgLyBSJkQgQWxlcnQgQXJ0aWNsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnNpbmdsZS1yZF9hbGVydF9vbmxpbmUge1xuXG4gICNjb250ZW50IHtcblxuICAgIC5zb2NpYWwtYmFyIHtcbiAgICAgIGZsb2F0OiByaWdodDtcblxuICAgICAgYSB7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5lbnRyeS1jb250ZW50IGgyIHtcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjODE5QUI2ICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4ICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8qIGludHJvICovXG4gICAgLmludHJvIHtcblxuICAgICAgLyogcGhvdG8gKi9cbiAgICAgIC5wb3N0X2ltYWdlIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA2NTBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAvKiBCcmllZmx5ICovXG4gICAgICAudG9jIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogMzQwcHg7XG4gICAgICAgIGhlaWdodDogMzcwcHg7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjJGNztcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0FCQzFEQSAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDJweCAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAudG9jX2NvbnRlbnQge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1hcnJvdy1yaWdodC1ncmVlbi5wbmdcIikgbm8tcmVwZWF0IDAgM3B4O1xuICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xuXG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBjb250YWluZXIgKi9cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbjogMzBweCAwIDAgMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC8qIHNpZGViYXIgKi9cbiAgICAgIC5yZGFsZXJ0LXNpZGViYXIge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAyMzBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC53aWRnZXRfdGV4dCB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAvKiBjb250YWN0ICovXG4gICAgICAgICNzaWRlYmFyX3Byb2plY3RfY29udGFjdCB7XG5cbiAgICAgICAgICAud2lkZ2V0LXdyYXAge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5jb250YWN0SW5mbyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgICAgICAgICAgIHdpZHRoOiAyMzBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDQ1cHggMCA0MHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiA4NXB4IDMwcHggMjBweCAzMHB4O1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiAtNDVweDtcbiAgICAgICAgICAgICAgbGVmdDogNTRweDtcbiAgICAgICAgICAgICAgd2lkdGg6IDExOXB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDExOXB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1tb3JlLWluZm8taS5wbmdcIik7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qIG5hbWUgKi9cbiAgICAgICAgICAgIHAubmFtZSB7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qIHBob25lICovXG4gICAgICAgICAgICBwLnBob25lIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgY29sb3I6ICM4MTlBQjYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICBzcGFuLmljb24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tcGhvbmUucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwLmVtYWlsIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4IDVweCAxMHB4O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBtYXJnaW46IDAgMCA2cHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIGNvbnRlbnQgKi9cbiAgICAgIC5yZGFsZXJ0LWNvbnRlbnQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiA3NCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAvKiByZW1vdmluZyAqL1xuICAgICAgICBwLmludHJvIHtcbiAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICM1NDZCODUgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMjVweCAwIDEwcHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGJsb2NrcXVvdGUge1xuICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAxMjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNFRUYyRjcgdXJsKFwiLi4vaW1hZ2VzL2ljb24tcXVvdGUtd2hpdGUucG5nXCIpIG5vLXJlcGVhdCAxNXB4IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDIwcHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDE3MHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogUmVsYXRlZCBSZXNvdXJjZXMgKi9cbiAgI3JlbGF0ZWQtcmVzb3VyY2VzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQUJDMURBO1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgIC5jb250YWluZXIge1xuXG4gICAgICAmOmJlZm9yZSxcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIH1cblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgfVxuXG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgbWF4LXdpZHRoOiAxMDQwcHggIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAyMHB4IDIwcHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDAgMTVweCAwO1xuICAgIH1cblxuICAgIC5tb3JlX2xpbmtzIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICB1bC5yZXNvdXJjZV9saXN0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgIGdyaWQtZ2FwOiAzMHB4O1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJi5oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICBsaSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IC8qIGNzcyBncmlkIGZhbGxiYWNrICovXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICBmbG9hdDogbGVmdDsgLyogY3NzIGdyaWQgZmFsbGJhY2sgKi9cbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMjBweCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgY29sb3I6ICM1NDZiODU7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDQwcHgpIHtcblxuICAgICAgICAudGh1bWIge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTBweCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuYm9keS5zaW5nbGUtcmRfYWxlcnRfb25saW5lIHtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDUwcHgpIHtcblxuICAgICNjb250ZW50IHtcblxuICAgICAgLmludHJvIHtcblxuICAgICAgICAucG9zdF9pbWFnZSxcbiAgICAgICAgLnRvYyB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAudG9jIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5jb250YWluZXIge1xuXG4gICAgICAgIC5yZGFsZXJ0LXNpZGViYXIsXG4gICAgICAgIC5yZGFsZXJ0LWNvbnRlbnQge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbmJvZHkuc2luZ2xlLXJkX2FsZXJ0X29ubGluZSAjcmVsYXRlZC1yZXNvdXJjZXMge1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ1M3B4KSB7XG5cbiAgICB1bC5yZXNvdXJjZV9saXN0IHtcblxuICAgICAgbGkge1xuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlcyAvIFNpZ251cCBNb2RhbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNzaWdudXAtbW9kYWwge1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM0Y2NDhGO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBib3gtc2hhZG93OiA4cHggOHB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgcGFkZGluZzogMDtcblxuICAvKiBpbml0aWFsbHkgaGlkZSAqL1xuICAubWt0by1mb3JtLXdyYXAsXG4gIC5jb250LWRsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLyogaGVhZGVyICovXG4gIC5tb2RhbC1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxODM5NUY7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEycHg7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEycHg7XG5cbiAgICAucmVtb2RhbC1jbG9zZSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjQ0YTc3O1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEycHg7XG4gICAgICBjb2xvcjogIzVhNzk5YztcbiAgICAgIGhlaWdodDogNDJweDtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBmb250LXNpemU6IDQycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBzdWJzY3JpYmUgY29udGVudCAqL1xuICAuc3Vic2NyaWJlLWRpYWxvZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMzBweCA0MHB4O1xuXG4gICAgLml0ZW0ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgbWluLXdpZHRoOiAyNjRweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbjogMCAwIDI1cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICYubm90ZSB7XG4gICAgICAgIG1heC13aWR0aDogMzc1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gICAgICAgIGNvbG9yOiAjQkFEOEZCO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuXG4gICAgICAgIGEuc3ViLW5vIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQkFEOEZCO1xuICAgICAgICAgIGNvbG9yOiAjQkFEOEZCO1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAuYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzZFQTlFRDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDEwcHggNDBweDtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cblxuICB9XG5cbiAgLyogZm9ybSAqL1xuICAubWt0by1mb3JtLXdyYXAge1xuICAgIGJvcmRlci10b3A6IDZweCBzb2xpZCAjNTk3OTllO1xuICAgIG1hcmdpbjogMCA0MHB4O1xuICAgIHBhZGRpbmc6IDMwcHggMDtcblxuICAgIGZvcm0ge1xuICAgICAgd2lkdGg6IDg1JSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgIC5ta3RvRm9ybUNvbCB7XG4gICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAubWt0b0ZpZWxkV3JhcCB7XG4gICAgICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIGxhYmVsICovXG4gICAgbGFiZWwge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbjogMCAwIDZweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvKiBpbnB1dCAqL1xuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDRweCAxMnB4O1xuICAgIH1cblxuICAgIC8qIHN1Ym1pdCAqL1xuICAgIC5ta3RvQnV0dG9uUm93IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIC5ta3RvQnV0dG9uV3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNkVBOUVEICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0NXB4KSB7XG5cbiAgICAuc3Vic2NyaWJlLWRpYWxvZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgLml0ZW0ge1xuXG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBXZXN0RWQgRXZlbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wYWdlLXdlc3RlZC1ldmVudHMsXG5ib2R5LnBhZ2Utd2VzdGVkLXBhc3QtZXZlbnRzIHtcblxuICAvKiByZXF1aXJlZCB0byBwcmV2ZW50IGZpbHRlciBmcm9tIGJlaW5nIGN1dCBvZmYgYnkgZm9vdGVyIHdoZW4gcGFnZSBpcyBzaG9ydCAqL1xuICAjaW5uZXIgI2NvbnRlbnQge1xuICAgIG1pbi1oZWlnaHQ6IDQwMHB4O1xuICB9XG5cbiAgaDIuZXZlbnQtd2FycCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxMnB4IDAgMCAwO1xuXG4gICAgYSB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gIH1cblxuICAjY29udGVudCBociB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBtYXJnaW46IDY1cHggMCAzMHB4IDA7XG4gIH1cblxuICAvKiBldmVudCB0eXBlIGZpbHRlciAqL1xuICAuZXZlbnQtZmlsdGVyLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gICAgYm94LXNoYWRvdzogNHB4IDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBmb3JtI2V2ZW50LWZpbHRlciB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBoNCB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XG5cbiAgICAgICAgc3Bhbi5hcnJvdyB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxN3B4O1xuICAgICAgICAgIGhlaWdodDogMTFweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1hcnJvdy1kb3duLXJlc291cmNlcy1hb3ctZmlsdGVyLnBuZ1wiKSBuby1yZXBlYXQgdG9wIHJpZ2h0O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDAgNXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmZpbHRlcnMtY2xvc2VkIHNwYW4uYXJyb3cge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuZm9ybS1pbm5lciB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmM2ZiO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgOHB4IDAgMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAjNUE3OTlDO1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgICNldmVudC1maWx0ZXItYnRuLXdyYXAge1xuICAgICAgICAgIGJvcmRlci10b3A6IDZweCBzb2xpZCAjZWVmM2ZiO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgI2V2ZW50LWZpbHRlci1idG4ge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogZmlsdGVyIChzdWJuYXYpICovXG4gIC8vIC53ZXN0ZWQtZXZlbnQtZmlsdGVyIHtcbiAgLy8gICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gIC8vICAgcGFkZGluZzogMDtcblxuICAvLyAgIHAge1xuICAvLyAgICAgbWFyZ2luOiAwO1xuICAvLyAgICAgcGFkZGluZzogMDtcblxuICAvLyAgICAgYSB7XG4gIC8vICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLy8gICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAvLyAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgLy8gICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgLy8gICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgLy8gICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAvLyAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeSAhaW1wb3J0YW50O1xuICAvLyAgICAgICBtYXJnaW46IDAgMTVweCAwIDA7XG4gIC8vICAgICAgIHBhZGRpbmc6IDVweCAwIDVweCAwO1xuXG4gIC8vICAgICAgICY6aG92ZXIge1xuICAvLyAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgLy8gICAgICAgfVxuXG4gIC8vICAgICAgICYub24ge1xuICAvLyAgICAgICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAkYm9yZGVyLXByaW1hcnkgIWltcG9ydGFudDtcbiAgLy8gICAgICAgfVxuXG4gIC8vICAgICB9XG5cbiAgLy8gICB9XG5cbiAgLy8gfVxuXG4gIC8qIGV2ZW50IGxpc3QgKi9cbiAgLmV2ZW50LWxpc3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLmV2ZW50LXBvc3Qge1xuICAgICAgbWFyZ2luOiAwIDAgMzVweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLmV2ZW50LXBvc3QtdGh1bWJuYWlsIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxNzVweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDI1cHggMCAwO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmV2ZW50LXBvc3QtY29udGVudCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNTUwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgN3B4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuZXZlbnQtcG9zdC1tZXRhIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogMjI1cHg7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5O1xuICAgICAgICBtYXJnaW46IDAgMCAwIDE1cHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDE1cHg7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjc1O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogcGFnaW5hdGlvbiAqL1xuICAucGFnaW5hdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgaDIge1xuICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5uYXYtbGlua3Mge1xuXG4gICAgICBhLCBzcGFuLmN1cnJlbnQge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBtYXJnaW46IDAgNXB4IDAgNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICYucHJldiB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb24tYXJyb3ctbGVmdC1wdXJwbGUucG5nKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5uZXh0IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1hcnJvdy1yaWdodC1wdXJwbGUucG5nKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgc3Bhbi5jdXJyZW50IHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2I0YjFhNjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZjJmNztcbiAgICAgICAgcGFkZGluZzogMnB4IDZweDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAwMHB4KSB7XG5cbiAgICAuZXZlbnQtbGlzdCB7XG5cbiAgICAgIC5ldmVudC1wb3N0IHtcblxuICAgICAgICAuZXZlbnQtcG9zdC10aHVtYm5haWwge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuZXZlbnQtcG9zdC1jb250ZW50IHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ldmVudC1wb3N0LW1ldGEge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5O1xuICAgICAgICAgIG1hcmdpbjogMTVweCAwIDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMCAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDUwcHgpIHtcblxuICAgIC5ldmVudC1maWx0ZXItY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuXG4gICAgICAjZXZlbnQtZmlsdGVyLWJ0bi13cmFwIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFweCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgaDIuZXZlbnQtd2FycCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICB9XG5cbiAgICAjY29udGVudCBociB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFdlc3RFZCBFdmVudHMgLyBEZXRhaWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnNpbmdsZS13ZXN0ZWRfZXZlbnQge1xuXG4gIC8qIGNvbCAxIC0gdGh1bWJuYWlsICovXG4gIC53ZXN0ZWQtZXZlbnQtdGh1bWJuYWlsIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjI1cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAucG9zdF9pbWFnZSB7XG4gICAgICB3aWR0aDogMjI1cHg7XG4gICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBjb2wgMiAtIGNvbnRlbnQgKi9cbiAgLndlc3RlZC1ldmVudC1jb250ZW50IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBoMiB7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogMjhweCAhaW1wb3J0YW50O1xuXG4gICAgICAmLmJ0biB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDMwcHggMTBweCAxNXB4IDAgIWltcG9ydGFudDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogN3B4IDEycHggN3B4IDEycHggIWltcG9ydGFudDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XG4gICAgfVxuXG4gIH1cblxuICAvKiBjb2wgMyAtIHNpZGViYXIgKi9cbiAgLndlc3RlZC1ldmVudC1zaWRlYmFyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDIyNXB4O1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5O1xuICAgIG1hcmdpbjogMCAwIDAgMTVweDtcbiAgICBwYWRkaW5nOiAwIDAgMCAxNXB4O1xuXG4gICAgaDMge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuNzU7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuXG4gICAgLndlc3RlZC1ldmVudC10aHVtYm5haWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAud2VzdGVkLWV2ZW50LWNvbnRlbnQge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLndlc3RlZC1ldmVudC1zaWRlYmFyIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5O1xuICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xuICAgICAgcGFkZGluZzogMTVweCAwIDAgMDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIDIwMjAtMDYtMDMgRUxTV0QgU3VtbWl0IDIwMjAgU2Vzc2lvbnMgKi9cbiAgLmVsc3dkLXN1bW1pdC0yMDIwIHtcblxuICAgIC5zZXNzaW9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOGVmZjY7XG4gICAgICBtYXJnaW46IDAgMCAycHggMDtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCA1cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICYuZGF0ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlZmY2O1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxMnB4O1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTJweDtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMnB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMjBweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIGg1IHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjNTQ2Qjg1O1xuICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBoNiB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICM1NDZCODU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luOiAyMHB4IDAgNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHAge1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwIDAgMCAyMHB4O1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICBtYXJnaW46IDVweCAwIDAgMjBweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG5cblxuLyogV2VzdEVkIE5ld3MgJiBSZXNlYXJjaCBCbG9nIChhbmQgdGFnIHZpZXcpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wYWdlLXdlc3RlZC1uZXdzLFxuYm9keS50YWcsXG5ib2R5LnBhZ2UtcmVzZWFyY2gtYmxvZyB7XG5cbiAgaDEuZW50cnktY2hpbGQtdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvKiBmaWx0ZXIgKi9cbiAgLndlc3RlZC1uZXdzLWZpbHRlciB7XG4gICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgMjBweCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwIDVweCAwO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuXG4gICAgICAgICYub24ge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAkYm9yZGVyLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIHBvc3RzICovXG4gIC5uZXdzLWxpc3Qge1xuXG4gICAgLyogc2luZ2xlIHBvc3QgKi9cbiAgICAubmV3cy1wb3N0IHtcbiAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5uZXdzLXBvc3QtdGh1bWJuYWlsIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5uZXdzLXBvc3QtY29udGVudCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMTc1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgdGltZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDRweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAmLnRhZ3Mge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTRweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIG1hcmdpbjogMTVweCAwIDAgMDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDEwcHggMTBweCAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjODE5QUI2ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VFRjJGNztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJweCAxMHB4O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgaDMudGFnLW5hbWUge1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjODE5QUI2O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJUYWcgPiBcIjtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIHBhZ2luYXRpb24gKi9cbiAgLnBhZ2luYXRpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDM1cHggMCAxMHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICYucHJldiwgJi5uZXh0IHtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgIH1cblxuICAgICAgJi5wcmV2IHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWFycm93LWxlZnQtcHVycGxlLnBuZykgbm8tcmVwZWF0IDAgMDtcbiAgICAgIH1cblxuICAgICAgJi5uZXh0IHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWFycm93LXJpZ2h0LXB1cnBsZS5wbmcpIG5vLXJlcGVhdCAwIDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBzcGFuLmN1cnJlbnQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2I0YjFhNjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWYyZjc7XG4gICAgICBwYWRkaW5nOiAycHggNnB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbjogMCA2cHg7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDUwcHgpIHtcblxuICAgIC53ZXN0ZWQtbmV3cy1maWx0ZXIge1xuXG4gICAgICBwIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgJi5vbiB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLm5ld3MtbGlzdCB7XG5cbiAgICAgIC5uZXdzLXBvc3Qge1xuXG4gICAgICAgIC5uZXdzLXBvc3QtdGh1bWJuYWlsLFxuICAgICAgICAubmV3cy1wb3N0LWNvbnRlbnQge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBXZXN0RWQgTmV3cyAvIERldGFpbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkucG9zdC10ZW1wbGF0ZS1kZWZhdWx0IHtcblxuICAuZW50cnktY29udGVudCB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLyogaW1hZ2UgY29udGFpbmVyICovXG4gIC5zaW5nbGUtaW1nIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIHNvY2lhbCBpY29ucyAqL1xuICAuc29jaWFsLWJhciB7XG4gICAgbWluLWhlaWdodDogMjVweDtcbiAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5hZGR0aGlzX2RlZmF1bHRfc3R5bGUge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIGNvbnRlbnQgY29udGFpbmVyICovXG4gIC5zaW5nbGUtbWFpbiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiA3MjVweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbjtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC8qIGNhdGVnb3J5ICovXG4gICAgICAmLmNhdCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogIzgxOUFCNjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgNXB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBkYXRlICovXG4gICAgcC5wb3N0LWRhdGUge1xuICAgICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR3ZXN0ZWQtYmFieS1ibHVlO1xuICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAxNXB4IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvKiB0YWdzICovXG4gICAgcC50YWdzIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdlc3RlZC1iYWJ5LWJsdWU7XG4gICAgICBmb250LXNpemU6IDExcHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luOiAwIDAgMTVweCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwIDAgMTBweCAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDEwcHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogIzgxOUFCNiAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nOiAycHggMTBweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBidXR0b24gKi9cbiAgICBwLm1vcmUge1xuICAgICAgbWFyZ2luOiAxMHB4IDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDMwcHgpIHtcblxuICAgIC8qIGltYWdlIGNvbnRhaW5lciAqL1xuICAgIC5zaW5nbGUtaW1nLFxuICAgIC5zaW5nbGUtbWFpbiB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogV2VzdEVkIEluc2lnaHRzLCBNYWtpbmcgYSBEaWZmZXJlbmNlIChTaGFyZWQpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5jYXRlZ29yeS13ZXN0ZWQtaW5zaWdodHMsXG5ib2R5LmNhdGVnb3J5LW1ha2luZy1hLWRpZmZlcmVuY2Uge1xuXG4gIC5lbnRyeS1jb250ZW50IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cblxuICAucG9zdC1saXN0IHtcblxuICAgIC5wb3N0IHtcbiAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5wb3N0LXRodW1ibmFpbCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5wb3N0LWNvbnRlbnQge1xuICAgICAgICBtYXJnaW46IDAgMCAwIDE3NXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIHRpbWUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgICAgICAgY29sb3I6ICM2RUE5RUQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBtYXJnaW46IDAgMCA0cHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgcC50YWdzIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIHBhZ2luYXRpb24gKi9cbiAgICAucGFnaW5hdGlvbiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDM1cHggMCAxMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIG1hcmdpbjogMCA2cHg7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgJi5wcmV2LCAmLm5leHQge1xuICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLnByZXYge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1hcnJvdy1sZWZ0LXB1cnBsZS5wbmcpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLm5leHQge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1hcnJvdy1yaWdodC1wdXJwbGUucG5nKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgc3Bhbi5jdXJyZW50IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjRiMWE2O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmMmY3O1xuICAgICAgICBwYWRkaW5nOiAycHggNnB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIG1hcmdpbjogMCA2cHg7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NTBweCkge1xuXG4gICAgICAucG9zdCB7XG5cbiAgICAgICAgLnBvc3QtdGh1bWJuYWlsIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3N0LWNvbnRlbnQge1xuICAgICAgICAgIG1hcmdpbjogMjBweCAwIDAgMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qIE1ha2luZyBhIERpZmZlcmVuY2UgLyBMaXN0ICovXG5ib2R5LmNhdGVnb3J5LW1ha2luZy1hLWRpZmZlcmVuY2Uge1xuXG4gIC5wb3N0LWxpc3Qge1xuXG4gICAgLnBvc3Qge1xuXG4gICAgICAucG9zdC10aHVtYm5haWwge1xuICAgICAgICBtYXJnaW46IC01cHggMCAwIC01cHg7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAtd2Via2l0LWNsaXAtcGF0aDogY2lyY2xlKDgwcHggYXQgY2VudGVyKTtcbiAgICAgICAgICAgIGNsaXAtcGF0aDogY2lyY2xlKDgwcHggYXQgY2VudGVyKTtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4MHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuLyogTWFraW5nIGEgRGlmZmVyZW5jZSAvIERldGFpbCAqL1xuYm9keS5zaW5nbGUtcG9zdC5tYWtpbmctYS1kaWZmZXJlbmNlIHtcblxuICAuc2luZ2xlLWltZyB7XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBjbGlwLXBhdGg6IGNpcmNsZSgyNTBweCBhdCBjZW50ZXIpO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDI1MHB4O1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBTdWJzY3JpYmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnN1YnNjcmliZSAjaW5uZXIgLmVudHJ5LWNvbnRlbnQge1xuXG4gIC8qIExlZnQgKi9cbiAgLmNvbExlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzNSU7XG4gICAgbWluLXdpZHRoOiAzMjBweDtcbiAgICBtYXgtd2lkdGg6IDMyMHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgaHIge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBib3JkZXI6IG5vbmUgMDtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjRTNFQ0Y5O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIG1hcmdpbjogMTVweCAwIDE1cHggMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDYwJSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHVsLnNvY2lhbCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB3aWR0aDogNDAlO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICAgIGhlaWdodDogMzZweDtcblxuICAgICAgICAgICYudHdpdHRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtdHdpdHRlci1saXRlLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLWZhY2Vib29rLWxpdGUucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5saW5rZWRpbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtbGlua2VkaW4tbGl0ZS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIFJpZ2h0ICovXG4gIC5jb2xSaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiA2NSU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAvKiBNYXJrZXRvIGZvcm0gKi9cbiAgICBmb3JtLm1rdG9Gb3JtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAubWt0b0h0bWxUZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLm1rdG9Gb3JtUm93IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAvKiBsYWJlbCAqL1xuICAgICAgbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgNnB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC8qIGlucHV0ICovXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICAgIHNlbGVjdCB7XG4gICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiA0cHggMTJweDtcbiAgICAgIH1cblxuICAgICAgLyogY2hlY2tib3ggbGlzdCAqL1xuICAgICAgLm1rdG9DaGVja2JveExpc3Qge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMCAwIDA7XG5cbiAgICAgICAgLyogbm90ZTogY2FuJ3QgcmVhbGx5IHVzZSBjdXN0b20gY2hlY2tib3ggc3R5bGluZyBoZXJlIHNlZW4gZWxzZXdoZXJlIGluIHNpdGUgKi9cbiAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgIG1hcmdpbjogM3B4IDhweCAxMnB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIHN1Ym1pdCAqL1xuICAgICAgLm1rdG9CdXR0b25Sb3cge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogNTgwcHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAubWt0b0J1dHRvbldyYXAge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC5idXN0LW91dCB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cblxuICAvKiBFLUJ1bGxldGluIEFyY2hpdmUgKi9cbiAgLmVidWxsZXRpbi1hcmNoaXZlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgcC5zaG93aGlkZSB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICBhLmJ0biB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWM7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDdweCAxMnB4IDdweCAxMnB4O1xuICAgICAgfVxuXG4gICAgICAmLmFycm93Q2xvc2Uge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgdGFibGUge1xuXG4gICAgICB0ZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGNvbG9yOiAjNTQ2Yjg1O1xuICAgICAgICBwYWRkaW5nOiAwIDAgMTRweCAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5ODBweCkge1xuXG4gICAgLmNvbExlZnQsXG4gICAgLmNvbFJpZ2h0IHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtaW4td2lkdGg6IG5vbmU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG5cbiAgICAgIHAsIHVsLnNvY2lhbCB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1ODVweCkge1xuXG4gICAgLmNvbFJpZ2h0IGZvcm0ubWt0b0Zvcm0gLm1rdG9CdXR0b25Sb3cge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogQ29udGFjdCBVc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuY29udGFjdHVzICNpbm5lciAuZW50cnktY29udGVudCB7XG5cbiAgLyogZm9ybSAqL1xuICAuY29udGFjdC11cy1mb3JtIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNjUlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgZm9ybSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAubWt0b09mZnNldCB7XG4gICAgICAgIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIC5ta3RvQnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogOHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogc2lkZWJhciAqL1xuICAuY29udGFjdC11cy1zaWRlYmFyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDI5JTtcbiAgICBtYXJnaW46IDE1cHggMCAwIDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5pdGVtIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQUJDMURBO1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMCAwIDIwcHggMDtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgcC5lYiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDEwcHggMCAwIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICB1bC5zb2NpYWwge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luOiAxMHB4IDAgMCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgICBoZWlnaHQ6IDM2cHg7XG5cbiAgICAgICAgICAmLnR3aXR0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLXR3aXR0ZXItbGl0ZS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmZhY2Vib29rIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1mYWNlYm9vay1saXRlLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYubGlua2VkaW4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLWxpbmtlZGluLWxpdGUucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NDVweCkge1xuXG4gICAgLmNvbnRhY3QtdXMtZm9ybSxcbiAgICAuY29udGFjdC11cy1zaWRlYmFyIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIHAuZWIsXG4gICAgICB1bC5zb2NpYWwge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMjBweCAwIDAgMDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcblxuICAgIGZvcm0ubWt0b0Zvcm0gLm1rdG9Gb3JtUm93IC5ta3RvRm9ybUNvbCxcbiAgICBmb3JtLm1rdG9Gb3JtIC5ta3RvRmllbGRXcmFwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBDb250YWN0IFVzIEZvcm1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1uby1mb3JtLWZvb3RlciB7XG5cbiAgLyogTWFya2V0byBmb3JtICovXG4gIGZvcm0ubWt0b0Zvcm0ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMzRjY0OEY7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLm1rdG9IdG1sVGV4dCB7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLm1rdG9Gb3JtUm93IHtcbiAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6bnRoLWNoaWxkKDUpIC5ta3RvRm9ybUNvbCAubWt0b0ZpZWxkV3JhcCB7XG4gICAgICAgIHdpZHRoOiA5Ny41JSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAubWt0b0Zvcm1Db2wge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgfVxuXG4gICAgICAvKiBJIGhhdmUgYSBxdWVzdGlvbiBvciBjb21tZW50IGFib3V0ICovXG4gICAgICAmOm50aC1jaGlsZCg1KSAubWt0b0Zvcm1Db2wge1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAubWt0b0ZpZWxkV3JhcCB7XG4gICAgICAgICAgd2lkdGg6IDk4JTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIENvbW1lbnQgKi9cbiAgICAgICY6bnRoLWNoaWxkKDYpIC5ta3RvRm9ybUNvbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC5ta3RvRmllbGRXcmFwIHtcbiAgICAgICAgICB3aWR0aDogOTcuNSU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBjaGVja2JveCAqL1xuICAgICAgJjpudGgtY2hpbGQoNykgLm1rdG9Gb3JtQ29sIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm1rdG9DaGVja2JveExpc3Qge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMTBveDtcbiAgICAgICAgICB3aWR0aDogMzBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5ta3RvRmllbGRXcmFwIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuXG4gICAgLyogbGFiZWwgKi9cbiAgICBsYWJlbCB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luOiAwIDAgNnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8qIGlucHV0ICovXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogIzNGNjQ4RjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDRweCAxMnB4O1xuICAgIH1cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAubWt0b0FzdGVyaXgge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8qIGNoZWNrYm94IGxpc3QgKi9cbiAgICAubWt0b0NoZWNrYm94TGlzdCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAvKiBub3RlOiBjYW4ndCByZWFsbHkgdXNlIGN1c3RvbSBjaGVja2JveCBzdHlsaW5nIGhlcmUgc2VlbiBlbHNld2hlcmUgaW4gc2l0ZSAqL1xuICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICBtYXJnaW46IDNweCA4cHggMTJweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIHN1Ym1pdCAqL1xuICAgIC5ta3RvQnV0dG9uUm93IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIC5ta3RvQnV0dG9uV3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0FCQzFEQSAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFdvcmsgYXQgV2VzdEVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS53b3JrYXR3ZXN0ZWQge1xuXG4gIC8qIGNvbnRlbnQgKi9cbiAgI3dvcmthdHdlc3RlZC1jb250ZW50IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNjUlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeTtcbiAgICAgIG1hcmdpbjogMzBweCAwIDE1cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICM0REIxM0YgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMjJweCAwIDVweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCI7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzU0NmI4NTtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLyogU3Vic2NyaWJlIFNvY2lhbCBCYXIgKi9cbiAgICAjc3Vic2NyaWJlLXNvY2lhbC1iYXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjRTNFQ0Y5O1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgbWFyZ2luOiA0MHB4IGF1dG87XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDEwcHggMjBweDtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5zdWJzY3JpYmUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMTBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogOTRweDtcbiAgICAgICAgICBoZWlnaHQ6IDk0cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24td3JpdGUtZmlsbGVkLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIG1hcmdpbjogMCAzMHB4IDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMCA1cHggMDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICM2RUE5RUQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAmLnN1YnNjcmliZSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDAgMCAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDEycHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5zb2NpYWwge1xuICAgICAgICB3aWR0aDogNzklO1xuICAgICAgICBoZWlnaHQ6IDY1cHg7XG4gICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjRTNFQ0Y5O1xuICAgICAgICBtYXJnaW46IDAgMCAwIDEyNXB4O1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMCAwO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIjtcbiAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogNnB4IDAgMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICB3aWR0aDogMTYwcHg7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogMzdweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAzN3B4O1xuXG4gICAgICAgICAgICAgICYudHdpdHRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLXR3aXR0ZXItYmFieS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYubGlua2VkaW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1saW5rZWRpbi1iYWJ5LnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJi5mYWNlYm9vayB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLWZhY2Vib29rLWJhYnkucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBzaWRlYmFyICovXG4gICN3b3JrYXR3ZXN0ZWQtc2lkZWJhciB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiAzOSU7XG4gICAgbWluLXdpZHRoOiAzMTVweDtcbiAgICBtYXgtd2lkdGg6IDMxNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAzMHB4O1xuXG4gICAgaDMge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0FCQzFEQTtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDZweDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA2cHg7XG4gICAgICBtYXJnaW46IC0zMHB4IC0zMHB4IDIwcHggLTMwcHg7XG4gICAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmLmdsYXNzZG9vciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMThweDtcblxuICAgICAgICBhLmxvZ28ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgICYuc3Vic2NyaWJlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24td3JpdGUucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICB9XG5cbiAgICAgICYuaW5kZW50IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA4NXB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgaHIge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBib3JkZXI6IG5vbmUgMDtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmZmO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIG1hcmdpbjogMjVweCAwIDIwcHggMDtcbiAgICB9XG5cbiAgICAudmlkZW8ge1xuICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBpZnJhbWUge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgdWwuc29jaWFsIHtcbiAgICAgIG1hcmdpbjogMTJweCAwIDAgMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDg1cHg7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMCA4cHggMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICB3aWR0aDogMjlweDtcbiAgICAgICAgICBoZWlnaHQ6IDI5cHg7XG5cbiAgICAgICAgICAmLnR3aXR0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLXR3aXR0ZXItZGFyay5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmxpbmtlZGluIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1saW5rZWRpbi1kYXJrLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tc29jaWFsLWZhY2Vib29rLWRhcmsucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIwcHgpIHtcblxuICAgICN3b3JrYXR3ZXN0ZWQtY29udGVudCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgI3N1YnNjcmliZS1zb2NpYWwtYmFyIHtcblxuICAgICAgICAuc3Vic2NyaWJlIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJi5zdWJzY3JpYmUge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuc29jaWFsIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAjd29ya2F0d2VzdGVkLXNpZGViYXIge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG5cbiAgICAgIHAge1xuXG4gICAgICAgICYuc3Vic2NyaWJlLFxuICAgICAgICAmLmluZGVudCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICB1bC5zb2NpYWwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ1MHB4KSB7XG5cbiAgICAjd29ya2F0d2VzdGVkLXNpZGViYXIge1xuXG4gICAgICAudmlkZW8ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgdWwudGVzdGltb25pYWxzIHtcbiAgICBtYXJnaW46IDQwcHggMCA2MHB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNEM0RCRTY7XG4gICAgICBtYXJnaW46IDVweCAwIDI1cHggNzBweDtcbiAgICAgIHBhZGRpbmc6IDAgMCAyNXB4IDA7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IC0xMTBweDtcbiAgICAgICAgd2lkdGg6IDg5cHg7XG4gICAgICAgIGhlaWdodDogNjFweDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS0wNS0xNi10ZXN0aW1vbmlhbC1xdW90ZTEuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGNvbG9yOiAjODE5QUI2O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvMjAxOS0wNS0xNi10ZXN0aW1vbmlhbC1xdW90ZTIuc3ZnXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIE9ycGhhbiAvIE5ldyBZb3JrLCBHZW9yZ2lhLCBGbG9yaWRhXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5uZXcteW9yaywgYm9keS5nZW9yZ2lhLCBib2R5LmZsb3JpZGEge1xuXG4gIC8qIGNvbnRlbnQgKi9cbiAgI255LWNvbnRlbnQsICNnZW9yZ2lhLWNvbnRlbnQsICNmbG9yaWRhLWNvbnRlbnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA2NSU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBoMiB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHAuY2F0LWRhdGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgLyogMjAxOC0xMi0xMyBoaWRpbmcgZXZlbnQgY2F0IGFuZCBkYXRlIHBlciBDSCAqL1xuICAgIH1cblxuICAgIC8qIE5ld3MgJiBFdmVudHMgKi9cbiAgICAubmV3cy1ldmVudHMge1xuICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgdWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAudGh1bWIge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMTE1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgMTVweCAxNXB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgOHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIFJlc291cmNlcyAqL1xuICAgIC5yZXNvdXJjZXMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgdWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMTVweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAxNXB4IDE1cHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubmFtZSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCA4cHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5leGNlcnB0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1heC13aWR0aDogNDg1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIFJlc291cmNlcyAvIHNob3cgbW9yZSAqL1xuICAgICAgLmZpbml0ZVNjcm9sbCAubmV4dF9wYWdlIGEge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogN3B4IDEycHggN3B4IDEycHg7XG4gICAgICB9XG5cbiAgICAgIC5sb2FkaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIHN1YnBhZ2UgY29udGVudCAqL1xuICAgICYuc3VicGFnZXMge1xuXG4gICAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnk7XG4gICAgICAgIG1hcmdpbjogMTBweCAwIDEycHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5O1xuICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAzMHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5wcm9tbyB7XG4gICAgICAgIHdpZHRoOiA2NjBweDtcbiAgICAgICAgaGVpZ2h0OiAxMzRweDtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvbmV3eW9yay1wcm9tby1jb250YWN0dXMucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICBtYXJnaW46IDMwcHggMCAwIDA7XG4gICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBzaWRlYmFyICovXG4gICNueS1zaWRlYmFyLCAjZ2VvcmdpYS1zaWRlYmFyLCAjZmxvcmlkYS1zaWRlYmFyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDMwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC8qIHNpZGViYXIgY29udGFpbmVyICovXG4gICAgLndpZGdldCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMkY3O1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0I1QzFDQztcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNnB4O1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNnB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDVweCAxNXB4O1xuICAgICAgfVxuXG4gICAgICAvKiBjb250ZW50ICovXG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnk7XG4gICAgICAgIG1hcmdpbjogMCAwIDdweCAwO1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMjBweCAxNXB4O1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvYnVsbGV0LWJsdWUtNHg0LnBuZ1wiKSBuby1yZXBlYXQgMCA1cHg7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDE1cHg7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiAjMzM3OWEyO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmLnNvY2lhbCB7XG4gICAgICAgICAgbWFyZ2luOiAxMnB4IDAgMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDhweCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICAgICAgd2lkdGg6IDI5cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMjlweDtcblxuICAgICAgICAgICAgICAmLnR3aXR0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC10d2l0dGVyLWRhcmsucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmxpbmtlZGluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1zb2NpYWwtbGlua2VkaW4tZGFyay5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXNvY2lhbC1mYWNlYm9vay1kYXJrLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmNvbC1sZWZ0IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMCAxNXB4IDE1cHg7XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgJi5pY29uLWZvcm0ge1xuICAgICAgICAgICAgd2lkdGg6IDY5cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDY5cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1mb3JtLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuaWNvbi13cml0ZSB7XG4gICAgICAgICAgICB3aWR0aDogNjVweDtcbiAgICAgICAgICAgIGhlaWdodDogNjVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXdyaXRlLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmNvbC1yaWdodCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTVweCAxNXB4IDA7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNDBweCkge1xuXG4gICAgI255LWNvbnRlbnQsICNueS1zaWRlYmFyLCAjZ2VvcmdpYS1jb250ZW50LCAjZ2VvcmdpYS1zaWRlYmFyLCAjZmxvcmlkYS1jb250ZW50LCAjZmxvcmlkYS1zaWRlYmFyIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgI255LXNpZGViYXIsICNnZW9yZ2lhLXNpZGViYXIsICNmbG9yaWRhLXNpZGViYXIge1xuICAgICAgbWF4LXdpZHRoOiAzMjBweDtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgfVxuXG4gIH1cblxufVxuXG4vKiBHZW9yZ2lhIHR3ZWFrcyAqL1xuYm9keS5nZW9yZ2lhIHtcblxuICAuaGVyby1zdWJuYXYgdWwgbGkge1xuICAgIHBhZGRpbmc6IDAgNXB4O1xuICB9XG5cbiAgI2dlb3JnaWEtY29udGVudCBhLmJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHggIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDhweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDhweCAxNnB4IDhweCAxNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IC43NTtcbiAgICB9XG5cbiAgfVxuXG59XG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1nZW9yZ2lhIHtcblxuICAjZW50cnktY29udGVudCB7XG5cbiAgICBwICsgaDIge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5O1xuICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDMwcHg7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5O1xuICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gICNyZWNlbnQtcG9zdHMge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cblxufVxuXG4vKiBGbG9yaWRhIHR3ZWFrcyAqL1xuYm9keS5mbG9yaWRhIHtcblxuICAuaGVyby1zdWJuYXYgdWwgbGkge1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgfVxuXG59XG5cblxuLyogT3JwaGFuIC8gTmF0aW9uYWwgU3VwcG9ydCBOZXR3b3Jrc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkucGFnZS1uYXRpb25hbC1zdXBwb3J0LW5ldHdvcmtzIHtcblxuICBoMi5pbnRybyB7XG4gICAgbWF4LXdpZHRoOiA2MjVweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLyogV2hhdCBpcyBUQSAqL1xuICAud2hhdC1pcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdlc3RlZC1iYWJ5LWJsdWU7XG4gICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgcGFkZGluZzogMjBweDtcbiAgfVxuXG4gIC8qIG5ldHdvcmsgKi9cbiAgLm5ldHdvcmsge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAyMHB4IDAgMjBweCAwO1xuXG4gICAgYTpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1wcmltYXJ5O1xuICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgcGFkZGluZzogMCAwIDhweCAwO1xuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAzMzBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB3aWR0aDogNjQwcHg7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRib3JkZXItcHJpbWFyeTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC50aHVtYiB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDI4MHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLnRodW1iLWRlc2Mge1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICB3aWR0aDogMzE1cHg7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmLnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBoZWlnaHQ6IDg1cHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogTmF0aW9uYWwgU3BlY2lhbCBFZHVjYXRpb24gQ2VudGVycyAqL1xuICAgICYuc3BlY2lhbC1lZCB7XG5cbiAgICAgIC50aHVtYiB7XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcblxuICAgICAgICBpbWcge1xuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAudGh1bWItZGVzYyB7XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBDZW50ZXIgdG8gSW1wcm92ZSAqL1xuICAgICYuY2VudGVyIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLXByaW1hcnk7XG4gICAgICBtYXJnaW46IDUwcHggMDtcbiAgICAgIHBhZGRpbmc6IDMwcHggMCAwIDA7XG5cbiAgICAgIGgzIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG5cbiAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAyMHB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDQwcHgpIHtcblxuICAgIC5uZXR3b3JrIHtcblxuICAgICAgLmRlc2NyaXB0aW9uLCB1bCB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuXG4gICAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC50aHVtYi1kZXNjIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIE9ycGhhbiAvIFBvbGljeSBTdXBwb3J0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5wYWdlLXBvbGljeS1zdXBwb3J0IHtcblxuICBoMi5pbnRybyB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogIzUxQUY0NjtcbiAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5wYWdlLWNvbnRlbnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA3NSU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgNDBweCAwIDA7XG5cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgIG1hcmdpbjogMjVweCAwIDEycHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gIH1cblxuICAucGFnZS1zaWRlYmFyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5pbmZvIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAyMzBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUYyRjc7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDAgMCAwIDA7XG4gICAgICBwYWRkaW5nOiA4NXB4IDMwcHggMjBweCAzMHB4O1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtNDVweDtcbiAgICAgICAgbGVmdDogNTRweDtcbiAgICAgICAgd2lkdGg6IDExOXB4O1xuICAgICAgICBoZWlnaHQ6IDExOXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1tb3JlLWluZm8taS5wbmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB9XG5cbiAgICAgIC8qIG5hbWUgKi9cbiAgICAgIGgyIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBwaG9uZSAqL1xuICAgICAgcC5waG9uZSB7XG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjODE5QUI2ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgc3Bhbi5pY29uIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXBob25lLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgcC5idXR0b24ge1xuICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDEwcHggMCAwIDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDEwcHggNXB4IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NzBweCkge1xuXG4gICAgLnBhZ2UtY29udGVudCwgLnBhZ2Utc2lkZWJhciB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAucGFnZS1zaWRlYmFyIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgIC5pbmZvIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBwLmJ1dHRvbiBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIE9ycGhhbiAvIDIwMjA6IFdlc3RFZCBSZXNvdXJjZXMgdG8gU3VwcG9ydCBTdWNjZXNzIGZvciBBbGwgTGVhcm5lcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnJlc291cmNlcy0yMDIwIHtcblxuICAvKiBIZXJvICovXG4gICNoZXJvIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBcbiAgICAud3JhcCB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDIwcHggMCAyMHB4O1xuICAgIH1cbiAgICBcbiAgICBoMSB7XG4gICAgICBtYXgtd2lkdGg6IDc1MHB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtc2l6ZTogNDJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgICAgIFxuICB9XG5cbiAgc2VjdGlvbiB7XG4gICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICNFM0VDRjk7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgcGFkZGluZzogMjBweCAwO1xuICAgIFxuICAgIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNTNweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICAgIFxuICAgIC5ncm91cCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgM2ZyO1xuICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiAzMHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIFxuICAgICAgLml0ZW0ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIFxuICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgXG4gICAgICAgICAgLmJveCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7ICAgICAgICAgICAgXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBjb2xvcjogIzU0NkI4NTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgICAgcC5idG4td3JhcCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgfVxuICAgICAgXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc20tYnJlYWspIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgIFxuICAgICAgICAuaXRlbTpudGgtY2hpbGQoMikge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgIH1cbiAgICAgIFxuICAgIH1cbiAgICBcbiAgfVxuXG4gIC8qIEludHJvICovXG4gIHNlY3Rpb24jaW50cm8ge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDAgMCA1MHB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuICAgIFxuICB9XG4gIFxuICAvKiBUT0MgKi9cbiAgc2VjdGlvbiN0b2Mge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDAgMCA2MHB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBcbiAgICB1bCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICAgIGdyaWQtZ2FwOiAyMHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIFxuICAgICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWM7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAxMnB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgfVxuXG4gICAgICB9ICAgICAgXG5cbiAgICB9XG4gICAgXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtLWJyZWFrKSB7XG4gICAgICBcbiAgICAgIHVsIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICB9XG4gICAgICBcbiAgICB9XG4gICAgXG4gIH1cbiAgXG59XG5cblxuLyogU2VhcmNoIFJlc3VsdHMgLyBHbG9iYWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnNlYXJjaC1nbG9iYWwge1xuXG4gICNjb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDEwNDBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAyMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICBmb3JtI2dvb2dsZXNlYXJjaGZvcm0ge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbjtcbiAgICAgIG1hcmdpbjogMjVweCAwIDEwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmdzYy1jb250cm9sLWNzZSB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmdzYy1pbnB1dC1ib3gtaG92ZXIsXG4gICAgLmdzYy1pbnB1dC1ib3gtZm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIHRhYmxlLFxuICAgIHRkIHtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8qIGZvcm0gKi9cbiAgICBmb3JtIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgZGl2IHtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIC5nc3N0X2Ige1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgaGVpZ2h0OiAzM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNFQ0Y5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjM0Y2NDhGICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDRweCAxMnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDUzcHg7XG4gICAgICAgIGhlaWdodDogMzNweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9idXR0b24tZ28ucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCA4cHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogeHh4IHJlc3VsdHMgKi9cbiAgICAuZ3NjLWFib3ZlLXdyYXBwZXItYXJlYSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvKiByZXN1bHRzICovXG4gICAgLmdzYy13cmFwcGVyIHtcbiAgICAgIG1hcmdpbjogNDBweCAwIDAgMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC8qIGVhY2ggcmVzdWx0ICovXG4gICAgICAuZ3NjLXJlc3VsdCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItcHJpbWFyeTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMjBweCAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmdzLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgYiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuZ3NjLXRodW1ibmFpbC1pbnNpZGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuZ3NjLXRodW1ibmFpbCB7XG4gICAgICBkaXNwbGF5OiBub25lOyAvKiBkZWNpZGVkIHRvIGhpZGUgKi9cbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ncy13ZWItaW1hZ2UtYm94IHtcblxuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxNTBweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuZ3Mtd2ViLWltYWdlLWJveCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuZ3NjLXVybC10b3AsXG4gICAgLmdzYy10YWJsZS1yZXN1bHQge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCI7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzU0NmI4NTtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLyogcGFnaW5hdGlvbiAqL1xuICAgIC5nc2MtY3Vyc29yLWJveCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAxMHB4IDAgMzBweCAwO1xuXG4gICAgICAuZ3NjLWN1cnNvci1wYWdlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW46IDAgNnB4O1xuICAgICAgfVxuXG4gICAgICAuZ3NjLWN1cnNvci1jdXJyZW50LXBhZ2Uge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiNGIxYTY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWYyZjc7XG4gICAgICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5nY3NjLWJyYW5kaW5nLFxuICAgIC5nY3NjLW1vcmUtbWF5YmUtYnJhbmRpbmctcm9vdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuXG4gICAgI2NvbnRlbnQge1xuXG4gICAgICBmb3JtIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogU2VhcmNoIFJlc3VsdHMgLyBHbG9iYWwgMjAyMC0wOFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkucGFnZS10ZW1wbGF0ZS1zZWFyY2gtd2VzdGVkLWdsb2JhbCAjY29udGVudCB7XG5cbiAgZm9ybSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAwIDQwcHggMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgIGxhYmVsIHtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgICAgaGVpZ2h0OiAzM3B4ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogNHB4IDEycHggIWltcG9ydGFudDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA4cHggMjBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgLnNlYXJjaC1yZXN1bHQge1xuICAgIG1hcmdpbjogMCAwIDMwcHggMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgIGgzLCBwIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogMjBweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAwIDJweCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgLnBhZ2luYXRpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIHNwYW4ge1xuICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFNlYXJjaCBSZXN1bHRzIC8gUmVzb3VyY2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS53b29jb21tZXJjZS5zZWFyY2gtcmVzdWx0cyxcbmJvZHkud29vY29tbWVyY2Uuc2VhcmNoLW5vLXJlc3VsdHMge1xuXG4gIGgxLnBhZ2UtdGl0bGUge1xuICAgIG1heC13aWR0aDogMTA0MHB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cblxuICAjcHJvZHVjdF9zZWFyY2hfZm9ybS5jb250ZW50LWFyZWEge1xuICAgIG1heC13aWR0aDogMTA0MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuXG4gICAgLyogZm9ybSAqL1xuICAgIGZvcm0ge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBoZWlnaHQ6IDMzcHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjkgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogNHB4IDEycHggIWltcG9ydGFudDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA1M3B4O1xuICAgICAgICBoZWlnaHQ6IDMzcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvYnV0dG9uLWdvLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgOHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDAgMTJweCAwO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gICNjb250ZW50IHtcblxuICAgIHAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgMCA1cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgZm9ybSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMjAlO1xuICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICB1bC5wcm9kdWN0cyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLmltZyB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBzcGFuLnRodW1ibmFpbCB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwcHggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDEyMHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogcGFnaW5hdGlvbiAqL1xuICAgIC53b29jb21tZXJjZS1wYWdpbmF0aW9uIHtcbiAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgdWwge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgY29sb3I6ICMxNjY5Yzk7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDNweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuY3VycmVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYjRiMWE2O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZjJmNztcbiAgICAgICAgICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBjb2xvcjogJGxpbmstcHJpbWFyeTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICBtYXJnaW46IDAgNnB4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcblxuICAgICNwcm9kdWN0X3NlYXJjaF9mb3JtLmNvbnRlbnQtYXJlYSB7XG5cbiAgICAgIGZvcm0ge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuYm9keS53b29jb21tZXJjZS5zZWFyY2gtbm8tcmVzdWx0cyB7XG5cbiAgI2NvbnRlbnQge1xuXG4gICAgaDEge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBwLndvb2NvbW1lcmNlLWluZm8ge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIDQwNCBOb3QgRm91bmRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LmVycm9yNDA0ICNjb250ZW50IHtcblxuICBoMSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogJHdlc3RlZC1ncmVlbjtcbiAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgI25vdGZvdW5kX3NlYXJjaCB7XG5cbiAgICBmb3JtIHtcbiAgICAgIG1heC13aWR0aDogNTAlO1xuXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICBoZWlnaHQ6IDMzcHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjkgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgNXB4IDAgMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA0cHggMTJweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHggIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVhNzk5YyAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuXG4gICAgI25vdGZvdW5kX3NlYXJjaCB7XG5cbiAgICAgIGZvcm0ge1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIEZvb3RlciBCYW5uZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBTYWZhcmkgNC04ICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZm9vdGVyLWJhbm5lci1zbGlkZS1vcGVuIHtcbiAgZnJvbSB7IGJvdHRvbTogLTMyMHB4OyB9XG4gIHRvIHsgYm90dG9tOiAwOyB9XG59XG5Aa2V5ZnJhbWVzIGZvb3Rlci1iYW5uZXItc2xpZGUtb3BlbiB7XG4gIGZyb20geyBib3R0b206IC0zMjBweDsgfVxuICB0byB7IGJvdHRvbTogMDsgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZvb3Rlci1iYW5uZXItc2xpZGUtY2xvc2Uge1xuICBmcm9tIHsgYm90dG9tOiAwOyB9XG4gIHRvIHsgYm90dG9tOiAtNTI1cHg7IH1cbn1cbkBrZXlmcmFtZXMgZm9vdGVyLWJhbm5lci1zbGlkZS1jbG9zZSB7XG4gIGZyb20geyBib3R0b206IDA7IH1cbiAgdG8geyBib3R0b206IC01MjVweDsgfVxufVxuXG4jZm9vdGVyLWJhbm5lciB7XG4gIGFuaW1hdGlvbjogMi41cyBmb290ZXItYmFubmVyLXNsaWRlLW9wZW47XG4gIHotaW5kZXg6IDk5OTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzMjBweDtcbiAgYmFja2dyb3VuZDogcmdiKDI2LDQ0LDY2KTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNiw0NCw2NiwxKSAwJSwgcmdiYSgyNiw2OCwxMDgsMSkgMTAwJSk7XG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgIzUxQUY0NjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gICYuY2xvc2VkIHtcbiAgICBhbmltYXRpb246IDIuNXMgZm9vdGVyLWJhbm5lci1zbGlkZS1jbG9zZTtcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsgLyogbWFpbnRhaW5zIGxhc3QgcG9zaXRpb24gKi9cbiAgfVxuXG4gIC53cmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDMwcHggNDBweDtcbiAgfVxuXG4gIGgyIHtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICBsaW5lLWhlaWdodDogNjZweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgcCB7XG4gICAgbWF4LXdpZHRoOiA0NDBweDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICYuc2FtcGxlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTBweDtcbiAgICAgIHJpZ2h0OiA5MHB4O1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIC8vIHdpZHRoOiA0NDNweDtcbiAgICAgICAgLy8gaGVpZ2h0OiAyNjRweDtcbiAgICAgICAgLy8gYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzLzIwMTktMDgtMTYtZm9vdGVyLWJhbm5lci1lYi5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgICYuY2xvc2UgYSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwcHg7XG4gICAgICByaWdodDogNDBweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgLy8gYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzLzIwMTktMDgtMTYtZm9vdGVyLWJhbm5lci1hcnJvdy5zdmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgIC8vIHdpZHRoOiA1MHB4O1xuICAgICAgLy8gaGVpZ2h0OiAzMHB4O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi5idXR0b24ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICBhIHtcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtaW5kZW50OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDIycHggIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDhweCAwIDAgMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMzBweCkge1xuXG4gICAgcCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG5cbiAgICAgICYuc2FtcGxlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTI1cHgpIHtcbiAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICBoMiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLXRvcDogNDVweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogR2xvYmFsIC8gUHJpb3JpdHkgSXRlbXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIHNob3cgbW9yZS9sZXNzIHRlbXBsYXRlICovXG4uZmluaXRlU2Nyb2xsIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDVweCAwIDAgMCAhaW1wb3J0YW50O1xufVxuLmZpbml0ZVNjcm9sbCAubmV4dF9wYWdlLFxuLm1vcmVfbGlua3MsXG4jbWFpbl9jb250ZW50X3dyYXAgI3NpZGViYXIgI2NvbnRlbnQgc3Bhbi5tb3JlX2xpbmtzLFxuYm9keS5zdWJzY3JpYmUgI2lubmVyIC5lbnRyeS1jb250ZW50IC5lYnVsbGV0aW4tYXJjaGl2ZSBwLnNob3doaWRlIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjNWE3OTljICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMjBweCAwIDAgMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgJjpob3ZlciB7XG4gICAgb3BhY2l0eTogLjc1O1xuICB9XG5cbiAgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxMXB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE1cHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxMXB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE1cHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE3OTljICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxcHggMTJweCAxcHggMTJweCAhaW1wb3J0YW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDAgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cbmJvZHkudXBjb21pbmdfd2ViaW5hciAjcmVsYXRlZC1yZXNvdXJjZXMgLm1vcmVfbGlua3MgYSxcbmJvZHkudXBjb21pbmdfd2ViaW5hciAjcmVsYXRlZC1zZXJ2aWNlcyAubW9yZV9saW5rcyBhLFxuYm9keS5zaW5nbGUtcmRfYWxlcnRfb25saW5lICNyZWxhdGVkLXJlc291cmNlcyAubW9yZV9saW5rcyBhIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAxcHggMTJweCAxcHggMTJweCAhaW1wb3J0YW50O1xufVxuYm9keS5zdWJzY3JpYmUgI2lubmVyIC5lbnRyeS1jb250ZW50IC5lYnVsbGV0aW4tYXJjaGl2ZSBwLmFycm93Q2xvc2Uge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnRcbn1cblxuLm1vcmVfbGlua3MsXG4jbWFpbl9jb250ZW50X3dyYXAgI3NpZGViYXIgI2NvbnRlbnQgc3Bhbi5tb3JlX2xpbmtzIHtcbiBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7IFxufVxuXG4vKiBwcmludCBzdHlsZXNoZWV0ICovXG5AbWVkaWEgcHJpbnQge1xuICBAaW1wb3J0ICdjb21wb25lbnRzL3ByaW50Jztcbn1cblxuLyogcHJldmVudCBzbGlkZXMgZnJvbSBmbGFzaGluZyBvbiBwYWdlIGxvYWQgKi9cbiNzcG90bGlnaHRfc2xpZGVyLFxuLnBsdGFfZmVhdF9zbGlkZXIsXG4ud2ViaW5hcl9zcG90bGlnaHRfc2xpZGVyIHtcblxuICAuc2xpZGU6bnRoLWNoaWxkKG4rMiksXG4gIC5zcG90bGlnaHRfaXRlbTpudGgtY2hpbGQobisyKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG59XG5cblxuLyogUGFnZXMgd2l0aG91dCBzdGFuZGFyZCBsYXlvdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBlcmtpbnMge1xuXG4gIC8qIGhlYWRlciBvdmVycmlkZXMgKi9cbiAgI2hlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDE0MHB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMjVweCBzb2xpZCAjM0Y1NDYwO1xuXG4gICAgLmxvZ28tc2xvZ2FuIHtcbiAgICB9XG5cbiAgICAubmF2LXdyYXAsICNjdXN0b21faHRtbC0xMiB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxuICAvKiBsYXlvdXQgb3ZlcnJpZGVzICovXG4gICN3cmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgI2lubmVyIHtcbiAgICAgIG1heC13aWR0aDogMTAwMHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDMwcHggMjBweCAhaW1wb3J0YW50O1xuXG4gICAgICAjbWFpbl9jb250ZW50X3dyYXAge1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBjb250ZW50ICovXG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG5cbiAgICBoMSB7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBtYXJnaW46IDE1cHggMCAzMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCI7XG4gICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzUxQUY0NjtcbiAgICAgIG1hcmdpbjogMzBweCAwIDIwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgbWFyZ2luOiAyMHB4IDAgNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNTQ2Yjg1O1xuICAgICAgbWFyZ2luOiAwIDAgMTRweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJi5idG4tY29udGFpbmVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDIwcHggYXV0bztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIGEuYnRuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjVweCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWMgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogOHB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggMTZweCAhaW1wb3J0YW50O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMjBweCA1MHB4O1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBjb2xvcjogIzU0NmI4NTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAmLmxvZ29zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgLy8ganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMzBweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIG1hcmdpbjogMCAxNXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuXG4gICAgI2hlYWRlciB7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogVGVhY2hlciBQcm9mZXNzaW9uYWwgRGV2ZWxvcG1lbnQgKG9ycGhhbiBwYWdlIGNyZWF0ZWQgMjAyMC0wMS0yMilcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnRlYWNoZXItcHJvZmVzc2lvbmFsLWRldmVsb3BtZW50IHtcblxuICAjaGVybyB7XG4gICAgbWluLWhlaWdodDogMzAwcHg7XG4gIH1cblxuICAuZW50cnktY29udGVudCB7XG5cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjODE5YWI2O1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMDtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogMjAyMC0wOS0wOCB0ZW1wIGZpeFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8vIGJvZHkud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QucG9zdGlkLTk4OTc5IC5wcm9kdWN0IC5zdW1tYXJ5IC5pbWFnZXMgI3ByaWNlX3RvcCAuY2FydF9ib3hfdG9wICNyZXNvdXJjZV9idG5DYXJ0LFxuLy8gYm9keS53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdC5wb3N0aWQtOTg5NTMgLnByb2R1Y3QgLnN1bW1hcnkgLmltYWdlcyAjcHJpY2VfdG9wIC5jYXJ0X2JveF90b3AgI3Jlc291cmNlX2J0bkNhcnQsXG4vLyBib2R5Lndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0LnBvc3RpZC04NjI5MSAucHJvZHVjdCAuc3VtbWFyeSAuaW1hZ2VzICNwcmljZV90b3AgLmNhcnRfYm94X3RvcCAjcmVzb3VyY2VfYnRuQ2FydCxcbi8vIGJvZHkud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QucG9zdGlkLTk4OTYwIC5wcm9kdWN0IC5zdW1tYXJ5IC5pbWFnZXMgI3ByaWNlX3RvcCAuY2FydF9ib3hfdG9wICNyZXNvdXJjZV9idG5DYXJ0IHtcbi8vIFxuLy8gICBhLmFkZF90b19jYXJ0X2J1dHRvbiB7XG4vLyAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuLy8gICB9XG4vLyBcbi8vIH1cbi8vIFxuXG5cblxuXG4vKiAyMDIwLTAzLTI0IE1vdmVkIE5pY2sgc3R5bGluZyBoZXJlIGFuZCBzdG9wcGVkIHVzaW5nIHNlcGFyYXRlIHN0eWxlc2hlZXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIEFPVyBDaGlsZCBQYWdlcyAtIFRFTVAgc3R5bGVzICovXG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1hb3ctcHJvamVjdGxpc3QtcGFnZSAjc2VjdGlvbl9oZWFkZXIsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtYW93LXJlc291cmNlbGlzdC1wYWdlICNzZWN0aW9uX2hlYWRlciB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuXG4vKlxuKlxuKiBTZXJ2aWNlL1BMVEEgKHNlcnZpY2UtcGx0YS1wYWdlLnBocCkgJiYgUmVzZWFyY2ggJiBFdmFsdWF0aW9uIFRlbXBsYXRlc1xuKlxuKi9cblxuYm9keS5wYWdlLXRlbXBsYXRlLXNlcnZpY2UtcGx0YS1wYWdlICNpbm5lciAjc2VjdGlvbl9oZWFkZXIge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbmJvZHkucGFnZS10ZW1wbGF0ZS1zZXJ2aWNlLXBsdGEtcGFnZSAuaGVybyB7XG4gICAgLy9oZWlnaHQ6IDQwMHB4O1xufVxuYm9keS5wYWdlLXRlbXBsYXRlLXNlcnZpY2UtcGx0YS1wYWdlICNpbm5lciAjc2VjdGlvbl9oZWFkZXIgLmVudHJ5LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG59XG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1zZXJ2aWNlLXBsdGEtcGFnZSAjZmVhdHVyZWQtYW93LmZlYXR1cmVkIC5pbnRybyB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG59XG5ib2R5LnBhZ2UtdGVtcGxhdGUtc2VydmljZS1wbHRhLXBhZ2UgLmxfY29sLFxuYm9keS5yZXNlYXJjaC1ldmFsdWF0aW9uIC5sX2NvbCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDcwJTtcbn1cbmJvZHkucGFnZS10ZW1wbGF0ZS1zZXJ2aWNlLXBsdGEtcGFnZSAucl9jb2wsXG5ib2R5LnJlc2VhcmNoLWV2YWx1YXRpb24gLnJfY29se1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuYm9keS5wYWdlLXRlbXBsYXRlLXNlcnZpY2UtcGx0YS1wYWdlICNzZWN0aW9uX2hlYWRlciAuYnRuLWNvbnRhY3QsXG5ib2R5LnNpbmdsZS1zZXJ2aWNlIC5oZXJvX3NlY3Rpb25faGVhZGVyIC5idG4tY29udGFjdCxcbmJvZHkucmVzZWFyY2gtZXZhbHVhdGlvbiAjc2VjdGlvbl9oZWFkZXIgLmJ0bi1jb250YWN0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAjMTY2OUM5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi8qIEZ1bGwtd2lkdGggRmVhdHVyZWQgU2VjdGlvbiAtIFRvIEludGVncmF0ZSB3LyBFeGlzdGluZyBTdHlsZXMgKi9cbmJvZHkucGFnZS10ZW1wbGF0ZS1zZXJ2aWNlLXBsdGEtcGFnZSAuZmVhdHVyZWRfZncsXG5ib2R5LnNpbmdsZS1zZXJ2aWNlIC5mZWF0dXJlZF9mdyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDQwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgfVxufVxuXG5cbi8qIFJlc2VhcmNoICYgRXZhbHVhdGlvbiBTZWN0aW9uIFN0eWxlcyAqL1xuYm9keS5yZXNlYXJjaC1ldmFsdWF0aW9uIHtcbiAgICAjaW5uZXIge1xuICAgICAgICAjc2VjdGlvbl9oZWFkZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMjM1cHggMCA0MHB4OyAvKiBsaWtlIFBMVEEgaGVybyBzZWN0aW9uIGhlYWRlciAqL1xuICAgICAgICAgICAgaDEuc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM1MUFGNDY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG4vKiBTaW5nbGUgUHJvamVjdCBUZW1wbGF0ZSBTdHlsZXMgLSBUbyBJbnRlZ3JhdGUgdy8gTWFpbiBSZWRlc2lnbiBTdHlsZXMgKi9cbi5zaW5nbGUtcHJvamVjdCB7XG4gICAgLnJlbGF0ZWQtc2VydmljZXMtbGlzdCB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQUJDMURBO1xuICAgICAgICBwYWRkaW5nLXRvcDogMmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAyZW07XG4gICAgfVxuICAgIC5yZWxhdGVkLXdlYnNpdGUge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0FCQzFEQTtcbiAgICAgICAgcGFkZGluZy10b3A6IDJlbTtcbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuXG4vKlxuKlxuKiBXZXN0RWQgRXZlbnRzXG4qXG4qL1xuYm9keS53ZXN0ZWQtZXZlbnQge1xuICAgICNpbm5lciB7XG4gICAgICAgICNzZWN0aW9uX2hlYWRlciB7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaGVyby0tZXZlbnRzIHtcbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwNDBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogMjVweCAyMHB4IDI1cHggMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cblxuLypcbipcbiogV2VzdEVkIGluIE5ldyBZb3JrIC0gT3JwaGFuIFBhZ2UgU3R5bGVzXG4qXG4qL1xuXG5ib2R5Lm5ldy15b3JrIHtcbiAgICAjaW5uZXIge1xuICAgICAgICAjc2VjdGlvbl9oZWFkZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMjM1cHggMCA0MHB4OyAvKiBsaWtlIFBMVEEgaGVybyBzZWN0aW9uIGhlYWRlciAqL1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIG92ZXJyaWRlIGdsb2JhbC5jc3MgdmFsdWUgKi9cbiAgICAgICAgfVxuICAgICAgICAuaGVyb19fYm9keSB7XG4gICAgICAgICAgICBtYXJnaW46IDE1cHggMCAwIDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG4vKlxuKlxuKiBQdWJsaWNhdGlvbnMgJiBSZXNvdXJjZXMgLSBUZW1wIFN0eWxlc1xuKlxuKi9cblxuI2hlcm8ucmVzb3VyY2VzIHtcbiAgICAuaGVyby1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB9XG4gICAgLmhlcm8tY29sdW1uIHtcbiAgICAgICAgJi5sLWNvbCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgIH1cbiAgICAgICAgJi5yLWNvbCB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5saW5rcyB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODE5QUI2O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgI3N1YnN1Ym1lbnUgdWwgbGkge1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuICAgICNzcG90bGlnaHRfc2xpZGVyIHsgLy8gc2xpZGVyIHN0eWxlIG92ZXJyaWRlcyAoc2VlIHJlc291cmNlc2dsb2JhbC5jc3MpXG4gICAgICAgIC5zbGlkZSB7XG4gICAgICAgICAgICAucGhvdG8ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuYm9keS53b29jb21tZXJjZSxcbmJvZHkud29vY29tbWVyY2UtcGFnZSB7XG4gICAgLnBhZ2UtdGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgLy8gdGVtcCBvdmVycmlkZSB0byBkaXNwbGF5IHNlY3Rpb24gKHRheG9ub215KSBoZWFkaW5nc1xuICAgIH1cbn1cblxuLyogU2luZ2xlIFJlc291cmNlIERldGFpbCAtIEFjY29yZGlvbiAqL1xuYm9keS5zaW5nbGUtcHJvZHVjdCB7XG4gICAgLnBhZ2VfY29udGVudF9ib3gge1xuICAgICAgICAmLmNvbGxhcHNlZCAucGFnZV9jb250ZW50X2JveF9ib2R5X3RleHQgeyAvKiB0ZXN0IGNvbnRlbnQgKi9cbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLnBhZ2VfY29udGVudF9ib3hfYm9keS50ZXh0IHtcbiAgICAgICAgICAgICYuZXhwYW5kZWQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qIFImRCBBbGVydCAtIFRlbXAgU3R5bGVzICovXG4uc2luZ2xlLXJkX2FsZXJ0X29ubGluZSB7XG4gICAgI2NvbnRlbnQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLnBvc3RfaW1hZ2Uge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgNTBweCAyMHB4IDA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDY4MHB4O1xuICAgICAgICB9XG4gICAgICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgICAgICAgIC50b2Mge1xuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzAwcHhcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5cbi8qIEhvbWVwYWdlIC0gVGVtcCBTdHlsZXMgKi9cbmJvZHkuaG9tZSB7XG4gICAgI21haW5fY29udGVudF93cmFwIHtcbiAgICAgICAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICAgIH1cbiAgICAjY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxufVxuXG4iLCIvKiBTaXppbmdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4kc20tYnJlYWs6IDkwMHB4O1xuXG4vKiB3cmFwIG1heCB3aWR0aCAqL1xuJG1heC13aWR0aDogMTA0MHB4O1xuXG5cbi8qIEZvbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJGZvbnQtcHJpbWFyeTogXCJSb2JvdG9cIjtcbiRmb250LXNlY29uZGFyeTogXCJSb2JvdG8gU2xhYlwiO1xuXG5cbi8qIENvbG9yIERlZmF1bHRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuJHRleHQtY29sb3ItcHJpbWFyeTogIzU0NkI4NTtcblxuJGxpbmstcHJpbWFyeTogIzE2NjljOTtcblxuJGJvcmRlci1wcmltYXJ5OiAjQUJDMURBO1xuXG5cbi8qIENvbG9yIEN1c3RvbVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiR3ZXN0ZWQtZ3JlZW46ICM1MUFGNDY7XG5cbiR3ZXN0ZWQtZ3JleTogI0Q1REJERDtcbiR3ZXN0ZWQtZ3JleS0yOiAjNTQ2Qjg1O1xuJHdlc3RlZC1ncmV5LTM6ICM1QTc5OUM7XG4kd2VzdGVkLWdyZXktNDogI0FCQzFEQTtcbiR3ZXN0ZWQtZ3JleS01OiAjMzE1MDdDO1xuXG4kd2VzdGVkLW5hdnktYmx1ZTogIzNGNjQ4RjtcbiR3ZXN0ZWQtZGFyay1uYXZ5LWJsdWU6ICMxYjM4NWY7XG4kd2VzdGVkLWVsZWN0cmljLWJsdWU6ICMxNjY5Qzk7XG4kd2VzdGVkLWxpZ2h0LWJsdWU6ICM4MTlBQjY7XG4kd2VzdGVkLWJhYnktYmx1ZTogI0UzRUNGOTtcbiR3ZXN0ZWQtYmFieS1ibHVlLWx0OiAjRUVGMkY3O1xuXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5UeXBvZ3JhcGh5XG5cbi0gLSAtXG5cbkdvb2dsZSBGb250c1xuXG5Cb2R5XG5Sb2JvdG8gMTAwIHRoaW5cblJvYm90byAzMDAgbGlnaHRcblJvYm90byA0MDAgcmVndWxhclxuUm9ib3RvIDUwMCBtZWRpdW1cblJvYm90byA3MDAgYm9sZFxuXG5oMVxuUm9ib3RvIFNsYWIgMzAwIGxpZ2h0XG5Sb2JvdG8gU2xhYiA0MDAgcmVndWxhclxuUm9ib3RvIFNsYWIgNzAwIGJvbGRcblxuTmF2XG5Sb2JvdG8gQ29uZGVuc2VkIDQwMCByZWd1bGFyXG5cbi0gLSAtXG5cbkdsb2JhbFxuXG5wIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCI7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjNTQ2Yjg1O1xuICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi0gLSAtXG5cbkhlcm9cblxucCB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogI2ZmZjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5cblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmVudHJ5LWNvbnRlbnQge1xuXG4gIGgyIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgIG1hcmdpbjogMjVweCAwIDEwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICB9XG5cbiAgaDMge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgY29sb3I6ICM1MUFGNDY7XG4gICAgbWFyZ2luOiAyNXB4IDAgMTBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICB1bCwgb2wge1xuXG4gICAgbGkge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG5cbiAgfVxuXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG59XG5cblxuXG5cbiIsIi8qIE1peGluc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG4vKiBjbGVhcmZpeFxuQGluY2x1ZGUgY2xlYXJmaXgoKTtcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuXG59XG5cbi5jbGVhcmZpeCB7XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuXG59XG5cblxuLyogYm9yZGVyLXJhZGl1c1xuQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh4cHgpO1xuQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoeHB4KTtcbkBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoeHB4KTtcbkBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHhweCk7XG5AaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMgKHhweCk7XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7ICAvKiBzdG9wcyBiZyBjb2xvciBmcm9tIGxlYWtpbmcgb3V0c2lkZSB0aGUgYm9yZGVyOiAqL1xufVxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbn1cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xufVxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbn1cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkhlYWRlciBTdHlsaW5nXG4tIExvZ28gYW5kIFNsb2dhblxuLSBVdGlsaXR5IE5hdlxuLSBNYWluIE5hdlxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAnX3ZhcmlhYmxlcyc7XG5cblxuLyogRml4ZWQgaGVhZGVyIGVsZW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODUxcHgpIHtcblxuICAjd3JhcCB7XG4gICAgei1pbmRleDogOTk5O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG5cbiAgI2hlYWRlciB7XG4gICAgei1pbmRleDogOTk5O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLyogcmVxdWlyZWQgdG8gc2hvdyBkcm9wZG93bnMgKi9cbiAgICB0b3A6IDM1cHg7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDE2NXB4ICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIH1cblxuICAjaGVybyB7XG4gICAgbWFyZ2luLXRvcDogMjAwcHggIWltcG9ydGFudDtcbiAgfVxuXG4gICNpbm5lciB7XG4gICAgbWFyZ2luLXRvcDogMjAwcHggIWltcG9ydGFudDtcblxuICAgICNoZXJvIHtcbiAgICAgIG1hcmdpbi10b3A6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gICNoZXJvICsgI2lubmVyIHtcbiAgICBtYXJnaW4tdG9wOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIH1cblxufVxuXG4vKiByZXBvc2l0aW9ucyB3cCBhZG1pbiBiYXIgYW5kIHdvcmsgaW50byBoZXJvIHN0eWxpbmcgKi9cbiN3cGFkbWluYmFyIHtcbiAgei1pbmRleDogOTk4O1xuICB0b3A6IDE4NnB4O1xuICBoZWlnaHQ6IDQ2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZjU0NjA7XG4gIHBhZGRpbmctdG9wOiA4cHg7XG5cbiAgbGk6aG92ZXIgLmFiLWl0ZW0sXG4gIC5hYi1zdWItd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNmNTQ2MCAhaW1wb3J0YW50O1xuICB9XG5cbn1cblxuXG4vKiBMb2dvIGFuZCBTbG9nYW4gKFdpZGdldDogc2l0ZSBsb2dvIGFuZCBzbG9nYW4pXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlYWRlciB7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLWJvdHRvbTogMTRweCBzb2xpZCAjM0Y1NDYwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgLyogaGlkZSBkZWZhdWx0IGxvZ28gKi9cbiAgI3RpdGxlLWFyZWEge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvKiBsb2dvICYgc2xvZ2FuICovXG4gIC5sb2dvLXNsb2dhbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDMwcHggMjBweCAzMHB4IDIwcHg7XG5cbiAgICAvKiBsb2dvICovXG4gICAgLmxvZ28ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMjg3cHg7XG4gICAgICBoZWlnaHQ6IDQ5cHg7XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgICAgIGhlaWdodDogaW5oZXJpdDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogc2xvZ2FuICovXG4gICAgLnNsb2dhbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDI4JTtcbiAgICAgIGxlZnQ6IDMyOHB4O1xuICAgICAgd2lkdGg6IDQ0N3B4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG5cbiAgICAubG9nby1zbG9nYW4ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAubG9nbyB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgICBhIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuc2xvZ2FuIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFV0aWxpdHkgTmF2IChXUCBNZW51IFwiVXRpbGl0eVwiLCBidXQgaXRlbXMgYXJlIGFsbCBpblxuL2xpYi9uYXYvdXRpbGl0aWVzLnBocClcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jbmF2IHtcbiAgZmxvYXQ6IG5vbmU7XG4gIGhlaWdodDogMzVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0I1QzFDQztcblxuICB1bCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICB9XG5cbiAgLyogU29jaWFsIEljb25zICovXG4gIGxpLm1lbnUtaXRlbS1saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9uYXYtYmFsbC5wbmdcIikgbm8tcmVwZWF0IGNlbnRlciByaWdodDtcbiAgICBwYWRkaW5nOiAwIDEwcHggMCA1cHg7XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkd2VzdGVkLW5hdnktYmx1ZTtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDZweCA1cHggNXB4IDVweDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIFNvY2lhbCBJY29ucyAqL1xuICBsaS5tZW51LWl0ZW0tc29jaWFsIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvbmF2LWJhbGwucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQ7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMTBweCAwIDA7XG5cbiAgICBhIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICBtYXJnaW46IDEwcHggNnB4IDAgNnB4O1xuICAgICAgcGFkZGluZzogMCAwIDAgMDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgIH1cblxuICAgICAgJi50d2l0dGVyIHtcbiAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tdHdpdHRlci1uYXYucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICB9XG5cbiAgICAgICYubGlua2VkaW4ge1xuICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaWNvbi1saW5rZWRpbi1uYXYucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgICB9XG5cbiAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLWZhY2Vib29rLW5hdi5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogQ2FydCAqL1xuICBsaS52aWV3X2NhcnQge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9uYXYtYmFsbC5wbmdcIikgbm8tcmVwZWF0IGNlbnRlciByaWdodDtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMzVweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAxMHB4IDAgMDtcblxuICAgIGEge1xuICAgICAgbWFyZ2luOiA2cHggNnB4IDAgNnB4O1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cblxuICAgICAgc3Bhbi5zZXAge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICBzcGFuLmNvdW50IHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNHB4O1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgdHJhbnNpdGlvbjogaW5oZXJpdDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogU2VhcmNoIHNsaWRlciAqL1xuICBsaS5tZW51LWl0ZW0tc2VhcmNoIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiA1cHggMCAwIDA7XG5cbiAgICAuc2VhcmNoYm94IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgbWluLXdpZHRoOiAzNnB4O1xuICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRyYW5zaXRpb246IHdpZHRoIDAuM3M7XG4gICAgfVxuXG4gICAgLnNlYXJjaGJveC1vcGVuIHtcbiAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICB9XG5cbiAgICAvKiBpbnB1dCAqL1xuICAgIGlucHV0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAgICYuc2VhcmNoYm94LWlucHV0IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnk7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiB0cmlnZ2VyICovXG4gICAgLnNlYXJjaGJveC1pY29uLFxuICAgIC5zZWFyY2hib3gtc3VibWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMzZweDtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBjb2xvcjogI2RjZGRkODtcbiAgICAgIGJhY2tncm91bmQ6ICNiNWMxY2MgdXJsKFwiLi4vaW1hZ2VzL2ljb24tc2VhcmNoLXdoaXRlLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogNXB4IDhweCA1cHggOHB4O1xuICAgIH1cblxuICAgIC5zZWFyY2hib3gtc3VibWl0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTJhNWI3O1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gIH1cblxuICAvKiBoaWRlIHV0aWxpdHkgbmF2IGF0IG1vYmlsZSAqL1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2NXB4KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG59XG5cblxuLyogTWFpbiBOYXYgd2l0aCBEcm9wZG93bnMgKC9saWIvbmF2L3ByaW1hcnktbmF2LnBocClcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jaGVhZGVyIC5oZWFkZXItd2lkZ2V0LWFyZWEge1xuICAvKiBTYWZhcmkgZml4IHdoZW4gdXNpbmcgZml4ZWQgcG9zaXRpb25pbmcgKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cbiAgLm5hdi13cmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICR3ZXN0ZWQtZ3JleTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICNuYXYtcHJpbWFyeS1jdXN0b20ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwNDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuXG4gICAgICB1bCNuYXYtcHJpbWFyeSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIC00cHggMCAwOyAvKiBpbmxpbmUtYmxvY2sgZ2FwIGZpeCAqL1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtbmF2eS1ibHVlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggMTBweDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvKiBkcm9wZG93biAqL1xuICAgICAgICAgIHVsLnN1Yi1tZW51IHtcblxuICAgICAgICAgICAgLyogdGVzdGluZyAqL1xuICAgICAgICAgICAgLy8gZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgei1pbmRleDogMzAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMTRweCBzb2xpZCAjM2Y1NDYwO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA3cHggMjBweCAtM3B4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgIC5uYXYtaXRlbS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgLmNvbC13cmFwIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDQwcHg7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgIC5jb2wge1xuICAgICAgICAgICAgICAgICAgICBmbGV4OiAxIDEgMjAwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyAvKiBmbGV4Ym94IGZhbGxiYWNrICovXG5cbiAgICAgICAgICAgICAgICAgICAgLyogSUUxMCwgSUUxMSAqL1xuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICAgICAgICAgICAgICAgICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNEM0RCRTY7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYuaW50cm8ge1xuICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgIC52ZXJ0aWNhbC13cmFwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC8qIElFMTAsIElFMTEgKi9cbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNlcGFyYXRvciAqL1xuICAgICAgICAgICAgICAgICAgICAgICAgJi5zZXAge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGhyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNEM0RCRTY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnNlY3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzgxOWFiNjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLW5hdnktYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8qIEFib3V0IFVzICovXG4gICAgICAgICAgJi5uYXYtYWJvdXQtdXMge1xuXG4gICAgICAgICAgICAuY29sLmludHJvIHtcblxuICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvKiBBT1cgKi9cbiAgICAgICAgICAmLm5hdi1hb3cge1xuXG4gICAgICAgICAgICAvKiB0ZXN0aW5nICovXG4gICAgICAgICAgICAvLyB1bC5zdWItbWVudSB7ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDt9XG5cbiAgICAgICAgICAgIC5jb2wuaW50cm8ge1xuXG4gICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjMwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkuc2VjdCB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLyogUmVzZWFyY2ggJiBFdmFsdWF0aW9uICovXG4gICAgICAgICAgJi5uYXYtcmVzLWV2YWwge1xuXG4gICAgICAgICAgICAuY29sLmludHJvIHtcbiAgICAgICAgICAgICAgLyogb3ZlcnJpZGUgaW5pdGlhbCBmbGV4IHdpZHRoICovXG4gICAgICAgICAgICAgIGZsZXg6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgd2lkdGg6IDQ1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvKiBSZXNvdXJjZXMgKi9cbiAgICAgICAgICAmLm5hdi1yZXNvdXJjZXMge1xuXG5cbiAgICAgICAgICAgIC5jb2wuaW50cm8ge1xuICAgICAgICAgICAgICBmbGV4OiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHdpZHRoOiAzNTBweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLyogV29yayBhdCBXZXN0RWQsIFNlYXJjaCAobW9iaWxlKSAqL1xuICAgICAgICAgICYubmF2LWNhcmVlcnMsXG4gICAgICAgICAgJi5uYXYtc2VhcmNoIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICB1bCNuYXYtcHJpbWFyeSB7XG5cbiAgICAvKiBzaHJpbmsgcGFkZGluZyAqL1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg4OHB4KSB7XG5cbiAgICAgIGxpIGEge1xuICAgICAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UgMHM7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIGhpZGUgaGFtYnVyZ2VyIGZvciBkZXNrdG9wICovXG4gICNjdXN0b21faHRtbC0xMixcbiAgI2N1c3RvbV9odG1sLTgsXG4gICNjdXN0b21faHRtbC01IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY1cHgpIHtcblxuICAgIC8qIGRpc3BsYXkgbWFpbiBuYXYgYWdhaW4gb25jZSB3aWRlIGVub3VnaCAqL1xuICAgIC5uYXYtd3JhcCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjVweCkge1xuXG4gICAgLyogZGlzcGxheSBoYW1idXJnZXIgZm9yIG1vYmlsZSAqL1xuICAgICNjdXN0b21faHRtbC0xMixcbiAgICAjY3VzdG9tX2h0bWwtOCxcbiAgICAjY3VzdG9tX2h0bWwtNSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMjBweDtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBzcGFuLmxpbmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHdlc3RlZC1uYXZ5LWJsdWU7XG4gICAgICAgIG1hcmdpbjogMCAwIDVweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogbW9iaWxpemUgbWFpbiBuYXYgKi9cbiAgICAubmF2LXdyYXAge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHotaW5kZXg6IDk5OTk7XG4gICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICNuYXYtcHJpbWFyeS1jdXN0b20ge1xuXG4gICAgICAgIHVsI25hdi1wcmltYXJ5IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIC8qIFdvcmsgYXQgV2VzdEVkLCBTZWFyY2ggKG1vYmlsZSkgKi9cbiAgICAgICAgICAgICYubmF2LWNhcmVlcnMsXG4gICAgICAgICAgICAmLm5hdi1zZWFyY2gge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5uYXYtc2VhcmNoe1xuXG4gICAgICAgICAgICAgIGZvcm0ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICBmbGV4OiAxIDEgNTBweDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDVweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAyIDEgYXV0bztcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0VDRjk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDVweCAxMHB4IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNHB4IDEycHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxIDEgNTBweDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDc1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1YTc5OWM7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCAwIDEwcHggMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMDtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzQwcHgpIHtcblxuICAgICAgICAgICAgICAgIGZvcm0ge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDAgNXB4IDA7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCA1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCAwIDVweCAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLW5hdnktYmx1ZTtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3ZXN0ZWQtZ3JleTtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG5cbiAgICAgICAgICAgICAgJi5zZi13aXRoLXVsIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvbWVudS1tb2JpbGUtYXJyb3dfcmlnaHQuZ2lmXCIpIG5vLXJlcGVhdCByaWdodCBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9tZW51LW1vYmlsZS1hcnJvdy5naWZcIikgbm8tcmVwZWF0IHJpZ2h0IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qIGRyb3Bkb3ducyAqL1xuICAgICAgICAgICAgdWwuc3ViLW1lbnUge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdlc3RlZC1ncmV5O1xuICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMCAxMHB4IDIwcHg7XG5cbiAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLW5hdnktYmx1ZTtcbiAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm5hdi1pdGVtLWNvbnRhaW5lciB7XG5cbiAgICAgICAgICAgICAgICAgIC5jb2wtd3JhcCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgLmNvbCB7XG4gICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgJi5pbnRybyB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC52ZXJ0aWNhbC13cmFwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIDEwcHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICYuc2VwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgJi5zZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBOYXYgb24gc3RhdGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlYWRlciAuaGVhZGVyLXdpZGdldC1hcmVhIHtcblxuICBsaS5jdXJyZW50LW1lbnUtaXRlbSxcbiAgbGkuY3VycmVudC1tZW51LWFuY2VzdG9yLFxuICBsaS5jdXJyZW50LW1lbnUtcGFyZW50IHtcblxuICAgIGEge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL25hdi1hcnJvdy5wbmdcIikgbm8tcmVwZWF0IGNlbnRlciAzMXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZWVuO1xuICAgIH1cblxuICB9XG5cbn1cblxuLyogQWJvdXQgVXMgKi9cbmJvZHkucGFnZS1hYm91dC11cyxcbmJvZHkucGFnZS10ZW1wbGF0ZS1ib2FyZC1wYWdlLFxuYm9keS5wYWdlLXRlbXBsYXRlLWxlYWRlcnNoaXAsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtc3RhZmZkaXJlY3RvcnktcGFnZSxcbmJvZHkuc2luZ2xlLXBlcnNvbm5lbCxcbmJvZHkucGFnZS10ZW1wbGF0ZS1wcm9ncmFtc19saXN0LXBhZ2UsXG5ib2R5LnNpbmdsZS1wcm9ncmFtLFxuYm9keS5wYWdlLXRlbXBsYXRlLXByb2dyYW1fc2VydmljZWxpc3QsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcHJvamVjdF9saXN0LXBhZ2UsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcHJvZ3JhbV9yZXNvdXJjZWxpc3QsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcHJvZ3JhbV9rZXlfc3RhZmYtcGFnZSxcbmJvZHkucGFnZS13ZXN0ZWQtb2ZmaWNlcyxcbmJvZHkucGFnZS1jbGllbnRzLFxuYm9keS5wYWdlLXdvcmtpbmctd2l0aC13ZXN0ZWQsXG5ib2R5LmVtYWlsLWZvcm0ge1xuXG4gICNoZWFkZXIgdWwjbmF2LXByaW1hcnkgbGkubmF2LWFib3V0LXVzIGEge1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbmF2LWFycm93LnBuZykgbm8tcmVwZWF0IGNlbnRlciAzMXB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNTFhZjQ2ICFpbXBvcnRhbnQ7XG5cbiAgICAvKiBoaWRlIGRvd24gYXJyb3cgYXQgbW9iaWxlICovXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY1cHgpIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qIEFyZWFzIG9mIFdvcmsgKi9cbmJvZHkuYXJlYV9vZl93b3JrLXRlbXBsYXRlLWRlZmF1bHQsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtYW93LXByb2plY3RsaXN0LXBhZ2UsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtYW93LXJlc291cmNlbGlzdC1wYWdlLFxuYm9keS5wYWdlLXRlbXBsYXRlLW1ham9yaW5pdGlhdGl2ZXMtbGlzdC1wYWdlLFxuYm9keS5mb3VyLWRvbWFpbnMsXG5ib2R5LmNoYXJ0ZXJzLWNob2ljZSxcbmJvZHkudHJhdW1hLFxuYm9keS5jb3ZpZC0xOS1yZXNvdXJjZXMsXG5ib2R5LmNvdmlkLTE5LXNlcnZpY2VzIHtcblxuICAjaGVhZGVyIHVsI25hdi1wcmltYXJ5IGxpLm5hdi1hb3cgYSB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9uYXYtYXJyb3cucG5nKSBuby1yZXBlYXQgY2VudGVyIDMxcHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICM1MWFmNDYgIWltcG9ydGFudDtcblxuICAgIC8qIGhpZGUgZG93biBhcnJvdyBhdCBtb2JpbGUgKi9cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjVweCkge1xuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuLyogUmVzZWFyY2ggJiBFdmFsdWF0aW9uICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcmVzZWFyY2gtZXZhbHVhdGlvbixcbmJvZHkucGFnZS10ZW1wbGF0ZS1yZS1ob3ctcGFnZSxcbmJvZHkucGFnZS10ZW1wbGF0ZS1yZS1yZXBvcnRzX3B1Yi1wYWdlLFxuYm9keS5wYWdlLXRlbXBsYXRlLXJlLXJlc2VhcmNoX2Jsb2ctcGFnZSB7XG5cbiAgI2hlYWRlciB1bCNuYXYtcHJpbWFyeSBsaS5uYXYtcmVzLWV2YWwgYSB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9uYXYtYXJyb3cucG5nKSBuby1yZXBlYXQgY2VudGVyIDMxcHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICM1MWFmNDYgIWltcG9ydGFudDtcblxuICAgIC8qIGhpZGUgZG93biBhcnJvdyBhdCBtb2JpbGUgKi9cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjVweCkge1xuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuLyogUHJvZmVzc2lvbmFsIERldmVsb3BtZW50ICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcHJvZmVzc2lvbmFsLWRldmVsb3BtZW50LXBhZ2UsXG5ib2R5LnR5cGUtcHJvZmVzc2lvbmFsLWRldmVsb3BtZW50LFxuYm9keS5wcm9mZXNzaW9uYWwtZGV2ZWxvcG1lbnQge1xuXG4gICNoZWFkZXIgdWwjbmF2LXByaW1hcnkgbGkubmF2LXBkIGEge1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbmF2LWFycm93LnBuZykgbm8tcmVwZWF0IGNlbnRlciAzMXB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNTFhZjQ2ICFpbXBvcnRhbnQ7XG5cbiAgICAvKiBoaWRlIGRvd24gYXJyb3cgYXQgbW9iaWxlICovXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY1cHgpIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qIFRlY2huaWNhbCBBc3Npc3RhbmNlICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtdGVjaG5pY2FsLWFzc2lzdGFuY2UtcGFnZSxcbmJvZHkucGFnZS10ZW1wbGF0ZS10ZWNobmljYWwtYXNzaXN0YW5jZS1jaGlsZCxcbmJvZHkudHlwZS10ZWNobmljYWwtYXNzaXN0YW5jZSxcbmJvZHkudGVjaG5pY2FsLWFzc2lzdGFuY2Uge1xuXG4gICNoZWFkZXIgdWwjbmF2LXByaW1hcnkgbGkubmF2LXRhIGEge1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbmF2LWFycm93LnBuZykgbm8tcmVwZWF0IGNlbnRlciAzMXB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNTFhZjQ2ICFpbXBvcnRhbnQ7XG5cbiAgICAvKiBoaWRlIGRvd24gYXJyb3cgYXQgbW9iaWxlICovXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY1cHgpIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qIFJlc291cmNlcyAqL1xuYm9keS53b29jb21tZXJjZS1wYWdlLFxuYm9keS5wYWdlLXJlcHJpbnQtcGVybWlzc2lvbnMsXG5ib2R5LnBhZ2UtcmVzb3VyY2VzLWhlbHAsXG5ib2R5LnYyMDE3LWNhdGFsb2dzLFxuYm9keS53ZWJpbmFycyxcbmJvZHkuYXJjaGl2ZWRfd2ViaW5hcixcbmJvZHkucmRhbGVydCxcbmJvZHkud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3Qge1xuXG4gICNoZWFkZXIgdWwjbmF2LXByaW1hcnkgbGkubmF2LXJlc291cmNlcyBhIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL25hdi1hcnJvdy5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgMzFweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzUxYWY0NiAhaW1wb3J0YW50O1xuXG4gICAgLyogaGlkZSBkb3duIGFycm93IGF0IG1vYmlsZSAqL1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2NXB4KSB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxufVxuXG4vKiBXZXN0RWQgRXZlbnRzICovXG5ib2R5Lndlc3RlZC1ldmVudCxcbmJvZHkud2VzdGVkX2V2ZW50LXRlbXBsYXRlLWRlZmF1bHQsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtd2VzdGVkX2V2ZW50LWFyY2hpdmUge1xuXG4gICNoZWFkZXIgdWwjbmF2LXByaW1hcnkgbGkubmF2LWV2ZW50cyBhIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL25hdi1hcnJvdy5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgMzFweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzUxYWY0NiAhaW1wb3J0YW50O1xuXG4gICAgLyogaGlkZSBkb3duIGFycm93IGF0IG1vYmlsZSAqL1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2NXB4KSB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxufVxuXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5Gb290ZXJcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgJ192YXJpYWJsZXMnO1xuXG5cbi8qIEZvb3RlciBGb3JtXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2Zvb3Rlci1mb3JtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdlc3RlZC1uYXZ5LWJsdWU7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgLndyYXAge1xuICAgIG1heC13aWR0aDogMTA0MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgfVxuXG4gIC5mZmEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xODBweDtcbiAgfVxuXG4gIGgyIHtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgcCB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvKiBjb2xsYXBzZSAqL1xuICAuY29udGFjdC1mb3JtLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDE0NHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2Zvb3Rlci1mb3JtLWNsb3NlZC5wbmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cblxuICAgIC8qIHdoZW4gb3BlbiwgaGlkZSB0cmlnZ2VyICovXG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICB9XG5cbiAgLyogTWFya2V0byBmb3JtICovXG4gIGZvcm0ubWt0b0Zvcm0ge1xuICAgIHdpZHRoOiA2Ni42JSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5ta3RvSHRtbFRleHQge1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5ta3RvRm9ybVJvdyB7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmOm50aC1jaGlsZCg1KSAubWt0b0Zvcm1Db2wgLm1rdG9GaWVsZFdyYXAge1xuICAgICAgICB3aWR0aDogOTcuNSUgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLm1rdG9Gb3JtQ29sIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIH1cblxuICAgICAgLyogSSBoYXZlIGEgcXVlc3Rpb24gb3IgY29tbWVudCBhYm91dCAqL1xuICAgICAgJjpudGgtY2hpbGQoNSkgLm1rdG9Gb3JtQ29sIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLm1rdG9GaWVsZFdyYXAge1xuICAgICAgICAgIHdpZHRoOiA5OCU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBDb21tZW50ICovXG4gICAgICAmOm50aC1jaGlsZCg2KSAubWt0b0Zvcm1Db2wge1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAubWt0b0ZpZWxkV3JhcCB7XG4gICAgICAgICAgd2lkdGg6IDk3LjUlO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogY2hlY2tib3ggKi9cbiAgICAgICY6bnRoLWNoaWxkKDcpIC5ta3RvRm9ybUNvbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ta3RvQ2hlY2tib3hMaXN0IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDEwb3g7XG4gICAgICAgICAgd2lkdGg6IDMwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAubWt0b0ZpZWxkV3JhcCB7XG4gICAgICB3aWR0aDogOTUlO1xuICAgIH1cblxuICAgIC8qIGxhYmVsICovXG4gICAgbGFiZWwge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbjogMCAwIDZweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvKiBpbnB1dCAqL1xuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICBzZWxlY3QsXG4gICAgdGV4dGFyZWEge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogNDJweDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICMzRjY0OEY7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiA0cHggMTJweDtcbiAgICB9XG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLm1rdG9Bc3Rlcml4IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvKiBjaGVja2JveCBsaXN0ICovXG4gICAgLm1rdG9DaGVja2JveExpc3Qge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLyogbm90ZTogY2FuJ3QgcmVhbGx5IHVzZSBjdXN0b20gY2hlY2tib3ggc3R5bGluZyBoZXJlIHNlZW4gZWxzZXdoZXJlIGluIHNpdGUgKi9cbiAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgbWFyZ2luOiAzcHggOHB4IDEycHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgbGFiZWwge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAjM0Y2NDhGO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTJweCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBzdWJtaXQgKi9cbiAgICAubWt0b0J1dHRvblJvdyB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAubWt0b0J1dHRvbldyYXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICBjb2xvcjogIzNGNjQ4RiAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNBQkMxREEgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDE2cHggOHB4IDE2cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuYm9keS5wYWdlLXRlbXBsYXRlLWhvbWUge1xuXG4gICNmb290ZXItZm9ybSB7XG5cbiAgICAud3JhcCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICB9XG5cbiAgfVxuXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcwMHB4KSB7XG5cbiAgI2Zvb3Rlci1mb3JtIHtcblxuICAgIGZvcm0ubWt0b0Zvcm0ge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuXG4gICNmb290ZXItZm9ybSB7XG5cbiAgICBmb3JtLm1rdG9Gb3JtIHtcblxuICAgICAgLm1rdG9Gb3JtUm93IC5ta3RvRm9ybUNvbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogV2lkZ2V0IEFyZWFcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZm9vdGVyLXdpZGdldHMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdlc3RlZC1ncmV5LTI7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAyMHB4IDAgMCAwO1xuXG4gIC53aWRnZXQtYXJlYSxcbiAgLmZvb3Rlci13aWRnZXRzLTEsXG4gIC5mb290ZXItd2lkZ2V0cy0yLFxuICAuZm9vdGVyLXdpZGdldHMtMyxcbiAgLmZvb3Rlci13aWRnZXRzLTQge1xuICAgIG1pbi1oZWlnaHQ6IDI4MHB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjODE5QUI2O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgICYuZm9vdGVyLXdpZGdldHMtMSB7XG4gICAgICB3aWR0aDogMzAlO1xuICAgIH1cbiAgICAmLmZvb3Rlci13aWRnZXRzLTIge1xuICAgICAgd2lkdGg6IDI3JTtcbiAgICB9XG4gICAgJi5mb290ZXItd2lkZ2V0cy0zIHtcbiAgICAgIHdpZHRoOiAyMS41JTtcbiAgICB9XG4gICAgJi5mb290ZXItd2lkZ2V0cy00IHtcbiAgICAgIHdpZHRoOiAyMS41JTtcbiAgICB9XG5cbiAgICAud2lkZ2V0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIHVsLm1lbnUge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDZweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6ICNBQkMxREE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAud2lkZ2V0ICsgLndpZGdldCB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLyogUHJpdmFjeSAqL1xuICAgIC5tZW51LWZvb3Rlci1wcml2YWN5LWNvbnRhaW5lciB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZmZjtcblxuICAgICAgdWwge1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIHByb3BlciBvcmRlciBhbmQgZmxleCB3aWR0aHMgKi9cbiAgW2NsYXNzKj1cImZvb3Rlci13aWRnZXRzLVwiXSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbS1icmVhaykge1xuXG4gICAgLndpZGdldC1hcmVhLFxuICAgIC5mb290ZXItd2lkZ2V0cy0xLFxuICAgIC5mb290ZXItd2lkZ2V0cy0yLFxuICAgIC5mb290ZXItd2lkZ2V0cy0zLFxuICAgIC5mb290ZXItd2lkZ2V0cy00IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDEwcHggMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBGb290ZXIgQm90dG9tIE5hdlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNmb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTQ2Qjg1O1xuXG4gIC53cmFwIHtcbiAgICBwYWRkaW5nOiAxMHB4IDMwcHggMzBweCAzMHB4O1xuICB9XG5cbiAgLmZvb3Rlci1ib3R0b20tbmF2IHtcblxuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDIxMHB4LDFmcikpO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM4MTlBQjY7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzgxOUFCNjtcbiAgICAgIG1hcmdpbjogMTJweCAwO1xuICAgICAgcGFkZGluZzogMTJweCAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogI0FCQzFEQTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIHAge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBjb2xvcjogIzhFOUZCNTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDE1cHggMCAwIDA7XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogIzhFOUZCNTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwIDVweDtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc20tYnJlYWspIHtcblxuICAgIC5mb290ZXItYm90dG9tLW5hdiB7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbiIsIi8qXG4tIEFsbCBTaWRlYmFyc1xuLSBBYm91dCBVcyBTaWRlYmFyXG4tIEFib3V0IFVzIHwgU3RhZmYgfCBQZXJzb25uZWwgU2lkZWJhclxuLSBBYm91dCBVcyB8IFByb2dyYW0gfCBTaWRlYmFyXG4tIEFib3V0IFVzIHwgUHJvZ3JhbSB8IENlbnRlciBmb3IgUHJldmVudGlvbiAmIEVhcmx5IEludGVydmVudGlvbiBTaWRlYmFyXG4tIEFib3V0IFVzIHwgV2VzdEVkIFByb2dyYW1zIHwgSW5kaXZpZHVhbCBQcm9ncmFtIHwgUHJvamVjdHMgfCBJbmRpdmlkdWFsIFByb2plY3QgU2lkZWJhclxuLSBBYm91dCBVcyB8IFByb2dyYW0gfCBJbmRpdmlkdWFsIFByb2dyYW1zIHwgQ3VzdG9tIFNpZGViYXJzXG4tIEFib3V0IFVzIHwgQXJlYSBvZiBXb3JrIHwgT3ZlcnZpZXcgU2lkZWJhcnNcbiovXG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWxsIFNpZGViYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgJ192YXJpYWJsZXMnO1xuXG5cbiNzaWRlYmFyLCAuc2lkZWJhciB7XG5cbiAgLndpZGdldCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyLXRvcDogMHB4O1xuICAgIC53aWRnZXR0aXRsZSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbjtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICB9IC8vIC53aWRnZXR0aXRsZVxuICAgIC5hdC1hLWdsYW5jZS13aWRnZXQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICBmb250LWZhbWlseTogaGVsdmV0aWNhO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgcGFkZGluZzogNXB4IDBweCA1cHggMjVweDtcbiAgICB9IC8vIC5hdC1hLWdsYW5jZS13aWRnZXRcbiAgICBhLCBzcGFuIHtcbiAgICAgIGNvbG9yOiAkbGluay1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9IC8vIGEsIHNwYW5cbiAgICBhIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHdlc3RlZC1lbGVjdHJpYy1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgIH1cbiAgICB9IC8vIGFcbiAgICAuc2lkZWJhcl9saW5rbGlzdCB7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZWxlY3RyaWMtYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJHdlc3RlZC1lbGVjdHJpYy1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG4gICAgICB9IC8vIGFcbiAgICB9IC8vIC5zaWRlYmFyX2xpbmtsaXN0XG4gICAgLmVtYWlsIHtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2VzdGVkLWdyZXktMztcbiAgICAgIH0gLy8gYVxuICAgIH0gLy8gLmVtYWlsXG4gICAgLm5hbWUsIC5ncm91cCB7XG4gICAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgfSAvLyBhXG4gICAgfSAvLyAubmFtZSwgLmdyb3VwXG4gICAgLm5ld3NfdGl0bGUsIC5uYW1lIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICB9IC8vIC5uZXdzX3RpdGxlLCAubmFtZVxuICB9IC8vIC53aWRnZXRcblxuICAmX19oZWFkZXIge1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxOXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gIH0gLy8gJl9faGVhZGVyXG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDIwcHggMCAwIDA7XG4gIH1cblxufSAvLyAjc2lkZWJhciwgLnNpZGViYXJcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuUmlnaHQgU2lkZWJhclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbiNzaWRlYmFyIHtcblxuICBsaSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9IC8vIGxpXG5cbiAgc3BhbiB7XG4gICAgJi50aHVtYiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH0gLy8gJi50aHVtYlxuICB9IC8vIHNwYW5cblxufSAvLyAjc2lkZWJhclxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BYm91dCBVcyB8IE92ZXJ2aWV3IHwgU2lkZWJhclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5wYWdlLWFib3V0LXVzIHtcblxuICAucXVvdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH0gLy8gLnF1b3RlXG5cbiAgI2NvbnRlbnQtc2lkZWJhci13cmFwIHtcblxuICAgICNzZWN0aW9uX2hlYWRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH0gLy8gI3NlY3Rpb25faGVhZGVyXG5cbiAgICAjbWFpbl9jb250ZW50X3dyYXAge1xuXG4gICAgICAjc2lkZWJhciB7XG4gICAgICAgIC53aWRnZXRfdGV4dDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH0gLy8ud2lkZ2V0X3RleHQ6bm90KDpudGgtY2hpbGQoMikpXG4gICAgICAgIGEge1xuICAgICAgICAgICY6aG92ZXIsICY6bGluaywgJjphY3RpdmUsICY6dmlzaXRlZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggZG90dGVkICR3ZXN0ZWQtZWxlY3RyaWMtYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtbmF2eS1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9IC8vIGFcbiAgICAgIH0gLy8gI3NpZGViYXJcblxuICAgICAgLndpZGdldHRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH0gLy8gLndpZGdldHRpdGxlXG5cbiAgICAgIC5hdC1hLWdsYW5jZS13aWRnZXQge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgICAgfSAvLyB0YWJsZVxuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB9IC8vIHRoLCB0ZFxuICAgICAgICB0aCB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB9IC8vIHRoXG4gICAgICAgIHRkIHtcbiAgICAgICAgICBjb2xvcjogJHdlc3RlZC1uYXZ5LWJsdWU7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH0gLy8gdGRcbiAgICAgIH0gLy8gLmF0LWEtZ2xhbmNlLXdpZGdldFxuXG4gICAgfSAvLyAjbWFpbl9jb250ZW50X3dyYXBcbiAgfSAvLyAjY29udGVudC1zaWRlYmFyLXdyYXBcbn0gLy8gL3BhZ2UtYWJvdXQtdXNcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBBYm91dCBVcyB8IFN0YWZmIHwgU2lkZWJhclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zaW5nbGUtcGVyc29ubmVsIHtcbiAgLnNpZGViYXItLWxlZnQge1xuICAgIC8vIGZsb2F0OiBsZWZ0O1xuICAgIC8vIHdpZHRoOiAyMyU7XG4gICAgLy8gcGFkZGluZy1yaWdodDogMzBweDtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzBweCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLndpZGdldCB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH0gLy8gLndpZGdldFxuICAgIC5zaWRlYmFyX190aXRsZSB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIH1cbiAgICAuYWRkcmVzcywgLmZheCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuaWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAucGhvbmUge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgY29sb3I6ICR3ZXN0ZWQtbmF2eS1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJ0ZWw6XCI7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgfVxuICAgIH0gLy8gLnBob25lXG4gICAgLmVtYWlsIHtcbiAgICAgIHdpZHRoOiAxNDNweDtcbiAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdlc3RlZC1ncmV5LTM7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAmOmhvdmVyLCAmOmxpbmssICY6YWN0aXZlLCAmOnZpc2l0ZWQge1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gLy8uZW1haWxcbiAgICAucGVyc29ubmVsX2pvYl90aXRsZSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBjb2xvcjogJHdlc3RlZC1uYXZ5LWJsdWU7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIH1cbiAgICAjYmlvX3BpYyB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2NXB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB9XG4gICAgfSAvLyAjYmlvX3BpY1xuICAgICNzaWRlYmFyX2NvbnRhY3Qge1xuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIC53aWRnZXR0aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9IC8vICNzaWRlYmFyX2NvbnRhY3RcbiAgfSAvLyAuc2lkZWJhci0tbGVmdFxuICAjbWFpbl9jb250ZW50X3dyYXAge1xuICAgICNzaWRlYmFyIHtcbiAgICAgIC8vIGZsb2F0OiBsZWZ0O1xuICAgICAgLy8gd2lkdGg6IDIyJTtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMTdweCkge1xuICAgICAgICBtYXJnaW46IDI1cHggMCAwIDIzJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODMwcHgpIHtcbiAgICAgICAgbWFyZ2luOiAyNXB4IDAgMCAwO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgIH1cbiAgICAgICNjb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICNzaWRlYmFyX3JlbGF0ZWRfcHJvZ3JhbXMge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWVsZWN0cmljLWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gLy8gYVxuICAgICAgICB9IC8vICNzaWRlYmFyX3JlbGF0ZWRfcHJvZ3JhbXNcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC53aWRnZXQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdlc3RlZC1iYWJ5LWJsdWU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMCA2cHggMDtcbiAgICAgICAgLndpZGdldC13cmFwIHtcbiAgICAgICAgICAud2lkZ2V0dGl0bGUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLW5hdnktYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSwgLm5hbWUge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICAuaWNvbiwgaW1nLCAuYWxsX25ld3NfbGluaywgLm5ld3NfZGF0ZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvKiAud2lkZ2V0ICovXG4gICAgfSAvLyAjc2lkZWJhclxuICB9IC8vICNtYWluX2NvbnRlbnRfd3JhcFxufSAvLyAuc2luZ2xlLXBlcnNvbm5lbFxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEFib3V0IFVzIHwgV29ya2luZyBXaXRoIFdlc3RFZCBTaWRlYmFyXG4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucGFnZS13b3JraW5nLXdpdGgtd2VzdGVkIHtcbiAgI3NpZGViYXIge1xuICAgIHdpZHRoOiAyMiU7XG4gICAgcCB7XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5NXB4KSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAyMHB4IDAgMCAwO1xuICAgIH1cbiAgICAud2lkZ2V0IHtcbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgICAud2lkZ2V0dGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cbiAgICB9IC8vIC53aWRnZXRcbiAgICAudGV4dHdpZGdldCB7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgfSAvLyAjc2lkZWJhclxufSAvLyAucGFnZS13b3JraW5nLXdpdGgtd2VzdGVkXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBBYm91dCBVcyB8IFByb2dyYW0gU2lkZWJhclxuIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNpbmdsZS1wcm9ncmFtIHtcbiAgI3NpZGViYXIge1xuICAgIHdpZHRoOiAxNyU7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAud2lkZ2V0IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC53aWRnZXR0aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjlweDtcbiAgICAgIH1cbiAgICAgIC5waG9uZSwgLmFkZHJlc3Mge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgLmRpcmVjdG9yX25hbWUge1xuICAgICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMCAwIDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH0gLy8gLmRpcmVjdG9yX25hbWVcbiAgICAgIC5jb250YWN0SW5mbyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIC5lbWFpbCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTUwcHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDRweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3ZXN0ZWQtbmF2eS1ibHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSAvLyAuZW1haWxcbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9IC8vIC5uYW1lXG4gICAgICB9IC8vIC5jb250YWN0SW5mb1xuICAgICAgLmljb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICB9IC8vIC5pY29uXG4gICAgfSAvLyAud2lkZ2V0XG4gICAgI3NpZGViYXJfd2Vic2l0ZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAjc2lkZWJhcl9zb2NpYWxfbWVkaWEge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH0gLy8gI3NpZGViYXJcbn0gLy8gc2luZ2xlLXByb2dyYW1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgQWJvdXQgVXMgfCBXZXN0RWQgUHJvZ3JhbXMgfCBJbmRpdmlkdWFsIFByb2dyYW0gfCBQcm9qZWN0cyB8IEludmlkdWFsIFByb2plY3QgU2lkZWJhclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zaW5nbGUtcHJvamVjdCB7XG4gICNzaWRlYmFyIHtcbiAgICB3aWR0aDogMzAlO1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gICAgLndpZGdldCB7XG4gICAgICAud2lkZ2V0dGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICAgICAgICBtYXJnaW46IDAgMCAwIDExMHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIH1cbiAgICB9IC8vIC53aWRnZXRcbiAgICAuY29udGFjdEluZm8ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICY6bnRoLW9mLXR5cGUobisyKSB7XG4gICAgICAgIC5uYW1lIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5waG90byB7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDdweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5waG90byB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIH1cbiAgICAgIH0gLy8uIHBob3RvXG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5uYW1lIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgNXB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGNvbG9yOiAkd2VzdGVkLWVsZWN0cmljLWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH0gLy8gLm5hbWVcbiAgICB9IC8vIC5jb250YWN0SW5mb1xuICAgIC5waG9uZS1mYXgtY29udGFpbmVyIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDU1JTtcbiAgICAgIG1pbi13aWR0aDogMTUwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAuaWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH0gLy8gLmljb25cbiAgICAgIC5lbWFpbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBwYWRkaW5nOiA2cHggMTNweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgfVxuICAgICAgfSAvLyAuZW1haWxcbiAgICAgIC5waG9uZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbWFyZ2luOiA3cHggMCAwIDA7XG4gICAgICAgIGNvbG9yOiAkd2VzdGVkLWxpZ2h0LWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIH0gLy8gLnBob25lXG4gICAgfSAvLy5waG9uZS1mYXgtY29udGFpbmVyXG4gIH0gLy8jc2lkZWJhclxufSAvLyAuc2luZ2xlLXByb2plY3RcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBBYm91dCBVcyB8IFByb2dyYW0gfCBJbmRpdmlkdWFsIFByb2dyYW1zIHwgQ3VzdG9tIFNpZGViYXJzXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBvc3RpZC0zMTQ3MywgLnBvc3RpZC0zMTQ3NCwgLnBvc3RpZC0zMTQ3MiwgLnBvc3RpZC0zMTQ2NCwgLnBvc3RpZC0zMTQ2NywgLnBvc3RpZC0zMTQ2OCwgLnBvc3RpZC0zMTQ2OSwgLnBvc3RpZC0zMTQ3MSB7XG4gICNzaWRlYmFyIHtcbiAgICAud2lkZ2V0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAudGV4dHdpZGdldCB7XG4gICAgICAgICAgLyogZGlzcGxheTogbm9uZTsgKi8gLyogTlAgVEVTVCAqL1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvKiAuZmlyc3QtY2hpbGQgKi9cbiAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAud2lkZ2V0dGl0bGUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH0gLy8gLmxhc3QtY2hpbGRcbiAgICB9IC8vIC53aWRnZXRcbiAgfSAvLyAjc2lkZWJhclxufSAvLyAucG9zdGlkLSMjIyMjXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIEFib3V0IFVzIHwgQXJlYSBvZiBXb3JrIHwgT3ZlcnZpZXcgU2lkZWJhclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zaW5nbGUtYXJlYV9vZl93b3JrIHtcbiAgI2NvbnRlbnQge1xuICAgICNzaWRlYmFyX3JlbGF0ZWRfbmV3cyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgICAgd2lkdGg6IDQ3JTtcbiAgICAgIG1hcmdpbjogMCAzJSAwIDA7XG4gICAgICBwYWRkaW5nOiAzMHB4IDA7XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MjBweCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgJi5uZXdzbGlzdCB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSAvLyBsaVxuICAgICAgICB9IC8vLm5ld3NsaXN0XG4gICAgICB9IC8vIHVsXG4gICAgICAuaGVhZGluZ19iYXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIC52aWV3bW9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBoNCB7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW4gIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItbGVmdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnkgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDI4cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogMTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAzNXB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH0gLy8gaDRcbiAgICAgIH0gLy8gLmhlYWRpbmdfYmFyXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBoNCB7fVxuICAgICAgfSAvLyBSZXNlYXJjaCBCbG9nXG4gICAgICAud2lkZ2V0X25ld3NfcG9zdCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMzBweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgLm5ld3NfdGh1bWIge1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgIG1pbi13aWR0aDogMTIwcHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2NjYztcbiAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQzMHB4KSB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQzMHB4KSB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSAvLyAubmV3c190aHVtYlxuICAgICAgICAubmV3c190aXRsZSB7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZWxlY3RyaWMtYmx1ZTtcbiAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIH0gLy8gLm5ld3NfdGl0bGVcbiAgICAgICAgLm5ld3NfZGF0ZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfSAvLyAubmV3c19kYXRlXG4gICAgICAgIC5leGNlcnB0IHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgfVxuICAgICAgfSAvLyAud2lkZ2V0X25ld3NfcG9zdFxuICAgIH0gLy8gUmVjZW50IE5ld3NcbiAgfSAvLyAjY29udGVudFxuICAjc2lkZWJhciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH0gLy8gI3NpZGViYXJcbn0gLy8gLnNpbmdsZS1hcmVhX29mX3dvcmtcblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzBweCkge1xuXG4gIC5zaW5nbGUtcGVyc29ubmVsICNzaWRlYmFyX2NvbnRhY3Qge1xuXG4gICAgLnBob25lLWZheC1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIHNwYW4uZW1haWwge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgbWF4LXdpZHRoOiAyMDBweCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzBweCkge1xuXG4gIC5zaW5nbGUtcGVyc29ubmVsID4gI3dyYXAgPiAjaW5uZXIgLndyYXAgI2NvbnRlbnQtc2lkZWJhci13cmFwICNtYWluX2NvbnRlbnRfd3JhcCAuZW50cnktY29udGVudCB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHggIWltcG9ydGFudDtcbiAgfVxuXG59XG5cblxuXG5cblxuXG5cblxuXG5cblxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuSGVybyBTdHlsaW5nXG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0ICdfdmFyaWFibGVzJztcblxuXG4vKiBIZXJvIC8gR2xvYmFsXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlcm8ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdlc3RlZC1uYXZ5LWJsdWU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG5cbiAgLndyYXAge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIG1heC13aWR0aDogMTA0MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDQwcHggMjBweDtcbiAgfVxuXG4gIC5zdWJ0aXRsZSxcbiAgaDEgYSxcbiAgLmJyZWFkY3J1bWJzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIGNvbG9yOiAjYzRkNWU4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG1hcmdpbjogMCAwIDNweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGNvbG9yOiAjYzRkNWU4O1xuICAgIH1cblxuICB9XG5cbiAgcCBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5icmVhZGNydW1icyB7XG5cbiAgICBzcGFuLnNlY3Rpb24sXG4gICAgc3Bhbi5wYXJlbnQsXG4gICAgc3Bhbi5zZWN0aW9uX3N1YiB7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgPiBcIjtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIHNwYW46bGFzdC1vZi10eXBlOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICB9XG5cbiAgaDEsIGgxICsgaDIge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIGgxIHNwYW4ud2VzdGVkLWluc2lnaHRzIHtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICB9XG5cbiAgLmludHJvIHtcblxuICAgIGgyLCBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICB9XG5cbiAgYS5idG4tY29udGFjdCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBtYXJnaW46IDMwcHggMCAzMHB4IDA7XG4gICAgcGFkZGluZzogOHB4IDE2cHg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IC43NTtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIFNsaWRlciAqL1xuICAuc2xpZGVyIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGluaXRpYWw7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAwIDIwcHggMCAhaW1wb3J0YW50O1xuXG4gICAgJi5lbnRyeS1jb250ZW50IGEge1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGgyLCBwIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIDAgMTVweCAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaDIgYSwgcCBhIHtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgI2ZmZjtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIHBhZ2luYXRpb24gKi9cbiAgICAuaW50cm9fc2xpZGVfcGFnZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMjBweCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMjBweCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAuYngtcGFnZXIge1xuICAgICAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAuaGVyby1jb250ZW50IHtcbiAgICBtYXJnaW46IDE1cHggMCAwIDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBwICsgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIH1cblxuICAgIC8qIFF1b3RlcyAqL1xuICAgIGJsb2NrcXVvdGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAxMTJweDtcbiAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL3F1b3RlLnN2Z1wiKSBjZW50ZXIgY2VudGVyIC8gY29udGFpbiBuby1yZXBlYXQ7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgbWFyZ2luOiA1cHggMjBweCAxMDBweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyMDFEXCI7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NTBweCkge1xuXG4gICAgICAgIHAge1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBwIGNpdGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwJTtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ1xcMjAxNCc7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIGhpZGUgc3Vic3VibmF2IGxvZ2luIGxpbmsgKi9cbiAgI3N1YnN1Ym1lbnVfbG9naW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG59XG5cblxuLyogSGVybyAvIFBob3Rvc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogQWJvdXQgVXMgKi9cbi5wYWdlLWFib3V0LXVzICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvYWJvdXQtdXMtaGVyby1vdmVydmlldy1iZy5wbmdcIik7IH1cblxuLyogQWJvdXQgVXMgfCBCb2FyZCBvZiBEaXJlY3RvcnMgKi9cbi5wYWdlLWJvYXJkLW9mLWRpcmVjdG9ycyAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy93ZXN0ZWQvaW1hZ2VzL2Fib3V0LXVzLWhlcm8tYm9hcmQtb2YtZGlyZWN0b3JzLWJnLnBuZ1wiKTsgfVxuXG4vKiBBYm91dCBVcyB8IExlYWRlcnNoaXAgKi9cbi5wYWdlLWxlYWRlcnNoaXAgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9hYm91dC11cy1oZXJvLWxlYWRlcnNoaXAtYmcucG5nXCIpOyB9XG5cbi8qIEFib3V0IFVzIHwgU3RhZmYgRGlyZWN0b3J5ICovXG4ucGFnZS1zdGFmZi1kaXJlY3RvcnkgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9hYm91dC11cy1oZXJvLXN0YWZmLWJnLnBuZ1wiKTsgfVxuXG4vKiBBYm91dCBVcyB8IFByb2dyYW1zICovXG4ucGFnZS1wcm9ncmFtcyAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy93ZXN0ZWQvaW1hZ2VzL2Fib3V0LXVzLWhlcm8tcHJvZ3JhbXMtYmcucG5nXCIpOyB9XG5cbi8qIEFPVyAvIENvbGxlZ2UgJiBDYXJlZXIgKi9cbmJvZHkuY29sbGVnZS1jYXJlZXIgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9oZXJvL0FPVy1IZXJvLUNvbGxlZ2UucG5nXCIpOyB9XG5cbi8qIEFPVyAvIEVhcmx5IENoaWxkaG9vZCAqL1xuYm9keS5lYXJseS1jaGlsZGhvb2QtZGV2ZWxvcG1lbnQtbGVhcm5pbmcgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9oZXJvL0FPVy1IZXJvLUVhcmx5LUNoaWxkaG9vZC5wbmdcIik7IH1cblxuLyogQU9XIC8gRUxMICovXG5ib2R5LmVuZ2xpc2gtbGFuZ3VhZ2UtbGVhcm5lcnMgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9oZXJvL0FPVy1IZXJvLUVMTC5wbmdcIik7IH1cblxuLyogQU9XIC8gSGVhbHRoLCBTYWZldHksICYgV2VsbC1CZWluZyAqL1xuYm9keS5oZWFsdGgtc2FmZXR5LXdlbGwtYmVpbmcgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9oZXJvL0FPVy1IZXJvLUhlYWx0aC5wbmdcIik7IH1cblxuLyogQU9XIC8gTGl0ZXJhY3kgKi9cbmJvZHkubGl0ZXJhY3kgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9oZXJvL0FPVy1IZXJvLUxpdGVyYWN5LnBuZ1wiKTsgfVxuXG4vKiBBT1cgLyBTY2hvb2xzLCBEaXN0cmljdHMsICYgU3RhdGUgRWR1Y2F0aW9uIFN5c3RlbXMgKi9cbmJvZHkuc2Nob29scy1kaXN0cmljdHMtc3RhdGUtZWR1Y2F0aW9uLXN5c3RlbXMgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9oZXJvL0FPVy1IZXJvLVNjaG9vbC1TeXN0ZW1zLnBuZ1wiKTsgfVxuXG4vKiBBT1cgLyBTY2llbmNlLCBUZWNobm9sb2d5LCBFbmdpbmVlcmluZywgJiBNYXRoZW1hdGljcyAqL1xuYm9keS5zY2llbmNlLXRlY2hub2xvZ3ktZW5naW5lZXJpbmctbWF0aGVtYXRpY3MgICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby9BT1ctSGVyby1TVEVNLnBuZ1wiKTsgfVxuXG4vKiBBT1cgLyBTcGVjaWFsIEVkICovXG5ib2R5LnNwZWNpYWwtZWR1Y2F0aW9uICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby9BT1ctSGVyby1TcGVjRWQucG5nXCIpOyB9XG5cbi8qIEFPVyAvIFN0YW5kYXJkcywgQXNzZXNzbWVudCwgJiBBY2NvdW50YWJpbGl0eSAqL1xuYm9keS5zdGFuZGFyZHMtYXNzZXNzbWVudC1hY2NvdW50YWJpbGl0eSAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy93ZXN0ZWQvaW1hZ2VzL2hlcm8vQU9XLUhlcm8tU3RhbmRhcmRzLnBuZ1wiKTsgfVxuXG4vKiBBT1cgLyBUZWFjaGVycyAmIExlYWRlcnMgKi9cbmJvZHkudGVhY2hlcnMtbGVhZGVycyAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy93ZXN0ZWQvaW1hZ2VzL2hlcm8vQU9XLUhlcm8tVGVhY2hlcnMucG5nXCIpOyB9XG5cbi8qIEFPVyAvIEZvdXIgRG9tYWlucyAqL1xuYm9keS5mb3VyLWRvbWFpbnMgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9oZXJvL0FPVy1IZXJvLUZvdXItRG9tYWlucy5wbmdcIik7IH1cblxuLyogQU9XIC8gQ2hhcnRlcnMgJiBDaG9pY2UgKi9cbmJvZHkuY2hhcnRlcnMtY2hvaWNlICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby9BT1ctSGVyby1DaGFydGVycy5wbmdcIik7IH1cblxuLyogQU9XIC8gVHJhdW1hICovXG5ib2R5LnRyYXVtYSAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy93ZXN0ZWQvaW1hZ2VzL2hlcm8vMjAxOS0wMy10cmF1bWEtaGVyby5wbmdcIik7IH1cblxuLyogUmVzZWFyY2ggJiBFdmFsdWF0aW9uIHwgTGFuZGluZywgV2hhdCBXZSBEbyAqL1xuLnBhZ2UtcmVzZWFyY2gtZXZhbHVhdGlvbiAjaGVybyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi93cC1jb250ZW50L3RoZW1lcy93ZXN0ZWQvaW1hZ2VzL2hlcm8vaGVyby1waG90by1yZXNlYXJjaC1ldmFsdWF0aW9uLnBuZ1wiKTsgfVxuXG4vKiBSZXNlYXJjaCAmIEV2YWx1YXRpb24gfCBIb3cgV2UgQ2FuIEhlbHAgKi9cbi5yZXNlYXJjaC1ldmFsdWF0aW9uLnBhZ2UtaG93LXdlLWNhbi1oZWxwICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby1waG90by1yZXNlYXJjaC1ldmFsdWF0aW9uLWhlbHAucG5nXCIpOyB9XG5cbi8qIFJlc2VhcmNoICYgRXZhbHVhdGlvbiB8IFJlcG9ydHMgJiBQdWJsaWNhdGlvbnMgKi9cbi5yZXNlYXJjaC1ldmFsdWF0aW9uLnBhZ2UtcmVwb3J0cy1wdWJsaWNhdGlvbnMgI2hlcm8geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9oZXJvLXBob3RvLXJlc2VhcmNoLWV2YWx1YXRpb24tcmVwb3J0c3B1Yi5wbmdcIik7IH1cblxuLyogUmVzZWFyY2ggJiBFdmFsdWF0aW9uIC8gUmVzZWFyY2ggQmxvZyAqL1xuLnJlc2VhcmNoLWV2YWx1YXRpb24ucGFnZS1yZXNlYXJjaC1ibG9nICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby1waG90by1yZXNlYXJjaC1ldmFsdWF0aW9uLXJlc2VhcmNoYmxvZy5wbmdcIik7IH1cblxuLyogUExUQSBsYW5kaW5nICovXG4ucGFnZS1wcm9mZXNzaW9uYWwtbGVhcm5pbmctYW5kLXRlY2huaWNhbC1hc3Npc3RhbmNlICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby1waG90by1wbHRhLnBuZ1wiKTsgfVxuXG4vKiBPcnBoYW4gfCBXZXN0RWQgaW4gTmV3IFlvcmssIEdlb3JnaWEsIEZsb3JpZGEgKi9cbi5uZXcteW9yayAjaGVybywgLmdlb3JnaWEgI2hlcm8sIC5mbG9yaWRhICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdGhlbWVzL3dlc3RlZC9pbWFnZXMvaGVyby1waG90by1uZXd5b3JrLnBuZ1wiKTsgfVxuXG4vKiBPcnBoYW4gfCBUZWFjaGVyIFByb2Zlc3Npb25hbCBEZXZlbG9wbWVudCAqL1xuLnRlYWNoZXItcHJvZmVzc2lvbmFsLWRldmVsb3BtZW50ICNoZXJvIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE4LzA3L0hlcm8tU2VydmljZXMtUXVhbGl0eS1UZWFjaGluZy1mb3ItRW5nbGlzaC1MZWFybmVycy5wbmdcIik7IH1cblxuXG4vKiBIZXJvIC8gU3VibmF2XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlcm8gI3N1YnN1Ym1lbnUsIC5oZXJvLXN1Ym5hdiB7XG4gIGNsZWFyOiBib3RoO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZmZjtcbiAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICBwYWRkaW5nOiAzMHB4IDAgMCAwO1xuXG4gIHVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zZi13aXRoLXVsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvbmF2LWFycm93LWRvd24td2hpdGUucG5nXCIpIG5vLXJlcGVhdCByaWdodCA1cHggIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgJi5jdXJyZW50X3BhZ2VfaXRlbSxcbiAgICAgICYuY3VycmVudC1tZW51LWl0ZW0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAgIGE6bGluaywgYTpob3ZlciwgYTphY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkIHdoaXRlO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCA1cHggMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qIG90aGVyIHJlc291cmNlcyBkcm9wZG93biAqL1xuICAgICAgLnN1Yi1tZW51IHtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJveC1zaGFkb3c6IDAgN3B4IDIwcHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAmLmN1cnJlbnRfcGFnZV9pdGVtIGEge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwNTZweCkge1xuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgNXB4IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICYuc2Ytd2l0aC11bCB7XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuc3ViLW1lbnUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIEhlcm8gLyBIb21lXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlcm8uaG9tZSB7XG5cbiAgLndyYXAge1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgfVxuXG4gIC5ieC12aWV3cG9ydCB7XG4gICAgaGVpZ2h0OiAzNDBweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmJ4LXdyYXBwZXIgLmJ4LWxvYWRpbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgei1pbmRleDogOTk5ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKiBwaG90byAqL1xuICAuaW1nIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNjUwcHg7XG4gICAgaGVpZ2h0OiAzNDBweDtcbiAgICBtYXJnaW46IDAgMjdweCAwIDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxuICAvKiBjb250ZW50ICovXG4gIC5pbmZvIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzIwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDE1cHggMCAwIDA7XG5cbiAgICBoMyB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIHBhZ2luYXRpb24gKi9cbiAgLmJ4LWNvbnRyb2xzIHtcbiAgICB6LWluZGV4OiA5OTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxMHB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAzMjVweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG5cbiAgICAuYngtcGFnZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA0MHB4KSB7XG5cbiAgICAvKiBTcG90bGlnaHQgKi9cbiAgICAuYngtd3JhcHBlciB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLmJ4LXZpZXdwb3J0IHtcbiAgICAgICAgaGVpZ2h0OiA1NTBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAuc3BvdGxpZ2h0X3NsaWRlcyB7XG5cbiAgICAgICAgLmltZywgLmluZm8ge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAvLyB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgLy8gaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5ieC1jb250cm9scyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY3MHB4KSB7XG5cbiAgICAuYngtY29udHJvbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyogU3BvdGxpZ2h0ICovXG4gICAgLmJ4LXdyYXBwZXIge1xuXG4gICAgICAuc3BvdGxpZ2h0X3NsaWRlcyB7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBIZXJvIC8gQWJvdXQgVXMgLyBQZXJzb25uZWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jaGVyby5wZXJzb25uZWwge1xuXG4gIGgxIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBjb2xvcjogI2M0ZDVlODtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAzcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIEhlcm8gLyBBYm91dCBVcyAvIFBlcnNvbm5lbCAvIEN1c3RvbSBDb250YWN0IEZvcm1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LmVtYWlsLWZvcm0gI2hlcm8uYWJvdXQtdXMge1xuXG4gIGgxIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXI6IG5vbmU7XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogSGVybyAvIFByb2dyYW1zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlcm8ucHJvZ3JhbXMge1xuXG4gIC8qIHJlc2V0IHRvIGRlZmF1bHQgaDEgKi9cbiAgaDEgYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIG1hcmdpbjogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiBpbmhlcml0O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIEhlcm8gLyBBcmVhcyBvZiBXb3JrXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlcm8uYW93LFxuI2hlcm8uZmVhdC1pbml0IHtcblxuICBoMSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBjb2xvcjogI2M0ZDVlODtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAzcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxufVxuXG5ib2R5LnBhZ2UtdGVtcGxhdGUtYW93LXJlc291cmNlbGlzdC1wYWdlIHtcblxuICAjc3Vic3VibWVudSB1bCBsaSNzdWJzdWJtZW51X3Jlc291cmNlcyB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgIGE6bGluaywgYTpob3ZlciwgYTphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCB3aGl0ZTtcbiAgICAgIHBhZGRpbmc6IDAgMCA1cHggMDtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogSGVybyAvIEFyZWFzIG9mIFdvcmsgLyBGb3VyIERvbWFpbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jaGVyby5mb3VyZG9tYWlucyB7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0bztcblxuICAud3JhcCB7XG4gICAgcGFkZGluZy10b3A6IDIzMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgLmhlcm8tc3VibmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nOiAwIDVweDtcbiAgfVxuXG59XG5cblxuLyogSGVybyAvIEFyZWFzIG9mIFdvcmsgLyBDaGFydGVycyAmIENob2ljZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZXJvLmNoYXJ0ZXJzLWNob2ljZSB7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0bztcblxuICAud3JhcCB7XG4gICAgcGFkZGluZy10b3A6IDI2NXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgLmhlcm8tc3VibmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gIH1cblxufVxuXG5cbi8qIEhlcm8gLyBBcmVhcyBvZiBXb3JrIC8gVHJhdW1hXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlcm8udHJhdW1hIHtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvO1xuXG4gIC53cmFwIHtcbiAgICBwYWRkaW5nLXRvcDogMjY1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIH1cblxuICAuaGVyby1zdWJuYXYgdWwgbGkge1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgfVxuXG59XG5cblxuLyogSGVybyAvIFJlc2VhcmNoICYgRXZhbHVhdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZXJvLnJlcy1ldmFsIHtcblxuICBoMSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBjb2xvcjogI2M0ZDVlODtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAzcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmhlcm8tY29sdW1uLmwtY29sIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNzAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmhlcm8tY29sdW1uLnItY29sIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgbWFyZ2luOiAyMnB4IDAgMTBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAwIDE0cHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG5cbiAgICAuaGVyby1jb2x1bW4ubC1jb2wsXG4gICAgLmhlcm8tY29sdW1uLnItY29sIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICB9XG5cbn1cblxuLyogV2hhdCBXZSBEbyBTdWJwYWdlcyAqL1xuYm9keS5wYWdlLXRlbXBsYXRlLXJlc2VhcmNoLWV2YWx1YXRpb24gIHtcblxuICAuaGVyby1zdWJuYXYgdWwgbGkuY3VycmVudC1wYWdlLWFuY2VzdG9yIGEge1xuICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCB3aGl0ZTtcbiAgICBwYWRkaW5nOiAwIDAgNXB4IDA7XG4gIH1cblxufVxuXG5cbi8qIEhlcm8gLyBQcm9mZXNzaW9uYWwgRGV2ZWxvcG1lbnQsIFRlY2huaWNhbCBBc3Npc3RhbmNlIChzZXBhcmF0ZSBwYWdlcyBidXQgc2hhcmVkIGNsYXNzZXMpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlcm8uc2VydmljZXMtcGx0YSB7XG5cbiAgLmhlcm8tY29sdW1uLmwtY29sIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNzAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gICAgfVxuXG4gICAgYS5idG4tY29udGFjdCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICRsaW5rLXByaW1hcnk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBtYXJnaW46IDI1cHggMCAyNXB4IDA7XG4gICAgICBwYWRkaW5nOiA4cHggMTZweDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLmhlcm8tY29sdW1uLnItY29sIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAwIDE0cHggMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gICNzdWJzdWJtZW51IHtcblxuICAgIHVsIHtcblxuICAgICAgbGkge1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcblxuICAgIC5oZXJvLWNvbHVtbi5sLWNvbCxcbiAgICAuaGVyby1jb2x1bW4uci1jb2wge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIEhlcm8gLyBTZXJ2aWNlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZXJvLnNlcnZpY2VzIHtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvO1xuXG4gIC53cmFwIHtcbiAgICBwYWRkaW5nLXRvcDogMjUwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIH1cblxufVxuXG5cbi8qIEhlcm8gLyBSZXNvdXJjZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5Lndvb2NvbW1lcmNlICNoZXJvLnJlc291cmNlcyB7XG5cbiAgLndyYXAge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaGVyby1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG5cbiAgI3N1YnN1Ym1lbnUge1xuICAgIG1hcmdpbjogMjJweCAwIDAgMDtcbiAgICBwYWRkaW5nOiAyMHB4IDAgMCAwO1xuXG4gICAgdWwgbGkge1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgIH1cblxuICB9XG5cbiAgLyogc3BvdGxpZ2h0ICovXG4gIC5oZXJvLWNvbHVtbi5sLWNvbCB7XG4gICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuXG4gICAgI3Nwb3RsaWdodF9zbGlkZXIge1xuICAgICAgd2lkdGg6IDcwMHB4O1xuICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjNTI3NDllO1xuICAgICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgIzUyNzQ5ZTtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA2cHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAzMHB4IDMwcHggMzBweCA1cHg7XG5cbiAgICAgIC5ieC1jb250cm9scyB7XG4gICAgICAgIHotaW5kZXg6IDMzMztcbiAgICAgIH1cblxuICAgICAgLmJ4LXdyYXBwZXIge1xuICAgICAgICBoZWlnaHQ6IDI2MHB4O1xuICAgICAgfVxuXG4gICAgICAuYngtdmlld3BvcnQge1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAvKiB0aHVtYm5haWwgKi9cbiAgICAgIC5waG90byB7XG4gICAgICAgIHdpZHRoOiAxNzVweCAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDZweCA2cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLyogY29udGVudCAqL1xuICAgICAgLmluZm8ge1xuICAgICAgICB3aWR0aDogNDUwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuc3BvdGxpZ2h0X2hlYWRlciB7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICBjb2xvcjogIzZFQTlFRDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIG1hcmdpbjogMCAwIDVweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCI7XG4gICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuZXhjZXJwdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiBwYWdpbmF0aW9uIGJhbGxzICovXG4gICAgLmJ4LWNvbnRyb2xzIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLmJ4LXBhZ2VyIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAvKiBoZWxwZnVsIGxpbmtzICovXG4gIC5oZXJvLWNvbHVtbi5yLWNvbCB7XG5cbiAgICAvKiBzZWFyY2ggKi9cbiAgICAjcHJvZHVjdF9zZWFyY2hfZm9ybSB7XG4gICAgICBtYXJnaW46IDAgMCAyNHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBmb3JtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3ItcHJpbWFyeTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuXG4gICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBDaHJvbWUvT3BlcmEvU2FmYXJpICovXG4gICAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICAgIH1cbiAgICAgICAgJjo6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTkrICovXG4gICAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICAgIH1cbiAgICAgICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBJRSAxMCsgKi9cbiAgICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgfVxuICAgICAgICAmOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE4LSAqL1xuICAgICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICB3aWR0aDogMTNweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2ljb24tcmVzb3VyY2VzLXNlYXJjaC1hcnJvdy1ibHVlLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmxpbmtzIHtcblxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyMHB4KSB7XG5cbiAgICAuaGVyby1jb2x1bW4ubC1jb2wsXG4gICAgLmhlcm8tY29sdW1uLnItY29sIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmhlcm8tY29sdW1uLmwtY29sIHtcbiAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgI3Nwb3RsaWdodF9zbGlkZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAuc2xpZGUge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuYngtd3JhcHBlcixcbiAgICAgICAgLmJ4LXZpZXdwb3J0IHtcbiAgICAgICAgICBoZWlnaHQ6IDI1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAucGhvdG8ge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgbWFyZ2luOiAwIDMwcHggMzBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDAgMjVweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5ieC1jb250cm9scyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmhlcm8tY29sdW1uLnItY29sIHtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgfVxuXG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MDBweCkge1xuXG4gICAgLmhlcm8tY29sdW1uLmwtY29sIHtcblxuICAgICAgI3Nwb3RsaWdodF9zbGlkZXIge1xuXG4gICAgICAgIC5ieC13cmFwcGVyLFxuICAgICAgICAuYngtdmlld3BvcnQge1xuICAgICAgICAgIC8vIGhlaWdodDogNDUwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5waG90byB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIFJlc291cmNlIEhlcm8gMlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZXJvLnJlc291cmNlcyxcbiNoZXJvLnBhZ2UtaGVybyB7XG5cbiAgI3Jlc291cmNlLWFjY3QtdG9vbHMge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogNTUwcHg7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuYWNjdC10b29scyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiA1cHggMjBweCAwIDA7XG5cbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjOGZjOGZhO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHBhZGRpbmc6IDAgMXB4O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIOKAoiBcIjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgZm9ybSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvcGFjaXR5OiAuNTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1pbi13aWR0aDogMjUwcHg7XG4gICAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXByaW1hcnk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcblxuICAgICAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsgLyogQ2hyb21lL09wZXJhL1NhZmFyaSAqL1xuICAgICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICB9XG4gICAgICAgICY6Oi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE5KyAqL1xuICAgICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICB9XG4gICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgLyogSUUgMTArICovXG4gICAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgIH1cbiAgICAgICAgJjotbW96LXBsYWNlaG9sZGVyIHsgLyogRmlyZWZveCAxOC0gKi9cbiAgICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogN3B4O1xuICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9pY29uLXJlc291cmNlcy1zZWFyY2gtYXJyb3ctYmx1ZS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG5cbiAgICAgIC5hY2N0LXRvb2xzLFxuICAgICAgZm9ybSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTI1cHgpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgfVxuXG59XG5cbi8qIE15IENhcnQgKi9cbmJvZHkud29vY29tbWVyY2UtcGFnZSAjaGVyby5wYWdlLWhlcm8ge1xuXG4gIGgxIHtcblxuICAgIGEge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogUmVzb3VyY2VzIC8gV2ViaW5hcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5ib2R5LnBhZ2UtdGVtcGxhdGUtd2ViaW5hcnMtaG9tZSB7XG5cbiAgLyogU3BvdGxpZ2h0ICovXG4gIC5zcG90bGlnaHQge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAjNTI3NDllO1xuICAgIG1hcmdpbjogMzBweCAwIDAgMDtcbiAgICBwYWRkaW5nOiAzMHB4IDAgMCAwO1xuXG4gICAgLmJ4LXdyYXBwZXIge1xuICAgICAgd2lkdGg6IDg1JTtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAvLyAuYngtdmlld3BvcnQge1xuICAgICAgLy8gICBoZWlnaHQ6IDI0MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAvLyB9XG5cbiAgICAgIC5zcG90bGlnaHRfaXRlbSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLmltZyB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIG1hcmdpbjogMTVweCAwIDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xuXG4gICAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICAgIGNvbG9yOiAjNkVBOUVEO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGgzIHtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIjtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIHBhZ2luYXRpb24gYmFsbHMgKi9cbiAgICAuYngtY29udHJvbHMge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgICAuYngtcGFnZXIge1xuICAgICAgICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgICAgICAgb3BhY2l0eTogLjg1O1xuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NTBweCkge1xuXG4gICAgICAvKiBTcG90bGlnaHQgKi9cbiAgICAgIC5ieC13cmFwcGVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLmJ4LXZpZXdwb3J0IHtcbiAgICAgICAgICAvLyBoZWlnaHQ6IDQ1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuc3BvdGxpZ2h0X2l0ZW0ge1xuXG4gICAgICAgICAgLmltZywgLmluZm8ge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NzBweCkge1xuXG4gICAgICAuYngtY29udHJvbHMge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgLyogU3BvdGxpZ2h0ICovXG4gICAgICAuYngtd3JhcHBlciB7XG5cbiAgICAgICAgLnNwb3RsaWdodF9pdGVtIHtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU4MHB4KSB7XG5cbiAgICAgIC8qIFNwb3RsaWdodCAqL1xuICAgICAgLmJ4LXdyYXBwZXIge1xuXG4gICAgICAgIC5ieC12aWV3cG9ydCB7XG4gICAgICAgICAgLy8gaGVpZ2h0OiA1MDBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBIZXJvIC8gV2VzdEVkIEV2ZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkuc2luZ2xlLXdlc3RlZF9ldmVudCAjaGVyby5ldmVudHMge1xuXG4gIGgxIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIGNvbG9yOiAjYzRkNWU4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG1hcmdpbjogMCAwIDNweCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGNvbG9yOiAjYzRkNWU4O1xuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKiBIZXJvIC8gV2VzdEVkIGluIE5ldyBZb3JrXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI2hlcm8ubmV3LXlvcmsge1xuXG4gIC5oZXJvLXN1Ym5hdiB7XG5cbiAgICB1bCB7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgcGFkZGluZzogMCAxMnB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5cbi8qIEhlcm8gLyBXZXN0RWQgTmV3c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiNoZXJvLndlc3RlZC1uZXdzIHtcblxuICBoMSBhIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxufVxuXG5cbi8qIEhlcm8gLyBSJkQgQWxlcnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jaGVyby5yZF9hbGVydCB7XG5cbiAgc3Bhbi5zdWJ0aXRsZSB7XG4gICAgbWFyZ2luOiAwIDAgLTVweCAwO1xuICB9XG5cbiAgaDEge1xuXG4gICAgYSB7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiO1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBzcGFuLnJlZyB7XG4gICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBzdXBlciAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cblxuXG5cblxuXG5cblxuIiwiLypcbi0gUHJvZmlsZSB8IFVuaXZlcnNhbCAtIChCb2FyZCBvZiBEaXJlY3RvcnMpXG4tIFByb2ZpbGUgfCBMZWFkZXJzaGlwXG4qL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Qcm9maWxlIHwgVW5pdmVyc2FsIC0gKEJvYXJkIG9mIERpcmVjdG9ycylcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgJ192YXJpYWJsZXMnO1xuXG4uYm9hcmRfcGVyc29uIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgbWluLWhlaWdodDogMTkwcHg7XG5cbiAgICAucGhvdG8ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IDEzMHB4O1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2VzdGVkLWdyZXktMjtcbiAgICAgICAgfSAvLyBpbWdcbiAgICB9IC8vIC5waG90b1xuXG4gICAgLm5hbWUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBjb2xvcjogJHdlc3RlZC1uYXZ5LWJsdWU7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiA1cHggMCA3cHggMTM0cHg7XG4gICAgfSAvLyAubmFtZVxuXG4gICAgLnRpdGxlIHtcbiAgICAgICAgY29sb3I6ICR3ZXN0ZWQtbGlnaHQtYmx1ZTtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICBwYWRkaW5nOiAwcHggNXB4IDVweCAxMzRweDtcbiAgICB9IC8vIC50aXRsZVxuXG4gICAgLmxvY2FsZSB7XG4gICAgICAgIGNvbG9yOiAkd2VzdGVkLWxpZ2h0LWJsdWU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgcGFkZGluZzogMHB4IDVweCA1cHggMTM0cHg7XG4gICAgfSAvLyAubG9jYWxlXG5cbn0gLy8gLmJvYXJkX3BlcnNvblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Qcm9maWxlIHwgTGVhZGVyc2hpcFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucGFnZS1sZWFkZXJzaGlwIHtcblxuICAgICNjb2xfZnVsbF93aWR0aCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICAmLmJvYXJkX3BlcnNvbiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2JTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAyNDBweDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk5O1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgICAgICAgICAgICAgfSAvLyAmOmhvdmVyXG5cbiAgICAgICAgICAgICAgICAucGhvdG8sXG4gICAgICAgICAgICAgICAgLm5hbWUsXG4gICAgICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgfSAvLyAgIC5waG90bywgLm5hbWUsIC50aXRsZVxuXG4gICAgICAgICAgICAgICAgLm5hbWUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1lbGVjdHJpYy1ibHVlO1xuICAgICAgICAgICAgICAgIH0gLy8gLm5hbWVcblxuICAgICAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1saWdodC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzcHg7XG4gICAgICAgICAgICAgICAgfSAvLyAudGl0bGVcbiAgICAgICAgICAgIH0gLy8gJiAuYm9hcmRfcGVyc29uXG4gICAgICAgIH0gLy9hXG5cbiAgICB9IC8vICNjb2xfZnVsbF93aWR0aFxufSAvLyAucGFnZS1sZWFkZXJzaGlwXG4iLCIvKlxuLSBBYm91dCBVcyB8IE92ZXJ2aWV3XG4tIEFyZWFzIG9mIFdvcmsgfCBVbml2ZXJzYWxcbi0gQXJlYXMgb2YgV29yayB8IE92ZXJ2aWV3XG4tIEFyZWFzIG9mIFdvcmsgfCBQcm9qZWN0c1xuKi9cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblNsaWRlciB8IFVuaXZlcnNhbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgJ192YXJpYWJsZXMnO1xuXG5cbi5zbGlkZXIge1xuICAgIHBhZGRpbmc6IDEwcHggMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDFlbSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgLmludHJvX3NsaWRlIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSAvLyAuaW50cm9fc2xpZGVcbn0gLy8gLnNsaWRlclxuLmludHJvX3NsaWRlX3BhZ2VyLCAuYngtcGFnZXIge1xuICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTc1cHg7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG8gMjBweCBhdXRvO1xufSAvLyAuaW50cm9fc2xpZGVyX3BhZ2VyXG4uYngtcGFnZXItaXRlbSB7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIHdpZHRoOiAyNnB4O1xuICAgIG1hcmdpbi1yaWdodDogOXB4O1xuICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvc2xpZGVyX2NvbnRyb2xzX3Nwcml0ZS5wbmcpICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMjZweCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMjZweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDlweCAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzVweCAwcHggIWltcG9ydGFudDtcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IDBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfSAvLyBhXG59IC8vIC5ieC1wYWdlci1pdGVtXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWJvdXQgVXMgfCBPdmVydmlld1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhZ2UtYWJvdXQtdXMge1xuXG4gICAgLnNsaWRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3ZXN0ZWQtZ3JleS00IHVybCgvd3AtY29udGVudC90aGVtZXMvd2VzdGVkL2ltYWdlcy9hYm91dC11cy1vdmVydmlldy1zbGlkZXItYmcucG5nKSBuby1yZXBlYXQgdG9wIGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAzNzdweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IDA7XG5cbiAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3OTZweCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MTVweCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IC8vIC5jb250YWluZXJcblxuICAgICAgICAuc2xpZGVyLWFib3V0IHtcbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUzNHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNjVweCkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSAvLyBoMVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMzRjY0OEYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc5NnB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTkwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUxNXB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQxNnB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOTdweCkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyOXB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IC8vIHBcbiAgICAgICAgfSAvLyAuc2xpZGVyLWFib3V0XG5cbiAgICAgICAgLmJ4LXBhZ2VyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yNXB4O1xuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3OTZweCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzA1cHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTkwcHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTM0cHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDUwcHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDE2cHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzk3cHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzk3cHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzI5cHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAvLyAuYngtcGFnZXJcblxuICAgIH0gLy8gLnNsaWRlclxufSAvLyAucGFnZS1hYm91dC11c1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuU2xpZGVyIHwgV2VzdEVkIEV4cGVydHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zaW5nbGUtYXJlYV9vZl93b3JrIHtcbiAgICAuZXhwZXJ0cy1pbnRybyB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zbGlkZXJfd3JhcCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDc0JTtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZXhwZXJ0c19zbGlkZXIge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNDBweDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfSAvLyBpbWdcbiAgICAgICAgLmV4cGVydC1waG90byB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAvLyAuZXhwZXJ0LXBob3RvXG4gICAgICAgIC5leHBlcnQtY29udGVudCB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogNzQlO1xuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxpIHt9XG4gICAgICAgIC8vIGxpXG4gICAgfSAvLyAuZXhwZXJ0c19zbGlkZXJcbn0gLy8gLnNpbmdsZS1hcmVhX29mX3dvcmtcbiIsIi8qXG4tIEFib3V0IFVzIHwgVW5pdmVyc2FsXG4tIEFib3V0IFVzIHwgT3ZlcnZpZXdcbi0gQWJvdXQgVXMgfCBCb2FyZCBvZiBEaXJlY3RvcnNcbi0gQWJvdXQgVXMgfCBMZWFkZXJzaGlwXG4tIEFib3V0IFVzIHwgU3RhZmYgRGlyZWN0b3J5XG4tIEFib3V0IFVzIHwgU3RhZmYgfCBBYm91dCBVcyB8IENsaWVudHMgYW5kIEZ1bmRlcnNcbi0gQWJvdXQgVXMgfCBXb3JraW5nIFdpdGggV2VzdEVkXG4tIEFib3V0IFVzIHwgV2VzdGVkRWQgUHJvZ3JhbXMgfCBMYW5kaW5nXG4tIEFib3V0IFVzIHwgV2VzdGVkRWQgUHJvZ3JhbXMgfCBVbml2ZXJzYWxcbi0gQWJvdXQgVXMgfCBXZXN0ZWRFZCBQcm9ncmFtcyB8IEludmlkaXVhbCBQcm9ncmFtIHwgT3ZlcnZpZXdcbi0gQWJvdXQgVXMgfCBXZXN0ZWRFZCBQcm9ncmFtcyB8IEludmlkaXVhbCBQcm9ncmFtIHwgU2VydmljZXNcbi0gQWJvdXQgVXMgfCBXZXN0ZWRFZCBQcm9ncmFtcyB8IEludmlkaXVhbCBQcm9ncmFtIHwgUHJvamVjdHNcbi0gQWJvdXQgVXMgfCBXZXN0ZWRFZCBQcm9ncmFtcyB8IEludmlkaXVhbCBQcm9ncmFtIHwgUHJvamVjdHMgfCBJbnZpZHVhbCBQcm9qZWN0XG4tIEFib3V0IFVzIHwgV2VzdGVkRWQgUHJvZ3JhbXMgfCBJbnZpZGl1YWwgUHJvZ3JhbSB8IFJlc291cmNlc1xuKi9cblxuQGltcG9ydCAnLi4vY29tcG9uZW50cy9fdmFyaWFibGVzJztcblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWJvdXQgVXMgfCBVbml2ZXJzYWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNvbnRlbnQtZnVsbC13aWR0aCB7XG5cbiAgLmZlYXR1cmVkLWNvbnRlbnRfX3RleHQge1xuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfSAvLyBwXG4gIH0gLy8gLmZlYXR1cmVkLWNvbnRlbnRfX3RleHRcblxufSAvLyAuY29udGVudC1mdWxsLXdpZHRoXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BYm91dCBVcyB8IE92ZXJ2aWV3XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wYWdlLWFib3V0LXVzIHtcblxuICAjY29udGVudC1zaWRlYmFyLXdyYXAge1xuICAgIC5xdW90ZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAjc2VjdGlvbl9oZWFkZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH0gLy8gI2NvbnRlbnQtc2lkZWJhci13cmFwXG5cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICAuZW50cnktY29udGVudCB7XG4gICAgICBwIHtcbiAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgtbisyKSB7XG4gICAgICAgICAgLy8gZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIC8vIGNvbG9yOiAkd2VzdGVkLWxpZ2h0LWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgICY6aG92ZXIsICY6bGluaywgJjphY3RpdmUsICY6dmlzaXRlZCB7XG4gICAgICAgICAgICAgIC8vIGNvbG9yOiAkd2VzdGVkLWxpZ2h0LWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IC8vIC5lbnRyeS1jb250ZW50XG4gIH0gLy8gI21haW5fY29udGVudF93cmFwXG5cbn0gLy8gLnBhZ2UtYWJvdXQtdXNcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BYm91dCBVcyB8IEJvYXJkIG9mIERpcmVjdG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhZ2UtYm9hcmQtb2YtZGlyZWN0b3JzIHtcbiAgI3NlY3Rpb25faGVhZGVyLCAuZW50cnktY2hpbGQtdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICAjY29udGVudCB7XG4gICAgICAubmFtZSB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIHdpZHRoOiA5NSU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMTBweCAwO1xuICAgICAgICB9XG4gICAgICB9IC8vIC5uYW1lXG4gICAgICAjY29sX2Z1bGxfd2lkdGgge1xuICAgICAgICAuYm9hcmRfcGVyc29uIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMzMuMyU7XG4gICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAvKiBjaGFuZ2UgdGhlIGxheW91dCBvbiBzbWFsbGVyIGRldmljZXMgKi9cbiAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDE2MHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2NXB4KSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9IC8vIC5ib2FyZF9wZXJzb25cbiAgICAgICAgLmhpZGVfYXRfbW9iaWxlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9IC8vICNjb2xfZnVsbF93aWR0aFxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgd2lkdGg6IDk1JTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgIH0gLy8gLnRpdGxlXG4gICAgICAucGhvdG8ge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2VzdGVkLWRhcmstbmF2eS1ibHVlO1xuICAgICAgICB9XG4gICAgICB9IC8vIC5waG90b1xuICAgICAgLmxvY2FsZSB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDAgMCAwO1xuICAgICAgICB9XG4gICAgICB9IC8vIC5sb2NhbFxuICAgICAgI2xhdGVzdC1hZ2VuZGEsIC5wYWdlX2NvbnRlbnRfYm94IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH0gLy8gI2xhdGVzdC1hZ2VuZGFcbiAgICB9IC8vICNjb250ZW50XG4gIH0gLy8gI21haW5fY29udGVudF93cmFwXG59IC8vIC5wYWdlLWJvYXJkLW9mLWRpcmVjdG9yc1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWJvdXQgVXMgfCBMZWFkZXJzaGlwXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucGFnZS1sZWFkZXJzaGlwIHtcbiAgI3NlY3Rpb25faGVhZGVyLCAuZW50cnktY2hpbGQtdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICAjY29udGVudCB7XG4gICAgICAudGl0bGUge1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgfVxuICAgICAgI2NvbF9oYWx2ZXMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfSAvLyByZW1vdmUgbWluIGhlaWdodCBvbiB0aGUgbGFzdCByb3cgdG8ga2VlcCBwYWRkaW5nIGV2ZW4gb24gYWxsIHBhZ2VzXG4gICAgICAuYm9hcmRfcGVyc29uIHtcbiAgICAgICAgLnBob3RvIHtcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHdlc3RlZC1kYXJrLW5hdnktYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfSAvLyAucGhvdG9cbiAgICAgIH0gLy8gLmJvYXJkX3BlcnNvblxuICAgICAgI2FkbWluaXN0cmF0aXZlIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAuYm9hcmRfcGVyc29uIHtcbiAgICAgICAgICAmOm50aC1sYXN0LWNoaWxkKC1uKzMpIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgICAgICAgICAgICY6bnRoLWxhc3QtY2hpbGQoLW4rMSkge1xuICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxOTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0gLy8gLmJvYXJkX3BlcnNvblxuICAgICAgfSAvLyAjYWRtaW5zaXRyYXRpdmVcbiAgICAgICNjb2xfZnVsbF93aWR0aCB7XG4gICAgICAgIC5ib2FyZF9wZXJzb24ge1xuICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMiU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyNDBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3MHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMzkwcHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgd2lkdGg6IDk1JTtcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gLy8gLnRpdGxlXG4gICAgICAgIH0gLy8gLmJvYXJkX3BlcnNvblxuICAgICAgfSAvLyAjY29sX2Z1bGxfd2lkdGhcbiAgICB9XG4gICAgLmNvbCB7XG4gICAgICB3aWR0aDogMzIlO1xuICAgIH1cbiAgICAjY29sMSB7XG4gICAgICAuZW50cnktY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfSAvLyAjY29sMVxuICAgICNjb2wyIHtcbiAgICAgICNsYXRlc3RfYWdlbmRhIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9IC8vICNjb2wyXG4gICAgI2NvbDMge1xuICAgICAgI2ZvcnVtX3ZpZGVvcyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfSAvLyNjb2wzXG4gIH0gLy8gI21haW5fY29udGVudF93cmFwXG59IC8vICNhZG1pbmlzdHJhdGl2ZVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BYm91dCBVcyB8IFN0YWZmIERpcmVjdG9yeVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhZ2Utc3RhZmYtZGlyZWN0b3J5IHtcbiAgI3NlY3Rpb25faGVhZGVyLCAuZW50cnktY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAjdG9wIHtcbiAgICB1bCB7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICB9XG4gIC5lbnRyeS1jaGlsZC10aXRsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwNDBweDtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBjb2xvcjogJHdlc3RlZC1ncmVlbjtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDQwcHggMjBweCAyMHB4IDIwcHg7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcgRGlyZWN0b3J5JztcbiAgICB9XG4gIH0gLy8gZW50cnktY2hpbGQtdGl0bGVcbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAjdG9wIHtcbiAgICAgIC5hbmNob3Jfc2VwZXJhdG9yIHtcbiAgICAgICAgY29sb3I6ICR3ZXN0ZWQtbGlnaHQtYmx1ZTtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogM3B4O1xuICAgICAgICBwYWRkaW5nOiAwIDVweCAwIDNweDtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgJjpob3ZlciwgJjpsaW5rLCAmOmFjdGl2ZSwgJjp2aXNpdGVkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSAvLyAjdG9wXG4gICAgLmFuY2hvcl9kaXZpZGVyIHtcbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgICY6aG92ZXIsICY6bGluaywgJjphY3RpdmUsICY6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiAkd2VzdGVkLWVsZWN0cmljLWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAucGVyc29ubmVsX2xpc3Rpbmcge1xuICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAubmFtZSB7XG4gICAgICAgIGNvbG9yOiAkd2VzdGVkLWdyZXktMjtcbiAgICAgICAgYSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAudGl0bGUge1xuICAgICAgICBjb2xvcjogJHdlc3RlZC1saWdodC1ibHVlO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgfVxuICAgICAgfSAvLyAudGl0bGVcbiAgICB9IC8vIC5wZXJzb25uZWxfbGlzdGluZ1xuICB9IC8vICNtYWluX2NvbnRlbnRfd3JhcFxufSAvLyAucGFnZS1zdGFmZi1kaXJlY3RvcnlcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWJvdXQgVXMgfCBTdGFmZiBEZXRhaWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zaW5nbGUtcGVyc29ubmVsIHtcbiAgPiN3cmFwIHtcbiAgICA+I2lubmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgLndyYXAge1xuICAgICAgICAjY29udGVudC1zaWRlYmFyLXdyYXAge1xuICAgICAgICAgICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgICAgICAgICB3aWR0aDogMTAyNHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAxN3B4KSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPiNjb250ZW50IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDc4JTtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDE3cHgpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSAvLyA+I2NvbnRlbnRcbiAgICAgICAgICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JleS0yO1xuICAgICAgICAgICAgICB3aWR0aDogNzQlO1xuICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMTdweCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3NyU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzBweCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JleS0yO1xuICAgICAgICAgICAgICAgIH0gLy8gbGlcbiAgICAgICAgICAgICAgfSAvLyB1bFxuICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDY5JTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSAvLyAuZW50cnktY29udGVudFxuICAgICAgICAgIH0gLy8gI21haW5fY29udGVudF93cmFwXG4gICAgICAgIH0gLy8gIyBjb250ZW50LXNpZGViYXItd3JhcFxuICAgICAgfSAvLyAud3JhcFxuICAgIH0gLy8gPiN3cmFwXG4gIH0gLy8gPiN3cmFwXG59IC8vLnNpbmdsZS1wZXJzb25uZWxcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWJvdXQgVXMgfCBDbGllbnRzIGFuZCBGdW5kZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucGFnZS1jbGllbnRzIHtcbiAgLmNvbnRlbnQtZnVsbC13aWR0aCB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAjaW5uZXIge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG4gICNzZWN0aW9uX2hlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaGVybyB7XG4gICAgYmFja2dyb3VuZDogJHdlc3RlZC1uYXZ5LWJsdWU7XG4gIH1cbiAgLmVudHJ5LWNoaWxkLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgID5wIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC5jbGllbnRzIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3ZXN0ZWQtbGlnaHQtYmx1ZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogNTBweCAwO1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjBweCAwcHggMjBweDtcbiAgICAgICAgfVxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaDIge1xuICAgICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJl9fbmFtZXMge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAzO1xuICAgICAgICAgICAgLW1vei1jb2x1bW4tY291bnQ6IDM7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMjtcbiAgICAgICAgICAgICAgLW1vei1jb2x1bW4tY291bnQ6IDI7XG4gICAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgICAgICAgIH0gLy8gY2hhbmdpbmcgY29sdW1uIHNpemUgZGVwZW5kaW5nIG9uIG1lZGlhIHF1ZXJ5XG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XG4gICAgICAgICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAxO1xuICAgICAgICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogMTtcbiAgICAgICAgICAgICAgY29sdW1uLWNvdW50OiAxO1xuICAgICAgICAgICAgfSAvLyBjaGFuZ2luZyBjb2x1bW4gc2l6ZSBkZXBlbmRpbmcgb24gbWVkaWEgcXVlcnlcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICBjb2xvcjogJHdlc3RlZC1uYXZ5LWJsdWU7XG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSAvLyB1bFxuICAgICAgICB9IC8vIC5jbGllbnRzX19uYW1lc1xuICAgICAgfSAvLyAuY2xpZW50c1xuICAgIH0gLy8gLmVudHJ5LWNvbnRlbnRcbiAgfSAvLyAjbWFpbl9jb250ZW50X3dyYXBcbn0gLy8gLnBhZ2UtY2xpZW50c1xuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BYm91dCBVcyB8IFdlc3RlZEVkIFByb2dyYW1zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5wYWdlLXByb2dyYW1zIHtcbiAgLy8gcmVtb3ZlIGRlZmF1bHQgcGFnZSBlbGVtZW50cyB0aGF0IHdlIGRvbid0IG5lZWRcbiAgI3NlY3Rpb25faGVhZGVyLCAuZW50cnktY29udGVudCwgLmVudHJ5LWNoaWxkLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9IC8vIGNlbnRlciB0aGUgbWFpbiBjb250ZW50IGFyZWFcbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICBwYWRkaW5nOiA0MHB4IDdweDtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogNDBweCAyMHB4O1xuICAgIH1cbiAgfSAvLyBjaGFuZ2UgdGhlIGxvb2sgb2YgdGhlIHByb2dyYW0gdGlsZXNcbiAgLmNvbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIC5wcm9ncmFtX2xpc3RfYm94IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDIyJTtcbiAgICAgIG1hcmdpbjogNXB4IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgICAgcGFkZGluZzogMTVweCAwOyAvLyBsb2dpYyB0aGF0IGlnbm9yZXMgdGhlIHN0YW5kYXJkIHRoZSBtYXJnaW5zIG9uIHRoZSBwaG90b3Mgc28gdGhhdCB0aGV5IGhpdCB0aGUgZWRnZSBvZiB0aGUgcGFnZSBvbiBkZXNrdG9wXG4gICAgICAmOm50aC1jaGlsZCg0biArIDIpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDRuKzEpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gICAgICB9IC8vIHJldmVydCBiYWNrIHRvIGFkaGVyaW5nIHRvIHRoZSBzdGFuZGFyZCBiZWhhdmlvciBvZiBjb250ZW50IGluc2lkZSBvZiB0aGUgd3JhcHBlciB0aGF0IHV0aWxpemVzIHRoZSAjbWFpbl9jb250ZW50X3dyYXAgcGFkZGluZ1xuICAgICAgLyogICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgICAmOm50aC1jaGlsZCg0biArIDIpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCg0bisxKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH0gKi9cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA0MHB4KSB7XG4gICAgICAgIHdpZHRoOiAzMyU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbWluLWhlaWdodDogMjQwcHg7XG4gICAgICAgIC5uYW1lIHtcbiAgICAgICAgICB3aWR0aDogODUlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQwcHgpIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiAyNDBweDtcbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NTBweCkge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgd2lkdGg6IDcwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4OHB4KSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI0MHB4O1xuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvKiAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjdweCkge1xuICAgICAgICB3aWR0aDogMzIlO1xuICAgICAgfSAqL1xuICAgICAgLyogICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICB3aWR0aDogMjcuOCU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIHdpZHRoOiA0MC41MCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI0MHB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICB3aWR0aDogODUlO1xuICAgICAgICBtaW4taGVpZ2h0OiAyMjBweDtcbiAgICAgIH0gKi9cbiAgICAgIC5waG90byB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMTVweCAwO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIGhlaWdodDogMTQwcHg7XG4gICAgICAgICAgd2lkdGg6IDIwNXB4O1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgwJSk7XG4gICAgICAgIH1cbiAgICAgIH0gLy8gLnBob3RvXG4gICAgICAvLyBhZGp1c3QgdGhlIHRpdGxlcyBvZiB0aGUgcHJvZ3JhbSBuYW1lXG4gICAgICAubmFtZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZWxlY3RyaWMtYmx1ZTtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICB3aWR0aDogNjQlO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSAvLyAucHJvZ3JhbV9saXN0X2JveFxuICB9IC8vIC5jb2xcbn0gLy8gLnBhZ2UtcHJvZ3JhbXNcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkFib3V0IFVzIHwgV2VzdGVkRWQgUHJvZ3JhbXMgfCBJbnZpZGl1YWwgUHJvZ3JhbSB8IE92ZXJ2aWV3XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2luZ2xlLXByb2dyYW0ge1xuICAjc2VjdGlvbl9oZWFkZXIsICNyZWxhdGVkX2l0ZW1zX2hlYWRlciwgI3JlbGF0ZWRfaXRlbXMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI21haW5fY29udGVudF93cmFwIHtcbiAgICAjY29udGVudCB7XG4gICAgICB3aWR0aDogODMlO1xuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgfVxuICAgICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgICAmX19ib2R5IHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNjklO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfSAvLyAuZW50cnktY29udGVudF9fYm9keVxuICAgICAgICAjcHJvZ3JhbV9kaXJlY3RvcnNfYm94IHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMjEwcHg7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgICAgI3Byb2dyYW1fZGlyZWN0b3JzX25hbWVzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9IC8vIC5wcm9ncmFtX2RpcmVjdG9yc19ib3hcbiAgICAgIH0gLy8gLmVudHJ5LWNvbnRlbnRcbiAgICB9IC8vICNjb250ZW50XG4gIH0gLy8gI21haW5fY29udGVudF93cmFwXG4gICNyZWNlbnQtbmV3cyB7XG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB9XG4gIH0gLy8gLnJlY2VudC1uZXdzXG59IC8vIC5zaW5nbGUtcHJvZ3JhbVxuI3JlY2VudC1uZXdzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UzRUNGOTtcbiAgaDIge1xuICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCI7XG4gICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgfVxuICAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAyZW0gMDtcbiAgfVxuICB1bC5uZXdzbGlzdCB7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyZW07XG4gICAgICBtaW4taGVpZ2h0OiAyNTBweDtcbiAgICAgIC5pbWcge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzJTtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5pbmZvIHtcbiAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBjb2xvcjogIzU0NkI4NTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgIH1cbiAgICB9XG4gICAgaDMge1xuICAgICAgY29sb3I6ICMxNjY5Qzk7XG4gICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICB9XG59XG4udmlld19tb3JlX2J0biB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IC41cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA3cHggMTJweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1QTc5OUM7XG4gIH1cbn0gLy8gI3JlY2VudC1uZXdzXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BYm91dCBVcyB8IFdlc3RlZEVkIFByb2dyYW1zIHwgSW52aWRpdWFsIFByb2dyYW0gfCBTZXJ2aWNlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhZ2Utc2VydmljZXMge1xuICAjc2VjdGlvbl9oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmludHJvIHtcbiAgICBwYWRkaW5nOiAwIDAgNDBweCAwO1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgIHBhZGRpbmc6IDAgMCAyMHB4IDA7XG4gICAgfVxuICAgICZfX3dyYXAge1xuICAgICAgd2lkdGg6IDEwMjRweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gLy8gLmludHJvX193cmFwXG4gIH0gLy8gLmludHJvXG4gIC5jb2wge1xuICAgIHdpZHRoOiA5NSU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAucHJvamVjdF9saXN0X2JveCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgJjpsaW5rIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JleS0yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfSAvLyAuZGVzY3JpcHRpb25cbiAgICB9IC8vIC5wcm9qZWN0X2xpc3RfYm94XG4gIH0gLy8gLmNvbFxufSAvLyAucGFnZS1zZXJ2aWNlc1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWJvdXQgVXMgfCBXZXN0RWQgUHJvZ3JhbXMgfCBJbnZpZGl1YWwgUHJvZ3JhbSB8IFByb2plY3RzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucGFnZS1wcm9qZWN0cyB7XG4gICNzZWN0aW9uX2hlYWRlciwgI3JlbGF0ZWRfaXRlbXNfaGVhZGVyLCAjcmVsYXRlZF9pdGVtcywgI2NvbF9oYWx2ZXMge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAucHJvZ3JhbS1wcm9qZWN0cyB7XG4gICAgLnByb2plY3RfbGlzdF9ib3gge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkd2VzdGVkLWJhYnktYmx1ZTtcbiAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICB9XG4gICAgICAubG9nbyB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgaDMge1xuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDE3cHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZWxlY3RyaWMtYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JleS0yO1xuICAgICAgfVxuICAgIH1cbiAgfSAvLyAucHJvZ3JhbS1wcm9qZWN0c1xuICAucHJvamVjdF9uYXYge1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNWVtO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgfVxuICAgIGEge1xuICAgICAgY29sb3I6ICMxNDUxQkQgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgI0FCQzFEQSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfSAvLyAucHJvamVjdF9uYXZcbn0gLy8gLnBhZ2UtcHJvamVjdHNcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkFib3V0IFVzIHwgV2VzdEVkIFByb2dyYW1zIHwgSW52aWRpdWFsIFByb2dyYW0gfCBQcm9qZWN0cyB8IEludmlkdWFsIFByb2plY3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zaW5nbGUtcHJvamVjdCB7XG4gICNjb250ZW50IHtcbiAgICB3aWR0aDogNzAlO1xuICB9XG4gIC5lbnRyeS1jb250ZW50IHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5wYWdlX2NvbnRlbnRfYm94IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAycHggMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR3ZXN0ZWQtZ3JleS00O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAjc2VjdGlvbl9oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnByb2plY3QtaGVhZGVyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogYm90aDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIC5wcm9qZWN0X3RpdGxlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogNjUwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICBjb2xvcjogJHdlc3RlZC1ncmVlbjtcbiAgICB9IC8vIC5wcm9qZWN0X3RpdGxlXG4gICAgJi0tdy1sb2dvIHtcbiAgICAgIC5wcm9qZWN0X2xvZ28ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDQyJTtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAvLyB3aWR0aDogMjY4cHg7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH0gLy8gLnByb2plY3RfbG9nb1xuICAgICAgLnByb2plY3RfdGl0bGUge1xuICAgICAgICB3aWR0aDogNTglO1xuICAgICAgICBtYXgtd2lkdGg6IDM0MHB4O1xuICAgICAgfSAvLyAucHJvamVjdF90aXRsZVxuICAgIH0gLy8gLnctbG9nb1xuICB9IC8vIC5wcm9qZWN0LWhlYWRlclxufSAvLyAuc2luZ2xlLXByb2plY3Rcbi8vbW92ZSB0aGUgaW1hZ2UgZm9yIENhbGlmb3JuaWEgQ29tcHJlaGVuc2l2ZSBDZW50ZXIgdXAgc2xpZ2h0bHkgKGR1ZSB0byB0aGUgcGFkaW5nIG9uIHRoZSBhY3R1YWwgLnBuZyBmaWxlKVxuLnBvc3RpZC0zMTU2OCB7XG4gIC5wcm9qZWN0X2xvZ28ge1xuICAgIGltZyB7XG4gICAgICBtYXJnaW4tdG9wOiAtMTdweDtcbiAgICB9XG4gIH1cbn0gLy8gLnNpbmdsZS1wcm9qZWN0XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BYm91dCBVcyB8IFdlc3RFZCBQcm9ncmFtcyB8IEluZGl2aWR1YWwgUHJvZ3JhbSB8IFJlc291cmNlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhZ2UtcmVzb3VyY2VzIHtcbiAgI3NlY3Rpb25faGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59IC8vIC5wYWdlLXJlc291cmNlc1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQWJvdXQgVXMgfCBXZXN0RWQgUHJvZ3JhbXMgfCBJbmRpdmlkdWFsIFByb2dyYW0gfCBLZXkgU3RhZmZcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wYWdlLWtleS1zdGFmZiB7XG4gICNzZWN0aW9uX2hlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAjbWFpbl9jb250ZW50X3dyYXAge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgIC5jb2wge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYm9hcmRfcGVyc29uIHtcbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgfSAvLyAmOmhvdmVyXG4gICAgICAubmFtZSB7XG4gICAgICAgIGEge1xuICAgICAgICAgICY6bGluayB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IC8vIC5uYW1lXG4gICAgICAubG9jYWxlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9IC8vIC5ib2FyZF9wZXJzb25cbiAgfSAvLyAjbWFpbl9jb250ZW50X3dyYXBcbn0gLy8gLnBhZ2Uta2V5LXN0YWZmXG5cblxuLyogampvaG5zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBCb2FyZCAqL1xuLnBhZ2UtYm9hcmQtb2YtZGlyZWN0b3JzIC5ib2FyZF9wZXJzb24ge1xuICBtaW4taGVpZ2h0OiAyMzBweCAhaW1wb3J0YW50O1xuXG4gIC5uYW1lLCAudGl0bGUsIC5sb2NhbGUge1xuICAgIHBhZGRpbmctbGVmdDogMTIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2NXB4KSB7XG4gICAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuXG4gIH1cblxufVxuXG5cblxuXG5cblxuXG5cblxuIiwiLypcbi0gQXJlYXMgb2YgV29yayB8IFVuaXZlcnNhbFxuLSBBcmVhcyBvZiBXb3JrIHwgT3ZlcnZpZXdcbi0gQXJlYXMgb2YgV29yayB8IFByb2plY3RzXG4qL1xuXG5AaW1wb3J0ICcuLi9jb21wb25lbnRzL192YXJpYWJsZXMnO1xuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQXJlYXMgb2YgV29yayB8IFVuaXZlcnNhbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogQU9XIE92ZXJ2aWV3IGZsb2F0IGZpeCAqL1xuYm9keS5zaW5nbGUtYXJlYV9vZl93b3JrICNtYWluX2NvbnRlbnRfd3JhcCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xufVxuXG4vKiBWaWV3IE1vcmUgYnV0dG9uIGFsaWdubWVudCAqL1xuYm9keS5zaW5nbGUtYXJlYV9vZl93b3JrIHNwYW4udmlld21vcmUge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDE2NXB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICB9XG5cbn1cblxuI3N1YnN1Ym1lbnUge1xuICB1bCB7XG4gICAgbGkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICB9IC8vIGxpXG4gIH0gLy8gdWxcbn0gLy8gI3N1YnN1Ym1lbnVcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BcmVhcyBvZiBXb3JrIHwgT3ZlcnZpZXdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zaW5nbGUtYXJlYV9vZl93b3JrIHtcbiAgLmZlYXR1cmVkX2Z3IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2VzdGVkLWJhYnktYmx1ZTtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogMTAwMHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgI3Nwb3RsaWdodCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAuZmVhdHVyZWRfaW1nIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTIwcHgpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDI1cHggMDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmZlYXR1cmVkX2NvbnRlbnQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiA3NCU7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTIwcHgpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICBoNCB7XG4gICAgICAgICAgY29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgIH1cbiAgICAgICAgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICBjb2xvcjogJHdlc3RlZC1lbGVjdHJpYy1ibHVlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgICAgICB9XG4gICAgICB9IC8vIC5mZWF0dXJlZF9jb250ZW50XG4gICAgfSAvLyAjc3BvdGxpZ2h0XG4gIH0gLy8gLmZlYXR1cmVkX2Z3XG59IC8vLnNpbmdsZS1hcmVhX29mX3dvcmtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BcmVhcyBvZiBXb3JrIHwgT3ZlcnZpZXdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zaW5nbGUtYXJlYV9vZl93b3JrIHtcbiAgLmNvbnRlbnQtZnVsbC13aWR0aCB7XG4gICAgYmFja2dyb3VuZDogJHdlc3RlZC1ncmV5LTQ7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDIwcHggMjBweCAyMHB4O1xuICAgIH0gLy8gLmNvbnRhaW5lclxuICAgIC5leHBlcnRzLWludHJvIHtcbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgIH1cbiAgICB9IC8vIC5leHBlcnRzLWludHJvXG4gICAgLnNsaWRlcl93cmFwIHtcbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBjb2xvcjogJHdlc3RlZC1lbGVjdHJpYy1ibHVlO1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgIH1cbiAgICB9XG4gIH0gLy8gLmNvbnRlbnQtZnVsbC13aWR0aFxuICAuaW50cm9fc2xpZGUge1xuICAgIGgyIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgfVxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cbiAgfSAvLyAuaW50cm9fc2xpZGVcbn0gLy8gLnNpbmdsZS1hcmVhX29mX3dvcmtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5BcmVhcyBvZiBXb3JrIHwgUHJvamVjdHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wYWdlLXRlbXBsYXRlLWFvdy1wcm9qZWN0bGlzdC1wYWdlIHtcbiAgLmFvdy1wcm9qZWN0cyB7XG4gICAgLnByb2plY3RfbGlzdF9ib3gge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICR3ZXN0ZWQtZ3JleS00O1xuICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgLm5hbWUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9IC8vIC5uYW1lXG4gICAgICAgIH0gLy8gLmRlc2NyaXB0aW9uXG4gICAgICB9IC8vIDpmaXJzdC1jaGlsZFxuICAgICAgLmxvZ28ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDE5MHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTg5cHgpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjVweCkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgIH0gLy8gaW1nXG4gICAgICB9IC8vIC5sb2dvXG4gICAgICAubG9nbysuZGVzY3JpcHRpb24ge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTQ0cHgpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfSAvLyAubG9nbyArIGRlc2NyaXB0aW9uIC0tIGZvciBldmVyeSBpdGVtIHdpdGggYSBsb2dvLCBjaGFuZ2UgdGhlIHdpZHRoIG9mIHRoZSBkZXNjcmlwdGlvbiB0ZXh0XG4gICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHAge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2NXB4KSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjVweCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gLy8gLmRlc2NyaXB0aW9uXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICB9IC8vICY6Zmlyc3QtY2hpbGRcbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICB9IC8vICY6bGFzdC1jaGlsZFxuICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgaDMge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gLy8gaDNcbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgfSAvLyBwXG4gICAgICB9IC8vIC5kZXNjcmlwdGlvblxuICAgIH0gLy8gLnByb2plY3RfbGlzdF9ib3hcbiAgfSAvLyAuYW93LXByb2plY3RzXG59IC8vIC5wYWdlLXRlbXBsYXRlLWFvdy1wcm9qZWN0bGlzdC1wYWdlXG4iLCJAaW1wb3J0ICcuLi9jb21wb25lbnRzL192YXJpYWJsZXMnO1xuXG4vKlxuLSBQcm9mZXNzaW9uYWwgTGVhcm5pbmcgfCBVbml2ZXJzYWxcbiovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblByb2Zlc3Npb25hbCBMZWFybmluZyB8IFVuaXZlcnNhbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBhZ2UtdGVtcGxhdGUtc2VydmljZS1wbHRhLXBhZ2UsXG4ucGFnZS10ZW1wbGF0ZS1wcm9mZXNzaW9uYWwtZGV2ZWxvcG1lbnQtZmFjZXR3cCB7XG5cblx0I2lubmVyIHtcblx0XHQjc2VjdGlvbl9oZWFkZXIge1xuXHRcdFx0LmVudHJ5LXRpdGxlIHtcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG5cdFx0XHRcdGxldHRlci1zcGFjaW5nOiAxcHg7XG5cdFx0XHR9IC8vIC5lbnRyeS10aXRsZVxuXHRcdFx0LmVudHJ5LWNoaWxkLXRpdGxlIHtcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcblx0XHRcdFx0Zm9udC1zaXplOiAyNnB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0fSAvLyAuZW50cnktY2hpbGQtdGl0bGVcblx0XHRcdGgyLCBwIHtcblx0XHRcdFx0Zm9udC1zaXplOiAxOHB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdFx0fSAvLyBoMiwgcFxuXHRcdH0gLy8gI3NlY3Rpb25faGVhZGVyXG5cdH0gLy8gI2lubmVyXG5cblx0LmZlYXR1cmVkX2Z3IHtcblx0XHRoNCB7XG5cdFx0XHRjb2xvcjogJHdlc3RlZC1ncmVlbjtcblx0XHRcdGZvbnQtc2l6ZTogMTNweDtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogMXB4O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9IC8vIGg0XG5cdFx0aDMge1xuXHRcdFx0Y29sb3I6ICR3ZXN0ZWQtZWxlY3RyaWMtYmx1ZTtcblx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAyNnB4O1xuXHRcdH0gLy8gaDNcblx0XHRwIHtcblx0XHRcdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdFx0XHRsaW5lLWhlaWdodDogMjNweDtcblx0XHRcdGZvbnQtc2l6ZTogMTdweDtcblx0XHRcdGNvbG9yOiAkd2VzdGVkLWdyZXktNTtcblx0XHR9IC8vIHBcblx0XHQuZmVhdHVyZWRfaW1nIHtcblx0XHRcdHdpZHRoOiAyMzBweDtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTA3cHgpIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTVweDtcblx0XHRcdH1cblx0XHR9IC8vIC5mZWF0dXJlZF9pbWdcblx0XHQuZmVhdHVyZWRfY29udGVudCB7XG5cdFx0XHQgZmxvYXQ6IHJpZ2h0O1xuICAgXHRcdFx0IHdpZHRoOiA3NCU7XG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDdweCkge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdH1cblx0XHR9IC8vIC5mZWF0dXJlZF9jb250ZW50XG5cdH0gLy8gLmZlYXR1cmVkX2Z3XG5cblx0I21haW5fY29udGVudF93cmFwIHtcblxuXHRcdGgyIHtcblx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG5cdFx0XHRmb250LXdlaWdodDogMTAwO1xuXHRcdFx0Y29sb3I6ICR3ZXN0ZWQtZ3JlZW47XG5cdFx0fSAvLyBoMlxuXG5cdFx0LmZpbHRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0d2lkdGg6IDI1MHB4O1xuXHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg1MHB4KSB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0XHRcdH1cblxuXHRcdFx0bGFiZWwge1xuXHRcdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NTBweCkge1xuXHRcdFx0XHRcdHdpZHRoOiA5MCU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0aW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICR3ZXN0ZWQtZ3JleS0zO1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcblx0XHRcdFx0Zm9udC1zaXplOiAxNXB4O1xuICAgIFx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6IC40cHg7XG5cdFx0XHRcdHBhZGRpbmc6IDZweCAxNnB4O1xuXHRcdFx0fSAvLyBpbnB1dFt0eXBlPVwic3VibWl0XCJdXG5cdFx0XHRoMiB7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuXHRcdFx0XHRmb250LXNpemU6IDE1cHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAyMHB4O1xuXHRcdFx0XHRjb2xvcjogJHdlc3RlZC1ncmV5LTU7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHR9IC8vIGgyXG5cdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0XHRcdFx0Y29sb3I6ICR3ZXN0ZWQtZ3JleS01O1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDE5cHg7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdG1hcmdpbjogMCAwIDEycHggMDtcblx0XHRcdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGlucHV0IHtcblx0XHRcdFx0XHRcdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblx0XHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICM4MTlBQjY7XG5cdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAycHg7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiA3cHg7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2VzdGVkLWJhYnktYmx1ZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcblx0XHRcdFx0XHRcdGNvbnRlbnQ6ICdYJztcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdHRvcDogNHB4O1xuXHRcdFx0XHRcdFx0bGVmdDogNHB4O1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDAuODtcblx0XHRcdFx0XHRcdGNvbG9yOiAkd2VzdGVkLWVsZWN0cmljLWJsdWU7XG5cdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgLjJzO1xuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdFx0XHR9IC8vIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZVxuXHRcdFx0XHRcdGxhYmVsIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAjM2Y2NDhmO1xuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdFx0XHR9IC8vIGxhYmVsXG5cdFx0XHRcdH0gLy8gbGlcblx0XHRcdH0gLy8gLmZpbHRlclxuXG5cdFx0XHQucGx0YS1saXN0IHtcblx0XHRcdFx0cGFkZGluZy10b3A6IDIzcHg7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRvdmVyZmxvdzogYXV0bztcblxuXHRcdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NzVweCkge1xuXHRcdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdHBhZGRpbmctdG9wOiAwcHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRcdCNzZXJ2aWNlcy1wb3N0cyB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0XHRtYXJnaW46IDAgMCAyOXB4IDA7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdFx0XHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRoMyB7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRwIHtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fSAvLyBsaVxuXHRcdFx0XHRcdH0gLy8gI3NlcnZpY2VzLXBvc3RzXG5cdFx0XHR9IC8vIC5wbHRhLWxpc3RcblxuXHR9IC8vICNtYWluX2NvbnRlbnRfd3JhcFxufS8vIC5wYWdlLXRlbXBsYXRlLXNlcnZpY2UtcGx0YS1wYWdlXG4iLCJAaW1wb3J0ICcuLi9jb21wb25lbnRzL192YXJpYWJsZXMnO1xuXG4vKlxuLSBXb29Db21tZXJjZSB8IFVuaXZlcnNhbCB8ICBSZXNvdXJjZXNcbiovXG5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbldvb0NvbW1lcmNlIHwgVW5pdmVyc2FsIHwgIFJlc291cmNlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLndvb2NvbW1lcmNlLCAud29vY29tbWVyY2UtcGFnZSB7XG4gICNzcG90bGlnaHQsICNyb3dfcmVsYXRlZF9zZXJ2aWNlcywgLnBhZ2UtdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgdWwucHJvZHVjdHMge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaS5wcm9kdWN0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1pbi1oZWlnaHQ6IDIzNXB4O1xuICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MjVweCkge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4taGVpZ2h0OiAxNDVweDtcbiAgICAgICAgcGFkZGluZzogMjBweCAwIDVweCAwO1xuICAgICAgfVxuICAgICAgLnRodW1ibmFpbCB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgbWluLXdpZHRoOiAxMDBweDtcbiAgICAgICAgbWluLWhlaWdodDogMTAwcHg7XG4gICAgICAgIHBhZGRpbmc6IDRweCAwO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTI1cHgpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MjVweCkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NjBweCkge1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXJnaW46IDJweCAwIDAgMHB4O1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9IC8vIC50aHVtYm5haWxcbiAgICAgIGgzIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMHB4IDBweCAxNXB4IDIwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGNvbG9yOiAkd2VzdGVkLWVsZWN0cmljLWJsdWU7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTI1cHgpIHtcbiAgICAgICAgICB3aWR0aDogODMlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NzdweCkge1xuICAgICAgICAgIHdpZHRoOiA5NSUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfSAvLyBoM1xuICAgICAgLnJlc291cmNlX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMHB4IDBweCA1cHggMjBweDtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MjVweCkge1xuICAgICAgICAgIHdpZHRoOiA4MyUgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc3N3B4KSB7XG4gICAgICAgICAgd2lkdGg6IDk1JSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9IC8vIC5yZXNvdXJjZV9kZXNjcmlwdGlvblxuICAgICAgLnByaWNlLCAuYnRuX2N0YSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfSAvLyBsaS5wcm9kdWN0XG4gIH0gLy8gdWwucHJvZHVjdHNcbiAgLmZpbml0ZVNjcm9sbCB7XG4gICAgcGFkZGluZzogMzBweCAwIDAgMDtcbiAgfSAvLyAuZmluaXRlU3JvbGxcbn0gLy8gLndvb2NvbW1lcmNlXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5QcmludFxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi8qIEdsb2JhbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmJvZHkge1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzAwMDtcbiAgZm9udDogbm9ybWFsIDE4cHgvMjRweDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuKiB7XG4gIC8vIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuYSwgYTpsaW5rLCBhOnZpc2l0ZWQge1xuICBjb2xvcjogIzU0NkI4NSAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qIGZvcmNlIGJhY2tncm91bmQgY29sb3JzICovXG4uY29sb3ItcHJpbnQge1xuICAtd2Via2l0LXByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7XG4gIHByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7XG59XG5cbi8qIGhpZGUgKi9cbiNuYXYsXG4jbmF2LXRyaWdnZXIsXG4jaGVhZGVyICN0aXRsZS1hcmVhLFxuI2hlYWRlciAud2lkZ2V0X25hdl9tZW51LFxuI2hlYWRlciAjYWN0aXZhdGVNYWluTWVudSxcbiNzaWRlYmFyLFxuI2Zvb3Rlci13aWRnZXRzLFxuI2Zvb3RlciAuZ290b3RvcCxcbiNtb2JpbGVTZWFyY2hUb3Age1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbiNmb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAuZm9vdGVyLWJvdHRvbS1uYXYge1xuXG4gICAgdWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBwLCBwIGEge1xuICAgICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogIzU0NkI4NSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICB9XG5cbiAgfVxuXG59XG5cbiN3cmFwLCAjY29udGVudCwgI2lubmVyIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuI2lubmVyIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDIwcHggIWltcG9ydGFudDtcbn1cblxuI21haW5fY29udGVudF93cmFwIHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi8qIEhlYWRlciAqL1xuI2hlYWRlciB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjY2NjICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcblxuICAud2lkZ2V0LWFyZWEge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5sb2dvIHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxNTBweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDEwcHggMCAwIDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5zbG9nYW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHRvcDogMTVweCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICByaWdodDogMCAhaW1wb3J0YW50O1xuICAgIGJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDQ3NXB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHggIWltcG9ydGFudDtcbiAgICAvLyBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAwIDAgNDBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG59XG5cbi8qIEhlcm8gKi9cbiNoZXJvIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgMCA0MHB4IDAgIWltcG9ydGFudDtcblxuICAud3JhcCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgc3Bhbi5zdWJ0aXRsZSB7XG4gICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNTQ2Qjg1ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogIzU0NkI4NSAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMjJweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNTQ2Qjg1ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogIzU0NkI4NSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIHNwYW4ucmVnIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbiBwIHtcbiAgICBmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzU0NkI4NSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG59XG5cbiNjb250ZW50IHtcblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyNHB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDI4cHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgLy8gY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICBoMiB7XG4gICAgZm9udC1zaXplOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDI2cHggIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICBwIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgMCAxMHB4IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICB1bCxcbiAgb2wge1xuICAgIG1hcmdpbjogMTBweCAwIDEwcHggMzBweDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgbGkge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHggIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAwIDEwcHggMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG59XG5cbi8qIEZvb3RlciAqL1xuI2Zvb3Rlci1mb3JtIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuI2Zvb3RlciB7XG4gIGNsZWFyOiBib3RoICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjOTk5O1xuICBtYXJnaW46IDIwcHggMCAwIDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMDtcblxuICAud3JhcCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgcCxcbiAgcCBhIHtcbiAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNyZWRzIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbn1cblxuXG4vKiBCbG9nIFBvc3RzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5zaW5nbGUtcG9zdCAjY29udGVudCB7XG5cbiAgLnNvY2lhbC1iYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuc2luZ2xlLWltZyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLnNpbmdsZS1tYWluIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNzUlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAgMCA0MHB4O1xuXG4gICAgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wb3N0LWRhdGUge1xuICAgICAgbWFyZ2luLXRvcDogNDBweCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy10b3A6IDIwcHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBwLnRhZ3Mge1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBwLm1vcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLyogUmVzb3VyY2VzIC8gUiZEIEFsZXJ0IEFydGljbGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYm9keS5zaW5nbGUtcmRfYWxlcnRfb25saW5lIHtcblxuICAjY29udGVudCAuZW50cnktY29udGVudCB7XG5cbiAgICAuc29jaWFsLWJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDE2cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgICAgIC8vIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgJi5wb3N0ZWQtb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLyogaW50cm8gKi9cbiAgICAuaW50cm8ge1xuXG4gICAgICAucG9zdF9pbWFnZSxcbiAgICAgIC50b2Mge1xuICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLnBvc3RfaW1hZ2Uge1xuICAgICAgICBtYXJnaW46IDIwcHggMCAhaW1wb3J0YW50O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC50b2MgbGkge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIC50b2MgLnRvY19jb250ZW50IHVsIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAyMHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBkaXNjO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8qIGNvbnRhaW5lciAqL1xuICAgIC5jb250YWluZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG5cbiAgICAgIC8qIHNpZGViYXIgKi9cbiAgICAgIC5yZGFsZXJ0LXNpZGViYXIsXG4gICAgICAucmRhbGVydC1jb250ZW50IHtcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAucmRhbGVydC1zaWRlYmFyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtZm9vdGVyLWdyb3VwO1xuICAgICAgfVxuXG4gICAgICAucmRhbGVydC1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgICAgfVxuXG4gICAgICAucmRhbGVydC1zaWRlYmFyIHtcblxuICAgICAgICAud2lkZ2V0X3RleHQge1xuICAgICAgICAgIG1hcmdpbjogMzBweCAwIDAgMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgbGkgYSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgI3NpZGViYXJfcHJvamVjdF9jb250YWN0IHtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzU0NkI4NTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzU0NkI4NTtcbiAgICAgICAgICBtYXJnaW46IDIwcHggMCAyMHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMjBweCAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAuY29udGFjdEluZm8ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwLm5hbWUge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAjNTQ2Qjg1O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNTQ2Qjg1O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIkNvbnRhY3RcIjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNTFBRjQ2O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAzcHggMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcC5waG9uZSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBjb2xvcjogIzU0NkI4NSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwLmVtYWlsIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAvKiBjb250ZW50ICovXG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMjZweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzU0NkI4NSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDMwcHggMCAxNXB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiA0MHB4IDAgNDBweCA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICBwIHtcbiAgICAgICAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAjNTQ2Qjg1ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLyogMjAxOS0wNCBoaWRpbmcgcGVyIENIICovXG4gICNzaWRlYmFyX3JlbGF0ZWRfcHJvamVjdCxcbiAgI3NpZGViYXJfcmVsYXRlZF9wcm9ncmFtLFxuICAjc2lkZWJhcl9yZWxhdGVkX3NlcnZpY2VzLFxuICAjcmVsYXRlZC1yZXNvdXJjZXMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI3NpZGViYXJfcHJvamVjdF9jb250YWN0IHtcbiAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxufVxuXG5ib2R5LnNpbmdsZS1yZF9hbGVydF9vbmxpbmUge1xuXG4gICNyZWxhdGVkLXJlc291cmNlcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblxuICAgIC5jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIjtcbiAgICAgIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjNTFBRjQ2ICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIG1hcmdpbjogMjVweCAwIDEwcHggMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAudGh1bWIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8ge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDcwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDZweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLm1vcmVfbGlua3Mge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICB9XG5cbn1cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozt1RUFJdUU7QUNKdkU7dUVBQ3VFO0FBR3ZFLG9CQUFvQjtBQUlwQjt1RUFDdUU7QUFLdkU7dUVBQ3VFO0FBUXZFO3VFQUN1RTtBQ3hCdkU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O3VFQXFEdUU7QUFFdkUsQUFFRSxjQUZZLENBRVosRUFBRSxDQUFDO0VBQ0QsV0FBVyxFRC9DRSxhQUFhO0VDZ0QxQixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLEtBQUssRUFBRSxPQUFPO0VBQ2QsTUFBTSxFQUFFLGFBQWE7RUFDckIsT0FBTyxFQUFFLENBQUMsR0FNWDtFQWZILEFBV0ksY0FYVSxDQUVaLEVBQUUsQUFTQyxZQUFZLENBQUM7SUFDWixVQUFVLEVBQUUsQ0FBQyxHQUNkOztBQWJMLEFBaUJFLGNBakJZLENBaUJaLEVBQUUsQ0FBQztFQUNELFdBQVcsRUQ5REUsYUFBYTtFQytEMUIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSTtFQUNqQixXQUFXLEVBQUUsR0FBRztFQUNoQixLQUFLLEVBQUUsT0FBTztFQUNkLE1BQU0sRUFBRSxhQUFhO0VBQ3JCLE9BQU8sRUFBRSxDQUFDLEdBQ1g7O0FBekJILEFBNkJJLGNBN0JVLENBMkJaLEVBQUUsQ0FFQSxFQUFFLEVBN0JOLGNBQWMsQ0EyQlIsRUFBRSxDQUVKLEVBQUUsQ0FBQztFQUNELFdBQVcsRUQzRUYsUUFBUTtFQzRFakIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsYUFBYSxFQUFFLElBQUksR0FDcEI7O0FBakNMLEFBcUNFLGNBckNZLENB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 */
