/**
 * Convert pixels to percent
 * @param  {int} $childWidth  Child width in pixels
 * @param  {int} $parentWidth Parent width in pixels
 */
/**
 * Convert pixels to view width
 * @param  {int} $childWidth  Child width in pixels
 * @param  {int} $parentWidth Parent width in pixels
 */
/**
 * Convert pixels to em
 * @param  {int} $px  pixels
 * @param  {int} $fontPx parent font size in px
 */
/**
 * Mixin to convert font pixels to view-width
 * @param  {int} $fontSize  Font size in pixels
 * @param  {int} $viewWidth View width in pixels
 */
/**
 * Mixin to insert placeholder styling
 */
@font-face {
  font-family: 'CiscoSansTT';
  src: url("fonts/hinted-CiscoSansTTLight.eot");
  src: url("fonts/hinted-CiscoSansTTLight.eot?#iefix") format("embedded-opentype"), url("fonts/hinted-CiscoSansTTLight.woff2") format("woff2"), url("fonts/hinted-CiscoSansTTLight.woff") format("woff"), url("fonts/hinted-CiscoSansTTLight.ttf") format("truetype"), url("fonts/hinted-CiscoSansTTLight.svg#CiscoSansTTLight") format("svg");
  font-weight: 300;
  font-style: normal; }

@font-face {
  font-family: 'CiscoSansTT';
  src: url("fonts/hinted-CiscoSansTT-ExtraLight.eot");
  src: local("CiscoSansTT ExtraLight"), local("CiscoSansTT-ExtraLight"), url("fonts/hinted-CiscoSansTT-ExtraLight.eot?#iefix") format("embedded-opentype"), url("fonts/hinted-CiscoSansTT-ExtraLight.woff2") format("woff2"), url("fonts/hinted-CiscoSansTT-ExtraLight.woff") format("woff"), url("fonts/hinted-CiscoSansTT-ExtraLight.ttf") format("truetype"), url("fonts/hinted-CiscoSansTT-ExtraLight.svg#CiscoSansTT-ExtraLight") format("svg");
  font-weight: 200;
  font-style: normal; }

@font-face {
  font-family: 'CiscoSansTT';
  src: url("hinted-CiscoSansTT-Thin.eot");
  src: url("hinted-CiscoSansTT-Thin.eot?#iefix") format("embedded-opentype"), url("hinted-CiscoSansTT-Thin.woff2") format("woff2"), url("hinted-CiscoSansTT-Thin.woff") format("woff"), url("hinted-CiscoSansTT-Thin.ttf") format("truetype"), url("hinted-CiscoSansTT-Thin.svg#CiscoSansTT-Thin") format("svg");
  font-weight: 100;
  font-style: normal; }

@font-face {
  font-family: 'CiscoSansTT';
  src: url("fonts/hinted-CiscoSansTT.eot");
  src: local("CiscoSansTT"), url("fonts/hinted-CiscoSansTT.eot?#iefix") format("embedded-opentype"), url("fonts/hinted-CiscoSansTT.woff2") format("woff2"), url("fonts/hinted-CiscoSansTT.woff") format("woff"), url("fonts/hinted-CiscoSansTT.ttf") format("truetype"), url("fonts/hinted-CiscoSansTT.svg#CiscoSansTT") format("svg");
  font-weight: normal;
  font-style: normal; }

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
/* html, body {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
} */
#page {
  /* HTML5 display-role reset for older browsers */ }
  #page div, #page span, #page applet, #page object, #page iframe,
  #page h1, #page h2, #page h3, #page h4, #page h5, #page h6, #page p, #page blockquote, #page pre,
  #page a, #page abbr, #page acronym, #page address, #page big, #page cite, #page code,
  #page del, #page dfn, #page em, #page img, #page ins, #page kbd, #page q, #page s, #page samp,
  #page small, #page strike, #page strong, #page sub, #page sup, #page tt, #page var,
  #page b, #page u, #page i, #page center,
  #page dl, #page dt, #page dd, #page ol, #page ul, #page li,
  #page fieldset, #page form, #page label, #page legend,
  #page table, #page caption, #page tbody, #page tfoot, #page thead, #page tr, #page th, #page td,
  #page article, #page aside, #page canvas, #page details, #page embed,
  #page figure, #page figcaption, #page footer, #page header, #page hgroup,
  #page menu, #page nav, #page output, #page ruby, #page section, #page summary,
  #page time, #page mark, #page audio, #page video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline; }
  #page article, #page aside, #page details, #page figcaption, #page figure,
  #page footer, #page header, #page hgroup, #page menu, #page nav, #page section {
    display: block; }
  #page body {
    line-height: 1; }
  #page ol, #page ul {
    list-style: none; }
  #page blockquote, #page q {
    quotes: none; }
  #page blockquote:before, #page blockquote:after,
  #page q:before, #page q:after {
    content: '';
    content: none; }
  #page table {
    border-collapse: collapse;
    border-spacing: 0; }

#page {
  width: 100%;
  min-width: 320px;
  overflow: hidden;
  position: relative;
  font-family: 'CiscoSansTT', Arial, sans-serif;
  font-weight: 300;
  color: #FFF;
  font-size: 5.3125vw; }
  @media screen and (min-width: 800px) {
    #page {
      font-size: 24px; } }
  #page div, #page main, #page section, #page header, #page footer, #page nav {
    box-sizing: border-box; }
  #page img {
    max-width: 100%;
    height: auto;
    display: block; }
  #page a {
    text-decoration: none;
    color: #00bceb; }
  #page p {
    line-height: 1.15em;
    margin: 3.125% 0;
    color: inherit;
    font-weight: inherit; }
    @media screen and (min-width: 768px) {
      #page p {
        margin: 20px 0;
        font-size: 28px; } }
  #page h1, #page h2, #page h3 {
    line-height: 1.2em;
    margin: 6.25% 0;
    text-align: center;
    font-weight: 400;
    font-size: 5.625vw; }
    @media screen and (min-width: 768px) {
      #page h1, #page h2, #page h3 {
        margin: 30px 0; } }
  #page h1 {
    font-size: 9.375vw; }
    @media screen and (min-width: 768px) {
      #page h1 {
        font-size: 70px; } }
  #page hr {
    display: block;
    width: 9.375vw;
    height: 1px;
    background-color: #FFF;
    margin: 3.90625% 0 5.46875%;
    border: 0 none; }
    @media screen and (min-width: 800px) {
      #page hr {
        width: 40px;
        margin: 20px auto; } }
  #page input {
    display: block;
    border: 1px solid #777777;
    background-color: transparent;
    padding: 0.5em;
    font-size: 4.6875vw;
    width: 100%;
    box-sizing: border-box; }
    #page input:invalid {
      border-color: red;
      box-shadow: 0 0 0 transparent; }
    #page input:required {
      border: 1px solid #777777; }
    @media screen and (min-width: 768px) {
      #page input {
        font-size: 24px;
        padding: 0.5 0.25em; } }
  #page button:focus, #page button:active, #page button:hover {
    outline: 0 none; }
  #page .orange {
    color: #fbab18 !important; }
  #page .cisco {
    color: #00bceb !important; }
  #page svg {
    display: block;
    /* path, line, polyline {
			stroke: #fff;
			stroke-width: 2px;
		} */ }
    #page svg path {
      fill: transparent; }
  #page .svg_symbol {
    display: none; }
  #page canvas {
    width: 100%;
    height: auto;
    max-width: 100%; }

#page .hide-xs {
  display: none; }

#page .show-xs {
  display: block; }

#page .wrapper {
  max-width: 800px;
  padding: 0;
  margin: 0 auto;
  position: relative; }

