/****************
 * Fonts
 ****************/
/****************
 * Paints
 ****************/
/****************
 * Effects
 ****************/
/****************
 * Grid Settings
 ****************/
.block-content-image {
  overflow: hidden;
}
@media (max-width: 47.98rem) {
  .block-content-image h3 {
    font-size: 1.5rem;
    line-height: 1;
  }
}
.block-content-image.has-container {
  background: transparent;
}
.block-content-image.has-container::before {
  display: none;
}
.block-content-image.has-container .row {
  margin: 0;
}
.block-content-image.has-container .b-content-images__content-wrapper {
  max-width: 22.0625rem;
}
@media (max-width: 61.98rem) {
  .block-content-image.has-container .b-content-images__content-wrapper {
    max-width: 31.25rem;
  }
}
.block-content-image.has-container .image-left,
.block-content-image.has-container .image-right {
  max-width: 39.375rem;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
}
@media (max-width: 61.98rem) {
  .block-content-image.has-container .image-left,
.block-content-image.has-container .image-right {
    max-width: 39.375rem;
    margin-left: auto;
    margin-right: auto;
  }
}
.block-content-image.has-container .content-right,
.block-content-image.has-container .content-left {
  padding-bottom: 0;
}
@media (max-width: 61.98rem) {
  .block-content-image.has-container .align-items-start {
    align-items: center !important;
  }
}
.block-content-image.has-container .b-content-images__content-wrapper {
  width: 100%;
  margin-right: 0;
  max-width: 100%;
}
.block-content-image.has-container .c-btn {
  padding: 0.75rem 2rem;
  text-transform: uppercase;
}
.block-content-image .container.container-fluid {
  max-width: 97.25rem;
  position: relative;
}
@media (min-width: 88.125rem) {
  .block-content-image .container.container-fluid {
    max-width: 84.25rem;
  }
}
@media (min-width: 98.75rem) {
  .block-content-image .container.container-fluid {
    max-width: 97.25rem;
  }
}
.block-content-image .container.container-fluid .b-content-images__mock-container {
  position: relative;
  padding-top: clamp(3rem, -0.5887850467rem + 7.476635514vw, 6rem);
  max-width: 93.5rem;
}
@media (max-width: 61.98rem) {
  .block-content-image .container.container-fluid .b-content-images__mock-container {
    max-width: 95%;
  }
}
.block-content-image .container.container-fluid .b-content-images__mock-container::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border: 0.25rem solid #dae5f1;
  height: 77%;
}
@media (max-width: 61.98rem) {
  .block-content-image .container.container-fluid .b-content-images__mock-container::before {
    height: 100%;
  }
}
.block-content-image.left-alignment .container.container-fluid {
  margin-left: 0;
  padding-left: 0;
}
@media (min-width: 88.125rem) {
  .block-content-image.left-alignment .container.container-fluid {
    padding-right: 2rem;
  }
}
.block-content-image.left-alignment .container.container-fluid .b-content-images__mock-container {
  margin-right: auto;
}
.block-content-image.left-alignment .container.container-fluid .b-content-images__mock-container::before {
  border-left: 0;
}
.block-content-image.right-alignment .container.container-fluid {
  margin-right: 0;
  padding-right: 0;
}
@media (min-width: 88.125rem) {
  .block-content-image.right-alignment .container.container-fluid {
    padding-left: 2rem;
  }
}
.block-content-image.right-alignment .container.container-fluid .b-content-images__mock-container {
  margin-left: auto;
}
@media (max-width: 61.98rem) {
  .block-content-image.right-alignment .container.container-fluid .b-content-images__mock-container {
    margin-left: auto;
  }
}
.block-content-image.right-alignment .container.container-fluid .b-content-images__mock-container::before {
  border-right: 0;
  border-bottom: 0.25rem solid #dae5f1;
}
.block-content-image .animated-svg {
  margin-bottom: 1.5rem;
}
.block-content-image .c-btn {
  font-size: 0.875rem;
  line-height: 1rem;
  padding: 1.25rem 4.625rem;
}
@media (max-width: 61.98rem) {
  .block-content-image .c-btn {
    padding: 1.25rem 3.125rem;
  }
}
@media (max-width: 61.98rem) {
  .block-content-image .sideways-callout {
    display: flex;
    top: 3rem;
  }
}

