/**
 * Usage:
 *
 *   background-color: color(white);
 */
.u-type--light {
  font-weight: 300;
}

.u-type--regular {
  font-weight: 400;
}

.u-type--medium {
  font-weight: 500;
}

.u-type--bold {
  font-weight: 700;
}

/* breakpoints */
.subway-station-connecting-line h3, .subway-station-connecting-buses h3 {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 2.6rem;
  line-height: 32px;
  font-style: normal;
  font-weight: 700;
}

@media (min-width: 768px) {
  .subway-station-connecting-line h3, .subway-station-connecting-buses h3 {
    font-size: 3.4rem;
    line-height: 40px;
  }
}

.subway-station-connecting-line {
  margin-bottom: 50px;
}

.subway-station-connecting-line .connecting-line-wrapper {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  border-bottom: 1px solid #767676;
  padding: 40px 0;
}

@media (max-width: 639px) {
  .subway-station-connecting-line .connecting-line-wrapper {
    flex-wrap: wrap;
  }
}

.subway-station-connecting-line .connecting-line-wrapper .connecting-line-left, .subway-station-connecting-line .connecting-line-wrapper .connecting-line-right {
  display: -webkit-box;
  display: flex;
}

.subway-station-connecting-line .connecting-line-wrapper .connecting-line {
  width: 50%;
}

@media (max-width: 639px) {
  .subway-station-connecting-line .connecting-line-wrapper .connecting-line {
    width: 100%;
  }
  .subway-station-connecting-line .connecting-line-wrapper .connecting-line:first-child {
    margin-bottom: 30px;
  }
}

.subway-station-connecting-line .connecting-line-wrapper .wrapper-line-id {
  height: 100%;
  padding-right: 20px;
  font-weight: bold;
  font-size: 24px;
}

.subway-station-connecting-line .connecting-line-wrapper .line-1, .subway-station-connecting-line .connecting-line-wrapper .line-2, .subway-station-connecting-line .connecting-line-wrapper .line-3, .subway-station-connecting-line .connecting-line-wrapper .line-4 {
  font-family: "Swiss 721 W01", Arial, sans-serif;
  height: 32px;
  width: 32px;
  line-height: 32px;
  border-radius: 100%;
  color: #ffffff;
  text-align: center;
  display: inline-block;
}

.subway-station-connecting-line .connecting-line-wrapper .line-1 {
  background: #f8c300;
  color: #000;
}

.subway-station-connecting-line .connecting-line-wrapper .line-2 {
  background: #00923f;
}

.subway-station-connecting-line .connecting-line-wrapper .line-3 {
  background: #0082c9;
}

.subway-station-connecting-line .connecting-line-wrapper .line-4 {
  background: #a21a68;
}

.subway-station-connecting-line .connecting-line-direction {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.8rem;
  line-height: 28px;
  font-style: normal;
  font-weight: 300;
  font-weight: bold;
}

@media (min-width: 768px) {
  .subway-station-connecting-line .connecting-line-direction {
    font-size: 2rem;
    line-height: 32px;
  }
}

.subway-station-connecting-line .connecting-line-departing {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.8rem;
  line-height: 28px;
  font-style: normal;
  font-weight: 300;
}

@media (min-width: 768px) {
  .subway-station-connecting-line .connecting-line-departing {
    font-size: 2rem;
    line-height: 32px;
  }
}

.subway-station-connecting-line a {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.6rem;
  line-height: 24px;
  font-style: normal;
  font-weight: 300;
  color: #0070cd;
  text-decoration: none !important;
  position: relative;
  font-weight: 400;
  display: block;
  font-size: 20px;
}

.subway-station-connecting-line a::after {
  content: "";
  position: absolute;
  margin-left: 8px;
  height: 20px;
  width: 20px;
  bottom: 3px;
  background-image: url("/-/media/Project/TTC/DevProto/Icons/arrow-background-right-outline.svg");
  background-size: cover;
}

.subway-station-connecting-line a:hover, .subway-station-connecting-line a:focus {
  text-decoration: underline;
}

.subway-station-connecting-buses h3 {
  padding-bottom: 40px;
}

.subway-station-connecting-buses .connecting-buses {
  display: -webkit-box;
  display: flex;
  border-bottom: 1px solid #767676;
  padding: 15px 28px 15px 0;
}

@media (max-width: 639px) {
  .subway-station-connecting-buses .connecting-buses {
    display: block;
  }
}

.subway-station-connecting-buses .wrapper-connecting-buses-route {
  display: -webkit-box;
  display: flex;
}

.subway-station-connecting-buses .connecting-buses-route-number {
  font-family: "Swiss 721 W01", Arial, sans-serif;
  font-weight: normal;
  font-size: 22px;
  border-radius: 4px;
  min-width: 56px;
  width: 56px;
  text-align: center;
  color: #ffffff;
  background: #da251d;
  margin-right: 8px;
  border: 2px solid transparent;
  max-height: 32px;
  line-height: 27px;
}

.subway-station-connecting-buses .connecting-buses-route-number.night-bus {
  background-color: #fff;
  border-color: #024182;
  border-radius: 4px;
  color: #024182;
  position: relative;
  min-width: 56px;
  padding: 0 16px 0 2px;
}

.subway-station-connecting-buses .connecting-buses-route-number.night-bus:after {
  content: " ";
  display: block;
  width: 12px;
  height: 11px;
  position: absolute;
  top: 6px;
  right: 2px;
  background: url("/-/media/Project/TTC/DevProto/Icons/night-bus.svg") no-repeat;
}

.subway-station-connecting-buses .connecting-buses-route-number.express-bus {
  background: #00923f;
}

.subway-station-connecting-buses .connecting-buses-route-number.downtown-express-bus {
  background-color: #fff;
  border-color: #00923f;
  color: #00923f;
}

.subway-station-connecting-buses .connecting-buses-route-number.community-bus {
  background-color: #808080;
  color: #fff;
}

.subway-station-connecting-buses .connecting-buses-route-schedule-url {
  margin-left: auto;
}

@media (max-width: 639px) {
  .subway-station-connecting-buses .connecting-buses-route-schedule-url {
    margin-top: 0;
    padding-left: 66px;
  }
}

.subway-station-connecting-buses .connecting-buses-route-schedule-url a {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.6rem;
  line-height: 24px;
  font-style: normal;
  font-weight: 300;
  color: #0070cd;
  text-decoration: none !important;
  position: relative;
  font-weight: 400;
  display: block;
}

.subway-station-connecting-buses .connecting-buses-route-schedule-url a::after {
  content: "";
  position: absolute;
  margin-left: 8px;
  height: 20px;
  width: 20px;
  bottom: 3px;
  background-image: url("/-/media/Project/TTC/DevProto/Icons/arrow-background-right-outline.svg");
  background-size: cover;
}

.subway-station-connecting-buses .connecting-buses-route-schedule-url a:hover, .subway-station-connecting-buses .connecting-buses-route-schedule-url a:focus {
  text-decoration: underline;
}

.connecting-info {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.6rem;
  line-height: 24px;
  font-style: normal;
  font-weight: 400;
  padding-top: 15px;
  margin-bottom: 40px;
}

