@charset "UTF-8";
@font-face {
  font-family: 'MyriadPro-Regular';
  src: url("../fonts/MyriadPro-Regular.eot");
  src: url("../fonts/MyriadPro-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/MyriadPro-Regular.otf") format("opentype"), url("../fonts/MyriadPro-Regular.woff") format("woff"), url("../fonts/MyriadPro-Regular.ttf") format("truetype"), url("../fonts/MyriadPro-Regular.svg#MyriadPro-Regular") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'MyriadPro-Light';
  src: url("../fonts/MyriadPro-Light.eot");
  src: url("../fonts/MyriadPro-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/MyriadPro-Light.woff") format("woff"), url("../fonts/MyriadPro-Light.ttf") format("truetype"), url("MyriadPro-Light.svg#MyriadPro-Light") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'MyriadPro-Bold';
  src: url("../fonts/myriadpro-bold-webfont.eot");
  src: url("../fonts/myriadpro-bold-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/myriadpro-bold-webfont.woff") format("woff"), url("../fonts/myriadpro-bold-webfont.ttf") format("truetype"), url("myriadpro-bold-webfont.svg#myriadpro-bold-webfont") format("svg");
  font-weight: normal;
  font-style: normal; }

/*
CORES
*/
/*
######  ####### #     #     #####  #     #    #    ######  ####### #     #
#     # #     #  #   #     #     # #     #   # #   #     # #     # #  #  #
#     # #     #   # #      #       #     #  #   #  #     # #     # #  #  #
######  #     #    #        #####  ####### #     # #     # #     # #  #  #
#     # #     #   # #            # #     # ####### #     # #     # #  #  #
#     # #     #  #   #     #     # #     # #     # #     # #     # #  #  #
######  ####### #     #     #####  #     # #     # ######  #######  ## ##
*/
/* @include box-shadow(1px,1px,1px,0, #fff, true); */
/*
######  ####### #     # #     # ######  ####### ######
#     # #     # #     # ##    # #     # #       #     #
#     # #     # #     # # #   # #     # #       #     #
######  #     # #     # #  #  # #     # #####   #     #
#   #   #     # #     # #   # # #     # #       #     #
#    #  #     # #     # #    ## #     # #       #     #
#     # #######  #####  #     # ######  ####### ######

*/
/*
#####  ######     #    ######  ### ####### #     # #######
#     # #     #   # #   #     #  #  #       ##    #    #
#       #     #  #   #  #     #  #  #       # #   #    #
#  #### ######  #     # #     #  #  #####   #  #  #    #
#     # #   #   ####### #     #  #  #       #   # #    #
#     # #    #  #     # #     #  #  #       #    ##    #
#####  #     # #     # ######  ### ####### #     #    #

*/
/*
#    # ####### #     # ####### ######     #    #     # #######  #####
#   #  #        #   #  #       #     #   # #   ##   ## #       #     #
#  #   #         # #   #       #     #  #   #  # # # # #       #
###    #####      #    #####   ######  #     # #  #  # #####    #####
#  #   #          #    #       #   #   ####### #     # #             #
#   #  #          #    #       #    #  #     # #     # #       #     #
#    # #######    #    #       #     # #     # #     # #######  #####

*/
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-moz-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-ms-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-o-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

/*
####### ######     #    #     #  #####  ### ####### ### ####### #     #  #####
   #    #     #   # #   ##    # #     #  #     #     #  #     # ##    # #     #
   #    #     #  #   #  # #   # #        #     #     #  #     # # #   # #
   #    ######  #     # #  #  #  #####   #     #     #  #     # #  #  #  #####
   #    #   #   ####### #   # #       #  #     #     #  #     # #   # #       #
   #    #    #  #     # #    ## #     #  #     #     #  #     # #    ## #     #
   #    #     # #     # #     #  #####  ###    #    ### ####### #     #  #####

*/
.text-center {
  text-align: center; }

.sprite {
  background: url(../img/sprite.png) no-repeat;
  display: block; }

.fl {
  float: left; }

.fr {
  float: right; }

.nomarginleft {
  margin-left: 0 !important; }

ul {
  margin: 0;
  padding: 0; }

li {
  list-style: none; }

a {
  display: block;
  text-decoration: none;
  color: inherit; }

h1, h2, h3, h4 {
  line-height: 1.2;
  margin: 5px 0 0 0;
  font-weight: 500; }

h1, h4 {
  font-family: 'MyriadPro-Light';
  font-size: 21px;
  color: #008fe9; }

/*
WRAPPER LEAD
*/
.wrapper.lead {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 68%;
  font-size: 1.4em;
  text-align: center;
  margin-top: 5%; }
  @media (max-width: 480px) {
    .wrapper.lead {
      width: 90%;
      font-size: 1.490em; } }
  @media (max-width: 820px) {
    .wrapper.lead {
      width: 80%;
      font-size: 1.490em; } }
  .wrapper.lead h2 {
    font-size: 1.5em;
    color: #00447c;
    margin-bottom: 5%; }
  .section-principais-premios .wrapper.lead h2 {
    color: #551c50;
    margin-bottom: 5%; }

/*
#  ####   ####  #    # ######  ####
# #    # #    # ##   # #      #
# #      #    # # #  # #####   ####
# #      #    # #  # # #           #
# #    # #    # #   ## #      #    #
#  ####   ####  #    # ######  ####
*/
ul li.icon-file-pdf-darkblue {
  background: url(../img/ico-pdf-darkblue.png) 0 0 no-repeat; }

ul li.icon-file-pdf-green {
  background: url(../img/ico-pdf-green.png) 0 0 no-repeat; }

ul li.icon-file-xls-grey, ul li.icon-file-xlsx-grey {
  background: url(../img/ico-xls-grey.png) 0 0 no-repeat; }

ul li.icon-file-doc-grey, ul li.icon-file-docx-grey, ul li.icon-file-txt-grey {
  background: url(../img/ico-doc-grey.png) 0 0 no-repeat; }

ul li.icon-file-pdf-grey {
  background: url(../img/ico-pdf-grey.png) 0 0 no-repeat; }

ul li.icon-file-xls-lightblue, ul li.icon-file-xlsx-lightblue {
  background: url(../img/ico-xls-lightblue.png) 0 0 no-repeat; }

ul li.icon-file-doc-lightblue, ul li.icon-file-docx-lightblue, ul li.icon-file-txt-lightblue {
  background: url(../img/ico-doc-lightblue.png) 0 0 no-repeat; }

ul li.icon-file-pdf-lightblue {
  background: url(../img/ico-pdf-lightblue.png) 0 0 no-repeat; }

ul li.icon-file-pdf-lightgreen {
  background: url("../img/img-icones-arquivos_03.png") no-repeat -2px -2px;
  width: 40px;
  height: 49px; }

.icon-file-pdf-darkblue {
  background: url(../img/img-icones-arquivos_03.png) no-repeat -3px -57px; }

.icon-file-xls-darkblue, .icon-file-xlsx-darkblue {
  background: url(../img/img-icones-arquivos_03.png) no-repeat -59px -57px; }

.icon-file-doc-darkblue, .icon-file-docx-darkblue, .icon-file-txt-darkblue {
  background: url(../img/img-icones-arquivos_03.png) no-repeat -111px -57px; }

.icon-file-xls-grey, .icon-file-xlsx-grey {
  background: url(../img/ico-xls-grey.png) 0 0 no-repeat; }

.icon-file-doc-grey, .icon-file-docx-grey, .icon-file-txt-grey {
  background: url(../img/ico-doc-grey.png) 0 0 no-repeat; }

.icon-file-pdf-grey {
  background: url(../img/ico-pdf-grey.png) 0 0 no-repeat; }

.icon-file-xls-lightblue, .icon-file-xlsx-lightblue {
  background: url(../img/ico-xls-lightblue.png) 0 0 no-repeat; }

.icon-file-doc-lightblue, .icon-file-docx-lightblue, .icon-file-txt-lightblue {
  background: url(../img/ico-doc-lightblue.png) 0 0 no-repeat; }

.icon-file-pdf-lightblue {
  background: url(../img/ico-pdf-lightblue.png) 0 0 no-repeat; }

.icon-file-pdf-lightgreen {
  background: url(../img/img-icones-arquivos_03.png) no-repeat -2px -2px;
  width: 94px;
  height: 54px; }

.icon-file-xls-lightgreen, .icon-file-xlsx-lightgreen {
  background: url(../img/img-icones-arquivos_03.png) no-repeat -111px -2px;
  width: 94px;
  height: 54px; }

.icon-file-doc-lightgreen, .icon-file-docx-lightgreen, .icon-file-txt-lightgreen {
  background: url(../img/img-icones-arquivos_03.png) no-repeat -99px -2px;
  width: 94px;
  height: 54px; }

/*
####  ######  ####  ##### #  ####  #    #
#      #      #    #   #   # #    # ##   #
####  #####  #        #   # #    # # #  #
# #      #        #   # #    # #  # #
#    # #      #    #   #   # #    # #   ##
####  ######  ####    #   #  ####  #    #

*/
.indicacaosection {
  position: fixed;
  z-index: 999;
  top: 0;
  right: 0;
  display: block; }
  .indicacaosection:hover .indicacao {
    background-position: -363px -127px; }
    .indicacaosection:hover .indicacao.active {
      background-position: -363px -114px; }
  @media (max-width: 480px) {
    .indicacaosection {
      display: none; } }
  @media (max-width: 820px) {
    .indicacaosection {
      display: none; } }
  .indicacaosection ul li {
    width: auto;
    height: 20px; }
  .indicacaosection .active .indicacao {
    background-position: -363px -114px; }
  .indicacaosection .indicacao {
    background-position: -1000px -1000px;
    width: 12px;
    height: 11px;
    padding: 0;
    position: relative;
    top: 3px; }
  .indicacaosection .qualsection {
    display: none;
    background: url(../img/bg-indicacao.png) repeat;
    width: auto;
    color: #007dc0;
    font-size: 14px;
    font-family: 'MyriadPro-Light', sans-serif;
    text-align: right;
    font-weight: bold;
    margin-right: 10px;
    padding: 0 10px; }
    .indicacaosection .qualsection.active {
      display: block; }

/*

#    ######     #     #####
# #   #     #   # #   #     #
#   #  #     #  #   #  #
#     # ######  #     #  #####
####### #     # #######       #
#     # #     # #     # #     #
#     # ######  #     #  #####

*/
.abas ul {
  width: 100%; }
  .abas ul li {
    float: left;
    width: -webkit-calc(50% - 0.5%);
    width: calc(50% - 0.5%);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    @media (max-width: 480px) {
      .abas ul li {
        width: 100% !important;
        margin-bottom: 1%; } }
    .abas ul li:first-child {
      margin-right: 1%; }
      @media (max-width: 480px) {
        .abas ul li:first-child {
          margin-right: 0; } }
    .abas ul li a {
      width: 100%;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      padding: 20px;
      background-color: #9c9c9c;
      font-family: 'MyriadPro-Light',sans-serif;
      font-size: 1em;
      color: #FFFFFF;
      -webkit-transition: all 0.5s ease;
      -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
      -o-transition: all 0.5s ease;
      transition: all 0.5s ease; }
      .abas ul li a.active {
        background-color: #00447c;
        color: #FFFFFF;
        font-family: "MyriadPro-Bold", sans-serif; }
      .abas ul li a .sprite {
        margin-top: 2%; }
    .ie .abas ul li {
      width: -webkit-calc(49% - 0.5%);
      width: calc(49% - 0.5%); }

/*

######  ####### ####### ####### #######  #####
#     # #     #    #    #     # #       #     #
#     # #     #    #    #     # #       #
######  #     #    #    #     # #####    #####
#     # #     #    #    #     # #             #
#     # #     #    #    #     # #       #     #
######  #######    #    ####### #######  #####

*/
.btn {
  margin: 25px auto 0;
  text-align: center;
  font-size: 16px;
  position: relative;
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-box-shadow: 0px 9px 9px -6px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0px 9px 9px -6px rgba(0, 0, 0, 0.5);
  box-shadow: 0px 9px 9px -6px rgba(0, 0, 0, 0.5);
  padding: 2.5% 5%; }
  @media (max-width: 480px) {
    .btn {
      padding: 5% 10%; } }
  .btn span {
    top: 28px;
    right: 18px;
    position: absolute; }
    @media (max-width: 480px) {
      .btn span {
        display: none; } }
    @media (max-width: 820px) {
      .btn span {
        display: none; } }
    .btn span.setabranca-pq {
      background-position: -181px -25px;
      width: 5px;
      height: 8px; }

input[type=submit] {
  border: none; }

.btn-darkblue {
  color: #FFFFFF;
  background-color: #00657e; }

.btn-darkblue1 {
  color: #FFFFFF;
  background-color: #00447c; }

.btn-darkgrey {
  color: #FFFFFF;
  background-color: #4e5c63; }

.btn-darkgrey2 {
  color: #FFFFFF;
  background-color: #43515a; }

.btn-lightblue {
  color: #FFFFFF;
  background-color: #008ed4; }

.btn-lightgreen {
  color: #FFFFFF;
  background-color: #00a378; }

.btn-purple {
  color: #FFFFFF;
  background-color: #551c50; }

/*

######  ######  ####### #     # ### #######  #####
#     # #     # #       ##   ##  #  #     # #     #
#     # #     # #       # # # #  #  #     # #
######  ######  #####   #  #  #  #  #     #  #####
#       #   #   #       #     #  #  #     #       #
#       #    #  #       #     #  #  #     # #     #
#       #     # ####### #     # ### #######  #####

*/
.section-principais-premios {
  margin: 5% 0 0; }
  .section-principais-premios p {
    font-size: 16px; }
  .section-principais-premios .bg-trofeu {
    width: 100%;
    min-height: 391px; }
    @media (max-width: 480px) {
      .section-principais-premios .bg-trofeu {
        background: none; } }
    @media (max-width: 820px) {
      .section-principais-premios .bg-trofeu {
        background: none; } }
    .section-principais-premios .bg-trofeu div.trofeu {
      width: 35%;
      min-height: 343px;
      float: left; }
      @media (max-width: 480px) {
        .section-principais-premios .bg-trofeu div.trofeu {
          display: none; } }
      @media (min-width: 820px) and (max-width: 1200px) {
        .section-principais-premios .bg-trofeu div.trofeu {
          display: none; } }
      @media (max-width: 820px) {
        .section-principais-premios .bg-trofeu div.trofeu {
          display: none; } }
    .section-principais-premios .bg-trofeu div.slider {
      width: 65%;
      float: left; }
      @media (max-width: 480px) {
        .section-principais-premios .bg-trofeu div.slider {
          width: 100%; } }
      @media (min-width: 820px) and (max-width: 1200px) {
        .section-principais-premios .bg-trofeu div.slider {
          width: 100%; } }
      @media (max-width: 820px) {
        .section-principais-premios .bg-trofeu div.slider {
          width: 100%; } }
  .section-principais-premios .list-premios {
    min-height: 343px;
    color: #fff;
    background: #f2f2f3; }
    @media (max-width: 480px) {
      .section-principais-premios .list-premios {
        width: 100%; } }
    @media (max-width: 820px) {
      .section-principais-premios .list-premios {
        width: 100%; } }
    .section-principais-premios .list-premios .owl-controls {
      width: 90%;
      margin: 0 auto 0 auto; }
      @media (max-width: 480px) {
        .section-principais-premios .list-premios .owl-controls {
          padding-bottom: 20px; } }
      .section-principais-premios .list-premios .owl-controls .owl-page.active span {
        background-position: -182px -77px; }
      .section-principais-premios .list-premios .owl-controls .owl-page span {
        background: url(../img/sprite.png) no-repeat -197px -80px;
        display: block; }
      .section-principais-premios .list-premios .owl-controls .owl-buttons .owl-prev {
        background: url(../img/sprite.png) no-repeat -174px -91px;
        left: 0; }
      .section-principais-premios .list-premios .owl-controls .owl-buttons .owl-next {
        background: url(../img/sprite.png) no-repeat -185px -91px;
        right: 0; }
    @media (min-width: 1200px) {
      .section-principais-premios .list-premios .owl-wrapper-outer .owl-item {
        width: 321px !important; } }
    .section-principais-premios .list-premios .owl-wrapper-outer .owl-item div {
      margin: 28px;
      width: 69%; }
      .section-principais-premios .list-premios .owl-wrapper-outer .owl-item div h3 {
        margin: 0;
        color: #551c50;
        text-align: left;
        font-weight: bold;
        font-size: 18px; }
      .section-principais-premios .list-premios .owl-wrapper-outer .owl-item div dl dd {
        margin-left: 0;
        font-weight: normal;
        text-align: left;
        color: #551c50; }
      .section-principais-premios .list-premios .owl-wrapper-outer .owl-item div dl dt {
        font-weight: bold;
        margin-top: 12px;
        text-align: left;
        color: #551c50; }
  @media screen and (max-width: 320px) {
    .section-principais-premios {
      margin-top: 40px; }
      .section-principais-premios .list-premios {
        margin-top: 10px; } }
  @media screen and (min-width: 768px) {
    .section-principais-premios p {
      font-size: 18px; }
    .section-principais-premios .list-premios .owl-controls {
      width: 47%; }
    .section-principais-premios .list-premios .owl-item div {
      margin: 33px;
      text-align: left; } }
  @media screen and (min-width: 1280px) {
    .section-principais-premios .list-premios .owl-controls {
      width: 27%; } }

/*
    #####  ### ######  ####### #     # ####### #     # #     #
    #     #  #  #     # #       ##   ## #       ##    # #     #
    #        #  #     # #       # # # # #       # #   # #     #
    #####   #  #     # #####   #  #  # #####   #  #  # #     #
    #  #  #     # #       #     # #       #   # # #     #
    #     #  #  #     # #       #     # #       #    ## #     #
    #####  ### ######  ####### #     # ####### #     #  #####

    */
.sidemenu {
  width: 100%;
  margin: 0 auto 1%;
  position: relative; }
  .sidemenu .sm-menu {
    background: #ffffff;
    box-sizing: border-box;
    width: calc(34% - 0.1%);
    float: left; }
    @media (max-width: 480px) {
      .sidemenu .sm-menu {
        width: 100%; } }
    .sidemenu .sm-menu ul {
      width: 100%;
      margin: 0;
      padding: 0; }
      .sidemenu .sm-menu ul li {
        display: table;
        width: 100%;
        list-style: none;
        margin: 0 0 0.5%;
        padding: 0; }
        .sidemenu .sm-menu ul li a {
          background: #668fb0 url(../img/btn-arrow-white-right.png) right 5% center no-repeat;
          box-sizing: border-box;
          color: #ffffff;
          display: table-cell;
          font-size: 1.09em;
          width: 100%;
          height: 68px;
          margin: 0;
          vertical-align: middle;
          padding: 3%; }
          @media (max-width: 820px) {
            .sidemenu .sm-menu ul li a {
              padding: 3% 10%; } }
          .sidemenu .sm-menu ul li a.active {
            background-color: #00447c; }
  .sidemenu .sm-cont {
    min-height: -webkit-calc(68px * 5 + 7px);
    min-height: calc(68px * 5 + 7px);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background: #FFFFFF;
    border: 1px solid #668fb0;
    width: 66%;
    padding: 2%;
    float: right; }
    @media (max-width: 480px) {
      .sidemenu .sm-cont {
        width: 100%;
        padding: 8%; } }
    .sidemenu .sm-cont .btnmobile, .sidemenu .sm-cont .titlemobile {
      display: none; }
    .sidemenu .sm-cont ul {
      font-size: 1.1em; }
      .sidemenu .sm-cont ul li {
        list-style: none;
        margin: 0 0 0.5%;
        padding: 0; }
        .sidemenu .sm-cont ul li:last-child {
          margin: 0; }
        .sidemenu .sm-cont ul li ul {
          font-size: 1em;
          margin: 0 8%; }
          .sidemenu .sm-cont ul li ul li {
            list-style: circle; }
            .sidemenu .sm-cont ul li ul li ul {
              font-size: 1em; }
              .sidemenu .sm-cont ul li ul li ul li {
                list-style: disc; }

/*
    #####     #    ### #     #    #     #####
    #     #   # #    #   #   #    # #   #     #
    #        #   #   #    # #    #   #  #
    #       #     #  #     #    #     #  #####
    #       #######  #    # #   #######       #
    #     # #     #  #   #   #  #     # #     #
    #####  #     # ### #     # #     #  #####
    */
.organizacao {
  margin: 0 auto 30px; }
  .organizacao .org-box {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: -webkit-calc(31.4% - 2px);
    width: calc(31.4% - 2px);
    padding: 3% 3%;
    border: 1px solid #00447c;
    float: left; }
    .organizacao .org-box.two-cols {
      width: -webkit-calc(50% - 1.5%);
      width: calc(50% - 1.5%); }
      .organizacao .org-box.two-cols:first-child {
        margin: 0 3% 0 0; }
      .organizacao .org-box.two-cols:nth-child(3n+2) {
        margin: 0; }
    @media (max-width: 480px) {
      .organizacao .org-box {
        width: 99% !important;
        padding: 5%; } }
    @media (max-width: 820px) {
      .organizacao .org-box {
        width: 99% !important;
        height: auto !important; } }
    .organizacao .org-box p {
      color: #00447c;
      font-size: 1.1em; }
    .organizacao .org-box:nth-child(3n+2) {
      margin: 0 3%; }
      @media (max-width: 480px) {
        .organizacao .org-box:nth-child(3n+2) {
          margin: 3% 0; } }
      @media (max-width: 820px) {
        .organizacao .org-box:nth-child(3n+2) {
          margin: 3% 0; } }
  .organizacao h3 {
    color: #00447c;
    font-family: "MyriadPro-Light", sans-serif;
    font-size: 1.4em;
    margin-bottom: 15px; }

.menu-footer {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 999; }
  @media (max-width: 820px) {
    .menu-footer {
      bottom: 0;
      width: 739px; } }
  @media (min-width: 468px) and (max-width: 820px) {
    .menu-footer {
      bottom: 0;
      width: 100%; } }
  @media (max-width: 480px) {
    .menu-footer {
      bottom: -6px;
      width: 100%; } }
  .menu-footer .topo {
    height: 70px;
    position: relative; }
    @media (max-width: 480px) {
      .menu-footer .topo {
        height: 63px; } }
    .menu-footer .topo .camada {
      background-color: #84caee;
      height: 54px;
      width: 100%;
      position: absolute;
      margin-top: 1%;
      -webkit-border-radius: 63%/127% 3% 0% 0%;
      -moz-border-radius: 63%/127% 3% 0% 0%;
      border-radius: 63%/127% 3% 0% 0%; }
      @media (max-width: 820px) {
        .menu-footer .topo .camada {
          margin-top: 2%; } }
    .menu-footer .topo .camada2 {
      background-color: #00a8de;
      height: 50px;
      width: 100%;
      margin-top: 2%;
      position: absolute;
      -webkit-border-radius: 64%/117% 1% 0% 0%;
      -moz-border-radius: 64%/117% 1% 0% 0%;
      border-radius: 64%/117% 1% 0% 0%; }
      @media (max-width: 820px) {
        .menu-footer .topo .camada2 {
          -webkit-border-radius: 64%/130% 1% 0% 0%;
          -moz-border-radius: 64%/130% 1% 0% 0%;
          border-radius: 64%/130% 1% 0% 0%;
          margin-top: 3%; } }
    .menu-footer .topo .camada3 {
      background-color: #048acc;
      height: 50px;
      width: 100%;
      margin-top: 3%;
      position: absolute;
      z-index: 999;
      -webkit-border-radius: 61%/95% 1% 0% 0%;
      -moz-border-radius: 61%/95% 1% 0% 0%;
      border-radius: 61%/95% 1% 0% 0%; }
      @media (max-width: 820px) {
        .menu-footer .topo .camada3 {
          -webkit-border-radius: 55%/110% 1% 0% 0%;
          -moz-border-radius: 55%/110% 1% 0% 0%;
          border-radius: 55%/110% 1% 0% 0%;
          margin-top: 4%; } }
      .menu-footer .topo .camada3 #acao {
        height: 35px; }
      .menu-footer .topo .camada3 .menu {
        float: right;
        margin: 1% 4%;
        color: white;
        font-family: "MyriadPro-Regular", sans-serif; }
        @media (max-width: 820px) {
          .menu-footer .topo .camada3 .menu {
            margin: 1% 5%; } }
        @media (max-width: 480px) {
          .menu-footer .topo .camada3 .menu {
            margin: 1% 8%; } }
      .menu-footer .topo .camada3 .triangle {
        color: #FFFFFF;
        float: right;
        width: 0;
        height: 0;
        border-left: 8px solid transparent;
        border-bottom: 8px solid #FFFFFF;
        border-right: 9px solid transparent;
        margin: 1.5% -10% 0 0; }
        @media (max-width: 820px) {
          .menu-footer .topo .camada3 .triangle {
            margin: 1.5% -14% 0 0; } }
        @media (max-width: 480px) {
          .menu-footer .topo .camada3 .triangle {
            margin: 2.5% -25% 0 0; } }
        .menu-footer .topo .camada3 .triangle.baixo {
          color: #FFFFFF;
          float: right;
          width: 0;
          height: 0;
          border-left: 9px solid transparent;
          border-right: 9px solid transparent;
          border-top: 8px solid #FFFFFF;
          border-bottom: 0px solid #FFFFFF;
          margin: 1.5% -10% 0 0; }
          @media (max-width: 820px) {
            .menu-footer .topo .camada3 .triangle.baixo {
              margin: 1.5% -14% 0 0; } }
          @media (max-width: 480px) {
            .menu-footer .topo .camada3 .triangle.baixo {
              margin: 2.5% -25% 0 0; } }
  .menu-footer .corpo {
    display: none;
    background-color: #048acc;
    height: 100%;
    overflow: hidden;
    width: 100%;
    position: relative; }
    .menu-footer .corpo div {
      margin-left: 5%; }
    .menu-footer .corpo .nomelista {
      padding: 1% 0;
      font-size: 14px;
      color: #00447c;
      font-family: "MyriadPro-Regular", sans-serif;
      width: 30%;
      float: left;
      margin: auto; }
      @media (max-width: 480px) {
        .menu-footer .corpo .nomelista {
          display: block;
          width: 95%;
          padding: 2% 0; }
          .menu-footer .corpo .nomelista .plus {
            background: #00447c;
            display: block;
            height: 10px;
            position: relative;
            width: 2px;
            float: right; }
            .menu-footer .corpo .nomelista .plus:after {
              background: #00447c;
              content: "";
              height: 2px;
              left: 15px;
              position: absolute;
              top: 40px;
              width: 10px;
              margin-top: -36px;
              margin-left: -19px; }
            .menu-footer .corpo .nomelista .plus.minus {
              background: #00447c;
              content: "";
              height: 2px;
              position: relative;
              width: 0;
              float: right; } }
      .menu-footer .corpo .nomelista a {
        font-size: 12px;
        color: #00447c;
        font-family: "MyriadPro-Regular", sans-serif; }
      .menu-footer .corpo .nomelista ul {
        width: -webkit-calc(100%);
        width: calc(100%);
        float: left;
        padding: 0 2%;
        margin: 3% 0 0; }
        @media (max-width: 480px) {
          .menu-footer .corpo .nomelista ul {
            width: -webkit-calc(100%);
            width: calc(100%);
            display: none; } }
        .menu-footer .corpo .nomelista ul li {
          font-size: 14px; }
          .menu-footer .corpo .nomelista ul li.sublista {
            padding-left: 17%; }
          .menu-footer .corpo .nomelista ul li a {
            color: #FFFFFF;
            font-family: "MyriadPro-Regular", sans-serif; }

.carregando-mini {
  display: none;
  width: 20%;
  float: right;
  margin-right: 28%; }
  .carregando-mini img {
    width: 32px; }

form.wealthmanagement .senha, form.institucionalform .senha {
  display: none;
  margin-top: 16%;
  width: 163px;
  height: 45px;
  text-align: center; }

form.wealthmanagement .label_area, form.institucionalform .label_area {
  color: #00a6f7; }

body, html {
  font-family: 'MyriadPro-Light';
  width: 100%;
  height: 100%;
  font-size: 100%; }

.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0; }

.clearfix {
  display: inline-block; }
  @media (max-width: 480px) {
    .clearfix.ifmm {
      margin: 0 5%; } }

* html .clearfix {
  height: 1%; }

.clearfix {
  display: block; }

.wrapper {
  width: 96%;
  margin: 0 auto; }

.maincontent {
  position: relative;
  z-index: 1;
  background: #f5f5f5; }
  .maincontent .content-body {
    width: 90%;
    position: relative;
    margin: auto;
    background-color: #FFFFFF;
    max-width: 1141px; }
    @media screen and (min-width: 951px) and (max-width: 1200px) {
      .maincontent .content-body {
        width: 81%; } }
    @media screen and (min-width: 1200px) and (max-width: 1440px) {
      .maincontent .content-body {
        width: 81%; } }
    @media screen and (max-width: 768px) {
      .maincontent .content-body {
        width: 96%; } }

@media screen and (min-width: 768px) {
  h4 {
    font-size: 24px; } }

.maincontent .content-body .section .container {
  padding-top: 142px;
  margin: auto;
  max-width: 1140px; }
  @media (max-width: 820px) {
    .maincontent .content-body .section .container {
      padding-top: 106px; } }
  @media (max-width: 480px) {
    .maincontent .content-body .section .container {
      padding-top: 75px; } }

div.chart-destaque {
  width: 160px;
  height: 160px;
  position: relative;
  margin-top: 10%; }
  div.chart-destaque .percentage {
    text-align: center;
    color: #008ed4;
    font-family: "MyriadPro-Light", sans-serif;
    font-size: 1.8em;
    display: block;
    margin: 34% auto;
    width: 65%; }
  div.chart-destaque canvas {
    position: absolute;
    top: 0;
    left: 0; }

.roxo {
  /*color: #002746 !important;*/
  color: #571c52 !important; }

.verde {
  color: #00a378 !important; }

.cinza {
  color: #4d4d4d !important; }

.azul {
  color: #008fe9 !important; }

.bgazul {
  background-color: #033b69; }

.bgazul.bgopacity {
  background: #033b69;
  background: rgba(3, 59, 105, 0.7); }

.bgverde {
  background-color: #a7b83f; }

.bgverde.bgopacity {
  background: #a7b83f;
  background: rgba(167, 184, 63, 0.7); }

.bgazulclaro {
  background-color: #49a8d9; }

.bgazulclaro.bgopacity {
  background: #49a8d9;
  background: rgba(73, 168, 217, 0.7); }

.bgpetroleo {
  background-color: #367c87; }

.bgapetroleo.bgopacity {
  background: #367c87;
  background: rgba(54, 124, 135, 0.7); }

.bgapetroleo.bgopacity {
  background: transparent\9;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#b2367c87,endColorstr=#b2367c87);
  zoom: 1; }

/*

#     # #######    #    ######  ####### ######
#     # #         # #   #     # #       #     #
#     # #        #   #  #     # #       #     #
####### #####   #     # #     # #####   ######
#     # #       ####### #     # #       #   #
#     # #       #     # #     # #       #    #
#     # ####### #     # ######  ####### #     #

*/
.header {
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  -webkit-box-shadow: 1px 1px 5px 0 #CACACA;
  -moz-box-shadow: 1px 1px 5px 0 #CACACA;
  box-shadow: 1px 1px 5px 0 #CACACA;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 130px;
  display: block;
  margin-bottom: 0.2%;
  position: fixed;
  z-index: 100;
  background: #FFF;
  /*
  NAV MOBILE
  */
  /*
  NAV DESKTOP
  */ }
  @media (max-width: 820px) {
    .header {
      -webkit-transition: all 0.2s ease;
      -moz-transition: all 0.2s ease;
      -ms-transition: all 0.2s ease;
      -o-transition: all 0.2s ease;
      transition: all 0.2s ease;
      height: 110px; } }
  @media (max-width: 480px) {
    .header {
      width: 100%;
      height: 75px;
      padding-top: 3%;
      -webkit-box-shadow: 1px 1px 5px 0 #CACACA;
      -moz-box-shadow: 1px 1px 5px 0 #CACACA;
      box-shadow: 1px 1px 5px 0 #CACACA; } }
  .header.floatingHeader {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: fixed; }
  .header .wrapper {
    width: 81%;
    max-width: 1134px;
    margin: 0 auto;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    @media (max-width: 480px) {
      .header .wrapper {
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -ms-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
        max-width: 767px;
        width: 95%;
        margin: 0 auto; } }
  .header a.logo {
    background-color: transparent;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    margin: 28px 0 0; }
    @media (min-width: 820px) and (max-width: 1279px) {
      .header a.logo {
        margin: 28px 0 0 2%; } }
    @media (max-width: 820px) {
      .header a.logo {
        margin: 4% 0 0 2%; } }
    @media (max-width: 480px) {
      .header a.logo {
        margin: 1% 0 0 5%;
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -ms-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease; } }
    .header a.logo img {
      height: auto;
      width: 88%;
      -webkit-transition: all 0.2s ease;
      -moz-transition: all 0.2s ease;
      -ms-transition: all 0.2s ease;
      -o-transition: all 0.2s ease;
      transition: all 0.2s ease; }
      @media screen and (min-width: 821px) and (max-width: 886px) {
        .header a.logo img {
          width: 70%; } }
      @media (max-width: 820px) {
        .header a.logo img {
          width: 150px; } }
      @media (max-width: 480px) {
        .header a.logo img {
          width: 140px;
          -webkit-transition: all 0.2s ease;
          -moz-transition: all 0.2s ease;
          -ms-transition: all 0.2s ease;
          -o-transition: all 0.2s ease;
          transition: all 0.2s ease; } }
      @media (min-width: 50px) and (max-width: 320px) {
        .header a.logo img {
          width: 125px; } }
  .header img.sombra {
    display: none; }
  .header .nav.mobile {
    margin-top: 7px;
    position: relative;
    display: none; }
    .header .nav.mobile ul {
      display: inline-block; }
      .header .nav.mobile ul li {
        display: inline-block; }
    @media screen and (min-width: 815px) and (max-width: 951px) {
      .header .nav.mobile {
        margin-right: 50px;
        display: block;
        margin-top: 2%; } }
    @media (min-width: 821px) and (max-width: 1020px) {
      .header .nav.mobile {
        margin-right: 50px;
        margin-top: 6%;
        display: block; } }
    @media (max-width: 820px) {
      .header .nav.mobile {
        display: block;
        margin-top: 6%;
        margin-right: 5%; } }
    @media (max-width: 480px) {
      .header .nav.mobile {
        display: block;
        margin-top: 3%;
        margin-right: 10%; } }
    .header .nav.mobile .sprite.globo {
      background-position: -175px 0;
      width: 20px;
      height: 20px; }
    .header .nav.mobile .sprite.lupa {
      background-position: -197px 0;
      width: 17px;
      height: 20px; }
  .header .nav.desktop {
    width: 71%; }
    @media (min-width: 1070px) and (max-width: 1128px) {
      .header .nav.desktop {
        width: 68%; } }
    @media (min-width: 1130px) and (max-width: 1180px) {
      .header .nav.desktop {
        width: 65%; } }
    @media (min-width: 1020px) and (max-width: 1073px) {
      .header .nav.desktop {
        width: 68%; } }
    @media screen and (min-width: 821px) and (max-width: 1020px) {
      .header .nav.desktop {
        display: none; } }
    @media (max-width: 820px) {
      .header .nav.desktop {
        display: none; } }
    @media (max-width: 480px) {
      .header .nav.desktop {
        display: none; } }
  .header .modern-browsers .nav.desktop {
    display: none; }
  @media (max-width: 820px) {
    .header .nav a {
      background-color: #333e48;
      padding: 7px 7px;
      margin-left: 1px; } }
  @media (max-width: 480px) {
    .header .nav a {
      background-color: #333e48;
      padding: 7px 7px;
      margin-left: 1px; } }
  .header .nav a.open-menu {
    width: 10px;
    float: left;
    padding: 10px 12px;
    background-color: #014378; }
    .header .nav a.open-menu span {
      display: block;
      height: 2px;
      background-color: #FFF;
      margin: 2px 0px; }
  .header .nav ul.menuesq {
    display: block;
    background-color: transparent;
    position: relative;
    width: 60%;
    padding: 5% 1% 1% 6%;
    left: 0; }
    @media screen and (max-width: 900px) {
      .header .nav ul.menuesq {
        width: 57%;
        padding: 5% 1% 1% 3%; } }
    @media screen and (min-width: 821px) and (max-width: 886px) {
      .header .nav ul.menuesq {
        padding: 5% 1% 1%; } }
    .header .nav ul.menuesq li {
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 1em;
      color: #008ed4;
      display: inline-block;
      width: 97px;
      margin-right: 1%;
      font-family: "MyriadPro-Regular",sans-serif; }
      .header .nav ul.menuesq li.mn {
        margin-right: 5%; }
  .header .nav ul.menudir {
    max-width: 180px;
    width: 40%;
    position: relative;
    right: 0;
    display: block;
    overflow: hidden;
    background-color: transparent; }
    .header .nav ul.menudir li {
      left: 0;
      width: 180px; }
      .header .nav ul.menudir li a.text {
        width: 130px;
        padding-top: 8px;
        margin-left: 16px;
        font-family: "MyriadPro-Regular", sans-serif;
        font-size: 0.8em; }
      .header .nav ul.menudir li.small.no-bg {
        background-color: transparent;
        color: #004378; }
      .header .nav ul.menudir li.small.ac, .header .nav ul.menudir li.estilo {
        margin-bottom: 8px;
        background-color: #048acc;
        color: #FFF; }
      .header .nav ul.menudir li .small {
        background-color: #048acc;
        height: 33px; }
      .header .nav ul.menudir li a span.bg {
        width: 34px;
        height: 33px;
        border-bottom: 1px solid #34a4db;
        position: relative;
        right: 0;
        background-color: #004277; }
      .header .nav ul.menudir li.areacliente a {
        background-color: #018ed4;
        width: 180px; }
  .header a.btn-fechar.globo-geo,
  .header a.btn-fechar.lupa-busca {
    padding: 12px;
    background-color: #333e48;
    width: 10px;
    height: 10px;
    display: none; }

ul.quemsomosmenu,
ul.trabalheconoscomenu,
ul.areaclientemenu,
ul.mainmenu {
  background-color: #00447c;
  height: 100%;
  max-height: 100%;
  width: 226px; }
  ul.quemsomosmenu li,
  ul.trabalheconoscomenu li,
  ul.areaclientemenu li,
  ul.mainmenu li {
    color: #FFF;
    font-family: "MyriadPro-Light", sans-serif;
    font-size: 14px;
    position: relative;
    width: 226px; }
    ul.quemsomosmenu li a,
    ul.trabalheconoscomenu li a,
    ul.areaclientemenu li a,
    ul.mainmenu li a {
      background-color: #004379;
      width: 183px;
      padding: 8px 0px 6px 33px; }
    ul.quemsomosmenu li a.text,
    ul.trabalheconoscomenu li a.text,
    ul.areaclientemenu li a.text,
    ul.mainmenu li a.text {
      width: 157px; }
    ul.quemsomosmenu li.small,
    ul.trabalheconoscomenu li.small,
    ul.areaclientemenu li.small,
    ul.mainmenu li.small {
      height: 33px; }
    ul.quemsomosmenu li.menu,
    ul.trabalheconoscomenu li.menu,
    ul.areaclientemenu li.menu,
    ul.mainmenu li.menu {
      color: #FFF;
      font-family: "MyriadPro-Light", sans-serif;
      font-size: 14px;
      text-indent: 33px;
      background-color: #048acc;
      padding: 9px 0 5px 0;
      position: relative; }
      ul.quemsomosmenu li.menu a.btn-fechar,
      ul.trabalheconoscomenu li.menu a.btn-fechar,
      ul.areaclientemenu li.menu a.btn-fechar,
      ul.mainmenu li.menu a.btn-fechar {
        padding: 12px;
        background-color: #333e48;
        width: 10px;
        height: 10px;
        top: 0;
        left: -34px;
        position: absolute; }
        @media (max-width: 480px) {
          ul.quemsomosmenu li.menu a.btn-fechar,
          ul.trabalheconoscomenu li.menu a.btn-fechar,
          ul.areaclientemenu li.menu a.btn-fechar,
          ul.mainmenu li.menu a.btn-fechar {
            display: none; } }
        @media (max-width: 820px) {
          ul.quemsomosmenu li.menu a.btn-fechar,
          ul.trabalheconoscomenu li.menu a.btn-fechar,
          ul.areaclientemenu li.menu a.btn-fechar,
          ul.mainmenu li.menu a.btn-fechar {
            display: block; } }
        ul.quemsomosmenu li.menu a.btn-fechar span.fechar,
        ul.trabalheconoscomenu li.menu a.btn-fechar span.fechar,
        ul.areaclientemenu li.menu a.btn-fechar span.fechar,
        ul.mainmenu li.menu a.btn-fechar span.fechar {
          background-position: -221px 0;
          width: 10px;
          height: 10px; }

.onlymobile {
  display: none; }

.menubaixo {
  width: 34px;
  float: right;
  display: block; }
  @media screen and (min-width: 821px) and (max-width: 1020px) {
    .menubaixo {
      display: none;
      margin-top: 38px; } }
  @media (max-width: 820px) {
    .menubaixo {
      display: none; } }
  @media (max-width: 480px) {
    .menubaixo {
      display: none; } }
  .menubaixo a {
    background-color: #333e48;
    padding: 7px 7px 7px 6px;
    margin-left: 1px; }
    .menubaixo a span.globo {
      background-position: -175px 0;
      width: 20px;
      height: 20px; }
    .menubaixo a span.lupa {
      background-position: -197px 0;
      width: 17px;
      height: 20px; }
    .menubaixo a.lupa {
      padding: 7px 8px;
      border-top: 1px solid #5c6d7c; }

span.fechar {
  background-position: -221px 0;
  width: 10px;
  height: 10px; }

.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0.3;
  filter: alpha(opacity=30);
  display: none;
  z-index: 102; }

.menu-ul.mobile,
.menu-ul.main {
  display: none;
  right: 0;
  top: 0;
  z-index: 102; }

.menu-ul.mobile,
.menu-ul.main,
.menu-ul.areacliente {
  position: absolute; }

.menu-ul.desktop,
.menu-ul.areacliente {
  position: fixed;
  right: 0;
  top: 0;
  z-index: 102; }
  @media (max-width: 480px) {
    .menu-ul.desktop,
    .menu-ul.areacliente {
      display: none; } }

ul.areaclientemenu {
  max-height: 290px; }

@media (max-width: 480px) {
  ul.areaclientemenu {
    max-height: 290px; } }

ul.quemsomosmenu,
ul.trabalheconoscomenu,
ul.areaclientemenu {
  display: none; }

ul.quemsomosmenu li,
ul.trabalheconoscomenu li,
ul.areaclientemenu li {
  color: #FFF;
  font-family: "MyriadPro-Regular", sans-serif;
  font-size: 14px;
  position: relative;
  width: 226px; }

ul.quemsomosmenu li.menu,
ul.trabalheconoscomenu li.menu,
ul.areaclientemenu li.menu {
  background-color: #048acc;
  padding: 9px 0 5px 0;
  position: relative; }

ul.quemsomosmenu li.menu,
ul.trabalheconoscomenu li.menu,
ul.areaclientemenu li.menu {
  text-indent: 33px; }
  @media (max-width: 480px) {
    ul.quemsomosmenu li.menu,
    ul.trabalheconoscomenu li.menu,
    ul.areaclientemenu li.menu {
      color: #FFF; } }

ul.quemsomosmenu li a,
ul.trabalheconoscomenu li a,
ul.areaclientemenu li a {
  background-color: #004379;
  width: 188px;
  padding: 8px 0px 6px 33px; }

@media screen and (min-width: 768px) {
  ul.trabalheconoscomenu li a {
    width: 183px;
    padding: 8px 10px 6px 33px; } }

li.hr,
ul.quemsomosmenu li.hr,
ul.trabalheconoscomenu li.hr,
ul.areaclientemenu li.hr {
  border-bottom: 1px solid #336994;
  margin-left: 35px;
  width: 157px; }

.lt-ie9 li.hr {
  border-bottom: 1px solid #b3c5d4;
  margin: 0; }

.lt-ie8 li.hr {
  top: -20px;
  height: 1px; }

@media screen and (min-width: 768px) {
  li.hr {
    border-bottom: 1px solid #b3c5d4;
    margin: 0; } }

hr {
  width: 160px;
  margin: 0 auto;
  background-color: #fff;
  color: #fff;
  border: none; }

ul.quemsomosmenu ul.sub li hr,
ul.quemsomosmenu ul.not li hr {
  background-color: #c7c9cb;
  color: #c7c9cb; }

span.setabranca {
  background-position: -360px -25px;
  width: 8px;
  height: 14px; }

span.setabranca-pq {
  background-position: -181px -25px;
  width: 6px;
  height: 14px; }

span.cadeado {
  background-position: -163px 0;
  width: 9px;
  height: 12px; }

span.setair {
  background-position: -229px -25px;
  width: 5px;
  height: 8px; }

.lt-ie8 ul.quemsomosmenu li a span.setair,
.lt-ie8 ul.trabalheconoscomenu li a span.setair,
.lt-ie8 ul.areaclientemenu li a span.setair,
.lt-ie8 ul.areaclientemenu li a span.setavoltarmenu {
  margin-top: -15px; }

ul.quemsomosmenu li a span.setair,
ul.trabalheconoscomenu li a span.setair,
ul.areaclientemenu li a span.setair,
ul.areaclientemenu li a span.setavoltarmenu {
  margin-right: 12px;
  margin-top: 4px; }

span.setavoltarmenu {
  background-position: -223px -25px;
  width: 5px;
  height: 8px; }

.lt-ie8 ul.quemsomosmenu li a span.setair.middle {
  margin-top: -23px; }

ul.quemsomosmenu li a span.setair.middle {
  margin-top: -5px; }

.lt-ie9 .nav ul.menudir li a span.cadeado {
  position: absolute;
  right: 11px;
  top: 10px; }

@media screen and (min-width: 768px) {
  .nav ul.menudir li a span.cadeado {
    position: absolute;
    right: 11px;
    top: 10px; } }

ul li a.bg,
a.bg {
  width: 21px;
  height: 23px; }
  @media (max-width: 480px) {
    ul li a.bg,
    a.bg {
      padding: 8px 5px 4px; } }

@media screen and (min-width: 768px) {
  ul li a.bg {
    background-color: #004277;
    border-top: none;
    padding: 10px 0 0 13px;
    position: relative; } }

ul li a.bg.bottom {
  border-bottom: 1px solid #336994;
  margin-bottom: -1px; }

.lt-ie9 ul.quemsomosmenu,
.lt-ie9 ul.trabalheconoscomenu,
.lt-ie9 ul.areaclientemenu {
  display: none;
  right: 0;
  top: 0;
  height: 100%; }

@media screen and (min-width: 768px) {
  .nav ul.quemsomosmenu,
  .nav ul.trabalheconoscomenu {
    display: block;
    right: 0;
    top: 0;
    height: 100%; } }

span.setavolta {
  background-position: -164px -25px;
  width: 8px;
  height: 14px; }

ul.quemsomosmenu span.setavolta,
ul.trabalheconoscomenu span.setavolta,
ul.areaclientemenu span.setavolta {
  margin-left: 10px; }

span.mais,
span.menos {
  width: 10px;
  height: 10px;
  margin-right: 29px;
  margin-top: 3px; }

span.mais {
  background-position: -235px 0; }

span.menos {
  background-position: -235px -11px; }

ul.quemsomosmenu li.menu,
ul.trabalheconoscomenu li.menu,
ul.areaclientemenu li.menu {
  text-indent: 13px;
  padding: 0;
  width: 100%;
  margin-left: 0;
  left: 0;
  height: 33px; }

ul.areaclientemenu li.menu {
  margin-bottom: 20px; }

ul.quemsomosmenu li.menu a.voltarmain,
ul.trabalheconoscomenu li.menu a.voltarmain,
ul.areaclientemenu li.menu a.voltarmain {
  background-color: transparent;
  padding-left: 0;
  width: 226px; }

ul.quemsomosmenu li.menu a.voltarmain span.wrap,
ul.areaclientemenu li.menu a.voltarmain span.wrap {
  opacity: 0; }

ul.quemsomosmenu li.menu a.voltarmain span.bg,
ul.trabalheconoscomenu li.menu a.voltarmain span.bg,
ul.areaclientemenu li.menu a.voltarmain span.bg {
  width: 34px;
  height: 33px;
  background-color: #024070;
  position: relative;
  top: -8px;
  right: 0; }

ul.quemsomosmenu li.menu a.voltarmain span.setabranca,
ul.trabalheconoscomenu li.menu a.voltarmain span.setabranca,
ul.areaclientemenu li.menu a.voltarmain span.setabranca {
  position: absolute;
  right: 11px;
  top: 8px; }

ul.quemsomosmenu ul.sub,
ul.quemsomosmenu ul.not {
  background-color: #ececec;
  height: auto;
  display: none;
  position: relative;
  right: 0;
  top: 0; }

ul.quemsomosmenu ul.sub li,
ul.quemsomosmenu ul.not li {
  top: 0; }

ul.quemsomosmenu ul.sub li a,
ul.quemsomosmenu ul.not li a {
  color: #333e48;
  background-color: #ececec;
  width: 193px;
  padding: 8px 0 7px 33px; }

.geo {
  position: absolute;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: auto;
  display: none;
  background-image: url("../img/bg-geo-mobile.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  top: 130px;
  z-index: 99;
  left: 0; }
  @media (max-width: 480px) {
    .geo {
      top: 108px; } }
  @media (max-width: 820px) {
    .geo {
      top: 77px; } }
  .geo .container {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 2%;
    height: 430px; }
  .geo .btn-fechar {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .geo .btn-fechar span.fechar {
      position: absolute;
      top: 11px;
      left: 12px; }
    .geo .btn-fechar.out, .geo .btn-fechar.in {
      width: 32px;
      height: 32px;
      position: absolute;
      right: 0;
      top: 0;
      background-color: #333e48;
      display: block; }
    .geo .btn-fechar.out {
      display: none; }
    .geo .btn-fechar.in {
      position: absolute;
      right: 0;
      top: 0;
      display: block; }
      @media (max-width: 480px) {
        .geo .btn-fechar.in {
          display: none; } }
      @media (max-width: 820px) {
        .geo .btn-fechar.in {
          display: none; } }
  .geo .left {
    width: 45%;
    margin-right: 4%;
    margin-left: 2%;
    border-right: 1px solid #6b8ea1; }
    @media (max-width: 480px) {
      .geo .left {
        width: 100%; } }
    .geo .left p {
      color: #FFF;
      font-size: 1.1em;
      width: 85%; }
    .geo .left .perg {
      font-size: 1.3em;
      font-family: "MyriadPro-Light", sans-serif;
      color: #FFFFFF; }
    .geo .left .local {
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      width: 90%;
      margin-top: 5%; }
      .geo .left .local a, .geo .left .local p {
        float: left;
        margin: 0; }
      .geo .left .local p {
        margin-left: 2%;
        margin-top: 1%;
        font-style: italic;
        font-size: 1em; }
      @media (max-width: 480px) {
        .geo .left .local.clearfix {
          display: none; } }
      .geo .left .local.country {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        width: 95%;
        margin-top: 4%;
        margin-left: 5%; }
        @media (max-width: 480px) {
          .geo .left .local.country {
            margin-left: 0; } }
        .geo .left .local.country p {
          margin: 0; }
        .geo .left .local.country select#countries {
          margin-top: 2%;
          height: 35px;
          width: 50%; }
          @media (max-width: 480px) {
            .geo .left .local.country select#countries {
              width: 100%; } }
  .geo .right {
    width: 45%; }
    @media (max-width: 480px) {
      .geo .right {
        width: 100%; } }
    .geo .right .seleciona {
      font-size: 1.3em;
      font-family: "MyriadPro-Light", sans-serif;
      color: #FFFFFF; }
      .geo .right .seleciona a {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
        .geo .right .seleciona a.idioma {
          border: 1px solid #333e48;
          margin-top: 20px;
          opacity: 0.6;
          filter: alpha(opacity=60);
          padding-left: 20px; }
          @media (max-width: 480px) {
            .geo .right .seleciona a.idioma {
              padding-left: 5px; } }
          .geo .right .seleciona a.idioma p {
            font-size: 14px;
            color: #fff;
            margin: 8px 0 8px 35px;
            font-family: "MyriadPro-Light", sans-serif; }
            @media (max-width: 820px) {
              .geo .right .seleciona a.idioma p {
                margin: 8px 0 8px 5px; } }
            @media (max-width: 480px) {
              .geo .right .seleciona a.idioma p {
                margin: 8px 0 8px 8px; } }
          .geo .right .seleciona a.idioma.disabled {
            border-color: #CCC; }
            .geo .right .seleciona a.idioma.disabled p {
              color: #CCC; }
          .geo .right .seleciona a.idioma span.check {
            background-position: -347px -25px;
            width: 12px;
            height: 9px;
            margin: 12px 8px 0 0; }
          .geo .right .seleciona a.idioma span.bg-check {
            background-color: #333e48;
            width: 32px;
            height: 35px;
            display: none; }
          .geo .right .seleciona a.idioma .disabled span.bg-check {
            background-color: #CCC; }
          .geo .right .seleciona a.idioma.active, .geo .right .seleciona a.idioma:hover {
            opacity: 1;
            filter: alpha(opacity=100); }
    .geo .right a.continuar {
      margin: 5% 0;
      color: #FFF;
      font-size: 0.9em;
      font-family: "MyriadPro-Light", sans-serif;
      margin: 13px 0px; }
      .geo .right a.continuar span.setabranca {
        margin: 2px 9px; }
  .geo span.pin {
    background-position: -306px 0;
    width: 34px;
    height: 34px; }
  .geo span.setapontilhada {
    background-position: -341px -25px;
    width: 5px;
    height: 9px;
    margin: 13px 13px 0 35px; }
    @media (max-width: 480px) {
      .geo span.setapontilhada {
        margin: 13px 13px 0 5px; } }
  .geo span.setapontilhada.eng,
  .geo span.setapontilhada.esp {
    margin-left: 25px; }

.busca {
  position: absolute;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: auto;
  display: none;
  background-image: url("../img/bg-busca-mobile.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  top: 130px;
  left: 0;
  z-index: 99;
  /*
  BUSCA FREQUENTE
  */ }
  @media (max-width: 820px) {
    .busca {
      top: 108px; } }
  @media (max-width: 480px) {
    .busca {
      top: 77px; } }
  .busca .wrapper {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 2%;
    height: 430px; }
  .busca h1 {
    display: block;
    color: #43525A;
    font-size: 1.4em;
    font-style: normal;
    padding: 2% 0; }
  .busca a.btn-fechar {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    @media (max-width: 480px) {
      .busca a.btn-fechar {
        display: none !important; } }
    .busca a.btn-fechar span.fechar {
      position: absolute;
      top: 11px;
      left: 12px; }
    .busca a.btn-fechar.out, .busca a.btn-fechar.in {
      width: 32px;
      height: 32px;
      position: absolute;
      right: 0;
      top: 0;
      background-color: #333e48;
      display: block; }
    @media (max-width: 820px) {
      .busca a.btn-fechar.out {
        display: none; } }
    .busca a.btn-fechar.in {
      position: absolute;
      right: 0;
      top: 0;
      display: block; }
  .busca form.search {
    font-size: 14px;
    font-style: italic;
    position: relative;
    width: 97%;
    top: 20px; }
    .busca form.search span.lupapreta {
      background-position: -287px 0;
      width: 17px;
      height: 19px;
      position: absolute;
      right: 18px;
      top: 30px; }
    .busca form.search input {
      width: 97%;
      padding: 9px;
      position: relative; }
    .busca form.search .options {
      display: none; }
      .busca form.search .options ul li {
        background-color: #CCC;
        padding: 11px;
        width: 97%; }
        .busca form.search .options ul li.dark {
          background-color: #CACACA; }
        .busca form.search .options ul li.dark a {
          font-weight: bold; }
        .busca form.search .options ul li.term {
          color: #3e4851; }
          .busca form.search .options ul li.term span.para {
            font-weight: bold; }
        .busca form.search .options ul li a {
          color: #3e4851;
          background-color: transparent;
          padding-left: 0;
          width: auto; }
  .busca .buscafrequente {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    width: 88%;
    border-top: 1px solid #BABABA;
    bottom: 40px;
    position: absolute; }
    .busca .buscafrequente p, .busca .buscafrequente ul li {
      font-family: "MyriadPro-Light", sans-serif;
      color: #3e4851;
      font-size: 1em; }
    .busca .buscafrequente p {
      font-weight: bold;
      margin-left: 15px; }
    .busca .buscafrequente ul {
      margin: 1.5% 0 0 3%;
      width: 80%; }
      @media (max-width: 480px) {
        .busca .buscafrequente ul {
          width: 100%; } }
      .busca .buscafrequente ul li {
        width: auto;
        display: inline-block;
        margin-right: 1%; }
        @media (max-width: 480px) {
          .busca .buscafrequente ul li {
            margin-right: 0; } }
        .busca .buscafrequente ul li a {
          background-color: transparent;
          width: auto;
          padding-left: 25%; }

.footer {
  background-color: #00467d;
  color: #FFF;
  font-family: "MyriadPro-Light", sans-serif;
  border-top: 1px solid #00467d;
  width: 100%;
  position: absolute;
  z-index: 99;
  height: 119px; }
  @media (max-width: 820px) {
    .footer {
      margin-bottom: 22%;
      height: 130px; } }
  @media (max-width: 480px) {
    .footer {
      height: 150px;
      margin-bottom: 0; } }
  .footer p.copyright {
    font-size: 14px;
    text-align: center;
    float: left;
    margin-top: 0;
    text-align: left;
    margin: auto; }
    @media (max-width: 480px) {
      .footer p.copyright {
        float: none;
        text-align: center; } }
  .footer .sub-footer {
    display: block;
    margin: 30px 0 0 35px;
    padding-bottom: 4px;
    background-color: #00467d; }
    @media (max-width: 480px) {
      .footer .sub-footer {
        margin: 5% auto; } }
    .footer .sub-footer .enderecos {
      font-size: 12px;
      text-align: center;
      width: 35%;
      margin: auto;
      line-height: 9px; }
      @media (max-width: 820px) {
        .footer .sub-footer .enderecos {
          width: 55%; } }
      @media (max-width: 480px) {
        .footer .sub-footer .enderecos {
          width: 100%;
          font-size: 11px; } }

@media screen and (min-width: 1333px) {
  .footer p.copyright {
    width: 34.5%; } }

.footer-mark.country-colombia {
  display: block; }

.footer-mark .wrapper {
  position: relative; }

.footer-mark .wrapper a {
  display: block;
  position: absolute;
  left: 82px;
  bottom: 0;
  width: 13px;
  height: 228px;
  z-index: 99; }
  @media (max-width: 820px) {
    .footer-mark .wrapper a {
      bottom: 0;
      left: 0; } }

.footer .wrapper {
  text-align: center; }

.disclaimer {
  display: block;
  padding: 0 100px; }
  @media (max-width: 480px) {
    .disclaimer {
      padding: 0; } }
  .disclaimer a {
    font-size: 14px;
    margin-bottom: 20px;
    color: #fff;
    display: inline; }
  .disclaimer span {
    display: inline-block;
    margin: -2px 6px 0 6px;
    font-size: 15px; }
    .disclaimer span:last-child {
      display: none; }

.conteudo {
  width: 96.8%;
  float: none;
  padding-bottom: 15%;
  margin: auto; }
  @media (max-width: 820px) {
    .conteudo {
      width: 100%; } }
  @media (max-width: 480px) {
    .conteudo {
      width: 100%; } }
  .conteudo .wrapper.full {
    width: 100%; }
  .conteudo .banner {
    position: relative;
    background-color: #f4f3f3;
    max-width: 945px;
    height: 407px;
    margin: 0 auto; }
    .conteudo .banner h1 {
      position: absolute;
      bottom: 20px;
      left: 30px;
      font-size: 1.5em;
      background-color: rgba(255, 255, 255, 0.48);
      z-index: 22; }
    .conteudo .banner img.sombra {
      width: 100%;
      position: absolute;
      bottom: -11px;
      z-index: 19;
      height: 26px; }
    .conteudo .banner .container-capa {
      height: 407px;
      min-height: 100%;
      position: relative;
      z-index: 20;
      background-position: center center;
      background-repeat: no-repeat;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -o-background-size: cover;
      background-size: cover; }
    .conteudo .banner img.imgcapa {
      position: absolute;
      left: -9999px;
      right: -9999px;
      margin: auto; }

span.setaazul {
  background-position: -173px -25px;
  width: 7px;
  height: 12px; }

.artigo.grande
.definicoes a.leiamais {
  display: none; }

.mr33 {
  margin-right: 33px; }

.linha-bottom {
  position: relative;
  bottom: 0;
  width: 90%;
  margin: auto;
  display: block; }

.noticias.interno .noticia .recrutamento {
  width: 775px;
  height: 477px;
  float: left; }

.content {
  margin: 0px auto;
  width: 290px; }

@media screen and (min-width: 768px) {
  .content {
    width: 335px; } }

@media screen and (min-width: 1024px) {
  .content hr {
    background-color: #fff;
    color: #fff;
    width: 100%;
    margin-top: 30px; } }

.mensagem {
  width: 220px; }

.mensagem p.envie,
.noticias.interno .wrapper .mensagem p.envie {
  text-transform: uppercase;
  font-size: 18px;
  color: #fff; }

span.envelope {
  background-position: -247px 0;
  width: 39px;
  height: 31px;
  margin: 20px 20px 0 0; }

@media screen and (min-width: 1024px) {
  span.envelope {
    margin-top: 30px; }
  .mensagem {
    width: 260px; }
  .mensagem p.envie,
  .mensagem p.envie a,
  .noticias.interno .wrapper .mensagem p.envie,
  .noticias.interno .wrapper .mensagem p.envie a {
    font-size: 24px !important; } }

.mensagem p,
.mensagem a,
.noticias.interno .wrapper .mensagem p,
.noticias.interno .wrapper .mensagem p a {
  font-size: 14px;
  font-family: "MyriadPro-Light", sans-serif;
  font-weight: 300; }

.atendimento {
  width: 97%; }

.noticias.interno .wrapper .atendimento p {
  text-align: center;
  font-size: 14px;
  margin: 0;
  line-height: 1;
  color: #fff; }

.noticias.interno .wrapper .atendimento p.sac {
  color: #003951;
  font-weight: bold;
  font-size: 19px !important;
  margin: 30px 0 15px 0; }

span.setaazulclaro {
  background-position: -173px -25px;
  width: 8px;
  height: 14px;
  margin-left: 20px;
  margin-top: 7px; }

@media screen and (min-width: 768px) {
  span.setaazulclaro {
    margin-top: 10px; } }

.relatorioanual {
  display: none; }

@media screen and (min-width: 768px) {
  .relatorioanual {
    display: block; } }

.window1280 {
  display: none; }

@media screen and (min-width: 1280px) {
  .fullwindow {
    display: block; } }

/*
QUEM
SOMOS
*/
span.setabrancabaixo-pq {
  background-position: -316px -42px;
  width: 8px;
  height: 5px; }

/*MEDIA 768 PRIMEIRA */
.valores .definicoes {
  height: 142px;
  background-color: #fafafa;
  border: 1px solid #668fb0;
  padding-top: 4px; }

br.mobile {
  display: none; }

@media screen and (min-width: 768px) {
  br.tablet {
    display: none; } }

@media screen and (min-width: 1334px) {
  br.desk {
    display: none; }
  br.mobile {
    display: block; } }

.bloco2 .definicoes ul li {
  font-size: 16px;
  font-family: 'MyriadPro-Light';
  color: #008fd5;
  line-height: 1.2;
  width: auto;
  margin: 10px 0; }

.bloco2 .definicoes h4 {
  color: #008FD5;
  font-family: "MyriadPro-Light", sans-serif;
  font-weight: 600;
  margin: 15px 0;
  font-size: 16px; }

@media screen and (min-width: 1024px) {
  .bloco2 .definicoes h4 {
    font-size: 15px; } }

.definicoes.noshow {
  display: none; }

.global,
.presenca {
  background-color: #FFF;
  padding: 5px 10px; }

.section.quemsomos .bloco4 .global p,
.section.quemsomos .bloco4 .presenca p {
  color: #222;
  font-size: 1.2em; }

.bloco2 p {
  width: 295px;
  font-size: 14px;
  font-family: 'MyriadPro-Light';
  color: #4d4d4d; }

@media screen and (min-width: 768px) {
  .bloco2 p {
    max-width: 1233px;
    width: 100%;
    margin: 0 auto; }
  .bloco2.nossosvalores {
    margin: 20px 0 0;
    margin-bottom: 35px; }
  .bloco2.nossosvalores .definicoes p.modo {
    float: none;
    width: 100%;
    text-align: left;
    margin: 22px 0 0 0; }
  .bloco2.nossosvalores .definicoes p {
    width: auto;
    float: left;
    text-align: center;
    margin-right: 18px; }
  .bloco2.nossosvalores .definicoes p.nomr {
    margin-right: 0; } }

@media screen and (min-width: 1334px) {
  .bloco2.nossosvalores {
    margin-top: 50px; }
  .bloco2.nossosvalores p {
    margin: 20px 0 0 0; }
  .bloco2.nossosvalores .definicoes p {
    font-size: 24px;
    margin: 10px 80px 0 0; }
  .bloco2.nossosvalores .definicoes p.modo {
    margin: 22px 0 0 35px; }
  .bloco2.nossosvalores .definicoes p.fococliente {
    margin-left: 80px; } }

.bloco2 .diretoria .definicoes p {
  color: #4d4d4d; }

.lt-ie9 .bloco2 .diretoria .definicoes p {
  width: 100%; }

@media screen and (min-width: 1280px) {
  .bloco2 .diretoria .definicoes p {
    font-size: 18px; } }

.bloco2 .diretoria .definicoes {
  padding: 20px 0; }

.bloco3 {
  background-color: #f4f4f4;
  margin-top: 50px; }

.bloco3.desktop {
  display: none; }

.lt-ie9 .bloco3.mobile {
  display: none; }

.lt-ie9 .bloco3.desktop {
  display: block; }

@media screen and (min-width: 768px) {
  .bloco3.mobile {
    display: none; }
  .bloco3.desktop {
    display: block; } }

.lt-ie9 span.triangulolado {
  background-position: -366px -41px;
  width: 11px;
  height: 12px;
  margin-left: -46px;
  margin-top: -10px; }

.lt-ie9 .timelinebarra ul li.quarta span.bolinha {
  right: -65px; }

@media screen and (min-width: 768px) {
  .bloco3.timeline {
    background-color: #FFFFFF;
    padding-bottom: 140px;
    z-index: 0; }
  .bloco3.timeline h1 {
    margin-left: 35px; }
  .bloco3.timeline .timelinebarra {
    max-width: 1050px;
    width: 100%;
    position: relative;
    left: 0;
    top: 40px; }
  .barra {
    width: 10px;
    height: 700px;
    background-color: #004378;
    position: relative;
    right: -123px; }
  span.bolinha {
    background-position: -340px -42px;
    width: 23px;
    height: 23px;
    position: absolute;
    right: 0;
    top: 0; }
  .timelinebarra {
    position: relative; }
  .timelinebarra ul li {
    position: absolute;
    color: #007dc0;
    font-family: 'MyriadPro-Light';
    font-size: 16px;
    width: 140px;
    cursor: pointer; }
  .timelinebarra ul li.active {
    font-family: "MyriadPro-Light", sans-serif;
    font-size: 16px;
    font-weight: bold; }
  .timelinebarra ul li.primeira {
    top: -3px; }
  .timelinebarra ul li.segunda {
    top: 586px; }
  .timelinebarra ul li.terceira {
    top: 633px; }
  .timelinebarra ul li.quarta {
    top: 680px; }
  .timelinebarra ul li.quarta.active {
    font-size: 16px; }
  .textotimeline {
    background-color: #FFFFFF;
    width: 80%;
    margin-right: 28px; } }
  @media screen and (min-width: 768px) and (min-width: 768px) and (max-width: 981px) {
    .textotimeline {
      width: 70%; } }
  @media screen and (min-width: 768px) and (min-width: 981px) and (max-width: 1140px) {
    .textotimeline {
      margin-right: 2%; } }

@media screen and (min-width: 768px) {
  .textotimeline .texto {
    color: #222;
    font-family: 'MyriadPro-Light', sans-serif;
    font-size: 18px;
    display: none;
    padding: 20px 35px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid #99b4c9; }
  .textotimeline .texto.show {
    display: block; }
  span.triangulolado {
    background-position: -366px -41px;
    width: 11px;
    height: 12px;
    margin-left: -46px;
    margin-top: -10px; } }

@media screen and (min-width: 1280px) {
  .bloco3.timeline .timelinebarra {
    left: 15px; }
  .timelinebarra ul li.quarta span.bolinha {
    right: -70px; }
  .timelinebarra ul li.quarta {
    top: 680px;
    width: 150px;
    left: -80px; }
  .timelinebarra ul li.quarta.active {
    width: 206px;
    left: -136px; } }

.bloco3.partner {
  margin-top: 0; }

.lt-ie9 .bloco3.partner {
  width: 1233px;
  margin: 0 auto; }

@media screen and (min-width: 1334px) {
  .bloco3.partner {
    width: 1233px;
    margin: 0 auto; } }

.bloco3 h1 {
  padding: 25px 0; }

.lt-ie9 .bloco3 .abas {
  margin: 0;
  max-width: 1233px; }

@media screen and (min-width: 768px) {
  .bloco3 .abas {
    margin: 34px 0 0 0;
    max-width: 100%; } }

.definicoes.lista {
  display: none; }

.definicoes.lista.active {
  display: block; }

.select {
  position: relative;
  height: 60px;
  z-index: 10; }

.section.quemsomos.sustentabilidade div.select {
  height: 50px; }

.select img.sombra {
  top: 19px;
  width: 220px;
  left: 50%;
  margin-left: -110px; }

.select ul.dropdown {
  width: 260px;
  position: absolute;
  left: 50%;
  margin-left: -130px; }

.select ul.dropdown li a {
  background-color: #668fb0;
  color: #e5ecf2;
  width: 258px;
  padding-left: 0;
  text-align: center;
  font-family: 'MyriadPro-Light';
  font-size: 16px;
  padding: 3% 0;
  border-top: 1px solid #336996; }

.select ul.dropdown.sust li a {
  background-color: #f9f9f9;
  border-left: 1px solid #00a378;
  border-right: 1px solid #00a378;
  border-bottom: 1px solid #00a378;
  color: #00a378; }

.select ul.dropdown li {
  width: 260px;
  display: none; }

.select ul.dropdown li.show {
  display: block; }

.select ul.dropdown li.show a {
  background-color: #004378;
  font-family: 'MyriadPro-Light';
  color: #FFF;
  font-size: 1.2em;
  padding: 5% 0;
  text-align: center; }

.select ul.dropdown.sust li.show a {
  background-color: #00a378; }

span.select {
  background-position: -342px 0;
  width: 8px;
  height: 12px;
  position: absolute;
  top: 22px;
  right: 8%; }
  @media (max-width: 820px) {
    span.select {
      right: 5%; } }

.linhadotempo {
  position: relative; }

.historias {
  background-color: #76c0e4;
  margin-top: 50px; }
  @media (max-width: 480px) {
    .historias {
      margin-bottom: 20%; } }

.historia {
  display: block; }
  .historia p {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 90%;
    color: #fff;
    font-family: 'MyriadPro-Light';
    font-size: 1.1em;
    padding: 1% 5%; }

span.triangulo {
  background-position: -353px 0;
  width: 13px;
  height: 11px;
  position: absolute;
  top: -11px;
  left: 50%;
  margin-left: -6px; }

span.subir {
  background-position: -369px 0;
  width: 14px;
  height: 8px;
  top: 15px;
  left: 10px; }

.subir {
  width: 34px;
  height: 34px;
  position: relative;
  top: -33px; }
  @media (max-width: 480px) {
    .subir {
      top: -86px; } }

.lt-ie9 .subir {
  display: none; }

@media screen and (min-width: 768px) {
  .subir {
    display: none; } }

.subir a {
  background-color: #344049;
  width: 34px;
  height: 34px; }

span.iconepraticas {
  background-position: -386px 0;
  width: 170px;
  height: 170px;
  margin: 20px auto 30px auto; }

img.iconediferenciais {
  margin: 20px auto 20px auto;
  display: block; }

@media screen and (min-width: 1255px) and (max-width: 1399px) {
  img.iconediferenciais {
    width: 160px;
    height: 160px; } }

a.saibamais {
  font-family: "MyriadPro-Light", sans-serif;
  font-size: 12px;
  text-transform: uppercase;
  padding: 10px 18px 7px 17px;
  font-weight: bold;
  margin: 10px 0 20px 0; }

a.saibamais span {
  margin-left: 6px;
  margin-top: 1px; }

.educacao a.saibamais,
.cidadania a.saibamais {
  color: #fff;
  background-color: #00657e;
  margin-top: 10px; }

.lt-ie9 .educacao a.saibamais,
.lt-ie9 .cidadania a.saibamais {
  display: none; }

@media screen and (min-width: 768px) {
  .educacao a.saibamais,
  .cidadania a.saibamais {
    display: none; } }

.bloco3.educacao {
  background-color: transparent;
  padding-bottom: 25px; }

.bloco3.educacao .img-educacao {
  margin: 20px 0;
  display: none;
  max-width: 100%; }

@media screen and (min-width: 768px) {
  .bloco3.educacao .img-educacao {
    display: block; } }

.bloco3.educacao .internoeducacao .img-educacao {
  display: block; }

@media screen and (min-width: 768px) {
  .bloco3.educacao .internoeducacao .img-educacao {
    display: none; } }

.bloco3.educacao .container-img-educacao {
  position: relative;
  overflow: hidden; }

.bloco3.educacao .container-img-educacao .img-educacao {
  position: relative;
  width: 100%; }

.bloco3.educacao h1 {
  padding: 0; }

.lt-ie9 .bloco3.educacao p,
.lt-ie9 .section.quemsomos .bloco4.cidadania p {
  font-size: 18px; }

span.setabrancair,
span.setabrancavoltar {
  width: 7px;
  height: 12px; }

span.setabrancair {
  background-position: -382px -25px; }

span.setabrancavoltar {
  background-position: -388px 0; }

@media screen and (min-width: 768px) {
  .filtro-abas {
    width: 412px;
    float: left; }
  .filtro-abas ul {
    float: left;
    width: 335px;
    margin-right: 3%; }
  .filtro-abas ul li {
    margin: 0; }
  .filtro-abas ul li a {
    width: 104px; } }

@media screen and (min-width: 1334px) {
  .filtro-abas {
    width: 550px; }
  .filtro-abas ul {
    width: 450px; } }

.livroscarrossel,
.obras {
  display: none; }

.livroscarrossel.show {
  display: block; }

@media screen and (min-width: 768px) {
  .obras {
    display: block; }
  .obras .topo .voltar {
    display: none; }
  .wrapper.desktop .topo {
    width: 100%;
    margin-top: 7px; } }

@media screen and (min-width: 1334px) {
  .wrapper.desktop .topo {
    width: 665px;
    margin-top: 0; } }

.ordenar {
  width: 138px;
  height: 34px;
  margin: 0 auto 40px auto; }

@media screen and (min-width: 768px) {
  .ordenar {
    float: left;
    width: 75px; }
  .ordenar a {
    margin: 0;
    padding: 0; } }

@media screen and (min-width: 1334px) {
  .ordenar {
    width: 100px; } }

span.individual {
  background-position: -241px -42px; }

span.lista {
  background-position: -206px -42px; }

span.individual,
span.lista {
  width: 34px;
  height: 34px; }

.container-livros p,
.sugestoes .livro .info p {
  padding-left: 15px;
  font-family: "MyriadPro-Light", sans-serif;
  font-size: 14px;
  font-weight: bold;
  width: 293px; }

@media screen and (min-width: 768px) {
  .container-livros p {
    float: left;
    width: 122px;
    margin-top: 10px; } }

@media screen and (min-width: 1334px) {
  .container-livros p {
    width: 100px; } }

.livro {
  background-color: #fff; }
  .livro .image {
    text-align: center; }
    .livro .image img {
      display: inline; }

@media screen and (min-width: 768px) {
  .biblioteca {
    width: 98%;
    margin: 0 auto; }
  .livro {
    width: 304px;
    height: 400px;
    margin: 2px 9px 35px 2px;
    float: left; } }

@media (max-width: 820px) {
  .livrosindividual {
    width: 100%; } }

@media screen and (min-width: 1255px) and (max-width: 1333px) {
  .livro {
    width: 24%; } }

@media screen and (min-width: 1334px) and (max-width: 1399px) {
  .livro {
    width: 301px; } }

.sugestoes .livro .info {
  padding: 25px 0; }

.livrosinterno .info {
  padding-bottom: 0; }

@media screen and (min-width: 640px) {
  .livrosinterno .info {
    padding-top: 0;
    line-height: 1; } }

.livro .info p,
.livrosinterno .info p,
.sugestoes .livro .info p {
  text-align: center;
  font-family: 'MyriadPro-Light';
  margin: 0;
  width: auto;
  padding: 0;
  font-weight: bold; }

.livrosinterno .info p {
  padding-left: 7px; }

.lt-ie9 .sugestoes {
  width: 100%;
  margin: 20px auto 0 auto; }

.lt-ie9 .livrosinterno .info p {
  padding-left: 0; }

@media screen and (min-width: 768px) {
  .sugestoes {
    margin-top: 20px; }
  .livrosinterno .info p {
    padding-left: 0; } }

@media screen and (min-width: 980px) {
  .sugestoes {
    width: 620px;
    margin: 20px auto 0 auto; } }

@media screen and (min-width: 1280px) {
  .sugestoes {
    width: 100%; } }

.livro .info p.categoria,
.livrosinterno .info p.nomedoautor,
.sugestoes .livro .info p.categoria {
  color: #00657e;
  font-style: italic; }

.livrosinterno .info p.categoria {
  color: #fff;
  font-style: italic; }

.livro .info p.categoria,
.livrosinterno .info p.categoria {
  font-size: 12px;
  margin-top: 4%; }

@media screen and (min-width: 768px) {
  .livro .info p.categoria,
  .livrosinterno .info p.categoria {
    font-size: 14px;
    margin-bottom: 10px; }
  .livrosinterno .wrapinterno .info p.categoria {
    color: #00657e; } }

.livro .info p.nomedoautor,
.livrosinterno .info p.nomedoautor {
  font-size: 16px; }

.livro .info p.nomedolivro {
  color: #008fd5;
  font-size: 16px; }

@media screen and (min-width: 768px) {
  .livrosinterno .info p.nomedoautor,
  .livro .info p.nomedolivro {
    font-size: 18px; }
  .livrosinterno .wrapinterno .info p.nomedolivro {
    font-size: 30px; }
  .livro .info p.nomedolivro {
    margin-top: 15px; } }

.bottom-livros {
  margin: 30px 0 20px 0;
  height: 40px; }

.bottom-livros .voltar {
  margin-top: 10px; }

.lt-ie9 .bottom-livros .voltar {
  display: none; }

@media screen and (min-width: 768px) {
  .bottom-livros .voltar {
    display: none; } }

@media screen and (min-width: 768px) {
  a.carregarmais {
    width: 66px;
    margin: 0 auto;
    float: none; } }

.livrosinterno .info p {
  text-align: left; }

.livroscarrossel p {
  font-family: 'MyriadPro-Light';
  font-weight: normal; }

.livroscarrossel p {
  font-size: 16px;
  padding-left: 15px; }

.livroscarrossel {
  margin-top: 40px;
  margin-bottom: -15px; }

.livrosinterno img,
.internoeducacao img {
  width: 293px;
  height: 342px;
  margin: 0 auto;
  display: block; }

.livrosinterno img {
  background-color: #fff; }

@media screen and (min-width: 1280px) and (max-width: 1333px) {
  .livrosinterno img {
    width: 276px; } }

@media screen and (min-width: 1334px) {
  .livrosinterno img {
    width: 302px; } }

.lt-ie9 .livrosinterno img.capalivro {
  float: left;
  width: 304px; }

@media screen and (min-width: 640px) {
  .livrosinterno img.capalivro {
    float: left;
    width: 293px; } }

@media screen and (min-width: 768px) {
  .livrosinterno img.capalivro {
    width: 304px; } }

.internoeducacao {
  display: none; }

.lt-ie9 .internoeducacao .voltar,
.lt-ie9 .internoeducacao img,
.lt-ie9 .internocidadania .voltar {
  display: none; }

.lt-ie9 .internoeducacao,
.lt-ie9 .bloco3 .internoeducacao p {
  display: block;
  font-size: 24px; }

@media screen and (min-width: 768px) {
  .internoeducacao .voltar,
  .internoeducacao img,
  .internocidadania .voltar {
    display: none; }
  .internoeducacao,
  .bloco3 .internoeducacao p {
    display: block;
    font-size: 20px; } }

@media screen and (min-width: 1334px) {
  .internoeducacao,
  .bloco3 .internoeducacao p {
    font-size: 24px; } }

.internoeducacao img {
  background-color: #e2e2e2; }

.internoeducacao .voltar a,
.internocidadania .voltar a,
.section.investmentbank .section-com-energia a.voltar {
  text-transform: uppercase;
  font-family: "MyriadPro-Light", sans-serif;
  font-weight: bold;
  font-size: 14px;
  color: #00657e;
  padding-left: 0; }

span.setaazulvoltar {
  background-position: -235px -25px;
  width: 8px;
  height: 14px; }

.internocidadania {
  display: none; }

@media screen and (min-width: 768px) {
  .internocidadania {
    display: block; } }

.internocidadania span.linhacarrossel {
  position: absolute;
  bottom: 37px;
  left: 50%;
  margin-left: -73px;
  z-index: -55; }

@media screen and (min-width: 768px) {
  .internocidadania span.linhacarrossel {
    margin-left: -68px; } }

@media screen and (min-width: 1255px) {
  .internocidadania span.linhacarrossel {
    margin-left: -71px;
    bottom: 57px; } }

@media screen and (min-width: 1334px) {
  .internocidadania span.linhacarrossel {
    margin-left: -56px; }
  .bgprojetos span.linhacarrossel {
    bottom: 57px;
    margin-left: -81px; } }

span.linhacarrossel hr {
  width: 155px;
  height: 1px;
  color: #004378;
  background-color: #004378; }

@media screen and (min-width: 768px) {
  span.linhacarrossel hr {
    width: 161px; } }

.bgprojetos {
  background-color: #f8f8f8;
  position: relative;
  z-index: 2;
  padding-bottom: 25px;
  margin-bottom: 10px; }

@media screen and (min-width: 1255px) {
  .bgprojetos {
    margin-top: 60px;
    padding-bottom: 45px; }
  .cabecalho {
    clear: both; }
  .colunaesq,
  .colunadir {
    width: 356px;
    float: left; }
  .colunaesq {
    margin-right: 19px; } }

@media screen and (min-width: 1334px) {
  .cabecalho,
  .colunaesq,
  .colunadir {
    width: 390px; } }

.instituicoes img {
  max-width: 233px;
  max-height: 124px;
  margin: 25px auto 0 auto;
  display: block; }

.instituicoes p {
  color: #004378;
  font-family: 'MyriadPro-Light';
  font-size: 0.9em; }

.section.quemsomos .instituicoes h3.nomeinstituicao {
  font-family: "MyriadPro-Light", sans-serif;
  font-weight: bold;
  text-align: center;
  border-bottom: 1px solid #004378;
  display: inline-block;
  padding-bottom: 3px;
  color: #004378;
  font-size: 18px; }

.center {
  text-align: center; }

span.voltarcarrossel {
  background-position: -235px -25px; }

span.ircarrossel {
  background-position: -370px -25px; }

span.voltarcarrossel,
span.ircarrossel {
  width: 8px;
  height: 14px; }

.projetos-btn {
  position: relative;
  height: 14px; }

.projetos-btn a {
  position: absolute;
  top: 100px;
  z-index: 888; }

.projetos-btn a.prev {
  left: 0; }

.projetos-btn a.next {
  right: 0; }

.cards {
  width: 1152px; }

.card .linha-bottom {
  top: -15px; }

.card .news-imagem img {
  width: 100%;
  min-height: 272px;
  height: auto; }

.card .news-imagem .chamada {
  cursor: pointer; }
  .card .news-imagem .chamada a {
    color: #FFF;
    font-size: 14px;
    margin-top: 20px; }
  .card .news-imagem .chamada hr {
    width: 225px; }

.enderecos .voltar a,
.conteudo-denuncia .voltar a,
.noticias.interno .voltar a {
  color: #008fd5;
  text-transform: uppercase;
  font-size: 0.9em;
  font-family: "MyriadPro-Light", sans-serif;
  font-weight: bold;
  padding-left: 0;
  margin: 0; }

.enderecos .voltar a span.setaazulclarovoltar,
.conteudo-denuncia .voltar a span.setaazulclarovoltar,
.noticias.interno .voltar a span.setaazulclarovoltar {
  background-position: -304px -42px;
  width: 8px;
  height: 14px;
  margin-top: 1px;
  margin-right: 10px; }

.containerpremios {
  background: url(../img/bg-premios-desk.jpg) no-repeat center center;
  width: 100%;
  height: 376px;
  margin: 50px auto; }

@media screen and (min-width: 1280px) {
  .containerpremios {
    background: url(../img/bg-premios-desk.jpg) no-repeat;
    max-width: 1234px;
    min-height: 408px; } }

.premios.wrapper {
  min-height: 320px; }

@media screen and (min-width: 1280px) {
  .premios.wrapper {
    float: left;
    margin: 10px 30px 0px 30px;
    padding-bottom: 40px;
    min-height: 355px; } }

.premios p {
  color: #fff;
  text-align: left;
  margin: 0;
  font-family: 'MyriadPro-Light';
  font-size: 14px; }

.premios .dadospremio {
  margin: 10px 0; }
  .premios .dadospremio p.ano {
    font-family: "MyriadPro-Light", sans-serif;
    font-size: 18px;
    color: #fff; }

.premios .nomepremio {
  border-bottom: 1px solid #fff;
  margin-bottom: 15px; }
  .premios .nomepremio h3 {
    text-align: left;
    padding: 15px 0;
    font-family: "MyriadPro-Light", sans-serif;
    font-size: 18px;
    color: #fff; }

.grupo {
  margin-bottom: 30px; }

@media screen and (min-width: 1280px) {
  .wrap-grupo {
    max-width: 1233px;
    min-width: 1153px;
    margin: 0 auto 50px auto; }
  .grupo {
    width: 380px;
    float: left;
    margin: 0 2px; } }

@media screen and (min-width: 1334px) {
  .grupo {
    width: 406px; } }

.grupo img {
  width: 100%;
  min-height: 196px;
  height: auto;
  background-color: #cce9f7;
  display: block; }

.grupo p {
  margin: 5px 0; }

.section.quemsomos .grupo h3.tipogrupo {
  font-size: 18px;
  color: #00657e;
  font-family: "MyriadPro-Light", sans-serif;
  font-weight: bold;
  margin-top: 20px; }

.blocolink.ligueagora a {
  background-color: #014276; }

@media screen and (min-width: 1280px) {
  .blocolink.ligueagora {
    display: none; } }

.blocolink {
  position: relative;
  z-index: 0; }

/*SUSTENTABILIDADE*/
/* Projetos financiados */
.detalhecasa {
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 888;
  display: none; }

.section.sustentabilidade .wrap-bloco .documentos a {
  color: #fff;
  text-decoration: none;
  font-size: 16px;
  text-align: center; }

.section.sustentabilidade .wrap-bloco .documentos a span {
  margin: 6px 25px 0 0; }

.section.sustentabilidade .wrap-bloco .documentos img.sombra {
  top: 19px;
  left: 50%;
  margin-left: -150px; }

/*MODAL*/
.modal {
  display: none; }

.modal-overlay {
  background-color: #1d242c;
  opacity: 0.9;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
  filter: alpha(opacity=90);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: fixed;
  z-index: 10;
  display: block; }

.dialog {
  width: 745px;
  position: absolute;
  z-index: 35;
  left: 50%;
  margin-left: -372.5px;
  padding: 0 35px;
  display: none; }

.dialog.show {
  display: block; }

.dialog a.btn-fechar {
  margin: 0 -35px 0 0; }

.dialog img {
  margin-top: 30px; }

/*FALE CONOSCO*/
.denuncia {
  border: 3px solid #cce9f7;
  background-color: #fafafa; }

.lt-ie9 .denuncia {
  border: none;
  background-color: transparent; }

@media screen and (min-width: 768px) {
  .denuncia {
    border: none;
    background-color: transparent; } }

a.titledenuncia {
  color: #004378;
  font-family: 'MyriadPro-Light';
  font-size: 21px;
  margin: 15px 0; }

.lt-ie9 a.titledenuncia {
  font-size: 30px; }

@media screen and (min-height: 768px) {
  a.titledenuncia {
    font-size: 30px; } }

span.setaazulpeq {
  background-position: -350px -72px;
  width: 5px;
  height: 8px;
  margin-left: 20px;
  margin-top: 12px; }

@media screen and (min-height: 768px) {
  span.setaazulpeq {
    display: none; } }

.conteudo-denuncia {
  display: none; }

@media screen and (min-width: 768px) {
  .conteudo-denuncia {
    display: block; }
  .conteudo-denuncia ul {
    margin-bottom: 15px; } }

.conteudo-denuncia ul li {
  list-style: disc;
  font-family: "MyriadPro-Light", sans-serif;
  color: #4d4d4d;
  font-size: 16px;
  padding-bottom: 2px;
  font-weight: 100;
  width: 285px; }

.conteudo-denuncia ul li a {
  background-color: transparent;
  width: 100%;
  padding: 0;
  color: #0167ff;
  cursor: pointer; }

.conteudo-denuncia a {
  display: inline-block;
  color: #0167ff;
  font-family: "MyriadPro-Light", sans-serif; }

.conteudo-denuncia .voltar {
  margin-bottom: 15px; }

@media screen and (min-width: 768px) {
  .conteudo-denuncia .voltar {
    display: none; } }

p.margin-negative {
  margin-bottom: -15px; }

@media screen and (min-width: 768px) {
  p.margin-negative {
    margin-bottom: 0; } }

@media screen and (min-width: 768px) {
  .conteudo-bottom {
    display: none; } }

.ligue {
  margin: 35px 0 50px 0; }

.ligue a,
a.goform {
  background-color: #00657e;
  color: #fff;
  font-size: 12px;
  font-family: 'MyriadPro-Light';
  text-align: center;
  width: 136px;
  margin: 0 auto;
  padding: 10px 0; }

.modal-overlay.formulario {
  display: none; }

.header-form {
  margin-bottom: 30px; }

@media screen and (min-width: 768px) {
  .header-form {
    display: none; } }

.form {
  background-color: #fff;
  height: auto;
  z-index: -3;
  float: left;
  width: 100%; }
  .form .voltar {
    display: none; }
    .form .voltar a {
      color: #008fd5;
      text-transform: uppercase;
      font-size: 1em;
      font-family: "MyriadPro-Light", sans-serif;
      font-weight: bold;
      padding-left: 0;
      margin: 0; }
      .form .voltar a span.setaazulclarovoltar {
        background-position: -304px -42px;
        width: 8px;
        height: 14px;
        margin: 5px 8px 0 0; }
  .form p.small {
    font-size: 14px;
    margin-top: 20px;
    font-family: "MyriadPro-Light", sans-serif;
    font-style: italic; }

span.fecharazul {
  background-position: -171px -62px;
  width: 10px;
  height: 10px; }

.passos {
  width: 90px;
  margin: 10px auto 0 auto;
  position: relative; }
  .passos p {
    font-size: 14px;
    font-family: 'MyriadPro-Light';
    text-align: center;
    margin-top: 7px; }
  .passos hr {
    background-color: #fff;
    color: #fff;
    width: 53px;
    position: absolute;
    left: 19px;
    bottom: 25px; }
  .passos ul {
    width: 75px;
    margin: 0 auto; }
    .passos ul li {
      width: auto;
      font-family: "MyriadPro-Light", sans-serif; }
      .passos ul li.active {
        font-weight: bold; }

.passo2 {
  display: none; }

.passo2 {
  display: block; }

.sucesso {
  margin-top: 70px; }

span.elipsebranca {
  background-position: -177px -42px;
  width: 6px;
  height: 5px;
  margin-top: 4px; }
  span.elipsebranca.active {
    background-position: -164px -42px;
    width: 12px;
    height: 11px;
    margin-top: 0;
    margin-left: -2px; }

.sucesso h1 {
  display: block;
  color: #4d4d4d;
  font-size: 20px;
  text-align: center;
  width: 100%;
  margin: 50px auto; }

.sucesso p {
  font-size: 18px;
  width: 268px;
  margin: 0 auto 100px auto;
  font-size: 20px;
  text-align: center;
  width: 100%;
  margin-bottom: 15px; }

.sucesso a {
  margin-bottom: 50px; }

/*NOTÍCIAS*/
@media screen and (min-width: 1255px) {
  .section.noticias .bloco1 .abas ul {
    width: 912px;
    margin: 0 auto; }
  .section.noticias .bloco1 .abas ul li.aba-pressrelease {
    margin-right: 8px; }
  .section.noticias .bloco1 .abas.paises ul {
    width: 100%; } }

@media screen and (min-width: 768px) {
  .section.noticias .bloco1 .abas ul li {
    width: 32.5%;
    height: 36px;
    padding-bottom: 30px; }
  .section.noticias .bloco1 .abas.paises ul li {
    width: 155px;
    height: 36px;
    border-right: 1px solid #f4f4f4;
    border-bottom: 1px solid #f4f4f4; } }

@media screen and (min-width: 1255px) {
  .section.noticias .bloco1 .abas.paises ul li {
    width: 157px;
    border-bottom: none; } }

@media screen and (min-width: 1334px) {
  .section.noticias .bloco1 .abas.paises ul li {
    width: 173px; } }

@media screen and (min-width: 1400px) {
  .section.noticias .bloco1 .abas.paises ul li {
    width: 174.7px; } }

.section.noticias .bloco1 .abas ul li a {
  width: 80%;
  background-color: #cde0e6;
  color: #00657e;
  font-family: 'MyriadPro-Light';
  font-size: 12px;
  padding: 6px 16px;
  text-align: center; }

@media screen and (min-width: 768px) {
  .section.noticias .bloco1 .abas ul li a {
    width: 250px;
    height: 44px;
    font-size: 24px;
    padding: 11px 32px 1px 16px; }
  .section.noticias .bloco1 .abas.paises ul li a {
    font-size: 18px;
    font-weight: 500;
    width: 107px;
    height: 40px;
    padding: 15px 32px 1px 16px; } }

@media screen and (min-width: 1255px) {
  .section.noticias .bloco1 .abas.paises ul li a {
    width: 109px; } }

@media screen and (min-width: 1334px) {
  .section.noticias .bloco1 .abas.paises ul li a {
    width: 125px; } }

@media screen and (min-width: 1400px) {
  .section.noticias .bloco1 .abas.paises ul li a {
    width: 127px; } }

.section.noticias .bloco1 .abas ul li a.active {
  background-color: #004379;
  color: #fff; }

.section.noticias .bloco1 .abas ul li.aba-noticia {
  margin-right: 3px; }

@media screen and (min-width: 768px) {
  .section.noticias .bloco1 .abas ul li.aba-noticia {
    margin-right: 8px; } }

.section.noticias .bloco1 .abas ul li a span {
  margin-top: 5px; }

@media screen and (min-width: 768px) {
  .section.noticias .bloco1 .abas ul li a span {
    margin-top: 15px; }
  .section.noticias .bloco1 .abas.paises ul li a span {
    margin-top: 10px; } }

span.setaazul-pq {
  background-position: -329px -69px;
  width: 5px;
  height: 8px; }

span.setaazulbaixo-pq {
  background-position: -318px -71px;
  width: 8px;
  height: 5px; }

span.selectazul {
  background-position: -191px -61px;
  width: 8px;
  height: 12px;
  margin-top: 5px; }

@media screen and (min-width: 768px) {
  .conteudo-pressrelease .select {
    display: none; } }

.conteudo-noticias ul.listatags,
.conteudo-pressrelease ul.listatags {
  display: none; }

.conteudo-pressrelease {
  display: none; }

.conteudo-noticias .wrapper.boxfiltrar,
.conteudo-pressrelease .wrapper.boxfiltrar {
  min-width: 290px;
  margin: 0 auto; }

@media screen and (min-width: 768px) {
  .conteudo-noticias .wrapper.boxfiltrar,
  .conteudo-pressrelease .wrapper.boxfiltrar {
    border-top: 1px solid #67c9f8;
    border-bottom: 1px solid #67c9f8;
    margin: 45px auto; } }

.conteudo-noticias p.filtrar,
.conteudo-pressrelease p.filtrar {
  width: 70px; }

@media screen and (min-width: 768px) {
  .conteudo-noticias p.filtrar,
  .conteudo-pressrelease p.filtrar {
    width: auto;
    padding-top: 11px;
    font-size: 18px;
    margin: 0 0 14px 0; } }

.maisnoticias.desktop .noticia {
  padding-bottom: 15px;
  border-bottom: 1px solid #67c9f8;
  margin-top: 10px; }

@media (min-width: 1200px) {
  .maisnoticias.desktop .noticia,
  .noticia.main {
    margin: 0; } }

@media (max-width: 820px) {
  .maisnoticias.desktop .noticia,
  .noticia.main {
    margin: 3% 0 0; } }

@media (max-width: 480px) {
  .maisnoticias.desktop .noticia,
  .noticia.main {
    margin: 3% 0 0; } }

@media (min-width: 1200px) {
  .maisnoticias.desktop .noticia.semfoto .wrapper {
    width: 100%; } }

@media screen and (min-width: 768px) {
  .detalhe-noticia h1.titulodestaque {
    text-transform: uppercase; } }

.imagem-noticia {
  position: relative; }

.maisnoticias.desktop .noticia ul.tag li a {
  background-color: transparent;
  padding: 0;
  width: auto;
  font-style: italic;
  color: #119bde; }

.conteudo-noticias a.leiamais,
.conteudo-pressrelease a.leiamais,
.detalhe-noticia a.leiamais {
  margin-left: 0; }
  @media (max-width: 480px) {
    .conteudo-noticias a.leiamais,
    .conteudo-pressrelease a.leiamais,
    .detalhe-noticia a.leiamais {
      display: block;
      margin: 25px 0;
      clear: both; }
      .conteudo-noticias a.leiamais span,
      .conteudo-pressrelease a.leiamais span,
      .detalhe-noticia a.leiamais span {
        margin-top: 5px;
        margin-left: 7px; } }

@media screen and (min-width: 768px) {
  .conteudo-noticias a.leiamais,
  .conteudo-pressrelease a.leiamais,
  .detalhe-noticia a.leiamais {
    margin-bottom: 30px; } }

@media screen and (min-width: 768px) {
  .detalhe-noticia a.leiamais {
    display: none; }
  .detalhe-noticia .maisnoticias.desktop a.leiamais {
    display: block;
    margin-top: 4%; } }
  @media screen and (min-width: 768px) and (max-width: 820px) {
    .detalhe-noticia .maisnoticias.desktop a.leiamais {
      margin-top: 4%; } }

@media screen and (min-width: 768px) {
    .detalhe-noticia .maisnoticias.desktop a.leiamais span {
      margin-top: 5px;
      margin-left: 8px; } }

.conteudo-noticias h1,
.conteudo-pressrelease h1 {
  margin-bottom: 0; }

.conteudo-noticias .paginacao,
.conteudo-pressrelease .paginacao {
  margin-top: 15px; }

@media screen and (min-width: 768px) {
  .conteudo-noticias .paginacao,
  .conteudo-pressrelease .paginacao {
    width: 200px; } }

.paginacao a.btn-prev,
.paginacao a.btn-next {
  height: 14px;
  width: 8px;
  margin-top: 5px; }

.paginacao ul {
  position: relative;
  float: left;
  left: 47%; }

.paginacao ul li {
  width: auto;
  list-style: none;
  position: relative;
  float: left;
  right: 50%;
  margin-left: 5px; }

.paginacao ul li a,
.share ul li a {
  background-color: transparent;
  width: auto;
  padding: 0;
  font-family: "MyriadPro-Light", sans-serif;
  font-size: 15px;
  color: #00467d; }

.paginacao ul li a.active {
  font-size: 18px;
  margin-top: -2px; }

img.playmobile {
  position: absolute;
  top: 60px;
  left: 50%;
  margin-left: -75px; }

img.playdesk {
  display: none; }

@media screen and (min-width: 768px) {
  img.playmobile {
    display: none; }
  img.playdesk {
    display: block;
    position: absolute;
    top: 90px;
    left: 190px; }
  .noticias.interno img.playdesk {
    top: 130px;
    left: 50%;
    margin-left: -65px; } }

@media screen and (min-width: 980px) {
  .noticias.interno img.playdesk {
    top: 190px; } }

@media screen and (min-width: 1280px) {
  .noticias.interno img.playdesk {
    top: 270px; } }

.noticias.interno .voltar {
  margin-top: 20px; }
  @media (max-width: 480px) {
    .noticias.interno .voltar {
      margin-top: 10%; } }

@media screen and (min-width: 768px) {
  .noticias.interno .voltar {
    margin-bottom: 30px; } }

.noticias.interno span.data {
  margin-top: 15px; }
  @media (max-width: 480px) {
    .noticias.interno span.data {
      margin: 20px 0;
      clear: both;
      display: block; } }

.detalhe-noticia p {
  font-size: 16px;
  font-family: 'MyriadPro-Light';
  color: #4d4d4d; }

.detalhe-noticia ul.tag {
  margin-top: 35px; }

.share {
  margin-top: 40px; }
  @media (max-width: 480px) {
    .share {
      clear: both;
      width: 100%; } }

@media screen and (min-width: 768px) {
  .share {
    margin-top: 15px;
    margin-bottom: 15px; } }

.share ul.social {
  width: 200px;
  margin: 0 auto; }

@media screen and (min-width: 768px) {
  .share ul.social {
    float: right; } }

.share ul.social li {
  display: inline-block;
  *display: inline;
  zoom: 1;
  width: auto;
  color: #000; }

.share ul.social li.divisor {
  font-size: 8px;
  vertical-align: top;
  margin: 11px 5px 0 5px; }

.shareicon {
  display: none; }

@media screen and (min-width: 768px) {
  .shareicon {
    display: block;
    width: 100px; }
  .noticias.interno .shareicon p {
    color: #000;
    font-size: 23.5px;
    font-family: "MyriadPro-Light", sans-serif;
    font-weight: 500;
    margin-top: 22px; } }

span.fb {
  background-position: 0 -305px;
  width: 11px;
  height: 24px; }

span.gplus {
  background-position: -13px -304px;
  width: 30px;
  height: 23px; }

span.linkedin {
  background-position: -46px -306px;
  width: 23px;
  height: 23px; }

span.twitter {
  background-position: -71px -299px;
  width: 27px;
  height: 28px; }

span.mail {
  background-position: -100px -306px;
  width: 29px;
  height: 22px; }

span.share {
  background-position: -131px -289px;
  width: 32px;
  height: 40px; }

.anterior-noticia {
  display: none; }

@media screen and (min-width: 768px) {
  .anterior-noticia {
    display: block; } }

.proxima-noticia,
.anterior-noticia {
  margin-top: 15px;
  width: 45%; }

.proxima-noticia {
  margin-top: 5%; }
  .proxima-noticia a {
    float: right;
    width: 90%; }
    .proxima-noticia a:first-child {
      margin-right: 0; }
      .proxima-noticia a:first-child span {
        margin-right: 9px; }
    .proxima-noticia a:last-child {
      margin-left: 15px;
      width: 75%; }
    .proxima-noticia a span {
      float: right;
      margin-top: 2%; }

.anterior-noticia {
  margin-top: 5%; }
  .anterior-noticia a {
    float: left;
    width: 90%; }
    .anterior-noticia a:last-child {
      width: 75%; }
    .anterior-noticia a span {
      margin-top: 2%;
      float: left; }

.proxima-noticia a.bg,
.anterior-noticia a.bg {
  background-color: #004277;
  width: 32px;
  height: 32px; }
  .proxima-noticia a.bg span,
  .anterior-noticia a.bg span {
    margin-top: 9px;
    margin-left: 9px; }

.proxima-noticia a {
  margin-right: 7px;
  margin-bottom: 10px; }

.lt-ie9 .anterior-noticia a.bg {
  margin-right: 7px; }

@media screen and (min-width: 768px) {
  .anterior-noticia a.bg {
    margin-right: 7px; } }

.proxima-noticia a,
.anterior-noticia a {
  color: #606765;
  font-size: 1em;
  font-family: 'MyriadPro-Light';
  font-style: italic;
  line-height: 1; }

.proxima-noticia a {
  text-align: right; }

@media screen and (min-width: 768px) {
  .anterior-noticia a {
    text-align: left; } }

.proxima-noticia a span,
.anterior-noticia a span {
  color: #119bde;
  font-family: "MyriadPro-Light", sans-serif;
  font-style: normal; }

.imagem-noticia,
.noticia-vejamais img,
img.imgnot,
.maisnoticias.desktop img.imgnot,
.video,
video {
  width: 100%;
  min-width: 292px;
  height: auto; }

video p {
  text-align: center;
  font-size: 18px !important;
  margin-top: 100px; }

img.imgnot,
.maisnoticias.desktop img.imgnot {
  min-height: 294px; }
  @media (max-width: 480px) {
    img.imgnot,
    .maisnoticias.desktop img.imgnot {
      min-height: 0; } }

@media screen and (min-width: 768px) {
  .imagem-noticia,
  .maisnoticias.desktop .imagem-noticia {
    float: none;
    width: 468px;
    margin: 0 auto; }
  img.imgnot,
  .noticias.interno .maisnoticias.desktop img.imgnot {
    width: 433px;
    height: 264px;
    margin: 0 auto 34px auto;
    display: block; }
  .noticias.interno .maisnoticias.desktop img.imgnot {
    margin-top: 20px; }
  .noticias.interno .noticia.main img.imgnot {
    margin-bottom: 0; }
  .maisnoticias.desktop .noticia .wrapper {
    float: right;
    width: 693px; }
  .section.quemsomos .noticias.interno .maisnoticias.desktop .noticia .wrapper h2 {
    width: auto;
    font-size: 1.8em;
    margin-top: 20px;
    color: #008ed4; }
  .maisnoticias.desktop .noticia .wrapper p {
    margin: 10px 0 7px 0; }
  .noticias.interno img.imgnot {
    width: 100%;
    height: auto; } }

@media screen and (min-width: 800px) {
  .maisnoticias.desktop .noticia .wrapper {
    width: 100%; } }

@media screen and (min-width: 980px) {
  .imagem-noticia,
  .maisnoticias.desktop .imagem-noticia {
    margin: 0 auto; } }

@media screen and (min-width: 1280px) {
  img.imgnot,
  .noticias.interno .maisnoticias.desktop img.imgnot {
    display: inline-block; }
  .maisnoticias.desktop .noticia .wrapper {
    width: 50%;
    margin-top: 3%; }
  .noticias.interno .wrapper {
    width: 96%; }
  .section.quemsomos .noticias.interno .noticia .wrapper h2 {
    font-size: 80px; }
  .noticias.interno .noticia .wrapper p {
    font-size: 18px; }
  .imagem-noticia,
  .maisnoticias.desktop .imagem-noticia {
    float: left; } }

.noticia-vejamais img {
  background-color: #ededed;
  border-bottom: 1px solid #008fd5; }

.noticia-vejamais p.titulonoticia {
  text-align: center;
  color: #008fd5;
  font-family: 'MyriadPro-Light';
  font-size: 16px; }

@media screen and (min-width: 768px) {
  .vejatambem {
    margin-top: 100px; } }

.vejatambem p.title {
  padding-bottom: 10px;
  border-bottom: 1px solid #008fd5; }

.maisnoticias.desktop {
  display: none; }

@media screen and (min-width: 768px) {
  .maisnoticias.mobile {
    display: none; }
  .maisnoticias.desktop {
    display: block; } }

.contato-noticias {
  display: none; }

@media screen and (min-width: 768px) {
  .contato-noticias {
    display: block;
    width: 100%;
    height: auto;
    margin: 25px auto 0 auto; } }

@media screen and (min-width: 1280px) {
  .contato-noticias {
    width: 100%; }
  .contato-noticias .fullwindow {
    display: block; } }

.detalhe-noticia .wrapper ul.tag li {
  display: inline-block;
  padding: 0 8px; }
  .detalhe-noticia .wrapper ul.tag li:first-child {
    margin-left: 0;
    padding-left: 0; }
  .detalhe-noticia .wrapper ul.tag li a {
    color: #668fb0;
    font-size: 1em;
    text-transform: uppercase;
    font-weight: bold; }

.detalhe-noticia .video {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  height: 0; }

.detalhe-noticia .video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

/*INVESTMENT BANKING*/
span.pretobaixo {
  background-position: -365px -105px;
  width: 8px;
  height: 5px;
  position: absolute;
  top: 35px;
  left: 50%;
  margin-left: -4px;
  display: none; }

span.pretobaixo.show {
  display: block; }

.ref-box p {
  font-family: "MyriadPro-Light", sans-serif;
  font-size: 16px;
  font-weight: 100; }

@media screen and (min-width: 768px) {
  .selos {
    margin: 20px 0 0 0; }
  .selos .selo {
    border: 1px solid #43525a;
    margin-bottom: 54px;
    float: left; }
  .selos .selo.meio {
    margin-left: 54px; } }

@media screen and (min-width: 1024px) {
  .selos .selo {
    margin-left: 54px; }
  .selos .selo img {
    width: 254px; } }

@media screen and (min-width: 1280px) {
  .selos .selo,
  .selos .selo.meio {
    margin-left: 111px; }
  .selos .selo img {
    width: 298px; } }

@media screen and (min-width: 1334px) {
  .selos .selo,
  .selos .selo.meio {
    margin-left: 160px; } }

.custom-form-radio,
.custom-form-radio.custom-form-focused {
  float: left;
  display: block;
  width: 11px;
  height: 11px;
  margin-right: 17px;
  margin-top: 4px;
  background: url(../img/sprite.png) no-repeat scroll -363px -127px transparent; }

.custom-form-radio.custom-form-checked {
  background-position: -363px -114px; }

.btn-cadastro {
  margin: 63px 0 68px 0; }

.btn-cadastro a.cancel {
  background-color: #9d9d9d;
  margin-right: 67px; }

.btn-cadastro a.submit {
  background-color: #0a6f87; }

.btn-cadastro a {
  color: #fff;
  padding: 10px 58px;
  font-family: 'MyriadPro-Light';
  font-size: 12px; }

form[name="sejaclientedesk"] fieldset span.errormessage {
  display: none;
  float: left;
  color: #ff0000;
  font-size: 14px;
  font-style: italic;
  font-family: "MyriadPro-Light", sans-serif;
  margin: 28px 0 0 20px; }

/*ESTILOS H*/
.bloco3 h3 {
  padding: 25px 0; }

@media screen and (min-width: 768px) {
  .bloco3.timeline h3 {
    margin-left: 35px; } }

.nomarginbottom {
  margin-bottom: 0 !important; }

@media screen and (min-width: 768px) {
  .nomarginleft {
    margin-left: 0 !important; } }

.section.principaispremios .premios .nomepremio h3 {
  color: #fff;
  font-family: "MyriadPro-Light", sans-serif;
  font-size: 18px; }

/*404*/
.section.naoencontrada .bloco1 {
  width: 290px;
  margin-top: 35px; }

@media screen and (min-width: 768px) {
  .section.naoencontrada .bloco1 {
    width: 658px; } }

@media screen and (min-width: 1024px) {
  .section.naoencontrada .bloco1 {
    width: 920px; } }

@media screen and (min-width: 1280px) {
  .section.naoencontrada .bloco1 p.desculpe {
    font-size: 24px; } }

.section.naoencontrada h2 {
  font-size: 18px;
  margin-bottom: 10px; }

@media screen and (min-width: 768px) {
  .section.naoencontrada h2 {
    font-size: 21px; } }

.section.naoencontrada .bloco1 ul li {
  color: #009FE1; }

@media screen and (min-width: 768px) {
  .section.naoencontrada .bloco1 ul li {
    padding-bottom: 15px; } }

.section.naoencontrada .bloco1 ul li span {
  color: #4d4d4d; }

.section.naoencontrada p.infocampo {
  font-size: 18px;
  margin-top: 0; }

@media screen and (min-width: 768px) {
  .section.naoencontrada p.infocampo {
    font-size: 21px;
    margin-top: 35px; } }

.section.naoencontrada p.infocampo.clique {
  margin-bottom: 5px; }

@media screen and (min-width: 768px) {
  .section.naoencontrada p.infocampo.clique {
    margin-bottom: 15px; } }

.section.naoencontrada form {
  position: relative;
  margin: 30px 0; }

.section.naoencontrada form input {
  width: 278px;
  padding: 7px 5px;
  font-style: italic;
  font-size: 14px;
  color: #3e4851; }

@media screen and (min-width: 768px) {
  .section.naoencontrada form input {
    width: 646px; } }

@media screen and (min-width: 1024px) {
  .section.naoencontrada form input {
    width: 876px; } }

.section.naoencontrada form a span.lupapreta {
  position: absolute;
  width: 17px;
  height: 19px;
  top: 7px; }

@media screen and (min-width: 1024px) {
  .section.naoencontrada form a span.lupapreta {
    right: 50px; } }

span.setapreta,
span.setapretair {
  width: 8px;
  height: 14px; }

span.setapreta {
  background-position: -363px -141px; }

span.setapretair {
  background-position: -363px -157px; }

.section.naoencontrada .voltar a {
  text-transform: uppercase;
  font-family: "MyriadPro-Light", sans-serif;
  font-weight: bold;
  font-size: 14px;
  color: #333e48;
  padding-left: 0; }

/*DOWNLOADS*/
.downloads {
  display: none; }

.section-downloads {
  margin-top: 30px;
  position: relative; }

.section-downloads h4 {
  color: #43525A;
  font-family: "MyriadPro-Light", sans-serif; }

.section-downloads a.visualizardocs {
  color: #fff;
  text-align: center;
  font-size: 16px;
  padding: 6px 30px 7px 30px;
  width: 200px;
  margin: 0 auto;
  background-color: #43525A; }

.section-downloads a.visualizardocs span {
  margin-top: 8px; }

.section-downloads img.sombra {
  width: 282px;
  left: 50%;
  margin-left: -141px; }

.list-downloads {
  display: none; }

@media screen and (min-width: 768px) {
  .downloads {
    display: block; }
  .downloads .downlista {
    width: 50%;
    margin: 30px 0 20px 0; }
  .downloads .downlista h2 {
    color: #43525a;
    font-family: 'MyriadPro-Light';
    font-size: 24px;
    margin: 0 0 20px;
    width: auto; }
  .downloads .downlista h2 strong {
    font-family: 'MyriadPro-Bold'; }
  .downloads .downlista ul li {
    list-style: none;
    margin: 0 0 10px;
    padding: 0; }
  .downloads .downlista ul li a {
    box-sizing: border-box;
    width: auto;
    color: #43525a;
    font-size: 14px;
    min-height: 33px;
    padding: 9px 0 0 40px; } }

/*FORM AREA CLIENTE*/
ul.areaclientemenu li form[name="login"] {
  background-color: #004379;
  padding: 10px 0 36px 33px;
  height: auto;
  display: none; }

ul.areaclientemenu li form[name="login"] input {
  color: #4d4d4d;
  font-size: 12px;
  font-style: italic;
  margin-bottom: 5px;
  padding: 3px;
  width: 147px; }

ul.areaclientemenu li form[name="login"] ::-webkit-input-placeholder {
  color: #048acc; }

ul.areaclientemenu li form[name="login"] ::-moz-input-placeholder {
  color: #048acc; }

ul.areaclientemenu li form[name="login"] :-ms-input-placeholder {
  color: #048acc; }

ul.areaclientemenu li form[name="login"] a.esquecisenha {
  color: #048acc;
  font-size: 10px;
  text-align: right;
  text-decoration: underline;
  width: auto;
  font-style: italic;
  padding-right: 37px;
  padding-top: 0; }

.lt-ie9 ul.areaclientemenu li form[name="login"] input[type=button] {
  padding: 6px 5px 4px 5px; }

ul.areaclientemenu li form[name="login"] input[type=button] {
  background-color: #048acc;
  color: #fff;
  text-transform: uppercase;
  text-align: center;
  font-size: 14px;
  border: none;
  padding: 6px 5px 2px 5px;
  width: 98px;
  float: right;
  margin-right: 37px; }

li.hr.marginneg {
  margin-top: -1px; }

/*TEMPLATE GENÉRICO*/
.section.template .modelo-titulo p {
  margin: 10px 0; }

.section.template .modelo-download h3 {
  color: #43525a;
  font-size: 24px;
  margin-bottom: 20px; }

.visualizardownload .button {
  width: auto;
  line-height: 40px;
  margin-top: 20px;
  text-align: center;
  color: #fefefe;
  background-color: #4e5c63; }

.visualizardownload .button .setabranca-pq {
  margin: 15px 10px 0px 0px; }

.visualizardownload img.sombra {
  width: 100%;
  left: 1%;
  position: relative;
  bottom: 16px; }

.section.modelodownload {
  display: none; }

.section.template .download {
  display: none; }

@media screen and (min-width: 768px) {
  .section.template .download {
    display: block;
    width: 50%;
    margin: 30px 0 20px 0; }
  .section.template .download ul li {
    list-style: none;
    margin: 0 0 10px;
    padding: 0; }
  .section.template .download ul li a {
    width: auto;
    color: #43525a;
    font-size: 14px;
    min-height: 33px;
    padding: 9px 0 0 40px;
    display: inline-block; } }

.section.template .modelo-ano .aba-anos {
  overflow: hidden; }

.section.template .modelo-ano ul.anos {
  width: 100%;
  height: 32px;
  margin: 30px 0; }

.section.template .modelo-ano ul.anos li {
  float: left;
  list-style: none;
  margin: 0 1px 0 0;
  padding: 0 0 10px; }

.section.template .modelo-ano ul.anos li a {
  font-family: 'MyriadPro-Bold';
  background-color: #d9dcde;
  display: block;
  color: #fff;
  font-size: 14px;
  width: auto;
  height: 24px;
  margin: 0;
  padding: 7px 30px 0 30px; }

.section.template .modelo-ano ul.anos li.active {
  background: url(../img/btn-arrow-grey-down.png) bottom center no-repeat; }

.section.template .modelo-ano ul.anos li.active a {
  background-color: #43525a; }

.section.template .modelo-ano h3 {
  font-family: 'MyriadPro-Bold';
  color: #43525a;
  font-size: 36px;
  margin-bottom: 20px; }

.section.template .modelo-ano .download {
  display: none; }

.section.template .modelo-ano .download.show {
  display: block; }

.section.template .modelo-aba .abas {
  max-width: 100%;
  margin: 30px 0 0 0; }

.section.template .modelo-aba ul li {
  margin-left: 0;
  margin-right: 5px;
  width: 49.5%;
  overflow: hidden;
  padding: 0; }

@media screen and (max-width: 1024px) {
  .section.template .modelo-aba ul li {
    width: 49.6%;
    margin-right: 0; } }

.section.template .modelo-aba ul li a {
  line-height: 33px;
  text-align: center;
  width: auto;
  overflow: hidden;
  background-color: #b4babd;
  color: #FFF;
  font-family: "MyriadPro-Light", sans-serif;
  font-size: 14px; }

.section.template .modelo-aba ul li a.active {
  background-color: #43525a; }

.section.template .modelo-aba .abas ul li a span {
  margin-top: 13px;
  margin-right: 35px; }

.section.template .modelo-aba .conteudo-aba {
  display: none; }

.section.template .modelo-aba .conteudo-aba.show {
  display: block; }

.section.template .modelo-aba .conteudo-aba.show h3 {
  margin: 30px 0 15px 0; }

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIl9mb250cy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9fYm91cmJvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9zZXR0aW5ncy9fcHJlZml4ZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvc2V0dGluZ3MvX3B4LXRvLWVtLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL3NldHRpbmdzL19hc3NldC1waXBlbGluZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvX2Fzc2lnbi1pbnB1dHMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL19jb250YWlucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvX2NvbnRhaW5zLWZhbHN5LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9faXMtbGVuZ3RoLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9faXMtbGlnaHQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL19pcy1udW1iZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL19pcy1zaXplLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9fcHgtdG8tZW0uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL19weC10by1yZW0uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL19zaGFkZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvX3N0cmlwLXVuaXRzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9fdGludC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvX3RyYW5zaXRpb24tcHJvcGVydHktbmFtZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvX3VucGFjay5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvX21vZHVsYXItc2NhbGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvaGVscGVycy9fY29udmVydC11bml0cy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL19kaXJlY3Rpb25hbC12YWx1ZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvaGVscGVycy9fZm9udC1zb3VyY2UtZGVjbGFyYXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvaGVscGVycy9fZ3JhZGllbnQtcG9zaXRpb25zLXBhcnNlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL19saW5lYXItYW5nbGUtcGFyc2VyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2hlbHBlcnMvX2xpbmVhci1ncmFkaWVudC1wYXJzZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvaGVscGVycy9fbGluZWFyLXBvc2l0aW9ucy1wYXJzZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvaGVscGVycy9fbGluZWFyLXNpZGUtY29ybmVyLXBhcnNlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL19yYWRpYWwtYXJnLXBhcnNlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL19yYWRpYWwtcG9zaXRpb25zLXBhcnNlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL19yYWRpYWwtZ3JhZGllbnQtcGFyc2VyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2hlbHBlcnMvX3JlbmRlci1ncmFkaWVudHMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvaGVscGVycy9fc2hhcGUtc2l6ZS1zdHJpcHBlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL19zdHItdG8tbnVtLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NzczMvX2FuaW1hdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jc3MzL19hcHBlYXJhbmNlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NzczMvX2JhY2tmYWNlLXZpc2liaWxpdHkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY3NzMy9fYmFja2dyb3VuZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jc3MzL19iYWNrZ3JvdW5kLWltYWdlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NzczMvX2JvcmRlci1pbWFnZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jc3MzL19jYWxjLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NzczMvX2NvbHVtbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY3NzMy9fZmlsdGVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NzczMvX2ZsZXgtYm94LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NzczMvX2ZvbnQtZmFjZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jc3MzL19mb250LWZlYXR1cmUtc2V0dGluZ3Muc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY3NzMy9faGlkcGktbWVkaWEtcXVlcnkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY3NzMy9faHlwaGVucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jc3MzL19pbWFnZS1yZW5kZXJpbmcuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY3NzMy9fa2V5ZnJhbWVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NzczMvX2xpbmVhci1ncmFkaWVudC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jc3MzL19wZXJzcGVjdGl2ZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jc3MzL19wbGFjZWhvbGRlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jc3MzL19yYWRpYWwtZ3JhZGllbnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY3NzMy9fc2VsZWN0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NzczMvX3RleHQtZGVjb3JhdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jc3MzL190cmFuc2Zvcm0uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY3NzMy9fdHJhbnNpdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jc3MzL191c2VyLXNlbGVjdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9hZGRvbnMvX2JvcmRlci1jb2xvci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9hZGRvbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL19ib3JkZXItc3R5bGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL19ib3JkZXItd2lkdGguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL19idXR0b25zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2FkZG9ucy9fY2xlYXJmaXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL19lbGxpcHNpcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9hZGRvbnMvX2ZvbnQtc3RhY2tzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2FkZG9ucy9faGlkZS10ZXh0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2FkZG9ucy9fbWFyZ2luLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2FkZG9ucy9fcGFkZGluZy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9hZGRvbnMvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2FkZG9ucy9fcHJlZml4ZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL19yZXRpbmEtaW1hZ2Uuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL19zaXplLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2FkZG9ucy9fdGV4dC1pbnB1dHMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL190aW1pbmctZnVuY3Rpb25zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2FkZG9ucy9fdHJpYW5nbGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL193b3JkLXdyYXAuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvX2JvdXJib24tZGVwcmVjYXRlZC11cGNvbWluZy5zY3NzIiwiX3ZhcmlhYmxlcy5zY3NzIiwiX21peGlucy5zY3NzIiwiX2dlbmVyaWNzLnNjc3MiLCJfcmVzcG9uc2l2ZS1tZWRpYS5zY3NzIiwiX21lbnUtZm9vdGVyLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIl9mb250cy5zY3NzXCI7XHJcbkBpbXBvcnQgXCJib3VyYm9uXCI7XHJcbkBpbXBvcnQgXCJfdmFyaWFibGVzLnNjc3NcIjtcclxuQGltcG9ydCBcIl9taXhpbnMuc2Nzc1wiO1xyXG5AaW1wb3J0IFwiX2dlbmVyaWNzLnNjc3NcIjtcclxuQGltcG9ydCBcIl9tZW51LWZvb3Rlci5zY3NzXCI7XHJcbkBpbXBvcnQgXCJfcmVzcG9uc2l2ZS1tZWRpYS5zY3NzXCI7XHJcblxyXG4uY2FycmVnYW5kby1taW5pe1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgd2lkdGg6IDIwJTtcclxuICBmbG9hdDogcmlnaHQ7XHJcbiAgbWFyZ2luLXJpZ2h0OiAyOCU7XHJcbiAgaW1ne1xyXG4gICAgd2lkdGg6IDMycHg7XHJcblxyXG4gIH1cclxufVxyXG5mb3JtLndlYWx0aG1hbmFnZW1lbnQsIGZvcm0uaW5zdGl0dWNpb25hbGZvcm17XHJcbiAgLnNlbmhhe1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIG1hcmdpbi10b3A6IDE2JTtcclxuICAgIHdpZHRoOiAxNjNweDtcclxuICAgIGhlaWdodDogNDVweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbiAgLmxhYmVsX2FyZWF7XHJcbiAgICBjb2xvcjokYmx1ZTEwO1xyXG4gIH1cclxufVxyXG5ib2R5LCBodG1sIHtcclxuICBmb250LWZhbWlseTogJ015cmlhZFByby1MaWdodCc7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGZvbnQtc2l6ZToxMDAlO1xyXG59XHJcblxyXG4uY2xlYXJmaXg6YWZ0ZXIge1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBmb250LXNpemU6IDA7XHJcbiAgY29udGVudDogXCIgXCI7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbiAgaGVpZ2h0OiAwO1xyXG59XHJcbi5jbGVhcmZpeCB7XHJcbiAgJi5pZm1te1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KSB7XHJcbiAgICAgIEBpbmNsdWRlIG1hcmdpbigwIDUlKTtcclxuICAgIH1cclxuICB9XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG4qIGh0bWwgLmNsZWFyZml4IHsgaGVpZ2h0OiAxJTsgfVxyXG4uY2xlYXJmaXgge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG5cclxuLndyYXBwZXIge1xyXG4gIHdpZHRoOiA5NiU7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi5tYWluY29udGVudCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgYmFja2dyb3VuZDojZjVmNWY1O1xyXG4gIC8vIG1heC13aWR0aDoxMjgwcHg7XHJcblxyXG4gIC5jb250ZW50LWJvZHl7XHJcbiAgICB3aWR0aDogOTAlO1xyXG4gICAgLy9tYXgtd2lkdGg6IDExMzZweDtcclxuICAgIC8vIG1heC13aWR0aDogMTIxMHB4O1xyXG4gICAgLy8gbWF4LXdpZHRoOiAxMTM0cHg7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIG1hcmdpbjphdXRvO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjojRkZGRkZGO1xyXG4gICAgbWF4LXdpZHRoOiAxMTQxcHg7XHJcblxyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk1MXB4KSBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgIHdpZHRoOjgxJTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIGFuZCAobWF4LXdpZHRoOiAxNDQwcHgpe1xyXG4gICAgICB3aWR0aDo4MSU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTUxcHgpIGFuZCAobWF4LXdpZHRoOiAxMjc2cHgpe1xyXG4gICAgLy8gICB3aWR0aDo5NiU7XHJcbiAgICAvLyAgIC8vIG1heC13aWR0aDoxMjEwcHg7XHJcbiAgICAvLyB9XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICB3aWR0aDogOTYlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICBoNCB7XHJcbiAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjU5cHgpIHtcclxuLy8gICAuc2VjdGlvbiB7XHJcbi8vICAgICB3aWR0aDogMTAwJTtcclxuLy8gICB9XHJcbi8vIH1cclxuXHJcbi5tYWluY29udGVudCAuY29udGVudC1ib2R5IC5zZWN0aW9uIC5jb250YWluZXIge1xyXG4gIC8vcGFkZGluZy10b3A6MTIlO1xyXG4gIHBhZGRpbmctdG9wOjE0MnB4O1xyXG4gIG1hcmdpbjogYXV0bztcclxuICAvL21heC13aWR0aDogMTIxNXB4O1xyXG4gIC8vbWF4LXdpZHRoOiAxMTM5cHg7XHJcbiAgbWF4LXdpZHRoOiAxMTQwcHg7XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpIHtcclxuICAgIHBhZGRpbmctdG9wOjEwNnB4O1xyXG4gIH1cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgIHBhZGRpbmctdG9wOiA3NXB4O1xyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG4vL0VBU1kgUElFIENIQVJUXHJcblxyXG5kaXYuY2hhcnQtZGVzdGFxdWUge1xyXG4gIHdpZHRoOiAxNjBweDtcclxuICBoZWlnaHQ6IDE2MHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXJnaW4tdG9wOiAxMCU7XHJcblxyXG4gIC5wZXJjZW50YWdlIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGNvbG9yOiAkYmx1ZTg7XHJcbiAgICBmb250LWZhbWlseTogXCJNeXJpYWRQcm8tTGlnaHRcIiwgc2Fucy1zZXJpZjtcclxuICAgIGZvbnQtc2l6ZTogMS44ZW07XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMzQlIGF1dG87XHJcbiAgICB3aWR0aDo2NSU7XHJcbiAgfVxyXG5cclxuICBjYW52YXMge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICB9XHJcblxyXG59Ly8uZWFzeVBpZUNoYXJ0XHJcblxyXG4ucm94byB7XHJcbiAgLypjb2xvcjogIzAwMjc0NiAhaW1wb3J0YW50OyovXHJcbiAgY29sb3I6IzU3MWM1MiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udmVyZGUge1xyXG4gIGNvbG9yOiAjMDBhMzc4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jaW56YSB7XHJcbiAgY29sb3I6ICM0ZDRkNGQgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmF6dWwge1xyXG4gIGNvbG9yOiAjMDA4ZmU5ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5iZ2F6dWwge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMzNiNjk7XHJcbn1cclxuXHJcbi5iZ2F6dWwuYmdvcGFjaXR5IHtcclxuICBiYWNrZ3JvdW5kOiByZ2IoMywgNTksIDEwNSk7XHJcbiAgYmFja2dyb3VuZDogcmdiYSgzLCA1OSwgMTA1LCAwLjcpO1xyXG59XHJcblxyXG5cclxuLmJndmVyZGUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNhN2I4M2Y7XHJcbn1cclxuXHJcbi5iZ3ZlcmRlLmJnb3BhY2l0eSB7XHJcbiAgYmFja2dyb3VuZDogcmdiKDE2NywgMTg0LCA2Myk7XHJcbiAgYmFja2dyb3VuZDogcmdiYSgxNjcsIDE4NCwgNjMsIDAuNyk7XHJcbn1cclxuXHJcbi5iZ2F6dWxjbGFybyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ5YThkOTtcclxufVxyXG5cclxuLmJnYXp1bGNsYXJvLmJnb3BhY2l0eSB7XHJcbiAgYmFja2dyb3VuZDogcmdiKDczLCAxNjgsIDIxNyk7XHJcbiAgYmFja2dyb3VuZDogcmdiYSg3MywgMTY4LCAyMTcsIDAuNyk7XHJcbn1cclxuXHJcbi5iZ3BldHJvbGVvIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzY3Yzg3O1xyXG59XHJcblxyXG4uYmdhcGV0cm9sZW8uYmdvcGFjaXR5IHtcclxuICBiYWNrZ3JvdW5kOiByZ2IoNTQsIDEyNCwgMTM1KTtcclxuICBiYWNrZ3JvdW5kOiByZ2JhKDU0LCAxMjQsIDEzNSwgMC43KTtcclxufVxyXG5cclxuLmJnYXBldHJvbGVvLmJnb3BhY2l0eSB7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnRcXDk7XHJcbiAgZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSNiMjM2N2M4NyxlbmRDb2xvcnN0cj0jYjIzNjdjODcpO1xyXG4gIHpvb206IDE7XHJcbn1cclxuXHJcbi8qXHJcblxyXG4jICAgICAjICMjIyMjIyMgICAgIyAgICAjIyMjIyMgICMjIyMjIyMgIyMjIyMjXHJcbiMgICAgICMgIyAgICAgICAgICMgIyAgICMgICAgICMgIyAgICAgICAjICAgICAjXHJcbiMgICAgICMgIyAgICAgICAgIyAgICMgICMgICAgICMgIyAgICAgICAjICAgICAjXHJcbiMjIyMjIyMgIyMjIyMgICAjICAgICAjICMgICAgICMgIyMjIyMgICAjIyMjIyNcclxuIyAgICAgIyAjICAgICAgICMjIyMjIyMgIyAgICAgIyAjICAgICAgICMgICAjXHJcbiMgICAgICMgIyAgICAgICAjICAgICAjICMgICAgICMgIyAgICAgICAjICAgICNcclxuIyAgICAgIyAjIyMjIyMjICMgICAgICMgIyMjIyMjICAjIyMjIyMjICMgICAgICNcclxuXHJcbiovXHJcblxyXG5cclxuLmhlYWRlciB7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UpO1xyXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMXB4LDFweCw1cHgsMCwgI0NBQ0FDQSwgZmFsc2UpO1xyXG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMzBweDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tYm90dG9tOiAwLjIlO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB6LWluZGV4OiAxMDA7XHJcbiAgYmFja2dyb3VuZDogI0ZGRjtcclxuXHJcblxyXG5cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KSB7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMnMgZWFzZSk7XHJcbiAgICBoZWlnaHQ6MTEwcHg7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0Ojc1cHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMyU7XHJcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KDFweCwxcHgsNXB4LDAsICNDQUNBQ0EsIGZhbHNlKTtcclxuXHJcbiAgfVxyXG5cclxuXHJcblxyXG4gICYuZmxvYXRpbmdIZWFkZXIge1xyXG4gICAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuXHJcbiAgfS8vLmZsb2F0aW5nSGVhZGVyXHJcblxyXG5cclxuICAud3JhcHBlcntcclxuICAgIHdpZHRoOjgxJTtcclxuICAgIG1heC13aWR0aDoxMTM0cHg7XHJcbiAgICBtYXJnaW46MCBhdXRvO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UpO1xyXG4gICAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UpO1xyXG4gICAgICBtYXgtd2lkdGg6IDc2N3B4O1xyXG4gICAgICB3aWR0aDogOTUlO1xyXG4gICAgICBAaW5jbHVkZSBtYXJnaW4oMCBhdXRvKTtcclxuICAgIH1cclxuICB9Ly8ud3JhcHBlclxyXG5cclxuICBhLmxvZ28ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMnMgZWFzZSk7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW4oMjhweCAwIDAgMCk7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXRhYmxldC10by1kZXNrdG9wKSB7XHJcbiAgICAgIEBpbmNsdWRlIG1hcmdpbigyOHB4IDAgMCAyJSk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KSB7XHJcbiAgICAgIEBpbmNsdWRlIG1hcmdpbig0JSAwIDAgMiUpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgICBAaW5jbHVkZSBtYXJnaW4oMSUgMCAwIDUlKTtcclxuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UpO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgd2lkdGg6IDg4JTtcclxuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UpO1xyXG5cclxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODIxcHgpIGFuZCAobWF4LXdpZHRoOiA4ODZweCl7XHJcbiAgICAgICAgd2lkdGg6NzAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KSB7XHJcbiAgICAgICAgd2lkdGg6MTUwcHg7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KSB7XHJcbiAgICAgICAgd2lkdGg6MTQwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UpO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJyhtaW4td2lkdGggOiA1MHB4KSBhbmQgKG1heC13aWR0aCA6IDMyMHB4KScpe1xyXG4gICAgICAgIHdpZHRoOiAxMjVweDtcclxuICAgICAgfVxyXG4gICAgfSAvL2ltZ1xyXG4gIH0vL2EubG9nb1xyXG5cclxuICBpbWcuc29tYnJhIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gIE5BViBNT0JJTEVcclxuICAqL1xyXG4gIC5uYXYubW9iaWxlIHtcclxuICAgIG1hcmdpbi10b3A6IDdweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgdWx7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbGl7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODE1cHgpIGFuZCAobWF4LXdpZHRoOiA5NTFweCl7XHJcbiAgICAgIG1hcmdpbi1yaWdodDo1MHB4O1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgbWFyZ2luLXRvcDogMiU7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCcobWluLXdpZHRoIDogODIxcHgpIGFuZCAobWF4LXdpZHRoIDogMTAyMHB4KScpIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OjUwcHg7XHJcbiAgICAgIG1hcmdpbi10b3A6IDYlO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIG1hcmdpbi10b3A6IDYlO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDUlO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgbWFyZ2luLXRvcDogMyU7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMTAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5zcHJpdGV7XHJcbiAgICAgICYuZ2xvYm8ge1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNzVweCAwO1xyXG4gICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgfVxyXG4gICAgICAmLmx1cGEge1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xOTdweCAwO1xyXG4gICAgICAgIHdpZHRoOiAxN3B4O1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgfVxyXG4gICAgfS8vLnNwcml0ZVxyXG4gIH0vLy5uYXYubW9iaWxlXHJcblxyXG4gIC8qXHJcbiAgTkFWIERFU0tUT1BcclxuICAqL1xyXG4gIC5uYXYuZGVza3RvcCB7XHJcbiAgICAvL3dpZHRoOiA4MCU7XHJcbiAgICB3aWR0aDogNzElO1xyXG4gICAgLy8gQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgnKG1pbi13aWR0aCA6IDk1MnB4KSBhbmQgKG1heC13aWR0aCA6IDEwNjlweCknKSB7XHJcbiAgICAvLyAgIHdpZHRoOiA2OCU7XHJcbiAgICAvLyB9XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCcobWluLXdpZHRoIDogMTA3MHB4KSBhbmQgKG1heC13aWR0aCA6IDExMjhweCknKSB7XHJcbiAgICAgIHdpZHRoOiA2OCU7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCcobWluLXdpZHRoIDogMTEzMHB4KSBhbmQgKG1heC13aWR0aCA6IDExODBweCknKSB7XHJcbiAgICAgIHdpZHRoOiA2NSU7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCcobWluLXdpZHRoIDogMTAyMHB4KSBhbmQgKG1heC13aWR0aCA6IDEwNzNweCknKSB7XHJcbiAgICAgIHdpZHRoOiA2OCU7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MjFweCkgYW5kIChtYXgtd2lkdGg6IDEwMjBweCl7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9Ly8ubmF2LmRlc2t0b3BcclxuXHJcblxyXG5cclxuICAubW9kZXJuLWJyb3dzZXJzIC5uYXYuZGVza3RvcCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcblxyXG4gIC5uYXYge1xyXG4gICAgYSB7XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzZTQ4O1xyXG4gICAgICAgIHBhZGRpbmc6IDdweCA3cHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFweDtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzZTQ4O1xyXG4gICAgICAgIHBhZGRpbmc6IDdweCA3cHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFweDtcclxuICAgICAgfVxyXG5cclxuXHJcblxyXG4gICAgICAmLm9wZW4tbWVudSB7XHJcbiAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAxMnB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMTQzNzg7XHJcblxyXG4gICAgICAgICYgc3BhbiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIGhlaWdodDogMnB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcclxuICAgICAgICAgIG1hcmdpbjogMnB4IDBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0vL2FcclxuXHJcbiAgICAvLyB1bCBsaSBhIHtcclxuICAgIC8vICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAvLyAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLy8gICBwYWRkaW5nOiAwO1xyXG4gICAgLy8gICBtYXJnaW46IDA7XHJcbiAgICAvLyAgIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByb1wiLCBzYW5zLXNlcmlmO1xyXG4gICAgLy8gfVxyXG5cclxuICAgIHVsLm1lbnVlc3Ege1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgLy93aWR0aDogMzkwcHg7XHJcbiAgICAgIHdpZHRoOiA2MCU7XHJcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmcoNSUgMSUgMSUgNiUpO1xyXG4gICAgICBsZWZ0OiAwO1xyXG5cclxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpe1xyXG4gICAgICAgIHdpZHRoOjU3JTtcclxuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nKDUlIDElIDElIDMlKTtcclxuICAgICAgfVxyXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MjFweCkgYW5kIChtYXgtd2lkdGg6IDg4NnB4KSB7XHJcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZyg1JSAxJSAxJSAxJSlcclxuICAgICAgfVxyXG5cclxuICAgICAgbGkge1xyXG4gICAgICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgZm9udC1zaXplOiAxZW07XHJcbiAgICAgICAgY29sb3I6ICRibHVlODtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDk3cHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjElO1xyXG4gICAgICAgIC8vIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6XCJNeXJpYWRQcm8tUmVndWxhclwiLHNhbnMtc2VyaWY7XHJcblxyXG4gICAgICAgICYubW57XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDUlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHVsLm1lbnVkaXIge1xyXG4gICAgICBtYXgtd2lkdGg6IDE4MHB4O1xyXG4gICAgICB3aWR0aDogNDAlO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogMTgwcHg7XHJcblxyXG4gICAgICAgIGEudGV4dCB7XHJcbiAgICAgICAgICB3aWR0aDogMTMwcHg7XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7XHJcbiAgICAgICAgICBmb250LWZhbWlseTpcIk15cmlhZFByby1SZWd1bGFyXCIsIHNhbnMtc2VyaWY7XHJcbiAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5zbWFsbC5xc21haXMge1xyXG4gICAgICAgICAgLy8gIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNtYWxsLm5vLWJnIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgY29sb3I6ICMwMDQzNzg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNtYWxsLmFjLCAmLmVzdGlsb3tcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206OHB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA0OGFjYztcclxuICAgICAgICAgIGNvbG9yOiNGRkY7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc21hbGwge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA0OGFjYztcclxuICAgICAgICAgIGhlaWdodDogMzNweDtcclxuICAgICAgICB9Ly8uc21hbGxcclxuXHJcbiAgICAgICAgYSBzcGFuLmJnIHtcclxuICAgICAgICAgIHdpZHRoOiAzNHB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAzM3B4O1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzNGE0ZGI7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDQyNzc7XHJcbiAgICAgICAgfS8vYSBzcGFuLmJnXHJcblxyXG4gICAgICAgICYuYXJlYWNsaWVudGUgYXtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMThlZDQ7XHJcbiAgICAgICAgICB3aWR0aDogMTgwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9Ly91bC5tZW51ZGlyXHJcbiAgfS8vLm5hdlxyXG5cclxuXHJcblxyXG4gIGEuYnRuLWZlY2hhci5nbG9iby1nZW8sXHJcbiAgYS5idG4tZmVjaGFyLmx1cGEtYnVzY2Ege1xyXG4gICAgcGFkZGluZzogMTJweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzNlNDg7XHJcbiAgICB3aWR0aDogMTBweDtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxufS8vLmhlYWRlclxyXG5cclxuXHJcbnVsLnF1ZW1zb21vc21lbnUsXHJcbnVsLnRyYWJhbGhlY29ub3Njb21lbnUsXHJcbnVsLmFyZWFjbGllbnRlbWVudSxcclxudWwubWFpbm1lbnUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gIHdpZHRoOiAyMjZweDtcclxuXHJcbiAgLy8gQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLWxhcmdlLWRlc2t0b3Ape1xyXG4gIC8vICAgbWFyZ2luLXJpZ2h0OjM2cHg7XHJcbiAgLy8gfVxyXG5cclxuICBsaSB7XHJcbiAgICBjb2xvcjogI0ZGRjtcclxuICAgIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDIyNnB4O1xyXG5cclxuICAgIGF7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDQzNzk7XHJcbiAgICAgIHdpZHRoOiAxODNweDtcclxuICAgICAgcGFkZGluZzogOHB4IDBweCA2cHggMzNweDtcclxuICAgIH1cclxuXHJcbiAgICBhLnRleHR7XHJcbiAgICAgIHdpZHRoOiAxNTdweDtcclxuICAgIH1cclxuXHJcbiAgICAmLnNtYWxsIHtcclxuICAgICAgaGVpZ2h0OiAzM3B4O1xyXG4gICAgICAvLyB3aWR0aDozMHB4O1xyXG5cclxuICAgICAgJi5xc21haXN7XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5tZW51e1xyXG4gICAgICBjb2xvcjogI0ZGRjtcclxuICAgICAgZm9udC1mYW1pbHk6IFwiTXlyaWFkUHJvLUxpZ2h0XCIsIHNhbnMtc2VyaWY7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgdGV4dC1pbmRlbnQ6IDMzcHg7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwNDhhY2M7XHJcbiAgICAgIHBhZGRpbmc6IDlweCAwIDVweCAwO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICBhLmJ0bi1mZWNoYXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDEycHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzM2U0ODtcclxuICAgICAgICB3aWR0aDogMTBweDtcclxuICAgICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IC0zNHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBkaXNwbGF5KG5vbmUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXRhYmxldC1wb3J0cmFpdCkge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZGlzcGxheShibG9jayk7XHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgc3Bhbi5mZWNoYXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyMXB4IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTBweDtcclxuICAgICAgICAgIGhlaWdodDogMTBweDtcclxuICAgICAgICB9XHJcblxyXG5cclxuICAgICAgfS8vYS5idG4tZmVjaGFyXHJcbiAgICB9Ly8ubWVudVxyXG4gIH1cclxufS8vdWwubWFpbm1lbnVcclxuXHJcbi5vbmx5bW9iaWxlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5cclxuXHJcbi5tZW51YmFpeG8ge1xyXG4gIHdpZHRoOiAzNHB4O1xyXG4gIGZsb2F0OiByaWdodDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MjFweCkgYW5kIChtYXgtd2lkdGg6IDEwMjBweCl7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgbWFyZ2luLXRvcDogMzhweDtcclxuICB9XHJcbiAgLy8gQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgnKG1pbi13aWR0aCA6IDk0MHB4KSBhbmQgKG1heC13aWR0aCA6IDEyMTBweCknKSB7XHJcbiAgLy8gICBtYXJnaW4tcmlnaHQ6IDglO1xyXG4gIC8vXHJcbiAgLy8gfVxyXG5cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuXHJcbiAgYSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzZTQ4O1xyXG4gICAgcGFkZGluZzogN3B4IDdweCA3cHggNnB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDFweDtcclxuXHJcbiAgICBzcGFuLmdsb2JvIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NXB4IDA7XHJcbiAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICB9Ly9zcGFuLmdsb2JvXHJcblxyXG4gICAgc3Bhbi5sdXBhIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5N3B4IDA7XHJcbiAgICAgIHdpZHRoOiAxN3B4O1xyXG4gICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICB9Ly9zcGFuLmx1cGFcclxuXHJcbiAgICAmLmx1cGEge1xyXG4gICAgICBwYWRkaW5nOiA3cHggOHB4O1xyXG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzVjNmQ3YztcclxuICAgIH0vLy5sdXBhXHJcblxyXG4gIH0vL2FcclxufS8vLm1lbnViYWl4b1xyXG5cclxuXHJcblxyXG5zcGFuLmZlY2hhciB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyMXB4IDA7XHJcbiAgd2lkdGg6IDEwcHg7XHJcbiAgaGVpZ2h0OiAxMHB4O1xyXG59XHJcblxyXG5cclxuXHJcbi5vdmVybGF5IHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XHJcbiAgb3BhY2l0eTogMC4zO1xyXG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0zMCk7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICB6LWluZGV4OiAxMDI7XHJcbn1cclxuXHJcbi5tZW51LXVsLm1vYmlsZSxcclxuLm1lbnUtdWwubWFpbiB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICByaWdodDogMDtcclxuICB0b3A6IDA7XHJcbiAgei1pbmRleDogMTAyO1xyXG59XHJcblxyXG4ubWVudS11bC5tb2JpbGUsXHJcbi5tZW51LXVsLm1haW4sXHJcbi5tZW51LXVsLmFyZWFjbGllbnRlIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbn1cclxuXHJcbi5tZW51LXVsLmRlc2t0b3AsXHJcbi5tZW51LXVsLmFyZWFjbGllbnRlIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgLy8gcmlnaHQ6IDYxcHg7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHotaW5kZXg6IDEwMjtcclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcblxyXG59XHJcblxyXG4vLyB1bC5xdWVtc29tb3NtZW51LFxyXG4vLyB1bC50cmFiYWxoZWNvbm9zY29tZW51LFxyXG4vLyB1bC5hcmVhY2xpZW50ZW1lbnUge1xyXG4vLyAgIGJhY2tncm91bmQtY29sb3I6ICMwMDQzNzk7XHJcbi8vICAgaGVpZ2h0OiAxMDAlO1xyXG4vLyAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbi8vICAgd2lkdGg6IDIyNnB4O1xyXG4vLyB9XHJcblxyXG51bC5hcmVhY2xpZW50ZW1lbnUge1xyXG4gIG1heC1oZWlnaHQ6IDI5MHB4O1xyXG59XHJcblxyXG5AaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICB1bC5hcmVhY2xpZW50ZW1lbnUge1xyXG4gICAgbWF4LWhlaWdodDogMjkwcHg7XHJcbiAgfVxyXG59XHJcblxyXG51bC5xdWVtc29tb3NtZW51LFxyXG51bC50cmFiYWxoZWNvbm9zY29tZW51LFxyXG51bC5hcmVhY2xpZW50ZW1lbnUge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbnVsLnF1ZW1zb21vc21lbnUgbGksXHJcbnVsLnRyYWJhbGhlY29ub3Njb21lbnUgbGksXHJcbnVsLmFyZWFjbGllbnRlbWVudSBsaSB7XHJcbiAgY29sb3I6ICNGRkY7XHJcbiAgZm9udC1mYW1pbHk6IFwiTXlyaWFkUHJvLVJlZ3VsYXJcIiwgc2Fucy1zZXJpZjtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiAyMjZweDtcclxufVxyXG5cclxuXHJcbnVsLnF1ZW1zb21vc21lbnUgbGkubWVudSxcclxudWwudHJhYmFsaGVjb25vc2NvbWVudSBsaS5tZW51LFxyXG51bC5hcmVhY2xpZW50ZW1lbnUgbGkubWVudSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA0OGFjYztcclxuICBwYWRkaW5nOiA5cHggMCA1cHggMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcblxyXG51bC5xdWVtc29tb3NtZW51IGxpLm1lbnUsXHJcbnVsLnRyYWJhbGhlY29ub3Njb21lbnUgbGkubWVudSxcclxudWwuYXJlYWNsaWVudGVtZW51IGxpLm1lbnUge1xyXG4gIHRleHQtaW5kZW50OiAzM3B4O1xyXG5cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgIGNvbG9yOiNGRkY7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcblxyXG51bC5xdWVtc29tb3NtZW51IGxpIGEsXHJcbnVsLnRyYWJhbGhlY29ub3Njb21lbnUgbGkgYSxcclxudWwuYXJlYWNsaWVudGVtZW51IGxpIGEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDQzNzk7XHJcbiAgd2lkdGg6IDE4OHB4O1xyXG4gIHBhZGRpbmc6IDhweCAwcHggNnB4IDMzcHg7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgdWwudHJhYmFsaGVjb25vc2NvbWVudSBsaSBhIHtcclxuICAgIHdpZHRoOiAxODNweDtcclxuICAgIHBhZGRpbmc6IDhweCAxMHB4IDZweCAzM3B4O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAvLyB1bCBsaSBhe1xyXG4gIC8vICAgJi50ZXh0IHtcclxuICAvLyAgICAgd2lkdGg6IDEzMHB4O1xyXG4gIC8vICAgICBwYWRkaW5nLXRvcDogOHB4O1xyXG4gIC8vICAgICBtYXJnaW4tbGVmdDogMTZweDtcclxuICAvLyAgIH1cclxuICAvLyB9XHJcbn1cclxuXHJcblxyXG5saS5ocixcclxudWwucXVlbXNvbW9zbWVudSBsaS5ocixcclxudWwudHJhYmFsaGVjb25vc2NvbWVudSBsaS5ocixcclxudWwuYXJlYWNsaWVudGVtZW51IGxpLmhyIHtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzNjk5NDtcclxuICBtYXJnaW4tbGVmdDogMzVweDtcclxuICB3aWR0aDogMTU3cHg7XHJcbn1cclxuXHJcbi5sdC1pZTkgbGkuaHIge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYjNjNWQ0O1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuLmx0LWllOCBsaS5ociB7XHJcbiAgdG9wOiAtMjBweDtcclxuICBoZWlnaHQ6IDFweDtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICBsaS5ociB7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2IzYzVkNDtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcbn1cclxuXHJcbmhyIHtcclxuICB3aWR0aDogMTYwcHg7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICBjb2xvcjogI2ZmZjtcclxuICBib3JkZXI6IG5vbmU7XHJcbn1cclxuXHJcbnVsLnF1ZW1zb21vc21lbnUgdWwuc3ViIGxpIGhyLFxyXG51bC5xdWVtc29tb3NtZW51IHVsLm5vdCBsaSBociB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M3YzljYjtcclxuICBjb2xvcjogI2M3YzljYjtcclxufVxyXG5cclxuc3Bhbi5zZXRhYnJhbmNhIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzYwcHggLTI1cHg7XHJcbiAgd2lkdGg6IDhweDtcclxuICBoZWlnaHQ6IDE0cHg7XHJcbn1cclxuXHJcbnNwYW4uc2V0YWJyYW5jYS1wcSB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4MXB4IC0yNXB4O1xyXG4gIHdpZHRoOiA2cHg7XHJcbiAgaGVpZ2h0OiAxNHB4O1xyXG59XHJcblxyXG5zcGFuLmNhZGVhZG8ge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xNjNweCAwO1xyXG4gIHdpZHRoOiA5cHg7XHJcbiAgaGVpZ2h0OiAxMnB4O1xyXG59XHJcblxyXG5zcGFuLnNldGFpciB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyOXB4IC0yNXB4O1xyXG4gIHdpZHRoOiA1cHg7XHJcbiAgaGVpZ2h0OiA4cHg7XHJcbn1cclxuXHJcbi5sdC1pZTggdWwucXVlbXNvbW9zbWVudSBsaSBhIHNwYW4uc2V0YWlyLFxyXG4ubHQtaWU4IHVsLnRyYWJhbGhlY29ub3Njb21lbnUgbGkgYSBzcGFuLnNldGFpcixcclxuLmx0LWllOCB1bC5hcmVhY2xpZW50ZW1lbnUgbGkgYSBzcGFuLnNldGFpcixcclxuLmx0LWllOCB1bC5hcmVhY2xpZW50ZW1lbnUgbGkgYSBzcGFuLnNldGF2b2x0YXJtZW51IHtcclxuICBtYXJnaW4tdG9wOiAtMTVweDtcclxufVxyXG5cclxudWwucXVlbXNvbW9zbWVudSBsaSBhIHNwYW4uc2V0YWlyLFxyXG51bC50cmFiYWxoZWNvbm9zY29tZW51IGxpIGEgc3Bhbi5zZXRhaXIsXHJcbnVsLmFyZWFjbGllbnRlbWVudSBsaSBhIHNwYW4uc2V0YWlyLFxyXG51bC5hcmVhY2xpZW50ZW1lbnUgbGkgYSBzcGFuLnNldGF2b2x0YXJtZW51IHtcclxuICBtYXJnaW4tcmlnaHQ6IDEycHg7XHJcbiAgbWFyZ2luLXRvcDogNHB4O1xyXG59XHJcblxyXG5zcGFuLnNldGF2b2x0YXJtZW51IHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjIzcHggLTI1cHg7XHJcbiAgd2lkdGg6IDVweDtcclxuICBoZWlnaHQ6IDhweDtcclxufVxyXG5cclxuLmx0LWllOCB1bC5xdWVtc29tb3NtZW51IGxpIGEgc3Bhbi5zZXRhaXIubWlkZGxlIHtcclxuICBtYXJnaW4tdG9wOiAtMjNweDtcclxufVxyXG5cclxudWwucXVlbXNvbW9zbWVudSBsaSBhIHNwYW4uc2V0YWlyLm1pZGRsZSB7XHJcbiAgbWFyZ2luLXRvcDogLTVweDtcclxufVxyXG5cclxuLmx0LWllOSAubmF2IHVsLm1lbnVkaXIgbGkgYSBzcGFuLmNhZGVhZG8ge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMTFweDtcclxuICB0b3A6IDEwcHg7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLm5hdiB1bC5tZW51ZGlyIGxpIGEgc3Bhbi5jYWRlYWRvIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAxMXB4O1xyXG4gICAgdG9wOiAxMHB4O1xyXG4gIH1cclxufVxyXG5cclxudWwgbGkgYS5iZyxcclxuYS5iZyB7XHJcbiAgd2lkdGg6IDIxcHg7XHJcbiAgaGVpZ2h0OiAyM3B4O1xyXG5cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmcoOHB4IDVweCA0cHggNXB4KTtcclxuICB9XHJcblxyXG5cclxuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAjMzk0NTRmO1xyXG4gIC8vIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMzM2OTk0O1xyXG4gIC8vIHBhZGRpbmc6IDEwcHggMCAwIDE1cHg7XHJcbiAgLy8gbWFyZ2luLXRvcDogLTFweDtcclxufVxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgdWwgbGkgYS5iZyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0Mjc3O1xyXG4gICAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMzcxYjM7XHJcbiAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgcGFkZGluZzogMTBweCAwIDAgMTNweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcbn1cclxuXHJcbnVsIGxpIGEuYmcuYm90dG9tIHtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzNjk5NDtcclxuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xyXG59XHJcblxyXG4ubHQtaWU5IHVsLnF1ZW1zb21vc21lbnUsXHJcbi5sdC1pZTkgdWwudHJhYmFsaGVjb25vc2NvbWVudSxcclxuLmx0LWllOSB1bC5hcmVhY2xpZW50ZW1lbnUge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIGhlaWdodDogMTAwJTtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAubmF2IHVsLnF1ZW1zb21vc21lbnUsXHJcbiAgLm5hdiB1bC50cmFiYWxoZWNvbm9zY29tZW51IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG5zcGFuLnNldGF2b2x0YSB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2NHB4IC0yNXB4O1xyXG4gIHdpZHRoOiA4cHg7XHJcbiAgaGVpZ2h0OiAxNHB4O1xyXG59XHJcblxyXG51bC5xdWVtc29tb3NtZW51IHNwYW4uc2V0YXZvbHRhLFxyXG51bC50cmFiYWxoZWNvbm9zY29tZW51IHNwYW4uc2V0YXZvbHRhLFxyXG51bC5hcmVhY2xpZW50ZW1lbnUgc3Bhbi5zZXRhdm9sdGEge1xyXG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG59XHJcblxyXG5zcGFuLm1haXMsXHJcbnNwYW4ubWVub3Mge1xyXG4gIHdpZHRoOiAxMHB4O1xyXG4gIGhlaWdodDogMTBweDtcclxuICBtYXJnaW4tcmlnaHQ6IDI5cHg7XHJcbiAgbWFyZ2luLXRvcDogM3B4O1xyXG59XHJcblxyXG5zcGFuLm1haXMge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0yMzVweCAwO1xyXG59XHJcblxyXG5zcGFuLm1lbm9zIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjM1cHggLTExcHg7XHJcbn1cclxuXHJcbnVsLnF1ZW1zb21vc21lbnUgbGkubWVudSxcclxudWwudHJhYmFsaGVjb25vc2NvbWVudSBsaS5tZW51LFxyXG51bC5hcmVhY2xpZW50ZW1lbnUgbGkubWVudSB7XHJcbiAgdGV4dC1pbmRlbnQ6IDEzcHg7XHJcbiAgcGFkZGluZzogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXJnaW4tbGVmdDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIGhlaWdodDogMzNweDtcclxufVxyXG5cclxudWwuYXJlYWNsaWVudGVtZW51IGxpLm1lbnUge1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbnVsLnF1ZW1zb21vc21lbnUgbGkubWVudSBhLnZvbHRhcm1haW4sXHJcbnVsLnRyYWJhbGhlY29ub3Njb21lbnUgbGkubWVudSBhLnZvbHRhcm1haW4sXHJcbnVsLmFyZWFjbGllbnRlbWVudSBsaS5tZW51IGEudm9sdGFybWFpbiB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIHdpZHRoOiAyMjZweDtcclxufVxyXG5cclxuXHJcbnVsLnF1ZW1zb21vc21lbnUgbGkubWVudSBhLnZvbHRhcm1haW4gc3Bhbi53cmFwLFxyXG51bC5hcmVhY2xpZW50ZW1lbnUgbGkubWVudSBhLnZvbHRhcm1haW4gc3Bhbi53cmFwIHtcclxuICBvcGFjaXR5OiAwO1xyXG59XHJcblxyXG51bC5xdWVtc29tb3NtZW51IGxpLm1lbnUgYS52b2x0YXJtYWluIHNwYW4uYmcsXHJcbnVsLnRyYWJhbGhlY29ub3Njb21lbnUgbGkubWVudSBhLnZvbHRhcm1haW4gc3Bhbi5iZyxcclxudWwuYXJlYWNsaWVudGVtZW51IGxpLm1lbnUgYS52b2x0YXJtYWluIHNwYW4uYmcge1xyXG4gIHdpZHRoOiAzNHB4O1xyXG4gIGhlaWdodDogMzNweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDI0MDcwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0b3A6IC04cHg7XHJcbiAgcmlnaHQ6IDA7XHJcbn1cclxuXHJcbnVsLnF1ZW1zb21vc21lbnUgbGkubWVudSBhLnZvbHRhcm1haW4gc3Bhbi5zZXRhYnJhbmNhLFxyXG51bC50cmFiYWxoZWNvbm9zY29tZW51IGxpLm1lbnUgYS52b2x0YXJtYWluIHNwYW4uc2V0YWJyYW5jYSxcclxudWwuYXJlYWNsaWVudGVtZW51IGxpLm1lbnUgYS52b2x0YXJtYWluIHNwYW4uc2V0YWJyYW5jYSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAxMXB4O1xyXG4gIHRvcDogOHB4O1xyXG59XHJcblxyXG51bC5xdWVtc29tb3NtZW51IHVsLnN1YixcclxudWwucXVlbXNvbW9zbWVudSB1bC5ub3Qge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWM7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxufVxyXG5cclxudWwucXVlbXNvbW9zbWVudSB1bC5zdWIgbGksXHJcbnVsLnF1ZW1zb21vc21lbnUgdWwubm90IGxpIHtcclxuICB0b3A6IDA7XHJcbn1cclxuXHJcbnVsLnF1ZW1zb21vc21lbnUgdWwuc3ViIGxpIGEsXHJcbnVsLnF1ZW1zb21vc21lbnUgdWwubm90IGxpIGEge1xyXG4gIGNvbG9yOiAjMzMzZTQ4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWM7XHJcbiAgd2lkdGg6IDE5M3B4O1xyXG4gIHBhZGRpbmc6IDhweCAwIDdweCAzM3B4O1xyXG59XHJcblxyXG4vLyAjIyMgIyMjIyMjICAjIyMgIyMjIyMjIyAjICAgICAjICAgICMgICAgICAgIyMjIyMjI1xyXG4vLyAgIyAgIyAgICAgIyAgIyAgIyAgICAgIyAjIyAgICMjICAgIyAjICAgICAgI1xyXG4vLyAgIyAgIyAgICAgIyAgIyAgIyAgICAgIyAjICMgIyAjICAjICAgIyAgICAgI1xyXG4vLyAgIyAgIyAgICAgIyAgIyAgIyAgICAgIyAjICAjICAjICMgICAgICMgICAgIyMjIyNcclxuLy8gICMgICMgICAgICMgICMgICMgICAgICMgIyAgICAgIyAjIyMjIyMjICAgICNcclxuLy8gICMgICMgICAgICMgICMgICMgICAgICMgIyAgICAgIyAjICAgICAjICAgICNcclxuLy8gIyMjICMjIyMjIyAgIyMjICMjIyMjIyMgIyAgICAgIyAjICAgICAjICAgICMjIyMjIyNcclxuLy9cclxuLy8gIyMjIyMjICAjICAgICAjICAjIyMjIyAgICMjIyMjICAgICAjXHJcbi8vICMgICAgICMgIyAgICAgIyAjICAgICAjICMgICAgICMgICAjICNcclxuLy8gIyAgICAgIyAjICAgICAjICMgICAgICAgIyAgICAgICAgIyAgICNcclxuLy8gIyMjIyMjICAjICAgICAjICAjIyMjIyAgIyAgICAgICAjICAgICAjXHJcbi8vICMgICAgICMgIyAgICAgIyAgICAgICAjICMgICAgICAgIyMjIyMjI1xyXG4vLyAjICAgICAjICMgICAgICMgIyAgICAgIyAjICAgICAjICMgICAgICNcclxuLy8gIyMjIyMjICAgIyMjIyMgICAjIyMjIyAgICMjIyMjICAjICAgICAjXHJcblxyXG4gIC5nZW8ge1xyXG4gIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlKTtcclxuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gIEBpbmNsdWRlIG1hcmdpbihhdXRvKTtcclxuICBAaW5jbHVkZSBkaXNwbGF5KG5vbmUpO1xyXG5cclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9iZy1nZW8tbW9iaWxlLmpwZycpO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHRvcDoxMzBweDtcclxuICB6LWluZGV4OiA5OTtcclxuICBsZWZ0OjA7XHJcblxyXG5cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgIHRvcDogMTA4cHg7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KSB7XHJcbiAgICB0b3A6NzdweDtcclxuICB9XHJcblxyXG5cclxuICAuY29udGFpbmVye1xyXG4gICAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmcoMiUpO1xyXG4gICAgaGVpZ2h0OiA0MzBweDtcclxuICB9XHJcblxyXG5cclxuICAuYnRuLWZlY2hhciB7XHJcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xyXG5cclxuXHJcblxyXG4gICAgc3Bhbi5mZWNoYXJ7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAxMXB4O1xyXG4gICAgICBsZWZ0OiAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgICYub3V0LCAmLmlue1xyXG4gICAgICB3aWR0aDogMzJweDtcclxuICAgICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzNlNDg7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgICYub3V0e1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgJi5pbntcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgdG9wOjA7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgICAgICBAaW5jbHVkZSBkaXNwbGF5KG5vbmUpO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpIHtcclxuICAgICAgICBAaW5jbHVkZSBkaXNwbGF5KG5vbmUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfS8vLmJ0bi1mZWNoYXJcclxuXHJcbiAgLmxlZnR7XHJcbiAgICB3aWR0aDo0NSU7XHJcbiAgICBtYXJnaW4tcmlnaHQ6NCU7XHJcbiAgICBtYXJnaW4tbGVmdDogMiU7XHJcbiAgICBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICM2YjhlYTE7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIHB7XHJcbiAgICAgIGNvbG9yOiNGRkY7XHJcbiAgICAgIGZvbnQtc2l6ZToxLjFlbTtcclxuICAgICAgd2lkdGg6ODUlO1xyXG4gICAgfVxyXG5cclxuICAgIC5wZXJne1xyXG4gICAgICBmb250LXNpemU6MS4zZW07XHJcbiAgICAgIGZvbnQtZmFtaWx5OlwiTXlyaWFkUHJvLUxpZ2h0XCIsIHNhbnMtc2VyaWY7XHJcbiAgICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIH1cclxuXHJcbiAgICAubG9jYWx7XHJcbiAgICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgIHdpZHRoOjkwJTtcclxuICAgICAgbWFyZ2luLXRvcDo1JTtcclxuXHJcblxyXG5cclxuICAgICAgYSxwe1xyXG4gICAgICAgIGZsb2F0OmxlZnQ7XHJcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luKDApO1xyXG4gICAgICB9XHJcbiAgICAgIHB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6MiU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDoxJTtcclxuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICAgICAgZm9udC1zaXplOjFlbTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5jbGVhcmZpeHtcclxuICAgICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmNvdW50cnl7XHJcbiAgICAgICAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICB3aWR0aDo5NSU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDo0JTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogNSU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwe1xyXG4gICAgICAgICAgbWFyZ2luOjA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNlbGVjdCNjb3VudHJpZXN7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOjIlO1xyXG4gICAgICAgICAgaGVpZ2h0OiAzNXB4O1xyXG4gICAgICAgICAgd2lkdGg6IDUwJTtcclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICB9Ly8uY291bnRyeVxyXG4gICAgfVxyXG5cclxuICB9Ly8ubGVmdFxyXG5cclxuICAucmlnaHR7XHJcbiAgICB3aWR0aDo0NSU7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KSB7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlbGVjaW9uYXtcclxuICAgICAgZm9udC1zaXplOjEuM2VtO1xyXG4gICAgICBmb250LWZhbWlseTpcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG4gICAgICBjb2xvcjokd2hpdGU7XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgICAgICYuaWRpb21hIHtcclxuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzMzNlNDg7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgICAgb3BhY2l0eTogMC42O1xyXG4gICAgICAgICAgZmlsdGVyOmFscGhhKG9wYWNpdHk9NjApO1xyXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG5cclxuICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIG1hcmdpbjogOHB4IDAgOHB4IDM1cHg7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXRhYmxldC1wb3J0cmFpdCkge1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1hcmdpbig4cHggMCA4cHggNXB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgICAgICAgICAgICBtYXJnaW46IDhweCAwIDhweCA4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLmRpc2FibGVkIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjQ0NDO1xyXG5cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgY29sb3I6ICNDQ0M7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBzcGFuLmNoZWNrIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0N3B4IC0yNXB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA5cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTJweCA4cHggMCAwO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIHNwYW4uYmctY2hlY2sge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzZTQ4O1xyXG4gICAgICAgICAgICB3aWR0aDogMzJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5kaXNhYmxlZCBzcGFuLmJnLWNoZWNrIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0NDQztcclxuICAgICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgICAgJi5hY3RpdmUsICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIGZpbHRlcjphbHBoYShvcGFjaXR5PTEwMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfS8vLmlkaW9tYVxyXG4gICAgICB9Ly9hXHJcbiAgICB9Ly8uc2VsZWNpb25hXHJcbiAgICBhLmNvbnRpbnVhciB7XHJcbiAgICAgIEBpbmNsdWRlIG1hcmdpbig1JSAwKTtcclxuICAgICAgY29sb3I6ICNGRkY7XHJcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XHJcbiAgICAgIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG4gICAgICBtYXJnaW46IDEzcHggMHB4O1xyXG5cclxuXHJcbiAgICAgIHNwYW4uc2V0YWJyYW5jYSB7XHJcbiAgICAgICAgbWFyZ2luOiAycHggOXB4O1xyXG4gICAgICB9XHJcbiAgICB9Ly9hLmNvbnRpbnVhclxyXG4gIH0vL3JpZ2h0XHJcblxyXG5cclxuICBzcGFuLnBpbiB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzA2cHggMDtcclxuICAgIHdpZHRoOiAzNHB4O1xyXG4gICAgaGVpZ2h0OiAzNHB4O1xyXG4gIH1cclxuICBzcGFuLnNldGFwb250aWxoYWRhIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNDFweCAtMjVweDtcclxuICAgIHdpZHRoOiA1cHg7XHJcbiAgICBoZWlnaHQ6IDlweDtcclxuICAgIG1hcmdpbjogMTNweCAxM3B4IDAgMzVweDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgICAgbWFyZ2luOiAxM3B4IDEzcHggMCA1cHg7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuICBzcGFuLnNldGFwb250aWxoYWRhLmVuZyxcclxuICBzcGFuLnNldGFwb250aWxoYWRhLmVzcCB7XHJcbiAgICBtYXJnaW4tbGVmdDogMjVweDtcclxuICB9XHJcblxyXG59Ly8uZ2VvXHJcblxyXG5cclxuXHJcblxyXG5cclxuLmJ1c2NhIHtcclxuICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSk7XHJcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcclxuICBAaW5jbHVkZSBtYXJnaW4oYXV0byk7XHJcbiAgQGluY2x1ZGUgZGlzcGxheShub25lKTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9iZy1idXNjYS1tb2JpbGUuanBnJyk7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgdG9wOiAxMzBweDtcclxuICBsZWZ0OiAwO1xyXG4gIHotaW5kZXg6IDk5O1xyXG5cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KSB7XHJcbiAgICB0b3A6IDEwOHB4O1xyXG4gIH1cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgIHRvcDogNzdweDtcclxuICB9XHJcblxyXG4gIC53cmFwcGVyIHtcclxuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nKDIlKTtcclxuICAgIGhlaWdodDogNDMwcHg7XHJcbiAgfVxyXG5cclxuICBoMSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNvbG9yOiAkbm9ybWFsZ3JleTI7XHJcbiAgICBmb250LXNpemU6IDEuNGVtO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgcGFkZGluZzogMiUgMDtcclxuICB9XHJcblxyXG4gIGEuYnRuLWZlY2hhcntcclxuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBzcGFuLmZlY2hhcntcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDExcHg7XHJcbiAgICAgIGxlZnQ6IDEycHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi5vdXQsICYuaW57XHJcbiAgICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzM2U0ODtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgJi5vdXR7XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmlue1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB0b3A6MDtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgfS8vYS5idG4tZmVjaGFyXHJcblxyXG5cclxuICBmb3JtLnNlYXJjaCB7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogOTclO1xyXG4gICAgdG9wOiAyMHB4O1xyXG5cclxuXHJcbiAgICBzcGFuLmx1cGFwcmV0YSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yODdweCAwO1xyXG4gICAgICB3aWR0aDogMTdweDtcclxuICAgICAgaGVpZ2h0OiAxOXB4O1xyXG4gICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSk7XHJcbiAgICAgIHJpZ2h0OiAxOHB4O1xyXG4gICAgICB0b3A6IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXQge1xyXG4gICAgICB3aWR0aDogOTclO1xyXG4gICAgICBwYWRkaW5nOiA5cHg7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLm9wdGlvbnMge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgdWwgbGkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNDQ0M7XHJcbiAgICAgICAgcGFkZGluZzogMTFweDtcclxuICAgICAgICB3aWR0aDogOTclO1xyXG5cclxuICAgICAgICAmLmRhcmsge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0NBQ0FDQTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuZGFyayBhIHtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi50ZXJtIHtcclxuICAgICAgICAgIGNvbG9yOiAjM2U0ODUxO1xyXG4gICAgICAgICAgc3Bhbi5wYXJhIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGNvbG9yOiAjM2U0ODUxO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgIH0vL3VsIGxpXHJcbiAgICB9Ly8ub3B0aW9uc1xyXG4gIH0vL2Zvcm0uc2VhcmNoXHJcblxyXG5cclxuXHJcbiAgLypcclxuICBCVVNDQSBGUkVRVUVOVEVcclxuICAqL1xyXG5cclxuICAuYnVzY2FmcmVxdWVudGUge1xyXG4gICAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcclxuICAgIEBpbmNsdWRlIGRpc3BsYXkoYmxvY2spO1xyXG4gICAgd2lkdGg6ODglO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNCQUJBQkE7XHJcbiAgICBib3R0b206IDQwcHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblxyXG4gICAgcCx1bCBsaXtcclxuICAgICAgZm9udC1mYW1pbHk6IFwiTXlyaWFkUHJvLUxpZ2h0XCIsIHNhbnMtc2VyaWY7XHJcbiAgICAgIGNvbG9yOiAjM2U0ODUxO1xyXG4gICAgICBmb250LXNpemU6IDFlbTtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIHVsIHtcclxuICAgICAgQGluY2x1ZGUgbWFyZ2luKDEuNSUgMCAwIDMlKTtcclxuICAgICAgd2lkdGg6IDgwJTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMSU7XHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KSB7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6MDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjUlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICB9Ly8uYnVzY2FmcmVxdWVudGVcclxuXHJcblxyXG5cclxufS8vLmJ1c2NhXHJcblxyXG5cclxuXHJcbi8vICMjIyMjIyMgIyMjIyMjIyAjIyMjIyMjICMjIyMjIyMgIyMjIyMjIyAjIyMjIyNcclxuLy8gIyAgICAgICAjICAgICAjICMgICAgICMgICAgIyAgICAjICAgICAgICMgICAgICNcclxuLy8gIyAgICAgICAjICAgICAjICMgICAgICMgICAgIyAgICAjICAgICAgICMgICAgICNcclxuLy8gIyMjIyMgICAjICAgICAjICMgICAgICMgICAgIyAgICAjIyMjIyAgICMjIyMjI1xyXG4vLyAjICAgICAgICMgICAgICMgIyAgICAgIyAgICAjICAgICMgICAgICAgIyAgICNcclxuLy8gIyAgICAgICAjICAgICAjICMgICAgICMgICAgIyAgICAjICAgICAgICMgICAgI1xyXG4vLyAjICAgICAgICMjIyMjIyMgIyMjIyMjIyAgICAjICAgICMjIyMjIyMgIyAgICAgI1xyXG4vL1xyXG5cclxuXHJcbi5mb290ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDQ2N2Q7XHJcbiAgY29sb3I6ICNGRkY7XHJcbiAgZm9udC1mYW1pbHk6IFwiTXlyaWFkUHJvLUxpZ2h0XCIsIHNhbnMtc2VyaWY7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMwMDQ2N2Q7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHotaW5kZXg6OTk7XHJcbiAgaGVpZ2h0OiAxMTlweDtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KXtcclxuICAgIG1hcmdpbi1ib3R0b206IDIyJTtcclxuICAgIGhlaWdodDogMTMwcHg7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgaGVpZ2h0OjE1MHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gIHAuY29weXJpZ2h0IHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KSB7XHJcbiAgICAgIGZsb2F0Om5vbmU7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zdWItZm9vdGVyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAzMHB4IDAgMCAzNXB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDRweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDQ2N2Q7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KSB7XHJcbiAgICAgIG1hcmdpbjo1JSBhdXRvO1xyXG4gICAgfVxyXG4gICAgLmVuZGVyZWNvc3tcclxuICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHdpZHRoOiAzNSU7XHJcbiAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgbGluZS1oZWlnaHQ6IDlweDtcclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXRhYmxldC1wb3J0cmFpdCl7XHJcbiAgICAgICAgd2lkdGg6IDU1JTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpe1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn0vLy5mb290ZXJcclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzMzcHgpIHtcclxuICAuZm9vdGVyIHAuY29weXJpZ2h0IHtcclxuICAgIHdpZHRoOiAzNC41JTtcclxuICB9XHJcbn1cclxuXHJcbi5mb290ZXItbWFyayB7XHJcbiAgLy8gZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmZvb3Rlci1tYXJrLmNvdW50cnktY29sb21iaWEge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4uZm9vdGVyLW1hcmsgLndyYXBwZXIge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmZvb3Rlci1tYXJrIC53cmFwcGVyIGEge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiA4MnB4O1xyXG4gIGJvdHRvbTogMDtcclxuICB3aWR0aDogMTNweDtcclxuICBoZWlnaHQ6IDIyOHB4O1xyXG4gIHotaW5kZXg6IDk5O1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpe1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICB9XHJcbn1cclxuXHJcbi5mb290ZXIgLndyYXBwZXIge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmRpc2NsYWltZXIge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDAgMTAwcHg7XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcbiAgYSB7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgfVxyXG4gIHNwYW4ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgbWFyZ2luOiAtMnB4IDZweCAwIDZweDtcclxuICAgIGZvbnQtc2l6ZTogMTVweDtcclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gIyMjIyMjIyAgIyMjIyMgICMjIyMjIyMgIyMjIyMjICAjICAgICAjICMjIyMjIyMgIyAgICAgIyAjIyMjIyMgICAgICNcclxuLy8gIyAgICAgICAjICAgICAjICAgICMgICAgIyAgICAgIyAjICAgICAjICAgICMgICAgIyAgICAgIyAjICAgICAjICAgIyAjXHJcbi8vICMgICAgICAgIyAgICAgICAgICAjICAgICMgICAgICMgIyAgICAgIyAgICAjICAgICMgICAgICMgIyAgICAgIyAgIyAgICNcclxuLy8gIyMjIyMgICAgIyMjIyMgICAgICMgICAgIyMjIyMjICAjICAgICAjICAgICMgICAgIyAgICAgIyAjIyMjIyMgICMgICAgICNcclxuLy8gIyAgICAgICAgICAgICAjICAgICMgICAgIyAgICMgICAjICAgICAjICAgICMgICAgIyAgICAgIyAjICAgIyAgICMjIyMjIyNcclxuLy8gIyAgICAgICAjICAgICAjICAgICMgICAgIyAgICAjICAjICAgICAjICAgICMgICAgIyAgICAgIyAjICAgICMgICMgICAgICNcclxuLy8gIyMjIyMjIyAgIyMjIyMgICAgICMgICAgIyAgICAgIyAgIyMjIyMgICAgICMgICAgICMjIyMjICAjICAgICAjICMgICAgICNcclxuXHJcbi5jb250ZXVkbyB7XHJcbiAgLy8gbWF4LXdpZHRoOiAxMjk5cHg7XHJcbiAgLy93aWR0aDogMTAwJTtcclxuICB3aWR0aDogOTYuOCU7XHJcbiAgZmxvYXQ6IG5vbmU7XHJcbiAgcGFkZGluZy1ib3R0b206IDE1JTtcclxuICBtYXJnaW46IGF1dG87XHJcblxyXG5cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KSB7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gIH1cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgfVxyXG5cclxuICAud3JhcHBlci5mdWxsIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcblxyXG4gIC5iYW5uZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjNmMztcclxuICAgIG1heC13aWR0aDogOTQ1cHg7XHJcbiAgICBoZWlnaHQ6IDQwN3B4O1xyXG4gICAgbWFyZ2luOjAgYXV0bztcclxuXHJcbiAgICBoMSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOiAyMHB4O1xyXG4gICAgICBsZWZ0OiAzMHB4O1xyXG4gICAgICBmb250LXNpemU6IDEuNWVtO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNDgpO1xyXG4gICAgICB6LWluZGV4OiAyMjtcclxuICAgIH1cclxuXHJcbiAgICBpbWcuc29tYnJhIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOiAtMTFweDtcclxuICAgICAgei1pbmRleDogMTk7XHJcbiAgICAgIGhlaWdodDogMjZweDtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGFpbmVyLWNhcGEge1xyXG4gICAgICAvLyBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBoZWlnaHQ6IDQwN3B4O1xyXG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHotaW5kZXg6IDIwO1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgLW8tYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgLy8gQGluY2x1ZGUgYm94LXNoYWRvdygwLDdweCwzMHB4LC0xMnB4LCByZ2JhKDUxLDUxLDUxLDAuNiksIGZhbHNlKTtcclxuXHJcbiAgICB9Ly8uY29udGFpbmVyLWNhcGFcclxuXHJcbiAgICBpbWcuaW1nY2FwYSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogLTk5OTlweDtcclxuICAgICAgcmlnaHQ6IC05OTk5cHg7XHJcbiAgICAgIG1hcmdpbjogYXV0bztcclxuICAgIH1cclxuXHJcbiAgfS8vLmJhbm5lclxyXG5cclxufS8vLmNvbnRldWRvXHJcblxyXG5cclxuXHJcbi8vIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xyXG4vLyAgIC5jb250ZXVkbyB7XHJcbi8vICAgICB3aWR0aDogOTcuMiU7XHJcbi8vICAgfVxyXG4vLyB9XHJcblxyXG4vLyBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjU1cHgpIHtcclxuLy8gICAuY29udGV1ZG8ge1xyXG4vLyAgICAgd2lkdGg6IDEwMCU7XHJcbi8vICAgfVxyXG4vLyB9XHJcblxyXG4vLyBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzM0cHgpIGFuZCAobWF4LXdpZHRoOiAxMzk5cHgpIHtcclxuLy8gICAuY29udGV1ZG8ge1xyXG4vLyAgICAgbWF4LXdpZHRoOiAxMjg1cHg7XHJcbi8vICAgICB3aWR0aDogMTAwJTtcclxuLy8gICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xyXG4vLyAgIH1cclxuLy8gfVxyXG5cclxuXHJcblxyXG5zcGFuLnNldGFhenVsIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTczcHggLTI1cHg7XHJcbiAgd2lkdGg6IDdweDtcclxuICBoZWlnaHQ6IDEycHg7XHJcbn1cclxuXHJcbi5hcnRpZ28uZ3JhbmRlXHJcbi5kZWZpbmljb2VzIGEubGVpYW1haXMge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcblxyXG4ubXIzMyB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAzM3B4O1xyXG59XHJcblxyXG4vLyAudmlkZW9ob21lIHtcclxuLy8gICBvdmVyZmxvdzogaGlkZGVuO1xyXG4vLyAgIGltZyB7XHJcbi8vICAgICBsZWZ0OiAtOTk5OXB4O1xyXG4vLyAgICAgcmlnaHQ6IC05OTk5cHg7XHJcbi8vICAgfVxyXG4vLyB9Ly8udmlkZW9ob21lXHJcblxyXG4ubGluaGEtYm90dG9tIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgYm90dG9tOiAwO1xyXG4gIHdpZHRoOiA5MCU7XHJcbiAgbWFyZ2luOiBhdXRvO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG5cclxuLm5vdGljaWFzLmludGVybm8ge1xyXG4gIC5ub3RpY2lhIC5yZWNydXRhbWVudG8ge1xyXG4gICAgd2lkdGg6IDc3NXB4O1xyXG4gICAgaGVpZ2h0OiA0NzdweDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxufS8vLm5vdGljaWFzLmludGVybm9cclxuXHJcblxyXG4uY29udGVudCB7XHJcbiAgbWFyZ2luOiAwcHggYXV0bztcclxuICB3aWR0aDogMjkwcHg7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLmNvbnRlbnQge1xyXG4gICAgd2lkdGg6IDMzNXB4O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcbiAgLy8gLm5ld3MtaW1hZ2VtIHtcclxuICAvLyAgIG1hcmdpbi1ib3R0b206IDM1cHg7XHJcbiAgLy8gfVxyXG5cclxuICAuY29udGVudCBociB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgfVxyXG59Ly9AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpXHJcblxyXG4ubWVuc2FnZW0ge1xyXG4gIHdpZHRoOiAyMjBweDtcclxufVxyXG5cclxuLm1lbnNhZ2VtIHAuZW52aWUsXHJcbi5ub3RpY2lhcy5pbnRlcm5vIC53cmFwcGVyIC5tZW5zYWdlbSBwLmVudmllIHtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtc2l6ZTogMThweDtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuc3Bhbi5lbnZlbG9wZSB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0N3B4IDA7XHJcbiAgd2lkdGg6IDM5cHg7XHJcbiAgaGVpZ2h0OiAzMXB4O1xyXG4gIG1hcmdpbjogMjBweCAyMHB4IDAgMDtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcbiAgc3Bhbi5lbnZlbG9wZSB7XHJcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gIH1cclxuXHJcbiAgLm1lbnNhZ2VtIHtcclxuICAgIHdpZHRoOiAyNjBweDtcclxuICB9XHJcblxyXG4gIC5tZW5zYWdlbSBwLmVudmllLFxyXG4gIC5tZW5zYWdlbSBwLmVudmllIGEsXHJcbiAgLm5vdGljaWFzLmludGVybm8gLndyYXBwZXIgLm1lbnNhZ2VtIHAuZW52aWUsXHJcbiAgLm5vdGljaWFzLmludGVybm8gLndyYXBwZXIgLm1lbnNhZ2VtIHAuZW52aWUgYSB7XHJcbiAgICBmb250LXNpemU6IDI0cHggIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi5tZW5zYWdlbSBwLFxyXG4ubWVuc2FnZW0gYSxcclxuLm5vdGljaWFzLmludGVybm8gLndyYXBwZXIgLm1lbnNhZ2VtIHAsXHJcbi5ub3RpY2lhcy5pbnRlcm5vIC53cmFwcGVyIC5tZW5zYWdlbSBwIGEge1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBmb250LWZhbWlseTogXCJNeXJpYWRQcm8tTGlnaHRcIiwgc2Fucy1zZXJpZjtcclxuICBmb250LXdlaWdodDogMzAwO1xyXG59XHJcblxyXG5cclxuLmF0ZW5kaW1lbnRvIHtcclxuICAvL3dpZHRoOiAyODBweDtcclxuICB3aWR0aDogOTclO1xyXG5cclxufVxyXG5cclxuLm5vdGljaWFzLmludGVybm8gLndyYXBwZXIgLmF0ZW5kaW1lbnRvIHAge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBmb250LXNpemU6IDE0cHggO1xyXG4gIG1hcmdpbjogMDtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuXHJcbi5ub3RpY2lhcy5pbnRlcm5vIC53cmFwcGVyIC5hdGVuZGltZW50byBwLnNhYyB7XHJcbiAgY29sb3I6ICMwMDM5NTE7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgZm9udC1zaXplOiAxOXB4ICFpbXBvcnRhbnQ7XHJcbiAgbWFyZ2luOiAzMHB4IDAgMTVweCAwO1xyXG59XHJcblxyXG5zcGFuLnNldGFhenVsY2xhcm8ge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xNzNweCAtMjVweDtcclxuICB3aWR0aDogOHB4O1xyXG4gIGhlaWdodDogMTRweDtcclxuICBtYXJnaW4tbGVmdDogMjBweDtcclxuICBtYXJnaW4tdG9wOiA3cHg7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgc3Bhbi5zZXRhYXp1bGNsYXJvICB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vXHJcbi8vIC5tZW51YmFpeG8ge1xyXG4vLyAgIGRpc3BsYXk6IG5vbmU7XHJcbi8vIH1cclxuXHJcbi5yZWxhdG9yaW9hbnVhbCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLnJlbGF0b3Jpb2FudWFsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuLndpbmRvdzEyODAge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xyXG4gIC5mdWxsd2luZG93IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuLypcclxuUVVFTVxyXG5TT01PU1xyXG4qL1xyXG5cclxuXHJcbnNwYW4uc2V0YWJyYW5jYWJhaXhvLXBxIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzE2cHggLTQycHg7XHJcbiAgd2lkdGg6IDhweDtcclxuICBoZWlnaHQ6IDVweDtcclxufVxyXG5cclxuXHJcbi8qTUVESUEgNzY4IFBSSU1FSVJBICovXHJcblxyXG4udmFsb3JlcyAuZGVmaW5pY29lcyB7XHJcbiAgaGVpZ2h0OiAxNDJweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRibHVlMztcclxuICBwYWRkaW5nLXRvcDogNHB4O1xyXG59XHJcblxyXG5ici5tb2JpbGUge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgYnIudGFibGV0IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzM0cHgpIHtcclxuICBici5kZXNrIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICBici5tb2JpbGUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59XHJcblxyXG4uYmxvY28yIC5kZWZpbmljb2VzIHVsIGxpIHtcclxuICBmb250LXNpemU6IDE2cHg7XHJcbiAgZm9udC1mYW1pbHk6ICdNeXJpYWRQcm8tTGlnaHQnO1xyXG4gIGNvbG9yOiAjMDA4ZmQ1O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgbWFyZ2luOiAxMHB4IDA7XHJcbn1cclxuXHJcbi5ibG9jbzIgLmRlZmluaWNvZXMgaDQge1xyXG4gIGNvbG9yOiAjMDA4RkQ1O1xyXG4gIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgbWFyZ2luOiAxNXB4IDA7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmJsb2NvMiAuZGVmaW5pY29lcyBoNCB7XHJcbiAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uZGVmaW5pY29lcy5ub3Nob3cge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5nbG9iYWwsXHJcbi5wcmVzZW5jYSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcclxuICBwYWRkaW5nOiA1cHggMTBweDtcclxufVxyXG5cclxuXHJcbi5zZWN0aW9uLnF1ZW1zb21vcyAuYmxvY280IC5nbG9iYWwgcCxcclxuLnNlY3Rpb24ucXVlbXNvbW9zIC5ibG9jbzQgLnByZXNlbmNhIHAge1xyXG4gIGNvbG9yOiAjMjIyO1xyXG4gIGZvbnQtc2l6ZTogMS4yZW07XHJcbn1cclxuXHJcblxyXG4uYmxvY28yIHAge1xyXG4gIHdpZHRoOiAyOTVweDtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC1mYW1pbHk6ICdNeXJpYWRQcm8tTGlnaHQnO1xyXG4gIGNvbG9yOiAjNGQ0ZDRkO1xyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuYmxvY28yIHAge1xyXG4gICAgbWF4LXdpZHRoOiAxMjMzcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gIH1cclxuXHJcbiAgLmJsb2NvMi5ub3Nzb3N2YWxvcmVzIHtcclxuICAgIEBpbmNsdWRlIG1hcmdpbigyMHB4IDAgMCAwKTtcclxuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XHJcbiAgfVxyXG5cclxuICAvLyAuYmxvY28yLm5vc3Nvc3ZhbG9yZXMgcCB7XHJcbiAgLy8gICBmb250LXNpemU6IDE4cHg7XHJcbiAgLy8gICBtYXJnaW46IDIwcHggMCAwIDA7XHJcbiAgLy8gfVxyXG5cclxuICAuYmxvY28yLm5vc3Nvc3ZhbG9yZXMgLmRlZmluaWNvZXMgcC5tb2RvIHtcclxuICAgIGZsb2F0OiBub25lO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgbWFyZ2luOiAyMnB4IDAgMCAwO1xyXG4gIH1cclxuXHJcbiAgLmJsb2NvMi5ub3Nzb3N2YWxvcmVzIC5kZWZpbmljb2VzIHAge1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbi1yaWdodDogMThweDtcclxuICB9XHJcblxyXG4gIC5ibG9jbzIubm9zc29zdmFsb3JlcyAuZGVmaW5pY29lcyBwLm5vbXIge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMzNHB4KSB7XHJcbiAgLmJsb2NvMi5ub3Nzb3N2YWxvcmVzIHtcclxuICAgIG1hcmdpbi10b3A6IDUwcHg7XHJcbiAgfVxyXG5cclxuICAuYmxvY28yLm5vc3Nvc3ZhbG9yZXMgcCB7XHJcbiAgICBtYXJnaW46IDIwcHggMCAwIDA7XHJcbiAgfVxyXG5cclxuICAuYmxvY28yLm5vc3Nvc3ZhbG9yZXMgLmRlZmluaWNvZXMgcCB7XHJcbiAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICBtYXJnaW46IDEwcHggODBweCAwIDA7XHJcbiAgfVxyXG5cclxuICAuYmxvY28yLm5vc3Nvc3ZhbG9yZXMgLmRlZmluaWNvZXMgcC5tb2RvIHtcclxuICAgIG1hcmdpbjogMjJweCAwIDAgMzVweDtcclxuICB9XHJcblxyXG4gIC5ibG9jbzIubm9zc29zdmFsb3JlcyAuZGVmaW5pY29lcyBwLmZvY29jbGllbnRlIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xyXG4gIH1cclxufVxyXG5cclxuLmJsb2NvMiAuZGlyZXRvcmlhIC5kZWZpbmljb2VzIHAge1xyXG4gIGNvbG9yOiAjNGQ0ZDRkO1xyXG59XHJcblxyXG4ubHQtaWU5IC5ibG9jbzIgLmRpcmV0b3JpYSAuZGVmaW5pY29lcyBwIHtcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KXtcclxuICAuYmxvY28yIC5kaXJldG9yaWEgLmRlZmluaWNvZXMgcCB7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uYmxvY28yIC5kaXJldG9yaWEgLmRlZmluaWNvZXMge1xyXG4gIHBhZGRpbmc6IDIwcHggMDtcclxufVxyXG5cclxuLy8gLmJsb2NvMi5ldGljYSB7XHJcbi8vICAgbWFyZ2luLXRvcDogNjBweDtcclxuLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDU2ODgwO1xyXG4vLyAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4vLyB9XHJcblxyXG4vLyAuc2VjdGlvbi5xdWVtc29tb3MgLmJsb2NvMi5ldGljYSBoMiB7XHJcbi8vICAgY29sb3I6ICMyMjI7XHJcbi8vICAgcGFkZGluZy10b3A6IDUwcHg7XHJcbi8vIH1cclxuLy9cclxuLy8gLmJsb2NvMi5ldGljYSBwIHtcclxuLy8gICBmb250LXNpemU6IDE2cHg7XHJcbi8vICAgbWFyZ2luLXRvcDogMTBweDtcclxuLy8gICBjb2xvcjogI2ZmZjtcclxuLy8gICBtaW4td2lkdGg6IDI5NXB4O1xyXG4vLyAgIHdpZHRoOiAxMDAlO1xyXG4vLyB9XHJcblxyXG5cclxuLmJsb2NvMyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcclxuICBtYXJnaW4tdG9wOiA1MHB4O1xyXG59XHJcblxyXG4uYmxvY28zLmRlc2t0b3Age1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5sdC1pZTkgLmJsb2NvMy5tb2JpbGUge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5sdC1pZTkgLmJsb2NvMy5kZXNrdG9wIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuYmxvY28zLm1vYmlsZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmJsb2NvMy5kZXNrdG9wIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG4ubHQtaWU5IHNwYW4udHJpYW5ndWxvbGFkbyB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2NnB4IC00MXB4O1xyXG4gIHdpZHRoOiAxMXB4O1xyXG4gIGhlaWdodDogMTJweDtcclxuICBtYXJnaW4tbGVmdDogLTQ2cHg7XHJcbiAgbWFyZ2luLXRvcDogLTEwcHg7XHJcbn1cclxuXHJcbi5sdC1pZTkgLnRpbWVsaW5lYmFycmEgdWwgbGkucXVhcnRhIHNwYW4uYm9saW5oYSB7XHJcbiAgcmlnaHQ6IC02NXB4O1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5ibG9jbzMudGltZWxpbmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxNDBweDtcclxuICAgIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDA7XHJcblxyXG4gIH1cclxuXHJcbiAgLmJsb2NvMy50aW1lbGluZSBoMSB7XHJcbiAgICBtYXJnaW4tbGVmdDogMzVweDtcclxuICB9XHJcblxyXG4gIC5ibG9jbzMudGltZWxpbmUgLnRpbWVsaW5lYmFycmEge1xyXG4gICAgbWF4LXdpZHRoOiAxMDUwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDQwcHg7XHJcbiAgfVxyXG5cclxuICAuYmFycmEge1xyXG4gICAgd2lkdGg6IDEwcHg7XHJcbiAgICBoZWlnaHQ6IDcwMHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDM3ODtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHJpZ2h0OiAtMTIzcHg7XHJcbiAgfVxyXG5cclxuICBzcGFuLmJvbGluaGEge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0MHB4IC00MnB4O1xyXG4gICAgd2lkdGg6IDIzcHg7XHJcbiAgICBoZWlnaHQ6IDIzcHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICB9XHJcblxyXG4gIC50aW1lbGluZWJhcnJhIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcblxyXG4gIC50aW1lbGluZWJhcnJhIHVsIGxpIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGNvbG9yOiAkYmx1ZTc7XHJcbiAgICBmb250LWZhbWlseTogJ015cmlhZFByby1MaWdodCc7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICB3aWR0aDogMTQwcHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfVxyXG5cclxuICAudGltZWxpbmViYXJyYSB1bCBsaS5hY3RpdmUge1xyXG4gICAgZm9udC1mYW1pbHk6IFwiTXlyaWFkUHJvLUxpZ2h0XCIsIHNhbnMtc2VyaWY7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICB9XHJcblxyXG4gIC50aW1lbGluZWJhcnJhIHVsIGxpLnByaW1laXJhIHtcclxuICAgIHRvcDogLTNweDtcclxuICB9XHJcblxyXG4gIC50aW1lbGluZWJhcnJhIHVsIGxpLnNlZ3VuZGEge1xyXG4gICAgdG9wOiA1ODZweDtcclxuICB9XHJcblxyXG4gIC50aW1lbGluZWJhcnJhIHVsIGxpLnRlcmNlaXJhIHtcclxuICAgIHRvcDogNjMzcHg7XHJcbiAgfVxyXG5cclxuICAudGltZWxpbmViYXJyYSB1bCBsaS5xdWFydGEge1xyXG4gICAgdG9wOiA2ODBweDtcclxuICB9XHJcblxyXG4gIC50aW1lbGluZWJhcnJhIHVsIGxpLnF1YXJ0YS5hY3RpdmUge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gIH1cclxuXHJcbiAgLnRleHRvdGltZWxpbmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcclxuICAgIHdpZHRoOiA4MCU7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDI4cHg7XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5ODFweCkge1xyXG4gICAgICB3aWR0aDogNzAlO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgnKG1pbi13aWR0aCA6IDk4MXB4KSBhbmQgKG1heC13aWR0aCA6IDExNDBweCknKXtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAyJTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAudGV4dG90aW1lbGluZSAudGV4dG8ge1xyXG4gICAgY29sb3I6ICMyMjI7XHJcbiAgICBmb250LWZhbWlseTogJ015cmlhZFByby1MaWdodCcsIHNhbnMtc2VyaWY7O1xyXG4gICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHBhZGRpbmc6IDIwcHggMzVweDtcclxuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICBib3JkZXI6MXB4IHNvbGlkICM5OWI0Yzk7XHJcbiAgfVxyXG5cclxuICAudGV4dG90aW1lbGluZSAudGV4dG8uc2hvdyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG5cclxuXHJcbiAgc3Bhbi50cmlhbmd1bG9sYWRvIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNjZweCAtNDFweDtcclxuICAgIHdpZHRoOiAxMXB4O1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IC00NnB4O1xyXG4gICAgbWFyZ2luLXRvcDogLTEwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIHtcclxuICAuYmxvY28zLnRpbWVsaW5lIC50aW1lbGluZWJhcnJhIHtcclxuICAgIGxlZnQ6IDE1cHg7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIC50aW1lbGluZWJhcnJhIHVsIGxpLnF1YXJ0YSBzcGFuLmJvbGluaGEge1xyXG4gICAgcmlnaHQ6IC03MHB4O1xyXG4gIH1cclxuXHJcbiAgLnRpbWVsaW5lYmFycmEgdWwgbGkucXVhcnRhIHtcclxuICAgIHRvcDogNjgwcHg7XHJcbiAgICB3aWR0aDogMTUwcHg7XHJcbiAgICBsZWZ0OiAtODBweDtcclxuICB9XHJcblxyXG4gIC50aW1lbGluZWJhcnJhIHVsIGxpLnF1YXJ0YS5hY3RpdmUge1xyXG4gICAgd2lkdGg6IDIwNnB4O1xyXG4gICAgbGVmdDogLTEzNnB4O1xyXG4gIH1cclxufVxyXG5cclxuLy8gQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMzNHB4KSB7XHJcbi8vICAgLmJsb2NvMy50aW1lbGluZSAudGltZWxpbmViYXJyYSB7XHJcbi8vICAgICBsZWZ0OiAyMjVweDtcclxuLy8gICB9XHJcbi8vIH1cclxuXHJcbi5ibG9jbzMucGFydG5lciB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxufVxyXG5cclxuLmx0LWllOSAuYmxvY28zLnBhcnRuZXIge1xyXG4gIHdpZHRoOiAxMjMzcHg7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMzRweCkge1xyXG4gIC5ibG9jbzMucGFydG5lciB7XHJcbiAgICB3aWR0aDogMTIzM3B4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgfVxyXG59XHJcblxyXG4uYmxvY28zIGgxIHtcclxuICBwYWRkaW5nOiAyNXB4IDA7XHJcbn1cclxuXHJcbi5sdC1pZTkgLmJsb2NvMyAuYWJhcyB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIG1heC13aWR0aDogMTIzM3B4O1xyXG59XHJcblxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLmJsb2NvMyAuYWJhcyB7XHJcbiAgICBtYXJnaW46IDM0cHggMCAwIDA7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4uZGVmaW5pY29lcy5saXN0YSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmRlZmluaWNvZXMubGlzdGEuYWN0aXZlIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLnNlbGVjdCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGhlaWdodDogNjBweDtcclxuICB6LWluZGV4OiAxMDtcclxufVxyXG5cclxuLnNlY3Rpb24ucXVlbXNvbW9zLnN1c3RlbnRhYmlsaWRhZGUgZGl2LnNlbGVjdCB7XHJcbiAgaGVpZ2h0OiA1MHB4O1xyXG59XHJcblxyXG4uc2VsZWN0IGltZy5zb21icmEge1xyXG4gIHRvcDogMTlweDtcclxuICB3aWR0aDogMjIwcHg7XHJcbiAgbGVmdDogNTAlO1xyXG4gIG1hcmdpbi1sZWZ0OiAtMTEwcHg7XHJcbn1cclxuXHJcbi5zZWxlY3QgdWwuZHJvcGRvd24ge1xyXG4gIHdpZHRoOiAyNjBweDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogNTAlO1xyXG4gIG1hcmdpbi1sZWZ0OiAtMTMwcHg7XHJcbn1cclxuXHJcbi5zZWxlY3QgdWwuZHJvcGRvd24gbGkgYSB7XHJcbiAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAjZDVlOWY4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6JGJsdWUzIDtcclxuICBjb2xvcjogJGJsdWU1O1xyXG4gIC8vIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzAwOWZlMTtcclxuICAvLyBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjMDA5ZmUxO1xyXG4gIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDA5ZmUxO1xyXG5cclxuICB3aWR0aDogMjU4cHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBmb250LWZhbWlseTogJ015cmlhZFByby1MaWdodCc7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIHBhZGRpbmc6IDMlIDA7XHJcbiAgYm9yZGVyLXRvcDoxcHggc29saWQgJGJsdWUyO1xyXG5cclxufVxyXG5cclxuLnNlbGVjdCB1bC5kcm9wZG93bi5zdXN0IGxpIGEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XHJcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMDBhMzc4O1xyXG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICMwMGEzNzg7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMGEzNzg7XHJcbiAgY29sb3I6ICMwMGEzNzg7XHJcbn1cclxuXHJcbi5zZWxlY3QgdWwuZHJvcGRvd24gbGkge1xyXG4gIHdpZHRoOiAyNjBweDtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uc2VsZWN0IHVsLmRyb3Bkb3duIGxpLnNob3cge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4uc2VsZWN0IHVsLmRyb3Bkb3duIGxpLnNob3cgYSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDM3ODtcclxuICBmb250LWZhbWlseTogJ015cmlhZFByby1MaWdodCc7XHJcbiAgY29sb3I6ICNGRkY7XHJcbiAgZm9udC1zaXplOiAxLjJlbTtcclxuICBwYWRkaW5nOiA1JSAwO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnNlbGVjdCB1bC5kcm9wZG93bi5zdXN0IGxpLnNob3cgYSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTM3ODtcclxufVxyXG5cclxuc3Bhbi5zZWxlY3Qge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNDJweCAwO1xyXG4gIHdpZHRoOiA4cHg7XHJcbiAgaGVpZ2h0OiAxMnB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDIycHg7XHJcbiAgcmlnaHQ6IDglO1xyXG5cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KSB7XHJcbiAgICByaWdodDogNSU7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLmxpbmhhZG90ZW1wbyB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uaGlzdG9yaWFzIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzZjMGU0O1xyXG4gIG1hcmdpbi10b3A6IDUwcHg7XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjAlO1xyXG4gIH1cclxufVxyXG5cclxuLmhpc3RvcmlhIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwIHtcclxuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICB3aWR0aDogOTAlO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBmb250LWZhbWlseTogJ015cmlhZFByby1MaWdodCc7XHJcbiAgICBmb250LXNpemU6IDEuMWVtO1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZygxJSA1JSk7XHJcbiAgfVxyXG59XHJcblxyXG5zcGFuLnRyaWFuZ3VsbyB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1M3B4IDA7XHJcbiAgd2lkdGg6IDEzcHg7XHJcbiAgaGVpZ2h0OiAxMXB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IC0xMXB4O1xyXG4gIGxlZnQ6IDUwJTtcclxuICBtYXJnaW4tbGVmdDogLTZweDtcclxufVxyXG5cclxuc3Bhbi5zdWJpciB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2OXB4IDA7XHJcbiAgd2lkdGg6IDE0cHg7XHJcbiAgaGVpZ2h0OiA4cHg7XHJcbiAgdG9wOiAxNXB4O1xyXG4gIGxlZnQ6IDEwcHg7XHJcbn1cclxuXHJcbi5zdWJpciB7XHJcbiAgd2lkdGg6IDM0cHg7XHJcbiAgaGVpZ2h0OiAzNHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0b3A6IC0zM3B4O1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCl7XHJcbiAgICB0b3A6LTg2cHg7XHJcbiAgfVxyXG59XHJcblxyXG4ubHQtaWU5IC5zdWJpciB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuc3ViaXIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5zdWJpciBhIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQ0MDQ5O1xyXG4gIHdpZHRoOiAzNHB4O1xyXG4gIGhlaWdodDogMzRweDtcclxufVxyXG5cclxuc3Bhbi5pY29uZXByYXRpY2FzIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzg2cHggMDtcclxuICB3aWR0aDogMTcwcHg7XHJcbiAgaGVpZ2h0OiAxNzBweDtcclxuICBtYXJnaW46IDIwcHggYXV0byAzMHB4IGF1dG87XHJcbn1cclxuXHJcblxyXG5cclxuaW1nLmljb25lZGlmZXJlbmNpYWlzIHtcclxuICBtYXJnaW46IDIwcHggYXV0byAyMHB4IGF1dG87XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNTVweCkgYW5kIChtYXgtd2lkdGg6IDEzOTlweCkge1xyXG4gIGltZy5pY29uZWRpZmVyZW5jaWFpcyAge1xyXG4gICAgd2lkdGg6IDE2MHB4O1xyXG4gICAgaGVpZ2h0OiAxNjBweDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5cclxuYS5zYWliYW1haXMge1xyXG4gIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtc2l6ZTogMTJweDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIHBhZGRpbmc6IDEwcHggMThweCA3cHggMTdweDtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBtYXJnaW46IDEwcHggMCAyMHB4IDA7XHJcbn1cclxuXHJcbmEuc2FpYmFtYWlzIHNwYW4ge1xyXG4gIG1hcmdpbi1sZWZ0OiA2cHg7XHJcbiAgbWFyZ2luLXRvcDogMXB4O1xyXG59XHJcblxyXG5cclxuLmVkdWNhY2FvIGEuc2FpYmFtYWlzLFxyXG4uY2lkYWRhbmlhIGEuc2FpYmFtYWlzIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2NTdlO1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi5sdC1pZTkgLmVkdWNhY2FvIGEuc2FpYmFtYWlzLFxyXG4ubHQtaWU5IC5jaWRhZGFuaWEgYS5zYWliYW1haXMge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLmVkdWNhY2FvIGEuc2FpYmFtYWlzLFxyXG4gIC5jaWRhZGFuaWEgYS5zYWliYW1haXMge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5ibG9jbzMuZWR1Y2FjYW8ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIHBhZGRpbmctYm90dG9tOiAyNXB4O1xyXG59XHJcblxyXG4uYmxvY28zLmVkdWNhY2FvIC5pbWctZWR1Y2FjYW8ge1xyXG4gIG1hcmdpbjogMjBweCAwO1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5ibG9jbzMuZWR1Y2FjYW8gLmltZy1lZHVjYWNhbyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuXHJcbi5ibG9jbzMuZWR1Y2FjYW8gLmludGVybm9lZHVjYWNhbyAuaW1nLWVkdWNhY2FvIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuYmxvY28zLmVkdWNhY2FvIC5pbnRlcm5vZWR1Y2FjYW8gLmltZy1lZHVjYWNhbyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmJsb2NvMy5lZHVjYWNhbyAuY29udGFpbmVyLWltZy1lZHVjYWNhbyB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5ibG9jbzMuZWR1Y2FjYW8gLmNvbnRhaW5lci1pbWctZWR1Y2FjYW8gLmltZy1lZHVjYWNhbyB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5cclxuLmJsb2NvMy5lZHVjYWNhbyBoMSB7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxuLy8gLmJsb2NvMy5lZHVjYWNhbyBwIHtcclxuLy8gICBmb250LXNpemU6IDE2cHg7XHJcbi8vIH1cclxuXHJcbi5sdC1pZTkgLmJsb2NvMy5lZHVjYWNhbyBwLFxyXG4ubHQtaWU5IC5zZWN0aW9uLnF1ZW1zb21vcyAuYmxvY280LmNpZGFkYW5pYSBwICB7XHJcbiAgZm9udC1zaXplOiAxOHB4O1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5ibG9jbzMuZWR1Y2FjYW8gcHtcclxuXHJcbiAgfVxyXG4gIC5zZWN0aW9uLnF1ZW1zb21vcyAuYmxvY280LmNpZGFkYW5pYSBwICB7XHJcbiAgICAvLyBmb250LXNpemU6IDE4cHg7XHJcbiAgfVxyXG59XHJcblxyXG5zcGFuLnNldGFicmFuY2Fpcixcclxuc3Bhbi5zZXRhYnJhbmNhdm9sdGFyIHtcclxuICB3aWR0aDogN3B4O1xyXG4gIGhlaWdodDogMTJweDtcclxufVxyXG5cclxuc3Bhbi5zZXRhYnJhbmNhaXIge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zODJweCAtMjVweDtcclxufVxyXG5cclxuc3Bhbi5zZXRhYnJhbmNhdm9sdGFyIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzg4cHggMDtcclxufVxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLmZpbHRyby1hYmFzIHtcclxuICAgIHdpZHRoOiA0MTJweDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxuXHJcbiAgLmZpbHRyby1hYmFzIHVsIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IDMzNXB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAzJTtcclxuICB9XHJcblxyXG4gIC5maWx0cm8tYWJhcyB1bCBsaSB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG5cclxuICAuZmlsdHJvLWFiYXMgdWwgbGkgYSB7XHJcbiAgICB3aWR0aDogMTA0cHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzM0cHgpIHtcclxuICAuZmlsdHJvLWFiYXMge1xyXG4gICAgd2lkdGg6IDU1MHB4O1xyXG4gIH1cclxuXHJcbiAgLmZpbHRyby1hYmFzIHVsIHtcclxuICAgIHdpZHRoOiA0NTBweDtcclxuICB9XHJcblxyXG4gIC8vIC5maWx0cm8tYWJhcyB1bCBsaSB7XHJcbiAgLy8gICBtYXJnaW46IDAgMzBweDtcclxuICAvLyB9XHJcbn1cclxuXHJcbi5saXZyb3NjYXJyb3NzZWwsXHJcbi5vYnJhc1xyXG57XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmxpdnJvc2NhcnJvc3NlbC5zaG93IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAub2JyYXMge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAub2JyYXMgLnRvcG8gLnZvbHRhciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLndyYXBwZXIuZGVza3RvcCAudG9wbyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbi10b3A6IDdweDtcclxuICB9XHJcblxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzM0cHgpIHtcclxuICAud3JhcHBlci5kZXNrdG9wIC50b3BvIHtcclxuICAgIHdpZHRoOiA2NjVweDtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLm9yZGVuYXIge1xyXG4gIHdpZHRoOiAxMzhweDtcclxuICBoZWlnaHQ6IDM0cHg7XHJcbiAgbWFyZ2luOiAwIGF1dG8gNDBweCBhdXRvO1xyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAub3JkZW5hciB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiA3NXB4O1xyXG4gIH1cclxuXHJcbiAgLm9yZGVuYXIgYSB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMzNHB4KSB7XHJcbiAgLm9yZGVuYXIge1xyXG4gICAgd2lkdGg6IDEwMHB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuc3Bhbi5pbmRpdmlkdWFsIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQxcHggLTQycHg7XHJcbn1cclxuXHJcbnNwYW4ubGlzdGEge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0yMDZweCAtNDJweDtcclxufVxyXG5cclxuc3Bhbi5pbmRpdmlkdWFsLFxyXG5zcGFuLmxpc3RhIHtcclxuICB3aWR0aDogMzRweDtcclxuICBoZWlnaHQ6IDM0cHg7XHJcbn1cclxuXHJcbi5jb250YWluZXItbGl2cm9zIHAsXHJcbi5zdWdlc3RvZXMgLmxpdnJvIC5pbmZvIHAge1xyXG4gIHBhZGRpbmctbGVmdDogMTVweDtcclxuICBmb250LWZhbWlseTogXCJNeXJpYWRQcm8tTGlnaHRcIiwgc2Fucy1zZXJpZjtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgd2lkdGg6IDI5M3B4O1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5jb250YWluZXItbGl2cm9zIHAge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogMTIycHg7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMzNHB4KSB7XHJcbiAgLmNvbnRhaW5lci1saXZyb3MgcCB7XHJcbiAgICB3aWR0aDogMTAwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLmxpdnJvIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gIC5pbWFnZSB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBpbWcge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuYmlibGlvdGVjYSB7XHJcbiAgICB3aWR0aDogOTglO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgfVxyXG5cclxuICAubGl2cm8ge1xyXG4gICAgd2lkdGg6IDMwNHB4O1xyXG4gICAgaGVpZ2h0OiA0MDBweDtcclxuICAgIG1hcmdpbjogMnB4IDlweCAzNXB4IDJweDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxufVxyXG5cclxuLmxpdnJvc2luZGl2aWR1YWx7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXRhYmxldC1wb3J0cmFpdCkge1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjU1cHgpIGFuZCAobWF4LXdpZHRoOiAxMzMzcHgpIHtcclxuICAubGl2cm97XHJcbiAgICB3aWR0aDogMjQlO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMzNHB4KSBhbmQgKG1heC13aWR0aDogMTM5OXB4KSB7XHJcbiAgLmxpdnJve1xyXG4gICAgd2lkdGg6IDMwMXB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi5zdWdlc3RvZXMgLmxpdnJvIC5pbmZvIHtcclxuICAvL2JvcmRlci10b3A6IDFweCBzb2xpZCAjNjNjMWU4O1xyXG4gIHBhZGRpbmc6IDI1cHggMDtcclxufVxyXG5cclxuLmxpdnJvc2ludGVybm8gLmluZm8ge1xyXG4gIHBhZGRpbmctYm90dG9tOiAwO1xyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjQwcHgpIHtcclxuXHJcbiAgLmxpdnJvc2ludGVybm8gLmluZm8ge1xyXG4gICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICB9XHJcbn1cclxuXHJcbi5saXZybyAuaW5mbyBwLFxyXG4ubGl2cm9zaW50ZXJubyAuaW5mbyBwLFxyXG4uc3VnZXN0b2VzIC5saXZybyAuaW5mbyBwIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgZm9udC1mYW1pbHk6ICdNeXJpYWRQcm8tTGlnaHQnO1xyXG4gIG1hcmdpbjogMDtcclxuICB3aWR0aDogYXV0bztcclxuICBwYWRkaW5nOiAwO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4ubGl2cm9zaW50ZXJubyAuaW5mbyBwIHtcclxuICBwYWRkaW5nLWxlZnQ6IDdweDtcclxufVxyXG5cclxuLmx0LWllOSAuc3VnZXN0b2VzIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXJnaW46IDIwcHggYXV0byAwIGF1dG87XHJcbn1cclxuXHJcbi5sdC1pZTkgLmxpdnJvc2ludGVybm8gLmluZm8gcCB7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5zdWdlc3RvZXMge1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICB9XHJcblxyXG4gIC5saXZyb3NpbnRlcm5vIC5pbmZvIHAge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTgwcHgpIHtcclxuICAuc3VnZXN0b2VzIHtcclxuICAgIHdpZHRoOiA2MjBweDtcclxuICAgIG1hcmdpbjogMjBweCBhdXRvIDAgYXV0bztcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xyXG4gIC5zdWdlc3RvZXMge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4ubGl2cm8gLmluZm8gcC5jYXRlZ29yaWEsXHJcbi5saXZyb3NpbnRlcm5vIC5pbmZvIHAubm9tZWRvYXV0b3IsXHJcbi5zdWdlc3RvZXMgLmxpdnJvIC5pbmZvIHAuY2F0ZWdvcmlhIHtcclxuICBjb2xvcjogIzAwNjU3ZTtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi5saXZyb3NpbnRlcm5vIC5pbmZvIHAuY2F0ZWdvcmlhIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi5saXZybyAuaW5mbyBwLmNhdGVnb3JpYSxcclxuLmxpdnJvc2ludGVybm8gLmluZm8gcC5jYXRlZ29yaWEge1xyXG4gIGZvbnQtc2l6ZTogMTJweDtcclxuICBtYXJnaW4tdG9wOjQlO1xyXG59XHJcblxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLmxpdnJvIC5pbmZvIHAuY2F0ZWdvcmlhLFxyXG4gIC5saXZyb3NpbnRlcm5vIC5pbmZvIHAuY2F0ZWdvcmlhIHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgfVxyXG5cclxuICAubGl2cm9zaW50ZXJubyAud3JhcGludGVybm8gLmluZm8gcC5jYXRlZ29yaWEge1xyXG4gICAgY29sb3I6ICMwMDY1N2U7XHJcbiAgfVxyXG59XHJcblxyXG4ubGl2cm8gLmluZm8gcC5ub21lZG9hdXRvcixcclxuLmxpdnJvc2ludGVybm8gLmluZm8gcC5ub21lZG9hdXRvciB7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG59XHJcblxyXG4ubGl2cm8gLmluZm8gcC5ub21lZG9saXZybyB7XHJcbiAgY29sb3I6ICMwMDhmZDU7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuXHJcbiAgLmxpdnJvc2ludGVybm8gLmluZm8gcC5ub21lZG9hdXRvcixcclxuICAubGl2cm8gLmluZm8gcC5ub21lZG9saXZybyB7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgfVxyXG5cclxuICAubGl2cm9zaW50ZXJubyAud3JhcGludGVybm8gLmluZm8gcC5ub21lZG9saXZybyB7XHJcbiAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgfVxyXG5cclxuICAubGl2cm8gLmluZm8gcC5ub21lZG9saXZybyB7XHJcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xyXG4gIH1cclxufVxyXG5cclxuLmJvdHRvbS1saXZyb3Mge1xyXG4gIG1hcmdpbjogMzBweCAwIDIwcHggMDtcclxuICBoZWlnaHQ6IDQwcHg7XHJcbn1cclxuXHJcbi5ib3R0b20tbGl2cm9zIC52b2x0YXJ7XHJcbiAgbWFyZ2luLXRvcDogMTBweDtcclxufVxyXG5cclxuLmx0LWllOSAuYm90dG9tLWxpdnJvcyAudm9sdGFyIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5ib3R0b20tbGl2cm9zIC52b2x0YXIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi8vIGEuY2FycmVnYXJtYWlzLFxyXG4vLyBhLmJhaXhhcmxpdnJvIHtcclxuLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2NTdlO1xyXG4vLyAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG4vLyAgIGZvbnQtZmFtaWx5OiAnTXlyaWFkUHJvLUxpZ2h0JztcclxuLy8gICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4vLyAgIHBhZGRpbmc6IDlweCAzNnB4O1xyXG4vLyB9XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICBhLmNhcnJlZ2FybWFpcyB7XHJcbiAgICB3aWR0aDogNjZweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbiAgfVxyXG59XHJcbi8vXHJcbi8vIGEuYmFpeGFybGl2cm8ge1xyXG4vLyAgIHdpZHRoOiA2NHB4O1xyXG4vLyB9XHJcblxyXG5cclxuXHJcblxyXG5cclxuLmxpdnJvc2ludGVybm8gLmluZm8gcCB7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG5cclxuLmxpdnJvc2NhcnJvc3NlbCBwIHtcclxuICBmb250LWZhbWlseTogJ015cmlhZFByby1MaWdodCc7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuXHJcbi5saXZyb3NjYXJyb3NzZWwgcCB7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIHBhZGRpbmctbGVmdDogMTVweDtcclxufVxyXG5cclxuLmxpdnJvc2NhcnJvc3NlbCB7XHJcbiAgbWFyZ2luLXRvcDogNDBweDtcclxuICBtYXJnaW4tYm90dG9tOiAtMTVweDtcclxufVxyXG5cclxuLmxpdnJvc2ludGVybm8gaW1nLFxyXG4uaW50ZXJub2VkdWNhY2FvIGltZyB7XHJcbiAgd2lkdGg6IDI5M3B4O1xyXG4gIGhlaWdodDogMzQycHg7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5saXZyb3NpbnRlcm5vIGltZyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxufVxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkgYW5kIChtYXgtd2lkdGg6IDEzMzNweCkge1xyXG4gIC5saXZyb3NpbnRlcm5vIGltZyB7XHJcbiAgICB3aWR0aDogMjc2cHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzM0cHgpIHtcclxuICAubGl2cm9zaW50ZXJubyBpbWcge1xyXG4gICAgd2lkdGg6IDMwMnB4O1xyXG4gIH1cclxufVxyXG5cclxuLmx0LWllOSAubGl2cm9zaW50ZXJubyBpbWcuY2FwYWxpdnJvIHtcclxuICBmbG9hdDogbGVmdDtcclxuICB3aWR0aDogMzA0cHg7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0MHB4KSB7XHJcbiAgLmxpdnJvc2ludGVybm8gaW1nLmNhcGFsaXZybyB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiAyOTNweDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLmxpdnJvc2ludGVybm8gaW1nLmNhcGFsaXZybyB7XHJcbiAgICB3aWR0aDogMzA0cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uaW50ZXJub2VkdWNhY2FvIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4ubHQtaWU5IC5pbnRlcm5vZWR1Y2FjYW8gLnZvbHRhcixcclxuLmx0LWllOSAuaW50ZXJub2VkdWNhY2FvIGltZyxcclxuLmx0LWllOSAuaW50ZXJub2NpZGFkYW5pYSAudm9sdGFyIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4ubHQtaWU5IC5pbnRlcm5vZWR1Y2FjYW8sXHJcbi5sdC1pZTkgLmJsb2NvMyAuaW50ZXJub2VkdWNhY2FvIHAge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogMjRweDtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuaW50ZXJub2VkdWNhY2FvIC52b2x0YXIsXHJcbiAgLmludGVybm9lZHVjYWNhbyBpbWcsXHJcbiAgLmludGVybm9jaWRhZGFuaWEgLnZvbHRhciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmludGVybm9lZHVjYWNhbyxcclxuICAuYmxvY28zIC5pbnRlcm5vZWR1Y2FjYW8gcCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMzRweCkge1xyXG4gIC5pbnRlcm5vZWR1Y2FjYW8sXHJcbiAgLmJsb2NvMyAuaW50ZXJub2VkdWNhY2FvIHAge1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gIH1cclxufVxyXG5cclxuLmludGVybm9lZHVjYWNhbyBpbWcge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNlMmUyZTI7XHJcbn1cclxuXHJcbi5pbnRlcm5vZWR1Y2FjYW8gLnZvbHRhciBhLFxyXG4uaW50ZXJub2NpZGFkYW5pYSAudm9sdGFyIGEsXHJcbi5zZWN0aW9uLmludmVzdG1lbnRiYW5rIC5zZWN0aW9uLWNvbS1lbmVyZ2lhIGEudm9sdGFyIHtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBjb2xvcjogIzAwNjU3ZTtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbn1cclxuXHJcbnNwYW4uc2V0YWF6dWx2b2x0YXIge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0yMzVweCAtMjVweDtcclxuICB3aWR0aDogOHB4O1xyXG4gIGhlaWdodDogMTRweDtcclxufVxyXG5cclxuLmludGVybm9jaWRhZGFuaWEge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuaW50ZXJub2NpZGFkYW5pYSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuXHJcbi5pbnRlcm5vY2lkYWRhbmlhIHNwYW4ubGluaGFjYXJyb3NzZWwge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBib3R0b206IDM3cHg7XHJcbiAgbGVmdDogNTAlO1xyXG4gIG1hcmdpbi1sZWZ0OiAtNzNweDtcclxuICB6LWluZGV4OiAtNTU7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLmludGVybm9jaWRhZGFuaWEgc3Bhbi5saW5oYWNhcnJvc3NlbCB7XHJcbiAgICBtYXJnaW4tbGVmdDogLTY4cHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjU1cHgpIHtcclxuICAuaW50ZXJub2NpZGFkYW5pYSBzcGFuLmxpbmhhY2Fycm9zc2VsIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtNzFweDtcclxuICAgIGJvdHRvbTogNTdweDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMzRweCkge1xyXG4gIC5pbnRlcm5vY2lkYWRhbmlhIHNwYW4ubGluaGFjYXJyb3NzZWwge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC01NnB4O1xyXG4gIH1cclxuXHJcbiAgLmJncHJvamV0b3Mgc3Bhbi5saW5oYWNhcnJvc3NlbCB7XHJcbiAgICBib3R0b206IDU3cHg7XHJcbiAgICBtYXJnaW4tbGVmdDogLTgxcHg7XHJcbiAgfVxyXG59XHJcblxyXG5zcGFuLmxpbmhhY2Fycm9zc2VsIGhyIHtcclxuICB3aWR0aDogMTU1cHg7XHJcbiAgaGVpZ2h0OiAxcHg7XHJcbiAgY29sb3I6ICMwMDQzNzg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDM3ODtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICBzcGFuLmxpbmhhY2Fycm9zc2VsIGhyIHtcclxuICAgIHdpZHRoOiAxNjFweDtcclxuICB9XHJcbn1cclxuXHJcbi5iZ3Byb2pldG9zIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiAyO1xyXG4gIHBhZGRpbmctYm90dG9tOiAyNXB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI1NXB4KSB7XHJcbiAgLmJncHJvamV0b3Mge1xyXG4gICAgbWFyZ2luLXRvcDogNjBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiA0NXB4O1xyXG4gIH1cclxuXHJcbiAgLmNhYmVjYWxob3tcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gIH1cclxuXHJcbiAgLmNvbHVuYWVzcSxcclxuICAuY29sdW5hZGlyIHtcclxuICAgIHdpZHRoOiAzNTZweDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxuXHJcbiAgLmNvbHVuYWVzcSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDE5cHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzM0cHgpIHtcclxuICAuY2FiZWNhbGhvLFxyXG4gIC5jb2x1bmFlc3EsXHJcbiAgLmNvbHVuYWRpciB7XHJcbiAgICB3aWR0aDogMzkwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uaW5zdGl0dWljb2Vze1xyXG4gIGltZyB7XHJcbiAgICBtYXgtd2lkdGg6IDIzM3B4O1xyXG4gICAgbWF4LWhlaWdodDogMTI0cHg7XHJcbiAgICBtYXJnaW46IDI1cHggYXV0byAwIGF1dG87XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbiAgcCB7XHJcbiAgICBjb2xvcjogIzAwNDM3ODtcclxuICAgIGZvbnQtZmFtaWx5OiAnTXlyaWFkUHJvLUxpZ2h0JztcclxuICAgIGZvbnQtc2l6ZTogMC45ZW07XHJcbiAgfVxyXG5cclxufS8vLmluc3RpdHVpY29lc1xyXG5cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC8vIC5pbnN0aXR1aWNvZXMge1xyXG4gIC8vICAgcGFkZGluZzogMzBweCAzMHB4IDIwcHggMDtcclxuICAvLyB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLnF1ZW1zb21vcyAuaW5zdGl0dWljb2VzIGgzLm5vbWVpbnN0aXR1aWNhbyB7XHJcbiAgZm9udC1mYW1pbHk6IFwiTXlyaWFkUHJvLUxpZ2h0XCIsIHNhbnMtc2VyaWY7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDA0Mzc4O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBwYWRkaW5nLWJvdHRvbTogM3B4O1xyXG4gIGNvbG9yOiAjMDA0Mzc4O1xyXG4gIGZvbnQtc2l6ZTogMThweDtcclxufVxyXG5cclxuXHJcblxyXG4uY2VudGVyIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbnNwYW4udm9sdGFyY2Fycm9zc2VsIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjM1cHggLTI1cHg7XHJcbn1cclxuXHJcbnNwYW4uaXJjYXJyb3NzZWwge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNzBweCAtMjVweDtcclxufVxyXG5cclxuc3Bhbi52b2x0YXJjYXJyb3NzZWwsXHJcbnNwYW4uaXJjYXJyb3NzZWwge1xyXG4gIHdpZHRoOiA4cHg7XHJcbiAgaGVpZ2h0OiAxNHB4O1xyXG59XHJcblxyXG4ucHJvamV0b3MtYnRuIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgaGVpZ2h0OiAxNHB4O1xyXG59XHJcblxyXG4ucHJvamV0b3MtYnRuIGEge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDEwMHB4O1xyXG4gIHotaW5kZXg6IDg4ODtcclxufVxyXG5cclxuLnByb2pldG9zLWJ0biBhLnByZXYge1xyXG4gIGxlZnQ6IDA7XHJcbn1cclxuXHJcbi5wcm9qZXRvcy1idG4gYS5uZXh0IHtcclxuICByaWdodDogMDtcclxufVxyXG5cclxuXHJcblxyXG5cclxuLmNhcmRzIHtcclxuICB3aWR0aDogMTE1MnB4O1xyXG59XHJcblxyXG5cclxuLmNhcmQge1xyXG4gIC5saW5oYS1ib3R0b20ge1xyXG4gICAgdG9wOiAtMTVweDtcclxuICB9XHJcbiAgLm5ld3MtaW1hZ2VtIHtcclxuICAgIC8vIG1hcmdpbi1ib3R0b206IDE3cHg7XHJcbiAgICAvLyBtYXJnaW46IDBweCAxMnB4IDcwcHggMzRweDtcclxuXHJcbiAgICAvLyBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KSB7XHJcbiAgICAvLyAgIHdpZHRoOiA0OCU7XHJcbiAgICAvLyAgIG1heC13aWR0aDogbm9uZTtcclxuICAgIC8vIH1cclxuXHJcblxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtaW4taGVpZ2h0OiAyNzJweDtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgLmNoYW1hZGEge1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAjRkZGO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICB9XHJcbiAgICAgIGhyIHtcclxuICAgICAgICB3aWR0aDogMjI1cHg7XHJcbiAgICAgIH1cclxuICAgIH0vLy5jaGFtYWRhXHJcbiAgfVxyXG59XHJcblxyXG4vLyBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KSB7XHJcbi8vICAgLm5ld3MtaW1hZ2VtIHtcclxuLy8gICAgIGhlaWdodDogNDEwcHg7XHJcbi8vICAgICBmbG9hdDogbGVmdDtcclxuLy8gICB9XHJcbi8vIH1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuLmVuZGVyZWNvcyAudm9sdGFyIGEsXHJcbi5jb250ZXVkby1kZW51bmNpYSAudm9sdGFyIGEsXHJcbi5ub3RpY2lhcy5pbnRlcm5vIC52b2x0YXIgYSB7XHJcbiAgY29sb3I6ICMwMDhmZDU7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBmb250LXNpemU6IDAuOWVtO1xyXG4gIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcblxyXG4uZW5kZXJlY29zIC52b2x0YXIgYSBzcGFuLnNldGFhenVsY2xhcm92b2x0YXIsXHJcbi5jb250ZXVkby1kZW51bmNpYSAudm9sdGFyIGEgc3Bhbi5zZXRhYXp1bGNsYXJvdm9sdGFyLFxyXG4ubm90aWNpYXMuaW50ZXJubyAudm9sdGFyIGEgc3Bhbi5zZXRhYXp1bGNsYXJvdm9sdGFyIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzA0cHggLTQycHg7XHJcbiAgd2lkdGg6IDhweDtcclxuICBoZWlnaHQ6IDE0cHg7XHJcbiAgbWFyZ2luLXRvcDogMXB4O1xyXG4gIG1hcmdpbi1yaWdodDogMTBweDtcclxufVxyXG5cclxuXHJcbi5jb250YWluZXJwcmVtaW9zIHtcclxuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2JnLXByZW1pb3MtZGVzay5qcGcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMzc2cHg7XHJcbiAgbWFyZ2luOiA1MHB4IGF1dG87XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIHtcclxuICAuY29udGFpbmVycHJlbWlvcyB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2JnLXByZW1pb3MtZGVzay5qcGcpIG5vLXJlcGVhdDtcclxuICAgIG1heC13aWR0aDogMTIzNHB4O1xyXG4gICAgbWluLWhlaWdodDogNDA4cHg7XHJcbiAgfVxyXG59XHJcblxyXG4ucHJlbWlvcy53cmFwcGVyIHtcclxuICBtaW4taGVpZ2h0OiAzMjBweDtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XHJcbiAgLnByZW1pb3Mud3JhcHBlciB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1hcmdpbjogMTBweCAzMHB4IDBweCAzMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbiAgICBtaW4taGVpZ2h0OiAzNTVweDtcclxuICB9XHJcbn1cclxuXHJcbi5wcmVtaW9zIHtcclxuICBwIHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGZvbnQtZmFtaWx5OiAnTXlyaWFkUHJvLUxpZ2h0JztcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICB9XHJcblxyXG4gIC5kYWRvc3ByZW1pbyB7XHJcbiAgICBtYXJnaW46IDEwcHggMDtcclxuICAgIHAuYW5vIHtcclxuICAgICAgZm9udC1mYW1pbHk6IFwiTXlyaWFkUHJvLUxpZ2h0XCIsIHNhbnMtc2VyaWY7XHJcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5ub21lcHJlbWlvIHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHJcbiAgICBoMyB7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMDtcclxuICAgICAgZm9udC1mYW1pbHk6IFwiTXlyaWFkUHJvLUxpZ2h0XCIsIHNhbnMtc2VyaWY7XHJcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbiAgfVxyXG59Ly8ucHJlbWlvc1xyXG5cclxuXHJcbi5ncnVwbyB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XHJcbiAgLndyYXAtZ3J1cG8ge1xyXG4gICAgbWF4LXdpZHRoOiAxMjMzcHg7XHJcbiAgICBtaW4td2lkdGg6IDExNTNweDtcclxuICAgIG1hcmdpbjogMCBhdXRvIDUwcHggYXV0bztcclxuICB9XHJcblxyXG4gIC5ncnVwbyB7XHJcbiAgICB3aWR0aDogMzgwcHg7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1hcmdpbjogMCAycHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzM0cHgpIHtcclxuICAuZ3J1cG8ge1xyXG4gICAgd2lkdGg6IDQwNnB4O1xyXG4gIH1cclxufVxyXG5cclxuLmdydXBvIGltZyB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWluLWhlaWdodDogMTk2cHg7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2U5Zjc7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5ncnVwbyBwIHtcclxuICBtYXJnaW46IDVweCAwO1xyXG59XHJcblxyXG4uc2VjdGlvbi5xdWVtc29tb3MgLmdydXBvIGgzLnRpcG9ncnVwbyB7XHJcbiAgZm9udC1zaXplOiAxOHB4O1xyXG4gIGNvbG9yOiAjMDA2NTdlO1xyXG4gIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIG1hcmdpbi10b3A6IDIwcHg7XHJcbn1cclxuXHJcblxyXG5cclxuLmJsb2NvbGluay5saWd1ZWFnb3JhIGEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMTQyNzY7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xyXG4gIC5ibG9jb2xpbmsubGlndWVhZ29yYSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi5ibG9jb2xpbmsge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiAwO1xyXG59XHJcblxyXG4vKlNVU1RFTlRBQklMSURBREUqL1xyXG5cclxuXHJcbi8qIFByb2pldG9zIGZpbmFuY2lhZG9zICovXHJcblxyXG5cclxuLmRldGFsaGVjYXNhIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiA4ODg7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuXHJcbi8vIC5kb2N1bWVudG9zIHtcclxuLy8gICB3aWR0aDogMjQ0cHg7XHJcbi8vICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTM3ODtcclxuLy8gICBwYWRkaW5nOiA3cHggOHB4IDdweCA1MnB4O1xyXG4vLyAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuLy8gICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4vLyB9XHJcblxyXG4uc2VjdGlvbi5zdXN0ZW50YWJpbGlkYWRlIC53cmFwLWJsb2NvIC5kb2N1bWVudG9zIGEge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICBmb250LXNpemU6IDE2cHg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uc2VjdGlvbi5zdXN0ZW50YWJpbGlkYWRlIC53cmFwLWJsb2NvIC5kb2N1bWVudG9zIGEgc3BhbiB7XHJcbiAgbWFyZ2luOiA2cHggMjVweCAwIDA7XHJcbn1cclxuXHJcbi5zZWN0aW9uLnN1c3RlbnRhYmlsaWRhZGUgLndyYXAtYmxvY28gLmRvY3VtZW50b3MgaW1nLnNvbWJyYSB7XHJcbiAgdG9wOiAxOXB4O1xyXG4gIGxlZnQ6IDUwJTtcclxuICBtYXJnaW4tbGVmdDogLTE1MHB4O1xyXG59XHJcblxyXG5cclxuXHJcbi8qTU9EQUwqL1xyXG5cclxuLm1vZGFsIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4ubW9kYWwtb3ZlcmxheSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFkMjQyYztcclxuICBvcGFjaXR5OiAwLjk7XHJcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT05MClcIjtcclxuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9OTApO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgei1pbmRleDogMTA7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5kaWFsb2cge1xyXG4gIHdpZHRoOiA3NDVweDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgei1pbmRleDogMzU7XHJcbiAgbGVmdDogNTAlO1xyXG4gIG1hcmdpbi1sZWZ0OiAtMzcyLjVweDtcclxuICBwYWRkaW5nOiAwIDM1cHg7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmRpYWxvZy5zaG93IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmRpYWxvZyBhLmJ0bi1mZWNoYXIge1xyXG4gIG1hcmdpbjogMCAtMzVweCAwIDA7XHJcbn1cclxuXHJcbi5kaWFsb2cgaW1nIHtcclxuICBtYXJnaW4tdG9wOiAzMHB4O1xyXG59XHJcblxyXG4vKkZBTEUgQ09OT1NDTyovXHJcblxyXG4uZGVudW5jaWEge1xyXG4gIGJvcmRlcjogM3B4IHNvbGlkICNjY2U5Zjc7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcclxufVxyXG5cclxuLmx0LWllOSAuZGVudW5jaWEge1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuZGVudW5jaWEge1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5hLnRpdGxlZGVudW5jaWEge1xyXG4gIGNvbG9yOiAjMDA0Mzc4O1xyXG4gIGZvbnQtZmFtaWx5OiAnTXlyaWFkUHJvLUxpZ2h0JztcclxuICBmb250LXNpemU6IDIxcHg7XHJcbiAgbWFyZ2luOiAxNXB4IDA7XHJcbn1cclxuXHJcbi5sdC1pZTkgYS50aXRsZWRlbnVuY2lhIHtcclxuICBmb250LXNpemU6IDMwcHg7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA3NjhweCkge1xyXG4gIGEudGl0bGVkZW51bmNpYSB7XHJcbiAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5zcGFuLnNldGFhenVscGVxIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzUwcHggLTcycHg7XHJcbiAgd2lkdGg6IDVweDtcclxuICBoZWlnaHQ6IDhweDtcclxuICBtYXJnaW4tbGVmdDogMjBweDtcclxuICBtYXJnaW4tdG9wOiAxMnB4O1xyXG59XHJcblxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA3NjhweCkge1xyXG4gIHNwYW4uc2V0YWF6dWxwZXEge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5jb250ZXVkby1kZW51bmNpYSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5jb250ZXVkby1kZW51bmNpYSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gIC5jb250ZXVkby1kZW51bmNpYSB1bCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gIH1cclxufVxyXG5cclxuLmNvbnRldWRvLWRlbnVuY2lhIHVsIGxpIHtcclxuICBsaXN0LXN0eWxlOiBkaXNjO1xyXG4gIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG4gIGNvbG9yOiAjNGQ0ZDRkO1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMnB4O1xyXG4gIGZvbnQtd2VpZ2h0OiAxMDA7XHJcbiAgd2lkdGg6IDI4NXB4O1xyXG59XHJcblxyXG4uY29udGV1ZG8tZGVudW5jaWEgdWwgbGkgYSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZzogMDtcclxuICBjb2xvcjogIzAxNjdmZjtcclxuICBjdXJzb3I6IHBvaW50ZXJcclxufVxyXG5cclxuLmNvbnRldWRvLWRlbnVuY2lhIGEge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBjb2xvcjogIzAxNjdmZjtcclxuICBmb250LWZhbWlseTogXCJNeXJpYWRQcm8tTGlnaHRcIiwgc2Fucy1zZXJpZjtcclxufVxyXG5cclxuLmNvbnRldWRvLWRlbnVuY2lhIC52b2x0YXIge1xyXG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbn1cclxuXHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuY29udGV1ZG8tZGVudW5jaWEgLnZvbHRhciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxucC5tYXJnaW4tbmVnYXRpdmUge1xyXG4gIG1hcmdpbi1ib3R0b206IC0xNXB4O1xyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICBwLm1hcmdpbi1uZWdhdGl2ZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLmNvbnRldWRvLWJvdHRvbSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmxpZ3VlIHtcclxuICBtYXJnaW46IDM1cHggMCA1MHB4IDA7XHJcbn1cclxuXHJcbi5saWd1ZSBhLFxyXG5hLmdvZm9ybSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjU3ZTtcclxuICBjb2xvcjogI2ZmZjtcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgZm9udC1mYW1pbHk6ICdNeXJpYWRQcm8tTGlnaHQnO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB3aWR0aDogMTM2cHg7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgcGFkZGluZzogMTBweCAwO1xyXG59XHJcblxyXG4vLyAjIyMjIyMjICMjIyMjIyMgIyMjIyMjICAjICAgICAjICMgICAgICMgIyAgICAgICAgICAjICAgICMjIyMjIyAgIyMjICMjIyMjIyNcclxuLy8gIyAgICAgICAjICAgICAjICMgICAgICMgIyMgICAjIyAjICAgICAjICMgICAgICAgICAjICMgICAjICAgICAjICAjICAjICAgICAjXHJcbi8vICMgICAgICAgIyAgICAgIyAjICAgICAjICMgIyAjICMgIyAgICAgIyAjICAgICAgICAjICAgIyAgIyAgICAgIyAgIyAgIyAgICAgI1xyXG4vLyAjIyMjIyAgICMgICAgICMgIyMjIyMjICAjICAjICAjICMgICAgICMgIyAgICAgICAjICAgICAjICMjIyMjIyAgICMgICMgICAgICNcclxuLy8gIyAgICAgICAjICAgICAjICMgICAjICAgIyAgICAgIyAjICAgICAjICMgICAgICAgIyMjIyMjIyAjICAgIyAgICAjICAjICAgICAjXHJcbi8vICMgICAgICAgIyAgICAgIyAjICAgICMgICMgICAgICMgIyAgICAgIyAjICAgICAgICMgICAgICMgIyAgICAjICAgIyAgIyAgICAgI1xyXG4vLyAjICAgICAgICMjIyMjIyMgIyAgICAgIyAjICAgICAjICAjIyMjIyAgIyMjIyMjIyAjICAgICAjICMgICAgICMgIyMjICMjIyMjIyNcclxuXHJcblxyXG4ubW9kYWwtb3ZlcmxheS5mb3JtdWxhcmlvIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uaGVhZGVyLWZvcm0ge1xyXG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuaGVhZGVyLWZvcm0ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi5mb3JtIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gIGhlaWdodDogYXV0bztcclxuICB6LWluZGV4OiAtMztcclxuICBmbG9hdDogbGVmdDtcclxuICB3aWR0aDogMTAwJTtcclxuXHJcbiAgLnZvbHRhciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgIGEge1xyXG4gICAgICBjb2xvcjogIzAwOGZkNTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgZm9udC1zaXplOiAxZW07XHJcbiAgICAgIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICBzcGFuLnNldGFhenVsY2xhcm92b2x0YXJ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwNHB4IC00MnB4O1xyXG4gICAgICAgIHdpZHRoOiA4cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgICAgIG1hcmdpbjogNXB4IDhweCAwIDA7XHJcbiAgICAgIH0vL3NwYW4uc2V0YWF6dWxjbGFyb3ZvbHRhclxyXG4gICAgfS8vYVxyXG4gIH0vLy52b2x0YXJcclxuXHJcbiAgcCB7XHJcbiAgICAmLnNtYWxsIHtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICBmb250LWZhbWlseTogXCJNeXJpYWRQcm8tTGlnaHRcIiwgc2Fucy1zZXJpZjtcclxuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgfS8vJi5zbWFsbFxyXG4gIH0vL3BcclxufS8vLmZvcm1cclxuXHJcbnNwYW4uZmVjaGFyYXp1bCB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3MXB4IC02MnB4O1xyXG4gIHdpZHRoOiAxMHB4O1xyXG4gIGhlaWdodDogMTBweDtcclxufVxyXG5cclxuLy8gYS5idG4tZmVjaGFyIHtcclxuLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4vLyAgIHdpZHRoOiAyMXB4O1xyXG4vLyAgIGhlaWdodDogMjJweDtcclxuLy8gICBwYWRkaW5nLWxlZnQ6IDEzcHg7XHJcbi8vICAgcGFkZGluZy10b3A6IDEycHg7XHJcbi8vIH1cclxuXHJcblxyXG4ucGFzc29zIHtcclxuICB3aWR0aDogOTBweDtcclxuICBtYXJnaW46IDEwcHggYXV0byAwIGF1dG87XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHAge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgZm9udC1mYW1pbHk6ICdNeXJpYWRQcm8tTGlnaHQnO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luLXRvcDogN3B4O1xyXG4gIH1cclxuICBociB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICB3aWR0aDogNTNweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDE5cHg7XHJcbiAgICBib3R0b206IDI1cHg7XHJcbiAgfVxyXG5cclxuICB1bCB7XHJcbiAgICB3aWR0aDogNzVweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG5cclxuICAgICAgJi5hY3RpdmV7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wYXNzbzJ7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG4ucGFzc28yIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG4uc3VjZXNzbyB7XHJcbiAgbWFyZ2luLXRvcDogNzBweDtcclxufVxyXG5cclxuc3Bhbi5lbGlwc2VicmFuY2Ege1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xNzdweCAtNDJweDtcclxuICB3aWR0aDogNnB4O1xyXG4gIGhlaWdodDogNXB4O1xyXG4gIG1hcmdpbi10b3A6IDRweDtcclxuICAmLmFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTY0cHggLTQycHg7XHJcbiAgICB3aWR0aDogMTJweDtcclxuICAgIGhlaWdodDogMTFweDtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tbGVmdDogLTJweDtcclxuICB9XHJcbn1cclxuXHJcbi5zdWNlc3NvIHtcclxuICBoMSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNvbG9yOiAjNGQ0ZDRkO1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46IDUwcHggYXV0bztcclxuICB9XHJcbiAgcCB7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICB3aWR0aDogMjY4cHg7XHJcbiAgICBtYXJnaW46IDAgYXV0byAxMDBweCBhdXRvO1xyXG5cclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICB9XHJcbiAgYSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qTk9Uw41DSUFTKi9cclxuXHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI1NXB4KSB7XHJcbiAgLnNlY3Rpb24ubm90aWNpYXMgLmJsb2NvMSAuYWJhcyB1bCB7XHJcbiAgICB3aWR0aDogOTEycHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLm5vdGljaWFzIC5ibG9jbzEgLmFiYXMgdWwgbGkuYWJhLXByZXNzcmVsZWFzZSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLm5vdGljaWFzIC5ibG9jbzEgLmFiYXMucGFpc2VzIHVsIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLnNlY3Rpb24ubm90aWNpYXMgLmJsb2NvMSAuYWJhcyB1bCBsaSB7XHJcbiAgICB3aWR0aDogMzIuNSU7XHJcbiAgICBoZWlnaHQ6IDM2cHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLm5vdGljaWFzIC5ibG9jbzEgLmFiYXMucGFpc2VzIHVsIGxpIHtcclxuICAgIHdpZHRoOiAxNTVweDtcclxuICAgIGhlaWdodDogMzZweDtcclxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNmNGY0ZjQ7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Y0ZjRmNDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNTVweCkge1xyXG4gIC5zZWN0aW9uLm5vdGljaWFzIC5ibG9jbzEgLmFiYXMucGFpc2VzIHVsIGxpIHtcclxuICAgIHdpZHRoOiAxNTdweDtcclxuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzM0cHgpIHtcclxuICAuc2VjdGlvbi5ub3RpY2lhcyAuYmxvY28xIC5hYmFzLnBhaXNlcyB1bCBsaSB7XHJcbiAgICB3aWR0aDogMTczcHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDAwcHgpIHtcclxuICAuc2VjdGlvbi5ub3RpY2lhcyAuYmxvY28xIC5hYmFzLnBhaXNlcyB1bCBsaSB7XHJcbiAgICB3aWR0aDogMTc0LjdweDtcclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLm5vdGljaWFzIC5ibG9jbzEgLmFiYXMgdWwgbGkgYSB7XHJcbiAgd2lkdGg6IDgwJTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2RlMGU2O1xyXG4gIGNvbG9yOiAjMDA2NTdlO1xyXG4gIGZvbnQtZmFtaWx5OiAnTXlyaWFkUHJvLUxpZ2h0JztcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgcGFkZGluZzogNnB4IDE2cHg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLnNlY3Rpb24ubm90aWNpYXMgLmJsb2NvMSAuYWJhcyB1bCBsaSBhIHtcclxuICAgIHdpZHRoOiAyNTBweDtcclxuICAgIGhlaWdodDogNDRweDtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIHBhZGRpbmc6IDExcHggMzJweCAxcHggMTZweDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLm5vdGljaWFzIC5ibG9jbzEgLmFiYXMucGFpc2VzIHVsIGxpIGEge1xyXG4gICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIHdpZHRoOiAxMDdweDtcclxuICAgIGhlaWdodDogNDBweDtcclxuICAgIHBhZGRpbmc6IDE1cHggMzJweCAxcHggMTZweDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyNTVweCkge1xyXG4gIC5zZWN0aW9uLm5vdGljaWFzIC5ibG9jbzEgLmFiYXMucGFpc2VzIHVsIGxpIGEge1xyXG4gICAgd2lkdGg6IDEwOXB4O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMzNHB4KSB7XHJcbiAgLnNlY3Rpb24ubm90aWNpYXMgLmJsb2NvMSAuYWJhcy5wYWlzZXMgdWwgbGkgYSB7XHJcbiAgICB3aWR0aDogMTI1cHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDAwcHgpIHtcclxuICAuc2VjdGlvbi5ub3RpY2lhcyAuYmxvY28xIC5hYmFzLnBhaXNlcyB1bCBsaSBhIHtcclxuICAgIHdpZHRoOiAxMjdweDtcclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLm5vdGljaWFzIC5ibG9jbzEgLmFiYXMgdWwgbGkgYS5hY3RpdmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDQzNzk7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5zZWN0aW9uLm5vdGljaWFzIC5ibG9jbzEgLmFiYXMgdWwgbGkuYWJhLW5vdGljaWEge1xyXG4gIG1hcmdpbi1yaWdodDogM3B4O1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5zZWN0aW9uLm5vdGljaWFzIC5ibG9jbzEgLmFiYXMgdWwgbGkuYWJhLW5vdGljaWEge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2VjdGlvbi5ub3RpY2lhcyAuYmxvY28xIC5hYmFzIHVsIGxpIGEgc3BhbiB7XHJcbiAgbWFyZ2luLXRvcDo1cHg7XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5zZWN0aW9uLm5vdGljaWFzIC5ibG9jbzEgLmFiYXMgdWwgbGkgYSBzcGFuIHtcclxuICAgIG1hcmdpbi10b3A6MTVweDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLm5vdGljaWFzIC5ibG9jbzEgLmFiYXMucGFpc2VzIHVsIGxpIGEgc3BhbiB7XHJcbiAgICBtYXJnaW4tdG9wOjEwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5zcGFuLnNldGFhenVsLXBxIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzI5cHggLTY5cHg7XHJcbiAgd2lkdGg6IDVweDtcclxuICBoZWlnaHQ6IDhweDtcclxufVxyXG5cclxuc3Bhbi5zZXRhYXp1bGJhaXhvLXBxIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzE4cHggLTcxcHg7XHJcbiAgd2lkdGg6IDhweDtcclxuICBoZWlnaHQ6IDVweDtcclxufVxyXG5cclxuXHJcblxyXG5zcGFuLnNlbGVjdGF6dWwge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xOTFweCAtNjFweDtcclxuICB3aWR0aDogOHB4O1xyXG4gIGhlaWdodDogMTJweDtcclxuICBtYXJnaW4tdG9wOiA1cHg7XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5jb250ZXVkby1wcmVzc3JlbGVhc2UgLnNlbGVjdCAge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4uY29udGV1ZG8tbm90aWNpYXMgdWwubGlzdGF0YWdzLFxyXG4uY29udGV1ZG8tcHJlc3NyZWxlYXNlIHVsLmxpc3RhdGFncyAge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcblxyXG4uY29udGV1ZG8tcHJlc3NyZWxlYXNlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uY29udGV1ZG8tbm90aWNpYXMgLndyYXBwZXIuYm94ZmlsdHJhcixcclxuLmNvbnRldWRvLXByZXNzcmVsZWFzZSAud3JhcHBlci5ib3hmaWx0cmFyIHtcclxuICBtaW4td2lkdGg6IDI5MHB4O1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuY29udGV1ZG8tbm90aWNpYXMgLndyYXBwZXIuYm94ZmlsdHJhcixcclxuICAuY29udGV1ZG8tcHJlc3NyZWxlYXNlIC53cmFwcGVyLmJveGZpbHRyYXIge1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM2N2M5Zjg7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzY3YzlmODtcclxuICAgIG1hcmdpbjogNDVweCBhdXRvO1xyXG4gIH1cclxufVxyXG5cclxuLmNvbnRldWRvLW5vdGljaWFzIHAuZmlsdHJhcixcclxuLmNvbnRldWRvLXByZXNzcmVsZWFzZSBwLmZpbHRyYXIge1xyXG4gIHdpZHRoOiA3MHB4O1xyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuY29udGV1ZG8tbm90aWNpYXMgcC5maWx0cmFyLFxyXG4gIC5jb250ZXVkby1wcmVzc3JlbGVhc2UgcC5maWx0cmFyIHtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgcGFkZGluZy10b3A6IDExcHg7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICBtYXJnaW46IDAgMCAxNHB4IDA7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLm1haXNub3RpY2lhcy5kZXNrdG9wIC5ub3RpY2lhIHtcclxuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzY3YzlmODtcclxuICBtYXJnaW4tdG9wOiAxMHB4O1xyXG59XHJcblxyXG5cclxuXHJcblxyXG4ubWFpc25vdGljaWFzLmRlc2t0b3AgLm5vdGljaWEsXHJcbi5ub3RpY2lhLm1haW4ge1xyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1sYXJnZS1kZXNrdG9wKSB7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW4oMCk7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpIHtcclxuICAgIEBpbmNsdWRlIG1hcmdpbigzJSAwIDAgMCk7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luKDMlIDAgMCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5tYWlzbm90aWNpYXMuZGVza3RvcHtcclxuICAubm90aWNpYS5zZW1mb3Rve1xyXG4gICAgLndyYXBwZXJ7XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1sYXJnZS1kZXNrdG9wKSB7XHJcbiAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5kZXRhbGhlLW5vdGljaWEgaDEudGl0dWxvZGVzdGFxdWUge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB9XHJcbn1cclxuXHJcbi5pbWFnZW0tbm90aWNpYSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi5tYWlzbm90aWNpYXMuZGVza3RvcCAubm90aWNpYSB1bC50YWcgbGkgYSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgcGFkZGluZzogMDtcclxuICB3aWR0aDogYXV0bztcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgY29sb3I6ICMxMTliZGU7XHJcbn1cclxuXHJcbi5jb250ZXVkby1ub3RpY2lhcyBhLmxlaWFtYWlzLFxyXG4uY29udGV1ZG8tcHJlc3NyZWxlYXNlIGEubGVpYW1haXMsXHJcbi5kZXRhbGhlLW5vdGljaWEgYS5sZWlhbWFpcyB7XHJcbiAgbWFyZ2luLWxlZnQ6IDA7XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46MjVweCAwO1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcblxyXG4gICAgc3BhbntcclxuICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICBtYXJnaW4tbGVmdDogN3B4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLmNvbnRldWRvLW5vdGljaWFzIGEubGVpYW1haXMsXHJcbiAgLmNvbnRldWRvLXByZXNzcmVsZWFzZSBhLmxlaWFtYWlzLFxyXG4gIC5kZXRhbGhlLW5vdGljaWEgYS5sZWlhbWFpcyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5kZXRhbGhlLW5vdGljaWEgYS5sZWlhbWFpcyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmRldGFsaGUtbm90aWNpYSAubWFpc25vdGljaWFzLmRlc2t0b3AgYS5sZWlhbWFpcyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi10b3A6IDQlO1xyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpIHtcclxuICAgICAgbWFyZ2luLXRvcDo0JTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgc3BhbntcclxuICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICBtYXJnaW4tbGVmdDogOHB4O1xyXG4gICAgfVxyXG4gIH0vLy5kZXRhbGhlLW5vdGljaWEgLm1haXNub3RpY2lhcy5kZXNrdG9wIGEubGVpYW1haXNcclxufVxyXG5cclxuLmNvbnRldWRvLW5vdGljaWFzIGgxLFxyXG4uY29udGV1ZG8tcHJlc3NyZWxlYXNlIGgxIHtcclxuICBtYXJnaW4tYm90dG9tOjA7XHJcbn1cclxuXHJcblxyXG5cclxuLmNvbnRldWRvLW5vdGljaWFzIC5wYWdpbmFjYW8sXHJcbi5jb250ZXVkby1wcmVzc3JlbGVhc2UgLnBhZ2luYWNhbyB7XHJcbiAgbWFyZ2luLXRvcDogMTVweDtcclxufVxyXG5cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5jb250ZXVkby1ub3RpY2lhcyAucGFnaW5hY2FvLFxyXG4gIC5jb250ZXVkby1wcmVzc3JlbGVhc2UgLnBhZ2luYWNhbyB7XHJcbiAgICB3aWR0aDogMjAwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4ucGFnaW5hY2FvIGEuYnRuLXByZXYsXHJcbi5wYWdpbmFjYW8gYS5idG4tbmV4dCB7XHJcbiAgaGVpZ2h0OiAxNHB4O1xyXG4gIHdpZHRoOiA4cHg7XHJcbiAgbWFyZ2luLXRvcDogNXB4O1xyXG59XHJcblxyXG4ucGFnaW5hY2FvIHVsIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgbGVmdDogNDclO1xyXG59XHJcblxyXG4ucGFnaW5hY2FvIHVsIGxpIHtcclxuICB3aWR0aDogYXV0bztcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBmbG9hdDogbGVmdDtcclxuICByaWdodDogNTAlO1xyXG4gIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbn1cclxuXHJcbi5wYWdpbmFjYW8gdWwgbGkgYSxcclxuLnNoYXJlIHVsIGxpIGEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgZm9udC1mYW1pbHk6IFwiTXlyaWFkUHJvLUxpZ2h0XCIsIHNhbnMtc2VyaWY7XHJcbiAgZm9udC1zaXplOiAxNXB4O1xyXG4gIGNvbG9yOiAjMDA0NjdkO1xyXG59XHJcblxyXG4ucGFnaW5hY2FvIHVsIGxpIGEuYWN0aXZlIHtcclxuICBmb250LXNpemU6IDE4cHg7XHJcbiAgbWFyZ2luLXRvcDogLTJweDtcclxufVxyXG5cclxuaW1nLnBsYXltb2JpbGUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDYwcHg7XHJcbiAgbGVmdDogNTAlO1xyXG4gIG1hcmdpbi1sZWZ0OiAtNzVweDtcclxufVxyXG5cclxuaW1nLnBsYXlkZXNrIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIGltZy5wbGF5bW9iaWxlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICBpbWcucGxheWRlc2sge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDkwcHg7XHJcbiAgICBsZWZ0OiAxOTBweDtcclxuICB9XHJcblxyXG4gIC5ub3RpY2lhcy5pbnRlcm5vIGltZy5wbGF5ZGVzayB7XHJcbiAgICB0b3A6IDEzMHB4O1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC02NXB4O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTgwcHgpIHtcclxuICAubm90aWNpYXMuaW50ZXJubyBpbWcucGxheWRlc2sge1xyXG4gICAgdG9wOiAxOTBweDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xyXG4gIC5ub3RpY2lhcy5pbnRlcm5vIGltZy5wbGF5ZGVzayB7XHJcbiAgICB0b3A6IDI3MHB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi5ub3RpY2lhcy5pbnRlcm5vIC52b2x0YXIge1xyXG4gIG1hcmdpbi10b3A6IDIwcHg7XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgbWFyZ2luLXRvcDogMTAlO1xyXG4gIH1cclxufS8vLm5vdGljaWFzLmludGVybm8gLnZvbHRhclxyXG5cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5ub3RpY2lhcy5pbnRlcm5vIC52b2x0YXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICB9XHJcbn1cclxuXHJcbi5ub3RpY2lhcy5pbnRlcm5vIHNwYW4uZGF0YSB7XHJcbiAgbWFyZ2luLXRvcDogMTVweDtcclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KSB7XHJcbiAgICBtYXJnaW46IDIwcHggMDtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59XHJcblxyXG4uZGV0YWxoZS1ub3RpY2lhIHAge1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBmb250LWZhbWlseTogJ015cmlhZFByby1MaWdodCc7XHJcbiAgY29sb3I6ICM0ZDRkNGQ7XHJcbn1cclxuXHJcbi5kZXRhbGhlLW5vdGljaWEgdWwudGFnIHtcclxuICBtYXJnaW4tdG9wOiAzNXB4O1xyXG59XHJcblxyXG4uc2hhcmUge1xyXG4gIG1hcmdpbi10b3A6IDQwcHg7XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG5cclxuICB9XHJcbn0vLy5zaGFyZVxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLnNoYXJlIHtcclxuICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gIH1cclxufVxyXG5cclxuLnNoYXJlIHVsLnNvY2lhbCB7XHJcbiAgd2lkdGg6IDIwMHB4O1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLnNoYXJlIHVsLnNvY2lhbCB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgfVxyXG59XHJcblxyXG4uc2hhcmUgdWwuc29jaWFsIGxpIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgKmRpc3BsYXk6IGlubGluZTtcclxuICB6b29tOiAxO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIGNvbG9yOiAjMDAwO1xyXG59XHJcblxyXG4uc2hhcmUgdWwuc29jaWFsIGxpLmRpdmlzb3Ige1xyXG4gIGZvbnQtc2l6ZTogOHB4O1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgbWFyZ2luOiAxMXB4IDVweCAwIDVweDtcclxufVxyXG5cclxuLnNoYXJlaWNvbiB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5zaGFyZWljb24ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwcHg7XHJcbiAgfVxyXG5cclxuICAubm90aWNpYXMuaW50ZXJubyAuc2hhcmVpY29uIHAge1xyXG4gICAgY29sb3I6ICMwMDA7XHJcbiAgICBmb250LXNpemU6IDIzLjVweDtcclxuICAgIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIG1hcmdpbi10b3A6IDIycHg7XHJcbiAgfVxyXG59XHJcblxyXG5zcGFuLmZiIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMDVweDtcclxuICB3aWR0aDogMTFweDtcclxuICBoZWlnaHQ6IDI0cHg7XHJcbn1cclxuXHJcbnNwYW4uZ3BsdXMge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xM3B4IC0zMDRweDtcclxuICB3aWR0aDogMzBweDtcclxuICBoZWlnaHQ6IDIzcHg7XHJcbn1cclxuXHJcbnNwYW4ubGlua2VkaW4ge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00NnB4IC0zMDZweDtcclxuICB3aWR0aDogMjNweDtcclxuICBoZWlnaHQ6IDIzcHg7XHJcbn1cclxuXHJcbnNwYW4udHdpdHRlciB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcxcHggLTI5OXB4O1xyXG4gIHdpZHRoOiAyN3B4O1xyXG4gIGhlaWdodDogMjhweDtcclxufVxyXG5cclxuc3Bhbi5tYWlsIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTMwNnB4O1xyXG4gIHdpZHRoOiAyOXB4O1xyXG4gIGhlaWdodDogMjJweDtcclxufVxyXG5cclxuc3Bhbi5zaGFyZSB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEzMXB4IC0yODlweDtcclxuICB3aWR0aDogMzJweDtcclxuICBoZWlnaHQ6IDQwcHg7XHJcbn1cclxuXHJcbi5hbnRlcmlvci1ub3RpY2lhIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuYW50ZXJpb3Itbm90aWNpYSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuXHJcbi5wcm94aW1hLW5vdGljaWEsXHJcbi5hbnRlcmlvci1ub3RpY2lhIHtcclxuICBtYXJnaW4tdG9wOiAxNXB4O1xyXG4gIHdpZHRoOjQ1JTtcclxufVxyXG5cclxuLnByb3hpbWEtbm90aWNpYSB7XHJcblxyXG4gIG1hcmdpbi10b3A6NSU7XHJcbiAgYXtcclxuICAgIGZsb2F0OnJpZ2h0O1xyXG4gICAgd2lkdGg6OTAlO1xyXG5cclxuICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgIG1hcmdpbi1yaWdodDowO1xyXG4gICAgICBzcGFue1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogOXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmxhc3QtY2hpbGR7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OjE1cHg7XHJcbiAgICAgIHdpZHRoOjc1JTtcclxuXHJcbiAgICB9XHJcbiAgICBzcGFue1xyXG4gICAgICBmbG9hdDpyaWdodDtcclxuICAgICAgbWFyZ2luLXRvcDoyJTtcclxuICAgIH1cclxuICB9XHJcbn0vLy5wcm94aW1hLW5vdGljaWFcclxuXHJcbi5hbnRlcmlvci1ub3RpY2lhe1xyXG5cclxuICBtYXJnaW4tdG9wOjUlO1xyXG4gIGEge1xyXG4gICAgZmxvYXQ6bGVmdDtcclxuICAgIHdpZHRoOjkwJTtcclxuXHJcbiAgICAmOmZpcnN0LWNoaWxke1xyXG5cclxuICAgIH1cclxuICAgICY6bGFzdC1jaGlsZHtcclxuICAgICAgd2lkdGg6NzUlO1xyXG4gICAgfVxyXG5cclxuICAgIHNwYW57XHJcbiAgICAgIG1hcmdpbi10b3A6MiU7XHJcbiAgICAgIGZsb2F0OmxlZnQ7XHJcbiAgICB9XHJcblxyXG4gIH1cclxufS8vLmFudGVyaW9yLW5vdGljaWFcclxuXHJcblxyXG4ucHJveGltYS1ub3RpY2lhIGEuYmcsXHJcbi5hbnRlcmlvci1ub3RpY2lhIGEuYmcge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDQyNzc7XHJcbiAgd2lkdGg6IDMycHg7XHJcbiAgaGVpZ2h0OiAzMnB4O1xyXG5cclxuICBzcGFue1xyXG4gICAgbWFyZ2luLXRvcDogOXB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDlweDtcclxuICB9XHJcbn1cclxuXHJcbi5wcm94aW1hLW5vdGljaWEgYSB7XHJcbiAgbWFyZ2luLXJpZ2h0OiA3cHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLmx0LWllOSAuYW50ZXJpb3Itbm90aWNpYSBhLmJnIHtcclxuICBtYXJnaW4tcmlnaHQ6IDdweDtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuYW50ZXJpb3Itbm90aWNpYSBhLmJnIHtcclxuICAgIG1hcmdpbi1yaWdodDogN3B4O1xyXG4gIH1cclxufVxyXG5cclxuLnByb3hpbWEtbm90aWNpYSBhLFxyXG4uYW50ZXJpb3Itbm90aWNpYSBhIHtcclxuICBjb2xvcjogIzYwNjc2NTtcclxuICBmb250LXNpemU6IDFlbTtcclxuICBmb250LWZhbWlseTogJ015cmlhZFByby1MaWdodCc7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG59XHJcblxyXG4ucHJveGltYS1ub3RpY2lhIGEge1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuYW50ZXJpb3Itbm90aWNpYSBhIHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG59XHJcblxyXG4ucHJveGltYS1ub3RpY2lhIGEgc3BhbixcclxuLmFudGVyaW9yLW5vdGljaWEgYSBzcGFuIHtcclxuICBjb2xvcjogIzExOWJkZTtcclxuICBmb250LWZhbWlseTogXCJNeXJpYWRQcm8tTGlnaHRcIiwgc2Fucy1zZXJpZjtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcblxyXG4uaW1hZ2VtLW5vdGljaWEsXHJcbi5ub3RpY2lhLXZlamFtYWlzIGltZyxcclxuaW1nLmltZ25vdCxcclxuLm1haXNub3RpY2lhcy5kZXNrdG9wIGltZy5pbWdub3QsXHJcbi52aWRlbyxcclxudmlkZW8ge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1pbi13aWR0aDogMjkycHg7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG52aWRlbyBwIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XHJcbiAgbWFyZ2luLXRvcDogMTAwcHg7XHJcbn1cclxuXHJcbmltZy5pbWdub3QsXHJcbi5tYWlzbm90aWNpYXMuZGVza3RvcCBpbWcuaW1nbm90IHtcclxuICBtaW4taGVpZ2h0OiAyOTRweDtcclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpe1xyXG4gICAgbWluLWhlaWdodDogMDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuaW1hZ2VtLW5vdGljaWEsXHJcbiAgLm1haXNub3RpY2lhcy5kZXNrdG9wIC5pbWFnZW0tbm90aWNpYSB7XHJcbiAgICBmbG9hdDogbm9uZTtcclxuICAgIHdpZHRoOiA0NjhweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gIH1cclxuXHJcbiAgaW1nLmltZ25vdCxcclxuICAubm90aWNpYXMuaW50ZXJubyAubWFpc25vdGljaWFzLmRlc2t0b3AgaW1nLmltZ25vdCB7XHJcbiAgICB3aWR0aDogNDMzcHg7XHJcbiAgICBoZWlnaHQ6IDI2NHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gMzRweCBhdXRvO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAubm90aWNpYXMuaW50ZXJubyAubWFpc25vdGljaWFzLmRlc2t0b3AgaW1nLmltZ25vdCB7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gIH1cclxuXHJcbiAgLm5vdGljaWFzLmludGVybm8gLm5vdGljaWEubWFpbiBpbWcuaW1nbm90IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgfVxyXG5cclxuXHJcbiAgLm1haXNub3RpY2lhcy5kZXNrdG9wIC5ub3RpY2lhIC53cmFwcGVyIHtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIHdpZHRoOiA2OTNweDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLnF1ZW1zb21vcyAubm90aWNpYXMuaW50ZXJubyAubWFpc25vdGljaWFzLmRlc2t0b3AgLm5vdGljaWEgLndyYXBwZXIgaDIge1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBmb250LXNpemU6IDEuOGVtO1xyXG4gICAgbWFyZ2luLXRvcDoyMHB4O1xyXG4gICAgY29sb3I6JGJsdWU4O1xyXG4gIH1cclxuXHJcblxyXG4gIC5tYWlzbm90aWNpYXMuZGVza3RvcCAubm90aWNpYSAud3JhcHBlciBwIHtcclxuICAgIG1hcmdpbjogMTBweCAwIDdweCAwO1xyXG4gIH1cclxuXHJcbiAgLm5vdGljaWFzLmludGVybm8gaW1nLmltZ25vdCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogYXV0bztcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XHJcblxyXG4gIC5tYWlzbm90aWNpYXMuZGVza3RvcCAubm90aWNpYSAud3JhcHBlciB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk4MHB4KSB7XHJcbiAgLmltYWdlbS1ub3RpY2lhLFxyXG4gIC5tYWlzbm90aWNpYXMuZGVza3RvcCAuaW1hZ2VtLW5vdGljaWEge1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpe1xyXG4gIGltZy5pbWdub3QsXHJcbiAgLm5vdGljaWFzLmludGVybm8gLm1haXNub3RpY2lhcy5kZXNrdG9wIGltZy5pbWdub3Qge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIH1cclxuXHJcbiAgLm1haXNub3RpY2lhcy5kZXNrdG9wIC5ub3RpY2lhIC53cmFwcGVyIHtcclxuICAgIC8vIHdpZHRoOiA2MTVweDtcclxuICAgIHdpZHRoOiA1MCU7XHJcbiAgICBtYXJnaW4tdG9wOiAzJTtcclxuICB9XHJcblxyXG4gIC5ub3RpY2lhcy5pbnRlcm5vIC53cmFwcGVyIHtcclxuICAgIHdpZHRoOiA5NiU7XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi5xdWVtc29tb3MgLm5vdGljaWFzLmludGVybm8gLm5vdGljaWEgLndyYXBwZXIgaDIge1xyXG4gICAgZm9udC1zaXplOiA4MHB4O1xyXG4gIH1cclxuXHJcbiAgLm5vdGljaWFzLmludGVybm8gLm5vdGljaWEgLndyYXBwZXIgcCB7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcblxyXG4gIH1cclxuXHJcbiAgLmltYWdlbS1ub3RpY2lhLFxyXG4gIC5tYWlzbm90aWNpYXMuZGVza3RvcCAuaW1hZ2VtLW5vdGljaWEge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgfVxyXG59XHJcblxyXG4ubm90aWNpYS12ZWphbWFpcyBpbWcge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDhmZDU7XHJcbn1cclxuXHJcbi5ub3RpY2lhLXZlamFtYWlzIHAudGl0dWxvbm90aWNpYSB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGNvbG9yOiAjMDA4ZmQ1O1xyXG4gIGZvbnQtZmFtaWx5OiAnTXlyaWFkUHJvLUxpZ2h0JztcclxuICBmb250LXNpemU6IDE2cHg7XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC52ZWphdGFtYmVtIHtcclxuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLnZlamF0YW1iZW0gcC50aXRsZSB7XHJcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDhmZDU7XHJcbn1cclxuXHJcbi5tYWlzbm90aWNpYXMuZGVza3RvcCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuXHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAubWFpc25vdGljaWFzLm1vYmlsZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLm1haXNub3RpY2lhcy5kZXNrdG9wIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuLmNvbnRhdG8tbm90aWNpYXMge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuY29udGF0by1ub3RpY2lhcyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgbWFyZ2luOiAyNXB4IGF1dG8gMCBhdXRvO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XHJcbiAgLmNvbnRhdG8tbm90aWNpYXMge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAuY29udGF0by1ub3RpY2lhcyAuZnVsbHdpbmRvdyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuXHJcbi5kZXRhbGhlLW5vdGljaWEgLndyYXBwZXIgdWwudGFnIHtcclxuXHJcbiAgbGl7XHJcbiAgICAmOmZpcnN0LWNoaWxke1xyXG4gICAgICBtYXJnaW4tbGVmdDowO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6MDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBkaXNwbGF5KGlubGluZS1ibG9jayk7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nKDAgOHB4KTtcclxuICAgIGF7XHJcbiAgICAgIGNvbG9yOiRibHVlMztcclxuICAgICAgZm9udC1zaXplOjFlbTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZGV0YWxoZS1ub3RpY2lhIC52aWRlbyB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IC8qIDE2OjkgKi9cclxuICBoZWlnaHQ6IDA7XHJcbn1cclxuLmRldGFsaGUtbm90aWNpYSAudmlkZW8gaWZyYW1lIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4vKklOVkVTVE1FTlQgQkFOS0lORyovXHJcblxyXG5zcGFuLnByZXRvYmFpeG8ge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNjVweCAtMTA1cHg7XHJcbiAgd2lkdGg6IDhweDtcclxuICBoZWlnaHQ6IDVweDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAzNXB4O1xyXG4gIGxlZnQ6IDUwJTtcclxuICBtYXJnaW4tbGVmdDogLTRweDtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5zcGFuLnByZXRvYmFpeG8uc2hvdyB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5yZWYtYm94IHAge1xyXG4gIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBmb250LXdlaWdodDogMTAwO1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5zZWxvcyB7XHJcbiAgICBtYXJnaW46IDIwcHggMCAwIDA7XHJcbiAgfVxyXG5cclxuICAuc2Vsb3MgLnNlbG8ge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQzNTI1YTtcclxuICAgIG1hcmdpbi1ib3R0b206IDU0cHg7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICB9XHJcblxyXG4gIC5zZWxvcyAuc2Vsby5tZWlvIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA1NHB4O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcbiAgLnNlbG9zIC5zZWxvIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA1NHB4O1xyXG4gIH1cclxuXHJcbiAgLnNlbG9zIC5zZWxvIGltZyB7XHJcbiAgICB3aWR0aDogMjU0cHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIHtcclxuICAuc2Vsb3MgLnNlbG8sXHJcbiAgLnNlbG9zIC5zZWxvLm1laW8ge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDExMXB4O1xyXG4gIH1cclxuXHJcbiAgLnNlbG9zIC5zZWxvIGltZyB7XHJcbiAgICB3aWR0aDogMjk4cHg7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzM0cHgpIHtcclxuICAuc2Vsb3MgLnNlbG8sXHJcbiAgLnNlbG9zIC5zZWxvLm1laW8ge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDE2MHB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG4uY3VzdG9tLWZvcm0tcmFkaW8sXHJcbi5jdXN0b20tZm9ybS1yYWRpby5jdXN0b20tZm9ybS1mb2N1c2VkIHtcclxuICBmbG9hdDogbGVmdDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTFweDtcclxuICBoZWlnaHQ6IDExcHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiAxN3B4O1xyXG4gIG1hcmdpbi10b3A6IDRweDtcclxuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3Nwcml0ZS5wbmcpIG5vLXJlcGVhdCBzY3JvbGwgLTM2M3B4IC0xMjdweCB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLmN1c3RvbS1mb3JtLXJhZGlvLmN1c3RvbS1mb3JtLWNoZWNrZWQge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNjNweCAtMTE0cHg7XHJcbn1cclxuXHJcblxyXG4uYnRuLWNhZGFzdHJvIHtcclxuICBtYXJnaW46IDYzcHggMCA2OHB4IDA7XHJcbn1cclxuXHJcbi5idG4tY2FkYXN0cm8gYS5jYW5jZWwge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZDlkOWQ7XHJcbiAgbWFyZ2luLXJpZ2h0OiA2N3B4O1xyXG59XHJcblxyXG4uYnRuLWNhZGFzdHJvIGEuc3VibWl0IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGE2Zjg3O1xyXG59XHJcblxyXG4uYnRuLWNhZGFzdHJvIGEge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIHBhZGRpbmc6IDEwcHggNThweDtcclxuICBmb250LWZhbWlseTogJ015cmlhZFByby1MaWdodCc7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG59XHJcblxyXG5cclxuZm9ybVtuYW1lPVwic2VqYWNsaWVudGVkZXNrXCJdIGZpZWxkc2V0IHNwYW4uZXJyb3JtZXNzYWdlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIGNvbG9yOiAjZmYwMDAwO1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgZm9udC1mYW1pbHk6IFwiTXlyaWFkUHJvLUxpZ2h0XCIsIHNhbnMtc2VyaWY7XHJcbiAgbWFyZ2luOiAyOHB4IDAgMCAyMHB4O1xyXG59XHJcblxyXG4vKkVTVElMT1MgSCovXHJcblxyXG4uYmxvY28zIGgzIHtcclxuICBwYWRkaW5nOiAyNXB4IDA7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLmJsb2NvMy50aW1lbGluZSBoMyB7XHJcbiAgICBtYXJnaW4tbGVmdDogMzVweDtcclxuICB9XHJcbn1cclxuXHJcbi5ub21hcmdpbmJvdHRvbSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpe1xyXG4gIC5ub21hcmdpbmxlZnQge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uLnByaW5jaXBhaXNwcmVtaW9zIC5wcmVtaW9zIC5ub21lcHJlbWlvIGgzIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBmb250LWZhbWlseTogXCJNeXJpYWRQcm8tTGlnaHRcIiwgc2Fucy1zZXJpZjtcclxuICBmb250LXNpemU6IDE4cHg7XHJcbn1cclxuXHJcbi8qNDA0Ki9cclxuXHJcblxyXG4uc2VjdGlvbi5uYW9lbmNvbnRyYWRhIC5ibG9jbzEge1xyXG4gIHdpZHRoOiAyOTBweDtcclxuICBtYXJnaW4tdG9wOiAzNXB4O1xyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuc2VjdGlvbi5uYW9lbmNvbnRyYWRhIC5ibG9jbzEge1xyXG4gICAgd2lkdGg6IDY1OHB4O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcbiAgLnNlY3Rpb24ubmFvZW5jb250cmFkYSAuYmxvY28xIHtcclxuICAgIHdpZHRoOiA5MjBweDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XHJcbiAgLnNlY3Rpb24ubmFvZW5jb250cmFkYSAuYmxvY28xIHAuZGVzY3VscGUge1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgLy8gIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2VjdGlvbi5uYW9lbmNvbnRyYWRhIGgyIHtcclxuICBmb250LXNpemU6IDE4cHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLnNlY3Rpb24ubmFvZW5jb250cmFkYSBoMiB7XHJcbiAgICBmb250LXNpemU6IDIxcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2VjdGlvbi5uYW9lbmNvbnRyYWRhIC5ibG9jbzEgdWwgbGkge1xyXG4gIGNvbG9yOiAjMDA5RkUxO1xyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuc2VjdGlvbi5uYW9lbmNvbnRyYWRhIC5ibG9jbzEgdWwgbGkge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2VjdGlvbi5uYW9lbmNvbnRyYWRhIC5ibG9jbzEgdWwgbGkgc3BhbiB7XHJcbiAgY29sb3I6ICM0ZDRkNGQ7XHJcbn1cclxuXHJcbi5zZWN0aW9uLm5hb2VuY29udHJhZGEgcC5pbmZvY2FtcG8ge1xyXG4gIGZvbnQtc2l6ZTogMThweDtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcblxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLnNlY3Rpb24ubmFvZW5jb250cmFkYSBwLmluZm9jYW1wbyB7XHJcbiAgICBmb250LXNpemU6IDIxcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xyXG4gIH1cclxufVxyXG5cclxuLnNlY3Rpb24ubmFvZW5jb250cmFkYSBwLmluZm9jYW1wby5jbGlxdWUge1xyXG4gIG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG5cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5zZWN0aW9uLm5hb2VuY29udHJhZGEgcC5pbmZvY2FtcG8uY2xpcXVlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2VjdGlvbi5uYW9lbmNvbnRyYWRhIGZvcm0ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXJnaW46IDMwcHggMDtcclxufVxyXG5cclxuLnNlY3Rpb24ubmFvZW5jb250cmFkYSBmb3JtIGlucHV0IHtcclxuICB3aWR0aDogMjc4cHg7XHJcbiAgcGFkZGluZzogN3B4IDVweDtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGNvbG9yOiAjM2U0ODUxO1xyXG59XHJcblxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLnNlY3Rpb24ubmFvZW5jb250cmFkYSBmb3JtIGlucHV0IHtcclxuICAgIHdpZHRoOiA2NDZweDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xyXG4gIC5zZWN0aW9uLm5hb2VuY29udHJhZGEgZm9ybSBpbnB1dCB7XHJcbiAgICB3aWR0aDogODc2cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2VjdGlvbi5uYW9lbmNvbnRyYWRhIGZvcm0gYSBzcGFuLmx1cGFwcmV0YSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxN3B4O1xyXG4gIGhlaWdodDogMTlweDtcclxuICB0b3A6IDdweDtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcbiAgLnNlY3Rpb24ubmFvZW5jb250cmFkYSBmb3JtIGEgc3Bhbi5sdXBhcHJldGEge1xyXG4gICAgcmlnaHQ6IDUwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5zcGFuLnNldGFwcmV0YSxcclxuc3Bhbi5zZXRhcHJldGFpcntcclxuICB3aWR0aDogOHB4O1xyXG4gIGhlaWdodDogMTRweDtcclxufVxyXG5cclxuc3Bhbi5zZXRhcHJldGEge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNjNweCAtMTQxcHg7XHJcbn1cclxuXHJcbnNwYW4uc2V0YXByZXRhaXIge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNjNweCAtMTU3cHg7XHJcbn1cclxuXHJcbi5zZWN0aW9uLm5hb2VuY29udHJhZGEgLnZvbHRhciBhIHtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBjb2xvcjogIzMzM2U0ODtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbn1cclxuXHJcbi8qRE9XTkxPQURTKi9cclxuXHJcbi5kb3dubG9hZHMge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5zZWN0aW9uLWRvd25sb2FkcyB7XHJcbiAgbWFyZ2luLXRvcDogMzBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcblxyXG5cclxuLy8gQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuLy8gICAuc2VjdGlvbi1kb3dubG9hZHMge1xyXG4vLyAgICAgZGlzcGxheTogbm9uZTtcclxuLy8gICB9XHJcbi8vIH1cclxuXHJcbi5zZWN0aW9uLWRvd25sb2FkcyBoNCB7XHJcbiAgY29sb3I6ICM0MzUyNUE7XHJcbiAgZm9udC1mYW1pbHk6IFwiTXlyaWFkUHJvLUxpZ2h0XCIsIHNhbnMtc2VyaWY7XHJcbn1cclxuXHJcbi5zZWN0aW9uLWRvd25sb2FkcyBhLnZpc3VhbGl6YXJkb2NzIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIHBhZGRpbmc6IDZweCAzMHB4IDdweCAzMHB4O1xyXG4gIHdpZHRoOiAyMDBweDtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDM1MjVBO1xyXG59XHJcblxyXG4uc2VjdGlvbi1kb3dubG9hZHMgYS52aXN1YWxpemFyZG9jcyBzcGFuIHtcclxuICBtYXJnaW4tdG9wOiA4cHg7XHJcbn1cclxuXHJcbi5zZWN0aW9uLWRvd25sb2FkcyBpbWcuc29tYnJhIHtcclxuICB3aWR0aDogMjgycHg7XHJcbiAgbGVmdDogNTAlO1xyXG4gIG1hcmdpbi1sZWZ0OiAtMTQxcHg7XHJcbn1cclxuXHJcbi5saXN0LWRvd25sb2FkcyB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5kb3dubG9hZHMge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAuZG93bmxvYWRzIC5kb3dubGlzdGEge1xyXG4gICAgd2lkdGg6IDUwJTtcclxuICAgIG1hcmdpbjogMzBweCAwIDIwcHggMDtcclxuICB9XHJcblxyXG4gIC5kb3dubG9hZHMgLmRvd25saXN0YSBoMiB7XHJcbiAgICBjb2xvcjogIzQzNTI1YTtcclxuICAgIGZvbnQtZmFtaWx5OiAnTXlyaWFkUHJvLUxpZ2h0JztcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICB9XHJcbiAgLmRvd25sb2FkcyAuZG93bmxpc3RhIGgyIHN0cm9uZyB7XHJcbiAgICBmb250LWZhbWlseTogJ015cmlhZFByby1Cb2xkJztcclxuICB9XHJcblxyXG4gIC5kb3dubG9hZHMgLmRvd25saXN0YSB1bCBsaSB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG5cclxuICAuZG93bmxvYWRzIC5kb3dubGlzdGEgdWwgbGkgYSB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBjb2xvcjogIzQzNTI1YTtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIG1pbi1oZWlnaHQ6IDMzcHg7XHJcbiAgICBwYWRkaW5nOiA5cHggMCAwIDQwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4vKkZPUk0gQVJFQSBDTElFTlRFKi9cclxuXHJcbnVsLmFyZWFjbGllbnRlbWVudSBsaSBmb3JtW25hbWU9XCJsb2dpblwiXSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDM3OTtcclxuICBwYWRkaW5nOiAxMHB4IDAgMzZweCAzM3B4O1xyXG4gIGhlaWdodDogYXV0bztcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG51bC5hcmVhY2xpZW50ZW1lbnUgbGkgZm9ybVtuYW1lPVwibG9naW5cIl0gaW5wdXQge1xyXG4gIGNvbG9yOiAjNGQ0ZDRkO1xyXG4gIGZvbnQtc2l6ZTogMTJweDtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gIHBhZGRpbmc6IDNweDtcclxuICB3aWR0aDogMTQ3cHg7XHJcbn1cclxuXHJcbnVsLmFyZWFjbGllbnRlbWVudSBsaSBmb3JtW25hbWU9XCJsb2dpblwiXSAgOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyICB7XHJcbiAgY29sb3I6ICMwNDhhY2M7XHJcbn1cclxuXHJcbnVsLmFyZWFjbGllbnRlbWVudSBsaSBmb3JtW25hbWU9XCJsb2dpblwiXSA6Oi1tb3otaW5wdXQtcGxhY2Vob2xkZXIgIHtcclxuICBjb2xvcjogIzA0OGFjYztcclxufVxyXG5cclxudWwuYXJlYWNsaWVudGVtZW51IGxpIGZvcm1bbmFtZT1cImxvZ2luXCJdIDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gIGNvbG9yOiAjMDQ4YWNjO1xyXG59XHJcblxyXG51bC5hcmVhY2xpZW50ZW1lbnUgbGkgZm9ybVtuYW1lPVwibG9naW5cIl0gYS5lc3F1ZWNpc2VuaGEge1xyXG4gIGNvbG9yOiAjMDQ4YWNjO1xyXG4gIGZvbnQtc2l6ZTogMTBweDtcclxuICB0ZXh0LWFsaWduOiByaWdodDtcclxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICB3aWR0aDogYXV0bztcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgcGFkZGluZy1yaWdodDogMzdweDtcclxuICBwYWRkaW5nLXRvcDogMDtcclxufVxyXG5cclxuLmx0LWllOSB1bC5hcmVhY2xpZW50ZW1lbnUgbGkgZm9ybVtuYW1lPVwibG9naW5cIl0gaW5wdXRbdHlwZT1idXR0b25dIHtcclxuICBwYWRkaW5nOiA2cHggNXB4IDRweCA1cHg7XHJcbn1cclxuXHJcbnVsLmFyZWFjbGllbnRlbWVudSBsaSBmb3JtW25hbWU9XCJsb2dpblwiXSBpbnB1dFt0eXBlPWJ1dHRvbl0ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwNDhhY2M7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBwYWRkaW5nOiA2cHggNXB4IDJweCA1cHg7XHJcbiAgd2lkdGg6IDk4cHg7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG4gIG1hcmdpbi1yaWdodDogMzdweDtcclxufVxyXG5cclxuXHJcbmxpLmhyLm1hcmdpbm5lZyB7XHJcbiAgbWFyZ2luLXRvcDogLTFweDtcclxufVxyXG5cclxuXHJcbi8qVEVNUExBVEUgR0VOw4lSSUNPKi9cclxuXHJcbi5zZWN0aW9uLnRlbXBsYXRlIHtcclxuICAubW9kZWxvLXRpdHVsbyBwIHtcclxuICAgIG1hcmdpbjogMTBweCAwO1xyXG4gIH1cclxuICAubW9kZWxvLWRvd25sb2FkIGgzIHtcclxuICAgIGNvbG9yOiAjNDM1MjVhO1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuXHJcbi52aXN1YWxpemFyZG93bmxvYWQgLmJ1dHRvbiB7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbiAgbWFyZ2luLXRvcDogMjBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgY29sb3I6ICNmZWZlZmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRlNWM2MztcclxufVxyXG5cclxuLnZpc3VhbGl6YXJkb3dubG9hZCB7XHJcbiAgLmJ1dHRvbiAuc2V0YWJyYW5jYS1wcSB7XHJcbiAgICBtYXJnaW46IDE1cHggMTBweCAwcHggMHB4O1xyXG4gIH1cclxuICBpbWcuc29tYnJhIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbGVmdDogMSU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBib3R0b206IDE2cHg7XHJcbiAgfVxyXG5cclxuXHJcbn1cclxuXHJcblxyXG4uc2VjdGlvbi5tb2RlbG9kb3dubG9hZCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuXHJcbi5zZWN0aW9uLnRlbXBsYXRlIC5kb3dubG9hZCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLnNlY3Rpb24udGVtcGxhdGUgLmRvd25sb2FkIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDUwJTtcclxuICAgIG1hcmdpbjogMzBweCAwIDIwcHggMDtcclxuICB9XHJcbiAgLnNlY3Rpb24udGVtcGxhdGUgLmRvd25sb2FkIHVsIGxpIHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLnRlbXBsYXRlIC5kb3dubG9hZCB1bCBsaSBhIHtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgY29sb3I6ICM0MzUyNWE7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBtaW4taGVpZ2h0OiAzM3B4O1xyXG4gICAgcGFkZGluZzogOXB4IDAgMCA0MHB4O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuLnNlY3Rpb24udGVtcGxhdGUgLm1vZGVsby1hbm8gLmFiYS1hbm9zIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uc2VjdGlvbi50ZW1wbGF0ZSAubW9kZWxvLWFubyB1bC5hbm9zIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDMycHg7XHJcbiAgbWFyZ2luOiAzMHB4IDA7XHJcbn1cclxuXHJcbi5zZWN0aW9uLnRlbXBsYXRlIC5tb2RlbG8tYW5vIHVsLmFub3MgbGkge1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgbWFyZ2luOiAwIDFweCAwIDA7XHJcbiAgcGFkZGluZzogMCAwIDEwcHg7XHJcbn1cclxuXHJcbi5zZWN0aW9uLnRlbXBsYXRlIC5tb2RlbG8tYW5vIHVsLmFub3MgbGkgYSB7XHJcbiAgZm9udC1mYW1pbHk6ICdNeXJpYWRQcm8tQm9sZCc7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZGNkZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBjb2xvcjogI2ZmZjtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgaGVpZ2h0OiAyNHB4O1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiA3cHggMzBweCAwIDMwcHg7XHJcbn1cclxuXHJcbi5zZWN0aW9uLnRlbXBsYXRlIC5tb2RlbG8tYW5vIHVsLmFub3MgbGkuYWN0aXZlIHtcclxuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2J0bi1hcnJvdy1ncmV5LWRvd24ucG5nKSBib3R0b20gY2VudGVyIG5vLXJlcGVhdDtcclxufVxyXG5cclxuLnNlY3Rpb24udGVtcGxhdGUgLm1vZGVsby1hbm8gdWwuYW5vcyBsaS5hY3RpdmUgYSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQzNTI1YTtcclxufVxyXG5cclxuLnNlY3Rpb24udGVtcGxhdGUgLm1vZGVsby1hbm8gaDMge1xyXG4gIGZvbnQtZmFtaWx5OiAnTXlyaWFkUHJvLUJvbGQnO1xyXG4gIGNvbG9yOiAjNDM1MjVhO1xyXG4gIGZvbnQtc2l6ZTogMzZweDtcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG4uc2VjdGlvbi50ZW1wbGF0ZSAubW9kZWxvLWFubyAuZG93bmxvYWQge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5zZWN0aW9uLnRlbXBsYXRlIC5tb2RlbG8tYW5vIC5kb3dubG9hZC5zaG93IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLnNlY3Rpb24udGVtcGxhdGUgLm1vZGVsby1hYmEgLmFiYXMge1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBtYXJnaW46IDMwcHggMCAwIDA7XHJcbn1cclxuXHJcbi5zZWN0aW9uLnRlbXBsYXRlIC5tb2RlbG8tYWJhIHVsIGxpIHtcclxuICBtYXJnaW4tbGVmdDogMDtcclxuICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICB3aWR0aDogNDkuNSU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAuc2VjdGlvbi50ZW1wbGF0ZSAubW9kZWxvLWFiYSB1bCBsaSB7XHJcbiAgICB3aWR0aDogNDkuNiU7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uc2VjdGlvbi50ZW1wbGF0ZSAubW9kZWxvLWFiYSB1bCBsaSBhIHtcclxuICBsaW5lLWhlaWdodDogMzNweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjRiYWJkO1xyXG4gIGNvbG9yOiAjRkZGO1xyXG4gIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1MaWdodFwiLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5cclxuLnNlY3Rpb24udGVtcGxhdGUgLm1vZGVsby1hYmEgdWwgbGkgYS5hY3RpdmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM0MzUyNWE7XHJcbn1cclxuXHJcblxyXG4uc2VjdGlvbi50ZW1wbGF0ZSAubW9kZWxvLWFiYSAuYWJhcyB1bCBsaSBhIHNwYW4ge1xyXG4gIG1hcmdpbi10b3A6IDEzcHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiAzNXB4O1xyXG59XHJcblxyXG4uc2VjdGlvbi50ZW1wbGF0ZSAubW9kZWxvLWFiYSAuY29udGV1ZG8tYWJhIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uc2VjdGlvbi50ZW1wbGF0ZSAubW9kZWxvLWFiYSAuY29udGV1ZG8tYWJhLnNob3cge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4uc2VjdGlvbi50ZW1wbGF0ZSAubW9kZWxvLWFiYSAuY29udGV1ZG8tYWJhLnNob3cgaDMge1xyXG4gIG1hcmdpbjogMzBweCAwIDE1cHggMDtcclxufVxyXG4iLCJAZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogJ015cmlhZFByby1SZWd1bGFyJztcclxuICBzcmM6IHVybCgnLi4vZm9udHMvTXlyaWFkUHJvLVJlZ3VsYXIuZW90Jyk7XHJcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL015cmlhZFByby1SZWd1bGFyLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgICAgICB1cmwoJy4uL2ZvbnRzL015cmlhZFByby1SZWd1bGFyLm90ZicpICBmb3JtYXQoJ29wZW50eXBlJyksXHJcblx0ICAgICB1cmwoJy4uL2ZvbnRzL015cmlhZFByby1SZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuICAgICAgIHVybCgnLi4vZm9udHMvTXlyaWFkUHJvLVJlZ3VsYXIudHRmJykgIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICAgICAgIHVybCgnLi4vZm9udHMvTXlyaWFkUHJvLVJlZ3VsYXIuc3ZnI015cmlhZFByby1SZWd1bGFyJykgZm9ybWF0KCdzdmcnKTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdNeXJpYWRQcm8tTGlnaHQnO1xyXG4gIHNyYzogdXJsKCcuLi9mb250cy9NeXJpYWRQcm8tTGlnaHQuZW90Jyk7XHJcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL015cmlhZFByby1MaWdodC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG4gICAgICB1cmwoJy4uL2ZvbnRzL015cmlhZFByby1MaWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgIHVybCgnLi4vZm9udHMvTXlyaWFkUHJvLUxpZ2h0LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICAgICAgdXJsKCdNeXJpYWRQcm8tTGlnaHQuc3ZnI015cmlhZFByby1MaWdodCcpIGZvcm1hdCgnc3ZnJyk7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiAnTXlyaWFkUHJvLUJvbGQnO1xyXG4gIHNyYzogdXJsKCcuLi9mb250cy9teXJpYWRwcm8tYm9sZC13ZWJmb250LmVvdCcpO1xyXG4gIHNyYzogdXJsKCcuLi9mb250cy9teXJpYWRwcm8tYm9sZC13ZWJmb250LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgICAgIHVybCgnLi4vZm9udHMvbXlyaWFkcHJvLWJvbGQtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgIHVybCgnLi4vZm9udHMvbXlyaWFkcHJvLWJvbGQtd2ViZm9udC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXHJcbiAgICAgIHVybCgnbXlyaWFkcHJvLWJvbGQtd2ViZm9udC5zdmcjbXlyaWFkcHJvLWJvbGQtd2ViZm9udCcpIGZvcm1hdCgnc3ZnJyk7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuIiwiLy8gQm91cmJvbiA0LjIuN1xuLy8gaHR0cDovL2JvdXJib24uaW9cbi8vIENvcHlyaWdodCAyMDExLTIwMTUgdGhvdWdodGJvdCwgaW5jLlxuLy8gTUlUIExpY2Vuc2VcblxuQGltcG9ydCBcInNldHRpbmdzL3ByZWZpeGVyXCI7XG5AaW1wb3J0IFwic2V0dGluZ3MvcHgtdG8tZW1cIjtcbkBpbXBvcnQgXCJzZXR0aW5ncy9hc3NldC1waXBlbGluZVwiO1xuXG5AaW1wb3J0IFwiZnVuY3Rpb25zL2Fzc2lnbi1pbnB1dHNcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvY29udGFpbnNcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvY29udGFpbnMtZmFsc3lcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvaXMtbGVuZ3RoXCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL2lzLWxpZ2h0XCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL2lzLW51bWJlclwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy9pcy1zaXplXCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL3B4LXRvLWVtXCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL3B4LXRvLXJlbVwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy9zaGFkZVwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy9zdHJpcC11bml0c1wiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy90aW50XCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL3RyYW5zaXRpb24tcHJvcGVydHktbmFtZVwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy91bnBhY2tcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvbW9kdWxhci1zY2FsZVwiO1xuXG5AaW1wb3J0IFwiaGVscGVycy9jb252ZXJ0LXVuaXRzXCI7XG5AaW1wb3J0IFwiaGVscGVycy9kaXJlY3Rpb25hbC12YWx1ZXNcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2ZvbnQtc291cmNlLWRlY2xhcmF0aW9uXCI7XG5AaW1wb3J0IFwiaGVscGVycy9ncmFkaWVudC1wb3NpdGlvbnMtcGFyc2VyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9saW5lYXItYW5nbGUtcGFyc2VyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9saW5lYXItZ3JhZGllbnQtcGFyc2VyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9saW5lYXItcG9zaXRpb25zLXBhcnNlclwiO1xuQGltcG9ydCBcImhlbHBlcnMvbGluZWFyLXNpZGUtY29ybmVyLXBhcnNlclwiO1xuQGltcG9ydCBcImhlbHBlcnMvcmFkaWFsLWFyZy1wYXJzZXJcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3JhZGlhbC1wb3NpdGlvbnMtcGFyc2VyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9yZW5kZXItZ3JhZGllbnRzXCI7XG5AaW1wb3J0IFwiaGVscGVycy9zaGFwZS1zaXplLXN0cmlwcGVyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9zdHItdG8tbnVtXCI7XG5cbkBpbXBvcnQgXCJjc3MzL2FuaW1hdGlvblwiO1xuQGltcG9ydCBcImNzczMvYXBwZWFyYW5jZVwiO1xuQGltcG9ydCBcImNzczMvYmFja2ZhY2UtdmlzaWJpbGl0eVwiO1xuQGltcG9ydCBcImNzczMvYmFja2dyb3VuZFwiO1xuQGltcG9ydCBcImNzczMvYmFja2dyb3VuZC1pbWFnZVwiO1xuQGltcG9ydCBcImNzczMvYm9yZGVyLWltYWdlXCI7XG5AaW1wb3J0IFwiY3NzMy9jYWxjXCI7XG5AaW1wb3J0IFwiY3NzMy9jb2x1bW5zXCI7XG5AaW1wb3J0IFwiY3NzMy9maWx0ZXJcIjtcbkBpbXBvcnQgXCJjc3MzL2ZsZXgtYm94XCI7XG5AaW1wb3J0IFwiY3NzMy9mb250LWZhY2VcIjtcbkBpbXBvcnQgXCJjc3MzL2ZvbnQtZmVhdHVyZS1zZXR0aW5nc1wiO1xuQGltcG9ydCBcImNzczMvaGlkcGktbWVkaWEtcXVlcnlcIjtcbkBpbXBvcnQgXCJjc3MzL2h5cGhlbnNcIjtcbkBpbXBvcnQgXCJjc3MzL2ltYWdlLXJlbmRlcmluZ1wiO1xuQGltcG9ydCBcImNzczMva2V5ZnJhbWVzXCI7XG5AaW1wb3J0IFwiY3NzMy9saW5lYXItZ3JhZGllbnRcIjtcbkBpbXBvcnQgXCJjc3MzL3BlcnNwZWN0aXZlXCI7XG5AaW1wb3J0IFwiY3NzMy9wbGFjZWhvbGRlclwiO1xuQGltcG9ydCBcImNzczMvcmFkaWFsLWdyYWRpZW50XCI7XG5AaW1wb3J0IFwiY3NzMy9zZWxlY3Rpb25cIjtcbkBpbXBvcnQgXCJjc3MzL3RleHQtZGVjb3JhdGlvblwiO1xuQGltcG9ydCBcImNzczMvdHJhbnNmb3JtXCI7XG5AaW1wb3J0IFwiY3NzMy90cmFuc2l0aW9uXCI7XG5AaW1wb3J0IFwiY3NzMy91c2VyLXNlbGVjdFwiO1xuXG5AaW1wb3J0IFwiYWRkb25zL2JvcmRlci1jb2xvclwiO1xuQGltcG9ydCBcImFkZG9ucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwiYWRkb25zL2JvcmRlci1zdHlsZVwiO1xuQGltcG9ydCBcImFkZG9ucy9ib3JkZXItd2lkdGhcIjtcbkBpbXBvcnQgXCJhZGRvbnMvYnV0dG9uc1wiO1xuQGltcG9ydCBcImFkZG9ucy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcImFkZG9ucy9lbGxpcHNpc1wiO1xuQGltcG9ydCBcImFkZG9ucy9mb250LXN0YWNrc1wiO1xuQGltcG9ydCBcImFkZG9ucy9oaWRlLXRleHRcIjtcbkBpbXBvcnQgXCJhZGRvbnMvbWFyZ2luXCI7XG5AaW1wb3J0IFwiYWRkb25zL3BhZGRpbmdcIjtcbkBpbXBvcnQgXCJhZGRvbnMvcG9zaXRpb25cIjtcbkBpbXBvcnQgXCJhZGRvbnMvcHJlZml4ZXJcIjtcbkBpbXBvcnQgXCJhZGRvbnMvcmV0aW5hLWltYWdlXCI7XG5AaW1wb3J0IFwiYWRkb25zL3NpemVcIjtcbkBpbXBvcnQgXCJhZGRvbnMvdGV4dC1pbnB1dHNcIjtcbkBpbXBvcnQgXCJhZGRvbnMvdGltaW5nLWZ1bmN0aW9uc1wiO1xuQGltcG9ydCBcImFkZG9ucy90cmlhbmdsZVwiO1xuQGltcG9ydCBcImFkZG9ucy93b3JkLXdyYXBcIjtcblxuQGltcG9ydCBcImJvdXJib24tZGVwcmVjYXRlZC11cGNvbWluZ1wiO1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gR2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgb3IgZGlzYWJsZSB2ZW5kb3IgcHJlZml4ZXNcblxuJHByZWZpeC1mb3Itd2Via2l0OiAgICB0cnVlICFkZWZhdWx0O1xuJHByZWZpeC1mb3ItbW96aWxsYTogICB0cnVlICFkZWZhdWx0O1xuJHByZWZpeC1mb3ItbWljcm9zb2Z0OiB0cnVlICFkZWZhdWx0O1xuJHByZWZpeC1mb3Itb3BlcmE6ICAgICB0cnVlICFkZWZhdWx0O1xuJHByZWZpeC1mb3Itc3BlYzogICAgICB0cnVlICFkZWZhdWx0O1xuIiwiJGVtLWJhc2U6IDE2cHggIWRlZmF1bHQ7XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBBIGdsb2JhbCBzZXR0aW5nIHRvIGVuYWJsZSBvciBkaXNhYmxlIHRoZSBgJGFzc2V0LXBpcGVsaW5lYCB2YXJpYWJsZSBmb3IgYWxsIGZ1bmN0aW9ucyB0aGF0IGFjY2VwdCBpdC5cbi8vL1xuLy8vIEB0eXBlIEJvb2xcblxuJGFzc2V0LXBpcGVsaW5lOiBmYWxzZSAhZGVmYXVsdDtcbiIsIkBmdW5jdGlvbiBhc3NpZ24taW5wdXRzKCRpbnB1dHMsICRwc2V1ZG86IG51bGwpIHtcbiAgJGxpc3Q6ICgpO1xuXG4gIEBlYWNoICRpbnB1dCBpbiAkaW5wdXRzIHtcbiAgICAkaW5wdXQ6IHVucXVvdGUoJGlucHV0KTtcbiAgICAkaW5wdXQ6IGlmKCRwc2V1ZG8sICRpbnB1dCArIFwiOlwiICsgJHBzZXVkbywgJGlucHV0KTtcbiAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkaW5wdXQsIGNvbW1hKTtcbiAgfVxuXG4gIEByZXR1cm4gJGxpc3Q7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBDaGVja3MgaWYgYSBsaXN0IGNvbnRhaW5zIGEgdmFsdWUocykuXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3Rcbi8vLyAgIFRoZSBsaXN0IHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICR2YWx1ZXNcbi8vLyAgIEEgc2luZ2xlIHZhbHVlIG9yIGxpc3Qgb2YgdmFsdWVzIHRvIGNoZWNrIGZvci5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgY29udGFpbnMoJGxpc3QsICR2YWx1ZSlcbi8vL1xuLy8vIEByZXR1cm4ge0Jvb2x9XG5cbkBmdW5jdGlvbiBjb250YWlucygkbGlzdCwgJHZhbHVlcy4uLikge1xuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmIHR5cGUtb2YoaW5kZXgoJGxpc3QsICR2YWx1ZSkpICE9IFwibnVtYmVyXCIge1xuICAgICAgQHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIHRydWU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBDaGVja3MgaWYgYSBsaXN0IGRvZXMgbm90IGNvbnRhaW5zIGEgdmFsdWUuXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3Rcbi8vLyAgIFRoZSBsaXN0IHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sfVxuXG5AZnVuY3Rpb24gY29udGFpbnMtZmFsc3koJGxpc3QpIHtcbiAgQGVhY2ggJGl0ZW0gaW4gJGxpc3Qge1xuICAgIEBpZiBub3QgJGl0ZW0ge1xuICAgICAgQHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gZmFsc2U7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBDaGVja3MgZm9yIGEgdmFsaWQgQ1NTIGxlbmd0aC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdmFsdWVcblxuQGZ1bmN0aW9uIGlzLWxlbmd0aCgkdmFsdWUpIHtcbiAgQHJldHVybiB0eXBlLW9mKCR2YWx1ZSkgIT0gXCJudWxsXCIgYW5kIChzdHItc2xpY2UoJHZhbHVlICsgXCJcIiwgMSwgNCkgPT0gXCJjYWxjXCJcbiAgICAgICBvciBpbmRleChhdXRvIGluaGVyaXQgaW5pdGlhbCAwLCAkdmFsdWUpXG4gICAgICAgb3IgKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiIGFuZCBub3QodW5pdGxlc3MoJHZhbHVlKSkpKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb2dyYW1hdGljYWxseSBkZXRlcm1pbmVzIHdoZXRoZXIgYSBjb2xvciBpcyBsaWdodCBvciBkYXJrLlxuLy8vXG4vLy8gQGxpbmsgaHR0cDovL3JvYm90cy50aG91Z2h0Ym90LmNvbS9jbG9zZXItbG9vay1jb2xvci1saWdodG5lc3Ncbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3IgKEhleCl9ICRjb2xvclxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICBpcy1saWdodCgkY29sb3IpXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sfVxuXG5AZnVuY3Rpb24gaXMtbGlnaHQoJGhleC1jb2xvcikge1xuICAkLWxvY2FsLXJlZDogcmVkKHJnYmEoJGhleC1jb2xvciwgMSkpO1xuICAkLWxvY2FsLWdyZWVuOiBncmVlbihyZ2JhKCRoZXgtY29sb3IsIDEpKTtcbiAgJC1sb2NhbC1ibHVlOiBibHVlKHJnYmEoJGhleC1jb2xvciwgMSkpO1xuICAkLWxvY2FsLWxpZ2h0bmVzczogKCQtbG9jYWwtcmVkICogMC4yMTI2ICsgJC1sb2NhbC1ncmVlbiAqIDAuNzE1MiArICQtbG9jYWwtYmx1ZSAqIDAuMDcyMikgLyAyNTU7XG5cbiAgQHJldHVybiAkLWxvY2FsLWxpZ2h0bmVzcyA+IDAuNjtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBudW1iZXIuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlXG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGNvbnRhaW5zXG5cbkBmdW5jdGlvbiBpcy1udW1iZXIoJHZhbHVlKSB7XG4gIEByZXR1cm4gY29udGFpbnMoXCIwXCIgXCIxXCIgXCIyXCIgXCIzXCIgXCI0XCIgXCI1XCIgXCI2XCIgXCI3XCIgXCI4XCIgXCI5XCIgMCAxIDIgMyA0IDUgNiA3IDggOSwgJHZhbHVlKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBDU1Mgc2l6ZS5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdmFsdWVcbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gY29udGFpbnNcbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGlzLWxlbmd0aFxuXG5AZnVuY3Rpb24gaXMtc2l6ZSgkdmFsdWUpIHtcbiAgQHJldHVybiBpcy1sZW5ndGgoJHZhbHVlKVxuICAgICAgICAgIG9yIGNvbnRhaW5zKFwiZmlsbFwiIFwiZml0LWNvbnRlbnRcIiBcIm1pbi1jb250ZW50XCIgXCJtYXgtY29udGVudFwiLCAkdmFsdWUpO1xufVxuIiwiLy8gQ29udmVydCBwaXhlbHMgdG8gZW1zXG4vLyBlZy4gZm9yIGEgcmVsYXRpb25hbCB2YWx1ZSBvZiAxMnB4IHdyaXRlIGVtKDEyKSB3aGVuIHRoZSBwYXJlbnQgaXMgMTZweFxuLy8gaWYgdGhlIHBhcmVudCBpcyBhbm90aGVyIHZhbHVlIHNheSAyNHB4IHdyaXRlIGVtKDEyLCAyNClcblxuQGZ1bmN0aW9uIGVtKCRweHZhbCwgJGJhc2U6ICRlbS1iYXNlKSB7XG4gIEBpZiBub3QgdW5pdGxlc3MoJHB4dmFsKSB7XG4gICAgJHB4dmFsOiBzdHJpcC11bml0cygkcHh2YWwpO1xuICB9XG4gIEBpZiBub3QgdW5pdGxlc3MoJGJhc2UpIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdHMoJGJhc2UpO1xuICB9XG4gIEByZXR1cm4gKCRweHZhbCAvICRiYXNlKSAqIDFlbTtcbn1cbiIsIi8vIENvbnZlcnQgcGl4ZWxzIHRvIHJlbXNcbi8vIGVnLiBmb3IgYSByZWxhdGlvbmFsIHZhbHVlIG9mIDEycHggd3JpdGUgcmVtKDEyKVxuLy8gQXNzdW1lcyAkZW0tYmFzZSBpcyB0aGUgZm9udC1zaXplIG9mIDxodG1sPlxuXG5AZnVuY3Rpb24gcmVtKCRweHZhbCkge1xuICBAaWYgbm90IHVuaXRsZXNzKCRweHZhbCkge1xuICAgICRweHZhbDogc3RyaXAtdW5pdHMoJHB4dmFsKTtcbiAgfVxuXG4gICRiYXNlOiAkZW0tYmFzZTtcbiAgQGlmIG5vdCB1bml0bGVzcygkYmFzZSkge1xuICAgICRiYXNlOiBzdHJpcC11bml0cygkYmFzZSk7XG4gIH1cbiAgQHJldHVybiAoJHB4dmFsIC8gJGJhc2UpICogMXJlbTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIE1peGVzIGEgY29sb3Igd2l0aCBibGFjay5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvclxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXIgKFBlcmNlbnRhZ2UpfSAkcGVyY2VudFxuLy8vICAgVGhlIGFtb3VudCBvZiBibGFjayB0byBiZSBtaXhlZCBpbi5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzaGFkZSgjZmZiYjUyLCA2MCUpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY0YTIwO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJldHVybiB7Q29sb3J9XG5cbkBmdW5jdGlvbiBzaGFkZSgkY29sb3IsICRwZXJjZW50KSB7XG4gIEByZXR1cm4gbWl4KCMwMDAsICRjb2xvciwgJHBlcmNlbnQpO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gU3RyaXBzIHRoZSB1bml0IGZyb20gYSBudW1iZXIuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlciAoV2l0aCBVbml0KX0gJHZhbHVlXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgICRkaW1lbnNpb246IHN0cmlwLXVuaXRzKDEwZW0pO1xuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgJGRpbWVuc2lvbjogMTA7XG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXIgKFVuaXRsZXNzKX1cblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXRzKCR2YWx1ZSkge1xuICBAcmV0dXJuICgkdmFsdWUgLyAoJHZhbHVlICogMCArIDEpKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIE1peGVzIGEgY29sb3Igd2l0aCB3aGl0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvclxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXIgKFBlcmNlbnRhZ2UpfSAkcGVyY2VudFxuLy8vICAgVGhlIGFtb3VudCBvZiB3aGl0ZSB0byBiZSBtaXhlZCBpbi5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aW50KCM2ZWNhYTYsIDQwJSk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNhOGRmYzk7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmV0dXJuIHtDb2xvcn1cblxuQGZ1bmN0aW9uIHRpbnQoJGNvbG9yLCAkcGVyY2VudCkge1xuICBAcmV0dXJuIG1peCgjZmZmLCAkY29sb3IsICRwZXJjZW50KTtcbn1cbiIsIi8vIFJldHVybiB2ZW5kb3ItcHJlZml4ZWQgcHJvcGVydHkgbmFtZXMgaWYgYXBwcm9wcmlhdGVcbi8vIEV4YW1wbGU6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoKHRyYW5zZm9ybSwgY29sb3IsIGJhY2tncm91bmQpLCBtb3opIC0+IC1tb3otdHJhbnNmb3JtLCBjb2xvciwgYmFja2dyb3VuZFxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuQGZ1bmN0aW9uIHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BzLCAkdmVuZG9yOiBmYWxzZSkge1xuICAkbmV3LXByb3BzOiAoKTtcblxuICBAZWFjaCAkcHJvcCBpbiAkcHJvcHMge1xuICAgICRuZXctcHJvcHM6IGFwcGVuZCgkbmV3LXByb3BzLCB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWUoJHByb3AsICR2ZW5kb3IpLCBjb21tYSk7XG4gIH1cblxuICBAcmV0dXJuICRuZXctcHJvcHM7XG59XG5cbkBmdW5jdGlvbiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWUoJHByb3AsICR2ZW5kb3I6IGZhbHNlKSB7XG4gIC8vIHB1dCBvdGhlciBwcm9wZXJ0aWVzIHRoYXQgbmVlZCB0byBiZSBwcmVmaXhlZCBoZXJlIGFzd2VsbFxuICBAaWYgJHZlbmRvciBhbmQgJHByb3AgPT0gdHJhbnNmb3JtIHtcbiAgICBAcmV0dXJuIHVucXVvdGUoJy0nKyR2ZW5kb3IrJy0nKyRwcm9wKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAkcHJvcDtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gQ29udmVydHMgc2hvcnRoYW5kIHRvIHRoZSA0LXZhbHVlIHN5bnRheC5cbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHNob3J0aGFuZFxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbjogdW5wYWNrKDFlbSAyZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBtYXJnaW46IDFlbSAyZW0gMWVtIDJlbTtcbi8vLyAgIH1cblxuQGZ1bmN0aW9uIHVucGFjaygkc2hvcnRoYW5kKSB7XG4gIEBpZiBsZW5ndGgoJHNob3J0aGFuZCkgPT0gMSB7XG4gICAgQHJldHVybiBudGgoJHNob3J0aGFuZCwgMSkgbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMSk7XG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRzaG9ydGhhbmQpID09IDIge1xuICAgIEByZXR1cm4gbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAyKSBudGgoJHNob3J0aGFuZCwgMSkgbnRoKCRzaG9ydGhhbmQsIDIpO1xuICB9IEBlbHNlIGlmIGxlbmd0aCgkc2hvcnRoYW5kKSA9PSAzIHtcbiAgICBAcmV0dXJuIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMikgbnRoKCRzaG9ydGhhbmQsIDMpIG50aCgkc2hvcnRoYW5kLCAyKTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAkc2hvcnRoYW5kO1xuICB9XG59XG4iLCIvLyBTY2FsaW5nIFZhcmlhYmxlc1xuJGdvbGRlbjogICAgICAgICAgIDEuNjE4O1xuJG1pbm9yLXNlY29uZDogICAgIDEuMDY3O1xuJG1ham9yLXNlY29uZDogICAgIDEuMTI1O1xuJG1pbm9yLXRoaXJkOiAgICAgIDEuMjtcbiRtYWpvci10aGlyZDogICAgICAxLjI1O1xuJHBlcmZlY3QtZm91cnRoOiAgIDEuMzMzO1xuJGF1Z21lbnRlZC1mb3VydGg6IDEuNDE0O1xuJHBlcmZlY3QtZmlmdGg6ICAgIDEuNTtcbiRtaW5vci1zaXh0aDogICAgICAxLjY7XG4kbWFqb3Itc2l4dGg6ICAgICAgMS42Njc7XG4kbWlub3Itc2V2ZW50aDogICAgMS43Nzg7XG4kbWFqb3Itc2V2ZW50aDogICAgMS44NzU7XG4kb2N0YXZlOiAgICAgICAgICAgMjtcbiRtYWpvci10ZW50aDogICAgICAyLjU7XG4kbWFqb3ItZWxldmVudGg6ICAgMi42Njc7XG4kbWFqb3ItdHdlbGZ0aDogICAgMztcbiRkb3VibGUtb2N0YXZlOiAgICA0O1xuXG4kbW9kdWxhci1zY2FsZS1yYXRpbzogJHBlcmZlY3QtZm91cnRoICFkZWZhdWx0O1xuJG1vZHVsYXItc2NhbGUtYmFzZTogZW0oJGVtLWJhc2UpICFkZWZhdWx0O1xuXG5AZnVuY3Rpb24gbW9kdWxhci1zY2FsZSgkaW5jcmVtZW50LCAkdmFsdWU6ICRtb2R1bGFyLXNjYWxlLWJhc2UsICRyYXRpbzogJG1vZHVsYXItc2NhbGUtcmF0aW8pIHtcbiAgJHYxOiBudGgoJHZhbHVlLCAxKTtcbiAgJHYyOiBudGgoJHZhbHVlLCBsZW5ndGgoJHZhbHVlKSk7XG4gICR2YWx1ZTogJHYxO1xuXG4gIC8vIHNjYWxlICR2MiB0byBqdXN0IGFib3ZlICR2MVxuICBAd2hpbGUgJHYyID4gJHYxIHtcbiAgICAkdjI6ICgkdjIgLyAkcmF0aW8pOyAvLyB3aWxsIGJlIG9mZi1ieS0xXG4gIH1cbiAgQHdoaWxlICR2MiA8ICR2MSB7XG4gICAgJHYyOiAoJHYyICogJHJhdGlvKTsgLy8gd2lsbCBmaXggb2ZmLWJ5LTFcbiAgfVxuXG4gIC8vIGNoZWNrIEFGVEVSIHNjYWxpbmcgJHYyIHRvIHByZXZlbnQgZG91YmxlLWNvdW50aW5nIGNvcm5lci1jYXNlXG4gICRkb3VibGUtc3RyYW5kZWQ6ICR2MiA+ICR2MTtcblxuICBAaWYgJGluY3JlbWVudCA+IDAge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGluY3JlbWVudCB7XG4gICAgICBAaWYgJGRvdWJsZS1zdHJhbmRlZCBhbmQgKCR2MSAqICRyYXRpbykgPiAkdjIge1xuICAgICAgICAkdmFsdWU6ICR2MjtcbiAgICAgICAgJHYyOiAoJHYyICogJHJhdGlvKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdjE6ICgkdjEgKiAkcmF0aW8pO1xuICAgICAgICAkdmFsdWU6ICR2MTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGluY3JlbWVudCA8IDAge1xuICAgIC8vIGFkanVzdCAkdjIgdG8ganVzdCBiZWxvdyAkdjFcbiAgICBAaWYgJGRvdWJsZS1zdHJhbmRlZCB7XG4gICAgICAkdjI6ICgkdjIgLyAkcmF0aW8pO1xuICAgIH1cblxuICAgIEBmb3IgJGkgZnJvbSAkaW5jcmVtZW50IHRocm91Z2ggLTEge1xuICAgICAgQGlmICRkb3VibGUtc3RyYW5kZWQgYW5kICgkdjEgLyAkcmF0aW8pIDwgJHYyIHtcbiAgICAgICAgJHZhbHVlOiAkdjI7XG4gICAgICAgICR2MjogKCR2MiAvICRyYXRpbyk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHYxOiAoJHYxIC8gJHJhdGlvKTtcbiAgICAgICAgJHZhbHVlOiAkdjE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCIvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG4vLyBIZWxwZXIgZnVuY3Rpb24gZm9yIHN0ci10by1udW0gZm4uXG4vLyBTb3VyY2U6IGh0dHA6Ly9zYXNzbWVpc3Rlci5jb20vZ2lzdC85NjQ3NDA4XG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG5AZnVuY3Rpb24gX2NvbnZlcnQtdW5pdHMoJG51bWJlciwgJHVuaXQpIHtcbiAgJHN0cmluZ3M6IFwicHhcIiwgXCJjbVwiLCBcIm1tXCIsIFwiJVwiLCBcImNoXCIsIFwicGljYVwiLCBcImluXCIsIFwiZW1cIiwgXCJyZW1cIiwgXCJwdFwiLCBcInBjXCIsIFwiZXhcIiwgXCJ2d1wiLCBcInZoXCIsIFwidm1pblwiLCBcInZtYXhcIiwgXCJkZWdcIiwgXCJyYWRcIiwgXCJncmFkXCIsIFwidHVyblwiO1xuICAkdW5pdHM6ICAgMXB4LCAxY20sIDFtbSwgMSUsIDFjaCwgMXBpY2EsIDFpbiwgMWVtLCAxcmVtLCAxcHQsIDFwYywgMWV4LCAxdncsIDF2aCwgMXZtaW4sIDF2bWF4LCAxZGVnLCAxcmFkLCAxZ3JhZCwgMXR1cm47XG4gICRpbmRleDogaW5kZXgoJHN0cmluZ3MsICR1bml0KTtcblxuICBAaWYgbm90ICRpbmRleCB7XG4gICAgQHdhcm4gXCJVbmtub3duIHVuaXQgYCN7JHVuaXR9YC5cIjtcbiAgICBAcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJG51bWJlcikgIT0gXCJudW1iZXJcIiB7XG4gICAgQHdhcm4gXCJgI3skbnVtYmVyfSBpcyBub3QgYSBudW1iZXJgXCI7XG4gICAgQHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIEByZXR1cm4gJG51bWJlciAqIG50aCgkdW5pdHMsICRpbmRleCk7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBEaXJlY3Rpb25hbC1wcm9wZXJ0eSBtaXhpbnMgYXJlIHNob3J0aGFuZHMgZm9yIHdyaXRpbmcgcHJvcGVydGllcyBsaWtlIHRoZSBmb2xsb3dpbmdcbi8vL1xuLy8vIEBpZ25vcmUgWW91IGNhbiBhbHNvIHVzZSBgZmFsc2VgIGluc3RlYWQgb2YgYG51bGxgLlxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkdmFsc1xuLy8vICAgTGlzdCBvZiBkaXJlY3Rpb25hbCB2YWx1ZXNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBib3JkZXItc3R5bGUoZG90dGVkIG51bGwpO1xuLy8vICAgICBAaW5jbHVkZSBtYXJnaW4obnVsbCAwIDEwcHgpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBib3JkZXItYm90dG9tLXN0eWxlOiBkb3R0ZWQ7XG4vLy8gICAgIGJvcmRlci10b3Atc3R5bGU6IGRvdHRlZDtcbi8vLyAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbi8vLyAgICAgbWFyZ2luLWxlZnQ6IDA7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gY29udGFpbnMtZmFsc3lcbi8vL1xuLy8vIEByZXR1cm4ge0xpc3R9XG5cbkBmdW5jdGlvbiBjb2xsYXBzZS1kaXJlY3Rpb25hbHMoJHZhbHMpIHtcbiAgJG91dHB1dDogbnVsbDtcblxuICAkYTogbnRoKCR2YWxzLCAxKTtcbiAgJGI6IGlmKGxlbmd0aCgkdmFscykgPCAyLCAkYSwgbnRoKCR2YWxzLCAyKSk7XG4gICRjOiBpZihsZW5ndGgoJHZhbHMpIDwgMywgJGEsIG50aCgkdmFscywgMykpO1xuICAkZDogaWYobGVuZ3RoKCR2YWxzKSA8IDIsICRhLCBudGgoJHZhbHMsIGlmKGxlbmd0aCgkdmFscykgPCA0LCAyLCA0KSkpO1xuXG4gIEBpZiAkYSA9PSAwIHsgJGE6IDA7IH1cbiAgQGlmICRiID09IDAgeyAkYjogMDsgfVxuICBAaWYgJGMgPT0gMCB7ICRjOiAwOyB9XG4gIEBpZiAkZCA9PSAwIHsgJGQ6IDA7IH1cblxuICBAaWYgJGEgPT0gJGIgYW5kICRhID09ICRjIGFuZCAkYSA9PSAkZCB7ICRvdXRwdXQ6ICRhOyAgICAgICAgICB9XG4gIEBlbHNlIGlmICRhID09ICRjIGFuZCAkYiA9PSAkZCAgICAgICAgIHsgJG91dHB1dDogJGEgJGI7ICAgICAgIH1cbiAgQGVsc2UgaWYgJGIgPT0gJGQgICAgICAgICAgICAgICAgICAgICAgeyAkb3V0cHV0OiAkYSAkYiAkYzsgICAgfVxuICBAZWxzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ICRvdXRwdXQ6ICRhICRiICRjICRkOyB9XG5cbiAgQHJldHVybiAkb3V0cHV0O1xufVxuXG4vLy8gT3V0cHV0IGRpcmVjdGlvbmFsIHByb3BlcnRpZXMsIGZvciBpbnN0YW5jZSBgbWFyZ2luYC5cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwcmVcbi8vLyAgIFByZWZpeCB0byB1c2Vcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHN1ZlxuLy8vICAgU3VmZml4IHRvIHVzZVxuLy8vIEBwYXJhbSB7TGlzdH0gJHZhbHNcbi8vLyAgIExpc3Qgb2YgdmFsdWVzXG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGNvbGxhcHNlLWRpcmVjdGlvbmFsc1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gY29udGFpbnMtZmFsc3lcblxuQG1peGluIGRpcmVjdGlvbmFsLXByb3BlcnR5KCRwcmUsICRzdWYsICR2YWxzKSB7XG4gIC8vIFByb3BlcnR5IE5hbWVzXG4gICR0b3A6ICAgICRwcmUgKyBcIi10b3BcIiAgICArIGlmKCRzdWYsIFwiLSN7JHN1Zn1cIiwgXCJcIik7XG4gICRib3R0b206ICRwcmUgKyBcIi1ib3R0b21cIiArIGlmKCRzdWYsIFwiLSN7JHN1Zn1cIiwgXCJcIik7XG4gICRsZWZ0OiAgICRwcmUgKyBcIi1sZWZ0XCIgICArIGlmKCRzdWYsIFwiLSN7JHN1Zn1cIiwgXCJcIik7XG4gICRyaWdodDogICRwcmUgKyBcIi1yaWdodFwiICArIGlmKCRzdWYsIFwiLSN7JHN1Zn1cIiwgXCJcIik7XG4gICRhbGw6ICAgICRwcmUgKyAgICAgICAgICAgICBpZigkc3VmLCBcIi0jeyRzdWZ9XCIsIFwiXCIpO1xuXG4gICR2YWxzOiBjb2xsYXBzZS1kaXJlY3Rpb25hbHMoJHZhbHMpO1xuXG4gIEBpZiBjb250YWlucy1mYWxzeSgkdmFscykge1xuICAgIEBpZiBudGgoJHZhbHMsIDEpIHsgI3skdG9wfTogbnRoKCR2YWxzLCAxKTsgfVxuXG4gICAgQGlmIGxlbmd0aCgkdmFscykgPT0gMSB7XG4gICAgICBAaWYgbnRoKCR2YWxzLCAxKSB7ICN7JHJpZ2h0fTogbnRoKCR2YWxzLCAxKTsgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGlmIG50aCgkdmFscywgMikgeyAjeyRyaWdodH06IG50aCgkdmFscywgMik7IH1cbiAgICB9XG5cbiAgICBAaWYgbGVuZ3RoKCR2YWxzKSA9PSAyIHtcbiAgICAgIEBpZiBudGgoJHZhbHMsIDEpIHsgI3skYm90dG9tfTogbnRoKCR2YWxzLCAxKTsgfVxuICAgICAgQGlmIG50aCgkdmFscywgMikgeyAjeyRsZWZ0fTogICBudGgoJHZhbHMsIDIpOyB9XG4gICAgfSBAZWxzZSBpZiBsZW5ndGgoJHZhbHMpID09IDMge1xuICAgICAgQGlmIG50aCgkdmFscywgMykgeyAjeyRib3R0b219OiBudGgoJHZhbHMsIDMpOyB9XG4gICAgICBAaWYgbnRoKCR2YWxzLCAyKSB7ICN7JGxlZnR9OiAgIG50aCgkdmFscywgMik7IH1cbiAgICB9IEBlbHNlIGlmIGxlbmd0aCgkdmFscykgPT0gNCB7XG4gICAgICBAaWYgbnRoKCR2YWxzLCAzKSB7ICN7JGJvdHRvbX06IG50aCgkdmFscywgMyk7IH1cbiAgICAgIEBpZiBudGgoJHZhbHMsIDQpIHsgI3skbGVmdH06ICAgbnRoKCR2YWxzLCA0KTsgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgI3skYWxsfTogJHZhbHM7XG4gIH1cbn1cbiIsIi8vIFVzZWQgZm9yIGNyZWF0aW5nIHRoZSBzb3VyY2Ugc3RyaW5nIGZvciBmb250cyB1c2luZyBAZm9udC1mYWNlXG4vLyBSZWZlcmVuY2U6IGh0dHA6Ly9nb28uZ2wvUnUxYktQXG5cbkBmdW5jdGlvbiBmb250LXVybC1wcmVmaXhlcigkYXNzZXQtcGlwZWxpbmUpIHtcbiAgQGlmICRhc3NldC1waXBlbGluZSA9PSB0cnVlIHtcbiAgICBAcmV0dXJuIGZvbnQtdXJsO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuIHVybDtcbiAgfVxufVxuXG5AZnVuY3Rpb24gZm9udC1zb3VyY2UtZGVjbGFyYXRpb24oXG4gICRmb250LWZhbWlseSxcbiAgJGZpbGUtcGF0aCxcbiAgJGFzc2V0LXBpcGVsaW5lLFxuICAkZmlsZS1mb3JtYXRzLFxuICAkZm9udC11cmwpIHtcblxuICAkc3JjOiAoKTtcblxuICAkZm9ybWF0cy1tYXA6IChcbiAgICBlb3Q6ICAgXCIjeyRmaWxlLXBhdGh9LmVvdD8jaWVmaXhcIiBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcbiAgICB3b2ZmMjogXCIjeyRmaWxlLXBhdGh9LndvZmYyXCIgZm9ybWF0KFwid29mZjJcIiksXG4gICAgd29mZjogIFwiI3skZmlsZS1wYXRofS53b2ZmXCIgZm9ybWF0KFwid29mZlwiKSxcbiAgICB0dGY6ICAgXCIjeyRmaWxlLXBhdGh9LnR0ZlwiIGZvcm1hdChcInRydWV0eXBlXCIpLFxuICAgIHN2ZzogICBcIiN7JGZpbGUtcGF0aH0uc3ZnIyN7JGZvbnQtZmFtaWx5fVwiIGZvcm1hdChcInN2Z1wiKVxuICApO1xuXG4gIEBlYWNoICRrZXksICR2YWx1ZXMgaW4gJGZvcm1hdHMtbWFwIHtcbiAgICBAaWYgY29udGFpbnMoJGZpbGUtZm9ybWF0cywgJGtleSkge1xuICAgICAgJGZpbGUtcGF0aDogbnRoKCR2YWx1ZXMsIDEpO1xuICAgICAgJGZvbnQtZm9ybWF0OiBudGgoJHZhbHVlcywgMik7XG5cbiAgICAgIEBpZiAkYXNzZXQtcGlwZWxpbmUgPT0gdHJ1ZSB7XG4gICAgICAgICRzcmM6IGFwcGVuZCgkc3JjLCBmb250LXVybCgkZmlsZS1wYXRoKSAkZm9udC1mb3JtYXQsIGNvbW1hKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkc3JjOiBhcHBlbmQoJHNyYywgdXJsKCRmaWxlLXBhdGgpICRmb250LWZvcm1hdCwgY29tbWEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHNyYztcbn1cbiIsIkBmdW5jdGlvbiBfZ3JhZGllbnQtcG9zaXRpb25zLXBhcnNlcigkZ3JhZGllbnQtdHlwZSwgJGdyYWRpZW50LXBvc2l0aW9ucykge1xuICBAaWYgJGdyYWRpZW50LXBvc2l0aW9uc1xuICBhbmQgKCRncmFkaWVudC10eXBlID09IGxpbmVhcilcbiAgYW5kICh0eXBlLW9mKCRncmFkaWVudC1wb3NpdGlvbnMpICE9IGNvbG9yKSB7XG4gICAgJGdyYWRpZW50LXBvc2l0aW9uczogX2xpbmVhci1wb3NpdGlvbnMtcGFyc2VyKCRncmFkaWVudC1wb3NpdGlvbnMpO1xuICB9XG4gIEBlbHNlIGlmICRncmFkaWVudC1wb3NpdGlvbnNcbiAgYW5kICgkZ3JhZGllbnQtdHlwZSA9PSByYWRpYWwpXG4gIGFuZCAodHlwZS1vZigkZ3JhZGllbnQtcG9zaXRpb25zKSAhPSBjb2xvcikge1xuICAgICRncmFkaWVudC1wb3NpdGlvbnM6IF9yYWRpYWwtcG9zaXRpb25zLXBhcnNlcigkZ3JhZGllbnQtcG9zaXRpb25zKTtcbiAgfVxuICBAcmV0dXJuICRncmFkaWVudC1wb3NpdGlvbnM7XG59XG4iLCIvLyBQcml2YXRlIGZ1bmN0aW9uIGZvciBsaW5lYXItZ3JhZGllbnQtcGFyc2VyXG5AZnVuY3Rpb24gX2xpbmVhci1hbmdsZS1wYXJzZXIoJGltYWdlLCAkZmlyc3QtdmFsLCAkcHJlZml4LCAkc3VmZml4KSB7XG4gICRvZmZzZXQ6IG51bGw7XG4gICR1bml0LXNob3J0OiAgc3RyLXNsaWNlKCRmaXJzdC12YWwsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkgLSAyLCBzdHItbGVuZ3RoKCRmaXJzdC12YWwpKTtcbiAgJHVuaXQtbG9uZzogICBzdHItc2xpY2UoJGZpcnN0LXZhbCwgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSAtIDMsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkpO1xuXG4gIEBpZiAoJHVuaXQtbG9uZyA9PSBcImdyYWRcIikgb3JcbiAgICAgICgkdW5pdC1sb25nID09IFwidHVyblwiKSB7XG4gICAgJG9mZnNldDogaWYoJHVuaXQtbG9uZyA9PSBcImdyYWRcIiwgLTEwMGdyYWQgKiAzLCAtMC43NXR1cm4pO1xuICB9XG5cbiAgQGVsc2UgaWYgKCR1bml0LXNob3J0ID09IFwiZGVnXCIpIG9yXG4gICAgICAgICAgICgkdW5pdC1zaG9ydCA9PSBcInJhZFwiKSB7XG4gICAgJG9mZnNldDogaWYoJHVuaXQtc2hvcnQgPT0gXCJkZWdcIiwgLTkwICogMywgMS42cmFkKTtcbiAgfVxuXG4gIEBpZiAkb2Zmc2V0IHtcbiAgICAkbnVtOiBfc3RyLXRvLW51bSgkZmlyc3QtdmFsKTtcblxuICAgIEByZXR1cm4gKFxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRwcmVmaXggKyAoJG9mZnNldCAtICRudW0pICsgJHN1ZmZpeCxcbiAgICAgIHNwZWMtaW1hZ2U6ICRpbWFnZVxuICAgICk7XG4gIH1cbn1cbiIsIkBmdW5jdGlvbiBfbGluZWFyLWdyYWRpZW50LXBhcnNlcigkaW1hZ2UpIHtcbiAgJGltYWdlOiB1bnF1b3RlKCRpbWFnZSk7XG4gICRncmFkaWVudHM6ICgpO1xuICAkc3RhcnQ6IHN0ci1pbmRleCgkaW1hZ2UsIFwiKFwiKTtcbiAgJGVuZDogc3RyLWluZGV4KCRpbWFnZSwgXCIsXCIpO1xuICAkZmlyc3QtdmFsOiBzdHItc2xpY2UoJGltYWdlLCAkc3RhcnQgKyAxLCAkZW5kIC0gMSk7XG5cbiAgJHByZWZpeDogc3RyLXNsaWNlKCRpbWFnZSwgMSwgJHN0YXJ0KTtcbiAgJHN1ZmZpeDogc3RyLXNsaWNlKCRpbWFnZSwgJGVuZCwgc3RyLWxlbmd0aCgkaW1hZ2UpKTtcblxuICAkaGFzLW11bHRpcGxlLXZhbHM6IHN0ci1pbmRleCgkZmlyc3QtdmFsLCBcIiBcIik7XG4gICRoYXMtc2luZ2xlLXBvc2l0aW9uOiB1bnF1b3RlKF9wb3NpdGlvbi1mbGlwcGVyKCRmaXJzdC12YWwpICsgXCJcIik7XG4gICRoYXMtYW5nbGU6IGlzLW51bWJlcihzdHItc2xpY2UoJGZpcnN0LXZhbCwgMSwgMSkpO1xuXG4gIEBpZiAkaGFzLW11bHRpcGxlLXZhbHMge1xuICAgICRncmFkaWVudHM6IF9saW5lYXItc2lkZS1jb3JuZXItcGFyc2VyKCRpbWFnZSwgJGZpcnN0LXZhbCwgJHByZWZpeCwgJHN1ZmZpeCwgJGhhcy1tdWx0aXBsZS12YWxzKTtcbiAgfVxuXG4gIEBlbHNlIGlmICRoYXMtc2luZ2xlLXBvc2l0aW9uICE9IFwiXCIge1xuICAgICRwb3M6IHVucXVvdGUoJGhhcy1zaW5nbGUtcG9zaXRpb24gKyBcIlwiKTtcblxuICAgICRncmFkaWVudHM6IChcbiAgICAgIHdlYmtpdC1pbWFnZTogLXdlYmtpdC0gKyAkaW1hZ2UsXG4gICAgICBzcGVjLWltYWdlOiAkcHJlZml4ICsgXCJ0byBcIiArICRwb3MgKyAkc3VmZml4XG4gICAgKTtcbiAgfVxuXG4gIEBlbHNlIGlmICRoYXMtYW5nbGUge1xuICAgIC8vIFJvdGF0ZSBkZWdyZWUgZm9yIHdlYmtpdFxuICAgICRncmFkaWVudHM6IF9saW5lYXItYW5nbGUtcGFyc2VyKCRpbWFnZSwgJGZpcnN0LXZhbCwgJHByZWZpeCwgJHN1ZmZpeCk7XG4gIH1cblxuICBAZWxzZSB7XG4gICAgJGdyYWRpZW50czogKFxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRpbWFnZSxcbiAgICAgIHNwZWMtaW1hZ2U6ICRpbWFnZVxuICAgICk7XG4gIH1cblxuICBAcmV0dXJuICRncmFkaWVudHM7XG59XG4iLCJAZnVuY3Rpb24gX2xpbmVhci1wb3NpdGlvbnMtcGFyc2VyKCRwb3MpIHtcbiAgJHR5cGU6IHR5cGUtb2YobnRoKCRwb3MsIDEpKTtcbiAgJHNwZWM6IG51bGw7XG4gICRkZWdyZWU6IG51bGw7XG4gICRzaWRlOiBudWxsO1xuICAkY29ybmVyOiBudWxsO1xuICAkbGVuZ3RoOiBsZW5ndGgoJHBvcyk7XG4gIC8vIFBhcnNlIFNpZGUgYW5kIGNvcm5lciBwb3NpdGlvbnNcbiAgQGlmICgkbGVuZ3RoID4gMSkge1xuICAgIEBpZiBudGgoJHBvcywgMSkgPT0gXCJ0b1wiIHsgLy8gTmV3ZXIgc3ludGF4XG4gICAgICAkc2lkZTogbnRoKCRwb3MsIDIpO1xuXG4gICAgICBAaWYgJGxlbmd0aCA9PSAyIHsgLy8gZWcuIHRvIHRvcFxuICAgICAgICAvLyBTd2FwIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuICAgICAgICAkZGVncmVlOiBfcG9zaXRpb24tZmxpcHBlcihudGgoJHBvcywgMikpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJGxlbmd0aCA9PSAzIHsgLy8gZWcuIHRvIHRvcCBsZWZ0XG4gICAgICAgICRjb3JuZXI6IG50aCgkcG9zLCAzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJGxlbmd0aCA9PSAyIHsgLy8gT2xkZXIgc3ludGF4IChcInRvcCBsZWZ0XCIpXG4gICAgICAkc2lkZTogX3Bvc2l0aW9uLWZsaXBwZXIobnRoKCRwb3MsIDEpKTtcbiAgICAgICRjb3JuZXI6IF9wb3NpdGlvbi1mbGlwcGVyKG50aCgkcG9zLCAyKSk7XG4gICAgfVxuXG4gICAgQGlmIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcImxlZnQgdG9wXCIpIG9yIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInRvcCBsZWZ0XCIpIHtcbiAgICAgICRkZWdyZWU6IF9wb3NpdGlvbi1mbGlwcGVyKCN7JHNpZGV9KSBfcG9zaXRpb24tZmxpcHBlcigjeyRjb3JuZXJ9KTtcbiAgICB9XG4gICAgQGVsc2UgaWYgKFwiI3skc2lkZX0gI3skY29ybmVyfVwiID09IFwicmlnaHQgdG9wXCIpIG9yIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInRvcCByaWdodFwiKSB7XG4gICAgICAkZGVncmVlOiBfcG9zaXRpb24tZmxpcHBlcigjeyRzaWRlfSkgX3Bvc2l0aW9uLWZsaXBwZXIoI3skY29ybmVyfSk7XG4gICAgfVxuICAgIEBlbHNlIGlmIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInJpZ2h0IGJvdHRvbVwiKSBvciAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJib3R0b20gcmlnaHRcIikge1xuICAgICAgJGRlZ3JlZTogX3Bvc2l0aW9uLWZsaXBwZXIoI3skc2lkZX0pIF9wb3NpdGlvbi1mbGlwcGVyKCN7JGNvcm5lcn0pO1xuICAgIH1cbiAgICBAZWxzZSBpZiAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJsZWZ0IGJvdHRvbVwiKSBvciAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJib3R0b20gbGVmdFwiKSB7XG4gICAgICAkZGVncmVlOiBfcG9zaXRpb24tZmxpcHBlcigjeyRzaWRlfSkgX3Bvc2l0aW9uLWZsaXBwZXIoI3skY29ybmVyfSk7XG4gICAgfVxuICAgICRzcGVjOiB0byAkc2lkZSAkY29ybmVyO1xuICB9XG4gIEBlbHNlIGlmICRsZW5ndGggPT0gMSB7XG4gICAgLy8gU3dhcCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcbiAgICBAaWYgJHR5cGUgPT0gc3RyaW5nIHtcbiAgICAgICRkZWdyZWU6ICRwb3M7XG4gICAgICAkc3BlYzogdG8gX3Bvc2l0aW9uLWZsaXBwZXIoJHBvcyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRkZWdyZWU6IC0yNzAgLSAkcG9zOyAvL3JvdGF0ZSB0aGUgZ3JhZGllbnQgb3Bwb3NpdGUgZnJvbSBzcGVjXG4gICAgICAkc3BlYzogJHBvcztcbiAgICB9XG4gIH1cbiAgJGRlZ3JlZTogdW5xdW90ZSgkZGVncmVlICsgXCIsXCIpO1xuICAkc3BlYzogICB1bnF1b3RlKCRzcGVjICsgXCIsXCIpO1xuICBAcmV0dXJuICRkZWdyZWUgJHNwZWM7XG59XG5cbkBmdW5jdGlvbiBfcG9zaXRpb24tZmxpcHBlcigkcG9zKSB7XG4gIEByZXR1cm4gaWYoJHBvcyA9PSBsZWZ0LCByaWdodCwgbnVsbClcbiAgICAgICAgIGlmKCRwb3MgPT0gcmlnaHQsIGxlZnQsIG51bGwpXG4gICAgICAgICBpZigkcG9zID09IHRvcCwgYm90dG9tLCBudWxsKVxuICAgICAgICAgaWYoJHBvcyA9PSBib3R0b20sIHRvcCwgbnVsbCk7XG59XG4iLCIvLyBQcml2YXRlIGZ1bmN0aW9uIGZvciBsaW5lYXItZ3JhZGllbnQtcGFyc2VyXG5AZnVuY3Rpb24gX2xpbmVhci1zaWRlLWNvcm5lci1wYXJzZXIoJGltYWdlLCAkZmlyc3QtdmFsLCAkcHJlZml4LCAkc3VmZml4LCAkaGFzLW11bHRpcGxlLXZhbHMpIHtcbiAgJHZhbC0xOiBzdHItc2xpY2UoJGZpcnN0LXZhbCwgMSwgJGhhcy1tdWx0aXBsZS12YWxzIC0gMSk7XG4gICR2YWwtMjogc3RyLXNsaWNlKCRmaXJzdC12YWwsICRoYXMtbXVsdGlwbGUtdmFscyArIDEsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkpO1xuICAkdmFsLTM6IG51bGw7XG4gICRoYXMtdmFsLTM6IHN0ci1pbmRleCgkdmFsLTIsIFwiIFwiKTtcblxuICBAaWYgJGhhcy12YWwtMyB7XG4gICAgJHZhbC0zOiBzdHItc2xpY2UoJHZhbC0yLCAkaGFzLXZhbC0zICsgMSwgc3RyLWxlbmd0aCgkdmFsLTIpKTtcbiAgICAkdmFsLTI6IHN0ci1zbGljZSgkdmFsLTIsIDEsICRoYXMtdmFsLTMgLSAxKTtcbiAgfVxuXG4gICRwb3M6IF9wb3NpdGlvbi1mbGlwcGVyKCR2YWwtMSkgX3Bvc2l0aW9uLWZsaXBwZXIoJHZhbC0yKSBfcG9zaXRpb24tZmxpcHBlcigkdmFsLTMpO1xuICAkcG9zOiB1bnF1b3RlKCRwb3MgKyBcIlwiKTtcblxuICAvLyBVc2Ugb2xkIHNwZWMgZm9yIHdlYmtpdFxuICBAaWYgJHZhbC0xID09IFwidG9cIiB7XG4gICAgQHJldHVybiAoXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJHByZWZpeCArICRwb3MgKyAkc3VmZml4LFxuICAgICAgc3BlYy1pbWFnZTogJGltYWdlXG4gICAgKTtcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBjb2RlIHVwIHRvIHNwZWNcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gKFxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRpbWFnZSxcbiAgICAgIHNwZWMtaW1hZ2U6ICRwcmVmaXggKyBcInRvIFwiICsgJHBvcyArICRzdWZmaXhcbiAgICApO1xuICB9XG59XG4iLCJAZnVuY3Rpb24gX3JhZGlhbC1hcmctcGFyc2VyKCRnMSwgJGcyLCAkcG9zLCAkc2hhcGUtc2l6ZSkge1xuICBAZWFjaCAkdmFsdWUgaW4gJGcxLCAkZzIge1xuICAgICRmaXJzdC12YWw6IG50aCgkdmFsdWUsIDEpO1xuICAgICRwb3MtdHlwZTogIHR5cGUtb2YoJGZpcnN0LXZhbCk7XG4gICAgJHNwZWMtYXQtaW5kZXg6IG51bGw7XG5cbiAgICAvLyBEZXRlcm1pbmUgaWYgc3BlYyB3YXMgcGFzc2VkIHRvIG1peGluXG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBsaXN0IHtcbiAgICAgICRzcGVjLWF0LWluZGV4OiBpZihpbmRleCgkdmFsdWUsIGF0KSwgaW5kZXgoJHZhbHVlLCBhdCksIGZhbHNlKTtcbiAgICB9XG4gICAgQGlmICRzcGVjLWF0LWluZGV4IHtcbiAgICAgIEBpZiAkc3BlYy1hdC1pbmRleCA+IDEge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkc3BlYy1hdC1pbmRleCAtIDEpIHtcbiAgICAgICAgICAkc2hhcGUtc2l6ZTogJHNoYXBlLXNpemUgbnRoKCR2YWx1ZSwgJGkpO1xuICAgICAgICB9XG4gICAgICAgIEBmb3IgJGkgZnJvbSAoJHNwZWMtYXQtaW5kZXggKyAxKSB0aHJvdWdoIGxlbmd0aCgkdmFsdWUpIHtcbiAgICAgICAgICAkcG9zOiAkcG9zIG50aCgkdmFsdWUsICRpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHNwZWMtYXQtaW5kZXggPT0gMSB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAoJHNwZWMtYXQtaW5kZXggKyAxKSB0aHJvdWdoIGxlbmd0aCgkdmFsdWUpIHtcbiAgICAgICAgICAkcG9zOiAkcG9zIG50aCgkdmFsdWUsICRpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJGcxOiBudWxsO1xuICAgIH1cblxuICAgIC8vIElmIG5vdCBzcGVjIGNhbGN1bGF0ZSBjb3JyZWN0IHZhbHVlc1xuICAgIEBlbHNlIHtcbiAgICAgIEBpZiAoJHBvcy10eXBlICE9IGNvbG9yKSBvciAoJGZpcnN0LXZhbCAhPSBcInRyYW5zcGFyZW50XCIpIHtcbiAgICAgICAgQGlmICgkcG9zLXR5cGUgPT0gbnVtYmVyKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNlbnRlclwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcInRvcFwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcInJpZ2h0XCIpXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiYm90dG9tXCIpXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwibGVmdFwiKSB7XG5cbiAgICAgICAgICAkcG9zOiAkdmFsdWU7XG5cbiAgICAgICAgICBAaWYgJHBvcyA9PSAkZzEge1xuICAgICAgICAgICAgJGcxOiBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlbHNlIGlmXG4gICAgICAgICAgICgkZmlyc3QtdmFsID09IFwiZWxsaXBzZVwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNpcmNsZVwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNsb3Nlc3Qtc2lkZVwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNsb3Nlc3QtY29ybmVyXCIpXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiZmFydGhlc3Qtc2lkZVwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImZhcnRoZXN0LWNvcm5lclwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNvbnRhaW5cIilcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJjb3ZlclwiKSB7XG5cbiAgICAgICAgICAkc2hhcGUtc2l6ZTogJHZhbHVlO1xuXG4gICAgICAgICAgQGlmICR2YWx1ZSA9PSAkZzEge1xuICAgICAgICAgICAgJGcxOiBudWxsO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlbHNlIGlmICR2YWx1ZSA9PSAkZzIge1xuICAgICAgICAgICAgJGcyOiBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAcmV0dXJuICRnMSwgJGcyLCAkcG9zLCAkc2hhcGUtc2l6ZTtcbn1cbiIsIkBmdW5jdGlvbiBfcmFkaWFsLXBvc2l0aW9ucy1wYXJzZXIoJGdyYWRpZW50LXBvcykge1xuICAkc2hhcGUtc2l6ZTogbnRoKCRncmFkaWVudC1wb3MsIDEpO1xuICAkcG9zOiAgICAgICAgbnRoKCRncmFkaWVudC1wb3MsIDIpO1xuICAkc2hhcGUtc2l6ZS1zcGVjOiBfc2hhcGUtc2l6ZS1zdHJpcHBlcigkc2hhcGUtc2l6ZSk7XG5cbiAgJHByZS1zcGVjOiB1bnF1b3RlKGlmKCRwb3MsIFwiI3skcG9zfSwgXCIsIG51bGwpKVxuICAgICAgICAgICAgIHVucXVvdGUoaWYoJHNoYXBlLXNpemUsIFwiI3skc2hhcGUtc2l6ZX0sXCIsIG51bGwpKTtcbiAgJHBvcy1zcGVjOiBpZigkcG9zLCBcImF0ICN7JHBvc31cIiwgbnVsbCk7XG5cbiAgJHNwZWM6IFwiI3skc2hhcGUtc2l6ZS1zcGVjfSAjeyRwb3Mtc3BlY31cIjtcblxuICAvLyBBZGQgY29tbWFcbiAgQGlmICgkc3BlYyAhPSBcIiAgXCIpIHtcbiAgICAkc3BlYzogXCIjeyRzcGVjfSxcIjtcbiAgfVxuXG4gIEByZXR1cm4gJHByZS1zcGVjICRzcGVjO1xufVxuIiwiQGZ1bmN0aW9uIF9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyKCRpbWFnZSkge1xuICAkaW1hZ2U6IHVucXVvdGUoJGltYWdlKTtcbiAgJGdyYWRpZW50czogKCk7XG4gICRzdGFydDogc3RyLWluZGV4KCRpbWFnZSwgXCIoXCIpO1xuICAkZW5kOiBzdHItaW5kZXgoJGltYWdlLCBcIixcIik7XG4gICRmaXJzdC12YWw6IHN0ci1zbGljZSgkaW1hZ2UsICRzdGFydCArIDEsICRlbmQgLSAxKTtcblxuICAkcHJlZml4OiBzdHItc2xpY2UoJGltYWdlLCAxLCAkc3RhcnQpO1xuICAkc3VmZml4OiBzdHItc2xpY2UoJGltYWdlLCAkZW5kLCBzdHItbGVuZ3RoKCRpbWFnZSkpO1xuXG4gICRpcy1zcGVjLXN5bnRheDogc3RyLWluZGV4KCRmaXJzdC12YWwsIFwiYXRcIik7XG5cbiAgQGlmICRpcy1zcGVjLXN5bnRheCBhbmQgJGlzLXNwZWMtc3ludGF4ID4gMSB7XG4gICAgJGtleXdvcmQ6IHN0ci1zbGljZSgkZmlyc3QtdmFsLCAxLCAkaXMtc3BlYy1zeW50YXggLSAyKTtcbiAgICAkcG9zOiBzdHItc2xpY2UoJGZpcnN0LXZhbCwgJGlzLXNwZWMtc3ludGF4ICsgMywgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSk7XG4gICAgJHBvczogYXBwZW5kKCRwb3MsICRrZXl3b3JkLCBjb21tYSk7XG5cbiAgICAkZ3JhZGllbnRzOiAoXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJHByZWZpeCArICRwb3MgKyAkc3VmZml4LFxuICAgICAgc3BlYy1pbWFnZTogJGltYWdlXG4gICAgKTtcbiAgfVxuXG4gIEBlbHNlIGlmICRpcy1zcGVjLXN5bnRheCA9PSAxIHtcbiAgICAkcG9zOiBzdHItc2xpY2UoJGZpcnN0LXZhbCwgJGlzLXNwZWMtc3ludGF4ICsgMywgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSk7XG5cbiAgICAkZ3JhZGllbnRzOiAoXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJHByZWZpeCArICRwb3MgKyAkc3VmZml4LFxuICAgICAgc3BlYy1pbWFnZTogJGltYWdlXG4gICAgKTtcbiAgfVxuXG4gIEBlbHNlIGlmIHN0ci1pbmRleCgkaW1hZ2UsIFwiY292ZXJcIikgb3Igc3RyLWluZGV4KCRpbWFnZSwgXCJjb250YWluXCIpIHtcbiAgICBAd2FybiBcIlJhZGlhbC1ncmFkaWVudCBuZWVkcyB0byBiZSB1cGRhdGVkIHRvIGNvbmZvcm0gdG8gbGF0ZXN0IHNwZWMuXCI7XG5cbiAgICAkZ3JhZGllbnRzOiAoXG4gICAgICB3ZWJraXQtaW1hZ2U6IG51bGwsXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcbiAgICApO1xuICB9XG5cbiAgQGVsc2Uge1xuICAgICRncmFkaWVudHM6IChcbiAgICAgIHdlYmtpdC1pbWFnZTogLXdlYmtpdC0gKyAkaW1hZ2UsXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcbiAgICApO1xuICB9XG5cbiAgQHJldHVybiAkZ3JhZGllbnRzO1xufVxuIiwiLy8gVXNlciBmb3IgbGluZWFyIGFuZCByYWRpYWwgZ3JhZGllbnRzIHdpdGhpbiBiYWNrZ3JvdW5kLWltYWdlIG9yIGJvcmRlci1pbWFnZSBwcm9wZXJ0aWVzXG5cbkBmdW5jdGlvbiBfcmVuZGVyLWdyYWRpZW50cygkZ3JhZGllbnQtcG9zaXRpb25zLCAkZ3JhZGllbnRzLCAkZ3JhZGllbnQtdHlwZSwgJHZlbmRvcjogZmFsc2UpIHtcbiAgJHByZS1zcGVjOiBudWxsO1xuICAkc3BlYzogbnVsbDtcbiAgJHZlbmRvci1ncmFkaWVudHM6IG51bGw7XG4gIEBpZiAkZ3JhZGllbnQtdHlwZSA9PSBsaW5lYXIge1xuICAgIEBpZiAkZ3JhZGllbnQtcG9zaXRpb25zIHtcbiAgICAgICRwcmUtc3BlYzogbnRoKCRncmFkaWVudC1wb3NpdGlvbnMsIDEpO1xuICAgICAgJHNwZWM6ICAgICBudGgoJGdyYWRpZW50LXBvc2l0aW9ucywgMik7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IHJhZGlhbCB7XG4gICAgJHByZS1zcGVjOiBudGgoJGdyYWRpZW50LXBvc2l0aW9ucywgMSk7XG4gICAgJHNwZWM6ICAgICBudGgoJGdyYWRpZW50LXBvc2l0aW9ucywgMik7XG4gIH1cblxuICBAaWYgJHZlbmRvciB7XG4gICAgJHZlbmRvci1ncmFkaWVudHM6IC0jeyR2ZW5kb3J9LSN7JGdyYWRpZW50LXR5cGV9LWdyYWRpZW50KCN7JHByZS1zcGVjfSAkZ3JhZGllbnRzKTtcbiAgfVxuICBAZWxzZSBpZiAkdmVuZG9yID09IGZhbHNlIHtcbiAgICAkdmVuZG9yLWdyYWRpZW50czogXCIjeyRncmFkaWVudC10eXBlfS1ncmFkaWVudCgjeyRzcGVjfSAjeyRncmFkaWVudHN9KVwiO1xuICAgICR2ZW5kb3ItZ3JhZGllbnRzOiB1bnF1b3RlKCR2ZW5kb3ItZ3JhZGllbnRzKTtcbiAgfVxuICBAcmV0dXJuICR2ZW5kb3ItZ3JhZGllbnRzO1xufVxuIiwiQGZ1bmN0aW9uIF9zaGFwZS1zaXplLXN0cmlwcGVyKCRzaGFwZS1zaXplKSB7XG4gICRzaGFwZS1zaXplLXNwZWM6IG51bGw7XG4gIEBlYWNoICR2YWx1ZSBpbiAkc2hhcGUtc2l6ZSB7XG4gICAgQGlmICgkdmFsdWUgPT0gXCJjb3ZlclwiKSBvciAoJHZhbHVlID09IFwiY29udGFpblwiKSB7XG4gICAgICAkdmFsdWU6IG51bGw7XG4gICAgfVxuICAgICRzaGFwZS1zaXplLXNwZWM6IFwiI3skc2hhcGUtc2l6ZS1zcGVjfSAjeyR2YWx1ZX1cIjtcbiAgfVxuICBAcmV0dXJuICRzaGFwZS1zaXplLXNwZWM7XG59XG4iLCIvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG4vLyBIZWxwZXIgZnVuY3Rpb24gZm9yIGxpbmVhci9yYWRpYWwtZ3JhZGllbnQtcGFyc2Vycy5cbi8vIFNvdXJjZTogaHR0cDovL3Nhc3NtZWlzdGVyLmNvbS9naXN0Lzk2NDc0MDhcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cbkBmdW5jdGlvbiBfc3RyLXRvLW51bSgkc3RyaW5nKSB7XG4gIC8vIE1hdHJpY2VzXG4gICRzdHJpbmdzOiBcIjBcIiBcIjFcIiBcIjJcIiBcIjNcIiBcIjRcIiBcIjVcIiBcIjZcIiBcIjdcIiBcIjhcIiBcIjlcIjtcbiAgJG51bWJlcnM6ICAwICAgMSAgIDIgICAzICAgNCAgIDUgICA2ICAgNyAgIDggICA5O1xuXG4gIC8vIFJlc3VsdFxuICAkcmVzdWx0OiAwO1xuICAkZGl2aWRlcjogMDtcbiAgJG1pbnVzOiBmYWxzZTtcblxuICAvLyBMb29waW5nIHRocm91Z2ggYWxsIGNoYXJhY3RlcnNcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBzdHItbGVuZ3RoKCRzdHJpbmcpIHtcbiAgICAkY2hhcmFjdGVyOiBzdHItc2xpY2UoJHN0cmluZywgJGksICRpKTtcbiAgICAkaW5kZXg6IGluZGV4KCRzdHJpbmdzLCAkY2hhcmFjdGVyKTtcblxuICAgIEBpZiAkY2hhcmFjdGVyID09IFwiLVwiIHtcbiAgICAgICRtaW51czogdHJ1ZTtcbiAgICB9XG5cbiAgICBAZWxzZSBpZiAkY2hhcmFjdGVyID09IFwiLlwiIHtcbiAgICAgICRkaXZpZGVyOiAxO1xuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiBub3QgJGluZGV4IHtcbiAgICAgICAgJHJlc3VsdDogaWYoJG1pbnVzLCAkcmVzdWx0ICogLTEsICRyZXN1bHQpO1xuICAgICAgICBAcmV0dXJuIF9jb252ZXJ0LXVuaXRzKCRyZXN1bHQsIHN0ci1zbGljZSgkc3RyaW5nLCAkaSkpO1xuICAgICAgfVxuXG4gICAgICAkbnVtYmVyOiBudGgoJG51bWJlcnMsICRpbmRleCk7XG5cbiAgICAgIEBpZiAkZGl2aWRlciA9PSAwIHtcbiAgICAgICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwO1xuICAgICAgfVxuXG4gICAgICBAZWxzZSB7XG4gICAgICAgIC8vIE1vdmUgdGhlIGRlY2ltYWwgZG90IHRvIHRoZSBsZWZ0XG4gICAgICAgICRkaXZpZGVyOiAkZGl2aWRlciAqIDEwO1xuICAgICAgICAkbnVtYmVyOiAkbnVtYmVyIC8gJGRpdmlkZXI7XG4gICAgICB9XG5cbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAkbnVtYmVyO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuIGlmKCRtaW51cywgJHJlc3VsdCAqIC0xLCAkcmVzdWx0KTtcbn1cbiIsIi8vIGh0dHA6Ly93d3cudzMub3JnL1RSL2NzczMtYW5pbWF0aW9ucy8jdGhlLWFuaW1hdGlvbi1uYW1lLXByb3BlcnR5LVxuLy8gRWFjaCBvZiB0aGVzZSBtaXhpbnMgc3VwcG9ydCBjb21tYSBzZXBhcmF0ZWQgbGlzdHMgb2YgdmFsdWVzLCB3aGljaCBhbGxvd3MgZGlmZmVyZW50IHRyYW5zaXRpb25zIGZvciBpbmRpdmlkdWFsIHByb3BlcnRpZXMgdG8gYmUgZGVzY3JpYmVkIGluIGEgc2luZ2xlIHN0eWxlIHJ1bGUuIEVhY2ggdmFsdWUgaW4gdGhlIGxpc3QgY29ycmVzcG9uZHMgdG8gdGhlIHZhbHVlIGF0IHRoYXQgc2FtZSBwb3NpdGlvbiBpbiB0aGUgb3RoZXIgcHJvcGVydGllcy5cblxuQG1peGluIGFuaW1hdGlvbigkYW5pbWF0aW9ucy4uLikge1xuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24sICRhbmltYXRpb25zLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLW5hbWUoJG5hbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1uYW1lLCAkbmFtZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24oJHRpbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1kdXJhdGlvbiwgJHRpbWVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbigkbW90aW9ucy4uLikge1xuICAvLyBlYXNlIHwgbGluZWFyIHwgZWFzZS1pbiB8IGVhc2Utb3V0IHwgZWFzZS1pbi1vdXRcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgJG1vdGlvbnMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50KCR2YWx1ZXMuLi4pIHtcbiAgLy8gaW5maW5pdGUgfCA8bnVtYmVyPlxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAkdmFsdWVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9ucy4uLikge1xuICAvLyBub3JtYWwgfCBhbHRlcm5hdGVcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLWRpcmVjdGlvbiwgJGRpcmVjdGlvbnMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBhbmltYXRpb24tcGxheS1zdGF0ZSgkc3RhdGVzLi4uKSB7XG4gIC8vIHJ1bm5pbmcgfCBwYXVzZWRcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLXBsYXktc3RhdGUsICRzdGF0ZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJHRpbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1kZWxheSwgJHRpbWVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLWZpbGwtbW9kZSgkbW9kZXMuLi4pIHtcbiAgLy8gbm9uZSB8IGZvcndhcmRzIHwgYmFja3dhcmRzIHwgYm90aFxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tZmlsbC1tb2RlLCAkbW9kZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG4iLCJAbWl4aW4gYXBwZWFyYW5jZSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYXBwZWFyYW5jZSwgJHZhbHVlLCB3ZWJraXQgbW96IG1zIG8gc3BlYyk7XG59XG4iLCJAbWl4aW4gYmFja2ZhY2UtdmlzaWJpbGl0eSgkdmlzaWJpbGl0eSkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihiYWNrZmFjZS12aXNpYmlsaXR5LCAkdmlzaWJpbGl0eSwgd2Via2l0IHNwZWMpO1xufVxuIiwiLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuLy8gQmFja2dyb3VuZCBwcm9wZXJ0eSBmb3IgYWRkaW5nIG11bHRpcGxlIGJhY2tncm91bmRzIHVzaW5nIHNob3J0aGFuZFxuLy8gbm90YXRpb24uXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG5cbkBtaXhpbiBiYWNrZ3JvdW5kKCRiYWNrZ3JvdW5kcy4uLikge1xuICAkd2Via2l0LWJhY2tncm91bmRzOiAoKTtcbiAgJHNwZWMtYmFja2dyb3VuZHM6ICgpO1xuXG4gIEBlYWNoICRiYWNrZ3JvdW5kIGluICRiYWNrZ3JvdW5kcyB7XG4gICAgJHdlYmtpdC1iYWNrZ3JvdW5kOiAoKTtcbiAgICAkc3BlYy1iYWNrZ3JvdW5kOiAoKTtcbiAgICAkYmFja2dyb3VuZC10eXBlOiB0eXBlLW9mKCRiYWNrZ3JvdW5kKTtcblxuICAgIEBpZiAkYmFja2dyb3VuZC10eXBlID09IHN0cmluZyBvciAkYmFja2dyb3VuZC10eXBlID09IGxpc3Qge1xuICAgICAgJGJhY2tncm91bmQtc3RyOiBpZigkYmFja2dyb3VuZC10eXBlID09IGxpc3QsIG50aCgkYmFja2dyb3VuZCwgMSksICRiYWNrZ3JvdW5kKTtcblxuICAgICAgJHVybC1zdHI6ICAgICAgIHN0ci1zbGljZSgkYmFja2dyb3VuZC1zdHIsIDEsIDMpO1xuICAgICAgJGdyYWRpZW50LXR5cGU6IHN0ci1zbGljZSgkYmFja2dyb3VuZC1zdHIsIDEsIDYpO1xuXG4gICAgICBAaWYgJHVybC1zdHIgPT0gXCJ1cmxcIiB7XG4gICAgICAgICR3ZWJraXQtYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgICAgICRzcGVjLWJhY2tncm91bmQ6ICAgJGJhY2tncm91bmQ7XG4gICAgICB9XG5cbiAgICAgIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IFwibGluZWFyXCIge1xuICAgICAgICAkZ3JhZGllbnRzOiBfbGluZWFyLWdyYWRpZW50LXBhcnNlcihcIiN7JGJhY2tncm91bmR9XCIpO1xuICAgICAgICAkd2Via2l0LWJhY2tncm91bmQ6IG1hcC1nZXQoJGdyYWRpZW50cywgd2Via2l0LWltYWdlKTtcbiAgICAgICAgJHNwZWMtYmFja2dyb3VuZDogICBtYXAtZ2V0KCRncmFkaWVudHMsIHNwZWMtaW1hZ2UpO1xuICAgICAgfVxuXG4gICAgICBAZWxzZSBpZiAkZ3JhZGllbnQtdHlwZSA9PSBcInJhZGlhbFwiIHtcbiAgICAgICAgJGdyYWRpZW50czogX3JhZGlhbC1ncmFkaWVudC1wYXJzZXIoXCIjeyRiYWNrZ3JvdW5kfVwiKTtcbiAgICAgICAgJHdlYmtpdC1iYWNrZ3JvdW5kOiBtYXAtZ2V0KCRncmFkaWVudHMsIHdlYmtpdC1pbWFnZSk7XG4gICAgICAgICRzcGVjLWJhY2tncm91bmQ6ICAgbWFwLWdldCgkZ3JhZGllbnRzLCBzcGVjLWltYWdlKTtcbiAgICAgIH1cblxuICAgICAgQGVsc2Uge1xuICAgICAgICAkd2Via2l0LWJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgICAgICAkc3BlYy1iYWNrZ3JvdW5kOiAgICRiYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICR3ZWJraXQtYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgICAkc3BlYy1iYWNrZ3JvdW5kOiAgICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgICR3ZWJraXQtYmFja2dyb3VuZHM6IGFwcGVuZCgkd2Via2l0LWJhY2tncm91bmRzLCAkd2Via2l0LWJhY2tncm91bmQsIGNvbW1hKTtcbiAgICAkc3BlYy1iYWNrZ3JvdW5kczogICBhcHBlbmQoJHNwZWMtYmFja2dyb3VuZHMsICAgJHNwZWMtYmFja2dyb3VuZCwgICBjb21tYSk7XG4gIH1cblxuICBiYWNrZ3JvdW5kOiAkd2Via2l0LWJhY2tncm91bmRzO1xuICBiYWNrZ3JvdW5kOiAkc3BlYy1iYWNrZ3JvdW5kcztcbn1cbiIsIi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cbi8vIEJhY2tncm91bmQtaW1hZ2UgcHJvcGVydHkgZm9yIGFkZGluZyBtdWx0aXBsZSBiYWNrZ3JvdW5kIGltYWdlcyB3aXRoXG4vLyBncmFkaWVudHMsIG9yIGZvciBzdHJpbmdpbmcgbXVsdGlwbGUgZ3JhZGllbnRzIHRvZ2V0aGVyLlxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuXG5AbWl4aW4gYmFja2dyb3VuZC1pbWFnZSgkaW1hZ2VzLi4uKSB7XG4gICR3ZWJraXQtaW1hZ2VzOiAoKTtcbiAgJHNwZWMtaW1hZ2VzOiAoKTtcblxuICBAZWFjaCAkaW1hZ2UgaW4gJGltYWdlcyB7XG4gICAgJHdlYmtpdC1pbWFnZTogKCk7XG4gICAgJHNwZWMtaW1hZ2U6ICgpO1xuXG4gICAgQGlmICh0eXBlLW9mKCRpbWFnZSkgPT0gc3RyaW5nKSB7XG4gICAgICAkdXJsLXN0cjogICAgICAgc3RyLXNsaWNlKCRpbWFnZSwgMSwgMyk7XG4gICAgICAkZ3JhZGllbnQtdHlwZTogc3RyLXNsaWNlKCRpbWFnZSwgMSwgNik7XG5cbiAgICAgIEBpZiAkdXJsLXN0ciA9PSBcInVybFwiIHtcbiAgICAgICAgJHdlYmtpdC1pbWFnZTogJGltYWdlO1xuICAgICAgICAkc3BlYy1pbWFnZTogICAkaW1hZ2U7XG4gICAgICB9XG5cbiAgICAgIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IFwibGluZWFyXCIge1xuICAgICAgICAkZ3JhZGllbnRzOiBfbGluZWFyLWdyYWRpZW50LXBhcnNlcigkaW1hZ2UpO1xuICAgICAgICAkd2Via2l0LWltYWdlOiAgbWFwLWdldCgkZ3JhZGllbnRzLCB3ZWJraXQtaW1hZ2UpO1xuICAgICAgICAkc3BlYy1pbWFnZTogICAgbWFwLWdldCgkZ3JhZGllbnRzLCBzcGVjLWltYWdlKTtcbiAgICAgIH1cblxuICAgICAgQGVsc2UgaWYgJGdyYWRpZW50LXR5cGUgPT0gXCJyYWRpYWxcIiB7XG4gICAgICAgICRncmFkaWVudHM6IF9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyKCRpbWFnZSk7XG4gICAgICAgICR3ZWJraXQtaW1hZ2U6IG1hcC1nZXQoJGdyYWRpZW50cywgd2Via2l0LWltYWdlKTtcbiAgICAgICAgJHNwZWMtaW1hZ2U6ICAgbWFwLWdldCgkZ3JhZGllbnRzLCBzcGVjLWltYWdlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAkd2Via2l0LWltYWdlczogYXBwZW5kKCR3ZWJraXQtaW1hZ2VzLCAkd2Via2l0LWltYWdlLCBjb21tYSk7XG4gICAgJHNwZWMtaW1hZ2VzOiAgIGFwcGVuZCgkc3BlYy1pbWFnZXMsICAgJHNwZWMtaW1hZ2UsICAgY29tbWEpO1xuICB9XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogJHdlYmtpdC1pbWFnZXM7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICRzcGVjLWltYWdlcztcbn1cbiIsIkBtaXhpbiBib3JkZXItaW1hZ2UoJGJvcmRlcnMuLi4pIHtcbiAgJHdlYmtpdC1ib3JkZXJzOiAoKTtcbiAgJHNwZWMtYm9yZGVyczogKCk7XG5cbiAgQGVhY2ggJGJvcmRlciBpbiAkYm9yZGVycyB7XG4gICAgJHdlYmtpdC1ib3JkZXI6ICgpO1xuICAgICRzcGVjLWJvcmRlcjogKCk7XG4gICAgJGJvcmRlci10eXBlOiB0eXBlLW9mKCRib3JkZXIpO1xuXG4gICAgQGlmICRib3JkZXItdHlwZSA9PSBzdHJpbmcgb3IgbGlzdCB7XG4gICAgICAkYm9yZGVyLXN0cjogaWYoJGJvcmRlci10eXBlID09IGxpc3QsIG50aCgkYm9yZGVyLCAxKSwgJGJvcmRlcik7XG5cbiAgICAgICR1cmwtc3RyOiAgICAgICBzdHItc2xpY2UoJGJvcmRlci1zdHIsIDEsIDMpO1xuICAgICAgJGdyYWRpZW50LXR5cGU6IHN0ci1zbGljZSgkYm9yZGVyLXN0ciwgMSwgNik7XG5cbiAgICAgIEBpZiAkdXJsLXN0ciA9PSBcInVybFwiIHtcbiAgICAgICAgJHdlYmtpdC1ib3JkZXI6ICRib3JkZXI7XG4gICAgICAgICRzcGVjLWJvcmRlcjogICAkYm9yZGVyO1xuICAgICAgfVxuXG4gICAgICBAZWxzZSBpZiAkZ3JhZGllbnQtdHlwZSA9PSBcImxpbmVhclwiIHtcbiAgICAgICAgJGdyYWRpZW50czogX2xpbmVhci1ncmFkaWVudC1wYXJzZXIoXCIjeyRib3JkZXJ9XCIpO1xuICAgICAgICAkd2Via2l0LWJvcmRlcjogbWFwLWdldCgkZ3JhZGllbnRzLCB3ZWJraXQtaW1hZ2UpO1xuICAgICAgICAkc3BlYy1ib3JkZXI6ICAgbWFwLWdldCgkZ3JhZGllbnRzLCBzcGVjLWltYWdlKTtcbiAgICAgIH1cblxuICAgICAgQGVsc2UgaWYgJGdyYWRpZW50LXR5cGUgPT0gXCJyYWRpYWxcIiB7XG4gICAgICAgICRncmFkaWVudHM6IF9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyKFwiI3skYm9yZGVyfVwiKTtcbiAgICAgICAgJHdlYmtpdC1ib3JkZXI6IG1hcC1nZXQoJGdyYWRpZW50cywgd2Via2l0LWltYWdlKTtcbiAgICAgICAgJHNwZWMtYm9yZGVyOiAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XG4gICAgICB9XG5cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJHdlYmtpdC1ib3JkZXI6ICRib3JkZXI7XG4gICAgICAgICRzcGVjLWJvcmRlcjogICAkYm9yZGVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICR3ZWJraXQtYm9yZGVyOiAkYm9yZGVyO1xuICAgICAgJHNwZWMtYm9yZGVyOiAgICRib3JkZXI7XG4gICAgfVxuXG4gICAgJHdlYmtpdC1ib3JkZXJzOiBhcHBlbmQoJHdlYmtpdC1ib3JkZXJzLCAkd2Via2l0LWJvcmRlciwgY29tbWEpO1xuICAgICRzcGVjLWJvcmRlcnM6ICAgYXBwZW5kKCRzcGVjLWJvcmRlcnMsICAgJHNwZWMtYm9yZGVyLCAgIGNvbW1hKTtcbiAgfVxuXG4gIC13ZWJraXQtYm9yZGVyLWltYWdlOiAkd2Via2l0LWJvcmRlcnM7XG4gICAgICAgICAgYm9yZGVyLWltYWdlOiAkc3BlYy1ib3JkZXJzO1xuICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi8vRXhhbXBsZXM6XG4vLyBAaW5jbHVkZSBib3JkZXItaW1hZ2UodXJsKFwiaW1hZ2UucG5nXCIpKTtcbi8vIEBpbmNsdWRlIGJvcmRlci1pbWFnZSh1cmwoXCJpbWFnZS5wbmdcIikgMjAgc3RyZXRjaCk7XG4vLyBAaW5jbHVkZSBib3JkZXItaW1hZ2UobGluZWFyLWdyYWRpZW50KDQ1ZGVnLCBvcmFuZ2UsIHllbGxvdykpO1xuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKGxpbmVhci1ncmFkaWVudCg0NWRlZywgb3JhbmdlLCB5ZWxsb3cpIHN0cmV0Y2gpO1xuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKGxpbmVhci1ncmFkaWVudCg0NWRlZywgb3JhbmdlLCB5ZWxsb3cpIDIwIDMwIDQwIDUwIHN0cmV0Y2ggcm91bmQpO1xuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKHJhZGlhbC1ncmFkaWVudCh0b3AsIGNvdmVyLCBvcmFuZ2UsIHllbGxvdywgb3JhbmdlKSk7XG4iLCJAbWl4aW4gY2FsYygkcHJvcGVydHksICR2YWx1ZSkge1xuICAjeyRwcm9wZXJ0eX06IC13ZWJraXQtY2FsYygjeyR2YWx1ZX0pO1xuICAjeyRwcm9wZXJ0eX06IGNhbGMoI3skdmFsdWV9KTtcbn1cbiIsIkBtaXhpbiBjb2x1bW5zKCRhcmc6IGF1dG8pIHtcbiAgLy8gPGNvbHVtbi1jb3VudD4gfHwgPGNvbHVtbi13aWR0aD5cbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1ucywgJGFyZywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGNvbHVtbi1jb3VudCgkaW50OiBhdXRvKSB7XG4gIC8vIGF1dG8gfHwgaW50ZWdlclxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tY291bnQsICRpbnQsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBjb2x1bW4tZ2FwKCRsZW5ndGg6IG5vcm1hbCkge1xuICAvLyBub3JtYWwgfHwgbGVuZ3RoXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1nYXAsICRsZW5ndGgsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBjb2x1bW4tZmlsbCgkYXJnOiBhdXRvKSB7XG4gIC8vIGF1dG8gfHwgbGVuZ3RoXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1maWxsLCAkYXJnLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLXJ1bGUoJGFyZykge1xuICAvLyA8Ym9yZGVyLXdpZHRoPiB8fCA8Ym9yZGVyLXN0eWxlPiB8fCA8Y29sb3I+XG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1ydWxlLCAkYXJnLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLXJ1bGUtY29sb3IoJGNvbG9yKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1ydWxlLWNvbG9yLCAkY29sb3IsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBjb2x1bW4tcnVsZS1zdHlsZSgkc3R5bGU6IG5vbmUpIHtcbiAgLy8gbm9uZSB8IGhpZGRlbiB8IGRhc2hlZCB8IGRvdHRlZCB8IGRvdWJsZSB8IGdyb292ZSB8IGluc2V0IHwgaW5zZXQgfCBvdXRzZXQgfCByaWRnZSB8IHNvbGlkXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1ydWxlLXN0eWxlLCAkc3R5bGUsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBjb2x1bW4tcnVsZS13aWR0aCAoJHdpZHRoOiBub25lKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1ydWxlLXdpZHRoLCAkd2lkdGgsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBjb2x1bW4tc3BhbigkYXJnOiBub25lKSB7XG4gIC8vIG5vbmUgfHwgYWxsXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1zcGFuLCAkYXJnLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLXdpZHRoKCRsZW5ndGg6IGF1dG8pIHtcbiAgLy8gYXV0byB8fCBsZW5ndGhcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1uLXdpZHRoLCAkbGVuZ3RoLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuIiwiQG1peGluIGZpbHRlcigkZnVuY3Rpb246IG5vbmUpIHtcbiAgLy8gPGZpbHRlci1mdW5jdGlvbj4gWzxmaWx0ZXItZnVuY3Rpb25dKiB8IG5vbmVcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmlsdGVyLCAkZnVuY3Rpb24sIHdlYmtpdCBzcGVjKTtcbn1cbiIsIi8vIENTUzMgRmxleGlibGUgQm94IE1vZGVsIGFuZCBwcm9wZXJ0eSBkZWZhdWx0c1xuXG4vLyBDdXN0b20gc2hvcnRoYW5kIG5vdGF0aW9uIGZvciBmbGV4Ym94XG5AbWl4aW4gYm94KCRvcmllbnQ6IGlubGluZS1heGlzLCAkcGFjazogc3RhcnQsICRhbGlnbjogc3RyZXRjaCkge1xuICBAaW5jbHVkZSBkaXNwbGF5LWJveDtcbiAgQGluY2x1ZGUgYm94LW9yaWVudCgkb3JpZW50KTtcbiAgQGluY2x1ZGUgYm94LXBhY2soJHBhY2spO1xuICBAaW5jbHVkZSBib3gtYWxpZ24oJGFsaWduKTtcbn1cblxuQG1peGluIGRpc3BsYXktYm94IHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDsgLy8gSUUgMTBcbiAgZGlzcGxheTogYm94O1xufVxuXG5AbWl4aW4gYm94LW9yaWVudCgkb3JpZW50OiBpbmxpbmUtYXhpcykge1xuLy8gaG9yaXpvbnRhbHx2ZXJ0aWNhbHxpbmxpbmUtYXhpc3xibG9jay1heGlzfGluaGVyaXRcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LW9yaWVudCwgJG9yaWVudCwgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGJveC1wYWNrKCRwYWNrOiBzdGFydCkge1xuLy8gc3RhcnR8ZW5kfGNlbnRlcnxqdXN0aWZ5XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1wYWNrLCAkcGFjaywgd2Via2l0IG1veiBzcGVjKTtcbiAgLW1zLWZsZXgtcGFjazogJHBhY2s7IC8vIElFIDEwXG59XG5cbkBtaXhpbiBib3gtYWxpZ24oJGFsaWduOiBzdHJldGNoKSB7XG4vLyBzdGFydHxlbmR8Y2VudGVyfGJhc2VsaW5lfHN0cmV0Y2hcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWFsaWduLCAkYWxpZ24sIHdlYmtpdCBtb3ogc3BlYyk7XG4gIC1tcy1mbGV4LWFsaWduOiAkYWxpZ247IC8vIElFIDEwXG59XG5cbkBtaXhpbiBib3gtZGlyZWN0aW9uKCRkaXJlY3Rpb246IG5vcm1hbCkge1xuLy8gbm9ybWFsfHJldmVyc2V8aW5oZXJpdFxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtZGlyZWN0aW9uLCAkZGlyZWN0aW9uLCB3ZWJraXQgbW96IHNwZWMpO1xuICAtbXMtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247IC8vIElFIDEwXG59XG5cbkBtaXhpbiBib3gtbGluZXMoJGxpbmVzOiBzaW5nbGUpIHtcbi8vIHNpbmdsZXxtdWx0aXBsZVxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtbGluZXMsICRsaW5lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGJveC1vcmRpbmFsLWdyb3VwKCRpbnQ6IDEpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LW9yZGluYWwtZ3JvdXAsICRpbnQsIHdlYmtpdCBtb3ogc3BlYyk7XG4gIC1tcy1mbGV4LW9yZGVyOiAkaW50OyAvLyBJRSAxMFxufVxuXG5AbWl4aW4gYm94LWZsZXgoJHZhbHVlOiAwKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1mbGV4LCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG4gIC1tcy1mbGV4OiAkdmFsdWU7IC8vIElFIDEwXG59XG5cbkBtaXhpbiBib3gtZmxleC1ncm91cCgkaW50OiAxKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1mbGV4LWdyb3VwLCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG4vLyBDU1MzIEZsZXhpYmxlIEJveCBNb2RlbCBhbmQgcHJvcGVydHkgZGVmYXVsdHNcbi8vIFVuaWZpZWQgYXR0cmlidXRlcyBmb3IgMjAwOSwgMjAxMSwgYW5kIDIwMTIgZmxhdm91cnMuXG5cbi8vIDIwMDkgLSBkaXNwbGF5IChib3ggfCBpbmxpbmUtYm94KVxuLy8gMjAxMSAtIGRpc3BsYXkgKGZsZXhib3ggfCBpbmxpbmUtZmxleGJveClcbi8vIDIwMTIgLSBkaXNwbGF5IChmbGV4IHwgaW5saW5lLWZsZXgpXG5AbWl4aW4gZGlzcGxheSgkdmFsdWUpIHtcbi8vIGZsZXggfCBpbmxpbmUtZmxleFxuICBAaWYgJHZhbHVlID09IFwiZmxleFwiIHtcbiAgICAvLyAyMDA5XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLW1vei1ib3g7XG4gICAgZGlzcGxheTogYm94O1xuXG4gICAgLy8gMjAxMlxuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbW96LWZsZXg7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7IC8vIDIwMTEgKElFIDEwKVxuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiaW5saW5lLWZsZXhcIiB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otaW5saW5lLWJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYm94O1xuXG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleDtcbiAgICBkaXNwbGF5OiAtbW96LWlubGluZS1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgfSBAZWxzZSB7XG4gICAgZGlzcGxheTogJHZhbHVlO1xuICB9XG59XG5cbi8vIDIwMDkgLSBib3gtZmxleCAoaW50ZWdlcilcbi8vIDIwMTEgLSBmbGV4IChkZWNpbWFsIHwgd2lkdGggZGVjaW1hbClcbi8vIDIwMTIgLSBmbGV4IChpbnRlZ2VyIGludGVnZXIgd2lkdGgpXG5AbWl4aW4gZmxleCgkdmFsdWUpIHtcblxuICAvLyBHcmFiIGZsZXgtZ3JvdyBmb3Igb2xkZXIgYnJvd3NlcnMuXG4gICRmbGV4LWdyb3c6IG50aCgkdmFsdWUsIDEpO1xuXG4gIC8vIDIwMDlcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWZsZXgsICRmbGV4LWdyb3csIHdlYmtpdCBtb3ogc3BlYyk7XG5cbiAgLy8gMjAxMSAoSUUgMTApLCAyMDEyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBzcGVjKTtcbn1cblxuLy8gMjAwOSAtIGJveC1vcmllbnQgKCBob3Jpem9udGFsIHwgdmVydGljYWwgfCBpbmxpbmUtYXhpcyB8IGJsb2NrLWF4aXMpXG4vLyAgICAgIC0gYm94LWRpcmVjdGlvbiAobm9ybWFsIHwgcmV2ZXJzZSlcbi8vIDIwMTEgLSBmbGV4LWRpcmVjdGlvbiAocm93IHwgcm93LXJldmVyc2UgfCBjb2x1bW4gfCBjb2x1bW4tcmV2ZXJzZSlcbi8vIDIwMTIgLSBmbGV4LWRpcmVjdGlvbiAocm93IHwgcm93LXJldmVyc2UgfCBjb2x1bW4gfCBjb2x1bW4tcmV2ZXJzZSlcbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkdmFsdWU6IHJvdykge1xuXG4gIC8vIEFsdCB2YWx1ZXMuXG4gICR2YWx1ZS0yMDA5OiAkdmFsdWU7XG4gICR2YWx1ZS0yMDExOiAkdmFsdWU7XG4gICRkaXJlY3Rpb246IG5vcm1hbDtcblxuICBAaWYgJHZhbHVlID09IHJvdyB7XG4gICAgJHZhbHVlLTIwMDk6IGhvcml6b250YWw7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwicm93LXJldmVyc2VcIiB7XG4gICAgJHZhbHVlLTIwMDk6IGhvcml6b250YWw7XG4gICAgJGRpcmVjdGlvbjogcmV2ZXJzZTtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gY29sdW1uIHtcbiAgICAkdmFsdWUtMjAwOTogdmVydGljYWw7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiY29sdW1uLXJldmVyc2VcIiB7XG4gICAgJHZhbHVlLTIwMDk6IHZlcnRpY2FsO1xuICAgICRkaXJlY3Rpb246IHJldmVyc2U7XG4gIH1cblxuICAvLyAyMDA5XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmllbnQsICR2YWx1ZS0yMDA5LCB3ZWJraXQgbW96IHNwZWMpO1xuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtZGlyZWN0aW9uLCAkZGlyZWN0aW9uLCB3ZWJraXQgbW96IHNwZWMpO1xuXG4gIC8vIDIwMTJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1kaXJlY3Rpb24sICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcblxuICAvLyAyMDExIChJRSAxMClcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkdmFsdWU7XG59XG5cbi8vIDIwMDkgLSBib3gtbGluZXMgKHNpbmdsZSB8IG11bHRpcGxlKVxuLy8gMjAxMSAtIGZsZXgtd3JhcCAobm93cmFwIHwgd3JhcCB8IHdyYXAtcmV2ZXJzZSlcbi8vIDIwMTIgLSBmbGV4LXdyYXAgKG5vd3JhcCB8IHdyYXAgfCB3cmFwLXJldmVyc2UpXG5AbWl4aW4gZmxleC13cmFwKCR2YWx1ZTogbm93cmFwKSB7XG4gIC8vIEFsdCB2YWx1ZXNcbiAgJGFsdC12YWx1ZTogJHZhbHVlO1xuICBAaWYgJHZhbHVlID09IG5vd3JhcCB7XG4gICAgJGFsdC12YWx1ZTogc2luZ2xlO1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSB3cmFwIHtcbiAgICAkYWx0LXZhbHVlOiBtdWx0aXBsZTtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJ3cmFwLXJldmVyc2VcIiB7XG4gICAgJGFsdC12YWx1ZTogbXVsdGlwbGU7XG4gIH1cblxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtbGluZXMsICRhbHQtdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgtd3JhcCwgJHZhbHVlLCB3ZWJraXQgbW96IG1zIHNwZWMpO1xufVxuXG4vLyAyMDA5IC0gVE9ETzogcGFyc2UgdmFsdWVzIGludG8gZmxleC1kaXJlY3Rpb24vZmxleC13cmFwXG4vLyAyMDExIC0gVE9ETzogcGFyc2UgdmFsdWVzIGludG8gZmxleC1kaXJlY3Rpb24vZmxleC13cmFwXG4vLyAyMDEyIC0gZmxleC1mbG93IChmbGV4LWRpcmVjdGlvbiB8fCBmbGV4LXdyYXApXG5AbWl4aW4gZmxleC1mbG93KCR2YWx1ZSkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihmbGV4LWZsb3csICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuLy8gMjAwOSAtIGJveC1vcmRpbmFsLWdyb3VwIChpbnRlZ2VyKVxuLy8gMjAxMSAtIGZsZXgtb3JkZXIgKGludGVnZXIpXG4vLyAyMDEyIC0gb3JkZXIgKGludGVnZXIpXG5AbWl4aW4gb3JkZXIoJGludDogMCkge1xuICAvLyAyMDA5XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmRpbmFsLWdyb3VwLCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xuXG4gIC8vIDIwMTJcbiAgQGluY2x1ZGUgcHJlZml4ZXIob3JkZXIsICRpbnQsIHdlYmtpdCBtb3ogc3BlYyk7XG5cbiAgLy8gMjAxMSAoSUUgMTApXG4gIC1tcy1mbGV4LW9yZGVyOiAkaW50O1xufVxuXG4vLyAyMDEyIC0gZmxleC1ncm93IChudW1iZXIpXG5AbWl4aW4gZmxleC1ncm93KCRudW1iZXI6IDApIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1ncm93LCAkbnVtYmVyLCB3ZWJraXQgbW96IHNwZWMpO1xuICAtbXMtZmxleC1wb3NpdGl2ZTogJG51bWJlcjtcbn1cblxuLy8gMjAxMiAtIGZsZXgtc2hyaW5rIChudW1iZXIpXG5AbWl4aW4gZmxleC1zaHJpbmsoJG51bWJlcjogMSkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihmbGV4LXNocmluaywgJG51bWJlciwgd2Via2l0IG1veiBzcGVjKTtcbiAgLW1zLWZsZXgtbmVnYXRpdmU6ICRudW1iZXI7XG59XG5cbi8vIDIwMTIgLSBmbGV4LWJhc2lzIChudW1iZXIpXG5AbWl4aW4gZmxleC1iYXNpcygkd2lkdGg6IGF1dG8pIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1iYXNpcywgJHdpZHRoLCB3ZWJraXQgbW96IHNwZWMpO1xuICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogJHdpZHRoO1xufVxuXG4vLyAyMDA5IC0gYm94LXBhY2sgKHN0YXJ0IHwgZW5kIHwgY2VudGVyIHwganVzdGlmeSlcbi8vIDIwMTEgLSBmbGV4LXBhY2sgKHN0YXJ0IHwgZW5kIHwgY2VudGVyIHwganVzdGlmeSlcbi8vIDIwMTIgLSBqdXN0aWZ5LWNvbnRlbnQgKGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IHNwYWNlLWJldHdlZW4gfCBzcGFjZS1hcm91bmQpXG5AbWl4aW4ganVzdGlmeS1jb250ZW50KCR2YWx1ZTogZmxleC1zdGFydCkge1xuXG4gIC8vIEFsdCB2YWx1ZXMuXG4gICRhbHQtdmFsdWU6ICR2YWx1ZTtcbiAgQGlmICR2YWx1ZSA9PSBcImZsZXgtc3RhcnRcIiB7XG4gICAgJGFsdC12YWx1ZTogc3RhcnQ7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiZmxleC1lbmRcIiB7XG4gICAgJGFsdC12YWx1ZTogZW5kO1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcInNwYWNlLWJldHdlZW5cIiB7XG4gICAgJGFsdC12YWx1ZToganVzdGlmeTtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJzcGFjZS1hcm91bmRcIiB7XG4gICAgJGFsdC12YWx1ZTogZGlzdHJpYnV0ZTtcbiAgfVxuXG4gIC8vIDIwMDlcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LXBhY2ssICRhbHQtdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG5cbiAgLy8gMjAxMlxuICBAaW5jbHVkZSBwcmVmaXhlcihqdXN0aWZ5LWNvbnRlbnQsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xuXG4gIC8vIDIwMTEgKElFIDEwKVxuICAtbXMtZmxleC1wYWNrOiAkYWx0LXZhbHVlO1xufVxuXG4vLyAyMDA5IC0gYm94LWFsaWduIChzdGFydCB8IGVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaClcbi8vIDIwMTEgLSBmbGV4LWFsaWduIChzdGFydCB8IGVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaClcbi8vIDIwMTIgLSBhbGlnbi1pdGVtcyAoZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoKVxuQG1peGluIGFsaWduLWl0ZW1zKCR2YWx1ZTogc3RyZXRjaCkge1xuXG4gICRhbHQtdmFsdWU6ICR2YWx1ZTtcblxuICBAaWYgJHZhbHVlID09IFwiZmxleC1zdGFydFwiIHtcbiAgICAkYWx0LXZhbHVlOiBzdGFydDtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJmbGV4LWVuZFwiIHtcbiAgICAkYWx0LXZhbHVlOiBlbmQ7XG4gIH1cblxuICAvLyAyMDA5XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1hbGlnbiwgJGFsdC12YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcblxuICAvLyAyMDEyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFsaWduLWl0ZW1zLCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgbyBzcGVjKTtcblxuICAvLyAyMDExIChJRSAxMClcbiAgLW1zLWZsZXgtYWxpZ246ICRhbHQtdmFsdWU7XG59XG5cbi8vIDIwMTEgLSBmbGV4LWl0ZW0tYWxpZ24gKGF1dG8gfCBzdGFydCB8IGVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaClcbi8vIDIwMTIgLSBhbGlnbi1zZWxmIChhdXRvIHwgZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoKVxuQG1peGluIGFsaWduLXNlbGYoJHZhbHVlOiBhdXRvKSB7XG5cbiAgJHZhbHVlLTIwMTE6ICR2YWx1ZTtcbiAgQGlmICR2YWx1ZSA9PSBcImZsZXgtc3RhcnRcIiB7XG4gICAgJHZhbHVlLTIwMTE6IHN0YXJ0O1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcImZsZXgtZW5kXCIge1xuICAgICR2YWx1ZS0yMDExOiBlbmQ7XG4gIH1cblxuICAvLyAyMDEyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFsaWduLXNlbGYsICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcblxuICAvLyAyMDExIChJRSAxMClcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogJHZhbHVlLTIwMTE7XG59XG5cbi8vIDIwMTEgLSBmbGV4LWxpbmUtcGFjayAoc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBqdXN0aWZ5IHwgZGlzdHJpYnV0ZSB8IHN0cmV0Y2gpXG4vLyAyMDEyIC0gYWxpZ24tY29udGVudCAoZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2gpXG5AbWl4aW4gYWxpZ24tY29udGVudCgkdmFsdWU6IHN0cmV0Y2gpIHtcblxuICAkdmFsdWUtMjAxMTogJHZhbHVlO1xuICBAaWYgJHZhbHVlID09IFwiZmxleC1zdGFydFwiIHtcbiAgICAkdmFsdWUtMjAxMTogc3RhcnQ7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiZmxleC1lbmRcIiB7XG4gICAgJHZhbHVlLTIwMTE6IGVuZDtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJzcGFjZS1iZXR3ZWVuXCIge1xuICAgICR2YWx1ZS0yMDExOiBqdXN0aWZ5O1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcInNwYWNlLWFyb3VuZFwiIHtcbiAgICAkdmFsdWUtMjAxMTogZGlzdHJpYnV0ZTtcbiAgfVxuXG4gIC8vIDIwMTJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYWxpZ24tY29udGVudCwgJHZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xuXG4gIC8vIDIwMTEgKElFIDEwKVxuICAtbXMtZmxleC1saW5lLXBhY2s6ICR2YWx1ZS0yMDExO1xufVxuIiwiQG1peGluIGZvbnQtZmFjZShcbiAgJGZvbnQtZmFtaWx5LFxuICAkZmlsZS1wYXRoLFxuICAkd2VpZ2h0OiBub3JtYWwsXG4gICRzdHlsZTogbm9ybWFsLFxuICAkYXNzZXQtcGlwZWxpbmU6ICRhc3NldC1waXBlbGluZSxcbiAgJGZpbGUtZm9ybWF0czogZW90IHdvZmYyIHdvZmYgdHRmIHN2Zykge1xuXG4gICRmb250LXVybC1wcmVmaXg6IGZvbnQtdXJsLXByZWZpeGVyKCRhc3NldC1waXBlbGluZSk7XG5cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBzcmM6IGZvbnQtc291cmNlLWRlY2xhcmF0aW9uKFxuICAgICAgJGZvbnQtZmFtaWx5LFxuICAgICAgJGZpbGUtcGF0aCxcbiAgICAgICRhc3NldC1waXBlbGluZSxcbiAgICAgICRmaWxlLWZvcm1hdHMsXG4gICAgICAkZm9udC11cmwtcHJlZml4XG4gICAgKTtcbiAgfVxufVxuIiwiQG1peGluIGZvbnQtZmVhdHVyZS1zZXR0aW5ncygkc2V0dGluZ3MuLi4pIHtcbiAgQGlmIGxlbmd0aCgkc2V0dGluZ3MpID09IDAgeyAkc2V0dGluZ3M6IG5vbmU7IH1cbiAgQGluY2x1ZGUgcHJlZml4ZXIoZm9udC1mZWF0dXJlLXNldHRpbmdzLCAkc2V0dGluZ3MsIHdlYmtpdCBtb3ogbXMgc3BlYyk7XG59XG4iLCIvLyBIaURQSSBtaXhpbi4gRGVmYXVsdCB2YWx1ZSBzZXQgdG8gMS4zIHRvIHRhcmdldCBHb29nbGUgTmV4dXMgNyAoaHR0cDovL2JqYW5nby5jb20vYXJ0aWNsZXMvbWluLWRldmljZS1waXhlbC1yYXRpby8pXG5AbWl4aW4gaGlkcGkoJHJhdGlvOiAxLjMpIHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAkcmF0aW8pLFxuICBvbmx5IHNjcmVlbiBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogJHJhdGlvKSxcbiAgb25seSBzY3JlZW4gYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAjeyRyYXRpb30vMSksXG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IHJvdW5kKCRyYXRpbyAqIDk2ZHBpKSksXG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246ICRyYXRpbyAqIDFkcHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIkBtaXhpbiBoeXBoZW5zKCRoeXBoZW5hdGlvbjogbm9uZSkge1xuICAvLyBub25lIHwgbWFudWFsIHwgYXV0b1xuICBAaW5jbHVkZSBwcmVmaXhlcihoeXBoZW5zLCAkaHlwaGVuYXRpb24sIHdlYmtpdCBtb3ogbXMgc3BlYyk7XG59XG4iLCJAbWl4aW4gaW1hZ2UtcmVuZGVyaW5nICgkbW9kZTphdXRvKSB7XG5cbiAgQGlmICgkbW9kZSA9PSBjcmlzcC1lZGdlcykge1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IG5lYXJlc3QtbmVpZ2hib3I7IC8vIElFOCtcbiAgICBpbWFnZS1yZW5kZXJpbmc6IC1tb3otY3Jpc3AtZWRnZXM7XG4gICAgaW1hZ2UtcmVuZGVyaW5nOiAtby1jcmlzcC1lZGdlcztcbiAgICBpbWFnZS1yZW5kZXJpbmc6IC13ZWJraXQtb3B0aW1pemUtY29udHJhc3Q7XG4gICAgaW1hZ2UtcmVuZGVyaW5nOiBjcmlzcC1lZGdlcztcbiAgfVxuXG4gIEBlbHNlIHtcbiAgICBpbWFnZS1yZW5kZXJpbmc6ICRtb2RlO1xuICB9XG59XG4iLCIvLyBBZGRzIGtleWZyYW1lcyBibG9ja3MgZm9yIHN1cHBvcnRlZCBwcmVmaXhlcywgcmVtb3ZpbmcgcmVkdW5kYW50IHByZWZpeGVzIGluIHRoZSBibG9jaydzIGNvbnRlbnRcbkBtaXhpbiBrZXlmcmFtZXMoJG5hbWUpIHtcbiAgJG9yaWdpbmFsLXByZWZpeC1mb3Itd2Via2l0OiAgICAkcHJlZml4LWZvci13ZWJraXQ7XG4gICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1vemlsbGE6ICAgJHByZWZpeC1mb3ItbW96aWxsYTtcbiAgJG9yaWdpbmFsLXByZWZpeC1mb3ItbWljcm9zb2Z0OiAkcHJlZml4LWZvci1taWNyb3NvZnQ7XG4gICRvcmlnaW5hbC1wcmVmaXgtZm9yLW9wZXJhOiAgICAgJHByZWZpeC1mb3Itb3BlcmE7XG4gICRvcmlnaW5hbC1wcmVmaXgtZm9yLXNwZWM6ICAgICAgJHByZWZpeC1mb3Itc3BlYztcblxuICBAaWYgJG9yaWdpbmFsLXByZWZpeC1mb3Itd2Via2l0IHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLXByZWZpeC1mb3ItYWxsKCk7XG4gICAgJHByZWZpeC1mb3Itd2Via2l0OiB0cnVlICFnbG9iYWw7XG4gICAgQC13ZWJraXQta2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkb3JpZ2luYWwtcHJlZml4LWZvci1tb3ppbGxhIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLXByZWZpeC1mb3ItYWxsKCk7XG4gICAgJHByZWZpeC1mb3ItbW96aWxsYTogdHJ1ZSAhZ2xvYmFsO1xuICAgIEAtbW96LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICAkcHJlZml4LWZvci13ZWJraXQ6ICAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLXdlYmtpdCAgICAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1tb3ppbGxhOiAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1vemlsbGEgICAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1taWNyb3NvZnQ6ICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1pY3Jvc29mdCAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1vcGVyYTogICAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLW9wZXJhICAgICAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1zcGVjOiAgICAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLXNwZWMgICAgICAhZ2xvYmFsO1xuXG4gIEBpZiAkb3JpZ2luYWwtcHJlZml4LWZvci1zcGVjIHtcbiAgICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGxpbmVhci1ncmFkaWVudCgkcG9zLCAkZzEsICRnMjogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgJGczOiBudWxsLCAkZzQ6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRnNTogbnVsbCwgJGc2OiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkZzc6IG51bGwsICRnODogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgJGc5OiBudWxsLCAkZzEwOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkZmFsbGJhY2s6IG51bGwpIHtcbiAgLy8gRGV0ZWN0IHdoYXQgdHlwZSBvZiB2YWx1ZSBleGlzdHMgaW4gJHBvc1xuICAkcG9zLXR5cGU6IHR5cGUtb2YobnRoKCRwb3MsIDEpKTtcbiAgJHBvcy1zcGVjOiBudWxsO1xuICAkcG9zLWRlZ3JlZTogbnVsbDtcblxuICAvLyBJZiAkcG9zIGlzIG1pc3NpbmcgZnJvbSBtaXhpbiwgcmVhc3NpZ24gdmFycyBhbmQgYWRkIGRlZmF1bHQgcG9zaXRpb25cbiAgQGlmICgkcG9zLXR5cGUgPT0gY29sb3IpIG9yIChudGgoJHBvcywgMSkgPT0gXCJ0cmFuc3BhcmVudFwiKSAge1xuICAgICRnMTA6ICRnOTsgJGc5OiAkZzg7ICRnODogJGc3OyAkZzc6ICRnNjsgJGc2OiAkZzU7XG4gICAgJGc1OiAkZzQ7ICRnNDogJGczOyAkZzM6ICRnMjsgJGcyOiAkZzE7ICRnMTogJHBvcztcbiAgICAkcG9zOiBudWxsO1xuICB9XG5cbiAgQGlmICRwb3Mge1xuICAgICRwb3NpdGlvbnM6IF9saW5lYXItcG9zaXRpb25zLXBhcnNlcigkcG9zKTtcbiAgICAkcG9zLWRlZ3JlZTogbnRoKCRwb3NpdGlvbnMsIDEpO1xuICAgICRwb3Mtc3BlYzogICBudGgoJHBvc2l0aW9ucywgMik7XG4gIH1cblxuICAkZnVsbDogJGcxLCAkZzIsICRnMywgJGc0LCAkZzUsICRnNiwgJGc3LCAkZzgsICRnOSwgJGcxMDtcblxuICAvLyBTZXQgJGcxIGFzIHRoZSBkZWZhdWx0IGZhbGxiYWNrIGNvbG9yXG4gICRmYWxsYmFjay1jb2xvcjogbnRoKCRnMSwgMSk7XG5cbiAgLy8gSWYgJGZhbGxiYWNrIGlzIGEgY29sb3IgdXNlIHRoYXQgY29sb3IgYXMgdGhlIGZhbGxiYWNrIGNvbG9yXG4gIEBpZiAodHlwZS1vZigkZmFsbGJhY2spID09IGNvbG9yKSBvciAoJGZhbGxiYWNrID09IFwidHJhbnNwYXJlbnRcIikge1xuICAgICRmYWxsYmFjay1jb2xvcjogJGZhbGxiYWNrO1xuICB9XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGZhbGxiYWNrLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkcG9zLWRlZ3JlZSAkZnVsbCk7IC8vIFNhZmFyaSA1LjErLCBDaHJvbWVcbiAgYmFja2dyb3VuZC1pbWFnZTogdW5xdW90ZShcImxpbmVhci1ncmFkaWVudCgjeyRwb3Mtc3BlY30jeyRmdWxsfSlcIik7XG59XG4iLCJAbWl4aW4gcGVyc3BlY3RpdmUoJGRlcHRoOiBub25lKSB7XG4gIC8vIG5vbmUgfCA8bGVuZ3RoPlxuICBAaW5jbHVkZSBwcmVmaXhlcihwZXJzcGVjdGl2ZSwgJGRlcHRoLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gcGVyc3BlY3RpdmUtb3JpZ2luKCR2YWx1ZTogNTAlIDUwJSkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihwZXJzcGVjdGl2ZS1vcmlnaW4sICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcbn1cbiIsIkBtaXhpbiBwbGFjZWhvbGRlciB7XG4gICRwbGFjZWhvbGRlcnM6IFwiOi13ZWJraXQtaW5wdXRcIiBcIjotbW96XCIgXCItbW96XCIgXCItbXMtaW5wdXRcIjtcbiAgQGVhY2ggJHBsYWNlaG9sZGVyIGluICRwbGFjZWhvbGRlcnMge1xuICAgICY6I3skcGxhY2Vob2xkZXJ9LXBsYWNlaG9sZGVyIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmVxdWlyZXMgU2FzcyAzLjErXG5AbWl4aW4gcmFkaWFsLWdyYWRpZW50KCRnMSwgJGcyLFxuICAgICAgICAgICAgICAgICAgICAgICAkZzM6IG51bGwsICRnNDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgJGc1OiBudWxsLCAkZzY6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRnNzogbnVsbCwgJGc4OiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkZzk6IG51bGwsICRnMTA6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRwb3M6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRzaGFwZS1zaXplOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkZmFsbGJhY2s6IG51bGwpIHtcblxuICAkZGF0YTogX3JhZGlhbC1hcmctcGFyc2VyKCRnMSwgJGcyLCAkcG9zLCAkc2hhcGUtc2l6ZSk7XG4gICRnMTogIG50aCgkZGF0YSwgMSk7XG4gICRnMjogIG50aCgkZGF0YSwgMik7XG4gICRwb3M6IG50aCgkZGF0YSwgMyk7XG4gICRzaGFwZS1zaXplOiBudGgoJGRhdGEsIDQpO1xuXG4gICRmdWxsOiAkZzEsICRnMiwgJGczLCAkZzQsICRnNSwgJGc2LCAkZzcsICRnOCwgJGc5LCAkZzEwO1xuXG4gIC8vIFN0cmlwIGRlcHJlY2F0ZWQgY292ZXIvY29udGFpbiBmb3Igc3BlY1xuICAkc2hhcGUtc2l6ZS1zcGVjOiBfc2hhcGUtc2l6ZS1zdHJpcHBlcigkc2hhcGUtc2l6ZSk7XG5cbiAgLy8gU2V0ICRnMSBhcyB0aGUgZGVmYXVsdCBmYWxsYmFjayBjb2xvclxuICAkZmlyc3QtY29sb3I6IG50aCgkZnVsbCwgMSk7XG4gICRmYWxsYmFjay1jb2xvcjogbnRoKCRmaXJzdC1jb2xvciwgMSk7XG5cbiAgQGlmICh0eXBlLW9mKCRmYWxsYmFjaykgPT0gY29sb3IpIG9yICgkZmFsbGJhY2sgPT0gXCJ0cmFuc3BhcmVudFwiKSB7XG4gICAgJGZhbGxiYWNrLWNvbG9yOiAkZmFsbGJhY2s7XG4gIH1cblxuICAvLyBBZGQgQ29tbWFzIGFuZCBzcGFjZXNcbiAgJHNoYXBlLXNpemU6IGlmKCRzaGFwZS1zaXplLCBcIiN7JHNoYXBlLXNpemV9LCBcIiwgbnVsbCk7XG4gICRwb3M6ICAgICAgICBpZigkcG9zLCBcIiN7JHBvc30sIFwiLCBudWxsKTtcbiAgJHBvcy1zcGVjOiAgIGlmKCRwb3MsIFwiYXQgI3skcG9zfVwiLCBudWxsKTtcbiAgJHNoYXBlLXNpemUtc3BlYzogaWYoKCRzaGFwZS1zaXplLXNwZWMgIT0gXCIgXCIpIGFuZCAoJHBvcyA9PSBudWxsKSwgXCIjeyRzaGFwZS1zaXplLXNwZWN9LCBcIiwgXCIjeyRzaGFwZS1zaXplLXNwZWN9IFwiKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAgJGZhbGxiYWNrLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudCgjeyRwb3N9I3skc2hhcGUtc2l6ZX0jeyRmdWxsfSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudCgjeyRzaGFwZS1zaXplLXNwZWN9I3skcG9zLXNwZWN9I3skZnVsbH0pO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIE91dHB1dHMgdGhlIHNwZWMgYW5kIHByZWZpeGVkIHZlcnNpb25zIG9mIHRoZSBgOjpzZWxlY3Rpb25gIHBzZXVkby1lbGVtZW50LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7Qm9vbH0gJGN1cnJlbnQtc2VsZWN0b3IgW2ZhbHNlXVxyXG4vLy8gICBJZiBzZXQgdG8gYHRydWVgLCBpdCB0YWtlcyB0aGUgY3VycmVudCBlbGVtZW50IGludG8gY29uc2lkZXJhdGlvbi5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIHNlbGVjdGlvbih0cnVlKSB7XHJcbi8vLyAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiYjUyO1xyXG4vLy8gICAgIH1cclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQ6Oi1tb3otc2VsZWN0aW9uIHtcclxuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiYjUyO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICAuZWxlbWVudDo6c2VsZWN0aW9uIHtcclxuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiYjUyO1xyXG4vLy8gICB9XHJcblxyXG5AbWl4aW4gc2VsZWN0aW9uKCRjdXJyZW50LXNlbGVjdG9yOiBmYWxzZSkge1xyXG4gIEBpZiAkY3VycmVudC1zZWxlY3RvciB7XHJcbiAgICAmOjotbW96LXNlbGVjdGlvbiB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG5cclxuICAgICY6OnNlbGVjdGlvbiB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgOjotbW96LXNlbGVjdGlvbiB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG5cclxuICAgIDo6c2VsZWN0aW9uIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBtaXhpbiB0ZXh0LWRlY29yYXRpb24oJHZhbHVlKSB7XG4vLyA8dGV4dC1kZWNvcmF0aW9uLWxpbmU+IHx8IDx0ZXh0LWRlY29yYXRpb24tc3R5bGU+IHx8IDx0ZXh0LWRlY29yYXRpb24tY29sb3I+XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRleHQtZGVjb3JhdGlvbiwgJHZhbHVlLCBtb3opO1xufVxuXG5AbWl4aW4gdGV4dC1kZWNvcmF0aW9uLWxpbmUoJGxpbmU6IG5vbmUpIHtcbi8vIG5vbmUgfHwgdW5kZXJsaW5lIHx8IG92ZXJsaW5lIHx8IGxpbmUtdGhyb3VnaFxuICBAaW5jbHVkZSBwcmVmaXhlcih0ZXh0LWRlY29yYXRpb24tbGluZSwgJGxpbmUsIG1veik7XG59XG5cbkBtaXhpbiB0ZXh0LWRlY29yYXRpb24tc3R5bGUoJHN0eWxlOiBzb2xpZCkge1xuLy8gc29saWQgfHwgZG91YmxlIHx8IGRvdHRlZCB8fCBkYXNoZWQgfHwgd2F2eVxuICBAaW5jbHVkZSBwcmVmaXhlcih0ZXh0LWRlY29yYXRpb24tc3R5bGUsICRzdHlsZSwgbW96IHdlYmtpdCk7XG59XG5cbkBtaXhpbiB0ZXh0LWRlY29yYXRpb24tY29sb3IoJGNvbG9yOiBjdXJyZW50Q29sb3IpIHtcbi8vIGN1cnJlbnRDb2xvciB8fCA8Y29sb3I+XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRleHQtZGVjb3JhdGlvbi1jb2xvciwgJGNvbG9yLCBtb3opO1xufVxuIiwiQG1peGluIHRyYW5zZm9ybSgkcHJvcGVydHk6IG5vbmUpIHtcbiAgLy8gbm9uZSB8IDx0cmFuc2Zvcm0tZnVuY3Rpb24+XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zZm9ybSwgJHByb3BlcnR5LCB3ZWJraXQgbW96IG1zIG8gc3BlYyk7XG59XG5cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRheGVzOiA1MCUpIHtcbiAgLy8geC1heGlzIC0gbGVmdCB8IGNlbnRlciB8IHJpZ2h0ICB8IGxlbmd0aCB8ICVcbiAgLy8geS1heGlzIC0gdG9wICB8IGNlbnRlciB8IGJvdHRvbSB8IGxlbmd0aCB8ICVcbiAgLy8gei1heGlzIC0gICAgICAgICAgICAgICAgICAgICAgICAgIGxlbmd0aFxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0tb3JpZ2luLCAkYXhlcywgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xufVxuXG5AbWl4aW4gdHJhbnNmb3JtLXN0eWxlKCRzdHlsZTogZmxhdCkge1xuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0tc3R5bGUsICRzdHlsZSwgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xufVxuIiwiLy8gU2hvcnRoYW5kIG1peGluLiBTdXBwb3J0cyBtdWx0aXBsZSBwYXJlbnRoZXNlcy1kZWxpbWluYXRlZCB2YWx1ZXMgZm9yIGVhY2ggdmFyaWFibGUuXG4vLyBFeGFtcGxlOiBAaW5jbHVkZSB0cmFuc2l0aW9uIChhbGwgMnMgZWFzZS1pbi1vdXQpO1xuLy8gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiAob3BhY2l0eSAxcyBlYXNlLWluIDJzLCB3aWR0aCAycyBlYXNlLW91dCk7XG4vLyAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5ICh0cmFuc2Zvcm0sIG9wYWNpdHkpO1xuXG5AbWl4aW4gdHJhbnNpdGlvbigkcHJvcGVydGllcy4uLikge1xuICAvLyBGaXggZm9yIHZlbmRvci1wcmVmaXggdHJhbnNmb3JtIHByb3BlcnR5XG4gICRuZWVkcy1wcmVmaXhlczogZmFsc2U7XG4gICR3ZWJraXQ6ICgpO1xuICAkbW96OiAoKTtcbiAgJHNwZWM6ICgpO1xuXG4gIC8vIENyZWF0ZSBsaXN0cyBmb3IgdmVuZG9yLXByZWZpeGVkIHRyYW5zZm9ybVxuICBAZWFjaCAkbGlzdCBpbiAkcHJvcGVydGllcyB7XG4gICAgQGlmIG50aCgkbGlzdCwgMSkgPT0gXCJ0cmFuc2Zvcm1cIiB7XG4gICAgICAkbmVlZHMtcHJlZml4ZXM6IHRydWU7XG4gICAgICAkbGlzdDE6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAgICAgJGxpc3QyOiAtbW96LXRyYW5zZm9ybTtcbiAgICAgICRsaXN0MzogKCk7XG5cbiAgICAgIEBlYWNoICR2YXIgaW4gJGxpc3Qge1xuICAgICAgICAkbGlzdDM6IGpvaW4oJGxpc3QzLCAkdmFyKTtcblxuICAgICAgICBAaWYgJHZhciAhPSBcInRyYW5zZm9ybVwiIHtcbiAgICAgICAgICAkbGlzdDE6IGpvaW4oJGxpc3QxLCAkdmFyKTtcbiAgICAgICAgICAkbGlzdDI6IGpvaW4oJGxpc3QyLCAkdmFyKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAkd2Via2l0OiBhcHBlbmQoJHdlYmtpdCwgJGxpc3QxKTtcbiAgICAgICRtb3o6ICAgIGFwcGVuZCgkbW96LCAgICAkbGlzdDIpO1xuICAgICAgJHNwZWM6ICAgYXBwZW5kKCRzcGVjLCAgICRsaXN0Myk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkd2Via2l0OiBhcHBlbmQoJHdlYmtpdCwgJGxpc3QsIGNvbW1hKTtcbiAgICAgICRtb3o6ICAgIGFwcGVuZCgkbW96LCAgICAkbGlzdCwgY29tbWEpO1xuICAgICAgJHNwZWM6ICAgYXBwZW5kKCRzcGVjLCAgICRsaXN0LCBjb21tYSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICRuZWVkcy1wcmVmaXhlcyB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkd2Via2l0O1xuICAgICAgIC1tb3otdHJhbnNpdGlvbjogJG1vejtcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICRzcGVjO1xuICB9IEBlbHNlIHtcbiAgICBAaWYgbGVuZ3RoKCRwcm9wZXJ0aWVzKSA+PSAxIHtcbiAgICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24sICRwcm9wZXJ0aWVzLCB3ZWJraXQgbW96IHNwZWMpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHByb3BlcnRpZXM6IGFsbCAwLjE1cyBlYXNlLW91dCAwcztcbiAgICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24sICRwcm9wZXJ0aWVzLCB3ZWJraXQgbW96IHNwZWMpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkcHJvcGVydGllcy4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BlcnRpZXMsIFwid2Via2l0XCIpO1xuICAgICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BlcnRpZXMsIFwibW96XCIpO1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BlcnRpZXMsIGZhbHNlKTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24tZHVyYXRpb24oJHRpbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tZHVyYXRpb24sICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCRtb3Rpb25zLi4uKSB7XG4gIC8vIGVhc2UgfCBsaW5lYXIgfCBlYXNlLWluIHwgZWFzZS1vdXQgfCBlYXNlLWluLW91dCB8IGN1YmljLWJlemllcigpXG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCAkbW90aW9ucywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRpbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tZGVsYXksICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cbiIsIkBtaXhpbiB1c2VyLXNlbGVjdCgkdmFsdWU6IG5vbmUpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIodXNlci1zZWxlY3QsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBzcGVjKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYGJvcmRlci1jb2xvcmAgb24gc3BlY2lmaWMgc2lkZXMgb2YgYSBib3guIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGEgc2lkZS5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJHZhbHNcbi8vLyAgIExpc3Qgb2YgYXJndW1lbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLWNvbG9yKCNhNjBiNTUgIzc2Y2Q5YyBudWxsICNlOGFlMWEpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBib3JkZXItbGVmdC1jb2xvcjogI2U4YWUxYTtcbi8vLyAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjNzZjZDljO1xuLy8vICAgICBib3JkZXItdG9wLWNvbG9yOiAjYTYwYjU1O1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge21peGlufSBkaXJlY3Rpb25hbC1wcm9wZXJ0eVxuLy8vXG4vLy8gQG91dHB1dCBgYm9yZGVyLWNvbG9yYFxuXG5AbWl4aW4gYm9yZGVyLWNvbG9yKCR2YWxzLi4uKSB7XG4gIEBpbmNsdWRlIGRpcmVjdGlvbmFsLXByb3BlcnR5KGJvcmRlciwgY29sb3IsICR2YWxzLi4uKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYGJvcmRlci1yYWRpdXNgIG9uIGJvdGggY29ybmVycyBvbiB0aGUgc2lkZSBvZiBhIGJveC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcmFkaWlcbi8vLyAgIExpc3Qgb2YgYXJndW1lbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50LW9uZSB7XG4vLy8gICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDVweCk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC5lbGVtZW50LXR3byB7XG4vLy8gICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygzcHgpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQtb25lIHtcbi8vLyAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xuLy8vICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNXB4O1xuLy8vICAgfVxuLy8vXG4vLy8gICAuZWxlbWVudC10d28ge1xuLy8vICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAzcHg7XG4vLy8gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDNweDtcbi8vLyAgIH1cbi8vL1xuLy8vIEBvdXRwdXQgYGJvcmRlci1yYWRpdXNgXG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaWkpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGlpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGlpO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaWkpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpaTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpaTtcbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpaSkge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaWk7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaWk7XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGlpKSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpaTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGlpO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUHJvdmlkZXMgYSBxdWljayBtZXRob2QgZm9yIHRhcmdldGluZyBgYm9yZGVyLXN0eWxlYCBvbiBzcGVjaWZpYyBzaWRlcyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkdmFsc1xuLy8vICAgTGlzdCBvZiBhcmd1bWVudHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBib3JkZXItc3R5bGUoZGFzaGVkIG51bGwgc29saWQpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbi8vLyAgICAgYm9yZGVyLXRvcC1zdHlsZTogZGFzaGVkO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge21peGlufSBkaXJlY3Rpb25hbC1wcm9wZXJ0eVxuLy8vXG4vLy8gQG91dHB1dCBgYm9yZGVyLXN0eWxlYFxuXG5AbWl4aW4gYm9yZGVyLXN0eWxlKCR2YWxzLi4uKSB7XG4gIEBpbmNsdWRlIGRpcmVjdGlvbmFsLXByb3BlcnR5KGJvcmRlciwgc3R5bGUsICR2YWxzLi4uKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYGJvcmRlci13aWR0aGAgb24gc3BlY2lmaWMgc2lkZXMgb2YgYSBib3guIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGEgc2lkZS5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJHZhbHNcbi8vLyAgIExpc3Qgb2YgYXJndW1lbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLXdpZHRoKDFlbSBudWxsIDIwcHgpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAyMHB4O1xuLy8vICAgICBib3JkZXItdG9wLXdpZHRoOiAxZW07XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSB7bWl4aW59IGRpcmVjdGlvbmFsLXByb3BlcnR5XG4vLy9cbi8vLyBAb3V0cHV0IGBib3JkZXItd2lkdGhgXG5cbkBtaXhpbiBib3JkZXItd2lkdGgoJHZhbHMuLi4pIHtcbiAgQGluY2x1ZGUgZGlyZWN0aW9uYWwtcHJvcGVydHkoYm9yZGVyLCB3aWR0aCwgJHZhbHMuLi4pO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gR2VuZXJhdGVzIHZhcmlhYmxlcyBmb3IgYWxsIGJ1dHRvbnMuIFBsZWFzZSBub3RlIHRoYXQgeW91IG11c3QgdXNlIGludGVycG9sYXRpb24gb24gdGhlIHZhcmlhYmxlOiBgI3skYWxsLWJ1dHRvbnN9YC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgI3skYWxsLWJ1dHRvbnN9IHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgI3skYWxsLWJ1dHRvbnMtZm9jdXN9LFxuLy8vICAgI3skYWxsLWJ1dHRvbnMtaG92ZXJ9IHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBmMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgI3skYWxsLWJ1dHRvbnMtYWN0aXZlfSB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGY7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICBidXR0b24sXG4vLy8gICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmMDA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIGJ1dHRvbjpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJidXR0b25cIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwicmVzZXRcIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmZvY3VzLFxuLy8vICAgYnV0dG9uOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJyZXNldFwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGYwO1xuLy8vICAgfVxuLy8vXG4vLy8gICBidXR0b246YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwicmVzZXRcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTphY3RpdmUge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBmO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUgYXNzaWduLWlucHV0c1xuLy8vXG4vLy8gQHR5cGUgTGlzdFxuLy8vXG4vLy8gQHRvZG8gUmVtb3ZlIGRvdWJsZSBhc3NpZ25lZCB2YXJpYWJsZXMgKExpbmVzIDU54oCTNjIpIGluIHY1LjAuMFxuXG4kYnV0dG9ucy1saXN0OiAnYnV0dG9uJyxcbiAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiYnV0dG9uXCJdJyxcbiAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwicmVzZXRcIl0nLFxuICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJzdWJtaXRcIl0nO1xuXG4kYWxsLWJ1dHRvbnM6ICAgICAgICBhc3NpZ24taW5wdXRzKCRidXR0b25zLWxpc3QpO1xuJGFsbC1idXR0b25zLWFjdGl2ZTogYXNzaWduLWlucHV0cygkYnV0dG9ucy1saXN0LCBhY3RpdmUpO1xuJGFsbC1idXR0b25zLWZvY3VzOiAgYXNzaWduLWlucHV0cygkYnV0dG9ucy1saXN0LCBmb2N1cyk7XG4kYWxsLWJ1dHRvbnMtaG92ZXI6ICBhc3NpZ24taW5wdXRzKCRidXR0b25zLWxpc3QsIGhvdmVyKTtcblxuJGFsbC1idXR0b24taW5wdXRzOiAgICAgICAgJGFsbC1idXR0b25zO1xuJGFsbC1idXR0b24taW5wdXRzLWFjdGl2ZTogJGFsbC1idXR0b25zLWFjdGl2ZTtcbiRhbGwtYnV0dG9uLWlucHV0cy1mb2N1czogICRhbGwtYnV0dG9ucy1mb2N1cztcbiRhbGwtYnV0dG9uLWlucHV0cy1ob3ZlcjogICRhbGwtYnV0dG9ucy1ob3ZlcjtcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGFuIGVhc3kgd2F5IHRvIGluY2x1ZGUgYSBjbGVhcmZpeCBmb3IgY29udGFpbmluZyBmbG9hdHMuXG4vLy9cbi8vLyBAbGluayBodHRwOi8vY3NzbW9qby5jb20vbGF0ZXN0X25ld19jbGVhcmZpeF9zb19mYXIvXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudDo6YWZ0ZXIge1xuLy8vICAgICBjbGVhcjogYm90aDtcbi8vLyAgICAgY29udGVudDogXCJcIjtcbi8vLyAgICAgZGlzcGxheTogdGFibGU7XG4vLy8gICB9XG5cbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBUcnVuY2F0ZXMgdGV4dCBhbmQgYWRkcyBhbiBlbGxpcHNpcyB0byByZXByZXNlbnQgb3ZlcmZsb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsxMDAlXVxuLy8vICAgTWF4LXdpZHRoIGZvciB0aGUgc3RyaW5nIHRvIHJlc3BlY3QgYmVmb3JlIGJlaW5nIHRydW5jYXRlZFxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIGVsbGlwc2lzO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLy8gICAgIG1heC13aWR0aDogMTAwJTtcbi8vLyAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbi8vLyAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4vLy8gICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4vLy8gICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuLy8vICAgfVxuXG5AbWl4aW4gZWxsaXBzaXMoJHdpZHRoOiAxMDAlKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEdlb3JnaWEgZm9udCBzdGFjay5cbi8vL1xuLy8vIEB0eXBlIExpc3RcblxuJGdlb3JnaWE6IFwiR2VvcmdpYVwiLCBcIkNhbWJyaWFcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgXCJUaW1lc1wiLCBzZXJpZjtcblxuLy8vIEhlbHZldGljYSBmb250IHN0YWNrLlxuLy8vXG4vLy8gQHR5cGUgTGlzdFxuXG4kaGVsdmV0aWNhOiBcIkhlbHZldGljYSBOZXVlXCIsIFwiSGVsdmV0aWNhXCIsIFwiUm9ib3RvXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcblxuLy8vIEx1Y2lkYSBHcmFuZGUgZm9udCBzdGFjay5cbi8vL1xuLy8vIEB0eXBlIExpc3RcblxuJGx1Y2lkYS1ncmFuZGU6IFwiTHVjaWRhIEdyYW5kZVwiLCBcIlRhaG9tYVwiLCBcIlZlcmRhbmFcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuXG4vLy8gTW9ub3NwYWNlIGZvbnQgc3RhY2suXG4vLy9cbi8vLyBAdHlwZSBMaXN0XG5cbiRtb25vc3BhY2U6IFwiQml0c3RyZWFtIFZlcmEgU2FucyBNb25vXCIsIFwiQ29uc29sYXNcIiwgXCJDb3VyaWVyXCIsIG1vbm9zcGFjZTtcblxuLy8vIFZlcmRhbmEgZm9udCBzdGFjay5cbi8vL1xuLy8vIEB0eXBlIExpc3RcblxuJHZlcmRhbmE6IFwiVmVyZGFuYVwiLCBcIkdlbmV2YVwiLCBzYW5zLXNlcmlmO1xuIiwiLy8vIEhpZGVzIHRoZSB0ZXh0IGluIGFuIGVsZW1lbnQsIGNvbW1vbmx5IHVzZWQgdG8gc2hvdyBhbiBpbWFnZS4gU29tZSBlbGVtZW50cyB3aWxsIG5lZWQgYmxvY2stbGV2ZWwgc3R5bGVzIGFwcGxpZWQuXG4vLy9cbi8vLyBAbGluayBodHRwOi8vemVsZG1hbi5jb20vMjAxMi8wMy8wMS9yZXBsYWNpbmctdGhlLTk5OTlweC1oYWNrLW5ldy1pbWFnZS1yZXBsYWNlbWVudFxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIGhpZGUtdGV4dDtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbi8vLyAgICAgdGV4dC1pbmRlbnQ6IDEwMSU7XG4vLy8gICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4vLy8gICB9XG4vLy9cbi8vLyBAdG9kbyBSZW1vdmUgaGVpZ2h0IGFyZ3VtZW50IGluIHY1LjAuMFxuXG5AbWl4aW4gaGlkZS10ZXh0KCRoZWlnaHQ6IG51bGwpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1pbmRlbnQ6IDEwMSU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGlmICRoZWlnaHQge1xuICAgIEB3YXJuIFwiVGhlIGBoaWRlLXRleHRgIG1peGluIGhhcyBjaGFuZ2VkIGFuZCBubyBsb25nZXIgcmVxdWlyZXMgYSBoZWlnaHQuIFRoZSBoZWlnaHQgYXJndW1lbnQgd2lsbCBubyBsb25nZXIgYmUgYWNjZXB0ZWQgaW4gdjUuMC4wXCI7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYG1hcmdpbmAgb24gc3BlY2lmaWMgc2lkZXMgb2YgYSBib3guIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGEgc2lkZS5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJHZhbHNcbi8vLyAgIExpc3Qgb2YgYXJndW1lbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgbWFyZ2luKG51bGwgMTBweCAzZW0gMjB2aCk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbi1ib3R0b206IDNlbTtcbi8vLyAgICAgbWFyZ2luLWxlZnQ6IDIwdmg7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogMTBweDtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHttaXhpbn0gZGlyZWN0aW9uYWwtcHJvcGVydHlcbi8vL1xuLy8vIEBvdXRwdXQgYG1hcmdpbmBcblxuQG1peGluIG1hcmdpbigkdmFscy4uLikge1xuICBAaW5jbHVkZSBkaXJlY3Rpb25hbC1wcm9wZXJ0eShtYXJnaW4sIGZhbHNlLCAkdmFscy4uLik7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhIHF1aWNrIG1ldGhvZCBmb3IgdGFyZ2V0aW5nIGBwYWRkaW5nYCBvbiBzcGVjaWZpYyBzaWRlcyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkdmFsc1xuLy8vICAgTGlzdCBvZiBhcmd1bWVudHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBwYWRkaW5nKDEydmggbnVsbCAxMHB4IDUlKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4vLy8gICAgIHBhZGRpbmctbGVmdDogNSU7XG4vLy8gICAgIHBhZGRpbmctdG9wOiAxMnZoO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge21peGlufSBkaXJlY3Rpb25hbC1wcm9wZXJ0eVxuLy8vXG4vLy8gQG91dHB1dCBgcGFkZGluZ2BcblxuQG1peGluIHBhZGRpbmcoJHZhbHMuLi4pIHtcbiAgQGluY2x1ZGUgZGlyZWN0aW9uYWwtcHJvcGVydHkocGFkZGluZywgZmFsc2UsICR2YWxzLi4uKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciBzZXR0aW5nIGFuIGVsZW1lbnTigJlzIHBvc2l0aW9uLiBVc2UgYSBgbnVsbGAgdmFsdWUgdG8g4oCcc2tpcOKAnSBhIHNpZGUuXG4vLy9cbi8vLyBAcGFyYW0ge1Bvc2l0aW9ufSAkcG9zaXRpb24gW3JlbGF0aXZlXVxuLy8vICAgQSBDU1MgcG9zaXRpb24gdmFsdWVcbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJGNvb3JkaW5hdGVzIFtudWxsIG51bGwgbnVsbCBudWxsXVxuLy8vICAgTGlzdCBvZiB2YWx1ZXMgdGhhdCBjb3JyZXNwb25kIHRvIHRoZSA0LXZhbHVlIHN5bnRheCBmb3IgdGhlIGVkZ2VzIG9mIGEgYm94XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgbnVsbCBudWxsIDEwZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBsZWZ0OiAxMGVtO1xuLy8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLy8gICAgIHRvcDogMDtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gaXMtbGVuZ3RoXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSB1bnBhY2tcblxuQG1peGluIHBvc2l0aW9uKCRwb3NpdGlvbjogcmVsYXRpdmUsICRjb29yZGluYXRlczogbnVsbCBudWxsIG51bGwgbnVsbCkge1xuICBAaWYgdHlwZS1vZigkcG9zaXRpb24pID09IGxpc3Qge1xuICAgICRjb29yZGluYXRlczogJHBvc2l0aW9uO1xuICAgICRwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAkY29vcmRpbmF0ZXM6IHVucGFjaygkY29vcmRpbmF0ZXMpO1xuXG4gICRvZmZzZXRzOiAoXG4gICAgdG9wOiAgICBudGgoJGNvb3JkaW5hdGVzLCAxKSxcbiAgICByaWdodDogIG50aCgkY29vcmRpbmF0ZXMsIDIpLFxuICAgIGJvdHRvbTogbnRoKCRjb29yZGluYXRlcywgMyksXG4gICAgbGVmdDogICBudGgoJGNvb3JkaW5hdGVzLCA0KVxuICApO1xuXG4gIHBvc2l0aW9uOiAkcG9zaXRpb247XG5cbiAgQGVhY2ggJG9mZnNldCwgJHZhbHVlIGluICRvZmZzZXRzIHtcbiAgICBAaWYgaXMtbGVuZ3RoKCR2YWx1ZSkge1xuICAgICAgI3skb2Zmc2V0fTogJHZhbHVlO1xuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gQSBtaXhpbiBmb3IgZ2VuZXJhdGluZyB2ZW5kb3IgcHJlZml4ZXMgb24gbm9uLXN0YW5kYXJkaXplZCBwcm9wZXJ0aWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwcm9wZXJ0eVxuLy8vICAgUHJvcGVydHkgdG8gcHJlZml4XG4vLy9cbi8vLyBAcGFyYW0geyp9ICR2YWx1ZVxuLy8vICAgVmFsdWUgdG8gdXNlXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRwcmVmaXhlc1xuLy8vICAgUHJlZml4ZXMgdG8gZGVmaW5lXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgcHJlZml4ZXIoYm9yZGVyLXJhZGl1cywgMTBweCwgd2Via2l0IG1zIHNwZWMpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4vLy8gICAgIC1tb3otYm9yZGVyLXJhZGl1czogMTBweDtcbi8vLyAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3Itd2Via2l0XG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci1tb3ppbGxhXG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci1taWNyb3NvZnRcbi8vLyBAcmVxdWlyZSB7dmFyaWFibGV9ICRwcmVmaXgtZm9yLW9wZXJhXG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci1zcGVjXG5cbkBtaXhpbiBwcmVmaXhlcigkcHJvcGVydHksICR2YWx1ZSwgJHByZWZpeGVzKSB7XG4gIEBlYWNoICRwcmVmaXggaW4gJHByZWZpeGVzIHtcbiAgICBAaWYgJHByZWZpeCA9PSB3ZWJraXQge1xuICAgICAgQGlmICRwcmVmaXgtZm9yLXdlYmtpdCB7XG4gICAgICAgIC13ZWJraXQtI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiAkcHJlZml4ID09IG1veiB7XG4gICAgICBAaWYgJHByZWZpeC1mb3ItbW96aWxsYSB7XG4gICAgICAgIC1tb3otI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiAkcHJlZml4ID09IG1zIHtcbiAgICAgIEBpZiAkcHJlZml4LWZvci1taWNyb3NvZnQge1xuICAgICAgICAtbXMtI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiAkcHJlZml4ID09IG8ge1xuICAgICAgQGlmICRwcmVmaXgtZm9yLW9wZXJhIHtcbiAgICAgICAgLW8tI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiAkcHJlZml4ID09IHNwZWMge1xuICAgICAgQGlmICRwcmVmaXgtZm9yLXNwZWMge1xuICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlICB7XG4gICAgICBAd2FybiBcIlVucmVjb2duaXplZCBwcmVmaXg6ICN7JHByZWZpeH1cIjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGRpc2FibGUtcHJlZml4LWZvci1hbGwoKSB7XG4gICRwcmVmaXgtZm9yLXdlYmtpdDogICAgZmFsc2UgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3ItbW96aWxsYTogICBmYWxzZSAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1taWNyb3NvZnQ6IGZhbHNlICFnbG9iYWw7XG4gICRwcmVmaXgtZm9yLW9wZXJhOiAgICAgZmFsc2UgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3Itc3BlYzogICAgICBmYWxzZSAhZ2xvYmFsO1xufVxuIiwiQG1peGluIHJldGluYS1pbWFnZSgkZmlsZW5hbWUsICRiYWNrZ3JvdW5kLXNpemUsICRleHRlbnNpb246IHBuZywgJHJldGluYS1maWxlbmFtZTogbnVsbCwgJHJldGluYS1zdWZmaXg6IF8yeCwgJGFzc2V0LXBpcGVsaW5lOiAkYXNzZXQtcGlwZWxpbmUpIHtcbiAgQGlmICRhc3NldC1waXBlbGluZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UtdXJsKFwiI3skZmlsZW5hbWV9LiN7JGV4dGVuc2lvbn1cIik7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICAgICAgIHVybChcIiN7JGZpbGVuYW1lfS4jeyRleHRlbnNpb259XCIpO1xuICB9XG5cbiAgQGluY2x1ZGUgaGlkcGkge1xuICAgIEBpZiAkYXNzZXQtcGlwZWxpbmUge1xuICAgICAgQGlmICRyZXRpbmEtZmlsZW5hbWUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBpbWFnZS11cmwoXCIjeyRyZXRpbmEtZmlsZW5hbWV9LiN7JGV4dGVuc2lvbn1cIik7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UtdXJsKFwiI3skZmlsZW5hbWV9I3skcmV0aW5hLXN1ZmZpeH0uI3skZXh0ZW5zaW9ufVwiKTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBpZiAkcmV0aW5hLWZpbGVuYW1lIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skcmV0aW5hLWZpbGVuYW1lfS4jeyRleHRlbnNpb259XCIpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGZpbGVuYW1lfSN7JHJldGluYS1zdWZmaXh9LiN7JGV4dGVuc2lvbn1cIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYmFja2dyb3VuZC1zaXplOiAkYmFja2dyb3VuZC1zaXplO1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBTZXRzIHRoZSBgd2lkdGhgIGFuZCBgaGVpZ2h0YCBvZiB0aGUgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHNpemVcbi8vLyAgIEEgbGlzdCBvZiBhdCBtb3N0IDIgc2l6ZSB2YWx1ZXMuXG4vLy9cbi8vLyAgIElmIHRoZXJlIGlzIG9ubHkgYSBzaW5nbGUgdmFsdWUgaW4gYCRzaXplYCBpdCBpcyB1c2VkIGZvciBib3RoIHdpZHRoIGFuZCBoZWlnaHQuIEFsbCB1bml0cyBhcmUgc3VwcG9ydGVkLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZmlyc3QtZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHNpemUoMmVtKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLnNlY29uZC1lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgc2l6ZShhdXRvIDEwZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmZpcnN0LWVsZW1lbnQge1xuLy8vICAgICB3aWR0aDogMmVtO1xuLy8vICAgICBoZWlnaHQ6IDJlbTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLnNlY29uZC1lbGVtZW50IHtcbi8vLyAgICAgd2lkdGg6IGF1dG87XG4vLy8gICAgIGhlaWdodDogMTBlbTtcbi8vLyAgIH1cbi8vL1xuLy8vIEB0b2RvIFJlZmFjdG9yIGluIDUuMC4wIHRvIHVzZSBhIGNvbW1hLXNlcGFyYXRlZCBhcmd1bWVudFxuXG5AbWl4aW4gc2l6ZSgkdmFsdWUpIHtcbiAgJHdpZHRoOiBudGgoJHZhbHVlLCAxKTtcbiAgJGhlaWdodDogJHdpZHRoO1xuXG4gIEBpZiBsZW5ndGgoJHZhbHVlKSA+IDEge1xuICAgICRoZWlnaHQ6IG50aCgkdmFsdWUsIDIpO1xuICB9XG5cbiAgQGlmIGlzLXNpemUoJGhlaWdodCkge1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJgI3skaGVpZ2h0fWAgaXMgbm90IGEgdmFsaWQgbGVuZ3RoIGZvciB0aGUgYCRoZWlnaHRgIHBhcmFtZXRlciBpbiB0aGUgYHNpemVgIG1peGluLlwiO1xuICB9XG5cbiAgQGlmIGlzLXNpemUoJHdpZHRoKSB7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJgI3skd2lkdGh9YCBpcyBub3QgYSB2YWxpZCBsZW5ndGggZm9yIHRoZSBgJHdpZHRoYCBwYXJhbWV0ZXIgaW4gdGhlIGBzaXplYCBtaXhpbi5cIjtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gR2VuZXJhdGVzIHZhcmlhYmxlcyBmb3IgYWxsIHRleHQtYmFzZWQgaW5wdXRzLiBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IHVzZSBpbnRlcnBvbGF0aW9uIG9uIHRoZSB2YXJpYWJsZTogYCN7JGFsbC10ZXh0LWlucHV0c31gLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHN9IHtcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgI2YwMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgI3skYWxsLXRleHQtaW5wdXRzLWZvY3VzfSxcbi8vLyAgICN7JGFsbC10ZXh0LWlucHV0cy1ob3Zlcn0ge1xuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGYwO1xuLy8vICAgfVxuLy8vXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtYWN0aXZlfSB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMGY7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICBpbnB1dFt0eXBlPVwiY29sb3JcIl0sXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJtb250aFwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4vLy8gICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4vLy8gICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cInRlbFwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4vLy8gICBpbnB1dFt0eXBlPVwidXJsXCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cIndlZWtcIl0sXG4vLy8gICB0ZXh0YXJlYSB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMDA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIGlucHV0W3R5cGU9XCJjb2xvclwiXTpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwidGltZVwiXTpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwid2Vla1wiXTpmb2N1cyxcbi8vLyAgIHRleHRhcmVhOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGVcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwiZW1haWxcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwibW9udGhcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZWxcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwidGV4dFwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cInVybFwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmhvdmVyLFxuLy8vICAgdGV4dGFyZWE6aG92ZXIge1xuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGYwO1xuLy8vICAgfVxuLy8vXG4vLy8gICBpbnB1dFt0eXBlPVwiY29sb3JcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGVcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdOmFjdGl2ZSxcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwiZW1haWxcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmFjdGl2ZSxcbi8vLyAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmFjdGl2ZSxcbi8vLyAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cInRlbFwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwidGV4dFwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwidGltZVwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwidXJsXCJdOmFjdGl2ZSxcbi8vLyAgIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmFjdGl2ZSxcbi8vLyAgIHRleHRhcmVhOmFjdGl2ZSB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMGY7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSBhc3NpZ24taW5wdXRzXG4vLy9cbi8vLyBAdHlwZSBMaXN0XG5cbiR0ZXh0LWlucHV0cy1saXN0OiAnaW5wdXRbdHlwZT1cImNvbG9yXCJdJyxcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cImRhdGVcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiZW1haWxcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwibW9udGhcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwibnVtYmVyXCJdJyxcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdJyxcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInNlYXJjaFwiXScsXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ0ZWxcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwidGV4dFwiXScsXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ0aW1lXCJdJyxcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInVybFwiXScsXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ3ZWVrXCJdJyxcbiAgICAgICAgICAgICAgICAgICAnaW5wdXQ6bm90KFt0eXBlXSknLFxuICAgICAgICAgICAgICAgICAgICd0ZXh0YXJlYSc7XG5cbiRhbGwtdGV4dC1pbnB1dHM6ICAgICAgICBhc3NpZ24taW5wdXRzKCR0ZXh0LWlucHV0cy1saXN0KTtcbiRhbGwtdGV4dC1pbnB1dHMtYWN0aXZlOiBhc3NpZ24taW5wdXRzKCR0ZXh0LWlucHV0cy1saXN0LCBhY3RpdmUpO1xuJGFsbC10ZXh0LWlucHV0cy1mb2N1czogIGFzc2lnbi1pbnB1dHMoJHRleHQtaW5wdXRzLWxpc3QsIGZvY3VzKTtcbiRhbGwtdGV4dC1pbnB1dHMtaG92ZXI6ICBhc3NpZ24taW5wdXRzKCR0ZXh0LWlucHV0cy1saXN0LCBob3Zlcik7XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBDU1MgY3ViaWMtYmV6aWVyIHRpbWluZyBmdW5jdGlvbnMuIFRpbWluZyBmdW5jdGlvbnMgY291cnRlc3kgb2YganF1ZXJ5LmVhc2llIChnaXRodWIuY29tL2phdWtpYS9lYXNpZSlcbi8vL1xuLy8vIFRpbWluZyBmdW5jdGlvbnMgYXJlIHRoZSBzYW1lIGFzIGRlbW9lZCBoZXJlOiBodHRwOi8vanF1ZXJ5dWkuY29tL3Jlc291cmNlcy9kZW1vcy9lZmZlY3QvZWFzaW5nLmh0bWxcbi8vL1xuLy8vIEB0eXBlIGN1YmljLWJlemllclxuXG4kZWFzZS1pbi1xdWFkOiAgICAgIGN1YmljLWJlemllcigwLjU1MCwgIDAuMDg1LCAwLjY4MCwgMC41MzApO1xuJGVhc2UtaW4tY3ViaWM6ICAgICBjdWJpYy1iZXppZXIoMC41NTAsICAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiRlYXNlLWluLXF1YXJ0OiAgICAgY3ViaWMtYmV6aWVyKDAuODk1LCAgMC4wMzAsIDAuNjg1LCAwLjIyMCk7XG4kZWFzZS1pbi1xdWludDogICAgIGN1YmljLWJlemllcigwLjc1NSwgIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xuJGVhc2UtaW4tc2luZTogICAgICBjdWJpYy1iZXppZXIoMC40NzAsICAwLjAwMCwgMC43NDUsIDAuNzE1KTtcbiRlYXNlLWluLWV4cG86ICAgICAgY3ViaWMtYmV6aWVyKDAuOTUwLCAgMC4wNTAsIDAuNzk1LCAwLjAzNSk7XG4kZWFzZS1pbi1jaXJjOiAgICAgIGN1YmljLWJlemllcigwLjYwMCwgIDAuMDQwLCAwLjk4MCwgMC4zMzUpO1xuJGVhc2UtaW4tYmFjazogICAgICBjdWJpYy1iZXppZXIoMC42MDAsIC0wLjI4MCwgMC43MzUsIDAuMDQ1KTtcblxuJGVhc2Utb3V0LXF1YWQ6ICAgICBjdWJpYy1iZXppZXIoMC4yNTAsICAwLjQ2MCwgMC40NTAsIDAuOTQwKTtcbiRlYXNlLW91dC1jdWJpYzogICAgY3ViaWMtYmV6aWVyKDAuMjE1LCAgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4kZWFzZS1vdXQtcXVhcnQ6ICAgIGN1YmljLWJlemllcigwLjE2NSwgIDAuODQwLCAwLjQ0MCwgMS4wMDApO1xuJGVhc2Utb3V0LXF1aW50OiAgICBjdWJpYy1iZXppZXIoMC4yMzAsICAxLjAwMCwgMC4zMjAsIDEuMDAwKTtcbiRlYXNlLW91dC1zaW5lOiAgICAgY3ViaWMtYmV6aWVyKDAuMzkwLCAgMC41NzUsIDAuNTY1LCAxLjAwMCk7XG4kZWFzZS1vdXQtZXhwbzogICAgIGN1YmljLWJlemllcigwLjE5MCwgIDEuMDAwLCAwLjIyMCwgMS4wMDApO1xuJGVhc2Utb3V0LWNpcmM6ICAgICBjdWJpYy1iZXppZXIoMC4wNzUsICAwLjgyMCwgMC4xNjUsIDEuMDAwKTtcbiRlYXNlLW91dC1iYWNrOiAgICAgY3ViaWMtYmV6aWVyKDAuMTc1LCAgMC44ODUsIDAuMzIwLCAxLjI3NSk7XG5cbiRlYXNlLWluLW91dC1xdWFkOiAgY3ViaWMtYmV6aWVyKDAuNDU1LCAgMC4wMzAsIDAuNTE1LCAwLjk1NSk7XG4kZWFzZS1pbi1vdXQtY3ViaWM6IGN1YmljLWJlemllcigwLjY0NSwgIDAuMDQ1LCAwLjM1NSwgMS4wMDApO1xuJGVhc2UtaW4tb3V0LXF1YXJ0OiBjdWJpYy1iZXppZXIoMC43NzAsICAwLjAwMCwgMC4xNzUsIDEuMDAwKTtcbiRlYXNlLWluLW91dC1xdWludDogY3ViaWMtYmV6aWVyKDAuODYwLCAgMC4wMDAsIDAuMDcwLCAxLjAwMCk7XG4kZWFzZS1pbi1vdXQtc2luZTogIGN1YmljLWJlemllcigwLjQ0NSwgIDAuMDUwLCAwLjU1MCwgMC45NTApO1xuJGVhc2UtaW4tb3V0LWV4cG86ICBjdWJpYy1iZXppZXIoMS4wMDAsICAwLjAwMCwgMC4wMDAsIDEuMDAwKTtcbiRlYXNlLWluLW91dC1jaXJjOiAgY3ViaWMtYmV6aWVyKDAuNzg1LCAgMC4xMzUsIDAuMTUwLCAwLjg2MCk7XG4kZWFzZS1pbi1vdXQtYmFjazogIGN1YmljLWJlemllcigwLjY4MCwgLTAuNTUwLCAwLjI2NSwgMS41NTApO1xuIiwiQG1peGluIHRyaWFuZ2xlKCRzaXplLCAkY29sb3IsICRkaXJlY3Rpb24pIHtcbiAgJHdpZHRoOiBudGgoJHNpemUsIDEpO1xuICAkaGVpZ2h0OiBudGgoJHNpemUsIGxlbmd0aCgkc2l6ZSkpO1xuICAkZm9yZWdyb3VuZC1jb2xvcjogbnRoKCRjb2xvciwgMSk7XG4gICRiYWNrZ3JvdW5kLWNvbG9yOiBpZihsZW5ndGgoJGNvbG9yKSA9PSAyLCBudGgoJGNvbG9yLCAyKSwgdHJhbnNwYXJlbnQpO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuXG4gIEBpZiAoJGRpcmVjdGlvbiA9PSB1cCkgb3IgKCRkaXJlY3Rpb24gPT0gZG93bikgb3IgKCRkaXJlY3Rpb24gPT0gcmlnaHQpIG9yICgkZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICAkd2lkdGg6ICR3aWR0aCAvIDI7XG4gICAgJGhlaWdodDogaWYobGVuZ3RoKCRzaXplKSA+IDEsICRoZWlnaHQsICRoZWlnaHQvMik7XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICBib3JkZXItYm90dG9tOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgICAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgICBib3JkZXItbGVmdDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgICBib3JkZXItdG9wOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICAgIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci1yaWdodDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICB9XG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gdXAtcmlnaHQpIG9yICgkZGlyZWN0aW9uID09IHVwLWxlZnQpIHtcbiAgICBib3JkZXItdG9wOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gdXAtcmlnaHQge1xuICAgICAgYm9yZGVyLWxlZnQ6ICAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwLWxlZnQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgfVxuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGRvd24tcmlnaHQpIG9yICgkZGlyZWN0aW9uID09IGRvd24tbGVmdCkge1xuICAgIGJvcmRlci1ib3R0b206ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duLXJpZ2h0IHtcbiAgICAgIGJvcmRlci1sZWZ0OiAgJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBkb3duLWxlZnQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgfVxuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGluc2V0LXVwKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvciAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogJGhlaWdodCAkd2lkdGg7XG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gaW5zZXQtZG93bikge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcmVncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6ICRoZWlnaHQgJHdpZHRoO1xuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGluc2V0LXJpZ2h0KSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvciAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogJHdpZHRoICRoZWlnaHQ7XG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gaW5zZXQtbGVmdCkge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtY29sb3IgJGZvcmVncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6ICR3aWR0aCAkaGVpZ2h0O1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhbiBlYXN5IHdheSB0byBjaGFuZ2UgdGhlIGB3b3JkLXdyYXBgIHByb3BlcnR5LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR3cmFwIFticmVhay13b3JkXVxuLy8vICAgVmFsdWUgZm9yIHRoZSBgd29yZC1icmVha2AgcHJvcGVydHkuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC53cmFwcGVyIHtcbi8vLyAgICAgQGluY2x1ZGUgd29yZC13cmFwKGJyZWFrLXdvcmQpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLndyYXBwZXIge1xuLy8vICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuLy8vICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4vLy8gICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbi8vLyAgIH1cblxuQG1peGluIHdvcmQtd3JhcCgkd3JhcDogYnJlYWstd29yZCkge1xuICBvdmVyZmxvdy13cmFwOiAkd3JhcDtcbiAgd29yZC13cmFwOiAkd3JhcDtcblxuICBAaWYgJHdyYXAgPT0gYnJlYWstd29yZCB7XG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICB9IEBlbHNlIHtcbiAgICB3b3JkLWJyZWFrOiAkd3JhcDtcbiAgfVxufVxuIiwiLy8gVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBoYXZlIGJlZW4gZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IE1BSk9SIHZlcnNpb24gcmVsZWFzZVxuXG5AbWl4aW4gaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIEB3YXJuIFwiVGhlIGlubGluZS1ibG9jayBtaXhpbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiByZWxlYXNlXCI7XG59XG5cbkBtaXhpbiBidXR0b24gKCRzdHlsZTogc2ltcGxlLCAkYmFzZS1jb2xvcjogIzQyOTRmMCwgJHRleHQtc2l6ZTogaW5oZXJpdCwgJHBhZGRpbmc6IDdweCAxOHB4KSB7XG5cbiAgQGlmIHR5cGUtb2YoJHN0eWxlKSA9PSBzdHJpbmcgYW5kIHR5cGUtb2YoJGJhc2UtY29sb3IpID09IGNvbG9yIHtcbiAgICBAaW5jbHVkZSBidXR0b25zdHlsZSgkc3R5bGUsICRiYXNlLWNvbG9yLCAkdGV4dC1zaXplLCAkcGFkZGluZyk7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IHN0cmluZyBhbmQgdHlwZS1vZigkYmFzZS1jb2xvcikgPT0gbnVtYmVyIHtcbiAgICAkcGFkZGluZzogJHRleHQtc2l6ZTtcbiAgICAkdGV4dC1zaXplOiAkYmFzZS1jb2xvcjtcbiAgICAkYmFzZS1jb2xvcjogIzQyOTRmMDtcblxuICAgIEBpZiAkcGFkZGluZyA9PSBpbmhlcml0IHtcbiAgICAgICRwYWRkaW5nOiA3cHggMThweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBidXR0b25zdHlsZSgkc3R5bGUsICRiYXNlLWNvbG9yLCAkdGV4dC1zaXplLCAkcGFkZGluZyk7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IGNvbG9yIGFuZCB0eXBlLW9mKCRiYXNlLWNvbG9yKSA9PSBjb2xvciB7XG4gICAgJGJhc2UtY29sb3I6ICRzdHlsZTtcbiAgICAkc3R5bGU6IHNpbXBsZTtcbiAgICBAaW5jbHVkZSBidXR0b25zdHlsZSgkc3R5bGUsICRiYXNlLWNvbG9yLCAkdGV4dC1zaXplLCAkcGFkZGluZyk7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IGNvbG9yIGFuZCB0eXBlLW9mKCRiYXNlLWNvbG9yKSA9PSBudW1iZXIge1xuICAgICRwYWRkaW5nOiAkdGV4dC1zaXplO1xuICAgICR0ZXh0LXNpemU6ICRiYXNlLWNvbG9yO1xuICAgICRiYXNlLWNvbG9yOiAkc3R5bGU7XG4gICAgJHN0eWxlOiBzaW1wbGU7XG5cbiAgICBAaWYgJHBhZGRpbmcgPT0gaW5oZXJpdCB7XG4gICAgICAkcGFkZGluZzogN3B4IDE4cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnV0dG9uc3R5bGUoJHN0eWxlLCAkYmFzZS1jb2xvciwgJHRleHQtc2l6ZSwgJHBhZGRpbmcpO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHN0eWxlKSA9PSBudW1iZXIge1xuICAgICRwYWRkaW5nOiAkYmFzZS1jb2xvcjtcbiAgICAkdGV4dC1zaXplOiAkc3R5bGU7XG4gICAgJGJhc2UtY29sb3I6ICM0Mjk0ZjA7XG4gICAgJHN0eWxlOiBzaW1wbGU7XG5cbiAgICBAaWYgJHBhZGRpbmcgPT0gIzQyOTRmMCB7XG4gICAgICAkcGFkZGluZzogN3B4IDE4cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnV0dG9uc3R5bGUoJHN0eWxlLCAkYmFzZS1jb2xvciwgJHRleHQtc2l6ZSwgJHBhZGRpbmcpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAwLjU7XG4gIH1cblxuICBAd2FybiBcIlRoZSBidXR0b24gbWl4aW4gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZVwiO1xufVxuXG4vLyBTZWxlY3RvciBTdHlsZSBCdXR0b25cbkBtaXhpbiBidXR0b25zdHlsZSgkdHlwZSwgJGItY29sb3IsICR0LXNpemUsICRwYWQpIHtcbiAgLy8gR3JheXNjYWxlIGJ1dHRvblxuICBAaWYgJHR5cGUgPT0gc2ltcGxlIGFuZCAkYi1jb2xvciA9PSBncmF5c2NhbGUoJGItY29sb3IpIHtcbiAgICBAaW5jbHVkZSBzaW1wbGUoJGItY29sb3IsIHRydWUsICR0LXNpemUsICRwYWQpO1xuICB9XG5cbiAgQGlmICR0eXBlID09IHNoaW55IGFuZCAkYi1jb2xvciA9PSBncmF5c2NhbGUoJGItY29sb3IpIHtcbiAgICBAaW5jbHVkZSBzaGlueSgkYi1jb2xvciwgdHJ1ZSwgJHQtc2l6ZSwgJHBhZCk7XG4gIH1cblxuICBAaWYgJHR5cGUgPT0gcGlsbCBhbmQgJGItY29sb3IgPT0gZ3JheXNjYWxlKCRiLWNvbG9yKSB7XG4gICAgQGluY2x1ZGUgcGlsbCgkYi1jb2xvciwgdHJ1ZSwgJHQtc2l6ZSwgJHBhZCk7XG4gIH1cblxuICBAaWYgJHR5cGUgPT0gZmxhdCBhbmQgJGItY29sb3IgPT0gZ3JheXNjYWxlKCRiLWNvbG9yKSB7XG4gICAgQGluY2x1ZGUgZmxhdCgkYi1jb2xvciwgdHJ1ZSwgJHQtc2l6ZSwgJHBhZCk7XG4gIH1cblxuICAvLyBDb2xvcmVkIGJ1dHRvblxuICBAaWYgJHR5cGUgPT0gc2ltcGxlIHtcbiAgICBAaW5jbHVkZSBzaW1wbGUoJGItY29sb3IsIGZhbHNlLCAkdC1zaXplLCAkcGFkKTtcbiAgfVxuXG4gIEBlbHNlIGlmICR0eXBlID09IHNoaW55IHtcbiAgICBAaW5jbHVkZSBzaGlueSgkYi1jb2xvciwgZmFsc2UsICR0LXNpemUsICRwYWQpO1xuICB9XG5cbiAgQGVsc2UgaWYgJHR5cGUgPT0gcGlsbCB7XG4gICAgQGluY2x1ZGUgcGlsbCgkYi1jb2xvciwgZmFsc2UsICR0LXNpemUsICRwYWQpO1xuICB9XG5cbiAgQGVsc2UgaWYgJHR5cGUgPT0gZmxhdCB7XG4gICAgQGluY2x1ZGUgZmxhdCgkYi1jb2xvciwgZmFsc2UsICR0LXNpemUsICRwYWQpO1xuICB9XG59XG5cbi8vIFNpbXBsZSBCdXR0b25cbkBtaXhpbiBzaW1wbGUoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IGZhbHNlLCAkdGV4dHNpemU6IGluaGVyaXQsICRwYWRkaW5nOiA3cHggMThweCkge1xuICAkY29sb3I6ICAgICAgICAgaHNsKDAsIDAsIDEwMCUpO1xuICAkYm9yZGVyOiAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogIDklLCAgJGxpZ2h0bmVzczogLTE0JSk7XG4gICRpbnNldC1zaGFkb3c6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAtOCUsICAkbGlnaHRuZXNzOiAgMTUlKTtcbiAgJHN0b3AtZ3JhZGllbnQ6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246ICA5JSwgICRsaWdodG5lc3M6IC0xMSUpO1xuICAkdGV4dC1zaGFkb3c6ICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogIDE1JSwgJGxpZ2h0bmVzczogLTE4JSk7XG5cbiAgQGlmIGlzLWxpZ2h0KCRiYXNlLWNvbG9yKSB7XG4gICAgJGNvbG9yOiAgICAgICBoc2woMCwgMCwgMjAlKTtcbiAgICAkdGV4dC1zaGFkb3c6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDEwJSwgJGxpZ2h0bmVzczogNCUpO1xuICB9XG5cbiAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XG4gICAgJGJvcmRlcjogICAgICAgIGdyYXlzY2FsZSgkYm9yZGVyKTtcbiAgICAkaW5zZXQtc2hhZG93OiAgZ3JheXNjYWxlKCRpbnNldC1zaGFkb3cpO1xuICAgICRzdG9wLWdyYWRpZW50OiBncmF5c2NhbGUoJHN0b3AtZ3JhZGllbnQpO1xuICAgICR0ZXh0LXNoYWRvdzogICBncmF5c2NhbGUoJHRleHQtc2hhZG93KTtcbiAgfVxuXG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwICRpbnNldC1zaGFkb3c7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAkdGV4dHNpemU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQgKCRiYXNlLWNvbG9yLCAkc3RvcC1ncmFkaWVudCk7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiAwIDFweCAwICR0ZXh0LXNoYWRvdztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcblxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkYmFzZS1jb2xvci1ob3ZlcjogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogLTQlLCAkbGlnaHRuZXNzOiAtNSUpO1xuICAgICRpbnNldC1zaGFkb3ctaG92ZXI6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAtNyUsICRsaWdodG5lc3M6ICA1JSk7XG4gICAgJHN0b3AtZ3JhZGllbnQtaG92ZXI6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246ICA4JSwgJGxpZ2h0bmVzczogLTE0JSk7XG5cbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcbiAgICAgICRiYXNlLWNvbG9yLWhvdmVyOiAgICBncmF5c2NhbGUoJGJhc2UtY29sb3ItaG92ZXIpO1xuICAgICAgJGluc2V0LXNoYWRvdy1ob3ZlcjogIGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWhvdmVyKTtcbiAgICAgICRzdG9wLWdyYWRpZW50LWhvdmVyOiBncmF5c2NhbGUoJHN0b3AtZ3JhZGllbnQtaG92ZXIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCAoJGJhc2UtY29sb3ItaG92ZXIsICRzdG9wLWdyYWRpZW50LWhvdmVyKTtcblxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgMCAkaW5zZXQtc2hhZG93LWhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpLFxuICAmOmZvY3VzOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkYm9yZGVyLWFjdGl2ZTogICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogOSUsICRsaWdodG5lc3M6IC0xNCUpO1xuICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiA3JSwgJGxpZ2h0bmVzczogLTE3JSk7XG5cbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcbiAgICAgICRib3JkZXItYWN0aXZlOiAgICAgICBncmF5c2NhbGUoJGJvcmRlci1hY3RpdmUpO1xuICAgICAgJGluc2V0LXNoYWRvdy1hY3RpdmU6IGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWFjdGl2ZSk7XG4gICAgfVxuXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1hY3RpdmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDhweCA0cHggJGluc2V0LXNoYWRvdy1hY3RpdmUsIGluc2V0IDAgMCA4cHggNHB4ICRpbnNldC1zaGFkb3ctYWN0aXZlO1xuICB9XG59XG5cbi8vIFNoaW55IEJ1dHRvblxuQG1peGluIHNoaW55KCRiYXNlLWNvbG9yLCAkZ3JheXNjYWxlOiBmYWxzZSwgJHRleHRzaXplOiBpbmhlcml0LCAkcGFkZGluZzogN3B4IDE4cHgpIHtcbiAgJGNvbG9yOiAgICAgICAgIGhzbCgwLCAwLCAxMDAlKTtcbiAgJGJvcmRlcjogICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTExNywgJGdyZWVuOiAtMTExLCAkYmx1ZTogLTgxKTtcbiAgJGJvcmRlci1ib3R0b206IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTEyNiwgJGdyZWVuOiAtMTI3LCAkYmx1ZTogLTEyMik7XG4gICRmb3VydGgtc3RvcDogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC03OSwgICRncmVlbjogLTcwLCAgJGJsdWU6IC00Nik7XG4gICRpbnNldC1zaGFkb3c6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6ICAzNywgICRncmVlbjogIDI5LCAgJGJsdWU6ICAxMik7XG4gICRzZWNvbmQtc3RvcDogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC01NiwgICRncmVlbjogLTUwLCAgJGJsdWU6IC0zMyk7XG4gICR0ZXh0LXNoYWRvdzogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC0xNDAsICRncmVlbjogLTE0MSwgJGJsdWU6IC0xMTQpO1xuICAkdGhpcmQtc3RvcDogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtODYsICAkZ3JlZW46IC03NSwgICRibHVlOiAtNDgpO1xuXG4gIEBpZiBpcy1saWdodCgkYmFzZS1jb2xvcikge1xuICAgICRjb2xvcjogICAgICAgaHNsKDAsIDAsIDIwJSk7XG4gICAgJHRleHQtc2hhZG93OiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAxMCUsICRsaWdodG5lc3M6IDQlKTtcbiAgfVxuXG4gIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICRib3JkZXI6ICAgICAgICBncmF5c2NhbGUoJGJvcmRlcik7XG4gICAgJGJvcmRlci1ib3R0b206IGdyYXlzY2FsZSgkYm9yZGVyLWJvdHRvbSk7XG4gICAgJGZvdXJ0aC1zdG9wOiAgIGdyYXlzY2FsZSgkZm91cnRoLXN0b3ApO1xuICAgICRpbnNldC1zaGFkb3c6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdyk7XG4gICAgJHNlY29uZC1zdG9wOiAgIGdyYXlzY2FsZSgkc2Vjb25kLXN0b3ApO1xuICAgICR0ZXh0LXNoYWRvdzogICBncmF5c2NhbGUoJHRleHQtc2hhZG93KTtcbiAgICAkdGhpcmQtc3RvcDogICAgZ3JheXNjYWxlKCR0aGlyZC1zdG9wKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCh0b3AsICRiYXNlLWNvbG9yIDAlLCAkc2Vjb25kLXN0b3AgNTAlLCAkdGhpcmQtc3RvcCA1MCUsICRmb3VydGgtc3RvcCAxMDAlKTtcblxuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1ib3R0b207XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwICRpbnNldC1zaGFkb3c7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAkdGV4dHNpemU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiAwIC0xcHggMXB4ICR0ZXh0LXNoYWRvdztcblxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkZmlyc3Qtc3RvcC1ob3ZlcjogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTEzLCAkZ3JlZW46IC0xNSwgJGJsdWU6IC0xOCk7XG4gICAgJHNlY29uZC1zdG9wLWhvdmVyOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC02NiwgJGdyZWVuOiAtNjIsICRibHVlOiAtNTEpO1xuICAgICR0aGlyZC1zdG9wLWhvdmVyOiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtOTMsICRncmVlbjogLTg1LCAkYmx1ZTogLTY2KTtcbiAgICAkZm91cnRoLXN0b3AtaG92ZXI6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTg2LCAkZ3JlZW46IC04MCwgJGJsdWU6IC02Myk7XG5cbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcbiAgICAgICRmaXJzdC1zdG9wLWhvdmVyOiAgZ3JheXNjYWxlKCRmaXJzdC1zdG9wLWhvdmVyKTtcbiAgICAgICRzZWNvbmQtc3RvcC1ob3ZlcjogZ3JheXNjYWxlKCRzZWNvbmQtc3RvcC1ob3Zlcik7XG4gICAgICAkdGhpcmQtc3RvcC1ob3ZlcjogIGdyYXlzY2FsZSgkdGhpcmQtc3RvcC1ob3Zlcik7XG4gICAgICAkZm91cnRoLXN0b3AtaG92ZXI6IGdyYXlzY2FsZSgkZm91cnRoLXN0b3AtaG92ZXIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCh0b3AsICRmaXJzdC1zdG9wLWhvdmVyICAwJSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2Vjb25kLXN0b3AtaG92ZXIgNTAlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlyZC1zdG9wLWhvdmVyICA1MCUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGZvdXJ0aC1zdG9wLWhvdmVyIDEwMCUpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpLFxuICAmOmZvY3VzOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkaW5zZXQtc2hhZG93LWFjdGl2ZTogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtMTExLCAkZ3JlZW46IC0xMTYsICRibHVlOiAtMTIyKTtcblxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICAgJGluc2V0LXNoYWRvdy1hY3RpdmU6IGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWFjdGl2ZSk7XG4gICAgfVxuXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDIwcHggMCAkaW5zZXQtc2hhZG93LWFjdGl2ZTtcbiAgfVxufVxuXG4vLyBQaWxsIEJ1dHRvblxuQG1peGluIHBpbGwoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IGZhbHNlLCAkdGV4dHNpemU6IGluaGVyaXQsICRwYWRkaW5nOiA3cHggMThweCkge1xuICAkY29sb3I6ICAgICAgICAgaHNsKDAsIDAsIDEwMCUpO1xuICAkYm9yZGVyLWJvdHRvbTogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgOCwgJHNhdHVyYXRpb246IC0xMSUsICRsaWdodG5lc3M6IC0yNiUpO1xuICAkYm9yZGVyLXNpZGVzOiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgNCwgJHNhdHVyYXRpb246IC0yMSUsICRsaWdodG5lc3M6IC0yMSUpO1xuICAkYm9yZGVyLXRvcDogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAtMSwgJHNhdHVyYXRpb246IC0zMCUsICRsaWdodG5lc3M6IC0xNSUpO1xuICAkaW5zZXQtc2hhZG93OiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAtMSwgJHNhdHVyYXRpb246IC0xJSwgICRsaWdodG5lc3M6ICA3JSk7XG4gICRzdG9wLWdyYWRpZW50OiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA4LCAkc2F0dXJhdGlvbjogIDE0JSwgJGxpZ2h0bmVzczogLTEwJSk7XG4gICR0ZXh0LXNoYWRvdzogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA1LCAkc2F0dXJhdGlvbjogLTE5JSwgJGxpZ2h0bmVzczogLTE1JSk7XG5cbiAgQGlmIGlzLWxpZ2h0KCRiYXNlLWNvbG9yKSB7XG4gICAgJGNvbG9yOiAgICAgICBoc2woMCwgMCwgMjAlKTtcbiAgICAkdGV4dC1zaGFkb3c6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDEwJSwgJGxpZ2h0bmVzczogNCUpO1xuICB9XG5cbiAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XG4gICAgJGJvcmRlci1ib3R0b206IGdyYXlzY2FsZSgkYm9yZGVyLWJvdHRvbSk7XG4gICAgJGJvcmRlci1zaWRlczogIGdyYXlzY2FsZSgkYm9yZGVyLXNpZGVzKTtcbiAgICAkYm9yZGVyLXRvcDogICAgZ3JheXNjYWxlKCRib3JkZXItdG9wKTtcbiAgICAkaW5zZXQtc2hhZG93OiAgZ3JheXNjYWxlKCRpbnNldC1zaGFkb3cpO1xuICAgICRzdG9wLWdyYWRpZW50OiBncmF5c2NhbGUoJHN0b3AtZ3JhZGllbnQpO1xuICAgICR0ZXh0LXNoYWRvdzogICBncmF5c2NhbGUoJHRleHQtc2hhZG93KTtcbiAgfVxuXG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItdG9wO1xuICBib3JkZXItY29sb3I6ICRib3JkZXItdG9wICRib3JkZXItc2lkZXMgJGJvcmRlci1ib3R0b207XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgMCAkaW5zZXQtc2hhZG93O1xuICBjb2xvcjogJGNvbG9yO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogJHRleHRzaXplO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50ICgkYmFzZS1jb2xvciwgJHN0b3AtZ3JhZGllbnQpO1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiAwIC0xcHggMXB4ICR0ZXh0LXNoYWRvdztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcblxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkYmFzZS1jb2xvci1ob3ZlcjogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGxpZ2h0bmVzczogLTQuNSUpO1xuICAgICRib3JkZXItYm90dG9tOiAgICAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA4LCAkc2F0dXJhdGlvbjogIDEzLjUlLCAkbGlnaHRuZXNzOiAtMzIlKTtcbiAgICAkYm9yZGVyLXNpZGVzOiAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgNCwgJHNhdHVyYXRpb246IC0yJSwgICAgJGxpZ2h0bmVzczogLTI3JSk7XG4gICAgJGJvcmRlci10b3A6ICAgICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogLTEsICRzYXR1cmF0aW9uOiAtMTclLCAgICRsaWdodG5lc3M6IC0yMSUpO1xuICAgICRpbnNldC1zaGFkb3ctaG92ZXI6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICAgICAgICAgICAkc2F0dXJhdGlvbjogLTElLCAgICAkbGlnaHRuZXNzOiAgMyUpO1xuICAgICRzdG9wLWdyYWRpZW50LWhvdmVyOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA4LCAkc2F0dXJhdGlvbjogLTQlLCAgICAkbGlnaHRuZXNzOiAtMTUuNSUpO1xuICAgICR0ZXh0LXNoYWRvdy1ob3ZlcjogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA1LCAkc2F0dXJhdGlvbjogLTUlLCAgICAkbGlnaHRuZXNzOiAtMjIlKTtcblxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGdyYXlzY2FsZSgkYmFzZS1jb2xvci1ob3Zlcik7XG4gICAgICAkYm9yZGVyLWJvdHRvbTogICAgICAgZ3JheXNjYWxlKCRib3JkZXItYm90dG9tKTtcbiAgICAgICRib3JkZXItc2lkZXM6ICAgICAgICBncmF5c2NhbGUoJGJvcmRlci1zaWRlcyk7XG4gICAgICAkYm9yZGVyLXRvcDogICAgICAgICAgZ3JheXNjYWxlKCRib3JkZXItdG9wKTtcbiAgICAgICRpbnNldC1zaGFkb3ctaG92ZXI6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdy1ob3Zlcik7XG4gICAgICAkc3RvcC1ncmFkaWVudC1ob3ZlcjogZ3JheXNjYWxlKCRzdG9wLWdyYWRpZW50LWhvdmVyKTtcbiAgICAgICR0ZXh0LXNoYWRvdy1ob3ZlcjogICBncmF5c2NhbGUoJHRleHQtc2hhZG93LWhvdmVyKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQgKCRiYXNlLWNvbG9yLWhvdmVyLCAkc3RvcC1ncmFkaWVudC1ob3Zlcik7XG5cbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItdG9wO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci10b3AgJGJvcmRlci1zaWRlcyAkYm9yZGVyLWJvdHRvbTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIDAgJGluc2V0LXNoYWRvdy1ob3ZlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1zaGFkb3c6IDAgLTFweCAxcHggJHRleHQtc2hhZG93LWhvdmVyO1xuICB9XG5cbiAgJjphY3RpdmU6bm90KDpkaXNhYmxlZCksXG4gICY6Zm9jdXM6bm90KDpkaXNhYmxlZCkge1xuICAgICRhY3RpdmUtY29sb3I6ICAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiA0LCAgJHNhdHVyYXRpb246IC0xMiUsICAkbGlnaHRuZXNzOiAtMTAlKTtcbiAgICAkYm9yZGVyLWFjdGl2ZTogICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogNiwgICRzYXR1cmF0aW9uOiAtMi41JSwgJGxpZ2h0bmVzczogLTMwJSk7XG4gICAgJGJvcmRlci1ib3R0b20tYWN0aXZlOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IDExLCAkc2F0dXJhdGlvbjogIDYlLCAgICRsaWdodG5lc3M6IC0zMSUpO1xuICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiA5LCAgJHNhdHVyYXRpb246ICAyJSwgICAkbGlnaHRuZXNzOiAtMjEuNSUpO1xuICAgICR0ZXh0LXNoYWRvdy1hY3RpdmU6ICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiA1LCAgJHNhdHVyYXRpb246IC0xMiUsICAkbGlnaHRuZXNzOiAtMjEuNSUpO1xuXG4gICAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XG4gICAgICAkYWN0aXZlLWNvbG9yOiAgICAgICAgIGdyYXlzY2FsZSgkYWN0aXZlLWNvbG9yKTtcbiAgICAgICRib3JkZXItYWN0aXZlOiAgICAgICAgZ3JheXNjYWxlKCRib3JkZXItYWN0aXZlKTtcbiAgICAgICRib3JkZXItYm90dG9tLWFjdGl2ZTogZ3JheXNjYWxlKCRib3JkZXItYm90dG9tLWFjdGl2ZSk7XG4gICAgICAkaW5zZXQtc2hhZG93LWFjdGl2ZTogIGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWFjdGl2ZSk7XG4gICAgICAkdGV4dC1zaGFkb3ctYWN0aXZlOiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3ctYWN0aXZlKTtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLWNvbG9yO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItYWN0aXZlO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWJvdHRvbS1hY3RpdmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDZweCAzcHggJGluc2V0LXNoYWRvdy1hY3RpdmU7XG4gICAgdGV4dC1zaGFkb3c6IDAgLTFweCAxcHggJHRleHQtc2hhZG93LWFjdGl2ZTtcbiAgfVxufVxuXG4vLyBGbGF0IEJ1dHRvblxuQG1peGluIGZsYXQoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IGZhbHNlLCAkdGV4dHNpemU6IGluaGVyaXQsICRwYWRkaW5nOiA3cHggMThweCkge1xuICAkY29sb3I6ICAgICAgICAgaHNsKDAsIDAsIDEwMCUpO1xuXG4gIEBpZiBpcy1saWdodCgkYmFzZS1jb2xvcikge1xuICAgICRjb2xvcjogICAgICAgaHNsKDAsIDAsIDIwJSk7XG4gIH1cblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZS1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAkdGV4dHNpemU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCl7XG4gICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDQlLCAkbGlnaHRuZXNzOiA1JSk7XG5cbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcbiAgICAgICRiYXNlLWNvbG9yLWhvdmVyOiBncmF5c2NhbGUoJGJhc2UtY29sb3ItaG92ZXIpO1xuICAgIH1cblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlLWNvbG9yLWhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpLFxuICAmOmZvY3VzOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkYmFzZS1jb2xvci1hY3RpdmU6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IC00JSwgJGxpZ2h0bmVzczogLTUlKTtcblxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICAgJGJhc2UtY29sb3ItYWN0aXZlOiBncmF5c2NhbGUoJGJhc2UtY29sb3ItYWN0aXZlKTtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZS1jb2xvci1hY3RpdmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi8vIEZsZXhpYmxlIGdyaWRcbkBmdW5jdGlvbiBmbGV4LWdyaWQoJGNvbHVtbnMsICRjb250YWluZXItY29sdW1uczogJGZnLW1heC1jb2x1bW5zKSB7XG4gICR3aWR0aDogJGNvbHVtbnMgKiAkZmctY29sdW1uICsgKCRjb2x1bW5zIC0gMSkgKiAkZmctZ3V0dGVyO1xuICAkY29udGFpbmVyLXdpZHRoOiAkY29udGFpbmVyLWNvbHVtbnMgKiAkZmctY29sdW1uICsgKCRjb250YWluZXItY29sdW1ucyAtIDEpICogJGZnLWd1dHRlcjtcbiAgQHJldHVybiBwZXJjZW50YWdlKCR3aWR0aCAvICRjb250YWluZXItd2lkdGgpO1xuXG4gIEB3YXJuIFwiVGhlIGZsZXgtZ3JpZCBmdW5jdGlvbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiByZWxlYXNlXCI7XG59XG5cbi8vIEZsZXhpYmxlIGd1dHRlclxuQGZ1bmN0aW9uIGZsZXgtZ3V0dGVyKCRjb250YWluZXItY29sdW1uczogJGZnLW1heC1jb2x1bW5zLCAkZ3V0dGVyOiAkZmctZ3V0dGVyKSB7XG4gICRjb250YWluZXItd2lkdGg6ICRjb250YWluZXItY29sdW1ucyAqICRmZy1jb2x1bW4gKyAoJGNvbnRhaW5lci1jb2x1bW5zIC0gMSkgKiAkZmctZ3V0dGVyO1xuICBAcmV0dXJuIHBlcmNlbnRhZ2UoJGd1dHRlciAvICRjb250YWluZXItd2lkdGgpO1xuXG4gIEB3YXJuIFwiVGhlIGZsZXgtZ3V0dGVyIGZ1bmN0aW9uIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIHJlbGVhc2VcIjtcbn1cblxuQGZ1bmN0aW9uIGdyaWQtd2lkdGgoJG4pIHtcbiAgQHJldHVybiAkbiAqICRndy1jb2x1bW4gKyAoJG4gLSAxKSAqICRndy1ndXR0ZXI7XG5cbiAgQHdhcm4gXCJUaGUgZ3JpZC13aWR0aCBmdW5jdGlvbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiByZWxlYXNlXCI7XG59XG5cbkBmdW5jdGlvbiBnb2xkZW4tcmF0aW8oJHZhbHVlLCAkaW5jcmVtZW50KSB7XG4gIEByZXR1cm4gbW9kdWxhci1zY2FsZSgkaW5jcmVtZW50LCAkdmFsdWUsICRyYXRpbzogJGdvbGRlbik7XG5cbiAgQHdhcm4gXCJUaGUgZ29sZGVuLXJhdGlvIGZ1bmN0aW9uIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIHJlbGVhc2UuIFBsZWFzZSB1c2UgdGhlIG1vZHVsYXItc2NhbGUgZnVuY3Rpb24sIGluc3RlYWQuXCI7XG59XG5cbkBtaXhpbiBib3gtc2l6aW5nKCRib3gpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LXNpemluZywgJGJveCwgd2Via2l0IG1veiBzcGVjKTtcblxuICBAd2FybiBcIlRoZSBib3gtc2l6aW5nIG1peGluIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIHJlbGVhc2UuIFRoaXMgcHJvcGVydHkgY2FuIG5vdyBiZSB1c2VkIHVuLXByZWZpeGVkLlwiO1xufVxuIiwiLypcclxuQ09SRVNcclxuKi9cclxuXHJcblxyXG4vLyBCTFVFXHJcblxyXG4kYmx1ZTogIzAwNDQ3YztcclxuJGJsdWUyOiAjMzM2OTk2O1xyXG4kYmx1ZTM6ICM2NjhmYjA7XHJcbiRibHVlNDojOTliNGNiO1xyXG4kYmx1ZTU6I2U1ZWNmMjtcclxuJGJsdWU2OiAjZjJmNWY4O1xyXG4kYmx1ZTc6IzAwN2RjMDtcclxuJGJsdWU4OiMwMDhlZDQ7XHJcbiRibHVlOTogI2NjZTlmNztcclxuJGJsdWUxMDogIzAwYTZmNztcclxuXHJcbiRwcmltZWlybzogIzA0OGFjYyA7XHJcbiRzZWd1bmRvOiAjMDBhOGRlIDtcclxuJHRlcmNlaXJvOiAjODRjYWVlIDtcclxuXHJcblxyXG5cclxuLy8gR1JFWVxyXG5cclxuJG5vcm1hbGdyZXk6IzRkNGQ0ZDtcclxuJG5vcm1hbGdyZXkyOiM0MzUyNUE7XHJcblxyXG4kbGlnaHRncmV5OiM5YzljOWM7XHJcbiRsaWdodGdyZXkyOiNmYWZhZmE7XHJcblxyXG4vLyBQVVJQTEVcclxuXHJcbiRwdXJwbGU6ICM1NTFjNTA7XHJcblxyXG4vLyBHUkVFTlxyXG5cclxuJGdyZWVuMTogIzM2N2M4NztcclxuJGdyZWVuMjogIzdmYjJiZTtcclxuJGdyZWVuMzogIzAwYTM3ODtcclxuJGdyZWVuNDogIzY2YzhhZjtcclxuXHJcblxyXG4vL1dISVRFXHJcblxyXG4kd2hpdGU6I0ZGRkZGRjtcclxuJHJlZDogcmVkO1xyXG5cclxuJHBldHJvbGVvOiAjMDA2NTdlO1xyXG4iLCJAbWl4aW4gYm94LXNpemluZygkYm94LW1vZGVsKSB7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiAkYm94LW1vZGVsOyAvLyBTYWZhcmkgPD0gNVxyXG4gICAgIC1tb3otYm94LXNpemluZzogJGJveC1tb2RlbDsgLy8gRmlyZWZveCA8PSAxOVxyXG4gICAgICAgICAgYm94LXNpemluZzogJGJveC1tb2RlbDtcclxufVxyXG5cclxuXHJcbi8qXHJcbiMjIyMjIyAgIyMjIyMjIyAjICAgICAjICAgICAjIyMjIyAgIyAgICAgIyAgICAjICAgICMjIyMjIyAgIyMjIyMjIyAjICAgICAjXHJcbiMgICAgICMgIyAgICAgIyAgIyAgICMgICAgICMgICAgICMgIyAgICAgIyAgICMgIyAgICMgICAgICMgIyAgICAgIyAjICAjICAjXHJcbiMgICAgICMgIyAgICAgIyAgICMgIyAgICAgICMgICAgICAgIyAgICAgIyAgIyAgICMgICMgICAgICMgIyAgICAgIyAjICAjICAjXHJcbiMjIyMjIyAgIyAgICAgIyAgICAjICAgICAgICAjIyMjIyAgIyMjIyMjIyAjICAgICAjICMgICAgICMgIyAgICAgIyAjICAjICAjXHJcbiMgICAgICMgIyAgICAgIyAgICMgIyAgICAgICAgICAgICMgIyAgICAgIyAjIyMjIyMjICMgICAgICMgIyAgICAgIyAjICAjICAjXHJcbiMgICAgICMgIyAgICAgIyAgIyAgICMgICAgICMgICAgICMgIyAgICAgIyAjICAgICAjICMgICAgICMgIyAgICAgIyAjICAjICAjXHJcbiMjIyMjIyAgIyMjIyMjIyAjICAgICAjICAgICAjIyMjIyAgIyAgICAgIyAjICAgICAjICMjIyMjIyAgIyMjIyMjIyAgIyMgIyNcclxuKi9cclxuXHJcbkBtaXhpbiBib3gtc2hhZG93KCR0b3AsICRsZWZ0LCAkYmx1ciwgJHNpemUsICRjb2xvciwgJGluc2V0OiBmYWxzZSkge1xyXG4gICAgQGlmICRpbnNldCB7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93Omluc2V0ICR0b3AgJGxlZnQgJGJsdXIgJHNpemUgJGNvbG9yO1xyXG4gICAgICAgIC1tb3otYm94LXNoYWRvdzppbnNldCAkdG9wICRsZWZ0ICRibHVyICRzaXplICRjb2xvcjtcclxuICAgICAgICBib3gtc2hhZG93Omluc2V0ICR0b3AgJGxlZnQgJGJsdXIgJHNpemUgJGNvbG9yO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAkdG9wICRsZWZ0ICRibHVyICRzaXplICRjb2xvcjtcclxuICAgICAgICAtbW96LWJveC1zaGFkb3c6ICR0b3AgJGxlZnQgJGJsdXIgJHNpemUgJGNvbG9yO1xyXG4gICAgICAgIGJveC1zaGFkb3c6ICR0b3AgJGxlZnQgJGJsdXIgJHNpemUgJGNvbG9yO1xyXG4gICAgfVxyXG59XHJcbi8qIEBpbmNsdWRlIGJveC1zaGFkb3coMXB4LDFweCwxcHgsMCwgI2ZmZiwgdHJ1ZSk7ICovXHJcblxyXG4vKlxyXG4jIyMjIyMgICMjIyMjIyMgIyAgICAgIyAjICAgICAjICMjIyMjIyAgIyMjIyMjIyAjIyMjIyNcclxuIyAgICAgIyAjICAgICAjICMgICAgICMgIyMgICAgIyAjICAgICAjICMgICAgICAgIyAgICAgI1xyXG4jICAgICAjICMgICAgICMgIyAgICAgIyAjICMgICAjICMgICAgICMgIyAgICAgICAjICAgICAjXHJcbiMjIyMjIyAgIyAgICAgIyAjICAgICAjICMgICMgICMgIyAgICAgIyAjIyMjIyAgICMgICAgICNcclxuIyAgICMgICAjICAgICAjICMgICAgICMgIyAgICMgIyAjICAgICAjICMgICAgICAgIyAgICAgI1xyXG4jICAgICMgICMgICAgICMgIyAgICAgIyAjICAgICMjICMgICAgICMgIyAgICAgICAjICAgICAjXHJcbiMgICAgICMgIyMjIyMjIyAgIyMjIyMgICMgICAgICMgIyMjIyMjICAjIyMjIyMjICMjIyMjI1xyXG5cclxuKi9cclxuXHJcbkBtaXhpbiByb3VuZGVkKCRyYWRpdXM6IDAuNWVtKSB7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1czogJHJhZGl1cztcclxuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xyXG59XHJcblxyXG4vKlxyXG4jIyMjIyAgIyMjIyMjICAgICAjICAgICMjIyMjIyAgIyMjICMjIyMjIyMgIyAgICAgIyAjIyMjIyMjXHJcbiMgICAgICMgIyAgICAgIyAgICMgIyAgICMgICAgICMgICMgICMgICAgICAgIyMgICAgIyAgICAjXHJcbiMgICAgICAgIyAgICAgIyAgIyAgICMgICMgICAgICMgICMgICMgICAgICAgIyAjICAgIyAgICAjXHJcbiMgICMjIyMgIyMjIyMjICAjICAgICAjICMgICAgICMgICMgICMjIyMjICAgIyAgIyAgIyAgICAjXHJcbiMgICAgICMgIyAgICMgICAjIyMjIyMjICMgICAgICMgICMgICMgICAgICAgIyAgICMgIyAgICAjXHJcbiMgICAgICMgIyAgICAjICAjICAgICAjICMgICAgICMgICMgICMgICAgICAgIyAgICAjIyAgICAjXHJcbiMjIyMjICAjICAgICAjICMgICAgICMgIyMjIyMjICAjIyMgIyMjIyMjIyAjICAgICAjICAgICNcclxuXHJcbiovXHJcblxyXG5AbWl4aW4gZ3JhZGllbnQoJGZyb20sICR0bykge1xyXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20oJGZyb20pLCB0bygkdG8pKTtcclxuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICAkZnJvbSwgJHRvKTtcclxuICBmaWx0ZXI6ICBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3skZnJvbX0nLCBlbmRDb2xvcnN0cj0nI3skdG99Jyk7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gb3BhY2l0eSgkb3BhY2l0eSkge1xyXG4gIG9wYWNpdHk6ICRvcGFjaXR5O1xyXG4gICRvcGFjaXR5LWllOiAkb3BhY2l0eSAqIDEwMDtcclxuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9JG9wYWNpdHktaWUpOyAvL0lFOFxyXG59XHJcbi8vIEBpbmNsdWRlIG9wYWNpdHkoKTtcclxuXHJcbkBtaXhpbiB0aXR1bG9IMiAoJGNvbG9yLCAkZmFtaWx5KXtcclxuICBjb2xvcjokY29sb3I7XHJcbiAgZm9udC1mYW1pbHk6ICRmYW1pbHk7XHJcbn1cclxuXHJcbi8qXHJcbiMgICAgIyAjIyMjIyMjICMgICAgICMgIyMjIyMjIyAjIyMjIyMgICAgICMgICAgIyAgICAgIyAjIyMjIyMjICAjIyMjI1xyXG4jICAgIyAgIyAgICAgICAgIyAgICMgICMgICAgICAgIyAgICAgIyAgICMgIyAgICMjICAgIyMgIyAgICAgICAjICAgICAjXHJcbiMgICMgICAjICAgICAgICAgIyAjICAgIyAgICAgICAjICAgICAjICAjICAgIyAgIyAjICMgIyAjICAgICAgICNcclxuIyMjICAgICMjIyMjICAgICAgIyAgICAjIyMjIyAgICMjIyMjIyAgIyAgICAgIyAjICAjICAjICMjIyMjICAgICMjIyMjXHJcbiMgICMgICAjICAgICAgICAgICMgICAgIyAgICAgICAjICAgIyAgICMjIyMjIyMgIyAgICAgIyAjICAgICAgICAgICAgICNcclxuIyAgICMgICMgICAgICAgICAgIyAgICAjICAgICAgICMgICAgIyAgIyAgICAgIyAjICAgICAjICMgICAgICAgIyAgICAgI1xyXG4jICAgICMgIyMjIyMjIyAgICAjICAgICMgICAgICAgIyAgICAgIyAjICAgICAjICMgICAgICMgIyMjIyMjIyAgIyMjIyNcclxuXHJcbiovXHJcbkBtaXhpbiBrZXlmcmFtZXMoJGFuaW1hdGlvbi1uYW1lKSB7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgI3skYW5pbWF0aW9uLW5hbWV9IHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxuICAgIEAtbW96LWtleWZyYW1lcyAjeyRhbmltYXRpb24tbmFtZX0ge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gICAgQC1tcy1rZXlmcmFtZXMgI3skYW5pbWF0aW9uLW5hbWV9IHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxuICAgIEAtby1rZXlmcmFtZXMgI3skYW5pbWF0aW9uLW5hbWV9IHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxuICAgIEBrZXlmcmFtZXMgI3skYW5pbWF0aW9uLW5hbWV9IHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbigkc3RyKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246ICN7JHN0cn07XHJcbiAgLW1vei1hbmltYXRpb246ICN7JHN0cn07XHJcbiAgLW1zLWFuaW1hdGlvbjogI3skc3RyfTtcclxuICAtby1hbmltYXRpb246ICN7JHN0cn07XHJcbiAgYW5pbWF0aW9uOiAjeyRzdHJ9O1xyXG59XHJcblxyXG5AaW5jbHVkZSBrZXlmcmFtZXMoZmFkZUluKSB7XHJcbiAgMCUgeyBvcGFjaXR5OiAwOyB9XHJcbiAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cclxufVxyXG5cclxuLy9AaW5jbHVkZSBhbmltYXRpb24oJ3NsaWRlLWRvd24gNXMgMycpO1xyXG5cclxuXHJcbi8qXHJcbiMjIyMjIyMgIyMjIyMjICAgICAjICAgICMgICAgICMgICMjIyMjICAjIyMgIyMjIyMjIyAjIyMgIyMjIyMjIyAjICAgICAjICAjIyMjI1xyXG4gICAjICAgICMgICAgICMgICAjICMgICAjIyAgICAjICMgICAgICMgICMgICAgICMgICAgICMgICMgICAgICMgIyMgICAgIyAjICAgICAjXHJcbiAgICMgICAgIyAgICAgIyAgIyAgICMgICMgIyAgICMgIyAgICAgICAgIyAgICAgIyAgICAgIyAgIyAgICAgIyAjICMgICAjICNcclxuICAgIyAgICAjIyMjIyMgICMgICAgICMgIyAgIyAgIyAgIyMjIyMgICAjICAgICAjICAgICAjICAjICAgICAjICMgICMgICMgICMjIyMjXHJcbiAgICMgICAgIyAgICMgICAjIyMjIyMjICMgICAjICMgICAgICAgIyAgIyAgICAgIyAgICAgIyAgIyAgICAgIyAjICAgIyAjICAgICAgICNcclxuICAgIyAgICAjICAgICMgICMgICAgICMgIyAgICAjIyAjICAgICAjICAjICAgICAjICAgICAjICAjICAgICAjICMgICAgIyMgIyAgICAgI1xyXG4gICAjICAgICMgICAgICMgIyAgICAgIyAjICAgICAjICAjIyMjIyAgIyMjICAgICMgICAgIyMjICMjIyMjIyMgIyAgICAgIyAgIyMjIyNcclxuXHJcbiovXHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvbigkYXJncy4uLikge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJGFyZ3M7XHJcbiAgLW1vei10cmFuc2l0aW9uOiAkYXJncztcclxuICAtbXMtdHJhbnNpdGlvbjogJGFyZ3M7XHJcbiAgLW8tdHJhbnNpdGlvbjogJGFyZ3M7XHJcbiAgdHJhbnNpdGlvbjogJGFyZ3M7XHJcbn1cclxuXHJcbi8vQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAuM3MgZWFzZSk7XHJcbi8vQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAuM3MgZWFzZSwgZm9udC1zaXplIC41cyBlYXNlKTtcclxuIiwiQGltcG9ydCBcIl9yZXNwb25zaXZlLW1lZGlhLnNjc3NcIjtcclxuXHJcbi50ZXh0LWNlbnRlcntcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5zcHJpdGUge1xyXG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWcvc3ByaXRlLnBuZykgbm8tcmVwZWF0O1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxufVxyXG5cclxuLmZsIHtcclxuICBmbG9hdDogbGVmdDtcclxufVxyXG5cclxuLmZyIHtcclxuICBmbG9hdDogcmlnaHQ7XHJcbn1cclxuXHJcbi5ub21hcmdpbmxlZnQge1xyXG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbnVsIHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxubGkge1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuXHJcblxyXG5hIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgY29sb3I6IGluaGVyaXQ7XHJcbn1cclxuXHJcbmgxLCBoMiwgaDMsIGg0IHtcclxuICBsaW5lLWhlaWdodDogMS4yO1xyXG4gIG1hcmdpbjogNXB4IDAgMCAwO1xyXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbmgxLCBoNCB7XHJcbiAgZm9udC1mYW1pbHk6ICdNeXJpYWRQcm8tTGlnaHQnO1xyXG4gIGZvbnQtc2l6ZTogMjFweDtcclxuICBjb2xvcjogIzAwOGZlOTtcclxufVxyXG5cclxuXHJcbi8qXHJcbldSQVBQRVIgTEVBRFxyXG4qL1xyXG5cclxuLndyYXBwZXIubGVhZCB7XHJcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcclxuICB3aWR0aDo2OCU7XHJcbiAgZm9udC1zaXplOiAxLjRlbTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgbWFyZ2luLXRvcDo1JTtcclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KSB7XHJcbiAgICB3aWR0aDo5MCU7XHJcbiAgICBmb250LXNpemU6IDEuNDkwZW07XHJcbiAgfVxyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpIHtcclxuICAgIHdpZHRoOjgwJTtcclxuICAgIGZvbnQtc2l6ZTogMS40OTBlbTtcclxuICB9XHJcblxyXG4gIGgye1xyXG4gICAgZm9udC1zaXplOjEuNWVtO1xyXG4gICAgY29sb3I6JGJsdWU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1JTtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLXByaW5jaXBhaXMtcHJlbWlvcyAmIHtcclxuICAgIGgye1xyXG4gICAgICBjb2xvcjokcHVycGxlO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOjUlO1xyXG4gICAgfVxyXG4gIH1cclxufS8vLndyYXBwZXIubGVhZFxyXG4vKlxyXG4jICAjIyMjICAgIyMjIyAgIyAgICAjICMjIyMjIyAgIyMjI1xyXG4jICMgICAgIyAjICAgICMgIyMgICAjICMgICAgICAjXHJcbiMgIyAgICAgICMgICAgIyAjICMgICMgIyMjIyMgICAjIyMjXHJcbiMgIyAgICAgICMgICAgIyAjICAjICMgIyAgICAgICAgICAgI1xyXG4jICMgICAgIyAjICAgICMgIyAgICMjICMgICAgICAjICAgICNcclxuIyAgIyMjIyAgICMjIyMgICMgICAgIyAjIyMjIyMgICMjIyNcclxuKi9cclxuXHJcbnVse1xyXG4gIGxpe1xyXG4gICAgJi5pY29uLWZpbGUtcGRmLWRhcmtibHVle1xyXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2ljby1wZGYtZGFya2JsdWUucG5nKSAwIDAgbm8tcmVwZWF0O1xyXG4gICAgfVxyXG4gICAgJi5pY29uLWZpbGUtcGRmLWdyZWVue1xyXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2ljby1wZGYtZ3JlZW4ucG5nKSAwIDAgbm8tcmVwZWF0O1xyXG4gICAgfVxyXG4gICAgJi5pY29uLWZpbGUteGxzLWdyZXksICYuaWNvbi1maWxlLXhsc3gtZ3JleXtcclxuICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pY28teGxzLWdyZXkucG5nKSAwIDAgbm8tcmVwZWF0O1xyXG4gICAgfVxyXG4gICAgJi5pY29uLWZpbGUtZG9jLWdyZXksICYuaWNvbi1maWxlLWRvY3gtZ3JleSwgJi5pY29uLWZpbGUtdHh0LWdyZXl7XHJcbiAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvaWNvLWRvYy1ncmV5LnBuZykgMCAwIG5vLXJlcGVhdDtcclxuICAgIH1cclxuICAgICYuaWNvbi1maWxlLXBkZi1ncmV5e1xyXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2ljby1wZGYtZ3JleS5wbmcpIDAgMCBuby1yZXBlYXQ7XHJcbiAgICB9XHJcbiAgICAmLmljb24tZmlsZS14bHMtbGlnaHRibHVlLCAmLmljb24tZmlsZS14bHN4LWxpZ2h0Ymx1ZXtcclxuICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pY28teGxzLWxpZ2h0Ymx1ZS5wbmcpIDAgMCBuby1yZXBlYXQ7XHJcbiAgICB9XHJcbiAgICAmLmljb24tZmlsZS1kb2MtbGlnaHRibHVlLCAmLmljb24tZmlsZS1kb2N4LWxpZ2h0Ymx1ZSwmLmljb24tZmlsZS10eHQtbGlnaHRibHVle1xyXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2ljby1kb2MtbGlnaHRibHVlLnBuZykgMCAwIG5vLXJlcGVhdDtcclxuICAgIH1cclxuICAgICYuaWNvbi1maWxlLXBkZi1saWdodGJsdWV7XHJcbiAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvaWNvLXBkZi1saWdodGJsdWUucG5nKSAwIDAgbm8tcmVwZWF0O1xyXG4gICAgfVxyXG4gICAgJi5pY29uLWZpbGUtcGRmLWxpZ2h0Z3JlZW57XHJcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2ltZy1pY29uZXMtYXJxdWl2b3NfMDMucG5nJykgbm8tcmVwZWF0IC0ycHggLTJweDtcclxuICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgIGhlaWdodDogNDlweDtcclxuICAgIH1cclxuICB9Ly9saVxyXG59Ly91bFxyXG5cclxuXHJcblxyXG4uaWNvbi1maWxlLXBkZi1kYXJrYmx1ZXtcclxuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2ltZy1pY29uZXMtYXJxdWl2b3NfMDMucG5nKSBuby1yZXBlYXQgLTNweCAtNTdweDtcclxufVxyXG4uaWNvbi1maWxlLXhscy1kYXJrYmx1ZSwgLmljb24tZmlsZS14bHN4LWRhcmtibHVle1xyXG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWcvaW1nLWljb25lcy1hcnF1aXZvc18wMy5wbmcpIG5vLXJlcGVhdCAtNTlweCAtNTdweDtcclxufVxyXG4uaWNvbi1maWxlLWRvYy1kYXJrYmx1ZSwgLmljb24tZmlsZS1kb2N4LWRhcmtibHVlLC5pY29uLWZpbGUtdHh0LWRhcmtibHVle1xyXG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWcvaW1nLWljb25lcy1hcnF1aXZvc18wMy5wbmcpIG5vLXJlcGVhdCAtMTExcHggLTU3cHg7XHJcbn1cclxuLmljb24tZmlsZS14bHMtZ3JleSwgLmljb24tZmlsZS14bHN4LWdyZXl7XHJcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pY28teGxzLWdyZXkucG5nKSAwIDAgbm8tcmVwZWF0O1xyXG59XHJcbi5pY29uLWZpbGUtZG9jLWdyZXksIC5pY29uLWZpbGUtZG9jeC1ncmV5LC5pY29uLWZpbGUtdHh0LWdyZXl7XHJcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pY28tZG9jLWdyZXkucG5nKSAwIDAgbm8tcmVwZWF0O1xyXG5cclxufVxyXG4uaWNvbi1maWxlLXBkZi1ncmV5e1xyXG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWcvaWNvLXBkZi1ncmV5LnBuZykgMCAwIG5vLXJlcGVhdDtcclxuXHJcbn1cclxuLmljb24tZmlsZS14bHMtbGlnaHRibHVlLCAuaWNvbi1maWxlLXhsc3gtbGlnaHRibHVle1xyXG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWcvaWNvLXhscy1saWdodGJsdWUucG5nKSAwIDAgbm8tcmVwZWF0O1xyXG59XHJcbi5pY29uLWZpbGUtZG9jLWxpZ2h0Ymx1ZSwgLmljb24tZmlsZS1kb2N4LWxpZ2h0Ymx1ZSwuaWNvbi1maWxlLXR4dC1saWdodGJsdWV7XHJcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pY28tZG9jLWxpZ2h0Ymx1ZS5wbmcpIDAgMCBuby1yZXBlYXQ7XHJcbn1cclxuLmljb24tZmlsZS1wZGYtbGlnaHRibHVle1xyXG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWcvaWNvLXBkZi1saWdodGJsdWUucG5nKSAwIDAgbm8tcmVwZWF0O1xyXG59XHJcbi5pY29uLWZpbGUtcGRmLWxpZ2h0Z3JlZW57XHJcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pbWctaWNvbmVzLWFycXVpdm9zXzAzLnBuZykgbm8tcmVwZWF0IC0ycHggLTJweDtcclxuICB3aWR0aDogOTRweDtcclxuICBoZWlnaHQ6IDU0cHg7XHJcbn1cclxuLmljb24tZmlsZS14bHMtbGlnaHRncmVlbiwgLmljb24tZmlsZS14bHN4LWxpZ2h0Z3JlZW57XHJcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pbWctaWNvbmVzLWFycXVpdm9zXzAzLnBuZykgbm8tcmVwZWF0IC0xMTFweCAtMnB4O1xyXG4gIHdpZHRoOiA5NHB4O1xyXG4gIGhlaWdodDogNTRweDtcclxufVxyXG4uaWNvbi1maWxlLWRvYy1saWdodGdyZWVuLCAuaWNvbi1maWxlLWRvY3gtbGlnaHRncmVlbiwuaWNvbi1maWxlLXR4dC1saWdodGdyZWVue1xyXG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWcvaW1nLWljb25lcy1hcnF1aXZvc18wMy5wbmcpIG5vLXJlcGVhdCAtOTlweCAtMnB4O1xyXG4gIHdpZHRoOiA5NHB4O1xyXG4gIGhlaWdodDogNTRweDtcclxufVxyXG5cclxuLypcclxuIyMjIyAgIyMjIyMjICAjIyMjICAjIyMjIyAjICAjIyMjICAjICAgICNcclxuIyAgICAgICMgICAgICAjICAgICMgICAjICAgIyAjICAgICMgIyMgICAjXHJcbiMjIyMgICMjIyMjICAjICAgICAgICAjICAgIyAjICAgICMgIyAjICAjXHJcbiMgIyAgICAgICMgICAgICAgICMgICAjICMgICAgIyAjICAjICNcclxuIyAgICAjICMgICAgICAjICAgICMgICAjICAgIyAjICAgICMgIyAgICMjXHJcbiMjIyMgICMjIyMjIyAgIyMjIyAgICAjICAgIyAgIyMjIyAgIyAgICAjXHJcblxyXG4qL1xyXG4uaW5kaWNhY2Fvc2VjdGlvbiB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHotaW5kZXg6IDk5OTtcclxuICB0b3A6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICY6aG92ZXJ7XHJcbiAgICAuaW5kaWNhY2Fve1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzYzcHggLTEyN3B4O1xyXG4gICAgICAmLmFjdGl2ZXtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzYzcHggLTExNHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICB1bHtcclxuICAgIGxpe1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgaGVpZ2h0OiAyMHB4O1xyXG5cclxuICAgIH1cclxuICB9XHJcbiAgLmFjdGl2ZSB7XHJcblxyXG4gICAgLmluZGljYWNhb3tcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjotMzYzcHggLTExNHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAuaW5kaWNhY2Fve1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMDBweCAtMTAwMHB4O1xyXG4gICAgd2lkdGg6IDEycHg7XHJcbiAgICBoZWlnaHQ6IDExcHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdG9wOiAzcHg7XHJcblxyXG4gIH1cclxuICAucXVhbHNlY3Rpb257XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9iZy1pbmRpY2FjYW8ucG5nKSByZXBlYXQ7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGNvbG9yOiAkYmx1ZTc7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBmb250LWZhbWlseTogJ015cmlhZFByby1MaWdodCcsIHNhbnMtc2VyaWY7O1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgICYuYWN0aXZle1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qXHJcblxyXG4jICAgICMjIyMjIyAgICAgIyAgICAgIyMjIyNcclxuIyAjICAgIyAgICAgIyAgICMgIyAgICMgICAgICNcclxuIyAgICMgICMgICAgICMgICMgICAjICAjXHJcbiMgICAgICMgIyMjIyMjICAjICAgICAjICAjIyMjI1xyXG4jIyMjIyMjICMgICAgICMgIyMjIyMjIyAgICAgICAjXHJcbiMgICAgICMgIyAgICAgIyAjICAgICAjICMgICAgICNcclxuIyAgICAgIyAjIyMjIyMgICMgICAgICMgICMjIyMjXHJcblxyXG4qL1xyXG5cclxuLmFiYXMge1xyXG5cclxuICB1bCB7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgZmxvYXQ6bGVmdDtcclxuICAgICAgQGluY2x1ZGUgY2FsYyh3aWR0aCwgXCI1MCUgLSAwLjUlXCIpO1xyXG5cclxuICAgICAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KSB7XHJcbiAgICAgICAgd2lkdGg6MTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206MSU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjElO1xyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OjA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9Ly86Zmlyc3QtY2hpbGRcclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgcGFkZGluZzoyMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGxpZ2h0Z3JleTtcclxuICAgICAgICBmb250LWZhbWlseTogJ015cmlhZFByby1MaWdodCcsc2Fucy1zZXJpZjtcclxuICAgICAgICBmb250LXNpemU6MWVtO1xyXG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuNXMgZWFzZSk7XHJcblxyXG4gICAgICAgICYuYWN0aXZle1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcclxuICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OlwiTXlyaWFkUHJvLUJvbGRcIiwgc2Fucy1zZXJpZjtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNwcml0ZXtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IDIlO1xyXG4gICAgICAgIH0vLy5zcHJpdGVcclxuICAgICAgfS8vYVxyXG4gICAgICAuaWUgJiAge1xyXG4gICAgICAgICAgQGluY2x1ZGUgY2FsYyh3aWR0aCwgXCI0OSUgLSAwLjUlXCIpO1xyXG4gICAgICB9XHJcbiAgICB9Ly9saVxyXG4gIH0vL3VsXHJcbn0vLy5hYmFzXHJcblxyXG5cclxuLypcclxuXHJcbiMjIyMjIyAgIyMjIyMjIyAjIyMjIyMjICMjIyMjIyMgIyMjIyMjIyAgIyMjIyNcclxuIyAgICAgIyAjICAgICAjICAgICMgICAgIyAgICAgIyAjICAgICAgICMgICAgICNcclxuIyAgICAgIyAjICAgICAjICAgICMgICAgIyAgICAgIyAjICAgICAgICNcclxuIyMjIyMjICAjICAgICAjICAgICMgICAgIyAgICAgIyAjIyMjIyAgICAjIyMjI1xyXG4jICAgICAjICMgICAgICMgICAgIyAgICAjICAgICAjICMgICAgICAgICAgICAgI1xyXG4jICAgICAjICMgICAgICMgICAgIyAgICAjICAgICAjICMgICAgICAgIyAgICAgI1xyXG4jIyMjIyMgICMjIyMjIyMgICAgIyAgICAjIyMjIyMjICMjIyMjIyMgICMjIyMjXHJcblxyXG4qL1xyXG5cclxuLy8gQkFTRSBCT1RBT1xyXG5cclxuLmJ0biB7XHJcbiAgbWFyZ2luOiAyNXB4IGF1dG8gMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gIEBpbmNsdWRlIGRpc3BsYXkoaW5saW5lLWJsb2NrKVxyXG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwcHgsOXB4LDlweCwtNnB4LCByZ2JhKDAsMCwwLDAuNSksIGZhbHNlKTtcclxuICBAaW5jbHVkZSBwYWRkaW5nKDIuNSUgNSUpO1xyXG5cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmcoNSUgMTAlKTtcclxuICB9XHJcbiAgLy8gQGluY2x1ZGUgb3BhY2l0eSgwLjMpO1xyXG5cclxuICBzcGFue1xyXG4gICAgdG9wOiAyOHB4O1xyXG4gICAgcmlnaHQ6IDE4cHg7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5zZXRhYnJhbmNhLXBxIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4MXB4IC0yNXB4O1xyXG4gICAgICB3aWR0aDogNXB4O1xyXG4gICAgICBoZWlnaHQ6IDhweDtcclxuICAgIH1cclxuICB9XHJcbn0vLy5idG5cclxuXHJcbmlucHV0W3R5cGU9c3VibWl0XXtcclxuICBib3JkZXI6bm9uZTtcclxufVxyXG5cclxuLy8gQ09SRVMgQk9UQU9cclxuXHJcbi5idG4tZGFya2JsdWUge1xyXG4gIGNvbG9yOiAkd2hpdGU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBldHJvbGVvO1xyXG59XHJcblxyXG4uYnRuLWRhcmtibHVlMSB7XHJcbiAgY29sb3I6ICR3aGl0ZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcclxufVxyXG4uYnRuLWRhcmtncmV5IHtcclxuICBjb2xvcjokd2hpdGU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjojNGU1YzYzO1xyXG59XHJcblxyXG4uYnRuLWRhcmtncmV5MiB7XHJcbiAgY29sb3I6JHdoaXRlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IzQzNTE1YTtcclxufVxyXG5cclxuLmJ0bi1saWdodGJsdWV7XHJcbiAgY29sb3I6JHdoaXRlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6JGJsdWU4O1xyXG59XHJcblxyXG4uYnRuLWxpZ2h0Z3JlZW57XHJcbiAgY29sb3I6JHdoaXRlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6JGdyZWVuMztcclxufVxyXG5cclxuLmJ0bi1wdXJwbGV7XHJcbiAgY29sb3I6JHdoaXRlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGU7XHJcbn1cclxuXHJcbi8vIDxhIGNsYXNzPVwiYnRuIGJ0bi1kYXJrYmx1ZVwiPjwvYT5cclxuXHJcblxyXG4vKlxyXG5cclxuIyMjIyMjICAjIyMjIyMgICMjIyMjIyMgIyAgICAgIyAjIyMgIyMjIyMjIyAgIyMjIyNcclxuIyAgICAgIyAjICAgICAjICMgICAgICAgIyMgICAjIyAgIyAgIyAgICAgIyAjICAgICAjXHJcbiMgICAgICMgIyAgICAgIyAjICAgICAgICMgIyAjICMgICMgICMgICAgICMgI1xyXG4jIyMjIyMgICMjIyMjIyAgIyMjIyMgICAjICAjICAjICAjICAjICAgICAjICAjIyMjI1xyXG4jICAgICAgICMgICAjICAgIyAgICAgICAjICAgICAjICAjICAjICAgICAjICAgICAgICNcclxuIyAgICAgICAjICAgICMgICMgICAgICAgIyAgICAgIyAgIyAgIyAgICAgIyAjICAgICAjXHJcbiMgICAgICAgIyAgICAgIyAjIyMjIyMjICMgICAgICMgIyMjICMjIyMjIyMgICMjIyMjXHJcblxyXG4qL1xyXG5cclxuLnNlY3Rpb24tcHJpbmNpcGFpcy1wcmVtaW9zIHtcclxuICBAaW5jbHVkZSBtYXJnaW4oNSUgMCAwIDApO1xyXG4gIHAge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gIH1cclxuXHJcbiAgLmJnLXRyb2ZldXtcclxuICAgIC8vYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvdHJvZmV1LnBuZycpIGxlZnQgYm90dG9tIG5vLXJlcGVhdDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWluLWhlaWdodDogMzkxcHg7XHJcbiAgICAvLyBiYWNrZ3JvdW5kLXNpemU6IDMzJSAxMDAlO1xyXG4gICAgLy8gYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIC8vIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgICBiYWNrZ3JvdW5kOm5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXRhYmxldC1wb3J0cmFpdCkge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIGRpdi50cm9mZXV7XHJcbiAgICAgIHdpZHRoOjM1JTtcclxuICAgICAgbWluLWhlaWdodDozNDNweDtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcblxyXG4gICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgnKG1pbi13aWR0aCA6IDgyMHB4KSBhbmQgKG1heC13aWR0aCA6IDEyMDBweCknKXtcclxuICAgICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXRhYmxldC1wb3J0cmFpdCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGRpdi5zbGlkZXJ7XHJcbiAgICAgIHdpZHRoOjY1JTtcclxuICAgICAgZmxvYXQ6bGVmdDtcclxuXHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgnKG1pbi13aWR0aCA6IDgyMHB4KSBhbmQgKG1heC13aWR0aCA6IDEyMDBweCknKXtcclxuICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpIHtcclxuICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH0vLy5iZy10cm9mZXVcclxuXHJcbiAgLmxpc3QtcHJlbWlvcyB7XHJcbiAgICBtaW4taGVpZ2h0OiAzNDNweDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgYmFja2dyb3VuZDogI2YyZjJmMztcclxuICAgIC8vIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAvLyBmbG9hdDogcmlnaHQ7XHJcblxyXG5cclxuICAgIC8vIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1sYXJnZS1kZXNrdG9wKSB7XHJcbiAgICAvLyAgIHdpZHRoOiA3NDJweDtcclxuICAgIC8vIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KSB7XHJcbiAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLm93bC1jb250cm9scyB7XHJcbiAgICAgIHdpZHRoOiA5MCU7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvIDAgYXV0bztcclxuXHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAub3dsLXBhZ2Uge1xyXG4gICAgICAgICYuYWN0aXZlIHNwYW4ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4MnB4IC03N3B4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3Nwcml0ZS5wbmcpIG5vLXJlcGVhdCAtMTk3cHggLTgwcHg7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcblxyXG4gICAgICAub3dsLWJ1dHRvbnMge1xyXG4gICAgICAgIC5vd2wtcHJldiB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3Nwcml0ZS5wbmcpIG5vLXJlcGVhdCAtMTc0cHggLTkxcHg7XHJcbiAgICAgICAgICBsZWZ0OiAwOyB9XHJcblxyXG4gICAgICAgICAgLm93bC1uZXh0IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9zcHJpdGUucG5nKSBuby1yZXBlYXQgLTE4NXB4IC05MXB4O1xyXG4gICAgICAgICAgICByaWdodDogMDsgfVxyXG4gICAgICAgICAgfS8vLm93bC1idXR0b25zXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAub3dsLXdyYXBwZXItb3V0ZXIge1xyXG4gICAgICAgICAgLm93bC1pdGVtIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLWxhcmdlLWRlc2t0b3ApIHtcclxuICAgICAgICAgICAgICB3aWR0aDozMjFweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC8vIHdpZHRoOjM2NXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGRpdiB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAyOHB4O1xyXG4gICAgICAgICAgICAgIHdpZHRoOiA2OSU7XHJcbiAgICAgICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRwdXJwbGU7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICBkbCB7XHJcbiAgICAgICAgICAgICAgICBkZCB7XHJcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHB1cnBsZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBkdCB7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHB1cnBsZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0vLy5vd2wtaXRlbVxyXG4gICAgICAgIH0vLy5vd2wtd3JhcHBlci1vdXRlclxyXG4gICAgICB9Ly8ubGlzdC1wcmVtaW9zXHJcblxyXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICAgICAgLmxpc3QtcHJlbWlvcyB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuXHJcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5saXN0LXByZW1pb3Mge1xyXG4gICAgICAgICAgLm93bC1jb250cm9scyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0NyU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAub3dsLWl0ZW0gZGl2IHtcclxuICAgICAgICAgICAgbWFyZ2luOiAzM3B4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XHJcbiAgICAgICAgLmxpc3QtcHJlbWlvcyAub3dsLWNvbnRyb2xzIHtcclxuICAgICAgICAgIHdpZHRoOiAyNyU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9Ly8uc2VjdGlvbi1wcmluY2lwYWlzLXByZW1pb3NcclxuXHJcbiAgICAvKlxyXG4gICAgIyMjIyMgICMjIyAjIyMjIyMgICMjIyMjIyMgIyAgICAgIyAjIyMjIyMjICMgICAgICMgIyAgICAgI1xyXG4gICAgIyAgICAgIyAgIyAgIyAgICAgIyAjICAgICAgICMjICAgIyMgIyAgICAgICAjIyAgICAjICMgICAgICNcclxuICAgICMgICAgICAgICMgICMgICAgICMgIyAgICAgICAjICMgIyAjICMgICAgICAgIyAjICAgIyAjICAgICAjXHJcbiAgICAjIyMjIyAgICMgICMgICAgICMgIyMjIyMgICAjICAjICAjICMjIyMjICAgIyAgIyAgIyAjICAgICAjXHJcbiAgICAjICAjICAjICAgICAjICMgICAgICAgIyAgICAgIyAjICAgICAgICMgICAjICMgIyAgICAgI1xyXG4gICAgIyAgICAgIyAgIyAgIyAgICAgIyAjICAgICAgICMgICAgICMgIyAgICAgICAjICAgICMjICMgICAgICNcclxuICAgICMjIyMjICAjIyMgIyMjIyMjICAjIyMjIyMjICMgICAgICMgIyMjIyMjIyAjICAgICAjICAjIyMjI1xyXG5cclxuICAgICovXHJcblxyXG4gICAgLnNpZGVtZW51IHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvIDElO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIC5zbS1tZW51IHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMzQlIC0gMC4xJSk7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwLjUlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTMgdXJsKC4uL2ltZy9idG4tYXJyb3ctd2hpdGUtcmlnaHQucG5nKSByaWdodCA1JSBjZW50ZXIgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IDEuMDllbTtcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IDY4cHg7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMyU7XHJcblxyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoMyUgMTAlIDMlIDEwJSk7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0vL2FcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0vLy5zbS1tZW51XHJcbiAgICAgIC5zbS1jb250IHtcclxuICAgICAgICBAaW5jbHVkZSBjYWxjKG1pbi1oZWlnaHQsIFwiNjhweCAqIDUgKyA3cHhcIik7XHJcbiAgICAgICAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsdWUzO1xyXG4gICAgICAgIHdpZHRoOiA2NiU7XHJcbiAgICAgICAgcGFkZGluZzogMiU7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICBAaW5jbHVkZSBwYWRkaW5nKDglKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5idG5tb2JpbGUsLnRpdGxlbW9iaWxlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XHJcbiAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAuNSU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHVse1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMCA4JTtcclxuICAgICAgICAgICAgICBsaXtcclxuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IGNpcmNsZTtcclxuICAgICAgICAgICAgICAgIHVse1xyXG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcclxuICAgICAgICAgICAgICAgICAgbGl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogZGlzYztcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfS8vLnNtLWNvbnRcclxuICAgIH0vLy5zaWRlbWVudVxyXG4gICAgLypcclxuICAgICMjIyMjICAgICAjICAgICMjIyAjICAgICAjICAgICMgICAgICMjIyMjXHJcbiAgICAjICAgICAjICAgIyAjICAgICMgICAjICAgIyAgICAjICMgICAjICAgICAjXHJcbiAgICAjICAgICAgICAjICAgIyAgICMgICAgIyAjICAgICMgICAjICAjXHJcbiAgICAjICAgICAgICMgICAgICMgICMgICAgICMgICAgIyAgICAgIyAgIyMjIyNcclxuICAgICMgICAgICAgIyMjIyMjIyAgIyAgICAjICMgICAjIyMjIyMjICAgICAgICNcclxuICAgICMgICAgICMgIyAgICAgIyAgIyAgICMgICAjICAjICAgICAjICMgICAgICNcclxuICAgICMjIyMjICAjICAgICAjICMjIyAjICAgICAjICMgICAgICMgICMjIyMjXHJcbiAgICAqL1xyXG4gICAgLm9yZ2FuaXphY2FvIHtcclxuICAgICAgbWFyZ2luOiAwIGF1dG8gMzBweDtcclxuXHJcbiAgICAgIC5vcmctYm94IHtcclxuICAgICAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgICAgIEBpbmNsdWRlIGNhbGMod2lkdGgsIFwiMzEuNCUgLSAycHhcIik7XHJcbiAgICAgICAgcGFkZGluZzogMyUgMyU7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsdWU7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcblxyXG4gICAgICAgICYudHdvLWNvbHN7XHJcbiAgICAgICAgICBAaW5jbHVkZSBjYWxjKHdpZHRoLCBcIjUwJSAtIDEuNSVcIik7XHJcblxyXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWFyZ2luKDAgMyUgMCAwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6bnRoLWNoaWxkKDNuKzIpe1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtYXJnaW4oMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgICAgICAgIHdpZHRoOjk5JSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgcGFkZGluZzo1JTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXRhYmxldC1wb3J0cmFpdCkge1xyXG4gICAgICAgICAgd2lkdGg6OTklICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgY29sb3I6ICRibHVlO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcclxuICAgICAgICB9Ly9wXHJcblxyXG4gICAgICAgIC8vICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAvLyAgIG1hcmdpbjogMCAzJTtcclxuICAgICAgICAvLyAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCkge1xyXG4gICAgICAgIC8vICAgICBtYXJnaW46MyUgMDtcclxuICAgICAgICAvLyAgIH1cclxuICAgICAgICAvLyAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpIHtcclxuICAgICAgICAvLyAgICAgbWFyZ2luOjMlIDA7XHJcbiAgICAgICAgLy8gICB9XHJcbiAgICAgICAgLy8gfVxyXG5cclxuICAgICAgICAmOm50aC1jaGlsZCgzbisyKSB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMyU7XHJcbiAgICAgICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpIHtcclxuICAgICAgICAgICAgbWFyZ2luOjMlIDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjozJSAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH0vLy5vcmctYm94XHJcblxyXG5cclxuXHJcbiAgICAgIGgzIHtcclxuICAgICAgICBjb2xvcjogJGJsdWU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiTXlyaWFkUHJvLUxpZ2h0XCIsIHNhbnMtc2VyaWY7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjRlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cclxuICAgICAgICAvLyAmOmVtcHR5e1xyXG4gICAgICAgIC8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XHJcbiAgICAgICAgLy9cclxuICAgICAgICAvLyAgICY6YmVmb3Jle1xyXG4gICAgICAgIC8vICAgICBjb250ZW50OiBcInRlc3RlIFwiO1xyXG4gICAgICAgIC8vICAgfVxyXG4gICAgICAgIC8vIH0vLzplbXB0eVxyXG4gICAgICB9XHJcbiAgICB9Ly8ub3JnYW5pemFjYW9cclxuXHJcblxyXG4gICAgLy8gRVhFTVBMTzpcclxuICAgIC8vICAgPGRpdiBjbGFzcz1cIm9yZ2FuaXphY2FvIGNsZWFyZml4XCI+XHJcbiAgICAvLyAgICAgPGRpdiBjbGFzcz1cIm9yZy1ib3hcIj5cclxuICAgIC8vICAgICAgIDxoMz57eyAkcGFnZVsndGV4dHMnXVsncmVsYXRvLTEnXVsndGl0bGUnXSBvciAnJyB9fTwvaDM+XHJcbiAgICAvLyAgICAgICA8cD4gIHshISAkcGFnZVsndGV4dHMnXVsncmVsYXRvLTEnXVsnY29udGVudCddIG9yICcnICEhfTwvcD5cclxuICAgIC8vICAgICA8L2Rpdj5cclxuICAgIC8vICAgICA8ZGl2IGNsYXNzPVwib3JnLWJveFwiPlxyXG4gICAgLy8gICAgICAgPGgzPnt7ICRwYWdlWyd0ZXh0cyddWydyZWxhdG8tMiddWyd0aXRsZSddIG9yICcnIH19PC9oMz5cclxuICAgIC8vICAgICAgIDxwPiAgeyEhICRwYWdlWyd0ZXh0cyddWydyZWxhdG8tMiddWydjb250ZW50J10gb3IgJycgISF9PC9wPlxyXG4gICAgLy8gICAgIDwvZGl2PlxyXG4gICAgLy8gICAgIDxkaXYgY2xhc3M9XCJvcmctYm94XCI+XHJcbiAgICAvLyAgICAgICA8aDM+e3sgJHBhZ2VbJ3RleHRzJ11bJ3JlbGF0by0zJ11bJ3RpdGxlJ10gb3IgJycgfX08L2gzPlxyXG4gICAgLy8gICAgICAgPHA+eyEhICRwYWdlWyd0ZXh0cyddWydyZWxhdG8tMyddWydjb250ZW50J10gb3IgJycgISF9PC9wPlxyXG4gICAgLy8gICAgIDwvZGl2PlxyXG4gICAgLy8gICA8L2Rpdj5cclxuIiwiLy9cclxuLy9cclxuLy8gIyMjIyMjXHJcbi8vICMgICAgICMgIyMjIyMjICAjIyMjICAjIyMjIyAgICMjIyMgICMgICAgIyAgIyMjIyAgIyAjICAgICMgIyMjIyMjXHJcbi8vICMgICAgICMgIyAgICAgICMgICAgICAjICAgICMgIyAgICAjICMjICAgIyAjICAgICAgIyAjICAgICMgI1xyXG4vLyAjIyMjIyMgICMjIyMjICAgIyMjIyAgIyAgICAjICMgICAgIyAjICMgICMgICMjIyMgICMgIyAgICAjICMjIyMjXHJcbi8vICMgICAjICAgIyAgICAgICAgICAgIyAjIyMjIyAgIyAgICAjICMgICMgIyAgICAgICMgIyAjICAgICMgI1xyXG4vLyAjICAgICMgICMgICAgICAjICAgICMgIyAgICAgICMgICAgIyAjICAgIyMgIyAgICAjICMgICMgICMgICNcclxuLy8gIyAgICAgIyAjIyMjIyMgICMjIyMgICMgICAgICAgIyMjIyAgIyAgICAjICAjIyMjICAjICAgIyMgICAjIyMjIyNcclxuLy9cclxuLy9cclxuLy9cclxuXHJcblxyXG4vL1xyXG4vLyBSZXNwb25zaXZlIE1lZGlhIFF1ZXJpZXMgTWl4aW46XHJcbi8vXHJcbi8vICBFeGVtcGxvIGRlIFVzbzpcclxuLy9cclxuLy9cdC0gRGVudHJvIGRlIGFsZ3VtYSByZWdyYSBkZSBjc3MsIGluY2x1aXIgbyBtaXhpbiBub3JtYWxtZW50ZSwgcG9yw6ltIHV0aWxpemFuZG8gb3MgYnJhY2tldHMgcGFyYSBlc3BlY2lmaWNhciBvIGxheW91dC5cclxuLy9cclxuLy9cdGEge1xyXG4vL1x0XHRiYWNrZ3JvdW5kOiNmZmY7XHJcbi8vXHRcdEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpIHtcclxuLy9cdFx0XHRiYWNrZ3JvdW5kOiMwMDA7XHJcbi8vXHRcdH1cclxuLy9cdH1cclxuLy9cclxuLy9cdElzc28gaXLDoSBnZXJhcjpcclxuLy9cdGEge2JhY2tncm91bmQ6I2ZmZn1cclxuLy9cdEBtZWRpYSAoJyhtYXgtd2lkdGg6IDgwMHB4KScpIHtcclxuLy9cdFx0YSB7YmFja2dyb3VuZDojMDAwO31cclxuLy9cdH1cclxuLy9cclxuLy9cclxuJHJlcy1taW5vci1waG9uZTogJyhtYXgtd2lkdGg6IDM3MHB4KSc7XHJcbiRyZXMtcGhvbmUtcG9ydHJhaXQ6ICcobWF4LXdpZHRoOiA0ODBweCknO1xyXG4kcmVzLXBob25lLW1pZC1sYW5kc2NhcGU6ICcobWF4LXdpZHRoOjcwMHB4KSc7XHJcbiRyZXMtcGhvbmUtbGFuZHNjYXBlOiAnKG1heC13aWR0aDogNzY4cHgpJztcclxuJHJlcy10YWJsZXQtcG9ydHJhaXQ6ICcobWF4LXdpZHRoOiA4MjBweCknO1xyXG4kcmVzLXRhYmxldC1sYW5kc2NhcGU6ICcobWluLXdpZHRoIDogODAxcHgpIGFuZCAobWF4LXdpZHRoIDogMTAyNHB4KSc7XHJcbiRyZXMtbWlub3ItZGVza3RvcC1hbmQtdGFibGV0LWxhbmRzY2FwZTogJyhtaW4td2lkdGggOiA4MDFweCkgYW5kIChtYXgtd2lkdGggOiAxMjAwcHgpJztcclxuJHJlcy1sYXJnZS1kZXNrdG9wOiAnKG1pbi13aWR0aDogMTIwMHB4KSc7XHJcbiRyZXMtbm9uLXJldGluYTogJ3NjcmVlbiBhbmQgKC13ZWJraXQtbWF4LWRldmljZS1waXhlbC1yYXRpbzogMSknO1xyXG4kcmVzLXJldGluYTogJ3NjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiknO1xyXG4kcmVzLXRhYmxldC10by1kZXNrdG9wOiAnKG1pbi13aWR0aCA6IDgyMHB4KSBhbmQgKG1heC13aWR0aCA6IDEyNzlweCknO1xyXG5cclxuXHJcbkBtaXhpbiByZXNwb25zaXZlLW1lZGlhKCRtZWRpYSkge1xyXG4gICAgQGlmICRtZWRpYSB7XHJcbiAgICAgIEBtZWRpYSAjeyRtZWRpYX0geyBAY29udGVudCB9XHJcbiAgICB9XHJcbn1cclxuIiwiXHJcblxyXG4ubWVudS1mb290ZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICB6LWluZGV4OiA5OTk7XHJcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXRhYmxldC1wb3J0cmFpdCl7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICB3aWR0aDogNzM5cHg7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJyhtaW4td2lkdGggOiA0NjhweCkgYW5kIChtYXgtd2lkdGggOiA4MjBweCknKXtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpe1xyXG4gICAgYm90dG9tOiAtNnB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gIC50b3Bve1xyXG4gICAgaGVpZ2h0OiA3MHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KXtcclxuICAgICAgaGVpZ2h0OiA2M3B4O1xyXG4gICAgfVxyXG4gICAgLmNhbWFkYXtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRlcmNlaXJvO1xyXG4gICAgICBoZWlnaHQ6IDU0cHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIG1hcmdpbi10b3A6IDElO1xyXG4gICAgICBAaW5jbHVkZSByb3VuZGVkKDYzJS8xMjclIDMlIDAlIDAlKTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpe1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIlO1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG4gICAgLmNhbWFkYTJ7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWd1bmRvO1xyXG4gICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXJnaW4tdG9wOiAyJTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBAaW5jbHVkZSByb3VuZGVkKDY0JS8xMTclIDElIDAlIDAlKTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpe1xyXG4gICAgICAgIEBpbmNsdWRlIHJvdW5kZWQoNjQlLzEzMCUgMSUgMCUgMCUpO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDMlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuY2FtYWRhM3tcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1laXJvO1xyXG4gICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXJnaW4tdG9wOiAzJTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB6LWluZGV4OiA5OTk7XHJcbiAgICAgIEBpbmNsdWRlIHJvdW5kZWQoNjElLzk1JSAxJSAwJSAwJSk7XHJcblxyXG4gICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KXtcclxuICAgICAgICBAaW5jbHVkZSByb3VuZGVkKDU1JS8xMTAlIDElIDAlIDAlKTtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0JTtcclxuICAgICAgfVxyXG4gICAgICAjYWNhb3tcclxuICAgICAgICBoZWlnaHQ6IDM1cHg7XHJcbiAgICAgIH1cclxuICAgICAgLm1lbnV7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIG1hcmdpbjogMSUgNCU7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1SZWd1bGFyXCIsIHNhbnMtc2VyaWY7XHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXRhYmxldC1wb3J0cmFpdCl7XHJcbiAgICAgICAgICBtYXJnaW46MSUgNSU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCl7XHJcbiAgICAgICAgICBtYXJnaW46MSUgOCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC50cmlhbmdsZSB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiA4cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICR3aGl0ZTtcclxuICAgICAgICBib3JkZXItcmlnaHQ6IDlweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICBAaW5jbHVkZSBtYXJnaW4oMS41JSAtMTAlIDAlIDAlKTtcclxuICAgICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtdGFibGV0LXBvcnRyYWl0KXtcclxuICAgICAgICAgIEBpbmNsdWRlIG1hcmdpbigxLjUlIC0xNCUgMCUgMCUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpe1xyXG4gICAgICAgICAgQGluY2x1ZGUgbWFyZ2luKDIuNSUgLTI1JSAwIDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmJhaXhve1xyXG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDlweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgIGJvcmRlci1yaWdodDogOXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogOHB4IHNvbGlkICR3aGl0ZTtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDBweCBzb2xpZCAkd2hpdGU7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtYXJnaW4oMS41JSAtMTAlIDAlIDAlKTtcclxuICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy10YWJsZXQtcG9ydHJhaXQpe1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtYXJnaW4oMS41JSAtMTQlIDAlIDAlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtbWVkaWEoJHJlcy1waG9uZS1wb3J0cmFpdCl7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1hcmdpbigyLjUlIC0yNSUgMCAwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAuY29ycG97XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1laXJvO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgnKG1pbi13aWR0aCA6IDgyMXB4KSBhbmQgKG1heC13aWR0aCA6IDk0OXB4KScpe1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXRhYmxldC1wb3J0cmFpdCl7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLW1lZGlhKCRyZXMtcGhvbmUtcG9ydHJhaXQpe1xyXG4gICAgfVxyXG4gICAgZGl2e1xyXG4gICAgICBtYXJnaW4tbGVmdDogNSU7XHJcbiAgICB9XHJcbiAgICAubm9tZWxpc3Rhe1xyXG4gICAgICBAaW5jbHVkZSBwYWRkaW5nKCAxJSAwIDElIDApO1xyXG4gICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgIGNvbG9yOiAkYmx1ZTtcclxuICAgICAgZm9udC1mYW1pbHk6IFwiTXlyaWFkUHJvLVJlZ3VsYXJcIiwgc2Fucy1zZXJpZjtcclxuICAgICAgd2lkdGg6IDMwJTtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KXtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogOTUlO1xyXG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoIDIlIDAgMiUgMCk7XHJcbiAgICAgICAgLnBsdXN7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgd2lkdGg6IDJweDtcclxuICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDE1cHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA0MHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTBweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTM2cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTlweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICYubWludXN7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuICAgICAgYXtcclxuICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgY29sb3I6ICRibHVlO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1SZWd1bGFyXCIsIHNhbnMtc2VyaWY7XHJcblxyXG4gICAgICB9XHJcbiAgICAgIHVse1xyXG4gICAgICAgIEBpbmNsdWRlIGNhbGMod2lkdGgsXCIxMDAlXCIpO1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoMCUgMiUpO1xyXG4gICAgICAgIEBpbmNsdWRlIG1hcmdpbigzJSAwJSAwJSAwJSk7XHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KXtcclxuICAgICAgICAgIEBpbmNsdWRlIGNhbGMod2lkdGgsIFwiMTAwJVwiKTtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxpe1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1tZWRpYSgkcmVzLXBob25lLXBvcnRyYWl0KXtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLnN1Ymxpc3Rhe1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE3JTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIk15cmlhZFByby1SZWd1bGFyXCIsIHNhbnMtc2VyaWY7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgfVxyXG5cclxufVxyXG4iXSwibWFwcGluZ3MiOiI7QUNBQSxVQUFVO0VBQ1IsV0FBVyxFQUFFLG1CQUFvQjtFQUNqQyxHQUFHLEVBQUUscUNBQUc7RUFDUixHQUFHLEVBQUUsNENBQUcsQ0FBMEMsMkJBQU0sRUFDbkQscUNBQUcsQ0FBb0Msa0JBQU0sRUFDOUMsc0NBQUcsQ0FBb0MsY0FBTSxFQUM1QyxxQ0FBRyxDQUFvQyxrQkFBTSxFQUM3Qyx1REFBRyxDQUFxRCxhQUFNO0VBQ25FLFdBQVcsRUFBRSxNQUFPO0VBQ3BCLFVBQVUsRUFBRSxNQUFPOztBQUdyQixVQUFVO0VBQ1IsV0FBVyxF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LENBQUM7RUFDM0MsT0FBTyxFQUFFLEtBQU0sR0FDaEI7O0FBRUQsQUFBOEIsUUFBdEIsQUFBQSxTQUFTLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztFQUNsQyxTQUFTLEVBQUUsSUFBSztFQUNoQixNQUFNLEVBQUUsVUFBVyxHQUNwQjs7QUFFRCxBQUFpQyxRQUF6QixBQUFBLFNBQVMsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztFQUNsQyxXQUFXLEVBQUUsQ0FBRTtFQUNmLFlBQVksRUFBRSxHQUFJO0VBQ2xCLEtBQUssRUFBRSxLQUFNO0VBQ2IsUUFBUSxFQUFFLE1BQU87RUFDakIsT0FBTyxFQUFFLENBQUUsR0FDWjs7QUFFRCxNQUFNLENBQU4sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VBQzNCLEFBQWlDLFFBQXpCLEFBQUEsU0FBUyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO0lBQ2xDLEtBQUssRUFBRSxLQUFNO0lBQ2IsWUFBWSxFQUFFLENBQUUsR0FDakI7O0FBR0gsQUFBb0MsUUFBNUIsQUFBQSxTQUFTLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0VBQ3BDLFdBQVcsRUFBRSxJQUFLO0VBQ2xCLFVBQVUsRUFBRSxNQUFPO0VBQ25CLEtBQUssRUFBRSxJQUFLO0VBQ1osUUFBUSxFQUFFLE1BQU87RUFDakIsZ0JBQWdCLEVBQUUsT0FBUTtFQUMxQixLQUFLLEVBQUUsSUFBSztFQUNaLFdBQVcsRUFBRSw2QkFBOEI7RUFDM0MsU0FBUyxFQUFFLElBQUssR0FDakI7O0FBRUQsQUFBcUMsUUFBN0IsQUFBQSxTQUFTLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxBQUFBLE9BQU8sQ0FBQztFQUMzQyxnQkFBZ0IsRUFBRSxPQUFRLEdBQzNCOztBQUdELEFBQTRDLFFBQXBDLEFBQUEsU0FBUyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0VBQy9DLFVBQVUsRUFBRSxJQUFLO0VBQ2pCLFlBQVksRUFBRSxJQUFLLEdBQ3BCOztBQUVELEFBQThCLFFBQXRCLEFBQUEsU0FBUyxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUM7RUFDMUMsT0FBTyxFQUFFLElBQUssR0FDZjs7QUFFRCxBQUEyQyxRQUFuQyxBQUFBLFNBQVMsQ0FBQyxXQUFXLENBQUMsYUFBYSxBQUFBLEtBQUssQ0FBQztFQUMvQyxPQUFPLEVBQUUsS0FBTSxHQUNoQjs7QUFFRCxBQUFpRCxRQUF6QyxBQUFBLFNBQVMsQ0FBQyxXQUFXLENBQUMsYUFBYSxBQUFBLEtBQUssQ0FBQyxFQUFFLENBQUM7RUFDbEQsTUFBTSxFQUFFLGFBQWMsR0FDdkIiLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */
