#hero .promo {
  grid-row: 1/-1;
  height: 100%;
  z-index: 1;
  position: relative;
  text-align: center;
  padding: 0;
  overflow-x: clip;
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#hero .promo .content {
  padding: var(--spacer1) var(--gap);
}
@media (min-width: 901px) {
  #hero .promo .content {
    padding: var(--gap);
  }
}
#hero .promo .content > svg {
  height: 60px;
  width: 60px;
  margin: 0 auto var(--gap);
  color: #df3035;
}
#hero .promo:last-of-type {
  grid-column: 1;
  grid-row: 2;
  overflow: visible;
}
#hero .promo:last-of-type picture,
#hero .promo:last-of-type background-video {
  left: 0;
}
#hero .promo picture,
#hero .promo background-video {
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  height: 100%;
  width: 100%;
  min-width: 50vw;
}
#hero .promo picture video,
#hero .promo picture img,
#hero .promo background-video video,
#hero .promo background-video img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 769px) {
  #hero .promo {
    grid-row: 1;
    grid-column: 1;
    overflow-x: visible;
    min-height: 550px;
  }
  #hero .promo .text h2 {
    font-size: 48px;
    padding: 0 var(--gap);
  }
  #hero .promo.right {
    grid-column: 2;
    grid-row: 1;
  }
}
@media (min-width: 1201px) {
  #hero .promo .content {
    margin: 0 auto;
    padding: var(--spacer1);
    max-width: 550px;
  }
}
#hero .promo picture:before {
  content: "";
  top: 0;
  right: 0;
  position: absolute;
  height: 100%;
  width: 100%;
  z-index: 10;
}
#hero .promo.blue picture:before {
  background-color: rgba(41, 43, 104, 0.8);
}
#hero .promo.black picture:before {
  background-color: rgba(0, 0, 0, 0.6);
}
#hero .promo.red picture:before {
  background-color: rgba(223, 48, 53, 0.8);
}
#hero .promo.none header span {
  background-color: #76bb28;
}
#hero .promo tag-line {
  letter-spacing: 3px;
  font-size: 30px;
  flex-wrap: wrap;
}
#hero .promo tag-line span img {
  margin-right: var(--gap);
}
@media (min-width: 1121px) {
  #hero .promo tag-line {
    font-size: 24px;
  }
  #hero .promo tag-line span img {
    margin-right: calc(var(--gap) * 0.5);
    height: 24px;
    width: 24px;
  }
}
@media (min-width: 1501px) {
  #hero .promo tag-line {
    font-size: 30px;
  }
  #hero .promo tag-line span img {
    margin-right: var(--gap);
    height: 35px;
    width: 35px;
  }
}
#hero .promo header {
  --promo-banner-scale: 0.7;
  position: absolute;
  top: 0;
  right: -250px;
  transform: translate(-40px, 40px) rotate(45deg) scale(var(--promo-banner-scale, 1));
  transform-origin: 50% 0%;
  width: 500px;
}
#hero .promo header h2 {
  text-align: center;
  color: white;
  text-transform: uppercase;
}
#hero .promo header h2 span {
  display: flex;
  flex-direction: column;
  background-color: #292b68;
  font-family: lato, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 0.5em;
  padding: 0.4em 0;
}
#hero .promo header h2 span strong {
  font-family: lato, sans-serif;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
