/*
    - Name: "banner-app.scss"
    - Description: "Add custom styles to Banner App block"
*/
/* VARIABLES */
.block-banner-app.block--view-mode-default, .block-banner-app.block--view-mode-full {
  background-color: #FFFFFF;
  margin: 45px 0; }
  @media (min-width: 992px) {
    .block-banner-app.block--view-mode-default, .block-banner-app.block--view-mode-full {
      margin: 65px 0; } }
  @media (min-width: 992px) {
    .block-banner-app.block--view-mode-default .content, .block-banner-app.block--view-mode-full .content {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: flex-end;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }
  .block-banner-app.block--view-mode-default .content .field--name-field-image img, .block-banner-app.block--view-mode-full .content .field--name-field-image img {
    width: 100%;
    height: auto; }
  @media (min-width: 992px) {
    .block-banner-app.block--view-mode-default .content .field--name-field-image, .block-banner-app.block--view-mode-full .content .field--name-field-image {
      width: 50%; } }
  .block-banner-app.block--view-mode-default .content .group-right, .block-banner-app.block--view-mode-full .content .group-right {
    padding: 30px 0; }
    @media (min-width: 768px) {
      .block-banner-app.block--view-mode-default .content .group-right, .block-banner-app.block--view-mode-full .content .group-right {
        padding: 30px; } }
    @media (min-width: 992px) {
      .block-banner-app.block--view-mode-default .content .group-right, .block-banner-app.block--view-mode-full .content .group-right {
        width: 50%; } }
    @media (min-width: 1200px) {
      .block-banner-app.block--view-mode-default .content .group-right, .block-banner-app.block--view-mode-full .content .group-right {
        padding: 45px; } }
    .block-banner-app.block--view-mode-default .content .group-right .field--name-body, .block-banner-app.block--view-mode-full .content .group-right .field--name-body {
      margin-bottom: 50px; }
    .block-banner-app.block--view-mode-default .content .group-right .links, .block-banner-app.block--view-mode-full .content .group-right .links {
      text-align: center; }
      @media (min-width: 380px) {
        .block-banner-app.block--view-mode-default .content .group-right .links, .block-banner-app.block--view-mode-full .content .group-right .links {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }

.block-banner-app .field--name-field-app-googleplay,
.block-banner-app .field--name-field-app-appstore,
.field--name-field-apps .field--name-field-app-googleplay,
.field--name-field-apps .field--name-field-app-appstore,
div[id*="slick-block-content-block-general-apps"] .field--name-field-app-googleplay,
div[id*="slick-block-content-block-general-apps"] .field--name-field-app-appstore {
  margin: 0;
  display: inline-block;
  max-width: 143px;
  height: 48px;
  width: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center; }
  @media (min-width: 768px) {
    .block-banner-app .field--name-field-app-googleplay,
    .block-banner-app .field--name-field-app-appstore,
    .field--name-field-apps .field--name-field-app-googleplay,
    .field--name-field-apps .field--name-field-app-appstore,
    div[id*="slick-block-content-block-general-apps"] .field--name-field-app-googleplay,
    div[id*="slick-block-content-block-general-apps"] .field--name-field-app-appstore {
      margin: 0 5px; } }
  @media (min-width: 1200px) {
    .block-banner-app .field--name-field-app-googleplay,
    .block-banner-app .field--name-field-app-appstore,
    .field--name-field-apps .field--name-field-app-googleplay,
    .field--name-field-apps .field--name-field-app-appstore,
    div[id*="slick-block-content-block-general-apps"] .field--name-field-app-googleplay,
    div[id*="slick-block-content-block-general-apps"] .field--name-field-app-appstore {
      margin: 0 25px; } }
  .block-banner-app .field--name-field-app-googleplay a,
  .block-banner-app .field--name-field-app-appstore a,
  .field--name-field-apps .field--name-field-app-googleplay a,
  .field--name-field-apps .field--name-field-app-appstore a,
  div[id*="slick-block-content-block-general-apps"] .field--name-field-app-googleplay a,
  div[id*="slick-block-content-block-general-apps"] .field--name-field-app-appstore a {
    display: block;
    height: 48px;
    width: 143px;
    font-size: 0;
    border: none; }

.block-banner-app .field--name-field-app-googleplay,
.field--name-field-apps .field--name-field-app-googleplay,
div[id*="slick-block-content-block-general-apps"] .field--name-field-app-googleplay {
  background-image: url("../../../css/images/play_store.png"); }

.block-banner-app .field--name-field-app-appstore,
.field--name-field-apps .field--name-field-app-appstore,
div[id*="slick-block-content-block-general-apps"] .field--name-field-app-appstore {
  background-image: url("../../../css/images/app_store.png"); }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvYmxvY2svYmFubmVyLWFwcC5zY3NzIiwiY29tcG9uZW50cy9ibG9jay9iYW5uZXItYXBwLmNzcyIsIl92YXJpYWJsZXMuc2NzcyIsIl9taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0NDR0M7QUNERCxjQUFBO0FGS0E7RUFHSSx5QkVJVztFRkhYLGNBQWMsRUFBQTtFR3FGZDtJSHpGSjtNQU1NLGNBQWMsRUFBQSxFQWlEakI7RUdrQ0M7SUh6Rko7TUFXUSxvQkFBYTtNQUFiLG9CQUFhO01BQWIsYUFBYTtNQUNiLHNCQUFxQjtVQUFyQixtQkFBcUI7Y0FBckIscUJBQXFCO01BQ3JCLG1CQUFlO1VBQWYsZUFBZSxFQUFBLEVBeUNsQjtFQXRETDtJQWtCVSxXQUFXO0lBQ1gsWUFBWSxFQUFBO0VHc0VsQjtJSHpGSjtNQXVCVSxVQUFVLEVBQUEsRUFFYjtFQXpCUDtJQTRCUSxlQUFlLEVBQUE7SUc2RG5CO01IekZKO1FBOEJVLGFBQWEsRUFBQSxFQXVCaEI7SUdvQ0g7TUh6Rko7UUFpQ1UsVUFBVSxFQUFBLEVBb0JiO0lHb0NIO01IekZKO1FBb0NVLGFBQWEsRUFBQSxFQWlCaEI7SUFyRFA7TUF3Q1UsbUJBQW1CLEVBQUE7SUF4QzdCO01BNkNVLGtCQUFrQixFQUFBO01HNEN4QjtRSHpGSjtVQStDWSxvQkFBYTtVQUFiLG9CQUFhO1VBQWIsYUFBYTtVQUNiLHlCQUFtQjtjQUFuQixzQkFBbUI7a0JBQW5CLG1CQUFtQjtVQUNuQix3QkFBdUI7Y0FBdkIscUJBQXVCO2tCQUF2Qix1QkFBdUI7VUFDdkIsbUJBQWU7Y0FBZixlQUFlLEVBQUEsRUFFbEI7O0FBT1Q7Ozs7OztFQUtJLFNBQVM7RUFDVCxxQkFBcUI7RUFDckIsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixXQUFXO0VBQ1gsNEJBQTRCO0VBQzVCLHNCQUFzQjtFQUN0QixrQ0FBa0MsRUFBQTtFR2tCbEM7SUg5Qko7Ozs7OztNQWVNLGFBQWEsRUFBQSxFQWNoQjtFR0NDO0lIOUJKOzs7Ozs7TUFtQk0sY0FBYyxFQUFBLEVBVWpCO0VBN0JIOzs7Ozs7SUF1Qk0sY0FBYztJQUNkLFlBQVk7SUFDWixZQUFZO0lBQ1osWUFBWTtJQUNaLFlBQVksRUFBQTs7QUEzQmxCOzs7RUFnQ0ksMkRBQTJELEVBQUE7O0FBaEMvRDs7O0VBb0NJLDBEQUEwRCxFQUFBIiwiZmlsZSI6ImNvbXBvbmVudHMvYmxvY2svYmFubmVyLWFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICAgIC0gTmFtZTogXCJiYW5uZXItYXBwLnNjc3NcIlxuICAgIC0gRGVzY3JpcHRpb246IFwiQWRkIGN1c3RvbSBzdHlsZXMgdG8gQmFubmVyIEFwcCBibG9ja1wiXG4qL1xuXG5AaW1wb3J0ICcuLi8uLi92YXJpYWJsZXMnO1xuXG4uYmxvY2stYmFubmVyLWFwcCB7XG4gICYuYmxvY2stLXZpZXctbW9kZS1kZWZhdWx0LFxuICAmLmJsb2NrLS12aWV3LW1vZGUtZnVsbHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgbWFyZ2luOiA0NXB4IDA7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgbWFyZ2luOiA2NXB4IDA7XG4gICAgfVxuXG4gICAgLmNvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIH1cblxuICAgICAgLmZpZWxkLS1uYW1lLWZpZWxkLWltYWdlIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZ3JvdXAtcmlnaHQge1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDA7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICBwYWRkaW5nOiA0NXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmZpZWxkLS1uYW1lLWJvZHkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgIH1cblxuXG4gICAgICAgIC5saW5rcyB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHhzLXBsdXMpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vU29jaWFsIGFwcCBsaW5rc1xuLmJsb2NrLWJhbm5lci1hcHAsXG4uZmllbGQtLW5hbWUtZmllbGQtYXBwcyxcbmRpdltpZCo9XCJzbGljay1ibG9jay1jb250ZW50LWJsb2NrLWdlbmVyYWwtYXBwc1wiXSB7XG4gIC5maWVsZC0tbmFtZS1maWVsZC1hcHAtZ29vZ2xlcGxheSxcbiAgLmZpZWxkLS1uYW1lLWZpZWxkLWFwcC1hcHBzdG9yZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXgtd2lkdGg6IDE0M3B4O1xuICAgIGhlaWdodDogNDhweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgbWFyZ2luOiAwIDI1cHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogNDhweDtcbiAgICAgIHdpZHRoOiAxNDNweDtcbiAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuZmllbGQtLW5hbWUtZmllbGQtYXBwLWdvb2dsZXBsYXkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uLy4uL2Nzcy9pbWFnZXMvcGxheV9zdG9yZS5wbmdcIik7XG4gIH1cblxuICAuZmllbGQtLW5hbWUtZmllbGQtYXBwLWFwcHN0b3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi8uLi9jc3MvaW1hZ2VzL2FwcF9zdG9yZS5wbmdcIik7XG4gIH1cbn0iLCIvKlxuICAgIC0gTmFtZTogXCJiYW5uZXItYXBwLnNjc3NcIlxuICAgIC0gRGVzY3JpcHRpb246IFwiQWRkIGN1c3RvbSBzdHlsZXMgdG8gQmFubmVyIEFwcCBibG9ja1wiXG4qL1xuLyogVkFSSUFCTEVTICovXG4uYmxvY2stYmFubmVyLWFwcC5ibG9jay0tdmlldy1tb2RlLWRlZmF1bHQsIC5ibG9jay1iYW5uZXItYXBwLmJsb2NrLS12aWV3LW1vZGUtZnVsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIG1hcmdpbjogNDVweCAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5ibG9jay1iYW5uZXItYXBwLmJsb2NrLS12aWV3LW1vZGUtZGVmYXVsdCwgLmJsb2NrLWJhbm5lci1hcHAuYmxvY2stLXZpZXctbW9kZS1mdWxsIHtcbiAgICAgIG1hcmdpbjogNjVweCAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmJsb2NrLWJhbm5lci1hcHAuYmxvY2stLXZpZXctbW9kZS1kZWZhdWx0IC5jb250ZW50LCAuYmxvY2stYmFubmVyLWFwcC5ibG9jay0tdmlldy1tb2RlLWZ1bGwgLmNvbnRlbnQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfSB9XG4gIC5ibG9jay1iYW5uZXItYXBwLmJsb2NrLS12aWV3LW1vZGUtZGVmYXVsdCAuY29udGVudCAuZmllbGQtLW5hbWUtZmllbGQtaW1hZ2UgaW1nLCAuYmxvY2stYmFubmVyLWFwcC5ibG9jay0tdmlldy1tb2RlLWZ1bGwgLmNvbnRlbnQgLmZpZWxkLS1uYW1lLWZpZWxkLWltYWdlIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5ibG9jay1iYW5uZXItYXBwLmJsb2NrLS12aWV3LW1vZGUtZGVmYXVsdCAuY29udGVudCAuZmllbGQtLW5hbWUtZmllbGQtaW1hZ2UsIC5ibG9jay1iYW5uZXItYXBwLmJsb2NrLS12aWV3LW1vZGUtZnVsbCAuY29udGVudCAuZmllbGQtLW5hbWUtZmllbGQtaW1hZ2Uge1xuICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gIC5ibG9jay1iYW5uZXItYXBwLmJsb2NrLS12aWV3LW1vZGUtZGVmYXVsdCAuY29udGVudCAuZ3JvdXAtcmlnaHQsIC5ibG9jay1iYW5uZXItYXBwLmJsb2NrLS12aWV3LW1vZGUtZnVsbCAuY29udGVudCAuZ3JvdXAtcmlnaHQge1xuICAgIHBhZGRpbmc6IDMwcHggMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmJsb2NrLWJhbm5lci1hcHAuYmxvY2stLXZpZXctbW9kZS1kZWZhdWx0IC5jb250ZW50IC5ncm91cC1yaWdodCwgLmJsb2NrLWJhbm5lci1hcHAuYmxvY2stLXZpZXctbW9kZS1mdWxsIC5jb250ZW50IC5ncm91cC1yaWdodCB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgLmJsb2NrLWJhbm5lci1hcHAuYmxvY2stLXZpZXctbW9kZS1kZWZhdWx0IC5jb250ZW50IC5ncm91cC1yaWdodCwgLmJsb2NrLWJhbm5lci1hcHAuYmxvY2stLXZpZXctbW9kZS1mdWxsIC5jb250ZW50IC5ncm91cC1yaWdodCB7XG4gICAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgIC5ibG9jay1iYW5uZXItYXBwLmJsb2NrLS12aWV3LW1vZGUtZGVmYXVsdCAuY29udGVudCAuZ3JvdXAtcmlnaHQsIC5ibG9jay1iYW5uZXItYXBwLmJsb2NrLS12aWV3LW1vZGUtZnVsbCAuY29udGVudCAuZ3JvdXAtcmlnaHQge1xuICAgICAgICBwYWRkaW5nOiA0NXB4OyB9IH1cbiAgICAuYmxvY2stYmFubmVyLWFwcC5ibG9jay0tdmlldy1tb2RlLWRlZmF1bHQgLmNvbnRlbnQgLmdyb3VwLXJpZ2h0IC5maWVsZC0tbmFtZS1ib2R5LCAuYmxvY2stYmFubmVyLWFwcC5ibG9jay0tdmlldy1tb2RlLWZ1bGwgLmNvbnRlbnQgLmdyb3VwLXJpZ2h0IC5maWVsZC0tbmFtZS1ib2R5IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbiAgICAuYmxvY2stYmFubmVyLWFwcC5ibG9jay0tdmlldy1tb2RlLWRlZmF1bHQgLmNvbnRlbnQgLmdyb3VwLXJpZ2h0IC5saW5rcywgLmJsb2NrLWJhbm5lci1hcHAuYmxvY2stLXZpZXctbW9kZS1mdWxsIC5jb250ZW50IC5ncm91cC1yaWdodCAubGlua3Mge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMzgwcHgpIHtcbiAgICAgICAgLmJsb2NrLWJhbm5lci1hcHAuYmxvY2stLXZpZXctbW9kZS1kZWZhdWx0IC5jb250ZW50IC5ncm91cC1yaWdodCAubGlua3MsIC5ibG9jay1iYW5uZXItYXBwLmJsb2NrLS12aWV3LW1vZGUtZnVsbCAuY29udGVudCAuZ3JvdXAtcmlnaHQgLmxpbmtzIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cblxuLmJsb2NrLWJhbm5lci1hcHAgLmZpZWxkLS1uYW1lLWZpZWxkLWFwcC1nb29nbGVwbGF5LFxuLmJsb2NrLWJhbm5lci1hcHAgLmZpZWxkLS1uYW1lLWZpZWxkLWFwcC1hcHBzdG9yZSxcbi5maWVsZC0tbmFtZS1maWVsZC1hcHBzIC5maWVsZC0tbmFtZS1maWVsZC1hcHAtZ29vZ2xlcGxheSxcbi5maWVsZC0tbmFtZS1maWVsZC1hcHBzIC5maWVsZC0tbmFtZS1maWVsZC1hcHAtYXBwc3RvcmUsXG5kaXZbaWQqPVwic2xpY2stYmxvY2stY29udGVudC1ibG9jay1nZW5lcmFsLWFwcHNcIl0gLmZpZWxkLS1uYW1lLWZpZWxkLWFwcC1nb29nbGVwbGF5LFxuZGl2W2lkKj1cInNsaWNrLWJsb2NrLWNvbnRlbnQtYmxvY2stZ2VuZXJhbC1hcHBzXCJdIC5maWVsZC0tbmFtZS1maWVsZC1hcHAtYXBwc3RvcmUge1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxNDNweDtcbiAgaGVpZ2h0OiA0OHB4O1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYmxvY2stYmFubmVyLWFwcCAuZmllbGQtLW5hbWUtZmllbGQtYXBwLWdvb2dsZXBsYXksXG4gICAgLmJsb2NrLWJhbm5lci1hcHAgLmZpZWxkLS1uYW1lLWZpZWxkLWFwcC1hcHBzdG9yZSxcbiAgICAuZmllbGQtLW5hbWUtZmllbGQtYXBwcyAuZmllbGQtLW5hbWUtZmllbGQtYXBwLWdvb2dsZXBsYXksXG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLWFwcHMgLmZpZWxkLS1uYW1lLWZpZWxkLWFwcC1hcHBzdG9yZSxcbiAgICBkaXZbaWQqPVwic2xpY2stYmxvY2stY29udGVudC1ibG9jay1nZW5lcmFsLWFwcHNcIl0gLmZpZWxkLS1uYW1lLWZpZWxkLWFwcC1nb29nbGVwbGF5LFxuICAgIGRpdltpZCo9XCJzbGljay1ibG9jay1jb250ZW50LWJsb2NrLWdlbmVyYWwtYXBwc1wiXSAuZmllbGQtLW5hbWUtZmllbGQtYXBwLWFwcHN0b3JlIHtcbiAgICAgIG1hcmdpbjogMCA1cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLmJsb2NrLWJhbm5lci1hcHAgLmZpZWxkLS1uYW1lLWZpZWxkLWFwcC1nb29nbGVwbGF5LFxuICAgIC5ibG9jay1iYW5uZXItYXBwIC5maWVsZC0tbmFtZS1maWVsZC1hcHAtYXBwc3RvcmUsXG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLWFwcHMgLmZpZWxkLS1uYW1lLWZpZWxkLWFwcC1nb29nbGVwbGF5LFxuICAgIC5maWVsZC0tbmFtZS1maWVsZC1hcHBzIC5maWVsZC0tbmFtZS1maWVsZC1hcHAtYXBwc3RvcmUsXG4gICAgZGl2W2lkKj1cInNsaWNrLWJsb2NrLWNvbnRlbnQtYmxvY2stZ2VuZXJhbC1hcHBzXCJdIC5maWVsZC0tbmFtZS1maWVsZC1hcHAtZ29vZ2xlcGxheSxcbiAgICBkaXZbaWQqPVwic2xpY2stYmxvY2stY29udGVudC1ibG9jay1nZW5lcmFsLWFwcHNcIl0gLmZpZWxkLS1uYW1lLWZpZWxkLWFwcC1hcHBzdG9yZSB7XG4gICAgICBtYXJnaW46IDAgMjVweDsgfSB9XG4gIC5ibG9jay1iYW5uZXItYXBwIC5maWVsZC0tbmFtZS1maWVsZC1hcHAtZ29vZ2xlcGxheSBhLFxuICAuYmxvY2stYmFubmVyLWFwcCAuZmllbGQtLW5hbWUtZmllbGQtYXBwLWFwcHN0b3JlIGEsXG4gIC5maWVsZC0tbmFtZS1maWVsZC1hcHBzIC5maWVsZC0tbmFtZS1maWVsZC1hcHAtZ29vZ2xlcGxheSBhLFxuICAuZmllbGQtLW5hbWUtZmllbGQtYXBwcyAuZmllbGQtLW5hbWUtZmllbGQtYXBwLWFwcHN0b3JlIGEsXG4gIGRpdltpZCo9XCJzbGljay1ibG9jay1jb250ZW50LWJsb2NrLWdlbmVyYWwtYXBwc1wiXSAuZmllbGQtLW5hbWUtZmllbGQtYXBwLWdvb2dsZXBsYXkgYSxcbiAgZGl2W2lkKj1cInNsaWNrLWJsb2NrLWNvbnRlbnQtYmxvY2stZ2VuZXJhbC1hcHBzXCJdIC5maWVsZC0tbmFtZS1maWVsZC1hcHAtYXBwc3RvcmUgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiA0OHB4O1xuICAgIHdpZHRoOiAxNDNweDtcbiAgICBmb250LXNpemU6IDA7XG4gICAgYm9yZGVyOiBub25lOyB9XG5cbi5ibG9jay1iYW5uZXItYXBwIC5maWVsZC0tbmFtZS1maWVsZC1hcHAtZ29vZ2xlcGxheSxcbi5maWVsZC0tbmFtZS1maWVsZC1hcHBzIC5maWVsZC0tbmFtZS1maWVsZC1hcHAtZ29vZ2xlcGxheSxcbmRpdltpZCo9XCJzbGljay1ibG9jay1jb250ZW50LWJsb2NrLWdlbmVyYWwtYXBwc1wiXSAuZmllbGQtLW5hbWUtZmllbGQtYXBwLWdvb2dsZXBsYXkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi8uLi9jc3MvaW1hZ2VzL3BsYXlfc3RvcmUucG5nXCIpOyB9XG5cbi5ibG9jay1iYW5uZXItYXBwIC5maWVsZC0tbmFtZS1maWVsZC1hcHAtYXBwc3RvcmUsXG4uZmllbGQtLW5hbWUtZmllbGQtYXBwcyAuZmllbGQtLW5hbWUtZmllbGQtYXBwLWFwcHN0b3JlLFxuZGl2W2lkKj1cInNsaWNrLWJsb2NrLWNvbnRlbnQtYmxvY2stZ2VuZXJhbC1hcHBzXCJdIC5maWVsZC0tbmFtZS1maWVsZC1hcHAtYXBwc3RvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi8uLi9jc3MvaW1hZ2VzL2FwcF9zdG9yZS5wbmdcIik7IH1cbiIsIkBpbXBvcnQgXCJyZWNpcGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG4vKiBWQVJJQUJMRVMgKi9cblxuLy8gQ29sb3JzXG4kcHJpbWFyeS1zaGFkZTogIzk4YTkyYTtcbiRwcmltYXJ5LWxpZ2h0OiBsaWdodGVuKCRwcmltYXJ5LXNoYWRlLCAzNyUpO1xuJHByaW1hcnktZGFyazogZGFya2VuKCRwcmltYXJ5LXNoYWRlLCAxMiUpO1xuJGFjY2VudC1zaGFkZTogIzA5NTc1MTtcbiRhY2NlbnQtbGlnaHQ6IGxpZ2h0ZW4oJGFjY2VudC1zaGFkZSwgMzclKTtcbiRhY2NlbnQtZGFyazogZGFya2VuKCRhY2NlbnQtc2hhZGUsIDEyJSk7XG5cbi8vIFJlYXNzaWduIGNvbG9yIHZhcnMgdG8gc2VtYW50aWMgY29sb3Igc2NoZW1lXG4vL0NVU1RPTVxuJHdoaXRlOiAjRkZGRkZGO1xuJGJsYWNrOiAjMDAwO1xuJGJsYWNrLTgwMDogIzRhNGE0YTtcbiRiZy1ncmF5OiAjRjBGMEYwO1xuJGdyYXk6ICM0QTRBNEE7XG4vLyRncmF5LWxpZ2h0OjtcbiRncmF5LXdhcm06ICM2YTYyNWE7XG4kZ3JheS1ob3ZlcjogIzMzMzMzMztcbiRncmF5LWRpc2FibGVkOiAjZDJkMGNkO1xuJGdyYXktMTAwOiAjZjBlZmVlO1xuJGdyYXktdGV4dDogJGdyYXktd2FybTtcbiRncmF5LWFjdGl2ZTogI0E2QTE5QztcbiR0ZXh0OiAkZ3JheS13YXJtO1xuLy8kZ3JheS0yMDA6ICNmOGY5ZmE7XG4vLyRncmF5LTMwMDogI2Y4ZjlmYTtcbi8vJGdyYXktNDAwOiAjZjhmOWZhO1xuLy8kZ3JheS01MDA6ICNmOGY5ZmE7XG4vLyRncmF5LTYwMDogI2Y4ZjlmYTtcbi8vJGdyYXktNzAwOiAjZjhmOWZhO1xuJGdyYXktODAwOiAjZjhmOWZhO1xuLy8kZ3JheS05MDA6ICNmOGY5ZmE7XG5cbi8vVEhFTUVcbiRyZWQ6ICNlZDAwMzk7XG4kcmVkLWhvdmVyOiAjODkyNzM3O1xuJHllbGxvdzogI2Q0YWYzNztcbiRncmVlbjogJHByaW1hcnktc2hhZGU7XG4kZ3JlZW4taG92ZXI6ICM0Mzc1MmI7XG4kY3lhbjogIzE3YTJiODtcbi8vJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuLy8kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG5cbiRjb2xvcl8xOiAjNkE2MjVBO1xuJGNvbG9yXzI6ICMwOTU3NTE7XG4kY29sb3JfMzogd2hpdGU7XG4kZm9udC1mYW1pbHlfMTogXCJpY29tb29uXCI7XG4kYmFja2dyb3VuZC1jb2xvcl8xOiB3aGl0ZTtcbiRiYWNrZ3JvdW5kLWNvbG9yXzI6ICM5OEE5MkE7XG4kYmFja2dyb3VuZC1jb2xvcl8zOiAjRjBFRkVEO1xuJGJvcmRlci1jb2xvcl8xOiAjOThBOTJBO1xuXG4kdGhlbWUtY29sb3JzOiAocHJpbWFyeTogJGFjY2VudC1zaGFkZSwgc2Vjb25kYXJ5OiAkcHJpbWFyeS1zaGFkZSwgc3VjY2VzczogJGdyZWVuLCBpbmZvOiAkY3lhbiwgd2FybmluZzogJHllbGxvdywgZGFuZ2VyOiAkcmVkLCBsaWdodDogJGdyYXktMTAwLCBkYXJrOiAkZ3JheS04MDApO1xuJGJyYW5kLXByaW1hcnk6ICRhY2NlbnQtc2hhZGU7XG4vLyRicmFuZC1zdWNjZXNzOiAkZ3JlZW47XG4vLyRicmFuZC1pbmZvOiAkdGVhbDtcbi8vJGJyYW5kLXdhcm5pbmc6ICRvcmFuZ2U7XG4vLyRicmFuZC1kYW5nZXI6ICRyZWQ7XG4kYnJhbmQtaW52ZXJzZTogJHByaW1hcnktc2hhZGU7XG4vLyBCb2R5XG4kdGV4dC1wcmltYXJ5OiAkZ3JheTtcblxuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuLy8kYm9keS1iZzogJHdoaXRlO1xuLy8kYm9keS1jb2xvcjogJGdyYXktZGFyaztcbiRpbnZlcnNlLWJnOiAkcHJpbWFyeS1zaGFkZTtcbi8vJGludmVyc2UtY29sb3I6ICRncmF5LWxpZ2h0ZXI7XG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cbiRsaW5rLWNvbG9yOiAkYWNjZW50LXNoYWRlO1xuJGxpbmstZGVjb3JhdGlvbjogbm9uZTtcbiRsaW5rLWhvdmVyLWNvbG9yOiAkcHJpbWFyeS1zaGFkZTtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZTtcbi8vIENvbW1lbnRzXG4kY29tbWVudC1zcGFjZXIteDogMS4yNWVtO1xuJGNvbW1lbnQtc3BhY2VyLXk6IDEuMjVlbTtcbi8vIFJlc3BvbnNpdmUgZm9udCBzaXplc1xuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6IHRydWU7XG5cbi8vKiAqKioqKioqKioqKioqKiogUEFHRSBDT05UQUlORVIgKi9cblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgICAgICAgeHhzOiAwLFxuICAgICAgICB4eHMtcGx1czogMzgwcHgsXG4gICAgICAgIHhzOiA0ODBweCxcbiAgICAgICAgeHMtcGx1czogNTc2cHgsXG4gICAgICAgIHNtLW1pbnVzOiA2ODBweCxcbiAgICAgICAgc206IDc2OHB4LFxuICAgICAgICBtZDogOTkycHgsXG4gICAgICAgIG1kLXBsdXM6IDEwMjRweCxcbiAgICAgICAgbGc6IDEyMDBweCxcbiAgICAgICAgeGw6IDE2MDBweCxcbik7XG5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gICAgICAgIHNtOiA1NDBweCxcbiAgICAgICAgbWQ6IDc2OHB4LFxuICAgICAgICBsZzogOTkycHgsXG4gICAgICAgIHhsOiAxMjQwcHhcbik7XG5cbi8vKiAqKioqKioqKioqKioqKiogRk9OVFMgLyBJQ09OUyAqL1xuXG4kb3BlbnNhbnMtcmVndWxhcjogJ29wZW5zYW5zLXJlZ3VsYXInLCBBcmlhbCwgc2Fucy1zZXJpZjtcblxuJGZlZHJhLW1lZGl1bTogJ2ZlZHJhLW1lZGl1bScsIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGZlZHJhLWJvbGQ6ICdmZWRyYS1ib2xkJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kZmVkcmEtcmVndWxhcjogJ2ZlZHJhLXJlZ3VsYXInLCBBcmlhbCwgc2Fucy1zZXJpZjtcblxuJEZTTWUtbGlnaHQ6ICdGU01lLWxpZ2h0JywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kRlNNZS1yZWd1bGFyOiAnRlNNZS1yZWd1bGFyJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kRlNNZS1ib2xkOiAnRlNNZS1ib2xkJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kRlNNZS1saWdodGl0YWxpYzogJ0ZTTWUtbGlnaHRpdGFsaWMnLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRGU01lLWl0YWxpYzogJ0ZTTWUtaXRhbGljJywgQXJpYWwsIHNhbnMtc2VyaWY7XG5cbiRpY29tb29uOiAnaWNvbW9vbic7XG4iLCJAaW1wb3J0IFwiYm91cmJvbi9ib3VyYm9uXCI7XG5cbkBtaXhpbiBmb250LWZhY2UoXG4gICRmb250LWZhbWlseSxcbiAgJGZpbGUtcGF0aCxcbiAgJHdlaWdodDogbm9ybWFsLFxuICAkc3R5bGU6IG5vcm1hbCxcbiAgJGFzc2V0LXBpcGVsaW5lOiAkYXNzZXQtcGlwZWxpbmUsXG4gICRmaWxlLWZvcm1hdHM6IGVvdCB3b2ZmMiB3b2ZmIHR0ZiBzdmcpIHtcblxuICAkZm9udC11cmwtcHJlZml4OiBmb250LXVybC1wcmVmaXhlcigkYXNzZXQtcGlwZWxpbmUpO1xuXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJHN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcblxuICAgIHNyYzogZm9udC1zb3VyY2UtZGVjbGFyYXRpb24oXG4gICAgICAgICAgICAgICAgICAgICRmb250LWZhbWlseSxcbiAgICAgICAgICAgICAgICAgICAgJGZpbGUtcGF0aCxcbiAgICAgICAgICAgICAgICAgICAgJGFzc2V0LXBpcGVsaW5lLFxuICAgICAgICAgICAgICAgICAgICAkZmlsZS1mb3JtYXRzLFxuICAgICAgICAgICAgICAgICAgICAkZm9udC11cmwtcHJlZml4XG4gICAgKTtcbiAgfVxufVxuXG4vLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoXG4gICRuYW1lLFxuICAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLFxuICAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKVxuKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKFxuICAgICRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSxcbiAgICBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksXG4gICAgbnVsbFxuICApO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XG4vLyB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2YgYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAwLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKFxuICAkbG93ZXIsXG4gICR1cHBlcixcbiAgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50c1xuKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXg6ICN7JGd1dHRlcn07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi10b3A6IGNhbGMoXG4gICAgdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15KSAqIC0xXG4gICk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1yaWdodDogY2FsYyhcbiAgICB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgpICogLTAuNVxuICApOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYyhcbiAgICB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgpICogLTAuNVxuICApOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC8vIEFkZCBib3ggc2l6aW5nIGlmIG9ubHkgdGhlIGdyaWQgaXMgbG9hZGVkXG4gIGJveC1zaXppbmc6IGlmKFxuICAgIHZhcmlhYmxlLWV4aXN0cyhpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nKSBhbmQgJGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcsXG4gICAgYm9yZGVyLWJveCxcbiAgICBudWxsXG4gICk7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSBzZXQgdGhlIHdpZHRoXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFByZXZlbnQgYC5jb2wtYXV0b2AsIGAuY29sYCAoJiByZXNwb25zaXZlIHZhcmlhbnRzKSBmcm9tIGJyZWFraW5nIG91dCB0aGUgZ3JpZFxuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKFxuICAgIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteCkgKiAwLjVcbiAgKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKFxuICAgIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteCkgKiAwLjVcbiAgKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXRvcDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15KTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplOiBmYWxzZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgQGlmICRzaXplIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG4gIH0gQGVsc2Uge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiBkaXZpZGUoJHNpemUsICRjb2x1bW5zKTtcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG5cbi8vIFJvdyBjb2x1bW5zXG4vL1xuLy8gU3BlY2lmeSBvbiBhIHBhcmVudCBlbGVtZW50KGUuZy4sIC5yb3cpIHRvIGZvcmNlIGltbWVkaWF0ZSBjaGlsZHJlbiBpbnRvIE5OXG4vLyBudW1iZXJvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGRpdmlkZSgxMDAlLCAkY291bnQpO1xuICB9XG59XG5cbi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucyhcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsXG4gICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCxcbiAgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50c1xuKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgIC8vIC5yb3ctY29scyBkZWZhdWx0cyBtdXN0IGFsbCBhcHBlYXIgYmVmb3JlIC5jb2wgb3ZlcnJpZGVzIHNvIHRoZXkgY2FuIGJlIG92ZXJyaWRkZW4uXG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4OiAxIDAgMCU7IC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgfVxuXG4gICAgICAucm93LWNvbHMjeyRpbmZpeH0tYXV0byA+ICoge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZ3JpZC1yb3ctY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcbiAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcm93LWNvbHMoJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90KCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7XG4gICAgICAgICAgICAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICAvL1xuICAgICAgLy8gTWFrZSB1c2Ugb2YgYC5nLSpgLCBgLmd4LSpgIG9yIGAuZ3ktKmAgdXRpbGl0aWVzIHRvIGNoYW5nZSBzcGFjaW5nIGJldHdlZW4gdGhlIGNvbHVtbnMuXG4gICAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGd1dHRlcnMge1xuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3gjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXg6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neSN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vQnV0dG9uc1xuQG1peGluIGJ1dHRvbl9wcmltYXJ5X2dob3N0KCRjb2xvciwgJGNvbG9yLWhvdmVyKSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBjb2xvcjogJGNvbG9yO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAwLjVlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LWZhbWlseTogJEZTTWUtYm9sZDtcbiAgcGFkZGluZzogMTNweCAxMHB4O1xuICBtYXgtaGVpZ2h0OiA1MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDYsIDk4LCA5MCwgMC4yNSk7XG4gICAgY29sb3I6ICM2YTYyNWE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGF7XG4gICAgICBjb2xvcjogIzZhNjI1YTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbl9wcmltYXJ5X2dob3N0X2Fycm93KCRjb2xvciwgJGNvbG9yLWhvdmVyKSB7XG4gIEBpbmNsdWRlIGJ1dHRvbl9wcmltYXJ5X2dob3N0KCRjb2xvciwgJGNvbG9yLWhvdmVyKTtcbiAgJjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAkaWNvbW9vbjtcbiAgICBjb250ZW50OiAnXFxlOTFjJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbl9wcmltYXJ5X2dob3N0X2xpdHRsZSgkY29sb3IsICRib3JkZXItY29sb3IsICRib3JkZXItY29sb3ItaG92ZXIpIHtcbiAgbWF4LWhlaWdodDogNDBweDtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuXG5AbWl4aW4gYnV0dG9uX3ByaW1hcnkoJGJhY2tncm91bmQtY29sb3IsICRiYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLCAkY29sb3IpIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDUwcHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICBjb2xvcjogJHdoaXRlO1xuICBsaW5lLWhlaWdodDogMC41ZW07XG4gIGZvbnQtZmFtaWx5OiAkRlNNZS1ib2xkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGF7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmVlbi1ob3ZlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZvbnQtZmFtaWx5OiAkaWNvbW9vbjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbl9wcmltYXJ5X2xpdHRsZSgkYmFja2dyb3VuZC1jb2xvciwgJGJhY2tncm91bmQtY29sb3ItaG92ZXIsICRjb2xvcikge1xuICBAaW5jbHVkZSBidXR0b25fcHJpbWFyeSgkYmFja2dyb3VuZC1jb2xvciwgJGJhY2tncm91bmQtY29sb3ItaG92ZXIsICRjb2xvcik7XG4gIG1heC1oZWlnaHQ6IDQwcHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgcGFkZGluZzogMTBweDtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBidXR0b25fYXJyb3coJGJhY2tncm91bmQtY29sb3IsICRiYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLCAkY29sb3IpIHtcbiAgQGluY2x1ZGUgYnV0dG9uX3ByaW1hcnkoJGJhY2tncm91bmQtY29sb3IsICRiYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLCAkY29sb3IpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGZvbnQtZmFtaWx5OiAkRlNNZS1ib2xkO1xuICBmb250LXNpemU6IDE4cHg7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxlOTFjJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbl9sb2NrKCRiYWNrZ3JvdW5kLWNvbG9yLCAkYmFja2dyb3VuZC1jb2xvci1ob3Zlcikge1xuICBAaW5jbHVkZSBidXR0b25fcHJpbWFyeSgkYmFja2dyb3VuZC1jb2xvciwgJGJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdcXGU5YjknO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG59XG5cbkBtaXhpbiBidXR0b25fcHJpbWFyeV9naG9zdF9sb2NrKCRjb2xvciwgJGNvbG9yLWhvdmVyKSB7XG4gIEBpbmNsdWRlIGJ1dHRvbl9wcmltYXJ5X2dob3N0KCRjb2xvciwgJGNvbG9yLWhvdmVyKTtcbiAgYXtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LWZhbWlseTogJEZTTWUtYm9sZDtcbiAgfVxuICAmOmhvdmVye1xuICAgIGF7XG4gICAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIH1cbiAgfVxuICAmOmFmdGVyIHtcbiAgICBmb250LWZhbWlseTogJGljb21vb247XG4gICAgY29udGVudDogJ1xcZTliOSc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbl9wcmltYXJ5X2dob3N0X3VzZXIoJGNvbG9yLCAkY29sb3ItaG92ZXIpIHtcbiAgQGluY2x1ZGUgYnV0dG9uX3ByaW1hcnlfZ2hvc3QoJGNvbG9yLCAkY29sb3ItaG92ZXIpO1xuICBhe1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtZmFtaWx5OiAkRlNNZS1ib2xkO1xuICB9XG4gICY6aG92ZXJ7XG4gICAgYXtcbiAgICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgfVxuICB9XG4gICY6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJGljb21vb247XG4gICAgY29udGVudDogJ1xcZTlhYic7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi8vVHlwb3NcbkBtaXhpbiBmb250LWhlcm8oJGNvbG9yLCAkZm9udC1mYW1pbHkpIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBjb2xvcjogJGNvbG9yO1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7Zm9udC1zaXplOiAzOHB4fVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7Zm9udC1zaXplOiA0NnB4fVxufVxuXG5AbWl4aW4gZm9udC1oMSgkY29sb3IsICRmb250LWZhbWlseSkge1xuICBmb250LXNpemU6IDI4cHg7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG59XG5cbkBtaXhpbiBmb250LWgyKCRjb2xvciwgJGZvbnQtZmFtaWx5KSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgY29sb3I6ICRjb2xvcjtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbn1cblxuQG1peGluIGZvbnQtaDMoJGNvbG9yLCAkZm9udC1mYW1pbHkpIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBjb2xvcjogJGNvbG9yO1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gIH1cbn1cblxuQG1peGluIGZvbnQtaDQoJGNvbG9yLCAkZm9udC1mYW1pbHkpIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBjb2xvcjogJGNvbG9yO1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xufVxuXG5AbWl4aW4gZm9udC1oNSgkY29sb3IsICRmb250LWZhbWlseSkge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG59XG5cbkBtaXhpbiBmb250LWJvZHkoJGNvbG9yLCAkZm9udC1mYW1pbHksICRzaXplKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJHNpemU7XG59XG5cbkBtaXhpbiBmb250LXNtYWxsKCRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBmb250LWZhbWlseTogJEZTTWUtcmVndWxhcjtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG5AbWl4aW4gZm9udC1leHRyYXNtYWxsKCRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBmb250LWZhbWlseTogJEZTTWUtcmVndWxhcjtcbiAgZm9udC1zaXplOiAxMXB4O1xufSJdfQ== */