@media (min-width: 768px) {
  .connecting-info {
    font-size: 1.6rem;
    line-height: 16px;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFic3RyYWN0cy9mdW5jdGlvbnMvX2NvbG9yLnNjc3MiLCJhYnN0cmFjdHMvdmFycy9fdHlwZS5zY3NzIiwiYWJzdHJhY3RzL19taXhpbnMuc2NzcyIsImNvbXBvbmVudC1zdWJ3YXktY29ubmVjdGluZy1saW5lLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvQGNvbW1vbi11aS90eXBvZ3JhcGh5L19taXhpbnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9pb3RhY3NzL21vZHVsZXMvaW90YWNzcy10b29scy1jb3JlL3V0aWxpdGllcy9fZXh0cmFjdC10eXBlLXNpemVzLnNjc3MiLCJhYnN0cmFjdHMvZnVuY3Rpb25zL19weC10by1yZW0uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9pb3RhY3NzL21vZHVsZXMvaW90YWNzcy10b29scy1jb3JlL2xpYnJhcmllcy9fZ2VuZXJhdGUtdHlwZS1zaXplcy5zY3NzIiwiY29tcG9uZW50LXN1YndheS1jb25uZWN0aW5nLWxpbmUuY3NzIiwiYWJzdHJhY3RzL3ZhcnMvX2NvbG9ycy5zY3NzIiwiYWJzdHJhY3RzL21peGlucy9fc2Fzcy1tcS1tb2Quc2NzcyIsImFic3RyYWN0cy9taXhpbnMvX2xpbmsuc2NzcyIsImFic3RyYWN0cy9mdW5jdGlvbnMvX3NwYWNlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQzhQRDtFQUNFLGlCQUFhO0NBQ2Q7O0FBRkQ7RUFDRSxpQkFBYTtDQUNkOztBQUZEO0VBQ0UsaUJBQWE7Q0FDZDs7QUFGRDtFQUNFLGlCQUFhO0NBQ2Q7O0FDeFBILGlCQUFpQjtBQ1hqQjtFQ0dFLHlDSEZ3RDtFR0d4RCxtQ0FBa0M7RUFDbEMsb0NBQW1DO0VDSGpDLGtCQ1VxRDtFRFRyRCxrQkp5RDRCO0VHdkMxQixtQkhQYztFR09kLGlCSGJLO0NFTFI7O0FJVUs7RUpiUjtJRUVJLGtCQ1VxRDtJRFRyRCxrQkowRDBCO0dFMUQzQjtDS2lDRjs7QUw5QkQ7RUFDRSxvQkFBbUI7Q0E4RHBCOztBQS9ERDtFQUdJLHFCQUFhO0VBQWIsY0FBYTtFQUNiLDBCQUE4QjtVQUE5QiwrQkFBOEI7RUFDOUIsaUNNQWdCO0VOQ2hCLGdCQUFlO0NBNkNoQjs7QU95S0s7RVA1TlI7SUFRTSxnQkFBZTtHQTJDbEI7Q0tKRjs7QUwvQ0Q7RUFXTSxxQkFBYTtFQUFiLGNBQWE7Q0FDZDs7QUFaTDtFQWNNLFdBQVU7Q0FPWDs7QU91TUc7RVA1TlI7SUFnQlEsWUFBVztHQUtkO0VBckJMO0lBa0JVLG9CQUFtQjtHQUNwQjtDSzZDUjs7QUxoRUQ7RUF1Qk0sYUFBWTtFQUNaLG9CQUFtQjtFQUNuQixrQkFBaUI7RUFDakIsZ0JBQWU7Q0FDaEI7O0FBM0JMO0VBNkJNLGdEQUErQztFQUMvQyxhQUFZO0VBQ1osWUFBVztFQUNYLGtCQUFpQjtFQUNqQixvQkFBbUI7RUFDbkIsZU10Q1U7RU51Q1YsbUJBQWtCO0VBQ2xCLHNCQUFxQjtDQUN0Qjs7QUFyQ0w7RUF1Q00sb0JBQW1CO0VBQ25CLFlBQVc7Q0FDWjs7QUF6Q0w7RUEyQ00sb0JBQW1CO0NBQ3BCOztBQTVDTDtFQThDTSxvQkFBbUI7Q0FDcEI7O0FBL0NMO0VBaURNLG9CQUFtQjtDQUNwQjs7QUFsREw7RUNIRSx5Q0hKdUQ7RUdLdkQsbUNBQWtDO0VBQ2xDLG9DQUFtQztFQ0hqQyxrQkNVcUQ7RURUckQsa0JKK0k0QjtFRzdIMUIsbUJIUGM7RUdPZCxpQkhoQk07RUV1RFIsa0JBQWlCO0NBQ2xCOztBSWhESztFSlBSO0lFSkksZ0JDVXFEO0lEVHJELGtCSmdKMEI7R0V0RjNCO0NLOERGOztBTHJIRDtFQ0hFLHlDSEp1RDtFR0t2RCxtQ0FBa0M7RUFDbEMsb0NBQW1DO0VDSGpDLGtCQ1VxRDtFRFRyRCxrQkorSTRCO0VHN0gxQixtQkhQYztFR09kLGlCSGhCTTtDRTJEVDs7QUluREs7RUpQUjtJRUpJLGdCQ1VxRDtJRFRyRCxrQkpnSjBCO0dFbkYzQjtDSzRFRjs7QUx0SUQ7RUNIRSx5Q0hKdUQ7RUdLdkQsbUNBQWtDO0VBQ2xDLG9DQUFtQztFQ0hqQyxrQkNVcUQ7RURUckQsa0JKcU8yQjtFR25OekIsbUJIUGM7RUdPZCxpQkhoQk07RVVzQ1YsZUZwQ2dCO0VFcUNoQixpQ0FBZ0M7RUFDaEMsbUJBQWtCO0VBQ2xCLGlCQUFnQjtFQUNoQixlQUFjO0VSb0JaLGdCQUFlO0NBQ2hCOztBQTlESDtFUTRDSSxZQUFXO0VBQ1gsbUJBQWtCO0VBQ2xCLGlCQ2xEb0I7RURtRHBCLGFDbkRvQjtFRG9EcEIsWUNwRG9CO0VEcURwQixZQUFXO0VBQ1gsZ0dBQStGO0VBQy9GLHVCQUFzQjtDQUN2Qjs7QVJwREg7RVF1REksMkJBQTBCO0NBQzNCOztBUlNIO0VBRUkscUJBQW9CO0NBQ3JCOztBQUhIO0VBS0kscUJBQWE7RUFBYixjQUFhO0VBQ2IsaUNNbEVnQjtFTm1FaEIsMEJBQXlCO0NBSTFCOztBT2dKSztFUDNKUjtJQVNNLGVBQWM7R0FFakI7Q0t5R0Y7O0FMcEhEO0VBYUkscUJBQWE7RUFBYixjQUFhO0NBQ2Q7O0FBZEg7RUFnQkksZ0RBQStDO0VBQy9DLG9CQUFtQjtFQUNuQixnQkFBZTtFQUNmLG1CQUFrQjtFQUNsQixnQkFBZTtFQUNmLFlBQVc7RUFDWCxtQkFBa0I7RUFDbEIsZU01Rlk7RU42Rlosb0JNM0ZpQjtFTjRGakIsa0JBQWlCO0VBQ2pCLDhCQUE2QjtFQUM3QixpQkFBZ0I7RUFDaEIsa0JBQWlCO0NBZ0NsQjs7QUE1REg7RUE4Qk0sdUJBQXNCO0VBQ3RCLHNCQUFxQjtFQUNyQixtQkFBa0I7RUFDbEIsZUFBYztFQUNkLG1CQUFrQjtFQUNsQixnQkFBZTtFQUNmLHNCQUFxQjtDQVd0Qjs7QUEvQ0w7RUFzQ1EsYUFBWTtFQUNaLGVBQWM7RUFDZCxZQUFXO0VBQ1gsYUFBWTtFQUNaLG1CQUFrQjtFQUNsQixTQUFRO0VBQ1IsV0FBVTtFQUNWLCtFQUE4RTtDQUMvRTs7QUE5Q1A7RUFpRE0sb0JBQW1CO0NBQ3BCOztBQWxETDtFQW9ETSx1QkFBc0I7RUFDdEIsc0JBQXFCO0VBQ3JCLGVBQWM7Q0FDZjs7QUF2REw7RUF5RE0sMEJBQXlCO0VBQ3pCLFlBQVc7Q0FDWjs7QUEzREw7RUE4REksa0JBQWlCO0NBUWxCOztBT3FGSztFUDNKUjtJQWdFTSxjQUFhO0lBQ2IsbUJBQWtCO0dBS3JCO0NLaUhGOztBTHZMRDtFQ3BFRSx5Q0hKdUQ7RUdLdkQsbUNBQWtDO0VBQ2xDLG9DQUFtQztFQ0hqQyxrQkNVcUQ7RURUckQsa0JKcU8yQjtFR25OekIsbUJIUGM7RUdPZCxpQkhoQk07RVVzQ1YsZUZwQ2dCO0VFcUNoQixpQ0FBZ0M7RUFDaEMsbUJBQWtCO0VBQ2xCLGlCQUFnQjtFQUNoQixlQUFjO0NSNkZYOztBQXJFTDtFUXJCSSxZQUFXO0VBQ1gsbUJBQWtCO0VBQ2xCLGlCQ2xEb0I7RURtRHBCLGFDbkRvQjtFRG9EcEIsWUNwRG9CO0VEcURwQixZQUFXO0VBQ1gsZ0dBQStGO0VBQy9GLHVCQUFzQjtDQUN2Qjs7QVJhSDtFUVZJLDJCQUEwQjtDQUMzQjs7QVJrRkg7RUM3SUUseUNISnVEO0VHS3ZELG1DQUFrQztFQUNsQyxvQ0FBbUM7RUNIakMsa0JDVXFEO0VEVHJELGtCSndJNEI7RUd0SDFCLG1CSFBjO0VHT2QsaUJIZlE7RUU0SVosa0JBQWlCO0VBQ2pCLG9CQUFtQjtDQUNwQjs7QUl2SU87RUptSVI7SUU5SUksa0JDVXFEO0lEVHJELGtCSnlJMEI7R0VRN0I7Q0sySkEiLCJmaWxlIjoiY29tcG9uZW50LXN1YndheS1jb25uZWN0aW5nLWxpbmUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIFVzYWdlOlxyXG4gKlxyXG4gKiAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHdoaXRlKTtcclxuICovXHJcbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xyXG4kZnVuY3Rpb25hbC1jb2xvcnM6ICgpICFkZWZhdWx0O1xyXG5cclxuQGZ1bmN0aW9uIGNvbG9yKCRjb2xvcikge1xyXG4gIEBpZiBtYXAtZ2V0KCRjb2xvcnMsICRjb2xvcikge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KCRjb2xvcnMsICRjb2xvcik7XHJcbiAgfSBAZWxzZSBpZiBtYXAtZ2V0KCRmdW5jdGlvbmFsLWNvbG9ycywgJGNvbG9yKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGZ1bmN0aW9uYWwtY29sb3JzLCAkY29sb3IpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgLyogU3R5bGVmbXQgY2hhbmdlcyB0aGUgcXVvdGVzIGV2ZXJ5IHRpbWUsIHNvIHR1cm5pbmcgb2ZmIHRoZSBlcnJvciBoZXJlICovXHJcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc3RyaW5nLXF1b3RlcyAqL1xyXG4gICAgQGVycm9yIFwiQ29sb3IgXFxcIiN7JGNvbG9yfVxcXCJjb3VsZCBub3QgYmUgZm91bmRcIjtcclxuICB9XHJcbn1cclxuIiwiJHVpLXR5cG9ncmFwaHktc3RhY2stZGVmYXVsdDogVmVyZGFuYSwgVGFob21hLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xyXG5cclxuJHVpLXR5cG9ncmFwaHktc3RhY2staGVhZGluZ3M6IFZlcmRhbmEsIFRhaG9tYSwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcclxuXHJcbiR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0czogKFxyXG4gIC8vIHRoaW46IDEwMCxcclxuICBsaWdodDogMzAwLFxyXG4gIHJlZ3VsYXI6IDQwMCxcclxuICBtZWRpdW06IDUwMCxcclxuICBib2xkOiA3MDAsXHJcbiAgLy8gYmxhY2s6IDkwMFxyXG4pICFkZWZhdWx0O1xyXG5cclxuJHVpLXR5cG9ncmFwaHktZGVmYXVsdDogKFxyXG4gIGZvbnQtZmFtaWx5OiAkdWktdHlwb2dyYXBoeS1zdGFjay1kZWZhdWx0LFxyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbCxcclxuICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIG1lZGl1bSksXHJcbiAgbWFyZ2luOiAwLFxyXG4pICFkZWZhdWx0O1xyXG5cclxuXHJcbiR1aS10eXBvZ3JhcGh5LXN0eWxlczogKFxyXG4gIC8vaG9tZXBhZ2UgaGVhZGVyXHJcbiAgZDYtbGgtbGc6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDMycHgpLCA0MHB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDYxcHgpLCA3NnB4KSxcclxuICAgICksXHJcbiAgICBmb250LWZhbWlseTogJHVpLXR5cG9ncmFwaHktc3RhY2staGVhZGluZ3MsXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIGJvbGQpLFxyXG4gICAgbWFyZ2luOiAwIDAgc3BhY2UoKSAwLFxyXG4gICksXHJcbiAgZDY6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDMycHgpLCA0MHB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDUwcHgpLCA1NnB4KSxcclxuICAgICksXHJcbiAgICBmb250LWZhbWlseTogJHVpLXR5cG9ncmFwaHktc3RhY2staGVhZGluZ3MsXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIGJvbGQpLFxyXG4gICAgbWFyZ2luOiAwIDAgc3BhY2UoKSAwLFxyXG4gICksXHJcbiAgZDU6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDI5cHgpLCAzNnB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDQxcHgpLCA0NHB4KSxcclxuICAgICksXHJcbiAgICBmb250LWZhbWlseTogJHVpLXR5cG9ncmFwaHktc3RhY2staGVhZGluZ3MsXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIGJvbGQpLFxyXG4gICAgbWFyZ2luOiAwIDAgc3BhY2UoKSAwLFxyXG4gICksXHJcbiAgZDUtbGlnaHQ6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDI5cHgpLCAzNnB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDQxcHgpLCA0NHB4KSxcclxuICAgICksXHJcbiAgICBmb250LWZhbWlseTogJHVpLXR5cG9ncmFwaHktc3RhY2staGVhZGluZ3MsXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsbGlnaHQpLFxyXG4gICAgbWFyZ2luOiAwIDAgc3BhY2UoKSAwLFxyXG4gICksXHJcbiAgZDQ6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDI2cHgpLCAzMnB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDM0cHgpLCA0MHB4KSxcclxuICAgICksXHJcbiAgICBmb250LWZhbWlseTogJHVpLXR5cG9ncmFwaHktc3RhY2staGVhZGluZ3MsXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIGJvbGQpLFxyXG4gICAgbWFyZ2luOiAwIDAgc3BhY2UoKSAwLFxyXG4gICksXHJcbiAgZDM6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDIzcHgpLCAyOHB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDI4cHgpLCAzNnB4KSxcclxuICAgICksXHJcbiAgICBmb250LWZhbWlseTogJHVpLXR5cG9ncmFwaHktc3RhY2staGVhZGluZ3MsXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIGJvbGQpLFxyXG4gICAgbWFyZ2luOiAwIDAgc3BhY2UoKSAwLFxyXG4gICksXHJcbiAgZDI6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDIxcHgpLCAyOHB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDI0cHgpLCAzMHB4KSxcclxuICAgICksXHJcbiAgICBmb250LWZhbWlseTogJHVpLXR5cG9ncmFwaHktc3RhY2staGVhZGluZ3MsXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIGJvbGQpLFxyXG4gICAgbWFyZ2luOiAwIDAgc3BhY2UoKSAwLFxyXG4gICksXHJcbiAgZDE6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDE4cHgpLCAyNHB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDIwcHgpLCAyNHB4KSxcclxuICAgICksXHJcbiAgICBmb250LWZhbWlseTogJHVpLXR5cG9ncmFwaHktc3RhY2staGVhZGluZ3MsXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIGJvbGQpLFxyXG4gICAgbWFyZ2luOiAwIDAgc3BhY2UoKSAwLFxyXG4gICksXHJcbiAgaDJzejogKFxyXG4gICAgc2l6ZXM6IDIuOXJlbSxcclxuICAgIGZvbnQtZmFtaWx5OiAkdWktdHlwb2dyYXBoeS1zdGFjay1oZWFkaW5ncyxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgYm9sZCksXHJcbiAgICBtYXJnaW46IDAgMCBzcGFjZSgpIDAsXHJcbiAgKSxcclxuICBoM3N6OiAoXHJcbiAgICBzaXplczogMi4ycmVtLFxyXG4gICAgZm9udC1mYW1pbHk6ICR1aS10eXBvZ3JhcGh5LXN0YWNrLWhlYWRpbmdzLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBib2xkKSxcclxuICAgIG1hcmdpbjogMCAwIHNwYWNlKCkgMCxcclxuICApLFxyXG5cclxuICBoNHN6OiAoXHJcbiAgICBzaXplczogMS43cmVtLFxyXG4gICAgZm9udC1mYW1pbHk6ICR1aS10eXBvZ3JhcGh5LXN0YWNrLWhlYWRpbmdzLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBib2xkKSxcclxuICAgIG1hcmdpbjogMCAwIHNwYWNlKCkgMCxcclxuICApLFxyXG4gIGg1c3o6IChcclxuICAgIHNpemVzOiAyLjRyZW0sXHJcbiAgICBmb250LWZhbWlseTogJHVpLXR5cG9ncmFwaHktc3RhY2staGVhZGluZ3MsXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIGJvbGQpLFxyXG4gICAgbWFyZ2luOiAwIDAgc3BhY2UoKSAwLFxyXG4gICksXHJcbiAgbGVhZDogKFxyXG4gICAgc2l6ZXM6IChcclxuICAgICAgbnVsbDogKGdldC1yZW0oMjJweCksIDMycHgpLFxyXG4gICAgICBtZDogKGdldC1yZW0oMjRweCksIDM2cHgpLFxyXG4gICAgKSxcclxuICAgIGZvbnQtZmFtaWx5OiAkdWktdHlwb2dyYXBoeS1zdGFjay1oZWFkaW5ncyxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgcmVndWxhciksXHJcbiAgICBmb250LXN0eWxlOiBpdGFsaWMsXHJcbiAgICBtYXJnaW46IDAgMCBzcGFjZSgpIDAsXHJcbiAgKSxcclxuICBkLXNtYWxsOiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgxOHB4KSwgMjhweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSgxNnB4KSwgMjRweCksXHJcbiAgICApLFxyXG4gICAgZm9udC1mYW1pbHk6ICR1aS10eXBvZ3JhcGh5LXN0YWNrLWhlYWRpbmdzLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBib2xkKSxcclxuICApLFxyXG4gIGQteHNtYWxsOiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgxNnB4KSwgMjRweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSgxNnB4KSwgMTZweCksXHJcbiAgICApLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCByZWd1bGFyKSxcclxuICApLFxyXG4gIGJvZHk6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDE4cHgpLCAyOHB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDIwcHgpLCAzMnB4KSxcclxuICAgICksXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIGxpZ2h0KSxcclxuICApLFxyXG4gIGJvZHkyOiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgxOHB4KSwgMjhweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSgyMHB4KSwgMzJweCksXHJcbiAgICApLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBtZWRpdW0pLFxyXG4gICksXHJcbiAgbGluazogKFxyXG4gICAgc2l6ZXM6IChcclxuICAgICAgbnVsbDogKGdldC1yZW0oMThweCksIDI4cHgpLFxyXG4gICAgICBtZDogKGdldC1yZW0oMjBweCksIDMycHgpLFxyXG4gICAgKSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgcmVndWxhciksXHJcbiAgKSxcclxuICBkYXRlOiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgxNnB4KSwgMjBweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSgxNnB4KSwgMjRweCksXHJcbiAgICApLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCByZWd1bGFyKSxcclxuICApLFxyXG4gIGhlYWRlcjogKFxyXG4gICAgc2l6ZXM6IChcclxuICAgICAgbnVsbDogKGdldC1yZW0oMTZweCksIDIwcHgpLFxyXG4gICAgICBtZDogKGdldC1yZW0oMjBweCksIDMycHgpLFxyXG4gICAgKSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgbWVkaXVtKSxcclxuICApLFxyXG4gIHN1YmhlYWRlcjogKFxyXG4gICAgc2l6ZXM6IChcclxuICAgICAgbnVsbDogKGdldC1yZW0oMThweCksIDI4cHgpLFxyXG4gICAgICBtZDogKGdldC1yZW0oMjBweCksIDMycHgpLFxyXG4gICAgKSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgbWVkaXVtKSxcclxuICApLFxyXG4gIHNpdGUtc2VhcmNoOiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgyMHB4KSwgMzJweCksXHJcbiAgICAgIHNtOiAoZ2V0LXJlbSgxNnB4KSwgMjRweCksXHJcbiAgICApLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCByZWd1bGFyKSxcclxuICApLFxyXG4gIGlucHV0OiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgxOHB4KSwgMjhweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSgxNnB4KSwgMjRweCksXHJcbiAgICApLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCByZWd1bGFyKSxcclxuICApLFxyXG4gIGJyZWFkY3J1bWI6IChcclxuICAgIHNpemVzOiAgKGdldC1yZW0oMTZweCksIDI0cHgpLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCByZWd1bGFyKSxcclxuICApLFxyXG4gIGZlYXR1cmVkOiAoXHJcbiAgICBzaXplczogIChnZXQtcmVtKDE4cHgpLCAyOHB4KSxcclxuICApLFxyXG4gIGNvcHlyaWdodDogKFxyXG4gICAgc2l6ZXM6IChcclxuICAgICAgbnVsbDogKGdldC1yZW0oMTRweCksIDI4cHgpLFxyXG4gICAgICBtZDogKGdldC1yZW0oMTNweCksIDI0cHgpLFxyXG4gICAgKSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgcmVndWxhciksXHJcbiAgKSxcclxuICBjYXB0aW9uOiAoXHJcbiAgICBzaXplczogKGdldC1yZW0oMTZweCksIDI0cHgpLFxyXG4gICksXHJcbiAgZm9ybS1sYWJlbDogKFxyXG4gICAgc2l6ZXM6IChcclxuICAgICAgbnVsbDogKGdldC1yZW0oMThweCksIDI4cHgpLFxyXG4gICAgICBtZDogKGdldC1yZW0oMTZweCksIDI0cHgpLFxyXG4gICAgKSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgbWVkaXVtKSxcclxuICApLFxyXG4gIGZvcm0taGVscGVyOiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgxOHB4KSwgMjhweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSgxNnB4KSwgMjRweCksXHJcbiAgICApLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCByZWd1bGFyKSxcclxuICApLFxyXG4gIHBkZjogKFxyXG4gICAgc2l6ZXM6IChnZXQtcmVtKDE2cHgpLCAyNHB4KSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgbGlnaHQpLFxyXG4gICksXHJcbiAgbWFwLXJlc3VsdHM6IChcclxuICAgIHNpemVzOiAoZ2V0LXJlbSgxNnB4KSwgMjBweCksXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIGxpZ2h0KSxcclxuICApLFxyXG4gIGJldGEtbm90aWNlOiAoXHJcbiAgICBzaXplczogKGdldC1yZW0oMTZweCksIDI0cHgpLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBtZWRpdW0pLFxyXG4gICksXHJcbiAgc2l0ZS13aWRlLWFsZXJ0OiAoXHJcbiAgICBzaXplczogKGdldC1yZW0oMTZweCksIDI0cHgpLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBtZWRpdW0pLFxyXG4gICksXHJcbikgIWRlZmF1bHQ7XHJcblxyXG5cclxuQGVhY2ggJG5hbWUsICRzdHlsZSBpbiAkdWktdHlwb2dyYXBoeS1zdHlsZXMge1xyXG4gICR1aS10eXBvZ3JhcGh5LXN0eWxlczogbWFwLW1lcmdlKCR1aS10eXBvZ3JhcGh5LXN0eWxlcywgKFxyXG4gICAgI3skbmFtZX06IG1hcC1tZXJnZSgkdWktdHlwb2dyYXBoeS1kZWZhdWx0LCAkc3R5bGUpXHJcbiAgKSk7XHJcbn1cclxuXHJcbkBlYWNoICRuYW1lLCAkc3R5bGUgaW4gJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzIHtcclxuICAudS10eXBlLS0jeyRuYW1lfSB7XHJcbiAgICBmb250LXdlaWdodDogI3skc3R5bGV9O1xyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbiIsIi8vIEBpbXBvcnQgJ35zYXNzLW1xL21xJztcclxuQGltcG9ydCAnbWl4aW5zL3Nhc3MtbXEtbW9kLnNjc3MnO1xyXG5AaW1wb3J0ICd+QGNvbW1vbi11aS90eXBvZ3JhcGh5L21peGlucyc7XHJcbkBpbXBvcnQgJ21peGlucy9hY2Nlc3NpYmlsaXR5JztcclxuQGltcG9ydCAnbWl4aW5zL2J1dHRvbic7XHJcbkBpbXBvcnQgJ21peGlucy9saW5rJztcclxuQGltcG9ydCAnbWl4aW5zL292ZXJsYXknO1xyXG5AaW1wb3J0ICdtaXhpbnMvdHJhbnNpdGlvbnMnO1xyXG5AaW1wb3J0ICdtaXhpbnMvc2hhZG93cyc7XHJcbkBpbXBvcnQgJ21peGlucy90YWcnO1xyXG5cclxuLy8gQmVsb3cgYXJlIG1peGluJ3MgZnJvbSBGWEFcclxuLyogYnJlYWtwb2ludHMgKi9cclxuXHJcbiRicmVhay1kZXNrdG9wOiA5NjBweDtcclxuJGJyZWFrLW1vYmlsZTogMzgwcHg7XHJcbiRicmVhay1tb2JpbGUtaG9yaXpvbnRhbDogNjQwcHg7XHJcbiRicmVhay1tb2JpbGUtbGFyZ2U6IDc4NnB4O1xyXG5AbWl4aW4gd3JhcHBlcigpIHtcclxuICAgIG1heC13aWR0aDogOTYwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xyXG59XHJcbkBtaXhpbiBjbGVhcmZpeCB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgfVxyXG59XHJcbkBtaXhpbiBmb250LXNpemUoJHNpemVWYWx1ZTogMS42KSB7XHJcbiAgICBmb250LXNpemU6ICgkc2l6ZVZhbHVlICogMTApICsgcHg7XHJcbiAgICBmb250LXNpemU6ICRzaXplVmFsdWUgKyByZW07XHJcbn1cclxuQG1peGluIG9wZW5zYW5zLWZvbnQtc3RhY2soKSB7XHJcbiAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgSGVsdmV0aWNhLCBWZXJkYW5hLCBUYWhvbWEsIHNhbnMtc2VyaWY7XHJcbn1cclxuQG1peGluIGxvYWRpbmctZ2lmKCkge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXpNaUF6TWlJZ2QybGtkR2c5SWpNeUlpQm9aV2xuYUhROUlqTXlJaUJtYVd4c1BTSmliR0ZqYXlJK0RRb2dJRHh3WVhSb0lDQnZjR0ZqYVhSNVBTSXVNalVpSUdROUlrMHhOaUF3SUVFeE5pQXhOaUF3SURBZ01DQXhOaUF6TWlCQk1UWWdNVFlnTUNBd0lEQWdNVFlnTUNCTk1UWWdOQ0JCTVRJZ01USWdNQ0F3SURFZ01UWWdNamdnUVRFeUlERXlJREFnTUNBeElERTJJRFFpTHo0TkNpQWdQSEJoZEdnZ1ptbHNiRDBuSXpGaE9EQmlOaWNnWkQwaVRURTJJREFnUVRFMklERTJJREFnTUNBeElETXlJREUySUV3eU9DQXhOaUJCTVRJZ01USWdNQ0F3SURBZ01UWWdOSG9pUGcwS0lDQWdJRHhoYm1sdFlYUmxWSEpoYm5ObWIzSnRJR0YwZEhKcFluVjBaVTVoYldVOUluUnlZVzV6Wm05eWJTSWdkSGx3WlQwaWNtOTBZWFJsSWlCbWNtOXRQU0l3SURFMklERTJJaUIwYnowaU16WXdJREUySURFMklpQmtkWEk5SWpBdU9ITWlJSEpsY0dWaGRFTnZkVzUwUFNKcGJtUmxabWx1YVhSbElpQXZQZzBLSUNBOEwzQmhkR2crRFFvOEwzTjJaejROQ2c9PSk7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxufVxyXG5AbWl4aW4gcmVzcG9uZC10bygkbWVkaWEpIHtcclxuICAgIEBpZiAkbWVkaWE9PW1vYmlsZSB7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWstbW9iaWxlKSB7XHJcbiAgICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRtZWRpYT09bW9iaWxlLWhvcml6b250YWwge1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrLW1vYmlsZS1ob3Jpem9udGFsIC0gMSkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkbWVkaWE9PW1vYmlsZS1sYXJnZSB7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWstbW9iaWxlLWxhcmdlKSB7XHJcbiAgICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRtZWRpYT09dGFibGV0IHtcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicmVhay1tb2JpbGUgKyAxKSBhbmQgKG1heC13aWR0aDogJGJyZWFrLWRlc2t0b3AgLSAxKSB7XHJcbiAgICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRtZWRpYT09YWxsLW1vYmlsZSB7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWstZGVza3RvcCAtIDEpIHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJG1lZGlhPT1kZXNrdG9wIHtcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicmVhay1kZXNrdG9wKSB7XHJcbiAgICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AbWl4aW4gYm9yZGVyLWJhc2ljKCRwb3NpdGlvbjphbGwsICRib3JkZXItY29sb3I6JGJvcmRlci1ncmF5LCAkYm9yZGVyLXdpZHRoOjFweCkge1xyXG4gICAgQGlmKCRwb3NpdGlvbj09dG9wKSB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYoJHBvc2l0aW9uPT1ib3R0b20pIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZigkcG9zaXRpb249PWxlZnQpIHtcclxuICAgICAgICBib3JkZXItbGVmdDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYoJHBvc2l0aW9uPT1yaWdodCkge1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG4gICAgfVxyXG59XHJcbkBtaXhpbiBmaXhlZC1iZygkcG9zLCAkbWluLWhlaWdodDoyNDBweCkge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJHBvcztcclxuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XHJcbiAgICBtaW4taGVpZ2h0OiAkbWluLWhlaWdodDtcclxufVxyXG5AbWl4aW4gbGluZWFyLWdyYWRpZW50KCRkaXJlY3Rpb24sICRjb2xvci1zdG9wcy4uLikge1xyXG4gICAgLy8gRGlyZWN0aW9uIGhhcyBiZWVuIG9taXR0ZWQgYW5kIGhhcHBlbnMgdG8gYmUgYSBjb2xvci1zdG9wXHJcbiAgICBAaWYgaXMtZGlyZWN0aW9uKCRkaXJlY3Rpb24pPT1mYWxzZSB7XHJcbiAgICAgICAgJGNvbG9yLXN0b3BzOiAkZGlyZWN0aW9uLCAkY29sb3Itc3RvcHM7XHJcbiAgICAgICAgJGRpcmVjdGlvbjogMTgwZGVnO1xyXG4gICAgfVxyXG4gICAgYmFja2dyb3VuZDogbnRoKG50aCgkY29sb3Itc3RvcHMsIDEpLCAxKTtcclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZ2FjeS1kaXJlY3Rpb24oJGRpcmVjdGlvbiksICRjb2xvci1zdG9wcyk7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoJGRpcmVjdGlvbiwgJGNvbG9yLXN0b3BzKTtcclxufVxyXG4iLCJAaW1wb3J0IFwiYWJzdHJhY3RzXCI7XHJcbi5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWxpbmUsIC5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWJ1c2Vze1xyXG4gIGgzIHtcclxuICAgIEBpbmNsdWRlIHVpLXR5cG9ncmFwaHkoZDQpO1xyXG4gIH1cclxufVxyXG5cclxuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctbGluZSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAuY29ubmVjdGluZy1saW5lLXdyYXBwZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBjb2xvcihncmV5LWJvcmRlcik7XHJcbiAgICBwYWRkaW5nOiA0MHB4IDA7XHJcbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIH1cclxuICAgIC5jb25uZWN0aW5nLWxpbmUtbGVmdCwgLmNvbm5lY3RpbmctbGluZS1yaWdodCB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbiAgLmNvbm5lY3RpbmctbGluZSB7XHJcbiAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20pIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAud3JhcHBlci1saW5lLWlkIHtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgfVxyXG4gICAgLmxpbmUtMSwgLmxpbmUtMiwgLmxpbmUtMywgLmxpbmUtNCB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlN3aXNzIDcyMSBXMDFcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XHJcbiAgICAgIGhlaWdodDogMzJweDtcclxuICAgICAgd2lkdGg6IDMycHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICBjb2xvcjogY29sb3IoJ3ByaW1hcnktY29udHJhc3QnKTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyBcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG4gICAgLmxpbmUtMSB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICNmOGMzMDA7XHJcbiAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgfVxyXG4gICAgLmxpbmUtMiB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICMwMDkyM2Y7XHJcbiAgICB9XHJcbiAgICAubGluZS0zIHtcclxuICAgICAgYmFja2dyb3VuZDogIzAwODJjOTtcclxuICAgIH1cclxuICAgIC5saW5lLTQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjYTIxYTY4O1xyXG4gICAgfVxyXG4gIH1cclxuICAuY29ubmVjdGluZy1saW5lLWRpcmVjdGlvbiB7XHJcbiAgICBAaW5jbHVkZSB1aS10eXBvZ3JhcGh5KGJvZHkpO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgfVxyXG4gIC5jb25uZWN0aW5nLWxpbmUtZGVwYXJ0aW5nIHtcclxuICAgIEBpbmNsdWRlIHVpLXR5cG9ncmFwaHkoYm9keSk7XHJcbiAgfVxyXG4gIGEge1xyXG4gICAgQGluY2x1ZGUgbGluay0tYXJyb3coKTtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICB9XHJcbn1cclxuXHJcbi5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWJ1c2VzIHtcclxuICBoM3tcclxuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG4gIH1cclxuICAuY29ubmVjdGluZy1idXNlc3tcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY29sb3IoZ3JleS1ib3JkZXIpO1xyXG4gICAgcGFkZGluZzogMTVweCAyOHB4IDE1cHggMDtcclxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20pIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC53cmFwcGVyLWNvbm5lY3RpbmctYnVzZXMtcm91dGUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICB9XHJcbiAgLmNvbm5lY3RpbmctYnVzZXMtcm91dGUtbnVtYmVyIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIlN3aXNzIDcyMSBXMDFcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgbWluLXdpZHRoOiA1NnB4O1xyXG4gICAgd2lkdGg6IDU2cHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeS1jb250cmFzdCk7XHJcbiAgICBiYWNrZ3JvdW5kOiBjb2xvcihwcmltYXJ5KTtcclxuICAgIG1hcmdpbi1yaWdodDogOHB4O1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBtYXgtaGVpZ2h0OiAzMnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI3cHg7XHJcbiAgICAmLm5pZ2h0LWJ1cyB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogIzAyNDE4MjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgICBjb2xvcjogIzAyNDE4MjtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBtaW4td2lkdGg6IDU2cHg7XHJcbiAgICAgIHBhZGRpbmc6IDAgMTZweCAwIDJweDtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEycHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMXB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDZweDtcclxuICAgICAgICByaWdodDogMnB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi8tL21lZGlhL1Byb2plY3QvVFRDL0RldlByb3RvL0ljb25zL25pZ2h0LWJ1cy5zdmdcIikgbm8tcmVwZWF0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmV4cHJlc3MtYnVzIHtcclxuICAgICAgYmFja2dyb3VuZDogIzAwOTIzZjtcclxuICAgIH1cclxuICAgICYuZG93bnRvd24tZXhwcmVzcy1idXMge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICBib3JkZXItY29sb3I6ICMwMDkyM2Y7XHJcbiAgICAgIGNvbG9yOiAjMDA5MjNmO1xyXG4gICAgfVxyXG4gICAgJi5jb21tdW5pdHktYnVzIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzgwODA4MDtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5jb25uZWN0aW5nLWJ1c2VzLXJvdXRlLXNjaGVkdWxlLXVybHtcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDY2cHg7XHJcbiAgICB9XHJcbiAgICBhe1xyXG4gICAgICBAaW5jbHVkZSBsaW5rLS1hcnJvdygpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNvbm5lY3RpbmctaW5mb3tcclxuICBAaW5jbHVkZSB1aS10eXBvZ3JhcGh5KGQteHNtYWxsKTtcclxuICBwYWRkaW5nLXRvcDogMTVweDtcclxuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG59XHJcblxyXG4iLCJAaW1wb3J0ICcuL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICd+aW90YWNzcy10b29scy10eXBlL3Rvb2xzLnR5cGUnO1xuXG5AbWl4aW4gdWktdHlwb2dyYXBoeS1iYXNlKCRmb250LWZhbWlseTogJHVpLXR5cG9ncmFwaHktc3RhY2stZGVmYXVsdCkge1xuICBmb250LWZhbWlseTogaWYoJGZvbnQtZmFtaWx5ICE9IG51bGwsICRmb250LWZhbWlseSwgJHVpLXR5cG9ncmFwaHktc3RhY2stZGVmYXVsdCk7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xufVxuXG5AbWl4aW4gdWktdHlwb2dyYXBoeSgkc3R5bGUpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCR1aS10eXBvZ3JhcGh5LXN0eWxlcywgJHN0eWxlKSB7XG4gICAgJHN0eWxlOiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LXN0eWxlcywgJHN0eWxlKTtcbiAgICAkZm9udC1mYW1pbHk6IG1hcC1nZXQoJHN0eWxlLCBmb250LWZhbWlseSk7XG5cbiAgICBAaW5jbHVkZSB1aS10eXBvZ3JhcGh5LWJhc2UoJGZvbnQtZmFtaWx5KTtcbiAgICBAaW5jbHVkZSBpb3RhLXR5cGUobWFwLWdldCgkc3R5bGUsIHNpemVzKSk7XG5cbiAgICAvLyBSZW1vdmUgcHJvcGVydGllcyB0aGF0IGRvIG5vdCBuZWVkIHRvIGJlIGdlbmVyYXRlZCBiZWxvd1xuICAgICRwcm9wczogbWFwLXJlbW92ZSgkc3R5bGUsIGZvbnQtZmFtaWx5LCBtYXJnaW4sIHNpemVzKTtcbiAgICAka2V5czogbWFwLWtleXMoJHByb3BzKTtcblxuICAgIEBlYWNoICRrZXkgaW4gJGtleXMge1xuICAgICAgI3ska2V5fTogbWFwLWdldCgkcHJvcHMsICRrZXkpO1xuICAgIH1cbiAgfVxuXG4gIEBlbHNlIHtcbiAgICBAd2FybignQ291bGQgbm90IGZpbmQgYCN7JHN0eWxlfWAgaW4gYCR1aS10eXBvZ3JhcGh5LXN0eWxlc2AnKTtcbiAgfVxufVxuXG5AbWl4aW4gdWktdHlwb2dyYXBoeS1tYXJnaW4oJHN0eWxlKSB7XG4gIG1hcmdpbjogbWFwLWdldChtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LXN0eWxlcywgJHN0eWxlKSwgbWFyZ2luKTtcbn1cbiIsIkBtaXhpbiBfaW90YS1leHRyYWN0LXR5cGUtc2l6ZXMoJHNpemVzKSB7XG5cbiAgQGlmICggbGVuZ3RoKCRzaXplcykgPT0gMiApIHtcbiAgICBmb250LXNpemU6IG50aCgkc2l6ZXMsIDEpO1xuICAgIGxpbmUtaGVpZ2h0OiBudGgoJHNpemVzLCAyKTtcbiAgfVxuXG4gIEBlbHNlIHtcbiAgICBmb250LXNpemU6ICRzaXplczsgIFxuICB9XG4gIFxufVxuIiwiLy8gaHR0cHM6Ly9qb2VjaWFuZmxvbmUuY28vYXJ0aWNsZS9zYXNzLXB4LXRvLXJlbXNcclxuLy8gQnV0IE5vIG5lZWQgZm9yIHBpeGVsIGZhbGxiYWNrIGFueW1vcmUgc2VlIHN1cHBvcnRcclxuLy8gYW5kIGZvciBpbnVpdCB0eXBlIHRvb2wgKHJlc3BvbnNpdmUpIHdlIG5lZWQganVzdCBhIHJldHVybmVkIHJlbSB2YWx1ZSwgbm8gbmVlZCBmb3IgbWl4aW5zXHJcblxyXG4kYmFzZTogNjIuNSU7XHJcblxyXG5AZnVuY3Rpb24gZ2V0LXZhbHVlKCRuKSB7XHJcbiAgQHJldHVybiAkbiAvICgkbiAqIDAgKyAxKTtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGdldC1yZW0oJGZvbnQtc2l6ZSkge1xyXG4gICRiYXNlLXNpemU6IGdldC12YWx1ZSgkYmFzZSAvIDEwMCk7XHJcbiAgJGJhc2UtcHgtc2l6ZTogMTYgKiAkYmFzZS1zaXplO1xyXG4gIEByZXR1cm4gKChnZXQtdmFsdWUoJGZvbnQtc2l6ZSkgLyAkYmFzZS1weC1zaXplKSArIHJlbSk7XHJcbn0iLCJAbWl4aW4gX2lvdGEtZ2VuZXJhdGUtdHlwZS1zaXplcygkdmFsdWVzLCAkYnJlYWtwb2ludHMpIHtcblxuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSAnbWFwJyB7XG5cbiAgICBAaWYgbWFwLWhhcy1rZXkoJHZhbHVlcywgbnVsbCkge1xuXG4gICAgICBAaW5jbHVkZSBfaW90YS1leHRyYWN0LXR5cGUtc2l6ZXMobWFwLWdldCgkdmFsdWVzLCBudWxsKSk7XG5cbiAgICB9XG4gIFxuICAgIEBlYWNoICRicmVha3BvaW50LCAkc2l6ZXMgaW4gJHZhbHVlcyB7XG5cbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KSB7XG4gICAgICBcbiAgICAgICAgQG1lZGlhICN7bWFwLWdldCgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KX0ge1xuICAgICAgXG4gICAgICAgICAgQGluY2x1ZGUgX2lvdGEtZXh0cmFjdC10eXBlLXNpemVzKCRzaXplcyk7XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZXMpID09ICdudW1iZXInIG9yIHR5cGUtb2YoJHZhbHVlcykgPT0gJ2xpc3QnIHtcblxuICAgIEBpbmNsdWRlIF9pb3RhLWV4dHJhY3QtdHlwZS1zaXplcygkdmFsdWVzKTtcblxuICB9XG59XG4iLCIvKipcclxuICogVXNhZ2U6XHJcbiAqXHJcbiAqICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xyXG4gKi9cbi51LXR5cGUtLWxpZ2h0IHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLnUtdHlwZS0tcmVndWxhciB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi51LXR5cGUtLW1lZGl1bSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi51LXR5cGUtLWJvbGQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4vKiBicmVha3BvaW50cyAqL1xuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctbGluZSBoMywgLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctYnVzZXMgaDMge1xuICBmb250LWZhbWlseTogVmVyZGFuYSwgVGFob21hLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAyLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3Vid2F5LXN0YXRpb24tY29ubmVjdGluZy1saW5lIGgzLCAuc3Vid2F5LXN0YXRpb24tY29ubmVjdGluZy1idXNlcyBoMyB7XG4gICAgZm9udC1zaXplOiAzLjRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIH1cbn1cblxuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctbGluZSB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cbi5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWxpbmUgLmNvbm5lY3RpbmctbGluZS13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzc2NzY3NjtcbiAgcGFkZGluZzogNDBweCAwO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctbGluZSAuY29ubmVjdGluZy1saW5lLXdyYXBwZXIge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxufVxuXG4uc3Vid2F5LXN0YXRpb24tY29ubmVjdGluZy1saW5lIC5jb25uZWN0aW5nLWxpbmUtd3JhcHBlciAuY29ubmVjdGluZy1saW5lLWxlZnQsIC5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWxpbmUgLmNvbm5lY3RpbmctbGluZS13cmFwcGVyIC5jb25uZWN0aW5nLWxpbmUtcmlnaHQge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uc3Vid2F5LXN0YXRpb24tY29ubmVjdGluZy1saW5lIC5jb25uZWN0aW5nLWxpbmUtd3JhcHBlciAuY29ubmVjdGluZy1saW5lIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWxpbmUgLmNvbm5lY3RpbmctbGluZS13cmFwcGVyIC5jb25uZWN0aW5nLWxpbmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWxpbmUgLmNvbm5lY3RpbmctbGluZS13cmFwcGVyIC5jb25uZWN0aW5nLWxpbmU6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cblxuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctbGluZSAuY29ubmVjdGluZy1saW5lLXdyYXBwZXIgLndyYXBwZXItbGluZS1pZCB7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cblxuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctbGluZSAuY29ubmVjdGluZy1saW5lLXdyYXBwZXIgLmxpbmUtMSwgLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctbGluZSAuY29ubmVjdGluZy1saW5lLXdyYXBwZXIgLmxpbmUtMiwgLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctbGluZSAuY29ubmVjdGluZy1saW5lLXdyYXBwZXIgLmxpbmUtMywgLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctbGluZSAuY29ubmVjdGluZy1saW5lLXdyYXBwZXIgLmxpbmUtNCB7XG4gIGZvbnQtZmFtaWx5OiBcIlN3aXNzIDcyMSBXMDFcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGhlaWdodDogMzJweDtcbiAgd2lkdGg6IDMycHg7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWxpbmUgLmNvbm5lY3RpbmctbGluZS13cmFwcGVyIC5saW5lLTEge1xuICBiYWNrZ3JvdW5kOiAjZjhjMzAwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctbGluZSAuY29ubmVjdGluZy1saW5lLXdyYXBwZXIgLmxpbmUtMiB7XG4gIGJhY2tncm91bmQ6ICMwMDkyM2Y7XG59XG5cbi5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWxpbmUgLmNvbm5lY3RpbmctbGluZS13cmFwcGVyIC5saW5lLTMge1xuICBiYWNrZ3JvdW5kOiAjMDA4MmM5O1xufVxuXG4uc3Vid2F5LXN0YXRpb24tY29ubmVjdGluZy1saW5lIC5jb25uZWN0aW5nLWxpbmUtd3JhcHBlciAubGluZS00IHtcbiAgYmFja2dyb3VuZDogI2EyMWE2ODtcbn1cblxuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctbGluZSAuY29ubmVjdGluZy1saW5lLWRpcmVjdGlvbiB7XG4gIGZvbnQtZmFtaWx5OiBWZXJkYW5hLCBUYWhvbWEsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3Vid2F5LXN0YXRpb24tY29ubmVjdGluZy1saW5lIC5jb25uZWN0aW5nLWxpbmUtZGlyZWN0aW9uIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIH1cbn1cblxuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctbGluZSAuY29ubmVjdGluZy1saW5lLWRlcGFydGluZyB7XG4gIGZvbnQtZmFtaWx5OiBWZXJkYW5hLCBUYWhvbWEsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWxpbmUgLmNvbm5lY3RpbmctbGluZS1kZXBhcnRpbmcge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgfVxufVxuXG4uc3Vid2F5LXN0YXRpb24tY29ubmVjdGluZy1saW5lIGEge1xuICBmb250LWZhbWlseTogVmVyZGFuYSwgVGFob21hLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMDA3MGNkO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuXG4uc3Vid2F5LXN0YXRpb24tY29ubmVjdGluZy1saW5lIGE6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBib3R0b206IDNweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLy0vbWVkaWEvUHJvamVjdC9UVEMvRGV2UHJvdG8vSWNvbnMvYXJyb3ctYmFja2dyb3VuZC1yaWdodC1vdXRsaW5lLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cblxuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctbGluZSBhOmhvdmVyLCAuc3Vid2F5LXN0YXRpb24tY29ubmVjdGluZy1saW5lIGE6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctYnVzZXMgaDMge1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctYnVzZXMgLmNvbm5lY3RpbmctYnVzZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzc2NzY3NjtcbiAgcGFkZGluZzogMTVweCAyOHB4IDE1cHggMDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWJ1c2VzIC5jb25uZWN0aW5nLWJ1c2VzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uc3Vid2F5LXN0YXRpb24tY29ubmVjdGluZy1idXNlcyAud3JhcHBlci1jb25uZWN0aW5nLWJ1c2VzLXJvdXRlIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctYnVzZXMgLmNvbm5lY3RpbmctYnVzZXMtcm91dGUtbnVtYmVyIHtcbiAgZm9udC1mYW1pbHk6IFwiU3dpc3MgNzIxIFcwMVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG1pbi13aWR0aDogNTZweDtcbiAgd2lkdGg6IDU2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQ6ICNkYTI1MWQ7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgbWF4LWhlaWdodDogMzJweDtcbiAgbGluZS1oZWlnaHQ6IDI3cHg7XG59XG5cbi5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWJ1c2VzIC5jb25uZWN0aW5nLWJ1c2VzLXJvdXRlLW51bWJlci5uaWdodC1idXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICMwMjQxODI7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY29sb3I6ICMwMjQxODI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLXdpZHRoOiA1NnB4O1xuICBwYWRkaW5nOiAwIDE2cHggMCAycHg7XG59XG5cbi5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWJ1c2VzIC5jb25uZWN0aW5nLWJ1c2VzLXJvdXRlLW51bWJlci5uaWdodC1idXM6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDExcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA2cHg7XG4gIHJpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6IHVybChcIi8tL21lZGlhL1Byb2plY3QvVFRDL0RldlByb3RvL0ljb25zL25pZ2h0LWJ1cy5zdmdcIikgbm8tcmVwZWF0O1xufVxuXG4uc3Vid2F5LXN0YXRpb24tY29ubmVjdGluZy1idXNlcyAuY29ubmVjdGluZy1idXNlcy1yb3V0ZS1udW1iZXIuZXhwcmVzcy1idXMge1xuICBiYWNrZ3JvdW5kOiAjMDA5MjNmO1xufVxuXG4uc3Vid2F5LXN0YXRpb24tY29ubmVjdGluZy1idXNlcyAuY29ubmVjdGluZy1idXNlcy1yb3V0ZS1udW1iZXIuZG93bnRvd24tZXhwcmVzcy1idXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICMwMDkyM2Y7XG4gIGNvbG9yOiAjMDA5MjNmO1xufVxuXG4uc3Vid2F5LXN0YXRpb24tY29ubmVjdGluZy1idXNlcyAuY29ubmVjdGluZy1idXNlcy1yb3V0ZS1udW1iZXIuY29tbXVuaXR5LWJ1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MDgwODA7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uc3Vid2F5LXN0YXRpb24tY29ubmVjdGluZy1idXNlcyAuY29ubmVjdGluZy1idXNlcy1yb3V0ZS1zY2hlZHVsZS11cmwge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWJ1c2VzIC5jb25uZWN0aW5nLWJ1c2VzLXJvdXRlLXNjaGVkdWxlLXVybCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDY2cHg7XG4gIH1cbn1cblxuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctYnVzZXMgLmNvbm5lY3RpbmctYnVzZXMtcm91dGUtc2NoZWR1bGUtdXJsIGEge1xuICBmb250LWZhbWlseTogVmVyZGFuYSwgVGFob21hLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMDA3MGNkO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctYnVzZXMgLmNvbm5lY3RpbmctYnVzZXMtcm91dGUtc2NoZWR1bGUtdXJsIGE6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBib3R0b206IDNweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLy0vbWVkaWEvUHJvamVjdC9UVEMvRGV2UHJvdG8vSWNvbnMvYXJyb3ctYmFja2dyb3VuZC1yaWdodC1vdXRsaW5lLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cblxuLnN1YndheS1zdGF0aW9uLWNvbm5lY3RpbmctYnVzZXMgLmNvbm5lY3RpbmctYnVzZXMtcm91dGUtc2NoZWR1bGUtdXJsIGE6aG92ZXIsIC5zdWJ3YXktc3RhdGlvbi1jb25uZWN0aW5nLWJ1c2VzIC5jb25uZWN0aW5nLWJ1c2VzLXJvdXRlLXNjaGVkdWxlLXVybCBhOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5jb25uZWN0aW5nLWluZm8ge1xuICBmb250LWZhbWlseTogVmVyZGFuYSwgVGFob21hLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbm5lY3RpbmctaW5mbyB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIH1cbn1cbiIsIi8vIFVzZSBjb2xvciBmdW5jdGlvbnMgZm9yIFRUQ1xyXG4vLyBOYW1lcyB0YWtlbiBmcm9tIGh0bWxjc3Njb2xvci5jb20gaWYgbm90IGRlc2NyaXB0aXZlIGVub3VnaCBmcm9tIHplcGxpblxyXG4kY29sb3JzOiAoXHJcbiAgd2hpdGU6ICNmZmZmZmYsXHJcbiAgd2hpdGUtc21va2U6ICNmM2YzZjMsXHJcbiAgY2hlcnJ5LXJlZDogI2RhMjUxZCxcclxuICBzY2FybGV0OiM3NDAwMDAsXHJcbiAgY2FybWluZTogI2EzMDAxYyxcclxuICBjZXJ1bGVhbjojMDA3MGNkLFxyXG4gIG9jZWFuLWJsdWU6ICMwNjU2YTUsXHJcbiAgY2VydWxlYW4tdHdvOiAjMDA5YWRlLFxyXG4gIGdvbGRlbi15ZWxsb3c6ICNmZmM2MjcsXHJcbiAgd2FybS1ncmV5OiAjNzY3Njc2LFxyXG4gIGdyZXkyOTogIzRhNGE0YSxcclxuICBncmV5NzA6ICNiM2IzYjMsXHJcbiAgZHVzdHktZ3JleTogI2VkZWRlZCxcclxuICB3YXJtLWdyZXktMjogIzk3OTc5NyxcclxuICBkaW0tZ3JleTogIzY5Njk2OSxcclxuICB3aGl0ZS10d286ICNkNWQ1ZDUsXHJcbiAgd2hpdGUtdGhyZWU6ICNkMmQyZDIsXHJcbiAgZ2FpbnNib3JvOiAjZDhkOGQ4LFxyXG4gIG5lcm86ICMxZTFlMWUsXHJcbiAgZ29sZGVuLXBvcHB5OiAjZjhjMzAwLFxyXG4gIGV4cHJlc3MtZ3JlZW46ICMwMDkyM2YsXHJcbiAgbmlnaHQtYmx1ZTogIzAyNDE4MixcclxuICBjb21tdW5pdHktZ3JleTogIzgwODA4MCxcclxuICBtYXV2ZS10YXVwZTogIzk3NTg2QixcclxuICBibGFjazogIzAwMDAwMCxcclxuKTtcclxuXHJcbiRmdW5jdGlvbmFsLWNvbG9yczogKFxyXG4gIHByaW1hcnktY29udHJhc3Q6IGNvbG9yKHdoaXRlKSxcclxuICBwcmltYXJ5LWNvbnRyYXN0LWRhcms6IGNvbG9yKHdoaXRlLXNtb2tlKSxcclxuICBwcmltYXJ5OiBjb2xvcihjaGVycnktcmVkKSxcclxuICBwcmltYXJ5LWRhcms6IGNvbG9yKHNjYXJsZXQpLFxyXG4gIHByaW1hcnktZGFya2VyOiBjb2xvcihjYXJtaW5lKSxcclxuICBzZWNvbmRhcnk6IGNvbG9yKGNlcnVsZWFuKSxcclxuICBzZWNvbmRhcnktZGFyazogY29sb3Iob2NlYW4tYmx1ZSksXHJcbiAgc2Vjb25kYXJ5LWxpZ2h0OiBjb2xvcihjZXJ1bGVhbi10d28pLFxyXG4gIGFjY2VudC15ZWxsb3c6IGNvbG9yKGdvbGRlbi15ZWxsb3cpLFxyXG4gIGdyZXk6IGNvbG9yKGdyZXkyOSksXHJcbiAgZ3JleS1tZW51OiBjb2xvcihkdXN0eS1ncmV5KSxcclxuICBncmV5LWJvcmRlcjogY29sb3Iod2FybS1ncmV5KSxcclxuICBncmV5LWJvcmRlci0yOiBjb2xvcih3aGl0ZS10aHJlZSksXHJcbiAgZ3JleS1wbGFjZWhvbGRlcjogY29sb3IoZ3JleTcwKSxcclxuICBncmV5LTI6IGNvbG9yKHdhcm0tZ3JleS0yKSxcclxuICBjYXJvdXNlbC1kb3RzOiBjb2xvcihkaW0tZ3JleSksXHJcbiAgZ3JleS1saWdodDogY29sb3IoZ2FpbnNib3JvKSxcclxuICB0YWItLWRpc2FibGVkOiBjb2xvcih3aGl0ZS10d28pLFxyXG4gIGJhY2tkcm9wOiByZ2JhKDAsMCwwLDAuNyksXHJcbiAgYmxhY2s6IGNvbG9yKGJsYWNrKSxcclxuICBzaXRlLXdpZGUtYWxlcnQ6IGNvbG9yKGdvbGRlbi1wb3BweSksXHJcbiAgdmlzaXRlZC0tbGluazogY29sb3IobWF1dmUtdGF1cGUpLFxyXG4pO1xyXG5cclxuLy9CYWNrZ3JvdW5kcyBjb2xvcnNcclxuJGJnLXRyYW5zcGFyZW50OnRyYW5zcGFyZW50ICFkZWZhdWx0O1xyXG4kYmctYmFzaWMtY29sb3I6I0ZGRkZGRiAhZGVmYXVsdDtcclxuJGJnLWJhc2ljLWNvbG9yLWFjdGl2ZTogI2NjY2NjYyAhZGVmYXVsdDtcclxuJGJnLWxpZ2h0LWdyYXk6ICNmN2Y3ZjcgIWRlZmF1bHQ7XHJcbiRiZy1saWdodC1ncmF5LWFjdGl2ZTogI2RhZGFkYSAhZGVmYXVsdDtcclxuJGJnLWJsdWU6Izg5QzZDQztcclxuJGJnLWJsdWUtYWN0aXZlOiAjMTU5MDljICFkZWZhdWx0O1xyXG4kYmctc3VibWVudTojZWRlYmViICFkZWZhdWx0O1xyXG4kYmctc3VibWVudS1hY3RpdmU6I2Y2ZjZmNiAhZGVmYXVsdDtcclxuJGJnLWJsYWNrOiMwMDAwMDA7XHJcbiRiZy1ibGFjay1hY3RpdmU6IzNkM2QzZDtcclxuLy9UZXh0IGNvbG9yc1xyXG4kdGV4dC13aGl0ZTojZmZmICFkZWZhdWx0O1xyXG4kdGV4dC1oZWFkaW5nLWNvbG9yOiAjMjIyICFkZWZhdWx0O1xyXG4kdGV4dC1iYXNpYzojNzQ3NDc0ICFkZWZhdWx0O1xyXG4kdGV4dC1iYXNpYy1hY3RpdmU6Izg3ODc4NyAhZGVmYXVsdDtcclxuJHRleHQtYmx1ZTojODlDNkNDICFkZWZhdWx0O1xyXG4kdGV4dC1ibHVlLWFjdGl2ZTojMTU5MDljICFkZWZhdWx0O1xyXG4kdGV4dC1zdWJtZW51LWFjdGl2ZTogIzIyMiAhZGVmYXVsdDtcclxuJHRleHQtZGlzYWJsZWQ6ICNhYWEgIWRlZmF1bHQ7XHJcbiR0ZXh0LWJsYWNrOiAjMDAwMDAwICFkZWZhdWx0O1xyXG4vL0JvcmRlciBjb2xvcnNcclxuJGJvcmRlci1ncmF5OiAjZDJkMmQyICFkZWZhdWx0O1xyXG4kYm9yZGVyLXdoaXRlOiAjZmZmZmZmICFkZWZhdWx0O1xyXG4kYm9yZGVyLWJhc2ljLWNvbG9yOiAjODlDNkNDICFkZWZhdWx0O1xyXG4kYm9yZGVyLWJhc2ljLWFjdGl2ZTojMTU5MDljICFkZWZhdWx0O1xyXG5cclxuLy9TdHlsZXMgZm9yIGVhY2ggY29tcG9uZW50IHNlcGFyYXRlbHlcclxuLy9BY2NvcmRpb25cclxuJGFjY29yZGlvbi1oZWFkZXItYmc6IHRyYW5zcGFyZW50O1xyXG4kYWNjb3JkaW9uLWhlYWRlci1iZy1hY3RpdmU6IHRyYW5zcGFyZW50O1xyXG4kYWNjb3JkaW9uLXRvZ2dsZWQtYmc6IHRyYW5zcGFyZW50O1xyXG4kYWNjb3JkaW9uLWhlYWRlci1ib3JkZXI6ICRib3JkZXItZ3JheTtcclxuLy9CcmVhZGNydW1iXHJcbiRicmVhZGNydW1iLWRyb3Bkb3duLWJnOiRiZy1iYXNpYy1jb2xvcjtcclxuJGJyZWFkY3J1bWItZHJvcGRvd24tYmctYWN0aXZlOiRiZy1ibHVlO1xyXG4kYnJlYWRjcnVtYi1kcm9wZG93bi10ZXh0LWFjdGl2ZTokdGV4dC13aGl0ZTtcclxuJGJyZWFkY3J1bWItYmc6dHJhbnNwYXJlbnQ7XHJcbiRicmVhZGNydW1iLWNvbG9yOiR0ZXh0LWJhc2ljO1xyXG4kYnJlYWRjcnVtYi1jb2xvci1hY3RpdmU6JHRleHQtYmx1ZS1hY3RpdmU7XHJcbi8vQnV0dG9ucyBjb2xvcnNcclxuJGJ0bi1ncmVlbi1saWdodDogI2EwY2U0ZTtcclxuJGJ0bi1ncmVlbjogIzkyYmU0MztcclxuJGJ0bi1yZWQtYWN0aXZlOiAjYzM0ZTMwO1xyXG4kYnRuLXJlZDogI2JjNDUyNjtcclxuLy9DYXJvdXNlbFxyXG4kY2Fyb3VzZWwtYmc6JGJnLWJhc2ljLWNvbG9yO1xyXG4kY2Fyb3VzZWwtbmF2LWFjdGl2ZTokdGV4dC1iYXNpYy1hY3RpdmU7XHJcbiRjYXJvdXNlbC1uYXYtYm9yZGVyOiRib3JkZXItYmFzaWMtY29sb3I7XHJcbi8vQ29udGFpbmVyIGNvbXBvbmVudFxyXG4kY29udGFpbmVyLXRpdGxlLXJvdy1iZzogJGJnLWxpZ2h0LWdyYXk7XHJcbi8vRXZlbnQgTGlzdFxyXG4kZXZlbnQtbGlzdC1iZzp0cmFuc3BhcmVudDtcclxuJGV2ZW50LWxpc3QtaXRlbS1iZzokYmctYmFzaWMtY29sb3I7XHJcbiRldmVudC1saXN0LWl0ZW0tY29sb3I6JHRleHQtYmFzaWM7XHJcbiRldmVudC1saXN0LXRpdGxlLWJvcmRlcjokYm9yZGVyLWJhc2ljLWNvbG9yO1xyXG4vL0NhbGVuZGFyXHJcbiRjYWxlbmRhci1iZzokYmctYmFzaWMtY29sb3I7XHJcbiRjYWxlbmRhci1oZWFkZXItYmc6JGJnLWJhc2ljLWNvbG9yLWFjdGl2ZTtcclxuJGNhbGVuZGFyLWRheS1jb2xvci1hY3RpdmU6JHRleHQtd2hpdGU7XHJcbi8vRmVlZFxyXG4kZmVlZC1iZzp0cmFuc3BhcmVudDtcclxuJGZlZWQtaXRlbS1iZzp0cmFuc3BhcmVudDtcclxuLy9GaWVsZCBFZGl0b3JcclxuJGZpZWxkLWVkaXRvci1iZzp0cmFuc3BhcmVudDtcclxuJGZpZWxkLWVkaXRvci10YWJsZS1ib3JkZXI6JGJnLWxpZ2h0LWdyYXk7XHJcbiRmaWVsZC1lZGl0b3ItdGV4dC1oZWFkZXI6JHRleHQtYmxhY2s7XHJcbiRmaWVsZC1lZGl0b3ItdGV4dDokdGV4dC1iYXNpYztcclxuLy9GaWxlIExpc3RcclxuJGZpbGUtbGlzdC1iZzp0cmFuc3BhcmVudDtcclxuJGZpbGUtbGlzdC1pdGVtLWJnOnRyYW5zcGFyZW50O1xyXG4kZmlsZS1saXN0LXRpdGxlLWNvbG9yOiR0ZXh0LWJhc2ljO1xyXG4kZmlsZS1saXN0LXRpdGxlLWJvcmRlcjp0cmFuc3BhcmVudDtcclxuJGZpbGUtbGlzdC1pdGVtLWNvbG9yOiR0ZXh0LWJhc2ljO1xyXG4kZmlsZS1saXN0LWl0ZW0tY29sb3ItYWN0aXZlOiR0ZXh0LWJhc2ljLWFjdGl2ZTtcclxuJGZpbGUtbGlzdC1pdGVtLXNpemU6JHRleHQtYmFzaWM7XHJcbiRmaWxlLWxpc3QtaXRlbS1ib3JlcjokYm9yZGVyLWJhc2ljLWNvbG9yO1xyXG4vL0ZsaXBcclxuJGZsaXAtYmc6dHJhbnNwYXJlbnQ7XHJcbiRmbGlwLXNsaWRlcy1iZzokYmctYmFzaWMtY29sb3I7XHJcbi8vR2FsbGVyeVxyXG4kZ2FsbGVyaWEtY29udGFpbmVyLWJnOiRiZy1ibGFjaztcclxuJGdhbGxlcnktaW5mby1iZzokYmctYmFzaWMtY29sb3I7XHJcbiRnYWxsZXJ5LWluZm8tYm9yZGVyOiRib3JkZXItZ3JheTtcclxuJGdhbGxlcnktaW5mby10ZXh0OiR0ZXh0LWJhc2ljO1xyXG4kZ2FsbGVyeS1uYXYtYWN0aXZlOiR0ZXh0LXdoaXRlO1xyXG4kZ2FsbGVyeS1uYXY6JHRleHQtYmFzaWM7XHJcbiRnYWxsZXJ5LWNvdW50ZXItY29sb3I6JHRleHQtd2hpdGU7XHJcbi8vTGFuZ3VhZ2Ugc2VsZWN0b3JcclxuJGxhbmctc2VsZWN0b3ItYmc6JGJnLWJhc2ljLWNvbG9yO1xyXG4kbGFuZy1zZWxlY3Rvci1ib3JkZXI6JGJvcmRlci1iYXNpYy1jb2xvcjtcclxuJGxhbmctc2VsZWN0b3ItaXRlbS1iZy1hY3RpdmU6JGJnLWJhc2ljLWNvbG9yO1xyXG4kbGFuZy1zZWxlY3Rvci1pdGVtLWJvcmRlcjokYm9yZGVyLXdoaXRlO1xyXG4kbGFuZy1zZWxlY3Rvci1pdGVtLWJvcmRlci1hY3RpdmU6JGJvcmRlci1iYXNpYy1hY3RpdmU7XHJcbi8vU2l0ZSBzZWxlY3RvclxyXG4kc2l0ZS1zZWxlY3Rvci1jb2xvcjokdGV4dC1iYXNpYztcclxuLy9MaW5rIExpc3RcclxuJGxpbmstbGlzdC1iZzp0cmFuc3BhcmVudDtcclxuJGxpbmstbGlzdC1oZWFkZXItYm9yZGVyOiRib3JkZXItYmFzaWMtY29sb3I7XHJcbiRsaW5rLWxpc3QtaXRlbXMtYmc6dHJhbnNwYXJlbnQ7XHJcbiRsaW5rLWxpc3QtaXRlbS1iZzp0cmFuc3BhcmVudDtcclxuJGxpbmstbGlzdC1pdGVtLWNvbG9yOiR0ZXh0LWJhc2ljO1xyXG4kbGluay1saXN0LWl0ZW0tY29sb3ItYWN0aXZlOiR0ZXh0LWJhc2ljLWFjdGl2ZTtcclxuJGxpbmstbGlzdC1pdGVtLWJvcmRlci1hY3RpdmU6JGJvcmRlci1iYXNpYy1jb2xvcjtcclxuLy9Mb2dpblxyXG4kbG9naW4tYmc6dHJhbnNwYXJlbnQ7XHJcbi8vTG9nb3V0XHJcbiRsb2dvdXQtYmc6dHJhbnNwYXJlbnQ7XHJcbiRsb2dvdXQtbGluay10ZXh0LWNvbG9yOiR0ZXh0LWJhc2ljO1xyXG4kbG9nb3V0LWxpbmstdGV4dC1jb2xvci1hY3RpdmU6JHRleHQtYmFzaWMtYWN0aXZlO1xyXG4kbG9nb3V0LWxpbmstYm9yZGVyOiRib3JkZXItYmFzaWMtY29sb3I7XHJcbi8vTWFwXHJcbiRtYXAtYmc6dHJhbnNwYXJlbnQ7XHJcbiRtYXAtYm9yZGVyOm5vbmU7XHJcbi8vUGFnZSBMaXN0XHJcbiRwYWdlLWxpc3QtYmc6JGJnLXRyYW5zcGFyZW50O1xyXG4kcGFnZS1saXN0LWl0ZW0tYmc6JGJnLXRyYW5zcGFyZW50O1xyXG4kcGFnZS1saXN0LWl0ZW0tdGl0bGUtdGV4dDokdGV4dC1ibGFjaztcclxuJHBhZ2UtbGlzdC1pdGVtLWJvcmRlcjokYm9yZGVyLWJhc2ljLWNvbG9yO1xyXG4vL1BhZ2luYXRpb25cclxuJGxpc3QtcGFnaW5hdGlvbi1iZzp0cmFuc3BhcmVudDtcclxuJGxpc3QtcGFnaW5hdGlvbi1hY3RpdmUtYmc6JGJnLWJsdWU7XHJcbiRsaXN0LXBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiR0ZXh0LXdoaXRlO1xyXG4kbGlzdC1wYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjokdGV4dC1ibHVlO1xyXG4kbGlzdC1wYWdpbmF0aW9uLWFjdGl2ZS1iZzokYmctc3VibWVudS1hY3RpdmU7XHJcbiRsaXN0LXBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjokYm9yZGVyLWJhc2ljLWFjdGl2ZTtcclxuLy9QbGF5IGxpc3QgXHJcbiRwbGF5LWxpc3QtYmc6dHJhbnNwYXJlbnQ7XHJcbiRwbGF5LWxpc3QtaXRlbS1iZzp0cmFuc3BhcmVudDtcclxuJHBsYXktbGlzdC1pdGVtLWNvbG9yOiR0ZXh0LWJhc2ljO1xyXG4kcGxheS1saXN0LWl0ZW0tY29sb3ItYWN0aXZlOiR0ZXh0LXdoaXRlO1xyXG4kcGxheS1saXN0LW5hdi1hY3RpdmU6JHRleHQtYmx1ZTtcclxuJHBsYXktbGlzdC1pdGVtLWJnOiRiZy1saWdodC1ncmF5O1xyXG4kcGxheS1saXN0LWl0ZW0tYWN0aXZlLWJnOiRiZy1ibHVlO1xyXG4kcGxheS1saXN0LWJvcmRlcjokYm9yZGVyLWJhc2ljLWNvbG9yO1xyXG4kcGxheS1saXN0LXRpdGxlLWJvcmRlcjokYm9yZGVyLWJhc2ljLWNvbG9yO1xyXG4vL1Byb21vXHJcbiRwcm9tby1iZzokYmctYmFzaWMtY29sb3I7XHJcbiRwcm9tby1iZy1oZXJvOnJnYmEoMCwgMCwgMCwgMC41KTtcclxuJHByb21vLWJvcmRlcjokYm9yZGVyLWdyYXk7XHJcbiRwcm9tby1oZXJvLXRleHQtY29sb3I6JHRleHQtd2hpdGU7XHJcbiRwcm9tby1zaGFkb3ctYm9yZGVyOiRib3JkZXItYmFzaWMtY29sb3I7XHJcbi8vUmljaCBUZXh0IENvbnRlbnRcclxuJHJpY2gtY29udGVudC1iZzp0cmFuc3BhcmVudDtcclxuJHJpY2gtY29udGVudC1jb2xvcjokdGV4dC1iYXNpYztcclxuJHJpY2gtY29udGVudC1ib3JkZXI6bm9uZTtcclxuLy9TZWFyY2hcclxuJHNlYXJjaC1maWx0ZXI6JHRleHQtYmFzaWM7XHJcbiRzZWFyY2gtZmlsdGVyLWJvcmRlcjokYm9yZGVyLWJhc2ljLWNvbG9yO1xyXG4vL01lbnUgY29sb3JzXHJcbiRtZW51LWhvdmVyLWNvbG9yOiMxYjgwOWU7XHJcbiRtZW51LWFjdGl2ZS1jb2xvcjojMTc2Zjg5O1xyXG4vL05hdmlnYXRpb25cclxuJG5hdi1iZzp0cmFuc3BhcmVudDtcclxuJG5hdi1jb2xvci1yb290OiR0ZXh0LWJhc2ljO1xyXG4kbmF2LWNvbG9yLXJvb3QtYWN0aXZlOiR0ZXh0LWJhc2ljO1xyXG4kbmF2LWJvcmRlci1yb290OiRib3JkZXItYmFzaWMtY29sb3I7XHJcbiRuYXYtYm9yZGVyLXJvb3QtYWN0aXZlOiRib3JkZXItYmFzaWMtY29sb3I7XHJcbiRuYXYtY29sb3Itc3VibWVudTokdGV4dC1zdWJtZW51LWFjdGl2ZTtcclxuJG5hdi1jb2xvci1zdWJtZW51LWFjdGl2ZTokdGV4dC1zdWJtZW51LWFjdGl2ZTtcclxuJG5hdi1iZy1yb290OiRiZy1zdWJtZW51LWFjdGl2ZTtcclxuJG5hdi1iZy1zdWJtZW51OiRiZy1zdWJtZW51LWFjdGl2ZTtcclxuJG5hdi1iZy1zdWJtZW51LWFjdGl2ZTokYmctc3VibWVudS1hY3RpdmU7XHJcbiRuYXYtYm9yZGVyLXN1Ym1lbnU6JGJvcmRlci1iYXNpYy1jb2xvcjtcclxuJG5hdi1zdWJtZW51LWl0ZW0tYm9yZGVyOiRib3JkZXItZ3JheTtcclxuJG5hdi1zdWJtZW51LWJvcmRlci1hY3RpdmU6JGJvcmRlci1iYXNpYy1jb2xvcjtcclxuLy9Tb2NpYWwgTWVkaWEgU2hhcmVcclxuJHNvY2lhbC1tZWRpYS1zaGFyZS1iZzp0cmFuc3BhcmVudDtcclxuLy9UYWJzXHJcbiR0YWItaGVhZGluZy1iZzokYmctbGlnaHQtZ3JheTtcclxuJHRhYi1oZWFkaW5nLWFjdGl2ZS1iZzokYmctYmFzaWMtY29sb3I7XHJcbiR0YWItaGVhZGluZy1jb2xvcjokdGV4dC1oZWFkaW5nLWNvbG9yO1xyXG4kdGFiLWhlYWRpbmctYWN0aXZlLWNvbG9yOiR0ZXh0LWJsYWNrO1xyXG4kdGFiLWNvbnRhaW5lci1iZzp0cmFuc3BhcmVudDtcclxuJHRhYi1jb250YWluZXItYm9yZGVyOiRib3JkZXItYmFzaWMtY29sb3I7XHJcbi8vVGl0bGVcclxuJHRpdGxlLWJnOnRyYW5zcGFyZW50O1xyXG4kdGl0bGUtY29sb3I6JHRleHQtYmFzaWM7XHJcbiR0aXRsZS1jb2xvci1hY3RpdmU6JHRleHQtYmFzaWMtYWN0aXZlO1xyXG4vL1RvZ2dsZVxyXG4kdG9nZ2xlLWhlYWRlci1iZzokYmctYmFzaWMtY29sb3I7XHJcbiR0b2dnbGUtY29udGVudC1iZzokYmctYmFzaWMtY29sb3I7XHJcbiR0b2dnbGUtc2hvdy1jb2xvcjokdGV4dC1iYXNpYy1hY3RpdmU7XHJcbi8vU2VhcmNoIENvbXBvbmVudHNcclxuJHNlYXJjaC1idG4tYmc6dHJhbnNwYXJlbnQ7XHJcbiRzZWFyY2gtYnRuLWFjdGl2ZS1iZzojZTBlMGUwO1xyXG4kc2VhcmNoLWJ0bi1hY3RpdmUtYm9yZGVyOiNhZGFkYWQ7XHJcbi8vSW1hZ2UgY29tcG9uZW50XHJcbiRpbWFnZS1jYXB0aW9uLWNvbG9yOiR0ZXh0LWJhc2ljO1xyXG4vL01lZGlhIExpbmsgQ29tcG9uZW50XHJcbiRtZWRpYS1saW5rLWJnOnRyYW5zcGFyZW50O1xyXG4kbWVkaWEtbGluay1ib3JkZXI6JGJvcmRlci1iYXNpYy1jb2xvcjtcclxuJG1lZGlhLWxpbmstY29sb3I6JHRleHQtYmFzaWM7XHJcbiRtZWRpYS1saW5rLWNvbG9yLWFjdGl2ZTokdGV4dC1iYXNpYy1hY3RpdmU7XHJcbi8vVGFnIENvbXBvbmVudFxyXG4kdGFnLWNvbG9yOiR0ZXh0LWJhc2ljO1xyXG4kdGFnLWNvbG9yLWFjdGl2ZTokdGV4dC1iYXNpYy1hY3RpdmU7XHJcbiR0YWctYm9yZGVyLWFjdGl2ZTokYm9yZGVyLWJhc2ljLWFjdGl2ZTtcclxuJHRhZy1saW5rLWJnIDokYmctYmx1ZTtcclxuJHRhZy1saW5rLWJnLWFjdGl2ZSA6JGJnLWJsdWUtYWN0aXZlO1xyXG4kdGFnLWxpbmstY29sb3IgOiR0ZXh0LXdoaXRlO1xyXG4vL0xpbmsgQ29tcG9uZW50XHJcbiRsaW5rLWJnOnRyYW5zcGFyZW50O1xyXG4kbGluay10ZXh0LWNvbG9yOiR0ZXh0LWJhc2ljO1xyXG4kbGluay10ZXh0LWNvbG9yLWFjdGl2ZTokdGV4dC1iYXNpYy1hY3RpdmU7XHJcbiRsaW5rLWJvcmRlcjokYm9yZGVyLWJhc2ljLWNvbG9yO1xyXG4vL092ZXJsYXlcclxuJG92ZXJsYXktYmc6JGJnLWxpZ2h0LWdyYXk7XHJcbi8vU2VhcmNoIENvbXBvbmVudHNcclxuJHNlYXJjaC10aXRsZS1ib3JkZXI6JGJvcmRlci1iYXNpYy1jb2xvcjtcclxuJHNlYXJjaC10aXRsZS1jb2xvcjokdGV4dC1iYXNpYztcclxuJHNlYXJjaC1pdGVtLWNvbG9yOiR0ZXh0LWJhc2ljO1xyXG4kc2VhcmNoLWl0ZW0tY29sb3ItYWN0aXZlOiR0ZXh0LWJhc2ljO1xyXG4kc2VhcmNoLWl0ZW0tYm9yZGVyOiRib3JkZXItYmFzaWMtY29sb3I7XHJcbiRzZWFyY2gtaXRlbS1ib3JkZXItYWN0aXZlOiRib3JkZXItYmFzaWMtYWN0aXZlO1xyXG4vL1xyXG4kc2VhcmNoLWZpbHRlci1yYWRpdXMtYWN0aXZlOiR0ZXh0LWJsdWU7XHJcbiRzZWFyY2gtZmlsdGVyLXJhZGl1cy1ib3JkZXI6JGJvcmRlci1ncmF5O1xyXG4kc2VhcmNoLWZpbHRlci1yYWRpdXMtYmc6JGJvcmRlci1ncmF5O1xyXG4vL1xyXG4kc2VhcmNoLWZpbHRlci1zbGlkZXItYm9yZGVyLWFjdGl2ZTokYm9yZGVyLWJhc2ljLWNvbG9yO1xyXG4kc2VhcmNoLWZpbHRlci1zbGlkZXItYmctYWN0aXZlOiRiZy1ibHVlO1xyXG4kc2VhcmNoLWZpbHRlci1zbGlkZXItYnRuLWJvcmRlcjokYm9yZGVyLWdyYXk7XHJcbiRzZWFyY2gtZmlsdGVyLXNsaWRlci1idG4tYmc6JGJnLWxpZ2h0LWdyYXk7XHJcbiRzZWFyY2gtZmlsdGVyLXNsaWRlci1idG4tYmctYWN0aXZlOiRiZy1saWdodC1ncmF5LWFjdGl2ZTtcclxuLy9TZXJhY2ggUGFnaW5hdGlvblxyXG4kc2VhcmNoLXBhZ2luYXRpb24tYmc6dHJhbnNwYXJlbnQ7XHJcbiRzZWFyY2gtcGFnaW5hdGlvbi1hY3RpdmUtYmc6JGJnLWJsdWU7XHJcbiRzZWFyY2gtcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6JHRleHQtd2hpdGU7XHJcbiRzZWFyY2gtcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjokdGV4dC1ibHVlO1xyXG4kc2VhcmNoLXBhZ2luYXRpb24taG92ZXItYmc6JGJnLXN1Ym1lbnUtYWN0aXZlO1xyXG4kc2VhcmNoLXBhZ2luYXRpb24taG92ZXItYm9yZGVyOiRib3JkZXItYmFzaWMtYWN0aXZlO1xyXG4vL1NlYXJjaCBzZWxlY3RvclxyXG4kc2VyYWNoLXNlbGVjdG9yLXZhcmlhbnQtY29sb3ItYWN0aXZlOiAkdGV4dC1ibHVlLWFjdGl2ZTtcclxuLy9UeXBlaGVhZFxyXG4kdHQtY29sb3I6JHRleHQtYmFzaWM7XHJcbiR0dC1jb2xvci1hY3RpdmU6JHRleHQtYmx1ZTtcclxuJHR0LXByaWNlLWNvbG9yOiR0ZXh0LWJsdWU7XHJcbiR0dC1kcm9wZG93bi1iZzokYmctbGlnaHQtZ3JheTtcclxuJHR0LXN1Z2dlc3Rpb24tYmctYWN0aXZlOiRiZy1saWdodC1ncmF5LWFjdGl2ZTtcclxuJHR0LWRyb3Bkb3duLWJvcmRlcjokYm9yZGVyLWdyYXk7XHJcbi8vVmlkZW9cclxuJHZpZGVvLWNvbnRyb2wtYmc6JGJnLWJhc2ljLWNvbG9yO1xyXG4kdmlkZW8tdGltZS1jb2xvcjokdGV4dC1iYXNpYztcclxuJHZpZGVvLXRpbWUtdG90YWwtYmc6JGJnLWJsYWNrO1xyXG4kdmlkZW8tdGltZS1oYW5kbGUtYm9yZGVyOiRib3JkZXItZ3JheTtcclxuJHZpZGVvLXRpbWUtaGFuZGxlLWJnOiRiZy1ibGFjaztcclxuLy9NYWluXHJcbiRwYWdlLWJnOiAkYmctYmFzaWMtY29sb3I7XHJcbiRwYWdlLWJnLWVkaXRvcjpub25lO1xyXG4iLCIvL21vZGRlZCB0byB1c2UgcHhcclxuXHJcbkBjaGFyc2V0IFwiVVRGLThcIjsgLy8gRml4ZXMgYW4gaXNzdWUgd2hlcmUgUnVieSBsb2NhbGUgaXMgbm90IHNldCBwcm9wZXJseVxyXG4gICAgICAgICAgICAgICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcS9wdWxsLzEwXHJcblxyXG4vLy8gQmFzZSBmb250IHNpemUgb24gdGhlIGA8Ym9keT5gIGVsZW1lbnRcclxuLy8vIEB0eXBlIE51bWJlciAodW5pdClcclxuJG1xLWJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xyXG5cclxuLy8vIFJlc3BvbnNpdmUgbW9kZVxyXG4vLy9cclxuLy8vIFNldCB0byBgZmFsc2VgIHRvIGVuYWJsZSBzdXBwb3J0IGZvciBicm93c2VycyB0aGF0IGRvIG5vdCBzdXBwb3J0IEBtZWRpYSBxdWVyaWVzLFxyXG4vLy8gKElFIDw9IDgsIEZpcmVmb3ggPD0gMywgT3BlcmEgPD0gOSlcclxuLy8vXHJcbi8vLyBZb3UgY291bGQgY3JlYXRlIGEgc3R5bGVzaGVldCBzZXJ2ZWQgZXhjbHVzaXZlbHkgdG8gb2xkZXIgYnJvd3NlcnMsXHJcbi8vLyB3aGVyZSBAbWVkaWEgcXVlcmllcyBhcmUgcmFzdGVyaXplZFxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3NcclxuLy8vICAvLyBvbGQtaWUuc2Nzc1xyXG4vLy8gICRtcS1yZXNwb25zaXZlOiBmYWxzZTtcclxuLy8vICBAaW1wb3J0ICdtYWluJzsgLy8gQG1lZGlhIHF1ZXJpZXMgaW4gdGhpcyBmaWxlIHdpbGwgYmUgcmFzdGVyaXplZCB1cCB0byAkbXEtc3RhdGljLWJyZWFrcG9pbnRcclxuLy8vICAgICAgICAgICAgICAgICAgIC8vIGxhcmdlciBicmVha3BvaW50cyB3aWxsIGJlIGlnbm9yZWRcclxuLy8vXHJcbi8vLyBAdHlwZSBCb29sZWFuXHJcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3Jlc3BvbnNpdmUtbW9kZS1vZmYgRGlzYWJsZWQgcmVzcG9uc2l2ZSBtb2RlIGRvY3VtZW50YXRpb25cclxuJG1xLXJlc3BvbnNpdmU6IHRydWUgIWRlZmF1bHQ7XHJcblxyXG4vLy8gQnJlYWtwb2ludCBsaXN0XHJcbi8vL1xyXG4vLy8gTmFtZSB5b3VyIGJyZWFrcG9pbnRzIGluIGEgd2F5IHRoYXQgY3JlYXRlcyBhIHViaXF1aXRvdXMgbGFuZ3VhZ2VcclxuLy8vIGFjcm9zcyB0ZWFtIG1lbWJlcnMuIEl0IHdpbGwgaW1wcm92ZSBjb21tdW5pY2F0aW9uIGJldHdlZW5cclxuLy8vIHN0YWtlaG9sZGVycywgZGVzaWduZXJzLCBkZXZlbG9wZXJzLCBhbmQgdGVzdGVycy5cclxuLy8vXHJcbi8vLyBAdHlwZSBNYXBcclxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnQgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xyXG4kbXEtYnJlYWtwb2ludHM6IChcclxuICAgIG1vYmlsZTogIDMyMHB4LFxyXG4gICAgdGFibGV0OiAgNzQwcHgsXHJcbiAgICBkZXNrdG9wOiA5ODBweCxcclxuICAgIHdpZGU6ICAgIDEzMDBweFxyXG4pICFkZWZhdWx0O1xyXG5cclxuLy8vIFN0YXRpYyBicmVha3BvaW50IChmb3IgZml4ZWQtd2lkdGggbGF5b3V0cylcclxuLy8vXHJcbi8vLyBEZWZpbmUgdGhlIGJyZWFrcG9pbnQgZnJvbSAkbXEtYnJlYWtwb2ludHMgdGhhdCBzaG91bGRcclxuLy8vIGJlIHVzZWQgYXMgdGhlIHRhcmdldCB3aWR0aCBmb3IgdGhlIGZpeGVkLXdpZHRoIGxheW91dFxyXG4vLy8gKGkuZS4gd2hlbiAkbXEtcmVzcG9uc2l2ZSBpcyBzZXQgdG8gJ2ZhbHNlJykgaW4gYSBvbGQtaWUuc2Nzc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3NcclxuLy8vICAvLyB0YWJsZXQtb25seS5zY3NzXHJcbi8vLyAgLy9cclxuLy8vICAvLyBJZ25vcmUgYWxsIHN0eWxlcyBhYm92ZSB0YWJsZXQgYnJlYWtwb2ludCxcclxuLy8vICAvLyBhbmQgZml4IHRoZSBzdHlsZXMgKGUuZy4gbGF5b3V0KSBhdCB0YWJsZXQgd2lkdGhcclxuLy8vICAkbXEtcmVzcG9uc2l2ZTogZmFsc2U7XHJcbi8vLyAgJG1xLXN0YXRpYy1icmVha3BvaW50OiB0YWJsZXQ7XHJcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gdGFibGV0XHJcbi8vLyAgICAgICAgICAgICAgICAgICAvLyBsYXJnZXIgYnJlYWtwb2ludHMgd2lsbCBiZSBpZ25vcmVkXHJcbi8vL1xyXG4vLy8gQHR5cGUgU3RyaW5nXHJcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI2FkZGluZy1jdXN0b20tYnJlYWtwb2ludHMgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xyXG4kbXEtc3RhdGljLWJyZWFrcG9pbnQ6IGRlc2t0b3AgIWRlZmF1bHQ7XHJcblxyXG4vLy8gU2hvdyBicmVha3BvaW50cyBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lclxyXG4vLy9cclxuLy8vIElmIHlvdSB3YW50IHRvIGRpc3BsYXkgdGhlIGN1cnJlbnRseSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wXHJcbi8vLyByaWdodCBjb3JuZXIgb2YgeW91ciBzaXRlIGR1cmluZyBkZXZlbG9wbWVudCwgYWRkIHRoZSBicmVha3BvaW50c1xyXG4vLy8gdG8gdGhpcyBsaXN0LCBvcmRlcmVkIGJ5IHdpZHRoLCBlLmcuIChtb2JpbGUsIHRhYmxldCwgZGVza3RvcCkuXHJcbi8vL1xyXG4vLy8gQHR5cGUgbWFwXHJcbiRtcS1zaG93LWJyZWFrcG9pbnRzOiAoKSAhZGVmYXVsdDtcclxuXHJcbi8vLyBDdXN0b21pemUgdGhlIG1lZGlhIHR5cGUgKGUuZy4gYEBtZWRpYSBzY3JlZW5gIG9yIGBAbWVkaWEgcHJpbnRgKVxyXG4vLy8gQnkgZGVmYXVsdCBzYXNzLW1xIHVzZXMgYW4gXCJhbGxcIiBtZWRpYSB0eXBlIChgQG1lZGlhIGFsbCBhbmQg4oCmYClcclxuLy8vXHJcbi8vLyBAdHlwZSBTdHJpbmdcclxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjY2hhbmdpbmctbWVkaWEtdHlwZSBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXHJcbiRtcS1tZWRpYS10eXBlOiBhbGwgIWRlZmF1bHQ7XHJcblxyXG4vLy8gQ29udmVydCBwaXhlbHMgdG8gZW1zXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRweCAtIHZhbHVlIHRvIGNvbnZlcnRcclxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZS1mb250LXNpemUgKCRtcS1iYXNlLWZvbnQtc2l6ZSkgLSBgPGJvZHk+YCBmb250IHNpemVcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzXHJcbi8vLyAgJGZvbnQtc2l6ZS1pbi1lbXM6IG1xLXB4MmVtKDE2cHgpO1xyXG4vLy8gIHAgeyBmb250LXNpemU6IG1xLXB4MmVtKDE2cHgpOyB9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmVzICRtcS1iYXNlLWZvbnQtc2l6ZVxyXG4vLy8gQHJldHVybnMge051bWJlcn1cclxuQGZ1bmN0aW9uIG1xLXB4MmVtKCRweCwgJGJhc2UtZm9udC1zaXplOiAkbXEtYmFzZS1mb250LXNpemUpIHtcclxuICAgIEBpZiB1bml0bGVzcygkcHgpIHtcclxuICAgICAgICBAd2FybiBcIkFzc3VtaW5nICN7JHB4fSB0byBiZSBpbiBwaXhlbHMsIGF0dGVtcHRpbmcgdG8gY29udmVydCBpdCBpbnRvIHBpeGVscy5cIjtcclxuICAgICAgICBAcmV0dXJuIG1xLXB4MmVtKCRweCAqIDFweCwgJGJhc2UtZm9udC1zaXplKTtcclxuICAgIH0gQGVsc2UgaWYgdW5pdCgkcHgpID09IGVtIHtcclxuICAgICAgICBAcmV0dXJuICRweDtcclxuICAgIH1cclxuICAgIEByZXR1cm4gKCRweCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07XHJcbn1cclxuXHJcbi8vLyBHZXQgYSBicmVha3BvaW50J3Mgd2lkdGhcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBicmVha3BvaW50LiBPbmUgb2YgJG1xLWJyZWFrcG9pbnRzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2Nzc1xyXG4vLy8gICR0YWJsZXQtd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKHRhYmxldCk7XHJcbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKGRlc2t0b3ApKSB7fVxyXG4vLy9cclxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xyXG4vLy9cclxuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFZhbHVlIGluIHBpeGVsc1xyXG5AZnVuY3Rpb24gbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJG5hbWUsICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzKSB7XHJcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbmFtZSkge1xyXG4gICAgICAgIEByZXR1cm4gbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIEB3YXJuIFwiQnJlYWtwb2ludCAjeyRuYW1lfSB3YXNuJ3QgZm91bmQgaW4gJGJyZWFrcG9pbnRzLlwiO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy8gTWVkaWEgUXVlcnkgbWl4aW5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICRmcm9tIChmYWxzZSkgLSBPbmUgb2YgJG1xLWJyZWFrcG9pbnRzXHJcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICR1bnRpbCAoZmFsc2UpIC0gT25lIG9mICRtcS1icmVha3BvaW50c1xyXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkYW5kIChmYWxzZSkgLSBBZGRpdGlvbmFsIG1lZGlhIHF1ZXJ5IHBhcmFtZXRlcnNcclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVkaWEtdHlwZSAoJG1xLW1lZGlhLXR5cGUpIC0gTWVkaWEgdHlwZTogc2NyZWVuLCBwcmludOKAplxyXG4vLy9cclxuLy8vIEBpZ25vcmUgVW5kb2N1bWVudGVkIEFQSSwgZm9yIGFkdmFuY2VkIHVzZSBvbmx5OlxyXG4vLy8gQGlnbm9yZSBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzICgkbXEtYnJlYWtwb2ludHMpXHJcbi8vLyBAaWdub3JlIEBwYXJhbSB7U3RyaW5nfSAkc3RhdGljLWJyZWFrcG9pbnQgKCRtcS1zdGF0aWMtYnJlYWtwb2ludClcclxuLy8vXHJcbi8vLyBAY29udGVudCBzdHlsaW5nIHJ1bGVzLCB3cmFwcGVkIGludG8gYSBAbWVkaWEgcXVlcnkgd2hlbiAkcmVzcG9uc2l2ZSBpcyB0cnVlXHJcbi8vL1xyXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLW1lZGlhLXR5cGVcclxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xyXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXN0YXRpYy1icmVha3BvaW50XHJcbi8vLyBAcmVxdWlyZXMge2Z1bmN0aW9ufSBtcS1weDJlbVxyXG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGhcclxuLy8vXHJcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3Jlc3BvbnNpdmUtbW9kZS1vbi1kZWZhdWx0IEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzXHJcbi8vLyAgLmVsZW1lbnQge1xyXG4vLy8gICAgQGluY2x1ZGUgbXEoJGZyb206IG1vYmlsZSkge1xyXG4vLy8gICAgICBjb2xvcjogcmVkO1xyXG4vLy8gICAgfVxyXG4vLy8gICAgQGluY2x1ZGUgbXEoJHVudGlsOiB0YWJsZXQpIHtcclxuLy8vICAgICAgY29sb3I6IGJsdWU7XHJcbi8vLyAgICB9XHJcbi8vLyAgICBAaW5jbHVkZSBtcShtb2JpbGUsIHRhYmxldCkge1xyXG4vLy8gICAgICBjb2xvcjogZ3JlZW47XHJcbi8vLyAgICB9XHJcbi8vLyAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0LCAkYW5kOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJykge1xyXG4vLy8gICAgICBjb2xvcjogdGVhbDtcclxuLy8vICAgIH1cclxuLy8vICAgIEBpbmNsdWRlIG1xKDk1MHB4KSB7XHJcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xyXG4vLy8gICAgfVxyXG4vLy8gICAgQGluY2x1ZGUgbXEodGFibGV0LCAkbWVkaWEtdHlwZTogc2NyZWVuKSB7XHJcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xyXG4vLy8gICAgfVxyXG4vLy8gICAgLy8gQWR2YW5jZWQgdXNlOlxyXG4vLy8gICAgJG15LWJyZWFrcG9pbnRzOiAoTDogOTAwcHgsIFhMOiAxMjAwcHgpO1xyXG4vLy8gICAgQGluY2x1ZGUgbXEoTCwgJGJyZWFrcG9pbnRzOiAkbXktYnJlYWtwb2ludHMsICRzdGF0aWMtYnJlYWtwb2ludDogTCkge1xyXG4vLy8gICAgICBjb2xvcjogaG90cGluaztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbkBtaXhpbiBtcShcclxuICAgICRmcm9tOiBmYWxzZSxcclxuICAgICR1bnRpbDogZmFsc2UsXHJcbiAgICAkYW5kOiBmYWxzZSxcclxuICAgICRlbXMtb246IGZhbHNlLFxyXG4gICAgJG1lZGlhLXR5cGU6ICRtcS1tZWRpYS10eXBlLFxyXG4gICAgJGJyZWFrcG9pbnRzOiAkbXEtYnJlYWtwb2ludHMsXHJcbiAgICAkcmVzcG9uc2l2ZTogJG1xLXJlc3BvbnNpdmUsXHJcbiAgICAkc3RhdGljLWJyZWFrcG9pbnQ6ICRtcS1zdGF0aWMtYnJlYWtwb2ludFxyXG4pIHtcclxuICAgICRtaW4td2lkdGg6IDA7XHJcbiAgICAkbWF4LXdpZHRoOiAwO1xyXG4gICAgJG1lZGlhLXF1ZXJ5OiAnJztcclxuXHJcbiAgICAvLyBGcm9tOiB0aGlzIGJyZWFrcG9pbnQgKGluY2x1c2l2ZSlcclxuICAgIEBpZiAkZnJvbSB7XHJcbiAgICAgICAgQGlmIHR5cGUtb2YoJGZyb20pID09IG51bWJlciB7XHJcbiAgICAgICAgICAgICRtaW4td2lkdGg6IGlmKCRlbXMtb24sIG1xLXB4MmVtKCRmcm9tKSwgKCRmcm9tKSk7XHJcbiAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgICAgICRtaW4td2lkdGg6IGlmKCRlbXMtb24sIG1xLXB4MmVtKG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRmcm9tLCAkYnJlYWtwb2ludHMpKSwgbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJGZyb20sICRicmVha3BvaW50cykpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBVbnRpbDogdGhhdCBicmVha3BvaW50IChleGNsdXNpdmUpXHJcbiAgICBAaWYgJHVudGlsIHtcclxuICAgICAgICBAaWYgdHlwZS1vZigkdW50aWwpID09IG51bWJlciB7XHJcbiAgICAgICAgICAgICRtYXgtd2lkdGg6IGlmKCRlbXMtb24sIG1xLXB4MmVtKCR1bnRpbCksKCR1bnRpbCkpO1xyXG4gICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgICAkbWF4LXdpZHRoOiBpZigkZW1zLW9uLCBtcS1weDJlbShtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkdW50aWwsICRicmVha3BvaW50cykpIC0gLjAxZW0sIG1xLWdldC1icmVha3BvaW50LXdpZHRoKCR1bnRpbCwgJGJyZWFrcG9pbnRzKSAtIDFweCk7IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBSZXNwb25zaXZlIHN1cHBvcnQgaXMgZGlzYWJsZWQsIHJhc3Rlcml6ZSB0aGUgb3V0cHV0IG91dHNpZGUgQG1lZGlhIGJsb2Nrc1xyXG4gICAgLy8gVGhlIGJyb3dzZXIgd2lsbCByZWx5IG9uIHRoZSBjYXNjYWRlIGl0c2VsZi5cclxuICAgIEBpZiAkcmVzcG9uc2l2ZSA9PSBmYWxzZSB7XHJcbiAgICAgICAgJHN0YXRpYy1icmVha3BvaW50LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkc3RhdGljLWJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XHJcbiAgICAgICAgJHRhcmdldC13aWR0aDogaWYoJGVtcy1vbiwgbXEtcHgyZW0oJHN0YXRpYy1icmVha3BvaW50LXdpZHRoKSwgJHN0YXRpYy1icmVha3BvaW50LXdpZHRoKTtcclxuXHJcbiAgICAgICAgLy8gT3V0cHV0IG9ubHkgcnVsZXMgdGhhdCBzdGFydCBhdCBvciBzcGFuIG91ciB0YXJnZXQgd2lkdGhcclxuICAgICAgICBAaWYgKFxyXG4gICAgICAgICAgICAkYW5kID09IGZhbHNlXHJcbiAgICAgICAgICAgIGFuZCAkbWluLXdpZHRoIDw9ICR0YXJnZXQtd2lkdGhcclxuICAgICAgICAgICAgYW5kIChcclxuICAgICAgICAgICAgICAgICR1bnRpbCA9PSBmYWxzZSBvciAkbWF4LXdpZHRoID49ICR0YXJnZXQtd2lkdGhcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmVzcG9uc2l2ZSBzdXBwb3J0IGlzIGVuYWJsZWQsIG91dHB1dCBydWxlcyBpbnNpZGUgQG1lZGlhIHF1ZXJpZXNcclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAaWYgJG1pbi13aWR0aCAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAobWluLXdpZHRoOiAjeyRtaW4td2lkdGh9KSc7IH1cclxuICAgICAgICBAaWYgJG1heC13aWR0aCAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAobWF4LXdpZHRoOiAjeyRtYXgtd2lkdGh9KSc7IH1cclxuICAgICAgICBAaWYgJGFuZCAgICAgICAgICAgIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAjeyRhbmR9JzsgfVxyXG5cclxuICAgICAgICAvLyBSZW1vdmUgdW5uZWNlc3NhcnkgbWVkaWEgcXVlcnkgcHJlZml4ICdhbGwgYW5kICdcclxuICAgICAgICBAaWYgKCRtZWRpYS10eXBlID09ICdhbGwnIGFuZCAkbWVkaWEtcXVlcnkgIT0gJycpIHtcclxuICAgICAgICAgICAgJG1lZGlhLXR5cGU6ICcnO1xyXG4gICAgICAgICAgICAkbWVkaWEtcXVlcnk6IHN0ci1zbGljZSh1bnF1b3RlKCRtZWRpYS1xdWVyeSksIDYpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhICN7JG1lZGlhLXR5cGUgKyAkbWVkaWEtcXVlcnl9IHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy8gUXVpY2sgc29ydFxyXG4vLy9cclxuLy8vIEBhdXRob3IgU2FtIFJpY2hhcmRzXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3QgLSBMaXN0IHRvIHNvcnRcclxuLy8vIEByZXR1cm5zIHtMaXN0fSBTb3J0ZWQgTGlzdFxyXG5AZnVuY3Rpb24gX21xLXF1aWNrLXNvcnQoJGxpc3QpIHtcclxuICAgICRsZXNzOiAgKCk7XHJcbiAgICAkZXF1YWw6ICgpO1xyXG4gICAgJGxhcmdlOiAoKTtcclxuXHJcbiAgICBAaWYgbGVuZ3RoKCRsaXN0KSA+IDEge1xyXG4gICAgICAgICRzZWVkOiBudGgoJGxpc3QsIGNlaWwobGVuZ3RoKCRsaXN0KSAvIDIpKTtcclxuXHJcbiAgICAgICAgQGVhY2ggJGl0ZW0gaW4gJGxpc3Qge1xyXG4gICAgICAgICAgICBAaWYgKCRpdGVtID09ICRzZWVkKSB7XHJcbiAgICAgICAgICAgICAgICAkZXF1YWw6IGFwcGVuZCgkZXF1YWwsICRpdGVtKTtcclxuICAgICAgICAgICAgfSBAZWxzZSBpZiAoJGl0ZW0gPCAkc2VlZCkge1xyXG4gICAgICAgICAgICAgICAgJGxlc3M6IGFwcGVuZCgkbGVzcywgJGl0ZW0pO1xyXG4gICAgICAgICAgICB9IEBlbHNlIGlmICgkaXRlbSA+ICRzZWVkKSB7XHJcbiAgICAgICAgICAgICAgICAkbGFyZ2U6IGFwcGVuZCgkbGFyZ2UsICRpdGVtKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQHJldHVybiBqb2luKGpvaW4oX21xLXF1aWNrLXNvcnQoJGxlc3MpLCAkZXF1YWwpLCBfbXEtcXVpY2stc29ydCgkbGFyZ2UpKTtcclxuICAgIH1cclxuXHJcbiAgICBAcmV0dXJuICRsaXN0O1xyXG59XHJcblxyXG4vLy8gU29ydCBhIG1hcCBieSB2YWx1ZXMgKHdvcmtzIHdpdGggbnVtYmVycyBvbmx5KVxyXG4vLy9cclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gc29ydFxyXG4vLy8gQHJldHVybnMge01hcH0gTWFwIHNvcnRlZCBieSB2YWx1ZVxyXG5AZnVuY3Rpb24gX21xLW1hcC1zb3J0LWJ5LXZhbHVlKCRtYXApIHtcclxuICAgICRtYXAtc29ydGVkOiAoKTtcclxuICAgICRtYXAta2V5czogbWFwLWtleXMoJG1hcCk7XHJcbiAgICAkbWFwLXZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcclxuICAgICRtYXAtdmFsdWVzLXNvcnRlZDogX21xLXF1aWNrLXNvcnQoJG1hcC12YWx1ZXMpO1xyXG5cclxuICAgIC8vIFJlb3JkZXIga2V5L3ZhbHVlIHBhaXJzIGJhc2VkIG9uIGtleSB2YWx1ZXNcclxuICAgIEBlYWNoICR2YWx1ZSBpbiAkbWFwLXZhbHVlcy1zb3J0ZWQge1xyXG4gICAgICAgICRpbmRleDogaW5kZXgoJG1hcC12YWx1ZXMsICR2YWx1ZSk7XHJcbiAgICAgICAgJGtleTogbnRoKCRtYXAta2V5cywgJGluZGV4KTtcclxuICAgICAgICAkbWFwLXNvcnRlZDogbWFwLW1lcmdlKCRtYXAtc29ydGVkLCAoJGtleTogJHZhbHVlKSk7XHJcblxyXG4gICAgICAgIC8vIFVuc2V0IHRoZSB2YWx1ZSBpbiAkbWFwLXZhbHVlcyB0byBwcmV2ZW50IHRoZSBsb29wXHJcbiAgICAgICAgLy8gZnJvbSBmaW5kaW5nIHRoZSBzYW1lIGluZGV4IHR3aWNlXHJcbiAgICAgICAgJG1hcC12YWx1ZXM6IHNldC1udGgoJG1hcC12YWx1ZXMsICRpbmRleCwgMCk7XHJcbiAgICB9XHJcblxyXG4gICAgQHJldHVybiAkbWFwLXNvcnRlZDtcclxufVxyXG5cclxuLy8vIEFkZCBhIGJyZWFrcG9pbnRcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBicmVha3BvaW50XHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIC0gV2lkdGggb2YgdGhlIGJyZWFrcG9pbnRcclxuLy8vXHJcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzXHJcbi8vLyAgQGluY2x1ZGUgbXEtYWRkLWJyZWFrcG9pbnQodHZzY3JlZW4sIDE5MjBweCk7XHJcbi8vLyAgQGluY2x1ZGUgbXEodHZzY3JlZW4pIHt9XHJcbkBtaXhpbiBtcS1hZGQtYnJlYWtwb2ludCgkbmFtZSwgJHdpZHRoKSB7XHJcbiAgICAkbmV3LWJyZWFrcG9pbnQ6ICgkbmFtZTogJHdpZHRoKTtcclxuICAgICRtcS1icmVha3BvaW50czogbWFwLW1lcmdlKCRtcS1icmVha3BvaW50cywgJG5ldy1icmVha3BvaW50KSAhZ2xvYmFsO1xyXG4gICAgJG1xLWJyZWFrcG9pbnRzOiBfbXEtbWFwLXNvcnQtYnktdmFsdWUoJG1xLWJyZWFrcG9pbnRzKSAhZ2xvYmFsO1xyXG59XHJcblxyXG4vLy8gU2hvdyB0aGUgYWN0aXZlIGJyZWFrcG9pbnQgaW4gdGhlIHRvcCByaWdodCBjb3JuZXIgb2YgdGhlIHZpZXdwb3J0XHJcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3NlZWluZy10aGUtY3VycmVudGx5LWFjdGl2ZS1icmVha3BvaW50XHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hvdy1icmVha3BvaW50cyAoJG1xLXNob3ctYnJlYWtwb2ludHMpIC0gTGlzdCBvZiBicmVha3BvaW50cyB0byBzaG93IGluIHRoZSB0b3AgcmlnaHQgY29ybmVyXHJcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzICgkbXEtYnJlYWtwb2ludHMpIC0gQnJlYWtwb2ludCBuYW1lcyBhbmQgc2l6ZXNcclxuLy8vXHJcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcclxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1zaG93LWJyZWFrcG9pbnRzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2Nzc1xyXG4vLy8gIC8vIFNob3cgYnJlYWtwb2ludHMgdXNpbmcgZ2xvYmFsIHNldHRpbmdzXHJcbi8vLyAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cztcclxuLy8vXHJcbi8vLyAgLy8gU2hvdyBicmVha3BvaW50cyB1c2luZyBjdXN0b20gc2V0dGluZ3NcclxuLy8vICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzKChMLCBYTCksIChTOiAzMDBweCwgTDogODAwcHgsIFhMOiAxMjAwcHgpKTtcclxuQG1peGluIG1xLXNob3ctYnJlYWtwb2ludHMoJHNob3ctYnJlYWtwb2ludHM6ICRtcS1zaG93LWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xyXG4gICAgYm9keTpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGQ0Y4RTM7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGQkVFRDU7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRkJFRUQ1O1xyXG4gICAgICAgIGNvbG9yOiAjQzA5ODUzO1xyXG4gICAgICAgIGZvbnQ6IHNtYWxsLWNhcHRpb247XHJcbiAgICAgICAgcGFkZGluZzogM3B4IDZweDtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHotaW5kZXg6IDEwMDtcclxuXHJcbiAgICAgICAgLy8gTG9vcCB0aHJvdWdoIHRoZSBicmVha3BvaW50cyB0aGF0IHNob3VsZCBiZSBzaG93blxyXG4gICAgICAgIEBlYWNoICRzaG93LWJyZWFrcG9pbnQgaW4gJHNob3ctYnJlYWtwb2ludHMge1xyXG4gICAgICAgICAgICAkd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzaG93LWJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRzaG93LWJyZWFrcG9pbnQsICRicmVha3BvaW50czogJGJyZWFrcG9pbnRzKSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIiN7JHNob3ctYnJlYWtwb2ludH0g4omlICN7JHdpZHRofSAoI3ttcS1weDJlbSgkd2lkdGgpfSlcIjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGlmIGxlbmd0aCgkbXEtc2hvdy1icmVha3BvaW50cykgPiAwIHtcclxuICAgIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHM7XHJcbn1cclxuIiwiJGV4dGVuc2lvbnM6IHBkZiB4bHMgcHB0IGRvYztcclxuXHJcbkBtaXhpbiBsaW5rIHtcclxuICBAaW5jbHVkZSB1aS10eXBvZ3JhcGh5KGxpbmspO1xyXG4gIGNvbG9yOiBjb2xvcihzZWNvbmRhcnkpO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBsaW5rLS1yZWQge1xyXG4gIEBpbmNsdWRlIHVpLXR5cG9ncmFwaHkoYm9keSk7XHJcbiAgY29sb3I6IGNvbG9yKHByaW1hcnkpO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBsaW5rLS1yZWRzbSB7XHJcbiAgQGluY2x1ZGUgdWktdHlwb2dyYXBoeShjYXB0aW9uKTtcclxuICBjb2xvcjogY29sb3IocHJpbWFyeSk7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGxpbmstLXBkZiB7XHJcbiAgQGluY2x1ZGUgdWktdHlwb2dyYXBoeShwZGYpO1xyXG4gIGNvbG9yOiBjb2xvcihzZWNvbmRhcnkpO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBsaW5rLS1hcnJvdyB7XHJcbiAgQGluY2x1ZGUgdWktdHlwb2dyYXBoeShwZGYpO1xyXG4gIGNvbG9yOiBjb2xvcihzZWNvbmRhcnkpO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAmOjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IHNwYWNlKDEpO1xyXG4gICAgaGVpZ2h0OiBzcGFjZSgyLjUpO1xyXG4gICAgd2lkdGg6IHNwYWNlKDIuNSk7XHJcbiAgICBib3R0b206IDNweDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLy0vbWVkaWEvUHJvamVjdC9UVEMvRGV2UHJvdG8vSWNvbnMvYXJyb3ctYmFja2dyb3VuZC1yaWdodC1vdXRsaW5lLnN2ZycpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICB9XHJcblxyXG4gICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gbGluay1leHRlbnNpb25zIHtcclxuICBAZWFjaCAkZXh0ZW5zaW9uIGluICRleHRlbnNpb25zIHtcclxuICAgICZbaHJlZio9XCIjeyRleHRlbnNpb259XCJdIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogc3BhY2UoMC41KTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHJpZ2h0OiAtMnB4O1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpZiAkZXh0ZW5zaW9uID09IHBkZiB7XHJcbiAgICAgICZbaHJlZio9XCIjeyRleHRlbnNpb259XCJdOjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC8tL21lZGlhL1Byb2plY3QvVFRDL0RldlByb3RvL0ljb25zL3BkZi1yZWQuc3ZnKTtcclxuICAgICAgICBoZWlnaHQ6IDI1cHg7XHJcbiAgICAgICAgd2lkdGg6IDIzcHg7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjNweCAyNXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IHByZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAmW2hyZWYqPVwiI3skZXh0ZW5zaW9ufVwiXTo6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiLiN7JGV4dGVuc2lvbn1cIjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuIiwiJHNwYWNlOiA4cHggIWRlZmF1bHQ7XHJcblxyXG5AZnVuY3Rpb24gc3BhY2UoJHNpemU6IDEpIHtcclxuICBAcmV0dXJuICRzcGFjZSAqICRzaXplO1xyXG59XHJcbiJdfQ== */