.b-content-images__content-wrapper {
  max-width: 33rem;
  margin: 0 auto;
  position: relative;
}
@media (max-width: 61.98rem) {
  .b-content-images__content-wrapper {
    max-width: 31.25rem;
    margin: 0 auto 0 0;
    left: auto;
  }
}
.b-content-images__content-wrapper h1:first-of-type,
.b-content-images__content-wrapper h2:first-of-type,
.b-content-images__content-wrapper h3:first-of-type,
.b-content-images__content-wrapper h4:first-of-type,
.b-content-images__content-wrapper h5:first-of-type,
.b-content-images__content-wrapper h6:first-of-type {
  margin-top: 0;
}
.b-content-images__content-wrapper p {
  margin: 0 0 1rem;
}
.b-content-images__image img {
  width: 100%;
}
@media (min-width: 62rem) {
  .b-content-images__col {
    max-width: 51.5rem;
    padding: 0;
  }
}
.b-content-images__col.image-left {
  padding-left: 0;
  flex: 0 0 54%;
}
@media (max-width: 88.105rem) {
  .b-content-images__col.image-left {
    flex: 0 0 50%;
  }
}
@media (max-width: 61.98rem) {
  .b-content-images__col.image-left {
    padding: 0;
  }
}
.b-content-images__col.image-right {
  padding-right: 0;
  flex: 0 0 54%;
}
@media (max-width: 88.105rem) {
  .b-content-images__col.image-right {
    flex: 0 0 50%;
  }
}
@media (max-width: 61.98rem) {
  .b-content-images__col.image-right {
    padding: 0;
    margin-left: auto;
  }
}
.has-container .b-content-images__col.image-right {
  padding-left: 4.8125rem;
}
@media (max-width: 61.98rem) {
  .has-container .b-content-images__col.image-right {
    padding: 0;
  }
}
.b-content-images__col.content-right {
  padding-left: 4rem;
  padding-right: 1.25rem;
  flex: 0 0 50%;
  max-width: 38rem;
}
@media (max-width: 61.98rem) {
  .b-content-images__col.content-right {
    padding-left: 0;
  }
}
.b-content-images__col.content-right .b-content-images__content-wrapper {
  margin: 0 auto 0 0;
}
@media (max-width: 61.98rem) {
  .b-content-images__col.content-right .b-content-images__content-wrapper {
    left: auto;
    margin: 0 auto;
  }
}
.b-content-images__col.content-left {
  padding-right: 4rem;
  padding-left: 1.25rem;
}
@media (min-width: 62rem) {
  .b-content-images__col.content-left {
    padding-left: 2.8125rem;
  }
}
@media (min-width: 98.75rem) {
  .b-content-images__col.content-left {
    padding-left: 1.25rem;
  }
}
@media (max-width: 61.98rem) {
  .b-content-images__col.content-left {
    padding-right: 0;
  }
}
@media (max-width: 61.98rem) {
  .b-content-images__col.content-left .b-content-images__content-wrapper {
    max-width: 95%;
    margin-left: auto;
    margin-right: 0;
  }
}
.b-content-images__col.content-right, .b-content-images__col.content-left {
  padding-bottom: 12.5rem;
  flex: 0 0 50%;
  max-width: 38rem;
}
@media (max-width: 61.98rem) {
  .b-content-images__col.content-right, .b-content-images__col.content-left {
    flex: 0 0 100%;
    max-width: 100%;
    padding-bottom: 0;
    margin-bottom: 1.5rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}
.b-content-images__col.image-left, .b-content-images__col.image-right {
  flex: 0 0 54%;
}
@media (max-width: 88.105rem) {
  .b-content-images__col.image-left, .b-content-images__col.image-right {
    flex: 0 0 50%;
  }
}
@media (max-width: 61.98rem) {
  .b-content-images__col.image-left, .b-content-images__col.image-right {
    flex: 0 0 100%;
    max-width: 93%;
    margin-bottom: 2rem;
  }
}
@media (max-width: 61.98rem) {
  .b-content-images__flex-cols {
    flex-direction: column-reverse;
    margin: 0;
  }
}
.right-alignment .b-content-images__flex-cols {
  justify-content: flex-end;
}
.b-content-images__top-icons {
  display: flex;
  align-items: center;
  margin-bottom: 1.5rem;
}
.b-content-images__top-icons span {
  color: #4679b4;
  margin-right: 0.875rem;
}
.b-content-images__top-icons p {
  margin-bottom: 0;
}
.b-content-images__half-half {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media (min-width: 62rem) {
  .b-content-images__half {
    width: 48%;
  }
}
.b-content-images__half li {
  margin-bottom: 1.25rem;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNzcy9zcmMvX19zdHlsZXMvX3ZhcmlhYmxlcy5zY3NzIiwiYWNmLWJsb2Nrcy9jb250ZW50LWltYWdlL3NyYy9zdHlsZS5zY3NzIiwiY3NzL3NyYy92ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsImNzcy9zcmMvX19zdHlsZXMvX21peGlucy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQXlDQTtBQUFBO0FBQUE7QUFxQkE7QUFBQTtBQUFBO0FDcEVBO0VBQ0M7O0FDc0VHO0VEbkVIO0lBRUU7SUFDQTs7O0FBSUY7RUFDQzs7QUFFQTtFQUNDOztBQUdEO0VBQ0M7O0FBR0Q7RUFDQzs7QUNnREM7RURqREY7SUFJRTs7O0FBUUY7QUFBQTtFQUVDO0VBQ0E7RUFDQTtFQUNBOztBQ2dDQztFRHJDRjtBQUFBO0lBUUU7SUFDQTtJQUNBOzs7QUFJRjtBQUFBO0VBRUM7O0FDcUJDO0VEbEJGO0lBRUU7OztBQUlGO0VBQ0M7RUFDQTtFQUNBOztBQUdEO0VBQ0M7RUFDQTs7QUFJRjtFQUNDO0VBQ0E7O0FDZkU7RURhSDtJQUtFOzs7QUNsQkM7RURhSDtJQVNFOzs7QUFJRDtFQUNDO0VBQ0E7RUFDQTs7QUNoQkM7RURhRjtJQU1FOzs7QUFJRDtFQUNDO0VFSkgsVUZNcUI7RUVMckIsS0ZLK0I7RUVKL0IsT0ZJa0M7RUVIbEMsUUZHcUM7RUVGckMsTUZFd0M7RUFDckM7RUFDQTs7QUM1QkE7RUR1QkQ7SUFRRTs7O0FBUUg7RUFDQztFQUNBOztBQ3REQztFRG9ERjtJQUtFOzs7QUFHRDtFQUNDOztBQUVBO0VBQ0M7O0FBUUg7RUFDQztFQUNBOztBQzFFQztFRHdFRjtJQUtFOzs7QUFJRDtFQUNDOztBQ3JFQTtFRG9FRDtJQUlFOzs7QUFHRDtFQUNDO0VBQ0E7O0FBT0o7RUFDQzs7QUFHRDtFQUNDO0VBQ0E7RUFDQTs7QUMzRkU7RUR3Rkg7SUFNRTs7O0FDOUZDO0VEa0dIO0lBRUU7SUFDQTs7OztBQVFGO0VBQ0M7RUFDQTtFQUNBOztBQ2hIRTtFRDZHSDtJQU1FO0lBQ0E7SUFDQTs7O0FBYUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBQ0M7O0FBSUY7RUFDQzs7QUFLRDtFQUNDOztBQzNKQztFRCtKSDtJQUlFO0lBQ0E7OztBQUdEO0VBRUM7RUFDQTs7QUM3SkM7RUQwSkY7SUFNRTs7O0FDaEtBO0VEMEpGO0lBVUU7OztBQVlGO0VBQ0M7RUFFQTs7QUNuTEM7RURnTEY7SUFNRTs7O0FDdExBO0VEZ0xGO0lBVUU7SUFDQTs7O0FBR0Q7RUFDQzs7QUMvTEE7RUQ4TEQ7SUFJRTs7O0FBS0g7RUFDQztFQUNBO0VBQ0E7RUFDQTs7QUMzTUM7RUR1TUY7SUFPRTs7O0FBR0Q7RUFDQzs7QUNsTkE7RURpTkQ7SUFLRTtJQUNBOzs7QUFLSDtFQUNDO0VBQ0E7O0FDM09DO0VEeU9GO0lBS0U7OztBQzlPQTtFRHlPRjtJQVNFOzs7QUNyT0E7RUQ0TkY7SUFhRTs7O0FDek9BO0VENE9EO0lBRUU7SUFDQTtJQUNBOzs7QUFNSDtFQUVDO0VBQ0E7RUFDQTs7QUMxUEM7RURzUEY7SUFPRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQUlGO0VBRUM7O0FDeFFDO0VEc1FGO0lBS0U7OztBQzNRQTtFRHNRRjtJQVNFO0lBQ0E7SUFDQTs7O0FDalJBO0VEc1JIO0lBRUU7SUFDQTs7O0FBR0Q7RUFDQzs7QUFJRjtFQUNDO0VBQ0E7RUFDQTs7QUFFQTtFQUNDO0VBQ0E7O0FBR0Q7RUFDQzs7QUFJRjtFQUNDO0VBQ0E7RUFDQTs7QUNoVUU7RURtVUg7SUFFRTs7O0FBR0Q7RUFDQyIsImZpbGUiOiJhY2YtYmxvY2tzL2NvbnRlbnQtaW1hZ2UvZGlzdC9zdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAaW1wb3J0IHVybChodHRwczovL3VzZS50eXBla2l0Lm5ldC92ZHg1d2pjLmNzcyk7XG5cbi8qKioqKioqKioqKioqKioqXG4gKiBGb250c1xuICoqKioqKioqKioqKioqKiovXG4kZm9udC1iYXNlOiBcIlByb3hpbWEtTm92YVwiLCBzYW5zLXNlcmlmO1xuJHNlY29uZGFyeS1mb250OiBcIlNwYW5cIiwgc2Fucy1zZXJpZjtcblxuLyoqKioqKioqKioqKioqKipcbiAqIFBhaW50c1xuICoqKioqKioqKioqKioqKiovXG4kcGFpbnRzOiAoXG5cdGFjY2VudDogIzQ2NzliNCxcblx0YWNjZW50LXZhcmlhbnQ6ICMyZjYzOWUsXG5cdGJnLWRhcms6ICMzNzM1MzUsXG5cdGJnLWxpZ2h0OiAjZmZmLFxuXHR0ZXh0LWRhcms6ICMzNzM1MzUsXG5cdHRleHQtbGlnaHQ6ICNmZmYsXG5cdG5ldXRyYWwtMzA6ICM0YzRjNGMsXG5cdG5ldXRyYWwtNDU6ICM3MzczNzMsXG5cdG5ldXRyYWwtNzA6ICNiM2IzYjMsXG5cdG5ldXRyYWwtODg6ICNlMWUxZTEsXG5cdG5ldXRyYWwtOTQ6ICNmMGYwZjAsXG5cdG5ldXRyYWwtOTc6ICNmN2Y3ZjcsXG5cdHllbGxvdzogI2ZmYWIwMCxcblx0Z3JlZW4tMTAwOiAjMzZiMzdlLFxuXHRncmVlbi04MDogIzVlYzI5Nyxcblx0Z3JlZW4tNjA6ICM4NWQwYjAsXG5cdGdyZWVuLTQwOiAjYWRkZmNhLFxuXHRncmF5LTE2OiAjMjkyOTI5LFxuXHRncmF5LTMyOiAjNTI1MjUyLFxuXHRncmF5LTQ0OiAjNzA3MDcwLFxuXHRncmF5LTcyOiAjYWNiNGMzLFxuXHRncmF5LTgwOiAjYzdjYWQxLFxuXHRncmF5LTg4OiAjZGFkZWU3LFxuXHRncmF5LTg5OiAjZGFlNWYxLFxuXHRncmF5LTkyOiAjZTZlOWVlLFxuXHRncmF5LTk0OiAjZWRlZmYzLFxuXHRncmF5LTk2OiAjZWRlZmYzLFxuXHRzbGF0ZS04MDogI2FkYzFjYyxcblx0c2xhdGUtOTc6ICNmNWY5ZmMsXG5cdG5hdnk6ICMwYTAwMjgsXG5cdGVycm9yOiAjYWQwMzIyLFxuXHR3YXJuaW5nOiAjZmFhNjE0LFxuXHRzdWNjZXNzOiAjMDA4NzM4LFxuXHRpbmZvcm1hdGlvbjogIzAwNmJiMyxcblx0YXV0b2ZpbGw6ICNlM2VlZjUsXG4pO1xuXG4vKioqKioqKioqKioqKioqKlxuICogRWZmZWN0c1xuICoqKioqKioqKioqKioqKiovXG4kZWZmZWN0czogKFxuXHRkcm9wc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsIDAsIDAsIDAuMSksXG5cdGN0YTogMCAtNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMDUpLFxuXHRoZWFkZXItYm9yZGVyOiByZ2JhKDE0MCwgMTQwLCAxNDAsIDAuMiksXG5cdG1vYmlsZS1idXR0b246IDAgMCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xKSxcblx0cG9ydGZvbGlvLWNhcmQ6IDAgNHB4IDI0cHggcmdiYSgwLCAwLCAwLCAwLjA0KSxcblx0aGVybzogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLCAwLCAwLCAwKSAxNi42NyUsIHJnYmEoMCwgMCwgMCwgMC40KSAxMDAlKSxcblx0ZmlsdGVyLW1vYmlsZTogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgI2ZmZiAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMTYuMSUpLFxuXHRjb21wYW55LWhlcm86IGxpbmVhci1ncmFkaWVudCgwLjk1ZGVnLCByZ2JhKDAsIDAsIDAsIDAuMykgMC45NyUsIHJnYmEoMCwgMCwgMCwgMCkgOTkuMzUlKSxcblx0cG9ydGZvbGlvLWhlcm86IGxpbmVhci1ncmFkaWVudCgxLjQ2ZGVnLCByZ2JhKDAsIDAsIDAsIDAuNCkgMjAuNDYlLCByZ2JhKDAsIDAsIDAsIDApIDk5LjE4JSksXG5cdHBvcnRmb2xpby1oZXJvLW1vYmlsZTogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC40KSwgcmdiYSgwLCAwLCAwLCAwLjQpKSxcblx0cmVsYXRlZC1uZXdzOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjZGFlNWYxIDAlLCByZ2JhKDIxOCwgMjI5LCAyNDEsIDApIDEwMCUpLFxuXHRyZWxhdGVkLW5ld3MtYmx1ZTogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyMTgsIDIyOSwgMjQxLCAwLjMpIDAlLCByZ2JhKDIxOCwgMjI5LCAyNDEsIDApIDEwMCUpLFxuXHRhcmNoaXZlLW5ld3MtaGVybzogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC4zKSAwJSwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKSxcblxuXG4pO1xuXG4vKioqKioqKioqKioqKioqKlxuICogR3JpZCBTZXR0aW5nc1xuICoqKioqKioqKioqKioqKiovXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG5cdHhzOiAwLFxuXHRzbTogcmVtKDU3NiksXG5cdG1kOiByZW0oNzY4KSxcblx0bGc6IHJlbSg5OTIpLFxuXHR4bDogcmVtKDEyMDApLFxuXHR4eGw6IHJlbSgxNDEwKSxcblx0eHh4bDogcmVtKDE1ODApXG4pO1xuJGN1c3RvbS1icmVha3BvaW50czogKFxuXHRtb2JpbGVtZW51OiByZW0oMTIwMClcbik7XG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcblx0eHM6IHJlbSg1NzYpLFxuXHRzbTogcmVtKDc2OCksXG5cdG1kOiByZW0oOTkyKSxcblx0bGc6IHJlbSgxMjAwKSxcblx0eGw6IHJlbSgxNDEwKVxuKTtcblxuJGNvbnRhaW5lci1zbS1zcGFjaW5nOiByZW0oMjApO1xuJGNvbnRhaW5lci1tZC1zcGFjaW5nOiByZW0oNDApO1xuJGNvbnRhaW5lci1sZy1zcGFjaW5nOiByZW0oNjApO1xuXG4kZ3JpZC1ndXR0ZXItd2lkdGg6IHJlbSgzMCk7XG5cbi8vIFRyYW5zaXRpb25zXG4kdHJhbnNpdGlvbi1zdGFuZGFyZDogYWxsIDAuMnMgbGluZWFyO1xuXG4vLyBCbG9jayB0aXRsZVxuJGJsb2NrLXRpdGxlLW1iLXNtOiByZW0oNDApO1xuJGJsb2NrLXRpdGxlLW1iLW1kOiByZW0oNjQpO1xuXG4kbWVkaWEtbWFyZ2luOiAzMHB4O1xuJG1lZGlhLW1hcmdpbi1tb2JpbGU6IDIwcHg7XG5cbi8vIE91dGxpbmVcbiRvdXRsaW5lOiByZW0oMikgc29saWQgIzdhYWNmZTtcbiIsIkBpbXBvcnQgXCIuLi8uLi8uLi9jc3Mvc3JjL2xpYi9iYXNlLWluY2x1ZGVzXCI7XG5cbi5ibG9jay1jb250ZW50LWltYWdlIHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXG5cdGgzIHtcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcblx0XHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0fVxuXHR9XG5cblx0Ji5oYXMtY29udGFpbmVyIHtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdC5yb3cge1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblxuXHRcdC5iLWNvbnRlbnQtaW1hZ2VzX19jb250ZW50LXdyYXBwZXIge1xuXHRcdFx0bWF4LXdpZHRoOiByZW0oMzUzKTtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG5cdFx0XHRcdG1heC13aWR0aDogcmVtKDUwMCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuXHRcdFx0XHQvLyBwYWRkaW5nOiByZW0oIDQwICkgcmVtKCAxMCApIHJlbSggNDYgKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuaW1hZ2UtbGVmdCxcblx0XHQuaW1hZ2UtcmlnaHQge1xuXHRcdFx0bWF4LXdpZHRoOiByZW0oNjMwKTtcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG5cdFx0XHRcdG1heC13aWR0aDogcmVtKDYzMCk7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmNvbnRlbnQtcmlnaHQsXG5cdFx0LmNvbnRlbnQtbGVmdCB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0XHR9XG5cblx0XHQuYWxpZ24taXRlbXMtc3RhcnQge1xuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuYi1jb250ZW50LWltYWdlc19fY29udGVudC13cmFwcGVyIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdH1cblxuXHRcdC5jLWJ0biB7XG5cdFx0XHRwYWRkaW5nOiByZW0oMTIpIHJlbSgzMik7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdH1cblx0fVxuXG5cdC5jb250YWluZXIuY29udGFpbmVyLWZsdWlkIHtcblx0XHRtYXgtd2lkdGg6IHJlbSgxNTU2KTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHh4bCkge1xuXHRcdFx0bWF4LXdpZHRoOiByZW0oMTM0OCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4eHhsKSB7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbSgxNTU2KTtcblx0XHR9XG5cblxuXHRcdC5iLWNvbnRlbnQtaW1hZ2VzX19tb2NrLWNvbnRhaW5lciB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRwYWRkaW5nLXRvcDogcmVzcG9uc2l2ZS12YWx1ZXMoNDgsIDk2KTtcblx0XHRcdG1heC13aWR0aDogcmVtKDE0OTYpO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcblx0XHRcdFx0bWF4LXdpZHRoOiA5NSU7XG5cdFx0XHR9XG5cblxuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblxuXHRcdFx0XHRAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCwgMCwgMCwgMCk7XG5cdFx0XHRcdGJvcmRlcjogcmVtKDQpIHNvbGlkIHBhaW50KGdyYXktODkpO1xuXHRcdFx0XHRoZWlnaHQ6IDc3JTtcblxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcblx0XHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0fVxuXG5cdCYubGVmdC1hbGlnbm1lbnQge1xuXHRcdC5jb250YWluZXIuY29udGFpbmVyLWZsdWlkIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHh4bCkge1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0oMzIpO1xuXHRcdFx0fVxuXG5cdFx0XHQuYi1jb250ZW50LWltYWdlc19fbW9jay1jb250YWluZXIge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cblx0XHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0XHRib3JkZXItbGVmdDogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHR9XG5cblx0Ji5yaWdodC1hbGlnbm1lbnQge1xuXHRcdC5jb250YWluZXIuY29udGFpbmVyLWZsdWlkIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHhsKSB7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogcmVtKDMyKTtcblx0XHRcdH1cblxuXG5cdFx0XHQuYi1jb250ZW50LWltYWdlc19fbW9jay1jb250YWluZXIge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiAwO1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IHJlbSg0KSBzb2xpZCBwYWludChncmF5LTg5KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHR9XG5cblx0LmFuaW1hdGVkLXN2ZyB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDI0KTtcblx0fVxuXG5cdC5jLWJ0biB7XG5cdFx0Zm9udC1zaXplOiByZW0oMTQpO1xuXHRcdGxpbmUtaGVpZ2h0OiByZW0oMTYpO1xuXHRcdHBhZGRpbmc6IHJlbSgyMCkgcmVtKDc0KTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuXHRcdFx0cGFkZGluZzogcmVtKDIwKSByZW0oNTApO1xuXHRcdH1cblx0fVxuXG5cdC5zaWRld2F5cy1jYWxsb3V0IHtcblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHR0b3A6IHJlbSg0OCk7XG5cdFx0fVxuXHR9XG5cblxufVxuXG4uYi1jb250ZW50LWltYWdlcyB7XG5cdCZfX2NvbnRlbnQtd3JhcHBlciB7XG5cdFx0bWF4LXdpZHRoOiByZW0oNTI4KTtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcblx0XHRcdG1heC13aWR0aDogcmVtKDUwMCk7XG5cdFx0XHRtYXJnaW46IDAgYXV0byAwIDA7XG5cdFx0XHRsZWZ0OiBhdXRvO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuXHRcdFx0Ly8gcGFkZGluZzogcmVtKCA0NiApIHJlbSggMTAgKSByZW0oIDQzICk7XG5cdFx0fVxuXG5cdFx0aDEsXG5cdFx0aDIsXG5cdFx0aDMsXG5cdFx0aDQsXG5cdFx0aDUsXG5cdFx0aDYge1xuXHRcdFx0JjpmaXJzdC1vZi10eXBlIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRwIHtcblx0XHRcdG1hcmdpbjogMCAwIHJlbSgxNik7XG5cdFx0fVxuXHR9XG5cblx0Jl9faW1hZ2Uge1xuXHRcdGltZyB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdH1cblxuXHQmX19jb2wge1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuXHRcdFx0Ly8gZmxleDogMCAwIDUzJTtcblx0XHRcdG1heC13aWR0aDogcmVtKDgyNCk7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdH1cblxuXHRcdCYuaW1hZ2UtbGVmdCB7XG5cdFx0XHQvLyBwYWRkaW5nLXJpZ2h0OiByZW0oNjQpO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0ZmxleDogMCAwIDU0JTtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XG5cdFx0XHRcdGZsZXg6IDAgMCA1MCU7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyAuaGFzLWNvbnRhaW5lciAmIHtcblx0XHRcdC8vIFx0cGFkZGluZy1yaWdodDogcmVtKDc3KTtcblx0XHRcdC8vXG5cdFx0XHQvLyBcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuXHRcdFx0Ly8gXHRcdHBhZGRpbmc6IDA7XG5cdFx0XHQvLyBcdH1cblx0XHRcdC8vIH1cblx0XHR9XG5cblx0XHQmLmltYWdlLXJpZ2h0IHtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdFx0XHQvLyBwYWRkaW5nLWxlZnQ6IHJlbSg2NCk7XG5cdFx0XHRmbGV4OiAwIDAgNTQlO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcblx0XHRcdFx0ZmxleDogMCAwIDUwJTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0fVxuXG5cdFx0XHQuaGFzLWNvbnRhaW5lciAmIHtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiByZW0oNzcpO1xuXG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLmNvbnRlbnQtcmlnaHQge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiByZW0oNjQpO1xuXHRcdFx0cGFkZGluZy1yaWdodDogcmVtKDIwKTtcblx0XHRcdGZsZXg6IDAgMCA1MCU7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbSg2MDgpO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQuYi1jb250ZW50LWltYWdlc19fY29udGVudC13cmFwcGVyIHtcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG8gMCAwO1xuXHRcdFx0XHQvLyBsZWZ0OiByZW0oLTMwKTtcblxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcblx0XHRcdFx0XHRsZWZ0OiBhdXRvO1xuXHRcdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5jb250ZW50LWxlZnQge1xuXHRcdFx0cGFkZGluZy1yaWdodDogcmVtKDY0KTtcblx0XHRcdHBhZGRpbmctbGVmdDogcmVtKDIwKTtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IHJlbSg0NSk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHh4bCkge1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IHJlbSgyMCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQuYi1jb250ZW50LWltYWdlc19fY29udGVudC13cmFwcGVyIHtcblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG5cdFx0XHRcdFx0bWF4LXdpZHRoOiA5NSU7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLmNvbnRlbnQtcmlnaHQsXG5cdFx0Ji5jb250ZW50LWxlZnQge1xuXHRcdFx0cGFkZGluZy1ib3R0b206IHJlbSgyMDApO1xuXHRcdFx0ZmxleDogMCAwIDUwJTtcblx0XHRcdG1heC13aWR0aDogcmVtKDYwOCk7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuXHRcdFx0XHRmbGV4OiAwIDAgMTAwJTtcblx0XHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDI0KTtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiByZW0oMjApO1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0oMjApO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYuaW1hZ2UtbGVmdCxcblx0XHQmLmltYWdlLXJpZ2h0IHtcblx0XHRcdGZsZXg6IDAgMCA1NCU7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xuXHRcdFx0XHRmbGV4OiAwIDAgNTAlO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcblx0XHRcdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0XHRcdG1heC13aWR0aDogOTMlO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oMzIpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCZfX2ZsZXgtY29scyB7XG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0fVxuXG5cdFx0LnJpZ2h0LWFsaWdubWVudCAmIHtcblx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0fVxuXHR9XG5cblx0Jl9fdG9wLWljb25zIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDI0KTtcblxuXHRcdHNwYW4ge1xuXHRcdFx0Y29sb3I6IHBhaW50KGFjY2VudCk7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbSgxNCk7XG5cdFx0fVxuXG5cdFx0cCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblx0fVxuXG5cdCZfX2hhbGYtaGFsZiB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHR9XG5cblx0Jl9faGFsZiB7XG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuXHRcdFx0d2lkdGg6IDQ4JTtcblx0XHR9XG5cblx0XHRsaSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuXHRcdH1cblx0fVxufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiAhPSBudWxsIGFuZCAkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1RoaXMgZmlsZSBpcyBvbmx5IGZvciBtaXhpbnMuIERvbid0IGluY2x1ZGUgYW55IHN0eWxlcyBpbiB0aGlzIGZpbGUgb3IgZWxzZSB0aGV5IHdpbGwgcmVwZWF0ZWQgaW4gZXZlcnkgYmxvY2suXG5cbkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuQG1peGluIGNmIHtcblx0Jjo6YmVmb3JlLFxuXHQmOjphZnRlciB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRkaXNwbGF5OiB0YWJsZTtcblx0fVxuXG5cdCY6OmFmdGVyIHtcblx0XHRjbGVhcjogYm90aDtcblx0fVxufVxuXG5AZnVuY3Rpb24gdnctc2l6ZSgkcywgJHc6IDE0NDApIHtcblx0QHJldHVybiBtYXRoLmRpdigkcywgJHcpICogMTAwICsgdnc7XG59XG5cbkBtaXhpbiBoZWFkaW5ncyggJHN0YXJ0OiAxLCAkZW5kOiA2ICkge1xuXHQkaGVhZGluZ3M6IFwiXCI7XG5cblx0QGZvciAkaSBmcm9tICRzdGFydCB0aHJvdWdoICRlbmQge1xuXHRcdEBpZiAkaSAhPSAkc3RhcnQge1xuXHRcdFx0JGhlYWRpbmdzOiBcIiN7ICRoZWFkaW5ncyB9LGgjeyAkaSB9LC5oI3sgJGkgfVwiO1xuXHRcdH0gQGVsc2Uge1xuXHRcdFx0JGhlYWRpbmdzOiBcImgjeyAkaSB9LC5oI3sgJGkgfVwiO1xuXHRcdH1cblx0fVxuXG5cdCN7ICRoZWFkaW5ncyB9IHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gaWNvbi1mb250KCAkY29udGVudDogXCJcIiwgJGZvbnQtc2l6ZTogMjRweCApIHtcblx0Y29udGVudDogJGNvbnRlbnQ7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1pY29uZm9udDtcblx0Zm9udC1zaXplOiAkZm9udC1zaXplO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG5cdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdGZvbnQtdmFyaWFudDogbm9ybWFsO1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0bGluZS1oZWlnaHQ6IDE7XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5AbWl4aW4gcm0tYmVmb3JlKCkge1xuXHQmOjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcblx0fVxufVxuXG5AbWl4aW4gcm0tYWZ0ZXIoKSB7XG5cdCY6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG5cbkBtaXhpbiByZXNwb25zaXZlLWdyaWQoJHNtOiAxMiwgJG1kOiAxMiwgJGxnOiAxMiwgJHhsOiAxMiwgJHh4bDogMTIpIHtcblx0d2lkdGg6IGNhbGModmFyKC0tY29sdW1uV2lkdGgpICogI3skc219IC0gNDBweCk7XG5cdG1heC13aWR0aDogY2FsYyh2YXIoLS1jb2x1bW5NYXhXaWR0aCkgKiAjeyRzbX0gLSA0MHB4KTtcblxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cdFx0d2lkdGg6IGNhbGModmFyKC0tY29sdW1uV2lkdGgpICogI3skbWR9IC0gMzBweCk7XG5cdFx0bWF4LXdpZHRoOiBjYWxjKHZhcigtLWNvbHVtbk1heFdpZHRoKSAqICN7JG1kfSAtIDMwcHgpO1xuXHR9XG5cblx0QGlmICgkbGcgIT0gJG1kKSB7XG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuXHRcdFx0d2lkdGg6IGNhbGModmFyKC0tY29sdW1uV2lkdGgpICogI3skbGd9IC0gMzBweCk7XG5cdFx0XHRtYXgtd2lkdGg6IGNhbGModmFyKC0tY29sdW1uTWF4V2lkdGgpICogI3skbGd9IC0gMzBweCk7XG5cdFx0fVxuXHR9XG5cblx0QGlmICgkeGwgIT0gJGxnKSB7XG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuXHRcdFx0d2lkdGg6IGNhbGModmFyKC0tY29sdW1uV2lkdGgpICogI3skeGx9IC0gMzBweCk7XG5cdFx0XHRtYXgtd2lkdGg6IGNhbGModmFyKC0tY29sdW1uTWF4V2lkdGgpICogI3skeGx9IC0gMzBweCk7XG5cdFx0fVxuXHR9XG5cblx0QGlmICgkeHhsICE9ICR4bCkge1xuXHRcdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHhsKSB7XG5cdFx0XHR3aWR0aDogY2FsYyh2YXIoLS1jb2x1bW5XaWR0aCkgKiAjeyR4eGx9IC0gMzBweCk7XG5cdFx0XHRtYXgtd2lkdGg6IGNhbGModmFyKC0tY29sdW1uTWF4V2lkdGgpICogI3skeHhsfSAtIDMwcHgpO1xuXHRcdH1cblx0fVxufVxuXG5AbWl4aW4gcG9zaXRpb24oJHR5cGU6IHJlbGF0aXZlLCAkdG9wOiBhdXRvLCAkcmlnaHQ6IGF1dG8sICRib3R0b206IGF1dG8sICRsZWZ0OiBhdXRvKSB7XG5cdHBvc2l0aW9uOiAkdHlwZTtcblx0dG9wOiAkdG9wO1xuXHRyaWdodDogJHJpZ2h0O1xuXHRib3R0b206ICRib3R0b207XG5cdGxlZnQ6ICRsZWZ0O1xufVxuIl19 */
