@media screen and (min-width:768px){.ergo-adhop__about-service{margin:0 -12px}}.ergo-adhop__about-service .ergo-adhop__about-service__content__wrapper{display:flex;flex-wrap:wrap;padding:24px 0;width:100%}@media screen and (min-width:768px){.ergo-adhop__about-service .ergo-adhop__about-service__content__wrapper{padding:0}}.ergo-adhop__about-service .ergo-adhop__about-service-title{font-size:20px;line-height:30px;margin:0 0 20px}@media screen and (min-width:768px){.ergo-adhop__about-service .ergo-adhop__about-service-title{font-size:24px;line-height:40px}.ergo-adhop__about-service .ergo-adhop__about-service__content__left,.ergo-adhop__about-service .ergo-adhop__about-service__content__right{padding:0 12px;width:50%}}.ergo-adhop__addressItem{font-size:14px;font-style:normal}.ergo-adhop__addressItem .ergo-adhop__button__component{margin-top:39px}.ergo-adhop__addressItem .ergo-adhop__button__component .ergo-adhop__button.ergo-adhop__button--text-link{font-weight:400}.ergo-adhop__addressItem .footer__links-heading--secondary{margin-bottom:8px}.ergo-adhop__addressItem .ergo-adhop__addressItem__agencyName{display:block;font-weight:700}.ergo-adhop__addressItem .ergo-adhop__addressItem__contact{list-style:none;margin:0;padding:0}.ergo-adhop__addressItem .ergo-adhop__addressItem__contact li{margin-bottom:8px}.ergo-adhop__addressItem .ergo-adhop__addressItem__contact .ergo-adhop__button__component{display:inline}.ergo-adhop__addressItem p{font-size:inherit}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__label__wrapper{text-align:center}.ergo-adhop__agencyLocations .ergo-adhop__chip{margin-bottom:30px}@media screen and (min-width:768px){.ergo-adhop__agencyLocations .ergo-adhop__chip{margin-bottom:20px}}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__title{font-size:20px;font-weight:700;line-height:30px;margin:0 0 18px}@media screen and (min-width:768px){.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__title{font-size:30px;line-height:40px;margin-bottom:50px;text-align:center}}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__wrapper{margin-bottom:25px;margin-top:25px}@media screen and (min-width:768px){.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__wrapper{margin-bottom:60px;margin-top:60px}}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__wrapper~.ergo-adhop__agencyLocations__item__wrapper{margin-top:20px}@media screen and (min-width:768px){.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__wrapper~.ergo-adhop__agencyLocations__item__wrapper{margin-top:90px}}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item{margin-bottom:25px}@media screen and (min-width:768px){.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item{margin-bottom:60px}}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__content{font-size:14px;line-height:1.5;width:100%}@media screen and (min-width:768px){.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__content{display:flex;flex-wrap:wrap;font-size:16px;margin:0 auto;max-width:870px;width:100%}}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__content__left,.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__content__right{border:0;width:100%}@media screen and (min-width:768px){.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__content__left,.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__content__right{padding-right:15px;width:50%}}@media screen and (max-width:767px){.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__content__left{margin-bottom:25px}}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__content__left>:last-child{margin-bottom:0}@media screen and (max-width:767px){.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__content__left .ergo-adhop__openingHours__title{font-size:16px;line-height:24px}}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__address,.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__fax,.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__phone{display:flex;padding-left:44px;position:relative}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__address .react-svg-icon,.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__fax .react-svg-icon,.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__phone .react-svg-icon{left:0;position:absolute;top:0}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__address div:not(.cmp-text) p,.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__fax div:not(.cmp-text) p,.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__phone div:not(.cmp-text) p{margin:0}@media screen and (max-width:767px){.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__address div:not(.cmp-text) p,.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__fax div:not(.cmp-text) p,.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__phone div:not(.cmp-text) p{font-size:14px;line-height:21px}}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__address .ergo-adhop__text,.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__fax .ergo-adhop__text,.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__phone .ergo-adhop__text{margin-top:16px}@media screen and (min-width:768px){.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__phone .ergo-adhop__button--text-link{font-size:16px}}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__address{margin-bottom:24px}@media screen and (min-width:768px){.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__address{margin-bottom:18px}}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__address .react-svg-icon{top:3px}@media screen and (min-width:768px){.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__address .ergo-adhop__button.ergo-adhop__button--text-link{font-size:16px}}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__phone{align-items:center;margin-bottom:30px}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__phone .react-svg-icon{top:-3px}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__fax{margin-bottom:60px}@media screen and (min-width:768px){.ergo-adhop__agencyLocations .ergo-adhop__openingHours .ergo-adhop__openingHours__time,.ergo-adhop__agencyLocations .ergo-adhop__openingHours p{font-size:16px;line-height:24px}}.ergo-adhop__agencyLocations .adhop__team--1-employees .adhop__team-employee-tile__picture.adhop__team,.ergo-adhop__agencyLocations .adhop__team--2-employees .adhop__team-employee-tile__picture.adhop__team,.ergo-adhop__agencyLocations .adhop__team-employee-tile .adhop__team-employee-tile__picture.adhop__team,.ergo-adhop__agencyLocations .adhop__team-employee-tile--solo .adhop__team-employee-tile__picture.adhop__team{margin-bottom:0}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__content__right{align-self:flex-start;aspect-ratio:3/2}@media screen and (min-width:768px){.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__content__right{padding-left:15px;padding-right:0}}.ergo-adhop__agencyLocations .ergo-adhop__agencyLocations__item__content__right img{aspect-ratio:3/2}.ergo-adhop__agencyData{background-color:var(--theme-white,#fff);padding-bottom:24px;padding-top:7px}@media screen and (min-width:768px){.ergo-adhop__agencyData{background-color:#f5f5f5;padding-top:31px}}.ergo-adhop__agencyData .ergo-adhop__agencyData__content__wrapper{display:flex;flex-wrap:wrap;gap:39px;margin:0 auto;max-width:1440px;padding-left:24px;padding-right:24px;width:100%}@media screen and (min-width:768px){.ergo-adhop__agencyData .ergo-adhop__agencyData__content__wrapper{gap:10px}}.ergo-adhop__agencyData .ergo-adhop__addressItem__agencyName,.ergo-adhop__agencyData .ergo-adhop__openingHours__title{font-size:16px;line-height:32px;margin-bottom:29px}@media screen and (min-width:768px){.ergo-adhop__agencyData .ergo-adhop__addressItem__agencyName,.ergo-adhop__agencyData .ergo-adhop__openingHours__title{font-size:20px;line-height:30px;margin-bottom:24px}}.ergo-adhop__agencyData .ergo-adhop__addressItem__agencyTitle{font-weight:600}.ergo-adhop__agencyData .ergo-adhop__badges.ergo-adhop__badges .ergo-adhop__badges__item{aspect-ratio:auto;max-width:70px;width:100%}@media screen and (min-width:912px){.ergo-adhop__agencyData .ergo-adhop__badges.ergo-adhop__badges .ergo-adhop__badges__item{max-width:140px}}.ergo-adhop__agencyData .ergo-adhop__badges.ergo-adhop__badges .ergo-adhop__badges__item .ergo-adhop__button__component{width:100%}.ergo-adhop__agencyData .ergo-adhop__badges.ergo-adhop__badges .ergo-adhop__badges__item img{aspect-ratio:14/19;min-height:70px;object-fit:contain;object-position:top}@media screen and (min-width:912px){.ergo-adhop__agencyData .ergo-adhop__badges.ergo-adhop__badges .ergo-adhop__badges__item img{min-height:140px}}.page__snippets .ergo-adhop__agencyFlyout{display:none}@media screen and (min-width:1152px){.body-scroll-locked .ergo-adhop__agencyFlyout{padding-right:15px}}@media screen and (min-width:768px){.page__snippets .ergo-adhop__agencyFlyout{align-items:flex-start;background-color:#fff;border-bottom:1px solid var(--theme-light-gray,#d9d9d9);display:block;left:0;max-height:0;opacity:0;overflow:auto;position:fixed;right:0;top:73px}.page__snippets .ergo-adhop__agencyFlyout--visible{max-height:calc(100vh - 73px);opacity:1;z-index:1}}@media screen and (min-width:912px){.page__snippets .ergo-adhop__agencyFlyout{top:81px}.page__snippets .ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout--visible{max-height:calc(100vh - 81px)}}@media screen and (min-width:1152px){.page__snippets .ergo-adhop__agencyFlyout{top:95px}.page__snippets .ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout--visible{max-height:calc(100vh - 95px);opacity:1}}.ergo-adhop__agencyFlyout h4{margin:0}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__container{display:flex;justify-content:space-around;margin:0 auto;max-width:1440px;position:relative;width:100%}@media screen and (min-width:768px){.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__container .ergo-adhop__agencyFlyout__links__list,.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__container .ergo-adhop__agencyFlyout__location-details{margin:20px 0;padding:5px 20px}}@media screen and (min-width:1152px){.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__container .ergo-adhop__agencyFlyout__links__list,.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__container .ergo-adhop__agencyFlyout__location-details{margin:30px 0;padding:10px 50px}}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__picture{align-self:flex-start;aspect-ratio:3/2;flex:3;margin:25px 20px}@media screen and (min-width:1152px){.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__picture{margin:40px 50px}}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__picture img{aspect-ratio:3/2;margin:0;width:100%}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__location-details{display:flex;flex:5;flex-direction:column}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__location-details .ergo-adhop__addressItem{font-size:16px;font-style:normal;margin-bottom:10px}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__location-details .ergo-adhop__addressItem .ergo-adhop__addressItem__agencyName{font-size:18px}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__location-details .ergo-adhop__addressItem ul{list-style:none;margin:0;padding:0}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__location-details .ergo-adhop__addressItem .ergo-adhop__button__component{margin:0;padding:0}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__links__list.ergo-adhop__agencyFlyout__links__list{flex:3}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__links__list.ergo-adhop__agencyFlyout__links__list .ergo-adhop__agencyFlyout__links__list__title{display:block;font-size:18px;font-weight:500}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__links__list.ergo-adhop__agencyFlyout__links__list ul{list-style:none;margin:0;padding:0}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__links__list.ergo-adhop__agencyFlyout__links__list li{display:none}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__links__list.ergo-adhop__agencyFlyout__links__list li:nth-child(-n+3){display:block;padding:7px 0}@media screen and (min-width:768px){.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__links__list.ergo-adhop__agencyFlyout__links__list{border-left:1px solid var(--theme-light-gray,#d9d9d9)}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__links__list.ergo-adhop__agencyFlyout__links__list ul{padding:10px 0}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__links__list.ergo-adhop__agencyFlyout__links__list li{padding-bottom:12px;padding-top:12px}}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__opening-hours{margin:20px 0}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__opening-hours h4{font-size:16px}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__opening-hours .ergo-adhop__agencyFlyout__opening-hours__header{align-items:center;cursor:pointer;display:inline-flex;padding-right:20px;position:relative}@media screen and (max-width:767px){.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__opening-hours .ergo-adhop__agencyFlyout__opening-hours__header{font-size:14px}}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__opening-hours .ergo-adhop__agencyFlyout__opening-hours__header .ergo-adhop__agencyFlyout__opening-hours__title{display:inline-block;font-size:16px;font-weight:400;vertical-align:middle}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__opening-hours .ergo-adhop__agencyFlyout__opening-hours__header .react-svg-icon{display:inline-block;pointer-events:none;position:absolute;right:0;transition:rotate .3s ease-in-out;vertical-align:middle}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__opening-hours .ergo-adhop__agencyFlyout__opening-hours__details{max-height:0;overflow:hidden;transition:max-height .3s ease-in-out}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__opening-hours.ergo-adhop__agencyFlyout__opening-hours--visible .react-svg-icon{rotate:180deg}.ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__opening-hours.ergo-adhop__agencyFlyout__opening-hours--visible .ergo-adhop__agencyFlyout__opening-hours__details{max-height:300px}.ergo-adhop__navigation .ergo-adhop__agencyFlyout{border:1px solid var(--theme-light-gray,#d9d9d9);border-radius:8px;display:block;margin:0 24px 48px;overflow:hidden;padding:0}@media screen and (min-width:1152px){.ergo-adhop__navigation .ergo-adhop__agencyFlyout{margin:0}}.ergo-adhop__navigation .ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__container{flex-direction:column;gap:30px}.ergo-adhop__navigation .ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__picture{border-radius:0 0 8px 8px;margin:0;overflow:hidden}.ergo-adhop__navigation .ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__picture:has(.adhop-ergo__image){background:var(--theme-primary-light,#fbf4f4);min-height:100px;width:100%}.ergo-adhop__navigation .ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__location-details{margin:0;padding:0 32px 24px}.ergo-adhop__navigation .ergo-adhop__agencyFlyout .ergo-adhop__agencyFlyout__links__list a{padding:0}.ergo-adhop__agencyFlyout .ergo-adhop__button{width:100%}.ergo-adhop__agencyPresentation{margin:0 auto;max-width:870px;width:100%}@media screen and (max-width:767px){.ergo-adhop__agencyPresentation:not(.show-more) .ergo-adhop__agencyPresentation__description{display:-webkit-box;-webkit-line-clamp:2;overflow:hidden;
    /*! autoprefixer: ignore next */-webkit-box-orient:vertical}.ergo-adhop__agencyPresentation:not(.show-more) .ergo-adhop__agencyPresentation__benefits,.ergo-adhop__agencyPresentation:not(.show-more) .ergo-adhop__button--primary{display:none}.ergo-adhop__agencyPresentation:not(.show-more) .ergo-adhop__agencyPresentation__read-more{display:inline-block}}.ergo-adhop__agencyPresentation.ergo-adhop__agencyPresentation--with-ratings{display:flex;flex-direction:column;max-width:100%}@media screen and (min-width:912px){.ergo-adhop__agencyPresentation.ergo-adhop__agencyPresentation--with-ratings{flex-direction:row}}.ergo-adhop__agencyPresentation.ergo-adhop__agencyPresentation--with-ratings .ergo-adhop__agencyPresentation__aside{flex-shrink:0;margin-top:60px}@media screen and (min-width:912px){.ergo-adhop__agencyPresentation.ergo-adhop__agencyPresentation--with-ratings .ergo-adhop__agencyPresentation__aside{margin-left:60px;margin-top:20px;width:35%}}.ergo-adhop__agencyPresentation .ergo-adhop__agencyPresentation__content{width:100%}@media screen and (min-width:768px){.ergo-adhop__agencyPresentation .ergo-adhop__agencyPresentation__content h2{font-size:36px}}.ergo-adhop__agencyPresentation .ergo-adhop__agencyPresentation__content .ergo-adhop__button__component{margin-top:30px}.ergo-adhop__agencyPresentation .ergo-adhop__agencyPresentation__aside{margin-top:60px}.ergo-adhop__agencyPresentation .ergo-adhop__agencyPresentation__aside .ergo-adhop__socialMediaLinks{margin-bottom:30px;margin-top:60px}.ergo-adhop__agencyPresentation .ergo-adhop__agencyPresentation__benefits{margin-bottom:60px;margin-top:60px}.ergo-adhop__agencyPresentation .ergo-adhop__agencyPresentation__read-less,.ergo-adhop__agencyPresentation .ergo-adhop__agencyPresentation__read-more{background-color:initial;border:0;color:var(--theme-primary,#8e0038);display:none;font-size:14px;font-weight:700;line-height:21px;margin-top:10px;padding:0}.ergo-adhop__agencyPresentation .ergo-adhop__agencyPresentation__read-less{display:block;margin-top:24px}.ergo-adhop__agencyRatingHorizontal{display:flex;flex-wrap:wrap}@media screen and (min-width:768px){.ergo-adhop__agencyRatingHorizontal{align-items:center;flex-direction:column;height:100%;text-align:center}}.ergo-adhop__agencyRatingHorizontal .ergo-adhop__agencyRatingHorizontal__image{display:inline-flex;height:60px;width:60px}@media screen and (min-width:768px){.ergo-adhop__agencyRatingHorizontal .ergo-adhop__agencyRatingHorizontal__image{height:80px;width:80px}}.ergo-adhop__agencyRatingHorizontal .ergo-adhop__agencyRatingHorizontal__content{max-width:calc(100% - 60px);padding-left:20px;position:relative}@media screen and (min-width:768px){.ergo-adhop__agencyRatingHorizontal .ergo-adhop__agencyRatingHorizontal__content{display:flex;flex-flow:column wrap;height:calc(100% - 80px);justify-content:space-between;max-width:100%;padding-left:0;padding-top:15px}}.ergo-adhop__agencyRatingHorizontal .ergo-adhop__agencyRatingHorizontal__content p{font-size:12px;line-height:14px;margin:0}.ergo-adhop__agencyRatingHorizontal .ergo-adhop__agencyRatingHorizontal__content .ergo-adhop__agencyRatingHorizontal__ratings__cta{margin-top:20px}@media screen and (min-width:768px){.ergo-adhop__agencyRatingHorizontal .ergo-adhop__agencyRatingHorizontal__no__rating__text{padding-top:30px}}.ergo-adhop__agencyRatingHorizontal .ergo-adhop__agencyRatingHorizontal__ratings{display:inline-flex}.ergo-adhop__agencyRatingHorizontal .ergo-adhop__agencyRatingHorizontal__ratings.facebook .ergo-adhop__ratingValue__text{margin-bottom:10px}.ergo-adhop__agencyRatingHorizontal .ergo-adhop__agencyRatingHorizontal__ratings .ergo-adhop__ratingValue--with-tooltip{padding-right:45px;position:relative}.ergo-adhop__agencyRatingHorizontal .ergo-adhop__agencyRatingHorizontal__ratings .ergo-adhop__ratingValue--with-tooltip .ergo-adhop__tooltip{position:absolute;right:0}.ergo-adhop__agencyRatingHorizontal .ergo-adhop__agencyRatingHorizontal__ratings .ergo-adhop__ratingValue--with-tooltip .ergo-adhop__tooltip .ergo-adhop__button__component .ergo-adhop__button.ergo-adhop__tooltip__overlay__trigger{width:40px}.ergo-adhop__agencyRatingHorizontal .ergo-adhop__agencyRatingHorizontal__ratings .ergo-adhop__ratingStars__stars__text,.ergo-adhop__agencyRatingHorizontal .ergo-adhop__agencyRatingHorizontal__ratings .ergo-adhop__ratingValue__text{font-size:12px;line-height:12px;margin-top:3px}.adhop-ergo__ratingVertical{border:1px solid var(--theme-light-gray,#d9d9d9);border-radius:9px}.adhop-ergo__ratingVertical .adhop-ergo__ratingVertical__heading{color:var(--theme-light-gray,#d9d9d9);font-size:15px;font-weight:600}.adhop-ergo__ratingVertical .adhop-ergo__ratingVertical__subheading{font-size:20px;font-weight:700;margin:0}.adhop-ergo__ratingVertical .adhop-ergo__ratingVertical__heading,.adhop-ergo__ratingVertical .adhop-ergo__ratingVertical__subheading{margin-bottom:0;margin-top:30px;padding-left:30px;padding-right:30px}.adhop-ergo__ratingVertical .adhop-ergo__ratingVertical__heading:not(:first-child),.adhop-ergo__ratingVertical .adhop-ergo__ratingVertical__subheading:not(:first-child){margin-top:10px}.adhop-ergo__ratingVertical .adhop-ergo__ratingVertical__list{list-style:none;margin:0;padding:0}.adhop-ergo__ratingVertical .adhop-ergo__ratingVertical__item{padding:30px}.adhop-ergo__ratingVertical .adhop-ergo__ratingVertical__item:not(:first-child){border-top:1px solid var(--theme-light-gray,#d9d9d9)}.ergo-adhop__badges .ergo-adhop__badges__item{aspect-ratio:1;display:inline-block;margin-right:30px;position:relative;vertical-align:top}.ergo-adhop__badges .ergo-adhop__badges__item:last-child{margin-right:0}.ergo-adhop__badges .ergo-adhop__badges__item img{aspect-ratio:1;max-width:70px;width:100%}@media screen and (min-width:912px){.ergo-adhop__badges .ergo-adhop__badges__item img{max-width:140px}}.ergo-adhop__badges .ergo-adhop__badges__item .ergo-adhop__button{display:block}@media screen and (min-width:768px){.campaigns__content .campaign__teaser__wrapper:nth-child(2n) .ergo-adhop__campaignTeaser{flex-direction:row-reverse}.campaigns__content .campaign__teaser__wrapper:nth-child(2n) .ergo-adhop__campaignTeaser img{border-radius:0 4px 4px 0}}.campaigns__content .campaign__teaser__wrapper:last-child .ergo-adhop__campaignTeaser{margin-bottom:0}.ergo-adhop__campaignTeaser{border-radius:4px;box-shadow:0 3px 5px -1px rgba(var(--theme-black-rgb),.16),0 6px 10px 0 rgba(var(--theme-black-rgb),.12),0 1px 18px 0 rgba(var(--theme-black-rgb),.1);display:flex;flex-wrap:wrap;margin:0 auto 24px;max-width:870px;width:100%}@media screen and (min-width:768px){.ergo-adhop__campaignTeaser{min-height:320px}}.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__image{min-height:217px;width:100%}@media screen and (min-width:768px){.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__image{max-width:420px}}.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__image img{border-radius:4px 4px 0 0;height:100%;object-fit:cover;width:100%}@media screen and (min-width:768px){.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__image img{border-radius:4px 0 0 4px}}.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__content{padding:30px 20px;width:100%}@media screen and (min-width:768px){.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__content{display:flex;flex-flow:column wrap;justify-content:center;max-width:calc(100% - 420px);padding:40px 48px}}.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__title{color:inherit;display:block;font-size:18px;font-weight:700;line-height:27px;margin:0 0 4px}.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__subtitle{color:inherit;font-size:16px;line-height:24px}.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__description{margin-top:16px}.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__description p{font-size:16px;line-height:24px}.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__description p:last-child{margin:0}.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__description ol,.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__description ul{list-style:none;margin:0;padding:0}.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__cta__wrapper{align-items:center;display:flex;flex-flow:column wrap;gap:12px;margin-top:30px}@media screen and (min-width:768px){.ergo-adhop__campaignTeaser .ergo-adhop__campaignTeaser__cta__wrapper{flex-flow:row wrap;gap:16px}}.slick-slider{box-sizing:border-box;-webkit-touch-callout:none;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.slick-list,.slick-slider{display:block;position:relative}.slick-list{margin:0;overflow:hidden;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{transform:translateZ(0)}.slick-track{display:block;left:0;margin-left:auto;margin-right:auto;position:relative;top:0}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{border:1px solid transparent;display:block;height:auto}.slick-arrow.slick-hidden{display:none}.slick-slider{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.slick-slider.slick-initialized .slick-list,.slick-slider.slick-initialized .slick-track{display:flex}.slick-slider.slick-with-arrows{margin-left:36px;margin-right:36px}@media screen and (min-width:768px){.slick-slider.slick-with-arrows{margin-left:48px;margin-right:48px}}.slick-slider .slick-arrow--custom{align-items:center;background:none;border-radius:50%;color:var(--theme-primary,#8e0038);cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);width:36px}.slick-slider .slick-arrow--custom.slick-prev{left:0;transform:translate(-100%,-50%)}.slick-slider .slick-arrow--custom.slick-next{left:100%}.slick-slider .slick-dots{margin:0;padding:0;text-align:center;width:100%}.slick-slider .slick-dots li{display:inline-flex;margin-left:8px;margin-right:8px}.slick-slider .slick-dots li.slick-active button{background-color:var(--theme-primary,#8e0038)}.slick-slider .slick-dots li button{background-color:#e7e6e6;border:0;border-radius:50%;cursor:pointer;font-size:0;height:8px;padding:0;transition:background-color .3s ease-in-out;width:8px}.ergo-adhop__chip{background-color:var(--theme-additional-2,#009284);border-radius:16px;color:var(--theme-white,#fff);display:inline-flex;font-size:14px;line-height:14px;margin-bottom:16px;padding:5px 14px}.ergo-adhop__chip.chip-green{background-color:#428071}.ergo-adhop__chip.chip-blue{background-color:var(--theme-additional-3,#0f94a7)}.ergo-adhop__chip.chip-violet{background-color:var(--theme-additional-1,#b31767)}.ergo-adhop__chip.chip-orange{background-color:var(--theme-additional-5,#e87a16)}.ergo-adhop__chip.chip-yellow{background-color:var(--theme-additional-4,#f6cb00)}.ergo-adhop__contactBar__overlay{max-width:426px;padding:0 6px;position:absolute;top:100%;width:100%;z-index:10}@media screen and (min-width:768px){.ergo-adhop__contactBar__overlay{margin-top:-15px;max-width:none;width:auto}}.ergo-adhop__contactBar__overlay .ergo-adhop__contactBar__overlay__content{background:var(--theme-white,#fff);border-radius:9px;box-shadow:0 24px 38px 3px rgba(var(--theme-black-rgb),.12),0 9px 46px 8px rgba(var(--theme-black-rgb),.1),0 11px 15px -7px rgba(var(--theme-black-rgb),.16)}.ergo-adhop__contactBar__overlay .ergo-adhop__contactBar__left-icon-cta .ergo-adhop__button__text{color:var(--theme-primary,#8e0038)}.ergo-adhop__contactBar h4{font-size:18px;line-height:23px;margin-bottom:16px;margin-top:0}@media screen and (min-width:768px){.ergo-adhop__contactBar h4{font-size:20px;line-height:26px;margin-bottom:24px}}.ergo-adhop__contactBar .ergo-adhop__contactBar__container{margin:0 auto;max-width:1280px;padding:15px 0;position:relative}@media screen and (min-width:768px){.ergo-adhop__contactBar .ergo-adhop__contactBar__container{display:flex;justify-content:space-between;padding:0}}.ergo-adhop__contactBar .ergo-adhop__contactBar__item{position:relative}@media screen and (min-width:768px){.ergo-adhop__contactBar .ergo-adhop__contactBar__item{position:static}}.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link{color:var(--theme-primary,#8e0038);margin-bottom:21px;text-decoration:none}.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link.ergo-adhop__button.ergo-adhop__button--text-link.ergo-adhop__button--text-link{color:var(--theme-darkest-gray,#333);gap:12px;padding:15px 24px;text-align:left}@media screen and (min-width:768px){.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link.ergo-adhop__button.ergo-adhop__button--text-link.ergo-adhop__button--text-link{padding-bottom:0;padding-top:0}}.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link.ergo-adhop__button.ergo-adhop__button--text-link.ergo-adhop__button--text-link:hover{color:var(--theme-primary,#8e0038)}.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link.ergo-adhop__button.ergo-adhop__button--text-link.ergo-adhop__button--text-link:after{display:none}.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link .ergo-adhop__contactBar__icon-chevron,.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link .ergo-adhop__contactBar__icon-link__text,.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link .react-svg-icon{pointer-events:none}.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link .ergo-adhop__contactBar__icon-link__text{font-size:14px;letter-spacing:.25px;line-height:21px;margin:0}.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link.ergo-adhop__contactBar__icon-link--primary{color:var(--theme-darkest-gray,#333);margin:0;padding:15px 24px}@media screen and (min-width:768px){.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link.ergo-adhop__contactBar__icon-link--primary{height:92px;line-height:92px;padding:0 24px}}.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link.ergo-adhop__contactBar__icon-link--expanded,.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link.ergo-adhop__contactBar__icon-link--expanded.ergo-adhop__button.ergo-adhop__button{color:var(--theme-primary,#8e0038)}.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link.ergo-adhop__contactBar__icon-link--expanded .ergo-adhop__contactBar__icon-chevron{transform:rotate(180deg)}.ergo-adhop__contactBar .ergo-adhop__contactBar__icon-link.ergo-adhop__contactBar__icon-link--expanded svg{fill:var(--theme-primary,#8e0038)}.ergo-adhop__contactBar .ergo-adhop__contactColumn__phones-area .ergo-adhop__button--text-link:hover .react-svg-icon{color:var(--theme-primary,#8e0038)}.ergo-adhop__contactBar .ergo-adhop__contactColumn__phones-area .ergo-adhop__button--text-link .react-svg-icon{color:var(--theme-darkest-gray,#333)}.ergo-adhop__contactBar .ergo-adhop__contactBar__overlay__snippet-content{max-width:calc(100vw - 12px);padding:24px 0}@media screen and (min-width:768px){.ergo-adhop__contactBar .ergo-adhop__contactBar__overlay__snippet-content{width:min(var(--columns) * 400px,1268px)}}.ergo-adhop__contactBar .ergo-adhop__contactBar__overlay__snippet-content .teasersGrid{margin:0;max-width:none;width:100%}.ergo-adhop__contactBar .ergo-adhop__contactBar__overlay__snippet-content .teasersGrid .teasersGrid__list{border:0}.customColumnSnippet{display:none}.ergo-adhop__contactColumn{padding:30px 0}@media screen and (min-width:768px){.ergo-adhop__contactColumn{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;grid-template-rows:repeat(2,auto);padding-right:30px}}.ergo-adhop__contactColumn .ergo-adhop__contactColumn__item{max-width:426px;padding:0 30px;width:100%}@media screen and (min-width:768px){.ergo-adhop__contactColumn .ergo-adhop__contactColumn__item{padding-right:0;-moz-text-decoration-line:426px}}.ergo-adhop__contactColumn .ergo-adhop__contactColumn__item:last-child button{margin-bottom:0}.ergo-adhop__contactColumn .ergo-adhop__contactColumn__item--content-area{padding:0 30px}@media screen and (min-width:768px){.ergo-adhop__contactColumn .ergo-adhop__contactColumn__item--content-area{padding-right:0}}.ergo-adhop__contactColumn .ergo-adhop__contactColumn__item--content-area~.ergo-adhop__contactColumn__item--content-area{margin-top:36px}@media screen and (min-width:768px){.ergo-adhop__contactColumn .ergo-adhop__contactColumn__item--content-area~.ergo-adhop__contactColumn__item--content-area{margin-top:0}}.ergo-adhop__contactColumn .ergo-adhop__contactColumn__item--content-area .cmp-text p{margin-bottom:24px}.ergo-adhop__contactColumn .ergo-adhop__contactColumn__item--content-area .ergo-adhop__button:not(.ergo-adhop__button--text-link){color:var(--theme-darkest-gray,#333)}.ergo-adhop__contactColumn .ergo-adhop__contactColumn__item--button-area .ergo-adhop__button__component{margin-bottom:21px}.ergo-adhop__contactColumn .ergo-adhop__contactColumn__item--button-area .ergo-adhop__button__component .ergo-adhop__button{width:100%}@media screen and (min-width:768px){.ergo-adhop__contactColumn .ergo-adhop__contactColumn__item--button-area .ergo-adhop__button__component .ergo-adhop__button{width:auto}}.ergo-adhop__contactColumn .ergo-adhop__contactColumn__phones-area>div:last-child{margin-bottom:14px}.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__text{margin-bottom:30px;text-align:center}@media screen and (min-width:768px){.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__text{margin-bottom:55px}}.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__text p{font-size:16px;line-height:24px;margin:0}.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__content__wrapper{display:flex;flex-flow:column wrap;gap:32px}@media screen and (min-width:768px){.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__content__wrapper{align-items:center;flex-direction:row;gap:48px;justify-content:center}}.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__image{height:176px;margin:0 auto;width:176px}@media screen and (min-width:768px){.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__image{height:268px;margin:0;width:268px}}.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__image img{border-radius:50%;height:100%;object-fit:cover;width:100%}@media screen and (min-width:768px){.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__content{max-width:calc(100% - 320px)}}.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__content .ergo-adhop__contactTeaser__agent{display:block;font-size:24px;font-weight:700;line-height:32px;margin-bottom:24px;text-align:center}@media screen and (min-width:768px){.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__content .ergo-adhop__contactTeaser__agent{text-align:left}}.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__content .ergo-adhop__button{padding-bottom:7px;padding-top:7px}@media screen and (max-width:767px){.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__content__inner{margin:0 auto;max-width:320px}}.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__address,.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__fax,.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__mobile,.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__phone{align-items:center;display:flex;flex-wrap:wrap;padding-left:44px;position:relative}.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__address:not(:last-child):not(.with-route-planen),.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__fax:not(:last-child):not(.with-route-planen),.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__mobile:not(:last-child):not(.with-route-planen),.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__phone:not(:last-child):not(.with-route-planen){margin-bottom:12px}.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__address p,.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__fax p,.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__mobile p,.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__phone p{margin:0}.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__address .react-svg-icon,.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__fax .react-svg-icon,.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__mobile .react-svg-icon,.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__phone .react-svg-icon{left:0;position:absolute;top:-1px}.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__address .ergo-adhop__button.ergo-adhop__button--text-link{font-weight:400;margin-bottom:12px}@media screen and (min-width:768px){.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__address .ergo-adhop__button.ergo-adhop__button--text-link{font-size:16px;line-height:24px}}.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__mobile .ergo-adhop__button.ergo-adhop__button--text-link,.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__phone .ergo-adhop__button.ergo-adhop__button--text-link{font-weight:400;padding:0}@media screen and (min-width:768px){.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__mobile .ergo-adhop__button.ergo-adhop__button--text-link,.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__phone .ergo-adhop__button.ergo-adhop__button--text-link{font-size:16px;line-height:24px}}.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__ctas__wrapper{align-items:center;display:flex;flex-flow:column wrap;gap:16px;justify-content:center;padding-top:40px}@media screen and (min-width:768px){.ergo-adhop__contactTeaser .ergo-adhop__contactTeaser__ctas__wrapper{flex-direction:row;padding-top:60px}.aem-Grid.aem-Grid--default--12 .containerBox.containerBox{min-width:100%;width:100%}.aem-Grid.aem-Grid--default--12 .containerBox.containerBox.containerBox--half{float:left;min-width:50%;width:50%}.aem-Grid.aem-Grid--default--12 .containerBox.containerBox.containerBox--wrapper>div{display:flex;flex-wrap:wrap}.aem-Grid.aem-Grid--default--12 .containerBox.containerBox.containerBox--wrapper>div>.containerBox>div{height:100%;padding-bottom:40px;position:relative}.aem-Grid.aem-Grid--default--12 .containerBox.containerBox.containerBox--wrapper>div>.containerBox>div .containerBox--half .ergo-adhop__button__component{max-width:calc(50% - 24px)}.aem-Grid.aem-Grid--default--12 .containerBox.containerBox.containerBox--wrapper>div>.containerBox>div .ergo-adhop__button__component{bottom:0;position:absolute}.aem-Grid.aem-Grid--default--12 .containerBox.containerBox>div{margin-left:-12px;margin-right:-12px}.aem-Grid.aem-Grid--default--12 .containerBox.containerBox>div>*{border-bottom-width:12px;border-left:12px solid transparent;border-right:12px solid transparent;border-top-width:12px;box-sizing:border-box}}.aem-Grid.aem-Grid--default--12 .containerBox.containerBox .ergo-adhop__button__component .ergo-adhop__button:not(.ergo-adhop__agencyRatingHorizontal__ratings__cta):not(.slick-arrow){width:100%}@media screen and (min-width:480px){.aem-Grid.aem-Grid--default--12 .containerBox.containerBox .ergo-adhop__button__component .ergo-adhop__button:not(.ergo-adhop__agencyRatingHorizontal__ratings__cta):not(.slick-arrow){width:auto}}.aem-Grid.aem-Grid--default--12 .containerBox.agency-rating-wrapper>div{margin-left:calc(50% - 50vw);max-width:100vw;padding-left:24px;padding-right:24px;width:100vw}.aem-Grid.aem-Grid--default--12 .containerBox.agency-rating-wrapper>div>.containerBox{margin:0 auto;max-width:1440px;min-width:0;width:100%}.aem-Grid.aem-Grid--default--12 .containerBox.agency-rating-wrapper>div>.containerBox>div{display:flex;flex-wrap:wrap;width:100%}@media screen and (min-width:768px){.aem-Grid.aem-Grid--default--12 .containerBox.agency-rating-wrapper>div>.containerBox>div{flex-direction:row;justify-content:center;width:calc(100% + 24px)}}.aem-Grid.aem-Grid--default--12 .containerBox.agency-rating-wrapper>div>.containerBox>div>.agencyRating{border:0;padding-bottom:25px;padding-top:25px;width:100%}@media screen and (min-width:768px){.aem-Grid.aem-Grid--default--12 .containerBox.agency-rating-wrapper>div>.containerBox>div>.agencyRating{max-width:33.3333333333%;padding:0 25px}}.aem-Grid.aem-Grid--default--12 .containerBox.agency-rating-wrapper>div>.containerBox>div>.agencyRating+.agencyRating{border-top:1px solid var(--theme-light-gray,#d9d9d9)}@media screen and (min-width:768px){.aem-Grid.aem-Grid--default--12 .containerBox.agency-rating-wrapper>div>.containerBox>div>.agencyRating+.agencyRating{border-left:1px solid var(--theme-light-gray,#d9d9d9);border-top:0}.aem-Grid.aem-Grid--default--12 .containerBox.agency-rating-wrapper>div>.containerBox>div>.agencyRating .ergo-adhop__agency-rating{height:100%}}.aem-Grid.aem-Grid--default--12 .containerBox.agency-rating-wrapper .ergo-adhop__headline{margin:0 auto;max-width:1440px;width:100%}@media screen and (max-width:767px){.aem-Grid.aem-Grid--default--12 .containerBox.agency-rating-wrapper .ergo-adhop__headline{text-align:left}}.ergo-adhop__corporateLogo{display:inline-flex;position:relative}.ergo-adhop__corporateLogo .ergo-adhop__button__component{display:inherit}.ergo-adhop__corporateLogo img{height:15px;width:60px}@media screen and (min-width:768px){.ergo-adhop__corporateLogo img{height:20px;width:80px}}.ergo-adhop__corporateLogos{align-items:center;display:flex;flex-wrap:wrap;gap:23px;margin:0 auto 24px;max-width:1440px;padding:24px;width:100%}@media screen and (min-width:768px){.ergo-adhop__corporateLogos{gap:30px}}.ergo-adhop__corporateLogos .ergo-adhop__corporateLogos__legal-notice{color:var(--theme-black,#000);font-size:10px;line-height:1.5;margin-left:auto}.ergo-adhop__description .ergo-adhop__headline{margin-bottom:30px}@media screen and (min-width:768px){.ergo-adhop__description .ergo-adhop__headline{margin-bottom:45px}}.ergo-adhop__description .ergo-adhop__headline h2{margin-bottom:0}.ergo-adhop__description p{margin:0;white-space:pre-wrap}.ergo-adhop__description .ergo-adhop__description__email__wrapper{margin-top:50px}@media screen and (min-width:768px){.ergo-adhop__description .ergo-adhop__description__email__wrapper{margin-top:30px}}.ergo-adhop__description .ergo-adhop__description__email__label{display:block;font-weight:700}.ergo-adhop__description .ergo-adhop__button.ergo-adhop__button--text-link{font-weight:400}@media screen and (min-width:768px){.ergo-adhop__description .ergo-adhop__button.ergo-adhop__button--text-link{font-size:16px;line-height:24px}}.ergo-adhop__ekiLegal{font-size:16px;line-height:24px;padding-bottom:8px;padding-top:32px}@media screen and (min-width:768px){.ergo-adhop__ekiLegal{padding-left:24px;padding-right:24px}}.aem-AuthorLayer-Edit .ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm__step{margin-top:30px}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__counter{margin-bottom:24px}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__counter span{color:var(--theme-dark-gray,#aeaeae)}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__icon{display:flex}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__icon .react-svg-icon{margin-right:12px;padding-top:1px}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__icon p{flex:1}.ergo-adhop__ekiLegal p.ergo-adhop__ekiLegal__txt{display:block;font-size:16px;line-height:24px;margin-bottom:24px;margin-top:0}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm__step strong,.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__download__step strong{display:block;margin-bottom:8px}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm{margin-bottom:24px}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm label{cursor:pointer;padding-left:30px;position:relative}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm label>span{display:inline-flex;max-width:calc(100% - 30px)}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm label>span::-moz-selection{background-color:initial}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm label>span::selection{background-color:initial}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm label>span:after,.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm label>span:before{content:"";display:block;left:0;position:absolute;top:0}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm label>span:before{background-color:initial;border:1px solid #318187;border-radius:4px;height:16px;transition:background-color .3s ease-in-out;width:16px}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm label>span:after{background:transparent;border:1px solid var(--theme-white,#fff);border-right:0;border-top:0;height:5px;left:4px;opacity:0;top:4px;transform:rotate(-45deg);transition:visibility .3s ease-in-out,opacity .3s ease-in-out;visibility:hidden;width:9px}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm label>span span{display:inline-block}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm input[type=checkbox]{display:none}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm input[type=checkbox]:checked+span:before{background-color:#318187}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__confirm input[type=checkbox]:checked+span:after{opacity:1;visibility:visible}.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__cta__wrapper{padding-top:16px;text-align:center}@media screen and (min-width:768px){.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__cta__wrapper{padding-top:32px;text-align:right}}@media screen and (max-width:768px){.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__cta__wrapper .ergo-adhop__button{width:100%}}@media screen and (min-width:768px){.ergo-adhop__ekiLegal .ergo-adhop__ekiLegal__cta__wrapper .ergo-adhop__button{margin-right:-10px}}.ergo-adhop__ekomiSeals__headline{font-size:18px;grid-area:headline;line-height:23px;text-align:center}@media (min-width:768px){.ergo-adhop__ekomiSeals__headline{font-size:20px;line-height:26px}}.ergo-adhop__ekomiSeals__wrapper{display:flex;flex-wrap:wrap;gap:24px;justify-content:center}.ergo-adhop__ekomiSeals__rating{flex:0 0 412px;max-width:100%;text-align:left}.ergo-adhop__ekomiSeals__rating-seal{display:flex;gap:16px;margin-bottom:0;margin-right:21px}@media (max-width:479px){.ergo-adhop__ekomiSeals__rating-seal{align-items:center;flex-direction:column;text-align:center}}.ergo-adhop__ekomiSeals__rating-seal__container-text{font-size:12px;line-height:18px}@media (max-width:479px){.ergo-adhop__ekomiSeals__rating .ergo-adhop__ratingStars{justify-content:center}}.ergo-adhop__ekomiSeals__rating .ergo-adhop__ratingStars__stars__text-rating{font-size:26px}.ergo-adhop__ekomiSeals__seals{display:flex;gap:24px;justify-content:center}.ergo-adhop__ekomiSeals__seals img{width:170px}.ergo-adhop__ekomiSeals__cta{font-size:14px}.ergo-adhop__ekomiSeals__cta a{color:var(--theme-primary,#8e0038);text-decoration:none}@media (max-width:479px){.ergo-adhop__ekomiSeals{padding-left:24px;padding-right:24px}}.featuredProducts__content__wrapper{margin-left:calc(50% - 50vw);max-width:100vw;width:100vw}.featuredProducts__content{align-items:center;display:flex;flex-flow:column wrap;gap:24px;justify-content:center;padding-left:16px;padding-right:16px}@media screen and (min-width:768px){.featuredProducts__content{align-items:normal;flex-direction:row;margin:0 auto;max-width:1182px;padding:0}}.featuredProducts__content>div,.featuredProducts__content>div>div{max-width:378px;width:100%}@media screen and (min-width:768px){.featuredProducts__content .ergo-adhop__featured-product-teaser,.featuredProducts__content .ergo-adhop__featuredProductTeaser,.featuredProducts__content .ergo-adhop__featuredProductTeaser div[data-theme],.featuredProducts__content .ergo-adhop__featuredProductTeaser div[data-theme]>div{height:100%}}.ergo-adhop__featuredProductTeaser{background-color:var(--theme-white,#fff);border-radius:4px;box-shadow:0 2px 3px 0 rgba(var(--theme-black-rgb),.15);transition:box-shadow .3s;width:100%}@media screen and (min-width:768px){.ergo-adhop__featuredProductTeaser{max-width:378px;min-height:448px}}.ergo-adhop__featuredProductTeaser:hover{box-shadow:0 10px 22px 2px rgba(var(--theme-black-rgb),.25)}.ergo-adhop__featuredProductTeaser .ergo-adhop__button__component{height:100%;position:relative;width:100%}.ergo-adhop__featuredProductTeaser .ergo-adhop__button__component .ergo-adhop__button.ergo-adhop__button--text-link{align-items:flex-start;color:var(--theme-darkest-gray,#333);display:flex;flex-flow:column wrap;font-weight:400;height:100%;width:100%}.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__image{aspect-ratio:3/2;margin:0;max-height:252px;overflow:visible;position:relative;width:100%}.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__image img{aspect-ratio:3/2;border-radius:4px 4px 0 0;height:100%;object-fit:cover;width:100%}.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__best_deal{border-radius:4px 0;color:var(--theme-white,#fff);display:inline-flex;font-size:12px;font-weight:700;left:0;line-height:12px;padding:5px 12px;position:absolute;top:0;z-index:1}@media screen and (min-width:768px){.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__best_deal{font-size:14px;line-height:14px}}.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__content{padding:24px;width:100%}@media screen and (min-width:768px){.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__content{display:flex;flex:1;flex-flow:column wrap;height:calc(100% - 252px);justify-content:space-between;min-height:201px;padding:32px}}.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__content .ergo-adhop__button__component{margin-top:34px}.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__headline{display:block;font-size:18px;font-weight:700;-webkit-hyphens:auto;hyphens:auto;line-height:23px;margin:0 0 16px;overflow-wrap:break-word;text-align:left;word-break:break-word}@media screen and (min-width:768px){.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__headline{font-size:20px;line-height:27px;margin-bottom:24px}}.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__description{display:none;margin:0}@media screen and (min-width:768px){.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__description{display:block;font-size:16px;line-height:24px;text-align:left}}.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__price__wrapper{align-items:baseline;display:flex;flex-wrap:wrap}@media screen and (min-width:768px){.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__price__wrapper{padding-top:18px}}.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__price__wrapper .ergo-adhop__featuredProductTeaser__price,.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__price__wrapper .ergo-adhop__featuredProductTeaser__price__text{display:inline-flex}.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__price__wrapper .ergo-adhop__featuredProductTeaser__price:not(:last-child),.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__price__wrapper .ergo-adhop__featuredProductTeaser__price__text:not(:last-child){margin-right:8px}@media screen and (min-width:768px){.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__price__wrapper .ergo-adhop__featuredProductTeaser__price:not(:last-child),.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__price__wrapper .ergo-adhop__featuredProductTeaser__price__text:not(:last-child){margin-right:6px}}.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__price__wrapper .ergo-adhop__featuredProductTeaser__price__text{font-size:14px;line-height:20px}@media screen and (min-width:768px){.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__price__wrapper .ergo-adhop__featuredProductTeaser__price__text{font-size:16px;line-height:24px}}.ergo-adhop__featuredProductTeaser .ergo-adhop__featuredProductTeaser__price__wrapper .ergo-adhop__featuredProductTeaser__price{font-size:28px;font-weight:700;line-height:36px}.ergo-adhop__firstContactInfo .ergo-adhop__firstContactInfo__headline{color:var(--theme-darkest-gray,#333);display:block;font-size:18px;font-weight:700;line-height:27px;margin:10px 0 30px;text-align:center}@media screen and (min-width:768px){.ergo-adhop__firstContactInfo .ergo-adhop__firstContactInfo__headline{font-size:24px;line-height:40px;margin-bottom:35px;text-align:left}}.ergo-adhop__firstContactInfo .adhop__team-employee-tile{align-items:center;display:flex;flex-flow:column wrap;margin:0 0 25px;padding:0;width:auto}@media screen and (min-width:768px){.ergo-adhop__firstContactInfo .adhop__team-employee-tile{flex-direction:row}}.ergo-adhop__firstContactInfo .adhop__team-employee-tile__description.adhop__team-employee-tile__description{align-self:flex-start;display:block;margin-top:34px;text-align:left}@media screen and (min-width:768px){.ergo-adhop__firstContactInfo .adhop__team-employee-tile__description.adhop__team-employee-tile__description{align-self:center;margin-left:44px;margin-top:0}}.ergo-adhop__firstContactInfo .adhop__team-employee-tile__description.adhop__team-employee-tile__description .ergo-adhop__button--text-link{font-size:14px;line-height:26px}@media screen and (min-width:768px){.ergo-adhop__firstContactInfo .adhop__team-employee-tile__description.adhop__team-employee-tile__description .ergo-adhop__button--text-link{font-size:16px;line-height:29px}}.ergo-adhop__firstContactInfo .adhop__team-employee-tile__description.adhop__team-employee-tile__description div>span,.ergo-adhop__firstContactInfo .adhop__team-employee-tile__description.adhop__team-employee-tile__description p{color:var(--theme-darkest-gray,#333);font-size:14px;line-height:26px}@media screen and (min-width:768px){.ergo-adhop__firstContactInfo .adhop__team-employee-tile__description.adhop__team-employee-tile__description div>span,.ergo-adhop__firstContactInfo .adhop__team-employee-tile__description.adhop__team-employee-tile__description p{font-size:16px;line-height:29px}}.ergo-adhop__firstContactInfo .adhop__team-employee-tile__description.adhop__team-employee-tile__description div>span.adhop__team-employee-tile__name,.ergo-adhop__firstContactInfo .adhop__team-employee-tile__description.adhop__team-employee-tile__description p.adhop__team-employee-tile__name{font-size:18px;line-height:24px}.ergo-adhop__firstContactInfo .adhop__team-employee-tile__picture.adhop__team-employee-tile__picture{margin-bottom:0}.ergo-adhop__firstContactInfo .adhop__team-employee-tile__contact.adhop__team-employee-tile__contact{margin-top:0}@media screen and (min-width:768px){.ergo-adhop__focus{margin:0 -12px}}.ergo-adhop__focus .ergo-adhop__focus__wrapper{display:flex;flex-wrap:wrap;padding:24px 0;width:100%}@media screen and (min-width:768px){.ergo-adhop__focus .ergo-adhop__focus__wrapper{padding:0}.ergo-adhop__focus .ergo-adhop__focus__content__left,.ergo-adhop__focus .ergo-adhop__focus__content__right{padding:0 12px}}.ergo-adhop__focus .ergo-adhop__focus__content__right{display:none}@media screen and (min-width:768px){.ergo-adhop__focus .ergo-adhop__focus__content__right{display:block;width:58%}}.ergo-adhop__focus .ergo-adhop__focus__content__left{width:100%}@media screen and (min-width:768px){.ergo-adhop__focus .ergo-adhop__focus__content__left{align-self:center;padding:24px 12px;width:42%}}.ergo-adhop__focus .ergo-adhop__focus__headline{font-size:20px;line-height:30px;margin:0 0 20px}@media screen and (min-width:768px){.ergo-adhop__focus .ergo-adhop__focus__headline{font-size:24px;line-height:40px;margin-bottom:40px}}.ergo-adhop__focus .ergo-adhop__focus__image{height:100%}.ergo-adhop__focus .ergo-adhop__focus__image img{height:100%;object-fit:cover;width:100%}.ergo-adhop__footerColumn{width:100%}@media screen and (min-width:768px){.ergo-adhop__footerColumn{width:25%}}.ergo-adhop__footerColumn:empty{display:none}@media screen and (min-width:768px){.ergo-adhop__footerColumn:nth-child(3){width:calc(50% - 20px)}}.ergo-adhop__footerColumn:nth-child(3) .ergo-adhop__footerColumn__links{display:flex;flex-wrap:wrap;justify-content:space-between}@media screen and (min-width:480px){.ergo-adhop__footerColumn:nth-child(3) .ergo-adhop__footerColumn__links{gap:0 10px}}.ergo-adhop__footerColumn:nth-child(3) .ergo-adhop__footerColumn__links .ergo-adhop__footerColumn__links__item{width:100%}@media screen and (min-width:480px){.ergo-adhop__footerColumn:nth-child(3) .ergo-adhop__footerColumn__links .ergo-adhop__footerColumn__links__item{width:calc(50% - 5px)}}.ergo-adhop__footerColumn .ergo-adhop__footerColumn__header{display:block;font-size:16px;font-weight:700;line-height:32px;padding-bottom:20px;padding-top:20px}@media screen and (min-width:768px){.ergo-adhop__footerColumn .ergo-adhop__footerColumn__header{font-size:20px;line-height:38px;padding-bottom:15px;padding-top:30px}}.ergo-adhop__footerColumn .ergo-adhop__footerColumn__links{list-style:none;margin:0;padding:0}.ergo-adhop__footerColumn .ergo-adhop__footerColumn__links .ergo-adhop__footerColumn__links__item{padding-bottom:4px;padding-top:4px}.ergo-adhop__footerColumn .ergo-adhop__footerColumn__links .ergo-adhop__footerColumn__links__item .ergo-adhop__footerColumn__links__link{color:var(--theme-darkest-gray,#333);font-weight:400;text-align:left;transition:color .3s ease-in-out}.ergo-adhop__footerColumn .ergo-adhop__footerColumn__links .ergo-adhop__footerColumn__links__item .ergo-adhop__footerColumn__links__link:focus,.ergo-adhop__footerColumn .ergo-adhop__footerColumn__links .ergo-adhop__footerColumn__links__item .ergo-adhop__footerColumn__links__link:hover{color:var(--theme-primary,#8e0038)}.ergo-adhop__footerColumns{display:flex;flex-wrap:wrap;gap:10px;margin:48px auto 24px;max-width:1440px;padding-left:24px;padding-right:24px;width:100%}.ergo-adhop__headline{text-align:center;width:100%}.campaigns .ergo-adhop__headline{margin-bottom:15px}@media screen and (min-width:768px){.campaigns .ergo-adhop__headline{margin-bottom:5px}.campaigns .ergo-adhop__headline .ergo-adhop__headline__title{display:inline-flex;max-width:440px}}.contactTeaser .ergo-adhop__headline .ergo-adhop__headline__title{margin-bottom:0}.ergo-adhop__headline .header{color:#5e5b5d;display:block;font-size:12px;font-weight:700;line-height:20px;text-transform:uppercase}@media screen and (min-width:768px){.ergo-adhop__headline .header{font-size:16px;letter-spacing:.75px;line-height:24px}}.ergo-adhop__headline .ergo-adhop__headline__title{color:var(--theme-darkest-gray,#333);display:block;font-size:16px;font-weight:700;line-height:24px;margin-top:8px}@media screen and (min-width:768px){.ergo-adhop__headline .ergo-adhop__headline__title{font-size:24px;line-height:40px}}.ergo-adhop__headline .ergo-adhop__headline__title:only-child{margin-top:0}.ergo-adhop__hotline{display:flex;flex-wrap:wrap;margin:0 auto;max-width:870px;padding-top:30px;width:100%}@media screen and (min-width:768px){.ergo-adhop__hotline{flex-direction:row;padding-top:0}}.ergo-adhop__hotline .ergo-adhop__hotline__content__left,.ergo-adhop__hotline .ergo-adhop__hotline__content__right{width:100%}@media screen and (min-width:768px){.ergo-adhop__hotline .ergo-adhop__hotline__content__left,.ergo-adhop__hotline .ergo-adhop__hotline__content__right{max-width:50%;padding-right:15px}}.ergo-adhop__hotline .ergo-adhop__hotline__content__right{padding-bottom:25px;padding-top:25px}@media screen and (min-width:768px){.ergo-adhop__hotline .ergo-adhop__hotline__content__right{display:flex;flex-flow:column wrap;justify-content:center;padding-left:15px;padding-right:0}}.ergo-adhop__hotline .ergo-adhop__hotline__content__right>:last-child{margin-bottom:0}.ergo-adhop__hotline .ergo-adhop__hotline__image{aspect-ratio:1;height:100%}.ergo-adhop__hotline .ergo-adhop__hotline__image img{aspect-ratio:1;height:100%;object-fit:cover;width:100%}.ergo-adhop__hotline .ergo-adhop__hotline__title{display:block;font-size:20px;font-weight:700;line-height:30px;margin-bottom:15px}@media screen and (min-width:768px){.ergo-adhop__hotline .ergo-adhop__hotline__title{font-size:24px;line-height:40px;margin-bottom:20px}}.ergo-adhop__hotline .ergo-adhop__hotline__description{margin-bottom:24px}.ergo-adhop__hotline .ergo-adhop__hotline__description p{line-height:24px;margin:0}@media screen and (max-width:767px){.ergo-adhop__hotline .ergo-adhop__hotline__description p{font-size:14px;line-height:21px}}.ergo-adhop__hotline .ergo-adhop__hotline__number{display:flex;margin-bottom:20px}.ergo-adhop__hotline .ergo-adhop__hotline__number.primaryNumber svg{height:32px;width:32px}@media screen and (min-width:768px){.ergo-adhop__hotline .ergo-adhop__hotline__number.primaryNumber svg{height:40px;width:40px}}.ergo-adhop__hotline .ergo-adhop__hotline__number.primaryNumber .ergo-adhop__sml__icon__text{font-size:18px;font-weight:700;line-height:27px}@media screen and (min-width:768px){.ergo-adhop__hotline .ergo-adhop__hotline__number.primaryNumber .ergo-adhop__sml__icon__text{font-size:20px;line-height:38px;padding-top:7px}}.ergo-adhop__hotline .ergo-adhop__hotline__number .ergo-adhop__hotline__number__text{margin-left:10px}@media screen and (max-width:767px){.ergo-adhop__hotline .ergo-adhop__hotline__number .ergo-adhop__hotline__number__text{padding-top:2px}}.ergo-adhop__hotline .ergo-adhop__hotline__number svg{height:21px;width:21px}@media screen and (max-width:767px){.ergo-adhop__hotline .ergo-adhop__hotline__location,.ergo-adhop__hotline .ergo-adhop__hotline__number{font-size:14px}}.ergo-adhop__hotline .ergo-adhop__hotline__location{margin-bottom:5px}.ergo-adhop__hotline .ergo-adhop__button{font-weight:400}.react-svg-icon{line-height:0}.react-svg-icon svg{fill:currentColor}.ergo-adhop__iframe{display:flex;min-height:400px;position:relative}.ergo-adhop__iframe:not(.with-pym-iframe) iframe{height:100%}.ergo-adhop__iframe .adhop-ergo__content-loader{height:100%;left:0;position:absolute;top:0;width:100%}.ergo-adhop__iframe .ergo-adhop__iframe__container{position:relative;width:100%}.ergo-adhop__iframe .ergo-adhop__iframe__container iframe{position:relative;transition:height .3s ease-in-out;width:100%}.adhop-ergo__image{display:block;height:auto;max-width:100%}.adhop-ergo__fallback__image{display:block;height:100%;object-fit:cover;width:100%}@keyframes react-loading-skeleton{to{transform:translateX(100%)}}.react-loading-skeleton{--base-color:#ebebeb;--highlight-color:#f5f5f5;--animation-duration:1.5s;--animation-direction:normal;--pseudo-element-display:block;background-color:var(--base-color);border-radius:.25rem;display:inline-flex;line-height:1;overflow:hidden;position:relative;width:100%;z-index:1}.react-loading-skeleton:after{animation-direction:var(--animation-direction);animation-duration:var(--animation-duration);animation-iteration-count:infinite;animation-name:react-loading-skeleton;animation-timing-function:ease-in-out;background-image:linear-gradient(90deg,var(--base-color),var(--highlight-color),var(--base-color));background-repeat:no-repeat;content:" ";display:var(--pseudo-element-display);transform:translateX(-100%)}.adhop-ergo__loader,.react-loading-skeleton:after{height:100%;left:0;position:absolute;right:0;top:0}.adhop-ergo__loader span{display:block;height:100%;width:100%}.ergo-adhop__imageSlider__slide{padding-left:5px;padding-right:5px;width:100%}.ergo-adhop__imageSlider__slide figure{aspect-ratio:16/9;margin:0 auto 24px;max-width:720px;width:100%}@media screen and (min-width:768px){.ergo-adhop__imageSlider__slide figure{margin-bottom:16px}}.ergo-adhop__imageSlider__slide figure img{aspect-ratio:16/9;border-radius:8px;height:100%;width:100%}.ergo-adhop__imageSlider__slide .ergo-adhop__imageSlider__slide__caption{color:#5e5b5d;display:block;font-size:14px;line-height:22px;white-space:pre-wrap}.ergo-adhop__imageSlider .ergo-adhop__imageSlider__counter{color:var(--theme-darkest-gray,#333);display:flex;font-size:14px;justify-content:center;line-height:22px;margin-bottom:24px}@media screen and (min-width:768px){.ergo-adhop__imageSlider .ergo-adhop__imageSlider__counter{margin-bottom:16px}}.ergo-adhop__imageSlider .slick-slider{padding-left:12px;padding-right:12px}@media screen and (min-width:768px){.ergo-adhop__imageSlider .slick-slider{padding-left:19px;padding-right:19px}}.ergo-adhop__imageSlider .slick-next,.ergo-adhop__imageSlider .slick-prev{top:calc(25vw - 24px)}@media screen and (min-width:912px){.ergo-adhop__imageSlider .slick-next,.ergo-adhop__imageSlider .slick-prev{top:202px}}figure{margin:0;overflow:hidden;position:relative}figure picture{display:block;height:100%;width:100%}figure img{display:block;height:auto;max-width:100%}.ergo-adhop__legal-data.bold{font-weight:600}.ergo-adhop__legal-data.vertical .ergo-adhop__legal-data__item{display:block}.ergo-adhop__locationSwitch--narrow .ergo-adhop__locationSwitch__list-container,.ergo-adhop__locationSwitch--narrow .slick-slider,.ergo-adhop__locationSwitch--wide .ergo-adhop__locationSwitch__list-container,.ergo-adhop__locationSwitch--wide .slick-slider,.location-switch .ergo-adhop__locationSwitch__list-container,.location-switch .slick-slider{margin-left:-11px;margin-right:-11px}.ergo-adhop__locationSwitch--narrow .ergo-adhop__modal__closer,.ergo-adhop__locationSwitch--wide .ergo-adhop__modal__closer,.location-switch .ergo-adhop__modal__closer{margin-right:-14px}.ergo-adhop__locationSwitch--narrow .slick-slider .slick-dots,.ergo-adhop__locationSwitch--wide .slick-slider .slick-dots,.location-switch .slick-slider .slick-dots{margin-bottom:10px;margin-top:30px}.ergo-adhop__locationSwitch--narrow .slick-slide,.ergo-adhop__locationSwitch--wide .slick-slide,.location-switch .slick-slide{width:100%}.ergo-adhop__locationSwitch--narrow .slick-slide>div,.ergo-adhop__locationSwitch--wide .slick-slide>div,.location-switch .slick-slide>div{display:flex;height:100%}.ergo-adhop__locationSwitch--narrow .slick-arrow--custom.slick-prev,.ergo-adhop__locationSwitch--wide .slick-arrow--custom.slick-prev,.location-switch .slick-arrow--custom.slick-prev{left:-6px}@media screen and (min-width:912px){.ergo-adhop__locationSwitch--narrow .slick-arrow--custom.slick-prev,.ergo-adhop__locationSwitch--wide .slick-arrow--custom.slick-prev,.location-switch .slick-arrow--custom.slick-prev{left:-12px}}.ergo-adhop__locationSwitch--narrow .slick-arrow--custom.slick-next,.ergo-adhop__locationSwitch--wide .slick-arrow--custom.slick-next,.location-switch .slick-arrow--custom.slick-next{left:calc(100% + 6px)}@media screen and (min-width:912px){.ergo-adhop__locationSwitch--narrow .slick-arrow--custom.slick-next,.ergo-adhop__locationSwitch--wide .slick-arrow--custom.slick-next,.location-switch .slick-arrow--custom.slick-next{left:calc(100% + 12px)}}.ergo-adhop__locationSwitch__image-container{aspect-ratio:1;border-radius:8px;display:inline-flex;flex-wrap:wrap;height:120px;max-width:100%;position:relative;width:120px}@media screen and (min-width:480px){.ergo-adhop__locationSwitch__image-container{height:175px;width:100%}}.ergo-adhop__locationSwitch__image-container img{height:100%;margin:0;object-fit:cover;width:100%}.ergo-adhop__locationSwitch__list-container{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:6px 0 0;row-gap:36px}@media screen and (min-width:480px){.ergo-adhop__locationSwitch__list-container{flex-wrap:nowrap;padding:0 0 24px}}.ergo-adhop__locationSwitch__list-item{background-color:var(--theme-white,#fff);padding:0 12px;width:100%}@media screen and (min-width:480px){.ergo-adhop__locationSwitch__list-item{display:flex;flex-flow:column wrap;flex-grow:1;overflow:hidden}}.slick-slider .ergo-adhop__locationSwitch__list-item{display:flex!important}.ergo-adhop__locationSwitch__list-item .ergo-adhop__button--wrapper{align-items:flex-start;display:flex;flex-wrap:wrap;position:relative;text-align:left}@media screen and (max-width:480px){.ergo-adhop__locationSwitch__list-item .ergo-adhop__button--wrapper.ergo-adhop__button--disabled:before{border:1px solid var(--theme-primary,#8e0038);border-radius:8px;content:"";display:block;height:calc(100% + 6px);left:-4px;position:absolute;top:-4px;width:calc(100% + 6px)}}.ergo-adhop__locationSwitch__description{align-items:center;display:flex;flex-flow:column wrap;justify-content:space-between;max-width:calc(100% - 120px);padding-left:16px;width:100vw}@media screen and (min-width:480px){.ergo-adhop__locationSwitch__description{height:calc(100% - 175px);max-width:100%;padding-left:0;text-align:center}}.ergo-adhop__locationSwitch__description address{color:var(--theme-darkest-gray,#333);font-style:normal;padding-top:4px;width:100%}@media screen and (min-width:480px){.ergo-adhop__locationSwitch__description address{margin:25px 0;padding-top:0}}.ergo-adhop__locationSwitch__description p{font-size:14px;line-height:22px;margin-bottom:0}@media screen and (max-width:480px){.ergo-adhop__locationSwitch__description p{margin-top:5px}}@media screen and (min-width:480px){.ergo-adhop__locationSwitch__description p{font-size:16px}}.ergo-adhop__locationSwitch__description h4{font-size:18px;margin:0}.ergo-adhop__locationSwitch--with-carousel .ergo-adhop__modal__dialog.ergo-adhop__modal__dialog{max-width:100%;width:100%}.ergo-adhop__locationSwitch--with-carousel .ergo-adhop__modal__dialog.ergo-adhop__modal__dialog .ergo-adhop__modal__body{padding-left:64px;padding-right:64px}@media screen and (min-width:768px){.ergo-adhop__locationSwitch--narrow .ergo-adhop__modal__dialog.ergo-adhop__modal__dialog,.ergo-adhop__locationSwitch--wide .ergo-adhop__modal__dialog.ergo-adhop__modal__dialog{width:568px}.ergo-adhop__locationSwitch--narrow .ergo-adhop__locationSwitch__list-container,.ergo-adhop__locationSwitch--wide .ergo-adhop__locationSwitch__list-container{width:544px}.ergo-adhop__locationSwitch--narrow.ergo-adhop__locationSwitch--with-carousel .ergo-adhop__modal__dialog.ergo-adhop__modal__dialog,.ergo-adhop__locationSwitch--wide.ergo-adhop__locationSwitch--with-carousel .ergo-adhop__modal__dialog.ergo-adhop__modal__dialog{max-width:728px;width:728px}.ergo-adhop__locationSwitch--narrow.ergo-adhop__locationSwitch--with-carousel .ergo-adhop__locationSwitch__description,.ergo-adhop__locationSwitch--narrow.ergo-adhop__locationSwitch--with-carousel .ergo-adhop__locationSwitch__image-container,.ergo-adhop__locationSwitch--wide.ergo-adhop__locationSwitch--with-carousel .ergo-adhop__locationSwitch__description,.ergo-adhop__locationSwitch--wide.ergo-adhop__locationSwitch--with-carousel .ergo-adhop__locationSwitch__image-container{max-width:270px}.ergo-adhop__locationSwitch__image-container{height:140px}.ergo-adhop__locationSwitch__description{height:calc(100% - 140px)}}@media screen and (min-width:912px){.ergo-adhop__locationSwitch--narrow .ergo-adhop__modal__dialog.ergo-adhop__modal__dialog{width:588px}.ergo-adhop__locationSwitch--narrow .ergo-adhop__locationSwitch__list-container{width:564px}.ergo-adhop__locationSwitch--wide .ergo-adhop__modal__dialog.ergo-adhop__modal__dialog{width:870px}.ergo-adhop__locationSwitch--wide .ergo-adhop__locationSwitch__list-container{width:846px}.ergo-adhop__locationSwitch--wide.ergo-adhop__locationSwitch--with-carousel .ergo-adhop__modal__dialog.ergo-adhop__modal__dialog{max-width:832px;width:832px}.ergo-adhop__locationSwitch--wide.ergo-adhop__locationSwitch--with-carousel .ergo-adhop__locationSwitch__description,.ergo-adhop__locationSwitch--wide.ergo-adhop__locationSwitch--with-carousel .ergo-adhop__locationSwitch__image-container{max-width:314px}.ergo-adhop__locationSwitch__image-container{height:164px}.ergo-adhop__locationSwitch__description{height:calc(100% - 164px)}}@media screen and (min-width:1152px){.ergo-adhop__locationSwitch--narrow .ergo-adhop__modal__dialog.ergo-adhop__modal__dialog{width:652px}.ergo-adhop__locationSwitch--narrow .ergo-adhop__locationSwitch__list-container{width:628px}.ergo-adhop__locationSwitch--wide .ergo-adhop__modal__dialog.ergo-adhop__modal__dialog{width:966px}.ergo-adhop__locationSwitch--wide .ergo-adhop__locationSwitch__list-container{width:942px}.ergo-adhop__locationSwitch--wide.ergo-adhop__locationSwitch--with-carousel .ergo-adhop__modal__dialog.ergo-adhop__modal__dialog{max-width:1076px;width:1076px}.ergo-adhop__locationSwitch--wide.ergo-adhop__locationSwitch--with-carousel .ergo-adhop__locationSwitch__description,.ergo-adhop__locationSwitch--wide.ergo-adhop__locationSwitch--with-carousel .ergo-adhop__locationSwitch__image-container{max-width:283px}}.ergo-adhop__megaFooter{display:none;margin:10px auto 0;max-width:1440px;padding-left:24px;padding-right:24px;width:100%}.aem-AuthorLayer-Preview .ergo-adhop__megaFooter{display:none}.ergo-adhop__modal .ergo-adhop__megaFooter{display:block;padding:0}.ergo-adhop__megaFooter .ergo-adhop__megaFooter__links{-moz-column-count:1;column-count:1;-moz-column-gap:20px;column-gap:20px;list-style:none;margin:0;padding:0}@media screen and (min-width:480px){.ergo-adhop__megaFooter .ergo-adhop__megaFooter__links{-moz-column-count:2;column-count:2}}@media screen and (min-width:768px){.ergo-adhop__megaFooter .ergo-adhop__megaFooter__links{-moz-column-count:4;column-count:4}}.ergo-adhop__megaFooter .ergo-adhop__megaFooter__links .ergo-adhop__megaFooter__links__item{margin-bottom:0;padding:10px 0}.ergo-adhop__megaFooter .ergo-adhop__megaFooter__links .ergo-adhop__button__component{line-height:1}.ergo-adhop__megaFooter .ergo-adhop__megaFooter__links .ergo-adhop__button__component .ergo-adhop__button.ergo-adhop__button--text-link{color:var(--theme-darkest-gray,#333);font-size:14px;font-weight:400;line-height:20px;text-align:left;text-decoration:none;transition:color .3s ease-in-out}.ergo-adhop__megaFooter .ergo-adhop__megaFooter__links .ergo-adhop__button__component .ergo-adhop__button.ergo-adhop__button--text-link:focus,.ergo-adhop__megaFooter .ergo-adhop__megaFooter__links .ergo-adhop__button__component .ergo-adhop__button.ergo-adhop__button--text-link:hover{color:var(--theme-primary,#8e0038)}.ergo-adhop__modal{background-color:rgba(var(--theme-black-rgb),.4);display:none;height:100%;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:10000}.ergo-adhop__modal.ergo-adhop__modal-show{display:flex}@media screen and (max-width:480px){.ergo-adhop__modal.otb-modal{padding:0}.ergo-adhop__modal.otb-modal .ergo-adhop__modal__content{padding-left:0;padding-right:0}}.ergo-adhop__modal .ergo-adhop__modal__dialog__wrapper{display:flex;flex:1;height:100%;max-width:100%}.ergo-adhop__modal .ergo-adhop__modal__dialog{align-items:center;display:flex;flex-direction:column;justify-content:center;margin:auto;max-height:100%;max-width:968px;width:100%}.ergo-adhop__modal .ergo-adhop__modal__content{background-color:var(--theme-white,#fff);border:1px solid #c9c5c7;border-radius:0 0 8px 8px;border-top:0;overflow:auto;padding:0 16px 24px;width:100%}@media screen and (min-width:912px){.ergo-adhop__modal .ergo-adhop__modal__content{padding-left:24px;padding-right:24px}}.ergo-adhop__modal .ergo-adhop__modal__header{align-items:center;background-color:var(--theme-white,#fff);border:1px solid #c9c5c7;border-bottom:0;border-radius:8px 8px 0 0;display:flex;flex-wrap:wrap;justify-content:flex-end;padding:24px 16px 15px;position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:1}@media screen and (min-width:912px){.ergo-adhop__modal .ergo-adhop__modal__header{padding:24px 24px 20px}}.ergo-adhop__modal .ergo-adhop__modal__header .ergo-adhop__modal__title{color:var(--theme-darkest-gray,#333);flex:1;font-size:18px;font-weight:700;line-height:27px;padding-right:20px}@media screen and (min-width:912px){.ergo-adhop__modal .ergo-adhop__modal__header .ergo-adhop__modal__title{font-size:20px;line-height:30px}}.ergo-adhop__modal .ergo-adhop__modal__header .ergo-adhop__button.ergo-adhop__modal__closer{color:var(--theme-darkest-gray,#333)}.ergo-adhop__navigation__links{align-items:stretch;display:flex;flex-direction:column;list-style:none;list-style-type:none;margin:0;padding:0;row-gap:16px}.ergo-adhop__navigation__links:after{background:var(--theme-light-gray,#d9d9d9);content:"";display:block;height:1px;margin:24px -24px;width:100vw}@media screen and (min-width:1152px){.ergo-adhop__navigation__links:after{display:none}}.ergo-adhop__navigation__links .ergo-adhop__navigation__links{display:none;position:static;width:100%}@media screen and (min-width:1152px){.ergo-adhop__navigation__links .ergo-adhop__navigation__links{inset:0 0 auto auto;position:absolute;width:calc(50% - 16px)}}.ergo-adhop__navigation__links .ergo-adhop__navigation__links:after{display:none}@media screen and (min-width:1152px){.ergo-adhop__navigation__links.ergo-adhop__navigation__links--level-1{position:static;width:100%}.ergo-adhop__navigation__links.ergo-adhop__navigation__links--level-1>.ergo-adhop__navigation__item{display:none}.ergo-adhop__navigation__links.ergo-adhop__navigation__links--level-1>.ergo-adhop__navigation__item.ergo-adhop__navigation__item--is-open,.ergo-adhop__navigation__links.ergo-adhop__navigation__links--level-1>.ergo-adhop__navigation__item:has(.ergo-adhop__navigation__item--is-open){display:block}.ergo-adhop__navigation__links.ergo-adhop__navigation__links--level-1>.ergo-adhop__navigation__item>.ergo-adhop__button__component{display:none}.ergo-adhop__navigation__links.ergo-adhop__navigation__links--level-2{position:static}}@media screen and (min-width:1152px){.ergo-adhop__navigation__links.ergo-adhop__navigation__links--level-2:has(.ergo-adhop__navigation__item--is-open){display:flex}}@media screen and (min-width:1152px){.ergo-adhop__navigation__links.ergo-adhop__navigation__links--level-3{display:none}.ergo-adhop__navigation__links .ergo-adhop__navigation__item.ergo-adhop__navigation__item--contact,.ergo-adhop__navigation__links .ergo-adhop__navigation__item.ergo-adhop__navigation__item--contact>.ergo-adhop__navigation__links{display:flex;width:100%}}@media screen and (max-width:1151px){.ergo-adhop__navigation__links:has(>.ergo-adhop__navigation__item--is-open)>.ergo-adhop__navigation__item:not(.ergo-adhop__navigation__item--is-open){display:none}.ergo-adhop__navigation__links:has(>.ergo-adhop__navigation__item--is-open .ergo-adhop__navigation__item--is-open)>.ergo-adhop__navigation__item>.ergo-adhop__button__component{display:none}.ergo-adhop__navigation__links>.ergo-adhop__navigation__item--is-open>.ergo-adhop__button__component .ergo-adhop__button{flex-direction:row-reverse;justify-content:flex-end;margin-bottom:16px}.ergo-adhop__navigation__links>.ergo-adhop__navigation__item--is-open>.ergo-adhop__button__component .ergo-adhop__button__text{font-weight:700}.ergo-adhop__navigation__links>.ergo-adhop__navigation__item--is-open>.ergo-adhop__button__component .react-svg-icon{transform:scaleX(-1)}}.ergo-adhop__navigation__item--is-open>.ergo-adhop__navigation__links{display:flex}.ergo-adhop__navigation__links .ergo-adhop__button.ergo-adhop__navigation__link{background-color:initial;border-radius:8px;color:var(--theme-darkest-gray,#333);display:flex;flex-direction:row;font-size:16px;font-weight:400;justify-content:space-between;letter-spacing:.16px;line-height:1.5;margin:0;min-height:48px;padding:12px 16px;text-align:left;text-decoration:none;transition:background-color .2s;width:100%}@media screen and (min-width:1152px){.ergo-adhop__navigation__links .ergo-adhop__button.ergo-adhop__navigation__link{margin-left:2px;padding-right:22px}}@media (prefers-reduced-motion:reduce){.ergo-adhop__navigation__links .ergo-adhop__button.ergo-adhop__navigation__link{transition:none}}@media screen and (min-width:1152px){.ergo-adhop__navigation__links .ergo-adhop__button.ergo-adhop__navigation__link.ergo-adhop__navigation__link--is-active,.ergo-adhop__navigation__links .ergo-adhop__button.ergo-adhop__navigation__link:hover{background:var(--theme-primary-light,#fbf4f4);color:var(--theme-primary,#8e0038)}}.ergo-adhop__navigation__links .ergo-adhop__button.ergo-adhop__navigation__link:after{display:none}.ergo-adhop__navigation__links .ergo-adhop__button.ergo-adhop__navigation__link:focus-visible{background:var(--theme-primary-light,#fbf4f4);color:var(--theme-primary,#8e0038);outline:2px solid var(--theme-black,#000);outline-offset:-2px;text-decoration:none}.ergo-adhop__navigation__links .ergo-adhop__button.ergo-adhop__navigation__link .react-svg-icon{order:1}.ergo-adhop__navigation__links .ergo-adhop__button.ergo-adhop__navigation__link .react-svg-icon svg{height:12px;width:12px}.ergo-adhop__navigation__links .ergo-adhop__navigation__item{margin:0;padding:0;width:100%}.ergo-adhop__navigation__flyout{background-color:rgba(var(--theme-black-rgb),0);display:none;inset:73px 0 100%;overflow:hidden;overscroll-behavior:contain;position:fixed;transition:background-color .3s ease .15s;z-index:9999}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout{top:var(--desktop-header-height,122px)}}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--is-open{background-color:rgba(var(--theme-black-rgb),.8);bottom:0;display:block;transition-delay:0s}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--is-open .ergo-adhop__navigation__flyout__content{transform:translateZ(0)}@media screen and (max-width:1151px){.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--is-open .ergo-adhop__navigation__flyout__content{padding-bottom:64px}}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--is-open .ergo-adhop__navigation__flyout__content{height:auto}}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-navigation .ergo-adhop__navigation__flyout__agency-flyout{display:none}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-contact .ergo-adhop__navigation__flyout__content{grid-template-areas:"first first first" "links agency teasers"}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-contact .ergo-adhop__navigation__flyout__navigation{grid-area:links}}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-contact .ergo-adhop__navigation__flyout__agency-flyout.ergo-adhop__navigation__flyout--is-on-contact-panel{max-width:480px}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-contact .ergo-adhop__navigation__flyout__agency-flyout.ergo-adhop__navigation__flyout--is-on-contact-panel{display:block;grid-area:agency}}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-contact .ergo-adhop__navigation__flyout__agency-flyout.ergo-adhop__navigation__flyout--is-on-contact-panel .ergo-adhop__agencyFlyout{display:block}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-contact .ergo-adhop__navigation__flyout__agency-flyout.ergo-adhop__navigation__flyout--is-on-teasers-slot{grid-area:teasers}}.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__content{background:var(--theme-white,#fff);border-image:conic-gradient(#fff 0 0) fill 0/0/0 100vw;display:flex;flex-direction:column;height:100%;inset:73px 0 auto;justify-content:space-between;margin:0 auto;max-width:100vw;max-width:1440px;min-height:calc(100vh - 73px);min-width:200px;overflow:auto;position:fixed;transform:translate3d(-100%,0,0);width:100%}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__content{background-color:#fff;-moz-column-gap:32px;column-gap:32px;display:grid;grid-template-areas:"first first first" "second second teasers";grid-template-columns:1fr 1fr 1fr;grid-template-rows:64px auto;max-height:calc(98vh - var(--desktop-header-height, 122px));min-height:unset;padding:32px 24px;row-gap:24px;top:var(--desktop-header-height,122px)}}.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__header{display:none}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__header{align-items:center;background:transparent;color:var(--theme-darkest-gray,#333);display:flex;gap:16px;grid-area:first;height:72px;height:100%;justify-content:flex-start;padding:0;width:100%}}.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__header .ergo-adhop__navigation__flyout__header__title{font-size:14px;font-weight:700;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__header .ergo-adhop__navigation__flyout__header__title{flex:1 0;font-size:18px;line-height:1.444;padding-left:18px}}.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__header .ergo-adhop__button__component{height:100%}.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__header .ergo-adhop__button__component .ergo-adhop__button.ergo-adhop__button--text-link{color:inherit;font-size:16px;height:100%;line-height:16px;width:auto}.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__header .ergo-adhop__button__component .ergo-adhop__button.ergo-adhop__button--text-link.ergo-adhop__navigation__flyout__closer{border-radius:8px;font-size:10px;margin-right:18px}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__header .ergo-adhop__button__component .ergo-adhop__button.ergo-adhop__button--text-link.ergo-adhop__navigation__flyout__closer{font-size:12px;gap:6px;letter-spacing:0;margin-right:0;margin-top:4px;white-space:nowrap}}.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__header .ergo-adhop__button__component .ergo-adhop__button.ergo-adhop__button--text-link.ergo-adhop__navigation__flyout__closer:focus-visible{background:var(--theme-primary-light,#fbf4f4);color:var(--theme-primary,#8e0038);outline:2px solid var(--theme-black,#000);outline-offset:-2px;text-decoration:none}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__header .ergo-adhop__button__component .ergo-adhop__button.ergo-adhop__button--text-link.ergo-adhop__navigation__flyout__closer .react-svg-icon,.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__header .ergo-adhop__button__component .ergo-adhop__button.ergo-adhop__button--text-link.ergo-adhop__navigation__flyout__closer .react-svg-icon svg{height:20px;width:20px}.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__header .ergo-adhop__navigation__flyout__back{display:none}.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__header .ergo-adhop__button.ergo-adhop__button.ergo-adhop__navigation__flyout__closer{align-items:center;display:flex;flex-direction:column;font-size:12px;font-weight:400;gap:4px;height:60px;padding:4px;width:60px;word-wrap:normal;box-sizing:border-box;word-break:unset}}.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__navigation{flex:1 0;grid-area:second;padding:28px 24px 32px;position:relative}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__navigation{flex:unset;padding:0}}.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__teasers{grid-area:teasers;position:relative}@media screen and (max-width:1151px){.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__teasers{padding-bottom:24px}}.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__teasers:empty{display:none}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout .ergo-adhop__navigation__flyout__action-items{display:none}}.ergo-adhop__navigation__flyout .ergo-adhop__navigationActionItem .ergo-adhop__button.ergo-adhop__navigationActionItem__button{flex-direction:row;font-size:16px;font-weight:400;gap:10px;justify-content:flex-start;line-height:16px;padding:17px 48px 17px 32px;transition:color .3s ease-in-out,background-color .3s ease-in-out;width:100%}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout .ergo-adhop__navigationActionItem .ergo-adhop__button.ergo-adhop__navigationActionItem__button{font-size:16px;line-height:16px;padding-bottom:16px;padding-top:16px}}.ergo-adhop__navigation__flyout .ergo-adhop__navigationActionItem .ergo-adhop__button.ergo-adhop__navigationActionItem__button:focus,.ergo-adhop__navigation__flyout .ergo-adhop__navigationActionItem .ergo-adhop__button.ergo-adhop__navigationActionItem__button:hover{background:var(--theme-lightest-gray,#f2f2f2);color:var(--theme-primary,#8e0038)}.ergo-adhop__navigation__flyout .ergo-adhop__navigationActionItem{display:block;margin:0}@media screen and (max-width:1151px){.ergo-adhop__navigation__flyout .ergo-adhop__navigationActionItem:active,.ergo-adhop__navigation__flyout .ergo-adhop__navigationActionItem:hover{background:transparent}}.ergo-adhop__navigation__flyout .ergo-adhop__navigationActionItem:is([class*=log-in],[class*=login]){display:block}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout .ergo-adhop__navigationActionItem:is([class*=log-in],[class*=login]){display:none}}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--is-open:has(.ergo-adhop__agencyFlyout--visible) :is(.ergo-adhop__navigation__flyout__navigation,.ergo-adhop__navigation__flyout__teasers,.ergo-adhop__navigation__flyout__action-items){display:none}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--is-open:has(.ergo-adhop__agencyFlyout--visible) .ergo-adhop__navigation__flyout__header__title{visibility:hidden}}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--is-open:has(.ergo-adhop__agencyFlyout--visible) .ergo-adhop__navigation__flyout__agency-flyout .ergo-adhop__agencyFlyout--visible{display:block;grid-area:second;margin:0;padding:0}}@media screen and (min-width:1152px){.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--is-open:has(.ergo-adhop__agencyFlyout--visible) .ergo-adhop__agencyFlyout__location-details{margin:0;padding:0}}@media screen and (max-width:1151px){.ergo-adhop__navigation__flyout .ergo-adhop__agencyFlyout{margin-left:32px;margin-right:32px}}.ergo-adhop__navigation__flyout .ergo-adhop__agencyFlyout .ergo-adhop__addressItem__button{display:inline;font-size:16px;text-align:left}.ergo-adhop__navigation__flyout .ergo-adhop__agencyFlyout .ergo-adhop__addressItem__button:after{display:none}.ergo-adhop__navigation__flyout .ergo-adhop__agencyFlyout .ergo-adhop__addressItem__button:focus-visible{border-radius:4px;color:var(--theme-primary,#8e0038);outline:2px solid var(--theme-black,#000);outline-offset:2px;text-decoration:none}@media screen and (max-width:1151px){.ergo-adhop__navigation__flyout .ergo-adhop__agencyFlyout .ergo-adhop__addressItem__button .ergo-adhop__button__text{flex:1;font-weight:400;order:-1}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-main{margin-bottom:32px;order:-1}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-main .ergo-adhop__agencyFlyout{border:0;border-radius:0;margin:0 0 32px}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-main .ergo-adhop__agencyFlyout__container{gap:0p}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-main .ergo-adhop__agencyFlyout__picture{display:none}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-main .ergo-adhop__agencyFlyout__location-details{padding:0 0 32px}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-main .ergo-adhop__agencyFlyout__location-details .ergo-adhop__button__component{order:-1}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-main .ergo-adhop__agencyFlyout__location-details .ergo-adhop__button__component .injected-svg{fill:var(--theme-darkest-gray,#333)}}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-main .ergo-adhop__agencyFlyout__location-details .ergo-adhop__agencyFlyout__location-change{color:var(--theme-darkest-gray,#333);flex-direction:row;font-size:16px;font-weight:400;gap:10px;justify-content:flex-start;margin:0 0 32px;padding-inline:8px;text-align:left;width:100%}@media screen and (max-width:1151px){.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-main .ergo-adhop__agencyFlyout__location-details .ergo-adhop__agencyFlyout__location-change{margin:0;padding:17px 48px 17px 32px}}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-main .ergo-adhop__agencyFlyout__location-details .ergo-adhop__agencyFlyout__location-change:after{display:none}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-main .ergo-adhop__agencyFlyout__location-details .ergo-adhop__addressItem{padding:16px 32px 0}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-main .ergo-adhop__agencyFlyout__location-details .ergo-adhop__agencyFlyout__opening-hours{padding:0 32px}@media screen and (max-width:1151px){.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-contact .ergo-adhop__navigation__flyout__action-items,.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-main .ergo-adhop__navigation__flyout__teasers{display:none}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-contact .ergo-adhop__navigation__flyout__agency-flyout{order:1}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-contact .ergo-adhop__navigation__flyout__teasers{order:2}.ergo-adhop__navigation__flyout.ergo-adhop__navigation__flyout--type-navigation .ergo-adhop__navigation__flyout__action-items{display:none}}.ergo-adhop__main-navigation{display:flex;flex-grow:0;flex-shrink:0;margin:0;padding:0}@media screen and (min-width:1152px){.ergo-adhop__main-navigation{align-items:center;flex:1 1 auto;flex-wrap:nowrap;gap:48px;justify-content:space-between}}.ergo-adhop__main-navigation__list{align-items:center;display:flex;flex-direction:row;gap:16px;list-style:none;margin:0;padding:0}.ergo-adhop__main-navigation__list .ergo-adhop__main-navigation__item{min-width:50px}.ergo-adhop__main-navigation__list .ergo-adhop__button.ergo-adhop__main-navigation__link{background:transparent;border-radius:8px;color:var(--theme-darkest-gray,#333);font-size:16px;font-weight:400;line-height:1.5;padding:12px 16px;text-decoration:none;transition:background-color .2s}@media (prefers-reduced-motion:reduce){.ergo-adhop__main-navigation__list .ergo-adhop__button.ergo-adhop__main-navigation__link{transition:none}}.ergo-adhop__main-navigation__list .ergo-adhop__button.ergo-adhop__main-navigation__link.ergo-adhop__main-navigation__link--is-open,.ergo-adhop__main-navigation__list .ergo-adhop__button.ergo-adhop__main-navigation__link:focus-visible,.ergo-adhop__main-navigation__list .ergo-adhop__button.ergo-adhop__main-navigation__link:hover{background:var(--theme-primary-light,#fbf4f4);color:var(--theme-primary,#8e0038);text-decoration:none}.ergo-adhop__main-navigation__list .ergo-adhop__button.ergo-adhop__main-navigation__link:focus-visible{outline:2px solid var(--theme-darkest-gray,#333);outline-offset:1px}.ergo-adhop__main-navigation__list .ergo-adhop__button.ergo-adhop__main-navigation__link:after{display:none}.ergo-adhop__navigation__mobile-action-items{-moz-column-gap:12px;column-gap:12px;display:flex;left:auto;position:absolute;right:76px;top:18px}.ergo-adhop__navigation__mobile-action-items .ergo-adhop__button__component .ergo-adhop__button.ergo-adhop__button--vertical-icon{gap:4px;height:48px;max-width:64px;min-width:48px;padding:0}.ergo-adhop__navigation__mobile-action-items .ergo-adhop__button__text{font-size:10px;letter-spacing:normal;line-height:12px}@media screen and (min-width:1152px){.ergo-adhop__navigation{display:flex;justify-content:space-between;width:100%}}.ergo-adhop__navigationTeaser{align-items:center;align-self:stretch;border:1px solid var(--theme-light-gray,#d9d9d9);border-radius:8px;display:flex;flex-direction:column;gap:16px;margin:0 24px 24px;padding:48px 32px}@media screen and (min-width:1152px){.ergo-adhop__navigationTeaser{font-size:16px;line-height:24px;margin:0 0 24px}}.ergo-adhop__navigationTeaser .ergo-adhop__navigationTeaser__content{text-align:center;width:100%}.ergo-adhop__navigationTeaser .ergo-adhop__navigationTeaser__content p{margin-top:0}.ergo-adhop__navigationTeaser .ergo-adhop__navigationTeaser__content p.ergo-adhop__navigationTeaser__headline{font-size:20px;line-height:30px}.ergo-adhop__navigationTeaser .ergo-adhop__navigationTeaser__content p.ergo-adhop__navigationTeaser__description{line-height:24px}.ergo-adhop__navigationTeaser .ergo-adhop__navigationTeaser__cta__wrapper{padding-top:12px}.ergo-adhop__navigationTeaser .ergo-adhop__navigationTeaser__cta__wrapper .ergo-adhop__button__component:not(:last-child){margin-bottom:24px}.ergo-adhop__navigationTeaser .ergo-adhop__navigationTeaser__cta__wrapper .ergo-adhop__button__component .ergo-adhop__button{width:100%}@media screen and (min-width:1152px){.ergo-adhop__navigationTeaser .ergo-adhop__navigationTeaser__cta__wrapper .ergo-adhop__button__component .ergo-adhop__button{font-size:16px;line-height:24px}}.ergo-adhop__navigationTeaser .ergo-adhop__navigationTeaser__cta__wrapper .ergo-adhop__button__component .ergo-adhop__button:focus-visible{background:var(--theme-primary-light,#fbf4f4);color:var(--theme-primary,#8e0038);outline:2px solid var(--theme-black,#000);outline-offset:-2px;text-decoration:none}.ergo-adhop__openingHours .ergo-adhop__openingHours__title{display:block;font-size:20px;font-weight:700;line-height:30px;margin-bottom:24px}.ergo-adhop__openingHours .txt{font-size:14px;line-height:21px}.ergo-adhop__openingHours .ergo-adhop__openingHours__opening-list{list-style:none;margin:14px 0;padding:0}.ergo-adhop__openingHours .ergo-adhop__openingHours__time{display:flex;font-size:14px;line-height:21px}.ergo-adhop__openingHours .ergo-adhop__openingHours__day-name{flex:0 0 33px;width:33px}.ergo-adhop__contactBar__overlay .ergo-adhop__openingHours{max-width:426px;padding:30px;width:100%}@media screen and (min-width:1440px){.ergo-adhop__contactBar__overlay .ergo-adhop__openingHours{width:426px}}.ergo-adhop__productDisclaimer{margin:30px auto;max-width:870px;width:100%}@media screen and (max-width:911px){.ergo-adhop__productDisclaimer{padding:0 12px}}.ergo-adhop__productDisclaimer .ergo-adhop__productDisclaimer__header{padding-top:20px}.ergo-adhop__productDisclaimer .ergo-adhop__productDisclaimer__body>div{padding:10px 0 5px}.ergo-adhop__productDisclaimer .ergo-adhop__productDisclaimer__body>div p{margin:0}.ergo-adhop__productDisclaimer .ergo-adhop__headline{text-align:left}.ergo-adhop__productDisclaimer .ergo-adhop__headline .header{color:#bdbdbd;font-size:16px}.ergo-adhop__productDisclaimer .ergo-adhop__headline .ergo-adhop__headline__title{font-size:20px;line-height:30px;margin:0 0 20px}.ergo-adhop__productDisclaimer .ergo-adhop__button--text-link{font-weight:400}.productDisclaimerContainer .caPageElement>.aem-Grid{display:contents}.productDisclaimerContainer .caPageElement>.aem-Grid>.productdisclaimer{border:0}.proposition-item{display:flex;flex-wrap:wrap;margin-bottom:30px;width:100%}@media screen and (min-width:768px){.proposition-item{margin-bottom:12px}}.proposition-item:not(.with-description){align-items:center}.proposition-item:last-child{margin-bottom:0}.proposition-item .proposition-item-icon{max-height:34px}.proposition-item .proposition-content{max-width:calc(100% - 35px);padding-left:20px;width:100%}@media screen and (min-width:768px){.proposition-item .proposition-content{padding-left:30px}}.proposition-item .proposition-content .proposition-item-headline{font-size:18px;line-height:21px;margin:5px 0 0}@media screen and (min-width:768px){.proposition-item .proposition-content .proposition-item-headline{font-size:18px;line-height:27px;margin-top:0}}.proposition-item .proposition-content .proposition-item-description{font-size:14px;line-height:21px;margin:18px 0 0}@media screen and (min-width:768px){.proposition-item .proposition-content .proposition-item-description{margin-top:8px}}.ergo-adhop__ratingItem .ergo-adhop__ratingItem__title{font-size:16px;line-height:20px;margin:0 0 5px;text-align:left}.ergo-adhop__ratingItem .ergo-adhop__ratingItem__text{margin:5px 0 0}.ergo-adhop__ratingItem .ergo-adhop__ratingItem__text p{font-size:12px;line-height:14px;margin-bottom:12px;margin-top:12px}.ergo-adhop__ratingItem .ergo-adhop__button.ergo-adhop__button--text-link{font-size:12px;font-weight:400}.ergo-adhop__ratingStars{align-items:center;display:flex;gap:10px;width:100%}.ergo-adhop__ratingStars .ergo-adhop__ratingStars__stars__wrapper{position:relative}.ergo-adhop__ratingStars .ergo-adhop__ratingStars__stars,.ergo-adhop__ratingStars .ergo-adhop__ratingStars__stars-filled{color:var(--theme-light-gray,#d9d9d9);display:flex;left:0;overflow:hidden;position:absolute;z-index:0}.ergo-adhop__ratingStars .ergo-adhop__ratingStars__stars-filled{color:var(--theme-additional-4,#f6cb00);z-index:1}.ergo-adhop__ratingStars .ergo-adhop__ratingStars__stars__text{font-weight:600}.ergo-adhop__ratingValue{display:flex}.ergo-adhop__ratingValue.ergo-adhop__ratingValue--circle{flex-direction:column}.ergo-adhop__ratingValue .ergo-adhop__ratingValue__circle{align-items:center;background-color:#4a66ad;border-radius:100%;color:var(--theme-white,#fff);display:flex;font-size:20px;font-weight:600;height:60px;justify-content:center;margin-bottom:10px;width:60px}.ergo-adhop__ratingValue .ergo-adhop__ratingValue__text{align-items:center;display:flex;font-weight:600;gap:4px}@media screen and (max-width:767px){.ergo-adhop__ratingValue .ergo-adhop__ratingValue__text{font-size:14px}}.ergo-adhop__simple__description{margin:0;white-space:pre-line}.ergo-adhop__video{margin:0}.ergo-adhop__video.ergo-adhop__video--consent-overflowed .ergo-adhop__video__consent__description{display:-webkit-box;-webkit-line-clamp:2;overflow:hidden;
  /*! autoprefixer: ignore next */-webkit-box-orient:vertical}.ergo-adhop__video .ergo-adhop__video_iframe__wrapper{aspect-ratio:16/9;position:relative}.ergo-adhop__video iframe{aspect-ratio:16/9;border:0;display:block;height:100%;width:100%}.ergo-adhop__video .ergo-adhop__video__caption{color:var(--theme-darkest-gray,#333);display:block;font-size:12px;line-height:13px;margin-top:12px}.ergo-adhop__video .ergo-adhop__video__consent__overlay .adhop-ergo__image{height:100%;left:0;object-fit:cover;position:absolute;top:0;width:100%;z-index:0}.ergo-adhop__video .ergo-adhop__video__consent__overlay .ergo-adhop__video__consent__overlay__inner{align-content:center;background:rgba(var(--theme-darkest-gray-rgb),.8);color:var(--theme-white,#fff);display:flex;flex-wrap:wrap;height:100%;justify-content:center;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:1}.ergo-adhop__video .ergo-adhop__video__consent__overlay .ergo-adhop__video__consent__overlay__inner .ergo-adhop__video__consent__overlay__inner__content{padding:66px 16px}@media screen and (min-width:768px){.ergo-adhop__video .ergo-adhop__video__consent__overlay .ergo-adhop__video__consent__overlay__inner .ergo-adhop__video__consent__overlay__inner__content{padding-left:60px;padding-right:60px}}.ergo-adhop__video .ergo-adhop__video__consent__overlay .ergo-adhop__video__consent__description{color:var(--theme-white,#fff)}@media screen and (max-width:767px){.ergo-adhop__video .ergo-adhop__video__consent__overlay .ergo-adhop__video__consent__description{display:-webkit-box;-webkit-line-clamp:2;overflow:hidden;
    /*! autoprefixer: ignore next */-webkit-box-orient:vertical}}.ergo-adhop__video .ergo-adhop__video__consent__overlay .ergo-adhop__button__component{width:100%}.ergo-adhop__video .ergo-adhop__video__consent__overlay .ergo-adhop__button.ergo-adhop__video__consent__readMore__cta{color:var(--theme-white,#fff);font-size:12px;font-weight:400;line-height:12px;text-decoration:underline}.ergo-adhop__video .ergo-adhop__video__consent__overlay .ergo-adhop__button--primary{margin-top:24px}@media screen and (min-width:768px){.ergo-adhop__video .ergo-adhop__video__consent__overlay .ergo-adhop__button--primary{margin-top:32px}}.ergo-adhop__video .ergo-adhop__button--primary{border-radius:12px}@media screen and (max-width:767px){.ergo-adhop__video__consent{text-align:center}}.ergo-adhop__video__consent .ergo-adhop__video__consent__title{font-size:16px;line-height:32px;margin-bottom:8px;margin-top:0}@media screen and (min-width:768px){.ergo-adhop__video__consent .ergo-adhop__video__consent__title{font-size:20px;line-height:30px}}.ergo-adhop__video__consent .ergo-adhop__video__consent__description{font-size:12px;line-height:18px;margin-bottom:0;margin-top:0}.ergo-adhop__video__consent__modal .ergo-adhop__modal__content{padding:24px}.ergo-adhop__video__consent__modal .ergo-adhop__video__consent{text-align:left}.ergo-adhop__video__consent__modal .ergo-adhop__video__consent__title{margin-bottom:16px}.ergo-adhop__video__consent__modal .ergo-adhop__modal__closer{margin-right:-10px}.ergo-adhop__video__consent__modal .ergo-adhop__button--primary{border-radius:12px;margin-top:32px}.ergo-adhop__video__consent__modal .ergo-adhop__button--text-link:not(.ergo-adhop__modal__closer){margin-top:16px}.ergo-adhop__skip-to-content{background:#8e0038;border-radius:0 0 16px 16px;color:#fff;cursor:pointer;font-weight:400;height:34px;inset:0 auto auto 50%;line-height:1;opacity:0;padding:8px 24px;position:absolute;text-decoration:none;transform:translate(-50%,-120%);transition:transform .2s;z-index:520}.ergo-adhop__skip-to-content:focus{opacity:1;transform:translate(-50%)}main:focus{outline:none}.socialMediaAndLinks{background-color:var(--theme-primary,#8e0038)}.ergo-adhop__socialMediaAndLinks{color:var(--theme-white,#fff);display:flex;flex-flow:column wrap;gap:24px;margin:0 auto;max-width:1440px;padding:24px;width:100%}@media screen and (min-width:768px){.ergo-adhop__socialMediaAndLinks{align-items:center;flex-direction:row;justify-content:space-between}}.ergo-adhop__socialMediaAndLinks .ergo-adhop__socialMediaLinks .ergo-adhop__socialMediaLinks__list{gap:20px}.ergo-adhop__socialMediaAndLinks .ergo-adhop__socialMediaLinks .ergo-adhop__socialMediaLinks__item .ergo-adhop__socialMediaLinks__link{padding:2px}.ergo-adhop__socialMediaAndLinks svg{fill:var(--theme-white,#fff)}.ergo-adhop__socialMediaAndLinks .ergo-adhop__socialMediaAndLinks__links{align-items:center;display:flex;gap:10px;list-style:none;margin:0;padding:0}.ergo-adhop__socialMediaAndLinks .ergo-adhop__socialMediaAndLinks__links .ergo-adhop__socialMediaAndLinks__links__item:not(:last-child){border-right:1px solid var(--theme-white,#fff);padding-right:10px}.ergo-adhop__socialMediaAndLinks .ergo-adhop__socialMediaAndLinks__links .ergo-adhop__button__component{line-height:1}.ergo-adhop__socialMediaAndLinks .ergo-adhop__socialMediaAndLinks__links .ergo-adhop__button--text-link{color:var(--theme-white,#fff);font-size:14px;font-weight:400;line-height:14px}@media screen and (min-width:768px){.ergo-adhop__socialMediaAndLinks .ergo-adhop__socialMediaAndLinks__links .ergo-adhop__button--text-link{font-size:16px;line-height:16px}}.ergo-adhop__socialMediaAndLinks .ergo-adhop__socialMediaAndLinks__links .ergo-adhop__button--text-link .ergo-adhop__button__text{position:static}.ergo-adhop__socialMediaLinks .ergo-adhop__socialMediaLinks__headline{font-size:18px;margin-bottom:10px}.ergo-adhop__socialMediaLinks .ergo-adhop__socialMediaLinks__list{align-items:center;display:flex;flex-wrap:wrap;gap:30px;list-style:none;margin:0;padding:0}.ergo-adhop__socialMediaLinks .ergo-adhop__socialMediaLinks__item{line-height:1}.ergo-adhop__socialMediaLinks .ergo-adhop__socialMediaLinks__link{align-items:center;color:inherit;display:inline-flex;font-size:14px;text-decoration:none}.ergo-adhop__socialMediaLinks .ergo-adhop__socialMediaLinks__icon svg{display:block}.ergo-adhop__socialMediaLinks .ergo-adhop__socialMediaLinks__anchor{margin-left:10px}.adhop__team-employee-tile{margin:0 auto 82px;padding:0;text-align:center;width:200px}@media screen and (min-width:768px){.adhop__team-employee-tile{width:248px}}.adhop__team-employee-tile .adhop__team-employee-tile__picture{display:inline-block;height:172px;margin:0 0 15px;width:172px}@media screen and (min-width:768px){.adhop__team-employee-tile .adhop__team-employee-tile__picture{height:220px;width:220px}}.adhop__team-employee-tile .adhop__team-employee-tile__picture img{border-radius:50%;object-fit:cover;overflow:hidden}.adhop__team-employee-tile .adhop__team-employee-tile__description{align-items:center;display:flex;flex-direction:column;text-align:center}.adhop__team-employee-tile .adhop__team-employee-tile__description div>span,.adhop__team-employee-tile .adhop__team-employee-tile__description p{color:var(--theme-darkest-gray,#333);line-height:2;margin:0}.adhop__team-employee-tile .adhop__team-employee-tile__description .adhop__team-employee-tile__name{font-size:18px;font-weight:600;line-height:24px}.adhop__team-employee-tile .adhop__team-employee-tile__occupation{font-size:16px;overflow-wrap:anywhere}.adhop__team-employee-tile .adhop__team-employee-tile__contact{margin-top:7px}.adhop__team-employee-tile .adhop__team-employee-tile__contact div>span,.adhop__team-employee-tile .adhop__team-employee-tile__contact p{color:#757575;font-size:14px;word-break:break-word}.adhop__team-employee-tile .adhop__team-employee-tile__contact .ergo-adhop__button__component{display:inline-block;padding:0 4px}@media screen and (min-width:1152px){.adhop__team--1-employees .adhop__team-employee-tile,.adhop__team-employee-tile.adhop__team-employee-tile--solo{display:flex;max-width:464px;padding:0 14px;width:auto}.adhop__team--1-employees .adhop__team-employee-tile .adhop__team-employee-tile__picture,.adhop__team-employee-tile.adhop__team-employee-tile--solo .adhop__team-employee-tile__picture{margin-bottom:0}.adhop__team--1-employees .adhop__team-employee-tile .adhop__team-employee-tile__description,.adhop__team-employee-tile.adhop__team-employee-tile--solo .adhop__team-employee-tile__description{align-items:flex-start;flex:1;justify-content:center;margin-left:50px;text-align:left}}.adhop__team--regular{margin-bottom:-30px}.adhop__team--regular.adhop__team--1-employees{display:flex;flex-direction:column}.adhop__team--regular.adhop__team--2-employees .slick-slider{max-width:540px}@media screen and (min-width:768px){.adhop__team--regular .slick-slider{margin:0 auto;max-width:520px}}@media screen and (min-width:1152px){.adhop__team--regular .slick-slider{max-width:780px}}@media screen and (min-width:1440px){.adhop__team--regular .slick-slider{max-width:1040px}}.adhop__team--regular .slick-slider .slick-arrow--custom{top:160px;transform:translateY(0)}.adhop__team--regular .slick-slider .slick-arrow--custom.slick-prev{transform:translate(-100%)}.adhop__team-employee-tile--solo{margin-bottom:24px}.adhop__team-employee-lang{margin-bottom:7px;margin-top:10px;max-width:265px;position:relative;width:100%}@media screen and (min-width:1152px){.adhop__team-employee-lang .adhop__team--1-employees .adhop__team-employee-lang__flags{justify-content:flex-start}}.adhop__team-employee-lang:hover .adhop__team-employee-lang__dropdown__wrapper{opacity:1;visibility:visible;z-index:1}.adhop__team-employee-lang .adhop__team-employee-lang__flags{align-items:center;display:flex;flex-wrap:wrap;justify-content:center}.adhop__team-employee-lang .adhop__team-employee-lang__flags .flag{height:22px;margin-left:5px;margin-right:5px;width:22px}.adhop__team-employee-lang .adhop__team-employee-lang__flags .flag:first-child{margin-left:0}.adhop__team-employee-lang .adhop__team-employee-lang__flags .flag:last-child{margin-right:0}.adhop__team-employee-lang .adhop__team-employee-lang__flags .adhop__team-employee-lang__ellipsis{line-height:15px;padding-left:5px}.adhop__team-employee-lang .adhop__team-employee-lang__dropdown__wrapper{background-color:var(--theme-white,#fff);border:1px solid var(--theme-lightest-gray,#f2f2f2);border-radius:9px;box-shadow:0 8px 10px rgba(var(--theme-black-rgb),.15);left:50%;max-height:144px;opacity:0;position:absolute;right:0;text-align:left;top:0;transform:translateX(-50%);visibility:hidden;width:calc(100% + 28px);z-index:-1}@media screen and (min-width:376px){.adhop__team-employee-lang .adhop__team-employee-lang__dropdown__wrapper{width:255px}}.adhop__team-employee-lang .adhop__team-employee-lang__dropdown__wrapper:before{background-color:var(--theme-primary,#8e0038);border-radius:2px;content:"";display:block;height:4px;left:0;margin:auto;position:absolute;right:0;top:-4px;width:48px}.adhop__team-employee-lang .adhop__team-employee-lang__dropdown__wrapper .adhop__team-employee-lang__dropdown{max-height:144px;overflow-y:auto;padding:20px 30px}.adhop__team-employee-lang .adhop__team-employee-lang__dropdown__wrapper .adhop__team-employee-lang__dropdown h5{font-size:18px;margin:0}.ergo-adhop__team{margin:0 auto;position:relative;z-index:1}.ergo-adhop__team .ergo-adhop__team__headline{color:var(--theme-dark-gray,#aeaeae);display:block;font-size:14px;font-weight:700;line-height:18px;margin-bottom:4px;text-align:center;text-transform:uppercase}@media screen and (min-width:768px){.ergo-adhop__team .ergo-adhop__team__headline{font-size:16px;line-height:21px}}.ergo-adhop__team .ergo-adhop__team__subheading{color:var(--theme-darkest-gray,#333);font-size:20px;font-weight:600;line-height:30px;margin-bottom:40px;text-align:center}@media screen and (min-width:768px){.ergo-adhop__team .ergo-adhop__team__subheading{font-size:24px;line-height:40px}}.ergo-adhop__team .ergo-adhop__team__subheading span{display:inline-block}.ergo-adhop__team .ergo-adhop__team__location-picker{display:inline-block;max-width:100%}.ergo-adhop__team .ergo-adhop__team__location-picker select{-moz-appearance:none;-webkit-appearance:none;background:transparent;border:0;box-shadow:0 -2px 0 0 var(--theme-primary,#8e0038) inset;color:var(--theme-primary,#8e0038);font-family:FS Me,Helvetica,Arial,sans-serif;font-size:20px;font-weight:600;line-height:22px;margin:0 8px;max-width:calc(100% - 16px);padding-right:20px;text-align:center;text-overflow:ellipsis}@media screen and (min-width:768px){.ergo-adhop__team .ergo-adhop__team__location-picker select{font-size:24px;line-height:26px}}.ergo-adhop__team .ergo-adhop__team__location-picker .ergo-adhop__team__location-picker__icon{display:inline-block;fill:var(--theme-primary,#8e0038);margin-left:-24px;pointer-events:none}.ergo-adhop__team .ergo-adhop__team__cta{position:relative;z-index:1}.teasersGrid{margin-left:calc(50% - 50vw);max-width:100vw;width:100vw}.teasersGrid .teasersGrid__list{border-left:24px solid transparent;border-right:24px solid transparent;display:grid;gap:24px;grid-template-columns:1fr;margin:0 auto;max-width:1230px}.teasersGrid .teasersGrid__list>[data-nc=Teaser]{display:grid}.teasersGrid.cols-1 .teasersGrid__list{max-width:912px}.teasersGrid:not(.cols-1) .ergo-adhop__teaser__headline{text-align:left!important}@media screen and (min-width:768px){.teasersGrid.cols-2 .teasersGrid__list{grid-template-columns:1fr 1fr}.teasersGrid.cols-3 .teasersGrid__list{grid-template-columns:1fr 1fr 1fr}}.teasersGrid .teaser.base,.teasersGrid .teaser.base>div{display:flex}.ergo-adhop__teaser{align-items:flex-start;display:flex;flex-flow:column wrap;margin-bottom:40px;margin-top:40px}.ergo-adhop__teaser.ergo-adhop__teaser--frame{box-shadow:0 3px 5px -1px rgba(var(--theme-black-rgb),.16),0 6px 10px 0 rgba(var(--theme-black-rgb),.12),0 1px 18px 0 rgba(var(--theme-black-rgb),.1)}@media screen and (min-width:768px){.teaser-type--horizontal .ergo-adhop__teaser{align-items:stretch;flex-direction:row}.teaser-type--horizontal .ergo-adhop__teaser.ergo-adhop__teaser--image-right{flex-direction:row-reverse}}.teaser-type--horizontal .ergo-adhop__teaser .ergo-adhop__teasersList__item__image{flex:1}@media screen and (min-width:768px){.teaser-type--horizontal .ergo-adhop__teaser .ergo-adhop__teasersList__item__image img{aspect-ratio:1}.teaser-type--horizontal .ergo-adhop__teaser .ergo-adhop__teaser__content{align-items:center;justify-content:flex-start}.teaser-type--horizontal .ergo-adhop__teaser .ergo-adhop__teaser__headline{margin-top:8px}}.teaser-type--horizontal .ergo-adhop__teaser .ergo-adhop__teaser__headline.h2{font-size:28px;line-height:40px}@media screen and (min-width:768px){.teaser-type--horizontal .ergo-adhop__teaser .ergo-adhop__teaser__headline.h2{font-size:36px;line-height:44px}}.teaser-type--horizontal .ergo-adhop__teaser .ergo-adhop__teaser__headline.h4{font-size:20px;line-height:28px}@media screen and (min-width:768px){.teaser-type--horizontal .ergo-adhop__teaser .ergo-adhop__teaser__headline.h4{font-size:24px;line-height:36px}}.teaser-type--horizontal .ergo-adhop__teaser .ergo-adhop__teaser__headline.h5{font-size:18px;line-height:30px}@media screen and (min-width:768px){.teaser-type--horizontal .ergo-adhop__teaser .ergo-adhop__teaser__headline.h5{font-size:20px;line-height:32px}}.ergo-adhop__teaser .ergo-adhop__teasersList__item__image{width:100%}.ergo-adhop__teaser .ergo-adhop__teasersList__item__image img{aspect-ratio:16/9;object-fit:cover;width:100%}.ergo-adhop__teaser .ergo-adhop__teaser__content{flex:1;width:100%}@media screen and (min-width:768px){.ergo-adhop__teaser .ergo-adhop__teaser__content{display:flex;justify-content:stretch}}.ergo-adhop__teaser .ergo-adhop__teaser__content__wrapper{display:flex;flex-direction:column;padding:24px 32px 32px;width:100%}.ergo-adhop__teaser .ergo-adhop__teaser__headline{font-size:24px;line-height:36px;margin:0}@media screen and (min-width:768px){.ergo-adhop__teaser .ergo-adhop__teaser__headline{font-size:28px;line-height:40px}}.ergo-adhop__teaser .ergo-adhop__teaser__headline.ergo-adhop__teaser__headline--red{color:var(--theme-primary,#8e0038)}.ergo-adhop__teaser .ergo-adhop__teaser__description{margin-top:16px}.ergo-adhop__teaser .ergo-adhop__teaser__cta{margin-top:auto;padding-top:32px}.ergo-adhop__teasersList__item{display:flex;flex-flow:column wrap;gap:24px;margin-bottom:40px;margin-top:40px}@media screen and (min-width:768px){.ergo-adhop__teasersList__item{align-items:center;flex-direction:row}}@media screen and (min-width:1152px){.ergo-adhop__teasersList__item{margin-bottom:80px;margin-top:80px}}@media screen and (min-width:768px){.ergo-adhop__teasersList__item:nth-child(odd){flex-direction:row-reverse}}.ergo-adhop__teasersList__item .ergo-adhop__teasersList__item__image{align-items:center;display:flex;flex-flow:column wrap;justify-content:center;margin:0}@media screen and (max-width:768px){.ergo-adhop__teasersList__item .ergo-adhop__teasersList__item__image{min-height:200px}}@media screen and (min-width:768px){.ergo-adhop__teasersList__item .ergo-adhop__teasersList__item__content,.ergo-adhop__teasersList__item .ergo-adhop__teasersList__item__image{flex:1;max-width:420px}.ergo-adhop__teasersList__item .ergo-adhop__teasersList__item__content:only-child,.ergo-adhop__teasersList__item .ergo-adhop__teasersList__item__image:only-child{max-width:100%}}.ergo-adhop__teasersList__item .ergo-adhop__teasersList__item__subheading{color:var(--theme-dark-gray,#aeaeae);display:block;font-size:16px;font-weight:700;line-height:24px;margin-bottom:8px;text-transform:uppercase}.ergo-adhop__teasersList__item .ergo-adhop__teasersList__item__headline{font-size:24px;font-weight:700;line-height:32px;margin:0 0 16px}@media screen and (max-width:911px){.ergo-adhop__teasersList__item .ergo-adhop__teasersList__item__description{white-space:normal}}.ergo-adhop__teasersList__item .ergo-adhop__teasersList__item__description:not(:last-child){margin-bottom:24px}.ergo-adhop__teasersList__item .ergo-adhop__teasersList__label{display:block;font-weight:700}.ergo-adhop__teasersList__item .ergo-adhop__button.ergo-adhop__button--text-link{font-size:14px;font-weight:400}@media screen and (min-width:480px){.ergo-adhop__teasersList__item .ergo-adhop__button.ergo-adhop__button--text-link{font-size:16px}}.ergo-adhop__teasersList__item .ergo-adhop__button:not(.ergo-adhop__button--text-link){width:100%}@media screen and (min-width:480px){.ergo-adhop__teasersList__item .ergo-adhop__button:not(.ergo-adhop__button--text-link){width:auto}}.ergo-adhop-teasers-list{margin:0 auto;max-width:870px;width:100%}.ergo-adhop__text h1,.ergo-adhop__text h2,.ergo-adhop__text h3,.ergo-adhop__text h4,.ergo-adhop__text h5,.ergo-adhop__text p{margin-top:0;word-break:break-word}.ergo-adhop__text .ergo-adhop__button__component{display:inline}.ergo-adhop__text .ergo-adhop__button__component .ergo-adhop__button.ergo-adhop__button--text-link{font-size:inherit;font-weight:inherit;line-height:inherit}.ergo-adhop__text .ergo-adhop__button__component .ergo-adhop__button span{color:inherit}.ergo-adhop__tooltip{display:inline-flex;position:relative}.ergo-adhop__tooltip .ergo-adhop__button.ergo-adhop__button--with-icon.ergo-adhop__tooltip__overlay__trigger{color:var(--theme-darker-gray,#737373);transition:background-color .3s ease-in-out}.ergo-adhop__tooltip .ergo-adhop__button.ergo-adhop__button--with-icon.ergo-adhop__tooltip__overlay__trigger.ergo-adhop__button--with-icon-only:focus-visible{border:0}.ergo-adhop__tooltip .ergo-adhop__button.ergo-adhop__button--with-icon.ergo-adhop__tooltip__overlay__trigger.ergo-adhop__button--with-icon-only:focus-visible:before{background-color:rgba(var(--theme-primary-rgb),.16);transform:scale(1)}.ergo-adhop__tooltip .ergo-adhop__button.ergo-adhop__button--with-icon.ergo-adhop__tooltip__overlay__trigger:before{background-color:initial;border-radius:50%;content:"";height:100%;left:0;position:absolute;top:0;transform:scale(0);transition:transform .3s ease-in-out,background-color .3s ease-in-out;width:100%}.ergo-adhop__tooltip .ergo-adhop__tooltip__overlay{background-color:rgba(var(--theme-white-rgb),.85);height:100%;left:0;opacity:0;position:fixed;top:0;visibility:hidden;width:100%;z-index:-1}@media screen and (min-width:480px){.ergo-adhop__tooltip .ergo-adhop__tooltip__overlay{border-radius:8px;box-shadow:0 6px 6px -3px rgba(var(--theme-black-rgb),.2),0 10px 14px 1px rgba(var(--theme-black-rgb),.14),0 4px 18px 3px rgba(var(--theme-black-rgb),.12);height:auto;left:-10px;position:absolute;top:100%;width:-webkit-max-content;width:-moz-max-content;width:max-content}}.ergo-adhop__tooltip .ergo-adhop__tooltip__overlay .ergo-adhop__button--with-icon.ergo-adhop__tooltip__overlay__closer.ergo-adhop__tooltip__overlay__closer{color:var(--theme-darker-gray,#737373);height:auto;opacity:.4;position:absolute;right:18px;top:18px;transition:opacity .3s ease-in-out;width:auto;z-index:1}@media screen and (min-width:480px){.ergo-adhop__tooltip .ergo-adhop__tooltip__overlay .ergo-adhop__button--with-icon.ergo-adhop__tooltip__overlay__closer.ergo-adhop__tooltip__overlay__closer{right:14px;top:14px}}.ergo-adhop__tooltip .ergo-adhop__tooltip__overlay .ergo-adhop__button--with-icon.ergo-adhop__tooltip__overlay__closer.ergo-adhop__tooltip__overlay__closer:hover{opacity:1}.ergo-adhop__tooltip .ergo-adhop__tooltip__overlay .ergo-adhop__tooltip__overlay__content{background-color:var(--theme-white,#fff);bottom:0;box-shadow:0 6px 6px -3px rgba(var(--theme-black-rgb),.2),0 10px 14px 1px rgba(var(--theme-black-rgb),.14),0 4px 18px 3px rgba(var(--theme-black-rgb),.12);font-size:12px;font-weight:400;left:0;line-height:18px;max-width:100%;padding:50px 18px 36px;position:fixed;width:100%}@media screen and (min-width:480px){.ergo-adhop__tooltip .ergo-adhop__tooltip__overlay .ergo-adhop__tooltip__overlay__content{border-radius:8px;box-shadow:none;max-width:300px;min-width:250px;padding-bottom:12px;padding-top:48px;position:relative;width:100%}}@media screen and (min-width:768px){.ergo-adhop__tooltip .ergo-adhop__tooltip__overlay .ergo-adhop__tooltip__overlay__content{max-width:400px}}.ergo-adhop__tooltip .ergo-adhop__tooltip__overlay .ergo-adhop__tooltip__overlay__content:before{background:var(--theme-primary,#8e0038);border-radius:2px;content:"";height:4px;left:10px;position:absolute;top:0;width:40px}.ergo-adhop__tooltip:hover .ergo-adhop__button.ergo-adhop__button--with-icon.ergo-adhop__tooltip__overlay__trigger:before{background-color:rgba(var(--theme-primary-rgb),.05);transform:scale(1)}.ergo-adhop__tooltip.ergo-adhop__tooltip-open .ergo-adhop__button.ergo-adhop__tooltip__overlay__trigger{background-color:rgba(var(--theme-primary-rgb),.16)}.ergo-adhop__tooltip.ergo-adhop__tooltip-open .ergo-adhop__tooltip__overlay{opacity:1;visibility:visible;z-index:10}@media screen and (min-width:480px){.ergo-adhop__tooltip.ergo-adhop__tooltip-reversed .ergo-adhop__tooltip__overlay{left:auto;right:-10px}}.ergo-adhop__tooltip.ergo-adhop__tooltip-reversed .ergo-adhop__tooltip__overlay .ergo-adhop__tooltip__overlay__content:before{left:auto;right:10px}.ergo-adhop__uspPresentation{text-align:center}.ergo-adhop__uspPresentation .ergo-adhop__headline{margin-bottom:35px}@media screen and (min-width:768px){.ergo-adhop__uspPresentation .ergo-adhop__headline{margin-bottom:45px}}.ergo-adhop__uspPresentation .ergo-adhop__uspPresentation__propositions{align-items:center;display:flex;flex-flow:column wrap;gap:20px}@media screen and (min-width:480px){.ergo-adhop__uspPresentation .ergo-adhop__uspPresentation__propositions{align-items:flex-start;flex-flow:row wrap;gap:24px;justify-content:center}}.ergo-adhop__uspPresentation .ergo-adhop__uspPresentation__cta .ergo-adhop__button{margin-top:40px}:root{--theme-black:#000;--theme-darkest-gray:#333;--theme-primary:#8e0038;--theme-primary-light:#fbf4f4;--theme-white:#fff;--theme-black-rgb:0,0,0;--theme-darkest-gray-rgb:51,51,51;--theme-primary-rgb:142,0,56;--theme-white-rgb:255,255,255}.aem-Grid{display:block;width:100%}.aem-Grid:after,.aem-Grid:before{content:" ";display:table}.aem-Grid:after{clear:both}.aem-GridColumn{box-sizing:border-box;clear:both}.aem-Grid--12,.aem-GridColumn--default--12{border-bottom-width:12px;border-left:12px solid transparent;border-right:12px solid transparent;border-top-width:12px}.aem-Grid.aem-Grid--12>.aem-GridColumn.aem-GridColumn--default--12,.aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--12{clear:none;float:left;width:100%}.hidden{display:none!important}@media (max-width:1151px){.hidden-xl{display:none!important}}@media (max-width:911px){.hidden-l{display:none!important}}@media (max-width:767px){.hidden-md{display:none!important}}@media screen and (min-width:1152px){.hidden-min-xl{display:none!important}}@media screen and (min-width:768px){.hidden-min-md{display:none!important}}.ergo-adhop__uspProposition{max-width:272px}.ergo-adhop__uspProposition .ergo-adhop__uspProposition__image{height:212px;margin:0 0 20px;width:100%}.ergo-adhop__uspProposition .ergo-adhop__uspProposition__image img{border-radius:8px;height:100%;object-fit:cover;width:100%}.ergo-adhop__uspProposition .ergo-adhop__uspProposition__title{font-size:18px;line-height:27px;margin:0 0 20px}.ergo-adhop__uspProposition .ergo-adhop__uspProposition__title:last-child{margin-bottom:0}.ergo-adhop__uspProposition .ergo-adhop__uspProposition__description{font-size:14px;line-height:21px;margin:0}body.body-scroll-locked{overflow:hidden}@media screen and (min-width:1152px){body.body-scroll-locked{padding-right:15px}}.experienceFragment .text[class*=bg-],.xf-web-container .text[class*=bg-]{border-image:conic-gradient(var(--background-color) 0 0) fill 0/0/0 100vw}body.dkv .experienceFragment .text[class*=bg-],body.dkv .xf-web-container .text[class*=bg-]{border-image:none;position:relative}body.dkv .experienceFragment .text[class*=bg-]:before,body.dkv .xf-web-container .text[class*=bg-]:before{background-color:currentColor;bottom:0;box-shadow:10vw 0 0 0 currentColor;content:"";display:block;margin-left:calc(50% - 50vw);max-width:90vw;position:absolute;top:0;width:90vw;z-index:-1}.cmp-carousel__container .experiencefragment>div>.aem-Grid.aem-Grid--12.aem-Grid--default--12{display:contents}.experiencefragment .aem-Grid,.experiencefragment .aem-GridColumn{border-width:0}.experiencefragment .hero.aem-GridColumn:after,.experiencefragment .hero.aem-GridColumn:before{display:none}.ergo-adhop__html>.aem-Grid,.xf-web-container>.container>.responsivegrid>.aem-Grid{display:contents}.ergo-adhop__html .aem-GridColumn,.xf-web-container>.container>.responsivegrid .aem-GridColumn{border-width:0;padding-left:0;padding-right:0}.columnControl .experiencefragment [class*=bg-]{background:var(--background-color);border-image:none}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRpc3QvYWRob3AvY29tcG9uZW50cy9hZGhvcC9hZGhvcC5idW5kbGUuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThxQkEsb0NBQ0UsMkJBQ0UsY0FDRixDQUNGLENBQ0Esd0VBQ0UsWUFBYSxDQUNiLGNBQWUsQ0FFZixjQUFlLENBRGYsVUFFRixDQUNBLG9DQUNFLHdFQUNFLFNBQ0YsQ0FDRixDQUNBLDREQUNFLGNBQWUsQ0FDZixnQkFBaUIsQ0FDakIsZUFDRixDQUNBLG9DQUNFLDREQUNFLGNBQWUsQ0FDZixnQkFDRixDQUdBLDJJQUVFLGNBQWUsQ0FDZixTQUNGLENBTkYsQ0FnV0EseUJBQ0UsY0FBZSxDQUNmLGlCQUNGLENBQ0Esd0RBQ0UsZUFDRixDQUNBLDBHQUNFLGVBQ0YsQ0FDQSwyREFDRSxpQkFDRixDQUNBLDhEQUNFLGFBQWMsQ0FDZCxlQUNGLENBQ0EsMkRBQ0UsZUFBZ0IsQ0FDaEIsUUFBUyxDQUNULFNBQ0YsQ0FDQSw4REFDRSxpQkFDRixDQUNBLDBGQUNFLGNBQ0YsQ0FDQSwyQkFDRSxpQkFDRixDQXlWQSwwRUFDRSxpQkFDRixDQUNBLCtDQUNFLGtCQUNGLENBQ0Esb0NBQ0UsK0NBQ0Usa0JBQ0YsQ0FDRixDQUNBLGlFQUNFLGNBQWUsQ0FFZixlQUFnQixDQURoQixnQkFBaUIsQ0FFakIsZUFDRixDQUNBLG9DQUNFLGlFQUNFLGNBQWUsQ0FDZixnQkFBaUIsQ0FDakIsa0JBQW1CLENBQ25CLGlCQUNGLENBQ0YsQ0FDQSx5RUFFRSxrQkFBbUIsQ0FEbkIsZUFFRixDQUNBLG9DQUNFLHlFQUVFLGtCQUFtQixDQURuQixlQUVGLENBQ0YsQ0FDQSxxSEFDRSxlQUNGLENBQ0Esb0NBQ0UscUhBQ0UsZUFDRixDQUNGLENBQ0EsZ0VBQ0Usa0JBQ0YsQ0FDQSxvQ0FDRSxnRUFDRSxrQkFDRixDQUNGLENBQ0EseUVBRUUsY0FBZSxDQUNmLGVBQWdCLENBRmhCLFVBR0YsQ0FDQSxvQ0FDRSx5RUFJRSxZQUFhLENBQ2IsY0FBZSxDQUNm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LHFCQUFzQixDQUN0QixVQUNGLENBRUEsMkNBSUUsd0JBQWtCLENBQWxCLGtDQUFrQixDQUFsQixtQ0FBa0IsQ0FBbEIscUJBQ0YsQ0FFQSwrSUFHRSxVQUFXLENBRFgsVUFBVyxDQUVYLFVBQ0YsQ0FRQSxRQUNFLHNCQUNGLENBRUEsMEJBQ0UsV0FDRSxzQkFDRixDQUNGLENBRUEseUJBQ0UsVUFDRSxzQkFDRixDQUNGLENBRUEseUJBQ0UsV0FDRSxzQkFDRixDQUNGLENBRUEscUNBQ0UsZUFDRSxzQkFDRixDQUNGLENBRUEsb0NBQ0UsZUFDRSxzQkFDRixDQUNGLENBRUEsNEJBQ0UsZUFDRixDQUNBLCtEQUVFLFlBQWEsQ0FEYixlQUFnQixDQUVoQixVQUNGLENBQ0EsbUVBQ0UsaUJBQWtCLENBRWxCLFdBQVksQ0FDWixnQkFBaUIsQ0FGakIsVUFHRixDQUNBLCtEQUNFLGNBQWUsQ0FDZixnQkFBaUIsQ0FDakIsZUFDRixDQUNBLDBFQUNFLGVBQ0YsQ0FDQSxxRUFDRSxjQUFlLENBQ2YsZ0JBQWlCLENBQ2pCLFFBQ0YsQ0FFQSx3QkFDRSxlQUNGLENBQ0EscUNBQ0Usd0JBQ0Usa0JBQ0YsQ0FDRixDQUVBLDBFQUdFLHlFQUNGLENBQ0EsNEZBRUUsaUJBQWtCLENBQ2xCLGlCQUNGLENBQ0EsMEdBRUUsNkJBQThCLENBQzlCLFFBQVMsQ0FDVCxrQ0FBbUMsQ0FDbkMsVUFBVyxDQUNYLGFBQWMsQ0FDZCw0QkFBNkIsQ0FDN0IsY0FBZSxDQUNmLGlCQUFrQixDQUNsQixLQUFNLENBQ04sVUFBVyxDQUNYLFVBQ0YsQ0FFQSw4RkFDRSxnQkFDRixDQUVBLGtFQUVFLGNBQ0YsQ0FDQSwrRkFDRSxZQUNGLENBRUEsbUZBRUUsZ0JBQ0YsQ0FDQSwrRkFFRSxjQUFlLENBQ2YsY0FBZSxDQUNmLGVBQ0YsQ0FFQSxnREFFRSxrQ0FBbUMsQ0FEbkMsaUJBRUYiLCJmaWxlIjoiZGlzdC9hZGhvcC9jb21wb25lbnRzL2FkaG9wL2FkaG9wLmJ1bmRsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2Fib3V0LXNlcnZpY2Uge1xuICAgIG1hcmdpbjogMCAtMTJweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2Fib3V0LXNlcnZpY2UgLmVyZ28tYWRob3BfX2Fib3V0LXNlcnZpY2VfX2NvbnRlbnRfX3dyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAyNHB4IDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fYWJvdXQtc2VydmljZSAuZXJnby1hZGhvcF9fYWJvdXQtc2VydmljZV9fY29udGVudF9fd3JhcHBlciB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2Fib3V0LXNlcnZpY2UgLmVyZ28tYWRob3BfX2Fib3V0LXNlcnZpY2UtdGl0bGUge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBtYXJnaW46IDAgMCAyMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2Fib3V0LXNlcnZpY2UgLmVyZ28tYWRob3BfX2Fib3V0LXNlcnZpY2UtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2Fib3V0LXNlcnZpY2UgLmVyZ28tYWRob3BfX2Fib3V0LXNlcnZpY2VfX2NvbnRlbnRfX2xlZnQsXG4gIC5lcmdvLWFkaG9wX19hYm91dC1zZXJ2aWNlIC5lcmdvLWFkaG9wX19hYm91dC1zZXJ2aWNlX19jb250ZW50X19yaWdodCB7XG4gICAgcGFkZGluZzogMCAxMnB4O1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9fYWRkcmVzc0l0ZW0ge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbi5lcmdvLWFkaG9wX19hZGRyZXNzSXRlbSAuZXJnby1hZGhvcF9fYnV0dG9uX19jb21wb25lbnQge1xuICBtYXJnaW4tdG9wOiAzOXB4O1xufVxuLmVyZ28tYWRob3BfX2FkZHJlc3NJdGVtIC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5lcmdvLWFkaG9wX19hZGRyZXNzSXRlbSAuZm9vdGVyX19saW5rcy1oZWFkaW5nLS1zZWNvbmRhcnkge1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG4uZXJnby1hZGhvcF9fYWRkcmVzc0l0ZW0gLmVyZ28tYWRob3BfX2FkZHJlc3NJdGVtX19hZ2VuY3lOYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4uZXJnby1hZGhvcF9fYWRkcmVzc0l0ZW0gLmVyZ28tYWRob3BfX2FkZHJlc3NJdGVtX19jb250YWN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmVyZ28tYWRob3BfX2FkZHJlc3NJdGVtIC5lcmdvLWFkaG9wX19hZGRyZXNzSXRlbV9fY29udGFjdCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbn1cbi5lcmdvLWFkaG9wX19hZGRyZXNzSXRlbSAuZXJnby1hZGhvcF9fYWRkcmVzc0l0ZW1fX2NvbnRhY3QgLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLmVyZ28tYWRob3BfX2FkZHJlc3NJdGVtIHAge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19sYWJlbF9fd3JhcHBlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmVyZ28tYWRob3BfX2NoaXAge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fY2hpcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMCAwIDE4cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnNfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9uc19faXRlbV9fd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnNfX2l0ZW1fX3dyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19pdGVtX193cmFwcGVyIH4gLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9uc19faXRlbV9fd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnNfX2l0ZW1fX3dyYXBwZXIgfiAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19pdGVtX193cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiA5MHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnNfX2l0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnNfX2l0ZW1fX2NvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19pdGVtX19jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDg3MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19pdGVtX19jb250ZW50X19sZWZ0LFxuLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19pdGVtX19jb250ZW50X19yaWdodCB7XG4gIGJvcmRlcjogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnNfX2l0ZW1fX2NvbnRlbnRfX2xlZnQsXG4gIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9uc19faXRlbV9fY29udGVudF9fcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19pdGVtX19jb250ZW50X19sZWZ0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnNfX2l0ZW1fX2NvbnRlbnRfX2xlZnQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnNfX2l0ZW1fX2NvbnRlbnRfX2xlZnQgLmVyZ28tYWRob3BfX29wZW5pbmdIb3Vyc19fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19hZGRyZXNzLFxuLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19waG9uZSxcbi5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9uc19fZmF4IHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZy1sZWZ0OiA0NHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnNfX2FkZHJlc3MgLnJlYWN0LXN2Zy1pY29uLFxuLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19waG9uZSAucmVhY3Qtc3ZnLWljb24sXG4uZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnNfX2ZheCAucmVhY3Qtc3ZnLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9uc19fYWRkcmVzcyBkaXY6bm90KC5jbXAtdGV4dCkgcCxcbi5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9uc19fcGhvbmUgZGl2Om5vdCguY21wLXRleHQpIHAsXG4uZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnNfX2ZheCBkaXY6bm90KC5jbXAtdGV4dCkgcCB7XG4gIG1hcmdpbjogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9uc19fYWRkcmVzcyBkaXY6bm90KC5jbXAtdGV4dCkgcCxcbiAgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19waG9uZSBkaXY6bm90KC5jbXAtdGV4dCkgcCxcbiAgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19mYXggZGl2Om5vdCguY21wLXRleHQpIHAge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19hZGRyZXNzIC5lcmdvLWFkaG9wX190ZXh0LFxuLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19waG9uZSAuZXJnby1hZGhvcF9fdGV4dCxcbi5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9uc19fZmF4IC5lcmdvLWFkaG9wX190ZXh0IHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9uc19fcGhvbmUgLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9uc19fYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnNfX2FkZHJlc3Mge1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9uc19fYWRkcmVzcyAucmVhY3Qtc3ZnLWljb24ge1xuICB0b3A6IDNweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9uc19fYWRkcmVzcyAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9uc19fcGhvbmUge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19waG9uZSAucmVhY3Qtc3ZnLWljb24ge1xuICB0b3A6IC0zcHg7XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnNfX2ZheCB7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5lcmdvLWFkaG9wX19vcGVuaW5nSG91cnMgLmVyZ28tYWRob3BfX29wZW5pbmdIb3Vyc19fdGltZSxcbiAgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fb3BlbmluZ0hvdXJzIHAge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZSAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fcGljdHVyZS5hZGhvcF9fdGVhbSxcbi5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGUtLXNvbG8gLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX3BpY3R1cmUuYWRob3BfX3RlYW0sXG4uZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5hZGhvcF9fdGVhbS0tMS1lbXBsb3llZXMgLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX3BpY3R1cmUuYWRob3BfX3RlYW0sXG4uZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zIC5hZGhvcF9fdGVhbS0tMi1lbXBsb3llZXMgLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX3BpY3R1cmUuYWRob3BfX3RlYW0ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19pdGVtX19jb250ZW50X19yaWdodCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gIGFzcGVjdC1yYXRpbzogMy8yO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9ucyAuZXJnby1hZGhvcF9fYWdlbmN5TG9jYXRpb25zX19pdGVtX19jb250ZW50X19yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lMb2NhdGlvbnMgLmVyZ28tYWRob3BfX2FnZW5jeUxvY2F0aW9uc19faXRlbV9fY29udGVudF9fcmlnaHQgaW1nIHtcbiAgYXNwZWN0LXJhdGlvOiAzLzI7XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVyZ28tYWRob3BfX2FnZW5jeURhdGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS13aGl0ZSwgI2ZmZik7XG4gIHBhZGRpbmctdG9wOiA3cHg7XG4gIHBhZGRpbmctYm90dG9tOiAyNHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2FnZW5jeURhdGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gICAgcGFkZGluZy10b3A6IDMxcHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lEYXRhIC5lcmdvLWFkaG9wX19hZ2VuY3lEYXRhX19jb250ZW50X193cmFwcGVyIHtcbiAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDM5cHg7XG4gIHBhZGRpbmctbGVmdDogMjRweDtcbiAgcGFkZGluZy1yaWdodDogMjRweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19hZ2VuY3lEYXRhIC5lcmdvLWFkaG9wX19hZ2VuY3lEYXRhX19jb250ZW50X193cmFwcGVyIHtcbiAgICBnYXA6IDEwcHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lEYXRhIC5lcmdvLWFkaG9wX19hZGRyZXNzSXRlbV9fYWdlbmN5TmFtZSxcbi5lcmdvLWFkaG9wX19hZ2VuY3lEYXRhIC5lcmdvLWFkaG9wX19vcGVuaW5nSG91cnNfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgbWFyZ2luLWJvdHRvbTogMjlweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19hZ2VuY3lEYXRhIC5lcmdvLWFkaG9wX19hZGRyZXNzSXRlbV9fYWdlbmN5TmFtZSxcbiAgLmVyZ28tYWRob3BfX2FnZW5jeURhdGEgLmVyZ28tYWRob3BfX29wZW5pbmdIb3Vyc19fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5RGF0YSAuZXJnby1hZGhvcF9fYWRkcmVzc0l0ZW1fX2FnZW5jeVRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lEYXRhIC5lcmdvLWFkaG9wX19iYWRnZXMuZXJnby1hZGhvcF9fYmFkZ2VzIC5lcmdvLWFkaG9wX19iYWRnZXNfX2l0ZW0ge1xuICBhc3BlY3QtcmF0aW86IGF1dG87XG4gIG1heC13aWR0aDogNzBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MTJweCkge1xuICAuZXJnby1hZGhvcF9fYWdlbmN5RGF0YSAuZXJnby1hZGhvcF9fYmFkZ2VzLmVyZ28tYWRob3BfX2JhZGdlcyAuZXJnby1hZGhvcF9fYmFkZ2VzX19pdGVtIHtcbiAgICBtYXgtd2lkdGg6IDE0MHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5RGF0YSAuZXJnby1hZGhvcF9fYmFkZ2VzLmVyZ28tYWRob3BfX2JhZGdlcyAuZXJnby1hZGhvcF9fYmFkZ2VzX19pdGVtIC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeURhdGEgLmVyZ28tYWRob3BfX2JhZGdlcy5lcmdvLWFkaG9wX19iYWRnZXMgLmVyZ28tYWRob3BfX2JhZGdlc19faXRlbSBpbWcge1xuICBhc3BlY3QtcmF0aW86IDE0LzE5O1xuICBvYmplY3QtZml0OiBjb250YWluO1xuICBvYmplY3QtcG9zaXRpb246IHRvcDtcbiAgbWluLWhlaWdodDogNzBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkxMnB4KSB7XG4gIC5lcmdvLWFkaG9wX19hZ2VuY3lEYXRhIC5lcmdvLWFkaG9wX19iYWRnZXMuZXJnby1hZGhvcF9fYmFkZ2VzIC5lcmdvLWFkaG9wX19iYWRnZXNfX2l0ZW0gaW1nIHtcbiAgICBtaW4taGVpZ2h0OiAxNDBweDtcbiAgfVxufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5wYWdlX19zbmlwcGV0cyAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuYm9keS1zY3JvbGwtbG9ja2VkIC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlX19zbmlwcGV0cyAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIHRvcDogNzNweDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS10aGVtZS1saWdodC1ncmF5LCAjZDlkOWQ5KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5wYWdlX19zbmlwcGV0cyAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0LS12aXNpYmxlIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSA3M3B4KTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MTJweCkge1xuICAucGFnZV9fc25pcHBldHMgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCB7XG4gICAgdG9wOiA4MXB4O1xuICB9XG4gIC5wYWdlX19zbmlwcGV0cyAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQtLXZpc2libGUge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSA4MXB4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5wYWdlX19zbmlwcGV0cyAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IHtcbiAgICB0b3A6IDk1cHg7XG4gIH1cbiAgLnBhZ2VfX3NuaXBwZXRzIC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dC0tdmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gOTVweCk7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQgaDQge1xuICBtYXJnaW46IDA7XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2NvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTQ0MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2NvbnRhaW5lciAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19sb2NhdGlvbi1kZXRhaWxzLFxuICAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2NvbnRhaW5lciAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19saW5rc19fbGlzdCB7XG4gICAgcGFkZGluZzogNXB4IDIwcHg7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2NvbnRhaW5lciAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19sb2NhdGlvbi1kZXRhaWxzLFxuICAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2NvbnRhaW5lciAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19saW5rc19fbGlzdCB7XG4gICAgcGFkZGluZzogMTBweCA1MHB4O1xuICAgIG1hcmdpbjogMzBweCAwO1xuICB9XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX3BpY3R1cmUge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICBhc3BlY3QtcmF0aW86IDMvMjtcbiAgZmxleDogMztcbiAgbWFyZ2luOiAyNXB4IDIwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19waWN0dXJlIHtcbiAgICBtYXJnaW46IDQwcHggNTBweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19waWN0dXJlIGltZyB7XG4gIGFzcGVjdC1yYXRpbzogMy8yO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19sb2NhdGlvbi1kZXRhaWxzIHtcbiAgZmxleDogNTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fbG9jYXRpb24tZGV0YWlscyAuZXJnby1hZGhvcF9fYWRkcmVzc0l0ZW0ge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fbG9jYXRpb24tZGV0YWlscyAuZXJnby1hZGhvcF9fYWRkcmVzc0l0ZW0gLmVyZ28tYWRob3BfX2FkZHJlc3NJdGVtX19hZ2VuY3lOYW1lIHtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19sb2NhdGlvbi1kZXRhaWxzIC5lcmdvLWFkaG9wX19hZGRyZXNzSXRlbSB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fbG9jYXRpb24tZGV0YWlscyAuZXJnby1hZGhvcF9fYWRkcmVzc0l0ZW0gLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19saW5rc19fbGlzdC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2xpbmtzX19saXN0IHtcbiAgZmxleDogMztcbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fbGlua3NfX2xpc3QuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19saW5rc19fbGlzdCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19saW5rc19fbGlzdF9fdGl0bGUge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19saW5rc19fbGlzdC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2xpbmtzX19saXN0IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19saW5rc19fbGlzdC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2xpbmtzX19saXN0IGxpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fbGlua3NfX2xpc3QuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19saW5rc19fbGlzdCBsaTpudGgtY2hpbGQoLW4rMykge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogN3B4IDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2xpbmtzX19saXN0LmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fbGlua3NfX2xpc3Qge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tdGhlbWUtbGlnaHQtZ3JheSwgI2Q5ZDlkOSk7XG4gIH1cbiAgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19saW5rc19fbGlzdC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2xpbmtzX19saXN0IHVsIHtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gIH1cbiAgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19saW5rc19fbGlzdC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2xpbmtzX19saXN0IGxpIHtcbiAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19vcGVuaW5nLWhvdXJzIHtcbiAgbWFyZ2luOiAyMHB4IDA7XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX29wZW5pbmctaG91cnMgaDQge1xuICBmb250LXNpemU6IDE2cHg7XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX29wZW5pbmctaG91cnMgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fb3BlbmluZy1ob3Vyc19faGVhZGVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19vcGVuaW5nLWhvdXJzIC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX29wZW5pbmctaG91cnNfX2hlYWRlciB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX29wZW5pbmctaG91cnMgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fb3BlbmluZy1ob3Vyc19faGVhZGVyIC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX29wZW5pbmctaG91cnNfX3RpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDE2cHg7XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX29wZW5pbmctaG91cnMgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fb3BlbmluZy1ob3Vyc19faGVhZGVyIC5yZWFjdC1zdmctaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IHJvdGF0ZSAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19vcGVuaW5nLWhvdXJzIC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX29wZW5pbmctaG91cnNfX2RldGFpbHMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXgtaGVpZ2h0OiAwO1xuICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX29wZW5pbmctaG91cnMuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19vcGVuaW5nLWhvdXJzLS12aXNpYmxlIC5yZWFjdC1zdmctaWNvbiB7XG4gIHJvdGF0ZTogMTgwZGVnO1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19vcGVuaW5nLWhvdXJzLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fb3BlbmluZy1ob3Vycy0tdmlzaWJsZSAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19vcGVuaW5nLWhvdXJzX19kZXRhaWxzIHtcbiAgbWF4LWhlaWdodDogMzAwcHg7XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbiAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMCAyNHB4IDQ4cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWxpZ2h0LWdyYXksICNkOWQ5ZDkpO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb24gLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbiAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2NvbnRhaW5lciB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMzBweDtcbn1cbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uIC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fcGljdHVyZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCA4cHggOHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDA7XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbiAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX3BpY3R1cmU6aGFzKC5hZGhvcC1lcmdvX19pbWFnZSkge1xuICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLXByaW1hcnktbGlnaHQsICNmYmY0ZjQpO1xufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb24gLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19sb2NhdGlvbi1kZXRhaWxzIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDMycHggMjRweDtcbn1cbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uIC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fbGlua3NfX2xpc3QgYSB7XG4gIHBhZGRpbmc6IDA7XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uIHtcbiAgbWF4LXdpZHRoOiA4NzBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmVyZ28tYWRob3BfX2FnZW5jeVByZXNlbnRhdGlvbjpub3QoLnNob3ctbW9yZSkgLmVyZ28tYWRob3BfX2FnZW5jeVByZXNlbnRhdGlvbl9fZGVzY3JpcHRpb24ge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC8qISBhdXRvcHJlZml4ZXI6IGlnbm9yZSBuZXh0ICovXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgfVxuICAuZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uOm5vdCguc2hvdy1tb3JlKSAuZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uX19iZW5lZml0cyxcbiAgLmVyZ28tYWRob3BfX2FnZW5jeVByZXNlbnRhdGlvbjpub3QoLnNob3ctbW9yZSkgLmVyZ28tYWRob3BfX2J1dHRvbi0tcHJpbWFyeSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uOm5vdCguc2hvdy1tb3JlKSAuZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uX19yZWFkLW1vcmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuLmVyZ28tYWRob3BfX2FnZW5jeVByZXNlbnRhdGlvbi5lcmdvLWFkaG9wX19hZ2VuY3lQcmVzZW50YXRpb24tLXdpdGgtcmF0aW5ncyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkxMnB4KSB7XG4gIC5lcmdvLWFkaG9wX19hZ2VuY3lQcmVzZW50YXRpb24uZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uLS13aXRoLXJhdGluZ3Mge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lQcmVzZW50YXRpb24uZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uLS13aXRoLXJhdGluZ3MgLmVyZ28tYWRob3BfX2FnZW5jeVByZXNlbnRhdGlvbl9fYXNpZGUge1xuICBmbGV4LXNocmluazogMDtcbiAgbWFyZ2luLXRvcDogNjBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkxMnB4KSB7XG4gIC5lcmdvLWFkaG9wX19hZ2VuY3lQcmVzZW50YXRpb24uZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uLS13aXRoLXJhdGluZ3MgLmVyZ28tYWRob3BfX2FnZW5jeVByZXNlbnRhdGlvbl9fYXNpZGUge1xuICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgd2lkdGg6IDM1JTtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2FnZW5jeVByZXNlbnRhdGlvbiAuZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uX19jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uIC5lcmdvLWFkaG9wX19hZ2VuY3lQcmVzZW50YXRpb25fX2NvbnRlbnQgaDIge1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2FnZW5jeVByZXNlbnRhdGlvbiAuZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uX19jb250ZW50IC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uIC5lcmdvLWFkaG9wX19hZ2VuY3lQcmVzZW50YXRpb25fX2FzaWRlIHtcbiAgbWFyZ2luLXRvcDogNjBweDtcbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lQcmVzZW50YXRpb24gLmVyZ28tYWRob3BfX2FnZW5jeVByZXNlbnRhdGlvbl9fYXNpZGUgLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhTGlua3Mge1xuICBtYXJnaW4tdG9wOiA2MHB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeVByZXNlbnRhdGlvbiAuZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uX19iZW5lZml0cyB7XG4gIG1hcmdpbi10b3A6IDYwcHg7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uIC5lcmdvLWFkaG9wX19hZ2VuY3lQcmVzZW50YXRpb25fX3JlYWQtbW9yZSxcbi5lcmdvLWFkaG9wX19hZ2VuY3lQcmVzZW50YXRpb24gLmVyZ28tYWRob3BfX2FnZW5jeVByZXNlbnRhdGlvbl9fcmVhZC1sZXNzIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMjFweDtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLXRoZW1lLXByaW1hcnksICM4ZTAwMzgpO1xuICBkaXNwbGF5OiBub25lO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBwYWRkaW5nOiAwO1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeVByZXNlbnRhdGlvbiAuZXJnby1hZGhvcF9fYWdlbmN5UHJlc2VudGF0aW9uX19yZWFkLWxlc3Mge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMjRweDtcbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9fYWdlbmN5UmF0aW5nSG9yaXpvbnRhbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19hZ2VuY3lSYXRpbmdIb3Jpem9udGFsIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWwgLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWxfX2ltYWdlIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fYWdlbmN5UmF0aW5nSG9yaXpvbnRhbCAuZXJnby1hZGhvcF9fYWdlbmN5UmF0aW5nSG9yaXpvbnRhbF9faW1hZ2Uge1xuICAgIHdpZHRoOiA4MHB4O1xuICAgIGhlaWdodDogODBweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWwgLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWxfX2NvbnRlbnQge1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19hZ2VuY3lSYXRpbmdIb3Jpem9udGFsIC5lcmdvLWFkaG9wX19hZ2VuY3lSYXRpbmdIb3Jpem9udGFsX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWwgLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWxfX2NvbnRlbnQgcCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIG1hcmdpbjogMDtcbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lSYXRpbmdIb3Jpem9udGFsIC5lcmdvLWFkaG9wX19hZ2VuY3lSYXRpbmdIb3Jpem9udGFsX19jb250ZW50IC5lcmdvLWFkaG9wX19hZ2VuY3lSYXRpbmdIb3Jpem9udGFsX19yYXRpbmdzX19jdGEge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWwgLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWxfX25vX19yYXRpbmdfX3RleHQge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fYWdlbmN5UmF0aW5nSG9yaXpvbnRhbCAuZXJnby1hZGhvcF9fYWdlbmN5UmF0aW5nSG9yaXpvbnRhbF9fcmF0aW5ncyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWwgLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWxfX3JhdGluZ3MuZmFjZWJvb2sgLmVyZ28tYWRob3BfX3JhdGluZ1ZhbHVlX190ZXh0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbi5lcmdvLWFkaG9wX19hZ2VuY3lSYXRpbmdIb3Jpem9udGFsIC5lcmdvLWFkaG9wX19hZ2VuY3lSYXRpbmdIb3Jpem9udGFsX19yYXRpbmdzIC5lcmdvLWFkaG9wX19yYXRpbmdWYWx1ZS0td2l0aC10b29sdGlwIHtcbiAgcGFkZGluZy1yaWdodDogNDVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWwgLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWxfX3JhdGluZ3MgLmVyZ28tYWRob3BfX3JhdGluZ1ZhbHVlLS13aXRoLXRvb2x0aXAgLmVyZ28tYWRob3BfX3Rvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWwgLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWxfX3JhdGluZ3MgLmVyZ28tYWRob3BfX3JhdGluZ1ZhbHVlLS13aXRoLXRvb2x0aXAgLmVyZ28tYWRob3BfX3Rvb2x0aXAgLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheV9fdHJpZ2dlciB7XG4gIHdpZHRoOiA0MHB4O1xufVxuLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWwgLmVyZ28tYWRob3BfX2FnZW5jeVJhdGluZ0hvcml6b250YWxfX3JhdGluZ3MgLmVyZ28tYWRob3BfX3JhdGluZ1N0YXJzX19zdGFyc19fdGV4dCxcbi5lcmdvLWFkaG9wX19hZ2VuY3lSYXRpbmdIb3Jpem9udGFsIC5lcmdvLWFkaG9wX19hZ2VuY3lSYXRpbmdIb3Jpem9udGFsX19yYXRpbmdzIC5lcmdvLWFkaG9wX19yYXRpbmdWYWx1ZV9fdGV4dCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDEycHg7XG4gIG1hcmdpbi10b3A6IDNweDtcbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYWRob3AtZXJnb19fcmF0aW5nVmVydGljYWwge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1saWdodC1ncmF5LCAjZDlkOWQ5KTtcbiAgYm9yZGVyLXJhZGl1czogOXB4O1xufVxuLmFkaG9wLWVyZ29fX3JhdGluZ1ZlcnRpY2FsIC5hZGhvcC1lcmdvX19yYXRpbmdWZXJ0aWNhbF9faGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHZhcigtLXRoZW1lLWxpZ2h0LWdyYXksICNkOWQ5ZDkpO1xufVxuLmFkaG9wLWVyZ29fX3JhdGluZ1ZlcnRpY2FsIC5hZGhvcC1lcmdvX19yYXRpbmdWZXJ0aWNhbF9fc3ViaGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luOiAwO1xufVxuLmFkaG9wLWVyZ29fX3JhdGluZ1ZlcnRpY2FsIC5hZGhvcC1lcmdvX19yYXRpbmdWZXJ0aWNhbF9faGVhZGluZyxcbi5hZGhvcC1lcmdvX19yYXRpbmdWZXJ0aWNhbCAuYWRob3AtZXJnb19fcmF0aW5nVmVydGljYWxfX3N1YmhlYWRpbmcge1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYWRob3AtZXJnb19fcmF0aW5nVmVydGljYWwgLmFkaG9wLWVyZ29fX3JhdGluZ1ZlcnRpY2FsX19oZWFkaW5nOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmFkaG9wLWVyZ29fX3JhdGluZ1ZlcnRpY2FsIC5hZGhvcC1lcmdvX19yYXRpbmdWZXJ0aWNhbF9fc3ViaGVhZGluZzpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG4uYWRob3AtZXJnb19fcmF0aW5nVmVydGljYWwgLmFkaG9wLWVyZ29fX3JhdGluZ1ZlcnRpY2FsX19saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmFkaG9wLWVyZ29fX3JhdGluZ1ZlcnRpY2FsIC5hZGhvcC1lcmdvX19yYXRpbmdWZXJ0aWNhbF9faXRlbSB7XG4gIHBhZGRpbmc6IDMwcHg7XG59XG4uYWRob3AtZXJnb19fcmF0aW5nVmVydGljYWwgLmFkaG9wLWVyZ29fX3JhdGluZ1ZlcnRpY2FsX19pdGVtOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWxpZ2h0LWdyYXksICNkOWQ5ZDkpO1xufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX19iYWRnZXMgLmVyZ28tYWRob3BfX2JhZGdlc19faXRlbSB7XG4gIGFzcGVjdC1yYXRpbzogMTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi5lcmdvLWFkaG9wX19iYWRnZXMgLmVyZ28tYWRob3BfX2JhZGdlc19faXRlbTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLmVyZ28tYWRob3BfX2JhZGdlcyAuZXJnby1hZGhvcF9fYmFkZ2VzX19pdGVtIGltZyB7XG4gIGFzcGVjdC1yYXRpbzogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNzBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkxMnB4KSB7XG4gIC5lcmdvLWFkaG9wX19iYWRnZXMgLmVyZ28tYWRob3BfX2JhZGdlc19faXRlbSBpbWcge1xuICAgIG1heC13aWR0aDogMTQwcHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19iYWRnZXMgLmVyZ28tYWRob3BfX2JhZGdlc19faXRlbSAuZXJnby1hZGhvcF9fYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNhbXBhaWduc19fY29udGVudCAuY2FtcGFpZ25fX3RlYXNlcl9fd3JhcHBlcjpudGgtY2hpbGQoZXZlbikgLmVyZ28tYWRob3BfX2NhbXBhaWduVGVhc2VyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jYW1wYWlnbnNfX2NvbnRlbnQgLmNhbXBhaWduX190ZWFzZXJfX3dyYXBwZXI6bnRoLWNoaWxkKGV2ZW4pIC5lcmdvLWFkaG9wX19jYW1wYWlnblRlYXNlciBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgNHB4IDRweCAwO1xuICB9XG59XG4uY2FtcGFpZ25zX19jb250ZW50IC5jYW1wYWlnbl9fdGVhc2VyX193cmFwcGVyOmxhc3QtY2hpbGQgLmVyZ28tYWRob3BfX2NhbXBhaWduVGVhc2VyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9fY2FtcGFpZ25UZWFzZXIge1xuICBtYXgtd2lkdGg6IDg3MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogMCAzcHggNXB4IC0xcHggcmdiYSh2YXIoLS10aGVtZS1ibGFjay1yZ2IpLCAwLjE2KSwgMCA2cHggMTBweCAwIHJnYmEodmFyKC0tdGhlbWUtYmxhY2stcmdiKSwgMC4xMiksIDAgMXB4IDE4cHggMCByZ2JhKHZhcigtLXRoZW1lLWJsYWNrLXJnYiksIDAuMSk7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19jYW1wYWlnblRlYXNlciB7XG4gICAgbWluLWhlaWdodDogMzIwcHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19jYW1wYWlnblRlYXNlciAuZXJnby1hZGhvcF9fY2FtcGFpZ25UZWFzZXJfX2ltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDIxN3B4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2NhbXBhaWduVGVhc2VyIC5lcmdvLWFkaG9wX19jYW1wYWlnblRlYXNlcl9faW1hZ2Uge1xuICAgIG1heC13aWR0aDogNDIwcHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19jYW1wYWlnblRlYXNlciAuZXJnby1hZGhvcF9fY2FtcGFpZ25UZWFzZXJfX2ltYWdlIGltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19jYW1wYWlnblRlYXNlciAuZXJnby1hZGhvcF9fY2FtcGFpZ25UZWFzZXJfX2ltYWdlIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDAgMCA0cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19jYW1wYWlnblRlYXNlciAuZXJnby1hZGhvcF9fY2FtcGFpZ25UZWFzZXJfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2NhbXBhaWduVGVhc2VyIC5lcmdvLWFkaG9wX19jYW1wYWlnblRlYXNlcl9fY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDQwcHggNDhweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQyMHB4KTtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2NhbXBhaWduVGVhc2VyIC5lcmdvLWFkaG9wX19jYW1wYWlnblRlYXNlcl9fdGl0bGUge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMCAwIDRweDtcbn1cbi5lcmdvLWFkaG9wX19jYW1wYWlnblRlYXNlciAuZXJnby1hZGhvcF9fY2FtcGFpZ25UZWFzZXJfX3N1YnRpdGxlIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4uZXJnby1hZGhvcF9fY2FtcGFpZ25UZWFzZXIgLmVyZ28tYWRob3BfX2NhbXBhaWduVGVhc2VyX19kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG59XG4uZXJnby1hZGhvcF9fY2FtcGFpZ25UZWFzZXIgLmVyZ28tYWRob3BfX2NhbXBhaWduVGVhc2VyX19kZXNjcmlwdGlvbiBwIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbn1cbi5lcmdvLWFkaG9wX19jYW1wYWlnblRlYXNlciAuZXJnby1hZGhvcF9fY2FtcGFpZ25UZWFzZXJfX2Rlc2NyaXB0aW9uIHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbjogMDtcbn1cbi5lcmdvLWFkaG9wX19jYW1wYWlnblRlYXNlciAuZXJnby1hZGhvcF9fY2FtcGFpZ25UZWFzZXJfX2Rlc2NyaXB0aW9uIHVsLFxuLmVyZ28tYWRob3BfX2NhbXBhaWduVGVhc2VyIC5lcmdvLWFkaG9wX19jYW1wYWlnblRlYXNlcl9fZGVzY3JpcHRpb24gb2wge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uZXJnby1hZGhvcF9fY2FtcGFpZ25UZWFzZXIgLmVyZ28tYWRob3BfX2NhbXBhaWduVGVhc2VyX19jdGFfX3dyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDEycHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fY2FtcGFpZ25UZWFzZXIgLmVyZ28tYWRob3BfX2NhbXBhaWduVGVhc2VyX19jdGFfX3dyYXBwZXIge1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgZ2FwOiAxNnB4O1xuICB9XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5zbGljay1saXN0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IGhhbmQ7XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLnNsaWNrLXRyYWNrOmJlZm9yZSwgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG59XG4uc2xpY2stdHJhY2s6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbGljay1sb2FkaW5nIC5zbGljay10cmFjayB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBkaXNwbGF5OiBub25lO1xufVxuW2Rpcj1ydGxdIC5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5zbGljay1zbGlkZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zbGljay1zbGlkZS5zbGljay1sb2FkaW5nIGltZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uc2xpY2stbG9hZGluZyAuc2xpY2stc2xpZGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2xpY2stc2xpZGVyIHtcbiAgdXNlci1zZWxlY3Q6IGF1dG87XG59XG4uc2xpY2stc2xpZGVyLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1saXN0LFxuLnNsaWNrLXNsaWRlci5zbGljay1pbml0aWFsaXplZCAuc2xpY2stdHJhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLnNsaWNrLXNsaWRlci5zbGljay13aXRoLWFycm93cyB7XG4gIG1hcmdpbi1sZWZ0OiAzNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDM2cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2xpY2stc2xpZGVyLnNsaWNrLXdpdGgtYXJyb3dzIHtcbiAgICBtYXJnaW4tbGVmdDogNDhweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDQ4cHg7XG4gIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLWFycm93LS1jdXN0b20ge1xuICB3aWR0aDogMzZweDtcbiAgaGVpZ2h0OiAzNnB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1wcmltYXJ5LCAjOGUwMDM4KTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stYXJyb3ctLWN1c3RvbS5zbGljay1wcmV2IHtcbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMCUsIC01MCUpO1xufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stYXJyb3ctLWN1c3RvbS5zbGljay1uZXh0IHtcbiAgbGVmdDogMTAwJTtcbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay1kb3RzIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtcHJpbWFyeSwgIzhlMDAzOCk7XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlN2U2ZTY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9fY2hpcCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWFkZGl0aW9uYWwtMiwgIzAwOTI4NCk7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS13aGl0ZSwgI2ZmZik7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICBwYWRkaW5nOiA1cHggMTRweDtcbn1cbi5lcmdvLWFkaG9wX19jaGlwLmNoaXAtZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDI4MDcxO1xufVxuLmVyZ28tYWRob3BfX2NoaXAuY2hpcC1ibHVlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtYWRkaXRpb25hbC0zLCAjMGY5NGE3KTtcbn1cbi5lcmdvLWFkaG9wX19jaGlwLmNoaXAtdmlvbGV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtYWRkaXRpb25hbC0xLCAjYjMxNzY3KTtcbn1cbi5lcmdvLWFkaG9wX19jaGlwLmNoaXAtb3JhbmdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtYWRkaXRpb25hbC01LCAjZTg3YTE2KTtcbn1cbi5lcmdvLWFkaG9wX19jaGlwLmNoaXAteWVsbG93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtYWRkaXRpb25hbC00LCAjZjZjYjAwKTtcbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX19jb250YWN0QmFyX19vdmVybGF5IHtcbiAgei1pbmRleDogMTA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBwYWRkaW5nOiAwIDZweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNDI2cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fY29udGFjdEJhcl9fb3ZlcmxheSB7XG4gICAgbWFyZ2luLXRvcDogLTE1cHg7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG4uZXJnby1hZGhvcF9fY29udGFjdEJhcl9fb3ZlcmxheSAuZXJnby1hZGhvcF9fY29udGFjdEJhcl9fb3ZlcmxheV9fY29udGVudCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLXdoaXRlLCAjZmZmKTtcbiAgYm94LXNoYWRvdzogMCAyNHB4IDM4cHggM3B4IHJnYmEodmFyKC0tdGhlbWUtYmxhY2stcmdiKSwgMC4xMiksIDAgOXB4IDQ2cHggOHB4IHJnYmEodmFyKC0tdGhlbWUtYmxhY2stcmdiKSwgMC4xKSwgMCAxMXB4IDE1cHggLTdweCByZ2JhKHZhcigtLXRoZW1lLWJsYWNrLXJnYiksIDAuMTYpO1xuICBib3JkZXItcmFkaXVzOiA5cHg7XG59XG4uZXJnby1hZGhvcF9fY29udGFjdEJhcl9fb3ZlcmxheSAuZXJnby1hZGhvcF9fY29udGFjdEJhcl9fbGVmdC1pY29uLWN0YSAuZXJnby1hZGhvcF9fYnV0dG9uX190ZXh0IHtcbiAgY29sb3I6IHZhcigtLXRoZW1lLXByaW1hcnksICM4ZTAwMzgpO1xufVxuXG4uZXJnby1hZGhvcF9fY29udGFjdEJhciBoNCB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fY29udGFjdEJhciBoNCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19jb250YWN0QmFyIC5lcmdvLWFkaG9wX19jb250YWN0QmFyX19jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDEyODBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMTVweCAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2NvbnRhY3RCYXIgLmVyZ28tYWRob3BfX2NvbnRhY3RCYXJfX2NvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2NvbnRhY3RCYXIgLmVyZ28tYWRob3BfX2NvbnRhY3RCYXJfX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fY29udGFjdEJhciAuZXJnby1hZGhvcF9fY29udGFjdEJhcl9faXRlbSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxufVxuLmVyZ28tYWRob3BfX2NvbnRhY3RCYXIgLmVyZ28tYWRob3BfX2NvbnRhY3RCYXJfX2ljb24tbGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMjFweDtcbiAgY29sb3I6IHZhcigtLXRoZW1lLXByaW1hcnksICM4ZTAwMzgpO1xufVxuLmVyZ28tYWRob3BfX2NvbnRhY3RCYXIgLmVyZ28tYWRob3BfX2NvbnRhY3RCYXJfX2ljb24tbGluay5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbmsuZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbmsge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtZGFya2VzdC1ncmF5LCAjMzMzKTtcbiAgcGFkZGluZzogMTVweCAyNHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBnYXA6IDEycHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fY29udGFjdEJhciAuZXJnby1hZGhvcF9fY29udGFjdEJhcl9faWNvbi1saW5rLmVyZ28tYWRob3BfX2J1dHRvbi5lcmdvLWFkaG9wX19idXR0b24tLXRleHQtbGluay5lcmdvLWFkaG9wX19idXR0b24tLXRleHQtbGluayB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19jb250YWN0QmFyIC5lcmdvLWFkaG9wX19jb250YWN0QmFyX19pY29uLWxpbmsuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLXRoZW1lLXByaW1hcnksICM4ZTAwMzgpO1xufVxuLmVyZ28tYWRob3BfX2NvbnRhY3RCYXIgLmVyZ28tYWRob3BfX2NvbnRhY3RCYXJfX2ljb24tbGluay5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbmsuZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbms6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5lcmdvLWFkaG9wX19jb250YWN0QmFyIC5lcmdvLWFkaG9wX19jb250YWN0QmFyX19pY29uLWxpbmsgLnJlYWN0LXN2Zy1pY29uLFxuLmVyZ28tYWRob3BfX2NvbnRhY3RCYXIgLmVyZ28tYWRob3BfX2NvbnRhY3RCYXJfX2ljb24tbGluayAuZXJnby1hZGhvcF9fY29udGFjdEJhcl9faWNvbi1jaGV2cm9uLFxuLmVyZ28tYWRob3BfX2NvbnRhY3RCYXIgLmVyZ28tYWRob3BfX2NvbnRhY3RCYXJfX2ljb24tbGluayAuZXJnby1hZGhvcF9fY29udGFjdEJhcl9faWNvbi1saW5rX190ZXh0IHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uZXJnby1hZGhvcF9fY29udGFjdEJhciAuZXJnby1hZGhvcF9fY29udGFjdEJhcl9faWNvbi1saW5rIC5lcmdvLWFkaG9wX19jb250YWN0QmFyX19pY29uLWxpbmtfX3RleHQge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICBtYXJnaW46IDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjI1cHg7XG59XG4uZXJnby1hZGhvcF9fY29udGFjdEJhciAuZXJnby1hZGhvcF9fY29udGFjdEJhcl9faWNvbi1saW5rLmVyZ28tYWRob3BfX2NvbnRhY3RCYXJfX2ljb24tbGluay0tcHJpbWFyeSB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLXRoZW1lLWRhcmtlc3QtZ3JheSwgIzMzMyk7XG4gIHBhZGRpbmc6IDE1cHggMjRweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19jb250YWN0QmFyIC5lcmdvLWFkaG9wX19jb250YWN0QmFyX19pY29uLWxpbmsuZXJnby1hZGhvcF9fY29udGFjdEJhcl9faWNvbi1saW5rLS1wcmltYXJ5IHtcbiAgICBoZWlnaHQ6IDkycHg7XG4gICAgbGluZS1oZWlnaHQ6IDkycHg7XG4gICAgcGFkZGluZzogMCAyNHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fY29udGFjdEJhciAuZXJnby1hZGhvcF9fY29udGFjdEJhcl9faWNvbi1saW5rLmVyZ28tYWRob3BfX2NvbnRhY3RCYXJfX2ljb24tbGluay0tZXhwYW5kZWQge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtcHJpbWFyeSwgIzhlMDAzOCk7XG59XG4uZXJnby1hZGhvcF9fY29udGFjdEJhciAuZXJnby1hZGhvcF9fY29udGFjdEJhcl9faWNvbi1saW5rLmVyZ28tYWRob3BfX2NvbnRhY3RCYXJfX2ljb24tbGluay0tZXhwYW5kZWQuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX2J1dHRvbiB7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1wcmltYXJ5LCAjOGUwMDM4KTtcbn1cbi5lcmdvLWFkaG9wX19jb250YWN0QmFyIC5lcmdvLWFkaG9wX19jb250YWN0QmFyX19pY29uLWxpbmsuZXJnby1hZGhvcF9fY29udGFjdEJhcl9faWNvbi1saW5rLS1leHBhbmRlZCAuZXJnby1hZGhvcF9fY29udGFjdEJhcl9faWNvbi1jaGV2cm9uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cbi5lcmdvLWFkaG9wX19jb250YWN0QmFyIC5lcmdvLWFkaG9wX19jb250YWN0QmFyX19pY29uLWxpbmsuZXJnby1hZGhvcF9fY29udGFjdEJhcl9faWNvbi1saW5rLS1leHBhbmRlZCBzdmcge1xuICBmaWxsOiB2YXIoLS10aGVtZS1wcmltYXJ5LCAjOGUwMDM4KTtcbn1cbi5lcmdvLWFkaG9wX19jb250YWN0QmFyIC5lcmdvLWFkaG9wX19jb250YWN0Q29sdW1uX19waG9uZXMtYXJlYSAuZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbms6aG92ZXIgLnJlYWN0LXN2Zy1pY29uIHtcbiAgY29sb3I6IHZhcigtLXRoZW1lLXByaW1hcnksICM4ZTAwMzgpO1xufVxuLmVyZ28tYWRob3BfX2NvbnRhY3RCYXIgLmVyZ28tYWRob3BfX2NvbnRhY3RDb2x1bW5fX3Bob25lcy1hcmVhIC5lcmdvLWFkaG9wX19idXR0b24tLXRleHQtbGluayAucmVhY3Qtc3ZnLWljb24ge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtZGFya2VzdC1ncmF5LCAjMzMzKTtcbn1cbi5lcmdvLWFkaG9wX19jb250YWN0QmFyIC5lcmdvLWFkaG9wX19jb250YWN0QmFyX19vdmVybGF5X19zbmlwcGV0LWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAxMnB4KTtcbiAgcGFkZGluZzogMjRweCAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2NvbnRhY3RCYXIgLmVyZ28tYWRob3BfX2NvbnRhY3RCYXJfX292ZXJsYXlfX3NuaXBwZXQtY29udGVudCB7XG4gICAgd2lkdGg6IG1pbih2YXIoLS1jb2x1bW5zKSAqIDQwMHB4LCAxMjY4cHgpO1xuICB9XG59XG4uZXJnby1hZGhvcF9fY29udGFjdEJhciAuZXJnby1hZGhvcF9fY29udGFjdEJhcl9fb3ZlcmxheV9fc25pcHBldC1jb250ZW50IC50ZWFzZXJzR3JpZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cbi5lcmdvLWFkaG9wX19jb250YWN0QmFyIC5lcmdvLWFkaG9wX19jb250YWN0QmFyX19vdmVybGF5X19zbmlwcGV0LWNvbnRlbnQgLnRlYXNlcnNHcmlkIC50ZWFzZXJzR3JpZF9fbGlzdCB7XG4gIGJvcmRlcjogMDtcbn1cblxuLmN1c3RvbUNvbHVtblNuaXBwZXQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX19jb250YWN0Q29sdW1uIHtcbiAgcGFkZGluZzogMzBweCAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2NvbnRhY3RDb2x1bW4ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1hdXRvLWZsb3c6IGNvbHVtbjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgyLCBhdXRvKTtcbiAgICBncmlkLWF1dG8tY29sdW1uczogbWlubWF4KDAsIDFmcik7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2NvbnRhY3RDb2x1bW4gLmVyZ28tYWRob3BfX2NvbnRhY3RDb2x1bW5fX2l0ZW0ge1xuICBwYWRkaW5nOiAwIDMwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDQyNnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2NvbnRhY3RDb2x1bW4gLmVyZ28tYWRob3BfX2NvbnRhY3RDb2x1bW5fX2l0ZW0ge1xuICAgIC1tb3otdGV4dC1kZWNvcmF0aW9uLWxpbmU6IDQyNnB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19jb250YWN0Q29sdW1uIC5lcmdvLWFkaG9wX19jb250YWN0Q29sdW1uX19pdGVtOmxhc3QtY2hpbGQgYnV0dG9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5lcmdvLWFkaG9wX19jb250YWN0Q29sdW1uIC5lcmdvLWFkaG9wX19jb250YWN0Q29sdW1uX19pdGVtLS1jb250ZW50LWFyZWEge1xuICBwYWRkaW5nOiAwIDMwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fY29udGFjdENvbHVtbiAuZXJnby1hZGhvcF9fY29udGFjdENvbHVtbl9faXRlbS0tY29udGVudC1hcmVhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG4uZXJnby1hZGhvcF9fY29udGFjdENvbHVtbiAuZXJnby1hZGhvcF9fY29udGFjdENvbHVtbl9faXRlbS0tY29udGVudC1hcmVhIH4gLmVyZ28tYWRob3BfX2NvbnRhY3RDb2x1bW5fX2l0ZW0tLWNvbnRlbnQtYXJlYSB7XG4gIG1hcmdpbi10b3A6IDM2cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fY29udGFjdENvbHVtbiAuZXJnby1hZGhvcF9fY29udGFjdENvbHVtbl9faXRlbS0tY29udGVudC1hcmVhIH4gLmVyZ28tYWRob3BfX2NvbnRhY3RDb2x1bW5fX2l0ZW0tLWNvbnRlbnQtYXJlYSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2NvbnRhY3RDb2x1bW4gLmVyZ28tYWRob3BfX2NvbnRhY3RDb2x1bW5fX2l0ZW0tLWNvbnRlbnQtYXJlYSAuY21wLXRleHQgcCB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG4uZXJnby1hZGhvcF9fY29udGFjdENvbHVtbiAuZXJnby1hZGhvcF9fY29udGFjdENvbHVtbl9faXRlbS0tY29udGVudC1hcmVhIC5lcmdvLWFkaG9wX19idXR0b246bm90KC5lcmdvLWFkaG9wX19idXR0b24tLXRleHQtbGluaykge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtZGFya2VzdC1ncmF5LCAjMzMzKTtcbn1cbi5lcmdvLWFkaG9wX19jb250YWN0Q29sdW1uIC5lcmdvLWFkaG9wX19jb250YWN0Q29sdW1uX19pdGVtLS1idXR0b24tYXJlYSAuZXJnby1hZGhvcF9fYnV0dG9uX19jb21wb25lbnQge1xuICBtYXJnaW4tYm90dG9tOiAyMXB4O1xufVxuLmVyZ28tYWRob3BfX2NvbnRhY3RDb2x1bW4gLmVyZ28tYWRob3BfX2NvbnRhY3RDb2x1bW5fX2l0ZW0tLWJ1dHRvbi1hcmVhIC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCAuZXJnby1hZGhvcF9fYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fY29udGFjdENvbHVtbiAuZXJnby1hZGhvcF9fY29udGFjdENvbHVtbl9faXRlbS0tYnV0dG9uLWFyZWEgLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IC5lcmdvLWFkaG9wX19idXR0b24ge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG4uZXJnby1hZGhvcF9fY29udGFjdENvbHVtbiAuZXJnby1hZGhvcF9fY29udGFjdENvbHVtbl9fcGhvbmVzLWFyZWEgPiBkaXY6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDE0cHg7XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXIgLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXJfX3RleHQge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fdGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTVweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXIgLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXJfX3RleHQgcCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIG1hcmdpbjogMDtcbn1cbi5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyIC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyX19jb250ZW50X193cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gd3JhcDtcbiAgZ2FwOiAzMnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXIgLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXJfX2NvbnRlbnRfX3dyYXBwZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IDQ4cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyIC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyX19pbWFnZSB7XG4gIGhlaWdodDogMTc2cHg7XG4gIHdpZHRoOiAxNzZweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9faW1hZ2Uge1xuICAgIG1hcmdpbjogMDtcbiAgICBoZWlnaHQ6IDI2OHB4O1xuICAgIHdpZHRoOiAyNjhweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXIgLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXJfX2ltYWdlIGltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAzMjBweCk7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyIC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyX19jb250ZW50IC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyX19hZ2VudCB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fY29udGVudCAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fYWdlbnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyIC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyX19jb250ZW50IC5lcmdvLWFkaG9wX19idXR0b24ge1xuICBwYWRkaW5nLXRvcDogN3B4O1xuICBwYWRkaW5nLWJvdHRvbTogN3B4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXIgLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXJfX2NvbnRlbnRfX2lubmVyIHtcbiAgICBtYXgtd2lkdGg6IDMyMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4uZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fYWRkcmVzcyxcbi5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyIC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyX19waG9uZSxcbi5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyIC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyX19tb2JpbGUsXG4uZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fZmF4IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDQ0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyIC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyX19hZGRyZXNzOm5vdCg6bGFzdC1jaGlsZCk6bm90KC53aXRoLXJvdXRlLXBsYW5lbiksXG4uZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fcGhvbmU6bm90KDpsYXN0LWNoaWxkKTpub3QoLndpdGgtcm91dGUtcGxhbmVuKSxcbi5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyIC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyX19tb2JpbGU6bm90KDpsYXN0LWNoaWxkKTpub3QoLndpdGgtcm91dGUtcGxhbmVuKSxcbi5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyIC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyX19mYXg6bm90KDpsYXN0LWNoaWxkKTpub3QoLndpdGgtcm91dGUtcGxhbmVuKSB7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG59XG4uZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fYWRkcmVzcyBwLFxuLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXIgLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXJfX3Bob25lIHAsXG4uZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fbW9iaWxlIHAsXG4uZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fZmF4IHAge1xuICBtYXJnaW46IDA7XG59XG4uZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fYWRkcmVzcyAucmVhY3Qtc3ZnLWljb24sXG4uZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fcGhvbmUgLnJlYWN0LXN2Zy1pY29uLFxuLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXIgLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXJfX21vYmlsZSAucmVhY3Qtc3ZnLWljb24sXG4uZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fZmF4IC5yZWFjdC1zdmctaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMXB4O1xuICBsZWZ0OiAwO1xufVxuLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXIgLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXJfX2FkZHJlc3MgLmVyZ28tYWRob3BfX2J1dHRvbi5lcmdvLWFkaG9wX19idXR0b24tLXRleHQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fYWRkcmVzcyAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyIC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyX19waG9uZSAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rLFxuLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXIgLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXJfX21vYmlsZSAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyIC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyX19waG9uZSAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rLFxuICAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlciAuZXJnby1hZGhvcF9fY29udGFjdFRlYXNlcl9fbW9iaWxlIC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXIgLmVyZ28tYWRob3BfX2NvbnRhY3RUZWFzZXJfX2N0YXNfX3dyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiAxNnB4O1xuICBwYWRkaW5nLXRvcDogNDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyIC5lcmdvLWFkaG9wX19jb250YWN0VGVhc2VyX19jdGFzX193cmFwcGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiAuY29udGFpbmVyQm94LmNvbnRhaW5lckJveCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICB9XG4gIC5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgLmNvbnRhaW5lckJveC5jb250YWluZXJCb3guY29udGFpbmVyQm94LS1oYWxmIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1pbi13aWR0aDogNTAlO1xuICB9XG4gIC5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgLmNvbnRhaW5lckJveC5jb250YWluZXJCb3guY29udGFpbmVyQm94LS13cmFwcGVyID4gZGl2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAuYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyIC5jb250YWluZXJCb3guY29udGFpbmVyQm94LmNvbnRhaW5lckJveC0td3JhcHBlciA+IGRpdiA+IC5jb250YWluZXJCb3ggPiBkaXYge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbiAgLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiAuY29udGFpbmVyQm94LmNvbnRhaW5lckJveC5jb250YWluZXJCb3gtLXdyYXBwZXIgPiBkaXYgPiAuY29udGFpbmVyQm94ID4gZGl2IC5jb250YWluZXJCb3gtLWhhbGYgLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoNTAlIC0gMjRweCk7XG4gIH1cbiAgLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiAuY29udGFpbmVyQm94LmNvbnRhaW5lckJveC5jb250YWluZXJCb3gtLXdyYXBwZXIgPiBkaXYgPiAuY29udGFpbmVyQm94ID4gZGl2IC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgfVxuICAuYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyIC5jb250YWluZXJCb3guY29udGFpbmVyQm94ID4gZGl2IHtcbiAgICBtYXJnaW4tbGVmdDogLTEycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTJweDtcbiAgfVxuICAuYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyIC5jb250YWluZXJCb3guY29udGFpbmVyQm94ID4gZGl2ID4gKiB7XG4gICAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxMnB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbn1cbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgLmNvbnRhaW5lckJveC5jb250YWluZXJCb3ggLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IC5lcmdvLWFkaG9wX19idXR0b246bm90KC5lcmdvLWFkaG9wX19hZ2VuY3lSYXRpbmdIb3Jpem9udGFsX19yYXRpbmdzX19jdGEpOm5vdCguc2xpY2stYXJyb3cpIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODBweCkge1xuICAuYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyIC5jb250YWluZXJCb3guY29udGFpbmVyQm94IC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCAuZXJnby1hZGhvcF9fYnV0dG9uOm5vdCguZXJnby1hZGhvcF9fYWdlbmN5UmF0aW5nSG9yaXpvbnRhbF9fcmF0aW5nc19fY3RhKTpub3QoLnNsaWNrLWFycm93KSB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgLmNvbnRhaW5lckJveC5hZ2VuY3ktcmF0aW5nLXdyYXBwZXIgPiBkaXYge1xuICB3aWR0aDogMTAwdnc7XG4gIG1heC13aWR0aDogMTAwdnc7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSAtIDUwdncpO1xuICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI0cHg7XG59XG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyIC5jb250YWluZXJCb3guYWdlbmN5LXJhdGluZy13cmFwcGVyID4gZGl2ID4gLmNvbnRhaW5lckJveCB7XG4gIG1heC13aWR0aDogMTQ0MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMDtcbn1cbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgLmNvbnRhaW5lckJveC5hZ2VuY3ktcmF0aW5nLXdyYXBwZXIgPiBkaXYgPiAuY29udGFpbmVyQm94ID4gZGl2IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgLmNvbnRhaW5lckJveC5hZ2VuY3ktcmF0aW5nLXdyYXBwZXIgPiBkaXYgPiAuY29udGFpbmVyQm94ID4gZGl2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyNHB4KTtcbiAgfVxufVxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiAuY29udGFpbmVyQm94LmFnZW5jeS1yYXRpbmctd3JhcHBlciA+IGRpdiA+IC5jb250YWluZXJCb3ggPiBkaXYgPiAuYWdlbmN5UmF0aW5nIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nLXRvcDogMjVweDtcbiAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiAuY29udGFpbmVyQm94LmFnZW5jeS1yYXRpbmctd3JhcHBlciA+IGRpdiA+IC5jb250YWluZXJCb3ggPiBkaXYgPiAuYWdlbmN5UmF0aW5nIHtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICAgIHBhZGRpbmc6IDAgMjVweDtcbiAgfVxufVxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiAuY29udGFpbmVyQm94LmFnZW5jeS1yYXRpbmctd3JhcHBlciA+IGRpdiA+IC5jb250YWluZXJCb3ggPiBkaXYgPiAuYWdlbmN5UmF0aW5nICsgLmFnZW5jeVJhdGluZyB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1saWdodC1ncmF5LCAjZDlkOWQ5KTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgLmNvbnRhaW5lckJveC5hZ2VuY3ktcmF0aW5nLXdyYXBwZXIgPiBkaXYgPiAuY29udGFpbmVyQm94ID4gZGl2ID4gLmFnZW5jeVJhdGluZyArIC5hZ2VuY3lSYXRpbmcge1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1saWdodC1ncmF5LCAjZDlkOWQ5KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiAuY29udGFpbmVyQm94LmFnZW5jeS1yYXRpbmctd3JhcHBlciA+IGRpdiA+IC5jb250YWluZXJCb3ggPiBkaXYgPiAuYWdlbmN5UmF0aW5nIC5lcmdvLWFkaG9wX19hZ2VuY3ktcmF0aW5nIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgLmNvbnRhaW5lckJveC5hZ2VuY3ktcmF0aW5nLXdyYXBwZXIgLmVyZ28tYWRob3BfX2hlYWRsaW5lIHtcbiAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgLmNvbnRhaW5lckJveC5hZ2VuY3ktcmF0aW5nLXdyYXBwZXIgLmVyZ28tYWRob3BfX2hlYWRsaW5lIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVyZ28tYWRob3BfX2NvcnBvcmF0ZUxvZ28ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmVyZ28tYWRob3BfX2NvcnBvcmF0ZUxvZ28gLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IHtcbiAgZGlzcGxheTogaW5oZXJpdDtcbn1cbi5lcmdvLWFkaG9wX19jb3Jwb3JhdGVMb2dvIGltZyB7XG4gIGhlaWdodDogMTVweDtcbiAgd2lkdGg6IDYwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fY29ycG9yYXRlTG9nbyBpbWcge1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogODBweDtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9fY29ycG9yYXRlTG9nb3Mge1xuICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMjNweDtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgcGFkZGluZzogMjRweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19jb3Jwb3JhdGVMb2dvcyB7XG4gICAgZ2FwOiAzMHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fY29ycG9yYXRlTG9nb3MgLmVyZ28tYWRob3BfX2NvcnBvcmF0ZUxvZ29zX19sZWdhbC1ub3RpY2Uge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgZm9udC1zaXplOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogdmFyKC0tdGhlbWUtYmxhY2ssICMwMDApO1xufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX19kZXNjcmlwdGlvbiAuZXJnby1hZGhvcF9faGVhZGxpbmUge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2Rlc2NyaXB0aW9uIC5lcmdvLWFkaG9wX19oZWFkbGluZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2Rlc2NyaXB0aW9uIC5lcmdvLWFkaG9wX19oZWFkbGluZSBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uZXJnby1hZGhvcF9fZGVzY3JpcHRpb24gcCB7XG4gIG1hcmdpbjogMDtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xufVxuLmVyZ28tYWRob3BfX2Rlc2NyaXB0aW9uIC5lcmdvLWFkaG9wX19kZXNjcmlwdGlvbl9fZW1haWxfX3dyYXBwZXIge1xuICBtYXJnaW4tdG9wOiA1MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2Rlc2NyaXB0aW9uIC5lcmdvLWFkaG9wX19kZXNjcmlwdGlvbl9fZW1haWxfX3dyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19kZXNjcmlwdGlvbiAuZXJnby1hZGhvcF9fZGVzY3JpcHRpb25fX2VtYWlsX19sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLmVyZ28tYWRob3BfX2Rlc2NyaXB0aW9uIC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbmsge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2Rlc2NyaXB0aW9uIC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgfVxufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX19la2lMZWdhbCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIHBhZGRpbmctdG9wOiAzMnB4O1xuICBwYWRkaW5nLWJvdHRvbTogOHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2VraUxlZ2FsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG4gICAgcGFkZGluZy1yaWdodDogMjRweDtcbiAgfVxufVxuLmFlbS1BdXRob3JMYXllci1FZGl0IC5lcmdvLWFkaG9wX19la2lMZWdhbCAuZXJnby1hZGhvcF9fZWtpTGVnYWxfX2NvbmZpcm1fX3N0ZXAge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuLmVyZ28tYWRob3BfX2VraUxlZ2FsIC5lcmdvLWFkaG9wX19la2lMZWdhbF9fY291bnRlciB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG4uZXJnby1hZGhvcF9fZWtpTGVnYWwgLmVyZ28tYWRob3BfX2VraUxlZ2FsX19jb3VudGVyIHNwYW4ge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtZGFyay1ncmF5LCAjYWVhZWFlKTtcbn1cbi5lcmdvLWFkaG9wX19la2lMZWdhbCAuZXJnby1hZGhvcF9fZWtpTGVnYWxfX2ljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmVyZ28tYWRob3BfX2VraUxlZ2FsIC5lcmdvLWFkaG9wX19la2lMZWdhbF9faWNvbiAucmVhY3Qtc3ZnLWljb24ge1xuICBwYWRkaW5nLXRvcDogMXB4O1xuICBtYXJnaW4tcmlnaHQ6IDEycHg7XG59XG4uZXJnby1hZGhvcF9fZWtpTGVnYWwgLmVyZ28tYWRob3BfX2VraUxlZ2FsX19pY29uIHAge1xuICBmbGV4OiAxO1xufVxuLmVyZ28tYWRob3BfX2VraUxlZ2FsIHAuZXJnby1hZGhvcF9fZWtpTGVnYWxfX3R4dCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xufVxuLmVyZ28tYWRob3BfX2VraUxlZ2FsIC5lcmdvLWFkaG9wX19la2lMZWdhbF9fZG93bmxvYWRfX3N0ZXAgc3Ryb25nLFxuLmVyZ28tYWRob3BfX2VraUxlZ2FsIC5lcmdvLWFkaG9wX19la2lMZWdhbF9fY29uZmlybV9fc3RlcCBzdHJvbmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuLmVyZ28tYWRob3BfX2VraUxlZ2FsIC5lcmdvLWFkaG9wX19la2lMZWdhbF9fY29uZmlybSB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG4uZXJnby1hZGhvcF9fZWtpTGVnYWwgLmVyZ28tYWRob3BfX2VraUxlZ2FsX19jb25maXJtIGxhYmVsIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbn1cbi5lcmdvLWFkaG9wX19la2lMZWdhbCAuZXJnby1hZGhvcF9fZWtpTGVnYWxfX2NvbmZpcm0gbGFiZWwgPiBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG59XG4uZXJnby1hZGhvcF9fZWtpTGVnYWwgLmVyZ28tYWRob3BfX2VraUxlZ2FsX19jb25maXJtIGxhYmVsID4gc3Bhbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uZXJnby1hZGhvcF9fZWtpTGVnYWwgLmVyZ28tYWRob3BfX2VraUxlZ2FsX19jb25maXJtIGxhYmVsID4gc3Bhbjo6YmVmb3JlLCAuZXJnby1hZGhvcF9fZWtpTGVnYWwgLmVyZ28tYWRob3BfX2VraUxlZ2FsX19jb25maXJtIGxhYmVsID4gc3Bhbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG4uZXJnby1hZGhvcF9fZWtpTGVnYWwgLmVyZ28tYWRob3BfX2VraUxlZ2FsX19jb25maXJtIGxhYmVsID4gc3Bhbjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzMTgxODc7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLmVyZ28tYWRob3BfX2VraUxlZ2FsIC5lcmdvLWFkaG9wX19la2lMZWdhbF9fY29uZmlybSBsYWJlbCA+IHNwYW46OmFmdGVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtd2hpdGUsICNmZmYpO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBsZWZ0OiA0cHg7XG4gIHRvcDogNHB4O1xuICB3aWR0aDogOXB4O1xuICBoZWlnaHQ6IDVweDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDAuM3MgZWFzZS1pbi1vdXQsIG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcbn1cbi5lcmdvLWFkaG9wX19la2lMZWdhbCAuZXJnby1hZGhvcF9fZWtpTGVnYWxfX2NvbmZpcm0gbGFiZWwgPiBzcGFuIHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4uZXJnby1hZGhvcF9fZWtpTGVnYWwgLmVyZ28tYWRob3BfX2VraUxlZ2FsX19jb25maXJtIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5lcmdvLWFkaG9wX19la2lMZWdhbCAuZXJnby1hZGhvcF9fZWtpTGVnYWxfX2NvbmZpcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIHNwYW46OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTgxODc7XG59XG4uZXJnby1hZGhvcF9fZWtpTGVnYWwgLmVyZ28tYWRob3BfX2VraUxlZ2FsX19jb25maXJtIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBzcGFuOjphZnRlciB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4uZXJnby1hZGhvcF9fZWtpTGVnYWwgLmVyZ28tYWRob3BfX2VraUxlZ2FsX19jdGFfX3dyYXBwZXIge1xuICBwYWRkaW5nLXRvcDogMTZweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2VraUxlZ2FsIC5lcmdvLWFkaG9wX19la2lMZWdhbF9fY3RhX193cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMzJweDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2VraUxlZ2FsIC5lcmdvLWFkaG9wX19la2lMZWdhbF9fY3RhX193cmFwcGVyIC5lcmdvLWFkaG9wX19idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fZWtpTGVnYWwgLmVyZ28tYWRob3BfX2VraUxlZ2FsX19jdGFfX3dyYXBwZXIgLmVyZ28tYWRob3BfX2J1dHRvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgfVxufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX19la29taVNlYWxzX19oZWFkbGluZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gIGdyaWQtYXJlYTogaGVhZGxpbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fZWtvbWlTZWFsc19faGVhZGxpbmUge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2Vrb21pU2VhbHNfX3dyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMjRweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uZXJnby1hZGhvcF9fZWtvbWlTZWFsc19fcmF0aW5nIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZmxleDogMCAwIDQxMnB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG4uZXJnby1hZGhvcF9fZWtvbWlTZWFsc19fcmF0aW5nLXNlYWwge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDIxcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMTZweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0NzlweCkge1xuICAuZXJnby1hZGhvcF9fZWtvbWlTZWFsc19fcmF0aW5nLXNlYWwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19la29taVNlYWxzX19yYXRpbmctc2VhbF9fY29udGFpbmVyLXRleHQge1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gIC5lcmdvLWFkaG9wX19la29taVNlYWxzX19yYXRpbmcgLmVyZ28tYWRob3BfX3JhdGluZ1N0YXJzIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2Vrb21pU2VhbHNfX3JhdGluZyAuZXJnby1hZGhvcF9fcmF0aW5nU3RhcnNfX3N0YXJzX190ZXh0LXJhdGluZyB7XG4gIGZvbnQtc2l6ZTogMjZweDtcbn1cbi5lcmdvLWFkaG9wX19la29taVNlYWxzX19zZWFscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMjRweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uZXJnby1hZGhvcF9fZWtvbWlTZWFsc19fc2VhbHMgaW1nIHtcbiAgd2lkdGg6IDE3MHB4O1xufVxuLmVyZ28tYWRob3BfX2Vrb21pU2VhbHNfX2N0YSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cbi5lcmdvLWFkaG9wX19la29taVNlYWxzX19jdGEgYSB7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1wcmltYXJ5LCAjOGUwMDM4KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gIC5lcmdvLWFkaG9wX19la29taVNlYWxzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG4gICAgcGFkZGluZy1yaWdodDogMjRweDtcbiAgfVxufVxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZmVhdHVyZWRQcm9kdWN0c19fY29udGVudF9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDB2dztcbiAgbWF4LXdpZHRoOiAxMDB2dztcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlIC0gNTB2dyk7XG59XG5cbi5mZWF0dXJlZFByb2R1Y3RzX19jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMjRweDtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZlYXR1cmVkUHJvZHVjdHNfX2NvbnRlbnQge1xuICAgIGFsaWduLWl0ZW1zOiBub3JtYWw7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDExODJweDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG4uZmVhdHVyZWRQcm9kdWN0c19fY29udGVudCA+IGRpdixcbi5mZWF0dXJlZFByb2R1Y3RzX19jb250ZW50ID4gZGl2ID4gZGl2IHtcbiAgbWF4LXdpZHRoOiAzNzhweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZmVhdHVyZWRQcm9kdWN0c19fY29udGVudCAuZXJnby1hZGhvcF9fZmVhdHVyZWQtcHJvZHVjdC10ZWFzZXIsXG4gIC5mZWF0dXJlZFByb2R1Y3RzX19jb250ZW50IC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXIsXG4gIC5mZWF0dXJlZFByb2R1Y3RzX19jb250ZW50IC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXIgZGl2W2RhdGEtdGhlbWVdLFxuICAuZmVhdHVyZWRQcm9kdWN0c19fY29udGVudCAuZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyIGRpdltkYXRhLXRoZW1lXSA+IGRpdiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLXdoaXRlLCAjZmZmKTtcbiAgYm94LXNoYWRvdzogMCAycHggM3B4IDAgcmdiYSh2YXIoLS10aGVtZS1ibGFjay1yZ2IpLCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjNzO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlciB7XG4gICAgbWF4LXdpZHRoOiAzNzhweDtcbiAgICBtaW4taGVpZ2h0OiA0NDhweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlcjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMTBweCAyMnB4IDJweCByZ2JhKHZhcigtLXRoZW1lLWJsYWNrLXJnYiksIDAuMjUpO1xufVxuLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlciAuZXJnby1hZGhvcF9fYnV0dG9uX19jb21wb25lbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyIC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rIHtcbiAgY29sb3I6IHZhcigtLXRoZW1lLWRhcmtlc3QtZ3JheSwgIzMzMyk7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiB3cmFwO1xuICBmb250LXdlaWdodDogNDAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlciAuZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyX19pbWFnZSB7XG4gIGFzcGVjdC1yYXRpbzogMy8yO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDI1MnB4O1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXIgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlcl9faW1hZ2UgaW1nIHtcbiAgYXNwZWN0LXJhdGlvOiAzLzI7XG4gIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbi5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXIgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlcl9fYmVzdF9kZWFsIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTJweDtcbiAgei1pbmRleDogMTtcbiAgYm9yZGVyLXJhZGl1czogNHB4IDA7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS13aGl0ZSwgI2ZmZik7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nOiA1cHggMTJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyIC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXJfX2Jlc3RfZGVhbCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyIC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXJfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAyNHB4O1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXIgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlcl9fY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiB3cmFwO1xuICAgIGZsZXg6IDE7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMjUycHgpO1xuICAgIG1pbi1oZWlnaHQ6IDIwMXB4O1xuICAgIHBhZGRpbmc6IDMycHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXIgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlcl9fY29udGVudCAuZXJnby1hZGhvcF9fYnV0dG9uX19jb21wb25lbnQge1xuICBtYXJnaW4tdG9wOiAzNHB4O1xufVxuLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlciAuZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyX19oZWFkbGluZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gIG1hcmdpbjogMCAwIDE2cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNzAwO1xuICBoeXBoZW5zOiBhdXRvO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlciAuZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyX19oZWFkbGluZSB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXIgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlcl9fZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW46IDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyIC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXJfX2Rlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlciAuZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyX19wcmljZV9fd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlciAuZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyX19wcmljZV9fd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDE4cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXIgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlcl9fcHJpY2VfX3dyYXBwZXIgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlcl9fcHJpY2VfX3RleHQsXG4uZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyIC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXJfX3ByaWNlX193cmFwcGVyIC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXJfX3ByaWNlIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG4uZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyIC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXJfX3ByaWNlX193cmFwcGVyIC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXJfX3ByaWNlX190ZXh0Om5vdCg6bGFzdC1jaGlsZCksXG4uZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyIC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXJfX3ByaWNlX193cmFwcGVyIC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXJfX3ByaWNlOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXIgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlcl9fcHJpY2VfX3dyYXBwZXIgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlcl9fcHJpY2VfX3RleHQ6bm90KDpsYXN0LWNoaWxkKSxcbiAgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlciAuZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyX19wcmljZV9fd3JhcHBlciAuZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyX19wcmljZTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlciAuZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyX19wcmljZV9fd3JhcHBlciAuZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyX19wcmljZV9fdGV4dCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fZmVhdHVyZWRQcm9kdWN0VGVhc2VyIC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXJfX3ByaWNlX193cmFwcGVyIC5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXJfX3ByaWNlX190ZXh0IHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19mZWF0dXJlZFByb2R1Y3RUZWFzZXIgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlcl9fcHJpY2VfX3dyYXBwZXIgLmVyZ28tYWRob3BfX2ZlYXR1cmVkUHJvZHVjdFRlYXNlcl9fcHJpY2Uge1xuICBmb250LXNpemU6IDI4cHg7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX19maXJzdENvbnRhY3RJbmZvIC5lcmdvLWFkaG9wX19maXJzdENvbnRhY3RJbmZvX19oZWFkbGluZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1kYXJrZXN0LWdyYXksICMzMzMpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luOiAxMHB4IDAgMzBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2ZpcnN0Q29udGFjdEluZm8gLmVyZ28tYWRob3BfX2ZpcnN0Q29udGFjdEluZm9fX2hlYWRsaW5lIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG4uZXJnby1hZGhvcF9fZmlyc3RDb250YWN0SW5mbyAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZSB7XG4gIHdpZHRoOiBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDAgMCAyNXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHdyYXAgY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2ZpcnN0Q29udGFjdEluZm8gLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19maXJzdENvbnRhY3RJbmZvIC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19kZXNjcmlwdGlvbi5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW4tdG9wOiAzNHB4O1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2ZpcnN0Q29udGFjdEluZm8gLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX2Rlc2NyaXB0aW9uLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiA0NHB4O1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2ZpcnN0Q29udGFjdEluZm8gLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX2Rlc2NyaXB0aW9uLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX2Rlc2NyaXB0aW9uIC5lcmdvLWFkaG9wX19idXR0b24tLXRleHQtbGluayB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDI2cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fZmlyc3RDb250YWN0SW5mbyAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fZGVzY3JpcHRpb24uYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fZGVzY3JpcHRpb24gLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI5cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19maXJzdENvbnRhY3RJbmZvIC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19kZXNjcmlwdGlvbi5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19kZXNjcmlwdGlvbiBwLCAuZXJnby1hZGhvcF9fZmlyc3RDb250YWN0SW5mbyAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fZGVzY3JpcHRpb24uYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fZGVzY3JpcHRpb24gZGl2ID4gc3BhbiB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1kYXJrZXN0LWdyYXksICMzMzMpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2ZpcnN0Q29udGFjdEluZm8gLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX2Rlc2NyaXB0aW9uLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX2Rlc2NyaXB0aW9uIHAsIC5lcmdvLWFkaG9wX19maXJzdENvbnRhY3RJbmZvIC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19kZXNjcmlwdGlvbi5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19kZXNjcmlwdGlvbiBkaXYgPiBzcGFuIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI5cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19maXJzdENvbnRhY3RJbmZvIC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19kZXNjcmlwdGlvbi5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19kZXNjcmlwdGlvbiBwLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX25hbWUsIC5lcmdvLWFkaG9wX19maXJzdENvbnRhY3RJbmZvIC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19kZXNjcmlwdGlvbi5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19kZXNjcmlwdGlvbiBkaXYgPiBzcGFuLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX25hbWUge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xufVxuLmVyZ28tYWRob3BfX2ZpcnN0Q29udGFjdEluZm8gLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX3BpY3R1cmUuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fcGljdHVyZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uZXJnby1hZGhvcF9fZmlyc3RDb250YWN0SW5mbyAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fY29udGFjdC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19jb250YWN0IHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fZm9jdXMge1xuICAgIG1hcmdpbjogMCAtMTJweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2ZvY3VzIC5lcmdvLWFkaG9wX19mb2N1c19fd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDI0cHggMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19mb2N1cyAuZXJnby1hZGhvcF9fZm9jdXNfX3dyYXBwZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19mb2N1cyAuZXJnby1hZGhvcF9fZm9jdXNfX2NvbnRlbnRfX3JpZ2h0LFxuICAuZXJnby1hZGhvcF9fZm9jdXMgLmVyZ28tYWRob3BfX2ZvY3VzX19jb250ZW50X19sZWZ0IHtcbiAgICBwYWRkaW5nOiAwIDEycHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19mb2N1cyAuZXJnby1hZGhvcF9fZm9jdXNfX2NvbnRlbnRfX3JpZ2h0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19mb2N1cyAuZXJnby1hZGhvcF9fZm9jdXNfX2NvbnRlbnRfX3JpZ2h0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNTglO1xuICB9XG59XG4uZXJnby1hZGhvcF9fZm9jdXMgLmVyZ28tYWRob3BfX2ZvY3VzX19jb250ZW50X19sZWZ0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fZm9jdXMgLmVyZ28tYWRob3BfX2ZvY3VzX19jb250ZW50X19sZWZ0IHtcbiAgICBwYWRkaW5nOiAyNHB4IDEycHg7XG4gICAgd2lkdGg6IDQyJTtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19mb2N1cyAuZXJnby1hZGhvcF9fZm9jdXNfX2hlYWRsaW5lIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgbWFyZ2luOiAwIDAgMjBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19mb2N1cyAuZXJnby1hZGhvcF9fZm9jdXNfX2hlYWRsaW5lIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2ZvY3VzIC5lcmdvLWFkaG9wX19mb2N1c19faW1hZ2Uge1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uZXJnby1hZGhvcF9fZm9jdXMgLmVyZ28tYWRob3BfX2ZvY3VzX19pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX19mb290ZXJDb2x1bW4ge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19mb290ZXJDb2x1bW4ge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19mb290ZXJDb2x1bW46ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbjpudGgtY2hpbGQoMykge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICB9XG59XG4uZXJnby1hZGhvcF9fZm9vdGVyQ29sdW1uOm50aC1jaGlsZCgzKSAuZXJnby1hZGhvcF9fZm9vdGVyQ29sdW1uX19saW5rcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbjpudGgtY2hpbGQoMykgLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9fbGlua3Mge1xuICAgIGdhcDogMCAxMHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fZm9vdGVyQ29sdW1uOm50aC1jaGlsZCgzKSAuZXJnby1hZGhvcF9fZm9vdGVyQ29sdW1uX19saW5rcyAuZXJnby1hZGhvcF9fZm9vdGVyQ29sdW1uX19saW5rc19faXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbjpudGgtY2hpbGQoMykgLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9fbGlua3MgLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9fbGlua3NfX2l0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDVweCk7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19mb290ZXJDb2x1bW4gLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9faGVhZGVyIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19mb290ZXJDb2x1bW4gLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9faGVhZGVyIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19mb290ZXJDb2x1bW4gLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9fbGlua3Mge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uZXJnby1hZGhvcF9fZm9vdGVyQ29sdW1uIC5lcmdvLWFkaG9wX19mb290ZXJDb2x1bW5fX2xpbmtzIC5lcmdvLWFkaG9wX19mb290ZXJDb2x1bW5fX2xpbmtzX19pdGVtIHtcbiAgcGFkZGluZy10b3A6IDRweDtcbiAgcGFkZGluZy1ib3R0b206IDRweDtcbn1cbi5lcmdvLWFkaG9wX19mb290ZXJDb2x1bW4gLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9fbGlua3MgLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9fbGlua3NfX2l0ZW0gLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9fbGlua3NfX2xpbmsge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtZGFya2VzdC1ncmF5LCAjMzMzKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlLWluLW91dDtcbn1cbi5lcmdvLWFkaG9wX19mb290ZXJDb2x1bW4gLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9fbGlua3MgLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9fbGlua3NfX2l0ZW0gLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9fbGlua3NfX2xpbms6aG92ZXIsIC5lcmdvLWFkaG9wX19mb290ZXJDb2x1bW4gLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9fbGlua3MgLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9fbGlua3NfX2l0ZW0gLmVyZ28tYWRob3BfX2Zvb3RlckNvbHVtbl9fbGlua3NfX2xpbms6Zm9jdXMge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtcHJpbWFyeSwgIzhlMDAzOCk7XG59XG5cbi5lcmdvLWFkaG9wX19mb290ZXJDb2x1bW5zIHtcbiAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDEwcHg7XG4gIG1hcmdpbi10b3A6IDQ4cHg7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gIHBhZGRpbmctbGVmdDogMjRweDtcbiAgcGFkZGluZy1yaWdodDogMjRweDtcbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9faGVhZGxpbmUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNhbXBhaWducyAuZXJnby1hZGhvcF9faGVhZGxpbmUge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNhbXBhaWducyAuZXJnby1hZGhvcF9faGVhZGxpbmUge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNhbXBhaWducyAuZXJnby1hZGhvcF9faGVhZGxpbmUgLmVyZ28tYWRob3BfX2hlYWRsaW5lX190aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgbWF4LXdpZHRoOiA0NDBweDtcbiAgfVxufVxuLmNvbnRhY3RUZWFzZXIgLmVyZ28tYWRob3BfX2hlYWRsaW5lIC5lcmdvLWFkaG9wX19oZWFkbGluZV9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmVyZ28tYWRob3BfX2hlYWRsaW5lIC5oZWFkZXIge1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogIzVlNWI1ZDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9faGVhZGxpbmUgLmhlYWRlciB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjc1cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19oZWFkbGluZSAuZXJnby1hZGhvcF9faGVhZGxpbmVfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgY29sb3I6IHZhcigtLXRoZW1lLWRhcmtlc3QtZ3JheSwgIzMzMyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiA4cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9faGVhZGxpbmUgLmVyZ28tYWRob3BfX2hlYWRsaW5lX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9faGVhZGxpbmUgLmVyZ28tYWRob3BfX2hlYWRsaW5lX190aXRsZTpvbmx5LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9faG90bGluZSB7XG4gIG1heC13aWR0aDogODcwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19ob3RsaW5lIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG4uZXJnby1hZGhvcF9faG90bGluZSAuZXJnby1hZGhvcF9faG90bGluZV9fY29udGVudF9fbGVmdCxcbi5lcmdvLWFkaG9wX19ob3RsaW5lIC5lcmdvLWFkaG9wX19ob3RsaW5lX19jb250ZW50X19yaWdodCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2hvdGxpbmUgLmVyZ28tYWRob3BfX2hvdGxpbmVfX2NvbnRlbnRfX2xlZnQsXG4gIC5lcmdvLWFkaG9wX19ob3RsaW5lIC5lcmdvLWFkaG9wX19ob3RsaW5lX19jb250ZW50X19yaWdodCB7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2hvdGxpbmUgLmVyZ28tYWRob3BfX2hvdGxpbmVfX2NvbnRlbnRfX3JpZ2h0IHtcbiAgcGFkZGluZy10b3A6IDI1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAyNXB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2hvdGxpbmUgLmVyZ28tYWRob3BfX2hvdGxpbmVfX2NvbnRlbnRfX3JpZ2h0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19ob3RsaW5lIC5lcmdvLWFkaG9wX19ob3RsaW5lX19jb250ZW50X19yaWdodCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5lcmdvLWFkaG9wX19ob3RsaW5lIC5lcmdvLWFkaG9wX19ob3RsaW5lX19pbWFnZSB7XG4gIGFzcGVjdC1yYXRpbzogMTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmVyZ28tYWRob3BfX2hvdGxpbmUgLmVyZ28tYWRob3BfX2hvdGxpbmVfX2ltYWdlIGltZyB7XG4gIGFzcGVjdC1yYXRpbzogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4uZXJnby1hZGhvcF9faG90bGluZSAuZXJnby1hZGhvcF9faG90bGluZV9fdGl0bGUge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19ob3RsaW5lIC5lcmdvLWFkaG9wX19ob3RsaW5lX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19ob3RsaW5lIC5lcmdvLWFkaG9wX19ob3RsaW5lX19kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG4uZXJnby1hZGhvcF9faG90bGluZSAuZXJnby1hZGhvcF9faG90bGluZV9fZGVzY3JpcHRpb24gcCB7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZXJnby1hZGhvcF9faG90bGluZSAuZXJnby1hZGhvcF9faG90bGluZV9fZGVzY3JpcHRpb24gcCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9faG90bGluZSAuZXJnby1hZGhvcF9faG90bGluZV9fbnVtYmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi5lcmdvLWFkaG9wX19ob3RsaW5lIC5lcmdvLWFkaG9wX19ob3RsaW5lX19udW1iZXIucHJpbWFyeU51bWJlciBzdmcge1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2hvdGxpbmUgLmVyZ28tYWRob3BfX2hvdGxpbmVfX251bWJlci5wcmltYXJ5TnVtYmVyIHN2ZyB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9faG90bGluZSAuZXJnby1hZGhvcF9faG90bGluZV9fbnVtYmVyLnByaW1hcnlOdW1iZXIgLmVyZ28tYWRob3BfX3NtbF9faWNvbl9fdGV4dCB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9faG90bGluZSAuZXJnby1hZGhvcF9faG90bGluZV9fbnVtYmVyLnByaW1hcnlOdW1iZXIgLmVyZ28tYWRob3BfX3NtbF9faWNvbl9fdGV4dCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICAgIHBhZGRpbmctdG9wOiA3cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19ob3RsaW5lIC5lcmdvLWFkaG9wX19ob3RsaW5lX19udW1iZXIgLmVyZ28tYWRob3BfX2hvdGxpbmVfX251bWJlcl9fdGV4dCB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmVyZ28tYWRob3BfX2hvdGxpbmUgLmVyZ28tYWRob3BfX2hvdGxpbmVfX251bWJlciAuZXJnby1hZGhvcF9faG90bGluZV9fbnVtYmVyX190ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogMnB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9faG90bGluZSAuZXJnby1hZGhvcF9faG90bGluZV9fbnVtYmVyIHN2ZyB7XG4gIHdpZHRoOiAyMXB4O1xuICBoZWlnaHQ6IDIxcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZXJnby1hZGhvcF9faG90bGluZSAuZXJnby1hZGhvcF9faG90bGluZV9fbG9jYXRpb24sXG4gIC5lcmdvLWFkaG9wX19ob3RsaW5lIC5lcmdvLWFkaG9wX19ob3RsaW5lX19udW1iZXIge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2hvdGxpbmUgLmVyZ28tYWRob3BfX2hvdGxpbmVfX2xvY2F0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuLmVyZ28tYWRob3BfX2hvdGxpbmUgLmVyZ28tYWRob3BfX2J1dHRvbiB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5yZWFjdC1zdmctaWNvbiB7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuLnJlYWN0LXN2Zy1pY29uIHN2ZyB7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9faWZyYW1lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLWhlaWdodDogNDAwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5lcmdvLWFkaG9wX19pZnJhbWU6bm90KC53aXRoLXB5bS1pZnJhbWUpIGlmcmFtZSB7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5lcmdvLWFkaG9wX19pZnJhbWUgLmFkaG9wLWVyZ29fX2NvbnRlbnQtbG9hZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZXJnby1hZGhvcF9faWZyYW1lIC5lcmdvLWFkaG9wX19pZnJhbWVfX2NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZXJnby1hZGhvcF9faWZyYW1lIC5lcmdvLWFkaG9wX19pZnJhbWVfX2NvbnRhaW5lciBpZnJhbWUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLmFkaG9wLWVyZ29fX2ltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uYWRob3AtZXJnb19fZmFsbGJhY2tfX2ltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG5Aa2V5ZnJhbWVzIHJlYWN0LWxvYWRpbmctc2tlbGV0b24ge1xuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIH1cbn1cbi5yZWFjdC1sb2FkaW5nLXNrZWxldG9uIHtcbiAgLS1iYXNlLWNvbG9yOiAjZWJlYmViO1xuICAtLWhpZ2hsaWdodC1jb2xvcjogI2Y1ZjVmNTtcbiAgLS1hbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gIC0tYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsO1xuICAtLXBzZXVkby1lbGVtZW50LWRpc3BsYXk6IGJsb2NrO1xuICAvKiBFbmFibGUgYW5pbWF0aW9uICovXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhc2UtY29sb3IpO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG4gIC8qIE5lY2Vzc2FyeSBmb3Igb3ZlcmZsb3c6IGhpZGRlbiB0byB3b3JrIGNvcnJlY3RseSBpbiBTYWZhcmkgKi9cbn1cbi5yZWFjdC1sb2FkaW5nLXNrZWxldG9uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiB2YXIoLS1wc2V1ZG8tZWxlbWVudC1kaXNwbGF5KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgdmFyKC0tYmFzZS1jb2xvciksIHZhcigtLWhpZ2hsaWdodC1jb2xvciksIHZhcigtLWJhc2UtY29sb3IpKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgYW5pbWF0aW9uLW5hbWU6IHJlYWN0LWxvYWRpbmctc2tlbGV0b247XG4gIGFuaW1hdGlvbi1kaXJlY3Rpb246IHZhcigtLWFuaW1hdGlvbi1kaXJlY3Rpb24pO1xuICBhbmltYXRpb24tZHVyYXRpb246IHZhcigtLWFuaW1hdGlvbi1kdXJhdGlvbik7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cblxuLmFkaG9wLWVyZ29fX2xvYWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmFkaG9wLWVyZ29fX2xvYWRlciBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9faW1hZ2VTbGlkZXJfX3NsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG59XG4uZXJnby1hZGhvcF9faW1hZ2VTbGlkZXJfX3NsaWRlIGZpZ3VyZSB7XG4gIGFzcGVjdC1yYXRpbzogMTYvOTtcbiAgbWFyZ2luOiAwIGF1dG8gMjRweDtcbiAgbWF4LXdpZHRoOiA3MjBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9faW1hZ2VTbGlkZXJfX3NsaWRlIGZpZ3VyZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2ltYWdlU2xpZGVyX19zbGlkZSBmaWd1cmUgaW1nIHtcbiAgYXNwZWN0LXJhdGlvOiAxNi85O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uZXJnby1hZGhvcF9faW1hZ2VTbGlkZXJfX3NsaWRlIC5lcmdvLWFkaG9wX19pbWFnZVNsaWRlcl9fc2xpZGVfX2NhcHRpb24ge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBjb2xvcjogIzVlNWI1ZDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbn1cblxuLmVyZ28tYWRob3BfX2ltYWdlU2xpZGVyIC5lcmdvLWFkaG9wX19pbWFnZVNsaWRlcl9fY291bnRlciB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDIycHg7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1kYXJrZXN0LWdyYXksICMzMzMpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX19pbWFnZVNsaWRlciAuZXJnby1hZGhvcF9faW1hZ2VTbGlkZXJfX2NvdW50ZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19pbWFnZVNsaWRlciAuc2xpY2stc2xpZGVyIHtcbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2ltYWdlU2xpZGVyIC5zbGljay1zbGlkZXIge1xuICAgIHBhZGRpbmctbGVmdDogMTlweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOXB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9faW1hZ2VTbGlkZXIgLnNsaWNrLXByZXYsXG4uZXJnby1hZGhvcF9faW1hZ2VTbGlkZXIgLnNsaWNrLW5leHQge1xuICB0b3A6IGNhbGMoMjV2dyAtIDI0cHgpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTEycHgpIHtcbiAgLmVyZ28tYWRob3BfX2ltYWdlU2xpZGVyIC5zbGljay1wcmV2LFxuICAuZXJnby1hZGhvcF9faW1hZ2VTbGlkZXIgLnNsaWNrLW5leHQge1xuICAgIHRvcDogMjAycHg7XG4gIH1cbn1cblxuZmlndXJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5maWd1cmUgcGljdHVyZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuZmlndXJlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmVyZ28tYWRob3BfX2xlZ2FsLWRhdGEuYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uZXJnby1hZGhvcF9fbGVnYWwtZGF0YS52ZXJ0aWNhbCAuZXJnby1hZGhvcF9fbGVnYWwtZGF0YV9faXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5sb2NhdGlvbi1zd2l0Y2ggLnNsaWNrLXNsaWRlcixcbi5sb2NhdGlvbi1zd2l0Y2ggLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoX19saXN0LWNvbnRhaW5lcixcbi5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0tbmFycm93IC5zbGljay1zbGlkZXIsXG4uZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLW5hcnJvdyAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2xpc3QtY29udGFpbmVyLFxuLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS13aWRlIC5zbGljay1zbGlkZXIsXG4uZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLXdpZGUgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoX19saXN0LWNvbnRhaW5lciB7XG4gIG1hcmdpbi1sZWZ0OiAtMTFweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTFweDtcbn1cbi5sb2NhdGlvbi1zd2l0Y2ggLmVyZ28tYWRob3BfX21vZGFsX19jbG9zZXIsXG4uZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLW5hcnJvdyAuZXJnby1hZGhvcF9fbW9kYWxfX2Nsb3Nlcixcbi5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0td2lkZSAuZXJnby1hZGhvcF9fbW9kYWxfX2Nsb3NlciB7XG4gIG1hcmdpbi1yaWdodDogLTE0cHg7XG59XG4ubG9jYXRpb24tc3dpdGNoIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMsXG4uZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLW5hcnJvdyAuc2xpY2stc2xpZGVyIC5zbGljay1kb3RzLFxuLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS13aWRlIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLmxvY2F0aW9uLXN3aXRjaCAuc2xpY2stc2xpZGUsXG4uZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLW5hcnJvdyAuc2xpY2stc2xpZGUsXG4uZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLXdpZGUgLnNsaWNrLXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubG9jYXRpb24tc3dpdGNoIC5zbGljay1zbGlkZSA+IGRpdixcbi5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0tbmFycm93IC5zbGljay1zbGlkZSA+IGRpdixcbi5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0td2lkZSAuc2xpY2stc2xpZGUgPiBkaXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG59XG4ubG9jYXRpb24tc3dpdGNoIC5zbGljay1hcnJvdy0tY3VzdG9tLnNsaWNrLXByZXYsXG4uZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLW5hcnJvdyAuc2xpY2stYXJyb3ctLWN1c3RvbS5zbGljay1wcmV2LFxuLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS13aWRlIC5zbGljay1hcnJvdy0tY3VzdG9tLnNsaWNrLXByZXYge1xuICBsZWZ0OiAtNnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTEycHgpIHtcbiAgLmxvY2F0aW9uLXN3aXRjaCAuc2xpY2stYXJyb3ctLWN1c3RvbS5zbGljay1wcmV2LFxuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLW5hcnJvdyAuc2xpY2stYXJyb3ctLWN1c3RvbS5zbGljay1wcmV2LFxuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLXdpZGUgLnNsaWNrLWFycm93LS1jdXN0b20uc2xpY2stcHJldiB7XG4gICAgbGVmdDogLTEycHg7XG4gIH1cbn1cbi5sb2NhdGlvbi1zd2l0Y2ggLnNsaWNrLWFycm93LS1jdXN0b20uc2xpY2stbmV4dCxcbi5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0tbmFycm93IC5zbGljay1hcnJvdy0tY3VzdG9tLnNsaWNrLW5leHQsXG4uZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLXdpZGUgLnNsaWNrLWFycm93LS1jdXN0b20uc2xpY2stbmV4dCB7XG4gIGxlZnQ6IGNhbGMoMTAwJSArIDZweCk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MTJweCkge1xuICAubG9jYXRpb24tc3dpdGNoIC5zbGljay1hcnJvdy0tY3VzdG9tLnNsaWNrLW5leHQsXG4gIC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0tbmFycm93IC5zbGljay1hcnJvdy0tY3VzdG9tLnNsaWNrLW5leHQsXG4gIC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0td2lkZSAuc2xpY2stYXJyb3ctLWN1c3RvbS5zbGljay1uZXh0IHtcbiAgICBsZWZ0OiBjYWxjKDEwMCUgKyAxMnB4KTtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2ltYWdlLWNvbnRhaW5lciB7XG4gIGFzcGVjdC1yYXRpbzogMTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBoZWlnaHQ6IDEyMHB4O1xuICB3aWR0aDogMTIwcHg7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoX19pbWFnZS1jb250YWluZXIge1xuICAgIGhlaWdodDogMTc1cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaF9faW1hZ2UtY29udGFpbmVyIGltZyB7XG4gIG1hcmdpbjogMDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaF9fbGlzdC1jb250YWluZXIge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcm93LWdhcDogMzZweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy10b3A6IDZweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaF9fbGlzdC1jb250YWluZXIge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIHBhZGRpbmc6IDAgMCAyNHB4O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaF9fbGlzdC1pdGVtIHtcbiAgcGFkZGluZzogMCAxMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS13aGl0ZSwgI2ZmZik7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoX19saXN0LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiB3cmFwIGNvbHVtbjtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuLnNsaWNrLXNsaWRlciAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2xpc3QtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbn1cbi5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaF9fbGlzdC1pdGVtIC5lcmdvLWFkaG9wX19idXR0b24tLXdyYXBwZXIge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2xpc3QtaXRlbSAuZXJnby1hZGhvcF9fYnV0dG9uLS13cmFwcGVyLmVyZ28tYWRob3BfX2J1dHRvbi0tZGlzYWJsZWQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1wcmltYXJ5LCAjOGUwMDM4KTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyA2cHgpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2cHgpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtNHB4O1xuICAgIHRvcDogLTRweDtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2Rlc2NyaXB0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB3aWR0aDogMTAwdnc7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTIwcHgpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNzVweCk7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoX19kZXNjcmlwdGlvbiBhZGRyZXNzIHtcbiAgcGFkZGluZy10b3A6IDRweDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBjb2xvcjogdmFyKC0tdGhlbWUtZGFya2VzdC1ncmF5LCAjMzMzKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2Rlc2NyaXB0aW9uIGFkZHJlc3Mge1xuICAgIG1hcmdpbjogMjVweCAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG4uZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2Rlc2NyaXB0aW9uIHAge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoX19kZXNjcmlwdGlvbiBwIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaF9fZGVzY3JpcHRpb24gcCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2Rlc2NyaXB0aW9uIGg0IHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBtYXJnaW46IDA7XG59XG5cbi5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0td2l0aC1jYXJvdXNlbCAuZXJnby1hZGhvcF9fbW9kYWxfX2RpYWxvZy5lcmdvLWFkaG9wX19tb2RhbF9fZGlhbG9nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbi5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0td2l0aC1jYXJvdXNlbCAuZXJnby1hZGhvcF9fbW9kYWxfX2RpYWxvZy5lcmdvLWFkaG9wX19tb2RhbF9fZGlhbG9nIC5lcmdvLWFkaG9wX19tb2RhbF9fYm9keSB7XG4gIHBhZGRpbmctbGVmdDogNjRweDtcbiAgcGFkZGluZy1yaWdodDogNjRweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS1uYXJyb3cgLmVyZ28tYWRob3BfX21vZGFsX19kaWFsb2cuZXJnby1hZGhvcF9fbW9kYWxfX2RpYWxvZyxcbiAgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS13aWRlIC5lcmdvLWFkaG9wX19tb2RhbF9fZGlhbG9nLmVyZ28tYWRob3BfX21vZGFsX19kaWFsb2cge1xuICAgIHdpZHRoOiA1NjhweDtcbiAgfVxuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLW5hcnJvdyAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2xpc3QtY29udGFpbmVyLFxuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLXdpZGUgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoX19saXN0LWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDU0NHB4O1xuICB9XG4gIC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0tbmFycm93LmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS13aXRoLWNhcm91c2VsIC5lcmdvLWFkaG9wX19tb2RhbF9fZGlhbG9nLmVyZ28tYWRob3BfX21vZGFsX19kaWFsb2csXG4gIC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0td2lkZS5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0td2l0aC1jYXJvdXNlbCAuZXJnby1hZGhvcF9fbW9kYWxfX2RpYWxvZy5lcmdvLWFkaG9wX19tb2RhbF9fZGlhbG9nIHtcbiAgICB3aWR0aDogNzI4cHg7XG4gICAgbWF4LXdpZHRoOiA3MjhweDtcbiAgfVxuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLW5hcnJvdy5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0td2l0aC1jYXJvdXNlbCAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2ltYWdlLWNvbnRhaW5lcixcbiAgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS1uYXJyb3cuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLXdpdGgtY2Fyb3VzZWwgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoX19kZXNjcmlwdGlvbixcbiAgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS13aWRlLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS13aXRoLWNhcm91c2VsIC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaF9faW1hZ2UtY29udGFpbmVyLFxuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLXdpZGUuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLXdpdGgtY2Fyb3VzZWwgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoX19kZXNjcmlwdGlvbiB7XG4gICAgbWF4LXdpZHRoOiAyNzBweDtcbiAgfVxuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2ltYWdlLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiAxNDBweDtcbiAgfVxuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2Rlc2NyaXB0aW9uIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDE0MHB4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTEycHgpIHtcbiAgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS1uYXJyb3cgLmVyZ28tYWRob3BfX21vZGFsX19kaWFsb2cuZXJnby1hZGhvcF9fbW9kYWxfX2RpYWxvZyB7XG4gICAgd2lkdGg6IDU4OHB4O1xuICB9XG4gIC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0tbmFycm93IC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaF9fbGlzdC1jb250YWluZXIge1xuICAgIHdpZHRoOiA1NjRweDtcbiAgfVxuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLXdpZGUgLmVyZ28tYWRob3BfX21vZGFsX19kaWFsb2cuZXJnby1hZGhvcF9fbW9kYWxfX2RpYWxvZyB7XG4gICAgd2lkdGg6IDg3MHB4O1xuICB9XG4gIC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0td2lkZSAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2xpc3QtY29udGFpbmVyIHtcbiAgICB3aWR0aDogODQ2cHg7XG4gIH1cbiAgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS13aWRlLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS13aXRoLWNhcm91c2VsIC5lcmdvLWFkaG9wX19tb2RhbF9fZGlhbG9nLmVyZ28tYWRob3BfX21vZGFsX19kaWFsb2cge1xuICAgIHdpZHRoOiA4MzJweDtcbiAgICBtYXgtd2lkdGg6IDgzMnB4O1xuICB9XG4gIC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0td2lkZS5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0td2l0aC1jYXJvdXNlbCAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2ltYWdlLWNvbnRhaW5lcixcbiAgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS13aWRlLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS13aXRoLWNhcm91c2VsIC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaF9fZGVzY3JpcHRpb24ge1xuICAgIG1heC13aWR0aDogMzE0cHg7XG4gIH1cbiAgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoX19pbWFnZS1jb250YWluZXIge1xuICAgIGhlaWdodDogMTY0cHg7XG4gIH1cbiAgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoX19kZXNjcmlwdGlvbiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNjRweCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLW5hcnJvdyAuZXJnby1hZGhvcF9fbW9kYWxfX2RpYWxvZy5lcmdvLWFkaG9wX19tb2RhbF9fZGlhbG9nIHtcbiAgICB3aWR0aDogNjUycHg7XG4gIH1cbiAgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS1uYXJyb3cgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoX19saXN0LWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDYyOHB4O1xuICB9XG4gIC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0td2lkZSAuZXJnby1hZGhvcF9fbW9kYWxfX2RpYWxvZy5lcmdvLWFkaG9wX19tb2RhbF9fZGlhbG9nIHtcbiAgICB3aWR0aDogOTY2cHg7XG4gIH1cbiAgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoLS13aWRlIC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaF9fbGlzdC1jb250YWluZXIge1xuICAgIHdpZHRoOiA5NDJweDtcbiAgfVxuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLXdpZGUuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLXdpdGgtY2Fyb3VzZWwgLmVyZ28tYWRob3BfX21vZGFsX19kaWFsb2cuZXJnby1hZGhvcF9fbW9kYWxfX2RpYWxvZyB7XG4gICAgd2lkdGg6IDEwNzZweDtcbiAgICBtYXgtd2lkdGg6IDEwNzZweDtcbiAgfVxuICAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLXdpZGUuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2gtLXdpdGgtY2Fyb3VzZWwgLmVyZ28tYWRob3BfX2xvY2F0aW9uU3dpdGNoX19pbWFnZS1jb250YWluZXIsXG4gIC5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0td2lkZS5lcmdvLWFkaG9wX19sb2NhdGlvblN3aXRjaC0td2l0aC1jYXJvdXNlbCAuZXJnby1hZGhvcF9fbG9jYXRpb25Td2l0Y2hfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDI4M3B4O1xuICB9XG59XG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX19tZWdhRm9vdGVyIHtcbiAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xufVxuLmFlbS1BdXRob3JMYXllci1QcmV2aWV3IC5lcmdvLWFkaG9wX19tZWdhRm9vdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5lcmdvLWFkaG9wX19tb2RhbCAuZXJnby1hZGhvcF9fbWVnYUZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwO1xufVxuLmVyZ28tYWRob3BfX21lZ2FGb290ZXIgLmVyZ28tYWRob3BfX21lZ2FGb290ZXJfX2xpbmtzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBjb2x1bW4tY291bnQ6IDE7XG4gIGNvbHVtbi1nYXA6IDIwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZXJnby1hZGhvcF9fbWVnYUZvb3RlciAuZXJnby1hZGhvcF9fbWVnYUZvb3Rlcl9fbGlua3Mge1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX21lZ2FGb290ZXIgLmVyZ28tYWRob3BfX21lZ2FGb290ZXJfX2xpbmtzIHtcbiAgICBjb2x1bW4tY291bnQ6IDQ7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19tZWdhRm9vdGVyIC5lcmdvLWFkaG9wX19tZWdhRm9vdGVyX19saW5rcyAuZXJnby1hZGhvcF9fbWVnYUZvb3Rlcl9fbGlua3NfX2l0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAxMHB4IDA7XG59XG4uZXJnby1hZGhvcF9fbWVnYUZvb3RlciAuZXJnby1hZGhvcF9fbWVnYUZvb3Rlcl9fbGlua3MgLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4uZXJnby1hZGhvcF9fbWVnYUZvb3RlciAuZXJnby1hZGhvcF9fbWVnYUZvb3Rlcl9fbGlua3MgLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbmsge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogdmFyKC0tdGhlbWUtZGFya2VzdC1ncmF5LCAjMzMzKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLmVyZ28tYWRob3BfX21lZ2FGb290ZXIgLmVyZ28tYWRob3BfX21lZ2FGb290ZXJfX2xpbmtzIC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rOmhvdmVyLCAuZXJnby1hZGhvcF9fbWVnYUZvb3RlciAuZXJnby1hZGhvcF9fbWVnYUZvb3Rlcl9fbGlua3MgLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbms6Zm9jdXMge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtcHJpbWFyeSwgIzhlMDAzOCk7XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVyZ28tYWRob3BfX21vZGFsIHtcbiAgei1pbmRleDogMTAwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tdGhlbWUtYmxhY2stcmdiKSwgMC40KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZXJnby1hZGhvcF9fbW9kYWwuZXJnby1hZGhvcF9fbW9kYWwtc2hvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZXJnby1hZGhvcF9fbW9kYWwub3RiLW1vZGFsIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5lcmdvLWFkaG9wX19tb2RhbC5vdGItbW9kYWwgLmVyZ28tYWRob3BfX21vZGFsX19jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX21vZGFsIC5lcmdvLWFkaG9wX19tb2RhbF9fZGlhbG9nX193cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG4uZXJnby1hZGhvcF9fbW9kYWwgLmVyZ28tYWRob3BfX21vZGFsX19kaWFsb2cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiA5NjhweDtcbiAgbWFyZ2luOiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cbi5lcmdvLWFkaG9wX19tb2RhbCAuZXJnby1hZGhvcF9fbW9kYWxfX2NvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS13aGl0ZSwgI2ZmZik7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCA4cHggOHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzljNWM3O1xuICBib3JkZXItdG9wOiAwO1xuICBwYWRkaW5nOiAwIDE2cHggMjRweDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTEycHgpIHtcbiAgLmVyZ28tYWRob3BfX21vZGFsIC5lcmdvLWFkaG9wX19tb2RhbF9fY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI0cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19tb2RhbCAuZXJnby1hZGhvcF9fbW9kYWxfX2hlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLXdoaXRlLCAjZmZmKTtcbiAgYm9yZGVyLXJhZGl1czogOHB4IDhweCAwIDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjOWM1Yzc7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgcGFkZGluZzogMjRweCAxNnB4IDE1cHg7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MTJweCkge1xuICAuZXJnby1hZGhvcF9fbW9kYWwgLmVyZ28tYWRob3BfX21vZGFsX19oZWFkZXIge1xuICAgIHBhZGRpbmc6IDI0cHggMjRweCAyMHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fbW9kYWwgLmVyZ28tYWRob3BfX21vZGFsX19oZWFkZXIgLmVyZ28tYWRob3BfX21vZGFsX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1kYXJrZXN0LWdyYXksICMzMzMpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmbGV4OiAxO1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTEycHgpIHtcbiAgLmVyZ28tYWRob3BfX21vZGFsIC5lcmdvLWFkaG9wX19tb2RhbF9faGVhZGVyIC5lcmdvLWFkaG9wX19tb2RhbF9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX21vZGFsIC5lcmdvLWFkaG9wX19tb2RhbF9faGVhZGVyIC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fbW9kYWxfX2Nsb3NlciB7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1kYXJrZXN0LWdyYXksICMzMzMpO1xufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2xpbmtzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgcm93LWdhcDogMTZweDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3M6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLWxpZ2h0LWdyYXksICNkOWQ5ZDkpO1xuICBtYXJnaW46IDI0cHggLTI0cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2xpbmtzOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2xpbmtzIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcyAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3Mge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMCAwIGF1dG8gYXV0bztcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxNnB4KTtcbiAgfVxufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2xpbmtzIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rczo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcy5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcy0tbGV2ZWwtMSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3MuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3MtLWxldmVsLTEgPiAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9faXRlbSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3MuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3MtLWxldmVsLTEgPiAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9faXRlbS5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19pdGVtLS1pcy1vcGVuLCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3MuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3MtLWxldmVsLTEgPiAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9faXRlbTpoYXMoLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2l0ZW0tLWlzLW9wZW4pIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3MuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3MtLWxldmVsLTEgPiAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9faXRlbSA+IC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcy5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcy0tbGV2ZWwtMiB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3MuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3MtLWxldmVsLTI6aGFzKC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19pdGVtLS1pcy1vcGVuKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcy5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcy0tbGV2ZWwtMyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcyAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9faXRlbS5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19pdGVtLS1jb250YWN0LFxuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3MgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2l0ZW0uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9faXRlbS0tY29udGFjdCA+IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rczpoYXMoPiAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9faXRlbS0taXMtb3BlbikgPiAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9faXRlbTpub3QoLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2l0ZW0tLWlzLW9wZW4pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rczpoYXMoPiAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9faXRlbS0taXMtb3BlbiAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9faXRlbS0taXMtb3BlbikgPiAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9faXRlbSA+IC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3MgPiAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9faXRlbS0taXMtb3BlbiA+IC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCAuZXJnby1hZGhvcF9fYnV0dG9uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICB9XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcyA+IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19pdGVtLS1pcy1vcGVuID4gLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IC5lcmdvLWFkaG9wX19idXR0b25fX3RleHQge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2xpbmtzID4gLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2l0ZW0tLWlzLW9wZW4gPiAuZXJnby1hZGhvcF9fYnV0dG9uX19jb21wb25lbnQgLnJlYWN0LXN2Zy1pY29uIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLTEsIDEsIDEpO1xuICB9XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9faXRlbS0taXMtb3BlbiA+IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3MgLmVyZ28tYWRob3BfX2J1dHRvbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogdmFyKC0tdGhlbWUtZGFya2VzdC1ncmF5LCAjMzMzKTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBsZXR0ZXItc3BhY2luZzogMC4xNnB4O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBtYXJnaW46IDA7XG4gIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gIHBhZGRpbmc6IDEycHggMTZweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcyAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2xpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIycHg7XG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgfVxufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2xpbmtzIC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGluayB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcyAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2xpbms6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1wcmltYXJ5LCAjOGUwMDM4KTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1wcmltYXJ5LWxpZ2h0LCAjZmJmNGY0KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcyAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2xpbmsuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGluay0taXMtYWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtcHJpbWFyeSwgIzhlMDAzOCk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdGhlbWUtcHJpbWFyeS1saWdodCwgI2ZiZjRmNCk7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcyAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2xpbms6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcyAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2xpbms6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS10aGVtZS1ibGFjaywgIzAwMCk7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICBjb2xvcjogdmFyKC0tdGhlbWUtcHJpbWFyeSwgIzhlMDAzOCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogdmFyKC0tdGhlbWUtcHJpbWFyeS1saWdodCwgI2ZiZjRmNCk7XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGlua3MgLmVyZ28tYWRob3BfX2J1dHRvbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rIC5yZWFjdC1zdmctaWNvbiB7XG4gIG9yZGVyOiAxO1xufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2xpbmtzIC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbGluayAucmVhY3Qtc3ZnLWljb24gc3ZnIHtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbn1cbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19saW5rcyAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9faXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCB7XG4gIHotaW5kZXg6IDk5OTk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgZGlzcGxheTogbm9uZTtcbiAgaW5zZXQ6IDczcHggMCAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLXRoZW1lLWJsYWNrLXJnYiksIDApO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIGVhc2UgMC4zcyAwLjE1cztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0IHtcbiAgICB0b3A6IHZhcigtLWRlc2t0b3AtaGVhZGVyLWhlaWdodCwgMTIycHgpO1xuICB9XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC0taXMtb3BlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tdGhlbWUtYmxhY2stcmdiKSwgMC44KTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC0taXMtb3BlbiAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19jb250ZW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC0taXMtb3BlbiAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19jb250ZW50IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjRweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LS1pcy1vcGVuIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2NvbnRlbnQge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQtLXR5cGUtbmF2aWdhdGlvbiAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19hZ2VuY3ktZmx5b3V0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC0tdHlwZS1jb250YWN0IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2NvbnRlbnQge1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiZmlyc3QgZmlyc3QgZmlyc3RcIiBcImxpbmtzIGFnZW5jeSB0ZWFzZXJzXCI7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC0tdHlwZS1jb250YWN0IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX25hdmlnYXRpb24ge1xuICAgIGdyaWQtYXJlYTogbGlua3M7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LS10eXBlLWNvbnRhY3QgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dF9fYWdlbmN5LWZseW91dC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQtLWlzLW9uLWNvbnRhY3QtcGFuZWwge1xuICBtYXgtd2lkdGg6IDQ4MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LS10eXBlLWNvbnRhY3QgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dF9fYWdlbmN5LWZseW91dC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQtLWlzLW9uLWNvbnRhY3QtcGFuZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGdyaWQtYXJlYTogYWdlbmN5O1xuICB9XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC0tdHlwZS1jb250YWN0IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2FnZW5jeS1mbHlvdXQuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LS1pcy1vbi1jb250YWN0LXBhbmVsIC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC0tdHlwZS1jb250YWN0IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2FnZW5jeS1mbHlvdXQuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LS1pcy1vbi10ZWFzZXJzLXNsb3Qge1xuICAgIGdyaWQtYXJlYTogdGVhc2VycztcbiAgfVxufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19jb250ZW50IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBpbnNldDogNzNweCAwIGF1dG87XG4gIG92ZXJmbG93OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgbWF4LXdpZHRoOiAxMDB2dztcbiAgYmFja2dyb3VuZDogdmFyKC0tdGhlbWUtd2hpdGUsICNmZmYpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBib3JkZXItaW1hZ2U6IGNvbmljLWdyYWRpZW50KCNmZmYgMCAwKSBmaWxsIDAvMC8wIDEwMHZ3O1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSA3M3B4KTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19jb250ZW50IHtcbiAgICB0b3A6IHZhcigtLWRlc2t0b3AtaGVhZGVyLWhlaWdodCwgMTIycHgpO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgY29sdW1uLWdhcDogMzJweDtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImZpcnN0IGZpcnN0IGZpcnN0XCIgXCJzZWNvbmQgc2Vjb25kIHRlYXNlcnNcIjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogNjRweCBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoOTh2aCAtIHZhcigtLWRlc2t0b3AtaGVhZGVyLWhlaWdodCwgMTIycHgpKTtcbiAgICBwYWRkaW5nOiAzMnB4IDI0cHg7XG4gICAgcm93LWdhcDogMjRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2hlYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiA3MnB4O1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1kYXJrZXN0LWdyYXksICMzMzMpO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGdhcDogMTZweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBncmlkLWFyZWE6IGZpcnN0O1xuICB9XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2hlYWRlciAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19oZWFkZXJfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dF9faGVhZGVyIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2hlYWRlcl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMS40NDQ7XG4gICAgZmxleDogMSAwO1xuICAgIHBhZGRpbmctbGVmdDogMThweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19oZWFkZXIgLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19oZWFkZXIgLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbmsge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogYXV0bztcbn1cbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dF9faGVhZGVyIC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dF9fY2xvc2VyIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDE4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2hlYWRlciAuZXJnby1hZGhvcF9fYnV0dG9uX19jb21wb25lbnQgLmVyZ28tYWRob3BfX2J1dHRvbi5lcmdvLWFkaG9wX19idXR0b24tLXRleHQtbGluay5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2Nsb3NlciB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBnYXA6IDZweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19oZWFkZXIgLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbmsuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19jbG9zZXI6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS10aGVtZS1ibGFjaywgIzAwMCk7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICBjb2xvcjogdmFyKC0tdGhlbWUtcHJpbWFyeSwgIzhlMDAzOCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogdmFyKC0tdGhlbWUtcHJpbWFyeS1saWdodCwgI2ZiZjRmNCk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19oZWFkZXIgLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbmsuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19jbG9zZXIgLnJlYWN0LXN2Zy1pY29uLFxuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2hlYWRlciAuZXJnby1hZGhvcF9fYnV0dG9uX19jb21wb25lbnQgLmVyZ28tYWRob3BfX2J1dHRvbi5lcmdvLWFkaG9wX19idXR0b24tLXRleHQtbGluay5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2Nsb3NlciAucmVhY3Qtc3ZnLWljb24gc3ZnIHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2hlYWRlciAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19iYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19oZWFkZXIgLmVyZ28tYWRob3BfX2J1dHRvbi5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19jbG9zZXIge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgcGFkZGluZzogNHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDRweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgd29yZC13cmFwOiBub3JtYWw7XG4gICAgd29yZC1icmVhazogdW5zZXQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19uYXZpZ2F0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBncmlkLWFyZWE6IHNlY29uZDtcbiAgcGFkZGluZzogMjhweCAyNHB4IDMycHg7XG4gIGZsZXg6IDEgMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX25hdmlnYXRpb24ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZmxleDogdW5zZXQ7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dF9fdGVhc2VycyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZ3JpZC1hcmVhOiB0ZWFzZXJzO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dF9fdGVhc2VycyB7XG4gICAgcGFkZGluZy1ib3R0b206IDI0cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dF9fdGVhc2VyczplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19hY3Rpb24taXRlbXMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQgLmVyZ28tYWRob3BfX25hdmlnYXRpb25BY3Rpb25JdGVtIC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fbmF2aWdhdGlvbkFjdGlvbkl0ZW1fX2J1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGdhcDogMTBweDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBwYWRkaW5nOiAxN3B4IDQ4cHggMTdweCAzMnB4O1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQgLmVyZ28tYWRob3BfX25hdmlnYXRpb25BY3Rpb25JdGVtIC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fbmF2aWdhdGlvbkFjdGlvbkl0ZW1fX2J1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uQWN0aW9uSXRlbSAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX25hdmlnYXRpb25BY3Rpb25JdGVtX19idXR0b246aG92ZXIsIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQgLmVyZ28tYWRob3BfX25hdmlnYXRpb25BY3Rpb25JdGVtIC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fbmF2aWdhdGlvbkFjdGlvbkl0ZW1fX2J1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLWxpZ2h0ZXN0LWdyYXksICNmMmYyZjIpO1xuICBjb2xvcjogdmFyKC0tdGhlbWUtcHJpbWFyeSwgIzhlMDAzOCk7XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uQWN0aW9uSXRlbSB7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbkFjdGlvbkl0ZW06aG92ZXIsIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQgLmVyZ28tYWRob3BfX25hdmlnYXRpb25BY3Rpb25JdGVtOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQgLmVyZ28tYWRob3BfX25hdmlnYXRpb25BY3Rpb25JdGVtOmlzKFtjbGFzcyo9bG9nLWluXSwgW2NsYXNzKj1sb2dpbl0pIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbkFjdGlvbkl0ZW06aXMoW2NsYXNzKj1sb2ctaW5dLCBbY2xhc3MqPWxvZ2luXSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC0taXMtb3BlbjpoYXMoLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dC0tdmlzaWJsZSkgOmlzKC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX25hdmlnYXRpb24sXG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX3RlYXNlcnMsXG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2FjdGlvbi1pdGVtcykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQtLWlzLW9wZW46aGFzKC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQtLXZpc2libGUpIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2hlYWRlcl9fdGl0bGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LS1pcy1vcGVuOmhhcyguZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0LS12aXNpYmxlKSAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19hZ2VuY3ktZmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQtLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGdyaWQtYXJlYTogc2Vjb25kO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQtLWlzLW9wZW46aGFzKC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQtLXZpc2libGUpIC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2xvY2F0aW9uLWRldGFpbHMge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IHtcbiAgICBtYXJnaW4tbGVmdDogMzJweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMycHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCAuZXJnby1hZGhvcF9fYWRkcmVzc0l0ZW1fX2J1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZGRyZXNzSXRlbV9fYnV0dG9uOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0IC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXQgLmVyZ28tYWRob3BfX2FkZHJlc3NJdGVtX19idXR0b246Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS10aGVtZS1ibGFjaywgIzAwMCk7XG4gIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1wcmltYXJ5LCAjOGUwMDM4KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dCAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0IC5lcmdvLWFkaG9wX19hZGRyZXNzSXRlbV9fYnV0dG9uIC5lcmdvLWFkaG9wX19idXR0b25fX3RleHQge1xuICAgIG9yZGVyOiAtMTtcbiAgICBmbGV4OiAxO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC0tdHlwZS1tYWluIHtcbiAgICBvcmRlcjogLTE7XG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LS10eXBlLW1haW4gLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgbWFyZ2luOiAwIDAgMzJweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LS10eXBlLW1haW4gLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fY29udGFpbmVyIHtcbiAgICBnYXA6IDBwO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQtLXR5cGUtbWFpbiAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19waWN0dXJlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQtLXR5cGUtbWFpbiAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19sb2NhdGlvbi1kZXRhaWxzIHtcbiAgICBwYWRkaW5nOiAwIDAgMzJweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LS10eXBlLW1haW4gLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fbG9jYXRpb24tZGV0YWlscyAuZXJnby1hZGhvcF9fYnV0dG9uX19jb21wb25lbnQge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LS10eXBlLW1haW4gLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fbG9jYXRpb24tZGV0YWlscyAuZXJnby1hZGhvcF9fYnV0dG9uX19jb21wb25lbnQgLmluamVjdGVkLXN2ZyB7XG4gICAgZmlsbDogdmFyKC0tdGhlbWUtZGFya2VzdC1ncmF5LCAjMzMzKTtcbiAgfVxufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQtLXR5cGUtbWFpbiAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19sb2NhdGlvbi1kZXRhaWxzIC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2xvY2F0aW9uLWNoYW5nZSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgY29sb3I6IHZhcigtLXRoZW1lLWRhcmtlc3QtZ3JheSwgIzMzMyk7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIHBhZGRpbmctaW5saW5lOiA4cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGdhcDogMTBweDtcbiAgbWFyZ2luOiAwIDAgMzJweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC0tdHlwZS1tYWluIC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2xvY2F0aW9uLWRldGFpbHMgLmVyZ28tYWRob3BfX2FnZW5jeUZseW91dF9fbG9jYXRpb24tY2hhbmdlIHtcbiAgICBwYWRkaW5nOiAxN3B4IDQ4cHggMTdweCAzMnB4O1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQtLXR5cGUtbWFpbiAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19sb2NhdGlvbi1kZXRhaWxzIC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX2xvY2F0aW9uLWNoYW5nZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQtLXR5cGUtbWFpbiAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19sb2NhdGlvbi1kZXRhaWxzIC5lcmdvLWFkaG9wX19hZGRyZXNzSXRlbSB7XG4gIHBhZGRpbmc6IDE2cHggMzJweCAwO1xufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQtLXR5cGUtbWFpbiAuZXJnby1hZGhvcF9fYWdlbmN5Rmx5b3V0X19sb2NhdGlvbi1kZXRhaWxzIC5lcmdvLWFkaG9wX19hZ2VuY3lGbHlvdXRfX29wZW5pbmctaG91cnMge1xuICBwYWRkaW5nOiAwIDMycHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQtLXR5cGUtbWFpbiAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X190ZWFzZXJzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQtLXR5cGUtY29udGFjdCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X19hY3Rpb24taXRlbXMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC0tdHlwZS1jb250YWN0IC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXRfX2FnZW5jeS1mbHlvdXQge1xuICAgIG9yZGVyOiAxO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQtLXR5cGUtY29udGFjdCAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0X190ZWFzZXJzIHtcbiAgICBvcmRlcjogMjtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19mbHlvdXQuZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fZmx5b3V0LS10eXBlLW5hdmlnYXRpb24gLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX2ZseW91dF9fYWN0aW9uLWl0ZW1zIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVyZ28tYWRob3BfX21haW4tbmF2aWdhdGlvbiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuZXJnby1hZGhvcF9fbWFpbi1uYXZpZ2F0aW9uIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBnYXA6IDQ4cHg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cblxuLmVyZ28tYWRob3BfX21haW4tbmF2aWdhdGlvbl9fbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZ2FwOiAxNnB4O1xufVxuLmVyZ28tYWRob3BfX21haW4tbmF2aWdhdGlvbl9fbGlzdCAuZXJnby1hZGhvcF9fbWFpbi1uYXZpZ2F0aW9uX19pdGVtIHtcbiAgbWluLXdpZHRoOiA1MHB4O1xufVxuLmVyZ28tYWRob3BfX21haW4tbmF2aWdhdGlvbl9fbGlzdCAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX21haW4tbmF2aWdhdGlvbl9fbGluayB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBwYWRkaW5nOiAxMnB4IDE2cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1kYXJrZXN0LWdyYXksICMzMzMpO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycztcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5lcmdvLWFkaG9wX19tYWluLW5hdmlnYXRpb25fX2xpc3QgLmVyZ28tYWRob3BfX2J1dHRvbi5lcmdvLWFkaG9wX19tYWluLW5hdmlnYXRpb25fX2xpbmsge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19tYWluLW5hdmlnYXRpb25fX2xpc3QgLmVyZ28tYWRob3BfX2J1dHRvbi5lcmdvLWFkaG9wX19tYWluLW5hdmlnYXRpb25fX2xpbms6aG92ZXIsIC5lcmdvLWFkaG9wX19tYWluLW5hdmlnYXRpb25fX2xpc3QgLmVyZ28tYWRob3BfX2J1dHRvbi5lcmdvLWFkaG9wX19tYWluLW5hdmlnYXRpb25fX2xpbms6Zm9jdXMtdmlzaWJsZSwgLmVyZ28tYWRob3BfX21haW4tbmF2aWdhdGlvbl9fbGlzdCAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX21haW4tbmF2aWdhdGlvbl9fbGluay5lcmdvLWFkaG9wX19tYWluLW5hdmlnYXRpb25fX2xpbmstLWlzLW9wZW4ge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtcHJpbWFyeSwgIzhlMDAzOCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLXByaW1hcnktbGlnaHQsICNmYmY0ZjQpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uZXJnby1hZGhvcF9fbWFpbi1uYXZpZ2F0aW9uX19saXN0IC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fbWFpbi1uYXZpZ2F0aW9uX19saW5rOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tdGhlbWUtZGFya2VzdC1ncmF5LCAjMzMzKTtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbn1cbi5lcmdvLWFkaG9wX19tYWluLW5hdmlnYXRpb25fX2xpc3QgLmVyZ28tYWRob3BfX2J1dHRvbi5lcmdvLWFkaG9wX19tYWluLW5hdmlnYXRpb25fX2xpbms6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvbl9fbW9iaWxlLWFjdGlvbi1pdGVtcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDc2cHg7XG4gIHRvcDogMThweDtcbiAgY29sdW1uLWdhcDogMTJweDtcbn1cbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uX19tb2JpbGUtYWN0aW9uLWl0ZW1zIC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX2J1dHRvbi0tdmVydGljYWwtaWNvbiB7XG4gIGdhcDogNHB4O1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDQ4cHg7XG4gIG1pbi13aWR0aDogNDhweDtcbiAgbWF4LXdpZHRoOiA2NHB4O1xufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25fX21vYmlsZS1hY3Rpb24taXRlbXMgLmVyZ28tYWRob3BfX2J1dHRvbl9fdGV4dCB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDEycHg7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuZXJnby1hZGhvcF9fbmF2aWdhdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvblRlYXNlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDQ4cHggMzJweDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxNnB4O1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWxpZ2h0LWdyYXksICNkOWQ5ZDkpO1xuICBtYXJnaW46IDAgMjRweCAyNHB4IDI0cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25UZWFzZXIge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBtYXJnaW46IDAgMCAyNHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvblRlYXNlciAuZXJnby1hZGhvcF9fbmF2aWdhdGlvblRlYXNlcl9fY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvblRlYXNlciAuZXJnby1hZGhvcF9fbmF2aWdhdGlvblRlYXNlcl9fY29udGVudCBwIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uVGVhc2VyIC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uVGVhc2VyX19jb250ZW50IHAuZXJnby1hZGhvcF9fbmF2aWdhdGlvblRlYXNlcl9faGVhZGxpbmUge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25UZWFzZXIgLmVyZ28tYWRob3BfX25hdmlnYXRpb25UZWFzZXJfX2NvbnRlbnQgcC5lcmdvLWFkaG9wX19uYXZpZ2F0aW9uVGVhc2VyX19kZXNjcmlwdGlvbiB7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25UZWFzZXIgLmVyZ28tYWRob3BfX25hdmlnYXRpb25UZWFzZXJfX2N0YV9fd3JhcHBlciB7XG4gIHBhZGRpbmctdG9wOiAxMnB4O1xufVxuLmVyZ28tYWRob3BfX25hdmlnYXRpb25UZWFzZXIgLmVyZ28tYWRob3BfX25hdmlnYXRpb25UZWFzZXJfX2N0YV9fd3JhcHBlciAuZXJnby1hZGhvcF9fYnV0dG9uX19jb21wb25lbnQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvblRlYXNlciAuZXJnby1hZGhvcF9fbmF2aWdhdGlvblRlYXNlcl9fY3RhX193cmFwcGVyIC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCAuZXJnby1hZGhvcF9fYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmVyZ28tYWRob3BfX25hdmlnYXRpb25UZWFzZXIgLmVyZ28tYWRob3BfX25hdmlnYXRpb25UZWFzZXJfX2N0YV9fd3JhcHBlciAuZXJnby1hZGhvcF9fYnV0dG9uX19jb21wb25lbnQgLmVyZ28tYWRob3BfX2J1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fbmF2aWdhdGlvblRlYXNlciAuZXJnby1hZGhvcF9fbmF2aWdhdGlvblRlYXNlcl9fY3RhX193cmFwcGVyIC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCAuZXJnby1hZGhvcF9fYnV0dG9uOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tdGhlbWUtYmxhY2ssICMwMDApO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgY29sb3I6IHZhcigtLXRoZW1lLXByaW1hcnksICM4ZTAwMzgpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLXByaW1hcnktbGlnaHQsICNmYmY0ZjQpO1xufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX19vcGVuaW5nSG91cnMgLmVyZ28tYWRob3BfX29wZW5pbmdIb3Vyc19fdGl0bGUge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbn1cbi5lcmdvLWFkaG9wX19vcGVuaW5nSG91cnMgLnR4dCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDIxcHg7XG59XG4uZXJnby1hZGhvcF9fb3BlbmluZ0hvdXJzIC5lcmdvLWFkaG9wX19vcGVuaW5nSG91cnNfX29wZW5pbmctbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAxNHB4IDA7XG59XG4uZXJnby1hZGhvcF9fb3BlbmluZ0hvdXJzIC5lcmdvLWFkaG9wX19vcGVuaW5nSG91cnNfX3RpbWUge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmVyZ28tYWRob3BfX29wZW5pbmdIb3VycyAuZXJnby1hZGhvcF9fb3BlbmluZ0hvdXJzX19kYXktbmFtZSB7XG4gIHdpZHRoOiAzM3B4O1xuICBmbGV4OiAwIDAgMzNweDtcbn1cbi5lcmdvLWFkaG9wX19jb250YWN0QmFyX19vdmVybGF5IC5lcmdvLWFkaG9wX19vcGVuaW5nSG91cnMge1xuICBwYWRkaW5nOiAzMHB4O1xuICBtYXgtd2lkdGg6IDQyNnB4O1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE0NDBweCkge1xuICAuZXJnby1hZGhvcF9fY29udGFjdEJhcl9fb3ZlcmxheSAuZXJnby1hZGhvcF9fb3BlbmluZ0hvdXJzIHtcbiAgICB3aWR0aDogNDI2cHg7XG4gIH1cbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9fcHJvZHVjdERpc2NsYWltZXIge1xuICBtYXgtd2lkdGg6IDg3MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuZXJnby1hZGhvcF9fcHJvZHVjdERpc2NsYWltZXIge1xuICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX3Byb2R1Y3REaXNjbGFpbWVyIC5lcmdvLWFkaG9wX19wcm9kdWN0RGlzY2xhaW1lcl9faGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG59XG4uZXJnby1hZGhvcF9fcHJvZHVjdERpc2NsYWltZXIgLmVyZ28tYWRob3BfX3Byb2R1Y3REaXNjbGFpbWVyX19ib2R5ID4gZGl2IHtcbiAgcGFkZGluZzogMTBweCAwIDVweDtcbn1cbi5lcmdvLWFkaG9wX19wcm9kdWN0RGlzY2xhaW1lciAuZXJnby1hZGhvcF9fcHJvZHVjdERpc2NsYWltZXJfX2JvZHkgPiBkaXYgcCB7XG4gIG1hcmdpbjogMDtcbn1cbi5lcmdvLWFkaG9wX19wcm9kdWN0RGlzY2xhaW1lciAuZXJnby1hZGhvcF9faGVhZGxpbmUge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLmVyZ28tYWRob3BfX3Byb2R1Y3REaXNjbGFpbWVyIC5lcmdvLWFkaG9wX19oZWFkbGluZSAuaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBjb2xvcjogI2JkYmRiZDtcbn1cbi5lcmdvLWFkaG9wX19wcm9kdWN0RGlzY2xhaW1lciAuZXJnby1hZGhvcF9faGVhZGxpbmUgLmVyZ28tYWRob3BfX2hlYWRsaW5lX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIG1hcmdpbjogMCAwIDIwcHg7XG59XG4uZXJnby1hZGhvcF9fcHJvZHVjdERpc2NsYWltZXIgLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLnByb2R1Y3REaXNjbGFpbWVyQ29udGFpbmVyIC5jYVBhZ2VFbGVtZW50ID4gLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogY29udGVudHM7XG59XG4ucHJvZHVjdERpc2NsYWltZXJDb250YWluZXIgLmNhUGFnZUVsZW1lbnQgPiAuYWVtLUdyaWQgPiAucHJvZHVjdGRpc2NsYWltZXIge1xuICBib3JkZXI6IDA7XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnByb3Bvc2l0aW9uLWl0ZW0ge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb3Bvc2l0aW9uLWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIH1cbn1cbi5wcm9wb3NpdGlvbi1pdGVtOm5vdCgud2l0aC1kZXNjcmlwdGlvbikge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnByb3Bvc2l0aW9uLWl0ZW06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ucHJvcG9zaXRpb24taXRlbSAucHJvcG9zaXRpb24taXRlbS1pY29uIHtcbiAgbWF4LWhlaWdodDogMzRweDtcbn1cbi5wcm9wb3NpdGlvbi1pdGVtIC5wcm9wb3NpdGlvbi1jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAzNXB4KTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9wb3NpdGlvbi1pdGVtIC5wcm9wb3NpdGlvbi1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbn1cbi5wcm9wb3NpdGlvbi1pdGVtIC5wcm9wb3NpdGlvbi1jb250ZW50IC5wcm9wb3NpdGlvbi1pdGVtLWhlYWRsaW5lIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMjFweDtcbiAgbWFyZ2luOiA1cHggMCAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb3Bvc2l0aW9uLWl0ZW0gLnByb3Bvc2l0aW9uLWNvbnRlbnQgLnByb3Bvc2l0aW9uLWl0ZW0taGVhZGxpbmUge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMjdweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG4ucHJvcG9zaXRpb24taXRlbSAucHJvcG9zaXRpb24tY29udGVudCAucHJvcG9zaXRpb24taXRlbS1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gIG1hcmdpbjogMThweCAwIDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvcG9zaXRpb24taXRlbSAucHJvcG9zaXRpb24tY29udGVudCAucHJvcG9zaXRpb24taXRlbS1kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICB9XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVyZ28tYWRob3BfX3JhdGluZ0l0ZW0gLmVyZ28tYWRob3BfX3JhdGluZ0l0ZW1fX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luOiAwIDAgNXB4O1xufVxuLmVyZ28tYWRob3BfX3JhdGluZ0l0ZW0gLmVyZ28tYWRob3BfX3JhdGluZ0l0ZW1fX3RleHQge1xuICBtYXJnaW46IDVweCAwIDA7XG59XG4uZXJnby1hZGhvcF9fcmF0aW5nSXRlbSAuZXJnby1hZGhvcF9fcmF0aW5nSXRlbV9fdGV4dCBwIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTRweDtcbiAgbWFyZ2luLXRvcDogMTJweDtcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbn1cbi5lcmdvLWFkaG9wX19yYXRpbmdJdGVtIC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbmsge1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVyZ28tYWRob3BfX3JhdGluZ1N0YXJzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxMHB4O1xuICB3aWR0aDogMTAwJTtcbn1cbi5lcmdvLWFkaG9wX19yYXRpbmdTdGFycyAuZXJnby1hZGhvcF9fcmF0aW5nU3RhcnNfX3N0YXJzX193cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmVyZ28tYWRob3BfX3JhdGluZ1N0YXJzIC5lcmdvLWFkaG9wX19yYXRpbmdTdGFyc19fc3RhcnMsXG4uZXJnby1hZGhvcF9fcmF0aW5nU3RhcnMgLmVyZ28tYWRob3BfX3JhdGluZ1N0YXJzX19zdGFycy1maWxsZWQge1xuICB6LWluZGV4OiAwO1xuICBjb2xvcjogdmFyKC0tdGhlbWUtbGlnaHQtZ3JheSwgI2Q5ZDlkOSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5lcmdvLWFkaG9wX19yYXRpbmdTdGFycyAuZXJnby1hZGhvcF9fcmF0aW5nU3RhcnNfX3N0YXJzLWZpbGxlZCB7XG4gIHotaW5kZXg6IDE7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1hZGRpdGlvbmFsLTQsICNmNmNiMDApO1xufVxuLmVyZ28tYWRob3BfX3JhdGluZ1N0YXJzIC5lcmdvLWFkaG9wX19yYXRpbmdTdGFyc19fc3RhcnNfX3RleHQge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX19yYXRpbmdWYWx1ZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uZXJnby1hZGhvcF9fcmF0aW5nVmFsdWUuZXJnby1hZGhvcF9fcmF0aW5nVmFsdWUtLWNpcmNsZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4uZXJnby1hZGhvcF9fcmF0aW5nVmFsdWUgLmVyZ28tYWRob3BfX3JhdGluZ1ZhbHVlX19jaXJjbGUge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YTY2YWQ7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS13aGl0ZSwgI2ZmZik7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLmVyZ28tYWRob3BfX3JhdGluZ1ZhbHVlIC5lcmdvLWFkaG9wX19yYXRpbmdWYWx1ZV9fdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogNHB4O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmVyZ28tYWRob3BfX3JhdGluZ1ZhbHVlIC5lcmdvLWFkaG9wX19yYXRpbmdWYWx1ZV9fdGV4dCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX19zaW1wbGVfX2Rlc2NyaXB0aW9uIHtcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogcHJlLWxpbmU7XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVyZ28tYWRob3BfX3ZpZGVvIHtcbiAgbWFyZ2luOiAwO1xufVxuLmVyZ28tYWRob3BfX3ZpZGVvLmVyZ28tYWRob3BfX3ZpZGVvLS1jb25zZW50LW92ZXJmbG93ZWQgLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X19kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qISBhdXRvcHJlZml4ZXI6IGlnbm9yZSBuZXh0ICovXG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG59XG4uZXJnby1hZGhvcF9fdmlkZW8gLmVyZ28tYWRob3BfX3ZpZGVvX2lmcmFtZV9fd3JhcHBlciB7XG4gIGFzcGVjdC1yYXRpbzogMTYvOTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmVyZ28tYWRob3BfX3ZpZGVvIGlmcmFtZSB7XG4gIGFzcGVjdC1yYXRpbzogMTYvOTtcbiAgYm9yZGVyOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cbi5lcmdvLWFkaG9wX192aWRlbyAuZXJnby1hZGhvcF9fdmlkZW9fX2NhcHRpb24ge1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLXRoZW1lLWRhcmtlc3QtZ3JheSwgIzMzMyk7XG4gIG1hcmdpbi10b3A6IDEycHg7XG59XG4uZXJnby1hZGhvcF9fdmlkZW8gLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X19vdmVybGF5IC5hZGhvcC1lcmdvX19pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbi5lcmdvLWFkaG9wX192aWRlbyAuZXJnby1hZGhvcF9fdmlkZW9fX2NvbnNlbnRfX292ZXJsYXkgLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X19vdmVybGF5X19pbm5lciB7XG4gIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYiksIDAuOCk7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS13aGl0ZSwgI2ZmZik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG59XG4uZXJnby1hZGhvcF9fdmlkZW8gLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X19vdmVybGF5IC5lcmdvLWFkaG9wX192aWRlb19fY29uc2VudF9fb3ZlcmxheV9faW5uZXIgLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X19vdmVybGF5X19pbm5lcl9fY29udGVudCB7XG4gIHBhZGRpbmc6IDY2cHggMTZweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX192aWRlbyAuZXJnby1hZGhvcF9fdmlkZW9fX2NvbnNlbnRfX292ZXJsYXkgLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X19vdmVybGF5X19pbm5lciAuZXJnby1hZGhvcF9fdmlkZW9fX2NvbnNlbnRfX292ZXJsYXlfX2lubmVyX19jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX3ZpZGVvIC5lcmdvLWFkaG9wX192aWRlb19fY29uc2VudF9fb3ZlcmxheSAuZXJnby1hZGhvcF9fdmlkZW9fX2NvbnNlbnRfX2Rlc2NyaXB0aW9uIHtcbiAgY29sb3I6IHZhcigtLXRoZW1lLXdoaXRlLCAjZmZmKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5lcmdvLWFkaG9wX192aWRlbyAuZXJnby1hZGhvcF9fdmlkZW9fX2NvbnNlbnRfX292ZXJsYXkgLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X19kZXNjcmlwdGlvbiB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLyohIGF1dG9wcmVmaXhlcjogaWdub3JlIG5leHQgKi9cbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICB9XG59XG4uZXJnby1hZGhvcF9fdmlkZW8gLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X19vdmVybGF5IC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmVyZ28tYWRob3BfX3ZpZGVvIC5lcmdvLWFkaG9wX192aWRlb19fY29uc2VudF9fb3ZlcmxheSAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X19yZWFkTW9yZV9fY3RhIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTJweDtcbiAgY29sb3I6IHZhcigtLXRoZW1lLXdoaXRlLCAjZmZmKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uZXJnby1hZGhvcF9fdmlkZW8gLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X19vdmVybGF5IC5lcmdvLWFkaG9wX19idXR0b24tLXByaW1hcnkge1xuICBtYXJnaW4tdG9wOiAyNHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX3ZpZGVvIC5lcmdvLWFkaG9wX192aWRlb19fY29uc2VudF9fb3ZlcmxheSAuZXJnby1hZGhvcF9fYnV0dG9uLS1wcmltYXJ5IHtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fdmlkZW8gLmVyZ28tYWRob3BfX2J1dHRvbi0tcHJpbWFyeSB7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5lcmdvLWFkaG9wX192aWRlb19fY29uc2VudCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG4uZXJnby1hZGhvcF9fdmlkZW9fX2NvbnNlbnQgLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX192aWRlb19fY29uc2VudCAuZXJnby1hZGhvcF9fdmlkZW9fX2NvbnNlbnRfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX192aWRlb19fY29uc2VudCAuZXJnby1hZGhvcF9fdmlkZW9fX2NvbnNlbnRfX2Rlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X19tb2RhbCAuZXJnby1hZGhvcF9fbW9kYWxfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAyNHB4O1xufVxuLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X19tb2RhbCAuZXJnby1hZGhvcF9fdmlkZW9fX2NvbnNlbnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X19tb2RhbCAuZXJnby1hZGhvcF9fdmlkZW9fX2NvbnNlbnRfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbn1cbi5lcmdvLWFkaG9wX192aWRlb19fY29uc2VudF9fbW9kYWwgLmVyZ28tYWRob3BfX21vZGFsX19jbG9zZXIge1xuICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xufVxuLmVyZ28tYWRob3BfX3ZpZGVvX19jb25zZW50X19tb2RhbCAuZXJnby1hZGhvcF9fYnV0dG9uLS1wcmltYXJ5IHtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgbWFyZ2luLXRvcDogMzJweDtcbn1cbi5lcmdvLWFkaG9wX192aWRlb19fY29uc2VudF9fbW9kYWwgLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rOm5vdCguZXJnby1hZGhvcF9fbW9kYWxfX2Nsb3Nlcikge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuXG4uZXJnby1hZGhvcF9fc2tpcC10by1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogIzhlMDAzODtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDE2cHggMTZweDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGhlaWdodDogMzRweDtcbiAgaW5zZXQ6IDAgYXV0byBhdXRvIDUwJTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDhweCAyNHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEyMCUpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbiAgei1pbmRleDogNTIwO1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5lcmdvLWFkaG9wX19za2lwLXRvLWNvbnRlbnQ6Zm9jdXMge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlKTtcbiAgb3BhY2l0eTogMTtcbn1cblxubWFpbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNvY2lhbE1lZGlhQW5kTGlua3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1wcmltYXJ5LCAjOGUwMDM4KTtcbn1cblxuLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhQW5kTGlua3Mge1xuICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBjb2xvcjogdmFyKC0tdGhlbWUtd2hpdGUsICNmZmYpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiB3cmFwO1xuICBnYXA6IDI0cHg7XG4gIHBhZGRpbmc6IDI0cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fc29jaWFsTWVkaWFBbmRMaW5rcyB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhQW5kTGlua3MgLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhTGlua3MgLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhTGlua3NfX2xpc3Qge1xuICBnYXA6IDIwcHg7XG59XG4uZXJnby1hZGhvcF9fc29jaWFsTWVkaWFBbmRMaW5rcyAuZXJnby1hZGhvcF9fc29jaWFsTWVkaWFMaW5rcyAuZXJnby1hZGhvcF9fc29jaWFsTWVkaWFMaW5rc19faXRlbSAuZXJnby1hZGhvcF9fc29jaWFsTWVkaWFMaW5rc19fbGluayB7XG4gIHBhZGRpbmc6IDJweDtcbn1cbi5lcmdvLWFkaG9wX19zb2NpYWxNZWRpYUFuZExpbmtzIHN2ZyB7XG4gIGZpbGw6IHZhcigtLXRoZW1lLXdoaXRlLCAjZmZmKTtcbn1cbi5lcmdvLWFkaG9wX19zb2NpYWxNZWRpYUFuZExpbmtzIC5lcmdvLWFkaG9wX19zb2NpYWxNZWRpYUFuZExpbmtzX19saW5rcyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxMHB4O1xufVxuLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhQW5kTGlua3MgLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhQW5kTGlua3NfX2xpbmtzIC5lcmdvLWFkaG9wX19zb2NpYWxNZWRpYUFuZExpbmtzX19saW5rc19faXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tdGhlbWUtd2hpdGUsICNmZmYpO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhQW5kTGlua3MgLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhQW5kTGlua3NfX2xpbmtzIC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhQW5kTGlua3MgLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhQW5kTGlua3NfX2xpbmtzIC5lcmdvLWFkaG9wX19idXR0b24tLXRleHQtbGluayB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS13aGl0ZSwgI2ZmZik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fc29jaWFsTWVkaWFBbmRMaW5rcyAuZXJnby1hZGhvcF9fc29jaWFsTWVkaWFBbmRMaW5rc19fbGlua3MgLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX19zb2NpYWxNZWRpYUFuZExpbmtzIC5lcmdvLWFkaG9wX19zb2NpYWxNZWRpYUFuZExpbmtzX19saW5rcyAuZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbmsgLmVyZ28tYWRob3BfX2J1dHRvbl9fdGV4dCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhTGlua3MgLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhTGlua3NfX2hlYWRsaW5lIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhTGlua3MgLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhTGlua3NfX2xpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAzMHB4O1xufVxuLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhTGlua3MgLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhTGlua3NfX2l0ZW0ge1xuICBsaW5lLWhlaWdodDogMTtcbn1cbi5lcmdvLWFkaG9wX19zb2NpYWxNZWRpYUxpbmtzIC5lcmdvLWFkaG9wX19zb2NpYWxNZWRpYUxpbmtzX19saW5rIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi5lcmdvLWFkaG9wX19zb2NpYWxNZWRpYUxpbmtzIC5lcmdvLWFkaG9wX19zb2NpYWxNZWRpYUxpbmtzX19pY29uIHN2ZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhTGlua3MgLmVyZ28tYWRob3BfX3NvY2lhbE1lZGlhTGlua3NfX2FuY2hvciB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGUge1xuICB3aWR0aDogMjAwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMCBhdXRvIDgycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlIHtcbiAgICB3aWR0aDogMjQ4cHg7XG4gIH1cbn1cbi5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlIC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19waWN0dXJlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMCAxNXB4O1xuICB3aWR0aDogMTcycHg7XG4gIGhlaWdodDogMTcycHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZSAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fcGljdHVyZSB7XG4gICAgd2lkdGg6IDIyMHB4O1xuICAgIGhlaWdodDogMjIwcHg7XG4gIH1cbn1cbi5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlIC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19waWN0dXJlIGltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZSAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZSAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fZGVzY3JpcHRpb24gcCwgLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGUgLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX2Rlc2NyaXB0aW9uIGRpdiA+IHNwYW4ge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtZGFya2VzdC1ncmF5LCAjMzMzKTtcbiAgbGluZS1oZWlnaHQ6IDI7XG4gIG1hcmdpbjogMDtcbn1cbi5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlIC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19kZXNjcmlwdGlvbiAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fbmFtZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZSAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fb2NjdXBhdGlvbiB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG59XG4uYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZSAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fY29udGFjdCB7XG4gIG1hcmdpbi10b3A6IDdweDtcbn1cbi5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlIC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19jb250YWN0IHAsIC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlIC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19jb250YWN0IGRpdiA+IHNwYW4ge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjNzU3NTc1O1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xufVxuLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGUgLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX2NvbnRhY3QgLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwIDRweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuYWRob3BfX3RlYW0tLTEtZW1wbG95ZWVzIC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlLCAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZS5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlLS1zb2xvIHtcbiAgICBwYWRkaW5nOiAwIDE0cHg7XG4gICAgbWF4LXdpZHRoOiA0NjRweDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmFkaG9wX190ZWFtLS0xLWVtcGxveWVlcyAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZSAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fcGljdHVyZSwgLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGUuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZS0tc29sbyAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZV9fcGljdHVyZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5hZGhvcF9fdGVhbS0tMS1lbXBsb3llZXMgLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGUgLmFkaG9wX190ZWFtLWVtcGxveWVlLXRpbGVfX2Rlc2NyaXB0aW9uLCAuYWRob3BfX3RlYW0tZW1wbG95ZWUtdGlsZS5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlLS1zb2xvIC5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlX19kZXNjcmlwdGlvbiB7XG4gICAgZmxleDogMTtcbiAgICBtYXJnaW4tbGVmdDogNTBweDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IEZvbnRcbm5hbWU6IGZvbnRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5Vc2UgdGhpcyBtaXhpbmcgdG8gYWRkIGZvbnRzLlxuXG5Eb2N1bWVudGF0aW9uOlxuXG4tIGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0ZvbnQrbWFuYWdlbWVudCt3aXRoK1NDU1NcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGZvbnQtdHlwZVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aXRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbjpyb290IHtcbiAgLS10aGVtZS1ibGFjazogIzAwMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXk6ICMzMzM7XG4gIC0tdGhlbWUtcHJpbWFyeTogIzhlMDAzODtcbiAgLS10aGVtZS1wcmltYXJ5LWxpZ2h0OiAjZmJmNGY0O1xuICAtLXRoZW1lLXdoaXRlOiAjZmZmO1xuICAtLXRoZW1lLWJsYWNrLXJnYjogMCwgMCwgMDtcbiAgLS10aGVtZS1kYXJrZXN0LWdyYXktcmdiOiA1MSwgNTEsIDUxO1xuICAtLXRoZW1lLXByaW1hcnktcmdiOiAxNDIsIDAsIDU2O1xuICAtLXRoZW1lLXdoaXRlLXJnYjogMjU1LCAyNTUsIDI1NTtcbn1cblxuLmFlbS1HcmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWVtLUdyaWQ6OmJlZm9yZSxcbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG5cbi5hZW0tR3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkQ29sdW1uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZC0tMTIsXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDEycHg7XG59XG5cbi5hZW0tR3JpZC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyLFxuLmFlbS1HcmlkLmFlbS1HcmlkLS1kZWZhdWx0LS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiogTmF2aWdhdGlvbiBwYWRkaW5nIHRvcCBhbmQgYm90dG9tICovXG4vKiogU2VhcmNoYm94IHN1Z2dlc3Rpb25zIG9mZnNldCAqL1xuLyoqIEhlYWRlciBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4tYm90dG9tLiAqL1xuLyoqIFNlYXJjaGJveCBoZWlnaHQuICovXG4vKiogU2VhcmNoYm94IG1hcmdpbiBsZWZ0IGFuZCByaWdodCAqKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmhpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuaGlkZGVuLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuaGlkZGVuLW1pbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tbWluLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmFkaG9wX190ZWFtLS1yZWd1bGFyIHtcbiAgbWFyZ2luLWJvdHRvbTogLTMwcHg7XG59XG4uYWRob3BfX3RlYW0tLXJlZ3VsYXIuYWRob3BfX3RlYW0tLTEtZW1wbG95ZWVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5hZGhvcF9fdGVhbS0tcmVndWxhci5hZGhvcF9fdGVhbS0tMi1lbXBsb3llZXMgLnNsaWNrLXNsaWRlciB7XG4gIG1heC13aWR0aDogNTQwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWRob3BfX3RlYW0tLXJlZ3VsYXIgLnNsaWNrLXNsaWRlciB7XG4gICAgbWF4LXdpZHRoOiA1MjBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5hZGhvcF9fdGVhbS0tcmVndWxhciAuc2xpY2stc2xpZGVyIHtcbiAgICBtYXgtd2lkdGg6IDc4MHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgLmFkaG9wX190ZWFtLS1yZWd1bGFyIC5zbGljay1zbGlkZXIge1xuICAgIG1heC13aWR0aDogMTA0MHB4O1xuICB9XG59XG4uYWRob3BfX3RlYW0tLXJlZ3VsYXIgLnNsaWNrLXNsaWRlciAuc2xpY2stYXJyb3ctLWN1c3RvbSB7XG4gIHRvcDogMTYwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cbi5hZGhvcF9fdGVhbS0tcmVndWxhciAuc2xpY2stc2xpZGVyIC5zbGljay1hcnJvdy0tY3VzdG9tLnNsaWNrLXByZXYge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwJSwgMCk7XG59XG5cbi5hZGhvcF9fdGVhbS1lbXBsb3llZS10aWxlLS1zb2xvIHtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYWRob3BfX3RlYW0tZW1wbG95ZWUtbGFuZyB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDdweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAyNjVweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuYWRob3BfX3RlYW0tZW1wbG95ZWUtbGFuZyAuYWRob3BfX3RlYW0tLTEtZW1wbG95ZWVzIC5hZGhvcF9fdGVhbS1lbXBsb3llZS1sYW5nX19mbGFncyB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG59XG4uYWRob3BfX3RlYW0tZW1wbG95ZWUtbGFuZzpob3ZlciAuYWRob3BfX3RlYW0tZW1wbG95ZWUtbGFuZ19fZHJvcGRvd25fX3dyYXBwZXIge1xuICB6LWluZGV4OiAxO1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLmFkaG9wX190ZWFtLWVtcGxveWVlLWxhbmcgLmFkaG9wX190ZWFtLWVtcGxveWVlLWxhbmdfX2ZsYWdzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5hZGhvcF9fdGVhbS1lbXBsb3llZS1sYW5nIC5hZGhvcF9fdGVhbS1lbXBsb3llZS1sYW5nX19mbGFncyAuZmxhZyB7XG4gIGhlaWdodDogMjJweDtcbiAgd2lkdGg6IDIycHg7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuLmFkaG9wX190ZWFtLWVtcGxveWVlLWxhbmcgLmFkaG9wX190ZWFtLWVtcGxveWVlLWxhbmdfX2ZsYWdzIC5mbGFnOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uYWRob3BfX3RlYW0tZW1wbG95ZWUtbGFuZyAuYWRob3BfX3RlYW0tZW1wbG95ZWUtbGFuZ19fZmxhZ3MgLmZsYWc6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5hZGhvcF9fdGVhbS1lbXBsb3llZS1sYW5nIC5hZGhvcF9fdGVhbS1lbXBsb3llZS1sYW5nX19mbGFncyAuYWRob3BfX3RlYW0tZW1wbG95ZWUtbGFuZ19fZWxsaXBzaXMge1xuICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XG59XG4uYWRob3BfX3RlYW0tZW1wbG95ZWUtbGFuZyAuYWRob3BfX3RlYW0tZW1wbG95ZWUtbGFuZ19fZHJvcGRvd25fX3dyYXBwZXIge1xuICB6LWluZGV4OiAtMTtcbiAgYm94LXNoYWRvdzogMCA4cHggMTBweCByZ2JhKHZhcigtLXRoZW1lLWJsYWNrLXJnYiksIDAuMTUpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1saWdodGVzdC1ncmF5LCAjZjJmMmYyKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtd2hpdGUsICNmZmYpO1xuICBib3JkZXItcmFkaXVzOiA5cHg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAyOHB4KTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXgtaGVpZ2h0OiAxNDRweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3NnB4KSB7XG4gIC5hZGhvcF9fdGVhbS1lbXBsb3llZS1sYW5nIC5hZGhvcF9fdGVhbS1lbXBsb3llZS1sYW5nX19kcm9wZG93bl9fd3JhcHBlciB7XG4gICAgd2lkdGg6IDI1NXB4O1xuICB9XG59XG4uYWRob3BfX3RlYW0tZW1wbG95ZWUtbGFuZyAuYWRob3BfX3RlYW0tZW1wbG95ZWUtbGFuZ19fZHJvcGRvd25fX3dyYXBwZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNHB4O1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICBoZWlnaHQ6IDRweDtcbiAgd2lkdGg6IDQ4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLXByaW1hcnksICM4ZTAwMzgpO1xufVxuLmFkaG9wX190ZWFtLWVtcGxveWVlLWxhbmcgLmFkaG9wX190ZWFtLWVtcGxveWVlLWxhbmdfX2Ryb3Bkb3duX193cmFwcGVyIC5hZGhvcF9fdGVhbS1lbXBsb3llZS1sYW5nX19kcm9wZG93biB7XG4gIG1heC1oZWlnaHQ6IDE0NHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBwYWRkaW5nOiAyMHB4IDMwcHg7XG59XG4uYWRob3BfX3RlYW0tZW1wbG95ZWUtbGFuZyAuYWRob3BfX3RlYW0tZW1wbG95ZWUtbGFuZ19fZHJvcGRvd25fX3dyYXBwZXIgLmFkaG9wX190ZWFtLWVtcGxveWVlLWxhbmdfX2Ryb3Bkb3duIGg1IHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBtYXJnaW46IDA7XG59XG5cbi5lcmdvLWFkaG9wX190ZWFtIHtcbiAgei1pbmRleDogMTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5lcmdvLWFkaG9wX190ZWFtIC5lcmdvLWFkaG9wX190ZWFtX19oZWFkbGluZSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1kYXJrLWdyYXksICNhZWFlYWUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fdGVhbSAuZXJnby1hZGhvcF9fdGVhbV9faGVhZGxpbmUge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX3RlYW0gLmVyZ28tYWRob3BfX3RlYW1fX3N1YmhlYWRpbmcge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1kYXJrZXN0LWdyYXksICMzMzMpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX3RlYW0gLmVyZ28tYWRob3BfX3RlYW1fX3N1YmhlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX3RlYW0gLmVyZ28tYWRob3BfX3RlYW1fX3N1YmhlYWRpbmcgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5lcmdvLWFkaG9wX190ZWFtIC5lcmdvLWFkaG9wX190ZWFtX19sb2NhdGlvbi1waWNrZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbi5lcmdvLWFkaG9wX190ZWFtIC5lcmdvLWFkaG9wX190ZWFtX19sb2NhdGlvbi1waWNrZXIgc2VsZWN0IHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgbWFyZ2luOiAwIDhweDtcbiAgYm9yZGVyOiAwO1xuICBjb2xvcjogdmFyKC0tdGhlbWUtcHJpbWFyeSwgIzhlMDAzOCk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogXCJGUyBNZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgLTJweCAwIDAgdmFyKC0tdGhlbWUtcHJpbWFyeSwgIzhlMDAzOCkgaW5zZXQ7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX190ZWFtIC5lcmdvLWFkaG9wX190ZWFtX19sb2NhdGlvbi1waWNrZXIgc2VsZWN0IHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX190ZWFtIC5lcmdvLWFkaG9wX190ZWFtX19sb2NhdGlvbi1waWNrZXIgLmVyZ28tYWRob3BfX3RlYW1fX2xvY2F0aW9uLXBpY2tlcl9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmlsbDogdmFyKC0tdGhlbWUtcHJpbWFyeSwgIzhlMDAzOCk7XG4gIG1hcmdpbi1sZWZ0OiAtMjRweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uZXJnby1hZGhvcF9fdGVhbSAuZXJnby1hZGhvcF9fdGVhbV9fY3RhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi50ZWFzZXJzR3JpZCB7XG4gIHdpZHRoOiAxMDB2dztcbiAgbWF4LXdpZHRoOiAxMDB2dztcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlIC0gNTB2dyk7XG59XG4udGVhc2Vyc0dyaWQgLnRlYXNlcnNHcmlkX19saXN0IHtcbiAgbWF4LXdpZHRoOiAxMjMwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBib3JkZXItbGVmdDogMjRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAyNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDI0cHg7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xufVxuLnRlYXNlcnNHcmlkIC50ZWFzZXJzR3JpZF9fbGlzdCA+IFtkYXRhLW5jPVRlYXNlcl0ge1xuICBkaXNwbGF5OiBncmlkO1xufVxuLnRlYXNlcnNHcmlkLmNvbHMtMSAudGVhc2Vyc0dyaWRfX2xpc3Qge1xuICBtYXgtd2lkdGg6IDkxMnB4O1xufVxuLnRlYXNlcnNHcmlkOm5vdCguY29scy0xKSAuZXJnby1hZGhvcF9fdGVhc2VyX19oZWFkbGluZSB7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50ZWFzZXJzR3JpZC5jb2xzLTIgLnRlYXNlcnNHcmlkX19saXN0IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50ZWFzZXJzR3JpZC5jb2xzLTMgLnRlYXNlcnNHcmlkX19saXN0IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICB9XG59XG4udGVhc2Vyc0dyaWQgLnRlYXNlci5iYXNlIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi50ZWFzZXJzR3JpZCAudGVhc2VyLmJhc2UgPiBkaXYge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uZXJnby1hZGhvcF9fdGVhc2VyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gd3JhcDtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4uZXJnby1hZGhvcF9fdGVhc2VyLmVyZ28tYWRob3BfX3RlYXNlci0tZnJhbWUge1xuICBib3gtc2hhZG93OiAwIDNweCA1cHggLTFweCByZ2JhKHZhcigtLXRoZW1lLWJsYWNrLXJnYiksIDAuMTYpLCAwIDZweCAxMHB4IDAgcmdiYSh2YXIoLS10aGVtZS1ibGFjay1yZ2IpLCAwLjEyKSwgMCAxcHggMThweCAwIHJnYmEodmFyKC0tdGhlbWUtYmxhY2stcmdiKSwgMC4xKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50ZWFzZXItdHlwZS0taG9yaXpvbnRhbCAuZXJnby1hZGhvcF9fdGVhc2VyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGVhc2VyLXR5cGUtLWhvcml6b250YWwgLmVyZ28tYWRob3BfX3RlYXNlci5lcmdvLWFkaG9wX190ZWFzZXItLWltYWdlLXJpZ2h0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbn1cbi50ZWFzZXItdHlwZS0taG9yaXpvbnRhbCAuZXJnby1hZGhvcF9fdGVhc2VyIC5lcmdvLWFkaG9wX190ZWFzZXJzTGlzdF9faXRlbV9faW1hZ2Uge1xuICBmbGV4OiAxO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRlYXNlci10eXBlLS1ob3Jpem9udGFsIC5lcmdvLWFkaG9wX190ZWFzZXIgLmVyZ28tYWRob3BfX3RlYXNlcnNMaXN0X19pdGVtX19pbWFnZSBpbWcge1xuICAgIGFzcGVjdC1yYXRpbzogMTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRlYXNlci10eXBlLS1ob3Jpem9udGFsIC5lcmdvLWFkaG9wX190ZWFzZXIgLmVyZ28tYWRob3BfX3RlYXNlcl9fY29udGVudCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50ZWFzZXItdHlwZS0taG9yaXpvbnRhbCAuZXJnby1hZGhvcF9fdGVhc2VyIC5lcmdvLWFkaG9wX190ZWFzZXJfX2hlYWRsaW5lIHtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gIH1cbn1cbi50ZWFzZXItdHlwZS0taG9yaXpvbnRhbCAuZXJnby1hZGhvcF9fdGVhc2VyIC5lcmdvLWFkaG9wX190ZWFzZXJfX2hlYWRsaW5lLmgyIHtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBsaW5lLWhlaWdodDogNDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50ZWFzZXItdHlwZS0taG9yaXpvbnRhbCAuZXJnby1hZGhvcF9fdGVhc2VyIC5lcmdvLWFkaG9wX190ZWFzZXJfX2hlYWRsaW5lLmgyIHtcbiAgICBmb250LXNpemU6IDM2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gIH1cbn1cbi50ZWFzZXItdHlwZS0taG9yaXpvbnRhbCAuZXJnby1hZGhvcF9fdGVhc2VyIC5lcmdvLWFkaG9wX190ZWFzZXJfX2hlYWRsaW5lLmg0IHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMjhweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50ZWFzZXItdHlwZS0taG9yaXpvbnRhbCAuZXJnby1hZGhvcF9fdGVhc2VyIC5lcmdvLWFkaG9wX190ZWFzZXJfX2hlYWRsaW5lLmg0IHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gIH1cbn1cbi50ZWFzZXItdHlwZS0taG9yaXpvbnRhbCAuZXJnby1hZGhvcF9fdGVhc2VyIC5lcmdvLWFkaG9wX190ZWFzZXJfX2hlYWRsaW5lLmg1IHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50ZWFzZXItdHlwZS0taG9yaXpvbnRhbCAuZXJnby1hZGhvcF9fdGVhc2VyIC5lcmdvLWFkaG9wX190ZWFzZXJfX2hlYWRsaW5lLmg1IHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX190ZWFzZXIgLmVyZ28tYWRob3BfX3RlYXNlcnNMaXN0X19pdGVtX19pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmVyZ28tYWRob3BfX3RlYXNlciAuZXJnby1hZGhvcF9fdGVhc2Vyc0xpc3RfX2l0ZW1fX2ltYWdlIGltZyB7XG4gIGFzcGVjdC1yYXRpbzogMTYvOTtcbiAgd2lkdGg6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuLmVyZ28tYWRob3BfX3RlYXNlciAuZXJnby1hZGhvcF9fdGVhc2VyX19jb250ZW50IHtcbiAgZmxleDogMTtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fdGVhc2VyIC5lcmdvLWFkaG9wX190ZWFzZXJfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzdHJldGNoO1xuICB9XG59XG4uZXJnby1hZGhvcF9fdGVhc2VyIC5lcmdvLWFkaG9wX190ZWFzZXJfX2NvbnRlbnRfX3dyYXBwZXIge1xuICBwYWRkaW5nOiAyNHB4IDMycHggMzJweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZXJnby1hZGhvcF9fdGVhc2VyIC5lcmdvLWFkaG9wX190ZWFzZXJfX2hlYWRsaW5lIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMzZweDtcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVyZ28tYWRob3BfX3RlYXNlciAuZXJnby1hZGhvcF9fdGVhc2VyX19oZWFkbGluZSB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fdGVhc2VyIC5lcmdvLWFkaG9wX190ZWFzZXJfX2hlYWRsaW5lLmVyZ28tYWRob3BfX3RlYXNlcl9faGVhZGxpbmUtLXJlZCB7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1wcmltYXJ5LCAjOGUwMDM4KTtcbn1cbi5lcmdvLWFkaG9wX190ZWFzZXIgLmVyZ28tYWRob3BfX3RlYXNlcl9fZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuLmVyZ28tYWRob3BfX3RlYXNlciAuZXJnby1hZGhvcF9fdGVhc2VyX19jdGEge1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICBwYWRkaW5nLXRvcDogMzJweDtcbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX190ZWFzZXJzTGlzdF9faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG4gIGdhcDogMjRweDtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX190ZWFzZXJzTGlzdF9faXRlbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmVyZ28tYWRob3BfX3RlYXNlcnNMaXN0X19pdGVtIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX190ZWFzZXJzTGlzdF9faXRlbTpudGgtY2hpbGQob2RkKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG59XG4uZXJnby1hZGhvcF9fdGVhc2Vyc0xpc3RfX2l0ZW0gLmVyZ28tYWRob3BfX3RlYXNlcnNMaXN0X19pdGVtX19pbWFnZSB7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fdGVhc2Vyc0xpc3RfX2l0ZW0gLmVyZ28tYWRob3BfX3RlYXNlcnNMaXN0X19pdGVtX19pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMjAwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX190ZWFzZXJzTGlzdF9faXRlbSAuZXJnby1hZGhvcF9fdGVhc2Vyc0xpc3RfX2l0ZW1fX2NvbnRlbnQsXG4gIC5lcmdvLWFkaG9wX190ZWFzZXJzTGlzdF9faXRlbSAuZXJnby1hZGhvcF9fdGVhc2Vyc0xpc3RfX2l0ZW1fX2ltYWdlIHtcbiAgICBmbGV4OiAxO1xuICAgIG1heC13aWR0aDogNDIwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX190ZWFzZXJzTGlzdF9faXRlbSAuZXJnby1hZGhvcF9fdGVhc2Vyc0xpc3RfX2l0ZW1fX2NvbnRlbnQ6b25seS1jaGlsZCxcbiAgLmVyZ28tYWRob3BfX3RlYXNlcnNMaXN0X19pdGVtIC5lcmdvLWFkaG9wX190ZWFzZXJzTGlzdF9faXRlbV9faW1hZ2U6b25seS1jaGlsZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG4uZXJnby1hZGhvcF9fdGVhc2Vyc0xpc3RfX2l0ZW0gLmVyZ28tYWRob3BfX3RlYXNlcnNMaXN0X19pdGVtX19zdWJoZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgY29sb3I6IHZhcigtLXRoZW1lLWRhcmstZ3JheSwgI2FlYWVhZSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uZXJnby1hZGhvcF9fdGVhc2Vyc0xpc3RfX2l0ZW0gLmVyZ28tYWRob3BfX3RlYXNlcnNMaXN0X19pdGVtX19oZWFkbGluZSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMCAwIDE2cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MTFweCkge1xuICAuZXJnby1hZGhvcF9fdGVhc2Vyc0xpc3RfX2l0ZW0gLmVyZ28tYWRob3BfX3RlYXNlcnNMaXN0X19pdGVtX19kZXNjcmlwdGlvbiB7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX3RlYXNlcnNMaXN0X19pdGVtIC5lcmdvLWFkaG9wX190ZWFzZXJzTGlzdF9faXRlbV9fZGVzY3JpcHRpb246bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG4uZXJnby1hZGhvcF9fdGVhc2Vyc0xpc3RfX2l0ZW0gLmVyZ28tYWRob3BfX3RlYXNlcnNMaXN0X19sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLmVyZ28tYWRob3BfX3RlYXNlcnNMaXN0X19pdGVtIC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbmsge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZXJnby1hZGhvcF9fdGVhc2Vyc0xpc3RfX2l0ZW0gLmVyZ28tYWRob3BfX2J1dHRvbi5lcmdvLWFkaG9wX19idXR0b24tLXRleHQtbGluayB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fdGVhc2Vyc0xpc3RfX2l0ZW0gLmVyZ28tYWRob3BfX2J1dHRvbjpub3QoLmVyZ28tYWRob3BfX2J1dHRvbi0tdGV4dC1saW5rKSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmVyZ28tYWRob3BfX3RlYXNlcnNMaXN0X19pdGVtIC5lcmdvLWFkaG9wX19idXR0b246bm90KC5lcmdvLWFkaG9wX19idXR0b24tLXRleHQtbGluaykge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5lcmdvLWFkaG9wLXRlYXNlcnMtbGlzdCB7XG4gIG1heC13aWR0aDogODcwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmVyZ28tYWRob3BfX3RleHQgaDEsXG4uZXJnby1hZGhvcF9fdGV4dCBoMixcbi5lcmdvLWFkaG9wX190ZXh0IGgzLFxuLmVyZ28tYWRob3BfX3RleHQgaDQsXG4uZXJnby1hZGhvcF9fdGV4dCBoNSxcbi5lcmdvLWFkaG9wX190ZXh0IHAge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmVyZ28tYWRob3BfX3RleHQgLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLmVyZ28tYWRob3BfX3RleHQgLmVyZ28tYWRob3BfX2J1dHRvbl9fY29tcG9uZW50IC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fYnV0dG9uLS10ZXh0LWxpbmsge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cbi5lcmdvLWFkaG9wX190ZXh0IC5lcmdvLWFkaG9wX19idXR0b25fX2NvbXBvbmVudCAuZXJnby1hZGhvcF9fYnV0dG9uIHNwYW4ge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG5cbiMjIFNvdXJjZVxuLS0tXG5cblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogRm9udFxubmFtZTogZm9udFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblVzZSB0aGlzIG1peGluZyB0byBhZGQgZm9udHMuXG5cbkRvY3VtZW50YXRpb246XG5cbi0gaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvRm9udCttYW5hZ2VtZW50K3dpdGgrU0NTU1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkZm9udC10eXBlXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuOnJvb3Qge1xuICAtLXRoZW1lLWJsYWNrOiAjMDAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheTogIzMzMztcbiAgLS10aGVtZS1wcmltYXJ5OiAjOGUwMDM4O1xuICAtLXRoZW1lLXByaW1hcnktbGlnaHQ6ICNmYmY0ZjQ7XG4gIC0tdGhlbWUtd2hpdGU6ICNmZmY7XG4gIC0tdGhlbWUtYmxhY2stcmdiOiAwLCAwLCAwO1xuICAtLXRoZW1lLWRhcmtlc3QtZ3JheS1yZ2I6IDUxLCA1MSwgNTE7XG4gIC0tdGhlbWUtcHJpbWFyeS1yZ2I6IDE0MiwgMCwgNTY7XG4gIC0tdGhlbWUtd2hpdGUtcmdiOiAyNTUsIDI1NSwgMjU1O1xufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZW0tR3JpZDo6YmVmb3JlLFxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cblxuLmFlbS1HcmlkOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmFlbS1HcmlkLS0xMixcbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICBib3JkZXItbGVmdDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMTJweDtcbn1cblxuLmFlbS1HcmlkLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIsXG4uYWVtLUdyaWQuYWVtLUdyaWQtLWRlZmF1bHQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKiBOYXZpZ2F0aW9uIHBhZGRpbmcgdG9wIGFuZCBib3R0b20gKi9cbi8qKiBTZWFyY2hib3ggc3VnZ2VzdGlvbnMgb2Zmc2V0ICovXG4vKiogSGVhZGVyIG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IG1hcmdpbi1ib3R0b20uICovXG4vKiogU2VhcmNoYm94IGhlaWdodC4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luIGxlZnQgYW5kIHJpZ2h0ICoqL1xuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuaGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkxMXB4KSB7XG4gIC5oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5oaWRkZW4tbWluLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1taW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZXJnby1hZGhvcF9fdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZXJnby1hZGhvcF9fdG9vbHRpcCAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX2J1dHRvbi0td2l0aC1pY29uLmVyZ28tYWRob3BfX3Rvb2x0aXBfX292ZXJsYXlfX3RyaWdnZXIge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtZGFya2VyLWdyYXksICM3MzczNzMpO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4uZXJnby1hZGhvcF9fdG9vbHRpcCAuZXJnby1hZGhvcF9fYnV0dG9uLmVyZ28tYWRob3BfX2J1dHRvbi0td2l0aC1pY29uLmVyZ28tYWRob3BfX3Rvb2x0aXBfX292ZXJsYXlfX3RyaWdnZXIuZXJnby1hZGhvcF9fYnV0dG9uLS13aXRoLWljb24tb25seTpmb2N1cy12aXNpYmxlIHtcbiAgYm9yZGVyOiAwO1xufVxuLmVyZ28tYWRob3BfX3Rvb2x0aXAgLmVyZ28tYWRob3BfX2J1dHRvbi5lcmdvLWFkaG9wX19idXR0b24tLXdpdGgtaWNvbi5lcmdvLWFkaG9wX190b29sdGlwX19vdmVybGF5X190cmlnZ2VyLmVyZ28tYWRob3BfX2J1dHRvbi0td2l0aC1pY29uLW9ubHk6Zm9jdXMtdmlzaWJsZTo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS10aGVtZS1wcmltYXJ5LXJnYiksIDAuMTYpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLmVyZ28tYWRob3BfX3Rvb2x0aXAgLmVyZ28tYWRob3BfX2J1dHRvbi5lcmdvLWFkaG9wX19idXR0b24tLXdpdGgtaWNvbi5lcmdvLWFkaG9wX190b29sdGlwX19vdmVybGF5X190cmlnZ2VyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4zcyBlYXNlLWluLW91dDtcbn1cbi5lcmdvLWFkaG9wX190b29sdGlwIC5lcmdvLWFkaG9wX190b29sdGlwX19vdmVybGF5IHtcbiAgei1pbmRleDogLTE7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tdGhlbWUtd2hpdGUtcmdiKSwgMC44NSk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZXJnby1hZGhvcF9fdG9vbHRpcCAuZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheSB7XG4gICAgYm94LXNoYWRvdzogMCA2cHggNnB4IC0zcHggcmdiYSh2YXIoLS10aGVtZS1ibGFjay1yZ2IpLCAwLjIpLCAwIDEwcHggMTRweCAxcHggcmdiYSh2YXIoLS10aGVtZS1ibGFjay1yZ2IpLCAwLjE0KSwgMCA0cHggMThweCAzcHggcmdiYSh2YXIoLS10aGVtZS1ibGFjay1yZ2IpLCAwLjEyKTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAtMTBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xuICB9XG59XG4uZXJnby1hZGhvcF9fdG9vbHRpcCAuZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheSAuZXJnby1hZGhvcF9fYnV0dG9uLS13aXRoLWljb24uZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheV9fY2xvc2VyLmVyZ28tYWRob3BfX3Rvb2x0aXBfX292ZXJsYXlfX2Nsb3NlciB7XG4gIHotaW5kZXg6IDE7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1kYXJrZXItZ3JheSwgIzczNzM3Myk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxOHB4O1xuICByaWdodDogMThweDtcbiAgb3BhY2l0eTogMC40O1xuICBoZWlnaHQ6IGF1dG87XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcbiAgd2lkdGg6IGF1dG87XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZXJnby1hZGhvcF9fdG9vbHRpcCAuZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheSAuZXJnby1hZGhvcF9fYnV0dG9uLS13aXRoLWljb24uZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheV9fY2xvc2VyLmVyZ28tYWRob3BfX3Rvb2x0aXBfX292ZXJsYXlfX2Nsb3NlciB7XG4gICAgdG9wOiAxNHB4O1xuICAgIHJpZ2h0OiAxNHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fdG9vbHRpcCAuZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheSAuZXJnby1hZGhvcF9fYnV0dG9uLS13aXRoLWljb24uZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheV9fY2xvc2VyLmVyZ28tYWRob3BfX3Rvb2x0aXBfX292ZXJsYXlfX2Nsb3Nlcjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG4uZXJnby1hZGhvcF9fdG9vbHRpcCAuZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheSAuZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheV9fY29udGVudCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLXdoaXRlLCAjZmZmKTtcbiAgYm94LXNoYWRvdzogMCA2cHggNnB4IC0zcHggcmdiYSh2YXIoLS10aGVtZS1ibGFjay1yZ2IpLCAwLjIpLCAwIDEwcHggMTRweCAxcHggcmdiYSh2YXIoLS10aGVtZS1ibGFjay1yZ2IpLCAwLjE0KSwgMCA0cHggMThweCAzcHggcmdiYSh2YXIoLS10aGVtZS1ibGFjay1yZ2IpLCAwLjEyKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcGFkZGluZzogNTBweCAxOHB4IDM2cHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmVyZ28tYWRob3BfX3Rvb2x0aXAgLmVyZ28tYWRob3BfX3Rvb2x0aXBfX292ZXJsYXkgLmVyZ28tYWRob3BfX3Rvb2x0aXBfX292ZXJsYXlfX2NvbnRlbnQge1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIG1pbi13aWR0aDogMjUwcHg7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IDQ4cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lcmdvLWFkaG9wX190b29sdGlwIC5lcmdvLWFkaG9wX190b29sdGlwX19vdmVybGF5IC5lcmdvLWFkaG9wX190b29sdGlwX19vdmVybGF5X19jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICB9XG59XG4uZXJnby1hZGhvcF9fdG9vbHRpcCAuZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheSAuZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheV9fY29udGVudDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1wcmltYXJ5LCAjOGUwMDM4KTtcbn1cbi5lcmdvLWFkaG9wX190b29sdGlwOmhvdmVyIC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fYnV0dG9uLS13aXRoLWljb24uZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheV9fdHJpZ2dlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS10aGVtZS1wcmltYXJ5LXJnYiksIDAuMDUpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLmVyZ28tYWRob3BfX3Rvb2x0aXAuZXJnby1hZGhvcF9fdG9vbHRpcC1vcGVuIC5lcmdvLWFkaG9wX19idXR0b24uZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheV9fdHJpZ2dlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tdGhlbWUtcHJpbWFyeS1yZ2IpLCAwLjE2KTtcbn1cbi5lcmdvLWFkaG9wX190b29sdGlwLmVyZ28tYWRob3BfX3Rvb2x0aXAtb3BlbiAuZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheSB7XG4gIHotaW5kZXg6IDEwO1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmVyZ28tYWRob3BfX3Rvb2x0aXAuZXJnby1hZGhvcF9fdG9vbHRpcC1yZXZlcnNlZCAuZXJnby1hZGhvcF9fdG9vbHRpcF9fb3ZlcmxheSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogLTEwcHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX190b29sdGlwLmVyZ28tYWRob3BfX3Rvb2x0aXAtcmV2ZXJzZWQgLmVyZ28tYWRob3BfX3Rvb2x0aXBfX292ZXJsYXkgLmVyZ28tYWRob3BfX3Rvb2x0aXBfX292ZXJsYXlfX2NvbnRlbnQ6OmJlZm9yZSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMHB4O1xufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX191c3BQcmVzZW50YXRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uZXJnby1hZGhvcF9fdXNwUHJlc2VudGF0aW9uIC5lcmdvLWFkaG9wX19oZWFkbGluZSB7XG4gIG1hcmdpbi1ib3R0b206IDM1cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZXJnby1hZGhvcF9fdXNwUHJlc2VudGF0aW9uIC5lcmdvLWFkaG9wX19oZWFkbGluZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgfVxufVxuLmVyZ28tYWRob3BfX3VzcFByZXNlbnRhdGlvbiAuZXJnby1hZGhvcF9fdXNwUHJlc2VudGF0aW9uX19wcm9wb3NpdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHdyYXAgY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDIwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZXJnby1hZGhvcF9fdXNwUHJlc2VudGF0aW9uIC5lcmdvLWFkaG9wX191c3BQcmVzZW50YXRpb25fX3Byb3Bvc2l0aW9ucyB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC1mbG93OiB3cmFwIHJvdztcbiAgICBnYXA6IDI0cHg7XG4gIH1cbn1cbi5lcmdvLWFkaG9wX191c3BQcmVzZW50YXRpb24gLmVyZ28tYWRob3BfX3VzcFByZXNlbnRhdGlvbl9fY3RhIC5lcmdvLWFkaG9wX19idXR0b24ge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKmRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cblxuIyMgU291cmNlXG4tLS1cblxuXG4qL1xuLypkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBGb250XG5uYW1lOiBmb250XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuVXNlIHRoaXMgbWl4aW5nIHRvIGFkZCBmb250cy5cblxuRG9jdW1lbnRhdGlvbjpcblxuLSBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Gb250K21hbmFnZW1lbnQrd2l0aCtTQ1NTXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRmb250LXR5cGVcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2l0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG46cm9vdCB7XG4gIC0tdGhlbWUtYmxhY2s6ICMwMDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5OiAjMzMzO1xuICAtLXRoZW1lLXByaW1hcnk6ICM4ZTAwMzg7XG4gIC0tdGhlbWUtcHJpbWFyeS1saWdodDogI2ZiZjRmNDtcbiAgLS10aGVtZS13aGl0ZTogI2ZmZjtcbiAgLS10aGVtZS1ibGFjay1yZ2I6IDAsIDAsIDA7XG4gIC0tdGhlbWUtZGFya2VzdC1ncmF5LXJnYjogNTEsIDUxLCA1MTtcbiAgLS10aGVtZS1wcmltYXJ5LXJnYjogMTQyLCAwLCA1NjtcbiAgLS10aGVtZS13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7XG59XG5cbi5hZW0tR3JpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkOjpiZWZvcmUsXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuXG4uYWVtLUdyaWQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5hZW0tR3JpZENvbHVtbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWVtLUdyaWQtLTEyLFxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMiB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xufVxuXG4uYWVtLUdyaWQuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMixcbi5hZW0tR3JpZC5hZW0tR3JpZC0tZGVmYXVsdC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTEyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqIE5hdmlnYXRpb24gcGFkZGluZyB0b3AgYW5kIGJvdHRvbSAqL1xuLyoqIFNlYXJjaGJveCBzdWdnZXN0aW9ucyBvZmZzZXQgKi9cbi8qKiBIZWFkZXIgbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggbWFyZ2luLWJvdHRvbS4gKi9cbi8qKiBTZWFyY2hib3ggaGVpZ2h0LiAqL1xuLyoqIFNlYXJjaGJveCBtYXJnaW4gbGVmdCBhbmQgcmlnaHQgKiovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5oaWRkZW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTExcHgpIHtcbiAgLmhpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4tbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmhpZGRlbi1taW4teGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLW1pbi1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5lcmdvLWFkaG9wX191c3BQcm9wb3NpdGlvbiB7XG4gIG1heC13aWR0aDogMjcycHg7XG59XG4uZXJnby1hZGhvcF9fdXNwUHJvcG9zaXRpb24gLmVyZ28tYWRob3BfX3VzcFByb3Bvc2l0aW9uX19pbWFnZSB7XG4gIG1hcmdpbjogMCAwIDIwcHg7XG4gIGhlaWdodDogMjEycHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmVyZ28tYWRob3BfX3VzcFByb3Bvc2l0aW9uIC5lcmdvLWFkaG9wX191c3BQcm9wb3NpdGlvbl9faW1hZ2UgaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbi5lcmdvLWFkaG9wX191c3BQcm9wb3NpdGlvbiAuZXJnby1hZGhvcF9fdXNwUHJvcG9zaXRpb25fX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMjdweDtcbiAgbWFyZ2luOiAwIDAgMjBweDtcbn1cbi5lcmdvLWFkaG9wX191c3BQcm9wb3NpdGlvbiAuZXJnby1hZGhvcF9fdXNwUHJvcG9zaXRpb25fX3RpdGxlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmVyZ28tYWRob3BfX3VzcFByb3Bvc2l0aW9uIC5lcmdvLWFkaG9wX191c3BQcm9wb3NpdGlvbl9fZGVzY3JpcHRpb24ge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICBtYXJnaW46IDA7XG59XG5cbmJvZHkuYm9keS1zY3JvbGwtbG9ja2VkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICBib2R5LmJvZHktc2Nyb2xsLWxvY2tlZCB7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgfVxufVxuXG4ueGYtd2ViLWNvbnRhaW5lciAudGV4dFtjbGFzcyo9YmctXSxcbi5leHBlcmllbmNlRnJhZ21lbnQgLnRleHRbY2xhc3MqPWJnLV0ge1xuICAtby1ib3JkZXItaW1hZ2U6IGNvbmljLWdyYWRpZW50KHZhcigtLWJhY2tncm91bmQtY29sb3IpIDAgMCkgMC8wLzAgMTAwdnc7XG4gIGJvcmRlci1pbWFnZTogY29uaWMtZ3JhZGllbnQodmFyKC0tYmFja2dyb3VuZC1jb2xvcikgMCAwKSBmaWxsIDAvMC8wIDEwMHZ3O1xufVxuYm9keS5ka3YgLnhmLXdlYi1jb250YWluZXIgLnRleHRbY2xhc3MqPWJnLV0sXG5ib2R5LmRrdiAuZXhwZXJpZW5jZUZyYWdtZW50IC50ZXh0W2NsYXNzKj1iZy1dIHtcbiAgYm9yZGVyLWltYWdlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5ib2R5LmRrdiAueGYtd2ViLWNvbnRhaW5lciAudGV4dFtjbGFzcyo9YmctXTpiZWZvcmUsXG5ib2R5LmRrdiAuZXhwZXJpZW5jZUZyYWdtZW50IC50ZXh0W2NsYXNzKj1iZy1dOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgYm90dG9tOiAwO1xuICBib3gtc2hhZG93OiAxMHZ3IDAgMCAwIGN1cnJlbnRDb2xvcjtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSAtIDUwdncpO1xuICBtYXgtd2lkdGg6IDkwdnc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogOTB2dztcbiAgei1pbmRleDogLTE7XG59XG5cbi5jbXAtY2Fyb3VzZWxfX2NvbnRhaW5lciAuZXhwZXJpZW5jZWZyYWdtZW50ID4gZGl2ID4gLmFlbS1HcmlkLmFlbS1HcmlkLS0xMi5hZW0tR3JpZC0tZGVmYXVsdC0tMTIge1xuICBkaXNwbGF5OiBjb250ZW50cztcbn1cblxuLmV4cGVyaWVuY2VmcmFnbWVudCAuYWVtLUdyaWQsXG4uZXhwZXJpZW5jZWZyYWdtZW50IC5hZW0tR3JpZENvbHVtbiB7XG4gIGJvcmRlci13aWR0aDogMDtcbn1cbi5leHBlcmllbmNlZnJhZ21lbnQgLmhlcm8uYWVtLUdyaWRDb2x1bW46YmVmb3JlLCAuZXhwZXJpZW5jZWZyYWdtZW50IC5oZXJvLmFlbS1HcmlkQ29sdW1uOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnhmLXdlYi1jb250YWluZXIgPiAuY29udGFpbmVyID4gLnJlc3BvbnNpdmVncmlkID4gLmFlbS1HcmlkLFxuLmVyZ28tYWRob3BfX2h0bWwgPiAuYWVtLUdyaWQge1xuICBkaXNwbGF5OiBjb250ZW50cztcbn1cbi54Zi13ZWItY29udGFpbmVyID4gLmNvbnRhaW5lciA+IC5yZXNwb25zaXZlZ3JpZCAuYWVtLUdyaWRDb2x1bW4sXG4uZXJnby1hZGhvcF9faHRtbCAuYWVtLUdyaWRDb2x1bW4ge1xuICBib3JkZXItd2lkdGg6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmNvbHVtbkNvbnRyb2wgLmV4cGVyaWVuY2VmcmFnbWVudCBbY2xhc3MqPWJnLV0ge1xuICBib3JkZXItaW1hZ2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtY29sb3IpO1xufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1hZGhvcC5idW5kbGUuY3NzLm1hcCAqLyJdfQ== */