@import url(https://use.typekit.net/oqv1vzg.css);
@import url(https://use.typekit.net/oqv1vzg.css);
@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-1rem)}}#map{min-height:35vh;height:100%}.project-button-top{position:absolute;top:30px}.sold-banner{position:absolute;top:0;left:0;right:0;background:#e1251c;padding:.5rem 2rem;text-align:center;display:flex;align-items:center;justify-content:center}.sold-banner span{color:#fff;max-width:70%}.project-units{text-align:center}.project-units .subtitle{margin:2rem 0}.project-units .subtitle h2,.project-units .subtitle h3,.project-units .subtitle h4{text-transform:uppercase;font-weight:700}.project-units .toggle a{background:#ccc;color:#fff;padding:10px 20px;display:inline-block;font-weight:500;line-height:2.1;cursor:pointer;text-transform:uppercase;transition:all .32s ease-in-out;-ms-transition:all .32s ease-in-out;-o-transition:all .32s ease-in-out;-moz-transition:all .32s ease-in-out;-webkit-transition:all .32s ease-in-out;width:250px;text-align:center;letter-spacing:.54px;margin-bottom:20px;text-decoration:none}.project-units .toggle a.active,.project-units .toggle a:hover{background:#3f3f3d}.project-units .paragraph{margin:5rem 0}.project-units .tagging-wrapper{margin:5rem 0;display:none}.project-units .tagging-wrapper.custom-svg-tagging .tags-wrapper .tags{height:0}.project-units .tagging-wrapper.custom-svg-tagging .tags-wrapper .tags .tag{opacity:0;z-index:-1}.project-units .tagging-wrapper.custom-svg-tagging .tags-wrapper .tags .tag.active{opacity:1;z-index:1}.project-units .tagging-wrapper.custom-svg-tagging .tags-wrapper .tags .tag .tag-content{display:block}.project-units .tagging-wrapper svg .hover,.project-units .tagging-wrapper svg .tag{opacity:0}.project-units .tagging-wrapper svg .hover{opacity:.2;fill:#7d7;mix-blend-mode:multiply;transition:all .5s cubic-bezier(.39,.575,.565,1);cursor:pointer}.project-units .tagging-wrapper svg .hover.sold{fill:#e1251c;cursor:no-drop}.project-units .tagging-wrapper svg .hover.inoption{fill:#ffb733}.project-units .tagging-wrapper svg .hover.available{fill:#7d7}.project-units .tagging-wrapper svg .hover:hover{opacity:.8}.project-units .tagging-wrapper .picture-tagging,.project-units .tagging-wrapper .svg-tagging{position:relative;max-width:90%;width:1400px;margin:0 auto}.project-units .tagging-wrapper .tags-wrapper{position:relative;text-align:center;height:100%;width:100%}.project-units .tagging-wrapper .tags-wrapper .custom-tagging-svg{position:relative;width:100%}.project-units .tagging-wrapper .tags-wrapper .tags{position:absolute;top:0;left:0;width:100%;height:100%}.project-units .tagging-wrapper .tags-wrapper .tags .tag{position:absolute}.project-units .tagging-wrapper .tags-wrapper .tags .tag.with-description .tag-content{width:450px}.project-units .tagging-wrapper .tags-wrapper .tags .tag:hover .tag-content{display:block}.project-units .tagging-wrapper .tags-wrapper .tags .tag.sold{cursor:default}.project-units .tagging-wrapper .tags-wrapper .tags .tag.sold .tag-content{background:#e1251c}.project-units .tagging-wrapper .tags-wrapper .tags .tag.sold .tag-content:after{border-top-color:#e1251c}.project-units .tagging-wrapper .tags-wrapper .tags .tag:before{display:none}.project-units .tagging-wrapper .tags-wrapper .tags .tag .tag-icon{width:3rem;height:3rem}.project-units .tagging-wrapper .tags-wrapper .tags .tag .tag-icon img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:center center;object-position:center center}.project-units .tagging-wrapper .tags-wrapper .tags .tag .tag-content{display:none;position:absolute;left:50%;transform:translate(-50%);bottom:calc(100% + 30px);width:250px;padding:1.5rem;text-align:center;background:#e1251c}.project-units .tagging-wrapper .tags-wrapper .tags .tag .tag-content:after{content:"";width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px solid #e1251c;position:absolute;top:100%;left:50%;transform:translateX(-50%)}.project-units .tagging-wrapper .tags-wrapper .tags .tag .tag-content h3{color:#0f2a74;font-weight:700;margin:0 0 1rem;text-align:center}.project-units .tagging-wrapper .tags-wrapper .tags .tag .tag-content p{font-weight:300;color:#fff}.project-units .tagging-wrapper .tags-wrapper .tags .tag .tag-content .description{margin-bottom:1.5rem}.project-units .tagging-wrapper .tags-wrapper .tags .tag .tag-content .description p{font-size:.98rem}.project-units .tagging-wrapper .tags-wrapper .tags .tag .tag-content .description p br{line-height:1}.project-units .tagging-wrapper .tags-wrapper .tags .tag .tag-content .btn{background:#fff;color:#e1251c;padding:.5rem 1rem;font-size:.98rem}.project-units .tagging-wrapper .tags-wrapper .tags .tag .tag-content .btn:hover{color:#fff;background:#000}.project-units .unit-list{text-align:left}.project-units .unit-list table{width:100%}.project-units .unit-list table tr{border-bottom:1px solid #dfe3e6}.project-units .unit-list table td,.project-units .unit-list table th{text-align:left!important}.project-units .unit-list table td img,.project-units .unit-list table th img{display:inline-block;width:1.5em;height:1.5em;-o-object-fit:contain;object-fit:contain;-o-object-position:center center;object-position:center center}.project-units .unit-list table td span,.project-units .unit-list table th span{display:inline-block;padding:.5em 1em;border-radius:2em;text-transform:uppercase;background:#dfe3e6}.project-units .unit-list table td span.sold,.project-units .unit-list table th span.sold{color:#fff;font-weight:700;background:#0f2a74}.project-units .unit-list table a{color:#0f2a74}@media only screen and (max-width:768px){.project-units .tagging-wrapper,.project-units .unit-list table td:nth-child(4),.project-units .unit-list table td:nth-child(5),.project-units .unit-list table td:nth-child(6),.project-units .unit-list table th:nth-child(4),.project-units .unit-list table th:nth-child(5),.project-units .unit-list table th:nth-child(6){display:none}}@media only screen and (max-width:576px){.project-units .unit-list{overflow-x:auto}.project-units .unit-list table td,.project-units .unit-list table th{white-space:nowrap}.project-units .unit-list table td:nth-child(2),.project-units .unit-list table td:nth-child(3),.project-units .unit-list table td:nth-child(4),.project-units .unit-list table th:nth-child(2),.project-units .unit-list table th:nth-child(3),.project-units .unit-list table th:nth-child(4){display:none}}.fasering h2{margin-bottom:1.5rem}.fasering h2,.fasering p{text-align:left}.fasering .grid{grid-gap:3rem;gap:3rem;margin-top:1.5rem}.fasering .grid .item{aspect-ratio:1/1}.fasering .grid .item .image{height:100%}.fasering .grid .item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center center;object-position:center center}.brochure-text-video-outer .text-video-wrapper.fullscreen,.node--type-project .text-video-outer .text-video-wrapper.fullscreen{display:block}.brochure-text-video-outer .text-video-wrapper.fullscreen .left-section,.brochure-text-video-outer .text-video-wrapper.fullscreen .right-section,.node--type-project .text-video-outer .text-video-wrapper.fullscreen .left-section,.node--type-project .text-video-outer .text-video-wrapper.fullscreen .right-section{width:100%;padding:0}.brochure-text-video-outer .text-video-wrapper.fullscreen .left-section,.node--type-project .text-video-outer .text-video-wrapper.fullscreen .left-section{margin-bottom:3rem}.project-price a{color:#e1251c}.availability{overflow-x:scroll}.availability table td,.availability table th{min-width:120px;overflow:hidden}.availability table td:first-child,.availability table th:first-child{min-width:250px}.availability table td .price-btn,.availability table th .price-btn{display:inline-block;white-space:nowrap;background:#e1251c;color:#fff;transition:all .3s;padding:.25rem 1rem;border:1px solid #e1251c}.availability table td .price-btn:hover,.availability table th .price-btn:hover{background:transparent;color:#090d33}.availability table td .price-btn:hover svg path,.availability table th .price-btn:hover svg path{fill:#090d33}.availability table td .price-btn svg,.availability table th .price-btn svg{width:1rem;height:1rem;display:inline-block;vertical-align:middle;margin-right:5px;margin-top:-4px}.availability table td .price-btn svg path,.availability table th .price-btn svg path{fill:#fff;transition:all .3s}.availability table td .price-btn span,.availability table th .price-btn span{font-size:12px;text-transform:uppercase}
@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-1rem)}}#map{position:absolute;top:0;left:0;width:100%;height:100%;min-height:35vh}#map .leaflet-pane{z-index:0}#map .leaflet-pane.leaflet-tile-pane{filter:grayscale(1)}#map .leaflet-bottom,#map .leaflet-top{z-index:1}.estate-location{padding-top:3rem;padding-bottom:3rem}.estate-location .container.grid{grid-template-columns:auto 30rem;grid-gap:5rem;gap:5rem;align-items:center}.estate-location .start{border-radius:1rem;overflow:hidden}.estate-location .start:after{content:"";display:block;padding-bottom:60%}@supports (aspect-ratio:1){.estate-location .start{width:100%;aspect-ratio:1/.6}.estate-location .start:after{display:none}}.estate-location .end .title{margin:2rem 0;text-transform:uppercase}.estate-location .end .title h2,.estate-location .end .title h3,.estate-location .end .title h4{font-weight:700}@media only screen and (max-width:768px){.estate-location{text-align:center}.estate-location .container.grid{grid-template-columns:1fr}.estate-location .start{order:2}.estate-location .start:after{content:"";display:block;padding-bottom:80%}@supports (aspect-ratio:1){.estate-location .start{width:100%;aspect-ratio:1/.8}.estate-location .start:after{display:none}}.estate-location .end{order:1}}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vdG9vbHMvX21peGlucy5zY3NzIiwid2VicGFjazovLy9wcm9qZWN0LWRldGFpbC5zY3NzIiwid2VicGFjazovLy8uLi90b29scy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vL2VzdGF0ZS1tYXAuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQTJOQSxrQkFDSSxHQTVGQSx1QkNuSEYsQ0RtTkUsR0FoR0EsMkJDNUdGLENBQ0YsQ0FsQkEsS0FDSSxnQkFDQSxXQXVCSixDQXBCQSxvQkFDSSxrQkFDQSxRQXVCSixDQXBCQSxhQUNJLGtCQUNBLE1BQ0EsT0FDQSxRQUNBLGtCQ0pNLENES04sbUJBQ0Esa0JBQ0EsYUFDQSxtQkFDQSxzQkF1QkosQ0F0Qkksa0JBQ0ksVUN2QkEsQ0R3QkEsYUF3QlIsQ0FwQkEsZUFDSSxpQkF1QkosQ0FyQkkseUJBQ0ksYUF1QlIsQ0FyQlEsb0ZBQ0kseUJBQ0EsZUF1QlosQ0FsQlEseUJBQ0ksZ0JBQ0EsVUMzQ0osQ0Q0Q0ksa0JBQ0EscUJBQ0EsZ0JBQ0EsZ0JBQ0EsZUFDQSx5QkFDQSxnQ0FDQSxvQ0FDQSxtQ0FDQSxxQ0FDQSx3Q0FDQSxZQUNBLGtCQUNBLHFCQUNBLG1CQUNBLG9CQW9CWixDQW5CWSwrREFDSSxrQkFxQmhCLENBakJJLDBCQUNJLGFBbUJSLENBaEJJLGdDQUNJLGNBQ0EsWUFrQlIsQ0FmWSx1RUFDSSxRQWlCaEIsQ0FmZ0IsNEVBQ0ksVUFDQSxVQWlCcEIsQ0FoQm9CLG1GQUNJLFVBQ0EsU0FrQnhCLENBZm9CLHlGQUNJLGFBaUJ4QixDQU5ZLG9GQUVJLFNBUWhCLENBTFksMkNBQ0ksV0FDQSxTQzNGUixDRDRGUSx3QkQ3RlosZ0RDOEZZLENBQ0EsY0FXaEIsQ0FWZ0IsZ0RBQ0ksWUNqR1YsQ0RrR1UsY0FZcEIsQ0FWZ0Isb0RBQ0ksWUFZcEIsQ0FWZ0IscURBQ0ksU0FZcEIsQ0FWZ0IsaURBQ0ksVUFZcEIsQ0FOUSw4RkFFSSxrQkFFQSxjQUNBLGFBQ0EsYUFP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TnRCLFFHNU5zQixDQUNsQixrQkE2QlIsQ0ExQkksd0JBRUksbUJBQ0EsZUEyQlIsQ0hRRSw4QkFDRSxXQUNBLGNBQ0Esa0JHTkosQ0hRRSwyQkczQ0Usd0JIK0NBLFdBQ0EsaUJHUkYsQ0hJRSw4QkFDRSxZR0ZKLENBQ0YsQ0FwQ1EsNkJBQ0ksY0FDQSx3QkFzQ1osQ0FwQ1ksZ0dBQ0ksZUFzQ2hCLENINllJLHlDRzFjSixpQkErQlEsaUJBa0NOLENBaENNLGlDSGlOSix5Qkc3S0YsQ0FoQ00sd0JBQ0ksT0FrQ1YsQ0hUQSw4QkFDRSxXQUNBLGNBQ0Esa0JHV0YsQ0hUQSwyQkcvQk0sd0JIbUNKLFdBQ0EsaUJHU0EsQ0hiQSw4QkFDRSxZR2VGLENBQ0YsQ0E1Q00sc0JBQ0ksT0E4Q1YsQ0FDRixDIiwiZmlsZSI6InByb2plY3QtZGV0YWlsLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIFRSQU5TSVRJT05TICovXG5cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbikge1xuICAgIC1tb3otdHJhbnNpdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgIC1vLXRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uKCRhcmdzLi4uKSB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkYXJncztcbiAgICAtbW96LXRyYW5zaXRpb246ICRhcmdzO1xuICAgIC1tcy10cmFuc2l0aW9uOiAkYXJncztcbiAgICAtby10cmFuc2l0aW9uOiAkYXJncztcbiAgICB0cmFuc2l0aW9uOiAkYXJncztcbn1cblxuLy9tYWtlIHNxdWFyZXMgYW5kIGJhcnNcbkBtaXhpbiBzcXVhcmUoKSB7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG4gIEBzdXBwb3J0cyhhc3BlY3QtcmF0aW86IDEpIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gIH1cbn1cblxuQG1peGluIGxvYmFyKCkge1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWJvdHRvbTogNDAlO1xuICB9XG4gIEBzdXBwb3J0cyhhc3BlY3QtcmF0aW86IDEpIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGFzcGVjdC1yYXRpbzogMSAvIDAuNDtcbiAgfVxufVxuXG5AbWl4aW4gYmFyKCkge1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWJvdHRvbTogNTAlO1xuICB9XG4gIEBzdXBwb3J0cyhhc3BlY3QtcmF0aW86IDEpIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGFzcGVjdC1yYXRpbzogMSAvIDAuNTtcbiAgfVxufVxuXG5AbWl4aW4gbWRiYXIoKSB7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctYm90dG9tOiA2MCU7XG4gIH1cbiAgQHN1cHBvcnRzKGFzcGVjdC1yYXRpbzogMSkge1xuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYXNwZWN0LXJhdGlvOiAxIC8gMC42O1xuICB9XG59XG5cbkBtaXhpbiBoaWJhcigpIHtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1ib3R0b206IDgwJTtcbiAgfVxuICBAc3VwcG9ydHMoYXNwZWN0LXJhdGlvOiAxKSB7XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICB3aWR0aDogMTAwJTtcbiAgICBhc3BlY3QtcmF0aW86IDEgLyAwLjg7XG4gIH1cbn1cblxuQG1peGluIHBvcnRyYWl0KCkge1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwJTtcbiAgfVxuICBAc3VwcG9ydHMoYXNwZWN0LXJhdGlvOiAxKSB7XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICB3aWR0aDogMTAwJTtcbiAgICBhc3BlY3QtcmF0aW86IDEgLyAxLjI7XG4gIH1cbn1cblxuLyogRklMVEVSICovXG5cbi8vZmlsdGVyXG5AbWl4aW4gZmlsdGVyKCRhcmdzLi4uKSB7XG4gICAgLXdlYmtpdC1maWx0ZXI6ICRhcmdzO1xuICAgIC1tb3otZmlsdGVyOiAkYXJncztcbiAgICAtbXMtZmlsdGVyOiAkYXJncztcbiAgICAtby1maWx0ZXI6ICRhcmdzO1xuICAgIGZpbHRlcjogJGFyZ3M7XG59XG5cbi8qIFRSQU5TRk9STVMgKi9cblxuLy8gZ2VuZXJpYyB0cmFuc2Zvcm1cbkBtaXhpbiB0cmFuc2Zvcm0oJHRyYW5zZm9ybXMpIHtcbiAgICAtbW96LXRyYW5zZm9ybTogJHRyYW5zZm9ybXM7XG4gICAgLW8tdHJhbnNmb3JtOiAkdHJhbnNmb3JtcztcbiAgICAtbXMtdHJhbnNmb3JtOiAkdHJhbnNmb3JtcztcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogJHRyYW5zZm9ybXM7XG4gICAgdHJhbnNmb3JtOiAkdHJhbnNmb3Jtcztcbn1cblxuLy8gVHJhbnNsYXRlWVxuQG1peGluIHRyYW5zbGF0ZXkgKCR5KSB7XG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoJHkpKTtcbiB9XG5cbi8vIHJvdGF0ZVxuQG1peGluIHJvdGF0ZSAoJGRlZykge1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoI3skZGVnfWRlZykpO1xufVxuXG4vLyBzY2FsZVxuQG1peGluIHNjYWxlKCRzY2FsZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgkc2NhbGUpKTtcbn1cblxuLy8gdHJhbnNsYXRlXG5AbWl4aW4gdHJhbnNsYXRlICgkeCwgJHkpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKCR4LCAkeSkpO1xufVxuXG4vLyBza2V3XG5AbWl4aW4gc2tldyAoJHgsICR5KSB7XG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNrZXcoI3skeH1kZWcsICN7JHl9ZGVnKSk7XG59XG5cbi8vdHJhbnNmb3JtIG9yaWdpblxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4gKCRvcmlnaW46IGNlbnRlciBjZW50ZXIpIHtcbiAgICBtb3otdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG4vKiBQT1NJVElPTklORyAqL1xuXG5AbWl4aW4gY292ZXIoKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuQG1peGluIHZjKCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKDAsIC01MCUpKTtcbn1cblxuQG1peGluIGhjKCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgtNTAlLCAwKSk7XG59XG5cbkBtaXhpbiBjYygpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoLTUwJSwgLTUwJSkpO1xufVxuXG4vKiBBTklNQVRJT05TICovXG5cbiRyZWd1bGFyRWFzZTogZWFzZTtcbiRlYXNlSW5TaW5lOiBjdWJpYy1iZXppZXIoMC40NywgMCwgMC43NDUsIDAuNzE1KTtcbiRlYXNlT3V0U2luZTogY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSk7XG4kZWFzZUluT3V0U2luZTogY3ViaWMtYmV6aWVyKDAuNDQ1LCAwLjA1LCAwLjU1LCAwLjk1KTtcbiRlYXNlSW5RdWFkOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wODUsIDAuNjgsIDAuNTMpO1xuJGVhc2VPdXRRdWFkOiBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7XG4kZWFzZUluT3V0UXVhZDogY3ViaWMtYmV6aWVyKDAuNDU1LCAwLjAzLCAwLjUxNSwgMC45NTUpO1xuJGVhc2VJbkV4cG86IGN1YmljLWJlemllcigwLjk1LCAwLjA1LCAwLjc5NSwgMC4wMzUpO1xuJGVhc2VPdXRFeHBvOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG4kZWFzZUluT3V0RXhwbzogY3ViaWMtYmV6aWVyKDEsIDAsIDAsIDEpO1xuJGVhc2VJbkJhY2s6IGN1YmljLWJlemllcigwLjYsIC0wLjI4LCAwLjczNSwgMC4wNDUpO1xuJGVhc2VPdXRCYWNrOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSk7XG4kZWFzZUluT3V0QmFjazogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4kZWFzZUluT3V0QmFjazogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG5cbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbikge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgIC1tb3otYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgIC1tcy1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgLW8tYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgIGFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbn1cblxuQGtleWZyYW1lcyBib3VuY2Uge1xuICAgIDAlIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoMCkpXG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC0xcmVtKSlcbiAgICB9XG59XG5cbi8qIEdSSUQgKi9cblxuQG1peGluIGRpc3BsYXktZ3JpZCB7XG4gICAgZGlzcGxheTogLW1zLWdyaWQ7XG4gICAgZGlzcGxheTogZ3JpZDtcbn1cblxuQG1peGluIGRpc3BsYXktaW5saW5lLWdyaWQge1xuICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZ3JpZDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbn1cblxuQG1peGluIGdyaWQtZ2FwKCRnYXA6IDNyZW0pIHtcbiAgICBncmlkLWdhcDogJGdhcDtcbiAgICBnYXA6ICRnYXA7XG59XG5cbkBtaXhpbiBncmlkLXJvdy1nYXAoJGdhcDogM3JlbSkge1xuICAgIGdyaWQtcm93LWdhcDogJGdhcDtcbiAgICByb3ctZ2FwOiAkZ2FwO1xufVxuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ2FwKCRnYXA6IDNyZW0pIHtcbiAgICBncmlkLWNvbHVtbi1nYXA6ICRnYXA7XG4gICAgY29sdW1uLWdhcDogJGdhcDtcbn1cblxuLy8gJGNvbHVtbnMgdmFsdWVzIHNob3VsZCBiZSBkZWxpbWl0ZWQgYnkgYSBzcGFjZVxuQG1peGluIGdyaWQtdGVtcGxhdGUtY29sdW1ucygkY29sdW1ucy4uLikge1xuICAgIC1tcy1ncmlkLWNvbHVtbnM6ICRjb2x1bW5zO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogJGNvbHVtbnM7XG59XG5cbi8vICRyb3dzIHZhbHVlcyBzaG91bGQgYmUgZGVsaW1pdGVkIGJ5IGEgc3BhY2VcbkBtaXhpbiBncmlkLXRlbXBsYXRlLXJvd3MoJHJvd3MuLi4pIHtcbiAgICAtbXMtZ3JpZC1yb3dzOiAkcm93cztcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6ICRyb3dzO1xufVxuXG4vLyBDYW4gYmUgdXNlZCBpbiBjb21iaW5hdGlvbiB3aXRoIGFib3ZlIGdyaWQtdGVtcGxhdGUtWCBtaXhpbnMuXG4vLyBUaGVzZSByZXN1bHQgaW4gdGhlIHNhbWUgb3V0cHV0OlxuLy8gQGluY2x1ZGUgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zKDEwcHggZ3JpZC1yZXBlYXQoNCwgMjBweCkgMzBweCk7XG4vLyBAaW5jbHVkZSBncmlkLXRlbXBsYXRlLWNvbHVtbnMoMTBweCAyMHB4IDIwcHggMjBweCAyMHB4IDMwcHgpO1xuQGZ1bmN0aW9uIGdyaWQtcmVwZWF0KCRyZXBlYXQsICRzdHVmZjogbWlubWF4KDAsIDFmcikpIHtcbiAgICAkbGlzdDogKCk7XG5cbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRyZXBlYXQge1xuICAgICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkc3R1ZmYsIHNwYWNlKTtcbiAgICB9XG5cbiAgICBAcmV0dXJuICRsaXN0O1xufVxuXG5AbWl4aW4gZ3JpZC1jb2x1bW4oJGNvbC1zdGFydCwgJGNvbC1lbmQpIHtcbiAgICAtbXMtZ3JpZC1jb2x1bW46ICRjb2wtc3RhcnQ7XG4gICAgLW1zLWdyaWQtY29sdW1uLXNwYW46ICRjb2wtZW5kIC0gJGNvbC1zdGFydDtcbiAgICBncmlkLWNvbHVtbjogI3skY29sLXN0YXJ0fSAvICN7JGNvbC1lbmR9O1xufVxuXG5AbWl4aW4gZ3JpZC1yb3coJHJvdy1zdGFydCwgJHJvdy1lbmQpIHtcbiAgICAtbXMtZ3JpZC1yb3c6ICRyb3ctc3RhcnQ7XG4gICAgLW1zLWdyaWQtcm93LXNwYW46ICRyb3ctZW5kIC0gJHJvdy1zdGFydDtcbiAgICBncmlkLXJvdzogI3skcm93LXN0YXJ0fSAvICN7JHJvdy1lbmR9O1xufVxuXG5AbWl4aW4gZ3JpZC1hbGlnbi1zZWxmKCR2YWx1ZSkge1xuICAgIC1tcy1ncmlkLXJvdy1hbGlnbjogJHZhbHVlO1xuICAgIGFsaWduLXNlbGY6ICR2YWx1ZTtcbn1cblxuQG1peGluIGdyaWQtanVzdGlmeS1zZWxmKCR2YWx1ZSkge1xuICAgIC1tcy1ncmlkLWNvbHVtbi1hbGlnbjogJHZhbHVlO1xuICAgIGp1c3RpZnktc2VsZjogJHZhbHVlO1xufVxuXG4vKiBDT0xVTU5TICovXG5cbkBtaXhpbiBjb2x1bW5zKCRjb2x1bW5Db3VudDogMywgJGNvbHVtbldpZHRoOiAyMDBweCwgJGNvbHVtbkdhcDogMCwgJGNvbHVtblJ1bGU6IGZhbHNlKSB7XG4gICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6ICRjb2x1bW5Db3VudDtcbiAgICAtbW96LWNvbHVtbi1jb3VudDogJGNvbHVtbkNvdW50O1xuICAgIGNvbHVtbi1jb3VudDogJGNvbHVtbkNvdW50O1xuICAgIC13ZWJraXQtY29sdW1uLXdpZHRoOiAkY29sdW1uV2lkdGg7XG4gICAgLW1vei1jb2x1bW4td2lkdGg6ICRjb2x1bW5XaWR0aDtcbiAgICBjb2x1bW4td2lkdGg6ICRjb2x1bW5XaWR0aDtcbiAgICAtd2Via2l0LWNvbHVtbi1nYXA6ICRjb2x1bW5HYXA7XG4gICAgLW1vei1jb2x1bW4tZ2FwOiAkY29sdW1uR2FwO1xuICAgIGNvbHVtbi1nYXA6ICRjb2x1bW5HYXA7XG5cbiAgICBAaWYgJGNvbHVtblJ1bGUgIT1mYWxzZSB7XG4gICAgICAgICRjb2x1bW5SdWxlLWNvb3JkczogJGNvbHVtblJ1bGU7XG4gICAgICAgICR3aWR0aDogbnRoKCRjb2x1bW5SdWxlLWNvb3JkcywgMSk7XG4gICAgICAgICRzdHlsZTogbnRoKCRjb2x1bW5SdWxlLWNvb3JkcywgMik7XG4gICAgICAgICRjb2xvcjogbnRoKCRjb2x1bW5SdWxlLWNvb3JkcywgMyk7XG4gICAgICAgIC13ZWJraXQtY29sdW1uLXJ1bGU6ICR3aWR0aCAkc3R5bGUgJGNvbG9yO1xuICAgICAgICAtbW96LWNvbHVtbi1ydWxlOiAkd2lkdGggJHN0eWxlICRjb2xvcjtcbiAgICAgICAgY29sdW1uLXJ1bGU6ICR3aWR0aCAkc3R5bGUgJGNvbG9yO1xuICAgIH1cbn1cblxuQG1peGluIGJyZWFrLWluc2lkZSgkYnJlYWs6IGF2b2lkKSB7XG4gICAgLXdlYmtpdC1icmVhay1pbnNpZGU6ICRicmVhaztcbiAgICAtbW96LWJyZWFrLWluc2lkZTogJGJyZWFrO1xuICAgIGJyZWFrLWluc2lkZTogJGJyZWFrO1xufVxuXG4vKiBPQkpFQ1QtRklUICovXG5cbi8vIE9iamVjdC1maXRcblxuQG1peGluIG9iamVjdC1maXQoJHBfc2l6ZTogY29udGFpbiwgJHBfcG9zOiBjZW50ZXIgY2VudGVyKSB7XG4gICAgLW8tb2JqZWN0LWZpdDogJHBfc2l6ZTtcbiAgICBvYmplY3QtZml0OiAkcF9zaXplO1xuICAgIC1vLW9iamVjdC1wb3NpdGlvbjogJHBfcG9zO1xuICAgIG9iamVjdC1wb3NpdGlvbjogJHBfcG9zO1xufVxuXG5AbWl4aW4gYmctY29udGFpbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoKTtcbn1cblxuQG1peGluIGJnLWNvdmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb3Zlcik7XG59XG5cbkBtaXhpbiBiZy1maWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgQGluY2x1ZGUgb2JqZWN0LWZpdChmaWxsKTtcbn1cblxuLy9tYWtlIHNxdWFyZXMgYW5kIGJhcnNcblxuQG1peGluIGFzcGVjdC1yYXRpbygkdzogMSwgJGg6IDEpIHtcbiAgICBhc3BlY3QtcmF0aW86ICN7JHd9IC8gI3skaH07XG59XG5cbkBtaXhpbiBiYXIoJHNpemU6IDAuNSkge1xuICAgIGFzcGVjdC1yYXRpbzogMSAvICN7JHNpemV9O1xufVxuXG5AbWl4aW4gc3F1YXJlKCkge1xuICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG59XG5cbkBtaXhpbiBwb3J0cmFpdCgkc2l6ZTogMS41KSB7XG4gICAgYXNwZWN0LXJhdGlvOiAxIC8gI3skc2l6ZX07XG59XG5cbi8vYWRkIHJhbmRvbSBib3JkZXIgdG8gYW4gZWxlbWVudCB0byBmaW5kIGl0IGVhc2lseVxuQG1peGluIGRldiB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiKHJhbmRvbSgyNTUpLCByYW5kb20oMjU1KSwgcmFuZG9tKDI1NSkpO1xufVxuXG4vLyBTY3JvbGxiYXJzXG5AbWl4aW4gc2Nyb2xsYmFycygkc2l6ZTogMTBweCwgJGJvcmRlcjogMCwgJGJvcmRlci1yYWRpdXM6IDAsICRmb3JlZ3JvdW5kLWNvbG9yOiBibGFjaywgJGJhY2tncm91bmQtY29sb3I6IGdyZXkpIHtcbiAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICB9XG5cbiAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGZvcmVncm91bmQtY29sb3I7XG4gICAgICAgIGJvcmRlcjogJGJvcmRlciBzb2xpZCBsaWdodGVuKCRmb3JlZ3JvdW5kLWNvbG9yLCAxMCUpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgd2lkdGg6IGNhbGMoI3skc2l6ZX0gKiAyKTtcbiAgICAgICAgYm9yZGVyOiAoJGJvcmRlciAqIDIpIHNvbGlkIGxpZ2h0ZW4oJGJhY2tncm91bmQtY29sb3IsIDEwJSk7XG4gICAgfVxuXG4gICAgOjotd2Via2l0LXNjcm9sbGJhci10cmFjay1waWVjZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICB3aWR0aDogY2FsYygjeyRzaXplfSAvIDIpO1xuICAgICAgICBib3JkZXI6ICgkYm9yZGVyICogMikgc29saWQgbGlnaHRlbigkYmFja2dyb3VuZC1jb2xvciwgMTAlKTtcbiAgICB9XG5cbiAgICBib2R5IHtcbiAgICAgICAgc2Nyb2xsYmFyLWZhY2UtY29sb3I6ICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgICAgICBzY3JvbGxiYXItdHJhY2stY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIH1cbn1cblxuLy8gRm9yY2UgR1BVIGFjY2VsZXJhdGlvblxuQG1peGluIGdwdS1hY2NlbCgpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlM2QoMCwgMCwgMCkpO1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuQG1peGluIHBsYWNlaG9sZGVyKCRjb2xvcjogZ3JleSwgJGZvbnQtc3R5bGU6IG5vcm1hbCkge1xuICAgIFxuICAgIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGZvbnQtc3R5bGU6ICRmb250LXN0eWxlO1xuICAgIH1cblxuICAgIDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGZvbnQtc3R5bGU6ICRmb250LXN0eWxlO1xuICAgIH1cblxuICAgIDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBmb250LXN0eWxlOiAkZm9udC1zdHlsZTtcbiAgICB9XG5cbiAgICA6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGZvbnQtc3R5bGU6ICRmb250LXN0eWxlO1xuICAgIH1cblxufVxuXG5cbi8vIE1RIHRyaWdnZXJzXG5cbkBtaXhpbiBleHRyYWxhcmdlIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR4bExpbWl0KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIGxhcmdlIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ0xpbWl0KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIG5vcm1hbCB7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRMaW1pdCkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBzbWFsbCB7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21MaW1pdCkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBleHRyYXNtYWxsIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c0xpbWl0KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIG5vaG92ZXIge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKGhvdmVyOiBub25lKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuLy8gRm9udFxuQG1peGluIGZvbnQtdmFyaWF0aW9uKCR3ZWlnaHQ6IDMwMCwgJHdpZHRoOiAxMTAsICRpdGFsOiBub3JtYWwpIHtcbiAgICBmb250LXdlaWdodDogJHdlaWdodDtcbiAgICBmb250LXN0cmV0Y2g6ICR3aWR0aDtcbiAgICBmb250LXN0eWxlOiAkaXRhbDtcbiAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnICR3ZWlnaHQsICd3ZHRoJyAkd2lkdGg7XG59XG5cbi8vIE9STkFNRU5UQUxcblxuQG1peGluIHNoYWRvdygpIHtcbiAgICBAaW5jbHVkZSBmaWx0ZXIoZHJvcC1zaGFkb3csIDAgMCAzcHggcmdiYSgkYmxhY2ssIDAuNSkpO1xufVxuXG5AbWl4aW4gdHJpYW5nbGUtdG9wKCRjb2xvcjogJHdoaXRlKSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgQGluY2x1ZGUgaGM7XG4gICAgICAgIHdpZHRoOiAxcmVtO1xuICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICAgIHRvcDogLTAuNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWCgtNTAlKSByb3RhdGUoNDVkZWcpKTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgfVxufVxuXG4kbWFwLWZvci1icmVha3BvaW50czogKFxuICBcInhzbWFsbFwiOiAwLFxuICBcInNtYWxsXCI6IDU3NnB4LFxuICBcIm1lZGl1bVwiOiA3NjhweCxcbiAgXCJsYXJnZVwiOiA5OTJweCxcbiAgXCJ4bGFyZ2VcIjogMTIwMHB4LFxuKSAhZGVmYXVsdDtcblxuQG1peGluIGJyZWFrcG9pbnQoJHBhcmFtcy4uLikge1xuICBAaWYgbGVuZ3RoKCRwYXJhbXMpID09IDEge1xuICAgICR2YWx1ZTogbnRoKCRwYXJhbXMsIDEpO1xuICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLWZvci1icmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgICBAbWVkaWEgKHdpZHRoOiBtYXAtZ2V0KCRtYXAtZm9yLWJyZWFrcG9pbnRzLCAkdmFsdWUpKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR2YWx1ZSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRwYXJhbXMpID09IDIge1xuICAgIEBpZiBub3QgaW5kZXgoXCJvbmx5XCIgXCJtaW5cIiBcIm1heFwiIFwiYmV0d2VlblwiLCBudGgoJHBhcmFtcywgMSkpIHtcbiAgICAgICRzdGFydDogbnRoKCRwYXJhbXMsIDEpO1xuICAgICAgJGVuZDogbnRoKCRwYXJhbXMsIDIpO1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICN7X192YWxpZGF0ZUJyZWFrcG9pbnQoJHN0YXJ0KX0pIGFuZCAobWF4LXdpZHRoOiAje2lmKG1hcC1oYXMta2V5KCRtYXAtZm9yLWJyZWFrcG9pbnRzLCAkZW5kKSwgX192YWxpZGF0ZUJyZWFrcG9pbnQoJGVuZCkgLSAxLCAkZW5kKX0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAkbW9kZTogbnRoKCRwYXJhbXMsIDEpO1xuICAgICAgJHZhbHVlOiBudGgoJHBhcmFtcywgMik7XG4gICAgICBAaWYgJG1vZGUgPT0gXCJvbmx5XCIge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcC1mb3ItYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgICAgICAgIEBtZWRpYSAod2lkdGg6IG1hcC1nZXQoJG1hcC1mb3ItYnJlYWtwb2ludHMsICR2YWx1ZSkpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgQG1lZGlhICh3aWR0aDogJHZhbHVlKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2UgaWYgJG1vZGUgPT0gXCJtaW5cIiB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLWZvci1icmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC1nZXQoJG1hcC1mb3ItYnJlYWtwb2ludHMsICR2YWx1ZSkpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR2YWx1ZSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIGlmICRtb2RlID09IFwibWF4XCIge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcC1mb3ItYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBtYXAtZ2V0KCRtYXAtZm9yLWJyZWFrcG9pbnRzLCAkdmFsdWUpKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdmFsdWUpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSBpZiAkbW9kZSA9PSBcImJldHdlZW5cIiB7XG4gICAgICAgICRzdGFydDogbnRoKCR2YWx1ZSwgMSk7XG4gICAgICAgICRlbmQ6IG50aCgkdmFsdWUsIDIpO1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogI3tfX3ZhbGlkYXRlQnJlYWtwb2ludCgkc3RhcnQpfSkgYW5kIChtYXgtd2lkdGg6ICN7aWYobWFwLWhhcy1rZXkoJG1hcC1mb3ItYnJlYWtwb2ludHMsICRlbmQpLCBfX3ZhbGlkYXRlQnJlYWtwb2ludCgkZW5kKSAtIDEsICRlbmQpfSkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vUGFkZGluZyBtaXhpblxuQG1peGluIHBhZGRpbmcoKSB7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgcGFkZGluZy1yaWdodDogIDMwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAgMzBweDtcbiAgfVxuICAvL01hcmdpbiBtaXhpblxuICBAbWl4aW4gbWFyZ2luKCkge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAgMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAgMzBweDtcbiAgICBtYXJnaW4tbGVmdDogIDMwcHg7XG4gIH1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEZsZXhib3ggU0FTUyBtaXhpbnNcbi8vIFRoZSBzcGVjOiBodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLWZsZXhib3hcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEZsZXhib3ggZGlzcGxheVxuQG1peGluIGZsZXhib3gge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIFxuICAvLyBJbmxpbmUgZmxleCBkaXNwbGF5XG4gIEBtaXhpbiBpbmxpbmUtZmxleCB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otaW5saW5lLWJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgfVxuICBcbiAgLy8gVGhlICdmbGV4JyBzaG9ydGhhbmRcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zXG4gIC8vIDxwb3NpdGl2ZS1udW1iZXI+LCBpbml0aWFsLCBhdXRvLCBvciBub25lXG4gIEBtaXhpbiBmbGV4KCRmZzogMSwgJGZzOiAwLCAkZmI6IGF1dG8pIHtcbiAgXG4gICAgLy8gU2V0IGEgdmFyaWFibGUgdG8gYmUgdXNlZCBieSBib3gtZmxleCBwcm9wZXJ0aWVzXG4gICAgJGZnLWJveGZsZXg6ICRmZztcbiAgXG4gICAgLy8gQm94LUZsZXggb25seSBzdXBwb3J0cyBhIGZsZXgtZ3JvdyB2YWx1ZSBzbyBsZXRzIGdyYWIgdGhlXG4gICAgLy8gZmlyc3QgaXRlbSBpbiB0aGUgbGlzdCBhbmQganVzdCByZXR1cm4gdGhhdC5cbiAgICBAaWYgdHlwZS1vZigkZmcpID09ICdsaXN0JyB7XG4gICAgICAkZmctYm94ZmxleDogbnRoKCRmZywgMSk7XG4gICAgfVxuICBcbiAgICAgLXdlYmtpdC1ib3g6ICRmZy1ib3hmbGV4O1xuICAgICAgICAtbW96LWJveDogJGZnLWJveGZsZXg7XG4gICAgLXdlYmtpdC1mbGV4OiAkZmcgJGZzICRmYjtcbiAgICAgICAgLW1zLWZsZXg6ICRmZyAkZnMgJGZiO1xuICAgICAgICAgICAgZmxleDogJGZnICRmcyAkZmI7XG4gIH1cbiAgXG4gIC8vIEZsZXggRmxvdyBEaXJlY3Rpb25cbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gcm93IChkZWZhdWx0KSB8IHJvdy1yZXZlcnNlIHwgY29sdW1uIHwgY29sdW1uLXJldmVyc2VcbiAgQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb246IHJvdykge1xuICAgIEBpZiAkZGlyZWN0aW9uID09IHJvdy1yZXZlcnNlIHtcbiAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogcmV2ZXJzZTtcbiAgICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgICAgICAgIC1tb3otYm94LWRpcmVjdGlvbjogcmV2ZXJzZTtcbiAgICAgICAgIC1tb3otYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gY29sdW1uIHtcbiAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAtbW96LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgICAgICAgICAtbW96LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBjb2x1bW4tcmV2ZXJzZSB7XG4gICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IHJldmVyc2U7XG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAtbW96LWJveC1kaXJlY3Rpb246IHJldmVyc2U7XG4gICAgICAgICAgIC1tb3otYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XG4gICAgICAgICAgLW1vei1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgICAgICAtbW96LWJveC1vcmllbnQ6IGhvcml6b250YWw7XG4gICAgfVxuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICB9XG4gIFxuICAvLyBGbGV4IExpbmUgV3JhcHBpbmdcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gbm93cmFwIHwgd3JhcCB8IHdyYXAtcmV2ZXJzZVxuICBAbWl4aW4gZmxleC13cmFwKCR2YWx1ZTogbm93cmFwKSB7XG4gICAgLy8gTm8gV2Via2l0L0ZGIEJveCBmYWxsYmFjay5cbiAgICAtd2Via2l0LWZsZXgtd3JhcDogJHZhbHVlO1xuICAgIEBpZiAkdmFsdWUgPT0gbm93cmFwIHtcbiAgICAgIC1tcy1mbGV4LXdyYXA6IG5vbmU7XG4gICAgfSBAZWxzZSB7XG4gICAgICAtbXMtZmxleC13cmFwOiAkdmFsdWU7XG4gICAgfVxuICAgIGZsZXgtd3JhcDogJHZhbHVlO1xuICB9XG4gIFxuICAvLyBGbGV4IERpcmVjdGlvbiBhbmQgV3JhcFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyA8ZmxleC1kaXJlY3Rpb24+IHx8IDxmbGV4LXdyYXA+XG4gIEBtaXhpbiBmbGV4LWZsb3coJHZhbHVlczogKHJvdyBub3dyYXApKSB7XG4gICAgLy8gTm8gV2Via2l0L0ZGIEJveCBmYWxsYmFjay5cbiAgICAtd2Via2l0LWZsZXgtZmxvdzogJHZhbHVlcztcbiAgICAgICAgLW1zLWZsZXgtZmxvdzogJHZhbHVlcztcbiAgICAgICAgICAgIGZsZXgtZmxvdzogJHZhbHVlcztcbiAgfVxuICBcbiAgLy8gRGlzcGxheSBPcmRlclxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbXNcbiAgLy8gPGludGVnZXI+XG4gIEBtaXhpbiBvcmRlcigkaW50OiAwKSB7XG4gICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogJGludCArIDE7XG4gICAgICAgLW1vei1ib3gtb3JkaW5hbC1ncm91cDogJGludCArIDE7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1vcmRlcjogJGludDtcbiAgICAgICAgICAgICAgIC1tcy1mbGV4LW9yZGVyOiAkaW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6ICRpbnQ7XG4gIH1cbiAgXG4gIC8vIEZsZXggZ3JvdyBmYWN0b3JcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zXG4gIC8vIDxudW1iZXI+XG4gIEBtaXhpbiBmbGV4LWdyb3coJGludDogMSkge1xuICAgICAtd2Via2l0LWJveC1mbGV4OiAkaW50O1xuICAgICAgICAtbW96LWJveC1mbGV4OiAkaW50O1xuICAgIC13ZWJraXQtZmxleC1ncm93OiAkaW50O1xuICAgICAgICAgICAgIC1tcy1mbGV4OiAkaW50O1xuICAgICAgICAgICAgZmxleC1ncm93OiAkaW50O1xuICB9XG4gIFxuICAvLyBGbGV4IHNocmlua1xuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbSBzaHJpbmsgZmFjdG9yXG4gIC8vIDxudW1iZXI+IFxuICBAbWl4aW4gZmxleC1zaHJpbmsoJGludDogMCkge1xuICAgIC13ZWJraXQtZmxleC1zaHJpbms6ICRpbnQ7XG4gICAgICAgLW1vei1mbGV4LXNocmluazogJGludDtcbiAgICAgICAgICAgICAgIC1tcy1mbGV4OiAkaW50O1xuICAgICAgICAgICAgZmxleC1zaHJpbms6ICRpbnQ7XG4gIH1cbiAgXG4gIC8vIEZsZXggYmFzaXNcbiAgLy8gLSB0aGUgaW5pdGlhbCBtYWluIHNpemUgb2YgdGhlIGZsZXggaXRlbVxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggaXRlbXNuaXRpYWwgbWFpbiBzaXplIG9mIHRoZSBmbGV4IGl0ZW1cbiAgLy8gPHdpZHRoPiBcbiAgQG1peGluIGZsZXgtYmFzaXMoJHZhbHVlOiBhdXRvKSB7XG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAkdmFsdWU7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAkdmFsdWU7XG4gIH1cbiAgXG4gIC8vIEF4aXMgQWxpZ25tZW50XG4gIC8vIC0gYXBwbGllcyB0bzogZmxleCBjb250YWluZXJzXG4gIC8vIGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IHNwYWNlLWJldHdlZW4gfCBzcGFjZS1hcm91bmQgXG4gIEBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQoJHZhbHVlOiBmbGV4LXN0YXJ0KSB7XG4gICAgQGlmICR2YWx1ZSA9PSBmbGV4LXN0YXJ0IHtcbiAgICAgIC13ZWJraXQtYm94LXBhY2s6IHN0YXJ0O1xuICAgICAgICAgLW1vei1ib3gtcGFjazogc3RhcnQ7XG4gICAgICAgICAtbXMtZmxleC1wYWNrOiBzdGFydDtcbiAgICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBmbGV4LWVuZCB7XG4gICAgICAtd2Via2l0LWJveC1wYWNrOiBlbmQ7XG4gICAgICAgICAtbW96LWJveC1wYWNrOiBlbmQ7XG4gICAgICAgICAtbXMtZmxleC1wYWNrOiBlbmQ7XG4gICAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gc3BhY2UtYmV0d2VlbiB7XG4gICAgICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5O1xuICAgICAgICAgLW1vei1ib3gtcGFjazoganVzdGlmeTtcbiAgICAgICAgIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7XG4gICAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gc3BhY2UtYXJvdW5kIHtcbiAgICAgICAgIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGU7XG4gICAgfSBAZWxzZSB7XG4gICAgICAtd2Via2l0LWJveC1wYWNrOiAkdmFsdWU7XG4gICAgICAgICAtbW96LWJveC1wYWNrOiAkdmFsdWU7XG4gICAgICAgICAtbXMtZmxleC1wYWNrOiAkdmFsdWU7XG4gICAgfVxuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiAkdmFsdWU7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6ICR2YWx1ZTtcbiAgfVxuICBcbiAgLy8gUGFja2luZyBGbGV4IExpbmVzXG4gIC8vIC0gYXBwbGllcyB0bzogbXVsdGktbGluZSBmbGV4IGNvbnRhaW5lcnNcbiAgLy8gZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2ggXG4gIEBtaXhpbiBhbGlnbi1jb250ZW50KCR2YWx1ZTogc3RyZXRjaCkge1xuICAgIC8vIE5vIFdlYmtpdCBCb3ggRmFsbGJhY2suXG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiAkdmFsdWU7XG4gICAgQGlmICR2YWx1ZSA9PSBmbGV4LXN0YXJ0IHtcbiAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RhcnQ7XG4gICAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gZmxleC1lbmQge1xuICAgICAgLW1zLWZsZXgtbGluZS1wYWNrOiBlbmQ7XG4gICAgfSBAZWxzZSB7XG4gICAgICAtbXMtZmxleC1saW5lLXBhY2s6ICR2YWx1ZTtcbiAgICB9XG4gICAgYWxpZ24tY29udGVudDogJHZhbHVlO1xuICB9XG4gIFxuICAvLyBDcm9zcy1heGlzIEFsaWdubWVudFxuICAvLyAtIGFwcGxpZXMgdG86IGZsZXggY29udGFpbmVyc1xuICAvLyBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2ggXG4gIEBtaXhpbiBhbGlnbi1pdGVtcygkdmFsdWU6IHN0cmV0Y2gpIHtcbiAgICBAaWYgJHZhbHVlID09IGZsZXgtc3RhcnQge1xuICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0O1xuICAgICAgICAgLW1vei1ib3gtYWxpZ246IHN0YXJ0O1xuICAgICAgICAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0O1xuICAgIH0gQGVsc2UgaWYgJHZhbHVlID09IGZsZXgtZW5kIHtcbiAgICAgIC13ZWJraXQtYm94LWFsaWduOiBlbmQ7XG4gICAgICAgICAtbW96LWJveC1hbGlnbjogZW5kO1xuICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGVuZDtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC13ZWJraXQtYm94LWFsaWduOiAkdmFsdWU7XG4gICAgICAgICAtbW96LWJveC1hbGlnbjogJHZhbHVlO1xuICAgICAgICAgLW1zLWZsZXgtYWxpZ246ICR2YWx1ZTtcbiAgICB9XG4gICAgLXdlYmtpdC1hbGlnbi1pdGVtczogJHZhbHVlO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6ICR2YWx1ZTtcbiAgfVxuICBcbiAgLy8gQ3Jvc3MtYXhpcyBBbGlnbm1lbnRcbiAgLy8gLSBhcHBsaWVzIHRvOiBmbGV4IGl0ZW1zXG4gIC8vIGF1dG8gfCBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2ggXG4gIEBtaXhpbiBhbGlnbi1zZWxmKCR2YWx1ZTogYXV0bykge1xuICAgIC8vIE5vIFdlYmtpdCBCb3ggRmFsbGJhY2suXG4gICAgLXdlYmtpdC1hbGlnbi1zZWxmOiAkdmFsdWU7XG4gICAgQGlmICR2YWx1ZSA9PSBmbGV4LXN0YXJ0IHtcbiAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0YXJ0O1xuICAgIH0gQGVsc2UgaWYgJHZhbHVlID09IGZsZXgtZW5kIHtcbiAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGVuZDtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246ICR2YWx1ZTtcbiAgICB9XG4gICAgYWxpZ24tc2VsZjogJHZhbHVlO1xuICB9XG4gICIsIkBpbXBvcnQgXCIuLi90b29scy92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi90b29scy9taXhpbnNcIjtcblxuI21hcCB7XG4gICAgbWluLWhlaWdodDogMzV2aDtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wcm9qZWN0LWJ1dHRvbi10b3Age1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDMwcHg7XG59XG5cbi5zb2xkLWJhbm5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5O1xuICAgIHBhZGRpbmc6IDAuNXJlbSAycmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG1heC13aWR0aDogNzAlO1xuICAgIH1cbn1cblxuLnByb2plY3QtdW5pdHMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgIG1hcmdpbjogMnJlbSAwO1xuXG4gICAgICAgIGgyLCBoMywgaDQge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkYm9sZFdlaWdodDtcbiAgICAgICAgfVxuXG4gICAgfVxuICAgIC50b2dnbGUge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNjY2M7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjE7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIC4zMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgLjMycyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIC4zMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuMzJzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC41NHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICY6aG92ZXIsICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjM2YzZjNkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5wYXJhZ3JhcGgge1xuICAgICAgICBtYXJnaW46IDVyZW0gMDtcbiAgICB9XG5cbiAgICAudGFnZ2luZy13cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luOiA1cmVtIDA7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICYuY3VzdG9tLXN2Zy10YWdnaW5nIHtcblxuICAgICAgICAgICAgLnRhZ3Mtd3JhcHBlciAudGFncyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuXG4gICAgICAgICAgICAgICAgLnRhZyB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC50YWctY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgc3ZnIHtcbiAgICBcbiAgICAgICAgICAgIC5ob3ZlcixcbiAgICAgICAgICAgIC50YWcge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAuaG92ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMjtcbiAgICAgICAgICAgICAgICBmaWxsOiAkZ3JlZW47XG4gICAgICAgICAgICAgICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuNXMgJGVhc2VPdXRTaW5lKTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgJi5zb2xkIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogbm8tZHJvcDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5pbm9wdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICRvcmFuZ2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuYXZhaWxhYmxlIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogJGdyZWVuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgfVxuXG4gICAgICAgIC5waWN0dXJlLXRhZ2dpbmcsXG4gICAgICAgIC5zdmctdGFnZ2luZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAvL2hlaWdodDogNzBkdmg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxNDAwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC50YWdzLXdyYXBwZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC5jdXN0b20tdGFnZ2luZy1zdmcge1xuICAgICAgICAgICAgICAgIC8vQGluY2x1ZGUgY292ZXI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGFncyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY292ZXI7XG5cbiAgICAgICAgICAgICAgICAudGFnIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAmLndpdGgtZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLnRhZy1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciAudGFnLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJi5zb2xkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLnRhZy1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAudGFnLWljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDNyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDNyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYmctY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnRhZy1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBoYztcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogY2FsYygxMDAlICsgMzBweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWCgtNTAlKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGFjY2VudENvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkYm9sZFdlaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGxpZ2h0V2VpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkeHhzRm9udDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHh4c0ZvbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAudW5pdC1saXN0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgdHIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGgsXG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEuNWVtO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuNWVtO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBvYmplY3QtZml0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNWVtIDFlbTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMmVtO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JleTtcbiAgICAgICAgICAgICAgICAgICAgJi5zb2xkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJHNlbWlib2xkV2VpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGFjY2VudENvbG9yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYWNjZW50Q29sb3I7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG5cblxuXG4gICAgQGluY2x1ZGUgc21hbGwge1xuXG4gICAgICAgIC50YWdnaW5nLXdyYXBwZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC51bml0LWxpc3Qge1xuXG4gICAgICAgICAgICB0YWJsZSB7XG5cbiAgICAgICAgICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg0KSxcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNSksXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBleHRyYXNtYWxsIHtcblxuICAgICAgICAudW5pdC1saXN0IHtcbiAgICAgICAgICAgIG92ZXJmbG93LXg6YXV0bztcbiAgICAgICAgICAgIHRhYmxlIHtcblxuICAgICAgICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpLFxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSxcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyAubWFwLWljb24taXRlbXMtb3V0ZXIge1xuLy8gICAgIGRpc3BsYXk6IG5vbmU7XG4vLyB9XG5cbi5mYXNlcmluZyB7XG4gICAgaDIge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxuICAgIHAge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgICAuZ3JpZCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtZ2FwKDNyZW0pO1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNxdWFyZTtcbiAgICAgICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBiZy1jb3ZlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJyb2NodXJlLXRleHQtdmlkZW8tb3V0ZXIgLnRleHQtdmlkZW8td3JhcHBlciwgLm5vZGUtLXR5cGUtcHJvamVjdCAudGV4dC12aWRlby1vdXRlciAudGV4dC12aWRlby13cmFwcGVyIHtcbiAgICAmLmZ1bGxzY3JlZW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgLmxlZnQtc2VjdGlvbiwgLnJpZ2h0LXNlY3Rpb24ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5sZWZ0LXNlY3Rpb24ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByb2plY3QtcHJpY2UgYSB7XG4gICAgY29sb3I6ICRwcmltYXJ5O1xufVxuXG4uYXZhaWxhYmlsaXR5IHtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgdGFibGUge1xuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMjBweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByaWNlLWJ0biB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjNzKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjI1cmVtIDFyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG1haW5Db2xvcjtcbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICRtYWluQ29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICAgICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjNzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gXG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8vQ09MT1JTXG5cbiR3aGl0ZTogI2ZmZjtcbiRibGFjazogIzAwMDtcbiRsaWdodEdyZXk6ICNGNUY2Rjc7XG4kZ3JleTogI0RGRTNFNjtcbiRkYXJrR3JleTogIzUyNjM3OTtcbiRtYWluQ29sb3I6ICMwOTBEMzM7XG4kbGlnaHRNYWluQ29sb3I6ICMxMzFCNjA7XG4kZGFya01haW5Db2xvcjogIzAyMDYzNDtcbiRhY2NlbnRDb2xvcjogIzBGMkE3NDtcbiRsaWdodEFjY2VudENvbG9yOiAjMDA0MUI0O1xuJGRhcmtBY2NlbnRDb2xvcjogIzBCMUIzMTtcbiRlcnJvckNvbG9yOiAjYjk0YTQ4O1xuJHByaW1hcnk6ICNFMTI1MUM7XG4kZ3JlZW46ICM3N2RkNzc7XG4kb3JhbmdlOiAjZmZiNzMzO1xuXG4kY29sb3JzLWxpc3Q6IChcbiAgICAnbm9uZSc6IHRyYW5zcGFyZW50LFxuICAgICdibGFjayc6ICRibGFjayxcbiAgICAnd2hpdGUnOiAkd2hpdGUsXG4gICAgJ2xpZ2h0LW1haW4nOiAkbGlnaHRNYWluQ29sb3IsXG4gICAgJ21haW4nOiAkbWFpbkNvbG9yLFxuICAgICdkYXJrLW1haW4nOiAkZGFya01haW5Db2xvcixcbiAgICAnbGlnaHQtYWNjZW50JzogJGxpZ2h0QWNjZW50Q29sb3IsXG4gICAgJ2FjY2VudCc6ICRhY2NlbnRDb2xvcixcbiAgICAnZGFyay1hY2NlbnQnOiAkZGFya0FjY2VudENvbG9yLFxuICAgICdsaWdodC1ncmV5JzogJGxpZ2h0R3JleSxcbiAgICAnZ3JleSc6ICRncmV5LFxuICAgICdkYXJrLWdyZXknOiAkZGFya0dyZXlcbik7XG5cbiRsaWdodGNvbG9ycy1saXN0OiAoXG4gICAgJ25vbmUnOiB0cmFuc3BhcmVudCxcbiAgICAnd2hpdGUnOiAkd2hpdGUsXG4gICAgJ2xpZ2h0LWdyZXknOiAkbGlnaHRHcmV5LFxuICAgICdncmV5JzogJGdyZXksXG4gICAgJ2xpZ2h0LWFjY2VudCc6ICRsaWdodEFjY2VudENvbG9yLFxuICAgICdhY2NlbnQnOiAkYWNjZW50Q29sb3Jcbik7XG5cbiRkYXJrY29sb3JzLWxpc3Q6IChcbiAgICAnYmxhY2snOiAkYmxhY2ssXG4gICAgJ2RhcmstZ3JleSc6ICRkYXJrR3JleSxcbiAgICAnbGlnaHQtbWFpbic6ICRsaWdodE1haW5Db2xvcixcbiAgICAnbWFpbic6ICRtYWluQ29sb3IsXG4gICAgJ2RhcmstbWFpbic6ICRkYXJrTWFpbkNvbG9yLFxuICAgICdsaWdodC1hY2NlbnQnOiAkbGlnaHRBY2NlbnRDb2xvcixcbiAgICAnYWNjZW50JzogJGFjY2VudENvbG9yLFxuICAgICdkYXJrLWFjY2VudCc6ICRkYXJrQWNjZW50Q29sb3Jcbik7XG5cbi8vRk9OVFNcblxuLy9tYWluIHNpdGVcbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvb3F2MXZ6Zy5jc3NcIik7XG5cbiRwcmltYXJ5Rm9udDogbGF0bywgJ2xhdG8nLCBzYW5zLXNlcmlmO1xuJHNlY29uZGFyeUZvbnQ6IGxhdG8sICdsYXRvJywgc2Fucy1zZXJpZjtcblxuLy9zaXplc1xuXG4kcm9vdEZvbnQ6IDEwcHg7XG4kYmFzZUZvbnQ6IDEuNHJlbTtcbi8vcmVtICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9zaXplcyBpbiBYZFxuJHh4bEZvbnQ6ICgkYmFzZUZvbnQgKiA1LjAwKTsgICAvLzEwMHB0XG4keGxGb250OiAoJGJhc2VGb250ICogNC4wMCk7ICAgIC8vODBwdFxuJGxnRm9udDogKCRiYXNlRm9udCAqIDIuMjUpOyAgICAvLzQ1cHRcbiRtZEZvbnQ6ICgkYmFzZUZvbnQgKiAxLjI1KTsgICAgLy8yNXB0XG4kc21Gb250OiAkYmFzZUZvbnQ7ICAgICAgICAgICAgIC8vMjBwdFxuJHhzRm9udDogKCRiYXNlRm9udCAqIDAuODApOyAgICAvLzE2cHRcbiR4eHNGb250OiAoJGJhc2VGb250ICogMC43MCk7ICAgLy8xNHB0XG5cbi8vd2VpZ2h0c1xuXG4kZXh0cmFsaWdodFdlaWdodDogMzAwO1xuJGxpZ2h0V2VpZ2h0OiAzMDA7XG4kcmVndWxhcldlaWdodDogNTAwO1xuJG1lZGl1bVdlaWdodDogNTAwO1xuJHNlbWlib2xkV2VpZ2h0OiA3MDA7XG4kYm9sZFdlaWdodDogNzAwO1xuJGV4dHJhYm9sZFdlaWdodDogNzAwO1xuXG5cbi8vUkVTUE9OU0lWRVxuXG4keHNMaW1pdDogNTc2cHg7XG4kc21MaW1pdDogNzY4cHg7XG4kbWRMaW1pdDogOTkycHg7XG4kbGdMaW1pdDogMTIwMHB4O1xuJHhsTGltaXQ6IDE5MjBweDtcblxuXG4vL0NPTlRBSU5FUlNcblxuJHhzQ29udGFpbmVyOiA2NjBweDtcbiRzbUNvbnRhaW5lcjogODgwcHg7XG4kbWRDb250YWluZXI6IDEwNjBweDtcbiRsZ0NvbnRhaW5lcjogMTI4MHB4O1xuJHhsQ29udGFpbmVyOiAxNzAwcHg7XG5cblxuLy9PVEhFUlxuXG4kaGVhZGVySGVpZ2h0OiA2cmVtO1xuJGhlYWRlckhlaWdodE1vYmlsZTogNjNweDtcbiRoZWFkZXJIZWlnaHRTY3JvbGxpbmc6IDZyZW07XG5cbiRzdWJzaXRlSGVhZGVyV2lkdGg6IDhyZW07XG5cbiRvbmVVcFo6IDE7XG4kdHdvVXBaOiAyO1xuJHBvcHVwWjogMztcbiRoZWFkZXJaOiA0O1xuIiwiQGltcG9ydCBcIi4uL3Rvb2xzL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4uL3Rvb2xzL21peGluc1wiO1xuXG4jbWFwIHtcbiAgICBAaW5jbHVkZSBjb3ZlcjtcbiAgICBtaW4taGVpZ2h0OiAzNXZoO1xuICAgIC5sZWFmbGV0LXBhbmUge1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAmLmxlYWZsZXQtdGlsZS1wYW5lIHtcbiAgICAgICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5sZWFmbGV0LWJvdHRvbSwgLmxlYWZsZXQtdG9wIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG59XG5cbi5lc3RhdGUtbG9jYXRpb24ge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuXG4gICAgLmNvbnRhaW5lci5ncmlkIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zKGF1dG8gMzByZW0pO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWdhcCg1cmVtKTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuc3RhcnQge1xuICAgICAgICBAaW5jbHVkZSBtZGJhcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuZW5kIHtcblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luOiAycmVtIDA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgICBoMiwgaDMsIGg0IHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGJvbGRXZWlnaHQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgc21hbGwge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgLmNvbnRhaW5lci5ncmlkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtdGVtcGxhdGUtY29sdW1ucygxZnIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN0YXJ0IHtcbiAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgQGluY2x1ZGUgaGliYXI7XG4gICAgICAgIH1cblxuICAgICAgICAuZW5kIHtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=*/