#page .row {
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -ms-flex-line-pack: start;
      align-content: flex-start; }
  #page .row [class*="col-"] {
    -webkit-box-flex: 12;
        -ms-flex: 12 1 0px;
            flex: 12 1 0;
    padding: 0;
    min-width: 0;
    max-width: 100%; }
  #page .row .col-1 {
    max-width: 8.33333%;
    -webkit-box-flex: 12;
        -ms-flex: 12 1;
            flex: 12 1; }
  #page .row .col-2 {
    max-width: 16.66667%;
    -webkit-box-flex: 12;
        -ms-flex: 12 1;
            flex: 12 1; }
  #page .row .col-3 {
    max-width: 25%;
    -webkit-box-flex: 12;
        -ms-flex: 12 1;
            flex: 12 1; }
  #page .row .col-4 {
    max-width: 33.33333%;
    -webkit-box-flex: 12;
        -ms-flex: 12 1;
            flex: 12 1; }
  #page .row .col-5 {
    max-width: 41.66667%;
    -webkit-box-flex: 12;
        -ms-flex: 12 1;
            flex: 12 1; }
  #page .row .col-6 {
    max-width: 50%;
    -webkit-box-flex: 12;
        -ms-flex: 12 1;
            flex: 12 1; }
  #page .row .col-7 {
    max-width: 58.33333%;
    -webkit-box-flex: 12;
        -ms-flex: 12 1;
            flex: 12 1; }
  #page .row .col-8 {
    max-width: 66.66667%;
    -webkit-box-flex: 12;
        -ms-flex: 12 1;
            flex: 12 1; }
  #page .row .col-9 {
    max-width: 75%;
    -webkit-box-flex: 12;
        -ms-flex: 12 1;
            flex: 12 1; }
  #page .row .col-10 {
    max-width: 83.33333%;
    -webkit-box-flex: 12;
        -ms-flex: 12 1;
            flex: 12 1; }
  #page .row .col-11 {
    max-width: 91.66667%;
    -webkit-box-flex: 12;
        -ms-flex: 12 1;
            flex: 12 1; }
  #page .row .col-12 {
    max-width: 100%;
    -webkit-box-flex: 12;
        -ms-flex: 12 1;
            flex: 12 1; }

@media screen and (min-width: 414px) {
  #page .hide-sm {
    display: none; }
  #page .show-sm {
    display: block; } }

@media screen and (min-width: 768px) {
  #page .hide-md {
    display: none; }
  #page .show-md {
    display: block; }
  #page .row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap; }
    #page .row .col-md-1 {
      max-width: 8.33333%; }
    #page .row .col-md-2 {
      max-width: 16.66667%; }
    #page .row .col-md-3 {
      max-width: 25%; }
    #page .row .col-md-4 {
      max-width: 33.33333%; }
    #page .row .col-md-5 {
      max-width: 41.66667%; }
    #page .row .col-md-6 {
      max-width: 50%; }
    #page .row .col-md-7 {
      max-width: 58.33333%; }
    #page .row .col-md-8 {
      max-width: 66.66667%; }
    #page .row .col-md-9 {
      max-width: 75%; }
    #page .row .col-md-10 {
      max-width: 83.33333%; }
    #page .row .col-md-11 {
      max-width: 91.66667%; }
    #page .row .col-md-12 {
      max-width: 100%; } }

@media screen and (min-width: 800px) {
  #page .hide-lg {
    display: none; }
  #page .show-lg {
    display: block; }
  #page .row .col-lg-1 {
    max-width: 8.33333%; }
  #page .row .col-lg-2 {
    max-width: 16.66667%; }
  #page .row .col-lg-3 {
    max-width: 25%; }
  #page .row .col-lg-4 {
    max-width: 33.33333%; }
  #page .row .col-lg-5 {
    max-width: 41.66667%; }
  #page .row .col-lg-6 {
    max-width: 50%; }
  #page .row .col-lg-7 {
    max-width: 58.33333%; }
  #page .row .col-lg-8 {
    max-width: 66.66667%; }
  #page .row .col-lg-9 {
    max-width: 75%; }
  #page .row .col-lg-10 {
    max-width: 83.33333%; }
  #page .row .col-lg-11 {
    max-width: 91.66667%; }
  #page .row .col-lg-12 {
    max-width: 100%; } }

#page .button {
  background: #FFF;
  border-radius: 100vw;
  font-size: 6.4vw;
  font-weight: 100;
  padding: 0.7em 1em;
  margin: 0;
  color: #6C6C6C;
  text-align: center;
  cursor: pointer;
  transition: background-color 0.25s;
  display: inline-block;
  width: auto; }
  #page .button.blue {
    background-color: #005073;
    color: #FFF; }
  #page .button .icon {
    margin-left: 0.5em;
    color: #3B5998;
    vertical-align: middle; }
  #page .button:hover {
    background-color: #053856 !important; }
  @media screen and (min-width: 414px) {
    #page .button {
      font-size: 5.7971vw; } }
  @media screen and (min-width: 768px) {
    #page .button {
      font-size: 26px;
      padding: 16px 18px; }
      #page .button.view--more {
        font-size: 18px; } }

#page .expandable {
  height: 0;
  opacity: 0;
  overflow: hidden; }

#page .expandable.open {
  transition: opacity 0.25s;
  opacity: 1;
  height: auto; }

@-webkit-keyframes yoyo {
  from {
    padding-bottom: 0; }
  to {
    padding-bottom: 3%; } }

@keyframes yoyo {
  from {
    padding-bottom: 0; }
  to {
    padding-bottom: 3%; } }

@-webkit-keyframes fold-left {
  from {
    -webkit-transform: translateX(50%);
            transform: translateX(50%); }
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0); } }

@keyframes fold-left {
  from {
    -webkit-transform: translateX(50%);
            transform: translateX(50%); }
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0); } }

@-webkit-keyframes fold-right {
  from {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%); }
  to {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); } }

@keyframes fold-right {
  from {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%); }
  to {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); } }

@-webkit-keyframes show {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes show {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

#page .arrow {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 9.33333vw;
  margin: 0 auto 2.66667vw;
  -webkit-animation-name: yoyo;
          animation-name: yoyo;
  -webkit-animation-duration: 0.75s;
          animation-duration: 0.75s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
          animation-direction: alternate; }
  #page .arrow img {
    width: 100%;
    height: auto;
    max-width: 100%; }

#page header {
  font-weight: 200; }
  #page header svg {
    width: 100%;
    height: 90.94907vw; }
  #page header .wrapper {
    background-color: #00bceb;
    padding-top: 20vw; }
  #page header .animation_container {
    position: relative;
    margin: 0 auto;
    width: 90.4vw; }
    #page header .animation_container h1 {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      margin: 0 auto;
      font-weight: inherit;
      font-size: 10.13333vw;
      margin: 20vw auto 0;
      width: 66.66667vw; }
  #page header p {
    font-size: 5.86667vw;
    padding: 13.33333vw 6.66667vw 16vw;
    margin: 0;
    text-align: center; }

#page #intro {
  color: #005073; }
  #page #intro p {
    text-align: center;
    padding: 16vw 5.33333vw;
    margin: 0;
    font-size: 5.86667vw; }
  #page #intro .wrapper {
    padding-bottom: 4vw; }

#page .info {
  background-color: #005073;
  -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
          order: 0; }
  #page .info .left, #page .info .right {
    padding: 16vw 6.66667vw; }
  #page .info .title {
    border-bottom: 3px solid #00bceb;
    overflow: hidden; }
    #page .info .title h2 {
      padding-bottom: 4vw;
      color: #00bceb;
      margin: 0 auto;
      text-align: left;
      font-size: 8.53333vw;
      overflow: hidden;
      width: 50%; }
      #page .info .title h2.fold-left {
        float: left; }
        #page .info .title h2.fold-left span {
          -webkit-transform-origin: top right;
                  transform-origin: top right;
          -webkit-transform: translateX(100%);
                  transform: translateX(100%); }
      #page .info .title h2.fold-right {
        float: right; }
        #page .info .title h2.fold-right span {
          -webkit-transform-origin: top left;
                  transform-origin: top left;
          -webkit-transform: translateX(-100%);
                  transform: translateX(-100%); }
      #page .info .title h2 span {
        display: block;
        width: 200%; }
  #page .info .content {
    padding-top: 8vw;
    opacity: 0; }
    #page .info .content p {
      font-size: 4.8vw;
      margin: 0 auto 5.33333vw; }

