@font-face{
  font-family: Montserrat;
  font-style: italic;
  font-weight: 100;
  src: local("Montserrat Thin Italic"),local(Montserrat-ThinItalic),url(//fonts.gstatic.com/s/montserrat/v12/1809Y0aW9bpFOPXsQTFwf9P2OS6Bzu7BENq0TH5sayk.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/1809Y0aW9bpFOPXsQTFwf1dBB84BqlWy1BjOnCrU9PY.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/1809Y0aW9bpFOPXsQTFwfy1dfeF-hbOdKKuBDEXxqhQ.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: italic;
  font-weight: 200;
  src: local("Montserrat ExtraLight Italic"),local(Montserrat-ExtraLightItalic),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft2hUd5_HpjpfImmlNZG9RF4.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft5dxImagpP7sHxM18iKeP-M.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft_7J9eW2S58LCMPoFblzf2g.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: italic;
  font-weight: 300;
  src: local("Montserrat Light Italic"),local(Montserrat-LightItalic),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft4ySLpARcVRs9uFJp0LRZgE.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft04GofcKVZz6wtzX_QUIqsI.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft2Fp2sMiApZm5Dx7NpSTOZk.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: italic;
  font-weight: 400;
  src: local("Montserrat Italic"),local(Montserrat-Italic),url(//fonts.gstatic.com/s/montserrat/v12/-iqwlckIhsmvkx0N6rwPmnZ2MAKAc2x4R1uOSeegc5U.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/-iqwlckIhsmvkx0N6rwPmugdm0LZdjqr5-oayXSOefg.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/-iqwlckIhsmvkx0N6rwPmnhCUOGz7vYGh680lGh-uXM.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: italic;
  font-weight: 500;
  src: local("Montserrat Medium Italic"),local(Montserrat-MediumItalic),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9FtzHhXAPWOXQc-mHRKx4oalk.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft81Lch-SD8r0CsJ60meulZ8.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9FtxF47VQSRrvbVYTKIrepY7I.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: italic;
  font-weight: 600;
  src: local("Montserrat SemiBold Italic"),local(Montserrat-SemiBoldItalic),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9FtzBIQ40lcwWW3vj9tFMKvqw.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft_Bf3Xtc57ojmY2ox2Xv8Go.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft9Od4RnLmtUrdSQkDmC5b8k.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: italic;
  font-weight: 700;
  src: local("Montserrat Bold Italic"),local(Montserrat-BoldItalic),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft2msoyWrDyoltQVIP7q_RGg.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft3NuWYKPzoeKl5tYj8yhly0.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft3l4twXkwp3_u9ZoePkT564.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: italic;
  font-weight: 800;
  src: local("Montserrat ExtraBold Italic"),local(Montserrat-ExtraBoldItalic),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft9Kd--5SjvBBPdO8SYNBozY.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9FtxqoE9FO9sRveXk8Nnop4Zo.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft2pVmE9oLybi4D_AN-2K110.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: italic;
  font-weight: 900;
  src: local("Montserrat Black Italic"),local(Montserrat-BlackItalic),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft19iNfvTt1gMvrhy159_6ck.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft9DLwwZd-mS_8JqJ_KGXwxs.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ftwi3Hume1-TKjJz2lX0jYjo.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: normal;
  font-weight: 100;
  src: local("Montserrat Thin"),local(Montserrat-Thin),url(//fonts.gstatic.com/s/montserrat/v12/CdKWaRAal2Bxq9mORLKRRXZ2MAKAc2x4R1uOSeegc5U.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/CdKWaRAal2Bxq9mORLKRRegdm0LZdjqr5-oayXSOefg.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/CdKWaRAal2Bxq9mORLKRRXhCUOGz7vYGh680lGh-uXM.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: normal;
  font-weight: 200;
  src: local("Montserrat ExtraLight"),local(Montserrat-ExtraLight),url(//fonts.gstatic.com/s/montserrat/v12/eWRmKHdPNWGn_iFyeEYja26IuzAwjfI5Pbb6jofSqzk.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/eWRmKHdPNWGn_iFyeEYja6EWXqnGSfwnQD3YDlprsb0.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/eWRmKHdPNWGn_iFyeEYjaxp4ivTFcMoDJtPEqAe9hmM.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: normal;
  font-weight: 300;
  src: local("Montserrat Light"),local(Montserrat-Light),url(//fonts.gstatic.com/s/montserrat/v12/IVeH6A3MiFyaSEiudUMXE6SxSvC1lIsK_unZDHWqTBg.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/IVeH6A3MiFyaSEiudUMXE8u2Q0OS-KeTAWjgkS85mDg.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/IVeH6A3MiFyaSEiudUMXE9kZXW4sYc4BjuAIFc1SXII.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: normal;
  font-weight: 400;
  src: local("Montserrat Regular"),local(Montserrat-Regular),url(//fonts.gstatic.com/s/montserrat/v12/zhcz-_WihjSQC0oHJ9TCYFQlYEbsez9cZjKsNMjLOwM.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/zhcz-_WihjSQC0oHJ9TCYPk_vArhqVIZ0nv9q090hN8.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/zhcz-_WihjSQC0oHJ9TCYBsxEYwM7FgeyaSgU71cLG0.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: normal;
  font-weight: 500;
  src: local("Montserrat Medium"),local(Montserrat-Medium),url(//fonts.gstatic.com/s/montserrat/v12/BYPM-GE291ZjIXBWrtCweoJh5taHiwXv-DjBEZUuYXM.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/BYPM-GE291ZjIXBWrtCwejOo-lJoxoMO4vrg2XwIHQk.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/BYPM-GE291ZjIXBWrtCweu46x7QEqGuF-FJIFiH1W2g.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: normal;
  font-weight: 600;
  src: local("Montserrat SemiBold"),local(Montserrat-SemiBold),url(//fonts.gstatic.com/s/montserrat/v12/q2OIMsAtXEkOulLQVdSl08G3e9iX24ta7lLMfbqPFME.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/q2OIMsAtXEkOulLQVdSl06VlZKEoJGujTpfWnQT9bUY.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/q2OIMsAtXEkOulLQVdSl024H_cQCpNmkmj7HsMzmiiM.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: normal;
  font-weight: 700;
  src: local("Montserrat Bold"),local(Montserrat-Bold),url(//fonts.gstatic.com/s/montserrat/v12/IQHow_FEYlDC4Gzy_m8fcmzklk6MJbhg7BmBP42CjCQ.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/IQHow_FEYlDC4Gzy_m8fcoWiMMZ7xLd792ULpGE4W_Y.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/IQHow_FEYlDC4Gzy_m8fcgFhaRv2pGgT5Kf0An0s4MM.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: normal;
  font-weight: 800;
  src: local("Montserrat ExtraBold"),local(Montserrat-ExtraBold),url(//fonts.gstatic.com/s/montserrat/v12/H8_7oktkjVeeX06kbAvc0B8AHhEfjUJjouFVttJjJoo.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/H8_7oktkjVeeX06kbAvc0Ary2jK1Y0oNyoF1xLf3zMQ.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/H8_7oktkjVeeX06kbAvc0CS-0kw_uRLN9JEz12uqVRQ.woff) format("woff"); }
@font-face{
  font-family: Montserrat;
  font-style: normal;
  font-weight: 900;
  src: local("Montserrat Black"),local(Montserrat-Black),url(//fonts.gstatic.com/s/montserrat/v12/aEu-9ATAroJ1iN4zmQ55BsWwaGkf25P-zZOrMBTzpJc.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v12/aEu-9ATAroJ1iN4zmQ55Bsjsb7Oq0o-uqUFW7Ygu5rM.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v12/aEu-9ATAroJ1iN4zmQ55BoPAkl-0rCkX4F4zIO7lYWE.woff) format("woff"); }
@charset "UTF-8";
@media (max-width: 767px) {
  .default-menu:not(.inactive-device)[data-off-canvas] {
    width: 100%; } }

.default-menu ul {
  margin: 0; }

.default-menu > ul > li > a, .default-menu > ul > li > .top-level-menu-li-span {
  display: block;
  position: relative;
  cursor: pointer;
  -webkit-transition: 0.3s all ease;
  transition: 0.3s all ease;
  color: #000;
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.71; }
  .default-menu > ul > li > a.sf-with-ul, .default-menu > ul > li > .top-level-menu-li-span.sf-with-ul {
    position: relative;
    padding-right: 1rem; }
    .default-menu > ul > li > a.sf-with-ul:after, .default-menu > ul > li > .top-level-menu-li-span.sf-with-ul:after {
      position: absolute;
      font-family: 'FontAwesome';
      content: "\F107";
      font-size: 0.875rem;
      line-height: 1;
      color: #a2a2a2;
      right: 0;
      top: 0.3125rem;
      -webkit-transition: all .3s ease;
      transition: all .3s ease;
      -webkit-backface-visibility: hidden;
              backface-visibility: hidden;
      will-change: transform;
      -webkit-transform-origin: 50% 50%;
              transform-origin: 50% 50%; }
    .default-menu > ul > li > a.sf-with-ul:before, .default-menu > ul > li > .top-level-menu-li-span.sf-with-ul:before {
      position: absolute;
      content: '';
      width: 0.8125rem;
      height: 0.8125rem;
      left: 35%;
      top: 100%;
      margin-top: 1.25rem;
      background: white;
      border-right: solid 0.0625rem #000;
      border-top: solid 0.0625rem #000;
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg);
      -webkit-transition-delay: 0.11s;
              transition-delay: 0.11s;
      -webkit-transition: 0.3s;
      transition: 0.3s;
      opacity: 0;
      z-index: 10;
      will-change: opacity;
      cursor: default; }

.default-menu > ul > li.sfHover > a, .default-menu > ul > li.sfHoverForce > a, .default-menu > ul > li.sfHover > .top-level-menu-li-span, .default-menu > ul > li.sfHoverForce > .top-level-menu-li-span, .default-menu > ul > li > a:hover, .default-menu > ul > li > .top-level-menu-li-span:hover {
  color: #c0de01; }
  .default-menu > ul > li.sfHover > a.sf-with-ul:after, .default-menu > ul > li.sfHoverForce > a.sf-with-ul:after, .default-menu > ul > li.sfHover > .top-level-menu-li-span.sf-with-ul:after, .default-menu > ul > li.sfHoverForce > .top-level-menu-li-span.sf-with-ul:after, .default-menu > ul > li > a:hover.sf-with-ul:after, .default-menu > ul > li > .top-level-menu-li-span:hover.sf-with-ul:after {
    color: #c0de01;
    -webkit-transform: rotate(-180deg);
            transform: rotate(-180deg); }

.default-menu > ul > li.color-primary > a, .default-menu > ul > li.color-primary > .top-level-menu-li-span {
  color: #c0de01; }

.default-menu > ul > li.color-primary.sfHover > a, .default-menu > ul > li.color-primary.sfHoverForce > a, .default-menu > ul > li.color-primary.sfHover > .top-level-menu-li-span, .default-menu > ul > li.color-primary.sfHoverForce > .top-level-menu-li-span, .default-menu > ul > li.color-primary > a:hover, .default-menu > ul > li.color-primary > .top-level-menu-li-span:hover {
  color: #000; }

.default-menu > ul > li.sfHover > .sf-with-ul:before {
  opacity: 1;
  margin-top: 1rem; }

.default-menu .is-megamenu, .default-menu li.simple ul {
  display: none; }

.default-menu .is-megamenu {
  background: #fff; }
  .default-menu .is-megamenu h3 {
    font-size: 0.875rem;
    line-height: 1.375rem;
    text-transform: uppercase;
    font-weight: bold; }
  .default-menu .is-megamenu ul.content {
    margin-bottom: 1.25rem; }
    .default-menu .is-megamenu ul.content > li.category > a, .default-menu .is-megamenu ul.content > li.all-manufacturers > a, .default-menu .is-megamenu ul.content > li.all-suppliers > a, .default-menu .is-megamenu ul.content > li.product > a, .default-menu .is-megamenu ul.content > li.cms-category > a, .default-menu .is-megamenu ul.content > li.cms-page > a, .default-menu .is-megamenu ul.content > li.custom-link > a {
      display: inline-block;
      font: 600 1.125rem/1.375rem "Montserrat", sans-serif;
      color: #000; }
      .default-menu .is-megamenu ul.content > li.category > a:hover, .default-menu .is-megamenu ul.content > li.category > a:focus, .default-menu .is-megamenu ul.content > li.all-manufacturers > a:hover, .default-menu .is-megamenu ul.content > li.all-manufacturers > a:focus, .default-menu .is-megamenu ul.content > li.all-suppliers > a:hover, .default-menu .is-megamenu ul.content > li.all-suppliers > a:focus, .default-menu .is-megamenu ul.content > li.product > a:hover, .default-menu .is-megamenu ul.content > li.product > a:focus, .default-menu .is-megamenu ul.content > li.cms-category > a:hover, .default-menu .is-megamenu ul.content > li.cms-category > a:focus, .default-menu .is-megamenu ul.content > li.cms-page > a:hover, .default-menu .is-megamenu ul.content > li.cms-page > a:focus, .default-menu .is-megamenu ul.content > li.custom-link > a:hover, .default-menu .is-megamenu ul.content > li.custom-link > a:focus {
        color: #c0de01; }
      .default-menu .is-megamenu ul.content > li.category > a + ul, .default-menu .is-megamenu ul.content > li.all-manufacturers > a + ul, .default-menu .is-megamenu ul.content > li.all-suppliers > a + ul, .default-menu .is-megamenu ul.content > li.product > a + ul, .default-menu .is-megamenu ul.content > li.cms-category > a + ul, .default-menu .is-megamenu ul.content > li.cms-page > a + ul, .default-menu .is-megamenu ul.content > li.custom-link > a + ul {
        margin-top: 2.5rem; }
    .default-menu .is-megamenu ul.content > li.category ul li, .default-menu .is-megamenu ul.content > li.all-manufacturers ul li, .default-menu .is-megamenu ul.content > li.all-suppliers ul li, .default-menu .is-megamenu ul.content > li.product ul li, .default-menu .is-megamenu ul.content > li.cms-category ul li, .default-menu .is-megamenu ul.content > li.cms-page ul li, .default-menu .is-megamenu ul.content > li.custom-link ul li {
      margin-bottom: 1.25rem; }
      .default-menu .is-megamenu ul.content > li.category ul li > a, .default-menu .is-megamenu ul.content > li.all-manufacturers ul li > a, .default-menu .is-megamenu ul.content > li.all-suppliers ul li > a, .default-menu .is-megamenu ul.content > li.product ul li > a, .default-menu .is-megamenu ul.content > li.cms-category ul li > a, .default-menu .is-megamenu ul.content > li.cms-page ul li > a, .default-menu .is-megamenu ul.content > li.custom-link ul li > a {
        color: #9e9e9e;
        font: 400 0.875rem/1.25rem "Montserrat", sans-serif; }
        .default-menu .is-megamenu ul.content > li.category ul li > a:hover, .default-menu .is-megamenu ul.content > li.category ul li > a:focus, .default-menu .is-megamenu ul.content > li.all-manufacturers ul li > a:hover, .default-menu .is-megamenu ul.content > li.all-manufacturers ul li > a:focus, .default-menu .is-megamenu ul.content > li.all-suppliers ul li > a:hover, .default-menu .is-megamenu ul.content > li.all-suppliers ul li > a:focus, .default-menu .is-megamenu ul.content > li.product ul li > a:hover, .default-menu .is-megamenu ul.content > li.product ul li > a:focus, .default-menu .is-megamenu ul.content > li.cms-category ul li > a:hover, .default-menu .is-megamenu ul.content > li.cms-category ul li > a:focus, .default-menu .is-megamenu ul.content > li.cms-page ul li > a:hover, .default-menu .is-megamenu ul.content > li.cms-page ul li > a:focus, .default-menu .is-megamenu ul.content > li.custom-link ul li > a:hover, .default-menu .is-megamenu ul.content > li.custom-link ul li > a:focus {
          color: #000; }
      .default-menu .is-megamenu ul.content > li.category ul li > ul, .default-menu .is-megamenu ul.content > li.all-manufacturers ul li > ul, .default-menu .is-megamenu ul.content > li.all-suppliers ul li > ul, .default-menu .is-megamenu ul.content > li.product ul li > ul, .default-menu .is-megamenu ul.content > li.cms-category ul li > ul, .default-menu .is-megamenu ul.content > li.cms-page ul li > ul, .default-menu .is-megamenu ul.content > li.custom-link ul li > ul {
        display: none !important; }
    @media (max-width: 1199px) {
      .default-menu .is-megamenu ul.content > li.category > a + ul, .default-menu .is-megamenu ul.content > li.all-manufacturers > a + ul, .default-menu .is-megamenu ul.content > li.all-suppliers > a + ul, .default-menu .is-megamenu ul.content > li.product > a + ul, .default-menu .is-megamenu ul.content > li.cms-category > a + ul, .default-menu .is-megamenu ul.content > li.cms-page > a + ul, .default-menu .is-megamenu ul.content > li.custom-link > a + ul {
        margin-top: 1.25rem; }
      .default-menu .is-megamenu ul.content > li.category ul li, .default-menu .is-megamenu ul.content > li.all-manufacturers ul li, .default-menu .is-megamenu ul.content > li.all-suppliers ul li, .default-menu .is-megamenu ul.content > li.product ul li, .default-menu .is-megamenu ul.content > li.cms-category ul li, .default-menu .is-megamenu ul.content > li.cms-page ul li, .default-menu .is-megamenu ul.content > li.custom-link ul li {
        margin-bottom: 0.625rem; } }
    @media (max-width: 767px) {
      .default-menu .is-megamenu ul.content > li.category > a, .default-menu .is-megamenu ul.content > li.all-manufacturers > a, .default-menu .is-megamenu ul.content > li.all-suppliers > a, .default-menu .is-megamenu ul.content > li.product > a, .default-menu .is-megamenu ul.content > li.cms-category > a, .default-menu .is-megamenu ul.content > li.cms-page > a, .default-menu .is-megamenu ul.content > li.custom-link > a {
        font-weight: 400;
        font-size: 1rem;
        line-height: 1.125rem; } }
    .default-menu .is-megamenu ul.content ul {
      opacity: 1 !important;
      display: block !important; }
  @media (min-width: 992px) {
    .default-menu .is-megamenu .two_columns ul.content > li ul::after {
      display: block;
      clear: both;
      content: ""; }
    .default-menu .is-megamenu .two_columns ul.content > li ul li {
      width: 50%;
      float: left; }
    .default-menu .is-megamenu .two_columns.col-sm-3 {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 27%;
              flex: 0 0 27%;
      max-width: 27%; } }
  .default-menu .is-megamenu .html.without-title .html-title {
    display: none; }
  @media (min-width: 992px) {
    .default-menu .is-megamenu .product-info .product {
      position: relative;
      overflow: hidden; }
      .default-menu .is-megamenu .product-info .product h5, .default-menu .is-megamenu .product-info .product .product-prices-sm {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        background: #fff;
        padding: 0.1875rem 0.3125rem;
        -webkit-transform: translateY(-100%);
                transform: translateY(-100%);
        -webkit-transition: all 0.15s ease-in-out;
        transition: all 0.15s ease-in-out;
        text-align: center;
        opacity: 0; }
      .default-menu .is-megamenu .product-info .product h5 {
        font-size: 0.75rem;
        line-height: 1.25rem;
        margin-bottom: 0.3125rem;
        border-top: 0.125rem solid #f1f1f1; }
      .default-menu .is-megamenu .product-info .product .product-prices-sm {
        top: auto;
        bottom: 0;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        border-bottom: 0.125rem solid #f1f1f1;
        -webkit-transform: translateY(100%);
                transform: translateY(100%); }
      .default-menu .is-megamenu .product-info .product:hover h5, .default-menu .is-megamenu .product-info .product:hover .product-prices-sm {
        opacity: 1;
        -webkit-transform: translateY(0);
                transform: translateY(0); } }
  @media (max-width: 991px) {
    .default-menu .is-megamenu .product-info .product h5 {
      font-size: 0.6875rem;
      line-height: 1rem;
      margin: 0.625rem 0 0.3125rem; }
    .default-menu .is-megamenu .product-info .product .product-prices-sm {
      font-size: 0.625rem;
      line-height: 1rem; }
      .default-menu .is-megamenu .product-info .product .product-prices-sm .regular-price {
        display: none; }
      .default-menu .is-megamenu .product-info .product .product-prices-sm .price {
        font-size: 0.75rem; } }
  .default-menu .is-megamenu .products_bloc_3_items ul.content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 -0.625rem 1.25rem; }
    .default-menu .is-megamenu .products_bloc_3_items ul.content .html {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      padding: 0 0.625rem; }
    .default-menu .is-megamenu .products_bloc_3_items ul.content .product-info {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 33.3333%;
              flex: 0 0 33.3333%;
      padding: 0 0.625rem; }

.default-menu .menu_badge {
  position: absolute;
  top: -0.125rem;
  right: -0.3125rem;
  z-index: 2;
  font-size: 0.625rem;
  display: inline-block;
  background: #c0de01;
  color: #fff;
  padding: 0.0625rem 0.3125rem 0.125rem 0.3125rem;
  line-height: 0.75rem;
  border-radius: 0.1875rem;
  margin-left: 0.625rem; }

.default-menu .menuvideowrapper {
  clear: both;
  float: none;
  height: 0;
  padding-bottom: 56.25%;
  padding-top: 1.5625rem;
  position: relative;
  width: 100%; }
  .default-menu .menuvideowrapper iframe {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%; }

.default-menu .embed-container {
  position: relative;
  padding-bottom: 56.25%;
  overflow: hidden;
  max-width: 100%;
  height: auto; }
  .default-menu .embed-container iframe, .default-menu .embed-container object, .default-menu .embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.default-menu .frontend-map {
  min-height: 12.5rem; }

@media (min-width: 1800px) {
  .default-menu > li + li {
    margin-left: 3.125rem; } }

@media (min-width: 768px) {
  .default-menu > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .default-menu > ul > li + li {
      margin-left: 0.625rem; }
  .default-menu li.simple {
    position: relative; }
    .default-menu li.simple ul {
      position: absolute;
      top: 0;
      left: 100%;
      width: 12.5rem;
      z-index: 99;
      -webkit-box-shadow: 0 0.3125rem 2.6875rem rgba(0, 0, 0, 0.11);
              box-shadow: 0 0.3125rem 2.6875rem rgba(0, 0, 0, 0.11);
      background: #fff; }
    .default-menu li.simple > ul {
      top: 100%;
      left: 0; }
    .default-menu li.simple li {
      position: relative;
      padding: 0.625rem 1.25rem; }
      .default-menu li.simple li .sf-with-ul {
        padding-right: 1.875rem; }
        .default-menu li.simple li .sf-with-ul:after {
          position: absolute;
          top: 50%;
          right: 0.625rem;
          -webkit-transform: translateY(-50%);
                  transform: translateY(-50%);
          font-family: 'FontAwesome';
          content: "\F105";
          line-height: 1;
          -webkit-transition: all .3s ease;
          transition: all .3s ease;
          -webkit-backface-visibility: hidden;
                  backface-visibility: hidden; }
      .default-menu li.simple li.sfHover > .sf-with-ul:after, .default-menu li.simple li > .sf-with-ul:hover:after {
        right: 0.3125rem; }
  .default-menu .is-megamenu {
    position: absolute;
    top: 100%;
    margin-top: 1.375rem;
    left: 0;
    width: 100%;
    -webkit-box-shadow: 0px 0px 1.875rem 0px rgba(0, 0, 0, 0.1);
            box-shadow: 0px 0px 1.875rem 0px rgba(0, 0, 0, 0.1);
    z-index: 7;
    padding: 3.125rem 3.125rem 3.125rem;
    border-top: solid 0.0625rem #000;
    border-bottom: solid 0.375rem #000; }
  .default-menu li.small-megamenu {
    position: relative; }
    .default-menu li.small-megamenu .is-megamenu {
      width: auto;
      min-width: 28.4375rem; }
      .default-menu li.small-megamenu .is-megamenu ul.content > li {
        margin-bottom: 1.25rem; }
      .default-menu li.small-megamenu .is-megamenu ul.content > li.category > a, .default-menu li.small-megamenu .is-megamenu ul.content > li.all-manufacturers > a, .default-menu li.small-megamenu .is-megamenu ul.content > li.all-suppliers > a, .default-menu li.small-megamenu .is-megamenu ul.content > li.product > a, .default-menu li.small-megamenu .is-megamenu ul.content > li.cms-category > a, .default-menu li.small-megamenu .is-megamenu ul.content > li.cms-page > a, .default-menu li.small-megamenu .is-megamenu ul.content > li.custom-link > a {
        color: #9e9e9e;
        font: 400 0.875rem/1.25rem "Montserrat", sans-serif; }
        .default-menu li.small-megamenu .is-megamenu ul.content > li.category > a:hover, .default-menu li.small-megamenu .is-megamenu ul.content > li.category > a:focus, .default-menu li.small-megamenu .is-megamenu ul.content > li.all-manufacturers > a:hover, .default-menu li.small-megamenu .is-megamenu ul.content > li.all-manufacturers > a:focus, .default-menu li.small-megamenu .is-megamenu ul.content > li.all-suppliers > a:hover, .default-menu li.small-megamenu .is-megamenu ul.content > li.all-suppliers > a:focus, .default-menu li.small-megamenu .is-megamenu ul.content > li.product > a:hover, .default-menu li.small-megamenu .is-megamenu ul.content > li.product > a:focus, .default-menu li.small-megamenu .is-megamenu ul.content > li.cms-category > a:hover, .default-menu li.small-megamenu .is-megamenu ul.content > li.cms-category > a:focus, .default-menu li.small-megamenu .is-megamenu ul.content > li.cms-page > a:hover, .default-menu li.small-megamenu .is-megamenu ul.content > li.cms-page > a:focus, .default-menu li.small-megamenu .is-megamenu ul.content > li.custom-link > a:hover, .default-menu li.small-megamenu .is-megamenu ul.content > li.custom-link > a:focus {
          color: #000; }
  .default-menu li.big-megamenu .is-megamenu {
    top: 90%;
    left: 0;
    margin-top: 0;
    padding: 1.25rem 0.9375rem 1.25rem; }
    .default-menu li.big-megamenu .is-megamenu .megamenu-row {
      margin: 0 auto;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; } }
    @media (min-width: 768px) and (min-width: 1870px) {
      .default-menu li.big-megamenu .is-megamenu .megamenu-row {
        width: 78.75rem; } }
    @media (min-width: 768px) and (min-width: 768px) and (max-width: 991px) {
      .default-menu li.big-megamenu .is-megamenu .megamenu-row > .col-sm-2 {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 25%;
                flex: 0 0 25%;
        max-width: 25%; } }
  @media (min-width: 768px) and (min-width: 1200px) {
    .default-menu li.big-megamenu .is-megamenu {
      padding: 4.375rem 0.9375rem 3.125rem; } }
  @media (min-width: 768px) and (min-width: 768px) {
    .default-menu li.big-megamenu .is-megamenu {
      padding: 2.5rem 0.9375rem 1.875rem; } }

@media (min-width: 1200px) {
  .default-menu > ul > li + li {
    margin-left: 2.8125rem; } }

@media (max-width: 991px) {
  .default-menu li.small-megamenu .is-megamenu ul.content > li {
    margin-bottom: 0.625rem; } }

@media (min-width: 768px) and (max-width: 991px) {
  .default-menu .is-megamenu {
    padding: 1.875rem 1.25rem; }
  .default-menu li.small-megamenu .is-megamenu {
    min-width: 20.625rem; } }

.default-menu .menu-title {
  display: none;
  font: 600 1.125rem/1.5rem "Montserrat", sans-serif;
  color: #000;
  cursor: pointer;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out; }
  .default-menu .menu-title:hover, .default-menu .menu-title:active, .default-menu .menu-title:focus {
    color: #c0de01; }

@media (max-width: 767px) {
  .default-menu > ul > li, .default-menu > ul > li.simple li {
    margin-top: 0.125rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .default-menu > ul > li > a, .default-menu > ul > li > .top-level-menu-li-span, .default-menu > ul > li.simple li > a, .default-menu > ul > li.simple li > .top-level-menu-li-span {
      display: inline-block; }
  .default-menu > ul > li.simple li {
    margin-left: -1.25rem;
    margin-right: -1.25rem; }
  .default-menu > ul > li.simple ul {
    padding-top: 0;
    padding-bottom: 0.125rem; }
  .default-menu > ul .menu-mobile-grover {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    cursor: pointer;
    z-index: 1;
    text-align: right;
    color: #000; }
    .default-menu > ul .menu-mobile-grover:before {
      font-family: 'Linearicons';
      content: "\EC3A";
      font-size: 0.75rem;
      line-height: 1;
      vertical-align: middle;
      -webkit-transition: all 0.3s ease-in-out;
      transition: all 0.3s ease-in-out; }
    .default-menu > ul .menu-mobile-grover.active {
      color: #c0de01; }
      .default-menu > ul .menu-mobile-grover.active:before {
        content: '\EC39'; }
  .default-menu .is-megamenu, .default-menu .is-simplemenu, .default-menu .is-simplemenu ul {
    padding: 0.625rem;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .default-menu .is-megamenu [class*="col-"] {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
    .default-menu .is-megamenu [class*="col-"]:nth-child(1n+3) {
      margin-top: 1.25rem; } }

@media (min-width: 576px) and (max-width: 767px) {
  .default-menu .w_100_sm, .default-menu .products_bloc_3_items {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .default-menu .w_50_sm {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
  .default-menu .w_33_sm {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.3333%;
            flex: 0 0 33.3333%;
    max-width: 33.3333%; } }

.default-menu .is-megamenu h3.post-name {
  text-transform: capitalize;
  font-size: 0.75rem; }

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL0M6L09wZW5TZXJ2ZXIvZG9tYWlucy9sb2NhbGhvc3QvQmlrZUlkb2wvdGhlbWVzL3RoZW1lMTUxOS9fZGV2LzxubyBzb3VyY2U+Iiwid2VicGFjazovLy8uL21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvQzovT3BlblNlcnZlci9kb21haW5zL2xvY2FsaG9zdC9CaWtlSWRvbC90aGVtZXMvdGhlbWUxNTE5L19kZXYvbW9kdWxlcy9qeG1lZ2FtZW51L3ZpZXdzL2Nzcy9qeG1lZ2FtZW51LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbW9kdWxlcy9qeG1lZ2FtZW51L3ZpZXdzL2Nzcy9DOi9PcGVuU2VydmVyL2RvbWFpbnMvbG9jYWxob3N0L0Jpa2VJZG9sL3RoZW1lcy90aGVtZTE1MTkvX2Rldi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL0M6L09wZW5TZXJ2ZXIvZG9tYWlucy9sb2NhbGhvc3QvQmlrZUlkb2wvdGhlbWVzL3RoZW1lMTUxOS9fZGV2L25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbW9kdWxlcy9qeG1lZ2FtZW51L3ZpZXdzL2Nzcy9DOi9PcGVuU2VydmVyL2RvbWFpbnMvbG9jYWxob3N0L0Jpa2VJZG9sL3RoZW1lcy90aGVtZTE1MTkvX2Rldi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL0M6L09wZW5TZXJ2ZXIvZG9tYWlucy9sb2NhbGhvc3QvQmlrZUlkb2wvdGhlbWVzL3RoZW1lMTUxOS9fZGV2L21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvanhtZWdhbWVudS5zY3NzIiwid2VicGFjazovLy8uL21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvQzovT3BlblNlcnZlci9kb21haW5zL2xvY2FsaG9zdC9CaWtlSWRvbC90aGVtZXMvdGhlbWUxNTE5L19kZXYvbW9kdWxlcy9qeG1lZ2FtZW51L3ZpZXdzL2Nzcy9DOi9PcGVuU2VydmVyL2RvbWFpbnMvbG9jYWxob3N0L0Jpa2VJZG9sL3RoZW1lcy90aGVtZTE1MTkvX2Rldi9jc3MvcGFydGlhbHMvX3ZhcmlhYmxlc19jb2xvci5zY3NzIiwid2VicGFjazovLy8uL21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvQzovT3BlblNlcnZlci9kb21haW5zL2xvY2FsaG9zdC9CaWtlSWRvbC90aGVtZXMvdGhlbWUxNTE5L19kZXYvbW9kdWxlcy9qeG1lZ2FtZW51L3ZpZXdzL2Nzcy9DOi9PcGVuU2VydmVyL2RvbWFpbnMvbG9jYWxob3N0L0Jpa2VJZG9sL3RoZW1lcy90aGVtZTE1MTkvX2Rldi9jc3MvcGFydGlhbHMvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvQzovT3BlblNlcnZlci9kb21haW5zL2xvY2FsaG9zdC9CaWtlSWRvbC90aGVtZXMvdGhlbWUxNTE5L19kZXYvbW9kdWxlcy9qeG1lZ2FtZW51L3ZpZXdzL2Nzcy9DOi9PcGVuU2VydmVyL2RvbWFpbnMvbG9jYWxob3N0L0Jpa2VJZG9sL3RoZW1lcy90aGVtZTE1MTkvX2Rldi9jc3MvcGFydGlhbHMvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvQzovT3BlblNlcnZlci9kb21haW5zL2xvY2FsaG9zdC9CaWtlSWRvbC90aGVtZXMvdGhlbWUxNTE5L19kZXYvbW9kdWxlcy9qeG1lZ2FtZW51L3ZpZXdzL2Nzcy9DOi9PcGVuU2VydmVyL2RvbWFpbnMvbG9jYWxob3N0L0Jpa2VJZG9sL3RoZW1lcy90aGVtZTE1MTkvX2Rldi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBQ0FBLGlCQUFpQjtBQ3FFYjtFQ25FSjtJQUdNLFlBQVcsRUFFZDs7QUFMSDtFQU9JLFVBQVMsRUFDVjs7QUFSSDtFQVdNLGVBQWM7RUFDZCxtQkFBa0I7RUFDbEIsZ0JBQWU7RUFDZixrQ0FBeUI7RUFBekIsMEJBQXlCO0VBQ3pCLFlDSk87RURLUCxzQ0VNcUM7RUZMckMsaUJBQWdCO0VBQ2hCLG9CRXlCbUI7RUZ4Qm5CLGtCQUFpQixFQWtDbEI7RUFyREw7SUFxQlEsbUJBQWtCO0lBQ2xCLG9CQUFtQixFQThCcEI7SUFwRFA7TUF3QlUsbUJBQWtCO01HeEIxQiwyQkFBMEI7TUFDMUIsaUJId0JnQztNR3RCOUIsb0JIc0JvQztNR25CcEMsZUhtQnVDO01HaEJ2QyxlRkhjO01Eb0JSLFNBQVE7TUFDUixlQUFRO01BQ1IsaUNBQXdCO01BQXhCLHlCQUF3QjtNQUN4QixvQ0FBMkI7Y0FBM0IsNEJBQTJCO01BQzNCLHVCQUFzQjtNQUN0QixrQ0FBeUI7Y0FBekIsMEJBQXlCLEVBQzFCO0lBaENUO01Ba0NVLG1CQUFrQjtNQUNsQixZQUFXO01BQ1gsaUJBQVc7TUFDWCxrQkFBWTtNQUNaLFVBQVM7TUFDVCxVQUFTO01BQ1Qsb0JBQWdCO01BQ2hCLGtCQUFpQjtNQUNqQixtQ0MvQkc7TURnQ0gsaUNDaENHO01EaUNILGtDQUF5QjtjQUF6QiwwQkFBeUI7TUFDekIsZ0NBQXVCO2NBQXZCLHdCQUF1QjtNQUN2Qix5QkFBZ0I7TUFBaEIsaUJBQWdCO01BQ2hCLFdBQVU7TUFDVixZQUFXO01BQ1gscUJBQW9CO01BQ3BCLGdCQUFlLEVBQ2hCOztBQW5EVDtFQXVETSxlQ2hCVyxFRHVCWjtFQTlETDtJQTBEVSxlQ25CTztJRG9CUCxtQ0FBMEI7WUFBMUIsMkJBQTBCLEVBQzNCOztBQTVEVDtFQWlFUSxlQzFCUyxFRDJCVjs7QUFsRVA7RUFvRVEsWUN6REssRUQwRE47O0FBckVQO0VBd0VNLFdBQVU7RUFDVixpQkFBZ0IsRUFDakI7O0FBMUVMO0VBOEVJLGNBQWEsRUFDZDs7QUEvRUg7RUFrRkksaUJDakZTLEVEb09WO0VBck9IO0lBb0ZNLG9CQUFlO0lBQ2Ysc0JBQWlCO0lBQ2pCLDBCQUF5QjtJQUN6QixrQkFBaUIsRUFDbEI7RUF4Rkw7SUEwRk0sdUJBQW1CLEVBZ0RwQjtJQTFJTDtNQTZGVSxzQkFBcUI7TUFDckIscURFeEVpQztNRnlFakMsWUNwRkcsRUQyRko7TUF0R1Q7UUFpR1ksZUMxREssRUQyRE47TUFsR1g7UUFvR1ksbUJBQWdCLEVBQ2pCO0lBckdYO01BeUdZLHVCQUFtQixFQVdwQjtNQXBIWDtRQTJHYyxlQzdGRztRRDhGSCxvREV0RjZCLEVGMEY5QjtRQWhIYjtVQThHZ0IsWUNuR0gsRURvR0U7TUEvR2Y7UUFrSGMseUJBQXdCLEVBQ3pCO0lEaERUO01DbkVKO1FBd0hZLG9CQUFnQixFQUNqQjtNQXpIWDtRQTJIWSx3QkFBbUIsRUFDcEI7SUR6RFA7TUNuRUo7UUFnSVksaUJBQWdCO1FBQ2hCLGdCQUFlO1FBQ2Ysc0JBQWlCLEVBQ2xCO0lBbklYO01BdUlRLHNCQUFxQjtNQUNyQiwwQkFBeUIsRUFDMUI7RURuRkg7SUN0REo7TUlBSSxlQUFjO01BQ2QsWUFBVztNQUNYLFlBQVcsRUFDWjtJSkhIO01BZ0pZLFdBQVU7TUFDVixZQUFXLEVBQ1o7SUFsSlg7TUFxSlUsb0JBQWE7VUFBYixrQkFBYTtjQUFiLGNBQWE7TUFDYixlQUFjLEVBQ2Y7RUF2SlQ7SUE2SlEsY0FBYSxFQUNkO0VEeEdIO0lDdERKO01Ba0tRLG1CQUFrQjtNQUNsQixpQkFBZ0IsRUFrRG5CO01Bck5MO1FBcUtVLG1CQUFrQjtRQUNsQixPQUFNO1FBQ04sUUFBTztRQUNQLFNBQVE7UUFDUixpQkN4S0c7UUR5S0gsNkJBQWdCO1FBQ2hCLHFDQUE0QjtnQkFBNUIsNkJBQTRCO1FBQzVCLDBDQUFpQztRQUFqQyxrQ0FBaUM7UUFDakMsbUJBQWtCO1FBQ2xCLFdBQVUsRUFDWDtNQS9LVDtRQWlMVSxtQkFBZTtRQUNmLHFCQUFpQjtRQUNqQix5QkFBa0I7UUFDbEIsbUNDakxRLEVEa0xUO01BckxUO1FBdUxVLFVBQVM7UUFDVCxVQUFTO1FBQ1QseUJBQXVCO1lBQXZCLHNCQUF1QjtnQkFBdkIsd0JBQXVCO1FBQ3ZCLHNDQ3ZMUTtRRHdMUixvQ0FBMkI7Z0JBQTNCLDRCQUEyQixFQUM1QjtNQTVMVDtRQStMWSxXQUFVO1FBQ1YsaUNBQXdCO2dCQUF4Qix5QkFBd0IsRUFDekI7RUQ5SFA7SUNuRUo7TUFzTVUscUJBQWU7TUFDZixrQkFBaUI7TUFDakIsNkJBQWtCLEVBQ25CO0lBek1UO01BMk1VLG9CQUFlO01BQ2Ysa0JBQWlCLEVBT2xCO01Bbk5UO1FBOE1ZLGNBQWEsRUFDZDtNQS9NWDtRQWlOWSxtQkFBZSxFQUNoQjtFQWxOWDtJQXdOUSxxQkFBYTtJQUFiLHFCQUFhO0lBQWIsY0FBYTtJQUNiLG9CQUFlO1FBQWYsZ0JBQWU7SUFDZiw0QkFBb0IsRUFTckI7SUFuT1A7TUE0TlUsb0JBQWM7VUFBZCxtQkFBYztjQUFkLGVBQWM7TUFDZCxvQkFBZSxFQUNoQjtJQTlOVDtNQWdPVSxvQkFBa0I7VUFBbEIsdUJBQWtCO2NBQWxCLG1CQUFrQjtNQUNsQixvQkFBZSxFQUNoQjs7QUFsT1Q7RUF1T0ksbUJBQWtCO0VBQ2xCLGVBQVM7RUFDVCxrQkFBVztFQUNYLFdBQVU7RUFDVixvQkFBZTtFQUNmLHNCQUFxQjtFQUNyQixvQkN0TWE7RUR1TWIsWUM3T1M7RUQ4T1QsZ0RBQXdCO0VBQ3hCLHFCQUFpQjtFQUNqQix5QkFBa0I7RUFDbEIsc0JBQWlCLEVBQ2xCOztBQW5QSDtFQXFQSSxZQUFXO0VBQ1gsWUFBVztFQUNYLFVBQVM7RUFDVCx1QkFBc0I7RUFDdEIsdUJBQWlCO0VBQ2pCLG1CQUFrQjtFQUNsQixZQUFXLEVBUVo7RUFuUUg7SUE2UE0sYUFBWTtJQUNaLFFBQU87SUFDUCxtQkFBa0I7SUFDbEIsT0FBTTtJQUNOLFlBQVcsRUFDWjs7QUFsUUw7RUFxUUksbUJBQWtCO0VBQ2xCLHVCQUFzQjtFQUN0QixpQkFBZ0I7RUFDaEIsZ0JBQWU7RUFDZixhQUFZLEVBUWI7RUFqUkg7SUEyUU0sbUJBQWtCO0lBQ2xCLE9BQU07SUFDTixRQUFPO0lBQ1AsWUFBVztJQUNYLGFBQVksRUFDYjs7QUFoUkw7RUFtUkksb0JBQWlCLEVBQ2xCOztBQUNEO0VBclJGO0lBdVJNLHNCQUFpQixFQUNsQjs7QURsT0Q7RUN0REo7SUE4Uk0scUJBQWE7SUFBYixxQkFBYTtJQUFiLGNBQWE7SUFDYixvQkFBZTtRQUFmLGdCQUFlLEVBSWhCO0lBblNMO01BaVNRLHNCQUFpQixFQUNsQjtFQWxTUDtJQXVTTSxtQkFBa0IsRUFtQ25CO0lBMVVMO01BeVNRLG1CQUFrQjtNQUNsQixPQUFNO01BQ04sV0FBVTtNQUNWLGVBQVk7TUFDWixZQUFXO01BQ1gsOERBQTBDO2NBQTFDLHNEQUEwQztNQUMxQyxpQkM5U0ssRUQrU047SUFoVFA7TUFrVFEsVUFBUztNQUNULFFBQU8sRUFDUjtJQXBUUDtNQXNUUSxtQkFBa0I7TUFDbEIsMEJBQWtCLEVBa0JuQjtNQXpVUDtRQXlUVSx3QkFBbUIsRUFVcEI7UUFuVVQ7VUEyVFksbUJBQWtCO1VBQ2xCLFNBQVE7VUFDUixnQkFBVztVQUNYLG9DQUEyQjtrQkFBM0IsNEJBQTJCO1VHOVRyQywyQkFBMEI7VUFDMUIsaUJIOFRrQztVR3pUaEMsZUh5VDhDO1VBQ3RDLGlDQUF3QjtVQUF4Qix5QkFBd0I7VUFDeEIsb0NBQTJCO2tCQUEzQiw0QkFBMkIsRUFDNUI7TUFsVVg7UUFzVVksaUJBQVUsRUFDWDtFQXZVWDtJQTZVTSxtQkFBa0I7SUFDbEIsVUFBUztJQUNULHFCQUFnQjtJQUNoQixRQUFPO0lBQ1AsWUFBVztJR25TZiw0REFBZ0Q7WUFBaEQsb0RBQWdEO0lIcVM1QyxXQUFVO0lBQ1Ysb0NBQXVCO0lBQ3ZCLGlDQzFVTztJRDJVUCxtQ0MzVU8sRUQ0VVI7RUF2Vkw7SUF5Vk0sbUJBQWtCLEVBbUJuQjtJQTVXTDtNQTJWUSxZQUFXO01BQ1gsc0JBQWdCLEVBZWpCO01BM1dQO1FBK1ZZLHVCQUFtQixFQUNwQjtNQWhXWDtRQW1XYyxlQ3JWRztRRHNWSCxvREU5VTZCLEVGa1Y5QjtRQXhXYjtVQXNXZ0IsWUMzVkgsRUQ0VkU7RUF2V2Y7SUErV1EsU0FBUTtJQUNSLFFBQU87SUFDUCxjQUFhO0lBQ2IsbUNBQXVCLEVBb0J4QjtJQXRZUDtNQW9YVSxlQUFjO01BQ2QsMEJBQThCO1VBQTlCLHVCQUE4QjtjQUE5QiwrQkFBOEIsRUFVL0I7SUR6VUw7TUN0REo7UUF1WFksZ0JBQWEsRUFRaEI7SURqU0w7TUM5Rko7UUEyWGMsb0JBQWE7WUFBYixrQkFBYTtnQkFBYixjQUFhO1FBQ2IsZUFBYyxFQUNmO0VEdlVUO0lDdERKO01BaVlVLHFDQUF1QixFQUsxQjtFRGhWSDtJQ3RESjtNQW9ZVSxtQ0FBdUIsRUFFMUI7O0FEaFZIO0VDdERKO0lBNllRLHVCQUFpQixFQUNsQjs7QUQzVUg7RUNuRUo7SUFxWlUsd0JBQW1CLEVBQ3BCOztBRHhUTDtFQzlGSjtJQTRaTSwwQkFBa0IsRUFDbkI7RUE3Wkw7SUErWk0scUJBQWdCLEVBQ2pCOztBQWhhTDtFQW1hSSxjQUFhO0VBQ2IsbURFOVl1QztFRitZdkMsWUMxWlM7RUQyWlQsZ0JBQWU7RUFDZix5Q0FBZ0M7RUFBaEMsaUNBQWdDLEVBSWpDO0VBM2FIO0lBeWFNLGVDbFlXLEVEbVlaOztBRHZXRDtFQ25FSjtJQWdiUSxxQkFBZTtJQUNmLHFCQUFhO0lBQWIscUJBQWE7SUFBYixjQUFhO0lBQ2Isb0JBQWU7UUFBZixnQkFBZSxFQUloQjtJQXRiUDtNQW9iVSxzQkFBcUIsRUFDdEI7RUFyYlQ7SUF5YlUsc0JBQWtCO0lBQ2xCLHVCQUFtQixFQUlwQjtFQTliVDtJQWdjVSxlQUFjO0lBQ2QseUJBQW1CLEVBQ3BCO0VBbGNUO0lBcWNRLG9CQUFjO1FBQWQsbUJBQWM7WUFBZCxlQUFjO0lBQ2QsNkJBQVE7UUFBUixrQkFBUTtZQUFSLFNBQVE7SUFDUixnQkFBZTtJQUNmLFdBQVU7SUFDVixrQkFBaUI7SUFDakIsWUMvYkssRUQyY047SUF0ZFA7TUd1QkUsMkJBQTBCO01BQzFCLGlCSG9idUM7TUdsYnJDLG1CSGtiMkM7TUcvYTNDLGVIK2E4QztNR25hOUMsdUJIbWF3RjtNQUNsRix5Q0FBZ0M7TUFBaEMsaUNBQWdDLEVBQ2pDO0lBOWNUO01BZ2RVLGVDemFPLEVENmFSO01BcGRUO1FBa2RZLGlCQUFnQixFQUNqQjtFQW5kWDtJQTBkTSxrQkFBYTtJQUNiLDZCQUFRO1FBQVIsa0JBQVE7WUFBUixTQUFRLEVBQ1Q7RUE1ZEw7SUErZFEsb0JBQWE7UUFBYixrQkFBYTtZQUFiLGNBQWE7SUFDYixlQUFjLEVBSWY7SUFwZVA7TUFrZVUsb0JBQWdCLEVBQ2pCOztBRHJZTDtFQzlGSjtJQTBlTSxvQkFBYztRQUFkLG1CQUFjO1lBQWQsZUFBYztJQUNkLGdCQUFlLEVBQ2hCO0VBNWVMO0lBOGVNLG9CQUFhO1FBQWIsa0JBQWE7WUFBYixjQUFhO0lBQ2IsZUFBYyxFQUNmO0VBaGZMO0lBa2ZNLG9CQUFrQjtRQUFsQix1QkFBa0I7WUFBbEIsbUJBQWtCO0lBQ2xCLG9CQUFtQixFQUNwQjs7QUFwZkw7RUF3ZkksMkJBQTBCO0VBQzFCLG1CQUFlLEVBQ2hCIiwiZmlsZSI6Ii4uXFxtb2R1bGVzXFxqeG1lZ2FtZW51XFx2aWV3c1xcY3NzXFxqeG1lZ2FtZW51LmNzcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbCwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5kZWZhdWx0LW1lbnU6bm90KC5pbmFjdGl2ZS1kZXZpY2UpW2RhdGEtb2ZmLWNhbnZhc10ge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmRlZmF1bHQtbWVudSB1bCB7XG4gIG1hcmdpbjogMDsgfVxuXG4uZGVmYXVsdC1tZW51ID4gdWwgPiBsaSA+IGEsIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpID4gLnRvcC1sZXZlbC1tZW51LWxpLXNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IDAuM3MgYWxsIGVhc2U7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjcxOyB9XG4gIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpID4gYS5zZi13aXRoLXVsLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaSA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuLnNmLXdpdGgtdWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XG4gICAgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkgPiBhLnNmLXdpdGgtdWw6YWZ0ZXIsIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpID4gLnRvcC1sZXZlbC1tZW51LWxpLXNwYW4uc2Ytd2l0aC11bDphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICAgIGNvbnRlbnQ6IFwi74SHXCI7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGNvbG9yOiAjYTJhMmEyO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDVweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbiAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOyB9XG4gICAgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkgPiBhLnNmLXdpdGgtdWw6YmVmb3JlLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaSA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuLnNmLXdpdGgtdWw6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICBsZWZ0OiAzNSU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDFweCAjMDAwO1xuICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICMwMDA7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xMXM7XG4gICAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLmRlZmF1bHQtbWVudSA+IHVsID4gbGkuc2ZIb3ZlciA+IGEsIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpLnNmSG92ZXJGb3JjZSA+IGEsIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpLnNmSG92ZXIgPiAudG9wLWxldmVsLW1lbnUtbGktc3BhbiwgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkuc2ZIb3ZlckZvcmNlID4gLnRvcC1sZXZlbC1tZW51LWxpLXNwYW4sIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpID4gYTpob3ZlciwgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkgPiAudG9wLWxldmVsLW1lbnUtbGktc3Bhbjpob3ZlciB7XG4gIGNvbG9yOiAjYzBkZTAxOyB9XG4gIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpLnNmSG92ZXIgPiBhLnNmLXdpdGgtdWw6YWZ0ZXIsIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpLnNmSG92ZXJGb3JjZSA+IGEuc2Ytd2l0aC11bDphZnRlciwgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkuc2ZIb3ZlciA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuLnNmLXdpdGgtdWw6YWZ0ZXIsIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpLnNmSG92ZXJGb3JjZSA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuLnNmLXdpdGgtdWw6YWZ0ZXIsIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpID4gYTpob3Zlci5zZi13aXRoLXVsOmFmdGVyLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaSA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuOmhvdmVyLnNmLXdpdGgtdWw6YWZ0ZXIge1xuICAgIGNvbG9yOiAjYzBkZTAxO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpOyB9XG5cbi5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpLmNvbG9yLXByaW1hcnkgPiBhLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaS5jb2xvci1wcmltYXJ5ID4gLnRvcC1sZXZlbC1tZW51LWxpLXNwYW4ge1xuICBjb2xvcjogI2MwZGUwMTsgfVxuXG4uZGVmYXVsdC1tZW51ID4gdWwgPiBsaS5jb2xvci1wcmltYXJ5LnNmSG92ZXIgPiBhLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaS5jb2xvci1wcmltYXJ5LnNmSG92ZXJGb3JjZSA+IGEsIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpLmNvbG9yLXByaW1hcnkuc2ZIb3ZlciA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaS5jb2xvci1wcmltYXJ5LnNmSG92ZXJGb3JjZSA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaS5jb2xvci1wcmltYXJ5ID4gYTpob3ZlciwgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkuY29sb3ItcHJpbWFyeSA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuOmhvdmVyIHtcbiAgY29sb3I6ICMwMDA7IH1cblxuLmRlZmF1bHQtbWVudSA+IHVsID4gbGkuc2ZIb3ZlciA+IC5zZi13aXRoLXVsOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG4gIG1hcmdpbi10b3A6IDE2cHg7IH1cblxuLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUsIC5kZWZhdWx0LW1lbnUgbGkuc2ltcGxlIHVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgaDMge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgPiBhLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLW1hbnVmYWN0dXJlcnMgPiBhLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLXN1cHBsaWVycyA+IGEsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5wcm9kdWN0ID4gYSwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1jYXRlZ29yeSA+IGEsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jbXMtcGFnZSA+IGEsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jdXN0b20tbGluayA+IGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udDogNjAwIDE4cHgvMjJweCBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgPiBhOmhvdmVyLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgPiBhOmZvY3VzLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLW1hbnVmYWN0dXJlcnMgPiBhOmhvdmVyLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLW1hbnVmYWN0dXJlcnMgPiBhOmZvY3VzLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLXN1cHBsaWVycyA+IGE6aG92ZXIsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5hbGwtc3VwcGxpZXJzID4gYTpmb2N1cywgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLnByb2R1Y3QgPiBhOmhvdmVyLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkucHJvZHVjdCA+IGE6Zm9jdXMsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jbXMtY2F0ZWdvcnkgPiBhOmhvdmVyLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLWNhdGVnb3J5ID4gYTpmb2N1cywgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1wYWdlID4gYTpob3ZlciwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1wYWdlID4gYTpmb2N1cywgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmN1c3RvbS1saW5rID4gYTpob3ZlciwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmN1c3RvbS1saW5rID4gYTpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjYzBkZTAxOyB9XG4gICAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgPiBhICsgdWwsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5hbGwtbWFudWZhY3R1cmVycyA+IGEgKyB1bCwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmFsbC1zdXBwbGllcnMgPiBhICsgdWwsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5wcm9kdWN0ID4gYSArIHVsLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLWNhdGVnb3J5ID4gYSArIHVsLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLXBhZ2UgPiBhICsgdWwsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jdXN0b20tbGluayA+IGEgKyB1bCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7IH1cbiAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgdWwgbGksIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5hbGwtbWFudWZhY3R1cmVycyB1bCBsaSwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmFsbC1zdXBwbGllcnMgdWwgbGksIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5wcm9kdWN0IHVsIGxpLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLWNhdGVnb3J5IHVsIGxpLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLXBhZ2UgdWwgbGksIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jdXN0b20tbGluayB1bCBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgdWwgbGkgPiBhLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLW1hbnVmYWN0dXJlcnMgdWwgbGkgPiBhLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLXN1cHBsaWVycyB1bCBsaSA+IGEsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5wcm9kdWN0IHVsIGxpID4gYSwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1jYXRlZ29yeSB1bCBsaSA+IGEsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jbXMtcGFnZSB1bCBsaSA+IGEsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jdXN0b20tbGluayB1bCBsaSA+IGEge1xuICAgICAgICBjb2xvcjogIzllOWU5ZTtcbiAgICAgICAgZm9udDogNDAwIDE0cHgvMjBweCBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjsgfVxuICAgICAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgdWwgbGkgPiBhOmhvdmVyLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgdWwgbGkgPiBhOmZvY3VzLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLW1hbnVmYWN0dXJlcnMgdWwgbGkgPiBhOmhvdmVyLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLW1hbnVmYWN0dXJlcnMgdWwgbGkgPiBhOmZvY3VzLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLXN1cHBsaWVycyB1bCBsaSA+IGE6aG92ZXIsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5hbGwtc3VwcGxpZXJzIHVsIGxpID4gYTpmb2N1cywgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLnByb2R1Y3QgdWwgbGkgPiBhOmhvdmVyLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkucHJvZHVjdCB1bCBsaSA+IGE6Zm9jdXMsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jbXMtY2F0ZWdvcnkgdWwgbGkgPiBhOmhvdmVyLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLWNhdGVnb3J5IHVsIGxpID4gYTpmb2N1cywgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1wYWdlIHVsIGxpID4gYTpob3ZlciwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1wYWdlIHVsIGxpID4gYTpmb2N1cywgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmN1c3RvbS1saW5rIHVsIGxpID4gYTpob3ZlciwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmN1c3RvbS1saW5rIHVsIGxpID4gYTpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICAgIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jYXRlZ29yeSB1bCBsaSA+IHVsLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLW1hbnVmYWN0dXJlcnMgdWwgbGkgPiB1bCwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmFsbC1zdXBwbGllcnMgdWwgbGkgPiB1bCwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLnByb2R1Y3QgdWwgbGkgPiB1bCwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1jYXRlZ29yeSB1bCBsaSA+IHVsLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLXBhZ2UgdWwgbGkgPiB1bCwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmN1c3RvbS1saW5rIHVsIGxpID4gdWwge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgPiBhICsgdWwsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5hbGwtbWFudWZhY3R1cmVycyA+IGEgKyB1bCwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmFsbC1zdXBwbGllcnMgPiBhICsgdWwsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5wcm9kdWN0ID4gYSArIHVsLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLWNhdGVnb3J5ID4gYSArIHVsLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLXBhZ2UgPiBhICsgdWwsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jdXN0b20tbGluayA+IGEgKyB1bCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgICAgIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jYXRlZ29yeSB1bCBsaSwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmFsbC1tYW51ZmFjdHVyZXJzIHVsIGxpLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLXN1cHBsaWVycyB1bCBsaSwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLnByb2R1Y3QgdWwgbGksIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jbXMtY2F0ZWdvcnkgdWwgbGksIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jbXMtcGFnZSB1bCBsaSwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmN1c3RvbS1saW5rIHVsIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgPiBhLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLW1hbnVmYWN0dXJlcnMgPiBhLCAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLXN1cHBsaWVycyA+IGEsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5wcm9kdWN0ID4gYSwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1jYXRlZ29yeSA+IGEsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jbXMtcGFnZSA+IGEsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jdXN0b20tbGluayA+IGEge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4OyB9IH1cbiAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50IHVsIHtcbiAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgLnR3b19jb2x1bW5zIHVsLmNvbnRlbnQgPiBsaSB1bDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSAudHdvX2NvbHVtbnMgdWwuY29udGVudCA+IGxpIHVsIGxpIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IC50d29fY29sdW1ucy5jb2wtc20tMyB7XG4gICAgICBmbGV4OiAwIDAgMjclO1xuICAgICAgbWF4LXdpZHRoOiAyNyU7IH0gfVxuICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSAuaHRtbC53aXRob3V0LXRpdGxlIC5odG1sLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IC5wcm9kdWN0LWluZm8gLnByb2R1Y3Qge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgLnByb2R1Y3QtaW5mbyAucHJvZHVjdCBoNSwgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgLnByb2R1Y3QtaW5mbyAucHJvZHVjdCAucHJvZHVjdC1wcmljZXMtc20ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIHBhZGRpbmc6IDNweCA1cHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBvcGFjaXR5OiAwOyB9XG4gICAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSAucHJvZHVjdC1pbmZvIC5wcm9kdWN0IGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgI2YxZjFmMTsgfVxuICAgICAgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgLnByb2R1Y3QtaW5mbyAucHJvZHVjdCAucHJvZHVjdC1wcmljZXMtc20ge1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7IH1cbiAgICAgIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IC5wcm9kdWN0LWluZm8gLnByb2R1Y3Q6aG92ZXIgaDUsIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IC5wcm9kdWN0LWluZm8gLnByb2R1Y3Q6aG92ZXIgLnByb2R1Y3QtcHJpY2VzLXNtIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgLnByb2R1Y3QtaW5mbyAucHJvZHVjdCBoNSB7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgIG1hcmdpbjogMTBweCAwIDVweDsgfVxuICAgIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IC5wcm9kdWN0LWluZm8gLnByb2R1Y3QgLnByb2R1Y3QtcHJpY2VzLXNtIHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4OyB9XG4gICAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSAucHJvZHVjdC1pbmZvIC5wcm9kdWN0IC5wcm9kdWN0LXByaWNlcy1zbSAucmVndWxhci1wcmljZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IC5wcm9kdWN0LWluZm8gLnByb2R1Y3QgLnByb2R1Y3QtcHJpY2VzLXNtIC5wcmljZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IC5wcm9kdWN0c19ibG9jXzNfaXRlbXMgdWwuY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luOiAwIC0xMHB4IDIwcHg7IH1cbiAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSAucHJvZHVjdHNfYmxvY18zX2l0ZW1zIHVsLmNvbnRlbnQgLmh0bWwge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7IH1cbiAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSAucHJvZHVjdHNfYmxvY18zX2l0ZW1zIHVsLmNvbnRlbnQgLnByb2R1Y3QtaW5mbyB7XG4gICAgICBmbGV4OiAwIDAgMzMuMzMzMyU7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7IH1cblxuLmRlZmF1bHQtbWVudSAubWVudV9iYWRnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMnB4O1xuICByaWdodDogLTVweDtcbiAgei1pbmRleDogMjtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6ICNjMGRlMDE7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAxcHggNXB4IDJweCA1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbi5kZWZhdWx0LW1lbnUgLm1lbnV2aWRlb3dyYXBwZXIge1xuICBjbGVhcjogYm90aDtcbiAgZmxvYXQ6IG5vbmU7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgcGFkZGluZy10b3A6IDI1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmRlZmF1bHQtbWVudSAubWVudXZpZGVvd3JhcHBlciBpZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLmRlZmF1bHQtbWVudSAuZW1iZWQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuICAuZGVmYXVsdC1tZW51IC5lbWJlZC1jb250YWluZXIgaWZyYW1lLCAuZGVmYXVsdC1tZW51IC5lbWJlZC1jb250YWluZXIgb2JqZWN0LCAuZGVmYXVsdC1tZW51IC5lbWJlZC1jb250YWluZXIgZW1iZWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cblxuLmRlZmF1bHQtbWVudSAuZnJvbnRlbmQtbWFwIHtcbiAgbWluLWhlaWdodDogMjAwcHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE4MDBweCkge1xuICAuZGVmYXVsdC1tZW51ID4gbGkgKyBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmRlZmF1bHQtbWVudSA+IHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgLmRlZmF1bHQtbWVudSBsaS5zaW1wbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5kZWZhdWx0LW1lbnUgbGkuc2ltcGxlIHVsIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICB3aWR0aDogMjAwcHg7XG4gICAgICB6LWluZGV4OiA5OTtcbiAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDQzcHggcmdiYSgwLCAwLCAwLCAwLjExKTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgICAuZGVmYXVsdC1tZW51IGxpLnNpbXBsZSA+IHVsIHtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgICAuZGVmYXVsdC1tZW51IGxpLnNpbXBsZSBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7IH1cbiAgICAgIC5kZWZhdWx0LW1lbnUgbGkuc2ltcGxlIGxpIC5zZi13aXRoLXVsIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDsgfVxuICAgICAgICAuZGVmYXVsdC1tZW51IGxpLnNpbXBsZSBsaSAuc2Ytd2l0aC11bDphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICAgICAgICBjb250ZW50OiBcIu+EhVwiO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgICAgIC5kZWZhdWx0LW1lbnUgbGkuc2ltcGxlIGxpLnNmSG92ZXIgPiAuc2Ytd2l0aC11bDphZnRlciwgLmRlZmF1bHQtbWVudSBsaS5zaW1wbGUgbGkgPiAuc2Ytd2l0aC11bDpob3ZlcjphZnRlciB7XG4gICAgICAgIHJpZ2h0OiA1cHg7IH1cbiAgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMjJweDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIHotaW5kZXg6IDc7XG4gICAgcGFkZGluZzogNTBweCA1MHB4IDUwcHg7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICMwMDA7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgNnB4ICMwMDA7IH1cbiAgLmRlZmF1bHQtbWVudSBsaS5zbWFsbC1tZWdhbWVudSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmRlZmF1bHQtbWVudSBsaS5zbWFsbC1tZWdhbWVudSAuaXMtbWVnYW1lbnUge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtaW4td2lkdGg6IDQ1NXB4OyB9XG4gICAgICAuZGVmYXVsdC1tZW51IGxpLnNtYWxsLW1lZ2FtZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAuZGVmYXVsdC1tZW51IGxpLnNtYWxsLW1lZ2FtZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgPiBhLCAuZGVmYXVsdC1tZW51IGxpLnNtYWxsLW1lZ2FtZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLW1hbnVmYWN0dXJlcnMgPiBhLCAuZGVmYXVsdC1tZW51IGxpLnNtYWxsLW1lZ2FtZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLXN1cHBsaWVycyA+IGEsIC5kZWZhdWx0LW1lbnUgbGkuc21hbGwtbWVnYW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5wcm9kdWN0ID4gYSwgLmRlZmF1bHQtbWVudSBsaS5zbWFsbC1tZWdhbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1jYXRlZ29yeSA+IGEsIC5kZWZhdWx0LW1lbnUgbGkuc21hbGwtbWVnYW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jbXMtcGFnZSA+IGEsIC5kZWZhdWx0LW1lbnUgbGkuc21hbGwtbWVnYW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jdXN0b20tbGluayA+IGEge1xuICAgICAgICBjb2xvcjogIzllOWU5ZTtcbiAgICAgICAgZm9udDogNDAwIDE0cHgvMjBweCBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjsgfVxuICAgICAgICAuZGVmYXVsdC1tZW51IGxpLnNtYWxsLW1lZ2FtZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgPiBhOmhvdmVyLCAuZGVmYXVsdC1tZW51IGxpLnNtYWxsLW1lZ2FtZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgPiBhOmZvY3VzLCAuZGVmYXVsdC1tZW51IGxpLnNtYWxsLW1lZ2FtZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLW1hbnVmYWN0dXJlcnMgPiBhOmhvdmVyLCAuZGVmYXVsdC1tZW51IGxpLnNtYWxsLW1lZ2FtZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLW1hbnVmYWN0dXJlcnMgPiBhOmZvY3VzLCAuZGVmYXVsdC1tZW51IGxpLnNtYWxsLW1lZ2FtZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLXN1cHBsaWVycyA+IGE6aG92ZXIsIC5kZWZhdWx0LW1lbnUgbGkuc21hbGwtbWVnYW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5hbGwtc3VwcGxpZXJzID4gYTpmb2N1cywgLmRlZmF1bHQtbWVudSBsaS5zbWFsbC1tZWdhbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLnByb2R1Y3QgPiBhOmhvdmVyLCAuZGVmYXVsdC1tZW51IGxpLnNtYWxsLW1lZ2FtZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkucHJvZHVjdCA+IGE6Zm9jdXMsIC5kZWZhdWx0LW1lbnUgbGkuc21hbGwtbWVnYW1lbnUgLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jbXMtY2F0ZWdvcnkgPiBhOmhvdmVyLCAuZGVmYXVsdC1tZW51IGxpLnNtYWxsLW1lZ2FtZW51IC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLWNhdGVnb3J5ID4gYTpmb2N1cywgLmRlZmF1bHQtbWVudSBsaS5zbWFsbC1tZWdhbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1wYWdlID4gYTpob3ZlciwgLmRlZmF1bHQtbWVudSBsaS5zbWFsbC1tZWdhbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1wYWdlID4gYTpmb2N1cywgLmRlZmF1bHQtbWVudSBsaS5zbWFsbC1tZWdhbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmN1c3RvbS1saW5rID4gYTpob3ZlciwgLmRlZmF1bHQtbWVudSBsaS5zbWFsbC1tZWdhbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmN1c3RvbS1saW5rID4gYTpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICMwMDA7IH1cbiAgLmRlZmF1bHQtbWVudSBsaS5iaWctbWVnYW1lbnUgLmlzLW1lZ2FtZW51IHtcbiAgICB0b3A6IDkwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZzogMjBweCAxNXB4IDIwcHg7IH1cbiAgICAuZGVmYXVsdC1tZW51IGxpLmJpZy1tZWdhbWVudSAuaXMtbWVnYW1lbnUgLm1lZ2FtZW51LXJvdyB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogMTg3MHB4KSB7XG4gICAgICAuZGVmYXVsdC1tZW51IGxpLmJpZy1tZWdhbWVudSAuaXMtbWVnYW1lbnUgLm1lZ2FtZW51LXJvdyB7XG4gICAgICAgIHdpZHRoOiAxMjYwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5kZWZhdWx0LW1lbnUgbGkuYmlnLW1lZ2FtZW51IC5pcy1tZWdhbWVudSAubWVnYW1lbnUtcm93ID4gLmNvbC1zbS0yIHtcbiAgICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgICAgbWF4LXdpZHRoOiAyNSU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuZGVmYXVsdC1tZW51IGxpLmJpZy1tZWdhbWVudSAuaXMtbWVnYW1lbnUge1xuICAgICAgcGFkZGluZzogNzBweCAxNXB4IDUwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5kZWZhdWx0LW1lbnUgbGkuYmlnLW1lZ2FtZW51IC5pcy1tZWdhbWVudSB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDE1cHggMzBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkgKyBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQ1cHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmRlZmF1bHQtbWVudSBsaS5zbWFsbC1tZWdhbWVudSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUge1xuICAgIHBhZGRpbmc6IDMwcHggMjBweDsgfVxuICAuZGVmYXVsdC1tZW51IGxpLnNtYWxsLW1lZ2FtZW51IC5pcy1tZWdhbWVudSB7XG4gICAgbWluLXdpZHRoOiAzMzBweDsgfSB9XG5cbi5kZWZhdWx0LW1lbnUgLm1lbnUtdGl0bGUge1xuICBkaXNwbGF5OiBub25lO1xuICBmb250OiA2MDAgMThweC8yNHB4IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzAwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDsgfVxuICAuZGVmYXVsdC1tZW51IC5tZW51LXRpdGxlOmhvdmVyLCAuZGVmYXVsdC1tZW51IC5tZW51LXRpdGxlOmFjdGl2ZSwgLmRlZmF1bHQtbWVudSAubWVudS10aXRsZTpmb2N1cyB7XG4gICAgY29sb3I6ICNjMGRlMDE7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaS5zaW1wbGUgbGkge1xuICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpID4gYSwgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkgPiAudG9wLWxldmVsLW1lbnUtbGktc3BhbiwgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkuc2ltcGxlIGxpID4gYSwgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkuc2ltcGxlIGxpID4gLnRvcC1sZXZlbC1tZW51LWxpLXNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpLnNpbXBsZSBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTIwcHg7IH1cbiAgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkuc2ltcGxlIHVsIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnB4OyB9XG4gIC5kZWZhdWx0LW1lbnUgPiB1bCAubWVudS1tb2JpbGUtZ3JvdmVyIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBvcmRlcjogMTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgei1pbmRleDogMTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBjb2xvcjogIzAwMDsgfVxuICAgIC5kZWZhdWx0LW1lbnUgPiB1bCAubWVudS1tb2JpbGUtZ3JvdmVyOmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogJ0xpbmVhcmljb25zJztcbiAgICAgIGNvbnRlbnQ6IFwi7rC6XCI7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDsgfVxuICAgIC5kZWZhdWx0LW1lbnUgPiB1bCAubWVudS1tb2JpbGUtZ3JvdmVyLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogI2MwZGUwMTsgfVxuICAgICAgLmRlZmF1bHQtbWVudSA+IHVsIC5tZW51LW1vYmlsZS1ncm92ZXIuYWN0aXZlOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGVjMzknOyB9XG4gIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51LCAuZGVmYXVsdC1tZW51IC5pcy1zaW1wbGVtZW51LCAuZGVmYXVsdC1tZW51IC5pcy1zaW1wbGVtZW51IHVsIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIG9yZGVyOiAyOyB9XG4gIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gICAgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgW2NsYXNzKj1cImNvbC1cIl06bnRoLWNoaWxkKDFuKzMpIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZGVmYXVsdC1tZW51IC53XzEwMF9zbSwgLmRlZmF1bHQtbWVudSAucHJvZHVjdHNfYmxvY18zX2l0ZW1zIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmRlZmF1bHQtbWVudSAud181MF9zbSB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAuZGVmYXVsdC1tZW51IC53XzMzX3NtIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzJTsgfSB9XG5cbi5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IGgzLnBvc3QtbmFtZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBmb250LXNpemU6IDEycHg7IH1cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvQzovT3BlblNlcnZlci9kb21haW5zL2xvY2FsaG9zdC9CaWtlSWRvbC90aGVtZXMvdGhlbWUxNTE5L19kZXYvbW9kdWxlcy9qeG1lZ2FtZW51L3ZpZXdzL2Nzcy9qeG1lZ2FtZW51LnNjc3MiLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMS5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2N3B4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAxcHgsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lKVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lKVxuICB9XG59XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL0M6L09wZW5TZXJ2ZXIvZG9tYWlucy9sb2NhbGhvc3QvQmlrZUlkb2wvdGhlbWVzL3RoZW1lMTUxOS9fZGV2L21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvQzovT3BlblNlcnZlci9kb21haW5zL2xvY2FsaG9zdC9CaWtlSWRvbC90aGVtZXMvdGhlbWUxNTE5L19kZXYvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIkBpbXBvcnQgXCJjc3MvcGFydGlhbHMvX3ZhcmlhYmxlc1wiO1xyXG5cclxuLmRlZmF1bHQtbWVudSB7XHJcbiAgJjpub3QoLmluYWN0aXZlLWRldmljZSlbZGF0YS1vZmYtY2FudmFzXSB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHVsIHtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcbiAgPiB1bCA+IGxpIHtcclxuICAgID4gYSwgPiAudG9wLWxldmVsLW1lbnUtbGktc3BhbiB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgdHJhbnNpdGlvbjogMC4zcyBhbGwgZWFzZTtcclxuICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xyXG4gICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuNzE7XHJcbiAgICAgICYuc2Ytd2l0aC11bCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICBAaW5jbHVkZSBhZGRJY29uKCdcXGYxMDcnLCAxNHB4LCAxLCAkZ3JheS01MDAsIG1hcmdpbi1sZWZ0LCBtYXJnaW4tcmlnaHQsIHZlcnRpY2FsLWFsaWduKTtcclxuICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgdG9wOiA1cHg7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XHJcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xyXG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICB3aWR0aDogMTNweDtcclxuICAgICAgICAgIGhlaWdodDogMTNweDtcclxuICAgICAgICAgIGxlZnQ6IDM1JTtcclxuICAgICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgICAgICAgIGJvcmRlci1yaWdodDogc29saWQgMXB4ICRibGFjaztcclxuICAgICAgICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAkYmxhY2s7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xMXM7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjNzO1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgICAgICAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XHJcbiAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLnNmSG92ZXIgPiBhLCAmLnNmSG92ZXJGb3JjZSA+IGEsICYuc2ZIb3ZlciA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuLCAmLnNmSG92ZXJGb3JjZSA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuLCA+IGE6aG92ZXIsID4gLnRvcC1sZXZlbC1tZW51LWxpLXNwYW46aG92ZXIge1xyXG4gICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XHJcbiAgICAgICYuc2Ytd2l0aC11bCB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYuY29sb3ItcHJpbWFyeSB7XHJcbiAgICAgID4gYSwgPiAudG9wLWxldmVsLW1lbnUtbGktc3BhbiB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xyXG4gICAgICB9XHJcbiAgICAgICYuc2ZIb3ZlciA+IGEsICYuc2ZIb3ZlckZvcmNlID4gYSwgJi5zZkhvdmVyID4gLnRvcC1sZXZlbC1tZW51LWxpLXNwYW4sICYuc2ZIb3ZlckZvcmNlID4gLnRvcC1sZXZlbC1tZW51LWxpLXNwYW4sID4gYTpob3ZlciwgPiAudG9wLWxldmVsLW1lbnUtbGktc3Bhbjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5zZkhvdmVyID4gLnNmLXdpdGgtdWw6YmVmb3JlIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgbWFyZ2luLXRvcDogMTZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5pcy1tZWdhbWVudSwgbGkuc2ltcGxlIHVsIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAuaXMtbWVnYW1lbnUge1xyXG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgaDMge1xyXG4gICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIH1cclxuICAgIHVsLmNvbnRlbnQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICA+IGxpLmNhdGVnb3J5LCA+IGxpLmFsbC1tYW51ZmFjdHVyZXJzLCA+IGxpLmFsbC1zdXBwbGllcnMsID4gbGkucHJvZHVjdCwgPiBsaS5jbXMtY2F0ZWdvcnksID4gbGkuY21zLXBhZ2UsID4gbGkuY3VzdG9tLWxpbmsge1xyXG4gICAgICAgID4gYSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICBmb250OiA2MDAgMThweC8yMnB4ICRmb250LWZhbWlseS1iYXNlO1xyXG4gICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICArIHVsIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcclxuICAgICAgICAgICAgICBmb250OiA0MDAgMTRweC8yMHB4ICRmb250LWZhbWlseS1iYXNlO1xyXG4gICAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiB1bCB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgICAgPiBhICsgdWwge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdWwgbGkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHVsIHtcclxuICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnR3b19jb2x1bW5zIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIHVsLmNvbnRlbnQgPiBsaSB1bCB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xyXG4gICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5jb2wtc20tMyB7XHJcbiAgICAgICAgICBmbGV4OiAwIDAgMjclO1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiAyNyU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG4gICAgLmh0bWwud2l0aG91dC10aXRsZSB7XHJcbiAgICAgIC5odG1sLXRpdGxlIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAucHJvZHVjdC1pbmZvIC5wcm9kdWN0IHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGg1LCAucHJvZHVjdC1wcmljZXMtc20ge1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgICAgICAgcGFkZGluZzogM3B4IDVweDtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBoNSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkZ3JheS0yMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wcm9kdWN0LXByaWNlcy1zbSB7XHJcbiAgICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkZ3JheS0yMDA7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgaDUsIC5wcm9kdWN0LXByaWNlcy1zbSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgaDUge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgICBtYXJnaW46IDEwcHggMCA1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wcm9kdWN0LXByaWNlcy1zbSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcclxuICAgICAgICAgIC5yZWd1bGFyLXByaWNlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC5wcmljZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5wcm9kdWN0c19ibG9jXzNfaXRlbXMge1xyXG4gICAgICB1bC5jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBtYXJnaW46IDAgLTEwcHggMjBweDtcclxuICAgICAgICAuaHRtbCB7XHJcbiAgICAgICAgICBmbGV4OiAwIDAgMTAwJTtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnByb2R1Y3QtaW5mbyB7XHJcbiAgICAgICAgICBmbGV4OiAwIDAgMzMuMzMzMyU7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5tZW51X2JhZGdlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogLTJweDtcclxuICAgIHJpZ2h0OiAtNXB4O1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIHBhZGRpbmc6IDFweCA1cHggMnB4IDVweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxMnB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgfVxyXG4gIC5tZW51dmlkZW93cmFwcGVyIHtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xyXG4gICAgcGFkZGluZy10b3A6IDI1cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGlmcmFtZSB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuICAuZW1iZWQtY29udGFpbmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgaWZyYW1lLCBvYmplY3QsIGVtYmVkIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5mcm9udGVuZC1tYXAge1xyXG4gICAgbWluLWhlaWdodDogMjAwcHg7XHJcbiAgfVxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWN1c3RvbS1taW4pIHtcclxuICAgID4gbGkgKyBsaSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiA1MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgLy8gIFRvcCBtZW51XHJcbiAgICA+IHVsIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICA+IGxpICsgbGkge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gIFNpbXBsZSBtZW51XHJcbiAgICBsaS5zaW1wbGUge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHVsIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDEwMCU7XHJcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgIHotaW5kZXg6IDk5O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDQzcHggcmdiYSgwLCAwLCAwLCAwLjExKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgIH1cclxuICAgICAgPiB1bCB7XHJcbiAgICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgICAgbGkge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICAgICAgLnNmLXdpdGgtdWwge1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBhZGRJY29uKCdcXGYxMDUnLCBmb250LXNpemUsIDEsIGNvbG9yLCBtYXJnaW4tbGVmdCwgbWFyZ2luLXJpZ2h0LCB2ZXJ0aWNhbC1hbGlnbik7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcclxuICAgICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnNmSG92ZXIgPiAuc2Ytd2l0aC11bCwgPiAuc2Ytd2l0aC11bDpob3ZlciB7XHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgcmlnaHQ6IDVweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vICBNZWdhLW1lbnVcclxuICAgIC5pcy1tZWdhbWVudSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICBtYXJnaW4tdG9wOiAyMnB4O1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygpO1xyXG4gICAgICB6LWluZGV4OiA3O1xyXG4gICAgICBwYWRkaW5nOiA1MHB4IDUwcHggNTBweDtcclxuICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICRibGFjaztcclxuICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgNnB4ICRibGFjaztcclxuICAgIH1cclxuICAgIGxpLnNtYWxsLW1lZ2FtZW51IHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAuaXMtbWVnYW1lbnUge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIG1pbi13aWR0aDogNDU1cHg7XHJcbiAgICAgICAgdWwuY29udGVudCB7XHJcbiAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgID4gbGkuY2F0ZWdvcnksID4gbGkuYWxsLW1hbnVmYWN0dXJlcnMsID4gbGkuYWxsLXN1cHBsaWVycywgPiBsaS5wcm9kdWN0LCA+IGxpLmNtcy1jYXRlZ29yeSwgPiBsaS5jbXMtcGFnZSwgPiBsaS5jdXN0b20tbGluayB7XHJcbiAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xyXG4gICAgICAgICAgICAgIGZvbnQ6IDQwMCAxNHB4LzIwcHggJGZvbnQtZmFtaWx5LWJhc2U7XHJcbiAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgbGkuYmlnLW1lZ2FtZW51IHtcclxuICAgICAgLmlzLW1lZ2FtZW51IHtcclxuICAgICAgICB0b3A6IDkwJTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCAxNXB4IDIwcHg7XHJcbiAgICAgICAgLm1lZ2FtZW51LXJvdyB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHhsKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMjYwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkobWQpIHtcclxuICAgICAgICAgICAgPiAuY29sLXNtLTIge1xyXG4gICAgICAgICAgICAgIGZsZXg6IDAgMCAyNSU7XHJcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNSU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xyXG4gICAgICAgICAgcGFkZGluZzogNzBweCAxNXB4IDUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDQwcHggMTVweCAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XHJcbiAgICAvLyAgVG9wIG1lbnVcclxuICAgID4gdWwge1xyXG4gICAgICA+IGxpICsgbGkge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0NXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgbGkuc21hbGwtbWVnYW1lbnUgLmlzLW1lZ2FtZW51IHtcclxuICAgICAgdWwuY29udGVudCB7XHJcbiAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkobWQpIHtcclxuICAgIC5pcy1tZWdhbWVudSB7XHJcbiAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcclxuICAgIH1cclxuICAgIGxpLnNtYWxsLW1lZ2FtZW51IC5pcy1tZWdhbWVudSB7XHJcbiAgICAgIG1pbi13aWR0aDogMzMwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5tZW51LXRpdGxlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBmb250OiA2MDAgMThweC8yNHB4ICRmb250LWZhbWlseS1iYXNlO1xyXG4gICAgY29sb3I6ICRibGFjaztcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xyXG4gICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgLy8gIFRvcCBtZW51XHJcbiAgICA+IHVsIHtcclxuICAgICAgPiBsaSwgPiBsaS5zaW1wbGUgbGkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDJweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICA+IGEsID4gLnRvcC1sZXZlbC1tZW51LWxpLXNwYW4ge1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICA+IGxpLnNpbXBsZSB7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMjBweDtcclxuICAgICAgICAgIGxpIHtcclxuXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDJweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLm1lbnUtbW9iaWxlLWdyb3ZlciB7XHJcbiAgICAgICAgZmxleDogMSAxIGF1dG87XHJcbiAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBhZGRMaW5lYXJJY29ucygnXFxlYzNhJywgMTJweCwgMSwgY29sb3IsIG1hcmdpbi1sZWZ0LCBtYXJnaW4tcmlnaHQsIG1pZGRsZSk7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnXFxlYzM5JztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmlzLW1lZ2FtZW51LCAuaXMtc2ltcGxlbWVudSwgLmlzLXNpbXBsZW1lbnUgdWwge1xyXG4gICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICBvcmRlcjogMjtcclxuICAgIH1cclxuICAgIC5pcy1tZWdhbWVudSB7XHJcbiAgICAgIFtjbGFzcyo9XCJjb2wtXCJdICB7XHJcbiAgICAgICAgZmxleDogMCAwIDUwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcclxuICAgICAgICAmOm50aC1jaGlsZCgxbiszKSB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1vbmx5KHNtKSB7XHJcbiAgICAud18xMDBfc20sIC5wcm9kdWN0c19ibG9jXzNfaXRlbXMge1xyXG4gICAgICBmbGV4OiAwIDAgMTAwJTtcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgLndfNTBfc20ge1xyXG4gICAgICBmbGV4OiAwIDAgNTAlO1xyXG4gICAgICBtYXgtd2lkdGg6IDUwJTtcclxuICAgIH1cclxuICAgIC53XzMzX3NtIHtcclxuICAgICAgZmxleDogMCAwIDMzLjMzMzMlO1xyXG4gICAgICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAuaXMtbWVnYW1lbnUgaDMucG9zdC1uYW1lIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gIH1cclxuICBcclxufVxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvQzovT3BlblNlcnZlci9kb21haW5zL2xvY2FsaG9zdC9CaWtlSWRvbC90aGVtZXMvdGhlbWUxNTE5L19kZXYvbW9kdWxlcy9qeG1lZ2FtZW51L3ZpZXdzL2Nzcy9DOi9PcGVuU2VydmVyL2RvbWFpbnMvbG9jYWxob3N0L0Jpa2VJZG9sL3RoZW1lcy90aGVtZTE1MTkvX2Rldi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL2p4bWVnYW1lbnUuc2NzcyIsIi8vXHJcbi8vIENvbG9yIHN5c3RlbVxyXG4vL1xyXG4kd2hpdGU6ICAjZmZmICFkZWZhdWx0O1xyXG4kZ3JheS0xMDA6ICNmYWZhZmEgICFkZWZhdWx0O1xyXG4kZ3JheS0yMDA6ICNmMWYxZjEgIWRlZmF1bHQ7XHJcbiRncmF5LTMwMDogI2U3ZTdlNyAhZGVmYXVsdDtcclxuJGdyYXktNDAwOiAjZGRkZGRkICFkZWZhdWx0O1xyXG4kZ3JheS01MDA6ICNhMmEyYTIgIWRlZmF1bHQ7XHJcbiRncmF5LTYwMDogIzg4ODg4OCAhZGVmYXVsdDtcclxuJGdyYXktNzAwOiAjNTU1NTU1ICFkZWZhdWx0O1xyXG4kZ3JheS04MDA6ICMzYTNhM2EgIWRlZmF1bHQ7XHJcbiRncmF5LTkwMDogIzE0MTQxNCAhZGVmYXVsdDtcclxuJGJsYWNrOiAgIzAwMCAhZGVmYXVsdDtcclxuJGdyYXktODA6ICNjY2NjY2M7XHJcbiRncmF5LTY4OiAjYWRhZGFkO1xyXG4kZ3JheS02MjogIzllOWU5ZTtcclxuJGdyYXktOTA6ICNlNWU1ZTU7XHJcbiRncmF5LTkxOiAjZTllOWU5O1xyXG4kZ3JheS05MjogI2VkZWRlZDtcclxuJGJvcmRlci1jb2xvcjogJGdyYXktOTE7XHJcblxyXG4kZ3JheXM6IChcclxuICAxMDA6ICRncmF5LTEwMCxcclxuICAyMDA6ICRncmF5LTIwMCxcclxuICAzMDA6ICRncmF5LTMwMCxcclxuICA0MDA6ICRncmF5LTQwMCxcclxuICA1MDA6ICRncmF5LTUwMCxcclxuICA2MDA6ICRncmF5LTYwMCxcclxuICA3MDA6ICRncmF5LTcwMCxcclxuICA4MDA6ICRncmF5LTgwMCxcclxuICA5MDA6ICRncmF5LTkwMFxyXG4pICFkZWZhdWx0O1xyXG5cclxuJGJsdWU6ICAgICMyYWJkZmMgIWRlZmF1bHQ7XHJcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xyXG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcclxuJHBpbms6ICAgICNkZTZkNmQgIWRlZmF1bHQ7XHJcbiRyZWQ6ICAgICAjZDA1NjU2ICFkZWZhdWx0O1xyXG4kb3JhbmdlOiAgI2ZlYjM4MCAhZGVmYXVsdDtcclxuJHllbGxvdzogICNmZmVkMDEgIWRlZmF1bHQ7XHJcbiRncmVlbjogICAjYzBkZTAxICFkZWZhdWx0O1xyXG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcclxuJGN5YW46ICAgICNjNWYyZmQgIWRlZmF1bHQ7XHJcbiRtYWdlbnRhOiAjYmQ0MWI4ICFkZWZhdWx0O1xyXG5cclxuJGNvbG9yczogKFxyXG4gIGJsdWU6ICRibHVlLFxyXG4gIGluZGlnbzogJGluZGlnbyxcclxuICBwdXJwbGU6ICRwdXJwbGUsXHJcbiAgcGluazogJHBpbmssXHJcbiAgcmVkOiAkcmVkLFxyXG4gIG9yYW5nZTogJG9yYW5nZSxcclxuICB5ZWxsb3c6ICR5ZWxsb3csXHJcbiAgZ3JlZW46ICRncmVlbixcclxuICB0ZWFsOiAkdGVhbCxcclxuICBjeWFuOiAkY3lhbixcclxuICBtYWdlbnRhOiAkbWFnZW50YSxcclxuICB3aGl0ZTogJHdoaXRlLFxyXG4gIGdyYXk6ICRncmF5LTYwMCxcclxuICBncmF5LWRhcms6ICRncmF5LTgwMCxcclxuICBncmF5LWRhcmtlcjogJGdyYXktOTAwLFxyXG4gIGdyYXktbGlnaHQ6ICRncmF5LTIwMCxcclxuICBncmF5LWxpZ2h0ZXI6ICRncmF5LTEwMFxyXG4pICFkZWZhdWx0O1xyXG5cclxuJHRoZW1lLWNvbG9yczogKFxyXG4gIHByaW1hcnk6ICRncmVlbixcclxuICBzZWNvbmRhcnk6ICRncmF5LTgwMCxcclxuICBzdWNjZXNzOiAkZ3JlZW4sXHJcbiAgaW5mbzogJGJsdWUsXHJcbiAgd2FybmluZzogJHllbGxvdyxcclxuICBkYW5nZXI6ICRwaW5rLFxyXG4gIGxpZ2h0OiAkZ3JheS0yMDAsXHJcbiAgd2hpdGU6ICR3aGl0ZVxyXG4pICFkZWZhdWx0O1xuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvQzovT3BlblNlcnZlci9kb21haW5zL2xvY2FsaG9zdC9CaWtlSWRvbC90aGVtZXMvdGhlbWUxNTE5L19kZXYvbW9kdWxlcy9qeG1lZ2FtZW51L3ZpZXdzL2Nzcy9DOi9PcGVuU2VydmVyL2RvbWFpbnMvbG9jYWxob3N0L0Jpa2VJZG9sL3RoZW1lcy90aGVtZTE1MTkvX2Rldi9jc3MvcGFydGlhbHMvX3ZhcmlhYmxlc19jb2xvci5zY3NzIiwiQGltcG9ydCBcInZhcmlhYmxlc19jb2xvclwiO1xyXG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL21peGluc1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zXCI7XHJcblxyXG4vL21haW4gY29sb3JzXHJcbiRicmFuZC1wcmltYXJ5OiAkZ3JlZW47XHJcbiRicmFuZC1zZWNvbmRhcnk6ICRncmF5LTYwMDtcclxuJGJyYW5kLXN1Y2Nlc3M6ICRncmVlbjtcclxuJGJyYW5kLWluZm86ICRibHVlO1xyXG4kYnJhbmQtd2FybmluZzogJHllbGxvdztcclxuJGJyYW5kLWRhbmdlcjogJHJlZDtcclxuJGJvZHktY29sb3I6ICRncmF5LTYyO1xyXG4kZm9vdGVyLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGhlYWRlci1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRtYWluLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGJvZHktYmc6ICRmb290ZXItYmFja2dyb3VuZDtcclxuJHByb2R1Y3QtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kcHJvZHVjdC1jb2xvcjogJGJsYWNrO1xyXG4kcHJpY2UtY29sb3I6ICRibGFjaztcclxuJHJlZ3VsYXItcHJpY2UtY29sb3I6ICRncmF5LTYyO1xyXG4kcHJpY2UtbmV3LWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcclxuJGluLXN0b2NrOiAjMWM1NmU4O1xyXG5cclxuLy9mb250c1xyXG4kZm9udC1mYW1pbHktYmFzZTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xyXG4kZm9udC1saW5lYXJpY29uczogJ0xpbmVhcmljb25zJztcclxuJGJvZHktZm9udDogNDAwIDE0cHgvMjBweCAkZm9udC1mYW1pbHktYmFzZTtcclxuJGZvbnQteHM6IDQwMCAxMnB4LzE4cHggJGZvbnQtZmFtaWx5LWJhc2U7XHJcbiRmb250LW1kOiA0MDAgMThweC8zMHB4ICRmb250LWZhbWlseS1iYXNlO1xyXG4kZm9udC1sZzogNTAwIDMwcHgvNDBweCAkZm9udC1mYW1pbHktYmFzZTtcclxuJHByb2R1Y3QtZm9udDogNDAwIDE4cHgvMzBweCAkZm9udC1mYW1pbHktYmFzZTtcclxuJHBhY2stcHJvZHVjdC1mb250OiA0MDAgMTZweC8yMHB4ICRmb250LWZhbWlseS1iYXNlO1xyXG4kcHJvZHVjdC1mb250LXNtOiA0MDAgMTRweC8yMHB4ICRmb250LWZhbWlseS1iYXNlO1xyXG4kcHJvZHVjdC1mb250LWxnOiA2MDAgNDBweC81MHB4ICRmb250LWZhbWlseS1iYXNlO1xyXG4kcHJpY2UtZm9udDogNjAwIDE4cHgvMjRweCAkZm9udC1mYW1pbHktYmFzZTtcclxuJGRpc2NvdW50LXByaWNlLWZvbnQ6IDYwMCAzMHB4LzM0cHggJGZvbnQtZmFtaWx5LWJhc2U7XHJcbiRmb250LXN1YmhlYWRpbmc6ICRmb250LW1kO1xyXG5cclxuXHJcbi8vTGlua3NcclxuJGxpbmstY29sb3I6ICRncmF5LTgwMDtcclxuJGxpbmstaG92ZXItY29sb3I6ICRncmF5LTYwMDtcclxuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbi8vZm9udCBzaXplXHJcbiRmb250LXNpemUtYmFzZTogMC44NzVyZW07XHJcbiRmb250LXNpemUtbGc6IDFyZW07XHJcbiRmb250LXNpemUtc206IDAuNzVyZW07XHJcbiRmb250LXdlaWdodC1iYXNlOiA0MDA7XHJcbiRsaW5lLWhlaWdodC1iYXNlOiAxLjI4NjtcclxuJGgxLWZvbnQtc2l6ZTogMi41cmVtO1xyXG4kaDItZm9udC1zaXplOiAxLjc1MHJlbTtcclxuJGgzLWZvbnQtc2l6ZTogMS41cmVtO1xyXG4kaDQtZm9udC1zaXplOiAxLjVyZW07XHJcbiRoNS1mb250LXNpemU6IDEuMTI1cmVtO1xyXG4kaDYtZm9udC1zaXplOiAxLjEyNXJlbTtcclxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206IDI3cHg7XHJcbiRoZWFkaW5ncy1mb250LXdlaWdodDogYm9sZDtcclxuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAxLjU7XHJcbiRoZWFkaW5ncy1jb2xvcjogJGdyYXktODAwO1xyXG5cclxuLy9idXR0b25zXHJcbiRidG4tZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiRidG4tYm9yZGVyLXJhZGl1czogMDtcclxuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAwO1xyXG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6IDA7XHJcbiRidG4tYm94LXNoYWRvdzogbm9uZTtcclxuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiBub25lO1xyXG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiBub25lO1xyXG5cclxuLy9TcGFjaW5nXHJcbiRib3JkZXItcmFkaXVzOiAwO1xyXG4kYm9yZGVyLXJhZGl1cy1zbTogMDtcclxuJGJvcmRlci1yYWRpdXMtbGc6IDA7XHJcbiRzcGFjZXI6IDJyZW07XHJcbiRleHRyYS1zbWFsbC1zcGFjZTogJHNwYWNlciAqIC4yNTtcclxuJHNtYWxsLXNwYWNlOiAkc3BhY2VyICogLjU7XHJcbiRtZWRpdW0tc3BhY2U6ICRzcGFjZXI7XHJcbiRsYXJnZS1zcGFjZTogJHNwYWNlciAqIDEuNTtcclxuJGV4dHJhLWxhcmdlLXNwYWNlOiAkc3BhY2VyICogMztcclxuXHJcbi8vZm9ybXNcclxuJGlucHV0LWJnOiAkd2hpdGU7XHJcbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAxcHg7XHJcbiRpbnB1dC1ib3JkZXItY29sb3I6ICRncmF5LTIwMDtcclxuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogJGdyYXktMzAwO1xyXG4kaW5wdXQtZm9jdXMtY29sb3I6ICRibGFjaztcclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkZ3JheS02MDA7XHJcbiRpbnB1dC1ib3gtc2hhZG93OiBub25lO1xyXG4kaW5wdXQtZ3JvdXAtYnRuLWJvcmRlci1jb2xvcjogaW5pdGlhbDtcclxuXHJcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6IDEuNTtcclxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6IDAuNjI1cmVtO1xyXG4kaW5wdXQtYnRuLXBhZGRpbmcteDogMS4xMjVyZW07XHJcblxyXG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtOiAxLjU7XHJcbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAwLjVyZW07XHJcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAxcmVtO1xyXG5cclxuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogMS41O1xyXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogMS4xNXJlbTtcclxuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6IDIuNHJlbTtcclxuXHJcbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XHJcbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICgkZm9udC1zaXplLXNtICogJGlucHV0LWJ0bi1saW5lLWhlaWdodCkgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcclxuJGlucHV0LWhlaWdodDogY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9ICsgI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pICFkZWZhdWx0O1xyXG5cclxuLy9jdXN0b20gZm9ybXNcclxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogMjdweDtcclxuJGN1c3RvbS1jb250cm9sLXNwYWNlci15OiAxMHB4O1xyXG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6IDA7XHJcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogMS4xODhyZW07XHJcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6IHRyYW5zcGFyZW50O1xyXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6IDcwJSA3MCUgIWRlZmF1bHQ7XHJcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4ICRncmF5LTIwMDtcclxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZzogJGdyYXktMTAwO1xyXG4kY3VzdG9tLWNvbnRyb2wtZGVzY3JpcHRpb24tZGlzYWJsZWQtY29sb3I6ICRncmF5LTEwMDtcclxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnOiAkZ3JheS04MDA7XHJcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogbm9uZTtcclxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICRncmF5LTgwMDtcclxuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmODtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlCbGJtTnZaR2x1WnowaWRYUm1MVGdpUHo0S1BITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGh0Ykc1ek9uaHNhVzVyUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMM2hzYVc1cklpQjJaWEp6YVc5dVBTSXhMakVpSUhacFpYZENiM2c5SWpBZ01DQXhNamtnTVRJNUlpQmxibUZpYkdVdFltRmphMmR5YjNWdVpEMGlibVYzSURBZ01DQXhNamtnTVRJNUlpQjNhV1IwYUQwaU1UWndlQ0lnYUdWcFoyaDBQU0l4Tm5CNElqNEtJQ0E4Wno0S0lDQWdJRHh3WVhSb0lHUTlJbTB4TWpFdU15d3pOQzQyWXkweExqWXRNUzQyTFRRdU1pMHhMall0TlM0NExEQnNMVFV4TERVeExqRXROVEV1TVMwMU1TNHhZeTB4TGpZdE1TNDJMVFF1TWkweExqWXROUzQ0TERBdE1TNDJMREV1TmkweExqWXNOQzR5SURBc05TNDRiRFV6TGprc05UTXVPV013TGpnc01DNDRJREV1T0N3eExqSWdNaTQ1TERFdU1pQXhMREFnTWk0eExUQXVOQ0F5TGprdE1TNHliRFV6TGprdE5UTXVPV014TGpjdE1TNDJJREV1TnkwMExqSWdNQzR4TFRVdU9Ib2lJR1pwYkd3OUlpTXdNREF3TURBaUx6NEtJQ0E4TDJjK0Nqd3ZjM1puUGdvPVwiKTtcclxuJGN1c3RvbS1zZWxlY3QtYmc6ICRncmF5LTIwMDtcclxuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICRncmF5LTYwMDtcclxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDA7XHJcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6IG5vbmU7XHJcblxyXG4vL21vZGFsc1xyXG4kbW9kYWwtbGc6IDE0NTBweDtcclxuJG1vZGFsLW1kOiAxMDAwcHg7XHJcbiRtb2RhbC1zbTogNTAwcHg7XHJcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogMzBweDtcclxuJG1vZGFsLWlubmVyLXBhZGRpbmc6IDMwcHg7XHJcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6IG5vbmU7XHJcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6IG5vbmU7XHJcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogMDtcclxuXHJcbi8vZHJvcGRvd25zXHJcbiRkcm9wZG93bi1taW4td2lkdGg6IDIwMHB4O1xyXG4kZHJvcGRvd24tcGFkZGluZy15OiA1cHg7XHJcbiRkcm9wZG93bi1zcGFjZXI6IDA7XHJcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6IDA7XHJcbiRkcm9wZG93bi1iZzogd2hpdGU7XHJcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAwIDVweCA0M3B4IHJnYmEoMCwgMCwgMCwgMC4xMSk7XHJcbiRlbmFibGUtc2hhZG93czogdHJ1ZTtcclxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAxMHB4O1xyXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6IDE1cHg7XHJcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAkZ3JheS02MDA7XHJcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiB0cmFuc3BhcmVudDtcclxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcclxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiB0cmFuc3BhcmVudDtcclxuXHJcbi8vZ3JpZCBleGFtcGxlXHJcbiRncmlkLWNvbHVtbnM6IDEyO1xyXG4kZ3JpZC1ndXR0ZXItd2lkdGg6IDMwcHg7XHJcblxyXG4kZ3JpZC1icmVha3BvaW50czogKFxyXG4gIC8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXHJcbiAgeHM6IDAsXHJcbiAgLy8gU21hbGwgc2NyZWVuIC8gcGhvbmVcclxuICBzbTogNTc2cHgsXHJcbiAgLy8gTWVkaXVtIHNjcmVlbiAvIHRhYmxldFxyXG4gIG1kOiA3NjhweCxcclxuICAvLyBMYXJnZSBzY3JlZW4gLyBkZXNrdG9wXHJcbiAgbGc6IDk5MnB4LFxyXG4gIC8vIEV4dHJhIGxhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxyXG4gIHhsOiAxMjAwcHgsXHJcbiAgLy8gRXh0cmEgbGFyZ2Ugc2NyZWVuIDIgLyB3aWRlIGRlc2t0b3BcclxuICB4eGw6IDE4NzBweFxyXG4pO1xyXG5cclxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXHJcbiAgc206IDYxMHB4LFxyXG4gIG1kOiA3NjBweCxcclxuICBsZzogOTkwcHgsXHJcbiAgeGw6IDExNzBweCxcclxuICB4eGw6IDE4NDBweFxyXG4pO1xyXG5cclxuLy9DdXN0b20gbWVkaWEgcG9pbnRcclxuJHNjcmVlbi1jdXN0b20tbWluOiAxODAwcHg7XHJcbiRzY3JlZW4tY3VzdG9tLW1heDogMTc5OXB4O1xyXG5cclxuLy9pbnB1dHNcclxuJGlucHV0LWhlaWdodDogNDdweDtcblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL0M6L09wZW5TZXJ2ZXIvZG9tYWlucy9sb2NhbGhvc3QvQmlrZUlkb2wvdGhlbWVzL3RoZW1lMTUxOS9fZGV2L21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvQzovT3BlblNlcnZlci9kb21haW5zL2xvY2FsaG9zdC9CaWtlSWRvbC90aGVtZXMvdGhlbWUxNTE5L19kZXYvY3NzL3BhcnRpYWxzL192YXJpYWJsZXMuc2NzcyIsIi8vbWl4aW4gZm9yIGljb25zIC0gQGluY2x1ZGUgYWRkSWNvbignXFxmMDIxJywgZm9udC1zaXplLCBsaW5lLWhlaWdodCwgY29sb3IsIG1hcmdpbi1sZWZ0LCBtYXJnaW4tcmlnaHQsIHZlcnRpY2FsLWFsaWduKVxyXG5AbWl4aW4gYWRkSWNvbigkY29udGVudCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkY29sb3IsICRtYXJnaW4tbGVmdCwgJG1hcmdpbi1yaWdodCwgJHZlcnRpY2FsLWFsaWduKSB7XHJcbiAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XHJcbiAgY29udGVudDogJGNvbnRlbnQ7XHJcbiAgQGlmICRmb250LXNpemUgIT0gZm9udC1zaXplIHtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcclxuICB9XHJcbiAgQGlmICRsaW5lLWhlaWdodCAhPSBsaW5lLWhlaWdodCB7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xyXG4gIH1cclxuICBAaWYgJGNvbG9yICE9IGNvbG9yIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgfVxyXG4gIEBpZiAkbWFyZ2luLWxlZnQgIT0gbWFyZ2luLWxlZnQge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW4tbGVmdDtcclxuICB9XHJcbiAgQGlmICRtYXJnaW4tcmlnaHQgIT0gbWFyZ2luLXJpZ2h0IHtcclxuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbi1yaWdodDtcclxuICB9XHJcbiAgQGlmICR2ZXJ0aWNhbC1hbGlnbiAhPSB2ZXJ0aWNhbC1hbGlnbiB7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogJHZlcnRpY2FsLWFsaWduO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGFkZExpbmVhckljb25zKCRjb250ZW50LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRjb2xvciwgJG1hcmdpbi1sZWZ0LCAkbWFyZ2luLXJpZ2h0LCAkdmVydGljYWwtYWxpZ24pIHtcclxuICBmb250LWZhbWlseTogJ0xpbmVhcmljb25zJztcclxuICBjb250ZW50OiAkY29udGVudDtcclxuICBAaWYgJGZvbnQtc2l6ZSAhPSBmb250LXNpemUge1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xyXG4gIH1cclxuICBAaWYgJGxpbmUtaGVpZ2h0ICE9IGxpbmUtaGVpZ2h0IHtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcbiAgfVxyXG4gIEBpZiAkY29sb3IgIT0gY29sb3Ige1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICB9XHJcbiAgQGlmICRtYXJnaW4tbGVmdCAhPSBtYXJnaW4tbGVmdCB7XHJcbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbi1sZWZ0O1xyXG4gIH1cclxuICBAaWYgJG1hcmdpbi1yaWdodCAhPSBtYXJnaW4tcmlnaHQge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luLXJpZ2h0O1xyXG4gIH1cclxuICBAaWYgJHZlcnRpY2FsLWFsaWduICE9IHZlcnRpY2FsLWFsaWduIHtcclxuICAgIHZlcnRpY2FsLWFsaWduOiAkdmVydGljYWwtYWxpZ247XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYm94LXNoYWRvdyB7XHJcbiAgYm94LXNoYWRvdzogIDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG59XHJcblxyXG5AbWl4aW4gYm94LXNoYWRvdy1saWdodCB7XHJcbiAgYm94LXNoYWRvdzogMnB4IDJweCA0cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxufVxyXG5cclxuQG1peGluIGJveC1zaGFkb3ctY3VzdG9tIHtcclxuICBib3gtc2hhZG93OiAwcHggM3B4IDI3cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNCk7XHJcbn1cclxuXHJcbkBtaXhpbiBib3gtc2hhZG93LXByaW1hcnkge1xyXG4gIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xyXG59XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vbW9kdWxlcy9qeG1lZ2FtZW51L3ZpZXdzL2Nzcy9DOi9PcGVuU2VydmVyL2RvbWFpbnMvbG9jYWxob3N0L0Jpa2VJZG9sL3RoZW1lcy90aGVtZTE1MTkvX2Rldi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL0M6L09wZW5TZXJ2ZXIvZG9tYWlucy9sb2NhbGhvc3QvQmlrZUlkb2wvdGhlbWVzL3RoZW1lMTUxOS9fZGV2L2Nzcy9wYXJ0aWFscy9fbWl4aW5zLnNjc3MiLCJAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL0M6L09wZW5TZXJ2ZXIvZG9tYWlucy9sb2NhbGhvc3QvQmlrZUlkb2wvdGhlbWVzL3RoZW1lMTUxOS9fZGV2L21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvQzovT3BlblNlcnZlci9kb21haW5zL2xvY2FsaG9zdC9CaWtlSWRvbC90aGVtZXMvdGhlbWUxNTE5L19kZXYvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyJdLCJzb3VyY2VSb290IjoiIn0=*/