#hero .promo header h2 em {
  display: block;
  font-style: normal;
  background-color: #df3035;
  font-size: 0.8em;
  font-family: lato, sans-serif;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding: 0.4em 0;
}
#hero .promo .logo {
  margin-top: 0.6em;
  max-height: 60px;
  height: 100%;
  display: inline-block;
  position: relative;
  margin-bottom: var(--gutter0);
}
#hero .promo .logo img {
  display: block;
  height: 100%;
}
#hero .promo .logo img[src*=tagline] {
  margin-top: 0.4em;
}
#hero .promo svg.uk-flag {
  height: 0.8em;
  width: auto;
  margin-right: calc(var(--gap) * 0.5);
}
#hero .promo ul {
  display: grid;
  grid-gap: var(--gap);
  margin-top: var(--gutter1);
  grid-template-columns: repeat(5, 1fr);
}
@media (max-width: 1500px) {
  #hero .promo ul {
    grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
  }
}
#hero .promo ul li {
  font-family: lato, sans-serif;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: flex;
  position: relative;
  flex-direction: column;
  place-items: center;
  border-radius: 5px;
  color: white;
  padding: calc(var(--gap) * 0.5);
  border: 1px solid #6a6a6a;
  max-width: 100px;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  transition: color var(--transition-duration, 0.2s) var(--transition-ease, cubic-bezier(0.42, 0, 0.58, 1)) var(--transition-delay, );
}
#hero .promo ul li::before {
  content: attr(data-index);
  color: #df3035;
  margin-bottom: -0.5em;
  display: flex;
}
#hero .promo ul li, #hero .promo ul li::before {
  transition: color var(--transition-duration, 0.2s) var(--transition-ease, cubic-bezier(0.42, 0, 0.58, 1)) var(--transition-delay, );
  transition-delay: 0.2s;
}
#hero .promo ul li abbr {
  text-decoration: none;
  font-size: 2em;
  display: block;
}
#hero .promo ul li p {
  position: absolute;
  padding: inherit;
  background-color: #6a6a6a;
  font-size: 0.8em;
  top: 0;
  left: 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  opacity: 0;
  transition: opacity var(--transition-duration, 0.2s) var(--transition-ease, cubic-bezier(0.42, 0, 0.58, 1)) var(--transition-delay, );
}
#hero .promo .cta {
  margin-top: var(--gutter1);
}
#hero .promo .cta a:not(.button) {
  color: #df3035;
  margin-left: var(--gutter0);
}
@media (hover: hover) {
  #hero .promo .cta a:not(.button):hover {
    color: white;
  }
}
@media (min-width: 1681px) {
  #hero .promo .promo {
    padding-left: calc(var(--computed-gutter) + var(--gutter3));
  }
}
#hero .promo.esg-promo {
  overflow: visible;
}
#hero .promo.esg-promo tag-line span {
  color: var(--primary, #131f6b);
}
#hero .promo.esg-promo .text {
  color: #FFFFFF;
}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvcHJvbW9zLnNjc3MiLCJjb21wb25lbnRzL3Byb21vcy5jc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGRvZ2dpc3R5bGUvc2Fzcy9saWJyYXJ5L3NyYy9oZWxwZXJzL19icmVhay5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0Bkb2dnaXN0eWxlL3Nhc3MvbGlicmFyeS9zcmMvY3JlYXRlL191bml0cy5zY3NzIiwiX3ZhcmlhYmxlcy9jb2xvdXJzLnNjc3MiLCJfdmFyaWFibGVzL2ZvbnRzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGRvZ2dpc3R5bGUvc2Fzcy9saWJyYXJ5L3NyYy9jb2xsZWN0aW9ucy9zdHlsaW5nL19ob3Zlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0Bkb2dnaXN0eWxlL3Nhc3MvbGlicmFyeS9zcmMvY3JlYXRlL19wYWxldHRlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7RUFDRSxjQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxrQkFBQTtFQUNBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSx1QkFBQTtFQUNBLG1CQUFBO0FDREY7QURHRTtFQUNFLGtDQUFBO0FDREo7QUNYRTtFRldBO0lBR0ksbUJHZ0NFO0VGL0JOO0FBQ0Y7QURBSTtFQUNFLFlBQUE7RUFDQSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxjSURBO0FIR047QURFRTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EsaUJBQUE7QUNBSjtBRENJOztFQUVFLE9BQUE7QUNDTjtBREdFOztFQUVFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLFFBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7RUFDQSxlQUFBO0FDREo7QURFSTs7OztFQUVFLFdBQUE7RUFDQSxZQUFBO0VBQ0Esb0JBQUE7S0FBQSxpQkFBQTtBQ0VOO0FDakRFO0VGSEY7SUF1REksV0FB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Q1hSO0FEZ0JFO0VBQ0UsMEJHNUlPO0FGOEhYO0FEZUk7RUFDRSxjSTFQQTtFSjJQQSwyQkdoSks7QUZtSVg7QUtqUUU7RUFDRTtJTitRSSxZQUFBO0VDWE47QUFDRjtBQ3RRRTtFRnNSRTtJQUNFLDJEQUFBO0VDYko7QUFDRjtBRGdCRTtFQUNFLGlCQUFBO0FDZEo7QURnQk07RUFDRSw4QkkzUEU7QUg2T1Y7QURrQkk7RUFDRSxjT3RQVTtBTnNPaEIiLCJmaWxlIjoiY29tcG9uZW50cy9wcm9tb3MuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnX21vZHVsZXMnIGFzICo7XG5cbiNoZXJvIC5wcm9tbyB7XG4gIGdyaWQtcm93OiAxIC8gLTE7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93LXg6IGNsaXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIC5jb250ZW50IHtcbiAgICBwYWRkaW5nOiAkc3BhY2VyICRnYXA7XG4gICAgQGluY2x1ZGUgYnJlYWstb3V0KDkwMCkge1xuICAgICAgcGFkZGluZzogJGdhcDtcbiAgICB9XG4gICAgJiA+IHN2ZyB7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvICRnYXA7XG4gICAgICBjb2xvcjogJHJlZDtcbiAgICB9XG4gIH1cblxuICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgZ3JpZC1yb3c6IDI7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcGljdHVyZSxcbiAgICBiYWNrZ3JvdW5kLXZpZGVvIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgcGljdHVyZSxcbiAgYmFja2dyb3VuZC12aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiA1MHZ3O1xuICAgIHZpZGVvLFxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrLW91dCg3NjgpIHtcbiAgICBncmlkLXJvdzogMTtcbiAgICBncmlkLWNvbHVtbjogMTtcbiAgICBvdmVyZmxvdy14OiB2aXNpYmxlO1xuICAgIG1pbi1oZWlnaHQ6IDU1MHB4O1xuXG4gICAgLnRleHQge1xuICAgICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgICAgIHBhZGRpbmc6IDAgJGdhcDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnJpZ2h0IHtcbiAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWstb3V0KDEyMDApIHtcbiAgICAuY29udGVudCB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHBhZGRpbmc6ICRzcGFjZXI7XG4gICAgICBtYXgtd2lkdGg6IDU1MHB4O1xuICAgIH1cbiAgfVxuXG4gIHBpY3R1cmUge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgIH1cbiAgfVxuXG4gICYuYmx1ZSB7XG4gICAgcGljdHVyZSB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsdWUyLCAwLjgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmJsYWNrIHtcbiAgICBwaWN0dXJlIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShibGFjaywgMC42KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5yZWQge1xuICAgIHBpY3R1cmUge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRyZWQsIDAuOCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYubm9uZSB7XG4gICAgaGVhZGVyIHtcbiAgICAgIHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzZiYjI4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHRhZy1saW5lIHtcbiAgICBsZXR0ZXItc3BhY2luZzogM3B4O1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgc3BhbiB7XG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRnYXA7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrLW91dCgxMTIwKSB7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICBzcGFuIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRnYXAwO1xuICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrLW91dCgxNTAwKSB7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICBzcGFuIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRnYXA7XG4gICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaGVhZGVyIHtcbiAgICAtLXByb21vLWJhbm5lci1zY2FsZTogMC43O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IC0yNTBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNDBweCwgNDBweCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSh2YXIoLS1wcm9tby1iYW5uZXItc2NhbGUsIDEpKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMCU7XG4gICAgd2lkdGg6IDUwMHB4O1xuICAgIGgyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWUyO1xuICAgICAgICBAaW5jbHVkZSBmb250LWxhdG8oKTtcbiAgICAgICAgZm9udC1zaXplOiAwLjVlbTtcbiAgICAgICAgcGFkZGluZzogMC40ZW0gMDtcbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICBAaW5jbHVkZSBmb250LWxhdG8oYm9sZCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGVtIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1sYXRvKGJvbGQpO1xuICAgICAgICBwYWRkaW5nOiAwLjRlbSAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5sb2dvIHtcbiAgICBtYXJnaW4tdG9wOiAwLjZlbTtcbiAgICBtYXgtaGVpZ2h0OiA2MHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXIwO1xuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICZbc3JjKj0ndGFnbGluZSddIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMC40ZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgc3ZnLnVrLWZsYWcge1xuICAgIGhlaWdodDogMC44ZW07XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiAkZ2FwMDtcbiAgfVxuXG4gIHVsIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtZ2FwOiAkZ2FwO1xuICAgIG1hcmdpbi10b3A6ICRndXR0ZXI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcbiAgICBAaW5jbHVkZSBicmVhay1pbigxNTAwKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgxMTBweCwgMWZyKSk7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtbGF0byhib2xkKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIHBhZGRpbmc6ICRnYXAwO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXkyO1xuICAgICAgbWF4LXdpZHRoOiAxMDBweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgJHRyYW5zaXRpb247XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtaW5kZXgpO1xuICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTAuNWVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuXG4gICAgICAmLFxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgJHRyYW5zaXRpb247XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG4gICAgICB9XG5cbiAgICAgIGFiYnIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcGFkZGluZzogaW5oZXJpdDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXkyO1xuICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHRyYW5zaXRpb247XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN0YSB7XG4gICAgbWFyZ2luLXRvcDogJGd1dHRlcjtcbiAgICBhOm5vdCguYnV0dG9uKSB7XG4gICAgICBjb2xvcjogJHJlZDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkZ3V0dGVyMDtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrLW91dChtYXgpIHtcbiAgICAucHJvbW8ge1xuICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLWNvbXB1dGVkLWd1dHRlcikgKyAjeyRndXR0ZXIzfSk7XG4gICAgfVxuICB9XG5cbiAgJi5lc2ctcHJvbW8ge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRhZy1saW5lIHtcbiAgICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRleHQge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbn1cbiIsIiNoZXJvIC5wcm9tbyB7XG4gIGdyaWQtcm93OiAxLy0xO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdy14OiBjbGlwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbiNoZXJvIC5wcm9tbyAuY29udGVudCB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlcjEpIHZhcigtLWdhcCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTAxcHgpIHtcbiAgI2hlcm8gLnByb21vIC5jb250ZW50IHtcbiAgICBwYWRkaW5nOiB2YXIoLS1nYXApO1xuICB9XG59XG4jaGVybyAucHJvbW8gLmNvbnRlbnQgPiBzdmcge1xuICBoZWlnaHQ6IDYwcHg7XG4gIHdpZHRoOiA2MHB4O1xuICBtYXJnaW46IDAgYXV0byB2YXIoLS1nYXApO1xuICBjb2xvcjogI2RmMzAzNTtcbn1cbiNoZXJvIC5wcm9tbzpsYXN0LW9mLXR5cGUge1xuICBncmlkLWNvbHVtbjogMTtcbiAgZ3JpZC1yb3c6IDI7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuI2hlcm8gLnByb21vOmxhc3Qtb2YtdHlwZSBwaWN0dXJlLFxuI2hlcm8gLnByb21vOmxhc3Qtb2YtdHlwZSBiYWNrZ3JvdW5kLXZpZGVvIHtcbiAgbGVmdDogMDtcbn1cbiNoZXJvIC5wcm9tbyBwaWN0dXJlLFxuI2hlcm8gLnByb21vIGJhY2tncm91bmQtdmlkZW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IC0xO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDUwdnc7XG59XG4jaGVybyAucHJvbW8gcGljdHVyZSB2aWRlbyxcbiNoZXJvIC5wcm9tbyBwaWN0dXJlIGltZyxcbiNoZXJvIC5wcm9tbyBiYWNrZ3JvdW5kLXZpZGVvIHZpZGVvLFxuI2hlcm8gLnByb21vIGJhY2tncm91bmQtdmlkZW8gaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgI2hlcm8gLnByb21vIHtcbiAgICBncmlkLXJvdzogMTtcbiAgICBncmlkLWNvbHVtbjogMTtcbiAgICBvdmVyZmxvdy14OiB2aXNpYmxlO1xuICAgIG1pbi1oZWlnaHQ6IDU1MHB4O1xuICB9XG4gICNoZXJvIC5wcm9tbyAudGV4dCBoMiB7XG4gICAgZm9udC1zaXplOiA0OHB4O1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tZ2FwKTtcbiAgfVxuICAjaGVybyAucHJvbW8ucmlnaHQge1xuICAgIGdyaWQtY29sdW1uOiAyO1xuICAgIGdyaWQtcm93OiAxO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMXB4KSB7XG4gICNoZXJvIC5wcm9tbyAuY29udGVudCB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2VyMSk7XG4gICAgbWF4LXdpZHRoOiA1NTBweDtcbiAgfVxufVxuI2hlcm8gLnByb21vIHBpY3R1cmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDtcbn1cbiNoZXJvIC5wcm9tby5ibHVlIHBpY3R1cmU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0MSwgNDMsIDEwNCwgMC44KTtcbn1cbiNoZXJvIC5wcm9tby5ibGFjayBwaWN0dXJlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cbiNoZXJvIC5wcm9tby5yZWQgcGljdHVyZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIyMywgNDgsIDUzLCAwLjgpO1xufVxuI2hlcm8gLnByb21vLm5vbmUgaGVhZGVyIHNwYW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzZiYjI4O1xufVxuI2hlcm8gLnByb21vIHRhZy1saW5lIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4jaGVybyAucHJvbW8gdGFnLWxpbmUgc3BhbiBpbWcge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLWdhcCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTEyMXB4KSB7XG4gICNoZXJvIC5wcm9tbyB0YWctbGluZSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG4gICNoZXJvIC5wcm9tbyB0YWctbGluZSBzcGFuIGltZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWdhcCkgKiAwLjUpO1xuICAgIGhlaWdodDogMjRweDtcbiAgICB3aWR0aDogMjRweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE1MDFweCkge1xuICAjaGVybyAucHJvbW8gdGFnLWxpbmUge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgfVxuICAjaGVybyAucHJvbW8gdGFnLWxpbmUgc3BhbiBpbWcge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tZ2FwKTtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgd2lkdGg6IDM1cHg7XG4gIH1cbn1cbiNoZXJvIC5wcm9tbyBoZWFkZXIge1xuICAtLXByb21vLWJhbm5lci1zY2FsZTogMC43O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IC0yNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTQwcHgsIDQwcHgpIHJvdGF0ZSg0NWRlZykgc2NhbGUodmFyKC0tcHJvbW8tYmFubmVyLXNjYWxlLCAxKSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAwJTtcbiAgd2lkdGg6IDUwMHB4O1xufVxuI2hlcm8gLnByb21vIGhlYWRlciBoMiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI2hlcm8gLnByb21vIGhlYWRlciBoMiBzcGFuIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI5MmI2ODtcbiAgZm9udC1mYW1pbHk6IGxhdG8sIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgZm9udC1zaXplOiAwLjVlbTtcbiAgcGFkZGluZzogMC40ZW0gMDtcbn1cbiNoZXJvIC5wcm9tbyBoZWFkZXIgaDIgc3BhbiBzdHJvbmcge1xuICBmb250LWZhbWlseTogbGF0bywgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuI2hlcm8gLnByb21vIGhlYWRlciBoMiBlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZjMwMzU7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIGZvbnQtZmFtaWx5OiBsYXRvLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHBhZGRpbmc6IDAuNGVtIDA7XG59XG4jaGVybyAucHJvbW8gLmxvZ28ge1xuICBtYXJnaW4tdG9wOiAwLjZlbTtcbiAgbWF4LWhlaWdodDogNjBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ3V0dGVyMCk7XG59XG4jaGVybyAucHJvbW8gLmxvZ28gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbn1cbiNoZXJvIC5wcm9tbyAubG9nbyBpbWdbc3JjKj10YWdsaW5lXSB7XG4gIG1hcmdpbi10b3A6IDAuNGVtO1xufVxuI2hlcm8gLnByb21vIHN2Zy51ay1mbGFnIHtcbiAgaGVpZ2h0OiAwLjhlbTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1nYXApICogMC41KTtcbn1cbiNoZXJvIC5wcm9tbyB1bCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtZ2FwOiB2YXIoLS1nYXApO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1ndXR0ZXIxKTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxNTAwcHgpIHtcbiAgI2hlcm8gLnByb21vIHVsIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgxMTBweCwgMWZyKSk7XG4gIH1cbn1cbiNoZXJvIC5wcm9tbyB1bCBsaSB7XG4gIGZvbnQtZmFtaWx5OiBsYXRvLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IGNhbGModmFyKC0tZ2FwKSAqIDAuNSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2YTZhNmE7XG4gIG1heC13aWR0aDogMTAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24sIDAuMnMpIHZhcigtLXRyYW5zaXRpb24tZWFzZSwgY3ViaWMtYmV6aWVyKDAuNDIsIDAsIDAuNTgsIDEpKSB2YXIoLS10cmFuc2l0aW9uLWRlbGF5LCApO1xufVxuI2hlcm8gLnByb21vIHVsIGxpOjpiZWZvcmUge1xuICBjb250ZW50OiBhdHRyKGRhdGEtaW5kZXgpO1xuICBjb2xvcjogI2RmMzAzNTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNWVtO1xuICBkaXNwbGF5OiBmbGV4O1xufVxuI2hlcm8gLnByb21vIHVsIGxpLCAjaGVybyAucHJvbW8gdWwgbGk6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24sIDAuMnMpIHZhcigtLXRyYW5zaXRpb24tZWFzZSwgY3ViaWMtYmV6aWVyKDAuNDIsIDAsIDAuNTgsIDEpKSB2YXIoLS10cmFuc2l0aW9uLWRlbGF5LCApO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xufVxuI2hlcm8gLnByb21vIHVsIGxpIGFiYnIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNoZXJvIC5wcm9tbyB1bCBsaSBwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmE2YTZhO1xuICBmb250LXNpemU6IDAuOGVtO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbiwgMC4ycykgdmFyKC0tdHJhbnNpdGlvbi1lYXNlLCBjdWJpYy1iZXppZXIoMC40MiwgMCwgMC41OCwgMSkpIHZhcigtLXRyYW5zaXRpb24tZGVsYXksICk7XG59XG4jaGVybyAucHJvbW8gLmN0YSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWd1dHRlcjEpO1xufVxuI2hlcm8gLnByb21vIC5jdGEgYTpub3QoLmJ1dHRvbikge1xuICBjb2xvcjogI2RmMzAzNTtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWd1dHRlcjApO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgI2hlcm8gLnByb21vIC5jdGEgYTpub3QoLmJ1dHRvbik6aG92ZXIge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE2ODFweCkge1xuICAjaGVybyAucHJvbW8gLnByb21vIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tY29tcHV0ZWQtZ3V0dGVyKSArIHZhcigtLWd1dHRlcjMpKTtcbiAgfVxufVxuI2hlcm8gLnByb21vLmVzZy1wcm9tbyB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuI2hlcm8gLnByb21vLmVzZy1wcm9tbyB0YWctbGluZSBzcGFuIHtcbiAgY29sb3I6IHZhcigtLXByaW1hcnksICMxMzFmNmIpO1xufVxuI2hlcm8gLnByb21vLmVzZy1wcm9tbyAudGV4dCB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufSIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8gQnJlYWsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNicmVha1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuQG1peGluIG91dCgkYnJlYWtwb2ludCkge1xuICBAbWVkaWEgKG1pbi13aWR0aDojeyRicmVha3BvaW50ICsgMX0pIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaW4oJGJyZWFrcG9pbnQpIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6I3skYnJlYWtwb2ludH0pIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gYmV0d2VlbigkbWluLCAkbWF4KSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiN7JG1pbn0pIGFuZCAobWF4LXdpZHRoOiN7JG1heH0pIHtcbiAgICBAY29udGVudDtcbiAgfVxufSIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBVbml0c1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuQHVzZSBcInNhc3M6bWF0aFwiO1xuQHVzZSAnc2FzczpzdHJpbmcnO1xuQHVzZSAnc2FzczptZXRhJztcblxuLy8gVGhpcyB1bml0cyBjcmVhdG9yIHdpbGwgcmVuZGVyIHNpeCBwb3NpdGl2ZSBhbmQgc2l4IG5lZ2F0aXZlIHNhc3MgdmFyaWFibGVzIGZvciBcbi8vIGdhcHMsIHNwYWNlcnMsIGFuZCBndXR0ZXJzIHJlbGF0aXZlIHRvIHRoZSBiYXNldiB2YWx1ZXMgZGVmaW5lZCBiZWxvdy5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBCYXNlIFZhbHVlcyBcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vLyBAc2VlIGh0dHBzOi8vY29kZXBlbi5pby9tYXJrbm90dG9uL3Blbi9FeFBiTkdlXG5cbi8vIFRoZXNlIHRocmVlIHZhbHVlcyB3aWxsIGFjdCBhIGNvbnN0YW50IGJhc2VsaW5lIGZvciBhbGwgZm9sbG93aW5nIHVuaXQgZGVsY2FyYXRpb25zLlxuXG4vLyBHYXBzIG11c3QgdXNlIGFuIGFic29sdXRlIGFuZCBzdGF0aWMgJ3B4JyB1bml0LiBJdCBzaG91bGQgbm90IGJlIHJlbGF0aXZlIHRvIGFueVxuLy8gcGFyZW50IGNvbnRhaW5lciBhbmQgaXMgbm90IGludGVuZGVkIGZvciBmb250IHNpemVzLCBzbyB5b3Ugc2hvdWxkIG5vdCB1c2UgJ3JlbScgb3IgJ2VtJy4gXG4kZ2FwIDogMTZweCAhZGVmYXVsdDtcbiRiYXNlLWdhcCA6ICRnYXA7XG5cbi8vIFNwYWNlcnMgbXVzdCB1c2UgYSAndmgnIHVuaXQgc28gdGhleSBhcmUgcmVsYXRpdmUgdG8gdGhlIHVzZXJzIHZpZXdwb3J0IGhlaWdodC13aXNlLlxuLy8gVGhleSBzaG91bGQgcHJpbWFyaWx5IGJlIHVzZWQgZm9yIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zIG9uIGEgY29tcG9uZW50IGxldmVsLlxuJHNwYWNlciA6IDR2aCAhZGVmYXVsdDsgXG4kYmFzZS1zcGFjZXIgOiAkc3BhY2VyOyBcblxuLy8gR3V0dGVycyBtdXN0IHVzZSBhICd2dycgdW5pdCBzbyB0aGV5IGFyZSByZWxhdGl2ZSB0byB0aGUgdXNlcnMgdmlld3BvcnQgd2lkdGgtd2lzZS4gXG4vLyBUaGV5IHNob3VsZCBwcmltYXJpbHkgYmUgdXNlZCBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0IHBhZGRpbmcgb3IgbWFyZ2luIG9uIGEgcGFyZW50IGxldmVsLlxuLy8gQXMgYSBzdWdnZXN0aW9uLCB0aGlzIGd1dHRlciBjb25zdGFudCBzaG91bGQgYmUgaGFsZiB0aGUgc2l6ZSBvZiB0aGUgc3BhY2VyIHZhbHVlLlxuJGd1dHRlciA6IDN2dyAhZGVmYXVsdDtcbiRiYXNlLWd1dHRlciA6ICRndXR0ZXI7IFxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQXNib2x1dGUgVW5pdHMgXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBHYXBzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gR2FwcyBhcmUgYW4gYWJzb2x1dGUgdW5pdCAocHgpIGludGVuZGVkIHRvIGJlIHVzZWQgb24gaW5kaXZpZHVhbCBlbGVtZW50cyB3aXRoaW4gYSBjb21wb25lbnRlZC4gXG4vLyBUaGUgYWltIGlzIHRvIHJldGFpbiBjb25zaXN0YW50IHNwYWNpbmcgYW1vbmdzdCBibG9jaywgaW5saW5lLCB0YWJsZSBhbmQgZ3JvdXAgaHRtbCBlbGVtZW50cy5cblxuQGZ1bmN0aW9uIGdhcCgkYW1vdW50IDogMSkge1xuICBAaWYgKCAkYW1vdW50ID09IDEgKSB7IFxuICAgIEByZXR1cm4gdmFyKC0tZ2FwKTsgXG4gIH0gQGVsc2UgeyBcbiAgICBAcmV0dXJuIGNhbGModmFyKC0tZ2FwKSAqICN7JGFtb3VudH0pOyBcbiAgfVxufVxuXG4kZ2FwMCA6IGdhcCgwLjUpOyAkZ2FwMC0gOiBnYXAoLTAuNSk7XG4kZ2FwICA6IGdhcCgxKTsgICAkZ2FwLSAgOiBnYXAoLTEpO1xuJGdhcDIgOiBnYXAoMik7ICAgJGdhcDItIDogZ2FwKC0yKTtcbiRnYXAzIDogZ2FwKDMpOyAgICRnYXAzLSA6IGdhcCgtMyk7XG4kZ2FwNCA6IGdhcCg0KTsgICAkZ2FwNC0gOiBnYXAoLTQpO1xuJGdhcDUgOiBnYXAoNSk7ICAgJGdhcDUtIDogZ2FwKC01KTtcbiRnYXA2IDogZ2FwKDYpOyAgICRnYXA2LSA6IGdhcCgtNik7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBSZWxhdGl2ZSBVbml0cyBcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBmdW5jdGlvbiBfZHluYW1pYy11bml0KCRjdXN0b20tcHJvcGVydHksICRhbW91bnQsICRtaW4sICRtYXgsICR1c2UtbmVnYXRpdmUgOiBmYWxzZSwgJHVzZS1jbGFtcCA6IHRydWUpIHtcblxuICAvLyBDYWxjIE1ldGhvZFxuICAkcmVzdWx0IDogY2FsYygoI3skY3VzdG9tLXByb3BlcnR5fSAqICN7JGFtb3VudH0pICsgI3tpZigkbWluID09IDAsIDBweCwgJG1pbil9KTtcbiAgXG4gIC8vIENsYW1wIE1ldGhvZFxuICBAaWYgKCAkdXNlLWNsYW1wICkge1xuICAgIEBpZiAoICRhbW91bnQgPT0gMCApIHtcbiAgICAgICRyZXN1bHQgOiBjbGFtcCgje21hdGguZGl2KCRtaW4sIDIpfSwgI3skY3VzdG9tLXByb3BlcnR5fSAqIDAuNSwgI3skbWF4fSk7XG4gICAgfSBAZWxzZSBpZiAoICRhbW91bnQgPT0gMSApIHtcbiAgICAgICRyZXN1bHQgOiBjbGFtcCgjeyRtaW59LCAjeyRjdXN0b20tcHJvcGVydHl9LCAjeyRtYXh9KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXN1bHQgOiBjbGFtcCgjeyRtaW59LCAjeyRjdXN0b20tcHJvcGVydHl9ICogI3skYW1vdW50fSwgI3skbWF4fSk7XG4gICAgfVxuICB9IFxuXG4gIEBpZiAoICR1c2UtbmVnYXRpdmUgKSB7XG4gICAgJHJlc3VsdCA6IGNhbGMoLTEgKiAjeyRyZXN1bHR9KTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlc3VsdDtcblxufSBcblxuLy8gU3BhY2VycyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNwYWNlcnMgYXJlIGEgcmVsYXRpdmUgdmlld3BvcnQgaGVpZ2h0ICh2aCkgdW5pdCBpbnRlbmRlZCB0byBiZSB1c2VkIG9uIGEgY29tcG9uZW50ZWQgbGV2ZWwuXG4vLyBUaGUgYWltIGlzIHRvIHJldGFpbiBjb25zaXN0YW50IHRvcCBhbmQgYm90dG9tIHNwYWNpbmcgYW1vbmdzdCAnc2VjdGlvbicgYW5kICdjdXN0b20nIGVsZW1lbnRzLlxuLy8gU3BhY2VycyB3aWxsIGVxdWF0ZSB0byBzb21ldGhpbmcgbGlrZTogYCgkc3BhY2VyICogeCkgKyAkZ2FwYC4gXG4vLyBUaGUgJyRnYXAnIGlzIGFkZGVkIHNvIHRoYXQgdmggc3BhY2luZyB3aWxsIG5ldmVyIHNjYWxlIHRvbyBjbG9zZSB0byAwcHguIFxuXG5AZnVuY3Rpb24gc3BhY2VyKCRhbW91bnQgOiAxLCAkbWluIDogJGJhc2UtZ2FwLCAkbWF4IDogbnVsbCwgJHVzZS1uZWdhdGl2ZSA6IGZhbHNlLCAkdXNlLWNsYW1wIDogdHJ1ZSkge1xuICBAaWYgKCAkYW1vdW50ID09IDApIHsgJGFtb3VudCA6IDAuNTsgJG1pbiA6IG1hdGguZGl2KCRtaW4sIDIpOyB9XG4gIEBpZiAoIG1ldGEudHlwZS1vZigkbWF4KSA9PSAnbnVsbCcgKSB7IFxuICAgIEBpZiAoIG1ldGEudHlwZS1vZigkbWluKSA9PSAnc3RyaW5nJyBhbmQgc3RyaW5nLmluZGV4KCRtaW4sICd2YXInKSApIHtcbiAgICAgICRtYXggOiBjYWxjKCN7JG1pbn0gKiAjeyRhbW91bnQgKyAxfSk7IFxuICAgIH0gQGVsc2Uge1xuICAgICAgJG1heCA6ICN7JG1pbiAqICgkYW1vdW50ICsgMSl9OyBcbiAgICB9XG4gIH1cbiAgQHJldHVybiBfZHluYW1pYy11bml0KHZhcigtLXNwYWNlciksICRhbW91bnQsICRtaW4sICRtYXgsICR1c2UtbmVnYXRpdmUsICR1c2UtY2xhbXApO1xufVxuXG4kc3BhY2VyMCA6IHZhcigtLXNwYWNlcjApOyAkc3BhY2VyMC0gOiB2YXIoLS1zcGFjZXIwLSk7XG4kc3BhY2VyICA6IHZhcigtLXNwYWNlcjEpOyAkc3BhY2VyLSAgOiB2YXIoLS1zcGFjZXIxLSk7XG4kc3BhY2VyMiA6IHZhcigtLXNwYWNlcjIpOyAkc3BhY2VyMi0gOiB2YXIoLS1zcGFjZXIyLSk7XG4kc3BhY2VyMyA6IHZhcigtLXNwYWNlcjMpOyAkc3BhY2VyMy0gOiB2YXIoLS1zcGFjZXIzLSk7XG4kc3BhY2VyNCA6IHZhcigtLXNwYWNlcjQpOyAkc3BhY2VyNC0gOiB2YXIoLS1zcGFjZXI0LSk7XG4kc3BhY2VyNSA6IHZhcigtLXNwYWNlcjUpOyAkc3BhY2VyNS0gOiB2YXIoLS1zcGFjZXI1LSk7XG4kc3BhY2VyNiA6IHZhcigtLXNwYWNlcjYpOyAkc3BhY2VyNi0gOiB2YXIoLS1zcGFjZXI2LSk7XG5cbi8vIEd1dHRlcnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBHdXR0ZXJzIGFyZSBhIHJlbGF0aXZlIHZpZXdwb3J0IHdpZHRoICh2dykgdW5pdCBpbnRlbmRlZCB0byBiZSB1c2VkIG9uIGEgcGFyZW50IGxldmVsO1xuLy8gZm9yIGV4YW1wbGUsIGEgd3JhcHBlciBjb250YWluZXIgb3IgYm9keSB3aXRoIG5lc3RlZCBjb21wb25lbnRzLiBcbi8vIFRoZSBhaW0gaXMgdG8gcmV0YWluIGNvbnNpc3RhbnQgbGVmdCBhbmQgcmlnaHQgc3BhY2luZyBhbW9uZ3N0ICdzZWN0aW9uJyBhbmQgJ2N1c3RvbScgZWxlbWVudHMuXG4vLyBHdXR0ZXJzIHdpbGwgZXF1YXRlIHRvIHNvbWV0aGluZyBsaWtlOiBgKCRndXR0ZXIgKiB4KSArICRnYXBgLiBcbi8vIFRoZSAnJGdhcCcgaXMgYWRkZWQgc28gdGhhdCB2dyBzcGFjaW5nIHdpbGwgbmV2ZXIgc2NhbGUgdG9vIGNsb3NlIHRvIDBweC4gXG5cbkBmdW5jdGlvbiBndXR0ZXIoJGFtb3VudCA6IDEsICRtaW4gOiAkYmFzZS1nYXAsICRtYXggOiBudWxsLCAkdXNlLW5lZ2F0aXZlIDogZmFsc2UsICR1c2UtY2xhbXAgOiB0cnVlKSB7XG4gIEBpZiAoICRhbW91bnQgPT0gMCkgeyAkYW1vdW50IDogMC41OyAkbWluIDogbWF0aC5kaXYoJG1pbiwgMik7IH1cbiAgQGlmICggbWV0YS50eXBlLW9mKCRtYXgpID09ICdudWxsJyApIHsgXG4gICAgQGlmICggbWV0YS50eXBlLW9mKCRtaW4pID09ICdzdHJpbmcnIGFuZCBzdHJpbmcuaW5kZXgoJG1pbiwgJ3ZhcicpICkge1xuICAgICAgJG1heCA6IGNhbGMoI3skbWlufSAqICN7JGFtb3VudCArIDF9KTsgXG4gICAgfSBAZWxzZSB7XG4gICAgICAkbWF4IDogI3skbWluICogKCRhbW91bnQgKyAxKX07IFxuICAgIH1cbiAgfVxuICBAcmV0dXJuIF9keW5hbWljLXVuaXQodmFyKC0tZ3V0dGVyKSwgJGFtb3VudCwgJG1pbiwgJG1heCwgJHVzZS1uZWdhdGl2ZSwgJHVzZS1jbGFtcCk7XG59XG5cbiRndXR0ZXIwIDogdmFyKC0tZ3V0dGVyMCk7ICRndXR0ZXIwLSA6IHZhcigtLWd1dHRlcjAtKTtcbiRndXR0ZXIgIDogdmFyKC0tZ3V0dGVyMSk7ICRndXR0ZXItICA6IHZhcigtLWd1dHRlcjEtKTtcbiRndXR0ZXIyIDogdmFyKC0tZ3V0dGVyMik7ICRndXR0ZXIyLSA6IHZhcigtLWd1dHRlcjItKTtcbiRndXR0ZXIzIDogdmFyKC0tZ3V0dGVyMyk7ICRndXR0ZXIzLSA6IHZhcigtLWd1dHRlcjMtKTtcbiRndXR0ZXI0IDogdmFyKC0tZ3V0dGVyNCk7ICRndXR0ZXI0LSA6IHZhcigtLWd1dHRlcjQtKTtcbiRndXR0ZXI1IDogdmFyKC0tZ3V0dGVyNSk7ICRndXR0ZXI1LSA6IHZhcigtLWd1dHRlcjUtKTtcbiRndXR0ZXI2IDogdmFyKC0tZ3V0dGVyNik7ICRndXR0ZXI2LSA6IHZhcigtLWd1dHRlcjYtKTtcbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBDb2xvdXJzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8gRXhwbGljaXQgQ29sb3VycyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8vIEV4cGxpY2l0IGNvbG91cnMgYXJlIGEgd2hhdCB0aGV5IGFyZS4gR3JlZW4gaXMgZ3JlZW4sIGJsdWUgaXMgYmx1ZS4uLiBubyBvYnNjdXJpdHkuXG4vLy8gV2Ugc3VmZml4IG51bWJlcnMgdG8gZGVmaW5lIHZhcmlhdGlvbnMgb2YgY29sb3VycyBpbiBubyBwYXJ0aWN1bGFyIG9yZGVyIG9mIHNoYWRlLlxuLy8vIEV4YW1wbGU6IGdyZWVuMSwgZ3JlZW4yLCBncmVlbjMsIGdyZWVuNC4gVGhpcyBpcyBzbyB3ZSBjYW4gaW1taWRpYXRlbHkgc2VlIGhvd1xuLy8vIG1hbnkgb3B0aW9ucyB3ZSBoYXZlIGZvciBhIHNpbmdsZSBjb2xvdXIgYXQgYSBnbGFuY2UuIElmIHlvdSBzZWUgJGdyZWVuNCwgeW91IGtub3cgdGhpc1xuLy8vIHByb2plY3QgaXMgdXNpbmcgZm91ciB2YXJpYXRpb25zIG9mIGdyZWVuLiBUaGlzIGlzIGFsc28gb2Z0ZW4gdXNlZnVsIGJlY2F1c2UgbWFueSBkZXZlbG9wbWVudFxuLy8vIHRvb2xzIHdpbGwgYXV0by1zdWdnZXN0IGNvbG91cnMgd2l0aCBhY3R1YWwgZXhhbXBsZXMgb2YgdGhlIGNvbG91ci5cbi8vLyBUaGUgUGFsbGV0ZXMgbW9kdWxlIChhdCB0aGUgYm90dG9tIG9mIHRoaXMgZmlsZSkgd2lsbCBvdXRwdXQgc2hhZGVkIG5hbWVkIHZhcmlhdGlvbnMsXG4vLy8vIDxjb2xvdXI+LWRhcmsgYW5kIDxjb2xvdXI+LWxpZ2h0LiBJZiB5b3UgbmVlZCBhZGRpdGlvbmFsIHNoYWRlcyBwbGVhc2UgcmVmcmFpbSBmcm9tIGdvaW5nIGRvd25cbi8vLyB0aGUgJ2xpZ2h0ZXInLCAnbGlnaHRlc3QnLCAnZGFya2VyJywgJ2Rhcmtlc3QnIGNvbnZlbnRpb24uIFRoZXNlIGFyZSBub3QgcGFydGljdWFybHkgbGVnaWFibGVcbi8vLyBhbmQgdGhleSBhcmUgbGltaXRlZCBieSBob3cgY3JlYXRpdmUgKGNvbmZ1c2luZykgeW91ciB3b3JkaW5nIGNhbiBiZS5cbi8vLyBJdCBpcyBiZXR0ZXIgdG8gZGVmaW5lIGEgbmV3IGV4cGxjaXQgY29sb3VyIGVudGlyZWx5LlxuLy8vIEBzZWUgaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS93aGF0LWRvLXlvdS1uYW1lLWNvbG9yLXZhcmlhYmxlcy9cblxuJGJsdWU6ICMxMzFmNmI7IC8vIFByaW1hcnlcbiRibHVlMjogIzI5MmI2ODsgLy8gTmFrZWQgTGlua1xuJGJsdWUzOiAjM2QzZjdmOyAvLyBMaWdudCBHcmFkaWVudFxuJGJsdWU0OiAjMTAxMjRkOyAvLyBEYXJrIEdyYWRpZW50XG4kYmx1ZTU6ICMwMDk1ZmY7IC8vIE5hdmlnYXRpb24gbGluayBob3ZlclxuLy8gJHJlZCAgICA6ICNFMDNBNDA7IC8vIFNlY29uZGFyeVxuJHJlZDogI2RmMzAzNTsgLy8gU2Vjb25kYXJ5IC0gVGhpcyBwYXNzZXMgdGhlIGNvbnRyYXN0IHJhdGlvIGFjY2Vzc2liaWxpdHkgdGVzdCBpbiBHb29nbGVzIExpZ2h0aG91c2VcbiRncmV5OiAjOTY5Njk1O1xuJGdyZXkyOiAjNmE2YTZhOyAvLyBGb250XG4kZ3JleTM6ICNmNGY0ZjQ7IC8vIExpZ2h0ZXIgR3JleSBCYWNrZ3JvdW5kXG4kZ3JleTQ6ICNkY2RjZGM7XG4kZ3JleTU6ICNiMWIxYjE7IC8vIFNwYWNlcnMgPGhyPlxuJGdyZXk2OiAjMzMzMjM2OyAvLyBOYXZpZ2F0aW9uIGxpbmsgaG92ZXJcbiRncmVlbjogIzUwYmMwODtcbiRncmVlbjI6ICM3NmJiMjg7IC8vIEVTRyBncmVlblxuJHllbGxvdzogI2Y2ZjRkYjsgLy8gRGlzY2xhaW1lciBCYWNrZ3JvdW5kXG4keWVsbG93MjogI2ZjYjAwMjtcbiRvcmFuZ2U6ICNmZjZhMDA7XG4kb3JhbmdlMjogI2RhOGIwZjtcbiRibGFjazogIzFlMWMxYztcblxuJG1hcms6ICRibHVlNTsgLy8gYmFja2dyb3VuZCBjb2xvdXIgZm9yIDxtYXJrPiB0YWdzXG5cbiRwcmltYXJ5OiB2YXIoLS1wcmltYXJ5LCAjeyRibHVlfSk7XG4kc2Vjb25kYXJ5OiB2YXIoLS1zZWNvbmRhcnksICN7JHJlZH0pO1xuXG4vLy8gUGFsZXR0ZSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8vIEJ5IGxvYWRpbmcgY29uZmlndXJhdGlvbnMgaW50byB0aGlzICdwYWxsZXRlJyBtb2R1bGUsIHdlIHdpbGwgYmUgYWJsZVxuLy8vIHRvIGRlY2xhcmUgdmFyaWFudHMgb2YgYSBmZXcgY29tbW9uIGNvbG91cnMuIFlvdSBjYW4gYWxzbyBhZGp1c3QgdGhlIGxpZ2h0bmVzc1xuLy8vIG9yIGRhcmtuZXNzIG9mIGVhY2ggdmFyaWFudCBieSBwYXNzaW5nIGluIHRoZSByZWxldmFudCBwcml2YXRlIHJ1bGVzLlxuLy8vIFBhbGV0dGUgd2lsbCBhbHNvIGV4cG9zZSBwb3B1bGFyIHNvY2lhbCBtZWRpYSBjb2xvdXJzIGFuZCB0aGUgWWVsbG8gYnJhbmQgY29sb3VyLlxuLy8vIEBzZWUgaHR0cHM6Ly9zYXNzLWxhbmcuY29tL2RvY3VtZW50YXRpb24vYXQtcnVsZXMvZm9yd2FyZCNjb25maWd1cmluZy1tb2R1bGVzXG4vLy8gQG91dHB1dCAkZ3JlZW4gOiAjMDI5MjlBOyAkZ3JlZW4tZGFyayA6ICMyNTY1Njk7ICRncmVlbi1saWdodDogIzA0YjljNDtcblxuQGZvcndhcmQgJ2NyZWF0ZS9wYWxldHRlJyB3aXRoIChcbiAgJGJsdWU6ICRibHVlLFxuICAkcmVkOiAkcmVkLFxuICAkZ3JleTogJGdyZXksXG4gICR5ZWxsb3c6ICR5ZWxsb3csXG4gICRvcmFuZ2U6ICRvcmFuZ2UsXG4gICRncmVlbjogJGdyZWVuLFxuICAkYmxhY2s6ICRibGFja1xuKTtcblxuJG1hcDogKFxuICBibHVlOiAkYmx1ZSxcbiAgcmVkOiAkcmVkLFxuICBncmV5OiAkZ3JleTMsXG4gIHllbGxvdzogJHllbGxvdyxcbiAgb3JhbmdlOiAkb3JhbmdlLFxuICBncmVlbjogJGdyZWVuLFxuICBibGFjazogJGJsYWNrLFxuKTtcbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8gRm9udFxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuQHVzZSAnY29sb3VycycgYXMgKjtcblxuJGNvbG91ciAgICAgIDogJGdyZXkyO1xuJHNpemUgICAgICAgIDogMS41cmVtICFkZWZhdWx0O1xuJHNpemUtbWluICAgIDogMS40cmVtICFkZWZhdWx0OyBcbiRzaXplLW1heCAgICA6IDEuNnJlbSAhZGVmYXVsdDsgXG4kbGluZS1oZWlnaHQgOiAxLjYgIWRlZmF1bHQ7IFxuXG4kc2l6ZS1oMSAgICAgOiA2LjFlbSAhZGVmYXVsdDtcbiRzaXplLWgxLW1pbiA6IDRlbSAhZGVmYXVsdDtcbiRzaXplLWgyICAgICA6IDMuMmVtICFkZWZhdWx0O1xuJHNpemUtaDMgICAgIDogMi41ZW0gIWRlZmF1bHQ7XG4kc2l6ZS1oNCAgICAgOiAxLjdlbSAhZGVmYXVsdDtcbiRzaXplLWg1ICAgICA6IDEuN2VtICFkZWZhdWx0O1xuJHNpemUtaDYgICAgIDogMS43ZW0gIWRlZmF1bHQ7XG4gIFxuLy8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vLyBMYXRvIEZvbnRcbi8vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLy8gVGhpcyBmb250IGl0IHByaW1hcmlseSB1c2VkIGZvciBoZWFkaW5ncyAoPGgqPiB0YWdzKVxuLy8vIEBleGFtcGxlIEBpbmNsdWRlIGZvbnQtbGF0byhib2xkKVxuXG5AbWl4aW4gbGF0bygkd2VpZ2h0OnJlZ3VsYXIpIHtcblxuICBmb250LWZhbWlseTpsYXRvLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG5cbiAgQGlmICggJHdlaWdodCA9PSAncmVndWxhcicpIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9IEBlbHNlIGlmICggJHdlaWdodCA9PSAnc2VtaS1ib2xkJyBvciAkd2VpZ2h0ID09ICdzZW1pYm9sZCcpIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9IEBlbHNlIGlmICggJHdlaWdodCA9PSAnYm9sZCcpIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG5cbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLy8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vLyBNb250c2VycmF0IEZvbnRcbi8vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLy8gVGhpcyBpcyB0aGUgYmFzZSBmb250IHVzZWQgZm9yIGFsbCBzdGFuZGFyZCBjb3B5IHRocm91Z2hvdXQgdGhlIHNpdGUuXG4vLy8gQGV4YW1wbGUgQGluY2x1ZGUgZm9udC1tb250c2VycmF0KClcblxuQG1peGluIG1vbnRzZXJyYXQoJHdlaWdodDpyZWd1bGFyKSB7XG5cbiAgZm9udC1mYW1pbHk6bW9udHNlcnJhdCwgc2Fucy1zZXJpZjtcbiAgXG4gIEBpZiAoICR3ZWlnaHQgPT0gJ3JlZ3VsYXInKSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gIH0gQGVsc2UgaWYgKCAkd2VpZ2h0ID09ICdpdGFsaWMnKSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH0gQGVsc2UgaWYgKCAkd2VpZ2h0ID09ICdib2xkJykge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG5cbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblxufSIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLy8gSG92ZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNob3ZlclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuQG1peGluIGhvdmVyKCRzZWxlY3RvciA6IG51bGwpIHtcbiAgQG1lZGlhICggaG92ZXIgOiBob3ZlciApIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkc2VsZWN0b3Ige1xuICAgICYjeyRzZWxlY3Rvcn0geyBcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG59IiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIENvbG91ciBQYWxldHRlXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5AdXNlIFwiLi9tb2R1bGVzL2NvbG91clwiO1xuXG4vLyBBZGp1c3QgdGhlc2UgdG8gYW1lbmQgdGhlIGxpZ2h0bmVzcyBvciBkYXJrbmVzcyBhbW91bnRzIGZvciB0aGUgY29sb3VycyBsc2l0ZWQgYmVsb3cuLiBcblxuJF9saWdodG5lc3MgOiAxNSUgIWRlZmF1bHQ7XG4kX2RhcmtuZXNzICA6IDIwJSAhZGVmYXVsdDtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvbW1vbiBDb2xvdXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kcmVkICAgICAgICAgIDogIzk3MDgwRSAhZGVmYXVsdDtcbiRyZWQtbGlnaHQgICAgOiBjb2xvdXIubGlnaHRlbigkcmVkLCAkX2xpZ2h0bmVzcykgIWRlZmF1bHQ7XG4kcmVkLWRhcmsgICAgIDogY29sb3VyLmRhcmtlbigkcmVkLCAkX2RhcmtuZXNzKSAhZGVmYXVsdDtcblxuJG9yYW5nZSAgICAgICA6ICNEQTRCMEYgIWRlZmF1bHQ7XG4kb3JhbmdlLWxpZ2h0IDogY29sb3VyLmxpZ2h0ZW4oJG9yYW5nZSwgJF9saWdodG5lc3MpICFkZWZhdWx0O1xuJG9yYW5nZS1kYXJrICA6IGNvbG91ci5kYXJrZW4oJG9yYW5nZSwgJF9kYXJrbmVzcykgIWRlZmF1bHQ7XG5cbiR5ZWxsb3cgICAgICAgOiAjRTlCMTA0ICFkZWZhdWx0O1xuJHllbGxvdy1saWdodCA6IGNvbG91ci5saWdodGVuKCR5ZWxsb3csICRfbGlnaHRuZXNzKSAhZGVmYXVsdDtcbiR5ZWxsb3ctZGFyayAgOiBjb2xvdXIuZGFya2VuKCR5ZWxsb3csICRfZGFya25lc3MpICFkZWZhdWx0O1xuXG4kZ3JlZW4gICAgICAgIDogIzQ4OEMxMyAhZGVmYXVsdDtcbiRncmVlbi1saWdodCAgOiBjb2xvdXIubGlnaHRlbigkZ3JlZW4sICRfbGlnaHRuZXNzKSAhZGVmYXVsdDtcbiRncmVlbi1kYXJrICAgOiBjb2xvdXIuZGFya2VuKCRncmVlbiwgJF9kYXJrbmVzcykgIWRlZmF1bHQ7XG5cbiRibHVlICAgICAgICAgOiAjMUI1NUMwICFkZWZhdWx0O1xuJGJsdWUtbGlnaHQgICA6IGNvbG91ci5saWdodGVuKCRibHVlLCAkX2xpZ2h0bmVzcykgIWRlZmF1bHQ7XG4kYmx1ZS1kYXJrICAgIDogY29sb3VyLmRhcmtlbigkYmx1ZSwgJF9kYXJrbmVzcykgIWRlZmF1bHQ7XG5cbiRwaW5rICAgICAgICAgOiAjRTA1RDZCICFkZWZhdWx0O1xuJHBpbmstbGlnaHQgICA6IGNvbG91ci5saWdodGVuKCRwaW5rLCAkX2xpZ2h0bmVzcykgIWRlZmF1bHQ7XG4kcGluay1kYXJrICAgIDogY29sb3VyLmRhcmtlbigkcGluaywgJF9kYXJrbmVzcykgIWRlZmF1bHQ7XG5cbiRwdXJwbGUgICAgICAgOiAjNjEzRDVBICFkZWZhdWx0O1xuJHB1cnBsZS1saWdodCA6IGNvbG91ci5saWdodGVuKCRwdXJwbGUsICRfbGlnaHRuZXNzKSAhZGVmYXVsdDtcbiRwdXJwbGUtZGFyayAgOiBjb2xvdXIuZGFya2VuKCRwdXJwbGUsICRfZGFya25lc3MpICFkZWZhdWx0O1xuXG4kZ3JleSAgICAgICAgIDogIzc4Nzg3OCAhZGVmYXVsdDtcbiRncmV5LWxpZ2h0ICAgOiBjb2xvdXIubGlnaHRlbigkZ3JleSwgJF9saWdodG5lc3MpICFkZWZhdWx0O1xuJGdyZXktZGFyayAgICA6IGNvbG91ci5kYXJrZW4oJGdyZXksICRfZGFya25lc3MpICFkZWZhdWx0O1xuXG4kYnJvd24gICAgICAgIDogIzc3NEYzOCAhZGVmYXVsdDtcbiRicm93bi1saWdodCAgOiBjb2xvdXIubGlnaHRlbigkYnJvd24sICRfbGlnaHRuZXNzKSAhZGVmYXVsdDtcbiRicm93bi1kYXJrICAgOiBjb2xvdXIuZGFya2VuKCRicm93biwgJF9kYXJrbmVzcykgIWRlZmF1bHQ7XG5cbiR3aGl0ZSAgICAgICAgOiAjRkZGRkZGICFkZWZhdWx0IDtcbiR3aGl0ZS1kYXJrICAgOiBjb2xvdXIubGlnaHRlbigkd2hpdGUsICRfbGlnaHRuZXNzKSAhZGVmYXVsdDtcblxuJGJsYWNrICAgICAgICA6ICMwMDAwMDAgIWRlZmF1bHQgO1xuJGJsYWNrLWxpZ2h0ICA6IGNvbG91ci5kYXJrZW4oJGJsYWNrLCAkX2RhcmtuZXNzKSAhZGVmYXVsdDtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFNvY2lhbCBNZWRpYSBDb2xvdXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLy8gQHNlZSBodHRwczovL3d3dy5sb2NrZWRvd25zZW8uY29tL3NvY2lhbC1tZWRpYS1jb2xvcnMvXG5cbiRmYWNlYm9vazogICAgIzE4NzdmMiAhZGVmYXVsdDtcbiR0d2l0dGVyOiAgICAgIzFkYTFmMiAhZGVmYXVsdDtcbiRnb29nbGU6ICAgICAgIzQyODVmNCAhZGVmYXVsdDtcbiR5b3V0dWJlOiAgICAgI2ZmMDAwMCAhZGVmYXVsdDtcbiRsaW5rZWRpbjogICAgIzAwN2JiNSAhZGVmYXVsdDtcbiRpbnN0YWdyYW06ICAgI2MzMmFhMyAhZGVmYXVsdDtcbiRwaW50ZXJlc3Q6ICAgI2JkMDgxYyAhZGVmYXVsdDtcbiRkYWlseW1vdGlvbjogIzAwNjZEQyAhZGVmYXVsdDtcbiRzbmFwY2hhdDogICAgI2ZmZmMwMCAhZGVmYXVsdDtcbiRmbGlja3I6ICAgICAgI2Y0MDA4MyAhZGVmYXVsdDtcbiR2aW1lbzogICAgICAgIzFhYjdlYSAhZGVmYXVsdDtcbiR0aHVtYmxlcjogICAgIzM1NDY1ZCAhZGVmYXVsdDtcbiRyZWRkaXQ6ICAgICAgI2ZmNDUwMCAhZGVmYXVsdDtcbiR3aGF0c2FwcDogICAgIzI1ZDM2NiAhZGVmYXVsdDtcbiRza3lwZTogICAgICAgIzAwYWZmMCAhZGVmYXVsdDtcbiRkaXNjb3JkOiAgICAgIzcyODlkYSAhZGVmYXVsdDtcblxuJHNvY2lhbC1tZWRpYSA6IChcbiAgZmFjZWJvb2s6ICAgICAkZmFjZWJvb2ssXG4gIHR3aXR0ZXI6ICAgICAgJHR3aXR0ZXIsXG4gIGdvb2dsZTogICAgICAgJGdvb2dsZSxcbiAgeW91dHViZTogICAgICAkeW91dHViZSxcbiAgbGlua2VkaW46ICAgICAkbGlua2VkaW4sXG4gIGluc3RhZ3JhbTogICAgJGluc3RhZ3JhbSxcbiAgcGludGVyZXN0OiAgICAkcGludGVyZXN0LFxuICBkYWlseW1vdGlvbjogICRkYWlseW1vdGlvbixcbiAgc25hcGNoYXQ6ICAgICAkc25hcGNoYXQsXG4gIGZsaWNrcjogICAgICAgJGZsaWNrcixcbiAgdmltZW86ICAgICAgICAkdmltZW8sXG4gIHRodW1ibGVyOiAgICAgJHRodW1ibGVyLFxuICByZWRkaXQ6ICAgICAgICRyZWRkaXQsXG4gIHdoYXRzYXBwOiAgICAgJHdoYXRzYXBwLFxuICBza3lwZTogICAgICAgICRza3lwZSxcbiAgZGlzY29yZDogICAgICAkZGlzY29yZFxuKTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE90aGVyIENvbG91cnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiR5ZWxsbzogI0ZGQ0IwOCAhZGVmYXVsdDtcblxuLy8vIEhhbmRsZXMgdGhlIGN1cnNvciBzZWxlY3Rpb24gY29sb3VyXG4vLy8gQHNlZSBodHRwczovL2Nzcy10cmlja3MuY29tL2FsbWFuYWMvc2VsZWN0b3JzL3Mvc2VsZWN0aW9uL1xuXG4kaGlnaGxpZ2h0OiAjQjJEM0ZBICFkZWZhdWx0OyBcbiJdfQ== */