#page .graphic {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  background-color: #efefef;
  padding-bottom: 13.33333vw !important; }
  #page .graphic img, #page .graphic canvas {
    margin: 0 auto; }
  #page .graphic .jsgif {
    padding-bottom: calc(500*100%/400);
    height: 0;
    width: 100vw;
    position: relative; }
    #page .graphic .jsgif canvas {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%; }

#page .open .fold-right span {
  -webkit-animation-name: fold-right;
          animation-name: fold-right;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 0.25s;
          animation-delay: 0.25s; }

#page .open .fold-left span {
  -webkit-animation-name: fold-left;
          animation-name: fold-left;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 0.25s;
          animation-delay: 0.25s; }

#page .open .content {
  -webkit-animation-name: show;
          animation-name: show;
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s; }

#page footer .wrapper {
  background-color: #00bceb; }

#page footer .animation_container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  padding-top: 3.73333vw;
  z-index: 0; }
  #page footer .animation_container svg {
    width: 100%;
    height: auto; }

#page footer .content {
  padding: 21.33333vw 5.33333vw 16vw;
  text-align: center;
  position: relative;
  z-index: 2; }
  #page footer .content blockquote {
    font-size: 6.4vw;
    font-weight: 200;
    text-align: center;
    line-height: 1.25em;
    margin-bottom: 32vw; }
    #page footer .content blockquote cite {
      display: block;
      font-size: 4.8vw;
      font-weight: 300;
      line-height: 1.25em;
      margin-top: 8vw; }

@media screen and (min-width: 414px) {
  #page .arrow {
    width: 8.45411vw;
    margin-bottom: 2.41546vw; }
  #page header svg {
    height: 82.3814vw; }
  #page header .animation_container {
    width: 91.78744vw; }
    #page header .animation_container h1 {
      font-size: 9.17874vw;
      margin: 18.11594vw auto 0;
      width: 60.38647vw; }
  #page header p {
    font-size: 5.31401vw;
    padding: 12.07729vw 10.86957vw 14.49275vw; }
  #page #intro p {
    padding: 14.49275vw 9.66184vw;
    font-size: 5.31401vw; }
  #page #intro .wrapper {
    padding-bottom: 3.62319vw; }
  #page .info .left, #page .info .right {
    padding: 14.49275vw 8.45411vw; }
  #page .info .title h2 {
    padding-bottom: 3.62319vw;
    font-size: 7.72947vw; }
  #page .info .content {
    padding-top: 7.24638vw; }
    #page .info .content p {
      font-size: 4.34783vw;
      margin: 0 auto 4.83092vw; }
  #page .graphic {
    padding-bottom: 12.07729vw !important; }
  #page footer .content {
    padding: 19.32367vw 9.66184vw 14.49275vw; }
    #page footer .content blockquote {
      font-size: 5.7971vw;
      margin-bottom: 28.98551vw; }
      #page footer .content blockquote cite {
        font-size: 4.34783vw;
        margin-top: 7.24638vw; } }

@media screen and (min-width: 768px) {
  #page .arrow {
    width: 35px;
    margin-bottom: 10px; }
  #page header svg {
    height: auto; }
  #page header .wrapper {
    padding-top: 20px; }
  #page header .animation_container {
    max-width: 727px; }
    #page header .animation_container svg {
      width: 100%; }
    #page header .animation_container h1 {
      font-size: 44px;
      width: 79.77992%;
      margin-top: 13.75516%; }
  #page header p {
    font-size: 26px;
    padding: 25px 50px 35px; }
  #page header canvas {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%; }
  #page header svg {
    position: absolute;
    top: 0;
    left: 0; }
  #page #intro p {
    padding: 40px 60px 90px;
    font-size: 26px; }
  #page #intro .wrapper {
    padding-bottom: 15px; }
  #page .info {
    -webkit-box-ordinal-group: initial;
        -ms-flex-order: initial;
            order: initial; }
    #page .info > * {
      min-height: 100vh;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column wrap;
              flex-flow: column wrap;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    #page .info .left > *, #page .info .right > * {
      padding: 0 0 25px; }
    #page .info .left {
      padding: 0 0 0 60px; }
      #page .info .left .title, #page .info .left .content {
        padding-right: 30px;
        padding-left: 5px; }
      #page .info .left .content {
        padding-right: 40px; }
    #page .info .right {
      padding: 0 55px 0 0; }
      #page .info .right .title, #page .info .right .content {
        padding-left: 30px;
        padding-right: 5px; }
    #page .info .frame {
      min-height: 550px; }
    #page .info .title {
      padding-top: 60px; }
      #page .info .title h2 {
        font-size: 32px;
        text-align: left;
        padding-bottom: 0; }
    #page .info .content {
      padding-top: 45px; }
      #page .info .content p {
        font-size: 18px;
        margin: 0 auto 25px; }
  #page .graphic {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    padding-bottom: 0 !important; }
    #page .graphic .graphic-container {
      min-height: 100vh;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column wrap;
              flex-flow: column wrap;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    #page .graphic .jsgif {
      padding-bottom: unset;
      height: auto;
      width: auto;
      position: static; }
      #page .graphic .jsgif canvas {
        position: static;
        width: 100%;
        height: auto; }
  #page footer .animation_container {
    padding-top: 0; }
    #page footer .animation_container svg {
      position: absolute;
      width: 100%;
      top: 0;
      left: 0; }
  #page footer .content {
    padding: 42px 95px 70px; }
    #page footer .content blockquote {
      font-size: 26px;
      margin-bottom: 45px;
      font-weight: 100; }
      #page footer .content blockquote cite {
        font-size: 18px;
        margin-top: 20px;
        padding: 0 40px;
        font-weight: 100; }
    #page footer .content .button {
      min-width: 316px; } }

body {
  background: #FFF; }

#fw-footer {
  margin: auto;
  background: transparent;
  box-shadow: unset; }
  #fw-footer a {
    color: #005073; }

.no-touch #fw-banner #fw-logo {
  left: 0; }
  .no-touch #fw-banner #fw-logo div {
    left: auto;
    top: auto;
    -webkit-transform: scale(1);
            transform: scale(1); }

@media screen and (min-width: 768px) {
  .no-touch #fw-banner #fw-logo div {
    width: 68px !important;
    height: inherit !important;
    -webkit-transform: scale(1);
            transform: scale(1);
    left: 0;
    top: 0;
    position: relative; }
    .no-touch #fw-banner #fw-logo div::before {
      -webkit-transform: scale(0.5);
              transform: scale(0.5); } }

@media screen and (min-width: 768px) {
  .no-touch #fw-masthead #fw-banner {
    height: 78px !important; } }

#fw-footer ul {
  text-align: center; }
  #fw-footer ul li {
    float: none; }
  #fw-footer ul li:nth-child(3), #fw-footer ul li:nth-child(4) {
    display: inline-block;
    visibility: visible; }

@media screen and (min-width: 768px) {
  #fw-footer ul {
    text-align: left; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UvX2Z1bmN0aW9ucy5zY3NzIiwiYmFzZS9fbWl4aW5zLnNjc3MiLCJiYXNlL19mb250cy5zY3NzIiwiYmFzZS9fcmVzZXQuc2NzcyIsImJhc2UvX2dlbmVyYWwuc2NzcyIsImJhc2UvX3ZhcnMuc2NzcyIsImJhc2UvX2xheW91dC5zY3NzIiwiYmFzZS9fYnV0dG9ucy5zY3NzIiwibW9kdWxlcy9fbWFpbi5zY3NzIiwibW9kdWxlcy9fZml4ZXMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBSUg7Ozs7R0FJRztBQUtIOzs7O0dBSUc7QUNyQkg7Ozs7R0FJRztBQUtIOztHQUVHO0FDWEg7RUFDQywyQkFBMkI7RUFDM0IsOENBQVE7RUFDUiw2VUFJaUU7RUFDakUsaUJBQWlCO0VBQ2pCLG1CQUFtQixFQUFBOztBQUdwQjtFQUNDLDJCQUEyQjtFQUMzQixvREFBUTtFQUNSLG1iQUs2RTtFQUM3RSxpQkFBaUI7RUFDakIsbUJBQW1CLEVBQUE7O0FBR3BCO0VBQ0MsMkJBQTJCO0VBQzNCLHdDQUFRO0VBQ1IsK1NBSTJEO0VBQzNELGlCQUFpQjtFQUNqQixtQkFBbUIsRUFBQTs7QUFHcEI7RUFDQywyQkFBMkI7RUFDM0IseUNBQVE7RUFDUixxVUFLdUQ7RUFDdkQsb0JBQW9CO0VBQ3BCLG1CQUFtQixFQUFBOztBQy9DcEI7OztFQUdFO0FBQ0Y7Ozs7Ozs7SUFPSTtBQUVKO0VBcUJDLGlEQUFpRCxFQXVCakQ7RUE1Q0Q7Ozs7Ozs7Ozs7Ozs7SUFjRSxVQUFVO0lBQ1YsV0FBVztJQUNYLFVBQVU7SUFDVixnQkFBZ0I7SUFDaEIsY0FBYztJQUNkLHlCQUF5QixFQUN6QjtFQXBCRjs7SUF3QkUsZUFBZSxFQUNmO0VBekJGO0lBMkJFLGVBQWUsRUFDZjtFQTVCRjtJQThCRSxpQkFBaUIsRUFDakI7RUEvQkY7SUFpQ0UsYUFBYSxFQUNiO0VBbENGOztJQXFDRSxZQUFZO0lBQ1osY0FBYyxFQUNkO0VBdkNGO0lBeUNFLDBCQUEwQjtJ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QWdCO1FBQ2hCLGlCQUFpQixFQUNwQjtJQXhoQnJCO01BNGhCb0IsaUJBQWlCLEVBQ3BCLEVBQUE7O0FDN2hCakI7RUFDSSxpQkFBaUIsRUFDcEI7O0FBRUQ7RUFDSSxhQUFhO0VBQ2Isd0JBQXdCO0VBQ3hCLGtCQUFrQixFQUtyQjtFQVJEO0lBTVEsZUpIZSxFSUlsQjs7QUFHTDtFQUVRLFFBQVEsRUFXWDtFQWJMO0lBS1ksV0FBVztJQUNYLFVBQVU7SUFDViw0QkFBZ0I7WUFBaEIsb0JBQWdCLEVBS25COztBQUVMO0VBZEo7SUFpQmdCLHVCQUF1QjtJQUN2QiwyQkFBMkI7SUFDM0IsNEJBQWdCO1lBQWhCLG9CQUFnQjtJQUNoQixRQUFRO0lBQ1IsT0FBTztJQUNQLG1CQUFtQixFQUt0QjtJQTNCYjtNQXlCb0IsOEJBQWdCO2NBQWhCLHNCQUFnQixFQUNuQixFQUFBOztBQVFiO0VBREo7SUFFUSx3QkFBd0IsRUFFL0IsRUFBQTs7QUFFRDtFQUVRLG1CQUFtQixFQVN0QjtFQVhMO0lBSVksWUFBWSxFQUNmO0VBTFQ7SUFRWSxzQkFBc0I7SUFDdEIsb0JBQW9CLEVBQ3ZCOztBQUdMO0VBYko7SUFlWSxpQkFBaUIsRUFDcEIsRUFBQSIsImZpbGUiOiJzdHlsZXMuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvbnZlcnQgcGl4ZWxzIHRvIHBlcmNlbnRcclxuICogQHBhcmFtICB7aW50fSAkY2hpbGRXaWR0aCAgQ2hpbGQgd2lkdGggaW4gcGl4ZWxzXHJcbiAqIEBwYXJhbSAge2ludH0gJHBhcmVudFdpZHRoIFBhcmVudCB3aWR0aCBpbiBwaXhlbHNcclxuICovXHJcbkBmdW5jdGlvbiBweFRvUGVyY2VudCgkY2hpbGRXaWR0aCwgJHBhcmVudFdpZHRoKSB7XHJcblx0QHJldHVybiAkY2hpbGRXaWR0aCAqIDEwMCAvICRwYXJlbnRXaWR0aCArICU7XHJcbn1cclxuLyoqXHJcbiAqIENvbnZlcnQgcGl4ZWxzIHRvIHZpZXcgd2lkdGhcclxuICogQHBhcmFtICB7aW50fSAkY2hpbGRXaWR0aCAgQ2hpbGQgd2lkdGggaW4gcGl4ZWxzXHJcbiAqIEBwYXJhbSAge2ludH0gJHBhcmVudFdpZHRoIFBhcmVudCB3aWR0aCBpbiBwaXhlbHNcclxuICovXHJcbkBmdW5jdGlvbiBweFRvVncoJGNoaWxkV2lkdGgsICR2aWV3V2lkdGgpIHtcclxuXHRAcmV0dXJuICRjaGlsZFdpZHRoICogMTAwIC8gJHZpZXdXaWR0aCArIHZ3O1xyXG59XHJcblxyXG4vKipcclxuICogQ29udmVydCBwaXhlbHMgdG8gZW1cclxuICogQHBhcmFtICB7aW50fSAkcHggIHBpeGVsc1xyXG4gKiBAcGFyYW0gIHtpbnR9ICRmb250UHggcGFyZW50IGZvbnQgc2l6ZSBpbiBweFxyXG4gKi9cclxuQGZ1bmN0aW9uIHB4VG9FbSgkcHgsICRmb250UHgpIHtcclxuXHRAcmV0dXJuICRweCAvICRmb250UHggKyBlbTtcclxufVxyXG4iLCIvKipcclxuICogTWl4aW4gdG8gY29udmVydCBmb250IHBpeGVscyB0byB2aWV3LXdpZHRoXHJcbiAqIEBwYXJhbSAge2ludH0gJGZvbnRTaXplICBGb250IHNpemUgaW4gcGl4ZWxzXHJcbiAqIEBwYXJhbSAge2ludH0gJHZpZXdXaWR0aCBWaWV3IHdpZHRoIGluIHBpeGVsc1xyXG4gKi9cclxuQG1peGluIGZvbnQtc2l6ZS12dygkZm9udFNpemUsICR2aWV3V2lkdGgpIHtcclxuXHRmb250LXNpemU6ICRmb250U2l6ZSAqIDEwMCAvICR2aWV3V2lkdGggKyB2dztcclxufVxyXG5cclxuLyoqXHJcbiAqIE1peGluIHRvIGluc2VydCBwbGFjZWhvbGRlciBzdHlsaW5nXHJcbiAqL1xyXG5AbWl4aW4gcGxhY2UtaG9sZGVyIHtcclxuXHQmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcclxuXHQgICBAY29udGVudDtcclxuXHR9XHJcblxyXG5cdCY6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTgtICovXHJcblx0ICAgQGNvbnRlbnQ7ICBcclxuXHR9XHJcblxyXG5cdCY6Oi1tb3otcGxhY2Vob2xkZXIgeyAgLyogRmlyZWZveCAxOSsgKi9cclxuXHQgICBAY29udGVudDsgIFxyXG5cdH1cclxuXHJcblx0JjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAgXHJcblx0ICAgQGNvbnRlbnQ7ICBcclxuXHR9XHJcbn0iLCJAZm9udC1mYWNlIHtcclxuXHRmb250LWZhbWlseTogJ0Npc2NvU2Fuc1RUJztcclxuXHRzcmM6IHVybCgnZm9udHMvaGludGVkLUNpc2NvU2Fuc1RUTGlnaHQuZW90Jyk7XHJcblx0c3JjOiB1cmwoJ2ZvbnRzL2hpbnRlZC1DaXNjb1NhbnNUVExpZ2h0LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcblx0XHR1cmwoJ2ZvbnRzL2hpbnRlZC1DaXNjb1NhbnNUVExpZ2h0LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG5cdFx0dXJsKCdmb250cy9oaW50ZWQtQ2lzY29TYW5zVFRMaWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcblx0XHR1cmwoJ2ZvbnRzL2hpbnRlZC1DaXNjb1NhbnNUVExpZ2h0LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuXHRcdHVybCgnZm9udHMvaGludGVkLUNpc2NvU2Fuc1RUTGlnaHQuc3ZnI0Npc2NvU2Fuc1RUTGlnaHQnKSBmb3JtYXQoJ3N2ZycpO1xyXG5cdGZvbnQtd2VpZ2h0OiAzMDA7XHJcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuXHRmb250LWZhbWlseTogJ0Npc2NvU2Fuc1RUJztcclxuXHRzcmM6IHVybCgnZm9udHMvaGludGVkLUNpc2NvU2Fuc1RULUV4dHJhTGlnaHQuZW90Jyk7XHJcblx0c3JjOiBsb2NhbCgnQ2lzY29TYW5zVFQgRXh0cmFMaWdodCcpLCBsb2NhbCgnQ2lzY29TYW5zVFQtRXh0cmFMaWdodCcpLFxyXG5cdFx0dXJsKCdmb250cy9oaW50ZWQtQ2lzY29TYW5zVFQtRXh0cmFMaWdodC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0dXJsKCdmb250cy9oaW50ZWQtQ2lzY29TYW5zVFQtRXh0cmFMaWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuXHRcdHVybCgnZm9udHMvaGludGVkLUNpc2NvU2Fuc1RULUV4dHJhTGlnaHQud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG5cdFx0dXJsKCdmb250cy9oaW50ZWQtQ2lzY29TYW5zVFQtRXh0cmFMaWdodC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXHJcblx0XHR1cmwoJ2ZvbnRzL2hpbnRlZC1DaXNjb1NhbnNUVC1FeHRyYUxpZ2h0LnN2ZyNDaXNjb1NhbnNUVC1FeHRyYUxpZ2h0JykgZm9ybWF0KCdzdmcnKTtcclxuXHRmb250LXdlaWdodDogMjAwO1xyXG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcblx0Zm9udC1mYW1pbHk6ICdDaXNjb1NhbnNUVCc7XHJcblx0c3JjOiB1cmwoJ2hpbnRlZC1DaXNjb1NhbnNUVC1UaGluLmVvdCcpO1xyXG5cdHNyYzogdXJsKCdoaW50ZWQtQ2lzY29TYW5zVFQtVGhpbi5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0dXJsKCdoaW50ZWQtQ2lzY29TYW5zVFQtVGhpbi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuXHRcdHVybCgnaGludGVkLUNpc2NvU2Fuc1RULVRoaW4ud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG5cdFx0dXJsKCdoaW50ZWQtQ2lzY29TYW5zVFQtVGhpbi50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXHJcblx0XHR1cmwoJ2hpbnRlZC1DaXNjb1NhbnNUVC1UaGluLnN2ZyNDaXNjb1NhbnNUVC1UaGluJykgZm9ybWF0KCdzdmcnKTtcclxuXHRmb250LXdlaWdodDogMTAwO1xyXG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcblx0Zm9udC1mYW1pbHk6ICdDaXNjb1NhbnNUVCc7XHJcblx0c3JjOiB1cmwoJ2ZvbnRzL2hpbnRlZC1DaXNjb1NhbnNUVC5lb3QnKTtcclxuXHRzcmM6IGxvY2FsKCdDaXNjb1NhbnNUVCcpLFxyXG5cdFx0dXJsKCdmb250cy9oaW50ZWQtQ2lzY29TYW5zVFQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuXHRcdHVybCgnZm9udHMvaGludGVkLUNpc2NvU2Fuc1RULndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG5cdFx0dXJsKCdmb250cy9oaW50ZWQtQ2lzY29TYW5zVFQud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG5cdFx0dXJsKCdmb250cy9oaW50ZWQtQ2lzY29TYW5zVFQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG5cdFx0dXJsKCdmb250cy9oaW50ZWQtQ2lzY29TYW5zVFQuc3ZnI0Npc2NvU2Fuc1RUJykgZm9ybWF0KCdzdmcnKTtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufSIsIi8qIGh0dHA6Ly9tZXllcndlYi5jb20vZXJpYy90b29scy9jc3MvcmVzZXQvIFxyXG4gICB2Mi4wIHwgMjAxMTAxMjZcclxuICAgTGljZW5zZTogbm9uZSAocHVibGljIGRvbWFpbilcclxuKi9cclxuLyogaHRtbCwgYm9keSB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0Ym9yZGVyOiAwO1xyXG5cdGZvbnQtc2l6ZTogMTAwJTtcclxuXHRmb250OiBpbmhlcml0O1xyXG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxufSAqL1xyXG5cclxuI3BhZ2Uge1xyXG5cdGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSxcclxuXHRoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsXHJcblx0YSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxyXG5cdGRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCxcclxuXHRzbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLFxyXG5cdGIsIHUsIGksIGNlbnRlcixcclxuXHRkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxyXG5cdGZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLFxyXG5cdHRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxyXG5cdGFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGVtYmVkLCBcclxuXHRmaWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIFxyXG5cdG1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LFxyXG5cdHRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0Ym9yZGVyOiAwO1xyXG5cdFx0Zm9udC1zaXplOiAxMDAlO1xyXG5cdFx0Zm9udDogaW5oZXJpdDtcclxuXHRcdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxuXHR9XHJcblx0LyogSFRNTDUgZGlzcGxheS1yb2xlIHJlc2V0IGZvciBvbGRlciBicm93c2VycyAqL1xyXG5cdGFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIFxyXG5cdGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHR9XHJcblx0Ym9keSB7XHJcblx0XHRsaW5lLWhlaWdodDogMTtcclxuXHR9XHJcblx0b2wsIHVsIHtcclxuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0fVxyXG5cdGJsb2NrcXVvdGUsIHEge1xyXG5cdFx0cXVvdGVzOiBub25lO1xyXG5cdH1cclxuXHRibG9ja3F1b3RlOmJlZm9yZSwgYmxvY2txdW90ZTphZnRlcixcclxuXHRxOmJlZm9yZSwgcTphZnRlciB7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdGNvbnRlbnQ6IG5vbmU7XHJcblx0fVxyXG5cdHRhYmxlIHtcclxuXHRcdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcblx0XHRib3JkZXItc3BhY2luZzogMDtcclxuXHR9XHJcbn0iLCIjcGFnZSB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWluLXdpZHRoOiAzMjBweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0Zm9udC1mYW1pbHk6ICdDaXNjb1NhbnNUVCcsIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG5cdGZvbnQtd2VpZ2h0OiAzMDA7XHJcblx0Y29sb3I6ICNGRkY7XHJcblx0QGluY2x1ZGUgZm9udC1zaXplLXZ3KDM0LCAkbW9iaWxlLXNpemUpO1xyXG5cclxuXHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkcGMtc2l6ZSArIHB4KSB7XHJcblx0XHRmb250LXNpemU6IDI0cHg7XHJcblx0fVxyXG5cclxuXHRkaXYsIG1haW4sIHNlY3Rpb24sIGhlYWRlciwgZm9vdGVyLCBuYXYge1xyXG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHR9XHJcblxyXG5cdGltZyB7XHJcblx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHR9XHJcblxyXG5cdGEge1xyXG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdFx0Y29sb3I6ICRjaXNjbztcclxuXHR9XHJcblxyXG5cdHAge1xyXG5cdFx0bGluZS1oZWlnaHQ6IDEuMTVlbTtcclxuXHRcdG1hcmdpbjogcHhUb1BlcmNlbnQoMjAsICRtb2JpbGUtc2l6ZSkgMDtcclxuXHRcdGNvbG9yOiBpbmhlcml0O1xyXG5cdFx0Zm9udC13ZWlnaHQ6IGluaGVyaXQ7XHJcblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdGFibGV0LXNpemUgKyBweCkge1xyXG5cdFx0XHRtYXJnaW46IDIwcHggMDtcclxuXHRcdFx0Zm9udC1zaXplOiAyOHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0aDEsIGgyLCBoMyB7XHJcblx0XHRsaW5lLWhlaWdodDogMS4yZW07XHJcblx0XHRtYXJnaW46IHB4VG9QZXJjZW50KDQwLCAkbW9iaWxlLXNpemUpIDA7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRmb250LXdlaWdodDogNDAwO1xyXG5cdFx0QGluY2x1ZGUgZm9udC1zaXplLXZ3KDM2LCAkbW9iaWxlLXNpemUpO1xyXG5cclxuXHRcdEBtZWRpYSBzY3JlZW4gYW5kKG1pbi13aWR0aDogJHRhYmxldC1zaXplICsgcHgpIHtcclxuXHRcdFx0bWFyZ2luOiAzMHB4IDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRoMSB7XHJcblx0XHRAaW5jbHVkZSBmb250LXNpemUtdncoNjAsICRtb2JpbGUtc2l6ZSk7XHJcblxyXG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHRhYmxldC1zaXplICsgcHgpIHtcclxuXHRcdFx0Zm9udC1zaXplOiA3MHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0aHIge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR3aWR0aDogNjAgKiAxMDAgLyAkbW9iaWxlLXNpemUgKyB2dztcclxuXHRcdGhlaWdodDogMXB4O1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcclxuXHRcdG1hcmdpbjogcHhUb1BlcmNlbnQoMjUsICRtb2JpbGUtc2l6ZSkgMCBweFRvUGVyY2VudCgzNSwgJG1vYmlsZS1zaXplKTtcclxuXHRcdGJvcmRlcjogMCBub25lO1xyXG5cclxuXHRcdEBtZWRpYSBzY3JlZW4gYW5kKG1pbi13aWR0aDogJHBjLXNpemUgKyBweCkge1xyXG5cdFx0XHR3aWR0aDogNDBweDtcclxuXHRcdFx0bWFyZ2luOiAyMHB4IGF1dG87XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRpbnB1dCB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdGJvcmRlcjogMXB4IHNvbGlkICM3Nzc3Nzc7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdHBhZGRpbmc6IDAuNWVtO1xyXG5cdFx0QGluY2x1ZGUgZm9udC1zaXplLXZ3KDMwLCAkbW9iaWxlLXNpemUpO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuXHRcdCY6aW52YWxpZCB7XHJcblx0XHRcdGJvcmRlci1jb2xvcjogcmVkO1xyXG5cdFx0XHRib3gtc2hhZG93OiAwIDAgMCB0cmFuc3BhcmVudDtcclxuXHRcdH1cclxuXHJcblx0XHQmOnJlcXVpcmVkIHtcclxuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgIzc3Nzc3NztcclxuXHRcdH1cclxuXHJcblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdGFibGV0LXNpemUgKyBweCkge1xyXG5cdFx0XHRmb250LXNpemU6IDI0cHg7XHJcblx0XHRcdHBhZGRpbmc6IDAuNSAwLjI1ZW07XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRidXR0b24ge1xyXG5cdFx0Jjpmb2N1cywgJjphY3RpdmUsICY6aG92ZXIge1xyXG5cdFx0XHRvdXRsaW5lOiAwIG5vbmU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQub3JhbmdlIHtcclxuXHRcdGNvbG9yOiAkb3JhbmdlICFpbXBvcnRhbnQ7XHJcblx0fVxyXG5cclxuXHQuY2lzY28ge1xyXG5cdFx0Y29sb3I6ICRjaXNjbyAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0c3ZnIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuXHRcdFxyXG5cdFx0LyogcGF0aCwgbGluZSwgcG9seWxpbmUge1xyXG5cdFx0XHRzdHJva2U6ICNmZmY7XHJcblx0XHRcdHN0cm9rZS13aWR0aDogMnB4O1xyXG5cdFx0fSAqL1xyXG5cdFx0XHJcblx0XHRwYXRoIHtcclxuXHRcdFx0ZmlsbDogdHJhbnNwYXJlbnQ7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuc3ZnX3N5bWJvbCB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0Y2FudmFzIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdH1cclxufVxyXG4iLCIvLyBHcmlkcyBhbmQgc2l6ZXNcclxuJGdyaWQtY29sdW1uczpcdDEyO1xyXG4kbWF4LXdpZHRoOlx0XHQ4MDA7XHJcblxyXG4vLyBDb2xvcnNcclxuJG1haW4tY29sb3I6XHQjRkZGO1xyXG4kY2lzY286ICAgICAgICAgIzAwYmNlYjtcclxuJGJsdWU6ICAgICAgICAgICMwMDUwNzM7XHJcbiRvcmFuZ2U6ICAgICAgICAjZmJhYjE4O1xyXG4kZ3JlZW46ICAgICAgICAgIzZlYmU0YTtcclxuJGdyZXk6ICAgICAgICAgICNlZmVmZWY7XHJcblxyXG4vLyBGb250c1xyXG4kZm9udHMtc3JjOlx0XHRcImZvbnRzL1wiO1xyXG5cclxuLy8gQnJlYWsgUG9pbnRzXHJcbiRtb2JpbGVTLXNpemU6XHQzNzU7XHJcbiRtb2JpbGVNLXNpemU6XHQ0MTQ7XHJcbiRtb2JpbGUtc2l6ZTpcdDY0MDtcclxuJHRhYmxldC1zaXplOlx0NzY4O1xyXG4kcGMtc2l6ZTpcdFx0ODAwOyIsIiNwYWdlIHtcclxuXHJcblx0LmhpZGUteHMge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdC5zaG93LXhzIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdH1cclxuXHJcblx0LndyYXBwZXIge1xyXG5cdFx0bWF4LXdpZHRoOiAkbWF4LXdpZHRoICsgcHg7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0fVxyXG5cclxuXHQucm93IHtcclxuXHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0ZmxleC1mbG93OiBjb2x1bW4gd3JhcDtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG5cdFx0YWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcblx0XHRhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cclxuXHRcdFtjbGFzcyo9XCJjb2wtXCJdIHtcclxuXHRcdFx0ZmxleDogJGdyaWQtY29sdW1ucyAxIDA7XHJcblx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdG1pbi13aWR0aDogMDtcclxuXHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XHJcblx0XHRcdC5jb2wtI3skaX0ge1xyXG5cdFx0XHRcdG1heC13aWR0aDogKDEwMCAvICRncmlkLWNvbHVtbnMgKiAkaSkgKyAlO1xyXG5cdFx0XHRcdGZsZXg6ICRncmlkLWNvbHVtbnMgMTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1vYmlsZU0tc2l6ZSArICdweCcpIHtcclxuXHRcdC5oaWRlLXNtIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHQuc2hvdy1zbSB7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0QG1lZGlhIHNjcmVlbiBhbmQobWluLXdpZHRoOiAkdGFibGV0LXNpemUgKyBweCkge1xyXG5cdFx0LmhpZGUtbWQge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5zaG93LW1kIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR9XHJcblxyXG5cdFx0LnJvd3tcclxuXHRcdFx0ZmxleC1mbG93OiByb3cgd3JhcDtcclxuXHJcblx0XHRcdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XHJcblx0XHRcdFx0LmNvbC1tZC0jeyRpfSB7XHJcblx0XHRcdFx0XHRtYXgtd2lkdGg6ICgxMDAgLyAkZ3JpZC1jb2x1bW5zICogJGkpICsgJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBtZWRpYSBzY3JlZW4gYW5kKG1pbi13aWR0aDogJHBjLXNpemUgKyBweCkge1xyXG5cdFx0LmhpZGUtbGcge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5zaG93LWxnIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR9XHJcblxyXG5cdFx0LnJvd3tcclxuXHRcdFx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcclxuXHRcdFx0XHQuY29sLWxnLSN7JGl9IHtcclxuXHRcdFx0XHRcdG1heC13aWR0aDogKDEwMCAvICRncmlkLWNvbHVtbnMgKiAkaSkgKyAlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIjcGFnZSAuYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kOiAjRkZGO1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwMHZ3O1xyXG5cdEBpbmNsdWRlIGZvbnQtc2l6ZS12dygyNCwgJG1vYmlsZVMtc2l6ZSk7XHJcblx0Zm9udC13ZWlnaHQ6IDEwMDtcclxuXHRwYWRkaW5nOiAwLjdlbSAxZW07XHJcblx0bWFyZ2luOiAwO1xyXG5cdGNvbG9yOiAjNkM2QzZDO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cztcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0d2lkdGg6IGF1dG87XHJcblxyXG5cdCYuYmx1ZSB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcclxuXHRcdGNvbG9yOiAjRkZGO1xyXG5cdH1cclxuXHJcblx0Lmljb24ge1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDAuNWVtO1xyXG5cdFx0Y29sb3I6ICMzQjU5OTg7XHJcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDUzODU2ICFpbXBvcnRhbnQ7XHJcblx0fVxyXG5cclxuXHRAbWVkaWEgc2NyZWVuIGFuZChtaW4td2lkdGg6ICRtb2JpbGVNLXNpemUgKyBweCkge1xyXG5cdFx0QGluY2x1ZGUgZm9udC1zaXplLXZ3KDI0LCAkbW9iaWxlTS1zaXplKTtcclxuXHR9XHJcblxyXG5cdEBtZWRpYSBzY3JlZW4gYW5kKG1pbi13aWR0aDogJHRhYmxldC1zaXplICsgcHgpIHtcclxuXHRcdGZvbnQtc2l6ZTogMjZweDtcclxuXHRcdHBhZGRpbmc6IDE2cHggMThweDtcclxuXHJcblx0XHQmLnZpZXctLW1vcmUge1xyXG5cdFx0XHRmb250LXNpemU6IDE4cHg7XHJcblx0XHR9XHJcblx0fVxyXG59IiwiI3BhZ2Uge1xyXG5cclxuICAgIC5leHBhbmRhYmxlIHtcclxuICAgICAgICAvLyB0cmFuc2l0aW9uOiBoZWlnaHQgMC41cztcclxuICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG5cclxuICAgIC5leHBhbmRhYmxlLm9wZW4ge1xyXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXM7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyB5b3lvIHtcclxuICAgICAgICBmcm9tIHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIHRvIHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZvbGQtbGVmdCB7XHJcbiAgICAgICAgZnJvbSB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0byB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmb2xkLXJpZ2h0IHtcclxuICAgICAgICBmcm9tIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdG8ge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgc2hvdyB7XHJcbiAgICAgICAgZnJvbSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRvIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmFycm93IHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IHB4VG9WdygzNSwgJG1vYmlsZVMtc2l6ZSk7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gcHhUb1Z3KDEwLCAkbW9iaWxlUy1zaXplKTtcclxuICAgICAgICBhbmltYXRpb24tbmFtZTogeW95bztcclxuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDAuNzVzO1xyXG4gICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xyXG4gICAgICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246IGFsdGVybmF0ZTtcclxuXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoZWFkZXIge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7XHJcblxyXG4gICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHB4VG9WdygzNDEuMDU5LCAkbW9iaWxlUy1zaXplKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC53cmFwcGVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNpc2NvO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcHhUb1Z3KDc1LCAkbW9iaWxlUy1zaXplKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hbmltYXRpb25fY29udGFpbmVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgd2lkdGg6IHB4VG9WdygzMzksICRtb2JpbGVTLXNpemUpO1xyXG5cclxuICAgICAgICAgICAgaDEge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHhUb1Z3KDM4LCAkbW9iaWxlUy1zaXplKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogcHhUb1Z3KDc1LCAkbW9iaWxlUy1zaXplKSBhdXRvIDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHhUb1Z3KDI1MCwgJG1vYmlsZVMtc2l6ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHB4VG9WdygyMiwgJG1vYmlsZVMtc2l6ZSk7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHB4VG9Wdyg1MCwgJG1vYmlsZVMtc2l6ZSkgcHhUb1Z3KDI1LCAkbW9iaWxlUy1zaXplKSBweFRvVncoNjAsICRtb2JpbGVTLXNpemUpIDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNpbnRybyB7XHJcbiAgICAgICAgY29sb3I6ICRibHVlO1xyXG4gICAgICAgIFxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHB4VG9Wdyg2MCwgJG1vYmlsZVMtc2l6ZSkgcHhUb1Z3KDIwLCAkbW9iaWxlUy1zaXplKTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHB4VG9WdygyMiwgJG1vYmlsZVMtc2l6ZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAud3JhcHBlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBweFRvVncoMTUsICRtb2JpbGVTLXNpemUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaW5mbyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTA3MztcclxuICAgICAgICBvcmRlcjogMDtcclxuXHJcbiAgICAgICAgJiAubGVmdCwgJiAucmlnaHQge1xyXG4gICAgICAgICAgICAgcGFkZGluZzogcHhUb1Z3KDYwLCAkbW9iaWxlUy1zaXplKSBweFRvVncoMjUsICRtb2JpbGVTLXNpemUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGNpc2NvO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHB4VG9WdygxNSwgJG1vYmlsZVMtc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNpc2NvO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBweFRvVncoMzIsICRtb2JpbGVTLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcblxyXG4gICAgICAgICAgICAgICAgJi5mb2xkLWxlZnQge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5mb2xkLXJpZ2h0IHtcclxuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcHhUb1Z3KDMwLCAkbW9iaWxlUy1zaXplKTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBweFRvVncoMTgsICRtb2JpbGVTLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gcHhUb1Z3KDIwLCAkbW9iaWxlUy1zaXplKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgLmdyYXBoaWMge1xyXG4gICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xyXG5cclxuICAgICAgICBpbWcsIGNhbnZhcyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmpzZ2lmIHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoNTAwKjEwMCUvNDAwKTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwdnc7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgIGNhbnZhcyB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBweFRvVncoNTAsICRtb2JpbGVTLXNpemUpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLm9wZW4ge1xyXG4gICAgICAgIC5mb2xkLXJpZ2h0IHNwYW4ge1xyXG4gICAgICAgICAgICBhbmltYXRpb24tbmFtZTogZm9sZC1yaWdodDtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcclxuICAgICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTpmb3J3YXJkcztcclxuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjI1cztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mb2xkLWxlZnQgc3BhbiB7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmb2xkLWxlZnQ7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6Zm9yd2FyZHM7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4yNXM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzaG93O1xyXG4gICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDAuNXM7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6Zm9yd2FyZHM7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC41cztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZm9vdGVyIHtcclxuICAgICAgICAud3JhcHBlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjaXNjbztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hbmltYXRpb25fY29udGFpbmVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IHB4VG9WdygxNCwgJG1vYmlsZVMtc2l6ZSk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgcGFkZGluZzogcHhUb1Z3KDgwLCAkbW9iaWxlUy1zaXplKSBweFRvVncoMjAsICRtb2JpbGVTLXNpemUpIHB4VG9Wdyg2MCwgJG1vYmlsZVMtc2l6ZSk7O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuXHJcbiAgICAgICAgICAgIGJsb2NrcXVvdGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBweFRvVncoMjQsICRtb2JpbGVTLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1ZW07XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBweFRvVncoMTIwLCAkbW9iaWxlUy1zaXplKTtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgY2l0ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBweFRvVncoMTgsICRtb2JpbGVTLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBweFRvVncoMzAsICRtb2JpbGVTLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtb2JpbGVNLXNpemUgKyAncHgnKSB7XHJcblxyXG4gICAgICAgIC5hcnJvdyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBweFRvVncoMzUsICRtb2JpbGVNLXNpemUpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBweFRvVncoMTAsICRtb2JpbGVNLXNpemUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaGVhZGVyIHtcclxuICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHhUb1Z3KDM0MS4wNTksICRtb2JpbGVNLXNpemUpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYW5pbWF0aW9uX2NvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHhUb1Z3KDM4MCwgJG1vYmlsZU0tc2l6ZSk7XHJcbiAgICBcclxuICAgICAgICAgICAgICAgIGgxIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHB4VG9WdygzOCwgJG1vYmlsZU0tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBweFRvVncoNzUsICRtb2JpbGVNLXNpemUpIGF1dG8gMDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogcHhUb1Z3KDI1MCwgJG1vYmlsZU0tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBweFRvVncoMjIsICRtb2JpbGVNLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogcHhUb1Z3KDUwLCAkbW9iaWxlTS1zaXplKSBweFRvVncoNDUsICRtb2JpbGVNLXNpemUpIHB4VG9Wdyg2MCwgJG1vYmlsZU0tc2l6ZSkgO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjaW50cm8ge1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBweFRvVncoNjAsICRtb2JpbGVNLXNpemUpIHB4VG9Wdyg0MCwgJG1vYmlsZU0tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHB4VG9WdygyMiwgJG1vYmlsZU0tc2l6ZSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC53cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBweFRvVncoMTUsICRtb2JpbGVNLXNpemUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIC5pbmZvIHtcclxuICAgIFxyXG4gICAgICAgICAgICAmIC5sZWZ0LCAmIC5yaWdodCB7XHJcbiAgICAgICAgICAgICAgICAgcGFkZGluZzogcHhUb1Z3KDYwLCAkbW9iaWxlTS1zaXplKSBweFRvVncoMzUsICRtb2JpbGVNLXNpemUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAudGl0bGUge1xyXG4gICAgXHJcbiAgICAgICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHB4VG9WdygxNSwgJG1vYmlsZU0tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBweFRvVncoMzIsICRtb2JpbGVNLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogcHhUb1Z3KDMwLCAkbW9iaWxlTS1zaXplKTtcclxuICAgIFxyXG4gICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBweFRvVncoMTgsICRtb2JpbGVNLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIHB4VG9WdygyMCwgJG1vYmlsZU0tc2l6ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdyYXBoaWMge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcHhUb1Z3KDUwLCAkbW9iaWxlTS1zaXplKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZm9vdGVyIHtcclxuICAgICAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogcHhUb1Z3KDgwLCAkbW9iaWxlTS1zaXplKSBweFRvVncoNDAsICRtb2JpbGVNLXNpemUpIHB4VG9Wdyg2MCwgJG1vYmlsZU0tc2l6ZSk7O1xyXG5cclxuICAgICAgICAgICAgICAgIGJsb2NrcXVvdGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcHhUb1Z3KDI0LCAkbW9iaWxlTS1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBweFRvVncoMTIwLCAkbW9iaWxlTS1zaXplKTtcclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICBjaXRlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBweFRvVncoMTgsICRtb2JpbGVNLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBweFRvVncoMzAsICRtb2JpbGVNLXNpemUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdGFibGV0LXNpemUgKyAncHgnKSB7XHJcblxyXG4gICAgICAgIC5hcnJvdyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaGVhZGVyIHtcclxuICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLndyYXBwZXIge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5hbmltYXRpb25fY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNzI3cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgaDEge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDRweDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogcHhUb1BlcmNlbnQoNTgwLCA3MjcpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHB4VG9QZXJjZW50KDEwMCwgNzI3KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDUwcHggMzVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgY2FudmFzIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjaW50cm8ge1xyXG5cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDYwcHggOTBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLndyYXBwZXIge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgLmluZm8ge1xyXG4gICAgICAgICAgICBvcmRlcjogaW5pdGlhbDtcclxuXHJcbiAgICAgICAgICAgICYgPiAqIHtcclxuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuXHJcbiAgICAgICAgICAgICYgLmxlZnQsICYgLnJpZ2h0IHtcclxuICAgICAgICAgICAgICAgICYgPiAqIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMjVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJiAubGVmdCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCA2MHB4O1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAudGl0bGUsIC5jb250ZW50IHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAmIC5yaWdodCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDU1cHggMCAwO1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAudGl0bGUsIC5jb250ZW50IHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmIC5mcmFtZSB7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA1NTBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2MHB4O1xyXG5cclxuICAgICAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDQ1cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDI1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ncmFwaGljIHtcclxuICAgICAgICAgICAgb3JkZXI6IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAuZ3JhcGhpYy1jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gd3JhcDtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuanNnaWYge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG5cclxuICAgICAgICAgICAgICAgIGNhbnZhcyB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZvb3RlciB7XHJcbiAgICAgICAgICAgIC5hbmltYXRpb25fY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG5cclxuICAgICAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDQycHggOTVweCA3MHB4O1xyXG5cclxuICAgICAgICAgICAgICAgIGJsb2NrcXVvdGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgY2l0ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCA0MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDMxNnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiYm9keSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjRkZGO1xyXG59XHJcblxyXG4jZnctZm9vdGVyIHtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgYm94LXNoYWRvdzogdW5zZXQ7XHJcblxyXG4gICAgYXtcclxuICAgICAgICBjb2xvcjogJGJsdWU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5uby10b3VjaCAjZnctYmFubmVyIHtcclxuICAgICNmdy1sb2dvIHtcclxuICAgICAgICBsZWZ0OiAwO1xyXG5cclxuICAgICAgICBkaXYge1xyXG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcblxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR0YWJsZXQtc2l6ZSArIHB4KSB7XHJcbiAgICAgICAgI2Z3LWxvZ28ge1xyXG4gICAgICAgICAgICBkaXYge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDY4cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubm8tdG91Y2ggI2Z3LW1hc3RoZWFkICNmdy1iYW5uZXIge1xyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHRhYmxldC1zaXplICsgcHgpIHtcclxuICAgICAgICBoZWlnaHQ6IDc4cHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuI2Z3LWZvb3RlciB7XHJcbiAgICB1bCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIGxpOm50aC1jaGlsZCgzKSwgbGk6bnRoLWNoaWxkKDQpe1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR0YWJsZXQtc2l6ZSArIHB4KSB7XHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSJdfQ== */
