.post-content .mpp-profile-wrap h1,.post-content .mpp-profile-wrap h2,.post-content .mpp-profile-wrap h3,.post-content .mpp-profile-wrap h4,.post-content .mpp-profile-wrap h5,.post-content .mpp-profile-wrap h6,.post-content .mpp-enhanced-profile-wrap h1,.post-content .mpp-enhanced-profile-wrap h2,.post-content .mpp-enhanced-profile-wrap h3,.post-content .mpp-enhanced-profile-wrap h4,.post-content .mpp-enhanced-profile-wrap h5,.post-content .mpp-enhanced-profile-wrap h6{clear:none}.post-content .mpp-profile-wrap h2,.post-content .mpp-enhanced-profile-wrap h2{margin:0;margin-bottom:10px}.post-content .mpp-profile-wrap p,.post-content .mpp-enhanced-profile-wrap p{margin-bottom:10px}.mpp-profile-wrap{margin:0 auto;padding:3%;border-radius:5px;margin-bottom:1.2em;margin-bottom:20px;line-height:1.3}.mpp-profile-wrap.round .mpp-profile-image-wrapper{border-radius:50%;overflow:hidden}.mpp-profile-wrap.round .mpp-profile-image-wrapper img{border-radius:50%}.mpp-profile-wrap h1,.mpp-profile-wrap h2,.mpp-profile-wrap h3,.mpp-profile-wrap h4,.mpp-profile-wrap h5,.mpp-profile-wrap h6{clear:none}.mpp-profile-wrap h2{margin-top:0;margin-bottom:10px}.mpp-profile-wrap h2:before{display:none}.mpp-profile-wrap .mpp-profile-image-wrapper{position:relative;float:left;line-height:1.1;z-index:1000;background:#ddd;position:relative;min-width:150px;min-height:150px;max-width:150px;max-height:150px;width:100%;margin-right:20px;margin-bottom:20px}.mpp-profile-wrap .mpp-profile-image-wrapper button{position:relative;min-width:150px;min-height:150px;max-width:150px;max-height:150px;z-index:1000}.mpp-profile-wrap .mpp-profile-image-wrapper .mpp-profile-image-square{position:relative;top:0;left:0;height:100%;width:100%;z-index:5}.mpp-profile-wrap .mpp-profile-image-wrapper .mpp-profile-image-square img{height:100%;width:100%;position:relative;z-index:5}.mpp-profile-wrap .mpp-profile-image-wrapper .mpp-content-wrap{display:block;padding:0 15px;-ms-flex:3 0 0px;flex:3 0 0}.mpp-profile-wrap .mpp-profile-image-wrapper .mpp-profile-name{font:1.4em;line-height:1.2}@media only screen and (max-width:600px){.mpp-profile-wrap .mpp-profile-image-wrapper{flex:auto}}.mpp-profile-wrap .mpp-gutenberg-view-posts{clear:both;padding-top:20px}.mpp-profile-wrap .mpp-profile-view-posts{clear:both;display:block;width:100%;text-align:center;padding:10px 20px;background-color:#cf6d38;color:#fff}.mpp-profile-wrap .mpp-profile-view-posts a,.mpp-profile-wrap .mpp-profile-view-posts a:hover,.mpp-profile-wrap .mpp-profile-view-posts a:visited{display:block;width:100%;height:100%;color:#fff;text-decoration:none}.mpp-enhanced-profile-wrap.regular{position:relative;margin:0 auto;line-height:1.5}.mpp-enhanced-profile-wrap.regular.round .mpp-profile-image-wrapper{border-radius:50%;overflow:hidden}.mpp-enhanced-profile-wrap.regular.round .mpp-profile-image-wrapper img{border-radius:50%}.mpp-enhanced-profile-wrap.regular h1,.mpp-enhanced-profile-wrap.regular h2,.mpp-enhanced-profile-wrap.regular h3,.mpp-enhanced-profile-wrap.regular h4,.mpp-enhanced-profile-wrap.regular h5,.mpp-enhanced-profile-wrap.regular h6{clear:none}.mpp-enhanced-profile-wrap.regular h2:before{display:none}.mpp-enhanced-profile-wrap.regular .mpp-profile-image-wrapper{position:relative;float:left;line-height:1.1;z-index:1000;background:#ddd;position:relative;min-width:150px;min-height:150px;max-width:150px;max-height:150px;width:100%;margin-right:20px;margin-bottom:20px}@media only screen and (max-width:400px){.mpp-enhanced-profile-wrap.regular .mpp-profile-image-wrapper{float:none;text-align:center;margin:0 auto}}.mpp-enhanced-profile-wrap.regular .mpp-profile-image-wrapper button{position:relative;min-width:150px;min-height:150px;max-width:150px;max-height:150px;z-index:1000}.mpp-enhanced-profile-wrap.regular .mpp-profile-image-wrapper .mpp-profile-image-square{position:relative;top:0;left:0;height:100%;width:100%;z-index:5}.mpp-enhanced-profile-wrap.regular .mpp-profile-image-wrapper .mpp-profile-image-square img{height:100%;width:100%;position:relative;z-index:5}.mpp-enhanced-profile-wrap.regular .mpp-profile-image-wrapper .mpp-content-wrap{display:block;padding:0 15px;-ms-flex:3 0 0px;flex:3 0 0}@media only screen and (max-width:400px){.mpp-enhanced-profile-wrap.regular .mpp-profile-image-wrapper .mpp-content-wrap{display:block;text-align:center;margin:0 auto}}.mpp-enhanced-profile-wrap.regular .mpp-profile-image-wrapper .mpp-profile-name{font:1.4em;line-height:1.2}@media only screen and (max-width:600px){.mpp-enhanced-profile-wrap.regular .mpp-profile-image-wrapper{flex:auto}}@media only screen and (max-width:400px){.mpp-enhanced-profile-wrap.regular .mpp-content-wrap{display:block;text-align:center;margin:0 auto}}.mpp-enhanced-profile-wrap.regular .mpp-gutenberg-view-posts{clear:both}.mpp-enhanced-profile-wrap.regular .mpp-gutenberg-view-posts:after{content:"";display:table;clear:both}.mpp-enhanced-profile-wrap.regular .mpp-profile-view-posts{clear:both;display:block;float:left;text-align:center;padding:10px 20px;margin-top:20px;margin-right:20px;background-color:#cf6d38;color:#fff}.mpp-enhanced-profile-wrap.regular .mpp-profile-view-posts a,.mpp-enhanced-profile-wrap.regular .mpp-profile-view-posts a:hover,.mpp-enhanced-profile-wrap.regular .mpp-profile-view-posts a:visited{display:block;width:100%;height:100%;color:#fff;text-decoration:none}.mpp-enhanced-profile-wrap.regular .mpp-profile-view-posts:after{content:"";display:table;clear:both}@media only screen and (max-width:400px){.mpp-enhanced-profile-wrap.regular .mpp-profile-view-posts{display:block;width:90%;margin:0 auto;text-align:center;margin-bottom:10px}}.mpp-enhanced-profile-wrap.regular .mpp-profile-view-website{display:block;float:left;text-align:center;padding:10px 20px;margin-top:20px;background-color:#333;color:#fff}.mpp-enhanced-profile-wrap.regular .mpp-profile-view-website a,.mpp-enhanced-profile-wrap.regular .mpp-profile-view-website a:hover,.mpp-enhanced-profile-wrap.regular .mpp-profile-view-website a:visited{display:block;width:100%;height:100%;color:#fff;text-decoration:none}@media only screen and (max-width:400px){.mpp-enhanced-profile-wrap.regular .mpp-profile-view-website{display:block;width:90%;margin:0 auto;text-align:center;margin-bottom:10px}}.mpp-profile-wrap.mt-font-size-10,.mpp-enhanced-profile-wrap.regular .mt-font-size-10,.mpp-enhanced-profile-wrap.profile .mt-font-size-10,.mpp-enhanced-profile-wrap.compact .mt-font-size-10,.mpp-profile-text.mt-font-size-10{font-size:10px}.mpp-profile-wrap.mt-font-size-10 p,.mpp-profile-wrap.mt-font-size-10 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-10 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-10 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-10 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-10 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-10 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-10 div,.mpp-profile-text.mt-font-size-10 p,.mpp-profile-text.mt-font-size-10 div{font-size:10px}.mpp-profile-wrap.mt-font-size-11,.mpp-enhanced-profile-wrap.regular .mt-font-size-11,.mpp-enhanced-profile-wrap.profile .mt-font-size-11,.mpp-enhanced-profile-wrap.compact .mt-font-size-11,.mpp-profile-text.mt-font-size-11{font-size:11px}.mpp-profile-wrap.mt-font-size-11 p,.mpp-profile-wrap.mt-font-size-11 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-11 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-11 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-11 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-11 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-11 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-11 div,.mpp-profile-text.mt-font-size-11 p,.mpp-profile-text.mt-font-size-11 div{font-size:11px}.mpp-profile-wrap.mt-font-size-12,.mpp-enhanced-profile-wrap.regular .mt-font-size-12,.mpp-enhanced-profile-wrap.profile .mt-font-size-12,.mpp-enhanced-profile-wrap.compact .mt-font-size-12,.mpp-profile-text.mt-font-size-12{font-size:12px}.mpp-profile-wrap.mt-font-size-12 p,.mpp-profile-wrap.mt-font-size-12 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-12 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-12 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-12 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-12 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-12 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-12 div,.mpp-profile-text.mt-font-size-12 p,.mpp-profile-text.mt-font-size-12 div{font-size:12px}.mpp-profile-wrap.mt-font-size-13,.mpp-enhanced-profile-wrap.regular .mt-font-size-13,.mpp-enhanced-profile-wrap.profile .mt-font-size-13,.mpp-enhanced-profile-wrap.compact .mt-font-size-13,.mpp-profile-text.mt-font-size-13{font-size:13px}.mpp-profile-wrap.mt-font-size-13 p,.mpp-profile-wrap.mt-font-size-13 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-13 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-13 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-13 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-13 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-13 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-13 div,.mpp-profile-text.mt-font-size-13 p,.mpp-profile-text.mt-font-size-13 div{font-size:13px}.mpp-profile-wrap.mt-font-size-14,.mpp-enhanced-profile-wrap.regular .mt-font-size-14,.mpp-enhanced-profile-wrap.profile .mt-font-size-14,.mpp-enhanced-profile-wrap.compact .mt-font-size-14,.mpp-profile-text.mt-font-size-14{font-size:14px}.mpp-profile-wrap.mt-font-size-14 p,.mpp-profile-wrap.mt-font-size-14 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-14 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-14 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-14 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-14 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-14 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-14 div,.mpp-profile-text.mt-font-size-14 p,.mpp-profile-text.mt-font-size-14 div{font-size:14px}.mpp-profile-wrap.mt-font-size-15,.mpp-enhanced-profile-wrap.regular .mt-font-size-15,.mpp-enhanced-profile-wrap.profile .mt-font-size-15,.mpp-enhanced-profile-wrap.compact .mt-font-size-15,.mpp-profile-text.mt-font-size-15{font-size:15px}.mpp-profile-wrap.mt-font-size-15 p,.mpp-profile-wrap.mt-font-size-15 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-15 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-15 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-15 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-15 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-15 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-15 div,.mpp-profile-text.mt-font-size-15 p,.mpp-profile-text.mt-font-size-15 div{font-size:15px}.mpp-profile-wrap.mt-font-size-16,.mpp-enhanced-profile-wrap.regular .mt-font-size-16,.mpp-enhanced-profile-wrap.profile .mt-font-size-16,.mpp-enhanced-profile-wrap.compact .mt-font-size-16,.mpp-profile-text.mt-font-size-16{font-size:16px}.mpp-profile-wrap.mt-font-size-16 p,.mpp-profile-wrap.mt-font-size-16 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-16 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-16 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-16 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-16 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-16 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-16 div,.mpp-profile-text.mt-font-size-16 p,.mpp-profile-text.mt-font-size-16 div{font-size:16px}.mpp-profile-wrap.mt-font-size-17,.mpp-enhanced-profile-wrap.regular .mt-font-size-17,.mpp-enhanced-profile-wrap.profile .mt-font-size-17,.mpp-enhanced-profile-wrap.compact .mt-font-size-17,.mpp-profile-text.mt-font-size-17{font-size:17px}.mpp-profile-wrap.mt-font-size-17 p,.mpp-profile-wrap.mt-font-size-17 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-17 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-17 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-17 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-17 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-17 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-17 div,.mpp-profile-text.mt-font-size-17 p,.mpp-profile-text.mt-font-size-17 div{font-size:17px}.mpp-profile-wrap.mt-font-size-18,.mpp-enhanced-profile-wrap.regular .mt-font-size-18,.mpp-enhanced-profile-wrap.profile .mt-font-size-18,.mpp-enhanced-profile-wrap.compact .mt-font-size-18,.mpp-profile-text.mt-font-size-18{font-size:18px}.mpp-profile-wrap.mt-font-size-18 p,.mpp-profile-wrap.mt-font-size-18 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-18 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-18 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-18 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-18 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-18 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-18 div,.mpp-profile-text.mt-font-size-18 p,.mpp-profile-text.mt-font-size-18 div{font-size:18px}.mpp-profile-wrap.mt-font-size-19,.mpp-enhanced-profile-wrap.regular .mt-font-size-19,.mpp-enhanced-profile-wrap.profile .mt-font-size-19,.mpp-enhanced-profile-wrap.compact .mt-font-size-19,.mpp-profile-text.mt-font-size-19{font-size:19px}.mpp-profile-wrap.mt-font-size-19 p,.mpp-profile-wrap.mt-font-size-19 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-19 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-19 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-19 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-19 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-19 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-19 div,.mpp-profile-text.mt-font-size-19 p,.mpp-profile-text.mt-font-size-19 div{font-size:19px}.mpp-profile-wrap.mt-font-size-20,.mpp-enhanced-profile-wrap.regular .mt-font-size-20,.mpp-enhanced-profile-wrap.profile .mt-font-size-20,.mpp-enhanced-profile-wrap.compact .mt-font-size-20,.mpp-profile-text.mt-font-size-20{font-size:20px}.mpp-profile-wrap.mt-font-size-20 p,.mpp-profile-wrap.mt-font-size-20 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-20 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-20 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-20 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-20 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-20 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-20 div,.mpp-profile-text.mt-font-size-20 p,.mpp-profile-text.mt-font-size-20 div{font-size:20px}.mpp-profile-wrap.mt-font-size-21,.mpp-enhanced-profile-wrap.regular .mt-font-size-21,.mpp-enhanced-profile-wrap.profile .mt-font-size-21,.mpp-enhanced-profile-wrap.compact .mt-font-size-21,.mpp-profile-text.mt-font-size-21{font-size:21px}.mpp-profile-wrap.mt-font-size-21 p,.mpp-profile-wrap.mt-font-size-21 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-21 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-21 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-21 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-21 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-21 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-21 div,.mpp-profile-text.mt-font-size-21 p,.mpp-profile-text.mt-font-size-21 div{font-size:21px}.mpp-profile-wrap.mt-font-size-22,.mpp-enhanced-profile-wrap.regular .mt-font-size-22,.mpp-enhanced-profile-wrap.profile .mt-font-size-22,.mpp-enhanced-profile-wrap.compact .mt-font-size-22,.mpp-profile-text.mt-font-size-22{font-size:22px}.mpp-profile-wrap.mt-font-size-22 p,.mpp-profile-wrap.mt-font-size-22 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-22 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-22 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-22 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-22 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-22 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-22 div,.mpp-profile-text.mt-font-size-22 p,.mpp-profile-text.mt-font-size-22 div{font-size:22px}.mpp-profile-wrap.mt-font-size-23,.mpp-enhanced-profile-wrap.regular .mt-font-size-23,.mpp-enhanced-profile-wrap.profile .mt-font-size-23,.mpp-enhanced-profile-wrap.compact .mt-font-size-23,.mpp-profile-text.mt-font-size-23{font-size:23px}.mpp-profile-wrap.mt-font-size-23 p,.mpp-profile-wrap.mt-font-size-23 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-23 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-23 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-23 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-23 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-23 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-23 div,.mpp-profile-text.mt-font-size-23 p,.mpp-profile-text.mt-font-size-23 div{font-size:23px}.mpp-profile-wrap.mt-font-size-24,.mpp-enhanced-profile-wrap.regular .mt-font-size-24,.mpp-enhanced-profile-wrap.profile .mt-font-size-24,.mpp-enhanced-profile-wrap.compact .mt-font-size-24,.mpp-profile-text.mt-font-size-24{font-size:24px}.mpp-profile-wrap.mt-font-size-24 p,.mpp-profile-wrap.mt-font-size-24 div,.mpp-enhanced-profile-wrap.regular .mt-font-size-24 p,.mpp-enhanced-profile-wrap.regular .mt-font-size-24 div,.mpp-enhanced-profile-wrap.profile .mt-font-size-24 p,.mpp-enhanced-profile-wrap.profile .mt-font-size-24 div,.mpp-enhanced-profile-wrap.compact .mt-font-size-24 p,.mpp-enhanced-profile-wrap.compact .mt-font-size-24 div,.mpp-profile-text.mt-font-size-24 p,.mpp-profile-text.mt-font-size-24 div{font-size:24px}.mpp-social{margin-top:15px}.mpp-social svg{max-width:32px;max-height:32px;margin-right:10px}.mpp-social a,.mpp-social a:hover,.mpp-social a:visited{text-decoration:none !important}.mpp-social{clear:both}.mpp-social svg.icon-twitter{fill:#00aced}.mpp-social svg.icon-amazon{fill:#000}.mpp-social svg.icon-behance{fill:#0692e9}.mpp-social svg.icon-blogger{fill:#fb8f3d}.mpp-social svg.icon-codepen{fill:#000}.mpp-social svg.icon-dribble{fill:#f46899}.mpp-social svg.icon-dropbox{fill:#018bd3}.mpp-social svg.icon-eventbrite{fill:#f6682f}.mpp-social svg.icon-facebook{fill:#3b5998}.mpp-social svg.icon-flickr{fill:#ff0084}.mpp-social svg.icon-foursquare{fill:#0072b1}.mpp-social svg.icon-ghost{fill:#000}.mpp-social svg.icon-github{fill:#070709}.mpp-social svg.icon-google-plus{fill:#cf3d2e}.mpp-social svg.icon-instagram{fill:#a1755c}.mpp-social svg.icon-linkedin{fill:#0085ae}.mpp-social svg.icon-feed{fill:#f26522}.mpp-social svg.icon-medium{fill:#000}.mpp-social svg.icon-path{fill:#000}.mpp-social svg.icon-pinterest{fill:#cc2127}.mpp-social svg.icon-pocket{fill:#000}.mpp-social svg.icon-polldaddy{fill:#bc0b0b}.mpp-social svg.icon-reddit{fill:#000}.mpp-social svg.icon-skype{fill:#01aef2}.mpp-social svg.icon-spotify{fill:#1ed760}.mpp-social svg.icon-squarespace{fill:#000}.mpp-social svg.icon-stumbleupon{fill:#eb4823}.mpp-social svg.icon-telegram{fill:#000}.mpp-social svg.icon-tumblr-alt{fill:#314e6c}.mpp-social svg.icon-twitch{fill:#4b367c}.mpp-social svg.icon-twitter-alt{fill:#00aced}.mpp-social svg.icon-vimeo{fill:#1ab7ea}.mpp-social svg.icon-wordpress{fill:#21759b}.mpp-social svg.icon-youtube{fill:#b00}.mpp-enhanced-profile-wrap.profile{padding:10px}.mpp-enhanced-profile-wrap.profile h2{margin:0;font-size:.8em;font-weight:400;margin-bottom:5px}.mpp-enhanced-profile-wrap.profile h2:before{display:none}@media only screen and (max-width:400px){.mpp-enhanced-profile-wrap.profile h2{text-align:center}}.mpp-enhanced-profile-wrap.profile.round .profile-avatar{border-radius:50%}.mpp-enhanced-profile-wrap.profile .mpp-profile-image-wrapper{position:relative;float:left;line-height:1;z-index:1000;min-width:150px;min-height:150px;max-width:150px;max-height:150px;margin-right:15px}@media only screen and (max-width:400px){.mpp-enhanced-profile-wrap.profile .mpp-profile-image-wrapper{float:none;text-align:center;margin:0 auto}}.mpp-enhanced-profile-wrap.profile .mpp-profile-meta{clear:both;margin:10px 0}.mpp-enhanced-profile-wrap.profile .mpp-profile-meta:after{content:"";display:table;clear:both}.mpp-enhanced-profile-wrap.profile .alignleft{max-width:none;float:left}@media only screen and (max-width:400px){.mpp-enhanced-profile-wrap.profile .alignleft{float:none;text-align:center;margin:0 auto}}.mpp-enhanced-profile-wrap.profile .alignright{max-width:none}@media only screen and (max-width:400px){.mpp-enhanced-profile-wrap.profile .alignright{float:none;text-align:center;margin:0 auto}}.mpp-author-tabbed{padding:10px}.mpp-author-tabbed:after{content:"";display:table;clear:both}.mpp-author-tabbed .mpp-social{margin-top:0}.mpp-author-tabbed .mpp-author-social-wrapper{margin-bottom:10px}.mpp-author-tabbed .mpp-author-social-wrapper:after{content:"";display:table;clear:both}.mpp-author-tabbed h1,.mpp-author-tabbed h2,.mpp-author-tabbed h3,.mpp-author-tabbed h4,.mpp-author-tabbed h5,.mpp-author-tabbed h6{clear:none}.mpp-author-tabbed h2{font-size:.8em;font-weight:400;margin-bottom:5px}.mpp-author-tabbed h2:before{display:none}.mpp-author-tabbed .mpp-tab-wrapper{clear:both}.mpp-author-tabbed .mpp-author-heading{float:left}@media only screen and (max-width:600px){.mpp-author-tabbed .mpp-author-heading{float:none;text-align:center;margin:0 auto;width:90%}}.mpp-author-tabbed .mpp-author-social{float:right}@media only screen and (max-width:600px){.mpp-author-tabbed .mpp-author-social{float:none;text-align:center;margin:0 auto}}.mpp-author-tabbed .mpp-author-heading .mpp-author-profile-heading{display:inline-block;background:#42737b;color:#fff;padding:10px 20px;font-size:14px;text-transform:uppercase}@media only screen and (max-width:600px){.mpp-author-tabbed .mpp-author-heading .mpp-author-profile-heading{display:block;margin-bottom:10px}}.mpp-author-tabbed .mpp-author-profile-sub-heading{font-size:14px;line-height:1.1;max-width:150px;text-align:center}.mpp-author-tabbed.round .profile-avatar{border-radius:50%}.mpp-author-tabbed .mpp-profile-image-wrapper{clear:both;position:relative;float:left;line-height:1;z-index:1000;margin-right:30px}.mpp-author-tabbed .mpp-profile-image-wrapper img{min-width:150px;min-height:150px;max-height:150px;max-width:150px}.mpp-author-tabbed .mpp-profile-meta{clear:both;margin:10px 0}.mpp-author-tabbed .mpp-profile-meta:after{content:"";display:table;clear:both}.mpp-author-tabbed .mpp-author-profile-title{color:gray;text-transform:uppercase;font-size:12px}.mpp-author-tabbed .mpp-tabbed-profile-information:after{content:"";display:table;clear:both}.mpp-author-tabbed .mpp-tab{display:none}.mpp-author-tabbed .mpp-tab-active{display:block}.mpp-author-tabbed ul.mpp-author-tabs{position:relative;list-style-type:none;margin:0;padding:0;text-align:center}.mpp-author-tabbed ul.mpp-author-tabs li{cursor:pointer;position:relative;display:inline-block;min-width:200px;background:#42737b;margin:0 5px 0 0;text-align:center;margin-right:10px;color:#fff;padding:10px 20px;font-size:16px}@media only screen and (max-width:500px){.mpp-author-tabbed ul.mpp-author-tabs li{width:100%;display:block}}.mpp-author-tabbed ul.mpp-author-tabs li.active:after{content:"";display:block;position:absolute;bottom:-10px;left:calc(50% - 10px);border-top:10px solid #42737b;border-top-color:#42737b;border-left:10px solid transparent;border-right:10px solid transparent}@media only screen and (max-width:500px){.mpp-author-tabbed ul.mpp-author-tabs li.active:after{display:none}}.mpp-author-tabbed ul.mpp-author-tabs li:last-child{margin-right:0}.mpp-author-tabbed ul.mpp-author-tabs li.mpp-tab-posts{background:#30424b}.mpp-author-tabbed ul.mpp-author-tabs li.mpp-tab-posts.active:after{border-top:10px solid #30424b;border-top-color:#30424b}.mpp-author-tabbed ul.mpp-author-tab-content{list-style-type:none;margin:0;padding:0}.mpp-author-tabbed ul.mpp-author-tab-content li{margin:0}.mpp-author-tabbed ul.mpp-author-tab-content.white a,.mpp-author-tabbed ul.mpp-author-tab-content.white a:hover,.mpp-author-tabbed ul.mpp-author-tab-content.white a:visited{display:block;background:#fff;border:1px solid #f2f2f2;padding:10px 20px;text-decoration:none;color:#333}.mpp-author-tabbed ul.mpp-author-tab-content.white a:hover{background:#f2f2f2}.mpp-author-tabbed ul.mpp-author-tab-content.light a,.mpp-author-tabbed ul.mpp-author-tab-content.light a:hover,.mpp-author-tabbed ul.mpp-author-tab-content.light a:visited{display:block;background:#f7f7f7;border:1px solid #dedede;padding:10px 20px;text-decoration:none;color:#333}.mpp-author-tabbed ul.mpp-author-tab-content.light a:hover{background:#dedede}.mpp-author-tabbed ul.mpp-author-tab-content.black a,.mpp-author-tabbed ul.mpp-author-tab-content.black a:hover,.mpp-author-tabbed ul.mpp-author-tab-content.black a:visited{display:block;background:#333;color:#fff;border:1px solid #1a1a1a;padding:10px 20px;text-decoration:none}.mpp-author-tabbed ul.mpp-author-tab-content.black a:hover{background:#1a1a1a}.mpp-author-tabbed ul.mpp-author-tab-content.magenta a,.mpp-author-tabbed ul.mpp-author-tab-content.magenta a:hover,.mpp-author-tabbed ul.mpp-author-tab-content.magenta a:visited{display:block;background:#f0f;color:#fff;border:1px solid #c0c;padding:10px 20px;text-decoration:none}.mpp-author-tabbed ul.mpp-author-tab-content.magenta a:hover{background:#c0c}.mpp-author-tabbed ul.mpp-author-tab-content.blue a,.mpp-author-tabbed ul.mpp-author-tab-content.blue a:hover,.mpp-author-tabbed ul.mpp-author-tab-content.blue a:visited{display:block;background:#0009c1;color:#fff;border:1px solid #00078e;padding:10px 20px;text-decoration:none}.mpp-author-tabbed ul.mpp-author-tab-content.blue a:hover{background:#00078e}.mpp-author-tabbed ul.mpp-author-tab-content.green a,.mpp-author-tabbed ul.mpp-author-tab-content.green a:hover,.mpp-author-tabbed ul.mpp-author-tab-content.green a:visited{display:block;background:#03ac27;color:#fff;border:1px solid #027a1c;padding:10px 20px;text-decoration:none}.mpp-author-tabbed ul.mpp-author-tab-content.green a:hover{background:#027a1c}.mpp-enhanced-profile-wrap.compact{text-align:center;padding:10px;max-width:400px;margin:0 auto;line-height:1.1}.mpp-enhanced-profile-wrap.compact.center{margin:0 auto}.mpp-enhanced-profile-wrap.compact.left{margin-left:0}.mpp-enhanced-profile-wrap.compact.right{margin-right:0}.mpp-enhanced-profile-wrap.compact .mpp-social svg{margin-right:0}.mpp-enhanced-profile-wrap.compact h2{font-size:.8em;font-weight:400;margin-bottom:5px}.mpp-enhanced-profile-wrap.compact h2:before{display:none}.mpp-enhanced-profile-wrap.compact.round .profile-avatar{border-radius:50%}.mpp-enhanced-profile-wrap.compact .mpp-profile-image-wrapper{position:relative;text-align:center;line-height:1;z-index:1000;min-width:150px;min-height:150px;max-width:150px;max-height:150px;margin:0 auto}.mpp-enhanced-profile-wrap.compact .mpp-profile-text{line-height:1.1}.mpp-enhanced-profile-wrap.compact .mpp-compact-meta{clear:both;margin:10px 0}.mpp-enhanced-profile-wrap.compact .mpp-compact-meta:after{content:"";display:table;clear:both}.mpp-enhanced-profile-wrap.compact .mpp-profile-view-posts{clear:both;display:block;text-align:center;padding:10px 20px;margin-top:20px;margin-right:20px;background-color:#cf6d38;color:#fff;margin-bottom:10px}.mpp-enhanced-profile-wrap.compact .mpp-profile-view-posts a,.mpp-enhanced-profile-wrap.compact .mpp-profile-view-posts a:hover,.mpp-enhanced-profile-wrap.compact .mpp-profile-view-posts a:visited{display:block;width:100%;height:100%;color:#fff;text-decoration:none}.mpp-enhanced-profile-wrap.compact .mpp-profile-view-posts:after{content:"";display:table;clear:both}.mpp-enhanced-profile-wrap.compact .mpp-profile-view-website{display:block;text-align:center;padding:10px 20px;margin-top:20px;background-color:#333;color:#fff}.mpp-enhanced-profile-wrap.compact .mpp-profile-view-website a,.mpp-enhanced-profile-wrap.compact .mpp-profile-view-website a:hover,.mpp-enhanced-profile-wrap.compact .mpp-profile-view-website a:visited{display:block;width:100%;height:100%;color:#fff;text-decoration:none}
.download-box{width:250px;border:1px solid #ccc;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;text-align:center;position:relative;margin:1em auto;box-shadow:0 2px 4px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.4)}.download-box h1{margin:.5em 0!important}.download-box img.wp-post-image{margin:0;padding:0;display:block;width:100%;-moz-border-radius:0;-webkit-border-radius:0;-moz-border-top-left-radius:3px;-moz-border-top-right-radius:3px;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-radius:0;border-top-left-radius:3px;border-top-right-radius:3px;box-shadow:inset 0 1px 0 rgba(255,255,255,.4)}.download-box .download-box-content{padding:0 1em 1em}.download-box .download-count{-moz-border-radius:1em;-webkit-border-radius:1em;border-radius:1em;color:#777;text-shadow:0 1px 0 rgba(255,255,255,.5);background:#ddd;box-shadow:0 2px 4px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.4);position:absolute;top:0;right:0;padding:.6em;width:auto;min-width:1em;font-size:1em;text-align:center;vertical-align:middle;line-height:1em;border:1px solid #bbb;margin:-.5em -.5em 0 0}.download-button{text-align:center;text-decoration:none!important;padding:.75em 1em;color:#fff;display:block;font-size:1.2em;line-height:1.5em;background-color:#09c;background-image:-webkit-linear-gradient(#009fd4,#09c,#0086b2);background-image:-moz-linear-gradient(#009fd4,#09c,#0086b2);-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;text-shadow:0 -1px 0 rgba(0,0,0,.5);box-shadow:0 2px 4px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.4);border:1px solid #0086b2;cursor:pointer}.download-button:hover{color:#fff;background-color:#09c;background-image:-webkit-linear-gradient(#09c,#0086b2);background-image:-moz-linear-gradient(#09c,#0086b2)}.download-button:visited{color:#fff;text-decoration:none}.download-button small{font-size:.8em;opacity:.8;display:block}.filetype-icon{padding-left:19px;background-repeat:no-repeat;background-position:left;background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document.png)}.filetype-pdf{background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document-pdf.png)}.filetype-aif,.filetype-aifc,.filetype-aiff,.filetype-au,.filetype-kar,.filetype-m3u,.filetype-m4r,.filetype-mid,.filetype-midi,.filetype-mp2,.filetype-mp3,.filetype-mpga,.filetype-ra,.filetype-ram,.filetype-rm,.filetype-rpm,.filetype-snd,.filetype-wav,.filetype-wave{background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document-music.png)}.filetype-avi,.filetype-divx,.filetype-mov,.filetype-movie,.filetype-mp4,.filetype-mpe,.filetype-mpeg,.filetype-mpg,.filetype-mxu,.filetype-qt,.filetype-wmv{background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document-film.png)}.filetype-7z,.filetype-gz,.filetype-rar,.filetype-sit,.filetype-tar,.filetype-zip{background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document-zipper.png)}.filetype-csv,.filetype-tsv,.filetype-xls,.filetype-xlsx{background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document-excel.png)}.filetype-doc,.filetype-docx{background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document-word-text.png)}.filetype-ai{background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document-illustrator.png)}.filetype-swf{background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document-flash-movie.png)}.filetype-bmp,.filetype-djv,.filetype-eps,.filetype-gif,.filetype-ief,.filetype-jpe,.filetype-jpeg,.filetype-jpg,.filetype-pbm,.filetype-pgm,.filetype-png,.filetype-pnm,.filetype-ppm,.filetype-ps,.filetype-ras,.filetype-rgb,.filetype-tif,.filetype-tiff,.filetype-wbmp,.filetype-xbm,.filetype-xpm,.filetype-xwd{background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document-image.png)}.filetype-psd{background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document-photoshop.png)}.filetype-ppt,.filetype-pptx{background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document-powerpoint.png)}.filetype-as,.filetype-css,.filetype-htaccess,.filetype-htm,.filetype-html,.filetype-js,.filetype-php,.filetype-sql,.filetype-xml,.filetype-xsl{background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document-code.png)}.filetype-rtf,.filetype-rtx{background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document-text-image.png)}.filetype-txt{background-image:url(//stablekernel.com/wp-content/plugins/download-monitor/assets/css/../images/filetypes/document-text.png)}#content nav.download-monitor-pagination,nav.download-monitor-pagination{text-align:center}#content nav.download-monitor-pagination ul,nav.download-monitor-pagination ul{display:inline-block;white-space:nowrap;padding:0;clear:both;border:1px solid #eee;border-right:0;margin:1px}#content nav.download-monitor-pagination ul li,nav.download-monitor-pagination ul li{border-right:1px solid #eee;padding:0;margin:0;float:left;display:inline;overflow:hidden}#content nav.download-monitor-pagination ul li a,#content nav.download-monitor-pagination ul li span,nav.download-monitor-pagination ul li a,nav.download-monitor-pagination ul li span{margin:0;text-decoration:none;padding:0;line-height:1em;font-size:1em;font-weight:400;padding:.5em;min-width:1em;display:block}#content nav.download-monitor-pagination ul li a:focus,#content nav.download-monitor-pagination ul li a:hover,#content nav.download-monitor-pagination ul li span.current,nav.download-monitor-pagination ul li a:focus,nav.download-monitor-pagination ul li a:hover,nav.download-monitor-pagination ul li span.current{background:#eee;color:#888}.dlm_widget_downloads ul,.dlm_widget_downloads ul li{list-style:none}
@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.5.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 40em) {
  .reveal, .reveal.tiny, .reveal.small, .reveal.large {
    right: auto;
    left: auto;
    margin: 0 auto; } }

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

pre {
  font-family: monospace, monospace;
  font-size: 1em; }

a {
  background-color: transparent; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted; }

b,
strong {
  font-weight: bolder; }

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

img {
  border-style: none; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

fieldset {
  padding: 0.35em 0.75em 0.625em; }

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal; }

progress {
  vertical-align: baseline; }

textarea {
  overflow: auto; }

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

details {
  display: block; }

summary {
  display: list-item; }

template {
  display: none; }

[hidden] {
  display: none; }

.foundation-mq {
  font-family: "small=0em&medium=40em&tablet=48em&large=64em&xlarge=68.75em&xxlarge=90em&phablet=60em"; }

html {
  box-sizing: border-box;
  font-size: 100%; }

*,
*::before,
*::after {
  box-sizing: inherit; }

body {
  margin: 0;
  padding: 0;
  background: #fefefe;
  font-family: "museo-sans", "Avenir Next", "Verdana", sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic; }

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0; }

select {
  box-sizing: border-box;
  width: 100%;
  border-radius: 0; }

.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important; }

button {
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1;
  cursor: auto; }
  [data-whatinput='mouse'] button {
    outline: 0; }

pre {
  overflow: auto; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; }

.is-visible {
  display: block !important; }

.is-hidden {
  display: none !important; }

.grid-container {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 68.75rem;
  margin: 0 auto; }
  @media print, screen and (min-width: 40em) {
    .grid-container {
      padding-right: 1.25rem;
      padding-left: 1.25rem; } }
  .grid-container.fluid {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 100%;
    margin: 0 auto; }
    @media print, screen and (min-width: 40em) {
      .grid-container.fluid {
        padding-right: 1.25rem;
        padding-left: 1.25rem; } }
  .grid-container.full {
    padding-right: 0;
    padding-left: 0;
    max-width: 100%;
    margin: 0 auto; }

.grid-x {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }

.cell {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  min-height: 0px;
  min-width: 0px;
  width: 100%; }
  .cell.auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .cell.shrink {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }

.grid-x > .auto {
  width: auto; }

.grid-x > .shrink {
  width: auto; }

.grid-x > .small-shrink, .grid-x > .small-full, .grid-x > .small-1, .grid-x > .small-2, .grid-x > .small-3, .grid-x > .small-4, .grid-x > .small-5, .grid-x > .small-6, .grid-x > .small-7, .grid-x > .small-8, .grid-x > .small-9, .grid-x > .small-10, .grid-x > .small-11, .grid-x > .small-12 {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto; }

@media print, screen and (min-width: 40em) {
  .grid-x > .medium-shrink, .grid-x > .medium-full, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media print, screen and (min-width: 48em) {
  .grid-x > .tablet-shrink, .grid-x > .tablet-full, .grid-x > .tablet-1, .grid-x > .tablet-2, .grid-x > .tablet-3, .grid-x > .tablet-4, .grid-x > .tablet-5, .grid-x > .tablet-6, .grid-x > .tablet-7, .grid-x > .tablet-8, .grid-x > .tablet-9, .grid-x > .tablet-10, .grid-x > .tablet-11, .grid-x > .tablet-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media print, screen and (min-width: 64em) {
  .grid-x > .large-shrink, .grid-x > .large-full, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media screen and (min-width: 68.75em) {
  .grid-x > .xlarge-shrink, .grid-x > .xlarge-full, .grid-x > .xlarge-1, .grid-x > .xlarge-2, .grid-x > .xlarge-3, .grid-x > .xlarge-4, .grid-x > .xlarge-5, .grid-x > .xlarge-6, .grid-x > .xlarge-7, .grid-x > .xlarge-8, .grid-x > .xlarge-9, .grid-x > .xlarge-10, .grid-x > .xlarge-11, .grid-x > .xlarge-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media screen and (min-width: 90em) {
  .grid-x > .xxlarge-shrink, .grid-x > .xxlarge-full, .grid-x > .xxlarge-1, .grid-x > .xxlarge-2, .grid-x > .xxlarge-3, .grid-x > .xxlarge-4, .grid-x > .xxlarge-5, .grid-x > .xxlarge-6, .grid-x > .xxlarge-7, .grid-x > .xxlarge-8, .grid-x > .xxlarge-9, .grid-x > .xxlarge-10, .grid-x > .xxlarge-11, .grid-x > .xxlarge-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media screen and (min-width: 60em) {
  .grid-x > .phablet-shrink, .grid-x > .phablet-full, .grid-x > .phablet-1, .grid-x > .phablet-2, .grid-x > .phablet-3, .grid-x > .phablet-4, .grid-x > .phablet-5, .grid-x > .phablet-6, .grid-x > .phablet-7, .grid-x > .phablet-8, .grid-x > .phablet-9, .grid-x > .phablet-10, .grid-x > .phablet-11, .grid-x > .phablet-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

.grid-x > .small-1, .grid-x > .small-2, .grid-x > .small-3, .grid-x > .small-4, .grid-x > .small-5, .grid-x > .small-6, .grid-x > .small-7, .grid-x > .small-8, .grid-x > .small-9, .grid-x > .small-10, .grid-x > .small-11, .grid-x > .small-12 {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }

.grid-x > .small-1 {
  width: 8.33333%; }

.grid-x > .small-2 {
  width: 16.66667%; }

.grid-x > .small-3 {
  width: 25%; }

.grid-x > .small-4 {
  width: 33.33333%; }

.grid-x > .small-5 {
  width: 41.66667%; }

.grid-x > .small-6 {
  width: 50%; }

.grid-x > .small-7 {
  width: 58.33333%; }

.grid-x > .small-8 {
  width: 66.66667%; }

.grid-x > .small-9 {
  width: 75%; }

.grid-x > .small-10 {
  width: 83.33333%; }

.grid-x > .small-11 {
  width: 91.66667%; }

.grid-x > .small-12 {
  width: 100%; }

@media print, screen and (min-width: 40em) {
  .grid-x > .medium-auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .medium-shrink, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .medium-shrink {
    width: auto; }
  .grid-x > .medium-1 {
    width: 8.33333%; }
  .grid-x > .medium-2 {
    width: 16.66667%; }
  .grid-x > .medium-3 {
    width: 25%; }
  .grid-x > .medium-4 {
    width: 33.33333%; }
  .grid-x > .medium-5 {
    width: 41.66667%; }
  .grid-x > .medium-6 {
    width: 50%; }
  .grid-x > .medium-7 {
    width: 58.33333%; }
  .grid-x > .medium-8 {
    width: 66.66667%; }
  .grid-x > .medium-9 {
    width: 75%; }
  .grid-x > .medium-10 {
    width: 83.33333%; }
  .grid-x > .medium-11 {
    width: 91.66667%; }
  .grid-x > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 48em) {
  .grid-x > .tablet-auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .tablet-shrink, .grid-x > .tablet-1, .grid-x > .tablet-2, .grid-x > .tablet-3, .grid-x > .tablet-4, .grid-x > .tablet-5, .grid-x > .tablet-6, .grid-x > .tablet-7, .grid-x > .tablet-8, .grid-x > .tablet-9, .grid-x > .tablet-10, .grid-x > .tablet-11, .grid-x > .tablet-12 {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .tablet-shrink {
    width: auto; }
  .grid-x > .tablet-1 {
    width: 8.33333%; }
  .grid-x > .tablet-2 {
    width: 16.66667%; }
  .grid-x > .tablet-3 {
    width: 25%; }
  .grid-x > .tablet-4 {
    width: 33.33333%; }
  .grid-x > .tablet-5 {
    width: 41.66667%; }
  .grid-x > .tablet-6 {
    width: 50%; }
  .grid-x > .tablet-7 {
    width: 58.33333%; }
  .grid-x > .tablet-8 {
    width: 66.66667%; }
  .grid-x > .tablet-9 {
    width: 75%; }
  .grid-x > .tablet-10 {
    width: 83.33333%; }
  .grid-x > .tablet-11 {
    width: 91.66667%; }
  .grid-x > .tablet-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .grid-x > .large-auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .large-shrink, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .large-shrink {
    width: auto; }
  .grid-x > .large-1 {
    width: 8.33333%; }
  .grid-x > .large-2 {
    width: 16.66667%; }
  .grid-x > .large-3 {
    width: 25%; }
  .grid-x > .large-4 {
    width: 33.33333%; }
  .grid-x > .large-5 {
    width: 41.66667%; }
  .grid-x > .large-6 {
    width: 50%; }
  .grid-x > .large-7 {
    width: 58.33333%; }
  .grid-x > .large-8 {
    width: 66.66667%; }
  .grid-x > .large-9 {
    width: 75%; }
  .grid-x > .large-10 {
    width: 83.33333%; }
  .grid-x > .large-11 {
    width: 91.66667%; }
  .grid-x > .large-12 {
    width: 100%; } }

@media screen and (min-width: 68.75em) {
  .grid-x > .xlarge-auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .xlarge-shrink, .grid-x > .xlarge-1, .grid-x > .xlarge-2, .grid-x > .xlarge-3, .grid-x > .xlarge-4, .grid-x > .xlarge-5, .grid-x > .xlarge-6, .grid-x > .xlarge-7, .grid-x > .xlarge-8, .grid-x > .xlarge-9, .grid-x > .xlarge-10, .grid-x > .xlarge-11, .grid-x > .xlarge-12 {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .xlarge-shrink {
    width: auto; }
  .grid-x > .xlarge-1 {
    width: 8.33333%; }
  .grid-x > .xlarge-2 {
    width: 16.66667%; }
  .grid-x > .xlarge-3 {
    width: 25%; }
  .grid-x > .xlarge-4 {
    width: 33.33333%; }
  .grid-x > .xlarge-5 {
    width: 41.66667%; }
  .grid-x > .xlarge-6 {
    width: 50%; }
  .grid-x > .xlarge-7 {
    width: 58.33333%; }
  .grid-x > .xlarge-8 {
    width: 66.66667%; }
  .grid-x > .xlarge-9 {
    width: 75%; }
  .grid-x > .xlarge-10 {
    width: 83.33333%; }
  .grid-x > .xlarge-11 {
    width: 91.66667%; }
  .grid-x > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .grid-x > .xxlarge-auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .xxlarge-shrink, .grid-x > .xxlarge-1, .grid-x > .xxlarge-2, .grid-x > .xxlarge-3, .grid-x > .xxlarge-4, .grid-x > .xxlarge-5, .grid-x > .xxlarge-6, .grid-x > .xxlarge-7, .grid-x > .xxlarge-8, .grid-x > .xxlarge-9, .grid-x > .xxlarge-10, .grid-x > .xxlarge-11, .grid-x > .xxlarge-12 {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .xxlarge-shrink {
    width: auto; }
  .grid-x > .xxlarge-1 {
    width: 8.33333%; }
  .grid-x > .xxlarge-2 {
    width: 16.66667%; }
  .grid-x > .xxlarge-3 {
    width: 25%; }
  .grid-x > .xxlarge-4 {
    width: 33.33333%; }
  .grid-x > .xxlarge-5 {
    width: 41.66667%; }
  .grid-x > .xxlarge-6 {
    width: 50%; }
  .grid-x > .xxlarge-7 {
    width: 58.33333%; }
  .grid-x > .xxlarge-8 {
    width: 66.66667%; }
  .grid-x > .xxlarge-9 {
    width: 75%; }
  .grid-x > .xxlarge-10 {
    width: 83.33333%; }
  .grid-x > .xxlarge-11 {
    width: 91.66667%; }
  .grid-x > .xxlarge-12 {
    width: 100%; } }

@media screen and (min-width: 60em) {
  .grid-x > .phablet-auto {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .phablet-shrink, .grid-x > .phablet-1, .grid-x > .phablet-2, .grid-x > .phablet-3, .grid-x > .phablet-4, .grid-x > .phablet-5, .grid-x > .phablet-6, .grid-x > .phablet-7, .grid-x > .phablet-8, .grid-x > .phablet-9, .grid-x > .phablet-10, .grid-x > .phablet-11, .grid-x > .phablet-12 {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .phablet-shrink {
    width: auto; }
  .grid-x > .phablet-1 {
    width: 8.33333%; }
  .grid-x > .phablet-2 {
    width: 16.66667%; }
  .grid-x > .phablet-3 {
    width: 25%; }
  .grid-x > .phablet-4 {
    width: 33.33333%; }
  .grid-x > .phablet-5 {
    width: 41.66667%; }
  .grid-x > .phablet-6 {
    width: 50%; }
  .grid-x > .phablet-7 {
    width: 58.33333%; }
  .grid-x > .phablet-8 {
    width: 66.66667%; }
  .grid-x > .phablet-9 {
    width: 75%; }
  .grid-x > .phablet-10 {
    width: 83.33333%; }
  .grid-x > .phablet-11 {
    width: 91.66667%; }
  .grid-x > .phablet-12 {
    width: 100%; } }

.grid-margin-x:not(.grid-x) > .cell {
  width: auto; }

.grid-margin-y:not(.grid-y) > .cell {
  height: auto; }

.grid-margin-x {
  margin-left: -0.625rem;
  margin-right: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-x {
      margin-left: -1.25rem;
      margin-right: -1.25rem; } }
  .grid-margin-x > .cell {
    width: calc(100% - 1.25rem);
    margin-left: 0.625rem;
    margin-right: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-x > .cell {
      width: calc(100% - 2.5rem);
      margin-left: 1.25rem;
      margin-right: 1.25rem; } }
  .grid-margin-x > .auto {
    width: auto; }
  .grid-margin-x > .shrink {
    width: auto; }
  .grid-margin-x > .small-1 {
    width: calc(8.33333% - 1.25rem); }
  .grid-margin-x > .small-2 {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x > .small-3 {
    width: calc(25% - 1.25rem); }
  .grid-margin-x > .small-4 {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x > .small-5 {
    width: calc(41.66667% - 1.25rem); }
  .grid-margin-x > .small-6 {
    width: calc(50% - 1.25rem); }
  .grid-margin-x > .small-7 {
    width: calc(58.33333% - 1.25rem); }
  .grid-margin-x > .small-8 {
    width: calc(66.66667% - 1.25rem); }
  .grid-margin-x > .small-9 {
    width: calc(75% - 1.25rem); }
  .grid-margin-x > .small-10 {
    width: calc(83.33333% - 1.25rem); }
  .grid-margin-x > .small-11 {
    width: calc(91.66667% - 1.25rem); }
  .grid-margin-x > .small-12 {
    width: calc(100% - 1.25rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 2.5rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 2.5rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 2.5rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 2.5rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 2.5rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 2.5rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 2.5rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 2.5rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 2.5rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 2.5rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 2.5rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 2.5rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 2.5rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 2.5rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 2.5rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 2.5rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 2.5rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 2.5rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 2.5rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 2.5rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 2.5rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 2.5rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 2.5rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 2.5rem); } }
  @media print, screen and (min-width: 48em) {
    .grid-margin-x > .tablet-auto {
      width: auto; }
    .grid-margin-x > .tablet-shrink {
      width: auto; }
    .grid-margin-x > .tablet-1 {
      width: calc(8.33333% - 2.5rem); }
    .grid-margin-x > .tablet-2 {
      width: calc(16.66667% - 2.5rem); }
    .grid-margin-x > .tablet-3 {
      width: calc(25% - 2.5rem); }
    .grid-margin-x > .tablet-4 {
      width: calc(33.33333% - 2.5rem); }
    .grid-margin-x > .tablet-5 {
      width: calc(41.66667% - 2.5rem); }
    .grid-margin-x > .tablet-6 {
      width: calc(50% - 2.5rem); }
    .grid-margin-x > .tablet-7 {
      width: calc(58.33333% - 2.5rem); }
    .grid-margin-x > .tablet-8 {
      width: calc(66.66667% - 2.5rem); }
    .grid-margin-x > .tablet-9 {
      width: calc(75% - 2.5rem); }
    .grid-margin-x > .tablet-10 {
      width: calc(83.33333% - 2.5rem); }
    .grid-margin-x > .tablet-11 {
      width: calc(91.66667% - 2.5rem); }
    .grid-margin-x > .tablet-12 {
      width: calc(100% - 2.5rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-x > .large-auto {
      width: auto; }
    .grid-margin-x > .large-shrink {
      width: auto; }
    .grid-margin-x > .large-1 {
      width: calc(8.33333% - 2.5rem); }
    .grid-margin-x > .large-2 {
      width: calc(16.66667% - 2.5rem); }
    .grid-margin-x > .large-3 {
      width: calc(25% - 2.5rem); }
    .grid-margin-x > .large-4 {
      width: calc(33.33333% - 2.5rem); }
    .grid-margin-x > .large-5 {
      width: calc(41.66667% - 2.5rem); }
    .grid-margin-x > .large-6 {
      width: calc(50% - 2.5rem); }
    .grid-margin-x > .large-7 {
      width: calc(58.33333% - 2.5rem); }
    .grid-margin-x > .large-8 {
      width: calc(66.66667% - 2.5rem); }
    .grid-margin-x > .large-9 {
      width: calc(75% - 2.5rem); }
    .grid-margin-x > .large-10 {
      width: calc(83.33333% - 2.5rem); }
    .grid-margin-x > .large-11 {
      width: calc(91.66667% - 2.5rem); }
    .grid-margin-x > .large-12 {
      width: calc(100% - 2.5rem); } }
  @media screen and (min-width: 68.75em) {
    .grid-margin-x > .xlarge-auto {
      width: auto; }
    .grid-margin-x > .xlarge-shrink {
      width: auto; }
    .grid-margin-x > .xlarge-1 {
      width: calc(8.33333% - 2.5rem); }
    .grid-margin-x > .xlarge-2 {
      width: calc(16.66667% - 2.5rem); }
    .grid-margin-x > .xlarge-3 {
      width: calc(25% - 2.5rem); }
    .grid-margin-x > .xlarge-4 {
      width: calc(33.33333% - 2.5rem); }
    .grid-margin-x > .xlarge-5 {
      width: calc(41.66667% - 2.5rem); }
    .grid-margin-x > .xlarge-6 {
      width: calc(50% - 2.5rem); }
    .grid-margin-x > .xlarge-7 {
      width: calc(58.33333% - 2.5rem); }
    .grid-margin-x > .xlarge-8 {
      width: calc(66.66667% - 2.5rem); }
    .grid-margin-x > .xlarge-9 {
      width: calc(75% - 2.5rem); }
    .grid-margin-x > .xlarge-10 {
      width: calc(83.33333% - 2.5rem); }
    .grid-margin-x > .xlarge-11 {
      width: calc(91.66667% - 2.5rem); }
    .grid-margin-x > .xlarge-12 {
      width: calc(100% - 2.5rem); } }
  @media screen and (min-width: 90em) {
    .grid-margin-x > .xxlarge-auto {
      width: auto; }
    .grid-margin-x > .xxlarge-shrink {
      width: auto; }
    .grid-margin-x > .xxlarge-1 {
      width: calc(8.33333% - 2.5rem); }
    .grid-margin-x > .xxlarge-2 {
      width: calc(16.66667% - 2.5rem); }
    .grid-margin-x > .xxlarge-3 {
      width: calc(25% - 2.5rem); }
    .grid-margin-x > .xxlarge-4 {
      width: calc(33.33333% - 2.5rem); }
    .grid-margin-x > .xxlarge-5 {
      width: calc(41.66667% - 2.5rem); }
    .grid-margin-x > .xxlarge-6 {
      width: calc(50% - 2.5rem); }
    .grid-margin-x > .xxlarge-7 {
      width: calc(58.33333% - 2.5rem); }
    .grid-margin-x > .xxlarge-8 {
      width: calc(66.66667% - 2.5rem); }
    .grid-margin-x > .xxlarge-9 {
      width: calc(75% - 2.5rem); }
    .grid-margin-x > .xxlarge-10 {
      width: calc(83.33333% - 2.5rem); }
    .grid-margin-x > .xxlarge-11 {
      width: calc(91.66667% - 2.5rem); }
    .grid-margin-x > .xxlarge-12 {
      width: calc(100% - 2.5rem); } }
  @media screen and (min-width: 60em) {
    .grid-margin-x > .phablet-auto {
      width: auto; }
    .grid-margin-x > .phablet-shrink {
      width: auto; }
    .grid-margin-x > .phablet-1 {
      width: calc(8.33333% - 2.5rem); }
    .grid-margin-x > .phablet-2 {
      width: calc(16.66667% - 2.5rem); }
    .grid-margin-x > .phablet-3 {
      width: calc(25% - 2.5rem); }
    .grid-margin-x > .phablet-4 {
      width: calc(33.33333% - 2.5rem); }
    .grid-margin-x > .phablet-5 {
      width: calc(41.66667% - 2.5rem); }
    .grid-margin-x > .phablet-6 {
      width: calc(50% - 2.5rem); }
    .grid-margin-x > .phablet-7 {
      width: calc(58.33333% - 2.5rem); }
    .grid-margin-x > .phablet-8 {
      width: calc(66.66667% - 2.5rem); }
    .grid-margin-x > .phablet-9 {
      width: calc(75% - 2.5rem); }
    .grid-margin-x > .phablet-10 {
      width: calc(83.33333% - 2.5rem); }
    .grid-margin-x > .phablet-11 {
      width: calc(91.66667% - 2.5rem); }
    .grid-margin-x > .phablet-12 {
      width: calc(100% - 2.5rem); } }

.grid-padding-x .grid-padding-x {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -1.25rem;
      margin-left: -1.25rem; } }

.grid-container:not(.full) > .grid-padding-x {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-container:not(.full) > .grid-padding-x {
      margin-right: -1.25rem;
      margin-left: -1.25rem; } }

.grid-padding-x > .cell {
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-x > .cell {
      padding-right: 1.25rem;
      padding-left: 1.25rem; } }

.small-up-1 > .cell {
  width: 100%; }

.small-up-2 > .cell {
  width: 50%; }

.small-up-3 > .cell {
  width: 33.33333%; }

.small-up-4 > .cell {
  width: 25%; }

.small-up-5 > .cell {
  width: 20%; }

.small-up-6 > .cell {
  width: 16.66667%; }

.small-up-7 > .cell {
  width: 14.28571%; }

.small-up-8 > .cell {
  width: 12.5%; }

@media print, screen and (min-width: 40em) {
  .medium-up-1 > .cell {
    width: 100%; }
  .medium-up-2 > .cell {
    width: 50%; }
  .medium-up-3 > .cell {
    width: 33.33333%; }
  .medium-up-4 > .cell {
    width: 25%; }
  .medium-up-5 > .cell {
    width: 20%; }
  .medium-up-6 > .cell {
    width: 16.66667%; }
  .medium-up-7 > .cell {
    width: 14.28571%; }
  .medium-up-8 > .cell {
    width: 12.5%; } }

@media print, screen and (min-width: 48em) {
  .tablet-up-1 > .cell {
    width: 100%; }
  .tablet-up-2 > .cell {
    width: 50%; }
  .tablet-up-3 > .cell {
    width: 33.33333%; }
  .tablet-up-4 > .cell {
    width: 25%; }
  .tablet-up-5 > .cell {
    width: 20%; }
  .tablet-up-6 > .cell {
    width: 16.66667%; }
  .tablet-up-7 > .cell {
    width: 14.28571%; }
  .tablet-up-8 > .cell {
    width: 12.5%; } }

@media print, screen and (min-width: 64em) {
  .large-up-1 > .cell {
    width: 100%; }
  .large-up-2 > .cell {
    width: 50%; }
  .large-up-3 > .cell {
    width: 33.33333%; }
  .large-up-4 > .cell {
    width: 25%; }
  .large-up-5 > .cell {
    width: 20%; }
  .large-up-6 > .cell {
    width: 16.66667%; }
  .large-up-7 > .cell {
    width: 14.28571%; }
  .large-up-8 > .cell {
    width: 12.5%; } }

@media screen and (min-width: 68.75em) {
  .xlarge-up-1 > .cell {
    width: 100%; }
  .xlarge-up-2 > .cell {
    width: 50%; }
  .xlarge-up-3 > .cell {
    width: 33.33333%; }
  .xlarge-up-4 > .cell {
    width: 25%; }
  .xlarge-up-5 > .cell {
    width: 20%; }
  .xlarge-up-6 > .cell {
    width: 16.66667%; }
  .xlarge-up-7 > .cell {
    width: 14.28571%; }
  .xlarge-up-8 > .cell {
    width: 12.5%; } }

@media screen and (min-width: 90em) {
  .xxlarge-up-1 > .cell {
    width: 100%; }
  .xxlarge-up-2 > .cell {
    width: 50%; }
  .xxlarge-up-3 > .cell {
    width: 33.33333%; }
  .xxlarge-up-4 > .cell {
    width: 25%; }
  .xxlarge-up-5 > .cell {
    width: 20%; }
  .xxlarge-up-6 > .cell {
    width: 16.66667%; }
  .xxlarge-up-7 > .cell {
    width: 14.28571%; }
  .xxlarge-up-8 > .cell {
    width: 12.5%; } }

@media screen and (min-width: 60em) {
  .phablet-up-1 > .cell {
    width: 100%; }
  .phablet-up-2 > .cell {
    width: 50%; }
  .phablet-up-3 > .cell {
    width: 33.33333%; }
  .phablet-up-4 > .cell {
    width: 25%; }
  .phablet-up-5 > .cell {
    width: 20%; }
  .phablet-up-6 > .cell {
    width: 16.66667%; }
  .phablet-up-7 > .cell {
    width: 14.28571%; }
  .phablet-up-8 > .cell {
    width: 12.5%; } }

.grid-margin-x.small-up-1 > .cell {
  width: calc(100% - 1.25rem); }

.grid-margin-x.small-up-2 > .cell {
  width: calc(50% - 1.25rem); }

.grid-margin-x.small-up-3 > .cell {
  width: calc(33.33333% - 1.25rem); }

.grid-margin-x.small-up-4 > .cell {
  width: calc(25% - 1.25rem); }

.grid-margin-x.small-up-5 > .cell {
  width: calc(20% - 1.25rem); }

.grid-margin-x.small-up-6 > .cell {
  width: calc(16.66667% - 1.25rem); }

.grid-margin-x.small-up-7 > .cell {
  width: calc(14.28571% - 1.25rem); }

.grid-margin-x.small-up-8 > .cell {
  width: calc(12.5% - 1.25rem); }

@media print, screen and (min-width: 40em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 2.5rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 2.5rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 2.5rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 2.5rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 2.5rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 2.5rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 2.5rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 2.5rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 2.5rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 2.5rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 2.5rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 2.5rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 2.5rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 2.5rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 2.5rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 2.5rem); } }

@media print, screen and (min-width: 48em) {
  .grid-margin-x.tablet-up-1 > .cell {
    width: calc(100% - 2.5rem); }
  .grid-margin-x.tablet-up-2 > .cell {
    width: calc(50% - 2.5rem); }
  .grid-margin-x.tablet-up-3 > .cell {
    width: calc(33.33333% - 2.5rem); }
  .grid-margin-x.tablet-up-4 > .cell {
    width: calc(25% - 2.5rem); }
  .grid-margin-x.tablet-up-5 > .cell {
    width: calc(20% - 2.5rem); }
  .grid-margin-x.tablet-up-6 > .cell {
    width: calc(16.66667% - 2.5rem); }
  .grid-margin-x.tablet-up-7 > .cell {
    width: calc(14.28571% - 2.5rem); }
  .grid-margin-x.tablet-up-8 > .cell {
    width: calc(12.5% - 2.5rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-x.large-up-1 > .cell {
    width: calc(100% - 2.5rem); }
  .grid-margin-x.large-up-2 > .cell {
    width: calc(50% - 2.5rem); }
  .grid-margin-x.large-up-3 > .cell {
    width: calc(33.33333% - 2.5rem); }
  .grid-margin-x.large-up-4 > .cell {
    width: calc(25% - 2.5rem); }
  .grid-margin-x.large-up-5 > .cell {
    width: calc(20% - 2.5rem); }
  .grid-margin-x.large-up-6 > .cell {
    width: calc(16.66667% - 2.5rem); }
  .grid-margin-x.large-up-7 > .cell {
    width: calc(14.28571% - 2.5rem); }
  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 2.5rem); } }

@media screen and (min-width: 68.75em) {
  .grid-margin-x.xlarge-up-1 > .cell {
    width: calc(100% - 2.5rem); }
  .grid-margin-x.xlarge-up-2 > .cell {
    width: calc(50% - 2.5rem); }
  .grid-margin-x.xlarge-up-3 > .cell {
    width: calc(33.33333% - 2.5rem); }
  .grid-margin-x.xlarge-up-4 > .cell {
    width: calc(25% - 2.5rem); }
  .grid-margin-x.xlarge-up-5 > .cell {
    width: calc(20% - 2.5rem); }
  .grid-margin-x.xlarge-up-6 > .cell {
    width: calc(16.66667% - 2.5rem); }
  .grid-margin-x.xlarge-up-7 > .cell {
    width: calc(14.28571% - 2.5rem); }
  .grid-margin-x.xlarge-up-8 > .cell {
    width: calc(12.5% - 2.5rem); } }

@media screen and (min-width: 90em) {
  .grid-margin-x.xxlarge-up-1 > .cell {
    width: calc(100% - 2.5rem); }
  .grid-margin-x.xxlarge-up-2 > .cell {
    width: calc(50% - 2.5rem); }
  .grid-margin-x.xxlarge-up-3 > .cell {
    width: calc(33.33333% - 2.5rem); }
  .grid-margin-x.xxlarge-up-4 > .cell {
    width: calc(25% - 2.5rem); }
  .grid-margin-x.xxlarge-up-5 > .cell {
    width: calc(20% - 2.5rem); }
  .grid-margin-x.xxlarge-up-6 > .cell {
    width: calc(16.66667% - 2.5rem); }
  .grid-margin-x.xxlarge-up-7 > .cell {
    width: calc(14.28571% - 2.5rem); }
  .grid-margin-x.xxlarge-up-8 > .cell {
    width: calc(12.5% - 2.5rem); } }

@media screen and (min-width: 60em) {
  .grid-margin-x.phablet-up-1 > .cell {
    width: calc(100% - 2.5rem); }
  .grid-margin-x.phablet-up-2 > .cell {
    width: calc(50% - 2.5rem); }
  .grid-margin-x.phablet-up-3 > .cell {
    width: calc(33.33333% - 2.5rem); }
  .grid-margin-x.phablet-up-4 > .cell {
    width: calc(25% - 2.5rem); }
  .grid-margin-x.phablet-up-5 > .cell {
    width: calc(20% - 2.5rem); }
  .grid-margin-x.phablet-up-6 > .cell {
    width: calc(16.66667% - 2.5rem); }
  .grid-margin-x.phablet-up-7 > .cell {
    width: calc(14.28571% - 2.5rem); }
  .grid-margin-x.phablet-up-8 > .cell {
    width: calc(12.5% - 2.5rem); } }

.small-margin-collapse {
  margin-right: 0;
  margin-left: 0; }
  .small-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0; }
  .small-margin-collapse > .small-1 {
    width: 8.33333%; }
  .small-margin-collapse > .small-2 {
    width: 16.66667%; }
  .small-margin-collapse > .small-3 {
    width: 25%; }
  .small-margin-collapse > .small-4 {
    width: 33.33333%; }
  .small-margin-collapse > .small-5 {
    width: 41.66667%; }
  .small-margin-collapse > .small-6 {
    width: 50%; }
  .small-margin-collapse > .small-7 {
    width: 58.33333%; }
  .small-margin-collapse > .small-8 {
    width: 66.66667%; }
  .small-margin-collapse > .small-9 {
    width: 75%; }
  .small-margin-collapse > .small-10 {
    width: 83.33333%; }
  .small-margin-collapse > .small-11 {
    width: 91.66667%; }
  .small-margin-collapse > .small-12 {
    width: 100%; }
  @media print, screen and (min-width: 40em) {
    .small-margin-collapse > .medium-1 {
      width: 8.33333%; }
    .small-margin-collapse > .medium-2 {
      width: 16.66667%; }
    .small-margin-collapse > .medium-3 {
      width: 25%; }
    .small-margin-collapse > .medium-4 {
      width: 33.33333%; }
    .small-margin-collapse > .medium-5 {
      width: 41.66667%; }
    .small-margin-collapse > .medium-6 {
      width: 50%; }
    .small-margin-collapse > .medium-7 {
      width: 58.33333%; }
    .small-margin-collapse > .medium-8 {
      width: 66.66667%; }
    .small-margin-collapse > .medium-9 {
      width: 75%; }
    .small-margin-collapse > .medium-10 {
      width: 83.33333%; }
    .small-margin-collapse > .medium-11 {
      width: 91.66667%; }
    .small-margin-collapse > .medium-12 {
      width: 100%; } }
  @media print, screen and (min-width: 48em) {
    .small-margin-collapse > .tablet-1 {
      width: 8.33333%; }
    .small-margin-collapse > .tablet-2 {
      width: 16.66667%; }
    .small-margin-collapse > .tablet-3 {
      width: 25%; }
    .small-margin-collapse > .tablet-4 {
      width: 33.33333%; }
    .small-margin-collapse > .tablet-5 {
      width: 41.66667%; }
    .small-margin-collapse > .tablet-6 {
      width: 50%; }
    .small-margin-collapse > .tablet-7 {
      width: 58.33333%; }
    .small-margin-collapse > .tablet-8 {
      width: 66.66667%; }
    .small-margin-collapse > .tablet-9 {
      width: 75%; }
    .small-margin-collapse > .tablet-10 {
      width: 83.33333%; }
    .small-margin-collapse > .tablet-11 {
      width: 91.66667%; }
    .small-margin-collapse > .tablet-12 {
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .small-margin-collapse > .large-1 {
      width: 8.33333%; }
    .small-margin-collapse > .large-2 {
      width: 16.66667%; }
    .small-margin-collapse > .large-3 {
      width: 25%; }
    .small-margin-collapse > .large-4 {
      width: 33.33333%; }
    .small-margin-collapse > .large-5 {
      width: 41.66667%; }
    .small-margin-collapse > .large-6 {
      width: 50%; }
    .small-margin-collapse > .large-7 {
      width: 58.33333%; }
    .small-margin-collapse > .large-8 {
      width: 66.66667%; }
    .small-margin-collapse > .large-9 {
      width: 75%; }
    .small-margin-collapse > .large-10 {
      width: 83.33333%; }
    .small-margin-collapse > .large-11 {
      width: 91.66667%; }
    .small-margin-collapse > .large-12 {
      width: 100%; } }
  @media screen and (min-width: 68.75em) {
    .small-margin-collapse > .xlarge-1 {
      width: 8.33333%; }
    .small-margin-collapse > .xlarge-2 {
      width: 16.66667%; }
    .small-margin-collapse > .xlarge-3 {
      width: 25%; }
    .small-margin-collapse > .xlarge-4 {
      width: 33.33333%; }
    .small-margin-collapse > .xlarge-5 {
      width: 41.66667%; }
    .small-margin-collapse > .xlarge-6 {
      width: 50%; }
    .small-margin-collapse > .xlarge-7 {
      width: 58.33333%; }
    .small-margin-collapse > .xlarge-8 {
      width: 66.66667%; }
    .small-margin-collapse > .xlarge-9 {
      width: 75%; }
    .small-margin-collapse > .xlarge-10 {
      width: 83.33333%; }
    .small-margin-collapse > .xlarge-11 {
      width: 91.66667%; }
    .small-margin-collapse > .xlarge-12 {
      width: 100%; } }
  @media screen and (min-width: 90em) {
    .small-margin-collapse > .xxlarge-1 {
      width: 8.33333%; }
    .small-margin-collapse > .xxlarge-2 {
      width: 16.66667%; }
    .small-margin-collapse > .xxlarge-3 {
      width: 25%; }
    .small-margin-collapse > .xxlarge-4 {
      width: 33.33333%; }
    .small-margin-collapse > .xxlarge-5 {
      width: 41.66667%; }
    .small-margin-collapse > .xxlarge-6 {
      width: 50%; }
    .small-margin-collapse > .xxlarge-7 {
      width: 58.33333%; }
    .small-margin-collapse > .xxlarge-8 {
      width: 66.66667%; }
    .small-margin-collapse > .xxlarge-9 {
      width: 75%; }
    .small-margin-collapse > .xxlarge-10 {
      width: 83.33333%; }
    .small-margin-collapse > .xxlarge-11 {
      width: 91.66667%; }
    .small-margin-collapse > .xxlarge-12 {
      width: 100%; } }
  @media screen and (min-width: 60em) {
    .small-margin-collapse > .phablet-1 {
      width: 8.33333%; }
    .small-margin-collapse > .phablet-2 {
      width: 16.66667%; }
    .small-margin-collapse > .phablet-3 {
      width: 25%; }
    .small-margin-collapse > .phablet-4 {
      width: 33.33333%; }
    .small-margin-collapse > .phablet-5 {
      width: 41.66667%; }
    .small-margin-collapse > .phablet-6 {
      width: 50%; }
    .small-margin-collapse > .phablet-7 {
      width: 58.33333%; }
    .small-margin-collapse > .phablet-8 {
      width: 66.66667%; }
    .small-margin-collapse > .phablet-9 {
      width: 75%; }
    .small-margin-collapse > .phablet-10 {
      width: 83.33333%; }
    .small-margin-collapse > .phablet-11 {
      width: 91.66667%; }
    .small-margin-collapse > .phablet-12 {
      width: 100%; } }

.small-padding-collapse {
  margin-right: 0;
  margin-left: 0; }
  .small-padding-collapse > .cell {
    padding-right: 0;
    padding-left: 0; }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .medium-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse > .small-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .small-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .small-3 {
    width: 25%; }
  .medium-margin-collapse > .small-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .small-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .small-6 {
    width: 50%; }
  .medium-margin-collapse > .small-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .small-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .small-9 {
    width: 75%; }
  .medium-margin-collapse > .small-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .small-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .medium-3 {
    width: 25%; }
  .medium-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .medium-6 {
    width: 50%; }
  .medium-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .medium-9 {
    width: 75%; }
  .medium-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 48em) {
  .medium-margin-collapse > .tablet-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .tablet-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .tablet-3 {
    width: 25%; }
  .medium-margin-collapse > .tablet-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .tablet-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .tablet-6 {
    width: 50%; }
  .medium-margin-collapse > .tablet-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .tablet-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .tablet-9 {
    width: 75%; }
  .medium-margin-collapse > .tablet-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .tablet-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .tablet-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .medium-margin-collapse > .large-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .large-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .large-3 {
    width: 25%; }
  .medium-margin-collapse > .large-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .large-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .large-6 {
    width: 50%; }
  .medium-margin-collapse > .large-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .large-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .large-9 {
    width: 75%; }
  .medium-margin-collapse > .large-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .large-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 68.75em) {
  .medium-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .xlarge-3 {
    width: 25%; }
  .medium-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .xlarge-6 {
    width: 50%; }
  .medium-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .xlarge-9 {
    width: 75%; }
  .medium-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .medium-margin-collapse > .xxlarge-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .xxlarge-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .xxlarge-3 {
    width: 25%; }
  .medium-margin-collapse > .xxlarge-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .xxlarge-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .xxlarge-6 {
    width: 50%; }
  .medium-margin-collapse > .xxlarge-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .xxlarge-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .xxlarge-9 {
    width: 75%; }
  .medium-margin-collapse > .xxlarge-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .xxlarge-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .xxlarge-12 {
    width: 100%; } }

@media screen and (min-width: 60em) {
  .medium-margin-collapse > .phablet-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .phablet-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .phablet-3 {
    width: 25%; }
  .medium-margin-collapse > .phablet-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .phablet-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .phablet-6 {
    width: 50%; }
  .medium-margin-collapse > .phablet-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .phablet-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .phablet-9 {
    width: 75%; }
  .medium-margin-collapse > .phablet-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .phablet-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .phablet-12 {
    width: 100%; } }

@media print, screen and (min-width: 40em) {
  .medium-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .medium-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media print, screen and (min-width: 48em) {
  .tablet-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .tablet-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media print, screen and (min-width: 48em) {
  .tablet-margin-collapse > .small-1 {
    width: 8.33333%; }
  .tablet-margin-collapse > .small-2 {
    width: 16.66667%; }
  .tablet-margin-collapse > .small-3 {
    width: 25%; }
  .tablet-margin-collapse > .small-4 {
    width: 33.33333%; }
  .tablet-margin-collapse > .small-5 {
    width: 41.66667%; }
  .tablet-margin-collapse > .small-6 {
    width: 50%; }
  .tablet-margin-collapse > .small-7 {
    width: 58.33333%; }
  .tablet-margin-collapse > .small-8 {
    width: 66.66667%; }
  .tablet-margin-collapse > .small-9 {
    width: 75%; }
  .tablet-margin-collapse > .small-10 {
    width: 83.33333%; }
  .tablet-margin-collapse > .small-11 {
    width: 91.66667%; }
  .tablet-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 48em) {
  .tablet-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .tablet-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .tablet-margin-collapse > .medium-3 {
    width: 25%; }
  .tablet-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .tablet-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .tablet-margin-collapse > .medium-6 {
    width: 50%; }
  .tablet-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .tablet-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .tablet-margin-collapse > .medium-9 {
    width: 75%; }
  .tablet-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .tablet-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .tablet-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 48em) {
  .tablet-margin-collapse > .tablet-1 {
    width: 8.33333%; }
  .tablet-margin-collapse > .tablet-2 {
    width: 16.66667%; }
  .tablet-margin-collapse > .tablet-3 {
    width: 25%; }
  .tablet-margin-collapse > .tablet-4 {
    width: 33.33333%; }
  .tablet-margin-collapse > .tablet-5 {
    width: 41.66667%; }
  .tablet-margin-collapse > .tablet-6 {
    width: 50%; }
  .tablet-margin-collapse > .tablet-7 {
    width: 58.33333%; }
  .tablet-margin-collapse > .tablet-8 {
    width: 66.66667%; }
  .tablet-margin-collapse > .tablet-9 {
    width: 75%; }
  .tablet-margin-collapse > .tablet-10 {
    width: 83.33333%; }
  .tablet-margin-collapse > .tablet-11 {
    width: 91.66667%; }
  .tablet-margin-collapse > .tablet-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .tablet-margin-collapse > .large-1 {
    width: 8.33333%; }
  .tablet-margin-collapse > .large-2 {
    width: 16.66667%; }
  .tablet-margin-collapse > .large-3 {
    width: 25%; }
  .tablet-margin-collapse > .large-4 {
    width: 33.33333%; }
  .tablet-margin-collapse > .large-5 {
    width: 41.66667%; }
  .tablet-margin-collapse > .large-6 {
    width: 50%; }
  .tablet-margin-collapse > .large-7 {
    width: 58.33333%; }
  .tablet-margin-collapse > .large-8 {
    width: 66.66667%; }
  .tablet-margin-collapse > .large-9 {
    width: 75%; }
  .tablet-margin-collapse > .large-10 {
    width: 83.33333%; }
  .tablet-margin-collapse > .large-11 {
    width: 91.66667%; }
  .tablet-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 68.75em) {
  .tablet-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .tablet-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .tablet-margin-collapse > .xlarge-3 {
    width: 25%; }
  .tablet-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .tablet-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .tablet-margin-collapse > .xlarge-6 {
    width: 50%; }
  .tablet-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .tablet-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .tablet-margin-collapse > .xlarge-9 {
    width: 75%; }
  .tablet-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .tablet-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .tablet-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .tablet-margin-collapse > .xxlarge-1 {
    width: 8.33333%; }
  .tablet-margin-collapse > .xxlarge-2 {
    width: 16.66667%; }
  .tablet-margin-collapse > .xxlarge-3 {
    width: 25%; }
  .tablet-margin-collapse > .xxlarge-4 {
    width: 33.33333%; }
  .tablet-margin-collapse > .xxlarge-5 {
    width: 41.66667%; }
  .tablet-margin-collapse > .xxlarge-6 {
    width: 50%; }
  .tablet-margin-collapse > .xxlarge-7 {
    width: 58.33333%; }
  .tablet-margin-collapse > .xxlarge-8 {
    width: 66.66667%; }
  .tablet-margin-collapse > .xxlarge-9 {
    width: 75%; }
  .tablet-margin-collapse > .xxlarge-10 {
    width: 83.33333%; }
  .tablet-margin-collapse > .xxlarge-11 {
    width: 91.66667%; }
  .tablet-margin-collapse > .xxlarge-12 {
    width: 100%; } }

@media screen and (min-width: 60em) {
  .tablet-margin-collapse > .phablet-1 {
    width: 8.33333%; }
  .tablet-margin-collapse > .phablet-2 {
    width: 16.66667%; }
  .tablet-margin-collapse > .phablet-3 {
    width: 25%; }
  .tablet-margin-collapse > .phablet-4 {
    width: 33.33333%; }
  .tablet-margin-collapse > .phablet-5 {
    width: 41.66667%; }
  .tablet-margin-collapse > .phablet-6 {
    width: 50%; }
  .tablet-margin-collapse > .phablet-7 {
    width: 58.33333%; }
  .tablet-margin-collapse > .phablet-8 {
    width: 66.66667%; }
  .tablet-margin-collapse > .phablet-9 {
    width: 75%; }
  .tablet-margin-collapse > .phablet-10 {
    width: 83.33333%; }
  .tablet-margin-collapse > .phablet-11 {
    width: 91.66667%; }
  .tablet-margin-collapse > .phablet-12 {
    width: 100%; } }

@media print, screen and (min-width: 48em) {
  .tablet-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .tablet-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .large-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .small-1 {
    width: 8.33333%; }
  .large-margin-collapse > .small-2 {
    width: 16.66667%; }
  .large-margin-collapse > .small-3 {
    width: 25%; }
  .large-margin-collapse > .small-4 {
    width: 33.33333%; }
  .large-margin-collapse > .small-5 {
    width: 41.66667%; }
  .large-margin-collapse > .small-6 {
    width: 50%; }
  .large-margin-collapse > .small-7 {
    width: 58.33333%; }
  .large-margin-collapse > .small-8 {
    width: 66.66667%; }
  .large-margin-collapse > .small-9 {
    width: 75%; }
  .large-margin-collapse > .small-10 {
    width: 83.33333%; }
  .large-margin-collapse > .small-11 {
    width: 91.66667%; }
  .large-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .large-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .large-margin-collapse > .medium-3 {
    width: 25%; }
  .large-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .large-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .large-margin-collapse > .medium-6 {
    width: 50%; }
  .large-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .large-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .large-margin-collapse > .medium-9 {
    width: 75%; }
  .large-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .large-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .large-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .tablet-1 {
    width: 8.33333%; }
  .large-margin-collapse > .tablet-2 {
    width: 16.66667%; }
  .large-margin-collapse > .tablet-3 {
    width: 25%; }
  .large-margin-collapse > .tablet-4 {
    width: 33.33333%; }
  .large-margin-collapse > .tablet-5 {
    width: 41.66667%; }
  .large-margin-collapse > .tablet-6 {
    width: 50%; }
  .large-margin-collapse > .tablet-7 {
    width: 58.33333%; }
  .large-margin-collapse > .tablet-8 {
    width: 66.66667%; }
  .large-margin-collapse > .tablet-9 {
    width: 75%; }
  .large-margin-collapse > .tablet-10 {
    width: 83.33333%; }
  .large-margin-collapse > .tablet-11 {
    width: 91.66667%; }
  .large-margin-collapse > .tablet-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .large-1 {
    width: 8.33333%; }
  .large-margin-collapse > .large-2 {
    width: 16.66667%; }
  .large-margin-collapse > .large-3 {
    width: 25%; }
  .large-margin-collapse > .large-4 {
    width: 33.33333%; }
  .large-margin-collapse > .large-5 {
    width: 41.66667%; }
  .large-margin-collapse > .large-6 {
    width: 50%; }
  .large-margin-collapse > .large-7 {
    width: 58.33333%; }
  .large-margin-collapse > .large-8 {
    width: 66.66667%; }
  .large-margin-collapse > .large-9 {
    width: 75%; }
  .large-margin-collapse > .large-10 {
    width: 83.33333%; }
  .large-margin-collapse > .large-11 {
    width: 91.66667%; }
  .large-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 68.75em) {
  .large-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .large-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .large-margin-collapse > .xlarge-3 {
    width: 25%; }
  .large-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .large-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .large-margin-collapse > .xlarge-6 {
    width: 50%; }
  .large-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .large-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .large-margin-collapse > .xlarge-9 {
    width: 75%; }
  .large-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .large-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .large-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .large-margin-collapse > .xxlarge-1 {
    width: 8.33333%; }
  .large-margin-collapse > .xxlarge-2 {
    width: 16.66667%; }
  .large-margin-collapse > .xxlarge-3 {
    width: 25%; }
  .large-margin-collapse > .xxlarge-4 {
    width: 33.33333%; }
  .large-margin-collapse > .xxlarge-5 {
    width: 41.66667%; }
  .large-margin-collapse > .xxlarge-6 {
    width: 50%; }
  .large-margin-collapse > .xxlarge-7 {
    width: 58.33333%; }
  .large-margin-collapse > .xxlarge-8 {
    width: 66.66667%; }
  .large-margin-collapse > .xxlarge-9 {
    width: 75%; }
  .large-margin-collapse > .xxlarge-10 {
    width: 83.33333%; }
  .large-margin-collapse > .xxlarge-11 {
    width: 91.66667%; }
  .large-margin-collapse > .xxlarge-12 {
    width: 100%; } }

@media screen and (min-width: 60em) {
  .large-margin-collapse > .phablet-1 {
    width: 8.33333%; }
  .large-margin-collapse > .phablet-2 {
    width: 16.66667%; }
  .large-margin-collapse > .phablet-3 {
    width: 25%; }
  .large-margin-collapse > .phablet-4 {
    width: 33.33333%; }
  .large-margin-collapse > .phablet-5 {
    width: 41.66667%; }
  .large-margin-collapse > .phablet-6 {
    width: 50%; }
  .large-margin-collapse > .phablet-7 {
    width: 58.33333%; }
  .large-margin-collapse > .phablet-8 {
    width: 66.66667%; }
  .large-margin-collapse > .phablet-9 {
    width: 75%; }
  .large-margin-collapse > .phablet-10 {
    width: 83.33333%; }
  .large-margin-collapse > .phablet-11 {
    width: 91.66667%; }
  .large-margin-collapse > .phablet-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .large-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media screen and (min-width: 68.75em) {
  .xlarge-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .xlarge-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media screen and (min-width: 68.75em) {
  .xlarge-margin-collapse > .small-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .small-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .small-3 {
    width: 25%; }
  .xlarge-margin-collapse > .small-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .small-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .small-6 {
    width: 50%; }
  .xlarge-margin-collapse > .small-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .small-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .small-9 {
    width: 75%; }
  .xlarge-margin-collapse > .small-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .small-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .small-12 {
    width: 100%; } }

@media screen and (min-width: 68.75em) {
  .xlarge-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .medium-3 {
    width: 25%; }
  .xlarge-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .medium-6 {
    width: 50%; }
  .xlarge-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .medium-9 {
    width: 75%; }
  .xlarge-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .medium-12 {
    width: 100%; } }

@media screen and (min-width: 68.75em) {
  .xlarge-margin-collapse > .tablet-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .tablet-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .tablet-3 {
    width: 25%; }
  .xlarge-margin-collapse > .tablet-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .tablet-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .tablet-6 {
    width: 50%; }
  .xlarge-margin-collapse > .tablet-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .tablet-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .tablet-9 {
    width: 75%; }
  .xlarge-margin-collapse > .tablet-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .tablet-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .tablet-12 {
    width: 100%; } }

@media screen and (min-width: 68.75em) {
  .xlarge-margin-collapse > .large-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .large-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .large-3 {
    width: 25%; }
  .xlarge-margin-collapse > .large-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .large-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .large-6 {
    width: 50%; }
  .xlarge-margin-collapse > .large-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .large-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .large-9 {
    width: 75%; }
  .xlarge-margin-collapse > .large-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .large-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 68.75em) {
  .xlarge-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .xlarge-3 {
    width: 25%; }
  .xlarge-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .xlarge-6 {
    width: 50%; }
  .xlarge-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .xlarge-9 {
    width: 75%; }
  .xlarge-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xlarge-margin-collapse > .xxlarge-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .xxlarge-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .xxlarge-3 {
    width: 25%; }
  .xlarge-margin-collapse > .xxlarge-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .xxlarge-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .xxlarge-6 {
    width: 50%; }
  .xlarge-margin-collapse > .xxlarge-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .xxlarge-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .xxlarge-9 {
    width: 75%; }
  .xlarge-margin-collapse > .xxlarge-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .xxlarge-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .xxlarge-12 {
    width: 100%; } }

@media screen and (min-width: 60em) {
  .xlarge-margin-collapse > .phablet-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .phablet-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .phablet-3 {
    width: 25%; }
  .xlarge-margin-collapse > .phablet-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .phablet-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .phablet-6 {
    width: 50%; }
  .xlarge-margin-collapse > .phablet-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .phablet-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .phablet-9 {
    width: 75%; }
  .xlarge-margin-collapse > .phablet-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .phablet-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .phablet-12 {
    width: 100%; } }

@media screen and (min-width: 68.75em) {
  .xlarge-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .xlarge-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .xxlarge-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .small-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .small-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .small-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .small-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .small-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .small-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .small-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .small-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .small-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .small-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .small-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .small-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .medium-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .medium-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .medium-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .medium-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .tablet-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .tablet-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .tablet-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .tablet-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .tablet-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .tablet-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .tablet-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .tablet-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .tablet-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .tablet-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .tablet-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .tablet-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .large-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .large-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .large-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .large-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .large-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .large-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .large-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .large-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .large-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .large-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .large-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .xlarge-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .xlarge-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .xlarge-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-margin-collapse > .xxlarge-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .xxlarge-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .xxlarge-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .xxlarge-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .xxlarge-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .xxlarge-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .xxlarge-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .xxlarge-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .xxlarge-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .xxlarge-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .xxlarge-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .xxlarge-12 {
    width: 100%; } }

@media screen and (min-width: 60em) {
  .xxlarge-margin-collapse > .phablet-1 {
    width: 8.33333%; }
  .xxlarge-margin-collapse > .phablet-2 {
    width: 16.66667%; }
  .xxlarge-margin-collapse > .phablet-3 {
    width: 25%; }
  .xxlarge-margin-collapse > .phablet-4 {
    width: 33.33333%; }
  .xxlarge-margin-collapse > .phablet-5 {
    width: 41.66667%; }
  .xxlarge-margin-collapse > .phablet-6 {
    width: 50%; }
  .xxlarge-margin-collapse > .phablet-7 {
    width: 58.33333%; }
  .xxlarge-margin-collapse > .phablet-8 {
    width: 66.66667%; }
  .xxlarge-margin-collapse > .phablet-9 {
    width: 75%; }
  .xxlarge-margin-collapse > .phablet-10 {
    width: 83.33333%; }
  .xxlarge-margin-collapse > .phablet-11 {
    width: 91.66667%; }
  .xxlarge-margin-collapse > .phablet-12 {
    width: 100%; } }

@media screen and (min-width: 90em) {
  .xxlarge-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .xxlarge-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media screen and (min-width: 60em) {
  .phablet-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .phablet-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media screen and (min-width: 60em) {
  .phablet-margin-collapse > .small-1 {
    width: 8.33333%; }
  .phablet-margin-collapse > .small-2 {
    width: 16.66667%; }
  .phablet-margin-collapse > .small-3 {
    width: 25%; }
  .phablet-margin-collapse > .small-4 {
    width: 33.33333%; }
  .phablet-margin-collapse > .small-5 {
    width: 41.66667%; }
  .phablet-margin-collapse > .small-6 {
    width: 50%; }
  .phablet-margin-collapse > .small-7 {
    width: 58.33333%; }
  .phablet-margin-collapse > .small-8 {
    width: 66.66667%; }
  .phablet-margin-collapse > .small-9 {
    width: 75%; }
  .phablet-margin-collapse > .small-10 {
    width: 83.33333%; }
  .phablet-margin-collapse > .small-11 {
    width: 91.66667%; }
  .phablet-margin-collapse > .small-12 {
    width: 100%; } }

@media screen and (min-width: 60em) {
  .phablet-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .phablet-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .phablet-margin-collapse > .medium-3 {
    width: 25%; }
  .phablet-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .phablet-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .phablet-margin-collapse > .medium-6 {
    width: 50%; }
  .phablet-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .phablet-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .phablet-margin-collapse > .medium-9 {
    width: 75%; }
  .phablet-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .phablet-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .phablet-margin-collapse > .medium-12 {
    width: 100%; } }

@media screen and (min-width: 60em) {
  .phablet-margin-collapse > .tablet-1 {
    width: 8.33333%; }
  .phablet-margin-collapse > .tablet-2 {
    width: 16.66667%; }
  .phablet-margin-collapse > .tablet-3 {
    width: 25%; }
  .phablet-margin-collapse > .tablet-4 {
    width: 33.33333%; }
  .phablet-margin-collapse > .tablet-5 {
    width: 41.66667%; }
  .phablet-margin-collapse > .tablet-6 {
    width: 50%; }
  .phablet-margin-collapse > .tablet-7 {
    width: 58.33333%; }
  .phablet-margin-collapse > .tablet-8 {
    width: 66.66667%; }
  .phablet-margin-collapse > .tablet-9 {
    width: 75%; }
  .phablet-margin-collapse > .tablet-10 {
    width: 83.33333%; }
  .phablet-margin-collapse > .tablet-11 {
    width: 91.66667%; }
  .phablet-margin-collapse > .tablet-12 {
    width: 100%; } }

@media screen and (min-width: 60em) {
  .phablet-margin-collapse > .large-1 {
    width: 8.33333%; }
  .phablet-margin-collapse > .large-2 {
    width: 16.66667%; }
  .phablet-margin-collapse > .large-3 {
    width: 25%; }
  .phablet-margin-collapse > .large-4 {
    width: 33.33333%; }
  .phablet-margin-collapse > .large-5 {
    width: 41.66667%; }
  .phablet-margin-collapse > .large-6 {
    width: 50%; }
  .phablet-margin-collapse > .large-7 {
    width: 58.33333%; }
  .phablet-margin-collapse > .large-8 {
    width: 66.66667%; }
  .phablet-margin-collapse > .large-9 {
    width: 75%; }
  .phablet-margin-collapse > .large-10 {
    width: 83.33333%; }
  .phablet-margin-collapse > .large-11 {
    width: 91.66667%; }
  .phablet-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 60em) {
  .phablet-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .phablet-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .phablet-margin-collapse > .xlarge-3 {
    width: 25%; }
  .phablet-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .phablet-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .phablet-margin-collapse > .xlarge-6 {
    width: 50%; }
  .phablet-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .phablet-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .phablet-margin-collapse > .xlarge-9 {
    width: 75%; }
  .phablet-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .phablet-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .phablet-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 60em) {
  .phablet-margin-collapse > .xxlarge-1 {
    width: 8.33333%; }
  .phablet-margin-collapse > .xxlarge-2 {
    width: 16.66667%; }
  .phablet-margin-collapse > .xxlarge-3 {
    width: 25%; }
  .phablet-margin-collapse > .xxlarge-4 {
    width: 33.33333%; }
  .phablet-margin-collapse > .xxlarge-5 {
    width: 41.66667%; }
  .phablet-margin-collapse > .xxlarge-6 {
    width: 50%; }
  .phablet-margin-collapse > .xxlarge-7 {
    width: 58.33333%; }
  .phablet-margin-collapse > .xxlarge-8 {
    width: 66.66667%; }
  .phablet-margin-collapse > .xxlarge-9 {
    width: 75%; }
  .phablet-margin-collapse > .xxlarge-10 {
    width: 83.33333%; }
  .phablet-margin-collapse > .xxlarge-11 {
    width: 91.66667%; }
  .phablet-margin-collapse > .xxlarge-12 {
    width: 100%; } }

@media screen and (min-width: 60em) {
  .phablet-margin-collapse > .phablet-1 {
    width: 8.33333%; }
  .phablet-margin-collapse > .phablet-2 {
    width: 16.66667%; }
  .phablet-margin-collapse > .phablet-3 {
    width: 25%; }
  .phablet-margin-collapse > .phablet-4 {
    width: 33.33333%; }
  .phablet-margin-collapse > .phablet-5 {
    width: 41.66667%; }
  .phablet-margin-collapse > .phablet-6 {
    width: 50%; }
  .phablet-margin-collapse > .phablet-7 {
    width: 58.33333%; }
  .phablet-margin-collapse > .phablet-8 {
    width: 66.66667%; }
  .phablet-margin-collapse > .phablet-9 {
    width: 75%; }
  .phablet-margin-collapse > .phablet-10 {
    width: 83.33333%; }
  .phablet-margin-collapse > .phablet-11 {
    width: 91.66667%; }
  .phablet-margin-collapse > .phablet-12 {
    width: 100%; } }

@media screen and (min-width: 60em) {
  .phablet-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .phablet-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

.small-offset-0 {
  margin-left: 0%; }

.grid-margin-x > .small-offset-0 {
  margin-left: calc(0% + 0.625rem); }

.small-offset-1 {
  margin-left: 8.33333%; }

.grid-margin-x > .small-offset-1 {
  margin-left: calc(8.33333% + 0.625rem); }

.small-offset-2 {
  margin-left: 16.66667%; }

.grid-margin-x > .small-offset-2 {
  margin-left: calc(16.66667% + 0.625rem); }

.small-offset-3 {
  margin-left: 25%; }

.grid-margin-x > .small-offset-3 {
  margin-left: calc(25% + 0.625rem); }

.small-offset-4 {
  margin-left: 33.33333%; }

.grid-margin-x > .small-offset-4 {
  margin-left: calc(33.33333% + 0.625rem); }

.small-offset-5 {
  margin-left: 41.66667%; }

.grid-margin-x > .small-offset-5 {
  margin-left: calc(41.66667% + 0.625rem); }

.small-offset-6 {
  margin-left: 50%; }

.grid-margin-x > .small-offset-6 {
  margin-left: calc(50% + 0.625rem); }

.small-offset-7 {
  margin-left: 58.33333%; }

.grid-margin-x > .small-offset-7 {
  margin-left: calc(58.33333% + 0.625rem); }

.small-offset-8 {
  margin-left: 66.66667%; }

.grid-margin-x > .small-offset-8 {
  margin-left: calc(66.66667% + 0.625rem); }

.small-offset-9 {
  margin-left: 75%; }

.grid-margin-x > .small-offset-9 {
  margin-left: calc(75% + 0.625rem); }

.small-offset-10 {
  margin-left: 83.33333%; }

.grid-margin-x > .small-offset-10 {
  margin-left: calc(83.33333% + 0.625rem); }

.small-offset-11 {
  margin-left: 91.66667%; }

.grid-margin-x > .small-offset-11 {
  margin-left: calc(91.66667% + 0.625rem); }

@media print, screen and (min-width: 40em) {
  .medium-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .medium-offset-0 {
    margin-left: calc(0% + 1.25rem); }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .medium-offset-1 {
    margin-left: calc(8.33333% + 1.25rem); }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .medium-offset-2 {
    margin-left: calc(16.66667% + 1.25rem); }
  .medium-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .medium-offset-3 {
    margin-left: calc(25% + 1.25rem); }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .medium-offset-4 {
    margin-left: calc(33.33333% + 1.25rem); }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .medium-offset-5 {
    margin-left: calc(41.66667% + 1.25rem); }
  .medium-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .medium-offset-6 {
    margin-left: calc(50% + 1.25rem); }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .medium-offset-7 {
    margin-left: calc(58.33333% + 1.25rem); }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .medium-offset-8 {
    margin-left: calc(66.66667% + 1.25rem); }
  .medium-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .medium-offset-9 {
    margin-left: calc(75% + 1.25rem); }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .medium-offset-10 {
    margin-left: calc(83.33333% + 1.25rem); }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .medium-offset-11 {
    margin-left: calc(91.66667% + 1.25rem); } }

@media print, screen and (min-width: 48em) {
  .tablet-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .tablet-offset-0 {
    margin-left: calc(0% + 1.25rem); }
  .tablet-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .tablet-offset-1 {
    margin-left: calc(8.33333% + 1.25rem); }
  .tablet-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .tablet-offset-2 {
    margin-left: calc(16.66667% + 1.25rem); }
  .tablet-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .tablet-offset-3 {
    margin-left: calc(25% + 1.25rem); }
  .tablet-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .tablet-offset-4 {
    margin-left: calc(33.33333% + 1.25rem); }
  .tablet-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .tablet-offset-5 {
    margin-left: calc(41.66667% + 1.25rem); }
  .tablet-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .tablet-offset-6 {
    margin-left: calc(50% + 1.25rem); }
  .tablet-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .tablet-offset-7 {
    margin-left: calc(58.33333% + 1.25rem); }
  .tablet-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .tablet-offset-8 {
    margin-left: calc(66.66667% + 1.25rem); }
  .tablet-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .tablet-offset-9 {
    margin-left: calc(75% + 1.25rem); }
  .tablet-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .tablet-offset-10 {
    margin-left: calc(83.33333% + 1.25rem); }
  .tablet-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .tablet-offset-11 {
    margin-left: calc(91.66667% + 1.25rem); } }

@media print, screen and (min-width: 64em) {
  .large-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .large-offset-0 {
    margin-left: calc(0% + 1.25rem); }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .large-offset-1 {
    margin-left: calc(8.33333% + 1.25rem); }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .large-offset-2 {
    margin-left: calc(16.66667% + 1.25rem); }
  .large-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .large-offset-3 {
    margin-left: calc(25% + 1.25rem); }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .large-offset-4 {
    margin-left: calc(33.33333% + 1.25rem); }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .large-offset-5 {
    margin-left: calc(41.66667% + 1.25rem); }
  .large-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .large-offset-6 {
    margin-left: calc(50% + 1.25rem); }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .large-offset-7 {
    margin-left: calc(58.33333% + 1.25rem); }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .large-offset-8 {
    margin-left: calc(66.66667% + 1.25rem); }
  .large-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .large-offset-9 {
    margin-left: calc(75% + 1.25rem); }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .large-offset-10 {
    margin-left: calc(83.33333% + 1.25rem); }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .large-offset-11 {
    margin-left: calc(91.66667% + 1.25rem); } }

@media screen and (min-width: 68.75em) {
  .xlarge-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .xlarge-offset-0 {
    margin-left: calc(0% + 1.25rem); }
  .xlarge-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .xlarge-offset-1 {
    margin-left: calc(8.33333% + 1.25rem); }
  .xlarge-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .xlarge-offset-2 {
    margin-left: calc(16.66667% + 1.25rem); }
  .xlarge-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .xlarge-offset-3 {
    margin-left: calc(25% + 1.25rem); }
  .xlarge-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .xlarge-offset-4 {
    margin-left: calc(33.33333% + 1.25rem); }
  .xlarge-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .xlarge-offset-5 {
    margin-left: calc(41.66667% + 1.25rem); }
  .xlarge-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .xlarge-offset-6 {
    margin-left: calc(50% + 1.25rem); }
  .xlarge-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .xlarge-offset-7 {
    margin-left: calc(58.33333% + 1.25rem); }
  .xlarge-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .xlarge-offset-8 {
    margin-left: calc(66.66667% + 1.25rem); }
  .xlarge-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .xlarge-offset-9 {
    margin-left: calc(75% + 1.25rem); }
  .xlarge-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .xlarge-offset-10 {
    margin-left: calc(83.33333% + 1.25rem); }
  .xlarge-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .xlarge-offset-11 {
    margin-left: calc(91.66667% + 1.25rem); } }

@media screen and (min-width: 90em) {
  .xxlarge-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .xxlarge-offset-0 {
    margin-left: calc(0% + 1.25rem); }
  .xxlarge-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .xxlarge-offset-1 {
    margin-left: calc(8.33333% + 1.25rem); }
  .xxlarge-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .xxlarge-offset-2 {
    margin-left: calc(16.66667% + 1.25rem); }
  .xxlarge-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .xxlarge-offset-3 {
    margin-left: calc(25% + 1.25rem); }
  .xxlarge-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .xxlarge-offset-4 {
    margin-left: calc(33.33333% + 1.25rem); }
  .xxlarge-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .xxlarge-offset-5 {
    margin-left: calc(41.66667% + 1.25rem); }
  .xxlarge-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .xxlarge-offset-6 {
    margin-left: calc(50% + 1.25rem); }
  .xxlarge-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .xxlarge-offset-7 {
    margin-left: calc(58.33333% + 1.25rem); }
  .xxlarge-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .xxlarge-offset-8 {
    margin-left: calc(66.66667% + 1.25rem); }
  .xxlarge-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .xxlarge-offset-9 {
    margin-left: calc(75% + 1.25rem); }
  .xxlarge-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .xxlarge-offset-10 {
    margin-left: calc(83.33333% + 1.25rem); }
  .xxlarge-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .xxlarge-offset-11 {
    margin-left: calc(91.66667% + 1.25rem); } }

@media screen and (min-width: 60em) {
  .phablet-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .phablet-offset-0 {
    margin-left: calc(0% + 1.25rem); }
  .phablet-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .phablet-offset-1 {
    margin-left: calc(8.33333% + 1.25rem); }
  .phablet-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .phablet-offset-2 {
    margin-left: calc(16.66667% + 1.25rem); }
  .phablet-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .phablet-offset-3 {
    margin-left: calc(25% + 1.25rem); }
  .phablet-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .phablet-offset-4 {
    margin-left: calc(33.33333% + 1.25rem); }
  .phablet-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .phablet-offset-5 {
    margin-left: calc(41.66667% + 1.25rem); }
  .phablet-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .phablet-offset-6 {
    margin-left: calc(50% + 1.25rem); }
  .phablet-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .phablet-offset-7 {
    margin-left: calc(58.33333% + 1.25rem); }
  .phablet-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .phablet-offset-8 {
    margin-left: calc(66.66667% + 1.25rem); }
  .phablet-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .phablet-offset-9 {
    margin-left: calc(75% + 1.25rem); }
  .phablet-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .phablet-offset-10 {
    margin-left: calc(83.33333% + 1.25rem); }
  .phablet-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .phablet-offset-11 {
    margin-left: calc(91.66667% + 1.25rem); } }

.grid-y {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap; }
  .grid-y > .cell {
    width: auto;
    max-width: none; }
  .grid-y > .auto {
    height: auto; }
  .grid-y > .shrink {
    height: auto; }
  .grid-y > .small-shrink, .grid-y > .small-full, .grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; }
  @media print, screen and (min-width: 40em) {
    .grid-y > .medium-shrink, .grid-y > .medium-full, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media print, screen and (min-width: 48em) {
    .grid-y > .tablet-shrink, .grid-y > .tablet-full, .grid-y > .tablet-1, .grid-y > .tablet-2, .grid-y > .tablet-3, .grid-y > .tablet-4, .grid-y > .tablet-5, .grid-y > .tablet-6, .grid-y > .tablet-7, .grid-y > .tablet-8, .grid-y > .tablet-9, .grid-y > .tablet-10, .grid-y > .tablet-11, .grid-y > .tablet-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media print, screen and (min-width: 64em) {
    .grid-y > .large-shrink, .grid-y > .large-full, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media screen and (min-width: 68.75em) {
    .grid-y > .xlarge-shrink, .grid-y > .xlarge-full, .grid-y > .xlarge-1, .grid-y > .xlarge-2, .grid-y > .xlarge-3, .grid-y > .xlarge-4, .grid-y > .xlarge-5, .grid-y > .xlarge-6, .grid-y > .xlarge-7, .grid-y > .xlarge-8, .grid-y > .xlarge-9, .grid-y > .xlarge-10, .grid-y > .xlarge-11, .grid-y > .xlarge-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media screen and (min-width: 90em) {
    .grid-y > .xxlarge-shrink, .grid-y > .xxlarge-full, .grid-y > .xxlarge-1, .grid-y > .xxlarge-2, .grid-y > .xxlarge-3, .grid-y > .xxlarge-4, .grid-y > .xxlarge-5, .grid-y > .xxlarge-6, .grid-y > .xxlarge-7, .grid-y > .xxlarge-8, .grid-y > .xxlarge-9, .grid-y > .xxlarge-10, .grid-y > .xxlarge-11, .grid-y > .xxlarge-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media screen and (min-width: 60em) {
    .grid-y > .phablet-shrink, .grid-y > .phablet-full, .grid-y > .phablet-1, .grid-y > .phablet-2, .grid-y > .phablet-3, .grid-y > .phablet-4, .grid-y > .phablet-5, .grid-y > .phablet-6, .grid-y > .phablet-7, .grid-y > .phablet-8, .grid-y > .phablet-9, .grid-y > .phablet-10, .grid-y > .phablet-11, .grid-y > .phablet-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  .grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-y > .small-1 {
    height: 8.33333%; }
  .grid-y > .small-2 {
    height: 16.66667%; }
  .grid-y > .small-3 {
    height: 25%; }
  .grid-y > .small-4 {
    height: 33.33333%; }
  .grid-y > .small-5 {
    height: 41.66667%; }
  .grid-y > .small-6 {
    height: 50%; }
  .grid-y > .small-7 {
    height: 58.33333%; }
  .grid-y > .small-8 {
    height: 66.66667%; }
  .grid-y > .small-9 {
    height: 75%; }
  .grid-y > .small-10 {
    height: 83.33333%; }
  .grid-y > .small-11 {
    height: 91.66667%; }
  .grid-y > .small-12 {
    height: 100%; }
  @media print, screen and (min-width: 40em) {
    .grid-y > .medium-auto {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .medium-shrink, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .medium-shrink {
      height: auto; }
    .grid-y > .medium-1 {
      height: 8.33333%; }
    .grid-y > .medium-2 {
      height: 16.66667%; }
    .grid-y > .medium-3 {
      height: 25%; }
    .grid-y > .medium-4 {
      height: 33.33333%; }
    .grid-y > .medium-5 {
      height: 41.66667%; }
    .grid-y > .medium-6 {
      height: 50%; }
    .grid-y > .medium-7 {
      height: 58.33333%; }
    .grid-y > .medium-8 {
      height: 66.66667%; }
    .grid-y > .medium-9 {
      height: 75%; }
    .grid-y > .medium-10 {
      height: 83.33333%; }
    .grid-y > .medium-11 {
      height: 91.66667%; }
    .grid-y > .medium-12 {
      height: 100%; } }
  @media print, screen and (min-width: 48em) {
    .grid-y > .tablet-auto {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .tablet-shrink, .grid-y > .tablet-1, .grid-y > .tablet-2, .grid-y > .tablet-3, .grid-y > .tablet-4, .grid-y > .tablet-5, .grid-y > .tablet-6, .grid-y > .tablet-7, .grid-y > .tablet-8, .grid-y > .tablet-9, .grid-y > .tablet-10, .grid-y > .tablet-11, .grid-y > .tablet-12 {
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .tablet-shrink {
      height: auto; }
    .grid-y > .tablet-1 {
      height: 8.33333%; }
    .grid-y > .tablet-2 {
      height: 16.66667%; }
    .grid-y > .tablet-3 {
      height: 25%; }
    .grid-y > .tablet-4 {
      height: 33.33333%; }
    .grid-y > .tablet-5 {
      height: 41.66667%; }
    .grid-y > .tablet-6 {
      height: 50%; }
    .grid-y > .tablet-7 {
      height: 58.33333%; }
    .grid-y > .tablet-8 {
      height: 66.66667%; }
    .grid-y > .tablet-9 {
      height: 75%; }
    .grid-y > .tablet-10 {
      height: 83.33333%; }
    .grid-y > .tablet-11 {
      height: 91.66667%; }
    .grid-y > .tablet-12 {
      height: 100%; } }
  @media print, screen and (min-width: 64em) {
    .grid-y > .large-auto {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .large-shrink, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .large-shrink {
      height: auto; }
    .grid-y > .large-1 {
      height: 8.33333%; }
    .grid-y > .large-2 {
      height: 16.66667%; }
    .grid-y > .large-3 {
      height: 25%; }
    .grid-y > .large-4 {
      height: 33.33333%; }
    .grid-y > .large-5 {
      height: 41.66667%; }
    .grid-y > .large-6 {
      height: 50%; }
    .grid-y > .large-7 {
      height: 58.33333%; }
    .grid-y > .large-8 {
      height: 66.66667%; }
    .grid-y > .large-9 {
      height: 75%; }
    .grid-y > .large-10 {
      height: 83.33333%; }
    .grid-y > .large-11 {
      height: 91.66667%; }
    .grid-y > .large-12 {
      height: 100%; } }
  @media screen and (min-width: 68.75em) {
    .grid-y > .xlarge-auto {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .xlarge-shrink, .grid-y > .xlarge-1, .grid-y > .xlarge-2, .grid-y > .xlarge-3, .grid-y > .xlarge-4, .grid-y > .xlarge-5, .grid-y > .xlarge-6, .grid-y > .xlarge-7, .grid-y > .xlarge-8, .grid-y > .xlarge-9, .grid-y > .xlarge-10, .grid-y > .xlarge-11, .grid-y > .xlarge-12 {
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .xlarge-shrink {
      height: auto; }
    .grid-y > .xlarge-1 {
      height: 8.33333%; }
    .grid-y > .xlarge-2 {
      height: 16.66667%; }
    .grid-y > .xlarge-3 {
      height: 25%; }
    .grid-y > .xlarge-4 {
      height: 33.33333%; }
    .grid-y > .xlarge-5 {
      height: 41.66667%; }
    .grid-y > .xlarge-6 {
      height: 50%; }
    .grid-y > .xlarge-7 {
      height: 58.33333%; }
    .grid-y > .xlarge-8 {
      height: 66.66667%; }
    .grid-y > .xlarge-9 {
      height: 75%; }
    .grid-y > .xlarge-10 {
      height: 83.33333%; }
    .grid-y > .xlarge-11 {
      height: 91.66667%; }
    .grid-y > .xlarge-12 {
      height: 100%; } }
  @media screen and (min-width: 90em) {
    .grid-y > .xxlarge-auto {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .xxlarge-shrink, .grid-y > .xxlarge-1, .grid-y > .xxlarge-2, .grid-y > .xxlarge-3, .grid-y > .xxlarge-4, .grid-y > .xxlarge-5, .grid-y > .xxlarge-6, .grid-y > .xxlarge-7, .grid-y > .xxlarge-8, .grid-y > .xxlarge-9, .grid-y > .xxlarge-10, .grid-y > .xxlarge-11, .grid-y > .xxlarge-12 {
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .xxlarge-shrink {
      height: auto; }
    .grid-y > .xxlarge-1 {
      height: 8.33333%; }
    .grid-y > .xxlarge-2 {
      height: 16.66667%; }
    .grid-y > .xxlarge-3 {
      height: 25%; }
    .grid-y > .xxlarge-4 {
      height: 33.33333%; }
    .grid-y > .xxlarge-5 {
      height: 41.66667%; }
    .grid-y > .xxlarge-6 {
      height: 50%; }
    .grid-y > .xxlarge-7 {
      height: 58.33333%; }
    .grid-y > .xxlarge-8 {
      height: 66.66667%; }
    .grid-y > .xxlarge-9 {
      height: 75%; }
    .grid-y > .xxlarge-10 {
      height: 83.33333%; }
    .grid-y > .xxlarge-11 {
      height: 91.66667%; }
    .grid-y > .xxlarge-12 {
      height: 100%; } }
  @media screen and (min-width: 60em) {
    .grid-y > .phablet-auto {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .phablet-shrink, .grid-y > .phablet-1, .grid-y > .phablet-2, .grid-y > .phablet-3, .grid-y > .phablet-4, .grid-y > .phablet-5, .grid-y > .phablet-6, .grid-y > .phablet-7, .grid-y > .phablet-8, .grid-y > .phablet-9, .grid-y > .phablet-10, .grid-y > .phablet-11, .grid-y > .phablet-12 {
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .phablet-shrink {
      height: auto; }
    .grid-y > .phablet-1 {
      height: 8.33333%; }
    .grid-y > .phablet-2 {
      height: 16.66667%; }
    .grid-y > .phablet-3 {
      height: 25%; }
    .grid-y > .phablet-4 {
      height: 33.33333%; }
    .grid-y > .phablet-5 {
      height: 41.66667%; }
    .grid-y > .phablet-6 {
      height: 50%; }
    .grid-y > .phablet-7 {
      height: 58.33333%; }
    .grid-y > .phablet-8 {
      height: 66.66667%; }
    .grid-y > .phablet-9 {
      height: 75%; }
    .grid-y > .phablet-10 {
      height: 83.33333%; }
    .grid-y > .phablet-11 {
      height: 91.66667%; }
    .grid-y > .phablet-12 {
      height: 100%; } }

.grid-padding-y .grid-padding-y {
  margin-top: -0.625rem;
  margin-bottom: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-y .grid-padding-y {
      margin-top: -1.25rem;
      margin-bottom: -1.25rem; } }

.grid-padding-y > .cell {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-y > .cell {
      padding-top: 1.25rem;
      padding-bottom: 1.25rem; } }

.grid-margin-y {
  margin-top: -0.625rem;
  margin-bottom: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y {
      margin-top: -1.25rem;
      margin-bottom: -1.25rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 1.25rem);
    margin-top: 0.625rem;
    margin-bottom: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .cell {
      height: calc(100% - 2.5rem);
      margin-top: 1.25rem;
      margin-bottom: 1.25rem; } }
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.25rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.25rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.25rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.25rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.25rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.25rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.25rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.25rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.25rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.25rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.25rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.25rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 2.5rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 2.5rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 2.5rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 2.5rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 2.5rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 2.5rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 2.5rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 2.5rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 2.5rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 2.5rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 2.5rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 2.5rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 2.5rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 2.5rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 2.5rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 2.5rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 2.5rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 2.5rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 2.5rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 2.5rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 2.5rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 2.5rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 2.5rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 2.5rem); } }
  @media print, screen and (min-width: 48em) {
    .grid-margin-y > .tablet-auto {
      height: auto; }
    .grid-margin-y > .tablet-shrink {
      height: auto; }
    .grid-margin-y > .tablet-1 {
      height: calc(8.33333% - 2.5rem); }
    .grid-margin-y > .tablet-2 {
      height: calc(16.66667% - 2.5rem); }
    .grid-margin-y > .tablet-3 {
      height: calc(25% - 2.5rem); }
    .grid-margin-y > .tablet-4 {
      height: calc(33.33333% - 2.5rem); }
    .grid-margin-y > .tablet-5 {
      height: calc(41.66667% - 2.5rem); }
    .grid-margin-y > .tablet-6 {
      height: calc(50% - 2.5rem); }
    .grid-margin-y > .tablet-7 {
      height: calc(58.33333% - 2.5rem); }
    .grid-margin-y > .tablet-8 {
      height: calc(66.66667% - 2.5rem); }
    .grid-margin-y > .tablet-9 {
      height: calc(75% - 2.5rem); }
    .grid-margin-y > .tablet-10 {
      height: calc(83.33333% - 2.5rem); }
    .grid-margin-y > .tablet-11 {
      height: calc(91.66667% - 2.5rem); }
    .grid-margin-y > .tablet-12 {
      height: calc(100% - 2.5rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 2.5rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 2.5rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 2.5rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 2.5rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 2.5rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 2.5rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 2.5rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 2.5rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 2.5rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 2.5rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 2.5rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 2.5rem); } }
  @media screen and (min-width: 68.75em) {
    .grid-margin-y > .xlarge-auto {
      height: auto; }
    .grid-margin-y > .xlarge-shrink {
      height: auto; }
    .grid-margin-y > .xlarge-1 {
      height: calc(8.33333% - 2.5rem); }
    .grid-margin-y > .xlarge-2 {
      height: calc(16.66667% - 2.5rem); }
    .grid-margin-y > .xlarge-3 {
      height: calc(25% - 2.5rem); }
    .grid-margin-y > .xlarge-4 {
      height: calc(33.33333% - 2.5rem); }
    .grid-margin-y > .xlarge-5 {
      height: calc(41.66667% - 2.5rem); }
    .grid-margin-y > .xlarge-6 {
      height: calc(50% - 2.5rem); }
    .grid-margin-y > .xlarge-7 {
      height: calc(58.33333% - 2.5rem); }
    .grid-margin-y > .xlarge-8 {
      height: calc(66.66667% - 2.5rem); }
    .grid-margin-y > .xlarge-9 {
      height: calc(75% - 2.5rem); }
    .grid-margin-y > .xlarge-10 {
      height: calc(83.33333% - 2.5rem); }
    .grid-margin-y > .xlarge-11 {
      height: calc(91.66667% - 2.5rem); }
    .grid-margin-y > .xlarge-12 {
      height: calc(100% - 2.5rem); } }
  @media screen and (min-width: 90em) {
    .grid-margin-y > .xxlarge-auto {
      height: auto; }
    .grid-margin-y > .xxlarge-shrink {
      height: auto; }
    .grid-margin-y > .xxlarge-1 {
      height: calc(8.33333% - 2.5rem); }
    .grid-margin-y > .xxlarge-2 {
      height: calc(16.66667% - 2.5rem); }
    .grid-margin-y > .xxlarge-3 {
      height: calc(25% - 2.5rem); }
    .grid-margin-y > .xxlarge-4 {
      height: calc(33.33333% - 2.5rem); }
    .grid-margin-y > .xxlarge-5 {
      height: calc(41.66667% - 2.5rem); }
    .grid-margin-y > .xxlarge-6 {
      height: calc(50% - 2.5rem); }
    .grid-margin-y > .xxlarge-7 {
      height: calc(58.33333% - 2.5rem); }
    .grid-margin-y > .xxlarge-8 {
      height: calc(66.66667% - 2.5rem); }
    .grid-margin-y > .xxlarge-9 {
      height: calc(75% - 2.5rem); }
    .grid-margin-y > .xxlarge-10 {
      height: calc(83.33333% - 2.5rem); }
    .grid-margin-y > .xxlarge-11 {
      height: calc(91.66667% - 2.5rem); }
    .grid-margin-y > .xxlarge-12 {
      height: calc(100% - 2.5rem); } }
  @media screen and (min-width: 60em) {
    .grid-margin-y > .phablet-auto {
      height: auto; }
    .grid-margin-y > .phablet-shrink {
      height: auto; }
    .grid-margin-y > .phablet-1 {
      height: calc(8.33333% - 2.5rem); }
    .grid-margin-y > .phablet-2 {
      height: calc(16.66667% - 2.5rem); }
    .grid-margin-y > .phablet-3 {
      height: calc(25% - 2.5rem); }
    .grid-margin-y > .phablet-4 {
      height: calc(33.33333% - 2.5rem); }
    .grid-margin-y > .phablet-5 {
      height: calc(41.66667% - 2.5rem); }
    .grid-margin-y > .phablet-6 {
      height: calc(50% - 2.5rem); }
    .grid-margin-y > .phablet-7 {
      height: calc(58.33333% - 2.5rem); }
    .grid-margin-y > .phablet-8 {
      height: calc(66.66667% - 2.5rem); }
    .grid-margin-y > .phablet-9 {
      height: calc(75% - 2.5rem); }
    .grid-margin-y > .phablet-10 {
      height: calc(83.33333% - 2.5rem); }
    .grid-margin-y > .phablet-11 {
      height: calc(91.66667% - 2.5rem); }
    .grid-margin-y > .phablet-12 {
      height: calc(100% - 2.5rem); } }

.grid-frame {
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100vw; }

.cell .grid-frame {
  width: 100%; }

.cell-block {
  overflow-x: auto;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar; }

.cell-block-y {
  overflow-y: auto;
  max-height: 100%;
  min-height: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar; }

.cell-block-container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  max-height: 100%; }
  .cell-block-container > .grid-x {
    max-height: 100%;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap; }

@media print, screen and (min-width: 40em) {
  .medium-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .medium-grid-frame {
    width: 100%; }
  .medium-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .medium-cell-block-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .medium-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .medium-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

@media print, screen and (min-width: 48em) {
  .tablet-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .tablet-grid-frame {
    width: 100%; }
  .tablet-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .tablet-cell-block-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .tablet-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .tablet-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

@media print, screen and (min-width: 64em) {
  .large-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .large-grid-frame {
    width: 100%; }
  .large-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .large-cell-block-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .large-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .large-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

@media screen and (min-width: 68.75em) {
  .xlarge-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .xlarge-grid-frame {
    width: 100%; }
  .xlarge-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .xlarge-cell-block-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .xlarge-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .xlarge-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

@media screen and (min-width: 90em) {
  .xxlarge-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .xxlarge-grid-frame {
    width: 100%; }
  .xxlarge-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .xxlarge-cell-block-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .xxlarge-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .xxlarge-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

@media screen and (min-width: 60em) {
  .phablet-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .phablet-grid-frame {
    width: 100%; }
  .phablet-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .phablet-cell-block-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .phablet-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .phablet-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

.grid-y.grid-frame {
  width: auto;
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: 100vh; }

@media print, screen and (min-width: 40em) {
  .grid-y.medium-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media print, screen and (min-width: 48em) {
  .grid-y.tablet-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media print, screen and (min-width: 64em) {
  .grid-y.large-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media screen and (min-width: 68.75em) {
  .grid-y.xlarge-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media screen and (min-width: 90em) {
  .grid-y.xxlarge-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media screen and (min-width: 60em) {
  .grid-y.phablet-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

.cell .grid-y.grid-frame {
  height: 100%; }

@media print, screen and (min-width: 40em) {
  .cell .grid-y.medium-grid-frame {
    height: 100%; } }

@media print, screen and (min-width: 48em) {
  .cell .grid-y.tablet-grid-frame {
    height: 100%; } }

@media print, screen and (min-width: 64em) {
  .cell .grid-y.large-grid-frame {
    height: 100%; } }

@media screen and (min-width: 68.75em) {
  .cell .grid-y.xlarge-grid-frame {
    height: 100%; } }

@media screen and (min-width: 90em) {
  .cell .grid-y.xxlarge-grid-frame {
    height: 100%; } }

@media screen and (min-width: 60em) {
  .cell .grid-y.phablet-grid-frame {
    height: 100%; } }

.grid-margin-y {
  margin-top: -0.625rem;
  margin-bottom: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y {
      margin-top: -1.25rem;
      margin-bottom: -1.25rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 1.25rem);
    margin-top: 0.625rem;
    margin-bottom: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .cell {
      height: calc(100% - 2.5rem);
      margin-top: 1.25rem;
      margin-bottom: 1.25rem; } }
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.25rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.25rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.25rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.25rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.25rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.25rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.25rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.25rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.25rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.25rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.25rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.25rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 2.5rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 2.5rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 2.5rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 2.5rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 2.5rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 2.5rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 2.5rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 2.5rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 2.5rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 2.5rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 2.5rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 2.5rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 2.5rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 2.5rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 2.5rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 2.5rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 2.5rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 2.5rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 2.5rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 2.5rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 2.5rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 2.5rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 2.5rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 2.5rem); } }
  @media print, screen and (min-width: 48em) {
    .grid-margin-y > .tablet-auto {
      height: auto; }
    .grid-margin-y > .tablet-shrink {
      height: auto; }
    .grid-margin-y > .tablet-1 {
      height: calc(8.33333% - 2.5rem); }
    .grid-margin-y > .tablet-2 {
      height: calc(16.66667% - 2.5rem); }
    .grid-margin-y > .tablet-3 {
      height: calc(25% - 2.5rem); }
    .grid-margin-y > .tablet-4 {
      height: calc(33.33333% - 2.5rem); }
    .grid-margin-y > .tablet-5 {
      height: calc(41.66667% - 2.5rem); }
    .grid-margin-y > .tablet-6 {
      height: calc(50% - 2.5rem); }
    .grid-margin-y > .tablet-7 {
      height: calc(58.33333% - 2.5rem); }
    .grid-margin-y > .tablet-8 {
      height: calc(66.66667% - 2.5rem); }
    .grid-margin-y > .tablet-9 {
      height: calc(75% - 2.5rem); }
    .grid-margin-y > .tablet-10 {
      height: calc(83.33333% - 2.5rem); }
    .grid-margin-y > .tablet-11 {
      height: calc(91.66667% - 2.5rem); }
    .grid-margin-y > .tablet-12 {
      height: calc(100% - 2.5rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 2.5rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 2.5rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 2.5rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 2.5rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 2.5rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 2.5rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 2.5rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 2.5rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 2.5rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 2.5rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 2.5rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 2.5rem); } }
  @media screen and (min-width: 68.75em) {
    .grid-margin-y > .xlarge-auto {
      height: auto; }
    .grid-margin-y > .xlarge-shrink {
      height: auto; }
    .grid-margin-y > .xlarge-1 {
      height: calc(8.33333% - 2.5rem); }
    .grid-margin-y > .xlarge-2 {
      height: calc(16.66667% - 2.5rem); }
    .grid-margin-y > .xlarge-3 {
      height: calc(25% - 2.5rem); }
    .grid-margin-y > .xlarge-4 {
      height: calc(33.33333% - 2.5rem); }
    .grid-margin-y > .xlarge-5 {
      height: calc(41.66667% - 2.5rem); }
    .grid-margin-y > .xlarge-6 {
      height: calc(50% - 2.5rem); }
    .grid-margin-y > .xlarge-7 {
      height: calc(58.33333% - 2.5rem); }
    .grid-margin-y > .xlarge-8 {
      height: calc(66.66667% - 2.5rem); }
    .grid-margin-y > .xlarge-9 {
      height: calc(75% - 2.5rem); }
    .grid-margin-y > .xlarge-10 {
      height: calc(83.33333% - 2.5rem); }
    .grid-margin-y > .xlarge-11 {
      height: calc(91.66667% - 2.5rem); }
    .grid-margin-y > .xlarge-12 {
      height: calc(100% - 2.5rem); } }
  @media screen and (min-width: 90em) {
    .grid-margin-y > .xxlarge-auto {
      height: auto; }
    .grid-margin-y > .xxlarge-shrink {
      height: auto; }
    .grid-margin-y > .xxlarge-1 {
      height: calc(8.33333% - 2.5rem); }
    .grid-margin-y > .xxlarge-2 {
      height: calc(16.66667% - 2.5rem); }
    .grid-margin-y > .xxlarge-3 {
      height: calc(25% - 2.5rem); }
    .grid-margin-y > .xxlarge-4 {
      height: calc(33.33333% - 2.5rem); }
    .grid-margin-y > .xxlarge-5 {
      height: calc(41.66667% - 2.5rem); }
    .grid-margin-y > .xxlarge-6 {
      height: calc(50% - 2.5rem); }
    .grid-margin-y > .xxlarge-7 {
      height: calc(58.33333% - 2.5rem); }
    .grid-margin-y > .xxlarge-8 {
      height: calc(66.66667% - 2.5rem); }
    .grid-margin-y > .xxlarge-9 {
      height: calc(75% - 2.5rem); }
    .grid-margin-y > .xxlarge-10 {
      height: calc(83.33333% - 2.5rem); }
    .grid-margin-y > .xxlarge-11 {
      height: calc(91.66667% - 2.5rem); }
    .grid-margin-y > .xxlarge-12 {
      height: calc(100% - 2.5rem); } }
  @media screen and (min-width: 60em) {
    .grid-margin-y > .phablet-auto {
      height: auto; }
    .grid-margin-y > .phablet-shrink {
      height: auto; }
    .grid-margin-y > .phablet-1 {
      height: calc(8.33333% - 2.5rem); }
    .grid-margin-y > .phablet-2 {
      height: calc(16.66667% - 2.5rem); }
    .grid-margin-y > .phablet-3 {
      height: calc(25% - 2.5rem); }
    .grid-margin-y > .phablet-4 {
      height: calc(33.33333% - 2.5rem); }
    .grid-margin-y > .phablet-5 {
      height: calc(41.66667% - 2.5rem); }
    .grid-margin-y > .phablet-6 {
      height: calc(50% - 2.5rem); }
    .grid-margin-y > .phablet-7 {
      height: calc(58.33333% - 2.5rem); }
    .grid-margin-y > .phablet-8 {
      height: calc(66.66667% - 2.5rem); }
    .grid-margin-y > .phablet-9 {
      height: calc(75% - 2.5rem); }
    .grid-margin-y > .phablet-10 {
      height: calc(83.33333% - 2.5rem); }
    .grid-margin-y > .phablet-11 {
      height: calc(91.66667% - 2.5rem); }
    .grid-margin-y > .phablet-12 {
      height: calc(100% - 2.5rem); } }

.grid-frame.grid-margin-y {
  height: calc(100vh + 1.25rem); }
  @media print, screen and (min-width: 40em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 2.5rem); } }
  @media print, screen and (min-width: 48em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 2.5rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 2.5rem); } }
  @media screen and (min-width: 68.75em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 2.5rem); } }
  @media screen and (min-width: 90em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 2.5rem); } }
  @media screen and (min-width: 60em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 2.5rem); } }

@media print, screen and (min-width: 40em) {
  .grid-margin-y.medium-grid-frame {
    height: calc(100vh + 2.5rem); } }

@media print, screen and (min-width: 48em) {
  .grid-margin-y.tablet-grid-frame {
    height: calc(100vh + 2.5rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-y.large-grid-frame {
    height: calc(100vh + 2.5rem); } }

@media screen and (min-width: 68.75em) {
  .grid-margin-y.xlarge-grid-frame {
    height: calc(100vh + 2.5rem); } }

@media screen and (min-width: 90em) {
  .grid-margin-y.xxlarge-grid-frame {
    height: calc(100vh + 2.5rem); } }

@media screen and (min-width: 60em) {
  .grid-margin-y.phablet-grid-frame {
    height: calc(100vh + 2.5rem); } }

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

p {
  margin-bottom: 1rem;
  font-size: inherit;
  line-height: 1.6;
  text-rendering: optimizeLegibility; }

em,
i {
  font-style: italic;
  line-height: inherit; }

strong,
b {
  font-weight: bold;
  line-height: inherit; }

small {
  font-size: 80%;
  line-height: inherit; }

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "museo-sans", "Avenir Next", "Verdana", sans-serif;
  font-style: normal;
  font-weight: normal;
  color: inherit;
  text-rendering: optimizeLegibility; }
  h1 small, .h1 small,
  h2 small, .h2 small,
  h3 small, .h3 small,
  h4 small, .h4 small,
  h5 small, .h5 small,
  h6 small, .h6 small {
    line-height: 0;
    color: #cacaca; }

h1, .h1 {
  font-size: 1.5rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h2, .h2 {
  font-size: 1.25rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h3, .h3 {
  font-size: 1.1875rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h4, .h4 {
  font-size: 1.125rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h5, .h5 {
  font-size: 1.0625rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h6, .h6 {
  font-size: 1rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

@media print, screen and (min-width: 40em) {
  h1, .h1 {
    font-size: 3rem; }
  h2, .h2 {
    font-size: 2.5rem; }
  h3, .h3 {
    font-size: 1.9375rem; }
  h4, .h4 {
    font-size: 1.5625rem; }
  h5, .h5 {
    font-size: 1.25rem; }
  h6, .h6 {
    font-size: 1rem; } }

a {
  line-height: inherit;
  color: #0b8793;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #09747e; }
  a img {
    border: 0; }

hr {
  clear: both;
  max-width: 68.75rem;
  height: 0;
  margin: 1.25rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #cacaca;
  border-left: 0; }

ul,
ol,
dl {
  margin-bottom: 1rem;
  list-style-position: outside;
  line-height: 1.6; }

li {
  font-size: inherit; }

ul {
  margin-left: 1.25rem;
  list-style-type: disc; }

ol {
  margin-left: 1.25rem; }

ul ul, ol ul, ul ol, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0; }

dl {
  margin-bottom: 1rem; }
  dl dt {
    margin-bottom: 0.3rem;
    font-weight: bold; }

blockquote {
  margin: 0 0 1rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #cacaca; }
  blockquote, blockquote p {
    line-height: 1.6;
    color: #8a8a8a; }

cite {
  display: block;
  font-size: 0.8125rem;
  color: #8a8a8a; }
  cite:before {
    content: "— "; }

abbr, abbr[title] {
  border-bottom: 1px dotted #0a0a0a;
  cursor: help;
  text-decoration: none; }

figure {
  margin: 0; }

code {
  padding: 0.125rem 0.3125rem 0.0625rem;
  border: 1px solid #cacaca;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #0a0a0a; }

kbd {
  margin: 0;
  padding: 0.125rem 0.25rem 0;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #0a0a0a; }

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #8a8a8a; }

.lead {
  font-size: 125%;
  line-height: 1.6; }

.stat {
  font-size: 2.5rem;
  line-height: 1; }
  p + .stat {
    margin-top: -1rem; }

ul.no-bullet, ol.no-bullet {
  margin-left: 0;
  list-style: none; }

.text-left {
  text-align: left; }

.text-right {
  text-align: right; }

.text-center {
  text-align: center; }

.text-justify {
  text-align: justify; }

@media print, screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left; }
  .medium-text-right {
    text-align: right; }
  .medium-text-center {
    text-align: center; }
  .medium-text-justify {
    text-align: justify; } }

@media print, screen and (min-width: 48em) {
  .tablet-text-left {
    text-align: left; }
  .tablet-text-right {
    text-align: right; }
  .tablet-text-center {
    text-align: center; }
  .tablet-text-justify {
    text-align: justify; } }

@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left; }
  .large-text-right {
    text-align: right; }
  .large-text-center {
    text-align: center; }
  .large-text-justify {
    text-align: justify; } }

@media screen and (min-width: 68.75em) {
  .xlarge-text-left {
    text-align: left; }
  .xlarge-text-right {
    text-align: right; }
  .xlarge-text-center {
    text-align: center; }
  .xlarge-text-justify {
    text-align: justify; } }

@media screen and (min-width: 90em) {
  .xxlarge-text-left {
    text-align: left; }
  .xxlarge-text-right {
    text-align: right; }
  .xxlarge-text-center {
    text-align: center; }
  .xxlarge-text-justify {
    text-align: justify; } }

@media screen and (min-width: 60em) {
  .phablet-text-left {
    text-align: left; }
  .phablet-text-right {
    text-align: right; }
  .phablet-text-center {
    text-align: center; }
  .phablet-text-justify {
    text-align: justify; } }

.show-for-print {
  display: none !important; }

@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
    color: black !important;
    text-shadow: none !important; }
  .show-for-print {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: ''; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre,
  blockquote {
    border: 1px solid #8a8a8a;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .print-break-inside {
    page-break-inside: auto; } }

.button, .wp-block-button .wp-block-button__link {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.85em 1em;
  border: 1px solid transparent;
  border-radius: 0;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-family: inherit;
  font-size: 0.9rem;
  -webkit-appearance: none;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #0b8793;
  color: #fefefe; }
  [data-whatinput='mouse'] .button, [data-whatinput='mouse'] .wp-block-button .wp-block-button__link, .wp-block-button [data-whatinput='mouse'] .wp-block-button__link {
    outline: 0; }
  .button:hover, .wp-block-button .wp-block-button__link:hover, .button:focus, .wp-block-button .wp-block-button__link:focus {
    background-color: #09737d;
    color: #fefefe; }
  .button.tiny, .wp-block-button .tiny.wp-block-button__link {
    font-size: 0.6rem; }
  .button.small, .wp-block-button .small.wp-block-button__link {
    font-size: 0.75rem; }
  .button.large, .wp-block-button .large.wp-block-button__link {
    font-size: 1.25rem; }
  .button.expanded, .wp-block-button .expanded.wp-block-button__link {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  .button.primary, .wp-block-button .primary.wp-block-button__link {
    background-color: #0b8793;
    color: #0a0a0a; }
    .button.primary:hover, .wp-block-button .primary.wp-block-button__link:hover, .button.primary:focus, .wp-block-button .primary.wp-block-button__link:focus {
      background-color: #096c76;
      color: #0a0a0a; }
  .button.secondary, .wp-block-button .secondary.wp-block-button__link {
    background-color: #fbb316;
    color: #0a0a0a; }
    .button.secondary:hover, .wp-block-button .secondary.wp-block-button__link:hover, .button.secondary:focus, .wp-block-button .secondary.wp-block-button__link:focus {
      background-color: #d79404;
      color: #0a0a0a; }
  .button.success, .wp-block-button .success.wp-block-button__link {
    background-color: #3adb76;
    color: #0a0a0a; }
    .button.success:hover, .wp-block-button .success.wp-block-button__link:hover, .button.success:focus, .wp-block-button .success.wp-block-button__link:focus {
      background-color: #22bb5b;
      color: #0a0a0a; }
  .button.warning, .wp-block-button .warning.wp-block-button__link {
    background-color: #ffae00;
    color: #0a0a0a; }
    .button.warning:hover, .wp-block-button .warning.wp-block-button__link:hover, .button.warning:focus, .wp-block-button .warning.wp-block-button__link:focus {
      background-color: #cc8b00;
      color: #0a0a0a; }
  .button.alert, .wp-block-button .alert.wp-block-button__link {
    background-color: #cc4b37;
    color: #fefefe; }
    .button.alert:hover, .wp-block-button .alert.wp-block-button__link:hover, .button.alert:focus, .wp-block-button .alert.wp-block-button__link:focus {
      background-color: #a53b2a;
      color: #fefefe; }
  .button.disabled, .wp-block-button .disabled.wp-block-button__link, .button[disabled], .wp-block-button .wp-block-button__link[disabled] {
    opacity: 0.25;
    cursor: not-allowed; }
    .button.disabled, .wp-block-button .disabled.wp-block-button__link, .button.disabled:hover, .wp-block-button .disabled.wp-block-button__link:hover, .button.disabled:focus, .wp-block-button .disabled.wp-block-button__link:focus, .button[disabled], .wp-block-button .wp-block-button__link[disabled], .button[disabled]:hover, .wp-block-button .wp-block-button__link[disabled]:hover, .button[disabled]:focus, .wp-block-button .wp-block-button__link[disabled]:focus {
      background-color: #0b8793;
      color: #fefefe; }
    .button.disabled.primary, .wp-block-button .disabled.primary.wp-block-button__link, .button[disabled].primary, .wp-block-button .wp-block-button__link[disabled].primary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.primary, .wp-block-button .disabled.primary.wp-block-button__link, .button.disabled.primary:hover, .wp-block-button .disabled.primary.wp-block-button__link:hover, .button.disabled.primary:focus, .wp-block-button .disabled.primary.wp-block-button__link:focus, .button[disabled].primary, .wp-block-button .wp-block-button__link[disabled].primary, .button[disabled].primary:hover, .wp-block-button .wp-block-button__link[disabled].primary:hover, .button[disabled].primary:focus, .wp-block-button .wp-block-button__link[disabled].primary:focus {
        background-color: #0b8793;
        color: #0a0a0a; }
    .button.disabled.secondary, .wp-block-button .disabled.secondary.wp-block-button__link, .button[disabled].secondary, .wp-block-button .wp-block-button__link[disabled].secondary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.secondary, .wp-block-button .disabled.secondary.wp-block-button__link, .button.disabled.secondary:hover, .wp-block-button .disabled.secondary.wp-block-button__link:hover, .button.disabled.secondary:focus, .wp-block-button .disabled.secondary.wp-block-button__link:focus, .button[disabled].secondary, .wp-block-button .wp-block-button__link[disabled].secondary, .button[disabled].secondary:hover, .wp-block-button .wp-block-button__link[disabled].secondary:hover, .button[disabled].secondary:focus, .wp-block-button .wp-block-button__link[disabled].secondary:focus {
        background-color: #fbb316;
        color: #0a0a0a; }
    .button.disabled.success, .wp-block-button .disabled.success.wp-block-button__link, .button[disabled].success, .wp-block-button .wp-block-button__link[disabled].success {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.success, .wp-block-button .disabled.success.wp-block-button__link, .button.disabled.success:hover, .wp-block-button .disabled.success.wp-block-button__link:hover, .button.disabled.success:focus, .wp-block-button .disabled.success.wp-block-button__link:focus, .button[disabled].success, .wp-block-button .wp-block-button__link[disabled].success, .button[disabled].success:hover, .wp-block-button .wp-block-button__link[disabled].success:hover, .button[disabled].success:focus, .wp-block-button .wp-block-button__link[disabled].success:focus {
        background-color: #3adb76;
        color: #0a0a0a; }
    .button.disabled.warning, .wp-block-button .disabled.warning.wp-block-button__link, .button[disabled].warning, .wp-block-button .wp-block-button__link[disabled].warning {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.warning, .wp-block-button .disabled.warning.wp-block-button__link, .button.disabled.warning:hover, .wp-block-button .disabled.warning.wp-block-button__link:hover, .button.disabled.warning:focus, .wp-block-button .disabled.warning.wp-block-button__link:focus, .button[disabled].warning, .wp-block-button .wp-block-button__link[disabled].warning, .button[disabled].warning:hover, .wp-block-button .wp-block-button__link[disabled].warning:hover, .button[disabled].warning:focus, .wp-block-button .wp-block-button__link[disabled].warning:focus {
        background-color: #ffae00;
        color: #0a0a0a; }
    .button.disabled.alert, .wp-block-button .disabled.alert.wp-block-button__link, .button[disabled].alert, .wp-block-button .wp-block-button__link[disabled].alert {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.alert, .wp-block-button .disabled.alert.wp-block-button__link, .button.disabled.alert:hover, .wp-block-button .disabled.alert.wp-block-button__link:hover, .button.disabled.alert:focus, .wp-block-button .disabled.alert.wp-block-button__link:focus, .button[disabled].alert, .wp-block-button .wp-block-button__link[disabled].alert, .button[disabled].alert:hover, .wp-block-button .wp-block-button__link[disabled].alert:hover, .button[disabled].alert:focus, .wp-block-button .wp-block-button__link[disabled].alert:focus {
        background-color: #cc4b37;
        color: #fefefe; }
  .button.hollow, .wp-block-button .hollow.wp-block-button__link, .wp-block-button.is-style-outline .wp-block-button__link {
    border: 1px solid #0b8793;
    color: #0b8793; }
    .button.hollow, .wp-block-button .hollow.wp-block-button__link, .wp-block-button.is-style-outline .wp-block-button__link, .button.hollow:hover, .wp-block-button .hollow.wp-block-button__link:hover, .wp-block-button.is-style-outline .wp-block-button__link:hover, .button.hollow:focus, .wp-block-button .hollow.wp-block-button__link:focus, .wp-block-button.is-style-outline .wp-block-button__link:focus {
      background-color: transparent; }
    .button.hollow.disabled, .wp-block-button .hollow.disabled.wp-block-button__link, .wp-block-button.is-style-outline .disabled.wp-block-button__link, .button.hollow.disabled:hover, .wp-block-button .hollow.disabled.wp-block-button__link:hover, .wp-block-button.is-style-outline .disabled.wp-block-button__link:hover, .button.hollow.disabled:focus, .wp-block-button .hollow.disabled.wp-block-button__link:focus, .wp-block-button.is-style-outline .disabled.wp-block-button__link:focus, .button.hollow[disabled], .wp-block-button .hollow.wp-block-button__link[disabled], .wp-block-button.is-style-outline .wp-block-button__link[disabled], .button.hollow[disabled]:hover, .wp-block-button .hollow.wp-block-button__link[disabled]:hover, .wp-block-button.is-style-outline .wp-block-button__link[disabled]:hover, .button.hollow[disabled]:focus, .wp-block-button .hollow.wp-block-button__link[disabled]:focus, .wp-block-button.is-style-outline .wp-block-button__link[disabled]:focus {
      background-color: transparent; }
    .button.hollow:hover, .wp-block-button .hollow.wp-block-button__link:hover, .wp-block-button.is-style-outline .wp-block-button__link:hover, .button.hollow:focus, .wp-block-button .hollow.wp-block-button__link:focus, .wp-block-button.is-style-outline .wp-block-button__link:focus {
      border-color: #06444a;
      color: #06444a; }
      .button.hollow:hover.disabled, .wp-block-button .hollow.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .wp-block-button__link:hover.disabled, .button.hollow:hover[disabled], .wp-block-button .hollow.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .wp-block-button__link:hover[disabled], .button.hollow:focus.disabled, .wp-block-button .hollow.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .wp-block-button__link:focus.disabled, .button.hollow:focus[disabled], .wp-block-button .hollow.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .wp-block-button__link:focus[disabled] {
        border: 1px solid #0b8793;
        color: #0b8793; }
    .button.hollow.primary, .wp-block-button .hollow.primary.wp-block-button__link, .wp-block-button.is-style-outline .primary.wp-block-button__link {
      border: 1px solid #0b8793;
      color: #0b8793; }
      .button.hollow.primary:hover, .wp-block-button .hollow.primary.wp-block-button__link:hover, .wp-block-button.is-style-outline .primary.wp-block-button__link:hover, .button.hollow.primary:focus, .wp-block-button .hollow.primary.wp-block-button__link:focus, .wp-block-button.is-style-outline .primary.wp-block-button__link:focus {
        border-color: #06444a;
        color: #06444a; }
        .button.hollow.primary:hover.disabled, .wp-block-button .hollow.primary.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .primary.wp-block-button__link:hover.disabled, .button.hollow.primary:hover[disabled], .wp-block-button .hollow.primary.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .primary.wp-block-button__link:hover[disabled], .button.hollow.primary:focus.disabled, .wp-block-button .hollow.primary.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .primary.wp-block-button__link:focus.disabled, .button.hollow.primary:focus[disabled], .wp-block-button .hollow.primary.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .primary.wp-block-button__link:focus[disabled] {
          border: 1px solid #0b8793;
          color: #0b8793; }
    .button.hollow.secondary, .wp-block-button .hollow.secondary.wp-block-button__link, .wp-block-button.is-style-outline .secondary.wp-block-button__link {
      border: 1px solid #fbb316;
      color: #fbb316; }
      .button.hollow.secondary:hover, .wp-block-button .hollow.secondary.wp-block-button__link:hover, .wp-block-button.is-style-outline .secondary.wp-block-button__link:hover, .button.hollow.secondary:focus, .wp-block-button .hollow.secondary.wp-block-button__link:focus, .wp-block-button.is-style-outline .secondary.wp-block-button__link:focus {
        border-color: #865d02;
        color: #865d02; }
        .button.hollow.secondary:hover.disabled, .wp-block-button .hollow.secondary.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .secondary.wp-block-button__link:hover.disabled, .button.hollow.secondary:hover[disabled], .wp-block-button .hollow.secondary.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .secondary.wp-block-button__link:hover[disabled], .button.hollow.secondary:focus.disabled, .wp-block-button .hollow.secondary.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .secondary.wp-block-button__link:focus.disabled, .button.hollow.secondary:focus[disabled], .wp-block-button .hollow.secondary.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .secondary.wp-block-button__link:focus[disabled] {
          border: 1px solid #fbb316;
          color: #fbb316; }
    .button.hollow.success, .wp-block-button .hollow.success.wp-block-button__link, .wp-block-button.is-style-outline .success.wp-block-button__link {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.hollow.success:hover, .wp-block-button .hollow.success.wp-block-button__link:hover, .wp-block-button.is-style-outline .success.wp-block-button__link:hover, .button.hollow.success:focus, .wp-block-button .hollow.success.wp-block-button__link:focus, .wp-block-button.is-style-outline .success.wp-block-button__link:focus {
        border-color: #157539;
        color: #157539; }
        .button.hollow.success:hover.disabled, .wp-block-button .hollow.success.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .success.wp-block-button__link:hover.disabled, .button.hollow.success:hover[disabled], .wp-block-button .hollow.success.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .success.wp-block-button__link:hover[disabled], .button.hollow.success:focus.disabled, .wp-block-button .hollow.success.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .success.wp-block-button__link:focus.disabled, .button.hollow.success:focus[disabled], .wp-block-button .hollow.success.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .success.wp-block-button__link:focus[disabled] {
          border: 1px solid #3adb76;
          color: #3adb76; }
    .button.hollow.warning, .wp-block-button .hollow.warning.wp-block-button__link, .wp-block-button.is-style-outline .warning.wp-block-button__link {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.hollow.warning:hover, .wp-block-button .hollow.warning.wp-block-button__link:hover, .wp-block-button.is-style-outline .warning.wp-block-button__link:hover, .button.hollow.warning:focus, .wp-block-button .hollow.warning.wp-block-button__link:focus, .wp-block-button.is-style-outline .warning.wp-block-button__link:focus {
        border-color: #805700;
        color: #805700; }
        .button.hollow.warning:hover.disabled, .wp-block-button .hollow.warning.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .warning.wp-block-button__link:hover.disabled, .button.hollow.warning:hover[disabled], .wp-block-button .hollow.warning.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .warning.wp-block-button__link:hover[disabled], .button.hollow.warning:focus.disabled, .wp-block-button .hollow.warning.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .warning.wp-block-button__link:focus.disabled, .button.hollow.warning:focus[disabled], .wp-block-button .hollow.warning.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .warning.wp-block-button__link:focus[disabled] {
          border: 1px solid #ffae00;
          color: #ffae00; }
    .button.hollow.alert, .wp-block-button .hollow.alert.wp-block-button__link, .wp-block-button.is-style-outline .alert.wp-block-button__link {
      border: 1px solid #cc4b37;
      color: #cc4b37; }
      .button.hollow.alert:hover, .wp-block-button .hollow.alert.wp-block-button__link:hover, .wp-block-button.is-style-outline .alert.wp-block-button__link:hover, .button.hollow.alert:focus, .wp-block-button .hollow.alert.wp-block-button__link:focus, .wp-block-button.is-style-outline .alert.wp-block-button__link:focus {
        border-color: #67251a;
        color: #67251a; }
        .button.hollow.alert:hover.disabled, .wp-block-button .hollow.alert.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .alert.wp-block-button__link:hover.disabled, .button.hollow.alert:hover[disabled], .wp-block-button .hollow.alert.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .alert.wp-block-button__link:hover[disabled], .button.hollow.alert:focus.disabled, .wp-block-button .hollow.alert.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .alert.wp-block-button__link:focus.disabled, .button.hollow.alert:focus[disabled], .wp-block-button .hollow.alert.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .alert.wp-block-button__link:focus[disabled] {
          border: 1px solid #cc4b37;
          color: #cc4b37; }
  .button.clear, .wp-block-button .clear.wp-block-button__link {
    border: 1px solid #0b8793;
    color: #0b8793; }
    .button.clear, .wp-block-button .clear.wp-block-button__link, .button.clear:hover, .wp-block-button .clear.wp-block-button__link:hover, .button.clear:focus, .wp-block-button .clear.wp-block-button__link:focus {
      background-color: transparent; }
    .button.clear.disabled, .wp-block-button .clear.disabled.wp-block-button__link, .button.clear.disabled:hover, .wp-block-button .clear.disabled.wp-block-button__link:hover, .button.clear.disabled:focus, .wp-block-button .clear.disabled.wp-block-button__link:focus, .button.clear[disabled], .wp-block-button .clear.wp-block-button__link[disabled], .button.clear[disabled]:hover, .wp-block-button .clear.wp-block-button__link[disabled]:hover, .button.clear[disabled]:focus, .wp-block-button .clear.wp-block-button__link[disabled]:focus {
      background-color: transparent; }
    .button.clear:hover, .wp-block-button .clear.wp-block-button__link:hover, .button.clear:focus, .wp-block-button .clear.wp-block-button__link:focus {
      border-color: #06444a;
      color: #06444a; }
      .button.clear:hover.disabled, .wp-block-button .clear.wp-block-button__link:hover.disabled, .button.clear:hover[disabled], .wp-block-button .clear.wp-block-button__link:hover[disabled], .button.clear:focus.disabled, .wp-block-button .clear.wp-block-button__link:focus.disabled, .button.clear:focus[disabled], .wp-block-button .clear.wp-block-button__link:focus[disabled] {
        border: 1px solid #0b8793;
        color: #0b8793; }
    .button.clear, .wp-block-button .clear.wp-block-button__link, .button.clear.disabled, .wp-block-button .clear.disabled.wp-block-button__link, .button.clear[disabled], .wp-block-button .clear.wp-block-button__link[disabled], .button.clear:hover, .wp-block-button .clear.wp-block-button__link:hover, .button.clear:hover.disabled, .wp-block-button .clear.wp-block-button__link:hover.disabled, .button.clear:hover[disabled], .wp-block-button .clear.wp-block-button__link:hover[disabled], .button.clear:focus, .wp-block-button .clear.wp-block-button__link:focus, .button.clear:focus.disabled, .wp-block-button .clear.wp-block-button__link:focus.disabled, .button.clear:focus[disabled], .wp-block-button .clear.wp-block-button__link:focus[disabled] {
      border-color: transparent; }
    .button.clear.primary, .wp-block-button .clear.primary.wp-block-button__link {
      border: 1px solid #0b8793;
      color: #0b8793; }
      .button.clear.primary:hover, .wp-block-button .clear.primary.wp-block-button__link:hover, .button.clear.primary:focus, .wp-block-button .clear.primary.wp-block-button__link:focus {
        border-color: #06444a;
        color: #06444a; }
        .button.clear.primary:hover.disabled, .wp-block-button .clear.primary.wp-block-button__link:hover.disabled, .button.clear.primary:hover[disabled], .wp-block-button .clear.primary.wp-block-button__link:hover[disabled], .button.clear.primary:focus.disabled, .wp-block-button .clear.primary.wp-block-button__link:focus.disabled, .button.clear.primary:focus[disabled], .wp-block-button .clear.primary.wp-block-button__link:focus[disabled] {
          border: 1px solid #0b8793;
          color: #0b8793; }
      .button.clear.primary, .wp-block-button .clear.primary.wp-block-button__link, .button.clear.primary.disabled, .wp-block-button .clear.primary.disabled.wp-block-button__link, .button.clear.primary[disabled], .wp-block-button .clear.primary.wp-block-button__link[disabled], .button.clear.primary:hover, .wp-block-button .clear.primary.wp-block-button__link:hover, .button.clear.primary:hover.disabled, .wp-block-button .clear.primary.wp-block-button__link:hover.disabled, .button.clear.primary:hover[disabled], .wp-block-button .clear.primary.wp-block-button__link:hover[disabled], .button.clear.primary:focus, .wp-block-button .clear.primary.wp-block-button__link:focus, .button.clear.primary:focus.disabled, .wp-block-button .clear.primary.wp-block-button__link:focus.disabled, .button.clear.primary:focus[disabled], .wp-block-button .clear.primary.wp-block-button__link:focus[disabled] {
        border-color: transparent; }
    .button.clear.secondary, .wp-block-button .clear.secondary.wp-block-button__link {
      border: 1px solid #fbb316;
      color: #fbb316; }
      .button.clear.secondary:hover, .wp-block-button .clear.secondary.wp-block-button__link:hover, .button.clear.secondary:focus, .wp-block-button .clear.secondary.wp-block-button__link:focus {
        border-color: #865d02;
        color: #865d02; }
        .button.clear.secondary:hover.disabled, .wp-block-button .clear.secondary.wp-block-button__link:hover.disabled, .button.clear.secondary:hover[disabled], .wp-block-button .clear.secondary.wp-block-button__link:hover[disabled], .button.clear.secondary:focus.disabled, .wp-block-button .clear.secondary.wp-block-button__link:focus.disabled, .button.clear.secondary:focus[disabled], .wp-block-button .clear.secondary.wp-block-button__link:focus[disabled] {
          border: 1px solid #fbb316;
          color: #fbb316; }
      .button.clear.secondary, .wp-block-button .clear.secondary.wp-block-button__link, .button.clear.secondary.disabled, .wp-block-button .clear.secondary.disabled.wp-block-button__link, .button.clear.secondary[disabled], .wp-block-button .clear.secondary.wp-block-button__link[disabled], .button.clear.secondary:hover, .wp-block-button .clear.secondary.wp-block-button__link:hover, .button.clear.secondary:hover.disabled, .wp-block-button .clear.secondary.wp-block-button__link:hover.disabled, .button.clear.secondary:hover[disabled], .wp-block-button .clear.secondary.wp-block-button__link:hover[disabled], .button.clear.secondary:focus, .wp-block-button .clear.secondary.wp-block-button__link:focus, .button.clear.secondary:focus.disabled, .wp-block-button .clear.secondary.wp-block-button__link:focus.disabled, .button.clear.secondary:focus[disabled], .wp-block-button .clear.secondary.wp-block-button__link:focus[disabled] {
        border-color: transparent; }
    .button.clear.success, .wp-block-button .clear.success.wp-block-button__link {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.clear.success:hover, .wp-block-button .clear.success.wp-block-button__link:hover, .button.clear.success:focus, .wp-block-button .clear.success.wp-block-button__link:focus {
        border-color: #157539;
        color: #157539; }
        .button.clear.success:hover.disabled, .wp-block-button .clear.success.wp-block-button__link:hover.disabled, .button.clear.success:hover[disabled], .wp-block-button .clear.success.wp-block-button__link:hover[disabled], .button.clear.success:focus.disabled, .wp-block-button .clear.success.wp-block-button__link:focus.disabled, .button.clear.success:focus[disabled], .wp-block-button .clear.success.wp-block-button__link:focus[disabled] {
          border: 1px solid #3adb76;
          color: #3adb76; }
      .button.clear.success, .wp-block-button .clear.success.wp-block-button__link, .button.clear.success.disabled, .wp-block-button .clear.success.disabled.wp-block-button__link, .button.clear.success[disabled], .wp-block-button .clear.success.wp-block-button__link[disabled], .button.clear.success:hover, .wp-block-button .clear.success.wp-block-button__link:hover, .button.clear.success:hover.disabled, .wp-block-button .clear.success.wp-block-button__link:hover.disabled, .button.clear.success:hover[disabled], .wp-block-button .clear.success.wp-block-button__link:hover[disabled], .button.clear.success:focus, .wp-block-button .clear.success.wp-block-button__link:focus, .button.clear.success:focus.disabled, .wp-block-button .clear.success.wp-block-button__link:focus.disabled, .button.clear.success:focus[disabled], .wp-block-button .clear.success.wp-block-button__link:focus[disabled] {
        border-color: transparent; }
    .button.clear.warning, .wp-block-button .clear.warning.wp-block-button__link {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.clear.warning:hover, .wp-block-button .clear.warning.wp-block-button__link:hover, .button.clear.warning:focus, .wp-block-button .clear.warning.wp-block-button__link:focus {
        border-color: #805700;
        color: #805700; }
        .button.clear.warning:hover.disabled, .wp-block-button .clear.warning.wp-block-button__link:hover.disabled, .button.clear.warning:hover[disabled], .wp-block-button .clear.warning.wp-block-button__link:hover[disabled], .button.clear.warning:focus.disabled, .wp-block-button .clear.warning.wp-block-button__link:focus.disabled, .button.clear.warning:focus[disabled], .wp-block-button .clear.warning.wp-block-button__link:focus[disabled] {
          border: 1px solid #ffae00;
          color: #ffae00; }
      .button.clear.warning, .wp-block-button .clear.warning.wp-block-button__link, .button.clear.warning.disabled, .wp-block-button .clear.warning.disabled.wp-block-button__link, .button.clear.warning[disabled], .wp-block-button .clear.warning.wp-block-button__link[disabled], .button.clear.warning:hover, .wp-block-button .clear.warning.wp-block-button__link:hover, .button.clear.warning:hover.disabled, .wp-block-button .clear.warning.wp-block-button__link:hover.disabled, .button.clear.warning:hover[disabled], .wp-block-button .clear.warning.wp-block-button__link:hover[disabled], .button.clear.warning:focus, .wp-block-button .clear.warning.wp-block-button__link:focus, .button.clear.warning:focus.disabled, .wp-block-button .clear.warning.wp-block-button__link:focus.disabled, .button.clear.warning:focus[disabled], .wp-block-button .clear.warning.wp-block-button__link:focus[disabled] {
        border-color: transparent; }
    .button.clear.alert, .wp-block-button .clear.alert.wp-block-button__link {
      border: 1px solid #cc4b37;
      color: #cc4b37; }
      .button.clear.alert:hover, .wp-block-button .clear.alert.wp-block-button__link:hover, .button.clear.alert:focus, .wp-block-button .clear.alert.wp-block-button__link:focus {
        border-color: #67251a;
        color: #67251a; }
        .button.clear.alert:hover.disabled, .wp-block-button .clear.alert.wp-block-button__link:hover.disabled, .button.clear.alert:hover[disabled], .wp-block-button .clear.alert.wp-block-button__link:hover[disabled], .button.clear.alert:focus.disabled, .wp-block-button .clear.alert.wp-block-button__link:focus.disabled, .button.clear.alert:focus[disabled], .wp-block-button .clear.alert.wp-block-button__link:focus[disabled] {
          border: 1px solid #cc4b37;
          color: #cc4b37; }
      .button.clear.alert, .wp-block-button .clear.alert.wp-block-button__link, .button.clear.alert.disabled, .wp-block-button .clear.alert.disabled.wp-block-button__link, .button.clear.alert[disabled], .wp-block-button .clear.alert.wp-block-button__link[disabled], .button.clear.alert:hover, .wp-block-button .clear.alert.wp-block-button__link:hover, .button.clear.alert:hover.disabled, .wp-block-button .clear.alert.wp-block-button__link:hover.disabled, .button.clear.alert:hover[disabled], .wp-block-button .clear.alert.wp-block-button__link:hover[disabled], .button.clear.alert:focus, .wp-block-button .clear.alert.wp-block-button__link:focus, .button.clear.alert:focus.disabled, .wp-block-button .clear.alert.wp-block-button__link:focus.disabled, .button.clear.alert:focus[disabled], .wp-block-button .clear.alert.wp-block-button__link:focus[disabled] {
        border-color: transparent; }
  .button.dropdown::after, .wp-block-button .dropdown.wp-block-button__link::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.4em;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #fefefe transparent transparent;
    position: relative;
    top: 0.4em;
    display: inline-block;
    float: right;
    margin-left: 1em; }
  .button.dropdown.hollow::after, .wp-block-button .dropdown.hollow.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.wp-block-button__link::after, .button.dropdown.clear::after, .wp-block-button .dropdown.clear.wp-block-button__link::after {
    border-top-color: #0b8793; }
  .button.dropdown.hollow.primary::after, .wp-block-button .dropdown.hollow.primary.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.primary.wp-block-button__link::after, .button.dropdown.clear.primary::after, .wp-block-button .dropdown.clear.primary.wp-block-button__link::after {
    border-top-color: #0b8793; }
  .button.dropdown.hollow.secondary::after, .wp-block-button .dropdown.hollow.secondary.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.secondary.wp-block-button__link::after, .button.dropdown.clear.secondary::after, .wp-block-button .dropdown.clear.secondary.wp-block-button__link::after {
    border-top-color: #fbb316; }
  .button.dropdown.hollow.success::after, .wp-block-button .dropdown.hollow.success.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.success.wp-block-button__link::after, .button.dropdown.clear.success::after, .wp-block-button .dropdown.clear.success.wp-block-button__link::after {
    border-top-color: #3adb76; }
  .button.dropdown.hollow.warning::after, .wp-block-button .dropdown.hollow.warning.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.warning.wp-block-button__link::after, .button.dropdown.clear.warning::after, .wp-block-button .dropdown.clear.warning.wp-block-button__link::after {
    border-top-color: #ffae00; }
  .button.dropdown.hollow.alert::after, .wp-block-button .dropdown.hollow.alert.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.alert.wp-block-button__link::after, .button.dropdown.clear.alert::after, .wp-block-button .dropdown.clear.alert.wp-block-button__link::after {
    border-top-color: #cc4b37; }
  .button.arrow-only::after, .wp-block-button .arrow-only.wp-block-button__link::after {
    top: -0.1em;
    float: none;
    margin-left: 0; }

a.button:hover, .wp-block-button a.wp-block-button__link:hover, a.button:focus, .wp-block-button a.wp-block-button__link:focus {
  text-decoration: none; }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  [type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus,
  textarea:focus {
    outline: none;
    border: 1px solid #8a8a8a;
    background-color: #fefefe;
    box-shadow: 0 0 5px #cacaca;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }

textarea {
  max-width: 100%; }
  textarea[rows] {
    height: auto; }

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #e6e6e6;
  cursor: not-allowed; }

[type='submit'],
[type='button'] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0; }

input[type='search'] {
  box-sizing: border-box; }

::-webkit-input-placeholder {
  color: #cacaca; }

:-ms-input-placeholder {
  color: #cacaca; }

::placeholder {
  color: #cacaca; }

[type='file'],
[type='checkbox'],
[type='radio'] {
  margin: 0 0 1rem; }

[type='checkbox'] + label,
[type='radio'] + label {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0; }
  [type='checkbox'] + label[for],
  [type='radio'] + label[for] {
    cursor: pointer; }

label > [type='checkbox'],
label > [type='radio'] {
  margin-right: 0.5rem; }

[type='file'] {
  width: 100%; }

label {
  display: block;
  margin: 0;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.8;
  color: #0a0a0a; }
  label.middle {
    margin: 0 0 1rem;
    padding: 0.5625rem 0; }

.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #0a0a0a; }

.input-group {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 1rem;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .input-group > :first-child, .input-group > :first-child.input-group-button > * {
    border-radius: 0 0 0 0; }
  .input-group > :last-child, .input-group > :last-child.input-group-button > * {
    border-radius: 0 0 0 0; }

.input-group-label, .input-group-field, .input-group-button, .input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  margin: 0;
  white-space: nowrap; }

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #cacaca;
  background: #e6e6e6;
  color: #0a0a0a;
  text-align: center;
  white-space: nowrap;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .input-group-label:first-child {
    border-right: 0; }
  .input-group-label:last-child {
    border-left: 0; }

.input-group-field {
  border-radius: 0;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  min-width: 0; }

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }
  .input-group-button a,
  .input-group-button input,
  .input-group-button button,
  .input-group-button label {
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
                -ms-grid-row-align: stretch;
            align-self: stretch;
    height: auto;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 1rem; }

fieldset {
  margin: 0;
  padding: 0;
  border: 0; }

legend {
  max-width: 100%;
  margin-bottom: 0.5rem; }

.fieldset {
  margin: 1.125rem 0;
  padding: 1.25rem;
  border: 1px solid #cacaca; }
  .fieldset legend {
    margin: 0;
    margin-left: -0.1875rem;
    padding: 0 0.1875rem; }

select {
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28138, 138, 138%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  @media screen and (min-width: 0\0) {
    select {
      background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg=="); } }
  select:focus {
    outline: none;
    border: 1px solid #8a8a8a;
    background-color: #fefefe;
    box-shadow: 0 0 5px #cacaca;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  select:disabled {
    background-color: #e6e6e6;
    cursor: not-allowed; }
  select::-ms-expand {
    display: none; }
  select[multiple] {
    height: auto;
    background-image: none; }

.is-invalid-input:not(:focus) {
  border-color: #cc4b37;
  background-color: #f9ecea; }
  .is-invalid-input:not(:focus)::-webkit-input-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus):-ms-input-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus)::placeholder {
    color: #cc4b37; }

.is-invalid-label {
  color: #cc4b37; }

.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: bold;
  color: #cc4b37; }
  .form-error.is-visible {
    display: block; }

.accordion {
  margin-left: 0;
  background: #fefefe;
  list-style-type: none; }
  .accordion[disabled] .accordion-title {
    cursor: not-allowed; }

.accordion-item:first-child > :first-child {
  border-radius: 0 0 0 0; }

.accordion-item:last-child > :last-child {
  border-radius: 0 0 0 0; }

.accordion-title {
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  font-size: 0.75rem;
  line-height: 1;
  color: #0b8793; }
  :last-child:not(.is-active) > .accordion-title {
    border-bottom: 1px solid #e6e6e6;
    border-radius: 0 0 0 0; }
  .accordion-title:hover, .accordion-title:focus {
    background-color: #e6e6e6; }
  .accordion-title::before {
    position: absolute;
    top: 50%;
    right: 1rem;
    margin-top: -0.5rem;
    content: '+'; }
  .is-active > .accordion-title::before {
    content: '\2013'; }

.accordion-content {
  display: none;
  padding: 1rem;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  background-color: #fefefe;
  color: #0a0a0a; }
  :last-child > .accordion-content:last-child {
    border-bottom: 1px solid #e6e6e6; }

.accordion-menu li {
  width: 100%; }

.accordion-menu a {
  padding: 0.7rem 1rem; }

.accordion-menu .is-accordion-submenu a {
  padding: 0.7rem 1rem; }

.accordion-menu .nested.is-accordion-submenu {
  margin-right: 0;
  margin-left: 1rem; }

.accordion-menu.align-right .nested.is-accordion-submenu {
  margin-right: 1rem;
  margin-left: 0; }

.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a {
  position: relative; }
  .accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #fefefe transparent transparent;
    position: absolute;
    top: 50%;
    margin-top: -3px;
    right: 1rem; }

.accordion-menu.align-left .is-accordion-submenu-parent > a::after {
  right: 1rem;
  left: auto; }

.accordion-menu.align-right .is-accordion-submenu-parent > a::after {
  right: auto;
  left: 1rem; }

.accordion-menu .is-accordion-submenu-parent[aria-expanded='true'] > a::after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%; }

.is-accordion-submenu-parent {
  position: relative; }

.has-submenu-toggle > a {
  margin-right: 40px; }

.submenu-toggle {
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  cursor: pointer; }
  .submenu-toggle::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #fefefe transparent transparent;
    top: 0;
    bottom: 0;
    margin: auto; }

.submenu-toggle[aria-expanded='true']::after {
  -webkit-transform: scaleY(-1);
      -ms-transform: scaleY(-1);
          transform: scaleY(-1);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%; }

.submenu-toggle-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

.badge {
  display: inline-block;
  min-width: 2.1em;
  padding: 0.3em;
  border-radius: 50%;
  font-size: 0.6rem;
  text-align: center;
  background: #0b8793;
  color: #fefefe; }
  .badge.primary {
    background: #0b8793;
    color: #0a0a0a; }
  .badge.secondary {
    background: #fbb316;
    color: #0a0a0a; }
  .badge.success {
    background: #3adb76;
    color: #0a0a0a; }
  .badge.warning {
    background: #ffae00;
    color: #0a0a0a; }
  .badge.alert {
    background: #cc4b37;
    color: #fefefe; }

.breadcrumbs {
  margin: 0 0 1rem 0;
  list-style: none; }
  .breadcrumbs::before, .breadcrumbs::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .breadcrumbs::after {
    clear: both; }
  .breadcrumbs li {
    float: left;
    font-size: 0.6875rem;
    color: #0a0a0a;
    cursor: default;
    text-transform: uppercase; }
    .breadcrumbs li:not(:last-child)::after {
      position: relative;
      margin: 0 0.75rem;
      opacity: 1;
      content: "/";
      color: #cacaca; }
  .breadcrumbs a {
    color: #0b8793; }
    .breadcrumbs a:hover {
      text-decoration: underline; }
  .breadcrumbs .disabled {
    color: #cacaca;
    cursor: not-allowed; }

.button-group {
  margin-bottom: 1rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .button-group::before, .button-group::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .button-group::after {
    clear: both; }
  .button-group .button, .button-group .wp-block-button .wp-block-button__link, .wp-block-button .button-group .wp-block-button__link {
    margin: 0;
    margin-right: 1px;
    margin-bottom: 1px;
    font-size: 0.9rem;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
    .button-group .button:last-child, .button-group .wp-block-button .wp-block-button__link:last-child, .wp-block-button .button-group .wp-block-button__link:last-child {
      margin-right: 0; }
  .button-group.tiny .button, .button-group.tiny .wp-block-button .wp-block-button__link, .wp-block-button .button-group.tiny .wp-block-button__link {
    font-size: 0.6rem; }
  .button-group.small .button, .button-group.small .wp-block-button .wp-block-button__link, .wp-block-button .button-group.small .wp-block-button__link {
    font-size: 0.75rem; }
  .button-group.large .button, .button-group.large .wp-block-button .wp-block-button__link, .wp-block-button .button-group.large .wp-block-button__link {
    font-size: 1.25rem; }
  .button-group.expanded .button, .button-group.expanded .wp-block-button .wp-block-button__link, .wp-block-button .button-group.expanded .wp-block-button__link {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .button-group.primary .button, .button-group.primary .wp-block-button .wp-block-button__link, .wp-block-button .button-group.primary .wp-block-button__link {
    background-color: #0b8793;
    color: #0a0a0a; }
    .button-group.primary .button:hover, .button-group.primary .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.primary .wp-block-button__link:hover, .button-group.primary .button:focus, .button-group.primary .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.primary .wp-block-button__link:focus {
      background-color: #096c76;
      color: #0a0a0a; }
  .button-group.secondary .button, .button-group.secondary .wp-block-button .wp-block-button__link, .wp-block-button .button-group.secondary .wp-block-button__link {
    background-color: #fbb316;
    color: #0a0a0a; }
    .button-group.secondary .button:hover, .button-group.secondary .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.secondary .wp-block-button__link:hover, .button-group.secondary .button:focus, .button-group.secondary .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.secondary .wp-block-button__link:focus {
      background-color: #d79404;
      color: #0a0a0a; }
  .button-group.success .button, .button-group.success .wp-block-button .wp-block-button__link, .wp-block-button .button-group.success .wp-block-button__link {
    background-color: #3adb76;
    color: #0a0a0a; }
    .button-group.success .button:hover, .button-group.success .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.success .wp-block-button__link:hover, .button-group.success .button:focus, .button-group.success .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.success .wp-block-button__link:focus {
      background-color: #22bb5b;
      color: #0a0a0a; }
  .button-group.warning .button, .button-group.warning .wp-block-button .wp-block-button__link, .wp-block-button .button-group.warning .wp-block-button__link {
    background-color: #ffae00;
    color: #0a0a0a; }
    .button-group.warning .button:hover, .button-group.warning .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.warning .wp-block-button__link:hover, .button-group.warning .button:focus, .button-group.warning .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.warning .wp-block-button__link:focus {
      background-color: #cc8b00;
      color: #0a0a0a; }
  .button-group.alert .button, .button-group.alert .wp-block-button .wp-block-button__link, .wp-block-button .button-group.alert .wp-block-button__link {
    background-color: #cc4b37;
    color: #fefefe; }
    .button-group.alert .button:hover, .button-group.alert .wp-block-button .wp-block-button__link:hover, .wp-block-button .button-group.alert .wp-block-button__link:hover, .button-group.alert .button:focus, .button-group.alert .wp-block-button .wp-block-button__link:focus, .wp-block-button .button-group.alert .wp-block-button__link:focus {
      background-color: #a53b2a;
      color: #fefefe; }
  .button-group.stacked, .button-group.stacked-for-small, .button-group.stacked-for-medium {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .button-group.stacked .button, .button-group.stacked .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked .wp-block-button__link, .button-group.stacked-for-small .button, .button-group.stacked-for-small .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-small .wp-block-button__link, .button-group.stacked-for-medium .button, .button-group.stacked-for-medium .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-medium .wp-block-button__link {
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%; }
      .button-group.stacked .button:last-child, .button-group.stacked .wp-block-button .wp-block-button__link:last-child, .wp-block-button .button-group.stacked .wp-block-button__link:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-small .wp-block-button .wp-block-button__link:last-child, .wp-block-button .button-group.stacked-for-small .wp-block-button__link:last-child, .button-group.stacked-for-medium .button:last-child, .button-group.stacked-for-medium .wp-block-button .wp-block-button__link:last-child, .wp-block-button .button-group.stacked-for-medium .wp-block-button__link:last-child {
        margin-bottom: 0; }
    .button-group.stacked.expanded .button, .button-group.stacked.expanded .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked.expanded .wp-block-button__link, .button-group.stacked-for-small.expanded .button, .button-group.stacked-for-small.expanded .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-small.expanded .wp-block-button__link, .button-group.stacked-for-medium.expanded .button, .button-group.stacked-for-medium.expanded .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-medium.expanded .wp-block-button__link {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
  @media print, screen and (min-width: 40em) {
    .button-group.stacked-for-small .button, .button-group.stacked-for-small .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-small .wp-block-button__link {
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto;
      margin-bottom: 0; } }
  @media print, screen and (min-width: 64em) {
    .button-group.stacked-for-medium .button, .button-group.stacked-for-medium .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-medium .wp-block-button__link {
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto;
      margin-bottom: 0; } }
  @media screen and (max-width: 39.99875em) {
    .button-group.stacked-for-small.expanded {
      display: block; }
      .button-group.stacked-for-small.expanded .button, .button-group.stacked-for-small.expanded .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-small.expanded .wp-block-button__link {
        display: block;
        margin-right: 0; } }
  @media screen and (max-width: 47.99875em) {
    .button-group.stacked-for-medium.expanded {
      display: block; }
      .button-group.stacked-for-medium.expanded .button, .button-group.stacked-for-medium.expanded .wp-block-button .wp-block-button__link, .wp-block-button .button-group.stacked-for-medium.expanded .wp-block-button__link {
        display: block;
        margin-right: 0; } }

.callout {
  position: relative;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-radius: 0;
  background-color: white;
  color: #0a0a0a; }
  .callout > :first-child {
    margin-top: 0; }
  .callout > :last-child {
    margin-bottom: 0; }
  .callout.primary {
    background-color: #cef7fb;
    color: #0a0a0a; }
  .callout.secondary {
    background-color: #fef4dc;
    color: #0a0a0a; }
  .callout.success {
    background-color: #e1faea;
    color: #0a0a0a; }
  .callout.warning {
    background-color: #fff3d9;
    color: #0a0a0a; }
  .callout.alert {
    background-color: #f7e4e1;
    color: #0a0a0a; }
  .callout.small {
    padding-top: 0.5rem;
    padding-right: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 0.5rem; }
  .callout.large {
    padding-top: 3rem;
    padding-right: 3rem;
    padding-bottom: 3rem;
    padding-left: 3rem; }

.card {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-bottom: 1rem;
  border: 1px solid #e6e6e6;
  border-radius: 0;
  background: #fefefe;
  box-shadow: none;
  overflow: hidden;
  color: #0a0a0a; }
  .card > :last-child {
    margin-bottom: 0; }

.card-divider {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
  padding: 1rem;
  background: #e6e6e6; }
  .card-divider > :last-child {
    margin-bottom: 0; }

.card-section {
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  padding: 1rem; }
  .card-section > :last-child {
    margin-bottom: 0; }

.card-image {
  min-height: 1px; }

.close-button {
  position: absolute;
  color: #8a8a8a;
  cursor: pointer; }
  [data-whatinput='mouse'] .close-button {
    outline: 0; }
  .close-button:hover, .close-button:focus {
    color: #0a0a0a; }
  .close-button.small {
    right: 0.66rem;
    top: 0.33em;
    font-size: 1.5em;
    line-height: 1; }
  .close-button, .close-button.medium {
    right: 1rem;
    top: 0.5rem;
    font-size: 2em;
    line-height: 1; }

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  [data-whatinput='mouse'] .menu li {
    outline: 0; }
  .menu a,
  .menu .button,
  .menu .wp-block-button .wp-block-button__link,
  .wp-block-button .menu .wp-block-button__link {
    line-height: 1;
    text-decoration: none;
    display: block;
    padding: 0.7rem 1rem; }
  .menu input,
  .menu select,
  .menu a,
  .menu button {
    margin-bottom: 0; }
  .menu input {
    display: inline-block; }
  .menu, .menu.horizontal {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .menu.vertical {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .menu.expanded li {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .menu.simple {
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .menu.simple li + li {
      margin-left: 1rem; }
    .menu.simple a {
      padding: 0; }
  @media print, screen and (min-width: 40em) {
    .menu.medium-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.medium-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.medium-expanded li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.medium-simple li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media print, screen and (min-width: 48em) {
    .menu.tablet-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.tablet-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.tablet-expanded li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.tablet-simple li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media print, screen and (min-width: 64em) {
    .menu.large-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.large-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.large-expanded li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.large-simple li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media screen and (min-width: 68.75em) {
    .menu.xlarge-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.xlarge-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.xlarge-expanded li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.xlarge-simple li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media screen and (min-width: 90em) {
    .menu.xxlarge-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.xxlarge-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.xxlarge-expanded li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.xxlarge-simple li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media screen and (min-width: 60em) {
    .menu.phablet-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.phablet-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.phablet-expanded li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.phablet-simple li {
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  .menu.nested {
    margin-right: 0;
    margin-left: 1rem; }
  .menu.icons a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-left li a {
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap; }
    .menu.icon-left li a img,
    .menu.icon-left li a i,
    .menu.icon-left li a svg {
      margin-right: 0.25rem; }
  .menu.icon-right li a {
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap; }
    .menu.icon-right li a img,
    .menu.icon-right li a i,
    .menu.icon-right li a svg {
      margin-left: 0.25rem; }
  .menu.icon-top li a {
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap; }
    .menu.icon-top li a img,
    .menu.icon-top li a i,
    .menu.icon-top li a svg {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
                  -ms-grid-row-align: stretch;
              align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu.icon-bottom li a {
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap; }
    .menu.icon-bottom li a img,
    .menu.icon-bottom li a i,
    .menu.icon-bottom li a svg {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
                  -ms-grid-row-align: stretch;
              align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu .is-active > a {
    background: #0b8793;
    color: #fefefe; }
  .menu .active > a {
    background: #0b8793;
    color: #fefefe; }
  .menu.align-left {
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .menu.align-right li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
    .menu.align-right li .submenu li {
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
  .menu.align-right.vertical li {
    display: block;
    text-align: right; }
    .menu.align-right.vertical li .submenu li {
      text-align: right; }
  .menu.align-right .nested {
    margin-right: 1rem;
    margin-left: 0; }
  .menu.align-center li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .menu.align-center li .submenu li {
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
  .menu .menu-text {
    padding: 0.7rem 1rem;
    font-weight: bold;
    line-height: 1;
    color: inherit; }

.menu-centered > .menu {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .menu-centered > .menu li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .menu-centered > .menu li .submenu li {
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }

.no-js [data-responsive-menu] ul {
  display: none; }

.menu-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer; }
  .menu-icon::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #fefefe;
    box-shadow: 0 7px 0 #fefefe, 0 14px 0 #fefefe;
    content: ''; }
  .menu-icon:hover::after {
    background: #cacaca;
    box-shadow: 0 7px 0 #cacaca, 0 14px 0 #cacaca; }

.menu-icon.dark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer; }
  .menu-icon.dark::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #0a0a0a;
    box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
    content: ''; }
  .menu-icon.dark:hover::after {
    background: #8a8a8a;
    box-shadow: 0 7px 0 #8a8a8a, 0 14px 0 #8a8a8a; }

.is-drilldown {
  position: relative;
  overflow: hidden; }
  .is-drilldown li {
    display: block; }
  .is-drilldown.animate-height {
    transition: height 0.5s; }

.drilldown a {
  padding: 0.7rem 1rem;
  background: #fefefe; }

.drilldown .is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #fefefe;
  transition: -webkit-transform 0.15s linear;
  transition: transform 0.15s linear;
  transition: transform 0.15s linear, -webkit-transform 0.15s linear; }
  .drilldown .is-drilldown-submenu.is-active {
    z-index: 1;
    display: block;
    -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
            transform: translateX(-100%); }
  .drilldown .is-drilldown-submenu.is-closing {
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%); }
  .drilldown .is-drilldown-submenu a {
    padding: 0.7rem 1rem; }

.drilldown .nested.is-drilldown-submenu {
  margin-right: 0;
  margin-left: 0; }

.drilldown .drilldown-submenu-cover-previous {
  min-height: 100%; }

.drilldown .is-drilldown-submenu-parent > a {
  position: relative; }
  .drilldown .is-drilldown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #0b8793;
    position: absolute;
    top: 50%;
    margin-top: -6px;
    right: 1rem; }

.drilldown.align-left .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #0b8793;
  right: 1rem;
  left: auto; }

.drilldown.align-right .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #0b8793 transparent transparent;
  right: auto;
  left: 1rem; }

.drilldown .js-drilldown-back > a::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #0b8793 transparent transparent;
  border-left-width: 0;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.75rem; }

.dropdown-pane {
  position: absolute;
  z-index: 10;
  display: none;
  width: 300px;
  padding: 1rem;
  visibility: hidden;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  font-size: 1rem; }
  .dropdown-pane.is-opening {
    display: block; }
  .dropdown-pane.is-open {
    display: block;
    visibility: visible; }

.dropdown-pane.tiny {
  width: 100px; }

.dropdown-pane.small {
  width: 200px; }

.dropdown-pane.large {
  width: 400px; }

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  top: 100%;
  right: 0;
  left: auto; }

.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  top: 100%;
  right: auto;
  left: 0; }

.dropdown.menu > li.is-dropdown-submenu-parent > a {
  position: relative;
  padding-right: 1.5rem; }

.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #0b8793 transparent transparent;
  right: 5px;
  left: auto;
  margin-top: -3px; }

[data-whatinput='mouse'] .dropdown.menu a {
  outline: 0; }

.dropdown.menu > li > a {
  background: #2C3840;
  padding: 0.7rem 1rem; }

.dropdown.menu > li.is-active > a {
  background: transparent;
  color: #e6e6e6; }

.no-js .dropdown.menu ul {
  display: none; }

.dropdown.menu .nested.is-dropdown-submenu {
  margin-right: 0;
  margin-left: 0; }

.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0; }

.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  top: 0;
  right: 100%;
  left: auto; }

.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%; }

.dropdown.menu.vertical > li > a::after {
  right: 14px; }

.dropdown.menu.vertical > li.opens-left > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #0b8793 transparent transparent;
  right: auto;
  left: 5px; }

.dropdown.menu.vertical > li.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #0b8793; }

@media print, screen and (min-width: 40em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #0b8793 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #0b8793 transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #0b8793; } }

@media print, screen and (min-width: 48em) {
  .dropdown.menu.tablet-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.tablet-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.tablet-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.tablet-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #0b8793 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.tablet-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.tablet-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.tablet-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.tablet-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.tablet-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #0b8793 transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.tablet-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #0b8793; } }

@media print, screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #0b8793 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #0b8793 transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #0b8793; } }

@media screen and (min-width: 68.75em) {
  .dropdown.menu.xlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.xlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #0b8793 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.xlarge-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.xlarge-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.xlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.xlarge-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.xlarge-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #0b8793 transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.xlarge-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #0b8793; } }

@media screen and (min-width: 90em) {
  .dropdown.menu.xxlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.xxlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #0b8793 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.xxlarge-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.xxlarge-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.xxlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.xxlarge-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.xxlarge-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #0b8793 transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.xxlarge-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #0b8793; } }

@media screen and (min-width: 60em) {
  .dropdown.menu.phablet-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.phablet-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.phablet-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.phablet-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #0b8793 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.phablet-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.phablet-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.phablet-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.phablet-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.phablet-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #0b8793 transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.phablet-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #0b8793; } }

.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto; }

.is-dropdown-menu.vertical {
  width: 100px; }
  .is-dropdown-menu.vertical.align-right {
    float: right; }

.is-dropdown-submenu-parent {
  position: relative; }
  .is-dropdown-submenu-parent a::after {
    position: absolute;
    top: 50%;
    right: 5px;
    left: auto;
    margin-top: -6px; }
  .is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu {
    top: 100%;
    left: auto; }
  .is-dropdown-submenu-parent.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto; }
  .is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }

.is-dropdown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 1;
  display: none;
  min-width: 200px;
  border: 1px solid #cacaca;
  background: #2C3840; }
  .dropdown .is-dropdown-submenu a {
    padding: 0.7rem 1rem; }
  .is-dropdown-submenu .is-dropdown-submenu-parent > a::after {
    right: 14px; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #0b8793 transparent transparent;
    right: auto;
    left: 5px; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #0b8793; }
  .is-dropdown-submenu .is-dropdown-submenu {
    margin-top: -1px; }
  .is-dropdown-submenu > li {
    width: 100%; }
  .is-dropdown-submenu.js-dropdown-active {
    display: block; }

.responsive-embed,
.flex-video {
  position: relative;
  height: 0;
  margin-bottom: 1rem;
  padding-bottom: 75%;
  overflow: hidden; }
  .responsive-embed iframe,
  .responsive-embed object,
  .responsive-embed embed,
  .responsive-embed video,
  .flex-video iframe,
  .flex-video object,
  .flex-video embed,
  .flex-video video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .responsive-embed.widescreen,
  .flex-video.widescreen {
    padding-bottom: 56.25%; }

.label {
  display: inline-block;
  padding: 0.33333rem 0.5rem;
  border-radius: 0;
  font-size: 0.8rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #0b8793;
  color: #fefefe; }
  .label.primary {
    background: #0b8793;
    color: #0a0a0a; }
  .label.secondary {
    background: #fbb316;
    color: #0a0a0a; }
  .label.success {
    background: #3adb76;
    color: #0a0a0a; }
  .label.warning {
    background: #ffae00;
    color: #0a0a0a; }
  .label.alert {
    background: #cc4b37;
    color: #fefefe; }

.media-object {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
  .media-object img {
    max-width: none; }
  @media screen and (max-width: 39.99875em) {
    .media-object.stack-for-small {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }

.media-object-section {
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }
  .media-object-section:first-child {
    padding-right: 1rem; }
  .media-object-section:last-child:not(:nth-child(2)) {
    padding-left: 1rem; }
  .media-object-section > :last-child {
    margin-bottom: 0; }
  @media screen and (max-width: 39.99875em) {
    .stack-for-small .media-object-section {
      padding: 0;
      padding-bottom: 1rem;
      -webkit-flex-basis: 100%;
          -ms-flex-preferred-size: 100%;
              flex-basis: 100%;
      max-width: 100%; }
      .stack-for-small .media-object-section img {
        width: 100%; } }
  .media-object-section.main-section {
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }

.is-off-canvas-open {
  overflow: hidden; }

.js-off-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 11;
  width: 100%;
  height: 100%;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  background: rgba(254, 254, 254, 0.25);
  opacity: 0;
  visibility: hidden;
  overflow: hidden; }
  .js-off-canvas-overlay.is-visible {
    opacity: 1;
    visibility: visible; }
  .js-off-canvas-overlay.is-closable {
    cursor: pointer; }
  .js-off-canvas-overlay.is-overlay-absolute {
    position: absolute; }
  .js-off-canvas-overlay.is-overlay-fixed {
    position: fixed; }

.off-canvas-wrapper {
  position: relative;
  overflow: hidden; }

.off-canvas {
  position: fixed;
  z-index: 12;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #2C3840; }
  [data-whatinput='mouse'] .off-canvas {
    outline: 0; }
  .off-canvas.is-transition-push {
    z-index: 12; }
  .off-canvas.is-closed {
    visibility: hidden; }
  .off-canvas.is-transition-overlap {
    z-index: 13; }
    .off-canvas.is-transition-overlap.is-open {
      box-shadow: 0 0 10px rgba(10, 10, 10, 0.7); }
  .off-canvas.is-open {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

.off-canvas-absolute {
  position: absolute;
  z-index: 12;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #2C3840; }
  [data-whatinput='mouse'] .off-canvas-absolute {
    outline: 0; }
  .off-canvas-absolute.is-transition-push {
    z-index: 12; }
  .off-canvas-absolute.is-closed {
    visibility: hidden; }
  .off-canvas-absolute.is-transition-overlap {
    z-index: 13; }
    .off-canvas-absolute.is-transition-overlap.is-open {
      box-shadow: 0 0 10px rgba(10, 10, 10, 0.7); }
  .off-canvas-absolute.is-open {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

.position-left {
  top: 0;
  left: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(-250px);
      -ms-transform: translateX(-250px);
          transform: translateX(-250px); }
  .off-canvas-content .off-canvas.position-left {
    -webkit-transform: translateX(-250px);
        -ms-transform: translateX(-250px);
            transform: translateX(-250px); }
    .off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-left.has-transition-push {
    -webkit-transform: translateX(250px);
        -ms-transform: translateX(250px);
            transform: translateX(250px); }
  .position-left.is-transition-push {
    box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25); }

.position-right {
  top: 0;
  right: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(250px);
      -ms-transform: translateX(250px);
          transform: translateX(250px); }
  .off-canvas-content .off-canvas.position-right {
    -webkit-transform: translateX(250px);
        -ms-transform: translateX(250px);
            transform: translateX(250px); }
    .off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-right.has-transition-push {
    -webkit-transform: translateX(-250px);
        -ms-transform: translateX(-250px);
            transform: translateX(-250px); }
  .position-right.is-transition-push {
    box-shadow: inset 13px 0 20px -13px rgba(10, 10, 10, 0.25); }

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(-250px);
      -ms-transform: translateY(-250px);
          transform: translateY(-250px); }
  .off-canvas-content .off-canvas.position-top {
    -webkit-transform: translateY(-250px);
        -ms-transform: translateY(-250px);
            transform: translateY(-250px); }
    .off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-top.has-transition-push {
    -webkit-transform: translateY(250px);
        -ms-transform: translateY(250px);
            transform: translateY(250px); }
  .position-top.is-transition-push {
    box-shadow: inset 0 -13px 20px -13px rgba(10, 10, 10, 0.25); }

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(250px);
      -ms-transform: translateY(250px);
          transform: translateY(250px); }
  .off-canvas-content .off-canvas.position-bottom {
    -webkit-transform: translateY(250px);
        -ms-transform: translateY(250px);
            transform: translateY(250px); }
    .off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-bottom.has-transition-push {
    -webkit-transform: translateY(-250px);
        -ms-transform: translateY(-250px);
            transform: translateY(-250px); }
  .position-bottom.is-transition-push {
    box-shadow: inset 0 13px 20px -13px rgba(10, 10, 10, 0.25); }

.off-canvas-content {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
  .off-canvas-content.has-transition-push {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }
  .off-canvas-content .off-canvas.is-open {
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

@media print, screen and (min-width: 40em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-medium ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-medium ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-medium ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-medium {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-medium ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 48em) {
  .position-left.reveal-for-tablet {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-tablet .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-tablet {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-tablet ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-tablet {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-tablet .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-tablet {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-tablet ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-tablet {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-tablet .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-tablet {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-tablet ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-tablet {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-tablet .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-tablet {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-tablet ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-large ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-large ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-large ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-large {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-large ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media screen and (min-width: 68.75em) {
  .position-left.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-xlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-xlarge ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-xlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-xlarge ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-xlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-xlarge ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-xlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-xlarge ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media screen and (min-width: 90em) {
  .position-left.reveal-for-xxlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-xxlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-xxlarge ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-xxlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-xxlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-xxlarge ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-xxlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-xxlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-xxlarge ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-xxlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-xxlarge {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-xxlarge ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media screen and (min-width: 60em) {
  .position-left.reveal-for-phablet {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-phablet .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-phablet {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-phablet ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-phablet {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-phablet .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-phablet {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-phablet ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-phablet {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-phablet .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-phablet {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-phablet ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-phablet {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-phablet .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-phablet {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-phablet ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 40em) {
  .off-canvas.in-canvas-for-medium {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    transition: none; }
    .off-canvas.in-canvas-for-medium.position-left, .off-canvas.in-canvas-for-medium.position-right, .off-canvas.in-canvas-for-medium.position-top, .off-canvas.in-canvas-for-medium.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-medium .close-button {
      display: none; } }

@media print, screen and (min-width: 48em) {
  .off-canvas.in-canvas-for-tablet {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    transition: none; }
    .off-canvas.in-canvas-for-tablet.position-left, .off-canvas.in-canvas-for-tablet.position-right, .off-canvas.in-canvas-for-tablet.position-top, .off-canvas.in-canvas-for-tablet.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-tablet .close-button {
      display: none; } }

@media print, screen and (min-width: 64em) {
  .off-canvas.in-canvas-for-large {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    transition: none; }
    .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top, .off-canvas.in-canvas-for-large.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-large .close-button {
      display: none; } }

@media screen and (min-width: 68.75em) {
  .off-canvas.in-canvas-for-xlarge {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    transition: none; }
    .off-canvas.in-canvas-for-xlarge.position-left, .off-canvas.in-canvas-for-xlarge.position-right, .off-canvas.in-canvas-for-xlarge.position-top, .off-canvas.in-canvas-for-xlarge.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-xlarge .close-button {
      display: none; } }

@media screen and (min-width: 90em) {
  .off-canvas.in-canvas-for-xxlarge {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    transition: none; }
    .off-canvas.in-canvas-for-xxlarge.position-left, .off-canvas.in-canvas-for-xxlarge.position-right, .off-canvas.in-canvas-for-xxlarge.position-top, .off-canvas.in-canvas-for-xxlarge.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-xxlarge .close-button {
      display: none; } }

@media screen and (min-width: 60em) {
  .off-canvas.in-canvas-for-phablet {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    transition: none; }
    .off-canvas.in-canvas-for-phablet.position-left, .off-canvas.in-canvas-for-phablet.position-right, .off-canvas.in-canvas-for-phablet.position-top, .off-canvas.in-canvas-for-phablet.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-phablet .close-button {
      display: none; } }

.orbit {
  position: relative; }

.orbit-container {
  position: relative;
  height: 0;
  margin: 0;
  list-style: none;
  overflow: hidden; }

.orbit-slide {
  width: 100%;
  position: absolute; }
  .orbit-slide.no-motionui.is-active {
    top: 0;
    left: 0; }

.orbit-figure {
  margin: 0; }

.orbit-image {
  width: 100%;
  max-width: 100%;
  margin: 0; }

.orbit-caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0;
  padding: 1rem;
  background-color: rgba(10, 10, 10, 0.5);
  color: #fefefe; }

.orbit-previous, .orbit-next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
  padding: 1rem;
  color: #fefefe; }
  [data-whatinput='mouse'] .orbit-previous, [data-whatinput='mouse'] .orbit-next {
    outline: 0; }
  .orbit-previous:hover, .orbit-next:hover, .orbit-previous:active, .orbit-next:active, .orbit-previous:focus, .orbit-next:focus {
    background-color: rgba(10, 10, 10, 0.5); }

.orbit-previous {
  left: 0; }

.orbit-next {
  left: auto;
  right: 0; }

.orbit-bullets {
  position: relative;
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
  text-align: center; }
  [data-whatinput='mouse'] .orbit-bullets {
    outline: 0; }
  .orbit-bullets button {
    width: 1.2rem;
    height: 1.2rem;
    margin: 0.1rem;
    border-radius: 50%;
    background-color: #cacaca; }
    .orbit-bullets button:hover {
      background-color: #8a8a8a; }
    .orbit-bullets button.is-active {
      background-color: #8a8a8a; }

.pagination {
  margin-left: 0;
  margin-bottom: 1rem; }
  .pagination::before, .pagination::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .pagination::after {
    clear: both; }
  .pagination li {
    margin-right: 0.0625rem;
    border-radius: 0;
    font-size: 0.875rem;
    display: none; }
    .pagination li:last-child, .pagination li:first-child {
      display: inline-block; }
    @media print, screen and (min-width: 40em) {
      .pagination li {
        display: inline-block; } }
  .pagination a,
  .pagination button {
    display: block;
    padding: 0.1875rem 0.625rem;
    border-radius: 0;
    color: #0a0a0a; }
    .pagination a:hover,
    .pagination button:hover {
      background: #e6e6e6; }
  .pagination .current {
    padding: 0.1875rem 0.625rem;
    background: #0b8793;
    color: #fefefe;
    cursor: default; }
  .pagination .disabled {
    padding: 0.1875rem 0.625rem;
    color: #cacaca;
    cursor: not-allowed; }
    .pagination .disabled:hover {
      background: transparent; }
  .pagination .ellipsis::after {
    padding: 0.1875rem 0.625rem;
    content: '\2026';
    color: #0a0a0a; }

.pagination-previous a::before,
.pagination-previous.disabled::before {
  display: inline-block;
  margin-right: 0.5rem;
  content: '\00ab'; }

.pagination-next a::after,
.pagination-next.disabled::after {
  display: inline-block;
  margin-left: 0.5rem;
  content: '\00bb'; }

.progress {
  height: 1rem;
  margin-bottom: 1rem;
  border-radius: 0;
  background-color: #cacaca; }
  .progress.primary .progress-meter {
    background-color: #0b8793; }
  .progress.secondary .progress-meter {
    background-color: #fbb316; }
  .progress.success .progress-meter {
    background-color: #3adb76; }
  .progress.warning .progress-meter {
    background-color: #ffae00; }
  .progress.alert .progress-meter {
    background-color: #cc4b37; }

.progress-meter {
  position: relative;
  display: block;
  width: 0%;
  height: 100%;
  background-color: #0b8793; }

.progress-meter-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  margin: 0;
  font-size: 0.75rem;
  font-weight: bold;
  color: #fefefe;
  white-space: nowrap; }

.slider {
  position: relative;
  height: 0.5rem;
  margin-top: 1.25rem;
  margin-bottom: 2.25rem;
  background-color: #e6e6e6;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: none;
      touch-action: none; }

.slider-fill {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  max-width: 100%;
  height: 0.5rem;
  background-color: #cacaca;
  transition: all 0.2s ease-in-out; }
  .slider-fill.is-dragging {
    transition: all 0s linear; }

.slider-handle {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  z-index: 1;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 0;
  background-color: #0b8793;
  transition: all 0.2s ease-in-out;
  -ms-touch-action: manipulation;
      touch-action: manipulation; }
  [data-whatinput='mouse'] .slider-handle {
    outline: 0; }
  .slider-handle:hover {
    background-color: #09737d; }
  .slider-handle.is-dragging {
    transition: all 0s linear; }

.slider.disabled,
.slider[disabled] {
  opacity: 0.25;
  cursor: not-allowed; }

.slider.vertical {
  display: inline-block;
  width: 0.5rem;
  height: 12.5rem;
  margin: 0 1.25rem;
  -webkit-transform: scale(1, -1);
      -ms-transform: scale(1, -1);
          transform: scale(1, -1); }
  .slider.vertical .slider-fill {
    top: 0;
    width: 0.5rem;
    max-height: 100%; }
  .slider.vertical .slider-handle {
    position: absolute;
    top: 0;
    left: 50%;
    width: 1.4rem;
    height: 1.4rem;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }

.sticky-container {
  position: relative; }

.sticky {
  position: relative;
  z-index: 0;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

.sticky.is-stuck {
  position: fixed;
  z-index: 5;
  width: 100%; }
  .sticky.is-stuck.is-at-top {
    top: 0; }
  .sticky.is-stuck.is-at-bottom {
    bottom: 0; }

.sticky.is-anchored {
  position: relative;
  right: auto;
  left: auto; }
  .sticky.is-anchored.is-at-bottom {
    bottom: 0; }

html.is-reveal-open {
  position: fixed;
  width: 100%;
  overflow-y: hidden; }
  html.is-reveal-open.zf-has-scroll {
    overflow-y: scroll; }
  html.is-reveal-open body {
    overflow-y: hidden; }

.reveal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1005;
  display: none;
  background-color: rgba(10, 10, 10, 0.45);
  overflow-y: auto; }

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto; }
  [data-whatinput='mouse'] .reveal {
    outline: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      min-height: 0; } }
  .reveal .column {
    min-width: 0; }
  .reveal > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      width: 600px;
      max-width: 68.75rem; } }
  .reveal.collapse {
    padding: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal.tiny {
      width: 30%;
      max-width: 68.75rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.small {
      width: 50%;
      max-width: 68.75rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.large {
      width: 90%;
      max-width: 68.75rem; } }
  .reveal.full {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    min-height: 100%;
    margin-left: 0;
    border: 0;
    border-radius: 0; }
  @media screen and (max-width: 39.99875em) {
    .reveal {
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      width: 100%;
      max-width: none;
      height: 100%;
      min-height: 100%;
      margin-left: 0;
      border: 0;
      border-radius: 0; } }
  .reveal.without-overlay {
    position: fixed; }

.switch {
  height: 2rem;
  position: relative;
  margin-bottom: 1rem;
  outline: 0;
  font-size: 0.875rem;
  font-weight: bold;
  color: #fefefe;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.switch-input {
  position: absolute;
  margin-bottom: 0;
  opacity: 0; }

.switch-paddle {
  position: relative;
  display: block;
  width: 4rem;
  height: 2rem;
  border-radius: 0;
  background: #cacaca;
  transition: all 0.25s ease-out;
  font-weight: inherit;
  color: inherit;
  cursor: pointer; }
  input + .switch-paddle {
    margin: 0; }
  .switch-paddle::after {
    position: absolute;
    top: 0.25rem;
    left: 0.25rem;
    display: block;
    width: 1.5rem;
    height: 1.5rem;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    border-radius: 0;
    background: #fefefe;
    transition: all 0.25s ease-out;
    content: ''; }
  input:checked ~ .switch-paddle {
    background: #0b8793; }
    input:checked ~ .switch-paddle::after {
      left: 2.25rem; }
  [data-whatinput='mouse'] input:focus ~ .switch-paddle {
    outline: 0; }

.switch-active, .switch-inactive {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

.switch-active {
  left: 8%;
  display: none; }
  input:checked + label > .switch-active {
    display: block; }

.switch-inactive {
  right: 15%; }
  input:checked + label > .switch-inactive {
    display: none; }

.switch.tiny {
  height: 1.5rem; }
  .switch.tiny .switch-paddle {
    width: 3rem;
    height: 1.5rem;
    font-size: 0.625rem; }
  .switch.tiny .switch-paddle::after {
    top: 0.25rem;
    left: 0.25rem;
    width: 1rem;
    height: 1rem; }
  .switch.tiny input:checked ~ .switch-paddle::after {
    left: 1.75rem; }

.switch.small {
  height: 1.75rem; }
  .switch.small .switch-paddle {
    width: 3.5rem;
    height: 1.75rem;
    font-size: 0.75rem; }
  .switch.small .switch-paddle::after {
    top: 0.25rem;
    left: 0.25rem;
    width: 1.25rem;
    height: 1.25rem; }
  .switch.small input:checked ~ .switch-paddle::after {
    left: 2rem; }

.switch.large {
  height: 2.5rem; }
  .switch.large .switch-paddle {
    width: 5rem;
    height: 2.5rem;
    font-size: 1rem; }
  .switch.large .switch-paddle::after {
    top: 0.25rem;
    left: 0.25rem;
    width: 2rem;
    height: 2rem; }
  .switch.large input:checked ~ .switch-paddle::after {
    left: 2.75rem; }

table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0; }
  thead,
  tbody,
  tfoot {
    border: 1px solid #f1f1f1;
    background-color: #fefefe; }
  caption {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold; }
  thead {
    background: #f8f8f8;
    color: #0a0a0a; }
  tfoot {
    background: #f1f1f1;
    color: #0a0a0a; }
  thead tr,
  tfoot tr {
    background: transparent; }
  thead th,
  thead td,
  tfoot th,
  tfoot td {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold;
    text-align: left; }
  tbody th,
  tbody td {
    padding: 0.5rem 0.625rem 0.625rem; }
  tbody tr:nth-child(even) {
    border-bottom: 0;
    background-color: #f1f1f1; }
  table.unstriped tbody {
    background-color: #fefefe; }
    table.unstriped tbody tr {
      border-bottom: 0;
      border-bottom: 1px solid #f1f1f1;
      background-color: #fefefe; }

@media screen and (max-width: 47.99875em) {
  table.stack thead {
    display: none; }
  table.stack tfoot {
    display: none; }
  table.stack tr,
  table.stack th,
  table.stack td {
    display: block; }
  table.stack td {
    border-top: 0; } }

table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto; }

table.hover thead tr:hover {
  background-color: #f3f3f3; }

table.hover tfoot tr:hover {
  background-color: #ececec; }

table.hover tbody tr:hover {
  background-color: #f9f9f9; }

table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: #ececec; }

.table-scroll {
  overflow-x: auto; }

.tabs {
  margin: 0;
  border: 1px solid #e6e6e6;
  background: #fefefe;
  list-style-type: none; }
  .tabs::before, .tabs::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .tabs::after {
    clear: both; }

.tabs.vertical > li {
  display: block;
  float: none;
  width: auto; }

.tabs.simple > li > a {
  padding: 0; }
  .tabs.simple > li > a:hover {
    background: transparent; }

.tabs.primary {
  background: #0b8793; }
  .tabs.primary > li > a {
    color: #0a0a0a; }
    .tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
      background: #0c96a3; }

.tabs-title {
  float: left; }
  .tabs-title > a {
    display: block;
    padding: 1.25rem 1.5rem;
    font-size: 0.75rem;
    line-height: 1;
    color: #0b8793; }
    [data-whatinput='mouse'] .tabs-title > a {
      outline: 0; }
    .tabs-title > a:hover {
      background: #fefefe;
      color: #09747e; }
    .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
      background: #e6e6e6;
      color: #0b8793; }

.tabs-content {
  border: 1px solid #e6e6e6;
  border-top: 0;
  background: #fefefe;
  color: #0a0a0a;
  transition: all 0.5s ease; }

.tabs-content.vertical {
  border: 1px solid #e6e6e6;
  border-left: 0; }

.tabs-panel {
  display: none;
  padding: 1rem; }
  .tabs-panel.is-active {
    display: block; }

.thumbnail {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  border: solid 4px #fefefe;
  border-radius: 0;
  box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
  line-height: 0; }

a.thumbnail {
  transition: box-shadow 200ms ease-out; }
  a.thumbnail:hover, a.thumbnail:focus {
    box-shadow: 0 0 6px 1px rgba(11, 135, 147, 0.5); }
  a.thumbnail image {
    box-shadow: none; }

.title-bar {
  padding: 0.5rem;
  background: #2C3840;
  color: #fefefe;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .title-bar .menu-icon {
    margin-left: 0.25rem;
    margin-right: 0.25rem; }

.title-bar-left,
.title-bar-right {
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; }

.title-bar-right {
  text-align: right; }

.title-bar-title {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold; }

.has-tip {
  position: relative;
  display: inline-block;
  border-bottom: dotted 1px #8a8a8a;
  font-weight: bold;
  cursor: help; }

.tooltip {
  position: absolute;
  top: calc(100% + 0.6495rem);
  z-index: 1200;
  max-width: 10rem;
  padding: 0.75rem;
  border-radius: 0;
  background-color: #0a0a0a;
  font-size: 80%;
  color: #fefefe; }
  .tooltip::before {
    position: absolute; }
  .tooltip.bottom::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-top-width: 0;
    border-bottom-style: solid;
    border-color: transparent transparent #0a0a0a;
    bottom: 100%; }
  .tooltip.bottom.align-center::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .tooltip.top::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #0a0a0a transparent transparent;
    top: 100%;
    bottom: auto; }
  .tooltip.top.align-center::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .tooltip.left::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #0a0a0a;
    left: 100%; }
  .tooltip.left.align-center::before {
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .tooltip.right::before {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #0a0a0a transparent transparent;
    right: 100%;
    left: auto; }
  .tooltip.right.align-center::before {
    bottom: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .tooltip.align-top::before {
    bottom: auto;
    top: 10%; }
  .tooltip.align-bottom::before {
    bottom: 10%;
    top: auto; }
  .tooltip.align-left::before {
    left: 10%;
    right: auto; }
  .tooltip.align-right::before {
    left: auto;
    right: 10%; }

.top-bar {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .top-bar,
  .top-bar ul {
    background-color: #2C3840; }
  .top-bar input {
    max-width: 200px;
    margin-right: 1rem; }
  .top-bar .input-group-field {
    width: 100%;
    margin-right: 0; }
  .top-bar input.button, .top-bar .wp-block-button input.wp-block-button__link, .wp-block-button .top-bar input.wp-block-button__link {
    width: auto; }
  .top-bar .top-bar-left,
  .top-bar .top-bar-right {
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  @media print, screen and (min-width: 40em) {
    .top-bar {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
      .top-bar .top-bar-left {
        -webkit-flex: 1 1 auto;
            -ms-flex: 1 1 auto;
                flex: 1 1 auto;
        margin-right: auto; }
      .top-bar .top-bar-right {
        -webkit-flex: 0 1 auto;
            -ms-flex: 0 1 auto;
                flex: 0 1 auto;
        margin-left: auto; } }
  @media screen and (max-width: 47.99875em) {
    .top-bar.stacked-for-medium {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-medium .top-bar-left,
      .top-bar.stacked-for-medium .top-bar-right {
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 63.99875em) {
    .top-bar.stacked-for-tablet {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-tablet .top-bar-left,
      .top-bar.stacked-for-tablet .top-bar-right {
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 68.74875em) {
    .top-bar.stacked-for-large {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-large .top-bar-left,
      .top-bar.stacked-for-large .top-bar-right {
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 89.99875em) {
    .top-bar.stacked-for-xlarge {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-xlarge .top-bar-left,
      .top-bar.stacked-for-xlarge .top-bar-right {
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 59.99875em) {
    .top-bar.stacked-for-xxlarge {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; }
      .top-bar.stacked-for-xxlarge .top-bar-left,
      .top-bar.stacked-for-xxlarge .top-bar-right {
        -webkit-flex: 0 0 100%;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%; } }
  .top-bar.stacked-for-phablet {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .top-bar.stacked-for-phablet .top-bar-left,
    .top-bar.stacked-for-phablet .top-bar-right {
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }

.top-bar-title {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin: 0.5rem 1rem 0.5rem 0; }

.top-bar-left,
.top-bar-right {
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

@media screen and (max-width: 39.99875em) {
  .hide-for-small-only {
    display: none !important; } }

@media screen and (max-width: 0em), screen and (min-width: 40em) {
  .show-for-small-only {
    display: none !important; } }

@media print, screen and (min-width: 40em) {
  .hide-for-medium {
    display: none !important; } }

@media screen and (max-width: 39.99875em) {
  .show-for-medium {
    display: none !important; } }

@media screen and (min-width: 40em) and (max-width: 47.99875em) {
  .hide-for-medium-only {
    display: none !important; } }

@media screen and (max-width: 39.99875em), screen and (min-width: 48em) {
  .show-for-medium-only {
    display: none !important; } }

@media print, screen and (min-width: 48em) {
  .hide-for-tablet {
    display: none !important; } }

@media screen and (max-width: 47.99875em) {
  .show-for-tablet {
    display: none !important; } }

@media screen and (min-width: 48em) and (max-width: 63.99875em) {
  .hide-for-tablet-only {
    display: none !important; } }

@media screen and (max-width: 47.99875em), screen and (min-width: 64em) {
  .show-for-tablet-only {
    display: none !important; } }

@media print, screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important; } }

@media screen and (max-width: 63.99875em) {
  .show-for-large {
    display: none !important; } }

@media screen and (min-width: 64em) and (max-width: 68.74875em) {
  .hide-for-large-only {
    display: none !important; } }

@media screen and (max-width: 63.99875em), screen and (min-width: 68.75em) {
  .show-for-large-only {
    display: none !important; } }

@media screen and (min-width: 68.75em) {
  .hide-for-xlarge {
    display: none !important; } }

@media screen and (max-width: 68.74875em) {
  .show-for-xlarge {
    display: none !important; } }

@media screen and (min-width: 68.75em) and (max-width: 89.99875em) {
  .hide-for-xlarge-only {
    display: none !important; } }

@media screen and (max-width: 68.74875em), screen and (min-width: 90em) {
  .show-for-xlarge-only {
    display: none !important; } }

@media screen and (min-width: 90em) {
  .hide-for-xxlarge {
    display: none !important; } }

@media screen and (max-width: 89.99875em) {
  .show-for-xxlarge {
    display: none !important; } }

@media screen and (min-width: 90em) and (max-width: 59.99875em) {
  .hide-for-xxlarge-only {
    display: none !important; } }

@media screen and (max-width: 89.99875em), screen and (min-width: 60em) {
  .show-for-xxlarge-only {
    display: none !important; } }

@media screen and (min-width: 60em) {
  .hide-for-phablet {
    display: none !important; } }

@media screen and (max-width: 59.99875em) {
  .show-for-phablet {
    display: none !important; } }

@media screen and (min-width: 60em) {
  .hide-for-phablet-only {
    display: none !important; } }

@media screen and (max-width: 59.99875em) {
  .show-for-phablet-only {
    display: none !important; } }

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal; }

.show-for-landscape,
.hide-for-portrait {
  display: block !important; }
  @media screen and (orientation: landscape) {
    .show-for-landscape,
    .hide-for-portrait {
      display: block !important; } }
  @media screen and (orientation: portrait) {
    .show-for-landscape,
    .hide-for-portrait {
      display: none !important; } }

.hide-for-landscape,
.show-for-portrait {
  display: none !important; }
  @media screen and (orientation: landscape) {
    .hide-for-landscape,
    .show-for-portrait {
      display: none !important; } }
  @media screen and (orientation: portrait) {
    .hide-for-landscape,
    .show-for-portrait {
      display: block !important; } }

.align-left {
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.align-right {
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-justify {
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.align-spaced {
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around; }

.align-left.vertical.menu > li > a {
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.align-right.vertical.menu > li > a {
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center.vertical.menu > li > a {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-top {
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start; }

.align-self-top {
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start; }

.align-bottom {
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end; }

.align-self-bottom {
  -webkit-align-self: flex-end;
      -ms-flex-item-align: end;
          align-self: flex-end; }

.align-middle {
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.align-self-middle {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center; }

.align-stretch {
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.align-self-stretch {
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
              -ms-grid-row-align: stretch;
          align-self: stretch; }

.align-center-middle {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center; }

.small-order-1 {
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

.small-order-2 {
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2; }

.small-order-3 {
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3; }

.small-order-4 {
  -webkit-order: 4;
      -ms-flex-order: 4;
          order: 4; }

.small-order-5 {
  -webkit-order: 5;
      -ms-flex-order: 5;
          order: 5; }

.small-order-6 {
  -webkit-order: 6;
      -ms-flex-order: 6;
          order: 6; }

@media print, screen and (min-width: 40em) {
  .medium-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .medium-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .medium-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .medium-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .medium-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .medium-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media print, screen and (min-width: 48em) {
  .tablet-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .tablet-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .tablet-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .tablet-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .tablet-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .tablet-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media print, screen and (min-width: 64em) {
  .large-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .large-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .large-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .large-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .large-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .large-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 68.75em) {
  .xlarge-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .xlarge-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .xlarge-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .xlarge-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .xlarge-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .xlarge-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 90em) {
  .xxlarge-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .xxlarge-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .xxlarge-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .xxlarge-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .xxlarge-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .xxlarge-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 60em) {
  .phablet-order-1 {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .phablet-order-2 {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .phablet-order-3 {
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .phablet-order-4 {
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .phablet-order-5 {
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .phablet-order-6 {
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

.flex-container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.flex-child-auto {
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto; }

.flex-child-grow {
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto; }

.flex-child-shrink {
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }

.flex-dir-row {
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

.flex-dir-row-reverse {
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.flex-dir-column {
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }

.flex-dir-column-reverse {
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }

@media print, screen and (min-width: 40em) {
  .medium-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .medium-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .medium-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .medium-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .medium-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .medium-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .medium-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .medium-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media print, screen and (min-width: 48em) {
  .tablet-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .tablet-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .tablet-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .tablet-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .tablet-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .tablet-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .tablet-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .tablet-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media print, screen and (min-width: 64em) {
  .large-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .large-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .large-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .large-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .large-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .large-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .large-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .large-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 68.75em) {
  .xlarge-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .xlarge-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .xlarge-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .xlarge-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .xlarge-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .xlarge-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .xlarge-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .xlarge-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 90em) {
  .xxlarge-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .xxlarge-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .xxlarge-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .xxlarge-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .xxlarge-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .xxlarge-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .xxlarge-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .xxlarge-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 60em) {
  .phablet-flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .phablet-flex-child-auto {
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .phablet-flex-child-grow {
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .phablet-flex-child-shrink {
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .phablet-flex-dir-row {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .phablet-flex-dir-row-reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .phablet-flex-dir-column {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .phablet-flex-dir-column-reverse {
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

.slide-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-down.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0); }

.slide-in-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-left.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0); }

.slide-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-up.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0); }

.slide-in-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-right.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0); }

.slide-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-down.mui-leave.mui-leave-active {
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%); }

.slide-out-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-right.mui-leave.mui-leave-active {
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%); }

.slide-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-up.mui-leave.mui-leave-active {
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%); }

.slide-out-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-left.mui-leave.mui-leave-active {
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%); }

.fade-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  opacity: 0;
  transition-property: opacity; }

.fade-in.mui-enter.mui-enter-active {
  opacity: 1; }

.fade-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  opacity: 1;
  transition-property: opacity; }

.fade-out.mui-leave.mui-leave-active {
  opacity: 0; }

.hinge-in-from-top.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-top.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-right.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-bottom.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-bottom.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-left.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-x.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-middle-x.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-y.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-middle-y.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-out-from-top.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-top.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-right.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.hinge-out-from-bottom.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-bottom.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  opacity: 0; }

.hinge-out-from-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-left.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  opacity: 0; }

.hinge-out-from-middle-x.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-middle-x.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-middle-y.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-middle-y.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.scale-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.scale-in-up.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.scale-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.scale-in-down.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.scale-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.scale-out-up.mui-leave.mui-leave-active {
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  opacity: 0; }

.scale-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.scale-out-down.mui-leave.mui-leave-active {
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5);
  opacity: 0; }

.spin-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(-0.75turn);
      -ms-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.spin-in.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  opacity: 1; }

.spin-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.spin-out.mui-leave.mui-leave-active {
  -webkit-transform: rotate(0.75turn);
      -ms-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  opacity: 0; }

.spin-in-ccw.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0.75turn);
      -ms-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.spin-in-ccw.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  opacity: 1; }

.spin-out-ccw.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.spin-out-ccw.mui-leave.mui-leave-active {
  -webkit-transform: rotate(-0.75turn);
      -ms-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  opacity: 0; }

.slow {
  transition-duration: 750ms !important; }

.fast {
  transition-duration: 250ms !important; }

.linear {
  transition-timing-function: linear !important; }

.ease {
  transition-timing-function: ease !important; }

.ease-in {
  transition-timing-function: ease-in !important; }

.ease-out {
  transition-timing-function: ease-out !important; }

.ease-in-out {
  transition-timing-function: ease-in-out !important; }

.bounce-in {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  transition-delay: 300ms !important; }

.long-delay {
  transition-delay: 700ms !important; }

.shake {
  -webkit-animation-name: shake-7;
          animation-name: shake-7; }

@-webkit-keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%); } }

@keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%); } }

.spin-cw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn; }

@-webkit-keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

.spin-ccw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn; }

@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(1turn);
            transform: rotate(1turn); } }

.wiggle {
  -webkit-animation-name: wiggle-7deg;
          animation-name: wiggle-7deg; }

@-webkit-keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg); }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg); }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg); }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg); }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

.shake,
.spin-cw,
.spin-ccw,
.wiggle {
  -webkit-animation-duration: 500ms;
          animation-duration: 500ms; }

.infinite {
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite; }

.slow {
  -webkit-animation-duration: 750ms !important;
          animation-duration: 750ms !important; }

.fast {
  -webkit-animation-duration: 250ms !important;
          animation-duration: 250ms !important; }

.linear {
  -webkit-animation-timing-function: linear !important;
          animation-timing-function: linear !important; }

.ease {
  -webkit-animation-timing-function: ease !important;
          animation-timing-function: ease !important; }

.ease-in {
  -webkit-animation-timing-function: ease-in !important;
          animation-timing-function: ease-in !important; }

.ease-out {
  -webkit-animation-timing-function: ease-out !important;
          animation-timing-function: ease-out !important; }

.ease-in-out {
  -webkit-animation-timing-function: ease-in-out !important;
          animation-timing-function: ease-in-out !important; }

.bounce-in {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  -webkit-animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  -webkit-animation-delay: 300ms !important;
          animation-delay: 300ms !important; }

.long-delay {
  -webkit-animation-delay: 700ms !important;
          animation-delay: 700ms !important; }

/*
  My custom styles:
  Add your scss files below to structure your project styles
*/
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden; }

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; }

#wpadminbar {
  position: fixed !important; }

body.admin-bar.f-topbar-fixed .sticky.fixed {
  margin-top: 2rem; }

body.admin-bar.offcanvas .off-canvas.is-open {
  top: 2.875rem; }
  @media screen and (min-width: 48.9375em) {
    body.admin-bar.offcanvas .off-canvas.is-open {
      top: 2rem; } }

body {
  background: #fafafa url(//stablekernel.com/wp-content/themes/Stable-Kernel-Foundation/dist/assets/css/../images/hex-node-grid-light.png) 0 0 repeat; }
  body.open {
    overflow: hidden; }

.wp-caption > figcaption {
  max-width: 100%;
  font-size: 0.8rem;
  color: #999;
  padding: 0.25rem 0; }

p.wp-caption-text {
  font-size: 90%;
  color: #666;
  padding: 0.625rem 0; }

.alignleft {
  float: left;
  padding-right: 1rem;
  margin: 0; }

.alignright {
  float: right;
  padding-left: 1rem;
  margin: 0; }

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.gallery {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery {
      margin-right: -1.25rem;
      margin-left: -1.25rem; } }
  .gallery.gallery-columns-1 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-1 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-1 > .gallery-item {
      width: calc(100% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-2 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-2 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-2 > .gallery-item {
      width: calc(50% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-3 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-3 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-3 > .gallery-item {
      width: calc(33.33333% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-4 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-4 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-4 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-5 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-5 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-5 > .gallery-item {
      width: calc(20% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-6 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-6 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-6 > .gallery-item {
      width: calc(16.66667% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-7 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-7 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-7 > .gallery-item {
      width: calc(14.28571% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-8 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-8 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-8 > .gallery-item {
      width: calc(12.5% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-9 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-9 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-9 > .gallery-item {
      width: calc(11.11111% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery .gallery-icon > a {
    display: inline-block;
    max-width: 100%;
    margin-bottom: 1rem;
    border: solid 4px #fefefe;
    border-radius: 0;
    box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
    line-height: 0;
    transition: box-shadow 200ms ease-out; }
    .gallery .gallery-icon > a:hover, .gallery .gallery-icon > a:focus {
      box-shadow: 0 0 6px 1px rgba(11, 135, 147, 0.5); }
    .gallery .gallery-icon > a image {
      box-shadow: none; }
  .gallery .gallery-icon > img {
    display: inline-block;
    max-width: 100%;
    margin-bottom: 1rem;
    border: solid 4px #fefefe;
    border-radius: 0;
    box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
    line-height: 0; }

code {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  color: #000;
  font-weight: bold; }

pre[class*="language-"] {
  background: #fff !important;
  border: 1px solid rgba(0, 0, 0, 0.1) !important;
  padding: 40px !important; }
  pre[class*="language-"] code {
    border: none;
    font-weight: normal; }

.blog-entry ol {
  counter-reset: ordered-list;
  list-style: none;
  margin: 0 0 0 15px;
  padding: 0; }
  .blog-entry ol li {
    list-style: none;
    margin: 0 0 15px;
    padding: 0 0 0 30px;
    position: relative; }
    .blog-entry ol li:before {
      counter-increment: ordered-list;
      content: counter(ordered-list) ".";
      position: absolute;
      left: 0;
      color: rgba(0, 0, 0, 0.5); }

.blog-entry ul {
  list-style: none;
  margin: 0 0 0 15px;
  padding: 0; }
  .blog-entry ul li {
    list-style: none;
    margin: 0 0 15px;
    padding: 0 0 0 30px;
    position: relative; }
    .blog-entry ul li:before {
      font-family: "Font Awesome 5 Pro";
      font-size: 16px;
      content: "\f0da";
      padding-right: 20px;
      color: rgba(0, 0, 0, 0.5);
      font-weight: 900;
      position: absolute;
      left: 0; }

blockquote.wp-block-quote {
  padding: 10px 0 10px 35px;
  font-family: 'mislab-std', 'Courier', serif;
  font-weight: 500;
  color: #252525;
  border-width: 0 0 0 4px;
  border-style: solid;
  border-image: linear-gradient(to bottom, #0b8793, #360033) 1 100%;
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ }
  blockquote.wp-block-quote p {
    color: #252525;
    font-size: 1.25em; }
  blockquote.wp-block-quote cite {
    font-size: 1em;
    color: #252525;
    position: relative;
    padding-left: 30px;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 500;
    font-style: normal; }
    blockquote.wp-block-quote cite:before {
      position: absolute;
      left: 0; }

.wp-block-pullquote:not(.is-style-solid-color) {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
  background: #0b8793;
  /* Old browsers */
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #0b8793 0%, #360033 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
  margin: 50px 0;
  width: 100vw;
  margin-left: 50% !important;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  padding: 0; }
  .wp-block-pullquote:not(.is-style-solid-color) blockquote {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 68.75rem;
    margin: 0 auto;
    border: 0;
    font-family: 'mislab-std', 'Courier', serif;
    font-weight: 500;
    padding: 50px;
    position: relative;
    z-index: 1; }
    @media print, screen and (min-width: 40em) {
      .wp-block-pullquote:not(.is-style-solid-color) blockquote {
        padding-right: 1.25rem;
        padding-left: 1.25rem; } }
    .wp-block-pullquote:not(.is-style-solid-color) blockquote p {
      color: #ffffff;
      font-size: 1.25em;
      width: calc(83.33333% - 1.25rem);
      margin-right: 0.625rem;
      margin-left: 0.625rem;
      margin-right: auto !important;
      margin-left: auto !important;
      margin-bottom: 0; }
      .wp-block-pullquote:not(.is-style-solid-color) blockquote p + p {
        margin-top: 20px; }
  .wp-block-pullquote:not(.is-style-solid-color):after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(//stablekernel.com/wp-content/themes/Stable-Kernel-Foundation/dist/assets/css/../images/hex-node-grid-dark.png) 0 0 repeat; }

.wp-block-embed {
  width: 75%;
  margin: 0 auto; }
  @media screen and (max-width: 47.99875em) {
    .wp-block-embed {
      width: 100%; } }

.wp-block-embed__wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%; }

.wp-block-embed__wrapper iframe,
.wp-block-embed__wrapper object,
.wp-block-embed__wrapper embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.wp-block-image {
  margin-top: 50px;
  margin-bottom: 50px; }
  .wp-block-image figure figcaption {
    margin-top: 15px; }

#video-modal {
  width: 80%;
  max-width: 800px;
  padding-top: 50px; }
  #video-modal .responsive-embed {
    margin-bottom: 0; }

/*
Frontend styles for gutenberg blocks
*/
/** === Base Color Palatte === */
.has-primary-background-color {
  background-color: #0b8793; }

.has-primary-color {
  color: #0b8793; }

.has-secondary-background-color {
  background-color: #fbb316; }

.has-secondary-color {
  color: #fbb316; }

.has-success-background-color {
  background-color: #3adb76; }

.has-success-color {
  color: #3adb76; }

.has-warning-background-color {
  background-color: #ffae00; }

.has-warning-color {
  color: #ffae00; }

.has-alert-background-color {
  background-color: #cc4b37; }

.has-alert-color {
  color: #cc4b37; }

/** === Button === */
.wp-block-button .wp-block-button__link.has-primary-background-color {
  background-color: #0b8793; }

.wp-block-button .wp-block-button__link.has-primary-color {
  color: #0b8793; }

.wp-block-button .wp-block-button__link.has-secondary-background-color {
  background-color: #fbb316; }

.wp-block-button .wp-block-button__link.has-secondary-color {
  color: #fbb316; }

.wp-block-button .wp-block-button__link.has-success-background-color {
  background-color: #3adb76; }

.wp-block-button .wp-block-button__link.has-success-color {
  color: #3adb76; }

.wp-block-button .wp-block-button__link.has-warning-background-color {
  background-color: #ffae00; }

.wp-block-button .wp-block-button__link.has-warning-color {
  color: #ffae00; }

.wp-block-button .wp-block-button__link.has-alert-background-color {
  background-color: #cc4b37; }

.wp-block-button .wp-block-button__link.has-alert-color {
  color: #cc4b37; }

.wp-block-button.is-style-squared .wp-block-button__link {
  border-radius: 0; }

/** === File === */
.wp-block-file .wp-block-file__button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.85em 1em;
  border: 1px solid transparent;
  border-radius: 0;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-family: inherit;
  font-size: 0.9rem;
  -webkit-appearance: none;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #0b8793;
  color: #fefefe; }
  [data-whatinput='mouse'] .wp-block-file .wp-block-file__button {
    outline: 0; }
  .wp-block-file .wp-block-file__button:hover, .wp-block-file .wp-block-file__button:focus {
    background-color: #09737d;
    color: #fefefe; }

footer ._form ._form-content {
  text-align: left;
  font-size: 0; }
  footer ._form ._form-content > * {
    font-size: 1rem; }

footer ._form ._form-title {
  margin-bottom: 1em; }

footer ._form ._form-branding {
  display: none; }

footer ._form ._form-label {
  display: none; }

footer ._form [type='text'], footer ._form [type='password'], footer ._form [type='date'], footer ._form [type='datetime'], footer ._form [type='datetime-local'], footer ._form [type='month'], footer ._form [type='week'], footer ._form [type='email'], footer ._form [type='number'], footer ._form [type='search'], footer ._form [type='tel'], footer ._form [type='time'], footer ._form [type='url'], footer ._form [type='color'], footer ._form ._submit {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.4375em;
  margin: 0 0 1em;
  padding: 0.5em;
  border: 0;
  border-radius: 0;
  background-color: #fefefe;
  box-shadow: none;
  font-family: inherit;
  font-size: 1em;
  font-weight: normal;
  line-height: 1.5;
  color: #252525;
  transition: background-color 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

footer ._form ._inline-style:not(._clear) {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  max-width: calc(100% - 135px); }
  footer ._form ._inline-style:not(._clear) input {
    border-radius: .25em 0 0 .25em; }

footer ._form ._button-wrapper._inline-style {
  width: 134px; }
  footer ._form ._button-wrapper._inline-style button {
    background: #0b8793;
    color: #fefefe;
    text-transform: uppercase;
    padding: .5em 1.5em;
    border-radius: 0 .25em .25em 0;
    cursor: pointer;
    font-size: 1em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 700; }
    footer ._form ._button-wrapper._inline-style button:hover {
      background-color: #09717b; }

footer .hbspt-form .inputs-list {
  list-style: none;
  margin: 0;
  padding: 0; }
  footer .hbspt-form .inputs-list li {
    list-style: none;
    margin: 0;
    padding: 0; }
    footer .hbspt-form .inputs-list li label {
      display: -webkit-flex !important;
      display: -ms-flexbox !important;
      display: flex !important;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      position: relative !important;
      top: auto;
      left: auto; }
    footer .hbspt-form .inputs-list li:before {
      display: none; }

footer .hbspt-form .hs_error_rollup {
  display: none; }

footer .hbspt-form .hs-error-msg {
  font-size: 0.75em;
  font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
  font-weight: 500;
  margin-top: -5px;
  margin-bottom: 15px;
  margin-left: 15px;
  color: #ffffff; }

footer .hbspt-form .form {
  text-align: left;
  font-size: 0; }
  footer .hbspt-form .form > * {
    font-size: 1rem; }

footer .hbspt-form label {
  display: none; }

footer .hbspt-form [type='text'], footer .hbspt-form [type='password'], footer .hbspt-form [type='date'], footer .hbspt-form [type='datetime'], footer .hbspt-form [type='datetime-local'], footer .hbspt-form [type='month'], footer .hbspt-form [type='week'], footer .hbspt-form [type='email'], footer .hbspt-form [type='number'], footer .hbspt-form [type='search'], footer .hbspt-form [type='tel'], footer .hbspt-form [type='time'], footer .hbspt-form [type='url'], footer .hbspt-form [type='color'], footer .hbspt-form ._submit {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.4375em;
  margin: 0 0 1em;
  padding: 0.5em;
  border: 0;
  border-radius: 0;
  background-color: #fefefe;
  box-shadow: none;
  font-family: inherit;
  font-size: 1em;
  font-weight: normal;
  line-height: 1.5;
  color: #252525;
  transition: background-color 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

footer .hbspt-form div.hs-form-field {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  max-width: calc(100% - 135px); }
  footer .hbspt-form div.hs-form-field input {
    border-radius: .25em 0 0 .25em; }

footer .hbspt-form div.hs-submit {
  width: 134px;
  display: inline-block;
  max-width: calc(100% - 135px); }
  footer .hbspt-form div.hs-submit input[type=submit] {
    background: #0b8793;
    color: #fefefe;
    text-transform: uppercase;
    padding: .5em 1.5em;
    border-radius: 0 .25em .25em 0;
    cursor: pointer;
    font-size: 1em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 700;
    border: none;
    width: 100%;
    display: block;
    box-sizing: border-box;
    height: 2.4375em;
    margin: 0 0 1em;
    box-shadow: none;
    font-family: inherit;
    font-size: 1em;
    font-weight: normal;
    line-height: 1.5;
    transition: background-color 0.5s, border-color 0.25s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
    footer .hbspt-form div.hs-submit input[type=submit]:hover {
      background-color: #09717b; }

.open-text ._form ._form-content {
  text-align: left;
  font-size: 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .open-text ._form ._form-content > * {
    font-size: 1rem; }

.open-text ._form ._form-title {
  margin-bottom: 1em; }

.open-text ._form ._form-branding {
  display: none; }

.open-text ._form ._form-label {
  display: none; }

.open-text ._form [type='text'],
.open-text ._form [type='password'],
.open-text ._form [type='date'],
.open-text ._form [type='datetime'],
.open-text ._form [type='datetime-local'],
.open-text ._form [type='month'],
.open-text ._form [type='week'],
.open-text ._form [type='email'],
.open-text ._form [type='number'],
.open-text ._form [type='search'],
.open-text ._form [type='tel'],
.open-text ._form [type='time'],
.open-text ._form [type='url'],
.open-text ._form [type='color'],
.open-text ._form textarea,
.open-text ._form select {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  margin: 0 0 30px;
  padding: 12px 16px;
  border: 1px solid #0b8793;
  border-radius: 3px;
  background-color: #fefefe;
  box-shadow: none;
  font-family: inherit;
  font-size: 1em;
  font-weight: normal;
  line-height: 1.5;
  color: #252525;
  transition: background-color 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }
  .open-text ._form [type='text']::-webkit-input-placeholder,
  .open-text ._form [type='password']::-webkit-input-placeholder,
  .open-text ._form [type='date']::-webkit-input-placeholder,
  .open-text ._form [type='datetime']::-webkit-input-placeholder,
  .open-text ._form [type='datetime-local']::-webkit-input-placeholder,
  .open-text ._form [type='month']::-webkit-input-placeholder,
  .open-text ._form [type='week']::-webkit-input-placeholder,
  .open-text ._form [type='email']::-webkit-input-placeholder,
  .open-text ._form [type='number']::-webkit-input-placeholder,
  .open-text ._form [type='search']::-webkit-input-placeholder,
  .open-text ._form [type='tel']::-webkit-input-placeholder,
  .open-text ._form [type='time']::-webkit-input-placeholder,
  .open-text ._form [type='url']::-webkit-input-placeholder,
  .open-text ._form [type='color']::-webkit-input-placeholder,
  .open-text ._form textarea::-webkit-input-placeholder,
  .open-text ._form select::-webkit-input-placeholder {
    color: #a9a9a9; }
  .open-text ._form [type='text']:-ms-input-placeholder,
  .open-text ._form [type='password']:-ms-input-placeholder,
  .open-text ._form [type='date']:-ms-input-placeholder,
  .open-text ._form [type='datetime']:-ms-input-placeholder,
  .open-text ._form [type='datetime-local']:-ms-input-placeholder,
  .open-text ._form [type='month']:-ms-input-placeholder,
  .open-text ._form [type='week']:-ms-input-placeholder,
  .open-text ._form [type='email']:-ms-input-placeholder,
  .open-text ._form [type='number']:-ms-input-placeholder,
  .open-text ._form [type='search']:-ms-input-placeholder,
  .open-text ._form [type='tel']:-ms-input-placeholder,
  .open-text ._form [type='time']:-ms-input-placeholder,
  .open-text ._form [type='url']:-ms-input-placeholder,
  .open-text ._form [type='color']:-ms-input-placeholder,
  .open-text ._form textarea:-ms-input-placeholder,
  .open-text ._form select:-ms-input-placeholder {
    color: #a9a9a9; }
  .open-text ._form [type='text']::placeholder,
  .open-text ._form [type='password']::placeholder,
  .open-text ._form [type='date']::placeholder,
  .open-text ._form [type='datetime']::placeholder,
  .open-text ._form [type='datetime-local']::placeholder,
  .open-text ._form [type='month']::placeholder,
  .open-text ._form [type='week']::placeholder,
  .open-text ._form [type='email']::placeholder,
  .open-text ._form [type='number']::placeholder,
  .open-text ._form [type='search']::placeholder,
  .open-text ._form [type='tel']::placeholder,
  .open-text ._form [type='time']::placeholder,
  .open-text ._form [type='url']::placeholder,
  .open-text ._form [type='color']::placeholder,
  .open-text ._form textarea::placeholder,
  .open-text ._form select::placeholder {
    color: #a9a9a9; }

.open-text ._form select {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28138, 138, 138%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  color: rgba(37, 37, 37, 0.4); }

.open-text ._form textarea {
  height: 180px; }

.open-text ._form ._checkbox-radio {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 20px;
  position: relative; }
  .open-text ._form ._checkbox-radio label {
    -webkit-transform: translateY(1px);
        -ms-transform: translateY(1px);
            transform: translateY(1px); }
    .open-text ._form ._checkbox-radio label:after {
      content: none;
      display: inline-block;
      height: 6px;
      width: 9px;
      border-left: 2px solid #0b8793;
      border-bottom: 2px solid #0b8793;
      -webkit-transform: rotate(-45deg);
          -ms-transform: rotate(-45deg);
              transform: rotate(-45deg);
      position: absolute;
      left: -22px;
      top: 7px; }

.open-text ._form [type='checkbox'] {
  margin: 0 10px 0 0;
  display: block;
  box-sizing: border-box;
  width: 15px;
  height: 15px;
  border: 1px solid #0b8793;
  border-radius: 3px;
  background-color: #fefefe;
  box-shadow: none;
  color: #252525;
  transition: background-color 0.25s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }
  .open-text ._form [type='checkbox']:focus {
    outline: none; }

.open-text ._form [type='checkbox']:checked + span label:after {
  content: ""; }

.open-text ._form ._submit {
  background: #0b8793;
  font-weight: bold;
  border: none;
  font-size: 1em;
  font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .8px;
  padding: 15px 35px;
  border-radius: 4px;
  color: #ffffff;
  box-shadow: 0 2px 8px 0 rgba(255, 255, 255, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.5); }

.open-text ._form ._full_width {
  -webkit-flex: 1 0 50%;
      -ms-flex: 1 0 50%;
          flex: 1 0 50%;
  width: 50%;
  padding: 0 20px; }
  .open-text ._form ._full_width._field1 {
    -webkit-flex: 1 0 100%;
        -ms-flex: 1 0 100%;
            flex: 1 0 100%;
    width: 100%; }
  @media screen and (max-width: 47.99875em) {
    .open-text ._form ._full_width {
      -webkit-flex: 1 0 100%;
          -ms-flex: 1 0 100%;
              flex: 1 0 100%;
      width: 100%; } }

.open-text ._form ._button-wrapper {
  text-align: center;
  margin-top: 25px;
  -webkit-flex: 1 0 100%;
      -ms-flex: 1 0 100%;
          flex: 1 0 100%;
  width: 100%;
  padding: 0 20px; }

.open-text ._form ._clear {
  -webkit-flex: 1 0 100%;
      -ms-flex: 1 0 100%;
          flex: 1 0 100%;
  width: 100%;
  padding: 0 20px; }

.open-text ._form ._button-wrapper._inline-style {
  width: 134px; }
  .open-text ._form ._button-wrapper._inline-style button {
    background: #0b8793;
    color: #fefefe;
    text-transform: uppercase;
    padding: .5em 1.5em;
    border-radius: 0 .25em .25em 0;
    cursor: pointer;
    font-size: 1em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 700; }
    .open-text ._form ._button-wrapper._inline-style button:hover {
      background-color: #09717b; }

.open-text ._form-thank-you {
  text-align: center;
  border: 1px solid #0b8793;
  background: rgba(11, 135, 147, 0.1);
  padding: 30px;
  margin: 15px; }

.open-text ._error._above, .open-text ._error._below {
  font-size: .7em;
  color: red;
  position: absolute;
  -webkit-transform: translateY(-28px);
      -ms-transform: translateY(-28px);
          transform: translateY(-28px);
  font-style: italic; }

.open-text .hbspt-form .hs_error_rollup, .blog-entry article .hbspt-form .hs_error_rollup {
  display: none; }

.open-text .hbspt-form form, .blog-entry article .hbspt-form form {
  text-align: left;
  font-size: 0;
  padding: 0px 0; }
  .open-text .hbspt-form form > *, .blog-entry article .hbspt-form form > * {
    font-size: 1rem; }
  .open-text .hbspt-form form fieldset, .blog-entry article .hbspt-form form fieldset {
    max-width: none;
    display: block;
    margin: 0 -20px 30px; }
    @media screen and (max-width: 47.99875em) {
      .open-text .hbspt-form form fieldset, .blog-entry article .hbspt-form form fieldset {
        margin: 0 -20px 0px; }
        .open-text .hbspt-form form fieldset:last-of-type, .blog-entry article .hbspt-form form fieldset:last-of-type {
          margin-bottom: 20px; } }
    .open-text .hbspt-form form fieldset.form-columns-1 .hs-input,
    .open-text .hbspt-form form fieldset.form-columns-1 .input, .blog-entry article .hbspt-form form fieldset.form-columns-1 .hs-input,
    .blog-entry article .hbspt-form form fieldset.form-columns-1 .input {
      margin: 0;
      width: 100%; }
      @media screen and (max-width: 47.99875em) {
        .open-text .hbspt-form form fieldset.form-columns-1 .hs-input,
        .open-text .hbspt-form form fieldset.form-columns-1 .input, .blog-entry article .hbspt-form form fieldset.form-columns-1 .hs-input,
        .blog-entry article .hbspt-form form fieldset.form-columns-1 .input {
          width: 100% !important; }
          .open-text .hbspt-form form fieldset.form-columns-1 .hs-input [type='checkbox'],
          .open-text .hbspt-form form fieldset.form-columns-1 .input [type='checkbox'], .blog-entry article .hbspt-form form fieldset.form-columns-1 .hs-input [type='checkbox'],
          .blog-entry article .hbspt-form form fieldset.form-columns-1 .input [type='checkbox'] {
            width: 20px !important;
            height: 20px !important; } }
    .open-text .hbspt-form form fieldset.form-columns-2 .hs-input,
    .open-text .hbspt-form form fieldset.form-columns-2 .input, .blog-entry article .hbspt-form form fieldset.form-columns-2 .hs-input,
    .blog-entry article .hbspt-form form fieldset.form-columns-2 .input {
      margin: 0;
      width: 100%; }
      @media screen and (max-width: 47.99875em) {
        .open-text .hbspt-form form fieldset.form-columns-2 .hs-input,
        .open-text .hbspt-form form fieldset.form-columns-2 .input, .blog-entry article .hbspt-form form fieldset.form-columns-2 .hs-input,
        .blog-entry article .hbspt-form form fieldset.form-columns-2 .input {
          width: 100% !important; }
          .open-text .hbspt-form form fieldset.form-columns-2 .hs-input [type='checkbox'],
          .open-text .hbspt-form form fieldset.form-columns-2 .input [type='checkbox'], .blog-entry article .hbspt-form form fieldset.form-columns-2 .hs-input [type='checkbox'],
          .blog-entry article .hbspt-form form fieldset.form-columns-2 .input [type='checkbox'] {
            width: 20px !important;
            height: 20px !important; } }
    .open-text .hbspt-form form fieldset.form-columns-1 .hs-form-field, .blog-entry article .hbspt-form form fieldset.form-columns-1 .hs-form-field {
      float: none;
      width: 100%;
      padding-left: 20px;
      padding-right: 20px; }
      @media screen and (max-width: 47.99875em) {
        .open-text .hbspt-form form fieldset.form-columns-1 .hs-form-field, .blog-entry article .hbspt-form form fieldset.form-columns-1 .hs-form-field {
          width: 100% !important; } }
    .open-text .hbspt-form form fieldset.form-columns-2 .hs-form-field, .blog-entry article .hbspt-form form fieldset.form-columns-2 .hs-form-field {
      float: left;
      width: 50%;
      padding-left: 20px;
      padding-right: 20px; }
      @media screen and (max-width: 47.99875em) {
        .open-text .hbspt-form form fieldset.form-columns-2 .hs-form-field, .blog-entry article .hbspt-form form fieldset.form-columns-2 .hs-form-field {
          width: 100% !important; }
          .open-text .hbspt-form form fieldset.form-columns-2 .hs-form-field [type='checkbox'], .blog-entry article .hbspt-form form fieldset.form-columns-2 .hs-form-field [type='checkbox'] {
            width: 20px !important;
            height: 20px !important; } }
    .open-text .hbspt-form form fieldset .hs-form-field, .blog-entry article .hbspt-form form fieldset .hs-form-field {
      position: relative; }
      @media screen and (max-width: 47.99875em) {
        .open-text .hbspt-form form fieldset .hs-form-field, .blog-entry article .hbspt-form form fieldset .hs-form-field {
          margin-bottom: 20px; } }
    .open-text .hbspt-form form fieldset label, .blog-entry article .hbspt-form form fieldset label {
      position: absolute;
      top: 13px;
      left: 37px;
      font-family: inherit;
      font-size: 1em;
      font-weight: normal;
      line-height: 1.5;
      color: rgba(37, 37, 37, 0.5);
      pointer-events: none;
      transition: all 200ms; }
      .open-text .hbspt-form form fieldset label.float-me, .blog-entry article .hbspt-form form fieldset label.float-me {
        -webkit-transform: scale(0.6);
            -ms-transform: scale(0.6);
                transform: scale(0.6);
        top: 8px;
        -webkit-transform-origin: left top;
            -ms-transform-origin: left top;
                transform-origin: left top;
        color: #0b8793; }

.open-text .hbspt-form [type='text'],
.open-text .hbspt-form [type='password'],
.open-text .hbspt-form [type='date'],
.open-text .hbspt-form [type='datetime'],
.open-text .hbspt-form [type='datetime-local'],
.open-text .hbspt-form [type='month'],
.open-text .hbspt-form [type='week'],
.open-text .hbspt-form [type='email'],
.open-text .hbspt-form [type='number'],
.open-text .hbspt-form [type='search'],
.open-text .hbspt-form [type='tel'],
.open-text .hbspt-form [type='time'],
.open-text .hbspt-form [type='url'],
.open-text .hbspt-form [type='color'],
.open-text .hbspt-form textarea,
.open-text .hbspt-form select, .blog-entry article .hbspt-form [type='text'],
.blog-entry article .hbspt-form [type='password'],
.blog-entry article .hbspt-form [type='date'],
.blog-entry article .hbspt-form [type='datetime'],
.blog-entry article .hbspt-form [type='datetime-local'],
.blog-entry article .hbspt-form [type='month'],
.blog-entry article .hbspt-form [type='week'],
.blog-entry article .hbspt-form [type='email'],
.blog-entry article .hbspt-form [type='number'],
.blog-entry article .hbspt-form [type='search'],
.blog-entry article .hbspt-form [type='tel'],
.blog-entry article .hbspt-form [type='time'],
.blog-entry article .hbspt-form [type='url'],
.blog-entry article .hbspt-form [type='color'],
.blog-entry article .hbspt-form textarea,
.blog-entry article .hbspt-form select {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  margin: 0 0 30px;
  padding: 18px 16px 6px;
  border: 1px solid #0b8793;
  border-radius: 3px;
  background-color: #fefefe;
  box-shadow: none;
  font-family: inherit;
  font-size: 1em;
  font-weight: normal;
  line-height: 1.5;
  color: #252525;
  transition: background-color 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }
  .open-text .hbspt-form [type='text']::-webkit-input-placeholder,
  .open-text .hbspt-form [type='password']::-webkit-input-placeholder,
  .open-text .hbspt-form [type='date']::-webkit-input-placeholder,
  .open-text .hbspt-form [type='datetime']::-webkit-input-placeholder,
  .open-text .hbspt-form [type='datetime-local']::-webkit-input-placeholder,
  .open-text .hbspt-form [type='month']::-webkit-input-placeholder,
  .open-text .hbspt-form [type='week']::-webkit-input-placeholder,
  .open-text .hbspt-form [type='email']::-webkit-input-placeholder,
  .open-text .hbspt-form [type='number']::-webkit-input-placeholder,
  .open-text .hbspt-form [type='search']::-webkit-input-placeholder,
  .open-text .hbspt-form [type='tel']::-webkit-input-placeholder,
  .open-text .hbspt-form [type='time']::-webkit-input-placeholder,
  .open-text .hbspt-form [type='url']::-webkit-input-placeholder,
  .open-text .hbspt-form [type='color']::-webkit-input-placeholder,
  .open-text .hbspt-form textarea::-webkit-input-placeholder,
  .open-text .hbspt-form select::-webkit-input-placeholder, .blog-entry article .hbspt-form [type='text']::-webkit-input-placeholder,
  .blog-entry article .hbspt-form [type='password']::-webkit-input-placeholder,
  .blog-entry article .hbspt-form [type='date']::-webkit-input-placeholder,
  .blog-entry article .hbspt-form [type='datetime']::-webkit-input-placeholder,
  .blog-entry article .hbspt-form [type='datetime-local']::-webkit-input-placeholder,
  .blog-entry article .hbspt-form [type='month']::-webkit-input-placeholder,
  .blog-entry article .hbspt-form [type='week']::-webkit-input-placeholder,
  .blog-entry article .hbspt-form [type='email']::-webkit-input-placeholder,
  .blog-entry article .hbspt-form [type='number']::-webkit-input-placeholder,
  .blog-entry article .hbspt-form [type='search']::-webkit-input-placeholder,
  .blog-entry article .hbspt-form [type='tel']::-webkit-input-placeholder,
  .blog-entry article .hbspt-form [type='time']::-webkit-input-placeholder,
  .blog-entry article .hbspt-form [type='url']::-webkit-input-placeholder,
  .blog-entry article .hbspt-form [type='color']::-webkit-input-placeholder,
  .blog-entry article .hbspt-form textarea::-webkit-input-placeholder,
  .blog-entry article .hbspt-form select::-webkit-input-placeholder {
    color: #a9a9a9; }
  .open-text .hbspt-form [type='text']:-ms-input-placeholder,
  .open-text .hbspt-form [type='password']:-ms-input-placeholder,
  .open-text .hbspt-form [type='date']:-ms-input-placeholder,
  .open-text .hbspt-form [type='datetime']:-ms-input-placeholder,
  .open-text .hbspt-form [type='datetime-local']:-ms-input-placeholder,
  .open-text .hbspt-form [type='month']:-ms-input-placeholder,
  .open-text .hbspt-form [type='week']:-ms-input-placeholder,
  .open-text .hbspt-form [type='email']:-ms-input-placeholder,
  .open-text .hbspt-form [type='number']:-ms-input-placeholder,
  .open-text .hbspt-form [type='search']:-ms-input-placeholder,
  .open-text .hbspt-form [type='tel']:-ms-input-placeholder,
  .open-text .hbspt-form [type='time']:-ms-input-placeholder,
  .open-text .hbspt-form [type='url']:-ms-input-placeholder,
  .open-text .hbspt-form [type='color']:-ms-input-placeholder,
  .open-text .hbspt-form textarea:-ms-input-placeholder,
  .open-text .hbspt-form select:-ms-input-placeholder, .blog-entry article .hbspt-form [type='text']:-ms-input-placeholder,
  .blog-entry article .hbspt-form [type='password']:-ms-input-placeholder,
  .blog-entry article .hbspt-form [type='date']:-ms-input-placeholder,
  .blog-entry article .hbspt-form [type='datetime']:-ms-input-placeholder,
  .blog-entry article .hbspt-form [type='datetime-local']:-ms-input-placeholder,
  .blog-entry article .hbspt-form [type='month']:-ms-input-placeholder,
  .blog-entry article .hbspt-form [type='week']:-ms-input-placeholder,
  .blog-entry article .hbspt-form [type='email']:-ms-input-placeholder,
  .blog-entry article .hbspt-form [type='number']:-ms-input-placeholder,
  .blog-entry article .hbspt-form [type='search']:-ms-input-placeholder,
  .blog-entry article .hbspt-form [type='tel']:-ms-input-placeholder,
  .blog-entry article .hbspt-form [type='time']:-ms-input-placeholder,
  .blog-entry article .hbspt-form [type='url']:-ms-input-placeholder,
  .blog-entry article .hbspt-form [type='color']:-ms-input-placeholder,
  .blog-entry article .hbspt-form textarea:-ms-input-placeholder,
  .blog-entry article .hbspt-form select:-ms-input-placeholder {
    color: #a9a9a9; }
  .open-text .hbspt-form [type='text']::placeholder,
  .open-text .hbspt-form [type='password']::placeholder,
  .open-text .hbspt-form [type='date']::placeholder,
  .open-text .hbspt-form [type='datetime']::placeholder,
  .open-text .hbspt-form [type='datetime-local']::placeholder,
  .open-text .hbspt-form [type='month']::placeholder,
  .open-text .hbspt-form [type='week']::placeholder,
  .open-text .hbspt-form [type='email']::placeholder,
  .open-text .hbspt-form [type='number']::placeholder,
  .open-text .hbspt-form [type='search']::placeholder,
  .open-text .hbspt-form [type='tel']::placeholder,
  .open-text .hbspt-form [type='time']::placeholder,
  .open-text .hbspt-form [type='url']::placeholder,
  .open-text .hbspt-form [type='color']::placeholder,
  .open-text .hbspt-form textarea::placeholder,
  .open-text .hbspt-form select::placeholder, .blog-entry article .hbspt-form [type='text']::placeholder,
  .blog-entry article .hbspt-form [type='password']::placeholder,
  .blog-entry article .hbspt-form [type='date']::placeholder,
  .blog-entry article .hbspt-form [type='datetime']::placeholder,
  .blog-entry article .hbspt-form [type='datetime-local']::placeholder,
  .blog-entry article .hbspt-form [type='month']::placeholder,
  .blog-entry article .hbspt-form [type='week']::placeholder,
  .blog-entry article .hbspt-form [type='email']::placeholder,
  .blog-entry article .hbspt-form [type='number']::placeholder,
  .blog-entry article .hbspt-form [type='search']::placeholder,
  .blog-entry article .hbspt-form [type='tel']::placeholder,
  .blog-entry article .hbspt-form [type='time']::placeholder,
  .blog-entry article .hbspt-form [type='url']::placeholder,
  .blog-entry article .hbspt-form [type='color']::placeholder,
  .blog-entry article .hbspt-form textarea::placeholder,
  .blog-entry article .hbspt-form select::placeholder {
    color: #a9a9a9; }

.open-text .hbspt-form select, .blog-entry article .hbspt-form select {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28138, 138, 138%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right 5px;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  color: rgba(37, 37, 37, 0.4); }

.open-text .hbspt-form textarea, .blog-entry article .hbspt-form textarea {
  height: 180px; }

.open-text .hbspt-form .inputs-list, .blog-entry article .hbspt-form .inputs-list {
  list-style: none;
  margin: 0;
  padding: 0; }
  .open-text .hbspt-form .inputs-list li, .blog-entry article .hbspt-form .inputs-list li {
    list-style: none;
    margin: 0;
    padding: 0; }
    .open-text .hbspt-form .inputs-list li label, .blog-entry article .hbspt-form .inputs-list li label {
      display: -webkit-flex !important;
      display: -ms-flexbox !important;
      display: flex !important;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      position: relative !important;
      top: auto;
      left: auto;
      color: #252525; }
    .open-text .hbspt-form .inputs-list li:before, .blog-entry article .hbspt-form .inputs-list li:before {
      display: none; }

.open-text .hbspt-form [type='checkbox'], .blog-entry article .hbspt-form [type='checkbox'] {
  margin: 0 10px 0 0;
  display: block;
  box-sizing: border-box;
  width: 20px !important;
  height: 20px;
  border: 1px solid #0b8793;
  border-radius: 3px;
  background-color: #fefefe;
  box-shadow: none;
  color: #252525;
  transition: background-color 0.25s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-flex: 0 1 20px;
      -ms-flex: 0 1 20px;
          flex: 0 1 20px; }
  @media screen and (max-width: 47.99875em) {
    .open-text .hbspt-form [type='checkbox'], .blog-entry article .hbspt-form [type='checkbox'] {
      width: 20px !important;
      height: 20px !important; } }
  .open-text .hbspt-form [type='checkbox']:focus, .blog-entry article .hbspt-form [type='checkbox']:focus {
    outline: none; }
  .open-text .hbspt-form [type='checkbox'] + span, .blog-entry article .hbspt-form [type='checkbox'] + span {
    margin-left: 10px;
    -webkit-flex: 1 0;
        -ms-flex: 1 0;
            flex: 1 0; }

.open-text .hbspt-form [type='checkbox']:checked, .blog-entry article .hbspt-form [type='checkbox']:checked {
  background-color: #0b8793;
  position: relative; }
  .open-text .hbspt-form [type='checkbox']:checked:after, .blog-entry article .hbspt-form [type='checkbox']:checked:after {
    content: "✓";
    font-size: 1.25em;
    color: #fff;
    display: inline-block;
    position: absolute;
    left: 2px;
    top: 0; }

.open-text .hbspt-form .hs-fieldtype-file, .blog-entry article .hbspt-form .hs-fieldtype-file {
  border: 1px solid #0b8793;
  border-radius: 3px;
  margin: 0 20px;
  width: calc(100% - 40px) !important; }
  .open-text .hbspt-form .hs-fieldtype-file:after, .blog-entry article .hbspt-form .hs-fieldtype-file:after {
    content: "Attach File";
    position: absolute;
    right: 10px;
    background: #0b8793;
    color: #fafafa;
    top: 9px;
    z-index: 1;
    text-transform: uppercase;
    font-size: .8em;
    padding: 5px 10px;
    border-radius: 3px;
    cursor: pointer;
    transition: all 200ms; }
  .open-text .hbspt-form .hs-fieldtype-file:hover:after, .blog-entry article .hbspt-form .hs-fieldtype-file:hover:after {
    background: #09717b; }
  .open-text .hbspt-form .hs-fieldtype-file .file-form-display, .blog-entry article .hbspt-form .hs-fieldtype-file .file-form-display {
    color: #252525;
    margin: -30px 0 4px; }
  .open-text .hbspt-form .hs-fieldtype-file [type='file'], .blog-entry article .hbspt-form .hs-fieldtype-file [type='file'] {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1; }
  .open-text .hbspt-form .hs-fieldtype-file label, .blog-entry article .hbspt-form .hs-fieldtype-file label {
    padding: 12px 0;
    position: relative;
    top: auto;
    left: auto;
    font-family: inherit;
    font-size: 1em;
    font-weight: normal;
    line-height: 1.5;
    color: rgba(37, 37, 37, 0.5);
    pointer-events: all;
    transition: none;
    cursor: pointer;
    z-index: 2; }
    .open-text .hbspt-form .hs-fieldtype-file label span, .blog-entry article .hbspt-form .hs-fieldtype-file label span {
      display: block;
      position: relative; }
    .open-text .hbspt-form .hs-fieldtype-file label.float-me, .blog-entry article .hbspt-form .hs-fieldtype-file label.float-me {
      padding: 13px 0; }
      .open-text .hbspt-form .hs-fieldtype-file label.float-me span, .blog-entry article .hbspt-form .hs-fieldtype-file label.float-me span {
        -webkit-transform: none;
            -ms-transform: none;
                transform: none;
        top: -6.5px;
        -webkit-transform-origin: left top;
            -ms-transform-origin: left top;
                transform-origin: left top;
        color: rgba(37, 37, 37, 0.5); }
    .open-text .hbspt-form .hs-fieldtype-file label.float-label, .blog-entry article .hbspt-form .hs-fieldtype-file label.float-label {
      padding: 13px 0; }
      .open-text .hbspt-form .hs-fieldtype-file label.float-label span, .blog-entry article .hbspt-form .hs-fieldtype-file label.float-label span {
        -webkit-transform: scale(0.6);
            -ms-transform: scale(0.6);
                transform: scale(0.6);
        top: -6.5px;
        -webkit-transform-origin: left top;
            -ms-transform-origin: left top;
                transform-origin: left top;
        color: #0b8793; }

.open-text .hbspt-form .hs-fieldtype-checkbox label, .blog-entry article .hbspt-form .hs-fieldtype-checkbox label {
  position: relative;
  top: 0px;
  left: 0px;
  font-family: inherit;
  font-size: 1em;
  font-weight: normal;
  line-height: 1.5;
  color: rgba(37, 37, 37, 0.5);
  pointer-events: all;
  margin-bottom: 5px;
  transition: all 200ms; }
  .open-text .hbspt-form .hs-fieldtype-checkbox label.float-me, .blog-entry article .hbspt-form .hs-fieldtype-checkbox label.float-me {
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    top: 0;
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
    color: rgba(37, 37, 37, 0.5); }

.open-text .hbspt-form .hs-fieldtype-checkbox ul li label.float-me, .blog-entry article .hbspt-form .hs-fieldtype-checkbox ul li label.float-me {
  color: #252525; }

.open-text .hbspt-form .hs-submit, .blog-entry article .hbspt-form .hs-submit {
  text-align: center; }

.open-text .hbspt-form .hs-button, .blog-entry article .hbspt-form .hs-button {
  background: #0b8793;
  font-weight: bold;
  border: none;
  font-size: 1em;
  font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .8px;
  padding: 15px 35px;
  border-radius: 4px;
  color: #ffffff;
  box-shadow: 0 2px 8px 0 rgba(255, 255, 255, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: all 200ms; }
  .open-text .hbspt-form .hs-button:hover, .blog-entry article .hbspt-form .hs-button:hover {
    background: #09717b; }

.open-text .hbspt-form .hs-error-msg, .blog-entry article .hbspt-form .hs-error-msg {
  font-size: 0.75em;
  font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
  font-weight: 500;
  margin-top: 5px;
  margin-left: 15px; }

.open-text .hbspt-form .submitted-message, .blog-entry article .hbspt-form .submitted-message {
  text-align: center;
  border: 1px solid #0b8793;
  background: rgba(11, 135, 147, 0.1);
  padding: 30px;
  margin: 15px; }

.open-text.light-theme .hbspt-form .hs-error-msg, .blog-entry article.light-theme .hbspt-form .hs-error-msg {
  font-size: 0.75em;
  font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
  font-weight: 500;
  margin-top: 5px;
  margin-left: 15px;
  color: #ffffff; }

.hs-cta-wrapper a.floating-button {
  padding: 20px;
  color: #ffffff;
  display: block;
  position: relative;
  margin: 0 0 35px 0;
  box-shadow: 0 0 6px rgba(37, 37, 37, 0.3); }
  .hs-cta-wrapper a.floating-button:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: rgba(35, 21, 60, 0.7);
    z-index: -1; }
  .hs-cta-wrapper a.floating-button h3 {
    margin: 0 0 20px 0;
    padding: 0 0 10px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.4);
    text-transform: uppercase;
    font-size: 0.875em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 700;
    letter-spacing: 1px; }
  .hs-cta-wrapper a.floating-button h6 {
    margin: 0;
    padding: 0;
    text-transform: uppercase;
    font-size: 0.875em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 900;
    letter-spacing: 1px; }
    .hs-cta-wrapper a.floating-button h6:after {
      font-family: "Font Awesome 5 Pro";
      content: "\f061";
      display: inline-block;
      margin-left: 15px;
      color: #ffffff;
      font-weight: 900;
      font-size: .8em;
      transition: all .4s;
      position: relative;
      top: -1px; }
  .hs-cta-wrapper a.floating-button p {
    font-size: 1.125em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    margin-bottom: 15px;
    line-height: 150%; }
  .hs-cta-wrapper a.floating-button img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    object-fit: cover;
    width: 100%;
    height: 100%;
    max-width: none; }
  @media screen and (min-width: 95em) {
    .hs-cta-wrapper a.floating-button {
      float: right;
      max-width: 270px;
      margin-right: -295px;
      position: -webkit-sticky;
      position: sticky;
      top: 20px; } }
  .hs-cta-wrapper a.floating-button:hover h6:after {
    -webkit-transform: translateX(8px);
        -ms-transform: translateX(8px);
            transform: translateX(8px); }

.gform_wrapper form .validation_error {
  border: none !important;
  text-align: left !important; }

.gform_wrapper form .gform_body .file-form-display {
  background: #ffffff;
  margin: 30px 0 0px;
  display: block;
  padding: 15px 30px; }
  .gform_wrapper form .gform_body .file-form-display + .file-form-display {
    margin: 5px 0 0; }

.gform_wrapper form .gform_body .gform_fields {
  margin: -20px !important;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .gform_wrapper form .gform_body .gform_fields .gfield {
    margin: 15px 0;
    padding: 0 20px;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
    .gform_wrapper form .gform_body .gform_fields .gfield div.ginput_container {
      margin-top: 0; }
    .gform_wrapper form .gform_body .gform_fields .gfield input {
      width: 100%;
      border: 1px solid rgba(0, 0, 0, 0.2);
      box-shadow: none;
      padding: 18px 16px 6px !important;
      color: #252525;
      margin: 0;
      height: auto;
      transition: all 200ms; }
      .gform_wrapper form .gform_body .gform_fields .gfield input:focus {
        border: 1px solid #0b8793; }
      .gform_wrapper form .gform_body .gform_fields .gfield input.button, .gform_wrapper form .gform_body .gform_fields .gfield .wp-block-button input.wp-block-button__link, .wp-block-button .gform_wrapper form .gform_body .gform_fields .gfield input.wp-block-button__link {
        padding: 24px !important; }
    .gform_wrapper form .gform_body .gform_fields .gfield .gfield_label {
      position: absolute;
      top: 13px;
      left: 37px;
      font-family: inherit;
      font-size: 1em;
      font-weight: normal;
      line-height: 1.5;
      color: rgba(37, 37, 37, 0.5);
      pointer-events: none;
      transition: all 200ms; }
      .gform_wrapper form .gform_body .gform_fields .gfield .gfield_label.float-me {
        -webkit-transform: scale(0.6);
            -ms-transform: scale(0.6);
                transform: scale(0.6);
        top: 8px;
        -webkit-transform-origin: left top;
            -ms-transform-origin: left top;
                transform-origin: left top;
        color: #0b8793; }
      .gform_wrapper form .gform_body .gform_fields .gfield .gfield_label .gfield_required {
        color: #0b8793;
        font-size: 1em; }
    .gform_wrapper form .gform_body .gform_fields .gfield.col-1 {
      width: 8.33333%; }
      @media screen and (max-width: 47.99875em) {
        .gform_wrapper form .gform_body .gform_fields .gfield.col-1 {
          width: 100%; } }
    .gform_wrapper form .gform_body .gform_fields .gfield.col-2 {
      width: 16.66667%; }
      @media screen and (max-width: 47.99875em) {
        .gform_wrapper form .gform_body .gform_fields .gfield.col-2 {
          width: 100%; } }
    .gform_wrapper form .gform_body .gform_fields .gfield.col-3 {
      width: 25%; }
      @media screen and (max-width: 47.99875em) {
        .gform_wrapper form .gform_body .gform_fields .gfield.col-3 {
          width: 100%; } }
    .gform_wrapper form .gform_body .gform_fields .gfield.col-4 {
      width: 33.33333%; }
      @media screen and (max-width: 47.99875em) {
        .gform_wrapper form .gform_body .gform_fields .gfield.col-4 {
          width: 100%; } }
    .gform_wrapper form .gform_body .gform_fields .gfield.col-6 {
      width: 50%; }
      @media screen and (max-width: 47.99875em) {
        .gform_wrapper form .gform_body .gform_fields .gfield.col-6 {
          width: 100%; } }
    .gform_wrapper form .gform_body .gform_fields .gfield.col-12 {
      width: 100%; }
      @media screen and (max-width: 47.99875em) {
        .gform_wrapper form .gform_body .gform_fields .gfield.col-12 {
          width: 100%; } }
    .gform_wrapper form .gform_body .gform_fields .gfield.file-upload {
      position: relative;
      border: none;
      background: #ffffff;
      margin: 15px 20px !important;
      padding: 0;
      box-shadow: 0 7px 12px 0 rgba(0, 0, 0, 0.15); }
      .gform_wrapper form .gform_body .gform_fields .gfield.file-upload .gform_drop_area {
        background: 0;
        border: none;
        margin: 0; }
        .gform_wrapper form .gform_body .gform_fields .gfield.file-upload .gform_drop_area .gform_drop_instructions {
          margin-bottom: 30px; }
        .gform_wrapper form .gform_body .gform_fields .gfield.file-upload .gform_drop_area .gform_button_select_files {
          color: #0b8793;
          background: none;
          border: 1px solid #0b8793; }
      .gform_wrapper form .gform_body .gform_fields .gfield.file-upload .validation_message ul {
        margin: 0; }
        .gform_wrapper form .gform_body .gform_fields .gfield.file-upload .validation_message ul li {
          margin: 0;
          padding: 0 24px;
          color: rgba(37, 37, 37, 0.6);
          font-size: 0.875em;
          font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
          font-weight: 400; }
      .gform_wrapper form .gform_body .gform_fields .gfield.file-upload .ginput_preview {
        margin: 12px 0;
        padding: 0 24px;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: row-reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; }
        .gform_wrapper form .gform_body .gform_fields .gfield.file-upload .ginput_preview .gform_delete {
          -webkit-flex: 0 1 auto;
              -ms-flex: 0 1 auto;
                  flex: 0 1 auto; }
        .gform_wrapper form .gform_body .gform_fields .gfield.file-upload .ginput_preview strong {
          -webkit-flex: 1 0 auto;
              -ms-flex: 1 0 auto;
                  flex: 1 0 auto; }
      .gform_wrapper form .gform_body .gform_fields .gfield.file-upload label {
        display: none; }
        .gform_wrapper form .gform_body .gform_fields .gfield.file-upload label .gfield_required {
          display: none; }
      .gform_wrapper form .gform_body .gform_fields .gfield.file-upload > .validation_message {
        padding: 0 24px 30px !important; }
    .gform_wrapper form .gform_body .gform_fields .gfield.gsection {
      border: none;
      margin: 15px 0 30px !important;
      padding: 0 20px; }
      .gform_wrapper form .gform_body .gform_fields .gfield.gsection .gsection_title {
        font-size: 1.25em;
        color: #252525; }
      .gform_wrapper form .gform_body .gform_fields .gfield.gsection .gsection_description {
        font-size: 1em;
        color: rgba(37, 37, 37, 0.6);
        margin: 10px 0 0 0; }
    .gform_wrapper form .gform_body .gform_fields .gfield.gfield_error {
      border: none !important;
      background: none !important; }

@media print, screen and (min-width: 40em) {
  .mobile-menu,
  .site-title-bar {
    display: none !important; } }

@media screen and (max-width: 39.99875em) {
  .desktop-menu,
  .site-navigation .top-bar-left {
    display: none !important; } }

.site-desktop-title a {
  font-weight: bold; }

.mobile-menu {
  display: none; }

.off-canvas > ul.menu {
  height: 100vh;
  padding: 1rem; }
  .off-canvas > ul.menu a {
    color: #fefefe;
    font-weight: 600;
    font-size: 0.9375rem; }

.off-canvas .menu .active > a {
  background-color: #ccc; }

.title-bar-title a {
  font-size: 1rem;
  color: #B9B9B9; }

.mobile-menu .menu .is-active > a,
.mobile-off-canvas-menu .menu .is-active > a {
  background-color: #36454f; }

.top-bar .top-bar-title a {
  font-size: 1rem;
  color: #B9B9B9;
  padding-left: 1rem;
  line-height: 1.8; }

.top-bar .menu a {
  color: #e6e6e6;
  padding-top: 0;
  padding-bottom: 0;
  font-weight: bold;
  font-size: 0.8rem;
  line-height: 1; }
  .top-bar .menu a:hover:not(.button) {
    background-color: #42525D; }

.top-bar .menu .active > a {
  background-color: #ccc; }

.top-bar .menu > li:not(.menu-text) > a {
  padding: 1rem; }

.top-bar .menu li:not(:last-child) {
  border-right: 1px solid #4e4e4e; }

.top-bar .dropdown.menu .submenu {
  border: 0; }

.top-bar .dropdown.menu .has-submenu.is-down-arrow a {
  padding-right: 1rem; }

.top-bar .dropdown.menu .has-submenu.is-down-arrow > a::after {
  border: 0; }

.top-bar .dropdown.menu:first-child > li.is-dropdown-submenu-parent > a::after {
  display: none; }

@media screen and (max-width: 39.99875em) {
  .site-navigation {
    padding: 0; } }

.post-navigation::before, .post-navigation::after {
  display: table;
  content: ' ';
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

.post-navigation::after {
  clear: both; }

.nav-previous {
  float: left; }

.nav-next {
  float: right; }

.site-header {
  height: 90px;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
  opacity: 0; }
  .site-header .logo {
    position: absolute;
    top: 20px;
    left: 40px;
    width: 250px;
    transition: all 200ms; }
    .site-header .logo .cap, .site-header .logo .text, .site-header .logo .rule, .site-header .logo .kernel {
      transition: all 200ms; }
    .site-header .logo svg {
      width: 100%;
      transition: all 200ms; }
    @media screen and (max-width: 63.99875em) {
      .site-header .logo {
        width: 160px;
        left: 20px;
        top: 10px; } }
  .site-header .mobile-nav-trigger {
    display: none;
    position: absolute;
    right: 20px;
    top: 25px;
    height: 20px;
    width: 20px;
    z-index: 999; }
    .site-header .mobile-nav-trigger .top-bar {
      width: 100%;
      height: 2px;
      background: #ffffff;
      position: absolute;
      top: 0;
      transition: all 200ms; }
    .site-header .mobile-nav-trigger .mid-bar {
      width: 100%;
      height: 2px;
      background: #ffffff;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      transition: all 200ms; }
    .site-header .mobile-nav-trigger .bottom-bar {
      width: 100%;
      height: 2px;
      background: #ffffff;
      position: absolute;
      bottom: 0;
      transition: all 200ms; }
    .site-header .mobile-nav-trigger.trigger-open .top-bar {
      opacity: 1;
      -webkit-transform: rotate(45deg) translateY(calc(-50%));
          -ms-transform: rotate(45deg) translateY(calc(-50%));
              transform: rotate(45deg) translateY(calc(-50%));
      top: 50%;
      background: #ffffff; }
    .site-header .mobile-nav-trigger.trigger-open .mid-bar {
      opacity: 0;
      background: #ffffff; }
    .site-header .mobile-nav-trigger.trigger-open .bottom-bar {
      opacity: 1;
      -webkit-transform: rotate(-45deg) translateY(calc(50%));
          -ms-transform: rotate(-45deg) translateY(calc(50%));
              transform: rotate(-45deg) translateY(calc(50%));
      bottom: 50%;
      background: #ffffff; }
    @media screen and (max-width: 63.99875em) {
      .site-header .mobile-nav-trigger {
        display: block; } }
  .site-header .main-nav-container {
    position: absolute;
    top: 20px;
    right: 25px;
    transition: all 450ms ease-out; }
    @media screen and (max-width: 63.99875em) {
      .site-header .main-nav-container {
        position: absolute;
        top: 0;
        right: 0;
        left: 0;
        padding: 40px;
        background: rgba(37, 37, 37, 0.95);
        height: 100vh;
        -webkit-transform: translateY(-100%);
            -ms-transform: translateY(-100%);
                transform: translateY(-100%);
        overflow: auto;
        opacity: 0; }
        .site-header .main-nav-container.open {
          -webkit-transform: translateY(0);
              -ms-transform: translateY(0);
                  transform: translateY(0);
          opacity: 1; } }
    @media screen and (max-width: 63.99875em) {
      .site-header .main-nav-container ul#menu-primary-navigation {
        display: block; } }
    .site-header .main-nav-container ul#menu-primary-navigation li {
      text-transform: uppercase;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 800;
      font-size: 0.9375em; }
      .site-header .main-nav-container ul#menu-primary-navigation li:before {
        display: none; }
      @media screen and (max-width: 63.99875em) {
        .site-header .main-nav-container ul#menu-primary-navigation li {
          display: block;
          text-align: left;
          font-size: 1.5625em;
          opacity: 0; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(1) {
            transition: all 250ms ease-out 200ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(2) {
            transition: all 250ms ease-out 250ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(3) {
            transition: all 250ms ease-out 300ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(4) {
            transition: all 250ms ease-out 350ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(5) {
            transition: all 250ms ease-out 400ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(6) {
            transition: all 250ms ease-out 450ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(7) {
            transition: all 250ms ease-out 500ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(8) {
            transition: all 250ms ease-out 550ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(9) {
            transition: all 250ms ease-out 600ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(10) {
            transition: all 250ms ease-out 650ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(11) {
            transition: all 250ms ease-out 700ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(12) {
            transition: all 250ms ease-out 750ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(13) {
            transition: all 250ms ease-out 800ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(14) {
            transition: all 250ms ease-out 850ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(15) {
            transition: all 250ms ease-out 900ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(16) {
            transition: all 250ms ease-out 950ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(17) {
            transition: all 250ms ease-out 1000ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(18) {
            transition: all 250ms ease-out 1050ms; }
          .site-header .main-nav-container ul#menu-primary-navigation li:nth-child(19) {
            transition: all 250ms ease-out 1100ms; } }
      .site-header .main-nav-container ul#menu-primary-navigation li a {
        color: #ffffff;
        margin: 0.65em 1em;
        padding: 0.65em 0;
        position: relative; }
        @media screen and (max-width: 63.99875em) {
          .site-header .main-nav-container ul#menu-primary-navigation li a {
            color: #ffffff;
            margin: 0;
            padding: 0 0 10px;
            margin-bottom: 45px;
            display: inline-block; } }
      .site-header .main-nav-container ul#menu-primary-navigation li:last-of-type a {
        padding-right: 0; }
        @media screen and (max-width: 63.99875em) {
          .site-header .main-nav-container ul#menu-primary-navigation li:last-of-type a {
            padding-bottom: 0; } }
    @media screen and (max-width: 63.99875em) {
      .site-header .main-nav-container.open ul#menu-primary-navigation li {
        -webkit-transform: translateY(0);
            -ms-transform: translateY(0);
                transform: translateY(0);
        opacity: 1; } }
  .site-header.dark-theme .logo .cap {
    fill: #000;
    stroke: #000; }
  .site-header.dark-theme .logo .text {
    fill: #000; }
  .site-header.dark-theme .logo .rule {
    fill: #000;
    stroke: #000; }
  .site-header.dark-theme .logo .kernel {
    stroke: #000; }
  .site-header.dark-theme .mobile-nav-trigger .top-bar, .site-header.dark-theme .mobile-nav-trigger .mid-bar, .site-header.dark-theme .mobile-nav-trigger .bottom-bar {
    background-color: rgba(0, 0, 0, 0.8); }
  .site-header.dark-theme .mobile-nav-trigger.trigger-open .top-bar, .site-header.dark-theme .mobile-nav-trigger.trigger-open .mid-bar, .site-header.dark-theme .mobile-nav-trigger.trigger-open .bottom-bar {
    background-color: #ffffff; }
  .site-header.dark-theme .main-nav-container ul#menu-primary-navigation li a {
    color: rgba(0, 0, 0, 0.8); }
    @media screen and (max-width: 63.99875em) {
      .site-header.dark-theme .main-nav-container ul#menu-primary-navigation li a {
        color: #ffffff; } }

.menu#menu-primary-navigation li a::after {
  background: #0b8793;
  content: '';
  height: 3px;
  left: 0;
  position: absolute;
  top: 100%;
  width: 100%;
  transition: -webkit-transform 200ms;
  transition: transform 200ms;
  transition: transform 200ms, -webkit-transform 200ms;
  -webkit-transform: scaleX(0);
      -ms-transform: scaleX(0);
          transform: scaleX(0); }

.menu#menu-primary-navigation li:hover > a,
.menu#menu-primary-navigation .is-active > a {
  background: transparent; }
  .menu#menu-primary-navigation li:hover > a::after,
  .menu#menu-primary-navigation .is-active > a::after {
    -webkit-transform: scaleX(1);
        -ms-transform: scaleX(1);
            transform: scaleX(1); }

.menu li:hover > a,
.menu .is-active > a {
  background: transparent; }

.site-header.sticky {
  background-color: #252525;
  height: 70px; }
  .site-header.sticky .mobile-nav-trigger .top-bar, .site-header.sticky .mobile-nav-trigger .mid-bar, .site-header.sticky .mobile-nav-trigger .bottom-bar {
    background-color: white; }
  .site-header.sticky .main-nav-container ul#menu-primary-navigation li a {
    color: #fff; }
  .site-header.sticky .logo {
    width: 160px;
    top: 10px; }
    .site-header.sticky .logo .cap {
      fill: #fff;
      stroke: #fff; }
    .site-header.sticky .logo .text {
      fill: #fff; }
    .site-header.sticky .logo .rule {
      fill: #fff;
      stroke: #fff; }
    .site-header.sticky .logo .kernel {
      stroke: #fff; }
  .site-header.sticky .main-nav-container {
    top: 10px; }

.main-container {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 68.75rem;
  margin: 0 auto; }
  @media print, screen and (min-width: 40em) {
    .main-container {
      padding-right: 1.25rem;
      padding-left: 1.25rem; } }

.main-grid {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-top: 1rem; }
  @media print, screen and (min-width: 40em) {
    .main-grid {
      margin-top: 3rem; } }
  .main-grid.sidebar-left .main-content {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .main-grid.sidebar-left .sidebar {
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  @media print, screen and (min-width: 40em) {
    .main-grid.sidebar-left .main-content {
      -webkit-order: 2;
          -ms-flex-order: 2;
              order: 2; }
    .main-grid.sidebar-left .sidebar {
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1; } }
  .main-grid .main-content-full-width {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  .main-grid .main-content {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .main-grid .main-content {
        width: calc(66.66667% - 2.5rem);
        margin-right: 1.25rem;
        margin-left: 1.25rem; } }
  .main-grid .sidebar {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .main-grid .sidebar {
        width: calc(33.33333% - 2.5rem);
        margin-right: 1.25rem;
        margin-left: 1.25rem;
        margin-top: 1rem; } }

section {
  position: relative;
  background-color: #fafafa; }
  section .grid-container {
    position: relative;
    z-index: 2; }
  section.light-texture:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    background: url(//stablekernel.com/wp-content/themes/Stable-Kernel-Foundation/dist/assets/css/../images/hex-node-grid-light.png) 0 0 repeat; }
  section.dark-texture:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    background: url(//stablekernel.com/wp-content/themes/Stable-Kernel-Foundation/dist/assets/css/../images/hex-node-grid-dark.png) 0 0 repeat; }

.footer-container {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 68.75rem;
  margin: 0 auto;
  border-top: 1px solid #cacaca;
  margin-top: 3.75rem; }
  @media print, screen and (min-width: 40em) {
    .footer-container {
      padding-right: 1.25rem;
      padding-left: 1.25rem; } }

.footer-grid {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  padding: 1.875rem 0; }
  .footer-grid section {
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    min-height: 0px;
    min-width: 0px;
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 64em) {
      .footer-grid section {
        -webkit-flex: 1 1 0px;
            -ms-flex: 1 1 0px;
                flex: 1 1 0px;
        width: auto;
        margin-right: 1.25rem;
        margin-left: 1.25rem; } }
  .footer-grid ul {
    list-style-type: none;
    margin: 0;
    padding: 0; }

footer.footer {
  background-color: #252525;
  color: #ffffff;
  padding: 50px 80px;
  position: relative; }
  @media screen and (max-width: 63.99875em) {
    footer.footer {
      padding: 40px 20px; } }

.footer-content {
  margin: 0 auto 45px auto; }
  @media screen and (max-width: 47.99875em) {
    .footer-content .cell {
      margin: 0 0 30px; }
      .footer-content .cell:last-of-type {
        margin-bottom: 0; } }
  .footer-content ul#menu-footer-navigation {
    list-style-type: none;
    margin: 0;
    padding: 0;
    -webkit-column-count: 2;
            column-count: 2;
    -webkit-column-width: 100px;
            column-width: 100px;
    -webkit-column-gap: 60px;
            column-gap: 60px;
    display: block; }
    .footer-content ul#menu-footer-navigation li {
      display: block; }
      .footer-content ul#menu-footer-navigation li:before {
        display: none; }
      .footer-content ul#menu-footer-navigation li a {
        display: inline-block;
        margin: 0;
        padding: 0;
        color: #ffffff;
        font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
        font-weight: 600;
        letter-spacing: .4px;
        text-transform: capitalize; }
        .footer-content ul#menu-footer-navigation li a:hover {
          text-decoration: underline; }
      .footer-content ul#menu-footer-navigation li:hover a:after {
        display: none; }

.footnote {
  margin: 0 auto;
  color: rgba(255, 255, 255, 0.6); }

body#tinymce {
  height: auto;
  max-width: 68.75rem;
  padding: 1.25rem !important; }

.sites-button {
  background: #0b8793;
  font-size: 1em;
  text-transform: uppercase;
  font-weight: 700;
  box-shadow: 0 -2px 0 rgba(0, 0, 0, 0.2) inset;
  border-radius: 3px;
  border: none; }

.button, .wp-block-button .wp-block-button__link {
  font-size: 1em;
  font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .8px;
  padding: 15px 35px;
  border-radius: 4px;
  box-shadow: 0 2px 8px 0 rgba(255, 255, 255, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.5); }
  .button.open, .wp-block-button .open.wp-block-button__link {
    background: transparent;
    box-shadow: none;
    padding: 0;
    font-size: 1em;
    letter-spacing: 0;
    line-height: unset;
    margin: 0;
    text-transform: unset; }

.cards-container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  .cards-container .card {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    .cards-container .card .card-content {
      padding: 1rem; }
    @media print, screen and (min-width: 40em) {
      .cards-container .card {
        width: calc(33.33333% - 0.7rem);
        margin-right: 0.35rem;
        margin-left: 0.35rem; } }

.featured-hero {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 90px 0 75px; }

.dotted, .section-divider hr {
  border-style: dashed;
  margin: 2rem 0; }

[data-whatinput="mouse"] a:focus, button:focus [data-whatinput="touch"] a:focus, button:focus {
  outline: none; }

.front-hero {
  background: url(//stablekernel.com/wp-content/themes/Stable-Kernel-Foundation/dist/assets/css/../images/demo/hero-bg-foundation-6-small.svg) bottom center;
  background-size: cover;
  background-position: bottom;
  padding: 4.0625rem 0;
  margin: 0 0 2rem;
  height: auto;
  position: relative;
  text-align: left; }
  .front-hero .marketing {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 55rem;
    margin: 0 auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap; }
    @media print, screen and (min-width: 40em) {
      .front-hero .marketing {
        padding-right: 1.25rem;
        padding-left: 1.25rem; } }
  @media print, screen and (min-width: 40em) {
    .front-hero {
      background: url(//stablekernel.com/wp-content/themes/Stable-Kernel-Foundation/dist/assets/css/../images/demo/hero-bg-foundation-6-large.svg) bottom center;
      background-size: cover;
      background-position: center;
      height: 42.8125rem;
      margin: 0 0 4.5rem; } }
  .front-hero .watch {
    width: calc(58.33333% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .front-hero .watch {
        width: calc(100% - 2.5rem);
        margin-right: 1.25rem;
        margin-left: 1.25rem; } }
    .front-hero .watch a {
      color: #B4C9D1;
      cursor: pointer;
      font-weight: 400;
      margin-right: 1.25rem; }
    .front-hero .watch a:hover {
      color: #fff; }
    .front-hero .watch #stargazers :before {
      content: "\f09b";
      font-family: FontAwesome;
      font-style: normal;
      font-weight: normal;
      text-decoration: inherit;
      color: #B4C9D1;
      margin-right: 0.5rem; }
    .front-hero .watch #twitter :before {
      content: "\f099";
      font-family: FontAwesome;
      font-style: normal;
      font-weight: normal;
      text-decoration: inherit;
      color: #B4C9D1;
      margin-right: 0.5rem; }
  .front-hero .tagline {
    width: calc(66.66667% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .front-hero .tagline {
        width: calc(41.66667% - 2.5rem);
        margin-right: 1.25rem;
        margin-left: 1.25rem;
        padding-top: 6rem; } }
  .front-hero h1 {
    color: #fff;
    font-weight: 500;
    font-size: 2.2rem; }
    @media print, screen and (min-width: 40em) {
      .front-hero h1 {
        font-size: 2.875rem; } }
  .front-hero h4 {
    color: #fefefe;
    font-weight: 300;
    font-size: 1.3125rem; }
  .front-hero .download {
    margin-top: 1.25rem; }

.intro {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 68.75rem;
  margin: 0 auto;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  @media print, screen and (min-width: 40em) {
    .intro {
      padding-right: 1.25rem;
      padding-left: 1.25rem; } }
  .intro .fp-intro {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .intro .fp-intro {
        width: calc(83.33333% - 2.5rem);
        margin-right: 1.25rem;
        margin-left: 1.25rem;
        margin-left: calc(8.33333% + 0.625rem); }
        .intro .fp-intro h2 {
          font-weight: 300;
          margin-bottom: 1.5rem; }
        .intro .fp-intro h4 {
          font-size: 1.125rem;
          line-height: 1.6;
          color: #777;
          margin-bottom: 2rem; } }

.section-divider {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 68.75rem;
  margin: 0 auto;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  @media print, screen and (min-width: 40em) {
    .section-divider {
      padding-right: 1.25rem;
      padding-left: 1.25rem; } }
  .section-divider hr {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
    box-sizing: border-box; }

.benefits {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 68.75rem;
  margin: 0 auto;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .benefits {
      padding-right: 1.25rem;
      padding-left: 1.25rem; } }
  .benefits header {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    .benefits header h2 {
      font-weight: 300; }
    .benefits header h4 {
      font-size: 1.125rem;
      line-height: 1.6;
      color: #777; }
  .benefits .semantic,
  .benefits .responsive,
  .benefits .customizable,
  .benefits .professional {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .benefits .semantic,
      .benefits .responsive,
      .benefits .customizable,
      .benefits .professional {
        width: calc(25% - 2.5rem);
        margin-right: 1.25rem;
        margin-left: 1.25rem; } }
    .benefits .semantic img,
    .benefits .responsive img,
    .benefits .customizable img,
    .benefits .professional img {
      padding: 1.25rem;
      margin: 1rem auto 0 auto; }
    .benefits .semantic h3,
    .benefits .responsive h3,
    .benefits .customizable h3,
    .benefits .professional h3 {
      color: #0a0a0a;
      font-weight: 300;
      font-size: 1.75rem; }
    .benefits .semantic p,
    .benefits .responsive p,
    .benefits .customizable p,
    .benefits .professional p {
      font-size: 0.9375rem; }
  .benefits .why-foundation {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
    margin-top: 4rem; }

.kitchen-sink-header {
  width: calc(100% - 1.25rem);
  margin-right: 0.625rem;
  margin-left: 0.625rem; }

.kitchen-sink-components {
  width: calc(100% - 1.25rem);
  margin-right: 0.625rem;
  margin-left: 0.625rem; }
  .kitchen-sink-components hr {
    margin: 3rem 0; }
  @media print, screen and (min-width: 64em) {
    .kitchen-sink-components {
      width: calc(75% - 2.5rem);
      margin-right: 1.25rem;
      margin-left: 1.25rem; } }

.kitchen-sink-nav {
  display: none; }
  @media print, screen and (min-width: 64em) {
    .kitchen-sink-nav {
      width: calc(25% - 2.5rem);
      margin-right: 1.25rem;
      margin-left: 1.25rem;
      display: block;
      float: right; }
      .kitchen-sink-nav .docs-sub-menu {
        font-size: 0.85rem;
        margin-top: 1rem; }
      .kitchen-sink-nav .docs-menu-title {
        text-transform: uppercase;
        font-size: 0.75rem;
        color: #8a8a8a;
        font-weight: bold;
        line-height: 1;
        padding-left: 0.9rem;
        margin-bottom: 0.5rem;
        border-top: 1px solid #cacaca;
        margin-top: 1rem;
        padding-top: 1.5rem; }
      .kitchen-sink-nav .docs-toc {
        width: 100%;
        padding-left: 4rem;
        padding-right: 1rem; }
      .kitchen-sink-nav .docs-toc .active {
        background: #2199e8;
        color: white; }
      .kitchen-sink-nav .docs-toc .docs-sub-menu:first-child .docs-menu-title {
        margin-top: 0;
        border-top: 0;
        padding-top: 0; } }

.kitchen-sink-grid .grid-x {
  background: #d6ecfa;
  font-size: 12px;
  line-height: 2rem;
  margin-bottom: 1.5rem; }
  .kitchen-sink-grid .grid-x .cell, .kitchen-sink-grid .grid-x :nth-child(odd) {
    background: #7bc1ef;
    color: #0a0a0a; }
  .kitchen-sink-grid .grid-x .cell:nth-child(even) {
    background: #1779ba;
    color: #fefefe; }

body.author {
  padding-top: 140px; }
  body.author header {
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
    background: #0b8793;
    /* Old browsers */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #0b8793 0%, #360033 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
    /* IE6-9 */ }
  body.author .avatar-container {
    width: 100%;
    padding-top: 100%;
    position: relative;
    overflow: hidden;
    border-radius: 50%; }
    body.author .avatar-container img {
      position: absolute;
      top: 50%;
      bottom: 0;
      width: 100%;
      object-fit: cover;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%); }
  body.author h2 {
    font-size: 2.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    margin: 0 0 30px 0;
    padding: 0;
    color: #252525; }
  body.author .author-meta h2 {
    font-size: 2.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 900;
    margin: 0;
    padding: 35px 0 0 0;
    color: #252525; }
  body.author .author-meta h3 {
    font-size: 1.75em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    margin: 0;
    padding: 0;
    color: #252525; }
  body.author .author-meta h4 {
    font-size: 1.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    margin: 0;
    padding: 0 0 25px 0;
    color: rgba(37, 37, 37, 0.5); }
  body.author .author-meta p {
    line-height: 175%;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 500;
    color: #252525; }
  body.author .author-meta .social-links {
    margin: 50px 0;
    padding: 0;
    list-style: none; }
    body.author .author-meta .social-links li {
      margin: 0 40px 0 0;
      padding: 0;
      list-style: none;
      display: inline-block; }
      body.author .author-meta .social-links li:before {
        display: none; }
      body.author .author-meta .social-links li img {
        width: 30px; }
  body.author .author-meta .mention-links {
    margin: 30px 0 0;
    padding: 0;
    list-style: none; }
    body.author .author-meta .mention-links li {
      margin: 0 0 15px 0;
      padding: 0;
      list-style: none; }
      body.author .author-meta .mention-links li:before {
        display: none; }
      body.author .author-meta .mention-links li span {
        opacity: 0.6;
        font-style: italic; }
  body.author .author-meta + h2 {
    border-top: 1px solid rgba(37, 37, 37, 0.15);
    padding-top: 60px;
    margin-top: 60px; }
  body.author .author-articles .cell {
    margin-bottom: 40px; }
  body.author .blog-item {
    text-align: left;
    position: relative;
    display: block;
    height: 100%;
    background: #ffffff;
    box-shadow: 0 7px 12px 0 rgba(0, 0, 0, 0.15);
    transition: all 0.25s ease-in-out; }
    body.author .blog-item p {
      margin: 0;
      padding: 0 30px 30px;
      color: #252525;
      font-size: 0.9em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 500; }
    body.author .blog-item img {
      height: 190px;
      object-fit: cover;
      width: 100%;
      opacity: 0.8;
      transition: opacity 0.25s ease-in-out; }
    body.author .blog-item h5 {
      margin: 0;
      padding: 20px 30px 0;
      color: rgba(37, 37, 37, 0.6);
      font-size: 0.875em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 400; }
      body.author .blog-item h5 img {
        width: 40px;
        height: 40px;
        padding: 5px;
        border: 1px solid #a9a9a9;
        object-fit: contain;
        margin-right: 15px;
        border-radius: 6px; }
      body.author .blog-item h5 span {
        margin-right: 5px; }
    body.author .blog-item h3 {
      margin: 0;
      padding: 15px 30px 15px;
      color: #252525;
      font-size: 1.25em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 600; }
    body.author .blog-item:after {
      content: "";
      display: block;
      height: 6px;
      position: absolute;
      bottom: 0;
      width: 100%;
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
      background: #0b8793;
      /* Old browsers */
      /* FF3.6-15 */
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to right, #0b8793 0%, #360033 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
      /* IE6-9 */ }
    body.author .blog-item:hover {
      -webkit-transform: scale(1.05);
          -ms-transform: scale(1.05);
              transform: scale(1.05);
      box-shadow: 0 5px 16px 0 rgba(0, 0, 0, 0.15); }
      body.author .blog-item:hover img {
        opacity: 1; }
  body.author .pagination li a:hover {
    background: transparent; }
  body.author .pagination li a.current {
    padding: 0 20px;
    color: #252525;
    background-color: transparent; }
  body.author .pagination li.next a:after {
    font-family: "Font Awesome 5 Pro";
    content: "\f061";
    display: inline-block;
    margin-left: 10px;
    color: #0b8793;
    font-weight: 400;
    font-size: .7em;
    -webkit-transform: translateY(-1px);
        -ms-transform: translateY(-1px);
            transform: translateY(-1px); }
  body.author .pagination li.prev a:before {
    font-family: "Font Awesome 5 Pro";
    content: "\f060";
    display: inline-block;
    margin-right: 10px;
    color: #0b8793;
    font-weight: 400;
    font-size: .7em;
    -webkit-transform: translateY(-1px);
        -ms-transform: translateY(-1px);
            transform: translateY(-1px); }
  body.author .pagination li.last a:after {
    font-family: "Font Awesome 5 Pro";
    content: "\f340";
    display: inline-block;
    margin-left: 10px;
    color: #0b8793;
    font-weight: 400;
    font-size: .7em;
    -webkit-transform: translateY(-1px);
        -ms-transform: translateY(-1px);
            transform: translateY(-1px); }
  body.author .pagination li.first a:before {
    font-family: "Font Awesome 5 Pro";
    content: "\f33e";
    display: inline-block;
    margin-right: 10px;
    color: #0b8793;
    font-weight: 400;
    font-size: .7em;
    -webkit-transform: translateY(-1px);
        -ms-transform: translateY(-1px);
            transform: translateY(-1px); }
  body.author .pagination li span.current {
    padding: 0 20px;
    color: #252525;
    background-color: transparent; }
  body.author .pagination li a {
    color: #0b8793;
    padding: 0 20px; }
    body.author .pagination li a.next:after {
      font-family: "Font Awesome 5 Pro";
      content: "\f061";
      display: inline-block;
      margin-left: 20px;
      color: #0b8793;
      font-weight: 400;
      font-size: .7em;
      -webkit-transform: translateY(-1px);
          -ms-transform: translateY(-1px);
              transform: translateY(-1px); }
    body.author .pagination li a.prev:before {
      font-family: "Font Awesome 5 Pro";
      content: "\f060";
      display: inline-block;
      margin-right: 20px;
      color: #0b8793;
      font-weight: 400;
      font-size: .7em;
      -webkit-transform: translateY(-1px);
          -ms-transform: translateY(-1px);
              transform: translateY(-1px); }

.author-page {
  padding-bottom: 90px; }

body.blog header,
body.single-post header,
body.category header,
body.search-results header,
body.archive header,
body.page-template-page-all-posts header,
body.page-template-page-posts header,
body.single-resource_item header {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
  background: #0b8793;
  /* Old browsers */
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #0b8793 0%, #360033 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
  /* IE6-9 */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); }
  body.blog header.site-header,
  body.single-post header.site-header,
  body.category header.site-header,
  body.search-results header.site-header,
  body.archive header.site-header,
  body.page-template-page-all-posts header.site-header,
  body.page-template-page-posts header.site-header,
  body.single-resource_item header.site-header {
    height: 70px;
    opacity: 1; }
    @media screen and (max-width: 63.99875em) {
      body.blog header.site-header,
      body.single-post header.site-header,
      body.category header.site-header,
      body.search-results header.site-header,
      body.archive header.site-header,
      body.page-template-page-all-posts header.site-header,
      body.page-template-page-posts header.site-header,
      body.single-resource_item header.site-header {
        height: 55px; } }
    @media screen and (max-width: 63.99875em) {
      body.blog header.site-header .mobile-nav-trigger,
      body.single-post header.site-header .mobile-nav-trigger,
      body.category header.site-header .mobile-nav-trigger,
      body.search-results header.site-header .mobile-nav-trigger,
      body.archive header.site-header .mobile-nav-trigger,
      body.page-template-page-all-posts header.site-header .mobile-nav-trigger,
      body.page-template-page-posts header.site-header .mobile-nav-trigger,
      body.single-resource_item header.site-header .mobile-nav-trigger {
        top: 16px; } }
  body.blog header.site-header .logo,
  body.single-post header.site-header .logo,
  body.category header.site-header .logo,
  body.search-results header.site-header .logo,
  body.archive header.site-header .logo,
  body.page-template-page-all-posts header.site-header .logo,
  body.page-template-page-posts header.site-header .logo,
  body.single-resource_item header.site-header .logo {
    width: 200px;
    top: 10px; }
    @media screen and (max-width: 63.99875em) {
      body.blog header.site-header .logo,
      body.single-post header.site-header .logo,
      body.category header.site-header .logo,
      body.search-results header.site-header .logo,
      body.archive header.site-header .logo,
      body.page-template-page-all-posts header.site-header .logo,
      body.page-template-page-posts header.site-header .logo,
      body.single-resource_item header.site-header .logo {
        width: 160px;
        top: 2px; } }
  body.blog header.site-header .main-nav-container,
  body.single-post header.site-header .main-nav-container,
  body.category header.site-header .main-nav-container,
  body.search-results header.site-header .main-nav-container,
  body.archive header.site-header .main-nav-container,
  body.page-template-page-all-posts header.site-header .main-nav-container,
  body.page-template-page-posts header.site-header .main-nav-container,
  body.single-resource_item header.site-header .main-nav-container {
    top: 10px; }
    @media screen and (max-width: 63.99875em) {
      body.blog header.site-header .main-nav-container,
      body.single-post header.site-header .main-nav-container,
      body.category header.site-header .main-nav-container,
      body.search-results header.site-header .main-nav-container,
      body.archive header.site-header .main-nav-container,
      body.page-template-page-all-posts header.site-header .main-nav-container,
      body.page-template-page-posts header.site-header .main-nav-container,
      body.single-resource_item header.site-header .main-nav-container {
        top: 0; } }

body.blog .featured-post,
body.single-post .featured-post,
body.category .featured-post,
body.search-results .featured-post,
body.archive .featured-post,
body.page-template-page-all-posts .featured-post,
body.page-template-page-posts .featured-post,
body.single-resource_item .featured-post {
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  body.blog .featured-post p,
  body.single-post .featured-post p,
  body.category .featured-post p,
  body.search-results .featured-post p,
  body.archive .featured-post p,
  body.page-template-page-all-posts .featured-post p,
  body.page-template-page-posts .featured-post p,
  body.single-resource_item .featured-post p {
    margin: 0;
    padding: 0 0 30px;
    color: #252525;
    font-size: 1em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 500; }
  body.blog .featured-post h5,
  body.single-post .featured-post h5,
  body.category .featured-post h5,
  body.search-results .featured-post h5,
  body.archive .featured-post h5,
  body.page-template-page-all-posts .featured-post h5,
  body.page-template-page-posts .featured-post h5,
  body.single-resource_item .featured-post h5 {
    margin: 0;
    padding: 0 0 20px;
    color: #252525;
    font-size: 1em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 400; }
    body.blog .featured-post h5 img,
    body.single-post .featured-post h5 img,
    body.category .featured-post h5 img,
    body.search-results .featured-post h5 img,
    body.archive .featured-post h5 img,
    body.page-template-page-all-posts .featured-post h5 img,
    body.page-template-page-posts .featured-post h5 img,
    body.single-resource_item .featured-post h5 img {
      width: 40px;
      height: 40px;
      object-fit: cover;
      margin-right: 15px;
      border-radius: 50%; }
    body.blog .featured-post h5 span,
    body.single-post .featured-post h5 span,
    body.category .featured-post h5 span,
    body.search-results .featured-post h5 span,
    body.archive .featured-post h5 span,
    body.page-template-page-all-posts .featured-post h5 span,
    body.page-template-page-posts .featured-post h5 span,
    body.single-resource_item .featured-post h5 span {
      margin-right: 5px; }
  body.blog .featured-post h3,
  body.single-post .featured-post h3,
  body.category .featured-post h3,
  body.search-results .featured-post h3,
  body.archive .featured-post h3,
  body.page-template-page-all-posts .featured-post h3,
  body.page-template-page-posts .featured-post h3,
  body.single-resource_item .featured-post h3 {
    margin: 0;
    padding: 0 0 15px;
    color: #252525;
    font-size: 1.75em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600; }
  body.blog .featured-post a.button, body.blog .featured-post .wp-block-button a.wp-block-button__link, .wp-block-button body.blog .featured-post a.wp-block-button__link,
  body.single-post .featured-post a.button,
  body.single-post .featured-post .wp-block-button a.wp-block-button__link,
  .wp-block-button body.single-post .featured-post a.wp-block-button__link,
  body.category .featured-post a.button,
  body.category .featured-post .wp-block-button a.wp-block-button__link,
  .wp-block-button body.category .featured-post a.wp-block-button__link,
  body.search-results .featured-post a.button,
  body.search-results .featured-post .wp-block-button a.wp-block-button__link,
  .wp-block-button body.search-results .featured-post a.wp-block-button__link,
  body.archive .featured-post a.button,
  body.archive .featured-post .wp-block-button a.wp-block-button__link,
  .wp-block-button body.archive .featured-post a.wp-block-button__link,
  body.page-template-page-all-posts .featured-post a.button,
  body.page-template-page-all-posts .featured-post .wp-block-button a.wp-block-button__link,
  .wp-block-button body.page-template-page-all-posts .featured-post a.wp-block-button__link,
  body.page-template-page-posts .featured-post a.button,
  body.page-template-page-posts .featured-post .wp-block-button a.wp-block-button__link,
  .wp-block-button body.page-template-page-posts .featured-post a.wp-block-button__link,
  body.single-resource_item .featured-post a.button,
  body.single-resource_item .featured-post .wp-block-button a.wp-block-button__link,
  .wp-block-button body.single-resource_item .featured-post a.wp-block-button__link {
    margin: 0;
    font-size: 1em; }
  body.blog .featured-post .featured-image,
  body.single-post .featured-post .featured-image,
  body.category .featured-post .featured-image,
  body.search-results .featured-post .featured-image,
  body.archive .featured-post .featured-image,
  body.page-template-page-all-posts .featured-post .featured-image,
  body.page-template-page-posts .featured-post .featured-image,
  body.single-resource_item .featured-post .featured-image {
    min-height: 360px;
    object-fit: cover; }
    @media screen and (max-width: 47.99875em) {
      body.blog .featured-post .featured-image,
      body.single-post .featured-post .featured-image,
      body.category .featured-post .featured-image,
      body.search-results .featured-post .featured-image,
      body.archive .featured-post .featured-image,
      body.page-template-page-all-posts .featured-post .featured-image,
      body.page-template-page-posts .featured-post .featured-image,
      body.single-resource_item .featured-post .featured-image {
        margin-bottom: 30px; } }

body.blog .post-item,
body.single-post .post-item,
body.category .post-item,
body.search-results .post-item,
body.archive .post-item,
body.page-template-page-all-posts .post-item,
body.page-template-page-posts .post-item,
body.single-resource_item .post-item {
  text-align: left;
  position: relative;
  display: block;
  height: 100%;
  background: #ffffff;
  box-shadow: 0 7px 12px 0 rgba(0, 0, 0, 0.15);
  transition: all 0.25s ease-in-out; }
  body.blog .post-item p,
  body.single-post .post-item p,
  body.category .post-item p,
  body.search-results .post-item p,
  body.archive .post-item p,
  body.page-template-page-all-posts .post-item p,
  body.page-template-page-posts .post-item p,
  body.single-resource_item .post-item p {
    margin: 0;
    padding: 0 30px 30px;
    color: #252525;
    font-size: 0.9em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 500; }
  body.blog .post-item .category,
  body.single-post .post-item .category,
  body.category .post-item .category,
  body.search-results .post-item .category,
  body.archive .post-item .category,
  body.page-template-page-all-posts .post-item .category,
  body.page-template-page-posts .post-item .category,
  body.single-resource_item .post-item .category {
    position: absolute;
    top: 150px;
    left: 30px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.4);
    border-radius: 15px;
    font-size: 0.9375em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 900;
    letter-spacing: .75px;
    z-index: 2;
    text-transform: uppercase;
    margin: 0;
    padding: 4px 10px 3px;
    display: inline-block; }
  body.blog .post-item .img-container,
  body.single-post .post-item .img-container,
  body.category .post-item .img-container,
  body.search-results .post-item .img-container,
  body.archive .post-item .img-container,
  body.page-template-page-all-posts .post-item .img-container,
  body.page-template-page-posts .post-item .img-container,
  body.single-resource_item .post-item .img-container {
    background: #252525; }
  body.blog .post-item img,
  body.single-post .post-item img,
  body.category .post-item img,
  body.search-results .post-item img,
  body.archive .post-item img,
  body.page-template-page-all-posts .post-item img,
  body.page-template-page-posts .post-item img,
  body.single-resource_item .post-item img {
    height: 190px;
    object-fit: cover;
    width: 100%;
    opacity: 0.65;
    transition: opacity 0.25s ease-in-out; }
  body.blog .post-item h5,
  body.single-post .post-item h5,
  body.category .post-item h5,
  body.search-results .post-item h5,
  body.archive .post-item h5,
  body.page-template-page-all-posts .post-item h5,
  body.page-template-page-posts .post-item h5,
  body.single-resource_item .post-item h5 {
    margin: 0;
    padding: 20px 30px 0;
    color: #252525;
    font-size: 0.875em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 400; }
    body.blog .post-item h5 img,
    body.single-post .post-item h5 img,
    body.category .post-item h5 img,
    body.search-results .post-item h5 img,
    body.archive .post-item h5 img,
    body.page-template-page-all-posts .post-item h5 img,
    body.page-template-page-posts .post-item h5 img,
    body.single-resource_item .post-item h5 img {
      width: 30px;
      height: 30px;
      object-fit: contain;
      margin-right: 15px;
      border-radius: 50%; }
    body.blog .post-item h5 span,
    body.single-post .post-item h5 span,
    body.category .post-item h5 span,
    body.search-results .post-item h5 span,
    body.archive .post-item h5 span,
    body.page-template-page-all-posts .post-item h5 span,
    body.page-template-page-posts .post-item h5 span,
    body.single-resource_item .post-item h5 span {
      margin-right: 5px; }
  body.blog .post-item h3,
  body.single-post .post-item h3,
  body.category .post-item h3,
  body.search-results .post-item h3,
  body.archive .post-item h3,
  body.page-template-page-all-posts .post-item h3,
  body.page-template-page-posts .post-item h3,
  body.single-resource_item .post-item h3 {
    margin: 0;
    padding: 20px 30px 12px;
    color: #252525;
    font-size: 1.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    line-height: 1.5em; }
  body.blog .post-item h4,
  body.single-post .post-item h4,
  body.category .post-item h4,
  body.search-results .post-item h4,
  body.archive .post-item h4,
  body.page-template-page-all-posts .post-item h4,
  body.page-template-page-posts .post-item h4,
  body.single-resource_item .post-item h4 {
    margin: 0;
    padding: 0;
    color: #989898;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 500;
    font-size: 1.0625em;
    position: absolute;
    bottom: 30px;
    left: 30px; }
    body.blog .post-item h4 i,
    body.single-post .post-item h4 i,
    body.category .post-item h4 i,
    body.search-results .post-item h4 i,
    body.archive .post-item h4 i,
    body.page-template-page-all-posts .post-item h4 i,
    body.page-template-page-posts .post-item h4 i,
    body.single-resource_item .post-item h4 i {
      font-size: .8em;
      margin-right: 5px;
      position: relative;
      top: -2px; }
  body.blog .post-item:after,
  body.single-post .post-item:after,
  body.category .post-item:after,
  body.search-results .post-item:after,
  body.archive .post-item:after,
  body.page-template-page-all-posts .post-item:after,
  body.page-template-page-posts .post-item:after,
  body.single-resource_item .post-item:after {
    content: "";
    display: block;
    height: 6px;
    position: absolute;
    bottom: 0;
    width: 100%;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
    background: #0b8793;
    /* Old browsers */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #0b8793 0%, #360033 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
    /* IE6-9 */ }
  body.blog .post-item:hover,
  body.single-post .post-item:hover,
  body.category .post-item:hover,
  body.search-results .post-item:hover,
  body.archive .post-item:hover,
  body.page-template-page-all-posts .post-item:hover,
  body.page-template-page-posts .post-item:hover,
  body.single-resource_item .post-item:hover {
    -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
            transform: scale(1.05);
    box-shadow: 0 5px 16px 0 rgba(0, 0, 0, 0.15); }
    body.blog .post-item:hover img,
    body.single-post .post-item:hover img,
    body.category .post-item:hover img,
    body.search-results .post-item:hover img,
    body.archive .post-item:hover img,
    body.page-template-page-all-posts .post-item:hover img,
    body.page-template-page-posts .post-item:hover img,
    body.single-resource_item .post-item:hover img {
      opacity: .75; }

body.blog .pagination li a:hover,
body.single-post .pagination li a:hover,
body.category .pagination li a:hover,
body.search-results .pagination li a:hover,
body.archive .pagination li a:hover,
body.page-template-page-all-posts .pagination li a:hover,
body.page-template-page-posts .pagination li a:hover,
body.single-resource_item .pagination li a:hover {
  background: transparent; }

body.blog .pagination li a.current,
body.single-post .pagination li a.current,
body.category .pagination li a.current,
body.search-results .pagination li a.current,
body.archive .pagination li a.current,
body.page-template-page-all-posts .pagination li a.current,
body.page-template-page-posts .pagination li a.current,
body.single-resource_item .pagination li a.current {
  padding: 0 20px;
  color: #252525;
  background-color: transparent; }

body.blog .pagination li.next,
body.single-post .pagination li.next,
body.category .pagination li.next,
body.search-results .pagination li.next,
body.archive .pagination li.next,
body.page-template-page-all-posts .pagination li.next,
body.page-template-page-posts .pagination li.next,
body.single-resource_item .pagination li.next {
  display: inline-block; }
  body.blog .pagination li.next a:after,
  body.single-post .pagination li.next a:after,
  body.category .pagination li.next a:after,
  body.search-results .pagination li.next a:after,
  body.archive .pagination li.next a:after,
  body.page-template-page-all-posts .pagination li.next a:after,
  body.page-template-page-posts .pagination li.next a:after,
  body.single-resource_item .pagination li.next a:after {
    font-family: "Font Awesome 5 Pro";
    content: "\f061";
    display: inline-block;
    margin-left: 10px;
    color: #0b8793;
    font-weight: 400;
    font-size: .7em;
    -webkit-transform: translateY(-1px);
        -ms-transform: translateY(-1px);
            transform: translateY(-1px); }

body.blog .pagination li.prev,
body.single-post .pagination li.prev,
body.category .pagination li.prev,
body.search-results .pagination li.prev,
body.archive .pagination li.prev,
body.page-template-page-all-posts .pagination li.prev,
body.page-template-page-posts .pagination li.prev,
body.single-resource_item .pagination li.prev {
  display: inline-block; }
  body.blog .pagination li.prev a:before,
  body.single-post .pagination li.prev a:before,
  body.category .pagination li.prev a:before,
  body.search-results .pagination li.prev a:before,
  body.archive .pagination li.prev a:before,
  body.page-template-page-all-posts .pagination li.prev a:before,
  body.page-template-page-posts .pagination li.prev a:before,
  body.single-resource_item .pagination li.prev a:before {
    font-family: "Font Awesome 5 Pro";
    content: "\f060";
    display: inline-block;
    margin-right: 10px;
    color: #0b8793;
    font-weight: 400;
    font-size: .7em;
    -webkit-transform: translateY(-1px);
        -ms-transform: translateY(-1px);
            transform: translateY(-1px); }

body.blog .pagination li.last a:after,
body.single-post .pagination li.last a:after,
body.category .pagination li.last a:after,
body.search-results .pagination li.last a:after,
body.archive .pagination li.last a:after,
body.page-template-page-all-posts .pagination li.last a:after,
body.page-template-page-posts .pagination li.last a:after,
body.single-resource_item .pagination li.last a:after {
  font-family: "Font Awesome 5 Pro";
  content: "\f340";
  display: inline-block;
  margin-left: 10px;
  color: #0b8793;
  font-weight: 400;
  font-size: .7em;
  -webkit-transform: translateY(-1px);
      -ms-transform: translateY(-1px);
          transform: translateY(-1px); }

body.blog .pagination li.first a:before,
body.single-post .pagination li.first a:before,
body.category .pagination li.first a:before,
body.search-results .pagination li.first a:before,
body.archive .pagination li.first a:before,
body.page-template-page-all-posts .pagination li.first a:before,
body.page-template-page-posts .pagination li.first a:before,
body.single-resource_item .pagination li.first a:before {
  font-family: "Font Awesome 5 Pro";
  content: "\f33e";
  display: inline-block;
  margin-right: 10px;
  color: #0b8793;
  font-weight: 400;
  font-size: .7em;
  -webkit-transform: translateY(-1px);
      -ms-transform: translateY(-1px);
          transform: translateY(-1px); }

body.blog .pagination li span.current,
body.single-post .pagination li span.current,
body.category .pagination li span.current,
body.search-results .pagination li span.current,
body.archive .pagination li span.current,
body.page-template-page-all-posts .pagination li span.current,
body.page-template-page-posts .pagination li span.current,
body.single-resource_item .pagination li span.current {
  padding: 0 20px;
  color: #252525;
  background-color: transparent; }

body.blog .pagination li a,
body.single-post .pagination li a,
body.category .pagination li a,
body.search-results .pagination li a,
body.archive .pagination li a,
body.page-template-page-all-posts .pagination li a,
body.page-template-page-posts .pagination li a,
body.single-resource_item .pagination li a {
  color: #0b8793;
  padding: 0 20px; }
  body.blog .pagination li a.next:after,
  body.single-post .pagination li a.next:after,
  body.category .pagination li a.next:after,
  body.search-results .pagination li a.next:after,
  body.archive .pagination li a.next:after,
  body.page-template-page-all-posts .pagination li a.next:after,
  body.page-template-page-posts .pagination li a.next:after,
  body.single-resource_item .pagination li a.next:after {
    font-family: "Font Awesome 5 Pro";
    content: "\f061";
    display: inline-block;
    margin-left: 20px;
    color: #0b8793;
    font-weight: 400;
    font-size: .7em;
    -webkit-transform: translateY(-1px);
        -ms-transform: translateY(-1px);
            transform: translateY(-1px); }
  body.blog .pagination li a.prev:before,
  body.single-post .pagination li a.prev:before,
  body.category .pagination li a.prev:before,
  body.search-results .pagination li a.prev:before,
  body.archive .pagination li a.prev:before,
  body.page-template-page-all-posts .pagination li a.prev:before,
  body.page-template-page-posts .pagination li a.prev:before,
  body.single-resource_item .pagination li a.prev:before {
    font-family: "Font Awesome 5 Pro";
    content: "\f060";
    display: inline-block;
    margin-right: 20px;
    color: #0b8793;
    font-weight: 400;
    font-size: .7em;
    -webkit-transform: translateY(-1px);
        -ms-transform: translateY(-1px);
            transform: translateY(-1px); }

body.category .post-item p,
body.blog .post-item p,
body.search-results .post-item p {
  margin: 0 0 40px; }

body.search-results .post-item img {
  opacity: 0.85; }

body.search-results .post-item:hover img {
  opacity: 1; }

section.blog-archive,
.blog-entry {
  padding: 70px 0 90px; }
  @media screen and (max-width: 63.99875em) {
    section.blog-archive,
    .blog-entry {
      padding: 55px 0 90px; } }
  section.blog-archive .breadcrumbs,
  .blog-entry .breadcrumbs {
    margin: 35px 0 0; }
    section.blog-archive .breadcrumbs li,
    .blog-entry .breadcrumbs li {
      float: left;
      font-size: 1em;
      color: #0a0a0a;
      cursor: default;
      text-transform: none;
      padding: 0; }
      section.blog-archive .breadcrumbs li:before,
      .blog-entry .breadcrumbs li:before {
        content: "";
        display: none; }
      section.blog-archive .breadcrumbs li a,
      .blog-entry .breadcrumbs li a {
        color: rgba(37, 37, 37, 0.5); }
      section.blog-archive .breadcrumbs li:not(:last-child)::after,
      .blog-entry .breadcrumbs li:not(:last-child)::after {
        position: relative;
        margin: 0 10px;
        opacity: 1;
        content: "|";
        color: #a9a9a9; }
      section.blog-archive .breadcrumbs li:first-child,
      .blog-entry .breadcrumbs li:first-child {
        font-weight: bold; }
        section.blog-archive .breadcrumbs li:first-child a,
        .blog-entry .breadcrumbs li:first-child a {
          color: #252525; }
  section.blog-archive .intro-area,
  .blog-entry .intro-area {
    text-align: center;
    max-width: 760px;
    margin: 0 auto;
    padding: 60px 0 80px; }
    @media screen and (max-width: 63.99875em) {
      section.blog-archive .intro-area,
      .blog-entry .intro-area {
        padding: 60px 0 35px; } }
    section.blog-archive .intro-area #searchform,
    .blog-entry .intro-area #searchform {
      max-width: 300px;
      margin: 25px auto 0; }
      section.blog-archive .intro-area #searchform .input-group,
      .blog-entry .intro-area #searchform .input-group {
        display: inline-block;
        position: relative;
        margin: 0; }
        section.blog-archive .intro-area #searchform .input-group input,
        .blog-entry .intro-area #searchform .input-group input {
          border-radius: 30px;
          padding: 8px 15px;
          border: 0;
          box-shadow: 0 0 6px rgba(0, 0, 0, 0.15); }
        section.blog-archive .intro-area #searchform .input-group .input-group-button,
        .blog-entry .intro-area #searchform .input-group .input-group-button {
          position: absolute;
          right: 15px;
          top: 10px;
          background-image: linear-gradient(to right, rgba(255, 255, 255, 0), white 50%);
          padding-left: 30px; }
          section.blog-archive .intro-area #searchform .input-group .input-group-button .fa,
          .blog-entry .intro-area #searchform .input-group .input-group-button .fa {
            display: block !important;
            color: #0b8793;
            background: transparent;
            border-radius: 0;
            padding: 1px;
            margin: 0;
            box-shadow: none; }
          section.blog-archive .intro-area #searchform .input-group .input-group-button input[value="Search"],
          .blog-entry .intro-area #searchform .input-group .input-group-button input[value="Search"] {
            display: none !important; }
    section.blog-archive .intro-area p,
    .blog-entry .intro-area p {
      font-size: 1.25em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 500;
      margin: 0;
      padding: 0;
      color: #252525; }
    section.blog-archive .intro-area h1,
    .blog-entry .intro-area h1 {
      font-size: 4em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 900;
      margin: 0;
      padding: 0;
      color: #2e4244; }
      @media screen and (max-width: 63.99875em) {
        section.blog-archive .intro-area h1,
        .blog-entry .intro-area h1 {
          font-size: 3em; } }
      section.blog-archive .intro-area h1 + p,
      .blog-entry .intro-area h1 + p {
        margin-top: 15px; }
    section.blog-archive .intro-area h3,
    .blog-entry .intro-area h3 {
      font-size: 1.5em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 700;
      margin: 0;
      padding: 0;
      color: #2e4244; }
  section.blog-archive h2,
  .blog-entry h2 {
    margin: 100px 0 60px;
    font-size: 2.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 700;
    display: inline-block; }
    @media screen and (max-width: 47.99875em) {
      section.blog-archive h2,
      .blog-entry h2 {
        margin: 60px 0 60px; } }
    section.blog-archive h2.why-sk-header,
    .blog-entry h2.why-sk-header {
      width: 404px;
      height: 130px;
      margin: 60px auto 50px;
      background-position: center;
      background-size: contain;
      background-repeat: no-repeat;
      overflow: hidden;
      text-indent: 100%;
      white-space: nowrap; }
      @media screen and (max-width: 47.99875em) {
        section.blog-archive h2.why-sk-header,
        .blog-entry h2.why-sk-header {
          width: 85%; } }
    section.blog-archive h2 a,
    .blog-entry h2 a {
      color: #252525;
      position: relative; }
      section.blog-archive h2 a span,
      .blog-entry h2 a span {
        position: relative;
        padding-bottom: 10px; }
        section.blog-archive h2 a span:before,
        .blog-entry h2 a span:before {
          content: "";
          display: block;
          height: 4px;
          position: absolute;
          bottom: 0;
          left: 0;
          width: 100%;
          /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
          background: #0b8793;
          /* Old browsers */
          /* FF3.6-15 */
          /* Chrome10-25,Safari5.1-6 */
          background: linear-gradient(to right, #0b8793 0%, #360033 100%);
          /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
          filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0b8793', endColorstr='#360033', GradientType=1);
          /* IE6-9 */ }
      section.blog-archive h2 a:after,
      .blog-entry h2 a:after {
        font-family: "Font Awesome 5 Pro";
        content: "\f061";
        display: inline-block;
        margin-left: 20px;
        color: #0b8793;
        font-weight: 400;
        font-size: .7em;
        transition: all 200ms; }
      section.blog-archive h2 a:hover:after,
      .blog-entry h2 a:hover:after {
        margin-left: 30px; }

body.category section.blog-archive,
body.search-results section.blog-archive,
body.archive section.blog-archive,
body.page-template-page-all-posts section.blog-archive,
body.page-template-page-posts section.blog-archive,
body.blog section.blog-archive,
body.single-resource_item section.blog-archive {
  padding-bottom: 90px; }
  body.category section.blog-archive .intro-area,
  body.search-results section.blog-archive .intro-area,
  body.archive section.blog-archive .intro-area,
  body.page-template-page-all-posts section.blog-archive .intro-area,
  body.page-template-page-posts section.blog-archive .intro-area,
  body.blog section.blog-archive .intro-area,
  body.single-resource_item section.blog-archive .intro-area {
    padding-top: 35px; }

body.category .featured-post,
body.search-results .featured-post,
body.archive .featured-post,
body.page-template-page-all-posts .featured-post,
body.page-template-page-posts .featured-post,
body.blog .featured-post,
body.single-resource_item .featured-post {
  margin-bottom: 60px; }
  body.category .featured-post + h2,
  body.search-results .featured-post + h2,
  body.archive .featured-post + h2,
  body.page-template-page-all-posts .featured-post + h2,
  body.page-template-page-posts .featured-post + h2,
  body.blog .featured-post + h2,
  body.single-resource_item .featured-post + h2 {
    margin-top: 0; }

body.category .all-posts,
body.search-results .all-posts,
body.archive .all-posts,
body.page-template-page-all-posts .all-posts,
body.page-template-page-posts .all-posts,
body.blog .all-posts,
body.single-resource_item .all-posts {
  margin-bottom: 10px; }
  body.category .all-posts .cell,
  body.search-results .all-posts .cell,
  body.archive .all-posts .cell,
  body.page-template-page-all-posts .all-posts .cell,
  body.page-template-page-posts .all-posts .cell,
  body.blog .all-posts .cell,
  body.single-resource_item .all-posts .cell {
    margin-bottom: 40px; }
    @media screen and (max-width: 63.99875em) {
      body.category .all-posts .cell:last-of-type,
      body.search-results .all-posts .cell:last-of-type,
      body.archive .all-posts .cell:last-of-type,
      body.page-template-page-all-posts .all-posts .cell:last-of-type,
      body.page-template-page-posts .all-posts .cell:last-of-type,
      body.blog .all-posts .cell:last-of-type,
      body.single-resource_item .all-posts .cell:last-of-type {
        display: none; } }

body.tax-essential_categories .all-posts.has-type .post-item,
body.tax-essential_type .all-posts.has-type .post-item {
  padding-bottom: 45px; }

body.tax-essential_categories .embed-holder,
body.tax-essential_type .embed-holder {
  display: none; }

body.tax-essential_categories .tag-cloud,
body.tax-essential_type .tag-cloud {
  margin-top: 65px;
  margin-bottom: 45px;
  text-align: center; }
  body.tax-essential_categories .tag-cloud ul,
  body.tax-essential_type .tag-cloud ul {
    margin: 0;
    padding: 0;
    list-style: none; }
    body.tax-essential_categories .tag-cloud ul li,
    body.tax-essential_type .tag-cloud ul li {
      margin: 0 10px 15px;
      padding: 0;
      list-style: none;
      display: inline-block;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 700;
      font-size: 0.9375em;
      text-transform: uppercase; }
      body.tax-essential_categories .tag-cloud ul li a,
      body.tax-essential_type .tag-cloud ul li a {
        padding: 4px 10px 3px;
        background: rgba(11, 135, 147, 0.1);
        border-radius: 10px;
        color: #0b8793;
        transition: all .4s; }
      body.tax-essential_categories .tag-cloud ul li.selected a,
      body.tax-essential_type .tag-cloud ul li.selected a {
        background: #0b8793;
        border-radius: 10px;
        color: #ffffff;
        padding: 4px 10px 3px; }
      body.tax-essential_categories .tag-cloud ul li:hover a,
      body.tax-essential_type .tag-cloud ul li:hover a {
        box-shadow: 0 3px 6px #00000029; }

body.tax-essential_categories .all-posts .cell,
body.tax-essential_type .all-posts .cell {
  transition: all 350ms; }
  body.tax-essential_categories .all-posts .cell.scale-out,
  body.tax-essential_type .all-posts .cell.scale-out {
    -webkit-transform: scale(0.7);
        -ms-transform: scale(0.7);
            transform: scale(0.7);
    opacity: 0; }

@media screen and (max-width: 63.99875em) {
  body.blog .all-posts .cell:last-of-type, body.search-results .all-posts .cell:last-of-type {
    display: block; } }

.blog-entry .breadcrumbs {
  padding-bottom: 15px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  margin: 0 0 30px; }

.blog-entry header.featured-hero {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin-bottom: 30px; }

.blog-entry .intro-area {
  padding-bottom: 30px;
  color: #ffffff;
  text-align: left;
  max-width: none; }
  @media screen and (max-width: 63.99875em) {
    .blog-entry .intro-area {
      padding-bottom: 35px; } }
  .blog-entry .intro-area h1 {
    color: #ffffff;
    margin-bottom: 20px;
    font-size: 2.5em;
    font-family: "anonymous-pro", monospace;
    font-weight: 700;
    line-height: 115%; }
    @media screen and (max-width: 63.99875em) {
      .blog-entry .intro-area h1 {
        font-size: 2em; } }
  .blog-entry .intro-area img {
    width: 50px;
    height: 50px;
    object-fit: cover;
    border-radius: 50%;
    margin-right: 10px; }
  .blog-entry .intro-area .icon-wrapper {
    display: inline-block;
    border-radius: 50%;
    background: #0b8793;
    width: 50px;
    height: 50px;
    margin-right: 25px;
    position: relative; }
    .blog-entry .intro-area .icon-wrapper i {
      position: absolute;
      left: 50%;
      top: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
  .blog-entry .intro-area .category-tag {
    background: rgba(255, 255, 255, 0.4);
    padding: 5px 10px 3px;
    border-radius: 15px;
    display: inline-block;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 900;
    font-size: 0.9375em;
    text-transform: uppercase;
    color: #ffffff;
    margin: 0 0 30px 0; }
  .blog-entry .intro-area h5 {
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    font-size: 1.125em;
    margin: 0 0 20px;
    padding: 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .blog-entry .intro-area h5 a {
      color: #ffffff; }
  .blog-entry .intro-area h6 {
    margin: 30px 0;
    color: rgba(37, 37, 37, 0.5);
    font-size: 1.125em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 500; }

.blog-entry h2 {
  margin: 50px 0 25px;
  font-size: 1.5em;
  font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
  font-weight: 700;
  display: block; }
  .blog-entry h2:after {
    display: none; }

.blog-entry h3 {
  margin: 25px 0 15px;
  font-size: 1.125em;
  font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
  font-weight: 700;
  display: block; }
  .blog-entry h3:after {
    display: none; }

.blog-entry p {
  line-height: 180%;
  margin: 0 0 25px 0; }

.blog-entry h6.date {
  margin: 30px 0 0;
  color: rgba(37, 37, 37, 0.5);
  font-size: 1.125em;
  font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
  font-weight: 500; }

.blog-entry .author-block {
  background: #ffffff;
  padding: 20px 25px 20px 15px;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  box-shadow: 0 7px 12px 0 rgba(0, 0, 0, 0.15);
  position: relative;
  margin: 35px 0 20px; }
  .blog-entry .author-block img {
    width: 65px;
    height: 65px;
    object-fit: cover;
    margin-right: 30px;
    border-radius: 50%; }
  .blog-entry .author-block .author-content {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    .blog-entry .author-block .author-content h5 {
      margin: 0; }
      .blog-entry .author-block .author-content h5 a {
        color: #252525; }
      .blog-entry .author-block .author-content h5:after {
        font-family: "Font Awesome 5 Pro";
        content: "\f061";
        display: inline-block;
        margin-left: 10px;
        color: #0b8793;
        font-weight: 400;
        font-size: .7em; }
    .blog-entry .author-block .author-content p {
      margin: 0;
      color: rgba(0, 0, 0, 0.5); }
  .blog-entry .author-block:after {
    content: "";
    display: block;
    height: 6px;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
    background: #0b8793;
    /* Old browsers */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #0b8793 0%, #360033 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
    /* IE6-9 */ }

.blog-entry .tag-list {
  font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
  font-weight: 500; }
  .blog-entry .tag-list a {
    margin-left: 15px;
    color: #0b8793;
    position: relative;
    padding-bottom: 5px;
    text-transform: capitalize;
    white-space: nowrap; }
    .blog-entry .tag-list a:after {
      content: "";
      display: block;
      height: 1px;
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
      background: #0b8793;
      /* Old browsers */
      /* FF3.6-15 */
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to right, #0b8793 0%, #360033 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
      /* IE6-9 */ }

.blog-entry .blog-utility {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 50px;
  margin-bottom: 65px;
  border-bottom: 1px solid rgba(37, 37, 37, 0.15);
  padding-bottom: 40px; }
  @media screen and (max-width: 47.99875em) {
    .blog-entry .blog-utility {
      display: block; } }

.blog-entry .share-links {
  margin: 0;
  padding: 0;
  list-style: none; }
  @media screen and (max-width: 47.99875em) {
    .blog-entry .share-links {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-evenly;
          -ms-flex-pack: space-evenly;
              justify-content: space-evenly; } }
  .blog-entry .share-links li {
    margin: 0 45px 0 0;
    padding: 0;
    list-style: none;
    font-size: 1.2em;
    display: inline-block; }
    @media screen and (max-width: 47.99875em) {
      .blog-entry .share-links li {
        margin: 0; } }
    .blog-entry .share-links li a {
      opacity: .5;
      transition: all 200ms; }
      .blog-entry .share-links li a:hover {
        opacity: 1; }
    .blog-entry .share-links li span {
      display: none; }
    .blog-entry .share-links li:before {
      display: none; }

@media screen and (max-width: 47.99875em) {
  .blog-entry .comments-count {
    margin-top: 25px;
    text-align: center; } }

.blog-entry .comments-count span {
  opacity: .5; }

.blog-entry .related {
  margin-top: 40px;
  padding-top: 50px;
  margin-bottom: 80px;
  border-top: 1px solid rgba(0, 0, 0, 0.15); }
  .blog-entry .related h2 {
    margin: 0px 0 60px;
    font-size: 2.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 700;
    display: inline-block; }
  @media screen and (max-width: 47.99875em) {
    .blog-entry .related .cell + .cell {
      margin-top: 40px; } }

.blog-entry .subscribe-form {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
  background: #0b8793;
  /* Old browsers */
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #0b8793 0%, #360033 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
  position: relative;
  text-align: center;
  padding: 60px 0;
  color: #ffffff;
  width: 100vw;
  margin-left: 50% !important;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%); }
  .blog-entry .subscribe-form:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(//stablekernel.com/wp-content/themes/Stable-Kernel-Foundation/dist/assets/css/../images/hex-node-grid-dark.png) 0 0 repeat; }
  .blog-entry .subscribe-form h2 {
    margin: 0 0 10px 0;
    padding: 0; }
  .blog-entry .subscribe-form p {
    margin: 0;
    padding: 0; }
  .blog-entry .subscribe-form .grid-container {
    position: relative;
    z-index: 1; }
  .blog-entry .subscribe-form ._form {
    display: inline-block; }
    .blog-entry .subscribe-form ._form ._form-content {
      text-align: left;
      font-size: 0; }
      @media screen and (max-width: 47.99875em) {
        .blog-entry .subscribe-form ._form ._form-content {
          text-align: center; } }
      .blog-entry .subscribe-form ._form ._form-content > * {
        font-size: 1rem; }
    .blog-entry .subscribe-form ._form ._form-title {
      margin-bottom: 1em;
      display: none; }
    .blog-entry .subscribe-form ._form ._form-branding {
      display: none; }
    .blog-entry .subscribe-form ._form ._form-label {
      display: none; }
    .blog-entry .subscribe-form ._form [type='text'], .blog-entry .subscribe-form ._form [type='password'], .blog-entry .subscribe-form ._form [type='date'], .blog-entry .subscribe-form ._form [type='datetime'], .blog-entry .subscribe-form ._form [type='datetime-local'], .blog-entry .subscribe-form ._form [type='month'], .blog-entry .subscribe-form ._form [type='week'], .blog-entry .subscribe-form ._form [type='email'], .blog-entry .subscribe-form ._form [type='number'], .blog-entry .subscribe-form ._form [type='search'], .blog-entry .subscribe-form ._form [type='tel'], .blog-entry .subscribe-form ._form [type='time'], .blog-entry .subscribe-form ._form [type='url'], .blog-entry .subscribe-form ._form [type='color'], .blog-entry .subscribe-form ._form ._submit {
      display: block;
      box-sizing: border-box;
      width: 100%;
      height: 2.4375em;
      margin: 0 0 1em;
      padding: 0.5em;
      border: 0;
      border-radius: 0;
      background-color: #fefefe;
      box-shadow: none;
      font-family: inherit;
      font-size: 1em;
      font-weight: normal;
      line-height: 1.5;
      color: #252525;
      transition: background-color 0.5s, border-color 0.25s ease-in-out;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none; }
      .blog-entry .subscribe-form ._form [type='text']::-webkit-input-placeholder, .blog-entry .subscribe-form ._form [type='password']::-webkit-input-placeholder, .blog-entry .subscribe-form ._form [type='date']::-webkit-input-placeholder, .blog-entry .subscribe-form ._form [type='datetime']::-webkit-input-placeholder, .blog-entry .subscribe-form ._form [type='datetime-local']::-webkit-input-placeholder, .blog-entry .subscribe-form ._form [type='month']::-webkit-input-placeholder, .blog-entry .subscribe-form ._form [type='week']::-webkit-input-placeholder, .blog-entry .subscribe-form ._form [type='email']::-webkit-input-placeholder, .blog-entry .subscribe-form ._form [type='number']::-webkit-input-placeholder, .blog-entry .subscribe-form ._form [type='search']::-webkit-input-placeholder, .blog-entry .subscribe-form ._form [type='tel']::-webkit-input-placeholder, .blog-entry .subscribe-form ._form [type='time']::-webkit-input-placeholder, .blog-entry .subscribe-form ._form [type='url']::-webkit-input-placeholder, .blog-entry .subscribe-form ._form [type='color']::-webkit-input-placeholder, .blog-entry .subscribe-form ._form ._submit::-webkit-input-placeholder {
        color: #0b8793; }
      .blog-entry .subscribe-form ._form [type='text']:-ms-input-placeholder, .blog-entry .subscribe-form ._form [type='password']:-ms-input-placeholder, .blog-entry .subscribe-form ._form [type='date']:-ms-input-placeholder, .blog-entry .subscribe-form ._form [type='datetime']:-ms-input-placeholder, .blog-entry .subscribe-form ._form [type='datetime-local']:-ms-input-placeholder, .blog-entry .subscribe-form ._form [type='month']:-ms-input-placeholder, .blog-entry .subscribe-form ._form [type='week']:-ms-input-placeholder, .blog-entry .subscribe-form ._form [type='email']:-ms-input-placeholder, .blog-entry .subscribe-form ._form [type='number']:-ms-input-placeholder, .blog-entry .subscribe-form ._form [type='search']:-ms-input-placeholder, .blog-entry .subscribe-form ._form [type='tel']:-ms-input-placeholder, .blog-entry .subscribe-form ._form [type='time']:-ms-input-placeholder, .blog-entry .subscribe-form ._form [type='url']:-ms-input-placeholder, .blog-entry .subscribe-form ._form [type='color']:-ms-input-placeholder, .blog-entry .subscribe-form ._form ._submit:-ms-input-placeholder {
        color: #0b8793; }
      .blog-entry .subscribe-form ._form [type='text']::placeholder, .blog-entry .subscribe-form ._form [type='password']::placeholder, .blog-entry .subscribe-form ._form [type='date']::placeholder, .blog-entry .subscribe-form ._form [type='datetime']::placeholder, .blog-entry .subscribe-form ._form [type='datetime-local']::placeholder, .blog-entry .subscribe-form ._form [type='month']::placeholder, .blog-entry .subscribe-form ._form [type='week']::placeholder, .blog-entry .subscribe-form ._form [type='email']::placeholder, .blog-entry .subscribe-form ._form [type='number']::placeholder, .blog-entry .subscribe-form ._form [type='search']::placeholder, .blog-entry .subscribe-form ._form [type='tel']::placeholder, .blog-entry .subscribe-form ._form [type='time']::placeholder, .blog-entry .subscribe-form ._form [type='url']::placeholder, .blog-entry .subscribe-form ._form [type='color']::placeholder, .blog-entry .subscribe-form ._form ._submit::placeholder {
        color: #0b8793; }
    .blog-entry .subscribe-form ._form ._inline-style:not(._clear) {
      display: inline-block;
      vertical-align: top;
      width: 400px;
      max-width: calc(100% - 140px); }
      @media screen and (max-width: 47.99875em) {
        .blog-entry .subscribe-form ._form ._inline-style:not(._clear) {
          width: auto; } }
      .blog-entry .subscribe-form ._form ._inline-style:not(._clear) input {
        border-radius: .25em 0 0 .25em; }
    .blog-entry .subscribe-form ._form ._button-wrapper._inline-style {
      width: 134px; }
      .blog-entry .subscribe-form ._form ._button-wrapper._inline-style button {
        background: #0b8793;
        color: #fefefe;
        text-transform: uppercase;
        padding: .5em 1.5em;
        border-radius: 0 .25em .25em 0;
        cursor: pointer; }
        .blog-entry .subscribe-form ._form ._button-wrapper._inline-style button:hover {
          background-color: #09717b; }
  .blog-entry .subscribe-form .hbspt-form {
    display: inline-block;
    margin-top: 20px; }
    .blog-entry .subscribe-form .hbspt-form .inputs-list {
      list-style: none;
      margin: 0;
      padding: 0; }
      .blog-entry .subscribe-form .hbspt-form .inputs-list li {
        list-style: none;
        margin: 0;
        padding: 0; }
        .blog-entry .subscribe-form .hbspt-form .inputs-list li label {
          display: -webkit-flex !important;
          display: -ms-flexbox !important;
          display: flex !important;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
          position: relative !important;
          color: #ffffff;
          top: auto;
          left: auto; }
        .blog-entry .subscribe-form .hbspt-form .inputs-list li:before {
          display: none; }
    .blog-entry .subscribe-form .hbspt-form .hs_error_rollup {
      display: none; }
    .blog-entry .subscribe-form .hbspt-form .hs-error-msg {
      font-size: 0.75em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 500;
      margin-top: -5px;
      margin-bottom: 15px;
      margin-left: 15px;
      color: #ffffff; }
    .blog-entry .subscribe-form .hbspt-form .form {
      text-align: left;
      font-size: 0; }
      @media screen and (max-width: 47.99875em) {
        .blog-entry .subscribe-form .hbspt-form .form {
          text-align: center; } }
      .blog-entry .subscribe-form .hbspt-form .form > * {
        font-size: 1rem; }
    .blog-entry .subscribe-form .hbspt-form label {
      display: none; }
    .blog-entry .subscribe-form .hbspt-form [type='text'], .blog-entry .subscribe-form .hbspt-form [type='password'], .blog-entry .subscribe-form .hbspt-form [type='date'], .blog-entry .subscribe-form .hbspt-form [type='datetime'], .blog-entry .subscribe-form .hbspt-form [type='datetime-local'], .blog-entry .subscribe-form .hbspt-form [type='month'], .blog-entry .subscribe-form .hbspt-form [type='week'], .blog-entry .subscribe-form .hbspt-form [type='email'], .blog-entry .subscribe-form .hbspt-form [type='number'], .blog-entry .subscribe-form .hbspt-form [type='search'], .blog-entry .subscribe-form .hbspt-form [type='tel'], .blog-entry .subscribe-form .hbspt-form [type='time'], .blog-entry .subscribe-form .hbspt-form [type='url'], .blog-entry .subscribe-form .hbspt-form [type='color'], .blog-entry .subscribe-form .hbspt-form ._submit {
      display: block;
      box-sizing: border-box;
      width: 100%;
      height: 2.4375em;
      margin: 0 0 1em;
      padding: 0.5em;
      border: 0;
      border-radius: 0;
      background-color: #fefefe;
      box-shadow: none;
      font-family: inherit;
      font-size: 1em;
      font-weight: normal;
      line-height: 1.5;
      color: #252525;
      transition: background-color 0.5s, border-color 0.25s ease-in-out;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none; }
      .blog-entry .subscribe-form .hbspt-form [type='text']::-webkit-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='password']::-webkit-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='date']::-webkit-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='datetime']::-webkit-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='datetime-local']::-webkit-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='month']::-webkit-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='week']::-webkit-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='email']::-webkit-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='number']::-webkit-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='search']::-webkit-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='tel']::-webkit-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='time']::-webkit-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='url']::-webkit-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='color']::-webkit-input-placeholder, .blog-entry .subscribe-form .hbspt-form ._submit::-webkit-input-placeholder {
        color: #0b8793; }
      .blog-entry .subscribe-form .hbspt-form [type='text']:-ms-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='password']:-ms-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='date']:-ms-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='datetime']:-ms-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='datetime-local']:-ms-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='month']:-ms-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='week']:-ms-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='email']:-ms-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='number']:-ms-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='search']:-ms-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='tel']:-ms-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='time']:-ms-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='url']:-ms-input-placeholder, .blog-entry .subscribe-form .hbspt-form [type='color']:-ms-input-placeholder, .blog-entry .subscribe-form .hbspt-form ._submit:-ms-input-placeholder {
        color: #0b8793; }
      .blog-entry .subscribe-form .hbspt-form [type='text']::placeholder, .blog-entry .subscribe-form .hbspt-form [type='password']::placeholder, .blog-entry .subscribe-form .hbspt-form [type='date']::placeholder, .blog-entry .subscribe-form .hbspt-form [type='datetime']::placeholder, .blog-entry .subscribe-form .hbspt-form [type='datetime-local']::placeholder, .blog-entry .subscribe-form .hbspt-form [type='month']::placeholder, .blog-entry .subscribe-form .hbspt-form [type='week']::placeholder, .blog-entry .subscribe-form .hbspt-form [type='email']::placeholder, .blog-entry .subscribe-form .hbspt-form [type='number']::placeholder, .blog-entry .subscribe-form .hbspt-form [type='search']::placeholder, .blog-entry .subscribe-form .hbspt-form [type='tel']::placeholder, .blog-entry .subscribe-form .hbspt-form [type='time']::placeholder, .blog-entry .subscribe-form .hbspt-form [type='url']::placeholder, .blog-entry .subscribe-form .hbspt-form [type='color']::placeholder, .blog-entry .subscribe-form .hbspt-form ._submit::placeholder {
        color: #0b8793; }
    .blog-entry .subscribe-form .hbspt-form div.hs-form-field {
      display: inline-block;
      vertical-align: top;
      width: 400px;
      max-width: calc(100% - 140px); }
      @media screen and (max-width: 47.99875em) {
        .blog-entry .subscribe-form .hbspt-form div.hs-form-field {
          width: auto; } }
      .blog-entry .subscribe-form .hbspt-form div.hs-form-field input {
        border-radius: .25em 0 0 .25em; }
    .blog-entry .subscribe-form .hbspt-form div.hs-submit {
      width: 134px;
      display: inline-block; }
      .blog-entry .subscribe-form .hbspt-form div.hs-submit input[type=submit] {
        background: #0b8793;
        color: #fefefe;
        text-transform: uppercase;
        padding: .5em 1.5em;
        border-radius: 0 .25em .25em 0;
        cursor: pointer;
        font-size: 1em;
        font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
        font-weight: 700;
        border: none;
        width: 100%;
        display: block;
        box-sizing: border-box;
        height: 2.4375em;
        margin: 0 0 1em;
        box-shadow: none;
        font-family: inherit;
        font-size: 1em;
        font-weight: normal;
        line-height: 1.5;
        transition: background-color 0.5s, border-color 0.25s ease-in-out;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none; }
        .blog-entry .subscribe-form .hbspt-form div.hs-submit input[type=submit]:hover {
          background-color: #09717b; }

.blog-entry #comments-area {
  margin-top: 60px; }
  .blog-entry #comments-area .comments-header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 25px 0;
    margin-bottom: 40px; }
    .blog-entry #comments-area .comments-header h2 {
      margin: 0;
      padding: 0; }
  .blog-entry #comments-area ol {
    margin: 0;
    padding: 0;
    list-style: none; }
    .blog-entry #comments-area ol li {
      margin: 0;
      padding: 0;
      list-style: none; }
      .blog-entry #comments-area ol li:before {
        display: none; }
      .blog-entry #comments-area ol li article header {
        background: none;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: flex-start;
            -ms-flex-align: start;
                align-items: flex-start; }
        .blog-entry #comments-area ol li article header img {
          border-radius: 50%; }
        .blog-entry #comments-area ol li article header .author-meta {
          margin-left: 20px; }
          .blog-entry #comments-area ol li article header .author-meta cite {
            font-size: 1.25em;
            font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
            font-weight: 500;
            color: #252525;
            font-style: normal; }
            .blog-entry #comments-area ol li article header .author-meta cite:before {
              display: none; }
          .blog-entry #comments-area ol li article header .author-meta time {
            font-size: 0.875em;
            color: rgba(37, 37, 37, 0.7); }
            .blog-entry #comments-area ol li article header .author-meta time a {
              color: rgba(37, 37, 37, 0.7); }
      .blog-entry #comments-area ol li article section {
        margin: 25px 0 0 68px; }
      .blog-entry #comments-area ol li article .reply {
        margin: 0 0 0 68px;
        text-transform: lowercase; }
        .blog-entry #comments-area ol li article .reply:before {
          font-family: "Font Awesome 5 Pro";
          content: "\f3e5";
          display: inline-block;
          margin-left: 10px;
          color: #0b8793;
          font-weight: 900; }
      .blog-entry #comments-area ol li .children {
        margin: 30px 0 30px 68px; }
  .blog-entry #comments-area .comment-respond .comment-form .comment-form-url, .blog-entry #comments-area .comment-respond .comment-form .comment-notes {
    display: none; }
  .blog-entry #comments-area .comment-respond .comment-form [type='text'],
  .blog-entry #comments-area .comment-respond .comment-form [type='password'],
  .blog-entry #comments-area .comment-respond .comment-form [type='date'],
  .blog-entry #comments-area .comment-respond .comment-form [type='datetime'],
  .blog-entry #comments-area .comment-respond .comment-form [type='datetime-local'],
  .blog-entry #comments-area .comment-respond .comment-form [type='month'],
  .blog-entry #comments-area .comment-respond .comment-form [type='week'],
  .blog-entry #comments-area .comment-respond .comment-form [type='email'],
  .blog-entry #comments-area .comment-respond .comment-form [type='number'],
  .blog-entry #comments-area .comment-respond .comment-form [type='search'],
  .blog-entry #comments-area .comment-respond .comment-form [type='tel'],
  .blog-entry #comments-area .comment-respond .comment-form [type='time'],
  .blog-entry #comments-area .comment-respond .comment-form [type='url'],
  .blog-entry #comments-area .comment-respond .comment-form [type='color'],
  .blog-entry #comments-area .comment-respond .comment-form textarea {
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: auto;
    margin: 0 0 15px;
    padding: 18px 20px 7px;
    border: 1px solid #0b8793;
    border-radius: 2px;
    background-color: #ffffff;
    box-shadow: none;
    color: #252525;
    transition: all 200ms;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
  .blog-entry #comments-area .comment-respond .comment-form .comment-form-author {
    width: calc(50% - 20px);
    margin-right: 15px;
    display: inline-block; }
    @media screen and (max-width: 47.99875em) {
      .blog-entry #comments-area .comment-respond .comment-form .comment-form-author {
        width: 100%;
        margin-right: 0px;
        display: block; } }
  .blog-entry #comments-area .comment-respond .comment-form .comment-form-email {
    width: calc(50% - 19px);
    margin-right: 15px;
    display: inline-block; }
    @media screen and (max-width: 47.99875em) {
      .blog-entry #comments-area .comment-respond .comment-form .comment-form-email {
        width: 100%;
        margin-right: 0px;
        display: block; } }
  .blog-entry #comments-area .comment-respond .comment-form .form-submit {
    text-align: center; }
    @media screen and (max-width: 47.99875em) {
      .blog-entry #comments-area .comment-respond .comment-form .form-submit {
        margin-top: 40px;
        margin-bottom: 0; } }
  .blog-entry #comments-area .comment-respond .comment-form p[class^='comment-'] {
    position: relative;
    margin-right: 17px; }
    @media screen and (max-width: 47.99875em) {
      .blog-entry #comments-area .comment-respond .comment-form p[class^='comment-'] {
        margin-right: 0; } }
  .blog-entry #comments-area .comment-respond .comment-form label {
    position: absolute;
    top: 12px;
    left: 20px;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 500;
    font-size: 1em;
    color: rgba(0, 0, 0, 0.5);
    transition: all 200ms; }
    .blog-entry #comments-area .comment-respond .comment-form label.float-me {
      -webkit-transform: scale(0.6);
          -ms-transform: scale(0.6);
              transform: scale(0.6);
      top: 5px;
      -webkit-transform-origin: left top;
          -ms-transform-origin: left top;
              transform-origin: left top;
      color: #0b8793; }

body.single-resource_item #main-container.has-paywall {
  position: relative; }

#paywall-form {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999; }
  #paywall-form:before {
    content: "";
    height: 200px;
    display: block;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#fafafa+0,fafafa+100&0+0,1+100 */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(250, 250, 250, 0) 0%, #fafafa 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00fafafa', endColorstr='#fafafa',GradientType=0 );
    /* IE6-9 */ }
  #paywall-form .form-wrapper {
    background: #fafafa;
    padding: 50px 0 100px; }
    #paywall-form .form-wrapper h2, #paywall-form .form-wrapper p {
      max-width: 680px;
      padding: 0 20px;
      margin: 0 auto;
      text-align: center; }
    #paywall-form .form-wrapper p {
      margin: 10px auto 30px; }
  #paywall-form form {
    max-width: 680px;
    margin: 0 auto; }
  #paywall-form .key-field {
    display: none; }
  #paywall-form ._form ._form-content {
    text-align: left;
    font-size: 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    #paywall-form ._form ._form-content > * {
      font-size: 1rem; }
  #paywall-form ._form ._form-title {
    margin-bottom: 1em; }
  #paywall-form ._form ._form-branding {
    display: none; }
  #paywall-form ._form ._form-label {
    display: none; }
  #paywall-form ._form [type='text'],
  #paywall-form ._form [type='password'],
  #paywall-form ._form [type='date'],
  #paywall-form ._form [type='datetime'],
  #paywall-form ._form [type='datetime-local'],
  #paywall-form ._form [type='month'],
  #paywall-form ._form [type='week'],
  #paywall-form ._form [type='email'],
  #paywall-form ._form [type='number'],
  #paywall-form ._form [type='search'],
  #paywall-form ._form [type='tel'],
  #paywall-form ._form [type='time'],
  #paywall-form ._form [type='url'],
  #paywall-form ._form [type='color'],
  #paywall-form ._form textarea {
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: auto;
    margin: 0 0 30px;
    padding: 12px 16px;
    border: 1px solid #0b8793;
    border-radius: 3px;
    background-color: #fefefe;
    box-shadow: none;
    font-family: inherit;
    font-size: 1em;
    font-weight: normal;
    line-height: 1.5;
    color: #252525;
    transition: background-color 0.5s, border-color 0.25s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
    #paywall-form ._form [type='text']::-webkit-input-placeholder,
    #paywall-form ._form [type='password']::-webkit-input-placeholder,
    #paywall-form ._form [type='date']::-webkit-input-placeholder,
    #paywall-form ._form [type='datetime']::-webkit-input-placeholder,
    #paywall-form ._form [type='datetime-local']::-webkit-input-placeholder,
    #paywall-form ._form [type='month']::-webkit-input-placeholder,
    #paywall-form ._form [type='week']::-webkit-input-placeholder,
    #paywall-form ._form [type='email']::-webkit-input-placeholder,
    #paywall-form ._form [type='number']::-webkit-input-placeholder,
    #paywall-form ._form [type='search']::-webkit-input-placeholder,
    #paywall-form ._form [type='tel']::-webkit-input-placeholder,
    #paywall-form ._form [type='time']::-webkit-input-placeholder,
    #paywall-form ._form [type='url']::-webkit-input-placeholder,
    #paywall-form ._form [type='color']::-webkit-input-placeholder,
    #paywall-form ._form textarea::-webkit-input-placeholder {
      color: #a9a9a9; }
    #paywall-form ._form [type='text']:-ms-input-placeholder,
    #paywall-form ._form [type='password']:-ms-input-placeholder,
    #paywall-form ._form [type='date']:-ms-input-placeholder,
    #paywall-form ._form [type='datetime']:-ms-input-placeholder,
    #paywall-form ._form [type='datetime-local']:-ms-input-placeholder,
    #paywall-form ._form [type='month']:-ms-input-placeholder,
    #paywall-form ._form [type='week']:-ms-input-placeholder,
    #paywall-form ._form [type='email']:-ms-input-placeholder,
    #paywall-form ._form [type='number']:-ms-input-placeholder,
    #paywall-form ._form [type='search']:-ms-input-placeholder,
    #paywall-form ._form [type='tel']:-ms-input-placeholder,
    #paywall-form ._form [type='time']:-ms-input-placeholder,
    #paywall-form ._form [type='url']:-ms-input-placeholder,
    #paywall-form ._form [type='color']:-ms-input-placeholder,
    #paywall-form ._form textarea:-ms-input-placeholder {
      color: #a9a9a9; }
    #paywall-form ._form [type='text']::placeholder,
    #paywall-form ._form [type='password']::placeholder,
    #paywall-form ._form [type='date']::placeholder,
    #paywall-form ._form [type='datetime']::placeholder,
    #paywall-form ._form [type='datetime-local']::placeholder,
    #paywall-form ._form [type='month']::placeholder,
    #paywall-form ._form [type='week']::placeholder,
    #paywall-form ._form [type='email']::placeholder,
    #paywall-form ._form [type='number']::placeholder,
    #paywall-form ._form [type='search']::placeholder,
    #paywall-form ._form [type='tel']::placeholder,
    #paywall-form ._form [type='time']::placeholder,
    #paywall-form ._form [type='url']::placeholder,
    #paywall-form ._form [type='color']::placeholder,
    #paywall-form ._form textarea::placeholder {
      color: #a9a9a9; }
  #paywall-form ._form textarea {
    height: 180px; }
  #paywall-form ._form ._button-wrapper {
    text-align: center;
    margin-top: 25px; }
  #paywall-form ._form ._submit {
    background: #0b8793;
    font-weight: bold;
    border: none;
    font-size: 1em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .8px;
    padding: 15px 35px;
    border-radius: 4px;
    color: #ffffff;
    box-shadow: 0 2px 8px 0 rgba(255, 255, 255, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.5); }
  #paywall-form ._form ._full_width {
    -webkit-flex: 1 0 50%;
        -ms-flex: 1 0 50%;
            flex: 1 0 50%;
    width: 50%;
    padding: 0 20px; }
    #paywall-form ._form ._full_width._field1 {
      -webkit-flex: 1 0 100%;
          -ms-flex: 1 0 100%;
              flex: 1 0 100%;
      width: 100%; }
    @media screen and (max-width: 47.99875em) {
      #paywall-form ._form ._full_width {
        -webkit-flex: 1 0 100%;
            -ms-flex: 1 0 100%;
                flex: 1 0 100%;
        width: 100%; } }
  #paywall-form ._form ._button-wrapper._inline-style {
    width: 134px; }
    #paywall-form ._form ._button-wrapper._inline-style button {
      background: #0b8793;
      color: #fefefe;
      text-transform: uppercase;
      padding: .5em 1.5em;
      border-radius: 0 .25em .25em 0;
      cursor: pointer;
      font-size: 1em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 700; }
      #paywall-form ._form ._button-wrapper._inline-style button:hover {
        background-color: #09717b; }
  #paywall-form ._form-thank-you {
    text-align: center;
    margin: 30px;
    padding: 30px;
    border-top: 1px solid #0b8793; }
  #paywall-form ._error._above, #paywall-form ._error._below {
    font-size: .7em;
    color: red;
    position: absolute;
    -webkit-transform: translateY(-28px);
        -ms-transform: translateY(-28px);
            transform: translateY(-28px);
    font-style: italic; }
  #paywall-form .hbspt-form .hs_error_rollup {
    display: none; }
  #paywall-form .hbspt-form form {
    text-align: left;
    font-size: 0;
    padding: 20px; }
    #paywall-form .hbspt-form form > * {
      font-size: 1rem; }
    #paywall-form .hbspt-form form fieldset {
      max-width: none;
      display: block;
      margin: 0 -20px 30px; }
      @media screen and (max-width: 47.99875em) {
        #paywall-form .hbspt-form form fieldset {
          margin: 0 -20px 0px; }
          #paywall-form .hbspt-form form fieldset:last-of-type {
            margin-bottom: 20px; } }
      #paywall-form .hbspt-form form fieldset.form-columns-1 .hs-input,
      #paywall-form .hbspt-form form fieldset.form-columns-1 .input {
        margin: 0;
        width: 100%; }
        @media screen and (max-width: 47.99875em) {
          #paywall-form .hbspt-form form fieldset.form-columns-1 .hs-input,
          #paywall-form .hbspt-form form fieldset.form-columns-1 .input {
            width: 100% !important; }
            #paywall-form .hbspt-form form fieldset.form-columns-1 .hs-input [type='checkbox'],
            #paywall-form .hbspt-form form fieldset.form-columns-1 .input [type='checkbox'] {
              width: 20px !important;
              height: 20px !important; } }
      #paywall-form .hbspt-form form fieldset.form-columns-2 .hs-input,
      #paywall-form .hbspt-form form fieldset.form-columns-2 .input {
        margin: 0;
        width: 100%; }
        @media screen and (max-width: 47.99875em) {
          #paywall-form .hbspt-form form fieldset.form-columns-2 .hs-input,
          #paywall-form .hbspt-form form fieldset.form-columns-2 .input {
            width: 100% !important; }
            #paywall-form .hbspt-form form fieldset.form-columns-2 .hs-input [type='checkbox'],
            #paywall-form .hbspt-form form fieldset.form-columns-2 .input [type='checkbox'] {
              width: 20px !important;
              height: 20px !important; } }
      #paywall-form .hbspt-form form fieldset.form-columns-1 .hs-form-field {
        float: none;
        width: 100%;
        padding-left: 20px;
        padding-right: 20px; }
        @media screen and (max-width: 47.99875em) {
          #paywall-form .hbspt-form form fieldset.form-columns-1 .hs-form-field {
            width: 100% !important; } }
      #paywall-form .hbspt-form form fieldset.form-columns-2 .hs-form-field {
        float: left;
        width: 50%;
        padding-left: 20px;
        padding-right: 20px; }
        @media screen and (max-width: 47.99875em) {
          #paywall-form .hbspt-form form fieldset.form-columns-2 .hs-form-field {
            width: 100% !important; }
            #paywall-form .hbspt-form form fieldset.form-columns-2 .hs-form-field [type='checkbox'] {
              width: 20px !important;
              height: 20px !important; } }
      #paywall-form .hbspt-form form fieldset .hs-form-field {
        position: relative; }
        @media screen and (max-width: 47.99875em) {
          #paywall-form .hbspt-form form fieldset .hs-form-field {
            margin-bottom: 20px; } }
      #paywall-form .hbspt-form form fieldset label {
        position: absolute;
        top: 13px;
        left: 37px;
        font-family: inherit;
        font-size: 1em;
        font-weight: normal;
        line-height: 1.5;
        color: rgba(37, 37, 37, 0.5);
        pointer-events: none;
        transition: all 200ms; }
        #paywall-form .hbspt-form form fieldset label.float-me {
          -webkit-transform: scale(0.6);
              -ms-transform: scale(0.6);
                  transform: scale(0.6);
          top: 8px;
          -webkit-transform-origin: left top;
              -ms-transform-origin: left top;
                  transform-origin: left top;
          color: #0b8793; }
  #paywall-form .hbspt-form [type='text'],
  #paywall-form .hbspt-form [type='password'],
  #paywall-form .hbspt-form [type='date'],
  #paywall-form .hbspt-form [type='datetime'],
  #paywall-form .hbspt-form [type='datetime-local'],
  #paywall-form .hbspt-form [type='month'],
  #paywall-form .hbspt-form [type='week'],
  #paywall-form .hbspt-form [type='email'],
  #paywall-form .hbspt-form [type='number'],
  #paywall-form .hbspt-form [type='search'],
  #paywall-form .hbspt-form [type='tel'],
  #paywall-form .hbspt-form [type='time'],
  #paywall-form .hbspt-form [type='url'],
  #paywall-form .hbspt-form [type='color'],
  #paywall-form .hbspt-form textarea,
  #paywall-form .hbspt-form select {
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: auto;
    margin: 0 0 30px;
    padding: 18px 16px 6px;
    border: 1px solid #0b8793;
    border-radius: 3px;
    background-color: #fefefe;
    box-shadow: none;
    font-family: inherit;
    font-size: 1em;
    font-weight: normal;
    line-height: 1.5;
    color: #252525;
    transition: background-color 0.5s, border-color 0.25s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
    #paywall-form .hbspt-form [type='text']::-webkit-input-placeholder,
    #paywall-form .hbspt-form [type='password']::-webkit-input-placeholder,
    #paywall-form .hbspt-form [type='date']::-webkit-input-placeholder,
    #paywall-form .hbspt-form [type='datetime']::-webkit-input-placeholder,
    #paywall-form .hbspt-form [type='datetime-local']::-webkit-input-placeholder,
    #paywall-form .hbspt-form [type='month']::-webkit-input-placeholder,
    #paywall-form .hbspt-form [type='week']::-webkit-input-placeholder,
    #paywall-form .hbspt-form [type='email']::-webkit-input-placeholder,
    #paywall-form .hbspt-form [type='number']::-webkit-input-placeholder,
    #paywall-form .hbspt-form [type='search']::-webkit-input-placeholder,
    #paywall-form .hbspt-form [type='tel']::-webkit-input-placeholder,
    #paywall-form .hbspt-form [type='time']::-webkit-input-placeholder,
    #paywall-form .hbspt-form [type='url']::-webkit-input-placeholder,
    #paywall-form .hbspt-form [type='color']::-webkit-input-placeholder,
    #paywall-form .hbspt-form textarea::-webkit-input-placeholder,
    #paywall-form .hbspt-form select::-webkit-input-placeholder {
      color: #a9a9a9; }
    #paywall-form .hbspt-form [type='text']:-ms-input-placeholder,
    #paywall-form .hbspt-form [type='password']:-ms-input-placeholder,
    #paywall-form .hbspt-form [type='date']:-ms-input-placeholder,
    #paywall-form .hbspt-form [type='datetime']:-ms-input-placeholder,
    #paywall-form .hbspt-form [type='datetime-local']:-ms-input-placeholder,
    #paywall-form .hbspt-form [type='month']:-ms-input-placeholder,
    #paywall-form .hbspt-form [type='week']:-ms-input-placeholder,
    #paywall-form .hbspt-form [type='email']:-ms-input-placeholder,
    #paywall-form .hbspt-form [type='number']:-ms-input-placeholder,
    #paywall-form .hbspt-form [type='search']:-ms-input-placeholder,
    #paywall-form .hbspt-form [type='tel']:-ms-input-placeholder,
    #paywall-form .hbspt-form [type='time']:-ms-input-placeholder,
    #paywall-form .hbspt-form [type='url']:-ms-input-placeholder,
    #paywall-form .hbspt-form [type='color']:-ms-input-placeholder,
    #paywall-form .hbspt-form textarea:-ms-input-placeholder,
    #paywall-form .hbspt-form select:-ms-input-placeholder {
      color: #a9a9a9; }
    #paywall-form .hbspt-form [type='text']::placeholder,
    #paywall-form .hbspt-form [type='password']::placeholder,
    #paywall-form .hbspt-form [type='date']::placeholder,
    #paywall-form .hbspt-form [type='datetime']::placeholder,
    #paywall-form .hbspt-form [type='datetime-local']::placeholder,
    #paywall-form .hbspt-form [type='month']::placeholder,
    #paywall-form .hbspt-form [type='week']::placeholder,
    #paywall-form .hbspt-form [type='email']::placeholder,
    #paywall-form .hbspt-form [type='number']::placeholder,
    #paywall-form .hbspt-form [type='search']::placeholder,
    #paywall-form .hbspt-form [type='tel']::placeholder,
    #paywall-form .hbspt-form [type='time']::placeholder,
    #paywall-form .hbspt-form [type='url']::placeholder,
    #paywall-form .hbspt-form [type='color']::placeholder,
    #paywall-form .hbspt-form textarea::placeholder,
    #paywall-form .hbspt-form select::placeholder {
      color: #a9a9a9; }
  #paywall-form .hbspt-form select {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28138, 138, 138%29'></polygon></svg>");
    background-origin: content-box;
    background-position: right 5px;
    background-repeat: no-repeat;
    background-size: 9px 6px;
    color: rgba(37, 37, 37, 0.4); }
  #paywall-form .hbspt-form textarea {
    height: 180px; }
  #paywall-form .hbspt-form .inputs-list {
    list-style: none;
    margin: 0;
    padding: 0; }
    #paywall-form .hbspt-form .inputs-list li {
      list-style: none;
      margin: 0;
      padding: 0; }
      #paywall-form .hbspt-form .inputs-list li label {
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        position: relative !important;
        top: auto;
        left: auto;
        color: #252525; }
      #paywall-form .hbspt-form .inputs-list li:before {
        display: none; }
  #paywall-form .hbspt-form [type='checkbox'] {
    margin: 0 10px 0 0;
    display: block;
    box-sizing: border-box;
    width: 20px !important;
    height: 20px;
    border: 1px solid #0b8793;
    border-radius: 3px;
    background-color: #fefefe;
    box-shadow: none;
    color: #252525;
    transition: background-color 0.25s, border-color 0.25s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-flex: 0 1 20px;
        -ms-flex: 0 1 20px;
            flex: 0 1 20px; }
    @media screen and (max-width: 47.99875em) {
      #paywall-form .hbspt-form [type='checkbox'] {
        width: 20px !important;
        height: 20px !important; } }
    #paywall-form .hbspt-form [type='checkbox']:focus {
      outline: none; }
    #paywall-form .hbspt-form [type='checkbox'] + span {
      margin-left: 10px;
      -webkit-flex: 1 0;
          -ms-flex: 1 0;
              flex: 1 0; }
  #paywall-form .hbspt-form [type='checkbox']:checked {
    background-color: #0b8793;
    position: relative; }
    #paywall-form .hbspt-form [type='checkbox']:checked:after {
      content: "✓";
      font-size: 1.25em;
      color: #fff;
      display: inline-block;
      position: absolute;
      left: 2px;
      top: 0; }
  #paywall-form .hbspt-form .hs-fieldtype-checkbox label {
    position: relative;
    top: 0px;
    left: 0px;
    font-family: inherit;
    font-size: 1em;
    font-weight: normal;
    line-height: 1.5;
    color: rgba(37, 37, 37, 0.5);
    pointer-events: all;
    margin-bottom: 5px;
    transition: all 200ms; }
    #paywall-form .hbspt-form .hs-fieldtype-checkbox label.float-me {
      -webkit-transform: scale(1);
          -ms-transform: scale(1);
              transform: scale(1);
      top: 0;
      -webkit-transform-origin: left top;
          -ms-transform-origin: left top;
              transform-origin: left top;
      color: rgba(37, 37, 37, 0.5); }
  #paywall-form .hbspt-form .hs-fieldtype-checkbox ul li label.float-me {
    color: #252525; }
  #paywall-form .hbspt-form .hs-submit {
    text-align: center; }
  #paywall-form .hbspt-form .hs-button {
    background: #0b8793;
    font-weight: bold;
    border: none;
    font-size: 1em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .8px;
    padding: 15px 35px;
    border-radius: 4px;
    color: #ffffff;
    box-shadow: 0 2px 8px 0 rgba(255, 255, 255, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.5); }
  #paywall-form .hbspt-form .hs-error-msg {
    font-size: 0.75em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 500;
    margin-top: 5px;
    margin-left: 15px; }
  #paywall-form .hbspt-form .submitted-message {
    text-align: center;
    border: 1px solid #0b8793;
    background: rgba(11, 135, 147, 0.1);
    padding: 30px;
    margin: 15px auto;
    max-width: 680px; }
  #paywall-form ._form-thank-you {
    text-align: center;
    margin: 30px;
    padding: 30px;
    border-top: 1px solid #0b8793; }
  #paywall-form ._error._above, #paywall-form ._error._below {
    font-size: .7em;
    color: red;
    position: absolute;
    -webkit-transform: translateY(-28px);
        -ms-transform: translateY(-28px);
            transform: translateY(-28px);
    font-style: italic; }

.key-field {
  display: none; }

body.error404 header {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
  background: #0b8793;
  /* Old browsers */
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #0b8793 0%, #360033 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0b8793', endColorstr='#360033', GradientType=1);
  /* IE6-9 */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); }
  body.error404 header.site-header {
    height: 70px;
    opacity: 1; }
    @media screen and (max-width: 63.99875em) {
      body.error404 header.site-header {
        height: 55px; } }
    @media screen and (max-width: 63.99875em) {
      body.error404 header.site-header .mobile-nav-trigger {
        top: 16px; } }
  body.error404 header.site-header .logo {
    width: 200px;
    top: 10px; }
    @media screen and (max-width: 63.99875em) {
      body.error404 header.site-header .logo {
        width: 160px;
        top: 2px; } }
  body.error404 header.site-header .main-nav-container {
    top: 10px; }
    @media screen and (max-width: 63.99875em) {
      body.error404 header.site-header .main-nav-container {
        top: 0; } }

body.error404 .intro-area {
  text-align: center;
  max-width: 760px;
  margin: 0 auto;
  padding: 60px 0 80px; }
  @media screen and (max-width: 63.99875em) {
    body.error404 .intro-area {
      padding: 60px 0 35px; } }
  body.error404 .intro-area #searchform {
    max-width: 600px;
    margin: 30px auto 0; }
    body.error404 .intro-area #searchform .input-group {
      margin: 0;
      position: relative; }
      body.error404 .intro-area #searchform .input-group:before {
        font-family: "Font Awesome 5 Pro";
        content: "\f002";
        display: inline-block;
        color: rgba(0, 0, 0, 0.4);
        font-weight: 400;
        font-size: .8em;
        position: absolute;
        left: 20px;
        top: 50%;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%); }
      body.error404 .intro-area #searchform .input-group .input-group-field {
        padding: 15px 0 15px 40px;
        height: 50px; }
        body.error404 .intro-area #searchform .input-group .input-group-field:focus {
          outline: none;
          border: 1px solid #0b8793;
          background-color: #fefefe;
          box-shadow: none; }
    body.error404 .intro-area #searchform #searchsubmit {
      box-shadow: none;
      padding: 0 30px; }
    body.error404 .intro-area #searchform .input-group > :last-child,
    body.error404 .intro-area #searchform .input-group > :last-child.input-group-button > * {
      border-radius: 0 4px 4px 0; }
  body.error404 .intro-area p {
    font-size: 1.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 500;
    margin: 0;
    padding: 0;
    color: #252525; }
  body.error404 .intro-area h1 {
    font-size: 4em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 900;
    margin: 0;
    padding: 0;
    color: #2e4244; }
    @media screen and (max-width: 63.99875em) {
      body.error404 .intro-area h1 {
        font-size: 3em; } }
    body.error404 .intro-area h1 + p {
      margin-top: 15px; }
  body.error404 .intro-area h3 {
    font-size: 1.5em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 700;
    margin: 0;
    padding: 0;
    color: #2e4244; }

body.error404 h2 {
  margin: 0 0 60px;
  text-align: center;
  font-size: 2.25em;
  font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
  font-weight: 700;
  display: block; }
  @media screen and (max-width: 47.99875em) {
    body.error404 h2 {
      margin: 60px 0 60px; } }
  body.error404 h2 a {
    color: #252525;
    position: relative; }
    body.error404 h2 a span {
      position: relative;
      padding-bottom: 10px; }
      body.error404 h2 a span:before {
        content: "";
        display: block;
        height: 4px;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
        background: #0b8793;
        /* Old browsers */
        /* FF3.6-15 */
        /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right, #0b8793 0%, #360033 100%);
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0b8793', endColorstr='#360033', GradientType=1);
        /* IE6-9 */ }
    body.error404 h2 a:after {
      font-family: "Font Awesome 5 Pro";
      content: "\f061";
      display: inline-block;
      margin-left: 20px;
      color: #0b8793;
      font-weight: 400;
      font-size: .7em;
      transition: all 200ms; }
    body.error404 h2 a:hover:after {
      margin-left: 30px; }

body.error404 .post-item {
  text-align: left;
  position: relative;
  display: block;
  height: 100%;
  background: #ffffff;
  box-shadow: 0 7px 12px 0 rgba(0, 0, 0, 0.15);
  transition: all 0.25s ease-in-out; }
  body.error404 .post-item p {
    margin: 0;
    padding: 0 30px 30px;
    color: #252525;
    font-size: 0.9em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 500; }
  body.error404 .post-item img {
    height: 190px;
    object-fit: cover;
    width: 100%;
    opacity: 0.8;
    transition: opacity 0.25s ease-in-out; }
  body.error404 .post-item h5 {
    margin: 0;
    padding: 20px 30px 0;
    color: #252525;
    font-size: 0.875em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 400; }
    body.error404 .post-item h5 img {
      width: 30px;
      height: 30px;
      object-fit: contain;
      margin-right: 15px;
      border-radius: 50%; }
    body.error404 .post-item h5 span {
      margin-right: 5px; }
  body.error404 .post-item h3 {
    margin: 0;
    padding: 20px 30px 12px;
    color: #252525;
    font-size: 1.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    line-height: 1.5em; }
  body.error404 .post-item:after {
    content: "";
    display: block;
    height: 6px;
    position: absolute;
    bottom: 0;
    width: 100%;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
    background: #0b8793;
    /* Old browsers */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #0b8793 0%, #360033 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
    /* IE6-9 */ }
  body.error404 .post-item:hover {
    -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
            transform: scale(1.05);
    box-shadow: 0 5px 16px 0 rgba(0, 0, 0, 0.15); }
    body.error404 .post-item:hover img {
      opacity: 1; }

body.page-template-page-whysk header {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
  background: #0b8793;
  /* Old browsers */
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #0b8793 0%, #360033 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
  /* IE6-9 */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); }
  body.page-template-page-whysk header.site-header {
    height: 70px;
    opacity: 1; }
    @media screen and (max-width: 63.99875em) {
      body.page-template-page-whysk header.site-header {
        height: 55px; } }
    @media screen and (max-width: 63.99875em) {
      body.page-template-page-whysk header.site-header .mobile-nav-trigger {
        top: 16px; } }
  body.page-template-page-whysk header.site-header .logo {
    width: 200px;
    top: 10px; }
    @media screen and (max-width: 63.99875em) {
      body.page-template-page-whysk header.site-header .logo {
        width: 160px;
        top: 2px; } }
  body.page-template-page-whysk header.site-header .main-nav-container {
    top: 10px; }
    @media screen and (max-width: 63.99875em) {
      body.page-template-page-whysk header.site-header .main-nav-container {
        top: 0; } }

body.page-template-page-whysk section.featured-masthead {
  padding-top: 70px; }
  @media screen and (max-width: 63.99875em) {
    body.page-template-page-whysk section.featured-masthead {
      padding-top: 55px; } }
  body.page-template-page-whysk section.featured-masthead .cell {
    position: relative;
    display: block;
    overflow: hidden; }
    body.page-template-page-whysk section.featured-masthead .cell .background-image {
      background-position: center;
      background-size: cover;
      background-repeat: no-repeat;
      z-index: -1;
      transition: all .4s;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }
    body.page-template-page-whysk section.featured-masthead .cell .content-wrapper {
      color: #ffffff;
      padding: 150px 40px 115px;
      display: block; }
      @media screen and (max-width: 47.99875em) {
        body.page-template-page-whysk section.featured-masthead .cell .content-wrapper {
          padding: 75px 25px 45px; } }
      body.page-template-page-whysk section.featured-masthead .cell .content-wrapper h3 {
        font-family: "anonymous-pro", monospace;
        font-weight: 700;
        font-size: 2.5em;
        line-height: 100%;
        margin: 0 0 20px 0; }
      body.page-template-page-whysk section.featured-masthead .cell .content-wrapper .tag {
        background: rgba(255, 255, 255, 0.4);
        padding: 5px 10px 3px;
        border-radius: 15px;
        display: inline-block;
        font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
        font-weight: 900;
        font-size: 0.9375em;
        text-transform: uppercase;
        margin: 0 0 20px 0;
        transition: all .4s; }
      body.page-template-page-whysk section.featured-masthead .cell .content-wrapper .link {
        font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
        font-weight: 900;
        font-size: 0.9375em;
        text-transform: uppercase; }
        body.page-template-page-whysk section.featured-masthead .cell .content-wrapper .link:after {
          font-family: "Font Awesome 5 Pro";
          content: "\f061";
          display: inline-block;
          margin-left: 15px;
          color: #ffffff;
          font-weight: 900;
          font-size: .8em;
          transition: all .4s;
          position: relative;
          top: -1px; }
    body.page-template-page-whysk section.featured-masthead .cell:hover {
      box-shadow: 0 0 30px rgba(0, 0, 0, 0.5); }
      body.page-template-page-whysk section.featured-masthead .cell:hover .tag {
        box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15); }
      body.page-template-page-whysk section.featured-masthead .cell:hover .content-wrapper .link:after {
        margin-left: 20px; }
      body.page-template-page-whysk section.featured-masthead .cell:hover .background-image {
        -webkit-transform: scale(1.2);
            -ms-transform: scale(1.2);
                transform: scale(1.2); }

body.page-template-page-whysk section.article-grid {
  padding: 80px 0; }
  body.page-template-page-whysk section.article-grid .header-container {
    text-align: center; }
    body.page-template-page-whysk section.article-grid .header-container p {
      font-size: 1.25em; }
  body.page-template-page-whysk section.article-grid .why-sk-header {
    width: 404px;
    height: 130px;
    margin: 0 auto 35px;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap; }
    @media screen and (max-width: 47.99875em) {
      body.page-template-page-whysk section.article-grid .why-sk-header {
        width: 85%; } }
  body.page-template-page-whysk section.article-grid .tag-cloud {
    margin-top: 65px;
    margin-bottom: 45px;
    text-align: center; }
    body.page-template-page-whysk section.article-grid .tag-cloud ul {
      margin: 0;
      padding: 0;
      list-style: none; }
      body.page-template-page-whysk section.article-grid .tag-cloud ul li {
        margin: 0 10px 15px;
        padding: 0;
        list-style: none;
        display: inline-block;
        font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
        font-weight: 700;
        font-size: 0.9375em;
        text-transform: uppercase; }
        body.page-template-page-whysk section.article-grid .tag-cloud ul li a {
          padding: 4px 10px 3px;
          background: rgba(11, 135, 147, 0.1);
          border-radius: 10px;
          color: #0b8793;
          transition: all .4s; }
        body.page-template-page-whysk section.article-grid .tag-cloud ul li.selected a {
          background: #0b8793;
          border-radius: 10px;
          color: #ffffff;
          padding: 4px 10px 3px; }
        body.page-template-page-whysk section.article-grid .tag-cloud ul li:hover a {
          box-shadow: 0 3px 6px #00000029; }
  body.page-template-page-whysk section.article-grid .button-row {
    margin-top: 20px; }
    body.page-template-page-whysk section.article-grid .button-row a {
      margin: 0; }
  body.page-template-page-whysk section.article-grid .all-posts .cell {
    margin-bottom: 40px;
    transition: all 350ms; }
    body.page-template-page-whysk section.article-grid .all-posts .cell.scale-out {
      -webkit-transform: scale(0.7);
          -ms-transform: scale(0.7);
              transform: scale(0.7);
      opacity: 0; }
  body.page-template-page-whysk section.article-grid .post-item {
    text-align: left;
    position: relative;
    display: block;
    height: 100%;
    background: #ffffff;
    box-shadow: 0 7px 12px 0 rgba(0, 0, 0, 0.15);
    transition: all 0.25s ease-in-out; }
    body.page-template-page-whysk section.article-grid .post-item p {
      margin: 0 0 40px;
      padding: 0 30px 30px;
      color: #252525;
      font-size: 0.9em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 500; }
    body.page-template-page-whysk section.article-grid .post-item .category {
      position: absolute;
      top: 150px;
      left: 30px;
      color: #ffffff;
      background: rgba(255, 255, 255, 0.4);
      border-radius: 15px;
      font-size: 0.9375em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 900;
      letter-spacing: .75px;
      z-index: 2;
      text-transform: uppercase;
      margin: 0;
      padding: 4px 10px 3px;
      display: inline-block; }
    body.page-template-page-whysk section.article-grid .post-item .img-container {
      background: #252525; }
    body.page-template-page-whysk section.article-grid .post-item img {
      height: 190px;
      object-fit: cover;
      width: 100%;
      opacity: 0.65;
      transition: opacity 0.25s ease-in-out; }
    body.page-template-page-whysk section.article-grid .post-item h5 {
      margin: 0;
      padding: 20px 30px 0;
      color: #252525;
      font-size: 0.875em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 400; }
      body.page-template-page-whysk section.article-grid .post-item h5 img {
        width: 30px;
        height: 30px;
        object-fit: contain;
        margin-right: 15px;
        border-radius: 50%; }
      body.page-template-page-whysk section.article-grid .post-item h5 span {
        margin-right: 5px; }
    body.page-template-page-whysk section.article-grid .post-item h4 {
      margin: 0;
      padding: 0;
      color: #989898;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 500;
      font-size: 1.0625em;
      position: absolute;
      bottom: 30px;
      left: 30px; }
      body.page-template-page-whysk section.article-grid .post-item h4 i {
        font-size: .8em;
        margin-right: 5px;
        position: relative;
        top: -2px; }
    body.page-template-page-whysk section.article-grid .post-item h3 {
      margin: 0;
      padding: 20px 30px 12px;
      color: #252525;
      font-size: 1.25em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 600;
      line-height: 1.5em; }
    body.page-template-page-whysk section.article-grid .post-item:after {
      content: "";
      display: block;
      height: 6px;
      position: absolute;
      bottom: 0;
      width: 100%;
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
      background: #0b8793;
      /* Old browsers */
      /* FF3.6-15 */
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to right, #0b8793 0%, #360033 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
      /* IE6-9 */ }
    body.page-template-page-whysk section.article-grid .post-item:hover {
      -webkit-transform: scale(1.05);
          -ms-transform: scale(1.05);
              transform: scale(1.05);
      box-shadow: 0 5px 16px 0 rgba(0, 0, 0, 0.15); }
      body.page-template-page-whysk section.article-grid .post-item:hover img {
        opacity: .75; }

body.page-template-page-whysk #searchform {
  max-width: 300px;
  margin: 25px auto 0; }
  body.page-template-page-whysk #searchform .input-group {
    display: inline-block;
    position: relative;
    margin: 0; }
    body.page-template-page-whysk #searchform .input-group input {
      border-radius: 30px;
      padding: 8px 15px;
      border: 0;
      box-shadow: 0 0 6px rgba(0, 0, 0, 0.15); }
    body.page-template-page-whysk #searchform .input-group .input-group-button {
      position: absolute;
      right: 15px;
      top: 10px;
      background-image: linear-gradient(to right, rgba(255, 255, 255, 0), white 50%);
      padding-left: 30px; }
      body.page-template-page-whysk #searchform .input-group .input-group-button .fa {
        display: block !important;
        color: #0b8793;
        background: transparent;
        border-radius: 0;
        padding: 1px;
        margin: 0;
        box-shadow: none; }
      body.page-template-page-whysk #searchform .input-group .input-group-button input[value="Search"] {
        display: none !important; }

.masthead {
  position: relative;
  text-align: center;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  .masthead .client-logo-container {
    background: #fafafa;
    padding: 8px;
    border-radius: 6px;
    margin-bottom: 20px;
    display: inline-block;
    width: auto;
    height: 80px; }
    .masthead .client-logo-container img {
      object-fit: contain;
      height: 100%; }
  .masthead .logo-bug {
    position: absolute;
    bottom: 0;
    width: 140px;
    -webkit-transform: translateY(50%);
        -ms-transform: translateY(50%);
            transform: translateY(50%); }
    .masthead .logo-bug.left {
      left: 40px; }
    .masthead .logo-bug.right {
      right: 40px; }
    .masthead .logo-bug img {
      width: 100%;
      height: auto; }
  .masthead p {
    max-width: 580px;
    margin: 0 auto 20px;
    padding: 0;
    font-size: 1.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600; }
    .masthead p:last-of-type {
      margin-bottom: 0; }
    @media screen and (max-width: 48em) {
      .masthead p {
        font-size: 1em; } }
  .masthead h1 {
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 800;
    font-size: 4em;
    letter-spacing: .4px;
    line-height: 120%;
    margin: 0;
    padding: 0; }
    .masthead h1 + * {
      margin-top: 30px; }
  .masthead .button, .masthead .wp-block-button .wp-block-button__link, .wp-block-button .masthead .wp-block-button__link {
    margin-top: 45px; }
    @media screen and (max-width: 63.99875em) {
      .masthead .button, .masthead .wp-block-button .wp-block-button__link, .wp-block-button .masthead .wp-block-button__link {
        margin-top: 30px; } }
  .masthead.primary, .masthead.vanta {
    height: calc(100vh - 90px);
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .masthead.primary .grid-container, .masthead.vanta .grid-container {
      -webkit-transform: translateY(12%);
          -ms-transform: translateY(12%);
              transform: translateY(12%); }
      @media screen and (max-width: 47.99875em) {
        .masthead.primary .grid-container, .masthead.vanta .grid-container {
          -webkit-transform: translateY(0);
              -ms-transform: translateY(0);
                  transform: translateY(0); } }
    @media screen and (max-width: 47.99875em) {
      .masthead.primary, .masthead.vanta {
        padding: 0 10px 0;
        min-height: 680px; } }
    @media screen and (max-width: 63.99875em) {
      .masthead.primary h1, .masthead.vanta h1 {
        font-size: 3em; } }
    @media screen and (max-width: 47.99875em) {
      .masthead.primary h1, .masthead.vanta h1 {
        font-size: 2.25em; } }
  @media screen and (max-width: 63.99875em) {
    .masthead .vanta-canvas {
      display: none; } }
  .masthead.secondary {
    padding: 200px 0 50px; }
    .masthead.secondary.has-logo {
      padding: 96px 0 50px; }
    @media screen and (max-width: 47.99875em) {
      .masthead.secondary {
        padding: 100px 10px 25px; } }
    .masthead.secondary h1 + * {
      margin-top: 5px; }
    @media screen and (max-width: 47.99875em) {
      .masthead.secondary h1 {
        font-size: 3em; } }
  .masthead.light-theme {
    color: #ffffff; }
  .masthead.dark-theme {
    color: #252525; }
  .masthead.no-top-padding {
    padding-top: 0; }
  .masthead.no-bottom-padding {
    padding-bottom: 0; }

.masthead-filler {
  padding-bottom: 0;
  background: #252525;
  position: relative;
  z-index: -1;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.masthead-cover {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: #ffffff; }
  .masthead-cover:after {
    background: url(//stablekernel.com/wp-content/themes/Stable-Kernel-Foundation/dist/assets/css/../images/bg-tile-hex-opacity-5.png) 0 0 repeat;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-transform: translateZ(0);
            transform: translateZ(0); }

.masthead-form {
  position: relative;
  text-align: left;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 140px 0 60px; }
  @media screen and (max-width: 47.99875em) {
    .masthead-form {
      padding: 60px 10px; } }
  .masthead-form p {
    margin: 0 auto 20px;
    padding: 0;
    font-size: 1em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 400; }
    .masthead-form p:last-of-type {
      margin-bottom: 0; }
  .masthead-form h3 {
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    font-size: 1.375em;
    letter-spacing: .4px;
    line-height: 120%;
    margin: 0;
    padding: 0; }
    .masthead-form h3 + * {
      margin-top: 20px; }
  .masthead-form h1 {
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 800;
    font-size: 2.5em;
    letter-spacing: .4px;
    line-height: 120%;
    margin: 20px 0 0;
    padding: 0; }
    .masthead-form h1 + * {
      margin-top: 20px; }
  .masthead-form .button, .masthead-form .wp-block-button .wp-block-button__link, .wp-block-button .masthead-form .wp-block-button__link {
    margin-top: 45px; }
    @media screen and (max-width: 63.99875em) {
      .masthead-form .button, .masthead-form .wp-block-button .wp-block-button__link, .wp-block-button .masthead-form .wp-block-button__link {
        margin-top: 30px; } }
  .masthead-form.primary {
    height: calc(100vh - 90px);
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .masthead-form.primary .grid-container {
      -webkit-transform: translateY(12%);
          -ms-transform: translateY(12%);
              transform: translateY(12%); }
      @media screen and (max-width: 47.99875em) {
        .masthead-form.primary .grid-container {
          -webkit-transform: translateY(0);
              -ms-transform: translateY(0);
                  transform: translateY(0); } }
    @media screen and (max-width: 47.99875em) {
      .masthead-form.primary {
        padding: 0 10px 0;
        min-height: 680px; } }
    @media screen and (max-width: 63.99875em) {
      .masthead-form.primary h1 {
        font-size: 3em; } }
    @media screen and (max-width: 47.99875em) {
      .masthead-form.primary h1 {
        font-size: 2.25em; } }
  .masthead-form .form-container {
    padding: 30px;
    background: #ffffff;
    border-radius: 5px; }
    @media screen and (max-width: 39.99875em) {
      .masthead-form .form-container {
        margin-top: 40px; } }
    .masthead-form .form-container .hbspt-form {
      margin-top: 20px; }
      .masthead-form .form-container .hbspt-form fieldset {
        max-width: none;
        display: block;
        margin: 0 -5px 10px; }
        .masthead-form .form-container .hbspt-form fieldset.form-columns-2 .hs-form-field {
          padding-left: 5px;
          padding-right: 5px; }
        .masthead-form .form-container .hbspt-form fieldset.form-columns-1 .hs-form-field {
          padding-left: 5px;
          padding-right: 5px; }
      .masthead-form .form-container .hbspt-form label {
        position: absolute;
        top: 11px;
        left: 15px;
        font-family: inherit;
        font-size: 1em;
        font-weight: normal;
        line-height: 1.5;
        color: rgba(37, 37, 37, 0.5);
        pointer-events: none;
        transition: all 200ms; }
      .masthead-form .form-container .hbspt-form [type='text'],
      .masthead-form .form-container .hbspt-form [type='password'],
      .masthead-form .form-container .hbspt-form [type='date'],
      .masthead-form .form-container .hbspt-form [type='datetime'],
      .masthead-form .form-container .hbspt-form [type='datetime-local'],
      .masthead-form .form-container .hbspt-form [type='month'],
      .masthead-form .form-container .hbspt-form [type='week'],
      .masthead-form .form-container .hbspt-form [type='email'],
      .masthead-form .form-container .hbspt-form [type='number'],
      .masthead-form .form-container .hbspt-form [type='search'],
      .masthead-form .form-container .hbspt-form [type='tel'],
      .masthead-form .form-container .hbspt-form [type='time'],
      .masthead-form .form-container .hbspt-form [type='url'],
      .masthead-form .form-container .hbspt-form [type='color'],
      .masthead-form .form-container .hbspt-form textarea {
        display: block;
        box-sizing: border-box;
        width: 100%;
        height: auto;
        margin: 0 0 10px;
        padding: 15px 10px 5px;
        border: 1px solid #0b8793;
        border-radius: 3px;
        background-color: #fefefe;
        box-shadow: none;
        font-family: inherit;
        font-size: 1em;
        font-weight: normal;
        line-height: 1.5;
        color: #252525;
        transition: background-color 0.5s, border-color 0.25s ease-in-out;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none; }
        .masthead-form .form-container .hbspt-form [type='text']::-webkit-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='password']::-webkit-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='date']::-webkit-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='datetime']::-webkit-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='datetime-local']::-webkit-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='month']::-webkit-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='week']::-webkit-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='email']::-webkit-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='number']::-webkit-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='search']::-webkit-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='tel']::-webkit-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='time']::-webkit-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='url']::-webkit-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='color']::-webkit-input-placeholder,
        .masthead-form .form-container .hbspt-form textarea::-webkit-input-placeholder {
          color: #a9a9a9; }
        .masthead-form .form-container .hbspt-form [type='text']:-ms-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='password']:-ms-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='date']:-ms-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='datetime']:-ms-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='datetime-local']:-ms-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='month']:-ms-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='week']:-ms-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='email']:-ms-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='number']:-ms-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='search']:-ms-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='tel']:-ms-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='time']:-ms-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='url']:-ms-input-placeholder,
        .masthead-form .form-container .hbspt-form [type='color']:-ms-input-placeholder,
        .masthead-form .form-container .hbspt-form textarea:-ms-input-placeholder {
          color: #a9a9a9; }
        .masthead-form .form-container .hbspt-form [type='text']::placeholder,
        .masthead-form .form-container .hbspt-form [type='password']::placeholder,
        .masthead-form .form-container .hbspt-form [type='date']::placeholder,
        .masthead-form .form-container .hbspt-form [type='datetime']::placeholder,
        .masthead-form .form-container .hbspt-form [type='datetime-local']::placeholder,
        .masthead-form .form-container .hbspt-form [type='month']::placeholder,
        .masthead-form .form-container .hbspt-form [type='week']::placeholder,
        .masthead-form .form-container .hbspt-form [type='email']::placeholder,
        .masthead-form .form-container .hbspt-form [type='number']::placeholder,
        .masthead-form .form-container .hbspt-form [type='search']::placeholder,
        .masthead-form .form-container .hbspt-form [type='tel']::placeholder,
        .masthead-form .form-container .hbspt-form [type='time']::placeholder,
        .masthead-form .form-container .hbspt-form [type='url']::placeholder,
        .masthead-form .form-container .hbspt-form [type='color']::placeholder,
        .masthead-form .form-container .hbspt-form textarea::placeholder {
          color: #a9a9a9; }
      .masthead-form .form-container .hbspt-form select {
        display: block;
        box-sizing: border-box;
        width: 100%;
        height: auto;
        margin: 0 0 30px;
        padding: 15px 10px 5px;
        border: 1px solid #0b8793;
        border-radius: 3px;
        background-color: #fefefe;
        box-shadow: none;
        font-family: inherit;
        font-size: 1em;
        font-weight: normal;
        line-height: 1.5;
        color: #252525;
        transition: background-color 0.5s, border-color 0.25s ease-in-out;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none; }
        .masthead-form .form-container .hbspt-form select::-webkit-input-placeholder {
          color: #a9a9a9; }
        .masthead-form .form-container .hbspt-form select:-ms-input-placeholder {
          color: #a9a9a9; }
        .masthead-form .form-container .hbspt-form select::placeholder {
          color: #a9a9a9; }
      .masthead-form .form-container .hbspt-form select {
        background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28138, 138, 138%29'></polygon></svg>");
        background-origin: content-box;
        background-position: right 5px;
        background-repeat: no-repeat;
        background-size: 9px 6px;
        color: rgba(37, 37, 37, 0.4); }
      .masthead-form .form-container .hbspt-form textarea {
        height: 100px; }
    .masthead-form .form-container ._form ._form-content {
      text-align: left;
      font-size: 0;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .masthead-form .form-container ._form ._form-content > * {
        font-size: 1rem; }
    .masthead-form .form-container ._form ._form-title {
      margin-bottom: 1em; }
    .masthead-form .form-container ._form ._form-branding {
      display: none; }
    .masthead-form .form-container ._form ._form-label {
      display: none; }
    .masthead-form .form-container ._form [type='text'],
    .masthead-form .form-container ._form [type='password'],
    .masthead-form .form-container ._form [type='date'],
    .masthead-form .form-container ._form [type='datetime'],
    .masthead-form .form-container ._form [type='datetime-local'],
    .masthead-form .form-container ._form [type='month'],
    .masthead-form .form-container ._form [type='week'],
    .masthead-form .form-container ._form [type='email'],
    .masthead-form .form-container ._form [type='number'],
    .masthead-form .form-container ._form [type='search'],
    .masthead-form .form-container ._form [type='tel'],
    .masthead-form .form-container ._form [type='time'],
    .masthead-form .form-container ._form [type='url'],
    .masthead-form .form-container ._form [type='color'],
    .masthead-form .form-container ._form textarea {
      display: block;
      box-sizing: border-box;
      width: 100%;
      height: auto;
      margin: 0 0 10px;
      padding: 12px 16px;
      border: 1px solid #0b8793;
      border-radius: 3px;
      background-color: #fefefe;
      box-shadow: none;
      font-family: inherit;
      font-size: 1em;
      font-weight: normal;
      line-height: 1.5;
      color: #252525;
      transition: background-color 0.5s, border-color 0.25s ease-in-out;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none; }
      .masthead-form .form-container ._form [type='text']::-webkit-input-placeholder,
      .masthead-form .form-container ._form [type='password']::-webkit-input-placeholder,
      .masthead-form .form-container ._form [type='date']::-webkit-input-placeholder,
      .masthead-form .form-container ._form [type='datetime']::-webkit-input-placeholder,
      .masthead-form .form-container ._form [type='datetime-local']::-webkit-input-placeholder,
      .masthead-form .form-container ._form [type='month']::-webkit-input-placeholder,
      .masthead-form .form-container ._form [type='week']::-webkit-input-placeholder,
      .masthead-form .form-container ._form [type='email']::-webkit-input-placeholder,
      .masthead-form .form-container ._form [type='number']::-webkit-input-placeholder,
      .masthead-form .form-container ._form [type='search']::-webkit-input-placeholder,
      .masthead-form .form-container ._form [type='tel']::-webkit-input-placeholder,
      .masthead-form .form-container ._form [type='time']::-webkit-input-placeholder,
      .masthead-form .form-container ._form [type='url']::-webkit-input-placeholder,
      .masthead-form .form-container ._form [type='color']::-webkit-input-placeholder,
      .masthead-form .form-container ._form textarea::-webkit-input-placeholder {
        color: #a9a9a9; }
      .masthead-form .form-container ._form [type='text']:-ms-input-placeholder,
      .masthead-form .form-container ._form [type='password']:-ms-input-placeholder,
      .masthead-form .form-container ._form [type='date']:-ms-input-placeholder,
      .masthead-form .form-container ._form [type='datetime']:-ms-input-placeholder,
      .masthead-form .form-container ._form [type='datetime-local']:-ms-input-placeholder,
      .masthead-form .form-container ._form [type='month']:-ms-input-placeholder,
      .masthead-form .form-container ._form [type='week']:-ms-input-placeholder,
      .masthead-form .form-container ._form [type='email']:-ms-input-placeholder,
      .masthead-form .form-container ._form [type='number']:-ms-input-placeholder,
      .masthead-form .form-container ._form [type='search']:-ms-input-placeholder,
      .masthead-form .form-container ._form [type='tel']:-ms-input-placeholder,
      .masthead-form .form-container ._form [type='time']:-ms-input-placeholder,
      .masthead-form .form-container ._form [type='url']:-ms-input-placeholder,
      .masthead-form .form-container ._form [type='color']:-ms-input-placeholder,
      .masthead-form .form-container ._form textarea:-ms-input-placeholder {
        color: #a9a9a9; }
      .masthead-form .form-container ._form [type='text']::placeholder,
      .masthead-form .form-container ._form [type='password']::placeholder,
      .masthead-form .form-container ._form [type='date']::placeholder,
      .masthead-form .form-container ._form [type='datetime']::placeholder,
      .masthead-form .form-container ._form [type='datetime-local']::placeholder,
      .masthead-form .form-container ._form [type='month']::placeholder,
      .masthead-form .form-container ._form [type='week']::placeholder,
      .masthead-form .form-container ._form [type='email']::placeholder,
      .masthead-form .form-container ._form [type='number']::placeholder,
      .masthead-form .form-container ._form [type='search']::placeholder,
      .masthead-form .form-container ._form [type='tel']::placeholder,
      .masthead-form .form-container ._form [type='time']::placeholder,
      .masthead-form .form-container ._form [type='url']::placeholder,
      .masthead-form .form-container ._form [type='color']::placeholder,
      .masthead-form .form-container ._form textarea::placeholder {
        color: #a9a9a9; }
    .masthead-form .form-container ._form textarea {
      height: 100px; }
    .masthead-form .form-container ._form ._button-wrapper {
      text-align: center;
      margin-top: 25px; }
    .masthead-form .form-container ._form ._submit {
      background: #0b8793;
      font-weight: bold;
      border: none;
      font-size: 1em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .8px;
      padding: 15px 35px;
      border-radius: 4px;
      color: #ffffff;
      box-shadow: 0 2px 8px 0 rgba(255, 255, 255, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.5); }
    .masthead-form .form-container ._form ._full_width {
      -webkit-flex: 0 1 48.5%;
          -ms-flex: 0 1 48.5%;
              flex: 0 1 48.5%;
      width: 48.5%;
      padding: 0; }
      .masthead-form .form-container ._form ._full_width._field1 {
        -webkit-flex: 1 0 100%;
            -ms-flex: 1 0 100%;
                flex: 1 0 100%;
        width: 100%; }
      @media screen and (max-width: 47.99875em) {
        .masthead-form .form-container ._form ._full_width {
          -webkit-flex: 1 0 100%;
              -ms-flex: 1 0 100%;
                  flex: 1 0 100%;
          width: 100%; } }
    .masthead-form .form-container ._form ._button-wrapper {
      width: 100% !important;
      -webkit-flex: 0 1 100%;
          -ms-flex: 0 1 100%;
              flex: 0 1 100%;
      margin-top: 15px; }
      .masthead-form .form-container ._form ._button-wrapper button {
        background: #0b8793;
        color: #fefefe;
        text-transform: uppercase;
        cursor: pointer;
        font-size: 1em;
        font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
        font-weight: 700;
        border: none;
        font-size: 1em;
        font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
        font-weight: 700;
        letter-spacing: .8px;
        padding: 15px 35px;
        border-radius: 4px; }
        .masthead-form .form-container ._form ._button-wrapper button:hover {
          background-color: #09717b; }
    .masthead-form .form-container ._error._above, .masthead-form .form-container ._error._below {
      font-size: .7em;
      color: red;
      -webkit-transform: translateY(-8px);
          -ms-transform: translateY(-8px);
              transform: translateY(-8px);
      font-style: italic; }
  .masthead-form.light-theme {
    color: #ffffff; }
  .masthead-form.dark-theme {
    color: #252525; }
  .masthead-form.no-top-padding {
    padding-top: 0; }
  .masthead-form.no-bottom-padding {
    padding-bottom: 0; }

.logo-strip {
  padding: 60px 0;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0.5+0,0+100 */
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 47.99875em) {
    .logo-strip {
      padding: 10px 10px; } }
  .logo-strip h2 {
    font-size: 2.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    margin-bottom: 40px;
    text-align: center; }
  .logo-strip.no-background {
    background: none; }
  .logo-strip ul {
    margin: 0 auto;
    padding: 0;
    position: relative;
    z-index: 1;
    width: 100%;
    text-align: center; }
  .logo-strip li {
    padding: 0 20px;
    display: -ms-inline-flexbox;
    -ms-flex-align: center;
    list-style: none;
    margin: 0;
    width: 115px;
    display: inline-block;
    transition: all 600ms;
    opacity: 0; }
    .logo-strip li:before {
      display: none; }
  .logo-strip img {
    max-height: 40px;
    width: auto;
    object-fit: contain;
    margin: auto;
    margin-top: 40px;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .logo-strip .logo-bug {
    position: absolute;
    top: 0;
    width: 140px;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
    @media screen and (max-width: 47.99875em) {
      .logo-strip .logo-bug {
        width: 100px; } }
    .logo-strip .logo-bug.left {
      left: 40px; }
      @media screen and (max-width: 47.99875em) {
        .logo-strip .logo-bug.left {
          left: 20px; } }
    .logo-strip .logo-bug.right {
      right: 40px; }
      @media screen and (max-width: 47.99875em) {
        .logo-strip .logo-bug.right {
          right: 20px; } }
    .logo-strip .logo-bug img {
      width: 100%;
      height: auto;
      -webkit-transform: translateY(0);
          -ms-transform: translateY(0);
              transform: translateY(0);
      margin: 0;
      max-width: none;
      max-height: none; }
  .logo-strip.offset-right {
    padding-right: 180px; }
    @media screen and (max-width: 47.99875em) {
      .logo-strip.offset-right {
        padding-right: 120px; } }
  .logo-strip.offset-left {
    padding-left: 180px; }
    @media screen and (max-width: 47.99875em) {
      .logo-strip.offset-left {
        padding-left: 120px; } }
  .logo-strip.no-top-padding {
    padding-top: 0; }
  .logo-strip.no-bottom-padding {
    padding-bottom: 0; }

.stats {
  padding: 60px 0;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 47.99875em) {
    .stats {
      padding: 60px 10px; } }
  .stats h2 {
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    font-size: 2.25em;
    letter-spacing: .5px;
    margin: 40px 0 30px;
    padding: 0; }
  .stats p {
    margin: 0 0 20px;
    padding: 0; }
    .stats p:last-of-type {
      margin-bottom: 0; }
  @media screen and (max-width: 39.99875em) {
    .stats .device-image {
      height: 50vh;
      object-fit: cover;
      width: 100%;
      object-position: top; } }
  .stats .stat-item-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 40px 0 0; }
    .stats .stat-item-container .stat-item {
      -webkit-flex: 0 1 50%;
          -ms-flex: 0 1 50%;
              flex: 0 1 50%;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      padding: 0 65px 50px 0;
      width: 50%; }
      @media screen and (max-width: 63.99875em) {
        .stats .stat-item-container .stat-item {
          -webkit-flex: 0 1 50%;
              -ms-flex: 0 1 50%;
                  flex: 0 1 50%;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column;
          padding: 0 30px 50px;
          text-align: center; } }
      .stats .stat-item-container .stat-item .stat-number {
        -webkit-flex: 0 0 100px;
            -ms-flex: 0 0 100px;
                flex: 0 0 100px;
        width: 100px;
        height: 100px;
        margin-right: 20px;
        font-size: 2.25em;
        font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
        font-weight: 300;
        background: url(//stablekernel.com/wp-content/themes/Stable-Kernel-Foundation/dist/assets/css/../images/stats-oval.svg) center center no-repeat;
        background-size: contain;
        position: relative; }
        .stats .stat-item-container .stat-item .stat-number strong {
          font-weight: 300;
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%);
              -ms-transform: translate(-50%, -50%);
                  transform: translate(-50%, -50%); }
        .stats .stat-item-container .stat-item .stat-number span {
          font-size: 0.6em;
          color: #f1af43;
          position: absolute;
          bottom: 0;
          left: 50%;
          -webkit-transform: translate(-50%, 50%);
              -ms-transform: translate(-50%, 50%);
                  transform: translate(-50%, 50%); }
        @media screen and (max-width: 63.99875em) {
          .stats .stat-item-container .stat-item .stat-number {
            margin-right: 0;
            margin-bottom: 25px; } }
      .stats .stat-item-container .stat-item p {
        -webkit-flex: 0 1 auto;
            -ms-flex: 0 1 auto;
                flex: 0 1 auto; }
  .stats.rtl .grid-x {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .stats.no-top-padding {
    padding-top: 0; }
  .stats.no-bottom-padding {
    padding-bottom: 0; }
  .stats.dark-theme {
    color: #252525; }
  .stats.light-theme {
    color: #fafafa; }

.single-testimonial {
  padding: 70px 0;
  position: relative;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
  background: #0b8793;
  /* Old browsers */
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #0b8793 0%, #360033 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */ }
  @media screen and (max-width: 47.99875em) {
    .single-testimonial {
      padding: 40px 10px; } }
  .single-testimonial .grid-container {
    position: relative;
    z-index: 1; }
  .single-testimonial p {
    margin: 0 0 20px;
    padding: 0;
    font-family: 'mislab-std', 'Courier', serif;
    font-weight: 500;
    line-height: 1.5; }
    .single-testimonial p:last-of-type {
      margin-bottom: 0; }
  .single-testimonial h3 {
    margin: 0;
    padding: 0;
    font-size: 1.75em;
    font-family: 'mislab-std', 'Courier', serif;
    font-weight: 500; }
    .single-testimonial h3 + * {
      margin-top: 10px; }
  .single-testimonial .quote-mark {
    padding-right: 40px; }
    @media screen and (max-width: 47.99875em) {
      .single-testimonial .quote-mark {
        padding: 0 0 40px; } }
    .single-testimonial .quote-mark img {
      width: 100%;
      height: auto; }
      @media screen and (max-width: 47.99875em) {
        .single-testimonial .quote-mark img {
          width: 70px;
          margin: 0 auto; } }
  .single-testimonial .attribution {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 40px; }
    .single-testimonial .attribution .att-image {
      width: 60px;
      height: 60px;
      border-radius: 50%;
      overflow: hidden;
      -webkit-flex: 0 0 60px;
          -ms-flex: 0 0 60px;
              flex: 0 0 60px; }
      .single-testimonial .attribution .att-image img {
        object-fit: cover;
        width: 100%;
        height: 100%; }
    .single-testimonial .attribution .att-content {
      margin-left: 25px; }
      .single-testimonial .attribution .att-content strong {
        display: block;
        font-size: 1.125em;
        font-family: 'mislab-std', 'Courier', serif;
        font-weight: 700; }
      .single-testimonial .attribution .att-content span {
        font-size: 1em;
        font-family: 'mislab-std', 'Courier', serif;
        font-weight: 500; }
  .single-testimonial:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(//stablekernel.com/wp-content/themes/Stable-Kernel-Foundation/dist/assets/css/../images/hex-node-grid-dark.png) 0 0 repeat; }
  .single-testimonial.dark-theme {
    color: #252525; }
  .single-testimonial.light-theme {
    color: #fafafa; }
  .single-testimonial.no-top-padding {
    padding-top: 0; }
  .single-testimonial.no-bottom-padding {
    padding-bottom: 0; }
  .single-testimonial.center {
    text-align: center; }
    .single-testimonial.center h3, .single-testimonial.center p {
      max-width: 600px;
      margin-left: auto;
      margin-right: auto; }
    .single-testimonial.center .attribution {
      text-align: left;
      margin-left: auto;
      margin-right: auto;
      max-width: 320px; }

.icon-grid {
  padding: 100px 0;
  text-align: center;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  overflow: hidden;
  counter-reset: numbered-counter; }
  @media screen and (max-width: 47.99875em) {
    .icon-grid {
      padding: 100px 10px; } }
  .icon-grid p {
    margin: 0 0 20px;
    padding: 0; }
    .icon-grid p:last-of-type {
      margin-bottom: 0; }
  .icon-grid h2 {
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    font-size: 2.25em;
    margin: 0;
    padding: 0; }
    .icon-grid h2 + * {
      margin-top: 25px; }
  .icon-grid h3 {
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    font-size: 1.5em;
    margin: 0;
    padding: 0; }
  .icon-grid .description {
    max-width: 700px;
    margin-left: auto;
    margin-right: auto; }
  .icon-grid .icon-grid-container {
    margin-top: 65px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-left: -50px;
    margin-right: -50px;
    color: #0b8793;
    text-align: left;
    position: relative; }
    .icon-grid .icon-grid-container h4 {
      font-size: 1.25em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 600;
      margin: 0 0 15px;
      padding: 0;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
    .icon-grid .icon-grid-container a {
      margin-left: 40px;
      color: #252525; }
      .icon-grid .icon-grid-container a:after {
        font-family: "Font Awesome 5 Pro";
        content: "\f061";
        display: inline-block;
        margin-left: 10px;
        color: #0b8793;
        font-weight: 500; }
    .icon-grid .icon-grid-container strong {
      margin-left: 35px;
      color: #252525; }
    .icon-grid .icon-grid-container p {
      margin-left: 35px;
      color: #252525; }
    .icon-grid .icon-grid-container span[class^="fa"] {
      position: absolute;
      -webkit-transform: translateY(3px);
          -ms-transform: translateY(3px);
              transform: translateY(3px);
      font-size: 1.15em; }
    .icon-grid .icon-grid-container.number-list h4 span {
      display: none; }
    .icon-grid .icon-grid-container.number-list .icon-grid-item {
      counter-increment: numbered-counter;
      position: relative; }
      .icon-grid .icon-grid-container.number-list .icon-grid-item:before {
        content: counter(numbered-counter);
        font-size: 1.5em;
        font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
        font-weight: 600;
        position: absolute;
        top: 30px;
        left: 50px; }
        @media screen and (max-width: 47.99875em) {
          .icon-grid .icon-grid-container.number-list .icon-grid-item:before {
            top: 15px; } }
  .icon-grid a.button, .icon-grid .wp-block-button a.wp-block-button__link, .wp-block-button .icon-grid a.wp-block-button__link {
    margin-top: 65px; }
  .icon-grid .logo-strip {
    background: none; }
    .icon-grid .logo-strip h3 {
      margin-top: 125px;
      margin-bottom: 60px; }
    .icon-grid .logo-strip img {
      max-height: 35px; }
  .icon-grid.two-per-row .icon-grid-item {
    -webkit-flex: 1 0 50%;
        -ms-flex: 1 0 50%;
            flex: 1 0 50%;
    width: 50%;
    padding: 35px 50px; }
    @media screen and (max-width: 47.99875em) {
      .icon-grid.two-per-row .icon-grid-item {
        -webkit-flex: 1 0 100%;
            -ms-flex: 1 0 100%;
                flex: 1 0 100%;
        width: 100%;
        padding: 15px 50px; } }
  .icon-grid.three-per-row .icon-grid-item {
    -webkit-flex: 1 0 33.3333%;
        -ms-flex: 1 0 33.3333%;
            flex: 1 0 33.3333%;
    width: 50%;
    padding: 35px 50px; }
    @media screen and (max-width: 47.99875em) {
      .icon-grid.three-per-row .icon-grid-item {
        -webkit-flex: 1 0 100%;
            -ms-flex: 1 0 100%;
                flex: 1 0 100%;
        width: 100%;
        padding: 15px 50px; } }
  .icon-grid.no-top-padding {
    padding-top: 0; }
  .icon-grid.no-bottom-padding {
    padding-bottom: 0; }

.casestudy {
  padding: 60px 0 10px;
  position: relative;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 47.99875em) {
    .casestudy {
      padding: 60px 10px 10px; } }
  .casestudy .grid-x {
    position: relative;
    z-index: 2; }
  .casestudy h2 {
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    font-size: 2.25em;
    letter-spacing: .5px;
    margin: 40px 0 30px;
    padding: 0; }
  .casestudy p {
    margin: 0 0 50px;
    padding: 0; }
  .casestudy a.button, .casestudy .wp-block-button a.wp-block-button__link, .wp-block-button .casestudy a.wp-block-button__link {
    margin-bottom: 75px;
    margin-top: 0; }
  @media screen and (max-width: 39.99875em) {
    .casestudy .device-image {
      height: 50vh;
      object-fit: cover;
      width: 100%;
      object-position: top; } }
  .casestudy .testimonial {
    padding: 50px 0; }
    .casestudy .testimonial p {
      margin: 0 0 20px;
      padding: 0;
      font-family: 'mislab-std', 'Courier', serif;
      font-weight: 500;
      line-height: 1.5; }
      .casestudy .testimonial p:last-of-type {
        margin-bottom: 0; }
    .casestudy .testimonial h3 {
      margin: 0;
      padding: 0;
      font-size: 1.75em;
      font-family: 'mislab-std', 'Courier', serif;
      font-weight: 500; }
      .casestudy .testimonial h3 + * {
        margin-top: 10px; }
    .casestudy .testimonial .attribution {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      margin-top: 40px; }
      .casestudy .testimonial .attribution .att-image {
        width: 60px;
        height: 60px;
        border-radius: 50%;
        overflow: hidden;
        -webkit-flex: 0 0 60px;
            -ms-flex: 0 0 60px;
                flex: 0 0 60px; }
        .casestudy .testimonial .attribution .att-image img {
          object-fit: cover;
          width: 100%;
          height: 100%; }
      .casestudy .testimonial .attribution .att-content {
        margin-left: 25px; }
        .casestudy .testimonial .attribution .att-content strong {
          display: block;
          font-size: 1.125em;
          font-family: 'mislab-std', 'Courier', serif;
          font-weight: 700; }
        .casestudy .testimonial .attribution .att-content span {
          font-size: 1em;
          font-family: 'mislab-std', 'Courier', serif;
          font-weight: 500; }
    .casestudy .testimonial.light {
      color: #ffffff; }
  .casestudy .bg-testimonial {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 1;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
    background: #0b8793;
    /* Old browsers */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(135deg, #0b8793 0%, #360033 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
    /* IE6-9 fallback on horizontal gradient */ }
    .casestudy .bg-testimonial:after {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      background: url(//stablekernel.com/wp-content/themes/Stable-Kernel-Foundation/dist/assets/css/../images/hex-node-grid-dark.png) 0 0 repeat; }
  .casestudy.dark-theme {
    color: #252525; }
  .casestudy.light-theme {
    color: #fafafa; }

.open-text {
  padding: 80px 0;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 47.99875em) {
    .open-text {
      padding: 80px 10px; } }
  .open-text p {
    margin: 0 0 20px;
    padding: 0; }
    .open-text p:last-of-type {
      margin-bottom: 0; }
    .open-text p + * {
      margin-top: 25px; }
  .open-text h2 {
    font-size: 2.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    margin: 0;
    padding: 0; }
    .open-text h2 + * {
      margin-top: 25px; }
  .open-text h3 {
    font-size: 1.5em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    margin: 0;
    padding: 0; }
    @media screen and (max-width: 47.99875em) {
      .open-text h3 {
        font-size: 1.25em; } }
    .open-text h3 + * {
      margin-top: 25px; }
  .open-text ul {
    list-style: none;
    margin-left: 15px;
    padding: 0; }
    .open-text ul li {
      list-style: none;
      margin: 0 0 15px;
      padding: 0 0 0 30px;
      position: relative; }
      .open-text ul li:before {
        content: "•";
        padding-right: 20px;
        color: #0b8793;
        font-weight: 900;
        position: absolute;
        left: 0; }
  .open-text ol {
    counter-reset: ordered-list;
    list-style: none;
    margin-left: 15px;
    padding: 0; }
    .open-text ol li {
      list-style: none;
      margin: 0 0 15px;
      padding: 0 0 0 30px;
      position: relative; }
      .open-text ol li:before {
        counter-increment: ordered-list;
        content: counter(ordered-list) ".";
        position: absolute;
        left: 0;
        color: rgba(0, 0, 0, 0.5); }
  .open-text hr {
    border-bottom: 1px solid rgba(37, 37, 37, 0.12);
    margin: 30px 0; }
  .open-text a.button, .open-text .wp-block-button a.wp-block-button__link, .wp-block-button .open-text a.wp-block-button__link {
    margin-top: 60px; }
  .open-text.two-columns .text-area {
    -webkit-columns: 2;
            columns: 2;
    -webkit-column-width: 300px;
            column-width: 300px;
    -webkit-column-gap: 60px;
            column-gap: 60px; }
    .open-text.two-columns .text-area p {
      -webkit-column-break-inside: avoid;
              break-inside: avoid; }
  .open-text.three-columns .text-area {
    -webkit-columns: 3;
            columns: 3;
    -webkit-column-width: 300px;
            column-width: 300px;
    -webkit-column-gap: 60px;
            column-gap: 60px; }
    .open-text.three-columns .text-area p {
      -webkit-column-break-inside: avoid;
              break-inside: avoid; }
  .open-text.dark-theme {
    color: #252525; }
  .open-text.light-theme {
    color: #fafafa; }
  .open-text.no-top-padding {
    padding-top: 0; }
  .open-text.no-bottom-padding {
    padding-bottom: 0; }

.headshots {
  padding: 70px 0;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 47.99875em) {
    .headshots {
      padding: 70px 10px; } }
  .headshots ul {
    margin: 0;
    padding: 0; }
    .headshots ul li {
      margin: 0;
      padding: 15px;
      position: relative;
      overflow: hidden;
      border-radius: 50%;
      list-style: none; }
      .headshots ul li:before {
        display: none; }
      .headshots ul li img {
        margin: 0 auto;
        object-fit: cover;
        border-radius: 50%;
        width: 100%;
        height: auto; }
  .headshots.no-top-padding {
    padding-top: 0; }
  .headshots.no-bottom-padding {
    padding-bottom: 0; }

.cta-block {
  padding: 30px 0 80px;
  text-align: center;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 47.99875em) {
    .cta-block {
      padding: 30px 10px 80px; } }
  .cta-block .cell {
    padding-top: 70px;
    margin-top: 0; }
  .cta-block.top-border .cell {
    border-top: 1px solid rgba(0, 0, 0, 0.1); }
  .cta-block h2 {
    font-size: 2.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600; }
    .cta-block h2 + * {
      margin-top: 40px; }
  .cta-block .secondary-cta {
    margin: 115px auto 0;
    max-width: 510px;
    font-size: 1.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600; }
    .cta-block .secondary-cta a {
      float: left;
      color: #252525; }
      @media screen and (max-width: 39.99875em) {
        .cta-block .secondary-cta a {
          display: inline-block;
          float: none;
          margin: 0 15px 40px; } }
      .cta-block .secondary-cta a:after {
        content: "";
        display: block;
        height: 3px;
        margin-top: 10px;
        /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
        background: #0b8793;
        /* Old browsers */
        /* FF3.6-15 */
        /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right, #0b8793 0%, #360033 100%);
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
        /* IE6-9 */ }
      .cta-block .secondary-cta a:last-of-type {
        float: right; }
        @media screen and (max-width: 39.99875em) {
          .cta-block .secondary-cta a:last-of-type {
            display: inline-block;
            float: none;
            margin: 0 15px 40px; } }
  .cta-block.no-top-padding {
    padding-top: 0; }
  .cta-block.no-bottom-padding {
    padding-bottom: 0; }

.callout-banner {
  padding: 20px;
  background-color: #e3cda9;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 99; }
  @media screen and (max-width: 47.99875em) {
    .callout-banner {
      padding: 20px 10px; } }
  .callout-banner .grid-container {
    position: relative; }
    .callout-banner .grid-container .cell {
      position: relative;
      max-width: 780px; }
      @media screen and (max-width: 47.99875em) {
        .callout-banner .grid-container .cell {
          width: 100%; } }
  .callout-banner h3 {
    font-size: 1.1em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    color: #2b434c;
    margin: 0;
    padding: 0 0 0 140px;
    text-align: left; }
  .callout-banner .logo-bug {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    max-width: 120px; }

.related-content {
  padding: 90px 0;
  text-align: center;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 47.99875em) {
    .related-content {
      padding: 90px 10px; } }
  .related-content p {
    margin: 0 0 20px;
    padding: 0; }
    .related-content p:last-of-type {
      margin-bottom: 0; }
  .related-content h2 {
    font-size: 2.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600; }
    .related-content h2 + * {
      margin-top: 25px; }
  .related-content .grid-x + .grid-x {
    margin-top: 70px; }
  @media screen and (max-width: 63.99875em) {
    .related-content .posts .cell:last-of-type {
      display: none; } }
  @media screen and (max-width: 47.99875em) {
    .related-content .posts .cell {
      margin-bottom: 60px; }
      .related-content .posts .cell:last-of-type {
        display: block;
        margin-bottom: 0; } }
  .related-content .related-item {
    text-align: left;
    position: relative;
    display: block;
    height: 100%;
    background: #ffffff;
    box-shadow: 0 7px 12px 0 rgba(0, 0, 0, 0.15);
    transition: all 0.25s ease-in-out; }
    .related-content .related-item h5 {
      margin: 0;
      padding: 30px 30px 0;
      color: #a9a9a9;
      font-size: 0.875em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 600;
      text-transform: uppercase; }
    .related-content .related-item h3 {
      padding: 20px 30px 24px;
      margin: 0;
      color: #252525;
      font-size: 1.25em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 600;
      line-height: 1.5em; }
    .related-content .related-item p {
      margin: 0;
      padding: 0 30px 30px;
      color: #252525;
      font-size: 0.9em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 500; }
    .related-content .related-item img {
      height: 170px;
      width: 100%;
      max-width: none;
      object-fit: cover;
      opacity: 0.8;
      transition: opacity 0.25s ease-in-out; }
    .related-content .related-item:after {
      content: "";
      display: block;
      height: 6px;
      position: absolute;
      bottom: 0;
      width: 100%;
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
      background: #0b8793;
      /* Old browsers */
      /* FF3.6-15 */
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to right, #0b8793 0%, #360033 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
      /* IE6-9 */ }
    .related-content .related-item:hover {
      -webkit-transform: scale(1.05);
          -ms-transform: scale(1.05);
              transform: scale(1.05);
      box-shadow: 0 5px 16px 0 rgba(0, 0, 0, 0.15); }
      .related-content .related-item:hover img {
        opacity: 1; }
  .related-content a.button, .related-content .wp-block-button a.wp-block-button__link, .wp-block-button .related-content a.wp-block-button__link {
    margin-top: 80px; }
  .related-content.dark-theme {
    color: #252525; }
  .related-content.light-theme {
    color: #fafafa; }
  .related-content.no-top-padding {
    padding-top: 0; }
  .related-content.no-bottom-padding {
    padding-bottom: 0; }

.media-grid {
  overflow: hidden;
  height: 65vh;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 63.99875em) {
    .media-grid {
      height: auto; } }
  .media-grid .grid-container,
  .media-grid .grid-x,
  .media-grid .cell,
  .media-grid .media-container {
    height: 100%; }
  .media-grid img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    display: block; }
  .media-grid .primary .media-container {
    height: 100%; }
  .media-grid .secondary {
    height: calc(100% + 40px);
    margin-top: -20px;
    margin-bottom: -20px; }
    .media-grid .secondary .media-container {
      height: 50%;
      padding: 20px 0; }
    @media screen and (max-width: 63.99875em) {
      .media-grid .secondary {
        height: auto;
        margin-top: 0;
        margin-bottom: 0;
        margin-right: -10px;
        margin-left: -10px;
        width: calc(100% + 10px);
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; }
        .media-grid .secondary .media-container {
          height: auto;
          -webkit-flex: 0 1 50%;
              -ms-flex: 0 1 50%;
                  flex: 0 1 50%;
          width: 50%;
          padding: 20px 10px 0; } }
  .media-grid.no-top-padding {
    padding-top: 0; }
  .media-grid.no-bottom-padding {
    padding-bottom: 0; }

.split-block {
  padding: 80px 0;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 47.99875em) {
    .split-block {
      padding: 40px 10px; } }
  .split-block .grid-container {
    position: relative; }
    .split-block .grid-container:after {
      content: "";
      background: rgba(37, 37, 37, 0.15);
      width: 1px;
      height: calc(100% + 20px);
      position: absolute;
      top: 0;
      left: 50%; }
      @media screen and (max-width: 39.99875em) {
        .split-block .grid-container:after {
          display: none; } }
  .split-block .cell {
    text-align: center;
    padding: 0 30px; }
    @media screen and (max-width: 39.99875em) {
      .split-block .cell:first-of-type {
        padding-bottom: 80px;
        position: relative; }
        .split-block .cell:first-of-type:after {
          content: "";
          background: rgba(37, 37, 37, 0.15);
          height: 1px;
          width: 100%;
          position: absolute;
          top: calc(100% - 40px);
          left: 0; } }
  .split-block h3 {
    font-size: 1.5em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    margin: 0 0 15px;
    padding: 0;
    letter-spacing: .5px; }
  .split-block p {
    margin: 0 0 20px;
    padding: 0; }
    .split-block p:last-of-type {
      margin-bottom: 0; }
  .split-block.dark-theme {
    color: #252525; }
  .split-block.light-theme {
    color: #fafafa; }
    .split-block.light-theme .grid-container:after {
      background: rgba(255, 255, 255, 0.15); }
    @media screen and (max-width: 47.99875em) {
      .split-block.light-theme .grid-container .cell:first-of-type:after {
        background: rgba(255, 255, 255, 0.15); } }
  .split-block.no-top-padding {
    padding-top: 0; }
  .split-block.no-bottom-padding {
    padding-bottom: 0; }

.progress-block .progress-header {
  padding: 30px 0;
  height: 110px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0);
  border-bottom: 1px solid rgba(169, 169, 169, 0);
  transition: background 200ms, border 200ms; }
  @media screen and (max-width: 47.99875em) {
    .progress-block .progress-header {
      padding: 30px 10px; } }
  .progress-block .progress-header .cell {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .progress-block .progress-header h2 {
    font-size: 2.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    margin: 0;
    padding: 0;
    display: inline-block; }
  .progress-block .progress-header ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: inline-block;
    position: relative;
    height: 50%;
    margin-left: 20px;
    padding-left: 20px;
    transition: all 300ms;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
    .progress-block .progress-header ul.header-lock {
      border-left: 1px solid rgba(37, 37, 37, 0.5); }
    .progress-block .progress-header ul li {
      margin: 0;
      padding: 0;
      list-style: none;
      position: absolute;
      -webkit-transform: translate(50px, -50%);
          -ms-transform: translate(50px, -50%);
              transform: translate(50px, -50%);
      top: 50%;
      opacity: 0;
      color: rgba(37, 37, 37, 0.5);
      transition: all 300ms; }
      .progress-block .progress-header ul li.active {
        opacity: 1;
        -webkit-transform: translate(0px, -50%);
            -ms-transform: translate(0px, -50%);
                transform: translate(0px, -50%); }
  .progress-block .progress-header.is-stuck, .progress-block .progress-header.is-at-bottom {
    background: #ffffff;
    border-bottom: 1px solid #a9a9a9;
    z-index: 5; }

.progress-block .progress-content {
  overflow: hidden; }
  @media screen and (max-width: 47.99875em) {
    .progress-block .progress-content {
      padding: 0 10px; } }
  .progress-block .progress-content .progress-item {
    margin-bottom: 120px; }
    @media screen and (max-width: 47.99875em) {
      .progress-block .progress-content .progress-item {
        margin-bottom: 60px; } }
    .progress-block .progress-content .progress-item.ltr .grid-container .grid-x {
      -webkit-flex-direction: row-reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; }
    .progress-block .progress-content .progress-item p {
      margin: 0 0 20px; }
      .progress-block .progress-content .progress-item p:first-of-type {
        margin-top: 20px; }
      .progress-block .progress-content .progress-item p:last-of-type {
        margin-bottom: 0; }
    .progress-block .progress-content .progress-item .grid-container.full img {
      width: 100%;
      max-width: none;
      max-height: 500px;
      object-fit: cover; }
    .progress-block .progress-content .progress-item .grid-container + .grid-container {
      margin-top: 70px; }
    .progress-block .progress-content .progress-item .cell.two-columns {
      -webkit-columns: 2;
              columns: 2;
      -webkit-column-width: 300px;
              column-width: 300px;
      -webkit-column-gap: 60px;
              column-gap: 60px; }
      .progress-block .progress-content .progress-item .cell.two-columns p {
        margin-top: 0;
        -webkit-column-break-inside: avoid;
                break-inside: avoid; }
    @media screen and (max-width: 47.99875em) {
      .progress-block .progress-content .progress-item .cell + .cell {
        margin-top: 40px; } }

.link-cards {
  padding: 90px 0 50px 0;
  text-align: center;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 47.99875em) {
    .link-cards {
      padding: 90px 10px 50px 10px; } }
  .link-cards p {
    margin: 0 0 20px;
    padding: 0; }
    .link-cards p:last-of-type {
      margin-bottom: 0; }
  .link-cards h2 {
    font-size: 2.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600; }
    .link-cards h2 + * {
      margin-top: 25px; }
  .link-cards .grid-x + .grid-x {
    margin-top: 70px; }
    .link-cards .grid-x + .grid-x .cell {
      margin-bottom: 40px; }
  .link-cards .link-item {
    text-align: left;
    position: relative;
    display: block;
    height: 100%;
    padding: 25px;
    background-color: #ffffff;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.5);
    transition: all 0.25s ease-in-out; }
    .link-cards .link-item h3 {
      margin: 20px 0 0 0;
      padding: 20px 0 0 0;
      color: #252525;
      font-size: 1.25em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 600;
      border-top: 1px solid rgba(37, 37, 37, 0.15); }
    .link-cards .link-item img {
      height: 35px;
      object-fit: cover;
      opacity: 0.8;
      transition: opacity 0.25s ease-in-out; }
    .link-cards .link-item:after {
      content: "";
      display: block;
      height: 3px;
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
      background: #0b8793;
      /* Old browsers */
      /* FF3.6-15 */
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to right, #0b8793 0%, #360033 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
      /* IE6-9 */ }
    .link-cards .link-item:hover {
      -webkit-transform: scale(1.05);
          -ms-transform: scale(1.05);
              transform: scale(1.05);
      box-shadow: 0 5px 16px 0 rgba(0, 0, 0, 0.15); }
      .link-cards .link-item:hover img {
        opacity: 1; }

.casestudy-archive {
  padding: 60px 0 60px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 47.99875em) {
    .casestudy-archive {
      padding: 90px 10px; } }
  .casestudy-archive p {
    margin: 0 0 20px;
    padding: 0; }
    .casestudy-archive p:last-of-type {
      margin-bottom: 0; }
  .casestudy-archive h2 {
    font-size: 2.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    margin-bottom: 60px; }
    .casestudy-archive h2 + * {
      margin-top: 25px; }
  .casestudy-archive .grid-x + .grid-x {
    margin-top: 70px; }
  .casestudy-archive .cell {
    margin-bottom: 60px; }
    @media screen and (max-width: 47.99875em) {
      .casestudy-archive .cell:last-of-type {
        margin-bottom: 0; } }
  .casestudy-archive .work-nav ul {
    list-style: none;
    margin: 0 0 70px 0;
    padding: 0; }
    .casestudy-archive .work-nav ul li {
      list-style: none;
      margin: 0 30px 0 0;
      padding: 0 0 12px;
      display: inline-block; }
      .casestudy-archive .work-nav ul li:first-of-type {
        margin-right: 50px; }
      .casestudy-archive .work-nav ul li a {
        color: #252525;
        font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
        font-weight: 600; }
        .casestudy-archive .work-nav ul li a:after {
          content: "";
          height: 2px;
          margin-top: 5px;
          display: block;
          /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
          background: #0b8793;
          /* Old browsers */
          /* FF3.6-15 */
          /* Chrome10-25,Safari5.1-6 */
          background: linear-gradient(to right, #0b8793 0%, #360033 100%);
          /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
          filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
          /* IE6-9 */ }
  .casestudy-archive .featured-casestudy {
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 60px; }
    .casestudy-archive .featured-casestudy .cell {
      margin-bottom: 0; }
      @media screen and (max-width: 47.99875em) {
        .casestudy-archive .featured-casestudy .cell {
          margin-bottom: 20px; } }
    .casestudy-archive .featured-casestudy p {
      margin: 0;
      padding: 0 0 30px;
      color: #252525;
      font-size: 1.125em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 500; }
    .casestudy-archive .featured-casestudy h5 {
      margin: 0;
      padding: 0 0 20px;
      color: #252525;
      font-size: 1em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 600; }
      .casestudy-archive .featured-casestudy h5 img {
        width: 40px;
        height: 40px;
        padding: 5px;
        border: 1px solid #a9a9a9;
        object-fit: contain;
        margin-right: 15px;
        border-radius: 6px; }
    .casestudy-archive .featured-casestudy h3 {
      margin: 0;
      padding: 0 0 30px;
      color: #252525;
      font-size: 1.5em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 600; }
    .casestudy-archive .featured-casestudy a.button, .casestudy-archive .featured-casestudy .wp-block-button a.wp-block-button__link, .wp-block-button .casestudy-archive .featured-casestudy a.wp-block-button__link {
      margin: 0;
      font-size: 1em; }
    .casestudy-archive .featured-casestudy .featured-image {
      min-height: 360px;
      max-height: 450px;
      object-fit: cover;
      max-width: none;
      width: 100%; }
  .casestudy-archive .casestudy-item {
    text-align: left;
    position: relative;
    display: block;
    height: 100%;
    background: #ffffff;
    box-shadow: 0 7px 12px 0 rgba(0, 0, 0, 0.15);
    transition: all 0.25s ease-in-out; }
    .casestudy-archive .casestudy-item p {
      margin: 0;
      padding: 0 30px 30px;
      color: #252525;
      font-size: 1em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 500; }
    .casestudy-archive .casestudy-item img {
      height: 250px;
      object-fit: cover;
      width: 100%;
      opacity: 0.8;
      transition: opacity 0.25s ease-in-out; }
    .casestudy-archive .casestudy-item h5 {
      margin: 0;
      padding: 30px 30px 20px;
      color: #252525;
      font-size: 1em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 600;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
      .casestudy-archive .casestudy-item h5 img {
        width: 40px;
        height: 40px;
        padding: 5px;
        border: 1px solid #a9a9a9;
        object-fit: contain;
        margin-right: 15px;
        border-radius: 6px; }
    .casestudy-archive .casestudy-item h3 {
      margin: 0;
      padding: 0 30px 30px;
      color: #252525;
      font-size: 1.5em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 600; }
    .casestudy-archive .casestudy-item:after {
      content: "";
      display: block;
      height: 6px;
      position: absolute;
      bottom: 0;
      width: 100%;
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
      background: #0b8793;
      /* Old browsers */
      /* FF3.6-15 */
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to right, #0b8793 0%, #360033 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
      /* IE6-9 */ }
    .casestudy-archive .casestudy-item:hover {
      -webkit-transform: scale(1.05);
          -ms-transform: scale(1.05);
              transform: scale(1.05);
      box-shadow: 0 5px 16px 0 rgba(0, 0, 0, 0.15); }
      .casestudy-archive .casestudy-item:hover img {
        opacity: 1; }
  .casestudy-archive a.button, .casestudy-archive .wp-block-button a.wp-block-button__link, .wp-block-button .casestudy-archive a.wp-block-button__link {
    margin-top: 80px; }
  .casestudy-archive.dark-theme {
    color: #252525; }
  .casestudy-archive.light-theme {
    color: #fafafa; }
  .casestudy-archive.no-top-padding {
    padding-top: 0; }
  .casestudy-archive.no-bottom-padding {
    padding-bottom: 0; }

.service-archive {
  padding: 60px 0 60px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 47.99875em) {
    .service-archive {
      padding: 40px 10px; } }
  .service-archive p {
    margin: 0 0 20px;
    padding: 0; }
    .service-archive p:last-of-type {
      margin-bottom: 0; }
  .service-archive h2 {
    font-size: 2.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    margin-bottom: 60px; }
    .service-archive h2 + * {
      margin-top: 25px; }
  .service-archive h3 {
    font-size: 1.5em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    margin: 0 0 15px;
    padding: 0; }
    @media screen and (max-width: 47.99875em) {
      .service-archive h3 {
        font-size: 1.25em; } }
    .service-archive h3 a {
      color: #252525; }
      .service-archive h3 a:after {
        font-family: "Font Awesome 5 Pro";
        content: "\f061";
        display: inline-block;
        margin-left: 15px;
        color: #0b8793;
        font-size: .75em;
        font-weight: 400;
        transition: all 200ms; }
    .service-archive h3:hover a:after {
      margin-left: 25px; }
  .service-archive h4 {
    text-transform: uppercase;
    color: #252525;
    opacity: .5;
    font-size: 1em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    margin-left: 60px;
    position: relative; }
    @media screen and (max-width: 47.99875em) {
      .service-archive h4 {
        display: none; } }
    .service-archive h4:before {
      content: "";
      display: block;
      border-bottom: 2px dashed rgba(0, 0, 0, 0.2);
      height: 2px;
      position: absolute;
      right: calc(100% + 20px);
      width: 160px;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%); }
      @media screen and (max-width: 63.99875em) {
        .service-archive h4:before {
          width: 100px; } }
      @media screen and (max-width: 47.99875em) {
        .service-archive h4:before {
          display: none; } }
  .service-archive .services-intro .content-container {
    padding-bottom: 35px; }
  .service-archive .services-intro .branch-container {
    padding-top: 15px; }
  .service-archive .services-group-section .content-container {
    padding-top: 35px; }
  .service-archive .services-group-item .content-container {
    padding-bottom: 70px; }
  .service-archive .services-group-item:last-of-type .content-container {
    padding-bottom: 120px; }
  .service-archive .services-group-end .branch-container {
    padding-bottom: 65px; }
  .service-archive .services-group-end .content-container {
    padding-top: 80px;
    padding-bottom: 0; }
  .service-archive .cell {
    margin-bottom: 0;
    z-index: 5;
    position: relative; }
  .service-archive .cell + .cell.img-container {
    margin-top: 40px; }
    @media screen and (max-width: 39.99875em) {
      .service-archive .cell + .cell.img-container {
        margin-top: 0; } }
  .service-archive .img-container img {
    height: 100%;
    width: 100%;
    object-fit: cover; }
    @media screen and (max-width: 39.99875em) {
      .service-archive .img-container img {
        padding-top: 40px; } }
  .service-archive .img-multi-container {
    height: calc(100% + 40px);
    margin-top: -20px;
    margin-bottom: -20px; }
    @media screen and (max-width: 39.99875em) {
      .service-archive .img-multi-container {
        margin-top: 0;
        margin-bottom: 0; } }
    .service-archive .img-multi-container .img-multi-container-item {
      padding: 20px 0;
      height: 50%; }
      @media screen and (max-width: 39.99875em) {
        .service-archive .img-multi-container .img-multi-container-item {
          padding: 0; } }
  .service-archive .services-nav {
    margin: 20px 0 40px 0;
    padding: 50px 0 0 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1); }
    .service-archive .services-nav ul {
      list-style: none;
      margin: 0;
      padding: 0; }
      .service-archive .services-nav ul li {
        list-style: none;
        margin: 0 30px 0 0;
        padding: 0 0 12px 0;
        display: inline-block; }
        .service-archive .services-nav ul li a {
          color: #252525;
          font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
          font-weight: 600; }
          .service-archive .services-nav ul li a:after {
            content: "";
            height: 2px;
            margin-top: 5px;
            display: block;
            /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
            background: #0b8793;
            /* Old browsers */
            /* FF3.6-15 */
            /* Chrome10-25,Safari5.1-6 */
            background: linear-gradient(to right, #0b8793 0%, #360033 100%);
            /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
            filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
            /* IE6-9 */ }
  .service-archive .branch-container {
    width: 45px;
    height: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    .service-archive .branch-container img {
      display: block;
      width: 100%; }
      .service-archive .branch-container img.cap {
        -webkit-flex: 0 1 auto;
            -ms-flex: 0 1 auto;
                flex: 0 1 auto; }
      .service-archive .branch-container img.fill {
        -webkit-flex: 1 0 auto;
            -ms-flex: 1 0 auto;
                flex: 1 0 auto; }
  .service-archive .fill-background {
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
    background: #0b8793;
    /* Old browsers */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #0b8793 0%, #360033 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
    /* IE6-9 */
    position: absolute;
    top: 15px;
    width: 45px;
    height: 0;
    z-index: 2; }
    @media screen and (max-width: 47.99875em) {
      .service-archive .fill-background {
        display: none; } }
  .service-archive .default-background {
    background: rgba(151, 151, 151, 0.2);
    position: absolute;
    top: 15px;
    width: 45px;
    height: calc(100% - 80px);
    z-index: 1; }
    @media screen and (max-width: 47.99875em) {
      .service-archive .default-background {
        display: none; } }
  .service-archive a.button, .service-archive .wp-block-button a.wp-block-button__link, .wp-block-button .service-archive a.wp-block-button__link {
    margin-top: 80px; }
  .service-archive.dark-theme {
    color: #252525; }
  .service-archive.light-theme {
    color: #fafafa; }
  .service-archive.no-top-padding {
    padding-top: 0; }
  .service-archive.no-bottom-padding {
    padding-bottom: 0; }

.simple-stats {
  padding: 30px 0 30px;
  text-align: center;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 47.99875em) {
    .simple-stats {
      padding: 30px 10px 30px; } }
  .simple-stats .header .cell {
    border-top: 1px solid #0b8793;
    padding-top: 80px;
    margin-top: 0px;
    text-align: center; }
  .simple-stats .grid-x + .grid-x {
    margin-top: 90px; }
    @media screen and (max-width: 47.99875em) {
      .simple-stats .grid-x + .grid-x {
        margin-top: 40px; } }
  .simple-stats .stat-item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 50px 50px 50px; }
    @media screen and (max-width: 63.99875em) {
      .simple-stats .stat-item {
        -webkit-flex: 0 1 50%;
            -ms-flex: 0 1 50%;
                flex: 0 1 50%;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        padding: 0 30px 50px;
        text-align: center; } }
    .simple-stats .stat-item .stat-number {
      -webkit-flex: 0 0 100px;
          -ms-flex: 0 0 100px;
              flex: 0 0 100px;
      width: 100px;
      height: 100px;
      margin-right: 20px;
      font-size: 2.25em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 300;
      background: url(//stablekernel.com/wp-content/themes/Stable-Kernel-Foundation/dist/assets/css/../images/stats-oval.svg) center center no-repeat;
      background-size: contain;
      position: relative; }
      .simple-stats .stat-item .stat-number strong {
        font-weight: 300;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); }
      .simple-stats .stat-item .stat-number span {
        font-size: 0.6em;
        color: #f1af43;
        position: absolute;
        bottom: 0;
        left: 50%;
        -webkit-transform: translate(-50%, 50%);
            -ms-transform: translate(-50%, 50%);
                transform: translate(-50%, 50%); }
      @media screen and (max-width: 63.99875em) {
        .simple-stats .stat-item .stat-number {
          margin-right: 0;
          margin-bottom: 25px; } }
    .simple-stats .stat-item p {
      -webkit-flex: 0 1 auto;
          -ms-flex: 0 1 auto;
              flex: 0 1 auto;
      margin: 0;
      text-align: left; }

.simple-grid {
  padding: 100px 0 20px;
  text-align: center;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  overflow: hidden; }
  @media screen and (max-width: 47.99875em) {
    .simple-grid {
      padding: 100px 10px; } }
  .simple-grid p {
    margin: 0 0 20px;
    padding: 0; }
    .simple-grid p:last-of-type {
      margin-bottom: 0; }
  .simple-grid h2 {
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    font-size: 2.25em;
    margin: 0;
    padding: 0; }
    .simple-grid h2 + * {
      margin-top: 25px; }
  .simple-grid .grid-item-container {
    margin-top: 65px;
    color: #252525;
    text-align: left;
    position: relative; }
    .simple-grid .grid-item-container h4 {
      font-size: 1.5em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 600;
      margin: 0 0 15px;
      padding: 0; }
    .simple-grid .grid-item-container a {
      margin-left: 35px;
      color: #252525; }
    .simple-grid .grid-item-container p {
      margin-left: 35px;
      color: #252525; }
    .simple-grid .grid-item-container .grid-item {
      margin-bottom: 80px;
      padding-right: 50px; }
  .simple-grid.no-top-padding {
    padding-top: 0; }
  .simple-grid.no-bottom-padding {
    padding-bottom: 0; }

.resources-archive {
  padding: 60px 0 60px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 47.99875em) {
    .resources-archive {
      padding: 90px 10px; } }
  .resources-archive p {
    margin: 0 0 20px;
    padding: 0; }
    .resources-archive p:last-of-type {
      margin-bottom: 0; }
  .resources-archive h2 {
    font-size: 2.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    margin-bottom: 60px; }
    .resources-archive h2 + * {
      margin-top: 25px; }
  .resources-archive .grid-x + .grid-x {
    margin-top: 70px; }
  .resources-archive .grid-x + h2 {
    margin-top: 70px; }
  .resources-archive .cell {
    margin-bottom: 60px; }
    @media screen and (max-width: 47.99875em) {
      .resources-archive .cell:last-of-type {
        margin-bottom: 0; } }
  .resources-archive .work-nav ul {
    list-style: none;
    margin: 0 0 70px 0;
    padding: 0; }
    .resources-archive .work-nav ul li {
      list-style: none;
      margin: 0 30px 0 0;
      padding: 0;
      display: inline-block; }
      .resources-archive .work-nav ul li:first-of-type {
        margin-right: 50px; }
      .resources-archive .work-nav ul li a {
        color: #252525;
        font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
        font-weight: 600; }
        .resources-archive .work-nav ul li a:after {
          content: "";
          height: 2px;
          margin-top: 5px;
          display: block;
          /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
          background: #0b8793;
          /* Old browsers */
          /* FF3.6-15 */
          /* Chrome10-25,Safari5.1-6 */
          background: linear-gradient(to right, #0b8793 0%, #360033 100%);
          /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
          filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
          /* IE6-9 */ }
  .resources-archive .featured-resource {
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .resources-archive .featured-resource p {
      margin: 0;
      padding: 0 0 30px;
      color: #252525;
      font-size: 1.125em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 500; }
    .resources-archive .featured-resource h5 {
      margin: 0;
      padding: 0 0 20px;
      color: rgba(37, 37, 37, 0.6);
      font-size: 1em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 400; }
      .resources-archive .featured-resource h5 img {
        width: 40px;
        height: 40px;
        padding: 5px;
        border: 1px solid #a9a9a9;
        object-fit: contain;
        margin-right: 15px;
        border-radius: 6px; }
      .resources-archive .featured-resource h5 span {
        margin-right: 5px; }
    .resources-archive .featured-resource h3 {
      margin: 0;
      padding: 0 0 15px;
      color: #252525;
      font-size: 1.5em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 600; }
    .resources-archive .featured-resource a.button, .resources-archive .featured-resource .wp-block-button a.wp-block-button__link, .wp-block-button .resources-archive .featured-resource a.wp-block-button__link {
      margin: 0;
      font-size: 1em; }
  .resources-archive .resource-item {
    text-align: left;
    position: relative;
    display: block;
    height: 100%;
    background: #ffffff;
    box-shadow: 0 7px 12px 0 rgba(0, 0, 0, 0.15);
    transition: all 0.25s ease-in-out; }
    .resources-archive .resource-item p {
      margin: 0;
      padding: 0 30px 30px;
      color: #252525;
      font-size: 0.875em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 500; }
    .resources-archive .resource-item img {
      height: 190px;
      object-fit: cover;
      width: 100%;
      opacity: 0.8;
      transition: opacity 0.25s ease-in-out; }
    .resources-archive .resource-item h5 {
      margin: 0;
      padding: 30px 30px 20px;
      color: rgba(37, 37, 37, 0.6);
      font-size: 0.875em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 400; }
      .resources-archive .resource-item h5 img {
        width: 40px;
        height: 40px;
        padding: 5px;
        border: 1px solid #a9a9a9;
        object-fit: contain;
        margin-right: 15px;
        border-radius: 6px; }
      .resources-archive .resource-item h5 span {
        margin-right: 5px; }
    .resources-archive .resource-item h3 {
      margin: 0;
      padding: 0 30px 15px;
      color: #252525;
      font-size: 1.25em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 600; }
    .resources-archive .resource-item:after {
      content: "";
      display: block;
      height: 6px;
      position: absolute;
      bottom: 0;
      width: 100%;
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
      background: #0b8793;
      /* Old browsers */
      /* FF3.6-15 */
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to right, #0b8793 0%, #360033 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
      /* IE6-9 */ }
    .resources-archive .resource-item:hover {
      -webkit-transform: scale(1.05);
          -ms-transform: scale(1.05);
              transform: scale(1.05);
      box-shadow: 0 5px 16px 0 rgba(0, 0, 0, 0.15); }
      .resources-archive .resource-item:hover img {
        opacity: 1; }
  .resources-archive a.button, .resources-archive .wp-block-button a.wp-block-button__link, .wp-block-button .resources-archive a.wp-block-button__link {
    margin-top: 80px; }
  .resources-archive.dark-theme {
    color: #252525; }
  .resources-archive.light-theme {
    color: #fafafa; }
  .resources-archive.no-top-padding {
    padding-top: 0; }
  .resources-archive.no-bottom-padding {
    padding-bottom: 0; }

.side-by-side-block {
  padding: 80px 0;
  overflow-x: hidden; }
  @media screen and (max-width: 47.99875em) {
    .side-by-side-block {
      padding: 40px 0; } }
  .side-by-side-block .rtl {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
    .side-by-side-block .rtl .cell.image.span-to-edge img {
      width: 50vw;
      max-width: none;
      max-height: 500px;
      object-fit: cover; }
      @media screen and (max-width: 47.99875em) {
        .side-by-side-block .rtl .cell.image.span-to-edge img {
          width: 100%;
          margin-bottom: 20px; } }
    .side-by-side-block .rtl .cell.image.contain-image img {
      object-fit: contain; }
  .side-by-side-block .ltr {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
    .side-by-side-block .ltr .cell.image.span-to-edge img {
      width: 50vw;
      max-width: none;
      -webkit-transform: translateX(-100%);
          -ms-transform: translateX(-100%);
              transform: translateX(-100%);
      margin-left: 100%;
      max-height: 500px;
      object-fit: cover; }
      @media screen and (max-width: 47.99875em) {
        .side-by-side-block .ltr .cell.image.span-to-edge img {
          width: 100%;
          -webkit-transform: translateX(0);
              -ms-transform: translateX(0);
                  transform: translateX(0);
          margin-left: 0;
          margin-bottom: 20px; } }
    .side-by-side-block .ltr .cell.image.contain-image img {
      object-fit: contain; }
  .side-by-side-block .cell.text {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .side-by-side-block h2 {
    font-size: 2.25em;
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 700;
    margin: 0 0 25px;
    padding: 0; }
  .side-by-side-block p {
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 500;
    margin: 0 0 20px 0;
    line-height: 175%; }
    .side-by-side-block p:last-of-type {
      margin-bottom: 0; }
  .side-by-side-block.dark-theme {
    color: #252525; }
  .side-by-side-block.light-theme {
    color: #fafafa; }
  .side-by-side-block.no-top-padding {
    padding-top: 0; }
  .side-by-side-block.no-bottom-padding {
    padding-bottom: 0; }

.headshot-grid {
  padding: 80px 0; }
  .headshot-grid h2 {
    text-align: center;
    margin: 0 0 25px;
    padding: 0; }
  .headshot-grid .headshot-item {
    text-align: center;
    margin-top: 55px;
    margin-bottom: 55px; }
    @media screen and (max-width: 47.99875em) {
      .headshot-grid .headshot-item {
        margin-top: 25px;
        margin-bottom: 25px; } }
    .headshot-grid .headshot-item a {
      display: inline-block;
      margin: 0 auto;
      transition: all 400ms; }
      .headshot-grid .headshot-item a:hover {
        -webkit-transform: scale(1.05);
            -ms-transform: scale(1.05);
                transform: scale(1.05); }
      .headshot-grid .headshot-item a h3 {
        font-size: 1.5em;
        font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
        font-weight: 700;
        margin: 20px 0 0;
        color: #252525; }
        .headshot-grid .headshot-item a h3 span {
          position: relative;
          padding: 0 0 5px;
          display: inline-block; }
          .headshot-grid .headshot-item a h3 span:before {
            content: "";
            display: block;
            height: 2px;
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
            background: #0b8793;
            /* Old browsers */
            /* FF3.6-15 */
            /* Chrome10-25,Safari5.1-6 */
            background: linear-gradient(to right, #0b8793 0%, #360033 100%);
            /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
            filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0b8793', endColorstr='#360033', GradientType=1);
            /* IE6-9 */ }
      .headshot-grid .headshot-item a p {
        font-size: 0.875em;
        font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
        font-weight: 500;
        margin: 20px auto 0;
        max-width: 200px;
        color: #252525; }
      .headshot-grid .headshot-item a .img-headshot-container img {
        border-radius: 50%; }

.media-strip {
  overflow-x: hidden; }
  .media-strip .grid-x {
    margin-right: -10px;
    margin-left: -10px; }
  .media-strip .cell {
    padding: 0 10px; }
    @media screen and (max-width: 47.99875em) {
      .media-strip .cell {
        padding: 0 10px 20px; } }
  .media-strip img {
    width: 100%;
    height: 215px;
    object-fit: cover; }

.careers-archive {
  padding: 80px 0;
  text-align: center;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  overflow: hidden; }
  @media screen and (max-width: 47.99875em) {
    .careers-archive {
      padding: 80px 10px; } }
  .careers-archive p {
    margin: 0 0 20px;
    padding: 0; }
    .careers-archive p:last-of-type {
      margin-bottom: 0; }
  .careers-archive h2 {
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    font-size: 2.25em;
    margin: 0;
    padding: 0; }
    .careers-archive h2 + * {
      margin-top: 25px; }
  .careers-archive h3 {
    font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
    font-weight: 600;
    font-size: 1.5em;
    margin: 0;
    padding: 0; }
  .careers-archive .description {
    max-width: 700px;
    margin-left: auto;
    margin-right: auto; }
  .careers-archive .all-careers {
    margin-top: 60px;
    margin-bottom: 60px; }
    .careers-archive .all-careers .cell {
      margin-bottom: 60px; }
      @media screen and (max-width: 47.99875em) {
        .careers-archive .all-careers .cell:last-of-type {
          margin-bottom: 0; } }
  .careers-archive .career-item {
    text-align: left;
    position: relative;
    display: block;
    height: 100%;
    background: #ffffff;
    box-shadow: 0 7px 12px 0 rgba(0, 0, 0, 0.15);
    transition: all 0.25s ease-in-out; }
    .careers-archive .career-item p {
      margin: 0;
      padding: 0 30px 30px;
      color: #252525;
      font-size: 0.875em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 500; }
    .careers-archive .career-item img {
      height: 250px;
      object-fit: cover;
      width: 100%;
      opacity: 0.8;
      transition: opacity 0.25s ease-in-out; }
    .careers-archive .career-item h3 {
      margin: 0;
      padding: 30px 30px 20px;
      color: #252525;
      font-size: 1.5em;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 600; }
    .careers-archive .career-item:after {
      content: "";
      display: block;
      height: 6px;
      position: absolute;
      bottom: 0;
      width: 100%;
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0b8793+0,360033+100 */
      background: #0b8793;
      /* Old browsers */
      /* FF3.6-15 */
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to right, #0b8793 0%, #360033 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b8793', endColorstr='#360033',GradientType=1 );
      /* IE6-9 */ }
    .careers-archive .career-item:hover {
      -webkit-transform: scale(1.05);
          -ms-transform: scale(1.05);
              transform: scale(1.05);
      box-shadow: 0 5px 16px 0 rgba(0, 0, 0, 0.15); }
      .careers-archive .career-item:hover img {
        opacity: 1; }

.sub-navigation {
  width: 100%;
  position: relative;
  z-index: 888;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); }
  .sub-navigation:before {
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+100&1+0,0+100 */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, white 0%, rgba(255, 255, 255, 0) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=1 );
    /* IE6-9 */
    content: '';
    width: 25px;
    top: 0;
    bottom: 0;
    left: 0;
    display: block;
    position: absolute;
    z-index: 2; }
  .sub-navigation:after {
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+100&0+0,1+99 */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, white 99%, white 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=1 );
    /* IE6-9 */
    content: '';
    width: 25px;
    top: 0;
    bottom: 0;
    right: 0;
    display: block;
    position: absolute;
    z-index: 2; }
  .sub-navigation .subnav-scroll {
    overflow-x: scroll;
    /* has to be scroll, not auto */
    -webkit-overflow-scrolling: touch;
    width: 100%;
    position: relative;
    z-index: 1; }
  .sub-navigation .subnav-container {
    margin: 0;
    padding: 15px 0;
    list-style: none;
    text-align: center;
    white-space: nowrap;
    position: relative;
    z-index: 1; }
    .sub-navigation .subnav-container li {
      margin: 0;
      padding: 0 15px;
      list-style: none;
      display: inline-block;
      position: relative;
      font-family: 'museo-sans', 'Avenir Next', 'Verdana', sans-serif;
      font-weight: 700;
      font-size: 1em; }
      .sub-navigation .subnav-container li a:hover {
        color: #252525; }
      .sub-navigation .subnav-container li.selected a {
        color: #252525; }
      .sub-navigation .subnav-container li:after {
        display: block;
        content: '';
        background: #8e8e8e;
        position: absolute;
        width: 1px;
        top: 5px;
        bottom: 5px;
        right: -2px; }
      .sub-navigation .subnav-container li:last-of-type {
        padding-right: 25px; }
        .sub-navigation .subnav-container li:last-of-type:after {
          display: none; }
      .sub-navigation .subnav-container li:first-of-type {
        padding-left: 25px; }

@supports ((position: -webkit-sticky) or (position: sticky)) {
  .sub-navigation {
    position: -webkit-sticky;
    position: sticky;
    top: 70px; } }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [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 {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3V0dGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19ncmlkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY2VsbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19sYXlvdXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY29sbGFwc2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZnJhbWUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3RleHQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2NoZWNrYm94LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faGVscC10ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZXJyb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi1tZW51LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYmFkZ2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FyZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jbG9zZS1idXR0b24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS1pY29uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2RyaWxsZG93bi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MiLCJnbG9iYWwvX2NvbG9ycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb3JiaXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wcm9ncmVzcy1iYXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N0aWNreS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zd2l0Y2guc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aHVtYm5haWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2ZsZXguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fZmxleC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19zZXR0aW5ncy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fa2V5ZnJhbWUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zbGlkZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2ZhZGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL2VmZmVjdHMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9faGluZ2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL196b29tLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc3Bpbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fYW5pbWF0aW9uLnNjc3MiLCJhcHAuc2NzcyIsImdsb2JhbC9fYWNjZXNzaWJpbGl0eS5zY3NzIiwiZ2xvYmFsL193cC1hZG1pbi5zY3NzIiwiZ2xvYmFsL193cC1vdmVycmlkZXMuc2NzcyIsImdsb2JhbC9fZm9udHMuc2NzcyIsImdsb2JhbC9fZ3V0ZW5iZXJnLnNjc3MiLCJnbG9iYWwvX2NhbXBhaWduLWZvcm1zLnNjc3MiLCJnbG9iYWwvX2dmb3Jtcy5zY3NzIiwibW9kdWxlcy9fbmF2aWdhdGlvbi5zY3NzIiwibW9kdWxlcy9fY29udGVudC5zY3NzIiwibW9kdWxlcy9fZm9vdGVyLnNjc3MiLCJtb2R1bGVzL19lZGl0b3Itc3R5bGUuc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbnMuc2NzcyIsImNvbXBvbmVudHMvX2NhcmRzLnNjc3MiLCJjb21wb25lbnRzL19mZWF0dXJlZC1pbWFnZS5zY3NzIiwiY29tcG9uZW50cy9fZGl2aWRlcnMuc2NzcyIsImNvbXBvbmVudHMvX2xpbmtzLnNjc3MiLCJ0ZW1wbGF0ZXMvX2Zyb250LnNjc3MiLCJ0ZW1wbGF0ZXMvX2tpdGNoZW4tc2luay5zY3NzIiwidGVtcGxhdGVzL19hdXRob3Iuc2NzcyIsInRlbXBsYXRlcy9fYmxvZy5zY3NzIiwidGVtcGxhdGVzL180MDQuc2NzcyIsInRlbXBsYXRlcy9fd2h5c2suc2NzcyIsIm1vZHVsZXMvZmxleC1tb2R1bGVzL19mYy1tYXN0aGVhZC5zY3NzIiwibW9kdWxlcy9mbGV4LW1vZHVsZXMvX2ZjLW1hc3RoZWFkLWZvcm0uc2NzcyIsIm1vZHVsZXMvZmxleC1tb2R1bGVzL19mYy1sb2dvLXN0cmlwLnNjc3MiLCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9fZmMtc3RhdHMuc2NzcyIsIm1vZHVsZXMvZmxleC1tb2R1bGVzL19mYy10ZXN0aW1vbmlhbC5zY3NzIiwibW9kdWxlcy9mbGV4LW1vZHVsZXMvX2ZjLWljb24tZ3JpZC5zY3NzIiwibW9kdWxlcy9mbGV4LW1vZHVsZXMvX2ZjLWNhc2VzdHVkeS5zY3NzIiwibW9kdWxlcy9mbGV4LW1vZHVsZXMvX2ZjLW9wZW4tdGV4dC5zY3NzIiwibW9kdWxlcy9mbGV4LW1vZHVsZXMvX2ZjLWhlYWRzaG90cy5zY3NzIiwibW9kdWxlcy9mbGV4LW1vZHVsZXMvX2ZjLWN0YS1ibG9jay5zY3NzIiwibW9kdWxlcy9mbGV4LW1vZHVsZXMvX2ZjLWNhbGxvdXQtYmFubmVyLnNjc3MiLCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9fZmMtcmVsYXRlZC1jb250ZW50LnNjc3MiLCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9fZmMtbWVkaWEtZ3JpZC5zY3NzIiwibW9kdWxlcy9mbGV4LW1vZHVsZXMvX2ZjLXNwbGl0LWJsb2NrLnNjc3MiLCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9fZmMtcHJvZ3Jlc3MtYmxvY2suc2NzcyIsIm1vZHVsZXMvZmxleC1tb2R1bGVzL19mYy1saW5rLWNhcmRzLnNjc3MiLCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9fZmMtY2FzZXN0dWR5LWFyY2hpdmUuc2NzcyIsIm1vZHVsZXMvZmxleC1tb2R1bGVzL19mYy1zZXJ2aWNlLWFyY2hpdmUuc2NzcyIsIm1vZHVsZXMvZmxleC1tb2R1bGVzL19mYy1zaW1wbGUtc3RhdHMuc2NzcyIsIm1vZHVsZXMvZmxleC1tb2R1bGVzL19mYy1zaW1wbGUtZ3JpZC5zY3NzIiwibW9kdWxlcy9mbGV4LW1vZHVsZXMvX2ZjLXJlc291cmNlcy1hcmNoaXZlLnNjc3MiLCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9fZmMtc2lkZS1ieS1zaWRlLnNjc3MiLCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9fZmMtaGVhZHNob3QtZ3JpZC5zY3NzIiwibW9kdWxlcy9mbGV4LW1vZHVsZXMvX2ZjLW1lZGlhLXN0cmlwLnNjc3MiLCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9fZmMtY2FyZWVycy1hcmNoaXZlLnNjc3MiLCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9fZmMtc3VibWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOzs7OztHQUtHO0FDaUtHO0VDekhKO0lBQ0UsWUFBVztJQUNYLFdBQVU7SUFDVixlQUFjLEVBQ2YsRUFBQTs7QUNoREQsNEVBQTRFO0FBUTVFO0VBQ0Usa0JBQWlCO0VBQ2pCLCtCQUE4QixFQUMvQjs7QUFPRDtFQUNFLFVBQVMsRUFDVjs7QUFLRDtFQUNFLGVBQWM7RUFDZCxpQkFBZ0IsRUFDakI7O0FBUUQ7RUFDRSx3QkFBdUI7RUFDdkIsVUFBUztFQUNULGtCQUFpQixFQUNsQjs7QUFLRDtFQUNFLGtDQUFpQztFQUNqQyxlQUFjLEVBQ2Y7O0FBT0Q7RUFDRSw4QkFBNkIsRUFDOUI7O0FBS0Q7RUFDRSxvQkFBbUI7RUFDbkIsMkJBQTBCO0VBQzFCLGtDQUFpQyxFQUNsQzs7QUFJRDs7RUFFRSxvQkFBbUIsRUFDcEI7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O0VOdUJDO0lNN0JKO01JMURFLDJCQUQ0RTtNSHJDMUUscUJBQTZEO01BQTdELHNCQUE2RCxFRDZHMUQsRUFBQTtFQXJDUDtJSS9CRSxZQUFtQixFSmlDcEI7RUFFRDtJSS9CRSxZQUFtQixFSmlDcEI7RUFNQztJSW5DQSxnQ0FEZ0gsRUpzQy9HO0VBRkQ7SUluQ0EsaUNBRGdILEVKc0MvRztFQUZEO0lJbkNBLDJCQURnSCxFSnNDL0c7RUFGRDtJSW5DQSxpQ0FEZ0gsRUpzQy9HO0VBRkQ7SUluQ0EsaUNBRGdILEVKc0MvRztFQUZEO0lJbkNBLDJCQURnSCxFSnNDL0c7RUFGRDtJSW5DQSxpQ0FEZ0gsRUpzQy9HO0VBRkQ7SUluQ0EsaUNBRGdILEVKc0MvRztFQUZEO0lJbkNBLDJCQURnSCxFSnNDL0c7RUFGRDtJSW5DQSxpQ0FEZ0gsRUpzQy9HO0VBRkQ7SUluQ0EsaUNBRGdILEVKc0MvRztFQUZEO0lJbkNBLDRCQURnSCxFSnNDL0c7RU51Q0M7SU1yREo7TUkvQkUsWUFBbUIsRUppQ3BCO0lBRUQ7TUkvQkUsWUFBbUIsRUppQ3BCO0lBTUM7TUluQ0EsK0JBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwyQkFEZ0gsRUpzQy9HO0lBZEg7TUkvQkUsWUFBbUIsRUppQ3BCO0lBRUQ7TUkvQkUsWUFBbUIsRUppQ3BCO0lBTUM7TUluQ0EsK0JBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwyQkFEZ0gsRUpzQy9HLEVBQUE7RU51Q0M7SU1yREo7TUkvQkUsWUFBbUIsRUppQ3BCO0lBRUQ7TUkvQkUsWUFBbUIsRUppQ3BCO0lBTUM7TUluQ0EsK0JBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwyQkFEZ0gsRUpzQy9HLEVBQUE7RU51Q0M7SU1yREo7TUkvQkUsWUFBbUIsRUppQ3BCO0lBRUQ7TUkvQkUsWUFBbUIsRUppQ3BCO0lBTUM7TUluQ0EsK0JBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwyQkFEZ0gsRUpzQy9HLEVBQUE7RU40Q0M7SU0xREo7TUkvQkUsWUFBbUIsRUppQ3BCO0lBRUQ7TUkvQkUsWUFBbUIsRUppQ3BCO0lBTUM7TUluQ0EsK0JBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwyQkFEZ0gsRUpzQy9HLEVBQUE7RU40Q0M7SU0xREo7TUkvQkUsWUFBbUIsRUppQ3BCO0lBRUQ7TUkvQkUsWUFBbUIsRUppQ3BCO0lBTUM7TUluQ0EsK0JBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwyQkFEZ0gsRUpzQy9HLEVBQUE7RU40Q0M7SU0xREo7TUkvQkUsWUFBbUIsRUppQ3BCO0lBRUQ7TUkvQkUsWUFBbUIsRUppQ3BCO0lBTUM7TUluQ0EsK0JBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwwQkFEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsZ0NBRGdILEVKc0MvRztJQUZEO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSwyQkFEZ0gsRUpzQy9HLEVBQUE7O0FBOENIO0VDN0lNLHdCQUE2RDtFQUE3RCx1QkFBNkQsRURrSmhFO0VOWkM7SU1PSjtNQzdJTSx1QkFBNkQ7TUFBN0Qsc0JBQTZELEVEa0poRSxFQUFBOztBQUlEO0VDdEpJLHdCQUE2RDtFQUE3RCx1QkFBNkQsRUR3SmhFO0VObEJDO0lNZ0JGO01DdEpJLHVCQUE2RDtNQUE3RCxzQkFBNkQsRUR3SmhFLEVBQUE7O0FBWEg7RUM3SU0sd0JBQTZEO0VBQTdELHVCQUE2RCxFRDZKaEU7RU52QkM7SU1PSjtNQzdJTSx1QkFBNkQ7TUFBN0Qsc0JBQTZELEVENkpoRSxFQUFBOztBSy9KSDtFRDRERSxZQURvRCxFQ3pEckQ7O0FBRkQ7RUQ0REUsV0FEb0QsRUN6RHJEOztBQUZEO0VENERFLGlCQURvRCxFQ3pEckQ7O0FBRkQ7RUQ0REUsV0FEb0QsRUN6RHJEOztBQUZEO0VENERFLFdBRG9ELEVDekRyRDs7QUFGRDtFRDRERSxpQkFEb0QsRUN6RHJEOztBQUZEO0VENERFLGlCQURvRCxFQ3pEckQ7O0FBRkQ7RUQ0REUsYUFEb0QsRUN6RHJEOztBWHNJRztFV3hJSjtJRDRERSxZQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxhQURvRCxFQ3pEckQsRUFBQTs7QVhzSUc7RVd4SUo7SUQ0REUsWUFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsYUFEb0QsRUN6RHJELEVBQUE7O0FYc0lHO0VXeElKO0lENERFLFlBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLGFBRG9ELEVDekRyRCxFQUFBOztBWDJJRztFVzdJSjtJRDRERSxZQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxhQURvRCxFQ3pEckQsRUFBQTs7QVgySUc7RVc3SUo7SUQ0REUsWUFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsYUFEb0QsRUN6RHJELEVBQUE7O0FYMklHO0VXN0lKO0lENERFLFlBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLGFBRG9ELEVDekRyRCxFQUFBOztBQUZEO0VENERFLDRCQURnSCxFQ3pEakg7O0FBRkQ7RUQ0REUsMkJBRGdILEVDekRqSDs7QUFGRDtFRDRERSxpQ0FEZ0gsRUN6RGpIOztBQUZEO0VENERFLDJCQURnSCxFQ3pEakg7O0FBRkQ7RUQ0REUsMkJBRGdILEVDekRqSDs7QUFGRDtFRDRERSxpQ0FEZ0gsRUN6RGpIOztBQUZEO0VENERFLGlDQURnSCxFQ3pEakg7O0FBRkQ7RUQ0REUsNkJBRGdILEVDekRqSDs7QVhzSUc7RVd4SUo7SUQ0REUsMkJBRGdILEVDekRqSDtFQUZEO0lENERFLDBCQURnSCxFQ3pEakg7RUFGRDtJRDRERSxnQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsMEJBRGdILEVDekRqSDtFQUZEO0lENERFLDBCQURnSCxFQ3pEakg7RUFGRDtJRDRERSxnQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsZ0NBRGdILEVDekRqSDtFQUZEO0lENERFLDRCQURnSCxFQ3pEakg7RUFGRDtJRDRERSwyQkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsMEJBRGdILEVDekRqSDtFQUZEO0lENERFLGdDQURnSCxFQ3pEakg7RUFGRDtJRDRERSwwQkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsMEJBRGdILEVDekRqSDtFQUZEO0lENERFLGdDQURnSCxFQ3pEakg7RUFGRDtJRDRERSxnQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSCxFQUFBOztBWHNJRztFV3hJSjtJRDRERSwyQkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsMEJBRGdILEVDekRqSDtFQUZEO0lENERFLGdDQURnSCxFQ3pEakg7RUFGRDtJRDRERSwwQkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsMEJBRGdILEVDekRqSDtFQUZEO0lENERFLGdDQURnSCxFQ3pEakg7RUFGRDtJRDRERSxnQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSCxFQUFBOztBWHNJRztFV3hJSjtJRDRERSwyQkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsMEJBRGdILEVDekRqSDtFQUZEO0lENERFLGdDQURnSCxFQ3pEakg7RUFGRDtJRDRERSwwQkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsMEJBRGdILEVDekRqSDtFQUZEO0lENERFLGdDQURnSCxFQ3pEakg7RUFGRDtJRDRERSxnQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSCxFQUFBOztBWDJJRztFVzdJSjtJRDRERSwyQkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsMEJBRGdILEVDekRqSDtFQUZEO0lENERFLGdDQURnSCxFQ3pEakg7RUFGRDtJRDRERSwwQkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsMEJBRGdILEVDekRqSDtFQUZEO0lENERFLGdDQURnSCxFQ3pEakg7RUFGRDtJRDRERSxnQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSCxFQUFBOztBWDJJRztFVzdJSjtJRDRERSwyQkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsMEJBRGdILEVDekRqSDtFQUZEO0lENERFLGdDQURnSCxFQ3pEakg7RUFGRDtJRDRERSwwQkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsMEJBRGdILEVDekRqSDtFQUZEO0lENERFLGdDQURnSCxFQ3pEakg7RUFGRDtJRDRERSxnQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSCxFQUFBOztBWDJJRztFVzdJSjtJRDRERSwyQkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsMEJBRGdILEVDekRqSDtFQUZEO0lENERFLGdDQURnSCxFQ3pEakg7RUFGRDtJRDRERSwwQkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsMEJBRGdILEVDekRqSDtFQUZEO0lENERFLGdDQURnSCxFQ3pEakg7RUFGRDtJRDRERSxnQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSCxFQUFBOztBTHlNRztFTWhORSxnQkFBMEI7RUFBMUIsZUFBMEIsRU5rTjNCO0VNL01EO0lBRUksZ0JBQTBCO0lBQTFCLGVBQTBCLEVBRTdCO0VBb0JLO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDO0VaZ0hQO0lZbEhNO01Gc0NSLGdCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7RVpnSFA7SVlsSE07TUZzQ1IsZ0JBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixZQURvRCxFRW5DM0MsRUFBQTtFWmdIUDtJWWxITTtNRnNDUixnQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFlBRG9ELEVFbkMzQyxFQUFBO0VacUhQO0lZdkhNO01Gc0NSLGdCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7RVpxSFA7SVl2SE07TUZzQ1IsZ0JBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixZQURvRCxFRW5DM0MsRUFBQTtFWnFIUDtJWXZITTtNRnNDUixnQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBTnlMUDtFTS9LRSxnQkFBMEI7RUFBMUIsZUFBMEIsRU5pTDNCO0VNOUtEO0lBRUksaUJBQTRCO0lBQTVCLGdCQUE0QixFQUUvQjs7QVorRkQ7RU1tRUE7SU1oTkUsZ0JBQTBCO0lBQTFCLGVBQTBCLEVOa04zQjtJTS9NRDtNQUVJLGdCQUEwQjtNQUExQixlQUEwQixFQUU3QixFQUFBOztBWnNJRDtFWTNITTtJRitDUixnQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFlBRG9ELEVFNUMzQyxFQUFBOztBWnlIUDtFWWxITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBWmdIUDtFWWxITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBWmdIUDtFWWxITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBWnFIUDtFWXZITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBWnFIUDtFWXZITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBWnFIUDtFWXZITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBWmdIUDtFTXlFQTtJTS9LRSxnQkFBMEI7SUFBMUIsZUFBMEIsRU5pTDNCO0lNOUtEO01BRUksaUJBQTRCO01BQTVCLGdCQUE0QixFQUUvQixFQUFBOztBWitGRDtFTW1FQTtJTWhORSxnQkFBMEI7SUFBMUIsZUFBMEIsRU5rTjNCO0lNL01EO01BRUksZ0JBQTBCO01BQTFCLGVBQTBCLEVBRTdCLEVBQUE7O0Fac0lEO0VZM0hNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FaeUhQO0VZM0hNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FaeUhQO0VZbEhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FaZ0hQO0VZbEhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FacUhQO0VZdkhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FacUhQO0VZdkhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FacUhQO0VZdkhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FaZ0hQO0VNeUVBO0lNL0tFLGdCQUEwQjtJQUExQixlQUEwQixFTmlMM0I7SU05S0Q7TUFFSSxpQkFBNEI7TUFBNUIsZ0JBQTRCLEVBRS9CLEVBQUE7O0FaK0ZEO0VNbUVBO0lNaE5FLGdCQUEwQjtJQUExQixlQUEwQixFTmtOM0I7SU0vTUQ7TUFFSSxnQkFBMEI7TUFBMUIsZUFBMEIsRUFFN0IsRUFBQTs7QVpzSUQ7RVkzSE07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVp5SFA7RVkzSE07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVp5SFA7RVkzSE07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVp5SFA7RVlsSE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QVpxSFA7RVl2SE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QVpxSFA7RVl2SE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QVpxSFA7RVl2SE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QVpnSFA7RU15RUE7SU0vS0UsZ0JBQTBCO0lBQTFCLGVBQTBCLEVOaUwzQjtJTTlLRDtNQUVJLGlCQUE0QjtNQUE1QixnQkFBNEIsRUFFL0IsRUFBQTs7QVpvR0Q7RU04REE7SU1oTkUsZ0JBQTBCO0lBQTFCLGVBQTBCLEVOa04zQjtJTS9NRDtNQUVJLGdCQUEwQjtNQUExQixlQUEwQixFQUU3QixFQUFBOztBWjJJRDtFWWhJTTtJRitDUixnQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFlBRG9ELEVFNUMzQyxFQUFBOztBWjhIUDtFWWhJTTtJRitDUixnQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFlBRG9ELEVFNUMzQyxFQUFBOztBWjhIUDtFWWhJTTtJRitDUixnQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFlBRG9ELEVFNUMzQyxFQUFBOztBWjhIUDtFWWhJTTtJRitDUixnQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFlBRG9ELEVFNUMzQyxFQUFBOztBWjhIUDtFWXZITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBWnFIUDtFWXZITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBWnFIUDtFWXZITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBWnFIUDtFTW9FQTtJTS9LRSxnQkFBMEI7SUFBMUIsZUFBMEIsRU5pTDNCO0lNOUtEO01BRUksaUJBQTRCO01BQTVCLGdCQUE0QixFQUUvQixFQUFBOztBWm9HRDtFTThEQTtJTWhORSxnQkFBMEI7SUFBMUIsZUFBMEIsRU5rTjNCO0lNL01EO01BRUksZ0JBQTBCO01BQTFCLGVBQTBCLEVBRTdCLEVBQUE7O0FaMklEO0VZaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FaOEhQO0VZaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FaOEhQO0VZaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FaOEhQO0VZaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FaOEhQO0VZaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FaOEhQO0VZdkhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FacUhQO0VZdkhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FacUhQO0VNb0VBO0lNL0tFLGdCQUEwQjtJQUExQixlQUEwQixFTmlMM0I7SU05S0Q7TUFFSSxpQkFBNEI7TUFBNUIsZ0JBQTRCLEVBRS9CLEVBQUE7O0Fab0dEO0VNOERBO0lNaE5FLGdCQUEwQjtJQUExQixlQUEwQixFTmtOM0I7SU0vTUQ7TUFFSSxnQkFBMEI7TUFBMUIsZUFBMEIsRUFFN0IsRUFBQTs7QVoySUQ7RVloSU07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVo4SFA7RVloSU07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVo4SFA7RVloSU07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVo4SFA7RVloSU07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVo4SFA7RVloSU07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVo4SFA7RVloSU07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVo4SFA7RVl2SE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QVpxSFA7RU1vRUE7SU0vS0UsZ0JBQTBCO0lBQTFCLGVBQTBCLEVOaUwzQjtJTTlLRDtNQUVJLGlCQUE0QjtNQUE1QixnQkFBNEIsRUFFL0IsRUFBQTs7QU5zTEQ7RU9oT0YsZ0JBQTZCLEVQa08xQjs7QUFFRDtFT3BPRixpQ0FBNkIsRVBzTzFCOztBQU5EO0VPaE9GLHNCQUE2QixFUGtPMUI7O0FBRUQ7RU9wT0YsdUNBQTZCLEVQc08xQjs7QUFORDtFT2hPRix1QkFBNkIsRVBrTzFCOztBQUVEO0VPcE9GLHdDQUE2QixFUHNPMUI7O0FBTkQ7RU9oT0YsaUJBQTZCLEVQa08xQjs7QUFFRDtFT3BPRixrQ0FBNkIsRVBzTzFCOztBQU5EO0VPaE9GLHVCQUE2QixFUGtPMUI7O0FBRUQ7RU9wT0Ysd0NBQTZCLEVQc08xQjs7QUFORDtFT2hPRix1QkFBNkIsRVBrTzFCOztBQUVEO0VPcE9GLHdDQUE2QixFUHNPMUI7O0FBTkQ7RU9oT0YsaUJBQTZCLEVQa08xQjs7QUFFRDtFT3BPRixrQ0FBNkIsRVBzTzFCOztBQU5EO0VPaE9GLHVCQUE2QixFUGtPMUI7O0FBRUQ7RU9wT0Ysd0NBQTZCLEVQc08xQjs7QUFORDtFT2hPRix1QkFBNkIsRVBrTzFCOztBQUVEO0VPcE9GLHdDQUE2QixFUHNPMUI7O0FBTkQ7RU9oT0YsaUJBQTZCLEVQa08xQjs7QUFFRDtFT3BPRixrQ0FBNkIsRVBzTzFCOztBQU5EO0VPaE9GLHVCQUE2QixFUGtPMUI7O0FBRUQ7RU9wT0Ysd0NBQTZCLEVQc08xQjs7QUFORDtFT2hPRix1QkFBNkIsRVBrTzFCOztBQUVEO0VPcE9GLHdDQUE2QixFUHNPMUI7O0FON0ZEO0VNdUZBO0lPaE9GLGdCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixnQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0Ysc0JBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHNDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsdUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLGlCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixpQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHVDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsdUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLGlCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixpQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHVDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsdUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLGlCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixpQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHVDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsdUNBQTZCLEVQc08xQixFQUFBOztBTjdGRDtFTXVGQTtJT2hPRixnQkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsZ0NBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHNCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixzQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHVDQUE2QixFUHNPMUI7RUFORDtJT2hPRixpQkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsaUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix1Q0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHVDQUE2QixFUHNPMUI7RUFORDtJT2hPRixpQkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsaUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix1Q0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHVDQUE2QixFUHNPMUI7RUFORDtJT2hPRixpQkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsaUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix1Q0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHVDQUE2QixFUHNPMUIsRUFBQTs7QU43RkQ7RU11RkE7SU9oT0YsZ0JBQTZCLEVQa08xQjtFQUVEO0lPcE9GLGdDQUE2QixFUHNPMUI7RUFORDtJT2hPRixzQkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0Ysc0NBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix1Q0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsaUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLGlDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsdUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix1Q0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsaUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLGlDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsdUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix1Q0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsaUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLGlDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsdUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix1Q0FBNkIsRVBzTzFCLEVBQUE7O0FOeEZEO0VNa0ZBO0lPaE9GLGdCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixnQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0Ysc0JBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHNDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsdUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLGlCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixpQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHVDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsdUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLGlCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixpQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHVDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsdUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLGlCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixpQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHVDQUE2QixFUHNPMUI7RUFORDtJT2hPRix1QkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsdUNBQTZCLEVQc08xQixFQUFBOztBTnhGRDtFTWtGQTtJT2hPRixnQkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsZ0NBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHNCQUE2QixFUGtPMUI7RUFFRDtJT3BPRixzQ0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHVDQUE2QixFUHNPMUI7RUFORDtJT2hPRixpQkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsaUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFFRDtJT3BPRix1Q0FBNkIsRVBzTzFCO0VBTkQ7SU9oT0YsdUJBQTZCLEVQa08xQjtFQUVEO0lPcE9GLHVDQUE2QixFUHNPMUI7RUFORDtJT2hPRixpQkFBNkIsRVBrTzFCO0VBRUQ7SU9wT0YsaUNBQTZCLEVQc08xQjtFQU5EO0lPaE9GLHVCQUE2QixFUGtPMUI7RUFF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SW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDRCQURnSCxFSnNDL0c7SUFkSDtNSS9CRSxhQUFtQixFSmlDcEI7SUFFRDtNSS9CRSxhQUFtQixFSmlDcEI7SUFNQztNSW5DQSxnQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDRCQURnSCxFSnNDL0csRUFBQTtFTnVDQztJTXJESjtNSS9CRSxhQUFtQixFSmlDcEI7SUFFRDtNSS9CRSxhQUFtQixFSmlDcEI7SUFNQztNSW5DQSxnQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDRCQURnSCxFSnNDL0csRUFBQTtFTnVDQztJTXJESjtNSS9CRSxhQUFtQixFSmlDcEI7SUFFRDtNSS9CRSxhQUFtQixFSmlDcEI7SUFNQztNSW5DQSxnQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDRCQURnSCxFSnNDL0csRUFBQTtFTjRDQztJTTFESjtNSS9CRSxhQUFtQixFSmlDcEI7SUFFRDtNSS9CRSxhQUFtQixFSmlDcEI7SUFNQztNSW5DQSxnQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDRCQURnSCxFSnNDL0csRUFBQTtFTjRDQztJTTFESjtNSS9CRSxhQUFtQixFSmlDcEI7SUFFRDtNSS9CRSxhQUFtQixFSmlDcEI7SUFNQztNSW5DQSxnQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsaUNBRGdILEVKc0MvRztJQUZEO01JbkNBLDJCQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gs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RkQ7SUluQ0Esa0NBRGdILEVKc0MvRztFQUZEO0lJbkNBLGtDQURnSCxFSnNDL0c7RUFGRDtJSW5DQSw0QkFEZ0gsRUpzQy9HO0VBRkQ7SUluQ0Esa0NBRGdILEVKc0MvRztFQUZEO0lJbkNBLGtDQURnSCxFSnNDL0c7RUFGRDtJSW5DQSw2QkFEZ0gsRUpzQy9HO0VOdUNDO0lNckRKO01JL0JFLGFBQW1CLEVKaUNwQjtJQUVEO01JL0JFLGFBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRztJQWRIO01JL0JFLGFBQW1CLEVKaUNwQjtJQUVEO01JL0JFLGFBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRyxFQUFBO0VOdUNDO0lNckRKO01JL0JFLGFBQW1CLEVKaUNwQjtJQUVEO01JL0JFLGFBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRyxFQUFBO0VOdUNDO0lNckRKO01JL0JFLGFBQW1CLEVKaUNwQjtJQUVEO01JL0JFLGFBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRyxFQUFBO0VONENDO0lNMURKO01JL0JFLGFBQW1CLEVKaUNwQjtJQUVEO01JL0JFLGFBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRyxFQUFBO0VONENDO0lNMURKO01JL0JFLGFBQW1CLEVKaUNwQjtJQUVEO01JL0JFLGFBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRyxFQUFBO0VONENDO0lNMURKO01JL0JFLGFBQW1CLEVKaUNwQjtJQUVEO01JL0JFLGFBQW1CLEVKaUNwQjtJQU1DO01JbkNBLGdDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsMkJBRGdILEVKc0MvRztJQUZEO01JbkNBLGlDQURnSCxFSnNDL0c7SUFGRDtNSW5DQSxpQ0FEZ0gsRUpzQy9HO0lBRkQ7TUluQ0EsNEJBRGdILEVKc0MvRyxFQUFBOztBQW1URDtFUS9ZSSw4QkFBbUMsRVJpWnRDO0VOOVFDO0lNNFFGO01RL1lJLDZCQUFtQyxFUmladEMsRUFBQTtFTjlRQztJTTRRRjtNUS9ZSSw2QkFBbUMsRVJpWnRDLEVBQUE7RU45UUM7SU00UUY7TVEvWUksNkJBQW1DLEVSaVp0QyxFQUFBO0VOelFDO0lNdVFGO01RL1lJLDZCQUFtQyxFUmladEMsRUFBQTtFTnpRQztJTXVRRjtNUS9ZSSw2QkFBbUMsRVJpWnRDLEVBQUE7RU56UUM7SU11UUY7TVEvWUksNkJBQW1DLEVSaVp0QyxFQUFBOztBTjlRQztFTWdSQTtJUW5aRSw2QkFBbUMsRVJxWnBDLEVBQUE7O0FObFJEO0VNZ1JBO0lRblpFLDZCQUFtQyxFUnFacEMsRUFBQTs7QU5sUkQ7RU1nUkE7SVFuWkUsNkJBQW1DLEVScVpwQyxFQUFBOztBTjdRRDtFTTJRQTtJUW5aRSw2QkFBbUMsRVJxWnBDLEVBQUE7O0FON1FEO0VNMlFBO0lRblpFLDZCQUFtQyxFUnFacEMsRUFBQTs7QU43UUQ7RU0yUUE7SVFuWkUsNkJBQW1DLEVScVpwQyxFQUFBOztBU3pMTDs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW1CRSxVQUFTO0VBQ1QsV0FBVSxFQUNYOztBQUdEO0VBQ0Usb0JYakgwQjtFV21IMUIsbUJBQWtCO0VBQ2xCLGlCWHJIc0I7RVdzSHRCLG1DWHBIeUMsRVdxSDFDOztBQUdEOztFQUVFLG1CQUFrQjtFQUNsQixxQkFBb0IsRUFDckI7O0FBR0Q7O0VBRUUsa0JYNU1xQjtFVzZNckIscUJBQW9CLEVBQ3JCOztBYm5ORDtFYXVORSxlWDNJaUI7RVc0SWpCLHFCQUFvQixFQUNyQjs7QUFHRDs7Ozs7O0VBTUUsZ0VYbk9pRTtFV29PakUsbUJYL0tzQjtFV2dMdEIsb0JYaE95QjtFV2lPekIsZVgvS2tCO0VXZ0xsQixtQ1gzSnNDLEVXaUt2QztFQWhCRDs7Ozs7O0lBYUksZUFBYztJQUNkLGVYbFBlLEVXbVBoQjs7QUFRRztFQUlJLGtCTnZQNkM7RU1tUTdDLGlCWDVNVztFV29OWCxjQUFhO0VBT2Isc0JYMU5pQixFVzROcEI7O0FBakNEO0VBSUksbUJOdlA2QztFTW1RN0MsaUJYNU1XO0VXb05YLGNBQWE7RUFPYixzQlgxTmlCLEVXNE5wQjs7QUFqQ0Q7RUFJSSxxQk52UDZDO0VNbVE3QyxpQlg1TVc7RVdvTlgsY0FBYTtFQU9iLHNCWDFOaUIsRVc0TnBCOztBQWpDRDtFQUlJLG9CTnZQNkM7RU1tUTdDLGlCWDVNVztFV29OWCxjQUFhO0VBT2Isc0JYMU5pQixFVzROcEI7O0FBakNEO0VBSUkscUJOdlA2QztFTW1RN0MsaUJYNU1XO0VXb05YLGNBQWE7RUFPYixzQlgxTmlCLEVXNE5wQjs7QUFqQ0Q7RUFJSSxnQk52UDZDO0VNbVE3QyxpQlg1TVc7RVdvTlgsY0FBYTtFQU9iLHNCWDFOaUIsRVc0TnBCOztBZnRNSDtFZXFLRTtJQUlJLGdCTnZQNkMsRU1vUmhEO0VBakNEO0lBSUksa0JOdlA2QyxFTW9SaEQ7RUFqQ0Q7SUFJSSxxQk52UDZDLEVNb1JoRDtFQWpDRDtJQUlJLHFCTnZQNkMsRU1vUmhEO0VBakNEO0lBSUksbUJOdlA2QyxFTW9SaEQ7RUFqQ0Q7SUFJSSxnQk52UDZDLEVNb1JoRCxFQUFBOztBYnBUUDtFYTJURSxxQkFBb0I7RUFDcEIsZVgzU2M7RVc0U2Qsc0JYcE15QjtFV3NNekIsZ0JBQWUsRUFhaEI7RUFsQkQ7SUFTSSxlWDNNMkQsRVcrTTVEO0VBYkg7SUFnQkksVUFBUyxFQUNWOztBYjlWSDtFYW1XRSxZQUFXO0VBRVgsb0JObFRxRDtFTW1UckQsVUFBUztFQUNULHFCWHZOeUI7RVd5TnpCLGNBQWE7RUFDYixnQkFBZTtFQUNmLGlDWGhVaUI7RVdpVWpCLGVBQWMsRUFDZjs7QUFHRDs7O0VBR0Usb0JYalAwQjtFV2tQMUIsNkJYaE95QjtFV2lPekIsaUJYcFBzQixFV3FQdkI7O0FBR0Q7RUFDRSxtQkFBa0IsRUFDbkI7O0FBR0Q7RUFDRSxxQlgxT3NCO0VXMk90QixzQlg3T2tCLEVXOE9uQjs7QUFHRDtFQUNFLHFCWGhQc0IsRVdpUHZCOztBQUdEO0VBRUkscUJYclAyQjtFV3NQM0IsaUJBQWdCLEVBQ2pCOztBQUlIO0VBQ0Usb0JYM1B5QixFV2lRMUI7RUFQRDtJQUlJ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O01Bd0RoQiw0QkF4RGdCO2NBd0RoQiwyQkF4RGdCO1VBd0RoQixtQkF4RGdCLEVEa0ZiOztBQU5EO0VDcENGLDZCQXZDa0I7TUF1Q2xCLHdCQXZDa0I7VUF1Q2xCLHFCQXZDa0IsRUQ2RWY7O0FBRUQ7RUN4QkYsNEJBdkRrQjtNQXVEbEIsNkJBdkRrQjtjQXVEbEIsNEJBdkRrQjtVQXVEbEIsb0JBdkRrQixFRGlGZjs7QUFJSDtFQy9DQSxnQ0FuRGtCO01BbURsQixzQkFuRGtCO1VBbURsQix3QkFuRGtCO0VBb0RsQiw0QkF4Q2dCO01Bd0NoQix1QkF4Q2dCO1VBd0NoQixvQkF4Q2dCO0VEd0ZkLDhCQUFxQjtNQUFyQiwyQkFBcUI7VUFBckIsc0JBQXFCLEVBQ3RCOztBQUtHO0VDaENKLGlCRCtCZ0I7TUMvQmhCLGtCRCtCZ0I7VUMvQmhCLFNEK0JnQixFQUdYOztBQUZEO0VDaENKLGlCRCtCZ0I7TUMvQmhCLGtCRCtCZ0I7VUMvQmhCLFNEK0JnQixFQUdYOztBQUZEO0VDaENKLGlCRCtCZ0I7TUMvQmhCLGtCRCtCZ0I7VUMvQmhCLFNEK0JnQixFQUdYOztBQUZEO0VDaENKLGlCRCtCZ0I7TUMvQmhCLGtCRCtCZ0I7VUMvQmhCLFNEK0JnQixFQUdYOztBQUZEO0VDaENKLGlCRCtCZ0I7TUMvQmhCLGtCRCtCZ0I7VUMvQmhCLFNEK0JnQixFQUdYOztBQUZEO0VDaENKLGlCRCtCZ0I7TUMvQmhCLGtCRCtCZ0I7VUMvQmhCLFNEK0JnQixFQUdYOztBN0RzREQ7RTZEeERBO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWCxFQUFBOztBN0RzREQ7RTZEeERBO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWCxFQUFBOztBN0RzREQ7RTZEeERBO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWCxFQUFBOztBN0QyREQ7RTZEN0RBO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWCxFQUFBOztBN0QyREQ7RTZEN0RBO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWCxFQUFBOztBN0QyREQ7RTZEN0RBO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWCxFQUFBOztBQS9GTDtFQ1lBLHNCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhLEVEVlo7O0FBRUQ7RUFDRSx1QkFB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ZTtFQ2dCYix1REdyQ21DO1VIcUNuQywrQ0dyQ21DO0VIcUNuQyw4QkY1Qm1EO01FNEJuRCwwQkY1Qm1EO1VFNEJuRCxzQkY1Qm1EO0VNR2pELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQTjVCOztBQVVEO0VHb0JBLG9ER1Y0QztVSFU1Qyw0Q0dWNEM7RUNKMUMsV0FBMkIsRVBKNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYix1REdwQ3FDO1VIb0NyQywrQ0dwQ3FDO0VIb0NyQyxnQ0YzQnFEO01FMkJyRCw0QkYzQnFEO1VFMkJyRCx3QkYzQnFEO0VNRW5ELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQTjVCOztBQVVEO0VHb0JBLG9ER1Y0QztVSFU1Qyw0Q0dWNEM7RUNKMUMsV0FBMkIsRVBKNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixzREduQ2lDO1VIbUNqQyw4Q0duQ2lDO0VIbUNqQyxpQ0YxQnNEO01FMEJ0RCw2QkYxQnNEO1VFMEJ0RCx5QkYxQnNEO0VNQ3BELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQTjVCOztBQVVEO0VHb0JBLG9ER1Y0QztVSFU1Qyw0Q0dWNEM7RUNKMUMsV0FBMkIsRVBKNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixzREdsQytCO1VIa0MvQiw4Q0dsQytCO0VIa0MvQiwrQkZ6Qm9EO01FeUJwRCwyQkZ6Qm9EO1VFeUJwRCx1QkZ6Qm9EO0VNQWxELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQTjVCOztBQVVEO0VHb0JBLG9ER1Y0QztVSFU1Qyw0Q0dWNEM7RUNKMUMsV0FBMkIsRVBKNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYix1REdyQ21DO1VIcUNuQywrQ0dyQ21DO0VIcUNuQyxpQ0dDZTtNSERmLDZCR0NlO1VIRGYseUJHQ2U7RUMxQmIsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBMkIsRVBONUI7O0FBVUQ7RUdvQkEsb0RHVjRDO1VIVTVDLDRDR1Y0QztFQ0oxQyxXQUEyQixFUEo1Qjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLHVER3BDcUM7VUhvQ3JDLCtDR3BDcUM7RUhvQ3JDLGlDR0NlO01IRGYsNkJHQ2U7VUhEZix5QkdDZTtFQzFCYixnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUEyQixFUE41Qjs7QUFVRDtFR29CQSxvREdWNEM7VUhVNUMsNENHVjRDO0VDSjFDLFdBQTJCLEVQSjVCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUjhDO1VIUTlDLDRDR1I4QztFSFE5Qyw4QkZ0Qm1EO01Fc0JuRCwwQkZ0Qm1EO1VFc0JuRCxzQkZ0Qm1EO0VNSGpELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQThCLEVQTi9COztBQVVEO0VHb0JBLHVER3JDbUM7VUhxQ25DLCtDR3JDbUM7RUN1QmpDLFdBQThCLEVQSi9COztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUjhDO1VIUTlDLDRDR1I4QztFSFE5QyxnQ0ZyQnFEO01FcUJyRCw0QkZyQnFEO1VFcUJyRCx3QkZyQnFEO0VNSm5ELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQThCLEVQTi9COztBQVVEO0VHb0JBLHVER3BDcUM7VUhvQ3JDLCtDR3BDcUM7RUNzQm5DLFdBQThCLEVQSi9COztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUjhDO1VIUTlDLDRDR1I4QztFSFE5QyxpQ0ZwQnNEO01Fb0J0RCw2QkZwQnNEO1VFb0J0RCx5QkZwQnNEO0VNTHBELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQThCLEVQTi9COztBQVVEO0VHb0JBLHNER25DaUM7VUhtQ2pDLDhDR25DaUM7RUNxQi9CLFdBQThCLEVQSi9COztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUjhDO1VIUTlDLDRDR1I4QztFSFE5QywrQkZuQm9EO01FbUJwRCwyQkZuQm9EO1VFbUJwRCx1QkZuQm9EO0VNTmxELGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQThCLEVQTi9COztBQVVEO0VHb0JBLHNER2xDK0I7VUhrQy9CLDhDR2xDK0I7RUNvQjdCLFdBQThCLEVQSi9COztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0RHUjhDO1VIUTlDLDRDR1I4QztFSFE5QyxpQ0dDZTtNSERmLDZCR0NlO1VIRGYseUJHQ2U7RUMxQmIsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBOEIsRVBOL0I7O0FBVUQ7RUdvQkEsdURHckNtQztVSHFDbkMsK0NHckNtQztFQ3VCakMsV0FBOEIsRVBKL0I7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixvREdSOEM7VUhROUMsNENHUjhDO0VIUTlDLGlDR0NlO01IRGYsNkJHQ2U7VUhEZix5QkdDZTtFQzFCYixnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUE4QixFUE4vQjs7QUFVRDtFR29CQSx1REdwQ3FDO1VIb0NyQywrQ0dwQ3FDO0VDc0JuQyxXQUE4QixFUEovQjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLDhCQUZ5QjtNQUV6QiwwQkFGeUI7VUFFekIsc0JBRnlCO0VLM0J2QixnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUEyQixFUkY1Qjs7QUFVRDtFR29CQSw0QkFGeUI7TUFFekIsd0JBRnlCO1VBRXpCLG9CQUZ5QjtFS2hCdkIsV0FBMkIsRVJBNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VE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RUFmRDtJQVFRLGNBQWEsRUFDaEI7RUFUTDtJQVlRLGdCQUFlO0lBQ2YsYUFBWSxFQUNmOztBQUVMOztFQUVJLHdDQUF1QztFQUV2QyxvQ0FBbUM7RUFFbkMsZ0NBQStCLEVBQ2xDOztBQUVEO0VBQ0ksbUJBQWtCO0VBQ2xCLFFBQU87RUFDUCxPQUFNO0VBQ04sZUFBYztFQUNkLGtCQUFpQjtFQUNqQixtQkFBa0IsRUFlckI7RUFyQkQ7SUFVUSxZQUFXO0lBQ1gsZUFBYyxFQUNqQjtFQVpMO0lBZVEsWUFBVyxFQUNkO0VBRUQ7SUFDSSxtQkFBa0IsRUFDckI7O0FBRUw7RUFDSSxZQUFXO0VBQ1gsYUFBWTtFQUNaLGdCQUFlO0VBV2YsY0FBYSxFQW1CaEI7RTdIdXFlQztJNkhuc2VNLGFBQVksRUFDZjtFQU5MO0lBUVEsZUFBYyxFQUNqQjtFQVRMO0lBV1EsY0FBYSxFQUNoQjtFQVpMO0lBaUJRLHFCQUFvQixFQUN2QjtFQUVEO0lBQ0ksZUFBYyxFQUNqQjtFQUVEO0lBQ0ksbUJBQWtCLEVBQ3JCO0VBRUQ7SUFDSSxlQUFjO0lBQ2QsYUFBWTtJQUNaLDhCQUE2QixFQUNoQzs7QUFFTDtFQUNJLGNBQWEsRUFDaEIiLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjUuMVxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZlYWwsIC5yZXZlYWwudGlueSwgLnJldmVhbC5zbWFsbCwgLnJldmVhbC5sYXJnZSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG5cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgfVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIG1hcmdpbjogMDsgfVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IH1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7IH1cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07IH1cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7IH1cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGZvbnQ6IGluaGVyaXQ7IH1cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDBlbSZ0YWJsZXQ9NDhlbSZsYXJnZT02NGVtJnhsYXJnZT02OC43NWVtJnh4bGFyZ2U9OTBlbSZwaGFibGV0PTYwZW1cIjsgfVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxMDAlOyB9XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IH1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgZm9udC1mYW1pbHk6IFwibXVzZW8tc2Fuc1wiLCBcIkF2ZW5pciBOZXh0XCIsIFwiVmVyZGFuYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgfVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5zZWxlY3Qge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cblxuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogYXV0bzsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyB9XG5cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5ncmlkLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDY4Ljc1cmVtO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9IH1cbiAgLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZ3JpZC1jb250YWluZXIuZmx1aWQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07IH0gfVxuICAuZ3JpZC1jb250YWluZXIuZnVsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5ncmlkLXgge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG5cbi5jZWxsIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1pbi1oZWlnaHQ6IDBweDtcbiAgbWluLXdpZHRoOiAwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5jZWxsLmF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgLmNlbGwuc2hyaW5rIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uZ3JpZC14ID4gLmF1dG8ge1xuICB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC14ID4gLnNocmluayB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtc2hyaW5rLCAuZ3JpZC14ID4gLnNtYWxsLWZ1bGwsIC5ncmlkLXggPiAuc21hbGwtMSwgLmdyaWQteCA+IC5zbWFsbC0yLCAuZ3JpZC14ID4gLnNtYWxsLTMsIC5ncmlkLXggPiAuc21hbGwtNCwgLmdyaWQteCA+IC5zbWFsbC01LCAuZ3JpZC14ID4gLnNtYWxsLTYsIC5ncmlkLXggPiAuc21hbGwtNywgLmdyaWQteCA+IC5zbWFsbC04LCAuZ3JpZC14ID4gLnNtYWxsLTksIC5ncmlkLXggPiAuc21hbGwtMTAsIC5ncmlkLXggPiAuc21hbGwtMTEsIC5ncmlkLXggPiAuc21hbGwtMTIge1xuICBmbGV4LWJhc2lzOiBhdXRvOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluaywgLmdyaWQteCA+IC5tZWRpdW0tZnVsbCwgLmdyaWQteCA+IC5tZWRpdW0tMSwgLmdyaWQteCA+IC5tZWRpdW0tMiwgLmdyaWQteCA+IC5tZWRpdW0tMywgLmdyaWQteCA+IC5tZWRpdW0tNCwgLmdyaWQteCA+IC5tZWRpdW0tNSwgLmdyaWQteCA+IC5tZWRpdW0tNiwgLmdyaWQteCA+IC5tZWRpdW0tNywgLmdyaWQteCA+IC5tZWRpdW0tOCwgLmdyaWQteCA+IC5tZWRpdW0tOSwgLmdyaWQteCA+IC5tZWRpdW0tMTAsIC5ncmlkLXggPiAubWVkaXVtLTExLCAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5ncmlkLXggPiAudGFibGV0LXNocmluaywgLmdyaWQteCA+IC50YWJsZXQtZnVsbCwgLmdyaWQteCA+IC50YWJsZXQtMSwgLmdyaWQteCA+IC50YWJsZXQtMiwgLmdyaWQteCA+IC50YWJsZXQtMywgLmdyaWQteCA+IC50YWJsZXQtNCwgLmdyaWQteCA+IC50YWJsZXQtNSwgLmdyaWQteCA+IC50YWJsZXQtNiwgLmdyaWQteCA+IC50YWJsZXQtNywgLmdyaWQteCA+IC50YWJsZXQtOCwgLmdyaWQteCA+IC50YWJsZXQtOSwgLmdyaWQteCA+IC50YWJsZXQtMTAsIC5ncmlkLXggPiAudGFibGV0LTExLCAuZ3JpZC14ID4gLnRhYmxldC0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLmxhcmdlLWZ1bGwsIC5ncmlkLXggPiAubGFyZ2UtMSwgLmdyaWQteCA+IC5sYXJnZS0yLCAuZ3JpZC14ID4gLmxhcmdlLTMsIC5ncmlkLXggPiAubGFyZ2UtNCwgLmdyaWQteCA+IC5sYXJnZS01LCAuZ3JpZC14ID4gLmxhcmdlLTYsIC5ncmlkLXggPiAubGFyZ2UtNywgLmdyaWQteCA+IC5sYXJnZS04LCAuZ3JpZC14ID4gLmxhcmdlLTksIC5ncmlkLXggPiAubGFyZ2UtMTAsIC5ncmlkLXggPiAubGFyZ2UtMTEsIC5ncmlkLXggPiAubGFyZ2UtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2OC43NWVtKSB7XG4gIC5ncmlkLXggPiAueGxhcmdlLXNocmluaywgLmdyaWQteCA+IC54bGFyZ2UtZnVsbCwgLmdyaWQteCA+IC54bGFyZ2UtMSwgLmdyaWQteCA+IC54bGFyZ2UtMiwgLmdyaWQteCA+IC54bGFyZ2UtMywgLmdyaWQteCA+IC54bGFyZ2UtNCwgLmdyaWQteCA+IC54bGFyZ2UtNSwgLmdyaWQteCA+IC54bGFyZ2UtNiwgLmdyaWQteCA+IC54bGFyZ2UtNywgLmdyaWQteCA+IC54bGFyZ2UtOCwgLmdyaWQteCA+IC54bGFyZ2UtOSwgLmdyaWQteCA+IC54bGFyZ2UtMTAsIC5ncmlkLXggPiAueGxhcmdlLTExLCAuZ3JpZC14ID4gLnhsYXJnZS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmdyaWQteCA+IC54eGxhcmdlLXNocmluaywgLmdyaWQteCA+IC54eGxhcmdlLWZ1bGwsIC5ncmlkLXggPiAueHhsYXJnZS0xLCAuZ3JpZC14ID4gLnh4bGFyZ2UtMiwgLmdyaWQteCA+IC54eGxhcmdlLTMsIC5ncmlkLXggPiAueHhsYXJnZS00LCAuZ3JpZC14ID4gLnh4bGFyZ2UtNSwgLmdyaWQteCA+IC54eGxhcmdlLTYsIC5ncmlkLXggPiAueHhsYXJnZS03LCAuZ3JpZC14ID4gLnh4bGFyZ2UtOCwgLmdyaWQteCA+IC54eGxhcmdlLTksIC5ncmlkLXggPiAueHhsYXJnZS0xMCwgLmdyaWQteCA+IC54eGxhcmdlLTExLCAuZ3JpZC14ID4gLnh4bGFyZ2UtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5ncmlkLXggPiAucGhhYmxldC1zaHJpbmssIC5ncmlkLXggPiAucGhhYmxldC1mdWxsLCAuZ3JpZC14ID4gLnBoYWJsZXQtMSwgLmdyaWQteCA+IC5waGFibGV0LTIsIC5ncmlkLXggPiAucGhhYmxldC0zLCAuZ3JpZC14ID4gLnBoYWJsZXQtNCwgLmdyaWQteCA+IC5waGFibGV0LTUsIC5ncmlkLXggPiAucGhhYmxldC02LCAuZ3JpZC14ID4gLnBoYWJsZXQtNywgLmdyaWQteCA+IC5waGFibGV0LTgsIC5ncmlkLXggPiAucGhhYmxldC05LCAuZ3JpZC14ID4gLnBoYWJsZXQtMTAsIC5ncmlkLXggPiAucGhhYmxldC0xMSwgLmdyaWQteCA+IC5waGFibGV0LTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMSB7XG4gIHdpZHRoOiA4LjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTUge1xuICB3aWR0aDogNDEuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNiB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTgge1xuICB3aWR0aDogNjYuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtOSB7XG4gIHdpZHRoOiA3NSU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXggPiAubWVkaXVtLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC14ID4gLm1lZGl1bS0xLCAuZ3JpZC14ID4gLm1lZGl1bS0yLCAuZ3JpZC14ID4gLm1lZGl1bS0zLCAuZ3JpZC14ID4gLm1lZGl1bS00LCAuZ3JpZC14ID4gLm1lZGl1bS01LCAuZ3JpZC14ID4gLm1lZGl1bS02LCAuZ3JpZC14ID4gLm1lZGl1bS03LCAuZ3JpZC14ID4gLm1lZGl1bS04LCAuZ3JpZC14ID4gLm1lZGl1bS05LCAuZ3JpZC14ID4gLm1lZGl1bS0xMCwgLmdyaWQteCA+IC5tZWRpdW0tMTEsIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmdyaWQteCA+IC50YWJsZXQtYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLnRhYmxldC1zaHJpbmssIC5ncmlkLXggPiAudGFibGV0LTEsIC5ncmlkLXggPiAudGFibGV0LTIsIC5ncmlkLXggPiAudGFibGV0LTMsIC5ncmlkLXggPiAudGFibGV0LTQsIC5ncmlkLXggPiAudGFibGV0LTUsIC5ncmlkLXggPiAudGFibGV0LTYsIC5ncmlkLXggPiAudGFibGV0LTcsIC5ncmlkLXggPiAudGFibGV0LTgsIC5ncmlkLXggPiAudGFibGV0LTksIC5ncmlkLXggPiAudGFibGV0LTEwLCAuZ3JpZC14ID4gLnRhYmxldC0xMSwgLmdyaWQteCA+IC50YWJsZXQtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAudGFibGV0LXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAudGFibGV0LTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLnRhYmxldC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAudGFibGV0LTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLnRhYmxldC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAudGFibGV0LTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC50YWJsZXQtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLnRhYmxldC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnRhYmxldC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnRhYmxldC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC14ID4gLmxhcmdlLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXggPiAubGFyZ2UtMSwgLmdyaWQteCA+IC5sYXJnZS0yLCAuZ3JpZC14ID4gLmxhcmdlLTMsIC5ncmlkLXggPiAubGFyZ2UtNCwgLmdyaWQteCA+IC5sYXJnZS01LCAuZ3JpZC14ID4gLmxhcmdlLTYsIC5ncmlkLXggPiAubGFyZ2UtNywgLmdyaWQteCA+IC5sYXJnZS04LCAuZ3JpZC14ID4gLmxhcmdlLTksIC5ncmlkLXggPiAubGFyZ2UtMTAsIC5ncmlkLXggPiAubGFyZ2UtMTEsIC5ncmlkLXggPiAubGFyZ2UtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgLmdyaWQteCA+IC54bGFyZ2UtYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS1zaHJpbmssIC5ncmlkLXggPiAueGxhcmdlLTEsIC5ncmlkLXggPiAueGxhcmdlLTIsIC5ncmlkLXggPiAueGxhcmdlLTMsIC5ncmlkLXggPiAueGxhcmdlLTQsIC5ncmlkLXggPiAueGxhcmdlLTUsIC5ncmlkLXggPiAueGxhcmdlLTYsIC5ncmlkLXggPiAueGxhcmdlLTcsIC5ncmlkLXggPiAueGxhcmdlLTgsIC5ncmlkLXggPiAueGxhcmdlLTksIC5ncmlkLXggPiAueGxhcmdlLTEwLCAuZ3JpZC14ID4gLnhsYXJnZS0xMSwgLmdyaWQteCA+IC54bGFyZ2UtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5ncmlkLXggPiAueHhsYXJnZS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS1zaHJpbmssIC5ncmlkLXggPiAueHhsYXJnZS0xLCAuZ3JpZC14ID4gLnh4bGFyZ2UtMiwgLmdyaWQteCA+IC54eGxhcmdlLTMsIC5ncmlkLXggPiAueHhsYXJnZS00LCAuZ3JpZC14ID4gLnh4bGFyZ2UtNSwgLmdyaWQteCA+IC54eGxhcmdlLTYsIC5ncmlkLXggPiAueHhsYXJnZS03LCAuZ3JpZC14ID4gLnh4bGFyZ2UtOCwgLmdyaWQteCA+IC54eGxhcmdlLTksIC5ncmlkLXggPiAueHhsYXJnZS0xMCwgLmdyaWQteCA+IC54eGxhcmdlLTExLCAuZ3JpZC14ID4gLnh4bGFyZ2UtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnh4bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuZ3JpZC14ID4gLnBoYWJsZXQtYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLnBoYWJsZXQtc2hyaW5rLCAuZ3JpZC14ID4gLnBoYWJsZXQtMSwgLmdyaWQteCA+IC5waGFibGV0LTIsIC5ncmlkLXggPiAucGhhYmxldC0zLCAuZ3JpZC14ID4gLnBoYWJsZXQtNCwgLmdyaWQteCA+IC5waGFibGV0LTUsIC5ncmlkLXggPiAucGhhYmxldC02LCAuZ3JpZC14ID4gLnBoYWJsZXQtNywgLmdyaWQteCA+IC5waGFibGV0LTgsIC5ncmlkLXggPiAucGhhYmxldC05LCAuZ3JpZC14ID4gLnBoYWJsZXQtMTAsIC5ncmlkLXggPiAucGhhYmxldC0xMSwgLmdyaWQteCA+IC5waGFibGV0LTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLnBoYWJsZXQtc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLnBoYWJsZXQtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAucGhhYmxldC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAucGhhYmxldC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLXggPiAucGhhYmxldC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAucGhhYmxldC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAucGhhYmxldC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5ncmlkLXggPiAucGhhYmxldC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAucGhhYmxldC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAucGhhYmxldC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5ncmlkLXggPiAucGhhYmxldC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnBoYWJsZXQtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5waGFibGV0LTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQtbWFyZ2luLXk6bm90KC5ncmlkLXkpID4gLmNlbGwge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmdyaWQtbWFyZ2luLXgge1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTEuMjVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyLjVyZW0pO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5hdXRvIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtc2hyaW5rIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyLjVyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyLjVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjguNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5waGFibGV0LWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5waGFibGV0LXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnBoYWJsZXQtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5waGFibGV0LTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnBoYWJsZXQtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAucGhhYmxldC00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5waGFibGV0LTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnBoYWJsZXQtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAucGhhYmxldC03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5waGFibGV0LTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnBoYWJsZXQtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAucGhhYmxldC0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAucGhhYmxldC0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAucGhhYmxldC0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41cmVtKTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMS4yNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTsgfSB9XG5cbi5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xLjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtOyB9IH1cblxuLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07IH0gfVxuXG4uc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gIHdpZHRoOiAyNSU7IH1cblxuLnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gIHdpZHRoOiAyMCU7IH1cblxuLnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gIHdpZHRoOiAxNC4yODU3MSU7IH1cblxuLnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gIHdpZHRoOiAxMi41JTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLm1lZGl1bS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLm1lZGl1bS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YWJsZXQtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAudGFibGV0LXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAudGFibGV0LXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAudGFibGV0LXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAudGFibGV0LXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAudGFibGV0LXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAudGFibGV0LXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAudGFibGV0LXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAubGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLmxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjguNzVlbSkge1xuICAueGxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnhsYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLnhsYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLnhsYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAueHhsYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnh4bGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLnh4bGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAueHhsYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLnBoYWJsZXQtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucGhhYmxldC11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnBoYWJsZXQtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5waGFibGV0LXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAucGhhYmxldC11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLnBoYWJsZXQtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5waGFibGV0LXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAucGhhYmxldC11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygyMCUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMi41JSAtIDEuMjVyZW0pOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMi41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMi41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMi41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAyLjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXgudGFibGV0LXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgudGFibGV0LXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMi41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC50YWJsZXQtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnRhYmxldC11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgudGFibGV0LXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMi41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC50YWJsZXQtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnRhYmxldC11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgudGFibGV0LXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAyLjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMi41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMi41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMi41cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMi41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMi41cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAyLjVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuZ3JpZC1tYXJnaW4teC54eGxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueHhsYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueHhsYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueHhsYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueHhsYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueHhsYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueHhsYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDIuNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueHhsYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMi41cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXgucGhhYmxldC11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnBoYWJsZXQtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnBoYWJsZXQtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnBoYWJsZXQtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnBoYWJsZXQtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnBoYWJsZXQtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnBoYWJsZXQtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAyLjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnBoYWJsZXQtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDIuNXJlbSk7IH0gfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtMSB7XG4gICAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0yIHtcbiAgICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0zIHtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC00IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC01IHtcbiAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC02IHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC03IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC04IHtcbiAgICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC05IHtcbiAgICAgIHdpZHRoOiA3NSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0xMCB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtMTEge1xuICAgICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTEyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgICAgd2lkdGg6IDc1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2OC43NWVtKSB7XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMSB7XG4gICAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0yIHtcbiAgICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0zIHtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS00IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS01IHtcbiAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS02IHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS03IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS04IHtcbiAgICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS05IHtcbiAgICAgIHdpZHRoOiA3NSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMCB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0yIHtcbiAgICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS01IHtcbiAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS04IHtcbiAgICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtMSB7XG4gICAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC00IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC03IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTkge1xuICAgICAgd2lkdGg6IDc1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC0xMCB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtMTIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uc21hbGwtcGFkZGluZy1jb2xsYXBzZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2OC43NWVtKSB7XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAudGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC50YWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnRhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGFibGV0LXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC50YWJsZXQtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubGFyZ2UtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2OC43NWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjguNzVlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2OC43NWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjguNzVlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgLnhsYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAueGxhcmdlLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLnh4bGFyZ2UtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAudGFibGV0LTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC50YWJsZXQtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnRhYmxldC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAucGhhYmxldC1tYXJnaW4tY29sbGFwc2UgPiAucGhhYmxldC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5waGFibGV0LW1hcmdpbi1jb2xsYXBzZSA+IC5waGFibGV0LTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnBoYWJsZXQtbWFyZ2luLWNvbGxhcHNlID4gLnBoYWJsZXQtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAucGhhYmxldC1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAucGhhYmxldC1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC42MjVyZW0pOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMS4yNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAxLjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMS4yNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDEuMjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAxLjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMS4yNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDEuMjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAxLjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMS4yNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDEuMjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDEuMjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDEuMjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRhYmxldC1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAxLjI1cmVtKTsgfVxuICAudGFibGV0LW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDEuMjVyZW0pOyB9XG4gIC50YWJsZXQtb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAxLjI1cmVtKTsgfVxuICAudGFibGV0LW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMS4yNXJlbSk7IH1cbiAgLnRhYmxldC1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDEuMjVyZW0pOyB9XG4gIC50YWJsZXQtb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAxLjI1cmVtKTsgfVxuICAudGFibGV0LW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMS4yNXJlbSk7IH1cbiAgLnRhYmxldC1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC50YWJsZXQtb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDEuMjVyZW0pOyB9XG4gIC50YWJsZXQtb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAxLjI1cmVtKTsgfVxuICAudGFibGV0LW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnRhYmxldC1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMS4yNXJlbSk7IH1cbiAgLnRhYmxldC1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMS4yNXJlbSk7IH1cbiAgLnRhYmxldC1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAudGFibGV0LW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMS4yNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAxLjI1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAxLjI1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDEuMjVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMS4yNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAxLjI1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDEuMjVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMS4yNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAxLjI1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDEuMjVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMS4yNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDEuMjVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAxLjI1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAxLjI1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDEuMjVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAxLjI1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMS4yNXJlbSk7IH1cbiAgLnhsYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDEuMjVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAxLjI1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMS4yNXJlbSk7IH1cbiAgLnhsYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDEuMjVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAxLjI1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMS4yNXJlbSk7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMS4yNXJlbSk7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMS4yNXJlbSk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAxLjI1cmVtKTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMS4yNXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMS4yNXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMS4yNXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMS4yNXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMS4yNXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMS4yNXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMS4yNXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMS4yNXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMS4yNXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAxLjI1cmVtKTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDEuMjVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAucGhhYmxldC1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnBoYWJsZXQtb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMS4yNXJlbSk7IH1cbiAgLnBoYWJsZXQtb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5waGFibGV0LW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDEuMjVyZW0pOyB9XG4gIC5waGFibGV0LW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnBoYWJsZXQtb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDEuMjVyZW0pOyB9XG4gIC5waGFibGV0LW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnBoYWJsZXQtb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDEuMjVyZW0pOyB9XG4gIC5waGFibGV0LW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnBoYWJsZXQtb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDEuMjVyZW0pOyB9XG4gIC5waGFibGV0LW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnBoYWJsZXQtb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDEuMjVyZW0pOyB9XG4gIC5waGFibGV0LW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnBoYWJsZXQtb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDEuMjVyZW0pOyB9XG4gIC5waGFibGV0LW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnBoYWJsZXQtb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDEuMjVyZW0pOyB9XG4gIC5waGFibGV0LW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnBoYWJsZXQtb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDEuMjVyZW0pOyB9XG4gIC5waGFibGV0LW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnBoYWJsZXQtb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDEuMjVyZW0pOyB9XG4gIC5waGFibGV0LW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5waGFibGV0LW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMS4yNXJlbSk7IH1cbiAgLnBoYWJsZXQtb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnBoYWJsZXQtb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAxLjI1cmVtKTsgfSB9XG5cbi5ncmlkLXkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cbiAgLmdyaWQteSA+IC5jZWxsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgLmdyaWQteSA+IC5hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQteSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLXNocmluaywgLmdyaWQteSA+IC5zbWFsbC1mdWxsLCAuZ3JpZC15ID4gLnNtYWxsLTEsIC5ncmlkLXkgPiAuc21hbGwtMiwgLmdyaWQteSA+IC5zbWFsbC0zLCAuZ3JpZC15ID4gLnNtYWxsLTQsIC5ncmlkLXkgPiAuc21hbGwtNSwgLmdyaWQteSA+IC5zbWFsbC02LCAuZ3JpZC15ID4gLnNtYWxsLTcsIC5ncmlkLXkgPiAuc21hbGwtOCwgLmdyaWQteSA+IC5zbWFsbC05LCAuZ3JpZC15ID4gLnNtYWxsLTEwLCAuZ3JpZC15ID4gLnNtYWxsLTExLCAuZ3JpZC15ID4gLnNtYWxsLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC15ID4gLm1lZGl1bS1mdWxsLCAuZ3JpZC15ID4gLm1lZGl1bS0xLCAuZ3JpZC15ID4gLm1lZGl1bS0yLCAuZ3JpZC15ID4gLm1lZGl1bS0zLCAuZ3JpZC15ID4gLm1lZGl1bS00LCAuZ3JpZC15ID4gLm1lZGl1bS01LCAuZ3JpZC15ID4gLm1lZGl1bS02LCAuZ3JpZC15ID4gLm1lZGl1bS03LCAuZ3JpZC15ID4gLm1lZGl1bS04LCAuZ3JpZC15ID4gLm1lZGl1bS05LCAuZ3JpZC15ID4gLm1lZGl1bS0xMCwgLmdyaWQteSA+IC5tZWRpdW0tMTEsIC5ncmlkLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ncmlkLXkgPiAudGFibGV0LXNocmluaywgLmdyaWQteSA+IC50YWJsZXQtZnVsbCwgLmdyaWQteSA+IC50YWJsZXQtMSwgLmdyaWQteSA+IC50YWJsZXQtMiwgLmdyaWQteSA+IC50YWJsZXQtMywgLmdyaWQteSA+IC50YWJsZXQtNCwgLmdyaWQteSA+IC50YWJsZXQtNSwgLmdyaWQteSA+IC50YWJsZXQtNiwgLmdyaWQteSA+IC50YWJsZXQtNywgLmdyaWQteSA+IC50YWJsZXQtOCwgLmdyaWQteSA+IC50YWJsZXQtOSwgLmdyaWQteSA+IC50YWJsZXQtMTAsIC5ncmlkLXkgPiAudGFibGV0LTExLCAuZ3JpZC15ID4gLnRhYmxldC0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC15ID4gLmxhcmdlLXNocmluaywgLmdyaWQteSA+IC5sYXJnZS1mdWxsLCAuZ3JpZC15ID4gLmxhcmdlLTEsIC5ncmlkLXkgPiAubGFyZ2UtMiwgLmdyaWQteSA+IC5sYXJnZS0zLCAuZ3JpZC15ID4gLmxhcmdlLTQsIC5ncmlkLXkgPiAubGFyZ2UtNSwgLmdyaWQteSA+IC5sYXJnZS02LCAuZ3JpZC15ID4gLmxhcmdlLTcsIC5ncmlkLXkgPiAubGFyZ2UtOCwgLmdyaWQteSA+IC5sYXJnZS05LCAuZ3JpZC15ID4gLmxhcmdlLTEwLCAuZ3JpZC15ID4gLmxhcmdlLTExLCAuZ3JpZC15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2OC43NWVtKSB7XG4gICAgLmdyaWQteSA+IC54bGFyZ2Utc2hyaW5rLCAuZ3JpZC15ID4gLnhsYXJnZS1mdWxsLCAuZ3JpZC15ID4gLnhsYXJnZS0xLCAuZ3JpZC15ID4gLnhsYXJnZS0yLCAuZ3JpZC15ID4gLnhsYXJnZS0zLCAuZ3JpZC15ID4gLnhsYXJnZS00LCAuZ3JpZC15ID4gLnhsYXJnZS01LCAuZ3JpZC15ID4gLnhsYXJnZS02LCAuZ3JpZC15ID4gLnhsYXJnZS03LCAuZ3JpZC15ID4gLnhsYXJnZS04LCAuZ3JpZC15ID4gLnhsYXJnZS05LCAuZ3JpZC15ID4gLnhsYXJnZS0xMCwgLmdyaWQteSA+IC54bGFyZ2UtMTEsIC5ncmlkLXkgPiAueGxhcmdlLTEyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLXNocmluaywgLmdyaWQteSA+IC54eGxhcmdlLWZ1bGwsIC5ncmlkLXkgPiAueHhsYXJnZS0xLCAuZ3JpZC15ID4gLnh4bGFyZ2UtMiwgLmdyaWQteSA+IC54eGxhcmdlLTMsIC5ncmlkLXkgPiAueHhsYXJnZS00LCAuZ3JpZC15ID4gLnh4bGFyZ2UtNSwgLmdyaWQteSA+IC54eGxhcmdlLTYsIC5ncmlkLXkgPiAueHhsYXJnZS03LCAuZ3JpZC15ID4gLnh4bGFyZ2UtOCwgLmdyaWQteSA+IC54eGxhcmdlLTksIC5ncmlkLXkgPiAueHhsYXJnZS0xMCwgLmdyaWQteSA+IC54eGxhcmdlLTExLCAuZ3JpZC15ID4gLnh4bGFyZ2UtMTIge1xuICAgICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAuZ3JpZC15ID4gLnBoYWJsZXQtc2hyaW5rLCAuZ3JpZC15ID4gLnBoYWJsZXQtZnVsbCwgLmdyaWQteSA+IC5waGFibGV0LTEsIC5ncmlkLXkgPiAucGhhYmxldC0yLCAuZ3JpZC15ID4gLnBoYWJsZXQtMywgLmdyaWQteSA+IC5waGFibGV0LTQsIC5ncmlkLXkgPiAucGhhYmxldC01LCAuZ3JpZC15ID4gLnBoYWJsZXQtNiwgLmdyaWQteSA+IC5waGFibGV0LTcsIC5ncmlkLXkgPiAucGhhYmxldC04LCAuZ3JpZC15ID4gLnBoYWJsZXQtOSwgLmdyaWQteSA+IC5waGFibGV0LTEwLCAuZ3JpZC15ID4gLnBoYWJsZXQtMTEsIC5ncmlkLXkgPiAucGhhYmxldC0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xLCAuZ3JpZC15ID4gLnNtYWxsLTIsIC5ncmlkLXkgPiAuc21hbGwtMywgLmdyaWQteSA+IC5zbWFsbC00LCAuZ3JpZC15ID4gLnNtYWxsLTUsIC5ncmlkLXkgPiAuc21hbGwtNiwgLmdyaWQteSA+IC5zbWFsbC03LCAuZ3JpZC15ID4gLnNtYWxsLTgsIC5ncmlkLXkgPiAuc21hbGwtOSwgLmdyaWQteSA+IC5zbWFsbC0xMCwgLmdyaWQteSA+IC5zbWFsbC0xMSwgLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IDI1JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTQge1xuICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IDUwJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTcge1xuICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IDc1JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXkgPiAubWVkaXVtLTEsIC5ncmlkLXkgPiAubWVkaXVtLTIsIC5ncmlkLXkgPiAubWVkaXVtLTMsIC5ncmlkLXkgPiAubWVkaXVtLTQsIC5ncmlkLXkgPiAubWVkaXVtLTUsIC5ncmlkLXkgPiAubWVkaXVtLTYsIC5ncmlkLXkgPiAubWVkaXVtLTcsIC5ncmlkLXkgPiAubWVkaXVtLTgsIC5ncmlkLXkgPiAubWVkaXVtLTksIC5ncmlkLXkgPiAubWVkaXVtLTEwLCAuZ3JpZC15ID4gLm1lZGl1bS0xMSwgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZ3JpZC15ID4gLnRhYmxldC1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC1zaHJpbmssIC5ncmlkLXkgPiAudGFibGV0LTEsIC5ncmlkLXkgPiAudGFibGV0LTIsIC5ncmlkLXkgPiAudGFibGV0LTMsIC5ncmlkLXkgPiAudGFibGV0LTQsIC5ncmlkLXkgPiAudGFibGV0LTUsIC5ncmlkLXkgPiAudGFibGV0LTYsIC5ncmlkLXkgPiAudGFibGV0LTcsIC5ncmlkLXkgPiAudGFibGV0LTgsIC5ncmlkLXkgPiAudGFibGV0LTksIC5ncmlkLXkgPiAudGFibGV0LTEwLCAuZ3JpZC15ID4gLnRhYmxldC0xMSwgLmdyaWQteSA+IC50YWJsZXQtMTIge1xuICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC50YWJsZXQtMSB7XG4gICAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC50YWJsZXQtMiB7XG4gICAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAudGFibGV0LTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC00IHtcbiAgICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC50YWJsZXQtNSB7XG4gICAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAudGFibGV0LTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC03IHtcbiAgICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC50YWJsZXQtOCB7XG4gICAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAudGFibGV0LTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLnRhYmxldC0xMCB7XG4gICAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAudGFibGV0LTExIHtcbiAgICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC50YWJsZXQtMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC15ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgZmxleDogMSAxIDBweDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC15ID4gLmxhcmdlLTEsIC5ncmlkLXkgPiAubGFyZ2UtMiwgLmdyaWQteSA+IC5sYXJnZS0zLCAuZ3JpZC15ID4gLmxhcmdlLTQsIC5ncmlkLXkgPiAubGFyZ2UtNSwgLmdyaWQteSA+IC5sYXJnZS02LCAuZ3JpZC15ID4gLmxhcmdlLTcsIC5ncmlkLXkgPiAubGFyZ2UtOCwgLmdyaWQteSA+IC5sYXJnZS05LCAuZ3JpZC15ID4gLmxhcmdlLTEwLCAuZ3JpZC15ID4gLmxhcmdlLTExLCAuZ3JpZC15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjguNzVlbSkge1xuICAgIC5ncmlkLXkgPiAueGxhcmdlLWF1dG8ge1xuICAgICAgZmxleDogMSAxIDBweDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLXNocmluaywgLmdyaWQteSA+IC54bGFyZ2UtMSwgLmdyaWQteSA+IC54bGFyZ2UtMiwgLmdyaWQteSA+IC54bGFyZ2UtMywgLmdyaWQteSA+IC54bGFyZ2UtNCwgLmdyaWQteSA+IC54bGFyZ2UtNSwgLmdyaWQteSA+IC54bGFyZ2UtNiwgLmdyaWQteSA+IC54bGFyZ2UtNywgLmdyaWQteSA+IC54bGFyZ2UtOCwgLmdyaWQteSA+IC54bGFyZ2UtOSwgLmdyaWQteSA+IC54bGFyZ2UtMTAsIC5ncmlkLXkgPiAueGxhcmdlLTExLCAuZ3JpZC15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLWF1dG8ge1xuICAgICAgZmxleDogMSAxIDBweDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAueHhsYXJnZS0xLCAuZ3JpZC15ID4gLnh4bGFyZ2UtMiwgLmdyaWQteSA+IC54eGxhcmdlLTMsIC5ncmlkLXkgPiAueHhsYXJnZS00LCAuZ3JpZC15ID4gLnh4bGFyZ2UtNSwgLmdyaWQteSA+IC54eGxhcmdlLTYsIC5ncmlkLXkgPiAueHhsYXJnZS03LCAuZ3JpZC15ID4gLnh4bGFyZ2UtOCwgLmdyaWQteSA+IC54eGxhcmdlLTksIC5ncmlkLXkgPiAueHhsYXJnZS0xMCwgLmdyaWQteSA+IC54eGxhcmdlLTExLCAuZ3JpZC15ID4gLnh4bGFyZ2UtMTIge1xuICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS0zIHtcbiAgICAgIGhlaWdodDogMjUlOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS02IHtcbiAgICAgIGhlaWdodDogNTAlOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS05IHtcbiAgICAgIGhlaWdodDogNzUlOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAuZ3JpZC15ID4gLnBoYWJsZXQtYXV0byB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5waGFibGV0LXNocmluaywgLmdyaWQteSA+IC5waGFibGV0LTEsIC5ncmlkLXkgPiAucGhhYmxldC0yLCAuZ3JpZC15ID4gLnBoYWJsZXQtMywgLmdyaWQteSA+IC5waGFibGV0LTQsIC5ncmlkLXkgPiAucGhhYmxldC01LCAuZ3JpZC15ID4gLnBoYWJsZXQtNiwgLmdyaWQteSA+IC5waGFibGV0LTcsIC5ncmlkLXkgPiAucGhhYmxldC04LCAuZ3JpZC15ID4gLnBoYWJsZXQtOSwgLmdyaWQteSA+IC5waGFibGV0LTEwLCAuZ3JpZC15ID4gLnBoYWJsZXQtMTEsIC5ncmlkLXkgPiAucGhhYmxldC0xMiB7XG4gICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAucGhhYmxldC1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5waGFibGV0LTEge1xuICAgICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAucGhhYmxldC0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5waGFibGV0LTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLnBoYWJsZXQtNCB7XG4gICAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAucGhhYmxldC01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5waGFibGV0LTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLnBoYWJsZXQtNyB7XG4gICAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAucGhhYmxldC04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5waGFibGV0LTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLnBoYWJsZXQtMTAge1xuICAgICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnBoYWJsZXQtMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnBoYWJsZXQtMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gIG1hcmdpbi10b3A6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMS4yNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xLjI1cmVtOyB9IH1cblxuLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICBwYWRkaW5nLXRvcDogMC42MjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEuMjVyZW07IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSB7XG4gIG1hcmdpbi10b3A6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTEuMjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMS4yNXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi41cmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNXJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjVyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2OC43NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi41cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAucGhhYmxldC1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAucGhhYmxldC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAucGhhYmxldC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnBoYWJsZXQtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjVyZW0pOyB9IH1cblxuLmdyaWQtZnJhbWUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMHZ3OyB9XG5cbi5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNlbGwtYmxvY2sge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cblxuLmNlbGwtYmxvY2steSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cblxuLmNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAuY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMHZ3OyB9XG4gIC5jZWxsIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YWJsZXQtZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMHZ3OyB9XG4gIC5jZWxsIC50YWJsZXQtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnRhYmxldC1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLnRhYmxldC1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAudGFibGV0LWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLnRhYmxldC1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC5sYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgLnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAueGxhcmdlLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAueGxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC54bGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAueGxhcmdlLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLnh4bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnh4bGFyZ2UtY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC54eGxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC54eGxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLnh4bGFyZ2UtY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5waGFibGV0LWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dzsgfVxuICAuY2VsbCAucGhhYmxldC1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucGhhYmxldC1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLnBoYWJsZXQtY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gICAgLnBoYWJsZXQtY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAucGhhYmxldC1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbi5ncmlkLXkuZ3JpZC1mcmFtZSB7XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgaGVpZ2h0OiAxMDB2aDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmdyaWQteS50YWJsZXQtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAxMDB2aDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAxMDB2aDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgLmdyaWQteS54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAxMDB2aDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmdyaWQteS54eGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5ncmlkLXkucGhhYmxldC1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9IH1cblxuLmNlbGwgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkudGFibGV0LWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjguNzVlbSkge1xuICAuY2VsbCAuZ3JpZC15LnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkueHhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkucGhhYmxldC1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSB7XG4gIG1hcmdpbi10b3A6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTEuMjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMS4yNXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi41cmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNXJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnRhYmxldC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAudGFibGV0LTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC50YWJsZXQtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjVyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2OC43NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi41cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAucGhhYmxldC1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAucGhhYmxldC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5waGFibGV0LTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAyLjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAucGhhYmxldC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMi41cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnBoYWJsZXQtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjVyZW0pOyB9IH1cblxuLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gIGhlaWdodDogY2FsYygxMDB2aCArIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAyLjVyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDIuNXJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMi41cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDIuNXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAyLjVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMi41cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAyLjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkudGFibGV0LWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDIuNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAyLjVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjguNzVlbSkge1xuICAuZ3JpZC1tYXJnaW4teS54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMi41cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkueHhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAyLjVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuZ3JpZC1tYXJnaW4teS5waGFibGV0LWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDIuNXJlbSk7IH0gfVxuXG5kaXYsXG5kbCxcbmR0LFxuZGQsXG51bCxcbm9sLFxubGksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wcmUsXG5mb3JtLFxucCxcbmJsb2NrcXVvdGUsXG50aCxcbnRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbnAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cblxuZW0sXG5pIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5zdHJvbmcsXG5iIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyxcbmg0LCAuaDQsXG5oNSwgLmg1LFxuaDYsIC5oNiB7XG4gIGZvbnQtZmFtaWx5OiBcIm11c2VvLXNhbnNcIiwgXCJBdmVuaXIgTmV4dFwiLCBcIlZlcmRhbmFcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuICBoMSBzbWFsbCwgLmgxIHNtYWxsLFxuICBoMiBzbWFsbCwgLmgyIHNtYWxsLFxuICBoMyBzbWFsbCwgLmgzIHNtYWxsLFxuICBoNCBzbWFsbCwgLmg0IHNtYWxsLFxuICBoNSBzbWFsbCwgLmg1IHNtYWxsLFxuICBoNiBzbWFsbCwgLmg2IHNtYWxsIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBjb2xvcjogI2NhY2FjYTsgfVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNSwgLmg1IHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNiwgLmg2IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiAzcmVtOyB9XG4gIGgyLCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9XG4gIGgzLCAuaDMge1xuICAgIGZvbnQtc2l6ZTogMS45Mzc1cmVtOyB9XG4gIGg0LCAuaDQge1xuICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtOyB9XG4gIGg1LCAuaDUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICBoNiwgLmg2IHtcbiAgICBmb250LXNpemU6IDFyZW07IH0gfVxuXG5hIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjMGI4NzkzO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzA5NzQ3ZTsgfVxuICBhIGltZyB7XG4gICAgYm9yZGVyOiAwOyB9XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogNjguNzVyZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxubGkge1xuICBmb250LXNpemU6IGluaGVyaXQ7IH1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyB9XG5cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cblxudWwgdWwsIG9sIHVsLCB1bCBvbCwgb2wgb2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgZGwgZHQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDEuMjVyZW0gMCAxLjE4NzVyZW07XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NhY2FjYTsgfVxuICBibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICM4YThhOGE7IH1cblxuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgY29sb3I6ICM4YThhOGE7IH1cbiAgY2l0ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oCUIFwiOyB9XG5cbmFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjMGEwYTBhO1xuICBjdXJzb3I6IGhlbHA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7IH1cblxuY29kZSB7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwLjA2MjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICM4YThhOGE7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEyNSU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgcCArIC5zdGF0IHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbTsgfVxuXG51bC5uby1idWxsZXQsIG9sLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRhYmxldC10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnRhYmxldC10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAudGFibGV0LXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnRhYmxldC10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5sYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjguNzVlbSkge1xuICAueGxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAueGxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC54bGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAueGxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC54eGxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC54eGxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnh4bGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAucGhhYmxldC10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnBoYWJsZXQtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnBoYWJsZXQtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAucGhhYmxldC10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmhpZGUtZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdGhlYWQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRib2R5LnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0ci5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICB0aC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgYVtocmVmXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7IH1cbiAgLmlyIGE6YWZ0ZXIsXG4gIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gIGFbaHJlZl49JyMnXTphZnRlciB7XG4gICAgY29udGVudDogJyc7IH1cbiAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgQHBhZ2Uge1xuICAgIG1hcmdpbjogMC41Y207IH1cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMzsgfVxuICBoMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG4gIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvOyB9IH1cblxuLmJ1dHRvbiwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDAuODVlbSAxZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBiODc5MztcbiAgY29sb3I6ICNmZWZlZmU7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5idXR0b24sIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmJ1dHRvbjpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTczN2Q7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi50aW55LCAud3AtYmxvY2stYnV0dG9uIC50aW55LndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgZm9udC1zaXplOiAwLjZyZW07IH1cbiAgLmJ1dHRvbi5zbWFsbCwgLndwLWJsb2NrLWJ1dHRvbiAuc21hbGwud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLmJ1dHRvbi5sYXJnZSwgLndwLWJsb2NrLWJ1dHRvbiAubGFyZ2Uud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLmJ1dHRvbi5leHBhbmRlZCwgLndwLWJsb2NrLWJ1dHRvbiAuZXhwYW5kZWQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmJ1dHRvbi5wcmltYXJ5LCAud3AtYmxvY2stYnV0dG9uIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBiODc5MztcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5idXR0b24ucHJpbWFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA5NmM3NjtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5idXR0b24uc2Vjb25kYXJ5LCAud3AtYmxvY2stYnV0dG9uIC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJiMzE2O1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkNzk0MDQ7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuYnV0dG9uLnN1Y2Nlc3MsIC53cC1ibG9jay1idXR0b24gLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmJ1dHRvbi53YXJuaW5nLCAud3AtYmxvY2stYnV0dG9uIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5idXR0b24ud2FybmluZzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24ud2FybmluZzpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5idXR0b24uYWxlcnQsIC53cC1ibG9jay1idXR0b24gLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5idXR0b24uYWxlcnQ6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5hbGVydDpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNTNiMmE7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b25bZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdIHtcbiAgICBvcGFjaXR5OiAwLjI1O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwYjg3OTM7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnksIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0ucHJpbWFyeSB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeSwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnByaW1hcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0ucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwYjg3OTM7XG4gICAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeSwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5zZWNvbmRhcnkge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeSwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5zZWNvbmRhcnksIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJiMzE2O1xuICAgICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3MsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0uc3VjY2VzcyB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5zdWNjZXNzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0uc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS53YXJuaW5nIHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLndhcm5pbmcsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmc6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0ud2FybmluZzpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0LCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLmFsZXJ0IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5hbGVydCwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0uYWxlcnQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi5ob2xsb3csIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMGI4NzkzO1xuICAgIGNvbG9yOiAjMGI4NzkzOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3csIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uaG9sbG93LmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICMwNjQ0NGE7XG4gICAgICBjb2xvcjogIzA2NDQ0YTsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3c6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdzpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93OmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzBiODc5MztcbiAgICAgICAgY29sb3I6ICMwYjg3OTM7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5LCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzBiODc5MztcbiAgICAgIGNvbG9yOiAjMGI4NzkzOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzA2NDQ0YTtcbiAgICAgICAgY29sb3I6ICMwNjQ0NGE7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGI4NzkzO1xuICAgICAgICAgIGNvbG9yOiAjMGI4NzkzOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmYmIzMTY7XG4gICAgICBjb2xvcjogI2ZiYjMxNjsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM4NjVkMDI7XG4gICAgICAgIGNvbG9yOiAjODY1ZDAyOyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZiYjMxNjtcbiAgICAgICAgICBjb2xvcjogI2ZiYjMxNjsgfVxuICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3MsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTU3NTM5O1xuICAgICAgICBjb2xvcjogIzE1NzUzOTsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICAgICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93Lndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93Lndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM2NzI1MWE7XG4gICAgICAgIGNvbG9yOiAjNjcyNTFhOyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgICAgICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAuYnV0dG9uLmNsZWFyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwYjg3OTM7XG4gICAgY29sb3I6ICMwYjg3OTM7IH1cbiAgICAuYnV0dG9uLmNsZWFyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXI6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXI6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzA2NDQ0YTtcbiAgICAgIGNvbG9yOiAjMDY0NDRhOyB9XG4gICAgICAuYnV0dG9uLmNsZWFyOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzBiODc5MztcbiAgICAgICAgY29sb3I6ICMwYjg3OTM7IH1cbiAgICAuYnV0dG9uLmNsZWFyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhcjpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcjpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLmNsZWFyOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnksIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwYjg3OTM7XG4gICAgICBjb2xvcjogIzBiODc5MzsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzA2NDQ0YTtcbiAgICAgICAgY29sb3I6ICMwNjQ0NGE7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwYjg3OTM7XG4gICAgICAgICAgY29sb3I6ICMwYjg3OTM7IH1cbiAgICAgIC5idXR0b24uY2xlYXIucHJpbWFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZiYjMxNjtcbiAgICAgIGNvbG9yOiAjZmJiMzE2OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM4NjVkMDI7XG4gICAgICAgIGNvbG9yOiAjODY1ZDAyOyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZiYjMxNjtcbiAgICAgICAgICBjb2xvcjogI2ZiYjMxNjsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgICAgICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM4MDU3MDA7XG4gICAgICAgIGNvbG9yOiAjODA1NzAwOyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIuYWxlcnQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjNjcyNTFhO1xuICAgICAgICBjb2xvcjogIzY3MjUxYTsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLmFsZXJ0LCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnV0dG9uLmRyb3Bkb3duOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24ud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC40ZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICNmZWZlZmUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMWVtOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZHJvcGRvd24ud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhcjo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMwYjg3OTM7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cucHJpbWFyeTo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmhvbGxvdy5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZHJvcGRvd24ucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnByaW1hcnk6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMwYjg3OTM7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc2Vjb25kYXJ5OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uaG9sbG93LnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmRyb3Bkb3duLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnNlY29uZGFyeTo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZmJiMzE2OyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnN1Y2Nlc3M6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmRyb3Bkb3duLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5zdWNjZXNzOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjM2FkYjc2OyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93Lndhcm5pbmc6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5ob2xsb3cud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmRyb3Bkb3duLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci53YXJuaW5nOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZmZhZTAwOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LmFsZXJ0OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uaG9sbG93LmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZHJvcGRvd24uYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5hbGVydDo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNjYzRiMzc7IH1cbiAgLmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuYXJyb3ctb25seS53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyIHtcbiAgICB0b3A6IC0wLjFlbTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuXG5hLmJ1dHRvbjpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiBhLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgYS5idXR0b246Zm9jdXMsIC53cC1ibG9jay1idXR0b24gYS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuW3R5cGU9J3RleHQnXSwgW3R5cGU9J3Bhc3N3b3JkJ10sIFt0eXBlPSdkYXRlJ10sIFt0eXBlPSdkYXRldGltZSddLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgW3R5cGU9J21vbnRoJ10sIFt0eXBlPSd3ZWVrJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdzZWFyY2gnXSwgW3R5cGU9J3RlbCddLCBbdHlwZT0ndGltZSddLCBbdHlwZT0ndXJsJ10sIFt0eXBlPSdjb2xvciddLFxudGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDEwLCAxMCwgMTAsIDAuMSk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuICBbdHlwZT0ndGV4dCddOmZvY3VzLCBbdHlwZT0ncGFzc3dvcmQnXTpmb2N1cywgW3R5cGU9J2RhdGUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmZvY3VzLCBbdHlwZT0nbW9udGgnXTpmb2N1cywgW3R5cGU9J3dlZWsnXTpmb2N1cywgW3R5cGU9J2VtYWlsJ106Zm9jdXMsIFt0eXBlPSdudW1iZXInXTpmb2N1cywgW3R5cGU9J3NlYXJjaCddOmZvY3VzLCBbdHlwZT0ndGVsJ106Zm9jdXMsIFt0eXBlPSd0aW1lJ106Zm9jdXMsIFt0eXBlPSd1cmwnXTpmb2N1cywgW3R5cGU9J2NvbG9yJ106Zm9jdXMsXG4gIHRleHRhcmVhOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4ICNjYWNhY2E7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cblxudGV4dGFyZWEge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgdGV4dGFyZWFbcm93c10ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuXG5pbnB1dDpkaXNhYmxlZCwgaW5wdXRbcmVhZG9ubHldLFxudGV4dGFyZWE6ZGlzYWJsZWQsXG50ZXh0YXJlYVtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cblt0eXBlPSdzdWJtaXQnXSxcblt0eXBlPSdidXR0b24nXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuaW5wdXRbdHlwZT0nc2VhcmNoJ10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NhY2FjYTsgfVxuXG5bdHlwZT0nZmlsZSddLFxuW3R5cGU9J2NoZWNrYm94J10sXG5bdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbjogMCAwIDFyZW07IH1cblxuW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcblt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWxbZm9yXSxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbFtmb3JdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxubGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbmxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuXG5bdHlwZT0nZmlsZSddIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS44O1xuICBjb2xvcjogIzBhMGEwYTsgfVxuICBsYWJlbC5taWRkbGUge1xuICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgcGFkZGluZzogMC41NjI1cmVtIDA7IH1cblxuLmhlbHAtdGV4dCB7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG5cbi5pbnB1dC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuICAuaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG4gIC5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5pbnB1dC1ncm91cC1sYWJlbCwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtYnV0dG9uLCAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmlucHV0LWdyb3VwLWxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7IH1cbiAgLmlucHV0LWdyb3VwLWxhYmVsOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1sZWZ0OiAwOyB9XG5cbi5pbnB1dC1ncm91cC1maWVsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZsZXg6IDEgMSAwcHg7XG4gIG1pbi13aWR0aDogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5pbnB1dC1ncm91cC1idXR0b24gYSxcbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4gIC5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwOyB9XG5cbmxlZ2VuZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbi5maWVsZHNldCB7XG4gIG1hcmdpbjogMS4xMjVyZW0gMDtcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTsgfVxuICAuZmllbGRzZXQgbGVnZW5kIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjE4NzVyZW07XG4gICAgcGFkZGluZzogMCAwLjE4NzVyZW07IH1cblxuc2VsZWN0IHtcbiAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4MTM4LCAxMzgsIDEzOCUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAtMXJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gICAgc2VsZWN0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT1cIik7IH0gfVxuICBzZWxlY3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggI2NhY2FjYTtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuICBzZWxlY3Q6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgc2VsZWN0W211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cykge1xuICBib3JkZXItY29sb3I6ICNjYzRiMzc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWVjZWE7IH1cbiAgLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cyk6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2NjNGIzNzsgfVxuXG4uaXMtaW52YWxpZC1sYWJlbCB7XG4gIGNvbG9yOiAjY2M0YjM3OyB9XG5cbi5mb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNjYzRiMzc7IH1cbiAgLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgLmFjY29yZGlvbltkaXNhYmxlZF0gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5hY2NvcmRpb24tdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMGI4NzkzOyB9XG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cbiAgLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgIGNvbnRlbnQ6ICcrJzsgfVxuICAuaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMDEzJzsgfVxuXG4uYWNjb3JkaW9uLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuICA6bGFzdC1jaGlsZCA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgbGkge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudSAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUuYWxpZ24tcmlnaHQgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmVmZWZlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgIHJpZ2h0OiAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1sZWZ0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAxcmVtO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1yaWdodCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMXJlbTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gPiBhOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7IH1cblxuLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaGFzLXN1Ym1lbnUtdG9nZ2xlID4gYSB7XG4gIG1hcmdpbi1yaWdodDogNDBweDsgfVxuXG4uc3VibWVudS10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuc3VibWVudS10b2dnbGU6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICNmZWZlZmUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBtYXJnaW46IGF1dG87IH1cblxuLnN1Ym1lbnUtdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9J3RydWUnXTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7IH1cblxuLnN1Ym1lbnUtdG9nZ2xlLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDsgfVxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMi4xZW07XG4gIHBhZGRpbmc6IDAuM2VtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5iYWRnZS5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5iYWRnZS5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQ6ICNmYmIzMTY7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmJhZGdlLnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQ6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmJhZGdlLndhcm5pbmcge1xuICAgIGJhY2tncm91bmQ6ICNmZmFlMDA7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmJhZGdlLmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kOiAjY2M0YjM3O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG5cbi5icmVhZGNydW1icyB7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAuYnJlYWRjcnVtYnM6OmJlZm9yZSwgLmJyZWFkY3J1bWJzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmJyZWFkY3J1bWJzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmJyZWFkY3J1bWJzIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgICBjb2xvcjogIzBhMGEwYTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5icmVhZGNydW1icyBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW46IDAgMC43NXJlbTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBjb250ZW50OiBcIi9cIjtcbiAgICAgIGNvbG9yOiAjY2FjYWNhOyB9XG4gIC5icmVhZGNydW1icyBhIHtcbiAgICBjb2xvcjogIzBiODc5MzsgfVxuICAgIC5icmVhZGNydW1icyBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5icmVhZGNydW1icyAuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAjY2FjYWNhO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLmJ1dHRvbi1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuICAuYnV0dG9uLWdyb3VwOjpiZWZvcmUsIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAuYnV0dG9uLWdyb3VwOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmJ1dHRvbi1ncm91cCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuYnV0dG9uLWdyb3VwIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmJ1dHRvbi1ncm91cC50aW55IC5idXR0b24sIC5idXR0b24tZ3JvdXAudGlueSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC50aW55IC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogMC42cmVtOyB9XG4gIC5idXR0b24tZ3JvdXAuc21hbGwgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zbWFsbCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zbWFsbCAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLmJ1dHRvbi1ncm91cC5sYXJnZSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmxhcmdlIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmxhcmdlIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgZmxleDogMSAxIDBweDsgfVxuICAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBiODc5MztcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAucHJpbWFyeSAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDk2Yzc2O1xuICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmIzMTY7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q3OTQwNDtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAud2FybmluZyAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmFsZXJ0IC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuYWxlcnQgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmFsZXJ0IC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgZmxleDogMCAwIDEwMCU7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAud3AtYmxvY2stYnV0dG9uX19saW5rOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4uY2FsbG91dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNhbGxvdXQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmNhbGxvdXQgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuY2FsbG91dC5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2VmN2ZiO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5jYWxsb3V0LnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZjRkYztcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuY2FsbG91dC5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTFmYWVhO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5jYWxsb3V0Lndhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYzZDk7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNhbGxvdXQuYWxlcnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2U0ZTE7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNhbGxvdXQuc21hbGwge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH1cbiAgLmNhbGxvdXQubGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtOyB9XG5cbi5jYXJkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1ncm93OiAxO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuICAuY2FyZCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkLWRpdmlkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDEgYXV0bztcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjsgfVxuICAuY2FyZC1kaXZpZGVyID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcmQtc2VjdGlvbiB7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBwYWRkaW5nOiAxcmVtOyB9XG4gIC5jYXJkLXNlY3Rpb24gPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY2FyZC1pbWFnZSB7XG4gIG1pbi1oZWlnaHQ6IDFweDsgfVxuXG4uY2xvc2UtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogIzhhOGE4YTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuY2xvc2UtYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5jbG9zZS1idXR0b246aG92ZXIsIC5jbG9zZS1idXR0b246Zm9jdXMge1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5jbG9zZS1idXR0b24uc21hbGwge1xuICAgIHJpZ2h0OiAwLjY2cmVtO1xuICAgIHRvcDogMC4zM2VtO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLmNsb3NlLWJ1dHRvbiwgLmNsb3NlLWJ1dHRvbi5tZWRpdW0ge1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIHRvcDogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi5tZW51IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm1lbnUgbGkge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm1lbnUgYSxcbiAgLm1lbnUgLmJ1dHRvbixcbiAgLm1lbnUgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLFxuICAud3AtYmxvY2stYnV0dG9uIC5tZW51IC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuICAubWVudSBpbnB1dCxcbiAgLm1lbnUgc2VsZWN0LFxuICAubWVudSBhLFxuICAubWVudSBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm1lbnUgaW5wdXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAubWVudSwgLm1lbnUuaG9yaXpvbnRhbCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLm1lbnUudmVydGljYWwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLm1lbnUuZXhwYW5kZWQgbGkge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgLm1lbnUuc2ltcGxlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLm1lbnUuc2ltcGxlIGxpICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbiAgICAubWVudS5zaW1wbGUgYSB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lbnUubWVkaXVtLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5tZW51Lm1lZGl1bS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS5tZWRpdW0tZXhwYW5kZWQgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfVxuICAgIC5tZW51Lm1lZGl1bS1zaW1wbGUgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm1lbnUudGFibGV0LWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5tZW51LnRhYmxldC12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS50YWJsZXQtZXhwYW5kZWQgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfVxuICAgIC5tZW51LnRhYmxldC1zaW1wbGUgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLm1lbnUubGFyZ2UtdmVydGljYWwge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLm1lbnUubGFyZ2UtZXhwYW5kZWQgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfVxuICAgIC5tZW51LmxhcmdlLXNpbXBsZSBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjguNzVlbSkge1xuICAgIC5tZW51LnhsYXJnZS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAubWVudS54bGFyZ2UtdmVydGljYWwge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLm1lbnUueGxhcmdlLWV4cGFuZGVkIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgICAubWVudS54bGFyZ2Utc2ltcGxlIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAubWVudS54eGxhcmdlLXZlcnRpY2FsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5tZW51Lnh4bGFyZ2UtZXhwYW5kZWQgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfVxuICAgIC5tZW51Lnh4bGFyZ2Utc2ltcGxlIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLm1lbnUucGhhYmxldC1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAubWVudS5waGFibGV0LXZlcnRpY2FsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5tZW51LnBoYWJsZXQtZXhwYW5kZWQgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfVxuICAgIC5tZW51LnBoYWJsZXQtc2ltcGxlIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuICAubWVudS5uZXN0ZWQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICAubWVudS5pY29ucyBhIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5tZW51Lmljb24tdG9wIGEsIC5tZW51Lmljb24tcmlnaHQgYSwgLm1lbnUuaWNvbi1ib3R0b20gYSwgLm1lbnUuaWNvbi1sZWZ0IGEge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tbGVmdCBsaSBhIGltZyxcbiAgICAubWVudS5pY29uLWxlZnQgbGkgYSBpLFxuICAgIC5tZW51Lmljb24tbGVmdCBsaSBhIHN2ZyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07IH1cbiAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7IH1cbiAgICAubWVudS5pY29uLXJpZ2h0IGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tcmlnaHQgbGkgYSBpLFxuICAgIC5tZW51Lmljb24tcmlnaHQgbGkgYSBzdmcge1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07IH1cbiAgLm1lbnUuaWNvbi10b3AgbGkgYSB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi10b3AgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi10b3AgbGkgYSBpLFxuICAgIC5tZW51Lmljb24tdG9wIGxpIGEgc3ZnIHtcbiAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZW51Lmljb24tYm90dG9tIGxpIGEge1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tYm90dG9tIGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tYm90dG9tIGxpIGEgaSxcbiAgICAubWVudS5pY29uLWJvdHRvbSBsaSBhIHN2ZyB7XG4gICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVudSAuaXMtYWN0aXZlID4gYSB7XG4gICAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAubWVudSAuYWN0aXZlID4gYSB7XG4gICAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAubWVudS5hbGlnbi1sZWZ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLm1lbnUuYWxpZ24tcmlnaHQgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAgIC5tZW51LmFsaWduLXJpZ2h0IGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAubWVudS5hbGlnbi1yaWdodC52ZXJ0aWNhbCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAubWVudS5hbGlnbi1yaWdodC52ZXJ0aWNhbCBsaSAuc3VibWVudSBsaSB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubWVudS5hbGlnbi1yaWdodCAubmVzdGVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLm1lbnUuYWxpZ24tY2VudGVyIGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLm1lbnUuYWxpZ24tY2VudGVyIGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAubWVudSAubWVudS10ZXh0IHtcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuXG4ubWVudS1jZW50ZXJlZCA+IC5tZW51IHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLm1lbnUtY2VudGVyZWQgPiAubWVudSBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5tZW51LWNlbnRlcmVkID4gLm1lbnUgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubWVudS1pY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAubWVudS1pY29uOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjZmVmZWZlLCAwIDE0cHggMCAjZmVmZWZlO1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5tZW51LWljb246aG92ZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjY2FjYWNhO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgI2NhY2FjYSwgMCAxNHB4IDAgI2NhY2FjYTsgfVxuXG4ubWVudS1pY29uLmRhcmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5tZW51LWljb24uZGFyazo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgIzBhMGEwYSwgMCAxNHB4IDAgIzBhMGEwYTtcbiAgICBjb250ZW50OiAnJzsgfVxuICAubWVudS1pY29uLmRhcms6aG92ZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjOGE4YThhO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgIzhhOGE4YSwgMCAxNHB4IDAgIzhhOGE4YTsgfVxuXG4uaXMtZHJpbGxkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5pcy1kcmlsbGRvd24gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5pcy1kcmlsbGRvd24uYW5pbWF0ZS1oZWlnaHQge1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjVzOyB9XG5cbi5kcmlsbGRvd24gYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlOyB9XG5cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHotaW5kZXg6IC0xO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjsgfVxuICAuZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1hY3RpdmUge1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsgfVxuICAuZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1jbG9zaW5nIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cbiAgLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUgYSB7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cblxuLmRyaWxsZG93biAubmVzdGVkLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uZHJpbGxkb3duIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7IH1cblxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMGI4NzkzO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgIHJpZ2h0OiAxcmVtOyB9XG5cbi5kcmlsbGRvd24uYWxpZ24tbGVmdCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMGI4NzkzO1xuICByaWdodDogMXJlbTtcbiAgbGVmdDogYXV0bzsgfVxuXG4uZHJpbGxkb3duLmFsaWduLXJpZ2h0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwYjg3OTMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxcmVtOyB9XG5cbi5kcmlsbGRvd24gLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzBiODc5MyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtOyB9XG5cbi5kcm9wZG93bi1wYW5lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDMwMHB4O1xuICBwYWRkaW5nOiAxcmVtO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAuZHJvcGRvd24tcGFuZS5pcy1vcGVuaW5nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuZHJvcGRvd24tcGFuZS5pcy1vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5kcm9wZG93bi1wYW5lLnRpbnkge1xuICB3aWR0aDogMTAwcHg7IH1cblxuLmRyb3Bkb3duLXBhbmUuc21hbGwge1xuICB3aWR0aDogMjAwcHg7IH1cblxuLmRyb3Bkb3duLXBhbmUubGFyZ2Uge1xuICB3aWR0aDogNDAwcHg7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjMGI4NzkzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogNXB4O1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAtM3B4OyB9XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuZHJvcGRvd24ubWVudSBhIHtcbiAgb3V0bGluZTogMDsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpID4gYSB7XG4gIGJhY2tncm91bmQ6ICMyQzM4NDA7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI2U2ZTZlNjsgfVxuXG4ubm8tanMgLmRyb3Bkb3duLm1lbnUgdWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5kcm9wZG93bi5tZW51IC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDE0cHg7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMGI4NzkzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNXB4OyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYjg3OTM7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMwYjg3OTMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwYjg3OTMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4OyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzBiODc5MzsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5kcm9wZG93bi5tZW51LnRhYmxldC1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS50YWJsZXQtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LnRhYmxldC1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gIC5kcm9wZG93bi5tZW51LnRhYmxldC1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMGI4NzkzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5kcm9wZG93bi5tZW51LnRhYmxldC12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUudGFibGV0LXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS50YWJsZXQtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LnRhYmxldC12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51LnRhYmxldC12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMGI4NzkzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDsgfVxuICAuZHJvcGRvd24ubWVudS50YWJsZXQtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYjg3OTM7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMGI4NzkzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzBiODc5MyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYjg3OTM7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2OC43NWVtKSB7XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMGI4NzkzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMGI4NzkzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYjg3OTM7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzBiODc5MyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMGI4NzkzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMGI4NzkzOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuZHJvcGRvd24ubWVudS5waGFibGV0LWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LnBoYWJsZXQtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LnBoYWJsZXQtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS5waGFibGV0LWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMwYjg3OTMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUucGhhYmxldC12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUucGhhYmxldC12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUucGhhYmxldC12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUucGhhYmxldC12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51LnBoYWJsZXQtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzBiODc5MyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUucGhhYmxldC12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzBiODc5MzsgfSB9XG5cbi5kcm9wZG93bi5tZW51LmFsaWduLXJpZ2h0IC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICB3aWR0aDogMTAwcHg7IH1cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwuYWxpZ24tcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC02cHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZDogIzJDMzg0MDsgfVxuICAuZHJvcGRvd24gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgYSB7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzBiODc5MyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzBiODc5MzsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbWFyZ2luLXRvcDogLTFweDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSA+IGxpIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yZXNwb25zaXZlLWVtYmVkLFxuLmZsZXgtdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAucmVzcG9uc2l2ZS1lbWJlZCBpZnJhbWUsXG4gIC5yZXNwb25zaXZlLWVtYmVkIG9iamVjdCxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgZW1iZWQsXG4gIC5yZXNwb25zaXZlLWVtYmVkIHZpZGVvLFxuICAuZmxleC12aWRlbyBpZnJhbWUsXG4gIC5mbGV4LXZpZGVvIG9iamVjdCxcbiAgLmZsZXgtdmlkZW8gZW1iZWQsXG4gIC5mbGV4LXZpZGVvIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5yZXNwb25zaXZlLWVtYmVkLndpZGVzY3JlZW4sXG4gIC5mbGV4LXZpZGVvLndpZGVzY3JlZW4ge1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IH1cblxuLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5sYWJlbC5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5sYWJlbC5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQ6ICNmYmIzMTY7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmxhYmVsLnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQ6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmxhYmVsLndhcm5pbmcge1xuICAgIGJhY2tncm91bmQ6ICNmZmFlMDA7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmxhYmVsLmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kOiAjY2M0YjM3O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG5cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAubWVkaWEtb2JqZWN0IGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAubWVkaWEtb2JqZWN0LnN0YWNrLWZvci1zbWFsbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuXG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uLm1haW4tc2VjdGlvbiB7XG4gICAgZmxleDogMSAxIDBweDsgfVxuXG4uaXMtb2ZmLWNhbnZhcy1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDExO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSwgdmlzaWJpbGl0eSAwLjVzIGVhc2U7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU0LCAyNTQsIDI1NCwgMC4yNSk7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLXZpc2libGUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLWNsb3NhYmxlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1vdmVybGF5LWFic29sdXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1vdmVybGF5LWZpeGVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cblxuLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ub2ZmLWNhbnZhcyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogIzJDMzg0MDsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9mZi1jYW52YXMge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB6LWluZGV4OiAxMjsgfVxuICAub2ZmLWNhbnZhcy5pcy1jbG9zZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICAgIHotaW5kZXg6IDEzOyB9XG4gICAgLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpOyB9XG4gIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG5cbi5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjMkMzODQwOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHotaW5kZXg6IDEyOyB9XG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLWNsb3NlZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gICAgei1pbmRleDogMTM7IH1cbiAgICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDEwLCAxMCwgMTAsIDAuNyk7IH1cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cblxuLnBvc2l0aW9uLWxlZnQge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgd2lkdGg6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1sZWZ0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7IH1cbiAgLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAtMTNweCAwIDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTsgfVxuXG4ucG9zaXRpb24tcmlnaHQge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHdpZHRoOiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tcmlnaHQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMTNweCAwIDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTsgfVxuXG4ucG9zaXRpb24tdG9wIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgaGVpZ2h0OiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3Age1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXRvcC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpOyB9XG4gIC5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIC0xM3B4IDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTsgfVxuXG4ucG9zaXRpb24tYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgaGVpZ2h0OiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tYm90dG9tLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1ib3R0b20uaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMTNweCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7IH1cblxuLm9mZi1jYW52YXMtY29udGVudCB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci10YWJsZXQge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXRhYmxldCAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItdGFibGV0IHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItdGFibGV0IH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItdGFibGV0IHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItdGFibGV0IC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItdGFibGV0IHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItdGFibGV0IH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci10YWJsZXQge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItdGFibGV0IC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXRhYmxldCB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXRhYmxldCB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXRhYmxldCB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci10YWJsZXQgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItdGFibGV0IHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItdGFibGV0IH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtbGVmdCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtYm90dG9tIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14eGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXh4bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteHhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteHhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItcGhhYmxldCB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItcGhhYmxldCAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItcGhhYmxldCB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtbGVmdCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXBoYWJsZXQgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1waGFibGV0IHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItcGhhYmxldCAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXBoYWJsZXQge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1waGFibGV0IH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1waGFibGV0IHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXBoYWJsZXQgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItcGhhYmxldCB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXBoYWJsZXQgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1waGFibGV0IHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXBoYWJsZXQgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItcGhhYmxldCB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtYm90dG9tIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXBoYWJsZXQgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tYm90dG9tIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXRhYmxldCB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXRhYmxldC5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXRhYmxldC5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci10YWJsZXQucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXRhYmxldC5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItdGFibGV0IC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2Uge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjguNzVlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14bGFyZ2UucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14eGxhcmdlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgdHJhbnNpdGlvbjogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteHhsYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXh4bGFyZ2UucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteHhsYXJnZS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteHhsYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteHhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItcGhhYmxldCB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXBoYWJsZXQucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1waGFibGV0LnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXBoYWJsZXQucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXBoYWJsZXQucG9zaXRpb24tYm90dG9tIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXBoYWJsZXQgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm9yYml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5vcmJpdC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5vcmJpdC1zbGlkZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgLm9yYml0LXNsaWRlLm5vLW1vdGlvbnVpLmlzLWFjdGl2ZSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7IH1cblxuLm9yYml0LWZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG4ub3JiaXQtaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7IH1cblxuLm9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC41KTtcbiAgY29sb3I6ICNmZWZlZmU7IH1cblxuLm9yYml0LXByZXZpb3VzLCAub3JiaXQtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGNvbG9yOiAjZmVmZWZlOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub3JiaXQtcHJldmlvdXMsIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub3JiaXQtbmV4dCB7XG4gICAgb3V0bGluZTogMDsgfVxuICAub3JiaXQtcHJldmlvdXM6aG92ZXIsIC5vcmJpdC1uZXh0OmhvdmVyLCAub3JiaXQtcHJldmlvdXM6YWN0aXZlLCAub3JiaXQtbmV4dDphY3RpdmUsIC5vcmJpdC1wcmV2aW91czpmb2N1cywgLm9yYml0LW5leHQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC41KTsgfVxuXG4ub3JiaXQtcHJldmlvdXMge1xuICBsZWZ0OiAwOyB9XG5cbi5vcmJpdC1uZXh0IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7IH1cblxuLm9yYml0LWJ1bGxldHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDAuOHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1idWxsZXRzIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vcmJpdC1idWxsZXRzIGJ1dHRvbiB7XG4gICAgd2lkdGg6IDEuMnJlbTtcbiAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICBtYXJnaW46IDAuMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NhY2FjYTsgfVxuICAgIC5vcmJpdC1idWxsZXRzIGJ1dHRvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4YThhOyB9XG4gICAgLm9yYml0LWJ1bGxldHMgYnV0dG9uLmlzLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4YThhOyB9XG5cbi5wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLnBhZ2luYXRpb246OmJlZm9yZSwgLnBhZ2luYXRpb246OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5wYWdpbmF0aW9uIGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMDYyNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5wYWdpbmF0aW9uIGxpOmxhc3QtY2hpbGQsIC5wYWdpbmF0aW9uIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnaW5hdGlvbiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG4gIC5wYWdpbmF0aW9uIGEsXG4gIC5wYWdpbmF0aW9uIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAucGFnaW5hdGlvbiBhOmhvdmVyLFxuICAgIC5wYWdpbmF0aW9uIGJ1dHRvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTZlNmU2OyB9XG4gIC5wYWdpbmF0aW9uIC5jdXJyZW50IHtcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cbiAgLnBhZ2luYXRpb24gLmRpc2FibGVkIHtcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgY29sb3I6ICNjYWNhY2E7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5wYWdpbmF0aW9uIC5kaXNhYmxlZDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAucGFnaW5hdGlvbiAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgY29udGVudDogJ1xcMjAyNic7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cblxuLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIGNvbnRlbnQ6ICdcXDAwYWInOyB9XG5cbi5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4ucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgY29udGVudDogJ1xcMDBiYic7IH1cblxuLnByb2dyZXNzIHtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhOyB9XG4gIC5wcm9ncmVzcy5wcmltYXJ5IC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBiODc5MzsgfVxuICAucHJvZ3Jlc3Muc2Vjb25kYXJ5IC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZiYjMxNjsgfVxuICAucHJvZ3Jlc3Muc3VjY2VzcyAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7IH1cbiAgLnByb2dyZXNzLndhcm5pbmcgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwOyB9XG4gIC5wcm9ncmVzcy5hbGVydCAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7IH1cblxuLnByb2dyZXNzLW1ldGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYjg3OTM7IH1cblxuLnByb2dyZXNzLW1ldGVyLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLnNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTsgfVxuXG4uc2xpZGVyLWZpbGwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMC41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAuc2xpZGVyLWZpbGwuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7IH1cblxuLnNsaWRlci1oYW5kbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNHJlbTtcbiAgaGVpZ2h0OiAxLjRyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYjg3OTM7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnNsaWRlci1oYW5kbGUge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLnNsaWRlci1oYW5kbGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTczN2Q7IH1cbiAgLnNsaWRlci1oYW5kbGUuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7IH1cblxuLnNsaWRlci5kaXNhYmxlZCxcbi5zbGlkZXJbZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uc2xpZGVyLnZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMC41cmVtO1xuICBoZWlnaHQ6IDEyLjVyZW07XG4gIG1hcmdpbjogMCAxLjI1cmVtO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTsgfVxuICAuc2xpZGVyLnZlcnRpY2FsIC5zbGlkZXItZmlsbCB7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAwLjVyZW07XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAuc2xpZGVyLnZlcnRpY2FsIC5zbGlkZXItaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogMS40cmVtO1xuICAgIGhlaWdodDogMS40cmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuXG4uc3RpY2t5LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uc3RpY2t5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zdGlja3kuaXMtc3R1Y2sge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zdGlja3kuaXMtc3R1Y2suaXMtYXQtdG9wIHtcbiAgICB0b3A6IDA7IH1cbiAgLnN0aWNreS5pcy1zdHVjay5pcy1hdC1ib3R0b20ge1xuICAgIGJvdHRvbTogMDsgfVxuXG4uc3RpY2t5LmlzLWFuY2hvcmVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogYXV0bzsgfVxuICAuc3RpY2t5LmlzLWFuY2hvcmVkLmlzLWF0LWJvdHRvbSB7XG4gICAgYm90dG9tOiAwOyB9XG5cbmh0bWwuaXMtcmV2ZWFsLW9wZW4ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy15OiBoaWRkZW47IH1cbiAgaHRtbC5pcy1yZXZlYWwtb3Blbi56Zi1oYXMtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7IH1cbiAgaHRtbC5pcy1yZXZlYWwtb3BlbiBib2R5IHtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47IH1cblxuLnJldmVhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC40NSk7XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cblxuLnJldmVhbCB7XG4gIHotaW5kZXg6IDEwMDY7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBvdmVyZmxvdy15OiBhdXRvOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAucmV2ZWFsIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICBtaW4taGVpZ2h0OiAwOyB9IH1cbiAgLnJldmVhbCAuY29sdW1uIHtcbiAgICBtaW4td2lkdGg6IDA7IH1cbiAgLnJldmVhbCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICB3aWR0aDogNjAwcHg7XG4gICAgICBtYXgtd2lkdGg6IDY4Ljc1cmVtOyB9IH1cbiAgLnJldmVhbC5jb2xsYXBzZSB7XG4gICAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwudGlueSB7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgbWF4LXdpZHRoOiA2OC43NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC5zbWFsbCB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWF4LXdpZHRoOiA2OC43NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC5sYXJnZSB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgbWF4LXdpZHRoOiA2OC43NXJlbTsgfSB9XG4gIC5yZXZlYWwuZnVsbCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH0gfVxuICAucmV2ZWFsLndpdGhvdXQtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG5cbi5zd2l0Y2gge1xuICBoZWlnaHQ6IDJyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4uc3dpdGNoLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zd2l0Y2gtcGFkZGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDRyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogI2NhY2FjYTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBpbnB1dCArIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjI1cmVtO1xuICAgIGxlZnQ6IDAuMjVyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEuNXJlbTtcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4gICAgY29udGVudDogJyc7IH1cbiAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzOyB9XG4gICAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgICBsZWZ0OiAyLjI1cmVtOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBpbnB1dDpmb2N1cyB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbi5zd2l0Y2gtYWN0aXZlLCAuc3dpdGNoLWluYWN0aXZlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5zd2l0Y2gtYWN0aXZlIHtcbiAgbGVmdDogOCU7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gLnN3aXRjaC1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zd2l0Y2gtaW5hY3RpdmUge1xuICByaWdodDogMTUlOyB9XG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbCA+IC5zd2l0Y2gtaW5hY3RpdmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnN3aXRjaC50aW55IHtcbiAgaGVpZ2h0OiAxLjVyZW07IH1cbiAgLnN3aXRjaC50aW55IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICBmb250LXNpemU6IDAuNjI1cmVtOyB9XG4gIC5zd2l0Y2gudGlueSAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIHRvcDogMC4yNXJlbTtcbiAgICBsZWZ0OiAwLjI1cmVtO1xuICAgIHdpZHRoOiAxcmVtO1xuICAgIGhlaWdodDogMXJlbTsgfVxuICAuc3dpdGNoLnRpbnkgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgbGVmdDogMS43NXJlbTsgfVxuXG4uc3dpdGNoLnNtYWxsIHtcbiAgaGVpZ2h0OiAxLjc1cmVtOyB9XG4gIC5zd2l0Y2guc21hbGwgLnN3aXRjaC1wYWRkbGUge1xuICAgIHdpZHRoOiAzLjVyZW07XG4gICAgaGVpZ2h0OiAxLjc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuc3dpdGNoLnNtYWxsIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgdG9wOiAwLjI1cmVtO1xuICAgIGxlZnQ6IDAuMjVyZW07XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gICAgaGVpZ2h0OiAxLjI1cmVtOyB9XG4gIC5zd2l0Y2guc21hbGwgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgbGVmdDogMnJlbTsgfVxuXG4uc3dpdGNoLmxhcmdlIHtcbiAgaGVpZ2h0OiAyLjVyZW07IH1cbiAgLnN3aXRjaC5sYXJnZSAuc3dpdGNoLXBhZGRsZSB7XG4gICAgd2lkdGg6IDVyZW07XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC5zd2l0Y2gubGFyZ2UgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICB0b3A6IDAuMjVyZW07XG4gICAgbGVmdDogMC4yNXJlbTtcbiAgICB3aWR0aDogMnJlbTtcbiAgICBoZWlnaHQ6IDJyZW07IH1cbiAgLnN3aXRjaC5sYXJnZSBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBsZWZ0OiAyLjc1cmVtOyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YxZjFmMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlOyB9XG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICB0aGVhZCB0cixcbiAgdGZvb3QgdHIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIHRoZWFkIHRoLFxuICB0aGVhZCB0ZCxcbiAgdGZvb3QgdGgsXG4gIHRmb290IHRkIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICB0Ym9keSB0aCxcbiAgdGJvZHkgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTsgfVxuICB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTsgfVxuICB0YWJsZS51bnN0cmlwZWQgdGJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7IH1cbiAgICB0YWJsZS51bnN0cmlwZWQgdGJvZHkgdHIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gIHRhYmxlLnN0YWNrIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRyLFxuICB0YWJsZS5zdGFjayB0aCxcbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBib3JkZXItdG9wOiAwOyB9IH1cblxudGFibGUuc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvOyB9XG5cbnRhYmxlLmhvdmVyIHRoZWFkIHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjNmMzsgfVxuXG50YWJsZS5ob3ZlciB0Zm9vdCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWM7IH1cblxudGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5OyB9XG5cbnRhYmxlLmhvdmVyOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWM7IH1cblxuLnRhYmxlLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cblxuLnRhYnMge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAudGFiczo6YmVmb3JlLCAudGFiczo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC50YWJzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLnRhYnMudmVydGljYWwgPiBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IGF1dG87IH1cblxuLnRhYnMuc2ltcGxlID4gbGkgPiBhIHtcbiAgcGFkZGluZzogMDsgfVxuICAudGFicy5zaW1wbGUgPiBsaSA+IGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi50YWJzLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMGI4NzkzOyB9XG4gIC50YWJzLnByaW1hcnkgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpob3ZlciwgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMGM5NmEzOyB9XG5cbi50YWJzLXRpdGxlIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnRhYnMtdGl0bGUgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICMwYjg3OTM7IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnRhYnMtdGl0bGUgPiBhIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAudGFicy10aXRsZSA+IGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgICAgIGNvbG9yOiAjMDk3NDdlOyB9XG4gICAgLnRhYnMtdGl0bGUgPiBhOmZvY3VzLCAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gICAgICBjb2xvcjogIzBiODc5MzsgfVxuXG4udGFicy1jb250ZW50IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cblxuLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbi50YWJzLXBhbmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTsgfVxuICAudGFicy1wYW5lbC5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi50aHVtYm5haWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiBzb2xpZCA0cHggI2ZlZmVmZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMTAsIDEwLCAxMCwgMC4yKTtcbiAgbGluZS1oZWlnaHQ6IDA7IH1cblxuYS50aHVtYm5haWwge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0OyB9XG4gIGEudGh1bWJuYWlsOmhvdmVyLCBhLnRodW1ibmFpbDpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDZweCAxcHggcmdiYSgxMSwgMTM1LCAxNDcsIDAuNSk7IH1cbiAgYS50aHVtYm5haWwgaW1hZ2Uge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLnRpdGxlLWJhciB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYmFja2dyb3VuZDogIzJDMzg0MDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAudGl0bGUtYmFyIC5tZW51LWljb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsgfVxuXG4udGl0bGUtYmFyLWxlZnQsXG4udGl0bGUtYmFyLXJpZ2h0IHtcbiAgZmxleDogMSAxIDBweDsgfVxuXG4udGl0bGUtYmFyLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRpdGxlLWJhci10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLmhhcy10aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjOGE4YThhO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY3Vyc29yOiBoZWxwOyB9XG5cbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArIDAuNjQ5NXJlbSk7XG4gIHotaW5kZXg6IDEyMDA7XG4gIG1heC13aWR0aDogMTByZW07XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBjb2xvcjogI2ZlZmVmZTsgfVxuICAudG9vbHRpcDo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgLnRvb2x0aXAuYm90dG9tOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYTBhMGE7XG4gICAgYm90dG9tOiAxMDAlOyB9XG4gIC50b29sdGlwLmJvdHRvbS5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAudG9vbHRpcC50b3A6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzBhMGEwYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDEwMCU7XG4gICAgYm90dG9tOiBhdXRvOyB9XG4gIC50b29sdGlwLnRvcC5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAudG9vbHRpcC5sZWZ0OjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYTBhMGE7XG4gICAgbGVmdDogMTAwJTsgfVxuICAudG9vbHRpcC5sZWZ0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIC50b29sdGlwLnJpZ2h0OjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwYTBhMGEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAudG9vbHRpcC5yaWdodC5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAudG9vbHRpcC5hbGlnbi10b3A6OmJlZm9yZSB7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHRvcDogMTAlOyB9XG4gIC50b29sdGlwLmFsaWduLWJvdHRvbTo6YmVmb3JlIHtcbiAgICBib3R0b206IDEwJTtcbiAgICB0b3A6IGF1dG87IH1cbiAgLnRvb2x0aXAuYWxpZ24tbGVmdDo6YmVmb3JlIHtcbiAgICBsZWZ0OiAxMCU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnRvb2x0aXAuYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAlOyB9XG5cbi50b3AtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC50b3AtYmFyLFxuICAudG9wLWJhciB1bCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJDMzg0MDsgfVxuICAudG9wLWJhciBpbnB1dCB7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgLnRvcC1iYXIgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLnRvcC1iYXIgaW5wdXQuYnV0dG9uLCAudG9wLWJhciAud3AtYmxvY2stYnV0dG9uIGlucHV0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAudG9wLWJhciBpbnB1dC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC50b3AtYmFyIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudG9wLWJhciB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAgICAgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1sZWZ0LFxuICAgICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci10YWJsZXQge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci10YWJsZXQgLnRvcC1iYXItbGVmdCxcbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLXRhYmxldCAudG9wLWJhci1yaWdodCB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2OC43NDg3NWVtKSB7XG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2Uge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1sZWZ0LFxuICAgICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkuOTk4NzVlbSkge1xuICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLXhsYXJnZSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLXhsYXJnZSAudG9wLWJhci1sZWZ0LFxuICAgICAgLnRvcC1iYXIuc3RhY2tlZC1mb3IteGxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5Ljk5ODc1ZW0pIHtcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci14eGxhcmdlIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLnRvcC1iYXIuc3RhY2tlZC1mb3IteHhsYXJnZSAudG9wLWJhci1sZWZ0LFxuICAgICAgLnRvcC1iYXIuc3RhY2tlZC1mb3IteHhsYXJnZSAudG9wLWJhci1yaWdodCB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICAudG9wLWJhci5zdGFja2VkLWZvci1waGFibGV0IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAudG9wLWJhci5zdGFja2VkLWZvci1waGFibGV0IC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItcGhhYmxldCAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuXG4udG9wLWJhci10aXRsZSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXJnaW46IDAuNXJlbSAxcmVtIDAuNXJlbSAwOyB9XG5cbi50b3AtYmFyLWxlZnQsXG4udG9wLWJhci1yaWdodCB7XG4gIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5oaWRlLWZvci10YWJsZXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLXRhYmxldCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXRhYmxldC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaG93LWZvci10YWJsZXQtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDY4Ljc0ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgLmhpZGUtZm9yLXhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjguNzQ4NzVlbSkge1xuICAuc2hvdy1mb3IteGxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2OC43NWVtKSBhbmQgKG1heC13aWR0aDogODkuOTk4NzVlbSkge1xuICAuaGlkZS1mb3IteGxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY4Ljc0ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnNob3ctZm9yLXhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5oaWRlLWZvci14eGxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OS45OTg3NWVtKSB7XG4gIC5zaG93LWZvci14eGxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1heC13aWR0aDogNTkuOTk4NzVlbSkge1xuICAuaGlkZS1mb3IteHhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OS45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5zaG93LWZvci14eGxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmhpZGUtZm9yLXBoYWJsZXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5Ljk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLXBoYWJsZXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmhpZGUtZm9yLXBoYWJsZXQtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTkuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItcGhhYmxldC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uc2hvdy1mb3Itc3IsXG4uc2hvdy1vbi1mb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwOyB9XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9XG5cbi5zaG93LWZvci1sYW5kc2NhcGUsXG4uaGlkZS1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uaGlkZS1mb3ItbGFuZHNjYXBlLFxuLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG4uYWxpZ24tbGVmdCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tcmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYWxpZ24tanVzdGlmeSB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4uYWxpZ24tc3BhY2VkIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cblxuLmFsaWduLWxlZnQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tcmlnaHQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlci52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1zZWxmLXRvcCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLWJvdHRvbSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tbWlkZGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc2VsZi1taWRkbGUge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cblxuLmFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4uYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxuXG4uYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTsgfVxuXG4uc21hbGwtb3JkZXItMiB7XG4gIG9yZGVyOiAyOyB9XG5cbi5zbWFsbC1vcmRlci0zIHtcbiAgb3JkZXI6IDM7IH1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDsgfVxuXG4uc21hbGwtb3JkZXItNSB7XG4gIG9yZGVyOiA1OyB9XG5cbi5zbWFsbC1vcmRlci02IHtcbiAgb3JkZXI6IDY7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubWVkaXVtLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5tZWRpdW0tb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLm1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubWVkaXVtLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5tZWRpdW0tb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGFibGV0LW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC50YWJsZXQtb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnRhYmxldC1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAudGFibGV0LW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC50YWJsZXQtb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnRhYmxldC1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLmxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5sYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLmxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjguNzVlbSkge1xuICAueGxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC54bGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnhsYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAueGxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC54bGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnhsYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnh4bGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnh4bGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5waGFibGV0LW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5waGFibGV0LW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5waGFibGV0LW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5waGFibGV0LW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5waGFibGV0LW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5waGFibGV0LW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuLmZsZXgtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4uZmxleC1jaGlsZC1hdXRvIHtcbiAgZmxleDogMSAxIGF1dG87IH1cblxuLmZsZXgtY2hpbGQtZ3JvdyB7XG4gIGZsZXg6IDEgMCBhdXRvOyB9XG5cbi5mbGV4LWNoaWxkLXNocmluayB7XG4gIGZsZXg6IDAgMSBhdXRvOyB9XG5cbi5mbGV4LWRpci1yb3cge1xuICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG5cbi5mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuXG4uZmxleC1kaXItY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4uZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGFibGV0LWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC50YWJsZXQtZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAudGFibGV0LWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLnRhYmxldC1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLnRhYmxldC1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLnRhYmxldC1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC50YWJsZXQtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC50YWJsZXQtZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4Ljc1ZW0pIHtcbiAgLnhsYXJnZS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAueGxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLnhsYXJnZS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC54bGFyZ2UtZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC54bGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC54bGFyZ2UtZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAueGxhcmdlLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAueGxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC54eGxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLnh4bGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAueHhsYXJnZS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLnh4bGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC54eGxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLnh4bGFyZ2UtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC54eGxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5waGFibGV0LWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5waGFibGV0LWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLnBoYWJsZXQtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAucGhhYmxldC1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLnBoYWJsZXQtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5waGFibGV0LWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLnBoYWJsZXQtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5waGFibGV0LWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgfVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG5cbi5mYWRlLWluLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OyB9XG5cbi5mYWRlLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7IH1cblxuLmZhZGUtb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1ib3R0b20ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNjYWxlLW91dC11cC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNwaW4taW4ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc3Bpbi1vdXQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc3Bpbi1vdXQtY2N3Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zbG93IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDsgfVxuXG4uZmFzdCB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zICFpbXBvcnRhbnQ7IH1cblxuLmxpbmVhciB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDsgfVxuXG4uZWFzZSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5zaG9ydC1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDMwMG1zICFpbXBvcnRhbnQ7IH1cblxuLmxvbmctZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50OyB9XG5cbi5zaGFrZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzaGFrZS03OyB9XG5cbkBrZXlmcmFtZXMgc2hha2UtNyB7XG4gIDAlLCAxMCUsIDIwJSwgMzAlLCA0MCUsIDUwJSwgNjAlLCA3MCUsIDgwJSwgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNyUpOyB9XG4gIDUlLCAxNSUsIDI1JSwgMzUlLCA0NSUsIDU1JSwgNjUlLCA3NSUsIDg1JSwgOTUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTclKTsgfSB9XG5cbi5zcGluLWN3IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW4tY3ctMXR1cm47IH1cblxuQGtleWZyYW1lcyBzcGluLWN3LTF0dXJuIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xdHVybik7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH0gfVxuXG4uc3Bpbi1jY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jdy0xdHVybjsgfVxuXG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMXR1cm4pOyB9IH1cblxuLndpZ2dsZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiB3aWdnbGUtN2RlZzsgfVxuXG5Aa2V5ZnJhbWVzIHdpZ2dsZS03ZGVnIHtcbiAgNDAlLCA1MCUsIDYwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoN2RlZyk7IH1cbiAgMzUlLCA0NSUsIDU1JSwgNjUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtN2RlZyk7IH1cbiAgMCUsIDMwJSwgNzAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfSB9XG5cbi5zaGFrZSxcbi5zcGluLWN3LFxuLnNwaW4tY2N3LFxuLndpZ2dsZSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7IH1cblxuLmluZmluaXRlIHtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cblxuLnNsb3cge1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7IH1cblxuLmZhc3Qge1xuICBhbmltYXRpb24tZHVyYXRpb246IDI1MG1zICFpbXBvcnRhbnQ7IH1cblxuLmxpbmVhciB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50OyB9XG5cbi5lYXNlIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4tb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uc2hvcnQtZGVsYXkge1xuICBhbmltYXRpb24tZGVsYXk6IDMwMG1zICFpbXBvcnRhbnQ7IH1cblxuLmxvbmctZGVsYXkge1xuICBhbmltYXRpb24tZGVsYXk6IDcwMG1zICFpbXBvcnRhbnQ7IH1cblxuLypcbiAgTXkgY3VzdG9tIHN0eWxlczpcbiAgQWRkIHlvdXIgc2NzcyBmaWxlcyBiZWxvdyB0byBzdHJ1Y3R1cmUgeW91ciBwcm9qZWN0IHN0eWxlc1xuKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgY29sb3I6ICMyMTc1OWI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiA1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMDA7IH1cblxuI3dwYWRtaW5iYXIge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDsgfVxuXG5ib2R5LmFkbWluLWJhci5mLXRvcGJhci1maXhlZCAuc3RpY2t5LmZpeGVkIHtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuXG5ib2R5LmFkbWluLWJhci5vZmZjYW52YXMgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gIHRvcDogMi44NzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDguOTM3NWVtKSB7XG4gICAgYm9keS5hZG1pbi1iYXIub2ZmY2FudmFzIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgICAgdG9wOiAycmVtOyB9IH1cblxuYm9keSB7XG4gIGJhY2tncm91bmQ6ICNmYWZhZmEgdXJsKFwiLi4vaW1hZ2VzL2hleC1ub2RlLWdyaWQtbGlnaHQucG5nXCIpIDAgMCByZXBlYXQ7IH1cbiAgYm9keS5vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi53cC1jYXB0aW9uID4gZmlnY2FwdGlvbiB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiAjOTk5O1xuICBwYWRkaW5nOiAwLjI1cmVtIDA7IH1cblxucC53cC1jYXB0aW9uLXRleHQge1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6ICM2NjY7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDA7IH1cblxuLmFsaWdubGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW46IDA7IH1cblxuLmFsaWducmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgbWFyZ2luOiAwOyB9XG5cbi5hbGlnbmNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5nYWxsZXJ5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2FsbGVyeSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xLjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtOyB9IH1cbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTEgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0xID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0xID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTIgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0yID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0yID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtMyA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTMgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTMgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy00ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNCA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNCA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTUgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy01ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy01ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNiA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTYgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTYgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy03ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNyA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNyA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTggPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy04ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy04ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy05ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtOSA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtOSA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMTEuMTExMTElIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBib3JkZXI6IHNvbGlkIDRweCAjZmVmZWZlO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMTAsIDEwLCAxMCwgMC4yKTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0OyB9XG4gICAgLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IGE6aG92ZXIsIC5nYWxsZXJ5IC5nYWxsZXJ5LWljb24gPiBhOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCA2cHggMXB4IHJnYmEoMTEsIDEzNSwgMTQ3LCAwLjUpOyB9XG4gICAgLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IGEgaW1hZ2Uge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAuZ2FsbGVyeSAuZ2FsbGVyeS1pY29uID4gaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgYm9yZGVyOiBzb2xpZCA0cHggI2ZlZmVmZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDEwLCAxMCwgMTAsIDAuMik7XG4gICAgbGluZS1oZWlnaHQ6IDA7IH1cblxuY29kZSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbnByZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl0ge1xuICBiYWNrZ3JvdW5kOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiA0MHB4ICFpbXBvcnRhbnQ7IH1cbiAgcHJlW2NsYXNzKj1cImxhbmd1YWdlLVwiXSBjb2RlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG4uYmxvZy1lbnRyeSBvbCB7XG4gIGNvdW50ZXItcmVzZXQ6IG9yZGVyZWQtbGlzdDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMCAxNXB4O1xuICBwYWRkaW5nOiAwOyB9XG4gIC5ibG9nLWVudHJ5IG9sIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgcGFkZGluZzogMCAwIDAgMzBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYmxvZy1lbnRyeSBvbCBsaTpiZWZvcmUge1xuICAgICAgY291bnRlci1pbmNyZW1lbnQ6IG9yZGVyZWQtbGlzdDtcbiAgICAgIGNvbnRlbnQ6IGNvdW50ZXIob3JkZXJlZC1saXN0KSBcIi5cIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpOyB9XG5cbi5ibG9nLWVudHJ5IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMCAxNXB4O1xuICBwYWRkaW5nOiAwOyB9XG4gIC5ibG9nLWVudHJ5IHVsIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgcGFkZGluZzogMCAwIDAgMzBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYmxvZy1lbnRyeSB1bCBsaTpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBjb250ZW50OiBcIlxcZjBkYVwiO1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDsgfVxuXG5ibG9ja3F1b3RlLndwLWJsb2NrLXF1b3RlIHtcbiAgcGFkZGluZzogMTBweCAwIDEwcHggMzVweDtcbiAgZm9udC1mYW1pbHk6ICdtaXNsYWItc3RkJywgJ0NvdXJpZXInLCBzZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICMyNTI1MjU7XG4gIGJvcmRlci13aWR0aDogMCAwIDAgNHB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMwYjg3OTMsICMzNjAwMzMpIDEgMTAwJTtcbiAgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovIH1cbiAgYmxvY2txdW90ZS53cC1ibG9jay1xdW90ZSBwIHtcbiAgICBjb2xvcjogIzI1MjUyNTtcbiAgICBmb250LXNpemU6IDEuMjVlbTsgfVxuICBibG9ja3F1b3RlLndwLWJsb2NrLXF1b3RlIGNpdGUge1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG4gICAgYmxvY2txdW90ZS53cC1ibG9jay1xdW90ZSBjaXRlOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwOyB9XG5cbi53cC1ibG9jay1wdWxscXVvdGU6bm90KC5pcy1zdHlsZS1zb2xpZC1jb2xvcikge1xuICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoLTQ1ZGVnLCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAvKiBGRjMuNi0xNSAqL1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgtNDVkZWcsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gIC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzBiODc5MycsIGVuZENvbG9yc3RyPScjMzYwMDMzJyxHcmFkaWVudFR5cGU9MSApO1xuICAvKiBJRTYtOSBmYWxsYmFjayBvbiBob3Jpem9udGFsIGdyYWRpZW50ICovXG4gIG1hcmdpbjogNTBweCAwO1xuICB3aWR0aDogMTAwdnc7XG4gIG1hcmdpbi1sZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBwYWRkaW5nOiAwOyB9XG4gIC53cC1ibG9jay1wdWxscXVvdGU6bm90KC5pcy1zdHlsZS1zb2xpZC1jb2xvcikgYmxvY2txdW90ZSB7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXgtd2lkdGg6IDY4Ljc1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LWZhbWlseTogJ21pc2xhYi1zdGQnLCAnQ291cmllcicsIHNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgcGFkZGluZzogNTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAud3AtYmxvY2stcHVsbHF1b3RlOm5vdCguaXMtc3R5bGUtc29saWQtY29sb3IpIGJsb2NrcXVvdGUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07IH0gfVxuICAgIC53cC1ibG9jay1wdWxscXVvdGU6bm90KC5pcy1zdHlsZS1zb2xpZC1jb2xvcikgYmxvY2txdW90ZSBwIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAud3AtYmxvY2stcHVsbHF1b3RlOm5vdCguaXMtc3R5bGUtc29saWQtY29sb3IpIGJsb2NrcXVvdGUgcCArIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIC53cC1ibG9jay1wdWxscXVvdGU6bm90KC5pcy1zdHlsZS1zb2xpZC1jb2xvcik6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaGV4LW5vZGUtZ3JpZC1kYXJrLnBuZ1wiKSAwIDAgcmVwZWF0OyB9XG5cbi53cC1ibG9jay1lbWJlZCB7XG4gIHdpZHRoOiA3NSU7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAud3AtYmxvY2stZW1iZWQge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4ud3AtYmxvY2stZW1iZWRfX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi53cC1ibG9jay1lbWJlZF9fd3JhcHBlciBpZnJhbWUsXG4ud3AtYmxvY2stZW1iZWRfX3dyYXBwZXIgb2JqZWN0LFxuLndwLWJsb2NrLWVtYmVkX193cmFwcGVyIGVtYmVkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLndwLWJsb2NrLWltYWdlIHtcbiAgbWFyZ2luLXRvcDogNTBweDtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICAud3AtYmxvY2staW1hZ2UgZmlndXJlIGZpZ2NhcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cblxuI3ZpZGVvLW1vZGFsIHtcbiAgd2lkdGg6IDgwJTtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbiAgcGFkZGluZy10b3A6IDUwcHg7IH1cbiAgI3ZpZGVvLW1vZGFsIC5yZXNwb25zaXZlLWVtYmVkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi8qXG5Gcm9udGVuZCBzdHlsZXMgZm9yIGd1dGVuYmVyZyBibG9ja3NcbiovXG4vKiogPT09IEJhc2UgQ29sb3IgUGFsYXR0ZSA9PT0gKi9cbi5oYXMtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBiODc5MzsgfVxuXG4uaGFzLXByaW1hcnktY29sb3Ige1xuICBjb2xvcjogIzBiODc5MzsgfVxuXG4uaGFzLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZiYjMxNjsgfVxuXG4uaGFzLXNlY29uZGFyeS1jb2xvciB7XG4gIGNvbG9yOiAjZmJiMzE2OyB9XG5cbi5oYXMtc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjsgfVxuXG4uaGFzLXN1Y2Nlc3MtY29sb3Ige1xuICBjb2xvcjogIzNhZGI3NjsgfVxuXG4uaGFzLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7IH1cblxuLmhhcy13YXJuaW5nLWNvbG9yIHtcbiAgY29sb3I6ICNmZmFlMDA7IH1cblxuLmhhcy1hbGVydC1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNzsgfVxuXG4uaGFzLWFsZXJ0LWNvbG9yIHtcbiAgY29sb3I6ICNjYzRiMzc7IH1cblxuLyoqID09PSBCdXR0b24gPT09ICovXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXByaW1hcnktYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYjg3OTM7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1wcmltYXJ5LWNvbG9yIHtcbiAgY29sb3I6ICMwYjg3OTM7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYmIzMTY7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1zZWNvbmRhcnktY29sb3Ige1xuICBjb2xvcjogI2ZiYjMxNjsgfVxuXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1zdWNjZXNzLWNvbG9yIHtcbiAgY29sb3I6ICMzYWRiNzY7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy13YXJuaW5nLWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwOyB9XG5cbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluay5oYXMtd2FybmluZy1jb2xvciB7XG4gIGNvbG9yOiAjZmZhZTAwOyB9XG5cbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluay5oYXMtYWxlcnQtYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1hbGVydC1jb2xvciB7XG4gIGNvbG9yOiAjY2M0YjM3OyB9XG5cbi53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtc3F1YXJlZCAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4vKiogPT09IEZpbGUgPT09ICovXG4ud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDAuODVlbSAxZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBiODc5MztcbiAgY29sb3I6ICNmZWZlZmU7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbjpob3ZlciwgLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzA5NzM3ZDtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuXG5mb290ZXIgLl9mb3JtIC5fZm9ybS1jb250ZW50IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC1zaXplOiAwOyB9XG4gIGZvb3RlciAuX2Zvcm0gLl9mb3JtLWNvbnRlbnQgPiAqIHtcbiAgICBmb250LXNpemU6IDFyZW07IH1cblxuZm9vdGVyIC5fZm9ybSAuX2Zvcm0tdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxZW07IH1cblxuZm9vdGVyIC5fZm9ybSAuX2Zvcm0tYnJhbmRpbmcge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmZvb3RlciAuX2Zvcm0gLl9mb3JtLWxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5mb290ZXIgLl9mb3JtIFt0eXBlPSd0ZXh0J10sIGZvb3RlciAuX2Zvcm0gW3R5cGU9J3Bhc3N3b3JkJ10sIGZvb3RlciAuX2Zvcm0gW3R5cGU9J2RhdGUnXSwgZm9vdGVyIC5fZm9ybSBbdHlwZT0nZGF0ZXRpbWUnXSwgZm9vdGVyIC5fZm9ybSBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgZm9vdGVyIC5fZm9ybSBbdHlwZT0nbW9udGgnXSwgZm9vdGVyIC5fZm9ybSBbdHlwZT0nd2VlayddLCBmb290ZXIgLl9mb3JtIFt0eXBlPSdlbWFpbCddLCBmb290ZXIgLl9mb3JtIFt0eXBlPSdudW1iZXInXSwgZm9vdGVyIC5fZm9ybSBbdHlwZT0nc2VhcmNoJ10sIGZvb3RlciAuX2Zvcm0gW3R5cGU9J3RlbCddLCBmb290ZXIgLl9mb3JtIFt0eXBlPSd0aW1lJ10sIGZvb3RlciAuX2Zvcm0gW3R5cGU9J3VybCddLCBmb290ZXIgLl9mb3JtIFt0eXBlPSdjb2xvciddLCBmb290ZXIgLl9mb3JtIC5fc3VibWl0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNDM3NWVtO1xuICBtYXJnaW46IDAgMCAxZW07XG4gIHBhZGRpbmc6IDAuNWVtO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMyNTI1MjU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuXG5mb290ZXIgLl9mb3JtIC5faW5saW5lLXN0eWxlOm5vdCguX2NsZWFyKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTM1cHgpOyB9XG4gIGZvb3RlciAuX2Zvcm0gLl9pbmxpbmUtc3R5bGU6bm90KC5fY2xlYXIpIGlucHV0IHtcbiAgICBib3JkZXItcmFkaXVzOiAuMjVlbSAwIDAgLjI1ZW07IH1cblxuZm9vdGVyIC5fZm9ybSAuX2J1dHRvbi13cmFwcGVyLl9pbmxpbmUtc3R5bGUge1xuICB3aWR0aDogMTM0cHg7IH1cbiAgZm9vdGVyIC5fZm9ybSAuX2J1dHRvbi13cmFwcGVyLl9pbmxpbmUtc3R5bGUgYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZzogLjVlbSAxLjVlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwIC4yNWVtIC4yNWVtIDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgZm9vdGVyIC5fZm9ybSAuX2J1dHRvbi13cmFwcGVyLl9pbmxpbmUtc3R5bGUgYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTcxN2I7IH1cblxuZm9vdGVyIC5oYnNwdC1mb3JtIC5pbnB1dHMtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICBmb290ZXIgLmhic3B0LWZvcm0gLmlucHV0cy1saXN0IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgZm9vdGVyIC5oYnNwdC1mb3JtIC5pbnB1dHMtbGlzdCBsaSBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBsZWZ0OiBhdXRvOyB9XG4gICAgZm9vdGVyIC5oYnNwdC1mb3JtIC5pbnB1dHMtbGlzdCBsaTpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG5mb290ZXIgLmhic3B0LWZvcm0gLmhzX2Vycm9yX3JvbGx1cCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuZm9vdGVyIC5oYnNwdC1mb3JtIC5ocy1lcnJvci1tc2cge1xuICBmb250LXNpemU6IDAuNzVlbTtcbiAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBtYXJnaW4tbGVmdDogMTVweDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuZm9vdGVyIC5oYnNwdC1mb3JtIC5mb3JtIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC1zaXplOiAwOyB9XG4gIGZvb3RlciAuaGJzcHQtZm9ybSAuZm9ybSA+ICoge1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG5mb290ZXIgLmhic3B0LWZvcm0gbGFiZWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmZvb3RlciAuaGJzcHQtZm9ybSBbdHlwZT0ndGV4dCddLCBmb290ZXIgLmhic3B0LWZvcm0gW3R5cGU9J3Bhc3N3b3JkJ10sIGZvb3RlciAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZSddLCBmb290ZXIgLmhic3B0LWZvcm0gW3R5cGU9J2RhdGV0aW1lJ10sIGZvb3RlciAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgZm9vdGVyIC5oYnNwdC1mb3JtIFt0eXBlPSdtb250aCddLCBmb290ZXIgLmhic3B0LWZvcm0gW3R5cGU9J3dlZWsnXSwgZm9vdGVyIC5oYnNwdC1mb3JtIFt0eXBlPSdlbWFpbCddLCBmb290ZXIgLmhic3B0LWZvcm0gW3R5cGU9J251bWJlciddLCBmb290ZXIgLmhic3B0LWZvcm0gW3R5cGU9J3NlYXJjaCddLCBmb290ZXIgLmhic3B0LWZvcm0gW3R5cGU9J3RlbCddLCBmb290ZXIgLmhic3B0LWZvcm0gW3R5cGU9J3RpbWUnXSwgZm9vdGVyIC5oYnNwdC1mb3JtIFt0eXBlPSd1cmwnXSwgZm9vdGVyIC5oYnNwdC1mb3JtIFt0eXBlPSdjb2xvciddLCBmb290ZXIgLmhic3B0LWZvcm0gLl9zdWJtaXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi40Mzc1ZW07XG4gIG1hcmdpbjogMCAwIDFlbTtcbiAgcGFkZGluZzogMC41ZW07XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzI1MjUyNTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lOyB9XG5cbmZvb3RlciAuaGJzcHQtZm9ybSBkaXYuaHMtZm9ybS1maWVsZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTM1cHgpOyB9XG4gIGZvb3RlciAuaGJzcHQtZm9ybSBkaXYuaHMtZm9ybS1maWVsZCBpbnB1dCB7XG4gICAgYm9yZGVyLXJhZGl1czogLjI1ZW0gMCAwIC4yNWVtOyB9XG5cbmZvb3RlciAuaGJzcHQtZm9ybSBkaXYuaHMtc3VibWl0IHtcbiAgd2lkdGg6IDEzNHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTM1cHgpOyB9XG4gIGZvb3RlciAuaGJzcHQtZm9ybSBkaXYuaHMtc3VibWl0IGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBhZGRpbmc6IC41ZW0gMS41ZW07XG4gICAgYm9yZGVyLXJhZGl1czogMCAuMjVlbSAuMjVlbSAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBoZWlnaHQ6IDIuNDM3NWVtO1xuICAgIG1hcmdpbjogMCAwIDFlbTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgICBmb290ZXIgLmhic3B0LWZvcm0gZGl2LmhzLXN1Ym1pdCBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA5NzE3YjsgfVxuXG4ub3Blbi10ZXh0IC5fZm9ybSAuX2Zvcm0tY29udGVudCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5vcGVuLXRleHQgLl9mb3JtIC5fZm9ybS1jb250ZW50ID4gKiB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG5cbi5vcGVuLXRleHQgLl9mb3JtIC5fZm9ybS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDFlbTsgfVxuXG4ub3Blbi10ZXh0IC5fZm9ybSAuX2Zvcm0tYnJhbmRpbmcge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5vcGVuLXRleHQgLl9mb3JtIC5fZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm9wZW4tdGV4dCAuX2Zvcm0gW3R5cGU9J3RleHQnXSxcbi5vcGVuLXRleHQgLl9mb3JtIFt0eXBlPSdwYXNzd29yZCddLFxuLm9wZW4tdGV4dCAuX2Zvcm0gW3R5cGU9J2RhdGUnXSxcbi5vcGVuLXRleHQgLl9mb3JtIFt0eXBlPSdkYXRldGltZSddLFxuLm9wZW4tdGV4dCAuX2Zvcm0gW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG4ub3Blbi10ZXh0IC5fZm9ybSBbdHlwZT0nbW9udGgnXSxcbi5vcGVuLXRleHQgLl9mb3JtIFt0eXBlPSd3ZWVrJ10sXG4ub3Blbi10ZXh0IC5fZm9ybSBbdHlwZT0nZW1haWwnXSxcbi5vcGVuLXRleHQgLl9mb3JtIFt0eXBlPSdudW1iZXInXSxcbi5vcGVuLXRleHQgLl9mb3JtIFt0eXBlPSdzZWFyY2gnXSxcbi5vcGVuLXRleHQgLl9mb3JtIFt0eXBlPSd0ZWwnXSxcbi5vcGVuLXRleHQgLl9mb3JtIFt0eXBlPSd0aW1lJ10sXG4ub3Blbi10ZXh0IC5fZm9ybSBbdHlwZT0ndXJsJ10sXG4ub3Blbi10ZXh0IC5fZm9ybSBbdHlwZT0nY29sb3InXSxcbi5vcGVuLXRleHQgLl9mb3JtIHRleHRhcmVhLFxuLm9wZW4tdGV4dCAuX2Zvcm0gc2VsZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMCAwIDMwcHg7XG4gIHBhZGRpbmc6IDEycHggMTZweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzBiODc5MztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiBub25lO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMjUyNTI1O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgLm9wZW4tdGV4dCAuX2Zvcm0gW3R5cGU9J3RleHQnXTo6cGxhY2Vob2xkZXIsXG4gIC5vcGVuLXRleHQgLl9mb3JtIFt0eXBlPSdwYXNzd29yZCddOjpwbGFjZWhvbGRlcixcbiAgLm9wZW4tdGV4dCAuX2Zvcm0gW3R5cGU9J2RhdGUnXTo6cGxhY2Vob2xkZXIsXG4gIC5vcGVuLXRleHQgLl9mb3JtIFt0eXBlPSdkYXRldGltZSddOjpwbGFjZWhvbGRlcixcbiAgLm9wZW4tdGV4dCAuX2Zvcm0gW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106OnBsYWNlaG9sZGVyLFxuICAub3Blbi10ZXh0IC5fZm9ybSBbdHlwZT0nbW9udGgnXTo6cGxhY2Vob2xkZXIsXG4gIC5vcGVuLXRleHQgLl9mb3JtIFt0eXBlPSd3ZWVrJ106OnBsYWNlaG9sZGVyLFxuICAub3Blbi10ZXh0IC5fZm9ybSBbdHlwZT0nZW1haWwnXTo6cGxhY2Vob2xkZXIsXG4gIC5vcGVuLXRleHQgLl9mb3JtIFt0eXBlPSdudW1iZXInXTo6cGxhY2Vob2xkZXIsXG4gIC5vcGVuLXRleHQgLl9mb3JtIFt0eXBlPSdzZWFyY2gnXTo6cGxhY2Vob2xkZXIsXG4gIC5vcGVuLXRleHQgLl9mb3JtIFt0eXBlPSd0ZWwnXTo6cGxhY2Vob2xkZXIsXG4gIC5vcGVuLXRleHQgLl9mb3JtIFt0eXBlPSd0aW1lJ106OnBsYWNlaG9sZGVyLFxuICAub3Blbi10ZXh0IC5fZm9ybSBbdHlwZT0ndXJsJ106OnBsYWNlaG9sZGVyLFxuICAub3Blbi10ZXh0IC5fZm9ybSBbdHlwZT0nY29sb3InXTo6cGxhY2Vob2xkZXIsXG4gIC5vcGVuLXRleHQgLl9mb3JtIHRleHRhcmVhOjpwbGFjZWhvbGRlcixcbiAgLm9wZW4tdGV4dCAuX2Zvcm0gc2VsZWN0OjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNhOWE5YTk7IH1cblxuLm9wZW4tdGV4dCAuX2Zvcm0gc2VsZWN0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjgxMzgsIDEzOCwgMTM4JTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBjb2xvcjogcmdiYSgzNywgMzcsIDM3LCAwLjQpOyB9XG5cbi5vcGVuLXRleHQgLl9mb3JtIHRleHRhcmVhIHtcbiAgaGVpZ2h0OiAxODBweDsgfVxuXG4ub3Blbi10ZXh0IC5fZm9ybSAuX2NoZWNrYm94LXJhZGlvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5vcGVuLXRleHQgLl9mb3JtIC5fY2hlY2tib3gtcmFkaW8gbGFiZWwge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpOyB9XG4gICAgLm9wZW4tdGV4dCAuX2Zvcm0gLl9jaGVja2JveC1yYWRpbyBsYWJlbDphZnRlciB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICB3aWR0aDogOXB4O1xuICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjMGI4NzkzO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwYjg3OTM7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogLTIycHg7XG4gICAgICB0b3A6IDdweDsgfVxuXG4ub3Blbi10ZXh0IC5fZm9ybSBbdHlwZT0nY2hlY2tib3gnXSB7XG4gIG1hcmdpbjogMCAxMHB4IDAgMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxNXB4O1xuICBoZWlnaHQ6IDE1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwYjg3OTM7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICMyNTI1MjU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgLm9wZW4tdGV4dCAuX2Zvcm0gW3R5cGU9J2NoZWNrYm94J106Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cblxuLm9wZW4tdGV4dCAuX2Zvcm0gW3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZCArIHNwYW4gbGFiZWw6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiOyB9XG5cbi5vcGVuLXRleHQgLl9mb3JtIC5fc3VibWl0IHtcbiAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IC44cHg7XG4gIHBhZGRpbmc6IDE1cHggMzVweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogMCAycHggOHB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKSwgMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpOyB9XG5cbi5vcGVuLXRleHQgLl9mb3JtIC5fZnVsbF93aWR0aCB7XG4gIGZsZXg6IDEgMCA1MCU7XG4gIHdpZHRoOiA1MCU7XG4gIHBhZGRpbmc6IDAgMjBweDsgfVxuICAub3Blbi10ZXh0IC5fZm9ybSAuX2Z1bGxfd2lkdGguX2ZpZWxkMSB7XG4gICAgZmxleDogMSAwIDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgIC5vcGVuLXRleHQgLl9mb3JtIC5fZnVsbF93aWR0aCB7XG4gICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLm9wZW4tdGV4dCAuX2Zvcm0gLl9idXR0b24td3JhcHBlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMjVweDtcbiAgZmxleDogMSAwIDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDIwcHg7IH1cblxuLm9wZW4tdGV4dCAuX2Zvcm0gLl9jbGVhciB7XG4gIGZsZXg6IDEgMCAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAyMHB4OyB9XG5cbi5vcGVuLXRleHQgLl9mb3JtIC5fYnV0dG9uLXdyYXBwZXIuX2lubGluZS1zdHlsZSB7XG4gIHdpZHRoOiAxMzRweDsgfVxuICAub3Blbi10ZXh0IC5fZm9ybSAuX2J1dHRvbi13cmFwcGVyLl9pbmxpbmUtc3R5bGUgYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZzogLjVlbSAxLjVlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwIC4yNWVtIC4yNWVtIDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgLm9wZW4tdGV4dCAuX2Zvcm0gLl9idXR0b24td3JhcHBlci5faW5saW5lLXN0eWxlIGJ1dHRvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDk3MTdiOyB9XG5cbi5vcGVuLXRleHQgLl9mb3JtLXRoYW5rLXlvdSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzBiODc5MztcbiAgYmFja2dyb3VuZDogcmdiYSgxMSwgMTM1LCAxNDcsIDAuMSk7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIG1hcmdpbjogMTVweDsgfVxuXG4ub3Blbi10ZXh0IC5fZXJyb3IuX2Fib3ZlLCAub3Blbi10ZXh0IC5fZXJyb3IuX2JlbG93IHtcbiAgZm9udC1zaXplOiAuN2VtO1xuICBjb2xvcjogcmVkO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjhweCk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4ub3Blbi10ZXh0IC5oYnNwdC1mb3JtIC5oc19lcnJvcl9yb2xsdXAsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gLmhzX2Vycm9yX3JvbGx1cCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBmb3JtLCAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIGZvcm0ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXNpemU6IDA7XG4gIHBhZGRpbmc6IDBweCAwOyB9XG4gIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSA+ICosIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gZm9ybSA+ICoge1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAtMjBweCAzMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LCAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQge1xuICAgICAgICBtYXJnaW46IDAgLTIwcHggMHB4OyB9XG4gICAgICAgIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldDpsYXN0LW9mLXR5cGUsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuICAgIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMSAuaHMtaW5wdXQsXG4gICAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0xIC5pbnB1dCwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0xIC5ocy1pbnB1dCxcbiAgICAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQuZm9ybS1jb2x1bW5zLTEgLmlucHV0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAgIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMSAuaHMtaW5wdXQsXG4gICAgICAgIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMSAuaW5wdXQsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMSAuaHMtaW5wdXQsXG4gICAgICAgIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMSAuaW5wdXQge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQuZm9ybS1jb2x1bW5zLTEgLmhzLWlucHV0IFt0eXBlPSdjaGVja2JveCddLFxuICAgICAgICAgIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMSAuaW5wdXQgW3R5cGU9J2NoZWNrYm94J10sIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMSAuaHMtaW5wdXQgW3R5cGU9J2NoZWNrYm94J10sXG4gICAgICAgICAgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0xIC5pbnB1dCBbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgICAgICAgICB3aWR0aDogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7IH0gfVxuICAgIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMiAuaHMtaW5wdXQsXG4gICAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0yIC5pbnB1dCwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0yIC5ocy1pbnB1dCxcbiAgICAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQuZm9ybS1jb2x1bW5zLTIgLmlucHV0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAgIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMiAuaHMtaW5wdXQsXG4gICAgICAgIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMiAuaW5wdXQsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMiAuaHMtaW5wdXQsXG4gICAgICAgIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMiAuaW5wdXQge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQuZm9ybS1jb2x1bW5zLTIgLmhzLWlucHV0IFt0eXBlPSdjaGVja2JveCddLFxuICAgICAgICAgIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMiAuaW5wdXQgW3R5cGU9J2NoZWNrYm94J10sIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMiAuaHMtaW5wdXQgW3R5cGU9J2NoZWNrYm94J10sXG4gICAgICAgICAgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0yIC5pbnB1dCBbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgICAgICAgICB3aWR0aDogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7IH0gfVxuICAgIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMSAuaHMtZm9ybS1maWVsZCwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0xIC5ocy1mb3JtLWZpZWxkIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAgIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMSAuaHMtZm9ybS1maWVsZCwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0xIC5ocy1mb3JtLWZpZWxkIHtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9IH1cbiAgICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQuZm9ybS1jb2x1bW5zLTIgLmhzLWZvcm0tZmllbGQsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMiAuaHMtZm9ybS1maWVsZCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAgIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMiAuaHMtZm9ybS1maWVsZCwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0yIC5ocy1mb3JtLWZpZWxkIHtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0yIC5ocy1mb3JtLWZpZWxkIFt0eXBlPSdjaGVja2JveCddLCAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQuZm9ybS1jb2x1bW5zLTIgLmhzLWZvcm0tZmllbGQgW3R5cGU9J2NoZWNrYm94J10ge1xuICAgICAgICAgICAgd2lkdGg6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogMjBweCAhaW1wb3J0YW50OyB9IH1cbiAgICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQgLmhzLWZvcm0tZmllbGQsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldCAuaHMtZm9ybS1maWVsZCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgICAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0IC5ocy1mb3JtLWZpZWxkLCAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQgLmhzLWZvcm0tZmllbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuICAgIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldCBsYWJlbCwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0IGxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTNweDtcbiAgICAgIGxlZnQ6IDM3cHg7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICBjb2xvcjogcmdiYSgzNywgMzcsIDM3LCAwLjUpO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7IH1cbiAgICAgIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldCBsYWJlbC5mbG9hdC1tZSwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0IGxhYmVsLmZsb2F0LW1lIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xuICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gICAgICAgIGNvbG9yOiAjMGI4NzkzOyB9XG5cbi5vcGVuLXRleHQgLmhic3B0LWZvcm0gW3R5cGU9J3RleHQnXSxcbi5vcGVuLXRleHQgLmhic3B0LWZvcm0gW3R5cGU9J3Bhc3N3b3JkJ10sXG4ub3Blbi10ZXh0IC5oYnNwdC1mb3JtIFt0eXBlPSdkYXRlJ10sXG4ub3Blbi10ZXh0IC5oYnNwdC1mb3JtIFt0eXBlPSdkYXRldGltZSddLFxuLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSxcbi5vcGVuLXRleHQgLmhic3B0LWZvcm0gW3R5cGU9J21vbnRoJ10sXG4ub3Blbi10ZXh0IC5oYnNwdC1mb3JtIFt0eXBlPSd3ZWVrJ10sXG4ub3Blbi10ZXh0IC5oYnNwdC1mb3JtIFt0eXBlPSdlbWFpbCddLFxuLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBbdHlwZT0nbnVtYmVyJ10sXG4ub3Blbi10ZXh0IC5oYnNwdC1mb3JtIFt0eXBlPSdzZWFyY2gnXSxcbi5vcGVuLXRleHQgLmhic3B0LWZvcm0gW3R5cGU9J3RlbCddLFxuLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBbdHlwZT0ndGltZSddLFxuLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBbdHlwZT0ndXJsJ10sXG4ub3Blbi10ZXh0IC5oYnNwdC1mb3JtIFt0eXBlPSdjb2xvciddLFxuLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSB0ZXh0YXJlYSxcbi5vcGVuLXRleHQgLmhic3B0LWZvcm0gc2VsZWN0LCAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIFt0eXBlPSd0ZXh0J10sXG4uYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIFt0eXBlPSdwYXNzd29yZCddLFxuLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZSddLFxuLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZXRpbWUnXSxcbi5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG4uYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIFt0eXBlPSdtb250aCddLFxuLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBbdHlwZT0nd2VlayddLFxuLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBbdHlwZT0nZW1haWwnXSxcbi5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gW3R5cGU9J251bWJlciddLFxuLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBbdHlwZT0nc2VhcmNoJ10sXG4uYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIFt0eXBlPSd0ZWwnXSxcbi5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gW3R5cGU9J3RpbWUnXSxcbi5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gW3R5cGU9J3VybCddLFxuLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBbdHlwZT0nY29sb3InXSxcbi5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gdGV4dGFyZWEsXG4uYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIHNlbGVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDAgMCAzMHB4O1xuICBwYWRkaW5nOiAxOHB4IDE2cHggNnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMGI4NzkzO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMyNTI1MjU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIFt0eXBlPSd0ZXh0J106OnBsYWNlaG9sZGVyLFxuICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIFt0eXBlPSdwYXNzd29yZCddOjpwbGFjZWhvbGRlcixcbiAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZSddOjpwbGFjZWhvbGRlcixcbiAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZXRpbWUnXTo6cGxhY2Vob2xkZXIsXG4gIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106OnBsYWNlaG9sZGVyLFxuICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIFt0eXBlPSdtb250aCddOjpwbGFjZWhvbGRlcixcbiAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBbdHlwZT0nd2VlayddOjpwbGFjZWhvbGRlcixcbiAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBbdHlwZT0nZW1haWwnXTo6cGxhY2Vob2xkZXIsXG4gIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gW3R5cGU9J251bWJlciddOjpwbGFjZWhvbGRlcixcbiAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBbdHlwZT0nc2VhcmNoJ106OnBsYWNlaG9sZGVyLFxuICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIFt0eXBlPSd0ZWwnXTo6cGxhY2Vob2xkZXIsXG4gIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gW3R5cGU9J3RpbWUnXTo6cGxhY2Vob2xkZXIsXG4gIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gW3R5cGU9J3VybCddOjpwbGFjZWhvbGRlcixcbiAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBbdHlwZT0nY29sb3InXTo6cGxhY2Vob2xkZXIsXG4gIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gdGV4dGFyZWE6OnBsYWNlaG9sZGVyLFxuICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIHNlbGVjdDo6cGxhY2Vob2xkZXIsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gW3R5cGU9J3RleHQnXTo6cGxhY2Vob2xkZXIsXG4gIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gW3R5cGU9J3Bhc3N3b3JkJ106OnBsYWNlaG9sZGVyLFxuICAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIFt0eXBlPSdkYXRlJ106OnBsYWNlaG9sZGVyLFxuICAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIFt0eXBlPSdkYXRldGltZSddOjpwbGFjZWhvbGRlcixcbiAgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTo6cGxhY2Vob2xkZXIsXG4gIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gW3R5cGU9J21vbnRoJ106OnBsYWNlaG9sZGVyLFxuICAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIFt0eXBlPSd3ZWVrJ106OnBsYWNlaG9sZGVyLFxuICAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIFt0eXBlPSdlbWFpbCddOjpwbGFjZWhvbGRlcixcbiAgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBbdHlwZT0nbnVtYmVyJ106OnBsYWNlaG9sZGVyLFxuICAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIFt0eXBlPSdzZWFyY2gnXTo6cGxhY2Vob2xkZXIsXG4gIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gW3R5cGU9J3RlbCddOjpwbGFjZWhvbGRlcixcbiAgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBbdHlwZT0ndGltZSddOjpwbGFjZWhvbGRlcixcbiAgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBbdHlwZT0ndXJsJ106OnBsYWNlaG9sZGVyLFxuICAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIFt0eXBlPSdjb2xvciddOjpwbGFjZWhvbGRlcixcbiAgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIsXG4gIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gc2VsZWN0OjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNhOWE5YTk7IH1cblxuLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBzZWxlY3QsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gc2VsZWN0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjgxMzgsIDEzOCwgMTM4JTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDVweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBjb2xvcjogcmdiYSgzNywgMzcsIDM3LCAwLjQpOyB9XG5cbi5vcGVuLXRleHQgLmhic3B0LWZvcm0gdGV4dGFyZWEsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gdGV4dGFyZWEge1xuICBoZWlnaHQ6IDE4MHB4OyB9XG5cbi5vcGVuLXRleHQgLmhic3B0LWZvcm0gLmlucHV0cy1saXN0LCAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIC5pbnB1dHMtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIC5pbnB1dHMtbGlzdCBsaSwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSAuaW5wdXRzLWxpc3QgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIC5pbnB1dHMtbGlzdCBsaSBsYWJlbCwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSAuaW5wdXRzLWxpc3QgbGkgbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIGNvbG9yOiAjMjUyNTI1OyB9XG4gICAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSAuaW5wdXRzLWxpc3QgbGk6YmVmb3JlLCAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIC5pbnB1dHMtbGlzdCBsaTpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4ub3Blbi10ZXh0IC5oYnNwdC1mb3JtIFt0eXBlPSdjaGVja2JveCddLCAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIFt0eXBlPSdjaGVja2JveCddIHtcbiAgbWFyZ2luOiAwIDEwcHggMCAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDIwcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMGI4NzkzO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjMjUyNTI1O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBmbGV4OiAwIDEgMjBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSBbdHlwZT0nY2hlY2tib3gnXSwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgICB3aWR0aDogMjBweCAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7IH0gfVxuICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIFt0eXBlPSdjaGVja2JveCddOmZvY3VzLCAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIFt0eXBlPSdjaGVja2JveCddOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gW3R5cGU9J2NoZWNrYm94J10gKyBzcGFuLCAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIFt0eXBlPSdjaGVja2JveCddICsgc3BhbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgZmxleDogMSAwOyB9XG5cbi5vcGVuLXRleHQgLmhic3B0LWZvcm0gW3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZCwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBbdHlwZT0nY2hlY2tib3gnXTpjaGVja2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBiODc5MztcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gW3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZDphZnRlciwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSBbdHlwZT0nY2hlY2tib3gnXTpjaGVja2VkOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKck1wiO1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMnB4O1xuICAgIHRvcDogMDsgfVxuXG4ub3Blbi10ZXh0IC5oYnNwdC1mb3JtIC5ocy1maWVsZHR5cGUtZmlsZSwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSAuaHMtZmllbGR0eXBlLWZpbGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMGI4NzkzO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIG1hcmdpbjogMCAyMHB4O1xuICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCkgIWltcG9ydGFudDsgfVxuICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIC5ocy1maWVsZHR5cGUtZmlsZTphZnRlciwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSAuaHMtZmllbGR0eXBlLWZpbGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiQXR0YWNoIEZpbGVcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgICBjb2xvcjogI2ZhZmFmYTtcbiAgICB0b3A6IDlweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAuOGVtO1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zOyB9XG4gIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gLmhzLWZpZWxkdHlwZS1maWxlOmhvdmVyOmFmdGVyLCAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIC5ocy1maWVsZHR5cGUtZmlsZTpob3ZlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogIzA5NzE3YjsgfVxuICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIC5ocy1maWVsZHR5cGUtZmlsZSAuZmlsZS1mb3JtLWRpc3BsYXksIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gLmhzLWZpZWxkdHlwZS1maWxlIC5maWxlLWZvcm0tZGlzcGxheSB7XG4gICAgY29sb3I6ICMyNTI1MjU7XG4gICAgbWFyZ2luOiAtMzBweCAwIDRweDsgfVxuICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIC5ocy1maWVsZHR5cGUtZmlsZSBbdHlwZT0nZmlsZSddLCAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIC5ocy1maWVsZHR5cGUtZmlsZSBbdHlwZT0nZmlsZSddIHtcbiAgICB3aWR0aDogMC4xcHg7XG4gICAgaGVpZ2h0OiAwLjFweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xOyB9XG4gIC5vcGVuLXRleHQgLmhic3B0LWZvcm0gLmhzLWZpZWxkdHlwZS1maWxlIGxhYmVsLCAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIC5ocy1maWVsZHR5cGUtZmlsZSBsYWJlbCB7XG4gICAgcGFkZGluZzogMTJweCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6IHJnYmEoMzcsIDM3LCAzNywgMC41KTtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIC5ocy1maWVsZHR5cGUtZmlsZSBsYWJlbCBzcGFuLCAuYmxvZy1lbnRyeSBhcnRpY2xlIC5oYnNwdC1mb3JtIC5ocy1maWVsZHR5cGUtZmlsZSBsYWJlbCBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSAuaHMtZmllbGR0eXBlLWZpbGUgbGFiZWwuZmxvYXQtbWUsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gLmhzLWZpZWxkdHlwZS1maWxlIGxhYmVsLmZsb2F0LW1lIHtcbiAgICAgIHBhZGRpbmc6IDEzcHggMDsgfVxuICAgICAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSAuaHMtZmllbGR0eXBlLWZpbGUgbGFiZWwuZmxvYXQtbWUgc3BhbiwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSAuaHMtZmllbGR0eXBlLWZpbGUgbGFiZWwuZmxvYXQtbWUgc3BhbiB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdG9wOiAtNi41cHg7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAgICAgICBjb2xvcjogcmdiYSgzNywgMzcsIDM3LCAwLjUpOyB9XG4gICAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSAuaHMtZmllbGR0eXBlLWZpbGUgbGFiZWwuZmxvYXQtbGFiZWwsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gLmhzLWZpZWxkdHlwZS1maWxlIGxhYmVsLmZsb2F0LWxhYmVsIHtcbiAgICAgIHBhZGRpbmc6IDEzcHggMDsgfVxuICAgICAgLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSAuaHMtZmllbGR0eXBlLWZpbGUgbGFiZWwuZmxvYXQtbGFiZWwgc3BhbiwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSAuaHMtZmllbGR0eXBlLWZpbGUgbGFiZWwuZmxvYXQtbGFiZWwgc3BhbiB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC42KTtcbiAgICAgICAgdG9wOiAtNi41cHg7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAgICAgICBjb2xvcjogIzBiODc5MzsgfVxuXG4ub3Blbi10ZXh0IC5oYnNwdC1mb3JtIC5ocy1maWVsZHR5cGUtY2hlY2tib3ggbGFiZWwsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gLmhzLWZpZWxkdHlwZS1jaGVja2JveCBsYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogcmdiYSgzNywgMzcsIDM3LCAwLjUpO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIHRyYW5zaXRpb246IGFsbCAyMDBtczsgfVxuICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIC5ocy1maWVsZHR5cGUtY2hlY2tib3ggbGFiZWwuZmxvYXQtbWUsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gLmhzLWZpZWxkdHlwZS1jaGVja2JveCBsYWJlbC5mbG9hdC1tZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gICAgY29sb3I6IHJnYmEoMzcsIDM3LCAzNywgMC41KTsgfVxuXG4ub3Blbi10ZXh0IC5oYnNwdC1mb3JtIC5ocy1maWVsZHR5cGUtY2hlY2tib3ggdWwgbGkgbGFiZWwuZmxvYXQtbWUsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gLmhzLWZpZWxkdHlwZS1jaGVja2JveCB1bCBsaSBsYWJlbC5mbG9hdC1tZSB7XG4gIGNvbG9yOiAjMjUyNTI1OyB9XG5cbi5vcGVuLXRleHQgLmhic3B0LWZvcm0gLmhzLXN1Ym1pdCwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSAuaHMtc3VibWl0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5vcGVuLXRleHQgLmhic3B0LWZvcm0gLmhzLWJ1dHRvbiwgLmJsb2ctZW50cnkgYXJ0aWNsZSAuaGJzcHQtZm9ybSAuaHMtYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IC44cHg7XG4gIHBhZGRpbmc6IDE1cHggMzVweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogMCAycHggOHB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKSwgMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAyMDBtczsgfVxuICAub3Blbi10ZXh0IC5oYnNwdC1mb3JtIC5ocy1idXR0b246aG92ZXIsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gLmhzLWJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogIzA5NzE3YjsgfVxuXG4ub3Blbi10ZXh0IC5oYnNwdC1mb3JtIC5ocy1lcnJvci1tc2csIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gLmhzLWVycm9yLW1zZyB7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cblxuLm9wZW4tdGV4dCAuaGJzcHQtZm9ybSAuc3VibWl0dGVkLW1lc3NhZ2UsIC5ibG9nLWVudHJ5IGFydGljbGUgLmhic3B0LWZvcm0gLnN1Ym1pdHRlZC1tZXNzYWdlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMGI4NzkzO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDExLCAxMzUsIDE0NywgMC4xKTtcbiAgcGFkZGluZzogMzBweDtcbiAgbWFyZ2luOiAxNXB4OyB9XG5cbi5vcGVuLXRleHQubGlnaHQtdGhlbWUgLmhic3B0LWZvcm0gLmhzLWVycm9yLW1zZywgLmJsb2ctZW50cnkgYXJ0aWNsZS5saWdodC10aGVtZSAuaGJzcHQtZm9ybSAuaHMtZXJyb3ItbXNnIHtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG4gIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tbGVmdDogMTVweDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmhzLWN0YS13cmFwcGVyIGEuZmxvYXRpbmctYnV0dG9uIHtcbiAgcGFkZGluZzogMjBweDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAwIDM1cHggMDtcbiAgYm94LXNoYWRvdzogMCAwIDZweCByZ2JhKDM3LCAzNywgMzcsIDAuMyk7IH1cbiAgLmhzLWN0YS13cmFwcGVyIGEuZmxvYXRpbmctYnV0dG9uOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDM1LCAyMSwgNjAsIDAuNyk7XG4gICAgei1pbmRleDogLTE7IH1cbiAgLmhzLWN0YS13cmFwcGVyIGEuZmxvYXRpbmctYnV0dG9uIGgzIHtcbiAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgcGFkZGluZzogMCAwIDEwcHggMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7IH1cbiAgLmhzLWN0YS13cmFwcGVyIGEuZmxvYXRpbmctYnV0dG9uIGg2IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4OyB9XG4gICAgLmhzLWN0YS13cmFwcGVyIGEuZmxvYXRpbmctYnV0dG9uIGg2OmFmdGVyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgY29udGVudDogXCJcXGYwNjFcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgZm9udC1zaXplOiAuOGVtO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLTFweDsgfVxuICAuaHMtY3RhLXdyYXBwZXIgYS5mbG9hdGluZy1idXR0b24gcCB7XG4gICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE1MCU7IH1cbiAgLmhzLWN0YS13cmFwcGVyIGEuZmxvYXRpbmctYnV0dG9uIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk1ZW0pIHtcbiAgICAuaHMtY3RhLXdyYXBwZXIgYS5mbG9hdGluZy1idXR0b24ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWF4LXdpZHRoOiAyNzBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTI5NXB4O1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogMjBweDsgfSB9XG4gIC5ocy1jdGEtd3JhcHBlciBhLmZsb2F0aW5nLWJ1dHRvbjpob3ZlciBoNjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDhweCk7IH1cblxuLmdmb3JtX3dyYXBwZXIgZm9ybSAudmFsaWRhdGlvbl9lcnJvciB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cblxuLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSAuZmlsZS1mb3JtLWRpc3BsYXkge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBtYXJnaW46IDMwcHggMCAwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxNXB4IDMwcHg7IH1cbiAgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSAuZmlsZS1mb3JtLWRpc3BsYXkgKyAuZmlsZS1mb3JtLWRpc3BsYXkge1xuICAgIG1hcmdpbjogNXB4IDAgMDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMge1xuICBtYXJnaW46IC0yMHB4ICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCB7XG4gICAgbWFyZ2luOiAxNXB4IDA7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gICAgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgZGl2LmdpbnB1dF9jb250YWluZXIge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIGlucHV0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDE4cHggMTZweCA2cHggIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zOyB9XG4gICAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCBpbnB1dDpmb2N1cyB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwYjg3OTM7IH1cbiAgICAgIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIGlucHV0LmJ1dHRvbiwgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgLndwLWJsb2NrLWJ1dHRvbiBpbnB1dC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgaW5wdXQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgICAgcGFkZGluZzogMjRweCAhaW1wb3J0YW50OyB9XG4gICAgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgLmdmaWVsZF9sYWJlbCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEzcHg7XG4gICAgICBsZWZ0OiAzN3B4O1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgY29sb3I6IHJnYmEoMzcsIDM3LCAzNywgMC41KTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zOyB9XG4gICAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCAuZ2ZpZWxkX2xhYmVsLmZsb2F0LW1lIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xuICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gICAgICAgIGNvbG9yOiAjMGI4NzkzOyB9XG4gICAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCAuZ2ZpZWxkX2xhYmVsIC5nZmllbGRfcmVxdWlyZWQge1xuICAgICAgICBjb2xvcjogIzBiODc5MztcbiAgICAgICAgZm9udC1zaXplOiAxZW07IH1cbiAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5jb2wtMSB7XG4gICAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgICAgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuY29sLTEge1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5jb2wtMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAgIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmNvbC0yIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuY29sLTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5jb2wtMyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmNvbC00IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgICAgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuY29sLTQge1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5jb2wtNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAgIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmNvbC02IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuY29sLTEyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAgIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmNvbC0xMiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmZpbGUtdXBsb2FkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgICBtYXJnaW46IDE1cHggMjBweCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJveC1zaGFkb3c6IDAgN3B4IDEycHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9XG4gICAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5maWxlLXVwbG9hZCAuZ2Zvcm1fZHJvcF9hcmVhIHtcbiAgICAgICAgYmFja2dyb3VuZDogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7IH1cbiAgICAgICAgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuZmlsZS11cGxvYWQgLmdmb3JtX2Ryb3BfYXJlYSAuZ2Zvcm1fZHJvcF9pbnN0cnVjdGlvbnMge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAgICAgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuZmlsZS11cGxvYWQgLmdmb3JtX2Ryb3BfYXJlYSAuZ2Zvcm1fYnV0dG9uX3NlbGVjdF9maWxlcyB7XG4gICAgICAgICAgY29sb3I6ICMwYjg3OTM7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGI4NzkzOyB9XG4gICAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5maWxlLXVwbG9hZCAudmFsaWRhdGlvbl9tZXNzYWdlIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAgIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmZpbGUtdXBsb2FkIC52YWxpZGF0aW9uX21lc3NhZ2UgdWwgbGkge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDI0cHg7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMzcsIDM3LCAzNywgMC42KTtcbiAgICAgICAgICBmb250LXNpemU6IDAuODc1ZW07XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAgIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmZpbGUtdXBsb2FkIC5naW5wdXRfcHJldmlldyB7XG4gICAgICAgIG1hcmdpbjogMTJweCAwO1xuICAgICAgICBwYWRkaW5nOiAwIDI0cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5maWxlLXVwbG9hZCAuZ2lucHV0X3ByZXZpZXcgLmdmb3JtX2RlbGV0ZSB7XG4gICAgICAgICAgZmxleDogMCAxIGF1dG87IH1cbiAgICAgICAgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuZmlsZS11cGxvYWQgLmdpbnB1dF9wcmV2aWV3IHN0cm9uZyB7XG4gICAgICAgICAgZmxleDogMSAwIGF1dG87IH1cbiAgICAgIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmZpbGUtdXBsb2FkIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5maWxlLXVwbG9hZCBsYWJlbCAuZ2ZpZWxkX3JlcXVpcmVkIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5maWxlLXVwbG9hZCA+IC52YWxpZGF0aW9uX21lc3NhZ2Uge1xuICAgICAgICBwYWRkaW5nOiAwIDI0cHggMzBweCAhaW1wb3J0YW50OyB9XG4gICAgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuZ3NlY3Rpb24ge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgbWFyZ2luOiAxNXB4IDAgMzBweCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAyMHB4OyB9XG4gICAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5nc2VjdGlvbiAuZ3NlY3Rpb25fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgICAgIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmdzZWN0aW9uIC5nc2VjdGlvbl9kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBjb2xvcjogcmdiYSgzNywgMzcsIDM3LCAwLjYpO1xuICAgICAgICBtYXJnaW46IDEwcHggMCAwIDA7IH1cbiAgICAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5nZmllbGRfZXJyb3Ige1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1vYmlsZS1tZW51LFxuICAuc2l0ZS10aXRsZS1iYXIge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmRlc2t0b3AtbWVudSxcbiAgLnNpdGUtbmF2aWdhdGlvbiAudG9wLWJhci1sZWZ0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uc2l0ZS1kZXNrdG9wLXRpdGxlIGEge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4ubW9iaWxlLW1lbnUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5vZmYtY2FudmFzID4gdWwubWVudSB7XG4gIGhlaWdodDogMTAwdmg7XG4gIHBhZGRpbmc6IDFyZW07IH1cbiAgLm9mZi1jYW52YXMgPiB1bC5tZW51IGEge1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cblxuLm9mZi1jYW52YXMgLm1lbnUgLmFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjOyB9XG5cbi50aXRsZS1iYXItdGl0bGUgYSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICNCOUI5Qjk7IH1cblxuLm1vYmlsZS1tZW51IC5tZW51IC5pcy1hY3RpdmUgPiBhLFxuLm1vYmlsZS1vZmYtY2FudmFzLW1lbnUgLm1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzY0NTRmOyB9XG5cbi50b3AtYmFyIC50b3AtYmFyLXRpdGxlIGEge1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjQjlCOUI5O1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg7IH1cblxuLnRvcC1iYXIgLm1lbnUgYSB7XG4gIGNvbG9yOiAjZTZlNmU2O1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLnRvcC1iYXIgLm1lbnUgYTpob3Zlcjpub3QoLmJ1dHRvbikge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0MjUyNUQ7IH1cblxuLnRvcC1iYXIgLm1lbnUgLmFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjOyB9XG5cbi50b3AtYmFyIC5tZW51ID4gbGk6bm90KC5tZW51LXRleHQpID4gYSB7XG4gIHBhZGRpbmc6IDFyZW07IH1cblxuLnRvcC1iYXIgLm1lbnUgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM0ZTRlNGU7IH1cblxuLnRvcC1iYXIgLmRyb3Bkb3duLm1lbnUgLnN1Ym1lbnUge1xuICBib3JkZXI6IDA7IH1cblxuLnRvcC1iYXIgLmRyb3Bkb3duLm1lbnUgLmhhcy1zdWJtZW51LmlzLWRvd24tYXJyb3cgYSB7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07IH1cblxuLnRvcC1iYXIgLmRyb3Bkb3duLm1lbnUgLmhhcy1zdWJtZW51LmlzLWRvd24tYXJyb3cgPiBhOjphZnRlciB7XG4gIGJvcmRlcjogMDsgfVxuXG4udG9wLWJhciAuZHJvcGRvd24ubWVudTpmaXJzdC1jaGlsZCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnNpdGUtbmF2aWdhdGlvbiB7XG4gICAgcGFkZGluZzogMDsgfSB9XG5cbi5wb3N0LW5hdmlnYXRpb246OmJlZm9yZSwgLnBvc3QtbmF2aWdhdGlvbjo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTsgfVxuXG4ucG9zdC1uYXZpZ2F0aW9uOjphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5uYXYtcHJldmlvdXMge1xuICBmbG9hdDogbGVmdDsgfVxuXG4ubmF2LW5leHQge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLnNpdGUtaGVhZGVyIHtcbiAgaGVpZ2h0OiA5MHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTtcbiAgb3BhY2l0eTogMDsgfVxuICAuc2l0ZS1oZWFkZXIgLmxvZ28ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDIwcHg7XG4gICAgbGVmdDogNDBweDtcbiAgICB3aWR0aDogMjUwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zOyB9XG4gICAgLnNpdGUtaGVhZGVyIC5sb2dvIC5jYXAsIC5zaXRlLWhlYWRlciAubG9nbyAudGV4dCwgLnNpdGUtaGVhZGVyIC5sb2dvIC5ydWxlLCAuc2l0ZS1oZWFkZXIgLmxvZ28gLmtlcm5lbCB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7IH1cbiAgICAuc2l0ZS1oZWFkZXIgLmxvZ28gc3ZnIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLnNpdGUtaGVhZGVyIC5sb2dvIHtcbiAgICAgICAgd2lkdGg6IDE2MHB4O1xuICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICB0b3A6IDEwcHg7IH0gfVxuICAuc2l0ZS1oZWFkZXIgLm1vYmlsZS1uYXYtdHJpZ2dlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgdG9wOiAyNXB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICB6LWluZGV4OiA5OTk7IH1cbiAgICAuc2l0ZS1oZWFkZXIgLm1vYmlsZS1uYXYtdHJpZ2dlciAudG9wLWJhciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtczsgfVxuICAgIC5zaXRlLWhlYWRlciAubW9iaWxlLW5hdi10cmlnZ2VyIC5taWQtYmFyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7IH1cbiAgICAuc2l0ZS1oZWFkZXIgLm1vYmlsZS1uYXYtdHJpZ2dlciAuYm90dG9tLWJhciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtczsgfVxuICAgIC5zaXRlLWhlYWRlciAubW9iaWxlLW5hdi10cmlnZ2VyLnRyaWdnZXItb3BlbiAudG9wLWJhciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZVkoY2FsYygtNTAlKSk7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7IH1cbiAgICAuc2l0ZS1oZWFkZXIgLm1vYmlsZS1uYXYtdHJpZ2dlci50cmlnZ2VyLW9wZW4gLm1pZC1iYXIge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7IH1cbiAgICAuc2l0ZS1oZWFkZXIgLm1vYmlsZS1uYXYtdHJpZ2dlci50cmlnZ2VyLW9wZW4gLmJvdHRvbS1iYXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlWShjYWxjKDUwJSkpO1xuICAgICAgYm90dG9tOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLnNpdGUtaGVhZGVyIC5tb2JpbGUtbmF2LXRyaWdnZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyMHB4O1xuICAgIHJpZ2h0OiAyNXB4O1xuICAgIHRyYW5zaXRpb246IGFsbCA0NTBtcyBlYXNlLW91dDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDM3LCAzNywgMzcsIDAuOTUpO1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgb3BhY2l0eTogMDsgfVxuICAgICAgICAuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lci5vcGVuIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgb3BhY2l0eTogMTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIgdWwjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIgdWwjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24gbGkge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICBmb250LXNpemU6IDAuOTM3NWVtOyB9XG4gICAgICAuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lciB1bCNtZW51LXByaW1hcnktbmF2aWdhdGlvbiBsaTpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgIC5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHVsI21lbnUtcHJpbWFyeS1uYXZpZ2F0aW9uIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41NjI1ZW07XG4gICAgICAgICAgb3BhY2l0eTogMDsgfVxuICAgICAgICAgIC5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHVsI21lbnUtcHJpbWFyeS1uYXZpZ2F0aW9uIGxpOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1vdXQgMjAwbXM7IH1cbiAgICAgICAgICAuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lciB1bCNtZW51LXByaW1hcnktbmF2aWdhdGlvbiBsaTpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2Utb3V0IDI1MG1zOyB9XG4gICAgICAgICAgLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIgdWwjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24gbGk6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLW91dCAzMDBtczsgfVxuICAgICAgICAgIC5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHVsI21lbnUtcHJpbWFyeS1uYXZpZ2F0aW9uIGxpOm50aC1jaGlsZCg0KSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1vdXQgMzUwbXM7IH1cbiAgICAgICAgICAuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lciB1bCNtZW51LXByaW1hcnktbmF2aWdhdGlvbiBsaTpudGgtY2hpbGQoNSkge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2Utb3V0IDQwMG1zOyB9XG4gICAgICAgICAgLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIgdWwjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24gbGk6bnRoLWNoaWxkKDYpIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLW91dCA0NTBtczsgfVxuICAgICAgICAgIC5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHVsI21lbnUtcHJpbWFyeS1uYXZpZ2F0aW9uIGxpOm50aC1jaGlsZCg3KSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1vdXQgNTAwbXM7IH1cbiAgICAgICAgICAuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lciB1bCNtZW51LXByaW1hcnktbmF2aWdhdGlvbiBsaTpudGgtY2hpbGQoOCkge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2Utb3V0IDU1MG1zOyB9XG4gICAgICAgICAgLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIgdWwjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24gbGk6bnRoLWNoaWxkKDkpIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLW91dCA2MDBtczsgfVxuICAgICAgICAgIC5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHVsI21lbnUtcHJpbWFyeS1uYXZpZ2F0aW9uIGxpOm50aC1jaGlsZCgxMCkge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2Utb3V0IDY1MG1zOyB9XG4gICAgICAgICAgLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIgdWwjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24gbGk6bnRoLWNoaWxkKDExKSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1vdXQgNzAwbXM7IH1cbiAgICAgICAgICAuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lciB1bCNtZW51LXByaW1hcnktbmF2aWdhdGlvbiBsaTpudGgtY2hpbGQoMTIpIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLW91dCA3NTBtczsgfVxuICAgICAgICAgIC5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHVsI21lbnUtcHJpbWFyeS1uYXZpZ2F0aW9uIGxpOm50aC1jaGlsZCgxMykge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2Utb3V0IDgwMG1zOyB9XG4gICAgICAgICAgLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIgdWwjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24gbGk6bnRoLWNoaWxkKDE0KSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1vdXQgODUwbXM7IH1cbiAgICAgICAgICAuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lciB1bCNtZW51LXByaW1hcnktbmF2aWdhdGlvbiBsaTpudGgtY2hpbGQoMTUpIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLW91dCA5MDBtczsgfVxuICAgICAgICAgIC5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHVsI21lbnUtcHJpbWFyeS1uYXZpZ2F0aW9uIGxpOm50aC1jaGlsZCgxNikge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2Utb3V0IDk1MG1zOyB9XG4gICAgICAgICAgLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIgdWwjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24gbGk6bnRoLWNoaWxkKDE3KSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1vdXQgMTAwMG1zOyB9XG4gICAgICAgICAgLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIgdWwjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24gbGk6bnRoLWNoaWxkKDE4KSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1vdXQgMTA1MG1zOyB9XG4gICAgICAgICAgLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIgdWwjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24gbGk6bnRoLWNoaWxkKDE5KSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1vdXQgMTEwMG1zOyB9IH1cbiAgICAgIC5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHVsI21lbnUtcHJpbWFyeS1uYXZpZ2F0aW9uIGxpIGEge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgbWFyZ2luOiAwLjY1ZW0gMWVtO1xuICAgICAgICBwYWRkaW5nOiAwLjY1ZW0gMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgICAuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lciB1bCNtZW51LXByaW1hcnktbmF2aWdhdGlvbiBsaSBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgICAgIC5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHVsI21lbnUtcHJpbWFyeS1uYXZpZ2F0aW9uIGxpOmxhc3Qtb2YtdHlwZSBhIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgICAgLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIgdWwjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24gbGk6bGFzdC1vZi10eXBlIGEge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyLm9wZW4gdWwjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24gbGkge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIG9wYWNpdHk6IDE7IH0gfVxuICAuc2l0ZS1oZWFkZXIuZGFyay10aGVtZSAubG9nbyAuY2FwIHtcbiAgICBmaWxsOiAjMDAwO1xuICAgIHN0cm9rZTogIzAwMDsgfVxuICAuc2l0ZS1oZWFkZXIuZGFyay10aGVtZSAubG9nbyAudGV4dCB7XG4gICAgZmlsbDogIzAwMDsgfVxuICAuc2l0ZS1oZWFkZXIuZGFyay10aGVtZSAubG9nbyAucnVsZSB7XG4gICAgZmlsbDogIzAwMDtcbiAgICBzdHJva2U6ICMwMDA7IH1cbiAgLnNpdGUtaGVhZGVyLmRhcmstdGhlbWUgLmxvZ28gLmtlcm5lbCB7XG4gICAgc3Ryb2tlOiAjMDAwOyB9XG4gIC5zaXRlLWhlYWRlci5kYXJrLXRoZW1lIC5tb2JpbGUtbmF2LXRyaWdnZXIgLnRvcC1iYXIsIC5zaXRlLWhlYWRlci5kYXJrLXRoZW1lIC5tb2JpbGUtbmF2LXRyaWdnZXIgLm1pZC1iYXIsIC5zaXRlLWhlYWRlci5kYXJrLXRoZW1lIC5tb2JpbGUtbmF2LXRyaWdnZXIgLmJvdHRvbS1iYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTsgfVxuICAuc2l0ZS1oZWFkZXIuZGFyay10aGVtZSAubW9iaWxlLW5hdi10cmlnZ2VyLnRyaWdnZXItb3BlbiAudG9wLWJhciwgLnNpdGUtaGVhZGVyLmRhcmstdGhlbWUgLm1vYmlsZS1uYXYtdHJpZ2dlci50cmlnZ2VyLW9wZW4gLm1pZC1iYXIsIC5zaXRlLWhlYWRlci5kYXJrLXRoZW1lIC5tb2JpbGUtbmF2LXRyaWdnZXIudHJpZ2dlci1vcGVuIC5ib3R0b20tYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIC5zaXRlLWhlYWRlci5kYXJrLXRoZW1lIC5tYWluLW5hdi1jb250YWluZXIgdWwjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24gbGkgYSB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5zaXRlLWhlYWRlci5kYXJrLXRoZW1lIC5tYWluLW5hdi1jb250YWluZXIgdWwjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24gbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9IH1cblxuLm1lbnUjbWVudS1wcmltYXJ5LW5hdmlnYXRpb24gbGkgYTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICBjb250ZW50OiAnJztcbiAgaGVpZ2h0OiAzcHg7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zO1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwKTsgfVxuXG4ubWVudSNtZW51LXByaW1hcnktbmF2aWdhdGlvbiBsaTpob3ZlciA+IGEsXG4ubWVudSNtZW51LXByaW1hcnktbmF2aWdhdGlvbiAuaXMtYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5tZW51I21lbnUtcHJpbWFyeS1uYXZpZ2F0aW9uIGxpOmhvdmVyID4gYTo6YWZ0ZXIsXG4gIC5tZW51I21lbnUtcHJpbWFyeS1uYXZpZ2F0aW9uIC5pcy1hY3RpdmUgPiBhOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7IH1cblxuLm1lbnUgbGk6aG92ZXIgPiBhLFxuLm1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4uc2l0ZS1oZWFkZXIuc3RpY2t5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI1MjUyNTtcbiAgaGVpZ2h0OiA3MHB4OyB9XG4gIC5zaXRlLWhlYWRlci5zdGlja3kgLm1vYmlsZS1uYXYtdHJpZ2dlciAudG9wLWJhciwgLnNpdGUtaGVhZGVyLnN0aWNreSAubW9iaWxlLW5hdi10cmlnZ2VyIC5taWQtYmFyLCAuc2l0ZS1oZWFkZXIuc3RpY2t5IC5tb2JpbGUtbmF2LXRyaWdnZXIgLmJvdHRvbS1iYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG4gIC5zaXRlLWhlYWRlci5zdGlja3kgLm1haW4tbmF2LWNvbnRhaW5lciB1bCNtZW51LXByaW1hcnktbmF2aWdhdGlvbiBsaSBhIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAuc2l0ZS1oZWFkZXIuc3RpY2t5IC5sb2dvIHtcbiAgICB3aWR0aDogMTYwcHg7XG4gICAgdG9wOiAxMHB4OyB9XG4gICAgLnNpdGUtaGVhZGVyLnN0aWNreSAubG9nbyAuY2FwIHtcbiAgICAgIGZpbGw6ICNmZmY7XG4gICAgICBzdHJva2U6ICNmZmY7IH1cbiAgICAuc2l0ZS1oZWFkZXIuc3RpY2t5IC5sb2dvIC50ZXh0IHtcbiAgICAgIGZpbGw6ICNmZmY7IH1cbiAgICAuc2l0ZS1oZWFkZXIuc3RpY2t5IC5sb2dvIC5ydWxlIHtcbiAgICAgIGZpbGw6ICNmZmY7XG4gICAgICBzdHJva2U6ICNmZmY7IH1cbiAgICAuc2l0ZS1oZWFkZXIuc3RpY2t5IC5sb2dvIC5rZXJuZWwge1xuICAgICAgc3Ryb2tlOiAjZmZmOyB9XG4gIC5zaXRlLWhlYWRlci5zdGlja3kgLm1haW4tbmF2LWNvbnRhaW5lciB7XG4gICAgdG9wOiAxMHB4OyB9XG5cbi5tYWluLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDY4Ljc1cmVtO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tYWluLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9IH1cblxuLm1haW4tZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIG1hcmdpbi10b3A6IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWFpbi1ncmlkIHtcbiAgICAgIG1hcmdpbi10b3A6IDNyZW07IH0gfVxuICAubWFpbi1ncmlkLnNpZGViYXItbGVmdCAubWFpbi1jb250ZW50IHtcbiAgICBvcmRlcjogMTsgfVxuICAubWFpbi1ncmlkLnNpZGViYXItbGVmdCAuc2lkZWJhciB7XG4gICAgb3JkZXI6IDI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWFpbi1ncmlkLnNpZGViYXItbGVmdCAubWFpbi1jb250ZW50IHtcbiAgICAgIG9yZGVyOiAyOyB9XG4gICAgLm1haW4tZ3JpZC5zaWRlYmFyLWxlZnQgLnNpZGViYXIge1xuICAgICAgb3JkZXI6IDE7IH0gfVxuICAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQtZnVsbC13aWR0aCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIC5tYWluLWdyaWQgLm1haW4tY29udGVudCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5tYWluLWdyaWQgLm1haW4tY29udGVudCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDIuNXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH0gfVxuICAubWFpbi1ncmlkIC5zaWRlYmFyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm1haW4tZ3JpZCAuc2lkZWJhciB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDIuNXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07IH0gfVxuXG5zZWN0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhOyB9XG4gIHNlY3Rpb24gLmdyaWQtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjsgfVxuICBzZWN0aW9uLmxpZ2h0LXRleHR1cmU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2hleC1ub2RlLWdyaWQtbGlnaHQucG5nXCIpIDAgMCByZXBlYXQ7IH1cbiAgc2VjdGlvbi5kYXJrLXRleHR1cmU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2hleC1ub2RlLWdyaWQtZGFyay5wbmdcIikgMCAwIHJlcGVhdDsgfVxuXG4uZm9vdGVyLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDY4Ljc1cmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjYWNhY2E7XG4gIG1hcmdpbi10b3A6IDMuNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9IH1cblxuLmZvb3Rlci1ncmlkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgcGFkZGluZzogMS44NzVyZW0gMDsgfVxuICAuZm9vdGVyLWdyaWQgc2VjdGlvbiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgbWluLWhlaWdodDogMHB4O1xuICAgIG1pbi13aWR0aDogMHB4O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZm9vdGVyLWdyaWQgc2VjdGlvbiB7XG4gICAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxLjI1cmVtOyB9IH1cbiAgLmZvb3Rlci1ncmlkIHVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cblxuZm9vdGVyLmZvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNTI1MjU7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiA1MHB4IDgwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgZm9vdGVyLmZvb3RlciB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7IH0gfVxuXG4uZm9vdGVyLWNvbnRlbnQge1xuICBtYXJnaW46IDAgYXV0byA0NXB4IGF1dG87IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgIC5mb290ZXItY29udGVudCAuY2VsbCB7XG4gICAgICBtYXJnaW46IDAgMCAzMHB4OyB9XG4gICAgICAuZm9vdGVyLWNvbnRlbnQgLmNlbGw6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5mb290ZXItY29udGVudCB1bCNtZW51LWZvb3Rlci1uYXZpZ2F0aW9uIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY29sdW1uLWNvdW50OiAyO1xuICAgIGNvbHVtbi13aWR0aDogMTAwcHg7XG4gICAgY29sdW1uLWdhcDogNjBweDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5mb290ZXItY29udGVudCB1bCNtZW51LWZvb3Rlci1uYXZpZ2F0aW9uIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuZm9vdGVyLWNvbnRlbnQgdWwjbWVudS1mb290ZXItbmF2aWdhdGlvbiBsaTpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuZm9vdGVyLWNvbnRlbnQgdWwjbWVudS1mb290ZXItbmF2aWdhdGlvbiBsaSBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuNHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuICAgICAgICAuZm9vdGVyLWNvbnRlbnQgdWwjbWVudS1mb290ZXItbmF2aWdhdGlvbiBsaSBhOmhvdmVyIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgICAgLmZvb3Rlci1jb250ZW50IHVsI21lbnUtZm9vdGVyLW5hdmlnYXRpb24gbGk6aG92ZXIgYTphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvb3Rub3RlIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7IH1cblxuYm9keSN0aW55bWNlIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDY4Ljc1cmVtO1xuICBwYWRkaW5nOiAxLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnNpdGVzLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBib3gtc2hhZG93OiAwIC0ycHggMCByZ2JhKDAsIDAsIDAsIDAuMikgaW5zZXQ7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyOiBub25lOyB9XG5cbi5idXR0b24sIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAuOHB4O1xuICBwYWRkaW5nOiAxNXB4IDM1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogMCAycHggOHB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKSwgMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpOyB9XG4gIC5idXR0b24ub3BlbiwgLndwLWJsb2NrLWJ1dHRvbiAub3Blbi53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICBsaW5lLWhlaWdodDogdW5zZXQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1bnNldDsgfVxuXG4uY2FyZHMtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDsgfVxuICAuY2FyZHMtY29udGFpbmVyIC5jYXJkIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICAuY2FyZHMtY29udGFpbmVyIC5jYXJkIC5jYXJkLWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY2FyZHMtY29udGFpbmVyIC5jYXJkIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMC43cmVtKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjM1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC4zNXJlbTsgfSB9XG5cbi5mZWF0dXJlZC1oZXJvIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwYWRkaW5nOiA5MHB4IDAgNzVweDsgfVxuXG4uZG90dGVkLCAuc2VjdGlvbi1kaXZpZGVyIGhyIHtcbiAgYm9yZGVyLXN0eWxlOiBkYXNoZWQ7XG4gIG1hcmdpbjogMnJlbSAwOyB9XG5cbltkYXRhLXdoYXRpbnB1dD1cIm1vdXNlXCJdIGE6Zm9jdXMsIGJ1dHRvbjpmb2N1cyBbZGF0YS13aGF0aW5wdXQ9XCJ0b3VjaFwiXSBhOmZvY3VzLCBidXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbi5mcm9udC1oZXJvIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2RlbW8vaGVyby1iZy1mb3VuZGF0aW9uLTYtc21hbGwuc3ZnXCIpIGJvdHRvbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbTtcbiAgcGFkZGluZzogNC4wNjI1cmVtIDA7XG4gIG1hcmdpbjogMCAwIDJyZW07XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5mcm9udC1oZXJvIC5tYXJrZXRpbmcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWF4LXdpZHRoOiA1NXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZyb250LWhlcm8gLm1hcmtldGluZyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZyb250LWhlcm8ge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2RlbW8vaGVyby1iZy1mb3VuZGF0aW9uLTYtbGFyZ2Uuc3ZnXCIpIGJvdHRvbSBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgaGVpZ2h0OiA0Mi44MTI1cmVtO1xuICAgICAgbWFyZ2luOiAwIDAgNC41cmVtOyB9IH1cbiAgLmZyb250LWhlcm8gLndhdGNoIHtcbiAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZnJvbnQtaGVybyAud2F0Y2gge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41cmVtKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfSB9XG4gICAgLmZyb250LWhlcm8gLndhdGNoIGEge1xuICAgICAgY29sb3I6ICNCNEM5RDE7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtOyB9XG4gICAgLmZyb250LWhlcm8gLndhdGNoIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAuZnJvbnQtaGVybyAud2F0Y2ggI3N0YXJnYXplcnMgOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZjA5YlwiO1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICAgIGNvbG9yOiAjQjRDOUQxO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cbiAgICAuZnJvbnQtaGVybyAud2F0Y2ggI3R3aXR0ZXIgOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZjA5OVwiO1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICAgIGNvbG9yOiAjQjRDOUQxO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cbiAgLmZyb250LWhlcm8gLnRhZ2xpbmUge1xuICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mcm9udC1oZXJvIC50YWdsaW5lIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMi41cmVtKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDZyZW07IH0gfVxuICAuZnJvbnQtaGVybyBoMSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IDIuMnJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZnJvbnQtaGVybyBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi44NzVyZW07IH0gfVxuICAuZnJvbnQtaGVybyBoNCB7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXNpemU6IDEuMzEyNXJlbTsgfVxuICAuZnJvbnQtaGVybyAuZG93bmxvYWQge1xuICAgIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cblxuLmludHJvIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIG1heC13aWR0aDogNjguNzVyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmludHJvIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07IH0gfVxuICAuaW50cm8gLmZwLWludHJvIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmludHJvIC5mcC1pbnRybyB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDIuNXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC42MjVyZW0pOyB9XG4gICAgICAgIC5pbnRybyAuZnAtaW50cm8gaDIge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gICAgICAgIC5pbnRybyAuZnAtaW50cm8gaDQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICBjb2xvcjogIzc3NztcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cblxuLnNlY3Rpb24tZGl2aWRlciB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDY4Ljc1cmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zZWN0aW9uLWRpdmlkZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTsgfSB9XG4gIC5zZWN0aW9uLWRpdmlkZXIgaHIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5iZW5lZml0cyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDY4Ljc1cmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJlbmVmaXRzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07IH0gfVxuICAuYmVuZWZpdHMgaGVhZGVyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICAuYmVuZWZpdHMgaGVhZGVyIGgyIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgICAuYmVuZWZpdHMgaGVhZGVyIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgY29sb3I6ICM3Nzc7IH1cbiAgLmJlbmVmaXRzIC5zZW1hbnRpYyxcbiAgLmJlbmVmaXRzIC5yZXNwb25zaXZlLFxuICAuYmVuZWZpdHMgLmN1c3RvbWl6YWJsZSxcbiAgLmJlbmVmaXRzIC5wcm9mZXNzaW9uYWwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYmVuZWZpdHMgLnNlbWFudGljLFxuICAgICAgLmJlbmVmaXRzIC5yZXNwb25zaXZlLFxuICAgICAgLmJlbmVmaXRzIC5jdXN0b21pemFibGUsXG4gICAgICAuYmVuZWZpdHMgLnByb2Zlc3Npb25hbCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH0gfVxuICAgIC5iZW5lZml0cyAuc2VtYW50aWMgaW1nLFxuICAgIC5iZW5lZml0cyAucmVzcG9uc2l2ZSBpbWcsXG4gICAgLmJlbmVmaXRzIC5jdXN0b21pemFibGUgaW1nLFxuICAgIC5iZW5lZml0cyAucHJvZmVzc2lvbmFsIGltZyB7XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgICAgbWFyZ2luOiAxcmVtIGF1dG8gMCBhdXRvOyB9XG4gICAgLmJlbmVmaXRzIC5zZW1hbnRpYyBoMyxcbiAgICAuYmVuZWZpdHMgLnJlc3BvbnNpdmUgaDMsXG4gICAgLmJlbmVmaXRzIC5jdXN0b21pemFibGUgaDMsXG4gICAgLmJlbmVmaXRzIC5wcm9mZXNzaW9uYWwgaDMge1xuICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgZm9udC1zaXplOiAxLjc1cmVtOyB9XG4gICAgLmJlbmVmaXRzIC5zZW1hbnRpYyBwLFxuICAgIC5iZW5lZml0cyAucmVzcG9uc2l2ZSBwLFxuICAgIC5iZW5lZml0cyAuY3VzdG9taXphYmxlIHAsXG4gICAgLmJlbmVmaXRzIC5wcm9mZXNzaW9uYWwgcCB7XG4gICAgICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuICAuYmVuZWZpdHMgLndoeS1mb3VuZGF0aW9uIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgbWFyZ2luLXRvcDogNHJlbTsgfVxuXG4ua2l0Y2hlbi1zaW5rLWhlYWRlciB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG5cbi5raXRjaGVuLXNpbmstY29tcG9uZW50cyB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIC5raXRjaGVuLXNpbmstY29tcG9uZW50cyBociB7XG4gICAgbWFyZ2luOiAzcmVtIDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAua2l0Y2hlbi1zaW5rLWNvbXBvbmVudHMge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMi41cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxLjI1cmVtOyB9IH1cblxuLmtpdGNoZW4tc2luay1uYXYge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmtpdGNoZW4tc2luay1uYXYge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMi41cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIC5raXRjaGVuLXNpbmstbmF2IC5kb2NzLXN1Yi1tZW51IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtOyB9XG4gICAgICAua2l0Y2hlbi1zaW5rLW5hdiAuZG9jcy1tZW51LXRpdGxlIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBjb2xvcjogIzhhOGE4YTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NhY2FjYTtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuNXJlbTsgfVxuICAgICAgLmtpdGNoZW4tc2luay1uYXYgLmRvY3MtdG9jIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNHJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTsgfVxuICAgICAgLmtpdGNoZW4tc2luay1uYXYgLmRvY3MtdG9jIC5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjE5OWU4O1xuICAgICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAgIC5raXRjaGVuLXNpbmstbmF2IC5kb2NzLXRvYyAuZG9jcy1zdWItbWVudTpmaXJzdC1jaGlsZCAuZG9jcy1tZW51LXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7IH0gfVxuXG4ua2l0Y2hlbi1zaW5rLWdyaWQgLmdyaWQteCB7XG4gIGJhY2tncm91bmQ6ICNkNmVjZmE7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICAua2l0Y2hlbi1zaW5rLWdyaWQgLmdyaWQteCAuY2VsbCwgLmtpdGNoZW4tc2luay1ncmlkIC5ncmlkLXggOm50aC1jaGlsZChvZGQpIHtcbiAgICBiYWNrZ3JvdW5kOiAjN2JjMWVmO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5raXRjaGVuLXNpbmstZ3JpZCAuZ3JpZC14IC5jZWxsOm50aC1jaGlsZChldmVuKSB7XG4gICAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuXG5ib2R5LmF1dGhvciB7XG4gIHBhZGRpbmctdG9wOiAxNDBweDsgfVxuICBib2R5LmF1dGhvciBoZWFkZXIge1xuICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgICAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgIC8qIEZGMy42LTE1ICovXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzBiODc5MycsIGVuZENvbG9yc3RyPScjMzYwMDMzJyxHcmFkaWVudFR5cGU9MSApO1xuICAgIC8qIElFNi05ICovIH1cbiAgYm9keS5hdXRob3IgLmF2YXRhci1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctdG9wOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAgIGJvZHkuYXV0aG9yIC5hdmF0YXItY29udGFpbmVyIGltZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgYm9keS5hdXRob3IgaDIge1xuICAgIGZvbnQtc2l6ZTogMi4yNWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAjMjUyNTI1OyB9XG4gIGJvZHkuYXV0aG9yIC5hdXRob3ItbWV0YSBoMiB7XG4gICAgZm9udC1zaXplOiAyLjI1ZW07XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDM1cHggMCAwIDA7XG4gICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgYm9keS5hdXRob3IgLmF1dGhvci1tZXRhIGgzIHtcbiAgICBmb250LXNpemU6IDEuNzVlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBjb2xvcjogIzI1MjUyNTsgfVxuICBib2R5LmF1dGhvciAuYXV0aG9yLW1ldGEgaDQge1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAgMjVweCAwO1xuICAgIGNvbG9yOiByZ2JhKDM3LCAzNywgMzcsIDAuNSk7IH1cbiAgYm9keS5hdXRob3IgLmF1dGhvci1tZXRhIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxNzUlO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiAjMjUyNTI1OyB9XG4gIGJvZHkuYXV0aG9yIC5hdXRob3ItbWV0YSAuc29jaWFsLWxpbmtzIHtcbiAgICBtYXJnaW46IDUwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICBib2R5LmF1dGhvciAuYXV0aG9yLW1ldGEgLnNvY2lhbC1saW5rcyBsaSB7XG4gICAgICBtYXJnaW46IDAgNDBweCAwIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgYm9keS5hdXRob3IgLmF1dGhvci1tZXRhIC5zb2NpYWwtbGlua3MgbGk6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgYm9keS5hdXRob3IgLmF1dGhvci1tZXRhIC5zb2NpYWwtbGlua3MgbGkgaW1nIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7IH1cbiAgYm9keS5hdXRob3IgLmF1dGhvci1tZXRhIC5tZW50aW9uLWxpbmtzIHtcbiAgICBtYXJnaW46IDMwcHggMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIGJvZHkuYXV0aG9yIC5hdXRob3ItbWV0YSAubWVudGlvbi1saW5rcyBsaSB7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgYm9keS5hdXRob3IgLmF1dGhvci1tZXRhIC5tZW50aW9uLWxpbmtzIGxpOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIGJvZHkuYXV0aG9yIC5hdXRob3ItbWV0YSAubWVudGlvbi1saW5rcyBsaSBzcGFuIHtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7IH1cbiAgYm9keS5hdXRob3IgLmF1dGhvci1tZXRhICsgaDIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDM3LCAzNywgMzcsIDAuMTUpO1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgIG1hcmdpbi10b3A6IDYwcHg7IH1cbiAgYm9keS5hdXRob3IgLmF1dGhvci1hcnRpY2xlcyAuY2VsbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICBib2R5LmF1dGhvciAuYmxvZy1pdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBib3gtc2hhZG93OiAwIDdweCAxMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgICBib2R5LmF1dGhvciAuYmxvZy1pdGVtIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAzMHB4IDMwcHg7XG4gICAgICBjb2xvcjogIzI1MjUyNTtcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgYm9keS5hdXRob3IgLmJsb2ctaXRlbSBpbWcge1xuICAgICAgaGVpZ2h0OiAxOTBweDtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gICAgYm9keS5hdXRob3IgLmJsb2ctaXRlbSBoNSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAyMHB4IDMwcHggMDtcbiAgICAgIGNvbG9yOiByZ2JhKDM3LCAzNywgMzcsIDAuNik7XG4gICAgICBmb250LXNpemU6IDAuODc1ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgICBib2R5LmF1dGhvciAuYmxvZy1pdGVtIGg1IGltZyB7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2E5YTlhOTtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7IH1cbiAgICAgIGJvZHkuYXV0aG9yIC5ibG9nLWl0ZW0gaDUgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gICAgYm9keS5hdXRob3IgLmJsb2ctaXRlbSBoMyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAxNXB4IDMwcHggMTVweDtcbiAgICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgYm9keS5hdXRob3IgLmJsb2ctaXRlbTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDZweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gICAgICAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgICAvKiBGRjMuNi0xNSAqL1xuICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgIC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7XG4gICAgICAvKiBJRTYtOSAqLyB9XG4gICAgYm9keS5hdXRob3IgLmJsb2ctaXRlbTpob3ZlciB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgYm94LXNoYWRvdzogMCA1cHggMTZweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7IH1cbiAgICAgIGJvZHkuYXV0aG9yIC5ibG9nLWl0ZW06aG92ZXIgaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuICBib2R5LmF1dGhvciAucGFnaW5hdGlvbiBsaSBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICBib2R5LmF1dGhvciAucGFnaW5hdGlvbiBsaSBhLmN1cnJlbnQge1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBjb2xvcjogIzI1MjUyNTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICBib2R5LmF1dGhvciAucGFnaW5hdGlvbiBsaS5uZXh0IGE6YWZ0ZXIge1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIGNvbG9yOiAjMGI4NzkzO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAuN2VtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTsgfVxuICBib2R5LmF1dGhvciAucGFnaW5hdGlvbiBsaS5wcmV2IGE6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICBjb250ZW50OiBcIlxcZjA2MFwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgY29sb3I6ICMwYjg3OTM7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IC43ZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpOyB9XG4gIGJvZHkuYXV0aG9yIC5wYWdpbmF0aW9uIGxpLmxhc3QgYTphZnRlciB7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgY29udGVudDogXCJcXGYzNDBcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgY29sb3I6ICMwYjg3OTM7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IC43ZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpOyB9XG4gIGJvZHkuYXV0aG9yIC5wYWdpbmF0aW9uIGxpLmZpcnN0IGE6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICBjb250ZW50OiBcIlxcZjMzZVwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgY29sb3I6ICMwYjg3OTM7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IC43ZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpOyB9XG4gIGJvZHkuYXV0aG9yIC5wYWdpbmF0aW9uIGxpIHNwYW4uY3VycmVudCB7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIGJvZHkuYXV0aG9yIC5wYWdpbmF0aW9uIGxpIGEge1xuICAgIGNvbG9yOiAjMGI4NzkzO1xuICAgIHBhZGRpbmc6IDAgMjBweDsgfVxuICAgIGJvZHkuYXV0aG9yIC5wYWdpbmF0aW9uIGxpIGEubmV4dDphZnRlciB7XG4gICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIGNvbG9yOiAjMGI4NzkzO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGZvbnQtc2l6ZTogLjdlbTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTsgfVxuICAgIGJvZHkuYXV0aG9yIC5wYWdpbmF0aW9uIGxpIGEucHJldjpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgICBjb250ZW50OiBcIlxcZjA2MFwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgY29sb3I6ICMwYjg3OTM7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZm9udC1zaXplOiAuN2VtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpOyB9XG5cbi5hdXRob3ItcGFnZSB7XG4gIHBhZGRpbmctYm90dG9tOiA5MHB4OyB9XG5cbmJvZHkuYmxvZyBoZWFkZXIsXG5ib2R5LnNpbmdsZS1wb3N0IGhlYWRlcixcbmJvZHkuY2F0ZWdvcnkgaGVhZGVyLFxuYm9keS5zZWFyY2gtcmVzdWx0cyBoZWFkZXIsXG5ib2R5LmFyY2hpdmUgaGVhZGVyLFxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIGhlYWRlcixcbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIGhlYWRlcixcbmJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gaGVhZGVyIHtcbiAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgLyogT2xkIGJyb3dzZXJzICovXG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gIC8qIEZGMy42LTE1ICovXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gIC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7XG4gIC8qIElFNi05ICovXG4gIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgYm9keS5ibG9nIGhlYWRlci5zaXRlLWhlYWRlcixcbiAgYm9keS5zaW5nbGUtcG9zdCBoZWFkZXIuc2l0ZS1oZWFkZXIsXG4gIGJvZHkuY2F0ZWdvcnkgaGVhZGVyLnNpdGUtaGVhZGVyLFxuICBib2R5LnNlYXJjaC1yZXN1bHRzIGhlYWRlci5zaXRlLWhlYWRlcixcbiAgYm9keS5hcmNoaXZlIGhlYWRlci5zaXRlLWhlYWRlcixcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIGhlYWRlci5zaXRlLWhlYWRlcixcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgaGVhZGVyLnNpdGUtaGVhZGVyLFxuICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIGhlYWRlci5zaXRlLWhlYWRlciB7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICBib2R5LmJsb2cgaGVhZGVyLnNpdGUtaGVhZGVyLFxuICAgICAgYm9keS5zaW5nbGUtcG9zdCBoZWFkZXIuc2l0ZS1oZWFkZXIsXG4gICAgICBib2R5LmNhdGVnb3J5IGhlYWRlci5zaXRlLWhlYWRlcixcbiAgICAgIGJvZHkuc2VhcmNoLXJlc3VsdHMgaGVhZGVyLnNpdGUtaGVhZGVyLFxuICAgICAgYm9keS5hcmNoaXZlIGhlYWRlci5zaXRlLWhlYWRlcixcbiAgICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyBoZWFkZXIuc2l0ZS1oZWFkZXIsXG4gICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1wb3N0cyBoZWFkZXIuc2l0ZS1oZWFkZXIsXG4gICAgICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIGhlYWRlci5zaXRlLWhlYWRlciB7XG4gICAgICAgIGhlaWdodDogNTVweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgYm9keS5ibG9nIGhlYWRlci5zaXRlLWhlYWRlciAubW9iaWxlLW5hdi10cmlnZ2VyLFxuICAgICAgYm9keS5zaW5nbGUtcG9zdCBoZWFkZXIuc2l0ZS1oZWFkZXIgLm1vYmlsZS1uYXYtdHJpZ2dlcixcbiAgICAgIGJvZHkuY2F0ZWdvcnkgaGVhZGVyLnNpdGUtaGVhZGVyIC5tb2JpbGUtbmF2LXRyaWdnZXIsXG4gICAgICBib2R5LnNlYXJjaC1yZXN1bHRzIGhlYWRlci5zaXRlLWhlYWRlciAubW9iaWxlLW5hdi10cmlnZ2VyLFxuICAgICAgYm9keS5hcmNoaXZlIGhlYWRlci5zaXRlLWhlYWRlciAubW9iaWxlLW5hdi10cmlnZ2VyLFxuICAgICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIGhlYWRlci5zaXRlLWhlYWRlciAubW9iaWxlLW5hdi10cmlnZ2VyLFxuICAgICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgaGVhZGVyLnNpdGUtaGVhZGVyIC5tb2JpbGUtbmF2LXRyaWdnZXIsXG4gICAgICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIGhlYWRlci5zaXRlLWhlYWRlciAubW9iaWxlLW5hdi10cmlnZ2VyIHtcbiAgICAgICAgdG9wOiAxNnB4OyB9IH1cbiAgYm9keS5ibG9nIGhlYWRlci5zaXRlLWhlYWRlciAubG9nbyxcbiAgYm9keS5zaW5nbGUtcG9zdCBoZWFkZXIuc2l0ZS1oZWFkZXIgLmxvZ28sXG4gIGJvZHkuY2F0ZWdvcnkgaGVhZGVyLnNpdGUtaGVhZGVyIC5sb2dvLFxuICBib2R5LnNlYXJjaC1yZXN1bHRzIGhlYWRlci5zaXRlLWhlYWRlciAubG9nbyxcbiAgYm9keS5hcmNoaXZlIGhlYWRlci5zaXRlLWhlYWRlciAubG9nbyxcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIGhlYWRlci5zaXRlLWhlYWRlciAubG9nbyxcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgaGVhZGVyLnNpdGUtaGVhZGVyIC5sb2dvLFxuICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIGhlYWRlci5zaXRlLWhlYWRlciAubG9nbyB7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIHRvcDogMTBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIGJvZHkuYmxvZyBoZWFkZXIuc2l0ZS1oZWFkZXIgLmxvZ28sXG4gICAgICBib2R5LnNpbmdsZS1wb3N0IGhlYWRlci5zaXRlLWhlYWRlciAubG9nbyxcbiAgICAgIGJvZHkuY2F0ZWdvcnkgaGVhZGVyLnNpdGUtaGVhZGVyIC5sb2dvLFxuICAgICAgYm9keS5zZWFyY2gtcmVzdWx0cyBoZWFkZXIuc2l0ZS1oZWFkZXIgLmxvZ28sXG4gICAgICBib2R5LmFyY2hpdmUgaGVhZGVyLnNpdGUtaGVhZGVyIC5sb2dvLFxuICAgICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIGhlYWRlci5zaXRlLWhlYWRlciAubG9nbyxcbiAgICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIGhlYWRlci5zaXRlLWhlYWRlciAubG9nbyxcbiAgICAgIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gaGVhZGVyLnNpdGUtaGVhZGVyIC5sb2dvIHtcbiAgICAgICAgd2lkdGg6IDE2MHB4O1xuICAgICAgICB0b3A6IDJweDsgfSB9XG4gIGJvZHkuYmxvZyBoZWFkZXIuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lcixcbiAgYm9keS5zaW5nbGUtcG9zdCBoZWFkZXIuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lcixcbiAgYm9keS5jYXRlZ29yeSBoZWFkZXIuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lcixcbiAgYm9keS5zZWFyY2gtcmVzdWx0cyBoZWFkZXIuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lcixcbiAgYm9keS5hcmNoaXZlIGhlYWRlci5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyLFxuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgaGVhZGVyLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIGhlYWRlci5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyLFxuICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIGhlYWRlci5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHtcbiAgICB0b3A6IDEwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICBib2R5LmJsb2cgaGVhZGVyLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIsXG4gICAgICBib2R5LnNpbmdsZS1wb3N0IGhlYWRlci5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyLFxuICAgICAgYm9keS5jYXRlZ29yeSBoZWFkZXIuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lcixcbiAgICAgIGJvZHkuc2VhcmNoLXJlc3VsdHMgaGVhZGVyLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIsXG4gICAgICBib2R5LmFyY2hpdmUgaGVhZGVyLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIsXG4gICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgaGVhZGVyLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIsXG4gICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1wb3N0cyBoZWFkZXIuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lcixcbiAgICAgIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gaGVhZGVyLnNpdGUtaGVhZGVyIC5tYWluLW5hdi1jb250YWluZXIge1xuICAgICAgICB0b3A6IDA7IH0gfVxuXG5ib2R5LmJsb2cgLmZlYXR1cmVkLXBvc3QsXG5ib2R5LnNpbmdsZS1wb3N0IC5mZWF0dXJlZC1wb3N0LFxuYm9keS5jYXRlZ29yeSAuZmVhdHVyZWQtcG9zdCxcbmJvZHkuc2VhcmNoLXJlc3VsdHMgLmZlYXR1cmVkLXBvc3QsXG5ib2R5LmFyY2hpdmUgLmZlYXR1cmVkLXBvc3QsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgLmZlYXR1cmVkLXBvc3QsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1wb3N0cyAuZmVhdHVyZWQtcG9zdCxcbmJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLmZlYXR1cmVkLXBvc3Qge1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIGJvZHkuYmxvZyAuZmVhdHVyZWQtcG9zdCBwLFxuICBib2R5LnNpbmdsZS1wb3N0IC5mZWF0dXJlZC1wb3N0IHAsXG4gIGJvZHkuY2F0ZWdvcnkgLmZlYXR1cmVkLXBvc3QgcCxcbiAgYm9keS5zZWFyY2gtcmVzdWx0cyAuZmVhdHVyZWQtcG9zdCBwLFxuICBib2R5LmFyY2hpdmUgLmZlYXR1cmVkLXBvc3QgcCxcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIC5mZWF0dXJlZC1wb3N0IHAsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5mZWF0dXJlZC1wb3N0IHAsXG4gIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLmZlYXR1cmVkLXBvc3QgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMCAzMHB4O1xuICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIGJvZHkuYmxvZyAuZmVhdHVyZWQtcG9zdCBoNSxcbiAgYm9keS5zaW5nbGUtcG9zdCAuZmVhdHVyZWQtcG9zdCBoNSxcbiAgYm9keS5jYXRlZ29yeSAuZmVhdHVyZWQtcG9zdCBoNSxcbiAgYm9keS5zZWFyY2gtcmVzdWx0cyAuZmVhdHVyZWQtcG9zdCBoNSxcbiAgYm9keS5hcmNoaXZlIC5mZWF0dXJlZC1wb3N0IGg1LFxuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgLmZlYXR1cmVkLXBvc3QgaDUsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5mZWF0dXJlZC1wb3N0IGg1LFxuICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIC5mZWF0dXJlZC1wb3N0IGg1IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAwIDIwcHg7XG4gICAgY29sb3I6ICMyNTI1MjU7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICBib2R5LmJsb2cgLmZlYXR1cmVkLXBvc3QgaDUgaW1nLFxuICAgIGJvZHkuc2luZ2xlLXBvc3QgLmZlYXR1cmVkLXBvc3QgaDUgaW1nLFxuICAgIGJvZHkuY2F0ZWdvcnkgLmZlYXR1cmVkLXBvc3QgaDUgaW1nLFxuICAgIGJvZHkuc2VhcmNoLXJlc3VsdHMgLmZlYXR1cmVkLXBvc3QgaDUgaW1nLFxuICAgIGJvZHkuYXJjaGl2ZSAuZmVhdHVyZWQtcG9zdCBoNSBpbWcsXG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIC5mZWF0dXJlZC1wb3N0IGg1IGltZyxcbiAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1wb3N0cyAuZmVhdHVyZWQtcG9zdCBoNSBpbWcsXG4gICAgYm9keS5zaW5nbGUtcmVzb3VyY2VfaXRlbSAuZmVhdHVyZWQtcG9zdCBoNSBpbWcge1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAgIGJvZHkuYmxvZyAuZmVhdHVyZWQtcG9zdCBoNSBzcGFuLFxuICAgIGJvZHkuc2luZ2xlLXBvc3QgLmZlYXR1cmVkLXBvc3QgaDUgc3BhbixcbiAgICBib2R5LmNhdGVnb3J5IC5mZWF0dXJlZC1wb3N0IGg1IHNwYW4sXG4gICAgYm9keS5zZWFyY2gtcmVzdWx0cyAuZmVhdHVyZWQtcG9zdCBoNSBzcGFuLFxuICAgIGJvZHkuYXJjaGl2ZSAuZmVhdHVyZWQtcG9zdCBoNSBzcGFuLFxuICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAuZmVhdHVyZWQtcG9zdCBoNSBzcGFuLFxuICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5mZWF0dXJlZC1wb3N0IGg1IHNwYW4sXG4gICAgYm9keS5zaW5nbGUtcmVzb3VyY2VfaXRlbSAuZmVhdHVyZWQtcG9zdCBoNSBzcGFuIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gIGJvZHkuYmxvZyAuZmVhdHVyZWQtcG9zdCBoMyxcbiAgYm9keS5zaW5nbGUtcG9zdCAuZmVhdHVyZWQtcG9zdCBoMyxcbiAgYm9keS5jYXRlZ29yeSAuZmVhdHVyZWQtcG9zdCBoMyxcbiAgYm9keS5zZWFyY2gtcmVzdWx0cyAuZmVhdHVyZWQtcG9zdCBoMyxcbiAgYm9keS5hcmNoaXZlIC5mZWF0dXJlZC1wb3N0IGgzLFxuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgLmZlYXR1cmVkLXBvc3QgaDMsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5mZWF0dXJlZC1wb3N0IGgzLFxuICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIC5mZWF0dXJlZC1wb3N0IGgzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAwIDE1cHg7XG4gICAgY29sb3I6ICMyNTI1MjU7XG4gICAgZm9udC1zaXplOiAxLjc1ZW07XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgYm9keS5ibG9nIC5mZWF0dXJlZC1wb3N0IGEuYnV0dG9uLCBib2R5LmJsb2cgLmZlYXR1cmVkLXBvc3QgLndwLWJsb2NrLWJ1dHRvbiBhLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBib2R5LmJsb2cgLmZlYXR1cmVkLXBvc3QgYS53cC1ibG9jay1idXR0b25fX2xpbmssXG4gIGJvZHkuc2luZ2xlLXBvc3QgLmZlYXR1cmVkLXBvc3QgYS5idXR0b24sXG4gIGJvZHkuc2luZ2xlLXBvc3QgLmZlYXR1cmVkLXBvc3QgLndwLWJsb2NrLWJ1dHRvbiBhLndwLWJsb2NrLWJ1dHRvbl9fbGluayxcbiAgLndwLWJsb2NrLWJ1dHRvbiBib2R5LnNpbmdsZS1wb3N0IC5mZWF0dXJlZC1wb3N0IGEud3AtYmxvY2stYnV0dG9uX19saW5rLFxuICBib2R5LmNhdGVnb3J5IC5mZWF0dXJlZC1wb3N0IGEuYnV0dG9uLFxuICBib2R5LmNhdGVnb3J5IC5mZWF0dXJlZC1wb3N0IC53cC1ibG9jay1idXR0b24gYS53cC1ibG9jay1idXR0b25fX2xpbmssXG4gIC53cC1ibG9jay1idXR0b24gYm9keS5jYXRlZ29yeSAuZmVhdHVyZWQtcG9zdCBhLndwLWJsb2NrLWJ1dHRvbl9fbGluayxcbiAgYm9keS5zZWFyY2gtcmVzdWx0cyAuZmVhdHVyZWQtcG9zdCBhLmJ1dHRvbixcbiAgYm9keS5zZWFyY2gtcmVzdWx0cyAuZmVhdHVyZWQtcG9zdCAud3AtYmxvY2stYnV0dG9uIGEud3AtYmxvY2stYnV0dG9uX19saW5rLFxuICAud3AtYmxvY2stYnV0dG9uIGJvZHkuc2VhcmNoLXJlc3VsdHMgLmZlYXR1cmVkLXBvc3QgYS53cC1ibG9jay1idXR0b25fX2xpbmssXG4gIGJvZHkuYXJjaGl2ZSAuZmVhdHVyZWQtcG9zdCBhLmJ1dHRvbixcbiAgYm9keS5hcmNoaXZlIC5mZWF0dXJlZC1wb3N0IC53cC1ibG9jay1idXR0b24gYS53cC1ibG9jay1idXR0b25fX2xpbmssXG4gIC53cC1ibG9jay1idXR0b24gYm9keS5hcmNoaXZlIC5mZWF0dXJlZC1wb3N0IGEud3AtYmxvY2stYnV0dG9uX19saW5rLFxuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgLmZlYXR1cmVkLXBvc3QgYS5idXR0b24sXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAuZmVhdHVyZWQtcG9zdCAud3AtYmxvY2stYnV0dG9uIGEud3AtYmxvY2stYnV0dG9uX19saW5rLFxuICAud3AtYmxvY2stYnV0dG9uIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAuZmVhdHVyZWQtcG9zdCBhLndwLWJsb2NrLWJ1dHRvbl9fbGluayxcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLmZlYXR1cmVkLXBvc3QgYS5idXR0b24sXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5mZWF0dXJlZC1wb3N0IC53cC1ibG9jay1idXR0b24gYS53cC1ibG9jay1idXR0b25fX2xpbmssXG4gIC53cC1ibG9jay1idXR0b24gYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLmZlYXR1cmVkLXBvc3QgYS53cC1ibG9jay1idXR0b25fX2xpbmssXG4gIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLmZlYXR1cmVkLXBvc3QgYS5idXR0b24sXG4gIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLmZlYXR1cmVkLXBvc3QgLndwLWJsb2NrLWJ1dHRvbiBhLndwLWJsb2NrLWJ1dHRvbl9fbGluayxcbiAgLndwLWJsb2NrLWJ1dHRvbiBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIC5mZWF0dXJlZC1wb3N0IGEud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxZW07IH1cbiAgYm9keS5ibG9nIC5mZWF0dXJlZC1wb3N0IC5mZWF0dXJlZC1pbWFnZSxcbiAgYm9keS5zaW5nbGUtcG9zdCAuZmVhdHVyZWQtcG9zdCAuZmVhdHVyZWQtaW1hZ2UsXG4gIGJvZHkuY2F0ZWdvcnkgLmZlYXR1cmVkLXBvc3QgLmZlYXR1cmVkLWltYWdlLFxuICBib2R5LnNlYXJjaC1yZXN1bHRzIC5mZWF0dXJlZC1wb3N0IC5mZWF0dXJlZC1pbWFnZSxcbiAgYm9keS5hcmNoaXZlIC5mZWF0dXJlZC1wb3N0IC5mZWF0dXJlZC1pbWFnZSxcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIC5mZWF0dXJlZC1wb3N0IC5mZWF0dXJlZC1pbWFnZSxcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLmZlYXR1cmVkLXBvc3QgLmZlYXR1cmVkLWltYWdlLFxuICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIC5mZWF0dXJlZC1wb3N0IC5mZWF0dXJlZC1pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMzYwcHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICBib2R5LmJsb2cgLmZlYXR1cmVkLXBvc3QgLmZlYXR1cmVkLWltYWdlLFxuICAgICAgYm9keS5zaW5nbGUtcG9zdCAuZmVhdHVyZWQtcG9zdCAuZmVhdHVyZWQtaW1hZ2UsXG4gICAgICBib2R5LmNhdGVnb3J5IC5mZWF0dXJlZC1wb3N0IC5mZWF0dXJlZC1pbWFnZSxcbiAgICAgIGJvZHkuc2VhcmNoLXJlc3VsdHMgLmZlYXR1cmVkLXBvc3QgLmZlYXR1cmVkLWltYWdlLFxuICAgICAgYm9keS5hcmNoaXZlIC5mZWF0dXJlZC1wb3N0IC5mZWF0dXJlZC1pbWFnZSxcbiAgICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAuZmVhdHVyZWQtcG9zdCAuZmVhdHVyZWQtaW1hZ2UsXG4gICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1wb3N0cyAuZmVhdHVyZWQtcG9zdCAuZmVhdHVyZWQtaW1hZ2UsXG4gICAgICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIC5mZWF0dXJlZC1wb3N0IC5mZWF0dXJlZC1pbWFnZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuXG5ib2R5LmJsb2cgLnBvc3QtaXRlbSxcbmJvZHkuc2luZ2xlLXBvc3QgLnBvc3QtaXRlbSxcbmJvZHkuY2F0ZWdvcnkgLnBvc3QtaXRlbSxcbmJvZHkuc2VhcmNoLXJlc3VsdHMgLnBvc3QtaXRlbSxcbmJvZHkuYXJjaGl2ZSAucG9zdC1pdGVtLFxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIC5wb3N0LWl0ZW0sXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1wb3N0cyAucG9zdC1pdGVtLFxuYm9keS5zaW5nbGUtcmVzb3VyY2VfaXRlbSAucG9zdC1pdGVtIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiAwIDdweCAxMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gIGJvZHkuYmxvZyAucG9zdC1pdGVtIHAsXG4gIGJvZHkuc2luZ2xlLXBvc3QgLnBvc3QtaXRlbSBwLFxuICBib2R5LmNhdGVnb3J5IC5wb3N0LWl0ZW0gcCxcbiAgYm9keS5zZWFyY2gtcmVzdWx0cyAucG9zdC1pdGVtIHAsXG4gIGJvZHkuYXJjaGl2ZSAucG9zdC1pdGVtIHAsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAucG9zdC1pdGVtIHAsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5wb3N0LWl0ZW0gcCxcbiAgYm9keS5zaW5nbGUtcmVzb3VyY2VfaXRlbSAucG9zdC1pdGVtIHAge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDMwcHggMzBweDtcbiAgICBjb2xvcjogIzI1MjUyNTtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIGJvZHkuYmxvZyAucG9zdC1pdGVtIC5jYXRlZ29yeSxcbiAgYm9keS5zaW5nbGUtcG9zdCAucG9zdC1pdGVtIC5jYXRlZ29yeSxcbiAgYm9keS5jYXRlZ29yeSAucG9zdC1pdGVtIC5jYXRlZ29yeSxcbiAgYm9keS5zZWFyY2gtcmVzdWx0cyAucG9zdC1pdGVtIC5jYXRlZ29yeSxcbiAgYm9keS5hcmNoaXZlIC5wb3N0LWl0ZW0gLmNhdGVnb3J5LFxuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgLnBvc3QtaXRlbSAuY2F0ZWdvcnksXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5wb3N0LWl0ZW0gLmNhdGVnb3J5LFxuICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIC5wb3N0LWl0ZW0gLmNhdGVnb3J5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxNTBweDtcbiAgICBsZWZ0OiAzMHB4O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1ZW07XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC43NXB4O1xuICAgIHotaW5kZXg6IDI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogNHB4IDEwcHggM3B4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICBib2R5LmJsb2cgLnBvc3QtaXRlbSAuaW1nLWNvbnRhaW5lcixcbiAgYm9keS5zaW5nbGUtcG9zdCAucG9zdC1pdGVtIC5pbWctY29udGFpbmVyLFxuICBib2R5LmNhdGVnb3J5IC5wb3N0LWl0ZW0gLmltZy1jb250YWluZXIsXG4gIGJvZHkuc2VhcmNoLXJlc3VsdHMgLnBvc3QtaXRlbSAuaW1nLWNvbnRhaW5lcixcbiAgYm9keS5hcmNoaXZlIC5wb3N0LWl0ZW0gLmltZy1jb250YWluZXIsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAucG9zdC1pdGVtIC5pbWctY29udGFpbmVyLFxuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1wb3N0cyAucG9zdC1pdGVtIC5pbWctY29udGFpbmVyLFxuICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIC5wb3N0LWl0ZW0gLmltZy1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQ6ICMyNTI1MjU7IH1cbiAgYm9keS5ibG9nIC5wb3N0LWl0ZW0gaW1nLFxuICBib2R5LnNpbmdsZS1wb3N0IC5wb3N0LWl0ZW0gaW1nLFxuICBib2R5LmNhdGVnb3J5IC5wb3N0LWl0ZW0gaW1nLFxuICBib2R5LnNlYXJjaC1yZXN1bHRzIC5wb3N0LWl0ZW0gaW1nLFxuICBib2R5LmFyY2hpdmUgLnBvc3QtaXRlbSBpbWcsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAucG9zdC1pdGVtIGltZyxcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLnBvc3QtaXRlbSBpbWcsXG4gIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBvc3QtaXRlbSBpbWcge1xuICAgIGhlaWdodDogMTkwcHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3BhY2l0eTogMC42NTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gIGJvZHkuYmxvZyAucG9zdC1pdGVtIGg1LFxuICBib2R5LnNpbmdsZS1wb3N0IC5wb3N0LWl0ZW0gaDUsXG4gIGJvZHkuY2F0ZWdvcnkgLnBvc3QtaXRlbSBoNSxcbiAgYm9keS5zZWFyY2gtcmVzdWx0cyAucG9zdC1pdGVtIGg1LFxuICBib2R5LmFyY2hpdmUgLnBvc3QtaXRlbSBoNSxcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIC5wb3N0LWl0ZW0gaDUsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5wb3N0LWl0ZW0gaDUsXG4gIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBvc3QtaXRlbSBoNSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDIwcHggMzBweCAwO1xuICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgIGJvZHkuYmxvZyAucG9zdC1pdGVtIGg1IGltZyxcbiAgICBib2R5LnNpbmdsZS1wb3N0IC5wb3N0LWl0ZW0gaDUgaW1nLFxuICAgIGJvZHkuY2F0ZWdvcnkgLnBvc3QtaXRlbSBoNSBpbWcsXG4gICAgYm9keS5zZWFyY2gtcmVzdWx0cyAucG9zdC1pdGVtIGg1IGltZyxcbiAgICBib2R5LmFyY2hpdmUgLnBvc3QtaXRlbSBoNSBpbWcsXG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIC5wb3N0LWl0ZW0gaDUgaW1nLFxuICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5wb3N0LWl0ZW0gaDUgaW1nLFxuICAgIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBvc3QtaXRlbSBoNSBpbWcge1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgYm9keS5ibG9nIC5wb3N0LWl0ZW0gaDUgc3BhbixcbiAgICBib2R5LnNpbmdsZS1wb3N0IC5wb3N0LWl0ZW0gaDUgc3BhbixcbiAgICBib2R5LmNhdGVnb3J5IC5wb3N0LWl0ZW0gaDUgc3BhbixcbiAgICBib2R5LnNlYXJjaC1yZXN1bHRzIC5wb3N0LWl0ZW0gaDUgc3BhbixcbiAgICBib2R5LmFyY2hpdmUgLnBvc3QtaXRlbSBoNSBzcGFuLFxuICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAucG9zdC1pdGVtIGg1IHNwYW4sXG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLnBvc3QtaXRlbSBoNSBzcGFuLFxuICAgIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBvc3QtaXRlbSBoNSBzcGFuIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gIGJvZHkuYmxvZyAucG9zdC1pdGVtIGgzLFxuICBib2R5LnNpbmdsZS1wb3N0IC5wb3N0LWl0ZW0gaDMsXG4gIGJvZHkuY2F0ZWdvcnkgLnBvc3QtaXRlbSBoMyxcbiAgYm9keS5zZWFyY2gtcmVzdWx0cyAucG9zdC1pdGVtIGgzLFxuICBib2R5LmFyY2hpdmUgLnBvc3QtaXRlbSBoMyxcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIC5wb3N0LWl0ZW0gaDMsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5wb3N0LWl0ZW0gaDMsXG4gIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBvc3QtaXRlbSBoMyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDIwcHggMzBweCAxMnB4O1xuICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTsgfVxuICBib2R5LmJsb2cgLnBvc3QtaXRlbSBoNCxcbiAgYm9keS5zaW5nbGUtcG9zdCAucG9zdC1pdGVtIGg0LFxuICBib2R5LmNhdGVnb3J5IC5wb3N0LWl0ZW0gaDQsXG4gIGJvZHkuc2VhcmNoLXJlc3VsdHMgLnBvc3QtaXRlbSBoNCxcbiAgYm9keS5hcmNoaXZlIC5wb3N0LWl0ZW0gaDQsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAucG9zdC1pdGVtIGg0LFxuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1wb3N0cyAucG9zdC1pdGVtIGg0LFxuICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIC5wb3N0LWl0ZW0gaDQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAjOTg5ODk4O1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMzBweDtcbiAgICBsZWZ0OiAzMHB4OyB9XG4gICAgYm9keS5ibG9nIC5wb3N0LWl0ZW0gaDQgaSxcbiAgICBib2R5LnNpbmdsZS1wb3N0IC5wb3N0LWl0ZW0gaDQgaSxcbiAgICBib2R5LmNhdGVnb3J5IC5wb3N0LWl0ZW0gaDQgaSxcbiAgICBib2R5LnNlYXJjaC1yZXN1bHRzIC5wb3N0LWl0ZW0gaDQgaSxcbiAgICBib2R5LmFyY2hpdmUgLnBvc3QtaXRlbSBoNCBpLFxuICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAucG9zdC1pdGVtIGg0IGksXG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLnBvc3QtaXRlbSBoNCBpLFxuICAgIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBvc3QtaXRlbSBoNCBpIHtcbiAgICAgIGZvbnQtc2l6ZTogLjhlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAtMnB4OyB9XG4gIGJvZHkuYmxvZyAucG9zdC1pdGVtOmFmdGVyLFxuICBib2R5LnNpbmdsZS1wb3N0IC5wb3N0LWl0ZW06YWZ0ZXIsXG4gIGJvZHkuY2F0ZWdvcnkgLnBvc3QtaXRlbTphZnRlcixcbiAgYm9keS5zZWFyY2gtcmVzdWx0cyAucG9zdC1pdGVtOmFmdGVyLFxuICBib2R5LmFyY2hpdmUgLnBvc3QtaXRlbTphZnRlcixcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIC5wb3N0LWl0ZW06YWZ0ZXIsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5wb3N0LWl0ZW06YWZ0ZXIsXG4gIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBvc3QtaXRlbTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDZweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgICAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgIC8qIEZGMy42LTE1ICovXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzBiODc5MycsIGVuZENvbG9yc3RyPScjMzYwMDMzJyxHcmFkaWVudFR5cGU9MSApO1xuICAgIC8qIElFNi05ICovIH1cbiAgYm9keS5ibG9nIC5wb3N0LWl0ZW06aG92ZXIsXG4gIGJvZHkuc2luZ2xlLXBvc3QgLnBvc3QtaXRlbTpob3ZlcixcbiAgYm9keS5jYXRlZ29yeSAucG9zdC1pdGVtOmhvdmVyLFxuICBib2R5LnNlYXJjaC1yZXN1bHRzIC5wb3N0LWl0ZW06aG92ZXIsXG4gIGJvZHkuYXJjaGl2ZSAucG9zdC1pdGVtOmhvdmVyLFxuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgLnBvc3QtaXRlbTpob3ZlcixcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLnBvc3QtaXRlbTpob3ZlcixcbiAgYm9keS5zaW5nbGUtcmVzb3VyY2VfaXRlbSAucG9zdC1pdGVtOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDE2cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9XG4gICAgYm9keS5ibG9nIC5wb3N0LWl0ZW06aG92ZXIgaW1nLFxuICAgIGJvZHkuc2luZ2xlLXBvc3QgLnBvc3QtaXRlbTpob3ZlciBpbWcsXG4gICAgYm9keS5jYXRlZ29yeSAucG9zdC1pdGVtOmhvdmVyIGltZyxcbiAgICBib2R5LnNlYXJjaC1yZXN1bHRzIC5wb3N0LWl0ZW06aG92ZXIgaW1nLFxuICAgIGJvZHkuYXJjaGl2ZSAucG9zdC1pdGVtOmhvdmVyIGltZyxcbiAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgLnBvc3QtaXRlbTpob3ZlciBpbWcsXG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLnBvc3QtaXRlbTpob3ZlciBpbWcsXG4gICAgYm9keS5zaW5nbGUtcmVzb3VyY2VfaXRlbSAucG9zdC1pdGVtOmhvdmVyIGltZyB7XG4gICAgICBvcGFjaXR5OiAuNzU7IH1cblxuYm9keS5ibG9nIC5wYWdpbmF0aW9uIGxpIGE6aG92ZXIsXG5ib2R5LnNpbmdsZS1wb3N0IC5wYWdpbmF0aW9uIGxpIGE6aG92ZXIsXG5ib2R5LmNhdGVnb3J5IC5wYWdpbmF0aW9uIGxpIGE6aG92ZXIsXG5ib2R5LnNlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIGxpIGE6aG92ZXIsXG5ib2R5LmFyY2hpdmUgLnBhZ2luYXRpb24gbGkgYTpob3ZlcixcbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAucGFnaW5hdGlvbiBsaSBhOmhvdmVyLFxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLnBhZ2luYXRpb24gbGkgYTpob3ZlcixcbmJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBhZ2luYXRpb24gbGkgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbmJvZHkuYmxvZyAucGFnaW5hdGlvbiBsaSBhLmN1cnJlbnQsXG5ib2R5LnNpbmdsZS1wb3N0IC5wYWdpbmF0aW9uIGxpIGEuY3VycmVudCxcbmJvZHkuY2F0ZWdvcnkgLnBhZ2luYXRpb24gbGkgYS5jdXJyZW50LFxuYm9keS5zZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiBsaSBhLmN1cnJlbnQsXG5ib2R5LmFyY2hpdmUgLnBhZ2luYXRpb24gbGkgYS5jdXJyZW50LFxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIC5wYWdpbmF0aW9uIGxpIGEuY3VycmVudCxcbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5wYWdpbmF0aW9uIGxpIGEuY3VycmVudCxcbmJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBhZ2luYXRpb24gbGkgYS5jdXJyZW50IHtcbiAgcGFkZGluZzogMCAyMHB4O1xuICBjb2xvcjogIzI1MjUyNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuYm9keS5ibG9nIC5wYWdpbmF0aW9uIGxpLm5leHQsXG5ib2R5LnNpbmdsZS1wb3N0IC5wYWdpbmF0aW9uIGxpLm5leHQsXG5ib2R5LmNhdGVnb3J5IC5wYWdpbmF0aW9uIGxpLm5leHQsXG5ib2R5LnNlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIGxpLm5leHQsXG5ib2R5LmFyY2hpdmUgLnBhZ2luYXRpb24gbGkubmV4dCxcbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAucGFnaW5hdGlvbiBsaS5uZXh0LFxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLnBhZ2luYXRpb24gbGkubmV4dCxcbmJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBhZ2luYXRpb24gbGkubmV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICBib2R5LmJsb2cgLnBhZ2luYXRpb24gbGkubmV4dCBhOmFmdGVyLFxuICBib2R5LnNpbmdsZS1wb3N0IC5wYWdpbmF0aW9uIGxpLm5leHQgYTphZnRlcixcbiAgYm9keS5jYXRlZ29yeSAucGFnaW5hdGlvbiBsaS5uZXh0IGE6YWZ0ZXIsXG4gIGJvZHkuc2VhcmNoLXJlc3VsdHMgLnBhZ2luYXRpb24gbGkubmV4dCBhOmFmdGVyLFxuICBib2R5LmFyY2hpdmUgLnBhZ2luYXRpb24gbGkubmV4dCBhOmFmdGVyLFxuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgLnBhZ2luYXRpb24gbGkubmV4dCBhOmFmdGVyLFxuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1wb3N0cyAucGFnaW5hdGlvbiBsaS5uZXh0IGE6YWZ0ZXIsXG4gIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBhZ2luYXRpb24gbGkubmV4dCBhOmFmdGVyIHtcbiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICBjb250ZW50OiBcIlxcZjA2MVwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBjb2xvcjogIzBiODc5MztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogLjdlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7IH1cblxuYm9keS5ibG9nIC5wYWdpbmF0aW9uIGxpLnByZXYsXG5ib2R5LnNpbmdsZS1wb3N0IC5wYWdpbmF0aW9uIGxpLnByZXYsXG5ib2R5LmNhdGVnb3J5IC5wYWdpbmF0aW9uIGxpLnByZXYsXG5ib2R5LnNlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIGxpLnByZXYsXG5ib2R5LmFyY2hpdmUgLnBhZ2luYXRpb24gbGkucHJldixcbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAucGFnaW5hdGlvbiBsaS5wcmV2LFxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLnBhZ2luYXRpb24gbGkucHJldixcbmJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBhZ2luYXRpb24gbGkucHJldiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICBib2R5LmJsb2cgLnBhZ2luYXRpb24gbGkucHJldiBhOmJlZm9yZSxcbiAgYm9keS5zaW5nbGUtcG9zdCAucGFnaW5hdGlvbiBsaS5wcmV2IGE6YmVmb3JlLFxuICBib2R5LmNhdGVnb3J5IC5wYWdpbmF0aW9uIGxpLnByZXYgYTpiZWZvcmUsXG4gIGJvZHkuc2VhcmNoLXJlc3VsdHMgLnBhZ2luYXRpb24gbGkucHJldiBhOmJlZm9yZSxcbiAgYm9keS5hcmNoaXZlIC5wYWdpbmF0aW9uIGxpLnByZXYgYTpiZWZvcmUsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAucGFnaW5hdGlvbiBsaS5wcmV2IGE6YmVmb3JlLFxuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1wb3N0cyAucGFnaW5hdGlvbiBsaS5wcmV2IGE6YmVmb3JlLFxuICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIC5wYWdpbmF0aW9uIGxpLnByZXYgYTpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgIGNvbnRlbnQ6IFwiXFxmMDYwXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBjb2xvcjogIzBiODc5MztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogLjdlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7IH1cblxuYm9keS5ibG9nIC5wYWdpbmF0aW9uIGxpLmxhc3QgYTphZnRlcixcbmJvZHkuc2luZ2xlLXBvc3QgLnBhZ2luYXRpb24gbGkubGFzdCBhOmFmdGVyLFxuYm9keS5jYXRlZ29yeSAucGFnaW5hdGlvbiBsaS5sYXN0IGE6YWZ0ZXIsXG5ib2R5LnNlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIGxpLmxhc3QgYTphZnRlcixcbmJvZHkuYXJjaGl2ZSAucGFnaW5hdGlvbiBsaS5sYXN0IGE6YWZ0ZXIsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgLnBhZ2luYXRpb24gbGkubGFzdCBhOmFmdGVyLFxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLnBhZ2luYXRpb24gbGkubGFzdCBhOmFmdGVyLFxuYm9keS5zaW5nbGUtcmVzb3VyY2VfaXRlbSAucGFnaW5hdGlvbiBsaS5sYXN0IGE6YWZ0ZXIge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgY29udGVudDogXCJcXGYzNDBcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgY29sb3I6ICMwYjg3OTM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogLjdlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpOyB9XG5cbmJvZHkuYmxvZyAucGFnaW5hdGlvbiBsaS5maXJzdCBhOmJlZm9yZSxcbmJvZHkuc2luZ2xlLXBvc3QgLnBhZ2luYXRpb24gbGkuZmlyc3QgYTpiZWZvcmUsXG5ib2R5LmNhdGVnb3J5IC5wYWdpbmF0aW9uIGxpLmZpcnN0IGE6YmVmb3JlLFxuYm9keS5zZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiBsaS5maXJzdCBhOmJlZm9yZSxcbmJvZHkuYXJjaGl2ZSAucGFnaW5hdGlvbiBsaS5maXJzdCBhOmJlZm9yZSxcbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAucGFnaW5hdGlvbiBsaS5maXJzdCBhOmJlZm9yZSxcbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5wYWdpbmF0aW9uIGxpLmZpcnN0IGE6YmVmb3JlLFxuYm9keS5zaW5nbGUtcmVzb3VyY2VfaXRlbSAucGFnaW5hdGlvbiBsaS5maXJzdCBhOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICBjb250ZW50OiBcIlxcZjMzZVwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgY29sb3I6ICMwYjg3OTM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogLjdlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpOyB9XG5cbmJvZHkuYmxvZyAucGFnaW5hdGlvbiBsaSBzcGFuLmN1cnJlbnQsXG5ib2R5LnNpbmdsZS1wb3N0IC5wYWdpbmF0aW9uIGxpIHNwYW4uY3VycmVudCxcbmJvZHkuY2F0ZWdvcnkgLnBhZ2luYXRpb24gbGkgc3Bhbi5jdXJyZW50LFxuYm9keS5zZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiBsaSBzcGFuLmN1cnJlbnQsXG5ib2R5LmFyY2hpdmUgLnBhZ2luYXRpb24gbGkgc3Bhbi5jdXJyZW50LFxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIC5wYWdpbmF0aW9uIGxpIHNwYW4uY3VycmVudCxcbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5wYWdpbmF0aW9uIGxpIHNwYW4uY3VycmVudCxcbmJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBhZ2luYXRpb24gbGkgc3Bhbi5jdXJyZW50IHtcbiAgcGFkZGluZzogMCAyMHB4O1xuICBjb2xvcjogIzI1MjUyNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuYm9keS5ibG9nIC5wYWdpbmF0aW9uIGxpIGEsXG5ib2R5LnNpbmdsZS1wb3N0IC5wYWdpbmF0aW9uIGxpIGEsXG5ib2R5LmNhdGVnb3J5IC5wYWdpbmF0aW9uIGxpIGEsXG5ib2R5LnNlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIGxpIGEsXG5ib2R5LmFyY2hpdmUgLnBhZ2luYXRpb24gbGkgYSxcbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyAucGFnaW5hdGlvbiBsaSBhLFxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLnBhZ2luYXRpb24gbGkgYSxcbmJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBhZ2luYXRpb24gbGkgYSB7XG4gIGNvbG9yOiAjMGI4NzkzO1xuICBwYWRkaW5nOiAwIDIwcHg7IH1cbiAgYm9keS5ibG9nIC5wYWdpbmF0aW9uIGxpIGEubmV4dDphZnRlcixcbiAgYm9keS5zaW5nbGUtcG9zdCAucGFnaW5hdGlvbiBsaSBhLm5leHQ6YWZ0ZXIsXG4gIGJvZHkuY2F0ZWdvcnkgLnBhZ2luYXRpb24gbGkgYS5uZXh0OmFmdGVyLFxuICBib2R5LnNlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIGxpIGEubmV4dDphZnRlcixcbiAgYm9keS5hcmNoaXZlIC5wYWdpbmF0aW9uIGxpIGEubmV4dDphZnRlcixcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIC5wYWdpbmF0aW9uIGxpIGEubmV4dDphZnRlcixcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLnBhZ2luYXRpb24gbGkgYS5uZXh0OmFmdGVyLFxuICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIC5wYWdpbmF0aW9uIGxpIGEubmV4dDphZnRlciB7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgY29udGVudDogXCJcXGYwNjFcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgY29sb3I6ICMwYjg3OTM7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IC43ZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpOyB9XG4gIGJvZHkuYmxvZyAucGFnaW5hdGlvbiBsaSBhLnByZXY6YmVmb3JlLFxuICBib2R5LnNpbmdsZS1wb3N0IC5wYWdpbmF0aW9uIGxpIGEucHJldjpiZWZvcmUsXG4gIGJvZHkuY2F0ZWdvcnkgLnBhZ2luYXRpb24gbGkgYS5wcmV2OmJlZm9yZSxcbiAgYm9keS5zZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiBsaSBhLnByZXY6YmVmb3JlLFxuICBib2R5LmFyY2hpdmUgLnBhZ2luYXRpb24gbGkgYS5wcmV2OmJlZm9yZSxcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIC5wYWdpbmF0aW9uIGxpIGEucHJldjpiZWZvcmUsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5wYWdpbmF0aW9uIGxpIGEucHJldjpiZWZvcmUsXG4gIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLnBhZ2luYXRpb24gbGkgYS5wcmV2OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgY29udGVudDogXCJcXGYwNjBcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIGNvbG9yOiAjMGI4NzkzO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAuN2VtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTsgfVxuXG5ib2R5LmNhdGVnb3J5IC5wb3N0LWl0ZW0gcCxcbmJvZHkuYmxvZyAucG9zdC1pdGVtIHAsXG5ib2R5LnNlYXJjaC1yZXN1bHRzIC5wb3N0LWl0ZW0gcCB7XG4gIG1hcmdpbjogMCAwIDQwcHg7IH1cblxuYm9keS5zZWFyY2gtcmVzdWx0cyAucG9zdC1pdGVtIGltZyB7XG4gIG9wYWNpdHk6IDAuODU7IH1cblxuYm9keS5zZWFyY2gtcmVzdWx0cyAucG9zdC1pdGVtOmhvdmVyIGltZyB7XG4gIG9wYWNpdHk6IDE7IH1cblxuc2VjdGlvbi5ibG9nLWFyY2hpdmUsXG4uYmxvZy1lbnRyeSB7XG4gIHBhZGRpbmc6IDcwcHggMCA5MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICBzZWN0aW9uLmJsb2ctYXJjaGl2ZSxcbiAgICAuYmxvZy1lbnRyeSB7XG4gICAgICBwYWRkaW5nOiA1NXB4IDAgOTBweDsgfSB9XG4gIHNlY3Rpb24uYmxvZy1hcmNoaXZlIC5icmVhZGNydW1icyxcbiAgLmJsb2ctZW50cnkgLmJyZWFkY3J1bWJzIHtcbiAgICBtYXJnaW46IDM1cHggMCAwOyB9XG4gICAgc2VjdGlvbi5ibG9nLWFyY2hpdmUgLmJyZWFkY3J1bWJzIGxpLFxuICAgIC5ibG9nLWVudHJ5IC5icmVhZGNydW1icyBsaSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIHNlY3Rpb24uYmxvZy1hcmNoaXZlIC5icmVhZGNydW1icyBsaTpiZWZvcmUsXG4gICAgICAuYmxvZy1lbnRyeSAuYnJlYWRjcnVtYnMgbGk6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgc2VjdGlvbi5ibG9nLWFyY2hpdmUgLmJyZWFkY3J1bWJzIGxpIGEsXG4gICAgICAuYmxvZy1lbnRyeSAuYnJlYWRjcnVtYnMgbGkgYSB7XG4gICAgICAgIGNvbG9yOiByZ2JhKDM3LCAzNywgMzcsIDAuNSk7IH1cbiAgICAgIHNlY3Rpb24uYmxvZy1hcmNoaXZlIC5icmVhZGNydW1icyBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlcixcbiAgICAgIC5ibG9nLWVudHJ5IC5icmVhZGNydW1icyBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgICAgICBjb2xvcjogI2E5YTlhOTsgfVxuICAgICAgc2VjdGlvbi5ibG9nLWFyY2hpdmUgLmJyZWFkY3J1bWJzIGxpOmZpcnN0LWNoaWxkLFxuICAgICAgLmJsb2ctZW50cnkgLmJyZWFkY3J1bWJzIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAgICAgc2VjdGlvbi5ibG9nLWFyY2hpdmUgLmJyZWFkY3J1bWJzIGxpOmZpcnN0LWNoaWxkIGEsXG4gICAgICAgIC5ibG9nLWVudHJ5IC5icmVhZGNydW1icyBsaTpmaXJzdC1jaGlsZCBhIHtcbiAgICAgICAgICBjb2xvcjogIzI1MjUyNTsgfVxuICBzZWN0aW9uLmJsb2ctYXJjaGl2ZSAuaW50cm8tYXJlYSxcbiAgLmJsb2ctZW50cnkgLmludHJvLWFyZWEge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXgtd2lkdGg6IDc2MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDYwcHggMCA4MHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgc2VjdGlvbi5ibG9nLWFyY2hpdmUgLmludHJvLWFyZWEsXG4gICAgICAuYmxvZy1lbnRyeSAuaW50cm8tYXJlYSB7XG4gICAgICAgIHBhZGRpbmc6IDYwcHggMCAzNXB4OyB9IH1cbiAgICBzZWN0aW9uLmJsb2ctYXJjaGl2ZSAuaW50cm8tYXJlYSAjc2VhcmNoZm9ybSxcbiAgICAuYmxvZy1lbnRyeSAuaW50cm8tYXJlYSAjc2VhcmNoZm9ybSB7XG4gICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgICAgbWFyZ2luOiAyNXB4IGF1dG8gMDsgfVxuICAgICAgc2VjdGlvbi5ibG9nLWFyY2hpdmUgLmludHJvLWFyZWEgI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwLFxuICAgICAgLmJsb2ctZW50cnkgLmludHJvLWFyZWEgI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgICBzZWN0aW9uLmJsb2ctYXJjaGl2ZSAuaW50cm8tYXJlYSAjc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAgaW5wdXQsXG4gICAgICAgIC5ibG9nLWVudHJ5IC5pbnRyby1hcmVhICNzZWFyY2hmb3JtIC5pbnB1dC1ncm91cCBpbnB1dCB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMTVweDtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDZweCByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9XG4gICAgICAgIHNlY3Rpb24uYmxvZy1hcmNoaXZlIC5pbnRyby1hcmVhICNzZWFyY2hmb3JtIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uLFxuICAgICAgICAuYmxvZy1lbnRyeSAuaW50cm8tYXJlYSAjc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksIHdoaXRlIDUwJSk7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4OyB9XG4gICAgICAgICAgc2VjdGlvbi5ibG9nLWFyY2hpdmUgLmludHJvLWFyZWEgI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24gLmZhLFxuICAgICAgICAgIC5ibG9nLWVudHJ5IC5pbnRyby1hcmVhICNzZWFyY2hmb3JtIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIC5mYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICMwYjg3OTM7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgICAgICAgc2VjdGlvbi5ibG9nLWFyY2hpdmUgLmludHJvLWFyZWEgI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXRbdmFsdWU9XCJTZWFyY2hcIl0sXG4gICAgICAgICAgLmJsb2ctZW50cnkgLmludHJvLWFyZWEgI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXRbdmFsdWU9XCJTZWFyY2hcIl0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgc2VjdGlvbi5ibG9nLWFyY2hpdmUgLmludHJvLWFyZWEgcCxcbiAgICAuYmxvZy1lbnRyeSAuaW50cm8tYXJlYSBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjb2xvcjogIzI1MjUyNTsgfVxuICAgIHNlY3Rpb24uYmxvZy1hcmNoaXZlIC5pbnRyby1hcmVhIGgxLFxuICAgIC5ibG9nLWVudHJ5IC5pbnRyby1hcmVhIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogNGVtO1xuICAgICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjb2xvcjogIzJlNDI0NDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICBzZWN0aW9uLmJsb2ctYXJjaGl2ZSAuaW50cm8tYXJlYSBoMSxcbiAgICAgICAgLmJsb2ctZW50cnkgLmludHJvLWFyZWEgaDEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogM2VtOyB9IH1cbiAgICAgIHNlY3Rpb24uYmxvZy1hcmNoaXZlIC5pbnRyby1hcmVhIGgxICsgcCxcbiAgICAgIC5ibG9nLWVudHJ5IC5pbnRyby1hcmVhIGgxICsgcCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgICBzZWN0aW9uLmJsb2ctYXJjaGl2ZSAuaW50cm8tYXJlYSBoMyxcbiAgICAuYmxvZy1lbnRyeSAuaW50cm8tYXJlYSBoMyB7XG4gICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjb2xvcjogIzJlNDI0NDsgfVxuICBzZWN0aW9uLmJsb2ctYXJjaGl2ZSBoMixcbiAgLmJsb2ctZW50cnkgaDIge1xuICAgIG1hcmdpbjogMTAwcHggMCA2MHB4O1xuICAgIGZvbnQtc2l6ZTogMi4yNWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgIHNlY3Rpb24uYmxvZy1hcmNoaXZlIGgyLFxuICAgICAgLmJsb2ctZW50cnkgaDIge1xuICAgICAgICBtYXJnaW46IDYwcHggMCA2MHB4OyB9IH1cbiAgICBzZWN0aW9uLmJsb2ctYXJjaGl2ZSBoMi53aHktc2staGVhZGVyLFxuICAgIC5ibG9nLWVudHJ5IGgyLndoeS1zay1oZWFkZXIge1xuICAgICAgd2lkdGg6IDQwNHB4O1xuICAgICAgaGVpZ2h0OiAxMzBweDtcbiAgICAgIG1hcmdpbjogNjBweCBhdXRvIDUwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtaW5kZW50OiAxMDAlO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgICBzZWN0aW9uLmJsb2ctYXJjaGl2ZSBoMi53aHktc2staGVhZGVyLFxuICAgICAgICAuYmxvZy1lbnRyeSBoMi53aHktc2staGVhZGVyIHtcbiAgICAgICAgICB3aWR0aDogODUlOyB9IH1cbiAgICBzZWN0aW9uLmJsb2ctYXJjaGl2ZSBoMiBhLFxuICAgIC5ibG9nLWVudHJ5IGgyIGEge1xuICAgICAgY29sb3I6ICMyNTI1MjU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIHNlY3Rpb24uYmxvZy1hcmNoaXZlIGgyIGEgc3BhbixcbiAgICAgIC5ibG9nLWVudHJ5IGgyIGEgc3BhbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7IH1cbiAgICAgICAgc2VjdGlvbi5ibG9nLWFyY2hpdmUgaDIgYSBzcGFuOmJlZm9yZSxcbiAgICAgICAgLmJsb2ctZW50cnkgaDIgYSBzcGFuOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAgICAgICAgIC8qIE9sZCBicm93c2VycyAqL1xuICAgICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgICAgICAgLyogRkYzLjYtMTUgKi9cbiAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgICAgIC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgICAgIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsIEdyYWRpZW50VHlwZT0xKTtcbiAgICAgICAgICAvKiBJRTYtOSAqLyB9XG4gICAgICBzZWN0aW9uLmJsb2ctYXJjaGl2ZSBoMiBhOmFmdGVyLFxuICAgICAgLmJsb2ctZW50cnkgaDIgYTphZnRlciB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICBjb250ZW50OiBcIlxcZjA2MVwiO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICBjb2xvcjogIzBiODc5MztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgZm9udC1zaXplOiAuN2VtO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7IH1cbiAgICAgIHNlY3Rpb24uYmxvZy1hcmNoaXZlIGgyIGE6aG92ZXI6YWZ0ZXIsXG4gICAgICAuYmxvZy1lbnRyeSBoMiBhOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cblxuYm9keS5jYXRlZ29yeSBzZWN0aW9uLmJsb2ctYXJjaGl2ZSxcbmJvZHkuc2VhcmNoLXJlc3VsdHMgc2VjdGlvbi5ibG9nLWFyY2hpdmUsXG5ib2R5LmFyY2hpdmUgc2VjdGlvbi5ibG9nLWFyY2hpdmUsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgc2VjdGlvbi5ibG9nLWFyY2hpdmUsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1wb3N0cyBzZWN0aW9uLmJsb2ctYXJjaGl2ZSxcbmJvZHkuYmxvZyBzZWN0aW9uLmJsb2ctYXJjaGl2ZSxcbmJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gc2VjdGlvbi5ibG9nLWFyY2hpdmUge1xuICBwYWRkaW5nLWJvdHRvbTogOTBweDsgfVxuICBib2R5LmNhdGVnb3J5IHNlY3Rpb24uYmxvZy1hcmNoaXZlIC5pbnRyby1hcmVhLFxuICBib2R5LnNlYXJjaC1yZXN1bHRzIHNlY3Rpb24uYmxvZy1hcmNoaXZlIC5pbnRyby1hcmVhLFxuICBib2R5LmFyY2hpdmUgc2VjdGlvbi5ibG9nLWFyY2hpdmUgLmludHJvLWFyZWEsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFsbC1wb3N0cyBzZWN0aW9uLmJsb2ctYXJjaGl2ZSAuaW50cm8tYXJlYSxcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgc2VjdGlvbi5ibG9nLWFyY2hpdmUgLmludHJvLWFyZWEsXG4gIGJvZHkuYmxvZyBzZWN0aW9uLmJsb2ctYXJjaGl2ZSAuaW50cm8tYXJlYSxcbiAgYm9keS5zaW5nbGUtcmVzb3VyY2VfaXRlbSBzZWN0aW9uLmJsb2ctYXJjaGl2ZSAuaW50cm8tYXJlYSB7XG4gICAgcGFkZGluZy10b3A6IDM1cHg7IH1cblxuYm9keS5jYXRlZ29yeSAuZmVhdHVyZWQtcG9zdCxcbmJvZHkuc2VhcmNoLXJlc3VsdHMgLmZlYXR1cmVkLXBvc3QsXG5ib2R5LmFyY2hpdmUgLmZlYXR1cmVkLXBvc3QsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgLmZlYXR1cmVkLXBvc3QsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1wb3N0cyAuZmVhdHVyZWQtcG9zdCxcbmJvZHkuYmxvZyAuZmVhdHVyZWQtcG9zdCxcbmJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLmZlYXR1cmVkLXBvc3Qge1xuICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG4gIGJvZHkuY2F0ZWdvcnkgLmZlYXR1cmVkLXBvc3QgKyBoMixcbiAgYm9keS5zZWFyY2gtcmVzdWx0cyAuZmVhdHVyZWQtcG9zdCArIGgyLFxuICBib2R5LmFyY2hpdmUgLmZlYXR1cmVkLXBvc3QgKyBoMixcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIC5mZWF0dXJlZC1wb3N0ICsgaDIsXG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5mZWF0dXJlZC1wb3N0ICsgaDIsXG4gIGJvZHkuYmxvZyAuZmVhdHVyZWQtcG9zdCArIGgyLFxuICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIC5mZWF0dXJlZC1wb3N0ICsgaDIge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuYm9keS5jYXRlZ29yeSAuYWxsLXBvc3RzLFxuYm9keS5zZWFyY2gtcmVzdWx0cyAuYWxsLXBvc3RzLFxuYm9keS5hcmNoaXZlIC5hbGwtcG9zdHMsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgLmFsbC1wb3N0cyxcbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBvc3RzIC5hbGwtcG9zdHMsXG5ib2R5LmJsb2cgLmFsbC1wb3N0cyxcbmJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLmFsbC1wb3N0cyB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgYm9keS5jYXRlZ29yeSAuYWxsLXBvc3RzIC5jZWxsLFxuICBib2R5LnNlYXJjaC1yZXN1bHRzIC5hbGwtcG9zdHMgLmNlbGwsXG4gIGJvZHkuYXJjaGl2ZSAuYWxsLXBvc3RzIC5jZWxsLFxuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMgLmFsbC1wb3N0cyAuY2VsbCxcbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLmFsbC1wb3N0cyAuY2VsbCxcbiAgYm9keS5ibG9nIC5hbGwtcG9zdHMgLmNlbGwsXG4gIGJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gLmFsbC1wb3N0cyAuY2VsbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIGJvZHkuY2F0ZWdvcnkgLmFsbC1wb3N0cyAuY2VsbDpsYXN0LW9mLXR5cGUsXG4gICAgICBib2R5LnNlYXJjaC1yZXN1bHRzIC5hbGwtcG9zdHMgLmNlbGw6bGFzdC1vZi10eXBlLFxuICAgICAgYm9keS5hcmNoaXZlIC5hbGwtcG9zdHMgLmNlbGw6bGFzdC1vZi10eXBlLFxuICAgICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzIC5hbGwtcG9zdHMgLmNlbGw6bGFzdC1vZi10eXBlLFxuICAgICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMgLmFsbC1wb3N0cyAuY2VsbDpsYXN0LW9mLXR5cGUsXG4gICAgICBib2R5LmJsb2cgLmFsbC1wb3N0cyAuY2VsbDpsYXN0LW9mLXR5cGUsXG4gICAgICBib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIC5hbGwtcG9zdHMgLmNlbGw6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbmJvZHkudGF4LWVzc2VudGlhbF9jYXRlZ29yaWVzIC5hbGwtcG9zdHMuaGFzLXR5cGUgLnBvc3QtaXRlbSxcbmJvZHkudGF4LWVzc2VudGlhbF90eXBlIC5hbGwtcG9zdHMuaGFzLXR5cGUgLnBvc3QtaXRlbSB7XG4gIHBhZGRpbmctYm90dG9tOiA0NXB4OyB9XG5cbmJvZHkudGF4LWVzc2VudGlhbF9jYXRlZ29yaWVzIC5lbWJlZC1ob2xkZXIsXG5ib2R5LnRheC1lc3NlbnRpYWxfdHlwZSAuZW1iZWQtaG9sZGVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5ib2R5LnRheC1lc3NlbnRpYWxfY2F0ZWdvcmllcyAudGFnLWNsb3VkLFxuYm9keS50YXgtZXNzZW50aWFsX3R5cGUgLnRhZy1jbG91ZCB7XG4gIG1hcmdpbi10b3A6IDY1cHg7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBib2R5LnRheC1lc3NlbnRpYWxfY2F0ZWdvcmllcyAudGFnLWNsb3VkIHVsLFxuICBib2R5LnRheC1lc3NlbnRpYWxfdHlwZSAudGFnLWNsb3VkIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgYm9keS50YXgtZXNzZW50aWFsX2NhdGVnb3JpZXMgLnRhZy1jbG91ZCB1bCBsaSxcbiAgICBib2R5LnRheC1lc3NlbnRpYWxfdHlwZSAudGFnLWNsb3VkIHVsIGxpIHtcbiAgICAgIG1hcmdpbjogMCAxMHB4IDE1cHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDAuOTM3NWVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICAgYm9keS50YXgtZXNzZW50aWFsX2NhdGVnb3JpZXMgLnRhZy1jbG91ZCB1bCBsaSBhLFxuICAgICAgYm9keS50YXgtZXNzZW50aWFsX3R5cGUgLnRhZy1jbG91ZCB1bCBsaSBhIHtcbiAgICAgICAgcGFkZGluZzogNHB4IDEwcHggM3B4O1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDExLCAxMzUsIDE0NywgMC4xKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgY29sb3I6ICMwYjg3OTM7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuNHM7IH1cbiAgICAgIGJvZHkudGF4LWVzc2VudGlhbF9jYXRlZ29yaWVzIC50YWctY2xvdWQgdWwgbGkuc2VsZWN0ZWQgYSxcbiAgICAgIGJvZHkudGF4LWVzc2VudGlhbF90eXBlIC50YWctY2xvdWQgdWwgbGkuc2VsZWN0ZWQgYSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBwYWRkaW5nOiA0cHggMTBweCAzcHg7IH1cbiAgICAgIGJvZHkudGF4LWVzc2VudGlhbF9jYXRlZ29yaWVzIC50YWctY2xvdWQgdWwgbGk6aG92ZXIgYSxcbiAgICAgIGJvZHkudGF4LWVzc2VudGlhbF90eXBlIC50YWctY2xvdWQgdWwgbGk6aG92ZXIgYSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgM3B4IDZweCAjMDAwMDAwMjk7IH1cblxuYm9keS50YXgtZXNzZW50aWFsX2NhdGVnb3JpZXMgLmFsbC1wb3N0cyAuY2VsbCxcbmJvZHkudGF4LWVzc2VudGlhbF90eXBlIC5hbGwtcG9zdHMgLmNlbGwge1xuICB0cmFuc2l0aW9uOiBhbGwgMzUwbXM7IH1cbiAgYm9keS50YXgtZXNzZW50aWFsX2NhdGVnb3JpZXMgLmFsbC1wb3N0cyAuY2VsbC5zY2FsZS1vdXQsXG4gIGJvZHkudGF4LWVzc2VudGlhbF90eXBlIC5hbGwtcG9zdHMgLmNlbGwuc2NhbGUtb3V0IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNyk7XG4gICAgb3BhY2l0eTogMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIGJvZHkuYmxvZyAuYWxsLXBvc3RzIC5jZWxsOmxhc3Qtb2YtdHlwZSwgYm9keS5zZWFyY2gtcmVzdWx0cyAuYWxsLXBvc3RzIC5jZWxsOmxhc3Qtb2YtdHlwZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uYmxvZy1lbnRyeSAuYnJlYWRjcnVtYnMge1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIG1hcmdpbjogMCAwIDMwcHg7IH1cblxuLmJsb2ctZW50cnkgaGVhZGVyLmZlYXR1cmVkLWhlcm8ge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuLmJsb2ctZW50cnkgLmludHJvLWFyZWEge1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1heC13aWR0aDogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmJsb2ctZW50cnkgLmludHJvLWFyZWEge1xuICAgICAgcGFkZGluZy1ib3R0b206IDM1cHg7IH0gfVxuICAuYmxvZy1lbnRyeSAuaW50cm8tYXJlYSBoMSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBmb250LXNpemU6IDIuNWVtO1xuICAgIGZvbnQtZmFtaWx5OiBcImFub255bW91cy1wcm9cIiwgbW9ub3NwYWNlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDExNSU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAuYmxvZy1lbnRyeSAuaW50cm8tYXJlYSBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMmVtOyB9IH1cbiAgLmJsb2ctZW50cnkgLmludHJvLWFyZWEgaW1nIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAuYmxvZy1lbnRyeSAuaW50cm8tYXJlYSAuaWNvbi13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYmxvZy1lbnRyeSAuaW50cm8tYXJlYSAuaWNvbi13cmFwcGVyIGkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuICAuYmxvZy1lbnRyeSAuaW50cm8tYXJlYSAuY2F0ZWdvcnktdGFnIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gICAgcGFkZGluZzogNXB4IDEwcHggM3B4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBtYXJnaW46IDAgMCAzMHB4IDA7IH1cbiAgLmJsb2ctZW50cnkgLmludHJvLWFyZWEgaDUge1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmJsb2ctZW50cnkgLmludHJvLWFyZWEgaDUgYSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYmxvZy1lbnRyeSAuaW50cm8tYXJlYSBoNiB7XG4gICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgY29sb3I6IHJnYmEoMzcsIDM3LCAzNywgMC41KTtcbiAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLmJsb2ctZW50cnkgaDIge1xuICBtYXJnaW46IDUwcHggMCAyNXB4O1xuICBmb250LXNpemU6IDEuNWVtO1xuICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5ibG9nLWVudHJ5IGgyOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5ibG9nLWVudHJ5IGgzIHtcbiAgbWFyZ2luOiAyNXB4IDAgMTVweDtcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xuICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5ibG9nLWVudHJ5IGgzOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5ibG9nLWVudHJ5IHAge1xuICBsaW5lLWhlaWdodDogMTgwJTtcbiAgbWFyZ2luOiAwIDAgMjVweCAwOyB9XG5cbi5ibG9nLWVudHJ5IGg2LmRhdGUge1xuICBtYXJnaW46IDMwcHggMCAwO1xuICBjb2xvcjogcmdiYSgzNywgMzcsIDM3LCAwLjUpO1xuICBmb250LXNpemU6IDEuMTI1ZW07XG4gIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4uYmxvZy1lbnRyeSAuYXV0aG9yLWJsb2NrIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgcGFkZGluZzogMjBweCAyNXB4IDIwcHggMTVweDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDEycHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMzVweCAwIDIwcHg7IH1cbiAgLmJsb2ctZW50cnkgLmF1dGhvci1ibG9jayBpbWcge1xuICAgIHdpZHRoOiA2NXB4O1xuICAgIGhlaWdodDogNjVweDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIC5ibG9nLWVudHJ5IC5hdXRob3ItYmxvY2sgLmF1dGhvci1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAuYmxvZy1lbnRyeSAuYXV0aG9yLWJsb2NrIC5hdXRob3ItY29udGVudCBoNSB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIC5ibG9nLWVudHJ5IC5hdXRob3ItYmxvY2sgLmF1dGhvci1jb250ZW50IGg1IGEge1xuICAgICAgICBjb2xvcjogIzI1MjUyNTsgfVxuICAgICAgLmJsb2ctZW50cnkgLmF1dGhvci1ibG9jayAuYXV0aG9yLWNvbnRlbnQgaDU6YWZ0ZXIge1xuICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICAgICAgY29udGVudDogXCJcXGYwNjFcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgY29sb3I6ICMwYjg3OTM7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogLjdlbTsgfVxuICAgIC5ibG9nLWVudHJ5IC5hdXRob3ItYmxvY2sgLmF1dGhvci1jb250ZW50IHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICAuYmxvZy1lbnRyeSAuYXV0aG9yLWJsb2NrOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogNnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICAgIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gICAgLyogT2xkIGJyb3dzZXJzICovXG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAvKiBGRjMuNi0xNSAqL1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTtcbiAgICAvKiBJRTYtOSAqLyB9XG5cbi5ibG9nLWVudHJ5IC50YWctbGlzdCB7XG4gIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAuYmxvZy1lbnRyeSAudGFnLWxpc3QgYSB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgY29sb3I6ICMwYjg3OTM7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgIC5ibG9nLWVudHJ5IC50YWctbGlzdCBhOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gICAgICAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgICAvKiBGRjMuNi0xNSAqL1xuICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgIC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7XG4gICAgICAvKiBJRTYtOSAqLyB9XG5cbi5ibG9nLWVudHJ5IC5ibG9nLXV0aWxpdHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIG1hcmdpbi1ib3R0b206IDY1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDM3LCAzNywgMzcsIDAuMTUpO1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgLmJsb2ctZW50cnkgLmJsb2ctdXRpbGl0eSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5ibG9nLWVudHJ5IC5zaGFyZS1saW5rcyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgLmJsb2ctZW50cnkgLnNoYXJlLWxpbmtzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTsgfSB9XG4gIC5ibG9nLWVudHJ5IC5zaGFyZS1saW5rcyBsaSB7XG4gICAgbWFyZ2luOiAwIDQ1cHggMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBmb250LXNpemU6IDEuMmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgIC5ibG9nLWVudHJ5IC5zaGFyZS1saW5rcyBsaSB7XG4gICAgICAgIG1hcmdpbjogMDsgfSB9XG4gICAgLmJsb2ctZW50cnkgLnNoYXJlLWxpbmtzIGxpIGEge1xuICAgICAgb3BhY2l0eTogLjU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7IH1cbiAgICAgIC5ibG9nLWVudHJ5IC5zaGFyZS1saW5rcyBsaSBhOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgIC5ibG9nLWVudHJ5IC5zaGFyZS1saW5rcyBsaSBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuYmxvZy1lbnRyeSAuc2hhcmUtbGlua3MgbGk6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAuYmxvZy1lbnRyeSAuY29tbWVudHMtY291bnQge1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLmJsb2ctZW50cnkgLmNvbW1lbnRzLWNvdW50IHNwYW4ge1xuICBvcGFjaXR5OiAuNTsgfVxuXG4uYmxvZy1lbnRyeSAucmVsYXRlZCB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE1KTsgfVxuICAuYmxvZy1lbnRyeSAucmVsYXRlZCBoMiB7XG4gICAgbWFyZ2luOiAwcHggMCA2MHB4O1xuICAgIGZvbnQtc2l6ZTogMi4yNWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgLmJsb2ctZW50cnkgLnJlbGF0ZWQgLmNlbGwgKyAuY2VsbCB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4OyB9IH1cblxuLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIHtcbiAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgLyogT2xkIGJyb3dzZXJzICovXG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KC00NWRlZywgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgLyogRkYzLjYtMTUgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoLTQ1ZGVnLCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTtcbiAgLyogSUU2LTkgZmFsbGJhY2sgb24gaG9yaXpvbnRhbCBncmFkaWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogNjBweCAwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgd2lkdGg6IDEwMHZ3O1xuICBtYXJnaW4tbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaGV4LW5vZGUtZ3JpZC1kYXJrLnBuZ1wiKSAwIDAgcmVwZWF0OyB9XG4gIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSBoMiB7XG4gICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIHAge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuZ3JpZC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuX2Zvcm0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuX2Zvcm0gLl9mb3JtLWNvbnRlbnQge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgICAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIC5fZm9ybS1jb250ZW50IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAgICAgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5fZm9ybSAuX2Zvcm0tY29udGVudCA+ICoge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIC5fZm9ybS10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5fZm9ybSAuX2Zvcm0tYnJhbmRpbmcge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuX2Zvcm0gLl9mb3JtLWxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIFt0eXBlPSd0ZXh0J10sIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuX2Zvcm0gW3R5cGU9J3Bhc3N3b3JkJ10sIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuX2Zvcm0gW3R5cGU9J2RhdGUnXSwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5fZm9ybSBbdHlwZT0nZGF0ZXRpbWUnXSwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5fZm9ybSBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5fZm9ybSBbdHlwZT0nbW9udGgnXSwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5fZm9ybSBbdHlwZT0nd2VlayddLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIFt0eXBlPSdlbWFpbCddLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIFt0eXBlPSdudW1iZXInXSwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5fZm9ybSBbdHlwZT0nc2VhcmNoJ10sIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuX2Zvcm0gW3R5cGU9J3RlbCddLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIFt0eXBlPSd0aW1lJ10sIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuX2Zvcm0gW3R5cGU9J3VybCddLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIFt0eXBlPSdjb2xvciddLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIC5fc3VibWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAyLjQzNzVlbTtcbiAgICAgIG1hcmdpbjogMCAwIDFlbTtcbiAgICAgIHBhZGRpbmc6IDAuNWVtO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgY29sb3I6ICMyNTI1MjU7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgICAgIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuX2Zvcm0gW3R5cGU9J3RleHQnXTo6cGxhY2Vob2xkZXIsIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuX2Zvcm0gW3R5cGU9J3Bhc3N3b3JkJ106OnBsYWNlaG9sZGVyLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIFt0eXBlPSdkYXRlJ106OnBsYWNlaG9sZGVyLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIFt0eXBlPSdkYXRldGltZSddOjpwbGFjZWhvbGRlciwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5fZm9ybSBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTo6cGxhY2Vob2xkZXIsIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuX2Zvcm0gW3R5cGU9J21vbnRoJ106OnBsYWNlaG9sZGVyLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIFt0eXBlPSd3ZWVrJ106OnBsYWNlaG9sZGVyLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIFt0eXBlPSdlbWFpbCddOjpwbGFjZWhvbGRlciwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5fZm9ybSBbdHlwZT0nbnVtYmVyJ106OnBsYWNlaG9sZGVyLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIFt0eXBlPSdzZWFyY2gnXTo6cGxhY2Vob2xkZXIsIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuX2Zvcm0gW3R5cGU9J3RlbCddOjpwbGFjZWhvbGRlciwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5fZm9ybSBbdHlwZT0ndGltZSddOjpwbGFjZWhvbGRlciwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5fZm9ybSBbdHlwZT0ndXJsJ106OnBsYWNlaG9sZGVyLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIFt0eXBlPSdjb2xvciddOjpwbGFjZWhvbGRlciwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5fZm9ybSAuX3N1Ym1pdDo6cGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogIzBiODc5MzsgfVxuICAgIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuX2Zvcm0gLl9pbmxpbmUtc3R5bGU6bm90KC5fY2xlYXIpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB3aWR0aDogNDAwcHg7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDE0MHB4KTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgICAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIC5faW5saW5lLXN0eWxlOm5vdCguX2NsZWFyKSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87IH0gfVxuICAgICAgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5fZm9ybSAuX2lubGluZS1zdHlsZTpub3QoLl9jbGVhcikgaW5wdXQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAuMjVlbSAwIDAgLjI1ZW07IH1cbiAgICAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIC5fYnV0dG9uLXdyYXBwZXIuX2lubGluZS1zdHlsZSB7XG4gICAgICB3aWR0aDogMTM0cHg7IH1cbiAgICAgIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuX2Zvcm0gLl9idXR0b24td3JhcHBlci5faW5saW5lLXN0eWxlIGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gICAgICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBwYWRkaW5nOiAuNWVtIDEuNWVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIC4yNWVtIC4yNWVtIDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgICAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLl9mb3JtIC5fYnV0dG9uLXdyYXBwZXIuX2lubGluZS1zdHlsZSBidXR0b246aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTcxN2I7IH1cbiAgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAgIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSAuaW5wdXRzLWxpc3Qge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSAuaW5wdXRzLWxpc3QgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICAgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIC5pbnB1dHMtbGlzdCBsaSBsYWJlbCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IGF1dG87IH1cbiAgICAgICAgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIC5pbnB1dHMtbGlzdCBsaTpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLmhic3B0LWZvcm0gLmhzX2Vycm9yX3JvbGx1cCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIC5ocy1lcnJvci1tc2cge1xuICAgICAgZm9udC1zaXplOiAwLjc1ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIC5mb3JtIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBmb250LXNpemU6IDA7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgICAgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIC5mb3JtIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAgICAgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIC5mb3JtID4gKiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAgIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSd0ZXh0J10sIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0ncGFzc3dvcmQnXSwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdkYXRlJ10sIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZXRpbWUnXSwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J21vbnRoJ10sIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0nd2VlayddLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J2VtYWlsJ10sIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0nbnVtYmVyJ10sIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0nc2VhcmNoJ10sIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0ndGVsJ10sIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0ndGltZSddLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J3VybCddLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J2NvbG9yJ10sIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSAuX3N1Ym1pdCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMi40Mzc1ZW07XG4gICAgICBtYXJnaW46IDAgMCAxZW07XG4gICAgICBwYWRkaW5nOiAwLjVlbTtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBhcHBlYXJhbmNlOiBub25lOyB9XG4gICAgICAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J3RleHQnXTo6cGxhY2Vob2xkZXIsIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0ncGFzc3dvcmQnXTo6cGxhY2Vob2xkZXIsIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZSddOjpwbGFjZWhvbGRlciwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdkYXRldGltZSddOjpwbGFjZWhvbGRlciwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOjpwbGFjZWhvbGRlciwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdtb250aCddOjpwbGFjZWhvbGRlciwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSd3ZWVrJ106OnBsYWNlaG9sZGVyLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J2VtYWlsJ106OnBsYWNlaG9sZGVyLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J251bWJlciddOjpwbGFjZWhvbGRlciwgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdzZWFyY2gnXTo6cGxhY2Vob2xkZXIsIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0ndGVsJ106OnBsYWNlaG9sZGVyLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J3RpbWUnXTo6cGxhY2Vob2xkZXIsIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0ndXJsJ106OnBsYWNlaG9sZGVyLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J2NvbG9yJ106OnBsYWNlaG9sZGVyLCAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLmhic3B0LWZvcm0gLl9zdWJtaXQ6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICMwYjg3OTM7IH1cbiAgICAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLmhic3B0LWZvcm0gZGl2LmhzLWZvcm0tZmllbGQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTQwcHgpOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAgIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSBkaXYuaHMtZm9ybS1maWVsZCB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87IH0gfVxuICAgICAgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIGRpdi5ocy1mb3JtLWZpZWxkIGlucHV0IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogLjI1ZW0gMCAwIC4yNWVtOyB9XG4gICAgLmJsb2ctZW50cnkgLnN1YnNjcmliZS1mb3JtIC5oYnNwdC1mb3JtIGRpdi5ocy1zdWJtaXQge1xuICAgICAgd2lkdGg6IDEzNHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAuYmxvZy1lbnRyeSAuc3Vic2NyaWJlLWZvcm0gLmhic3B0LWZvcm0gZGl2LmhzLXN1Ym1pdCBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAgICAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcGFkZGluZzogLjVlbSAxLjVlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAuMjVlbSAuMjVlbSAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBoZWlnaHQ6IDIuNDM3NWVtO1xuICAgICAgICBtYXJnaW46IDAgMCAxZW07XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lOyB9XG4gICAgICAgIC5ibG9nLWVudHJ5IC5zdWJzY3JpYmUtZm9ybSAuaGJzcHQtZm9ybSBkaXYuaHMtc3VibWl0IGlucHV0W3R5cGU9c3VibWl0XTpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA5NzE3YjsgfVxuXG4uYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSB7XG4gIG1hcmdpbi10b3A6IDYwcHg7IH1cbiAgLmJsb2ctZW50cnkgI2NvbW1lbnRzLWFyZWEgLmNvbW1lbnRzLWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAyNXB4IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICAgIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIC5jb21tZW50cy1oZWFkZXIgaDIge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSBvbCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIG9sIGxpIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSBvbCBsaTpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSBvbCBsaSBhcnRpY2xlIGhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgICAgIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIG9sIGxpIGFydGljbGUgaGVhZGVyIGltZyB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgICAgIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIG9sIGxpIGFydGljbGUgaGVhZGVyIC5hdXRob3ItbWV0YSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbiAgICAgICAgICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSBvbCBsaSBhcnRpY2xlIGhlYWRlciAuYXV0aG9yLW1ldGEgY2l0ZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBjb2xvcjogIzI1MjUyNTtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuICAgICAgICAgICAgLmJsb2ctZW50cnkgI2NvbW1lbnRzLWFyZWEgb2wgbGkgYXJ0aWNsZSBoZWFkZXIgLmF1dGhvci1tZXRhIGNpdGU6YmVmb3JlIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAgIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIG9sIGxpIGFydGljbGUgaGVhZGVyIC5hdXRob3ItbWV0YSB0aW1lIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDM3LCAzNywgMzcsIDAuNyk7IH1cbiAgICAgICAgICAgIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIG9sIGxpIGFydGljbGUgaGVhZGVyIC5hdXRob3ItbWV0YSB0aW1lIGEge1xuICAgICAgICAgICAgICBjb2xvcjogcmdiYSgzNywgMzcsIDM3LCAwLjcpOyB9XG4gICAgICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSBvbCBsaSBhcnRpY2xlIHNlY3Rpb24ge1xuICAgICAgICBtYXJnaW46IDI1cHggMCAwIDY4cHg7IH1cbiAgICAgIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIG9sIGxpIGFydGljbGUgLnJlcGx5IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCA2OHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOyB9XG4gICAgICAgIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIG9sIGxpIGFydGljbGUgLnJlcGx5OmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgICAgICAgY29udGVudDogXCJcXGYzZTVcIjtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgY29sb3I6ICMwYjg3OTM7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDsgfVxuICAgICAgLmJsb2ctZW50cnkgI2NvbW1lbnRzLWFyZWEgb2wgbGkgLmNoaWxkcmVuIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMzBweCA2OHB4OyB9XG4gIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIC5jb21tZW50LXJlc3BvbmQgLmNvbW1lbnQtZm9ybSAuY29tbWVudC1mb3JtLXVybCwgLmJsb2ctZW50cnkgI2NvbW1lbnRzLWFyZWEgLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtIC5jb21tZW50LW5vdGVzIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIC5jb21tZW50LXJlc3BvbmQgLmNvbW1lbnQtZm9ybSBbdHlwZT0ndGV4dCddLFxuICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gW3R5cGU9J3Bhc3N3b3JkJ10sXG4gIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIC5jb21tZW50LXJlc3BvbmQgLmNvbW1lbnQtZm9ybSBbdHlwZT0nZGF0ZSddLFxuICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gW3R5cGU9J2RhdGV0aW1lJ10sXG4gIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIC5jb21tZW50LXJlc3BvbmQgLmNvbW1lbnQtZm9ybSBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSxcbiAgLmJsb2ctZW50cnkgI2NvbW1lbnRzLWFyZWEgLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtIFt0eXBlPSdtb250aCddLFxuICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gW3R5cGU9J3dlZWsnXSxcbiAgLmJsb2ctZW50cnkgI2NvbW1lbnRzLWFyZWEgLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtIFt0eXBlPSdlbWFpbCddLFxuICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gW3R5cGU9J251bWJlciddLFxuICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gW3R5cGU9J3NlYXJjaCddLFxuICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gW3R5cGU9J3RlbCddLFxuICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gW3R5cGU9J3RpbWUnXSxcbiAgLmJsb2ctZW50cnkgI2NvbW1lbnRzLWFyZWEgLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtIFt0eXBlPSd1cmwnXSxcbiAgLmJsb2ctZW50cnkgI2NvbW1lbnRzLWFyZWEgLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtIFt0eXBlPSdjb2xvciddLFxuICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gdGV4dGFyZWEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgcGFkZGluZzogMThweCAyMHB4IDdweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMGI4NzkzO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6ICMyNTI1MjU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTsgfVxuICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gLmNvbW1lbnQtZm9ybS1hdXRob3Ige1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gLmNvbW1lbnQtZm9ybS1hdXRob3Ige1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLmJsb2ctZW50cnkgI2NvbW1lbnRzLWFyZWEgLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtIC5jb21tZW50LWZvcm0tZW1haWwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDE5cHgpO1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gLmNvbW1lbnQtZm9ybS1lbWFpbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gLmZvcm0tc3VibWl0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAuYmxvZy1lbnRyeSAjY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gLmZvcm0tc3VibWl0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIC5jb21tZW50LXJlc3BvbmQgLmNvbW1lbnQtZm9ybSBwW2NsYXNzXj0nY29tbWVudC0nXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1yaWdodDogMTdweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIC5jb21tZW50LXJlc3BvbmQgLmNvbW1lbnQtZm9ybSBwW2NsYXNzXj0nY29tbWVudC0nXSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gIC5ibG9nLWVudHJ5ICNjb21tZW50cy1hcmVhIC5jb21tZW50LXJlc3BvbmQgLmNvbW1lbnQtZm9ybSBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTJweDtcbiAgICBsZWZ0OiAyMHB4O1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zOyB9XG4gICAgLmJsb2ctZW50cnkgI2NvbW1lbnRzLWFyZWEgLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtIGxhYmVsLmZsb2F0LW1lIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC42KTtcbiAgICAgIHRvcDogNXB4O1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gICAgICBjb2xvcjogIzBiODc5MzsgfVxuXG5ib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtICNtYWluLWNvbnRhaW5lci5oYXMtcGF5d2FsbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4jcGF5d2FsbC1mb3JtIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiA5OTk5OyB9XG4gICNwYXl3YWxsLWZvcm06YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHBzOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyNmYWZhZmErMCxmYWZhZmErMTAwJjArMCwxKzEwMCAqL1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTAsIDI1MCwgMjUwLCAwKSAwJSwgI2ZhZmFmYSAxMDAlKTtcbiAgICAvKiBGRjMuNi0xNSAqL1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTAsIDI1MCwgMjUwLCAwKSAwJSwgI2ZhZmFmYSAxMDAlKTtcbiAgICAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjUwLCAyNTAsIDI1MCwgMCkgMCUsICNmYWZhZmEgMTAwJSk7XG4gICAgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMGZhZmFmYScsIGVuZENvbG9yc3RyPScjZmFmYWZhJyxHcmFkaWVudFR5cGU9MCApO1xuICAgIC8qIElFNi05ICovIH1cbiAgI3BheXdhbGwtZm9ybSAuZm9ybS13cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICAgIHBhZGRpbmc6IDUwcHggMCAxMDBweDsgfVxuICAgICNwYXl3YWxsLWZvcm0gLmZvcm0td3JhcHBlciBoMiwgI3BheXdhbGwtZm9ybSAuZm9ybS13cmFwcGVyIHAge1xuICAgICAgbWF4LXdpZHRoOiA2ODBweDtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgI3BheXdhbGwtZm9ybSAuZm9ybS13cmFwcGVyIHAge1xuICAgICAgbWFyZ2luOiAxMHB4IGF1dG8gMzBweDsgfVxuICAjcGF5d2FsbC1mb3JtIGZvcm0ge1xuICAgIG1heC13aWR0aDogNjgwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgI3BheXdhbGwtZm9ybSAua2V5LWZpZWxkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICNwYXl3YWxsLWZvcm0gLl9mb3JtIC5fZm9ybS1jb250ZW50IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICNwYXl3YWxsLWZvcm0gLl9mb3JtIC5fZm9ybS1jb250ZW50ID4gKiB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgI3BheXdhbGwtZm9ybSAuX2Zvcm0gLl9mb3JtLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07IH1cbiAgI3BheXdhbGwtZm9ybSAuX2Zvcm0gLl9mb3JtLWJyYW5kaW5nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICNwYXl3YWxsLWZvcm0gLl9mb3JtIC5fZm9ybS1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAjcGF5d2FsbC1mb3JtIC5fZm9ybSBbdHlwZT0ndGV4dCddLFxuICAjcGF5d2FsbC1mb3JtIC5fZm9ybSBbdHlwZT0ncGFzc3dvcmQnXSxcbiAgI3BheXdhbGwtZm9ybSAuX2Zvcm0gW3R5cGU9J2RhdGUnXSxcbiAgI3BheXdhbGwtZm9ybSAuX2Zvcm0gW3R5cGU9J2RhdGV0aW1lJ10sXG4gICNwYXl3YWxsLWZvcm0gLl9mb3JtIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLFxuICAjcGF5d2FsbC1mb3JtIC5fZm9ybSBbdHlwZT0nbW9udGgnXSxcbiAgI3BheXdhbGwtZm9ybSAuX2Zvcm0gW3R5cGU9J3dlZWsnXSxcbiAgI3BheXdhbGwtZm9ybSAuX2Zvcm0gW3R5cGU9J2VtYWlsJ10sXG4gICNwYXl3YWxsLWZvcm0gLl9mb3JtIFt0eXBlPSdudW1iZXInXSxcbiAgI3BheXdhbGwtZm9ybSAuX2Zvcm0gW3R5cGU9J3NlYXJjaCddLFxuICAjcGF5d2FsbC1mb3JtIC5fZm9ybSBbdHlwZT0ndGVsJ10sXG4gICNwYXl3YWxsLWZvcm0gLl9mb3JtIFt0eXBlPSd0aW1lJ10sXG4gICNwYXl3YWxsLWZvcm0gLl9mb3JtIFt0eXBlPSd1cmwnXSxcbiAgI3BheXdhbGwtZm9ybSAuX2Zvcm0gW3R5cGU9J2NvbG9yJ10sXG4gICNwYXl3YWxsLWZvcm0gLl9mb3JtIHRleHRhcmVhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgIHBhZGRpbmc6IDEycHggMTZweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMGI4NzkzO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTsgfVxuICAgICNwYXl3YWxsLWZvcm0gLl9mb3JtIFt0eXBlPSd0ZXh0J106OnBsYWNlaG9sZGVyLFxuICAgICNwYXl3YWxsLWZvcm0gLl9mb3JtIFt0eXBlPSdwYXNzd29yZCddOjpwbGFjZWhvbGRlcixcbiAgICAjcGF5d2FsbC1mb3JtIC5fZm9ybSBbdHlwZT0nZGF0ZSddOjpwbGFjZWhvbGRlcixcbiAgICAjcGF5d2FsbC1mb3JtIC5fZm9ybSBbdHlwZT0nZGF0ZXRpbWUnXTo6cGxhY2Vob2xkZXIsXG4gICAgI3BheXdhbGwtZm9ybSAuX2Zvcm0gW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106OnBsYWNlaG9sZGVyLFxuICAgICNwYXl3YWxsLWZvcm0gLl9mb3JtIFt0eXBlPSdtb250aCddOjpwbGFjZWhvbGRlcixcbiAgICAjcGF5d2FsbC1mb3JtIC5fZm9ybSBbdHlwZT0nd2VlayddOjpwbGFjZWhvbGRlcixcbiAgICAjcGF5d2FsbC1mb3JtIC5fZm9ybSBbdHlwZT0nZW1haWwnXTo6cGxhY2Vob2xkZXIsXG4gICAgI3BheXdhbGwtZm9ybSAuX2Zvcm0gW3R5cGU9J251bWJlciddOjpwbGFjZWhvbGRlcixcbiAgICAjcGF5d2FsbC1mb3JtIC5fZm9ybSBbdHlwZT0nc2VhcmNoJ106OnBsYWNlaG9sZGVyLFxuICAgICNwYXl3YWxsLWZvcm0gLl9mb3JtIFt0eXBlPSd0ZWwnXTo6cGxhY2Vob2xkZXIsXG4gICAgI3BheXdhbGwtZm9ybSAuX2Zvcm0gW3R5cGU9J3RpbWUnXTo6cGxhY2Vob2xkZXIsXG4gICAgI3BheXdhbGwtZm9ybSAuX2Zvcm0gW3R5cGU9J3VybCddOjpwbGFjZWhvbGRlcixcbiAgICAjcGF5d2FsbC1mb3JtIC5fZm9ybSBbdHlwZT0nY29sb3InXTo6cGxhY2Vob2xkZXIsXG4gICAgI3BheXdhbGwtZm9ybSAuX2Zvcm0gdGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjYTlhOWE5OyB9XG4gICNwYXl3YWxsLWZvcm0gLl9mb3JtIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IDE4MHB4OyB9XG4gICNwYXl3YWxsLWZvcm0gLl9mb3JtIC5fYnV0dG9uLXdyYXBwZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAyNXB4OyB9XG4gICNwYXl3YWxsLWZvcm0gLl9mb3JtIC5fc3VibWl0IHtcbiAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAuOHB4O1xuICAgIHBhZGRpbmc6IDE1cHggMzVweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMCAycHggOHB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKSwgMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpOyB9XG4gICNwYXl3YWxsLWZvcm0gLl9mb3JtIC5fZnVsbF93aWR0aCB7XG4gICAgZmxleDogMSAwIDUwJTtcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmc6IDAgMjBweDsgfVxuICAgICNwYXl3YWxsLWZvcm0gLl9mb3JtIC5fZnVsbF93aWR0aC5fZmllbGQxIHtcbiAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAjcGF5d2FsbC1mb3JtIC5fZm9ybSAuX2Z1bGxfd2lkdGgge1xuICAgICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAjcGF5d2FsbC1mb3JtIC5fZm9ybSAuX2J1dHRvbi13cmFwcGVyLl9pbmxpbmUtc3R5bGUge1xuICAgIHdpZHRoOiAxMzRweDsgfVxuICAgICNwYXl3YWxsLWZvcm0gLl9mb3JtIC5fYnV0dG9uLXdyYXBwZXIuX2lubGluZS1zdHlsZSBidXR0b24ge1xuICAgICAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHBhZGRpbmc6IC41ZW0gMS41ZW07XG4gICAgICBib3JkZXItcmFkaXVzOiAwIC4yNWVtIC4yNWVtIDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgICNwYXl3YWxsLWZvcm0gLl9mb3JtIC5fYnV0dG9uLXdyYXBwZXIuX2lubGluZS1zdHlsZSBidXR0b246aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDk3MTdiOyB9XG4gICNwYXl3YWxsLWZvcm0gLl9mb3JtLXRoYW5rLXlvdSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMzBweDtcbiAgICBwYWRkaW5nOiAzMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMGI4NzkzOyB9XG4gICNwYXl3YWxsLWZvcm0gLl9lcnJvci5fYWJvdmUsICNwYXl3YWxsLWZvcm0gLl9lcnJvci5fYmVsb3cge1xuICAgIGZvbnQtc2l6ZTogLjdlbTtcbiAgICBjb2xvcjogcmVkO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI4cHgpO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIC5oc19lcnJvcl9yb2xsdXAge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBmb3JtIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBwYWRkaW5nOiAyMHB4OyB9XG4gICAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBmb3JtID4gKiB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDAgLTIwcHggMzBweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQge1xuICAgICAgICAgIG1hcmdpbjogMCAtMjBweCAwcHg7IH1cbiAgICAgICAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQ6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuICAgICAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0xIC5ocy1pbnB1dCxcbiAgICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMSAuaW5wdXQge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQuZm9ybS1jb2x1bW5zLTEgLmhzLWlucHV0LFxuICAgICAgICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMSAuaW5wdXQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAgICAgICAgICAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0xIC5ocy1pbnB1dCBbdHlwZT0nY2hlY2tib3gnXSxcbiAgICAgICAgICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMSAuaW5wdXQgW3R5cGU9J2NoZWNrYm94J10ge1xuICAgICAgICAgICAgICB3aWR0aDogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHggIWltcG9ydGFudDsgfSB9XG4gICAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQuZm9ybS1jb2x1bW5zLTIgLmhzLWlucHV0LFxuICAgICAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0yIC5pbnB1dCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMiAuaHMtaW5wdXQsXG4gICAgICAgICAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0yIC5pbnB1dCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQuZm9ybS1jb2x1bW5zLTIgLmhzLWlucHV0IFt0eXBlPSdjaGVja2JveCddLFxuICAgICAgICAgICAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0yIC5pbnB1dCBbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGhlaWdodDogMjBweCAhaW1wb3J0YW50OyB9IH1cbiAgICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMSAuaHMtZm9ybS1maWVsZCB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQuZm9ybS1jb2x1bW5zLTEgLmhzLWZvcm0tZmllbGQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfSB9XG4gICAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQuZm9ybS1jb2x1bW5zLTIgLmhzLWZvcm0tZmllbGQge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQuZm9ybS1jb2x1bW5zLTIgLmhzLWZvcm0tZmllbGQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAgICAgICAgICAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0LmZvcm0tY29sdW1ucy0yIC5ocy1mb3JtLWZpZWxkIFt0eXBlPSdjaGVja2JveCddIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7IH0gfVxuICAgICAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBmb3JtIGZpZWxkc2V0IC5ocy1mb3JtLWZpZWxkIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQgLmhzLWZvcm0tZmllbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG4gICAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIGZvcm0gZmllbGRzZXQgbGFiZWwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTNweDtcbiAgICAgICAgbGVmdDogMzdweDtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBjb2xvcjogcmdiYSgzNywgMzcsIDM3LCAwLjUpO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zOyB9XG4gICAgICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gZm9ybSBmaWVsZHNldCBsYWJlbC5mbG9hdC1tZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xuICAgICAgICAgIHRvcDogOHB4O1xuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAgICAgICAgIGNvbG9yOiAjMGI4NzkzOyB9XG4gICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J3RleHQnXSxcbiAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0ncGFzc3dvcmQnXSxcbiAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZSddLFxuICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdkYXRldGltZSddLFxuICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLFxuICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdtb250aCddLFxuICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSd3ZWVrJ10sXG4gICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J2VtYWlsJ10sXG4gICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J251bWJlciddLFxuICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdzZWFyY2gnXSxcbiAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0ndGVsJ10sXG4gICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J3RpbWUnXSxcbiAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0ndXJsJ10sXG4gICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J2NvbG9yJ10sXG4gICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gdGV4dGFyZWEsXG4gICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgIHBhZGRpbmc6IDE4cHggMTZweCA2cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzBiODc5MztcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBjb2xvcjogIzI1MjUyNTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSd0ZXh0J106OnBsYWNlaG9sZGVyLFxuICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J3Bhc3N3b3JkJ106OnBsYWNlaG9sZGVyLFxuICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J2RhdGUnXTo6cGxhY2Vob2xkZXIsXG4gICAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZXRpbWUnXTo6cGxhY2Vob2xkZXIsXG4gICAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTo6cGxhY2Vob2xkZXIsXG4gICAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0nbW9udGgnXTo6cGxhY2Vob2xkZXIsXG4gICAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0nd2VlayddOjpwbGFjZWhvbGRlcixcbiAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdlbWFpbCddOjpwbGFjZWhvbGRlcixcbiAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdudW1iZXInXTo6cGxhY2Vob2xkZXIsXG4gICAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0nc2VhcmNoJ106OnBsYWNlaG9sZGVyLFxuICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J3RlbCddOjpwbGFjZWhvbGRlcixcbiAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSd0aW1lJ106OnBsYWNlaG9sZGVyLFxuICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J3VybCddOjpwbGFjZWhvbGRlcixcbiAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdjb2xvciddOjpwbGFjZWhvbGRlcixcbiAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIHRleHRhcmVhOjpwbGFjZWhvbGRlcixcbiAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIHNlbGVjdDo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICNhOWE5YTk7IH1cbiAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBzZWxlY3Qge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4MTM4LCAxMzgsIDEzOCUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgNXB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICAgIGNvbG9yOiByZ2JhKDM3LCAzNywgMzcsIDAuNCk7IH1cbiAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiAxODBweDsgfVxuICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIC5pbnB1dHMtbGlzdCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gLmlucHV0cy1saXN0IGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIC5pbnB1dHMtbGlzdCBsaSBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gLmlucHV0cy1saXN0IGxpOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSBbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgbWFyZ2luOiAwIDEwcHggMCAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDIwcHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzBiODc5MztcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgZmxleDogMCAxIDIwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdjaGVja2JveCddIHtcbiAgICAgICAgd2lkdGg6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7IH0gfVxuICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J2NoZWNrYm94J106Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J2NoZWNrYm94J10gKyBzcGFuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgZmxleDogMSAwOyB9XG4gICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gW3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBiODc5MztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAjcGF5d2FsbC1mb3JtIC5oYnNwdC1mb3JtIFt0eXBlPSdjaGVja2JveCddOmNoZWNrZWQ6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCLinJNcIjtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAycHg7XG4gICAgICB0b3A6IDA7IH1cbiAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSAuaHMtZmllbGR0eXBlLWNoZWNrYm94IGxhYmVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBjb2xvcjogcmdiYSgzNywgMzcsIDM3LCAwLjUpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAyMDBtczsgfVxuICAgICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gLmhzLWZpZWxkdHlwZS1jaGVja2JveCBsYWJlbC5mbG9hdC1tZSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgdG9wOiAwO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gICAgICBjb2xvcjogcmdiYSgzNywgMzcsIDM3LCAwLjUpOyB9XG4gICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gLmhzLWZpZWxkdHlwZS1jaGVja2JveCB1bCBsaSBsYWJlbC5mbG9hdC1tZSB7XG4gICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSAuaHMtc3VibWl0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgI3BheXdhbGwtZm9ybSAuaGJzcHQtZm9ybSAuaHMtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAuOHB4O1xuICAgIHBhZGRpbmc6IDE1cHggMzVweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMCAycHggOHB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKSwgMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpOyB9XG4gICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gLmhzLWVycm9yLW1zZyB7XG4gICAgZm9udC1zaXplOiAwLjc1ZW07XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICNwYXl3YWxsLWZvcm0gLmhic3B0LWZvcm0gLnN1Ym1pdHRlZC1tZXNzYWdlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzBiODc5MztcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDExLCAxMzUsIDE0NywgMC4xKTtcbiAgICBwYWRkaW5nOiAzMHB4O1xuICAgIG1hcmdpbjogMTVweCBhdXRvO1xuICAgIG1heC13aWR0aDogNjgwcHg7IH1cbiAgI3BheXdhbGwtZm9ybSAuX2Zvcm0tdGhhbmsteW91IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAzMHB4O1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMwYjg3OTM7IH1cbiAgI3BheXdhbGwtZm9ybSAuX2Vycm9yLl9hYm92ZSwgI3BheXdhbGwtZm9ybSAuX2Vycm9yLl9iZWxvdyB7XG4gICAgZm9udC1zaXplOiAuN2VtO1xuICAgIGNvbG9yOiByZWQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjhweCk7XG4gICAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi5rZXktZmllbGQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmJvZHkuZXJyb3I0MDQgaGVhZGVyIHtcbiAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgLyogT2xkIGJyb3dzZXJzICovXG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gIC8qIEZGMy42LTE1ICovXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gIC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsIEdyYWRpZW50VHlwZT0xKTtcbiAgLyogSUU2LTkgKi9cbiAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICBib2R5LmVycm9yNDA0IGhlYWRlci5zaXRlLWhlYWRlciB7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICBib2R5LmVycm9yNDA0IGhlYWRlci5zaXRlLWhlYWRlciB7XG4gICAgICAgIGhlaWdodDogNTVweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgYm9keS5lcnJvcjQwNCBoZWFkZXIuc2l0ZS1oZWFkZXIgLm1vYmlsZS1uYXYtdHJpZ2dlciB7XG4gICAgICAgIHRvcDogMTZweDsgfSB9XG4gIGJvZHkuZXJyb3I0MDQgaGVhZGVyLnNpdGUtaGVhZGVyIC5sb2dvIHtcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgdG9wOiAxMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgYm9keS5lcnJvcjQwNCBoZWFkZXIuc2l0ZS1oZWFkZXIgLmxvZ28ge1xuICAgICAgICB3aWR0aDogMTYwcHg7XG4gICAgICAgIHRvcDogMnB4OyB9IH1cbiAgYm9keS5lcnJvcjQwNCBoZWFkZXIuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lciB7XG4gICAgdG9wOiAxMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgYm9keS5lcnJvcjQwNCBoZWFkZXIuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lciB7XG4gICAgICAgIHRvcDogMDsgfSB9XG5cbmJvZHkuZXJyb3I0MDQgLmludHJvLWFyZWEge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1heC13aWR0aDogNzYwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiA2MHB4IDAgODBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgYm9keS5lcnJvcjQwNCAuaW50cm8tYXJlYSB7XG4gICAgICBwYWRkaW5nOiA2MHB4IDAgMzVweDsgfSB9XG4gIGJvZHkuZXJyb3I0MDQgLmludHJvLWFyZWEgI3NlYXJjaGZvcm0ge1xuICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG8gMDsgfVxuICAgIGJvZHkuZXJyb3I0MDQgLmludHJvLWFyZWEgI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgYm9keS5lcnJvcjQwNCAuaW50cm8tYXJlYSAjc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXA6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDAyXCI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgZm9udC1zaXplOiAuOGVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgICAgIGJvZHkuZXJyb3I0MDQgLmludHJvLWFyZWEgI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMCAxNXB4IDQwcHg7XG4gICAgICAgIGhlaWdodDogNTBweDsgfVxuICAgICAgICBib2R5LmVycm9yNDA0IC5pbnRyby1hcmVhICNzZWFyY2hmb3JtIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtZmllbGQ6Zm9jdXMge1xuICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzBiODc5MztcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICBib2R5LmVycm9yNDA0IC5pbnRyby1hcmVhICNzZWFyY2hmb3JtICNzZWFyY2hzdWJtaXQge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDAgMzBweDsgfVxuICAgIGJvZHkuZXJyb3I0MDQgLmludHJvLWFyZWEgI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQsXG4gICAgYm9keS5lcnJvcjQwNCAuaW50cm8tYXJlYSAjc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgNHB4IDRweCAwOyB9XG4gIGJvZHkuZXJyb3I0MDQgLmludHJvLWFyZWEgcCB7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgYm9keS5lcnJvcjQwNCAuaW50cm8tYXJlYSBoMSB7XG4gICAgZm9udC1zaXplOiA0ZW07XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY29sb3I6ICMyZTQyNDQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICBib2R5LmVycm9yNDA0IC5pbnRyby1hcmVhIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAzZW07IH0gfVxuICAgIGJvZHkuZXJyb3I0MDQgLmludHJvLWFyZWEgaDEgKyBwIHtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgYm9keS5lcnJvcjQwNCAuaW50cm8tYXJlYSBoMyB7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBjb2xvcjogIzJlNDI0NDsgfVxuXG5ib2R5LmVycm9yNDA0IGgyIHtcbiAgbWFyZ2luOiAwIDAgNjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDIuMjVlbTtcbiAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgYm9keS5lcnJvcjQwNCBoMiB7XG4gICAgICBtYXJnaW46IDYwcHggMCA2MHB4OyB9IH1cbiAgYm9keS5lcnJvcjQwNCBoMiBhIHtcbiAgICBjb2xvcjogIzI1MjUyNTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBib2R5LmVycm9yNDA0IGgyIGEgc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDsgfVxuICAgICAgYm9keS5lcnJvcjQwNCBoMiBhIHNwYW46YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgICAgIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gICAgICAgIC8qIE9sZCBicm93c2VycyAqL1xuICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgICAvKiBGRjMuNi0xNSAqL1xuICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgICAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgICAgIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLCBHcmFkaWVudFR5cGU9MSk7XG4gICAgICAgIC8qIElFNi05ICovIH1cbiAgICBib2R5LmVycm9yNDA0IGgyIGE6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgICBjb250ZW50OiBcIlxcZjA2MVwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICBjb2xvcjogIzBiODc5MztcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXNpemU6IC43ZW07XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7IH1cbiAgICBib2R5LmVycm9yNDA0IGgyIGE6aG92ZXI6YWZ0ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cblxuYm9keS5lcnJvcjQwNCAucG9zdC1pdGVtIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiAwIDdweCAxMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gIGJvZHkuZXJyb3I0MDQgLnBvc3QtaXRlbSBwIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAzMHB4IDMwcHg7XG4gICAgY29sb3I6ICMyNTI1MjU7XG4gICAgZm9udC1zaXplOiAwLjllbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICBib2R5LmVycm9yNDA0IC5wb3N0LWl0ZW0gaW1nIHtcbiAgICBoZWlnaHQ6IDE5MHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gIGJvZHkuZXJyb3I0MDQgLnBvc3QtaXRlbSBoNSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDIwcHggMzBweCAwO1xuICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgIGJvZHkuZXJyb3I0MDQgLnBvc3QtaXRlbSBoNSBpbWcge1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgYm9keS5lcnJvcjQwNCAucG9zdC1pdGVtIGg1IHNwYW4ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgYm9keS5lcnJvcjQwNCAucG9zdC1pdGVtIGgzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMjBweCAzMHB4IDEycHg7XG4gICAgY29sb3I6ICMyNTI1MjU7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtOyB9XG4gIGJvZHkuZXJyb3I0MDQgLnBvc3QtaXRlbTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDZweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgICAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgIC8qIEZGMy42LTE1ICovXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzBiODc5MycsIGVuZENvbG9yc3RyPScjMzYwMDMzJyxHcmFkaWVudFR5cGU9MSApO1xuICAgIC8qIElFNi05ICovIH1cbiAgYm9keS5lcnJvcjQwNCAucG9zdC1pdGVtOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDE2cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9XG4gICAgYm9keS5lcnJvcjQwNCAucG9zdC1pdGVtOmhvdmVyIGltZyB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIGhlYWRlciB7XG4gIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gIC8qIE9sZCBicm93c2VycyAqL1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAvKiBGRjMuNi0xNSAqL1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzBiODc5MycsIGVuZENvbG9yc3RyPScjMzYwMDMzJyxHcmFkaWVudFR5cGU9MSApO1xuICAvKiBJRTYtOSAqL1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIGhlYWRlci5zaXRlLWhlYWRlciB7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayBoZWFkZXIuc2l0ZS1oZWFkZXIge1xuICAgICAgICBoZWlnaHQ6IDU1cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIGhlYWRlci5zaXRlLWhlYWRlciAubW9iaWxlLW5hdi10cmlnZ2VyIHtcbiAgICAgICAgdG9wOiAxNnB4OyB9IH1cbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgaGVhZGVyLnNpdGUtaGVhZGVyIC5sb2dvIHtcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgdG9wOiAxMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgaGVhZGVyLnNpdGUtaGVhZGVyIC5sb2dvIHtcbiAgICAgICAgd2lkdGg6IDE2MHB4O1xuICAgICAgICB0b3A6IDJweDsgfSB9XG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIGhlYWRlci5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHtcbiAgICB0b3A6IDEwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayBoZWFkZXIuc2l0ZS1oZWFkZXIgLm1haW4tbmF2LWNvbnRhaW5lciB7XG4gICAgICAgIHRvcDogMDsgfSB9XG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uZmVhdHVyZWQtbWFzdGhlYWQge1xuICBwYWRkaW5nLXRvcDogNzBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5mZWF0dXJlZC1tYXN0aGVhZCB7XG4gICAgICBwYWRkaW5nLXRvcDogNTVweDsgfSB9XG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uZmVhdHVyZWQtbWFzdGhlYWQgLmNlbGwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5mZWF0dXJlZC1tYXN0aGVhZCAuY2VsbCAuYmFja2dyb3VuZC1pbWFnZSB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDsgfVxuICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uZmVhdHVyZWQtbWFzdGhlYWQgLmNlbGwgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIHBhZGRpbmc6IDE1MHB4IDQwcHggMTE1cHg7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayBzZWN0aW9uLmZlYXR1cmVkLW1hc3RoZWFkIC5jZWxsIC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgICAgIHBhZGRpbmc6IDc1cHggMjVweCA0NXB4OyB9IH1cbiAgICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uZmVhdHVyZWQtbWFzdGhlYWQgLmNlbGwgLmNvbnRlbnQtd3JhcHBlciBoMyB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImFub255bW91cy1wcm9cIiwgbW9ub3NwYWNlO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IDIuNWVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwOyB9XG4gICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayBzZWN0aW9uLmZlYXR1cmVkLW1hc3RoZWFkIC5jZWxsIC5jb250ZW50LXdyYXBwZXIgLnRhZyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHggM3B4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgZm9udC1zaXplOiAwLjkzNzVlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjRzOyB9XG4gICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayBzZWN0aW9uLmZlYXR1cmVkLW1hc3RoZWFkIC5jZWxsIC5jb250ZW50LXdyYXBwZXIgLmxpbmsge1xuICAgICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45Mzc1ZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5mZWF0dXJlZC1tYXN0aGVhZCAuY2VsbCAuY29udGVudC13cmFwcGVyIC5saW5rOmFmdGVyIHtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA2MVwiO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogLjhlbTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IC0xcHg7IH1cbiAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayBzZWN0aW9uLmZlYXR1cmVkLW1hc3RoZWFkIC5jZWxsOmhvdmVyIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAzMHB4IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICAgICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5mZWF0dXJlZC1tYXN0aGVhZCAuY2VsbDpob3ZlciAudGFnIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAzcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7IH1cbiAgICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uZmVhdHVyZWQtbWFzdGhlYWQgLmNlbGw6aG92ZXIgLmNvbnRlbnQtd3JhcHBlciAubGluazphZnRlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayBzZWN0aW9uLmZlYXR1cmVkLW1hc3RoZWFkIC5jZWxsOmhvdmVyIC5iYWNrZ3JvdW5kLWltYWdlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpOyB9XG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uYXJ0aWNsZS1ncmlkIHtcbiAgcGFkZGluZzogODBweCAwOyB9XG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uYXJ0aWNsZS1ncmlkIC5oZWFkZXItY29udGFpbmVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayBzZWN0aW9uLmFydGljbGUtZ3JpZCAuaGVhZGVyLWNvbnRhaW5lciBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNWVtOyB9XG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uYXJ0aWNsZS1ncmlkIC53aHktc2staGVhZGVyIHtcbiAgICB3aWR0aDogNDA0cHg7XG4gICAgaGVpZ2h0OiAxMzBweDtcbiAgICBtYXJnaW46IDAgYXV0byAzNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtaW5kZW50OiAxMDAlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayBzZWN0aW9uLmFydGljbGUtZ3JpZCAud2h5LXNrLWhlYWRlciB7XG4gICAgICAgIHdpZHRoOiA4NSU7IH0gfVxuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayBzZWN0aW9uLmFydGljbGUtZ3JpZCAudGFnLWNsb3VkIHtcbiAgICBtYXJnaW4tdG9wOiA2NXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5hcnRpY2xlLWdyaWQgLnRhZy1jbG91ZCB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5hcnRpY2xlLWdyaWQgLnRhZy1jbG91ZCB1bCBsaSB7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDE1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IDAuOTM3NWVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uYXJ0aWNsZS1ncmlkIC50YWctY2xvdWQgdWwgbGkgYSB7XG4gICAgICAgICAgcGFkZGluZzogNHB4IDEwcHggM3B4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTEsIDEzNSwgMTQ3LCAwLjEpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgY29sb3I6ICMwYjg3OTM7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC40czsgfVxuICAgICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayBzZWN0aW9uLmFydGljbGUtZ3JpZCAudGFnLWNsb3VkIHVsIGxpLnNlbGVjdGVkIGEge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICBwYWRkaW5nOiA0cHggMTBweCAzcHg7IH1cbiAgICAgICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5hcnRpY2xlLWdyaWQgLnRhZy1jbG91ZCB1bCBsaTpob3ZlciBhIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDNweCA2cHggIzAwMDAwMDI5OyB9XG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uYXJ0aWNsZS1ncmlkIC5idXR0b24tcm93IHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5hcnRpY2xlLWdyaWQgLmJ1dHRvbi1yb3cgYSB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5hcnRpY2xlLWdyaWQgLmFsbC1wb3N0cyAuY2VsbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXM7IH1cbiAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayBzZWN0aW9uLmFydGljbGUtZ3JpZCAuYWxsLXBvc3RzIC5jZWxsLnNjYWxlLW91dCB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNyk7XG4gICAgICBvcGFjaXR5OiAwOyB9XG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uYXJ0aWNsZS1ncmlkIC5wb3N0LWl0ZW0ge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDEycHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDsgfVxuICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uYXJ0aWNsZS1ncmlkIC5wb3N0LWl0ZW0gcCB7XG4gICAgICBtYXJnaW46IDAgMCA0MHB4O1xuICAgICAgcGFkZGluZzogMCAzMHB4IDMwcHg7XG4gICAgICBjb2xvcjogIzI1MjUyNTtcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5hcnRpY2xlLWdyaWQgLnBvc3QtaXRlbSAuY2F0ZWdvcnkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxNTBweDtcbiAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICBmb250LXNpemU6IDAuOTM3NWVtO1xuICAgICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuNzVweDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogNHB4IDEwcHggM3B4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5hcnRpY2xlLWdyaWQgLnBvc3QtaXRlbSAuaW1nLWNvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMjUyNTI1OyB9XG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5hcnRpY2xlLWdyaWQgLnBvc3QtaXRlbSBpbWcge1xuICAgICAgaGVpZ2h0OiAxOTBweDtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvcGFjaXR5OiAwLjY1O1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDsgfVxuICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uYXJ0aWNsZS1ncmlkIC5wb3N0LWl0ZW0gaDUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMjBweCAzMHB4IDA7XG4gICAgICBjb2xvcjogIzI1MjUyNTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uYXJ0aWNsZS1ncmlkIC5wb3N0LWl0ZW0gaDUgaW1nIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uYXJ0aWNsZS1ncmlkIC5wb3N0LWl0ZW0gaDUgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5hcnRpY2xlLWdyaWQgLnBvc3QtaXRlbSBoNCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgY29sb3I6ICM5ODk4OTg7XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMzBweDtcbiAgICAgIGxlZnQ6IDMwcHg7IH1cbiAgICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uYXJ0aWNsZS1ncmlkIC5wb3N0LWl0ZW0gaDQgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogLjhlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtMnB4OyB9XG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5hcnRpY2xlLWdyaWQgLnBvc3QtaXRlbSBoMyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAyMHB4IDMwcHggMTJweDtcbiAgICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtOyB9XG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5hcnRpY2xlLWdyaWQgLnBvc3QtaXRlbTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDZweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gICAgICAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgICAvKiBGRjMuNi0xNSAqL1xuICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgIC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7XG4gICAgICAvKiBJRTYtOSAqLyB9XG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgc2VjdGlvbi5hcnRpY2xlLWdyaWQgLnBvc3QtaXRlbTpob3ZlciB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgYm94LXNoYWRvdzogMCA1cHggMTZweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7IH1cbiAgICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrIHNlY3Rpb24uYXJ0aWNsZS1ncmlkIC5wb3N0LWl0ZW06aG92ZXIgaW1nIHtcbiAgICAgICAgb3BhY2l0eTogLjc1OyB9XG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrICNzZWFyY2hmb3JtIHtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbiAgbWFyZ2luOiAyNXB4IGF1dG8gMDsgfVxuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayAjc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utd2h5c2sgI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIGlucHV0IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgICBwYWRkaW5nOiA4cHggMTVweDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCA2cHggcmdiYSgwLCAwLCAwLCAwLjE1KTsgfVxuICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXdoeXNrICNzZWFyY2hmb3JtIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCB3aGl0ZSA1MCUpO1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4OyB9XG4gICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayAjc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbiAuZmEge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzBiODc5MztcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIHBhZGRpbmc6IDFweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayAjc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dFt2YWx1ZT1cIlNlYXJjaFwiXSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ubWFzdGhlYWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gIC5tYXN0aGVhZCAuY2xpZW50LWxvZ28tY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiA4MHB4OyB9XG4gICAgLm1hc3RoZWFkIC5jbGllbnQtbG9nby1jb250YWluZXIgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLm1hc3RoZWFkIC5sb2dvLWJ1ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTQwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7IH1cbiAgICAubWFzdGhlYWQgLmxvZ28tYnVnLmxlZnQge1xuICAgICAgbGVmdDogNDBweDsgfVxuICAgIC5tYXN0aGVhZCAubG9nby1idWcucmlnaHQge1xuICAgICAgcmlnaHQ6IDQwcHg7IH1cbiAgICAubWFzdGhlYWQgLmxvZ28tYnVnIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAubWFzdGhlYWQgcCB7XG4gICAgbWF4LXdpZHRoOiA1ODBweDtcbiAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAubWFzdGhlYWQgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5tYXN0aGVhZCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxZW07IH0gfVxuICAubWFzdGhlYWQgaDEge1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIGZvbnQtc2l6ZTogNGVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAuNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLm1hc3RoZWFkIGgxICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gIC5tYXN0aGVhZCAuYnV0dG9uLCAubWFzdGhlYWQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5tYXN0aGVhZCAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBtYXJnaW4tdG9wOiA0NXB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLm1hc3RoZWFkIC5idXR0b24sIC5tYXN0aGVhZCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLm1hc3RoZWFkIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cbiAgLm1hc3RoZWFkLnByaW1hcnksIC5tYXN0aGVhZC52YW50YSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gOTBweCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLm1hc3RoZWFkLnByaW1hcnkgLmdyaWQtY29udGFpbmVyLCAubWFzdGhlYWQudmFudGEgLmdyaWQtY29udGFpbmVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMiUpOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAgIC5tYXN0aGVhZC5wcmltYXJ5IC5ncmlkLWNvbnRhaW5lciwgLm1hc3RoZWFkLnZhbnRhIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAubWFzdGhlYWQucHJpbWFyeSwgLm1hc3RoZWFkLnZhbnRhIHtcbiAgICAgICAgcGFkZGluZzogMCAxMHB4IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDY4MHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAubWFzdGhlYWQucHJpbWFyeSBoMSwgLm1hc3RoZWFkLnZhbnRhIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAzZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgIC5tYXN0aGVhZC5wcmltYXJ5IGgxLCAubWFzdGhlYWQudmFudGEgaDEge1xuICAgICAgICBmb250LXNpemU6IDIuMjVlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAubWFzdGhlYWQgLnZhbnRhLWNhbnZhcyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLm1hc3RoZWFkLnNlY29uZGFyeSB7XG4gICAgcGFkZGluZzogMjAwcHggMCA1MHB4OyB9XG4gICAgLm1hc3RoZWFkLnNlY29uZGFyeS5oYXMtbG9nbyB7XG4gICAgICBwYWRkaW5nOiA5NnB4IDAgNTBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgIC5tYXN0aGVhZC5zZWNvbmRhcnkge1xuICAgICAgICBwYWRkaW5nOiAxMDBweCAxMHB4IDI1cHg7IH0gfVxuICAgIC5tYXN0aGVhZC5zZWNvbmRhcnkgaDEgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgIC5tYXN0aGVhZC5zZWNvbmRhcnkgaDEge1xuICAgICAgICBmb250LXNpemU6IDNlbTsgfSB9XG4gIC5tYXN0aGVhZC5saWdodC10aGVtZSB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLm1hc3RoZWFkLmRhcmstdGhlbWUge1xuICAgIGNvbG9yOiAjMjUyNTI1OyB9XG4gIC5tYXN0aGVhZC5uby10b3AtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLm1hc3RoZWFkLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4ubWFzdGhlYWQtZmlsbGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGJhY2tncm91bmQ6ICMyNTI1MjU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogLTE7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4ubWFzdGhlYWQtY292ZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7IH1cbiAgLm1hc3RoZWFkLWNvdmVyOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvYmctdGlsZS1oZXgtb3BhY2l0eS01LnBuZ1wiKSAwIDAgcmVwZWF0O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOyB9XG5cbi5tYXN0aGVhZC1mb3JtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBhZGRpbmc6IDE0MHB4IDAgNjBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgLm1hc3RoZWFkLWZvcm0ge1xuICAgICAgcGFkZGluZzogNjBweCAxMHB4OyB9IH1cbiAgLm1hc3RoZWFkLWZvcm0gcCB7XG4gICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLm1hc3RoZWFkLWZvcm0gcDpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubWFzdGhlYWQtZm9ybSBoMyB7XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxLjM3NWVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAuNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLm1hc3RoZWFkLWZvcm0gaDMgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLm1hc3RoZWFkLWZvcm0gaDEge1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIGZvbnQtc2l6ZTogMi41ZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC40cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEyMCU7XG4gICAgbWFyZ2luOiAyMHB4IDAgMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLm1hc3RoZWFkLWZvcm0gaDEgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLm1hc3RoZWFkLWZvcm0gLmJ1dHRvbiwgLm1hc3RoZWFkLWZvcm0gLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5tYXN0aGVhZC1mb3JtIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIG1hcmdpbi10b3A6IDQ1cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAubWFzdGhlYWQtZm9ybSAuYnV0dG9uLCAubWFzdGhlYWQtZm9ybSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLm1hc3RoZWFkLWZvcm0gLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH0gfVxuICAubWFzdGhlYWQtZm9ybS5wcmltYXJ5IHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA5MHB4KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAubWFzdGhlYWQtZm9ybS5wcmltYXJ5IC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTIlKTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgICAubWFzdGhlYWQtZm9ybS5wcmltYXJ5IC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAubWFzdGhlYWQtZm9ybS5wcmltYXJ5IHtcbiAgICAgICAgcGFkZGluZzogMCAxMHB4IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDY4MHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAubWFzdGhlYWQtZm9ybS5wcmltYXJ5IGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAzZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgIC5tYXN0aGVhZC1mb3JtLnByaW1hcnkgaDEge1xuICAgICAgICBmb250LXNpemU6IDIuMjVlbTsgfSB9XG4gIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7IH0gfVxuICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuaGJzcHQtZm9ybSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLmhic3B0LWZvcm0gZmllbGRzZXQge1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgLTVweCAxMHB4OyB9XG4gICAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuaGJzcHQtZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMiAuaHMtZm9ybS1maWVsZCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4OyB9XG4gICAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuaGJzcHQtZm9ybSBmaWVsZHNldC5mb3JtLWNvbHVtbnMtMSAuaHMtZm9ybS1maWVsZCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4OyB9XG4gICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLmhic3B0LWZvcm0gbGFiZWwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTFweDtcbiAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBjb2xvcjogcmdiYSgzNywgMzcsIDM3LCAwLjUpO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zOyB9XG4gICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLmhic3B0LWZvcm0gW3R5cGU9J3RleHQnXSxcbiAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuaGJzcHQtZm9ybSBbdHlwZT0ncGFzc3dvcmQnXSxcbiAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZSddLFxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5oYnNwdC1mb3JtIFt0eXBlPSdkYXRldGltZSddLFxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5oYnNwdC1mb3JtIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLFxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5oYnNwdC1mb3JtIFt0eXBlPSdtb250aCddLFxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5oYnNwdC1mb3JtIFt0eXBlPSd3ZWVrJ10sXG4gICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLmhic3B0LWZvcm0gW3R5cGU9J2VtYWlsJ10sXG4gICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLmhic3B0LWZvcm0gW3R5cGU9J251bWJlciddLFxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5oYnNwdC1mb3JtIFt0eXBlPSdzZWFyY2gnXSxcbiAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuaGJzcHQtZm9ybSBbdHlwZT0ndGVsJ10sXG4gICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLmhic3B0LWZvcm0gW3R5cGU9J3RpbWUnXSxcbiAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuaGJzcHQtZm9ybSBbdHlwZT0ndXJsJ10sXG4gICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLmhic3B0LWZvcm0gW3R5cGU9J2NvbG9yJ10sXG4gICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLmhic3B0LWZvcm0gdGV4dGFyZWEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgcGFkZGluZzogMTVweCAxMHB4IDVweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzBiODc5MztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5oYnNwdC1mb3JtIFt0eXBlPSd0ZXh0J106OnBsYWNlaG9sZGVyLFxuICAgICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLmhic3B0LWZvcm0gW3R5cGU9J3Bhc3N3b3JkJ106OnBsYWNlaG9sZGVyLFxuICAgICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLmhic3B0LWZvcm0gW3R5cGU9J2RhdGUnXTo6cGxhY2Vob2xkZXIsXG4gICAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZXRpbWUnXTo6cGxhY2Vob2xkZXIsXG4gICAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuaGJzcHQtZm9ybSBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTo6cGxhY2Vob2xkZXIsXG4gICAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuaGJzcHQtZm9ybSBbdHlwZT0nbW9udGgnXTo6cGxhY2Vob2xkZXIsXG4gICAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuaGJzcHQtZm9ybSBbdHlwZT0nd2VlayddOjpwbGFjZWhvbGRlcixcbiAgICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5oYnNwdC1mb3JtIFt0eXBlPSdlbWFpbCddOjpwbGFjZWhvbGRlcixcbiAgICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5oYnNwdC1mb3JtIFt0eXBlPSdudW1iZXInXTo6cGxhY2Vob2xkZXIsXG4gICAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuaGJzcHQtZm9ybSBbdHlwZT0nc2VhcmNoJ106OnBsYWNlaG9sZGVyLFxuICAgICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLmhic3B0LWZvcm0gW3R5cGU9J3RlbCddOjpwbGFjZWhvbGRlcixcbiAgICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5oYnNwdC1mb3JtIFt0eXBlPSd0aW1lJ106OnBsYWNlaG9sZGVyLFxuICAgICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLmhic3B0LWZvcm0gW3R5cGU9J3VybCddOjpwbGFjZWhvbGRlcixcbiAgICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5oYnNwdC1mb3JtIFt0eXBlPSdjb2xvciddOjpwbGFjZWhvbGRlcixcbiAgICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5oYnNwdC1mb3JtIHRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgY29sb3I6ICNhOWE5YTk7IH1cbiAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuaGJzcHQtZm9ybSBzZWxlY3Qge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICAgICAgcGFkZGluZzogMTVweCAxMHB4IDVweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzBiODc5MztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5oYnNwdC1mb3JtIHNlbGVjdDo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgIGNvbG9yOiAjYTlhOWE5OyB9XG4gICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLmhic3B0LWZvcm0gc2VsZWN0IHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjgxMzgsIDEzOCwgMTM4JTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDVweDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICAgICAgICBjb2xvcjogcmdiYSgzNywgMzcsIDM3LCAwLjQpOyB9XG4gICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLmhic3B0LWZvcm0gdGV4dGFyZWEge1xuICAgICAgICBoZWlnaHQ6IDEwMHB4OyB9XG4gICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSAuX2Zvcm0tY29udGVudCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSAuX2Zvcm0tY29udGVudCA+ICoge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9mb3JtIC5fZm9ybS10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxZW07IH1cbiAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9mb3JtIC5fZm9ybS1icmFuZGluZyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSAuX2Zvcm0tbGFiZWwge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuX2Zvcm0gW3R5cGU9J3RleHQnXSxcbiAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9mb3JtIFt0eXBlPSdwYXNzd29yZCddLFxuICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuX2Zvcm0gW3R5cGU9J2RhdGUnXSxcbiAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9mb3JtIFt0eXBlPSdkYXRldGltZSddLFxuICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuX2Zvcm0gW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG4gICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSBbdHlwZT0nbW9udGgnXSxcbiAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9mb3JtIFt0eXBlPSd3ZWVrJ10sXG4gICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSBbdHlwZT0nZW1haWwnXSxcbiAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9mb3JtIFt0eXBlPSdudW1iZXInXSxcbiAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9mb3JtIFt0eXBlPSdzZWFyY2gnXSxcbiAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9mb3JtIFt0eXBlPSd0ZWwnXSxcbiAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9mb3JtIFt0eXBlPSd0aW1lJ10sXG4gICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSBbdHlwZT0ndXJsJ10sXG4gICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSBbdHlwZT0nY29sb3InXSxcbiAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9mb3JtIHRleHRhcmVhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgIHBhZGRpbmc6IDEycHggMTZweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwYjg3OTM7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBhcHBlYXJhbmNlOiBub25lOyB9XG4gICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9mb3JtIFt0eXBlPSd0ZXh0J106OnBsYWNlaG9sZGVyLFxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSBbdHlwZT0ncGFzc3dvcmQnXTo6cGxhY2Vob2xkZXIsXG4gICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9mb3JtIFt0eXBlPSdkYXRlJ106OnBsYWNlaG9sZGVyLFxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSBbdHlwZT0nZGF0ZXRpbWUnXTo6cGxhY2Vob2xkZXIsXG4gICAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9mb3JtIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOjpwbGFjZWhvbGRlcixcbiAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuX2Zvcm0gW3R5cGU9J21vbnRoJ106OnBsYWNlaG9sZGVyLFxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSBbdHlwZT0nd2VlayddOjpwbGFjZWhvbGRlcixcbiAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuX2Zvcm0gW3R5cGU9J2VtYWlsJ106OnBsYWNlaG9sZGVyLFxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSBbdHlwZT0nbnVtYmVyJ106OnBsYWNlaG9sZGVyLFxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSBbdHlwZT0nc2VhcmNoJ106OnBsYWNlaG9sZGVyLFxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSBbdHlwZT0ndGVsJ106OnBsYWNlaG9sZGVyLFxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSBbdHlwZT0ndGltZSddOjpwbGFjZWhvbGRlcixcbiAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuX2Zvcm0gW3R5cGU9J3VybCddOjpwbGFjZWhvbGRlcixcbiAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuX2Zvcm0gW3R5cGU9J2NvbG9yJ106OnBsYWNlaG9sZGVyLFxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogI2E5YTlhOTsgfVxuICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuX2Zvcm0gdGV4dGFyZWEge1xuICAgICAgaGVpZ2h0OiAxMDBweDsgfVxuICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuX2Zvcm0gLl9idXR0b24td3JhcHBlciB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9XG4gICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSAuX3N1Ym1pdCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC44cHg7XG4gICAgICBwYWRkaW5nOiAxNXB4IDM1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMiksIDAgMnB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuX2Zvcm0gLl9mdWxsX3dpZHRoIHtcbiAgICAgIGZsZXg6IDAgMSA0OC41JTtcbiAgICAgIHdpZHRoOiA0OC41JTtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuX2Zvcm0gLl9mdWxsX3dpZHRoLl9maWVsZDEge1xuICAgICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSAuX2Z1bGxfd2lkdGgge1xuICAgICAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9mb3JtIC5fYnV0dG9uLXdyYXBwZXIge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogMTVweDsgfVxuICAgICAgLm1hc3RoZWFkLWZvcm0gLmZvcm0tY29udGFpbmVyIC5fZm9ybSAuX2J1dHRvbi13cmFwcGVyIGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gICAgICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC44cHg7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMzVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gICAgICAgIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuX2Zvcm0gLl9idXR0b24td3JhcHBlciBidXR0b246aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTcxN2I7IH1cbiAgICAubWFzdGhlYWQtZm9ybSAuZm9ybS1jb250YWluZXIgLl9lcnJvci5fYWJvdmUsIC5tYXN0aGVhZC1mb3JtIC5mb3JtLWNvbnRhaW5lciAuX2Vycm9yLl9iZWxvdyB7XG4gICAgICBmb250LXNpemU6IC43ZW07XG4gICAgICBjb2xvcjogcmVkO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljOyB9XG4gIC5tYXN0aGVhZC1mb3JtLmxpZ2h0LXRoZW1lIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubWFzdGhlYWQtZm9ybS5kYXJrLXRoZW1lIHtcbiAgICBjb2xvcjogIzI1MjUyNTsgfVxuICAubWFzdGhlYWQtZm9ybS5uby10b3AtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLm1hc3RoZWFkLWZvcm0ubm8tYm90dG9tLXBhZGRpbmcge1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5sb2dvLXN0cmlwIHtcbiAgcGFkZGluZzogNjBweCAwO1xuICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMDAwMDAwKzAsMDAwMDAwKzEwMCYwLjUrMCwwKzEwMCAqL1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgIC5sb2dvLXN0cmlwIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMTBweDsgfSB9XG4gIC5sb2dvLXN0cmlwIGgyIHtcbiAgICBmb250LXNpemU6IDIuMjVlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubG9nby1zdHJpcC5uby1iYWNrZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gIC5sb2dvLXN0cmlwIHVsIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubG9nby1zdHJpcCBsaSB7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMTVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdHJhbnNpdGlvbjogYWxsIDYwMG1zO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgICAubG9nby1zdHJpcCBsaTpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAubG9nby1zdHJpcCBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDQwcHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgLmxvZ28tc3RyaXAgLmxvZ28tYnVnIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxNDBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAubG9nby1zdHJpcCAubG9nby1idWcge1xuICAgICAgICB3aWR0aDogMTAwcHg7IH0gfVxuICAgIC5sb2dvLXN0cmlwIC5sb2dvLWJ1Zy5sZWZ0IHtcbiAgICAgIGxlZnQ6IDQwcHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgICAgLmxvZ28tc3RyaXAgLmxvZ28tYnVnLmxlZnQge1xuICAgICAgICAgIGxlZnQ6IDIwcHg7IH0gfVxuICAgIC5sb2dvLXN0cmlwIC5sb2dvLWJ1Zy5yaWdodCB7XG4gICAgICByaWdodDogNDBweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgICAubG9nby1zdHJpcCAubG9nby1idWcucmlnaHQge1xuICAgICAgICAgIHJpZ2h0OiAyMHB4OyB9IH1cbiAgICAubG9nby1zdHJpcCAubG9nby1idWcgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgbWF4LWhlaWdodDogbm9uZTsgfVxuICAubG9nby1zdHJpcC5vZmZzZXQtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE4MHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgLmxvZ28tc3RyaXAub2Zmc2V0LXJpZ2h0IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTIwcHg7IH0gfVxuICAubG9nby1zdHJpcC5vZmZzZXQtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxODBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgIC5sb2dvLXN0cmlwLm9mZnNldC1sZWZ0IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMjBweDsgfSB9XG4gIC5sb2dvLXN0cmlwLm5vLXRvcC1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAubG9nby1zdHJpcC5uby1ib3R0b20tcGFkZGluZyB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLnN0YXRzIHtcbiAgcGFkZGluZzogNjBweCAwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgIC5zdGF0cyB7XG4gICAgICBwYWRkaW5nOiA2MHB4IDEwcHg7IH0gfVxuICAuc3RhdHMgaDIge1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMi4yNWVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgIG1hcmdpbjogNDBweCAwIDMwcHg7XG4gICAgcGFkZGluZzogMDsgfVxuICAuc3RhdHMgcCB7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnN0YXRzIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5zdGF0cyAuZGV2aWNlLWltYWdlIHtcbiAgICAgIGhlaWdodDogNTB2aDtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvYmplY3QtcG9zaXRpb246IHRvcDsgfSB9XG4gIC5zdGF0cyAuc3RhdC1pdGVtLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgcGFkZGluZzogNDBweCAwIDA7IH1cbiAgICAuc3RhdHMgLnN0YXQtaXRlbS1jb250YWluZXIgLnN0YXQtaXRlbSB7XG4gICAgICBmbGV4OiAwIDEgNTAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAwIDY1cHggNTBweCAwO1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAuc3RhdHMgLnN0YXQtaXRlbS1jb250YWluZXIgLnN0YXQtaXRlbSB7XG4gICAgICAgICAgZmxleDogMCAxIDUwJTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgcGFkZGluZzogMCAzMHB4IDUwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgICAgIC5zdGF0cyAuc3RhdC1pdGVtLWNvbnRhaW5lciAuc3RhdC1pdGVtIC5zdGF0LW51bWJlciB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDBweDtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4yNWVtO1xuICAgICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9zdGF0cy1vdmFsLnN2Z1wiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLnN0YXRzIC5zdGF0LWl0ZW0tY29udGFpbmVyIC5zdGF0LWl0ZW0gLnN0YXQtbnVtYmVyIHN0cm9uZyB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gICAgICAgIC5zdGF0cyAuc3RhdC1pdGVtLWNvbnRhaW5lciAuc3RhdC1pdGVtIC5zdGF0LW51bWJlciBzcGFuIHtcbiAgICAgICAgICBmb250LXNpemU6IDAuNmVtO1xuICAgICAgICAgIGNvbG9yOiAjZjFhZjQzO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDUwJSk7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAgIC5zdGF0cyAuc3RhdC1pdGVtLWNvbnRhaW5lciAuc3RhdC1pdGVtIC5zdGF0LW51bWJlciB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9IH1cbiAgICAgIC5zdGF0cyAuc3RhdC1pdGVtLWNvbnRhaW5lciAuc3RhdC1pdGVtIHAge1xuICAgICAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAuc3RhdHMucnRsIC5ncmlkLXgge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAuc3RhdHMubm8tdG9wLXBhZGRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC5zdGF0cy5uby1ib3R0b20tcGFkZGluZyB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLnN0YXRzLmRhcmstdGhlbWUge1xuICAgIGNvbG9yOiAjMjUyNTI1OyB9XG4gIC5zdGF0cy5saWdodC10aGVtZSB7XG4gICAgY29sb3I6ICNmYWZhZmE7IH1cblxuLnNpbmdsZS10ZXN0aW1vbmlhbCB7XG4gIHBhZGRpbmc6IDcwcHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoLTQ1ZGVnLCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAvKiBGRjMuNi0xNSAqL1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgtNDVkZWcsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gIC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzBiODc5MycsIGVuZENvbG9yc3RyPScjMzYwMDMzJyxHcmFkaWVudFR5cGU9MSApO1xuICAvKiBJRTYtOSBmYWxsYmFjayBvbiBob3Jpem9udGFsIGdyYWRpZW50ICovIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgIC5zaW5nbGUtdGVzdGltb25pYWwge1xuICAgICAgcGFkZGluZzogNDBweCAxMHB4OyB9IH1cbiAgLnNpbmdsZS10ZXN0aW1vbmlhbCAuZ3JpZC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5zaW5nbGUtdGVzdGltb25pYWwgcCB7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAnbWlzbGFiLXN0ZCcsICdDb3VyaWVyJywgc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS41OyB9XG4gICAgLnNpbmdsZS10ZXN0aW1vbmlhbCBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5zaW5nbGUtdGVzdGltb25pYWwgaDMge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbWlzbGFiLXN0ZCcsICdDb3VyaWVyJywgc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIC5zaW5nbGUtdGVzdGltb25pYWwgaDMgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgLnNpbmdsZS10ZXN0aW1vbmlhbCAucXVvdGUtbWFyayB7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgIC5zaW5nbGUtdGVzdGltb25pYWwgLnF1b3RlLW1hcmsge1xuICAgICAgICBwYWRkaW5nOiAwIDAgNDBweDsgfSB9XG4gICAgLnNpbmdsZS10ZXN0aW1vbmlhbCAucXVvdGUtbWFyayBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgICAgLnNpbmdsZS10ZXN0aW1vbmlhbCAucXVvdGUtbWFyayBpbWcge1xuICAgICAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgLnNpbmdsZS10ZXN0aW1vbmlhbCAuYXR0cmlidXRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiA0MHB4OyB9XG4gICAgLnNpbmdsZS10ZXN0aW1vbmlhbCAuYXR0cmlidXRpb24gLmF0dC1pbWFnZSB7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBmbGV4OiAwIDAgNjBweDsgfVxuICAgICAgLnNpbmdsZS10ZXN0aW1vbmlhbCAuYXR0cmlidXRpb24gLmF0dC1pbWFnZSBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5zaW5nbGUtdGVzdGltb25pYWwgLmF0dHJpYnV0aW9uIC5hdHQtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjVweDsgfVxuICAgICAgLnNpbmdsZS10ZXN0aW1vbmlhbCAuYXR0cmlidXRpb24gLmF0dC1jb250ZW50IHN0cm9uZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnbWlzbGFiLXN0ZCcsICdDb3VyaWVyJywgc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgIC5zaW5nbGUtdGVzdGltb25pYWwgLmF0dHJpYnV0aW9uIC5hdHQtY29udGVudCBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnbWlzbGFiLXN0ZCcsICdDb3VyaWVyJywgc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLnNpbmdsZS10ZXN0aW1vbmlhbDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9oZXgtbm9kZS1ncmlkLWRhcmsucG5nXCIpIDAgMCByZXBlYXQ7IH1cbiAgLnNpbmdsZS10ZXN0aW1vbmlhbC5kYXJrLXRoZW1lIHtcbiAgICBjb2xvcjogIzI1MjUyNTsgfVxuICAuc2luZ2xlLXRlc3RpbW9uaWFsLmxpZ2h0LXRoZW1lIHtcbiAgICBjb2xvcjogI2ZhZmFmYTsgfVxuICAuc2luZ2xlLXRlc3RpbW9uaWFsLm5vLXRvcC1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAuc2luZ2xlLXRlc3RpbW9uaWFsLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAuc2luZ2xlLXRlc3RpbW9uaWFsLmNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnNpbmdsZS10ZXN0aW1vbmlhbC5jZW50ZXIgaDMsIC5zaW5nbGUtdGVzdGltb25pYWwuY2VudGVyIHAge1xuICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgLnNpbmdsZS10ZXN0aW1vbmlhbC5jZW50ZXIgLmF0dHJpYnV0aW9uIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1heC13aWR0aDogMzIwcHg7IH1cblxuLmljb24tZ3JpZCB7XG4gIHBhZGRpbmc6IDEwMHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb3VudGVyLXJlc2V0OiBudW1iZXJlZC1jb3VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAuaWNvbi1ncmlkIHtcbiAgICAgIHBhZGRpbmc6IDEwMHB4IDEwcHg7IH0gfVxuICAuaWNvbi1ncmlkIHAge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5pY29uLWdyaWQgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuaWNvbi1ncmlkIGgyIHtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDIuMjVlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5pY29uLWdyaWQgaDIgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgLmljb24tZ3JpZCBoMyB7XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAuaWNvbi1ncmlkIC5kZXNjcmlwdGlvbiB7XG4gICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLmljb24tZ3JpZCAuaWNvbi1ncmlkLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogNjVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tbGVmdDogLTUwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNTBweDtcbiAgICBjb2xvcjogIzBiODc5MztcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5pY29uLWdyaWQgLmljb24tZ3JpZC1jb250YWluZXIgaDQge1xuICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbWFyZ2luOiAwIDAgMTVweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLmljb24tZ3JpZCAuaWNvbi1ncmlkLWNvbnRhaW5lciBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgICAgIC5pY29uLWdyaWQgLmljb24tZ3JpZC1jb250YWluZXIgYTphZnRlciB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICBjb250ZW50OiBcIlxcZjA2MVwiO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICBjb2xvcjogIzBiODc5MztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIC5pY29uLWdyaWQgLmljb24tZ3JpZC1jb250YWluZXIgc3Ryb25nIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzNXB4O1xuICAgICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgICAuaWNvbi1ncmlkIC5pY29uLWdyaWQtY29udGFpbmVyIHAge1xuICAgICAgbWFyZ2luLWxlZnQ6IDM1cHg7XG4gICAgICBjb2xvcjogIzI1MjUyNTsgfVxuICAgIC5pY29uLWdyaWQgLmljb24tZ3JpZC1jb250YWluZXIgc3BhbltjbGFzc149XCJmYVwiXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoM3B4KTtcbiAgICAgIGZvbnQtc2l6ZTogMS4xNWVtOyB9XG4gICAgLmljb24tZ3JpZCAuaWNvbi1ncmlkLWNvbnRhaW5lci5udW1iZXItbGlzdCBoNCBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuaWNvbi1ncmlkIC5pY29uLWdyaWQtY29udGFpbmVyLm51bWJlci1saXN0IC5pY29uLWdyaWQtaXRlbSB7XG4gICAgICBjb3VudGVyLWluY3JlbWVudDogbnVtYmVyZWQtY291bnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmljb24tZ3JpZCAuaWNvbi1ncmlkLWNvbnRhaW5lci5udW1iZXItbGlzdCAuaWNvbi1ncmlkLWl0ZW06YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogY291bnRlcihudW1iZXJlZC1jb3VudGVyKTtcbiAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgbGVmdDogNTBweDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAgICAgLmljb24tZ3JpZCAuaWNvbi1ncmlkLWNvbnRhaW5lci5udW1iZXItbGlzdCAuaWNvbi1ncmlkLWl0ZW06YmVmb3JlIHtcbiAgICAgICAgICAgIHRvcDogMTVweDsgfSB9XG4gIC5pY29uLWdyaWQgYS5idXR0b24sIC5pY29uLWdyaWQgLndwLWJsb2NrLWJ1dHRvbiBhLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuaWNvbi1ncmlkIGEud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBtYXJnaW4tdG9wOiA2NXB4OyB9XG4gIC5pY29uLWdyaWQgLmxvZ28tc3RyaXAge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgICAuaWNvbi1ncmlkIC5sb2dvLXN0cmlwIGgzIHtcbiAgICAgIG1hcmdpbi10b3A6IDEyNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuICAgIC5pY29uLWdyaWQgLmxvZ28tc3RyaXAgaW1nIHtcbiAgICAgIG1heC1oZWlnaHQ6IDM1cHg7IH1cbiAgLmljb24tZ3JpZC50d28tcGVyLXJvdyAuaWNvbi1ncmlkLWl0ZW0ge1xuICAgIGZsZXg6IDEgMCA1MCU7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nOiAzNXB4IDUwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAuaWNvbi1ncmlkLnR3by1wZXItcm93IC5pY29uLWdyaWQtaXRlbSB7XG4gICAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMTVweCA1MHB4OyB9IH1cbiAgLmljb24tZ3JpZC50aHJlZS1wZXItcm93IC5pY29uLWdyaWQtaXRlbSB7XG4gICAgZmxleDogMSAwIDMzLjMzMzMlO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogMzVweCA1MHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgLmljb24tZ3JpZC50aHJlZS1wZXItcm93IC5pY29uLWdyaWQtaXRlbSB7XG4gICAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMTVweCA1MHB4OyB9IH1cbiAgLmljb24tZ3JpZC5uby10b3AtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLmljb24tZ3JpZC5uby1ib3R0b20tcGFkZGluZyB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLmNhc2VzdHVkeSB7XG4gIHBhZGRpbmc6IDYwcHggMCAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgLmNhc2VzdHVkeSB7XG4gICAgICBwYWRkaW5nOiA2MHB4IDEwcHggMTBweDsgfSB9XG4gIC5jYXNlc3R1ZHkgLmdyaWQteCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLmNhc2VzdHVkeSBoMiB7XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAyLjI1ZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgbWFyZ2luOiA0MHB4IDAgMzBweDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5jYXNlc3R1ZHkgcCB7XG4gICAgbWFyZ2luOiAwIDAgNTBweDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5jYXNlc3R1ZHkgYS5idXR0b24sIC5jYXNlc3R1ZHkgLndwLWJsb2NrLWJ1dHRvbiBhLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAuY2FzZXN0dWR5IGEud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3NXB4O1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jYXNlc3R1ZHkgLmRldmljZS1pbWFnZSB7XG4gICAgICBoZWlnaHQ6IDUwdmg7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb2JqZWN0LXBvc2l0aW9uOiB0b3A7IH0gfVxuICAuY2FzZXN0dWR5IC50ZXN0aW1vbmlhbCB7XG4gICAgcGFkZGluZzogNTBweCAwOyB9XG4gICAgLmNhc2VzdHVkeSAudGVzdGltb25pYWwgcCB7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbWlzbGFiLXN0ZCcsICdDb3VyaWVyJywgc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuICAgICAgLmNhc2VzdHVkeSAudGVzdGltb25pYWwgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmNhc2VzdHVkeSAudGVzdGltb25pYWwgaDMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgICAgZm9udC1mYW1pbHk6ICdtaXNsYWItc3RkJywgJ0NvdXJpZXInLCBzZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAgIC5jYXNlc3R1ZHkgLnRlc3RpbW9uaWFsIGgzICsgKiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgICAuY2FzZXN0dWR5IC50ZXN0aW1vbmlhbCAuYXR0cmlidXRpb24ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4OyB9XG4gICAgICAuY2FzZXN0dWR5IC50ZXN0aW1vbmlhbCAuYXR0cmlidXRpb24gLmF0dC1pbWFnZSB7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgZmxleDogMCAwIDYwcHg7IH1cbiAgICAgICAgLmNhc2VzdHVkeSAudGVzdGltb25pYWwgLmF0dHJpYnV0aW9uIC5hdHQtaW1hZ2UgaW1nIHtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgIC5jYXNlc3R1ZHkgLnRlc3RpbW9uaWFsIC5hdHRyaWJ1dGlvbiAuYXR0LWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMjVweDsgfVxuICAgICAgICAuY2FzZXN0dWR5IC50ZXN0aW1vbmlhbCAuYXR0cmlidXRpb24gLmF0dC1jb250ZW50IHN0cm9uZyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnbWlzbGFiLXN0ZCcsICdDb3VyaWVyJywgc2VyaWY7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgICAgICAuY2FzZXN0dWR5IC50ZXN0aW1vbmlhbCAuYXR0cmlidXRpb24gLmF0dC1jb250ZW50IHNwYW4ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnbWlzbGFiLXN0ZCcsICdDb3VyaWVyJywgc2VyaWY7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIC5jYXNlc3R1ZHkgLnRlc3RpbW9uaWFsLmxpZ2h0IHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5jYXNlc3R1ZHkgLmJnLXRlc3RpbW9uaWFsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAgIC8qIE9sZCBicm93c2VycyAqL1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KC00NWRlZywgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAvKiBGRjMuNi0xNSAqL1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KC00NWRlZywgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTtcbiAgICAvKiBJRTYtOSBmYWxsYmFjayBvbiBob3Jpem9udGFsIGdyYWRpZW50ICovIH1cbiAgICAuY2FzZXN0dWR5IC5iZy10ZXN0aW1vbmlhbDphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2hleC1ub2RlLWdyaWQtZGFyay5wbmdcIikgMCAwIHJlcGVhdDsgfVxuICAuY2FzZXN0dWR5LmRhcmstdGhlbWUge1xuICAgIGNvbG9yOiAjMjUyNTI1OyB9XG4gIC5jYXNlc3R1ZHkubGlnaHQtdGhlbWUge1xuICAgIGNvbG9yOiAjZmFmYWZhOyB9XG5cbi5vcGVuLXRleHQge1xuICBwYWRkaW5nOiA4MHB4IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgLm9wZW4tdGV4dCB7XG4gICAgICBwYWRkaW5nOiA4MHB4IDEwcHg7IH0gfVxuICAub3Blbi10ZXh0IHAge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5vcGVuLXRleHQgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5vcGVuLXRleHQgcCArICoge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDsgfVxuICAub3Blbi10ZXh0IGgyIHtcbiAgICBmb250LXNpemU6IDIuMjVlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5vcGVuLXRleHQgaDIgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgLm9wZW4tdGV4dCBoMyB7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgIC5vcGVuLXRleHQgaDMge1xuICAgICAgICBmb250LXNpemU6IDEuMjVlbTsgfSB9XG4gICAgLm9wZW4tdGV4dCBoMyArICoge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDsgfVxuICAub3Blbi10ZXh0IHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAub3Blbi10ZXh0IHVsIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgICAgcGFkZGluZzogMCAwIDAgMzBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLm9wZW4tdGV4dCB1bCBsaTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIuKAolwiO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICBjb2xvcjogIzBiODc5MztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwOyB9XG4gIC5vcGVuLXRleHQgb2wge1xuICAgIGNvdW50ZXItcmVzZXQ6IG9yZGVyZWQtbGlzdDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAub3Blbi10ZXh0IG9sIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgICAgcGFkZGluZzogMCAwIDAgMzBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLm9wZW4tdGV4dCBvbCBsaTpiZWZvcmUge1xuICAgICAgICBjb3VudGVyLWluY3JlbWVudDogb3JkZXJlZC1saXN0O1xuICAgICAgICBjb250ZW50OiBjb3VudGVyKG9yZGVyZWQtbGlzdCkgXCIuXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICAub3Blbi10ZXh0IGhyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgzNywgMzcsIDM3LCAwLjEyKTtcbiAgICBtYXJnaW46IDMwcHggMDsgfVxuICAub3Blbi10ZXh0IGEuYnV0dG9uLCAub3Blbi10ZXh0IC53cC1ibG9jay1idXR0b24gYS53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLm9wZW4tdGV4dCBhLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgbWFyZ2luLXRvcDogNjBweDsgfVxuICAub3Blbi10ZXh0LnR3by1jb2x1bW5zIC50ZXh0LWFyZWEge1xuICAgIGNvbHVtbnM6IDI7XG4gICAgY29sdW1uLXdpZHRoOiAzMDBweDtcbiAgICBjb2x1bW4tZ2FwOiA2MHB4OyB9XG4gICAgLm9wZW4tdGV4dC50d28tY29sdW1ucyAudGV4dC1hcmVhIHAge1xuICAgICAgYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICAub3Blbi10ZXh0LnRocmVlLWNvbHVtbnMgLnRleHQtYXJlYSB7XG4gICAgY29sdW1uczogMztcbiAgICBjb2x1bW4td2lkdGg6IDMwMHB4O1xuICAgIGNvbHVtbi1nYXA6IDYwcHg7IH1cbiAgICAub3Blbi10ZXh0LnRocmVlLWNvbHVtbnMgLnRleHQtYXJlYSBwIHtcbiAgICAgIGJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgLm9wZW4tdGV4dC5kYXJrLXRoZW1lIHtcbiAgICBjb2xvcjogIzI1MjUyNTsgfVxuICAub3Blbi10ZXh0LmxpZ2h0LXRoZW1lIHtcbiAgICBjb2xvcjogI2ZhZmFmYTsgfVxuICAub3Blbi10ZXh0Lm5vLXRvcC1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAub3Blbi10ZXh0Lm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uaGVhZHNob3RzIHtcbiAgcGFkZGluZzogNzBweCAwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgIC5oZWFkc2hvdHMge1xuICAgICAgcGFkZGluZzogNzBweCAxMHB4OyB9IH1cbiAgLmhlYWRzaG90cyB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuaGVhZHNob3RzIHVsIGxpIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgLmhlYWRzaG90cyB1bCBsaTpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuaGVhZHNob3RzIHVsIGxpIGltZyB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5oZWFkc2hvdHMubm8tdG9wLXBhZGRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC5oZWFkc2hvdHMubm8tYm90dG9tLXBhZGRpbmcge1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5jdGEtYmxvY2sge1xuICBwYWRkaW5nOiAzMHB4IDAgODBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgIC5jdGEtYmxvY2sge1xuICAgICAgcGFkZGluZzogMzBweCAxMHB4IDgwcHg7IH0gfVxuICAuY3RhLWJsb2NrIC5jZWxsIHtcbiAgICBwYWRkaW5nLXRvcDogNzBweDtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5jdGEtYmxvY2sudG9wLWJvcmRlciAuY2VsbCB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAuY3RhLWJsb2NrIGgyIHtcbiAgICBmb250LXNpemU6IDIuMjVlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIC5jdGEtYmxvY2sgaDIgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7IH1cbiAgLmN0YS1ibG9jayAuc2Vjb25kYXJ5LWN0YSB7XG4gICAgbWFyZ2luOiAxMTVweCBhdXRvIDA7XG4gICAgbWF4LXdpZHRoOiA1MTBweDtcbiAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIC5jdGEtYmxvY2sgLnNlY29uZGFyeS1jdGEgYSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNvbG9yOiAjMjUyNTI1OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgIC5jdGEtYmxvY2sgLnNlY29uZGFyeS1jdGEgYSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIG1hcmdpbjogMCAxNXB4IDQwcHg7IH0gfVxuICAgICAgLmN0YS1ibG9jayAuc2Vjb25kYXJ5LWN0YSBhOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAgICAgICAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgICAgLyogRkYzLjYtMTUgKi9cbiAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgICAgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTtcbiAgICAgICAgLyogSUU2LTkgKi8gfVxuICAgICAgLmN0YS1ibG9jayAuc2Vjb25kYXJ5LWN0YSBhOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgLmN0YS1ibG9jayAuc2Vjb25kYXJ5LWN0YSBhOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxNXB4IDQwcHg7IH0gfVxuICAuY3RhLWJsb2NrLm5vLXRvcC1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAuY3RhLWJsb2NrLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uY2FsbG91dC1iYW5uZXIge1xuICBwYWRkaW5nOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTNjZGE5O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHotaW5kZXg6IDk5OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAuY2FsbG91dC1iYW5uZXIge1xuICAgICAgcGFkZGluZzogMjBweCAxMHB4OyB9IH1cbiAgLmNhbGxvdXQtYmFubmVyIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmNhbGxvdXQtYmFubmVyIC5ncmlkLWNvbnRhaW5lciAuY2VsbCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXgtd2lkdGg6IDc4MHB4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAgIC5jYWxsb3V0LWJhbm5lciAuZ3JpZC1jb250YWluZXIgLmNlbGwge1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmNhbGxvdXQtYmFubmVyIGgzIHtcbiAgICBmb250LXNpemU6IDEuMWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjMmI0MzRjO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAgMCAxNDBweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5jYWxsb3V0LWJhbm5lciAubG9nby1idWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBtYXgtd2lkdGg6IDEyMHB4OyB9XG5cbi5yZWxhdGVkLWNvbnRlbnQge1xuICBwYWRkaW5nOiA5MHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAucmVsYXRlZC1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDkwcHggMTBweDsgfSB9XG4gIC5yZWxhdGVkLWNvbnRlbnQgcCB7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnJlbGF0ZWQtY29udGVudCBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5yZWxhdGVkLWNvbnRlbnQgaDIge1xuICAgIGZvbnQtc2l6ZTogMi4yNWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgLnJlbGF0ZWQtY29udGVudCBoMiArICoge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDsgfVxuICAucmVsYXRlZC1jb250ZW50IC5ncmlkLXggKyAuZ3JpZC14IHtcbiAgICBtYXJnaW4tdG9wOiA3MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAucmVsYXRlZC1jb250ZW50IC5wb3N0cyAuY2VsbDpsYXN0LW9mLXR5cGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAucmVsYXRlZC1jb250ZW50IC5wb3N0cyAuY2VsbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG4gICAgICAucmVsYXRlZC1jb250ZW50IC5wb3N0cyAuY2VsbDpsYXN0LW9mLXR5cGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5yZWxhdGVkLWNvbnRlbnQgLnJlbGF0ZWQtaXRlbSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMTJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gICAgLnJlbGF0ZWQtY29udGVudCAucmVsYXRlZC1pdGVtIGg1IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAwO1xuICAgICAgY29sb3I6ICNhOWE5YTk7XG4gICAgICBmb250LXNpemU6IDAuODc1ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5yZWxhdGVkLWNvbnRlbnQgLnJlbGF0ZWQtaXRlbSBoMyB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDMwcHggMjRweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtOyB9XG4gICAgLnJlbGF0ZWQtY29udGVudCAucmVsYXRlZC1pdGVtIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAzMHB4IDMwcHg7XG4gICAgICBjb2xvcjogIzI1MjUyNTtcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgLnJlbGF0ZWQtY29udGVudCAucmVsYXRlZC1pdGVtIGltZyB7XG4gICAgICBoZWlnaHQ6IDE3MHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAucmVsYXRlZC1jb250ZW50IC5yZWxhdGVkLWl0ZW06YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAgICAgLyogT2xkIGJyb3dzZXJzICovXG4gICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgLyogRkYzLjYtMTUgKi9cbiAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgICAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzBiODc5MycsIGVuZENvbG9yc3RyPScjMzYwMDMzJyxHcmFkaWVudFR5cGU9MSApO1xuICAgICAgLyogSUU2LTkgKi8gfVxuICAgIC5yZWxhdGVkLWNvbnRlbnQgLnJlbGF0ZWQtaXRlbTpob3ZlciB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgYm94LXNoYWRvdzogMCA1cHggMTZweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7IH1cbiAgICAgIC5yZWxhdGVkLWNvbnRlbnQgLnJlbGF0ZWQtaXRlbTpob3ZlciBpbWcge1xuICAgICAgICBvcGFjaXR5OiAxOyB9XG4gIC5yZWxhdGVkLWNvbnRlbnQgYS5idXR0b24sIC5yZWxhdGVkLWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbiBhLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAucmVsYXRlZC1jb250ZW50IGEud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4OyB9XG4gIC5yZWxhdGVkLWNvbnRlbnQuZGFyay10aGVtZSB7XG4gICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgLnJlbGF0ZWQtY29udGVudC5saWdodC10aGVtZSB7XG4gICAgY29sb3I6ICNmYWZhZmE7IH1cbiAgLnJlbGF0ZWQtY29udGVudC5uby10b3AtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLnJlbGF0ZWQtY29udGVudC5uby1ib3R0b20tcGFkZGluZyB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLm1lZGlhLWdyaWQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDY1dmg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLm1lZGlhLWdyaWQge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgLm1lZGlhLWdyaWQgLmdyaWQtY29udGFpbmVyLFxuICAubWVkaWEtZ3JpZCAuZ3JpZC14LFxuICAubWVkaWEtZ3JpZCAuY2VsbCxcbiAgLm1lZGlhLWdyaWQgLm1lZGlhLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5tZWRpYS1ncmlkIGltZyB7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5tZWRpYS1ncmlkIC5wcmltYXJ5IC5tZWRpYS1jb250YWluZXIge1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAubWVkaWEtZ3JpZCAuc2Vjb25kYXJ5IHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDQwcHgpO1xuICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IC0yMHB4OyB9XG4gICAgLm1lZGlhLWdyaWQgLnNlY29uZGFyeSAubWVkaWEtY29udGFpbmVyIHtcbiAgICAgIGhlaWdodDogNTAlO1xuICAgICAgcGFkZGluZzogMjBweCAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLm1lZGlhLWdyaWQgLnNlY29uZGFyeSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMTBweCk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgICAgLm1lZGlhLWdyaWQgLnNlY29uZGFyeSAubWVkaWEtY29udGFpbmVyIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgZmxleDogMCAxIDUwJTtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMTBweCAwOyB9IH1cbiAgLm1lZGlhLWdyaWQubm8tdG9wLXBhZGRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC5tZWRpYS1ncmlkLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uc3BsaXQtYmxvY2sge1xuICBwYWRkaW5nOiA4MHB4IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgLnNwbGl0LWJsb2NrIHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMTBweDsgfSB9XG4gIC5zcGxpdC1ibG9jayAuZ3JpZC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5zcGxpdC1ibG9jayAuZ3JpZC1jb250YWluZXI6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMzcsIDM3LCAzNywgMC4xNSk7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyAyMHB4KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDUwJTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAuc3BsaXQtYmxvY2sgLmdyaWQtY29udGFpbmVyOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLnNwbGl0LWJsb2NrIC5jZWxsIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMCAzMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnNwbGl0LWJsb2NrIC5jZWxsOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIC5zcGxpdC1ibG9jayAuY2VsbDpmaXJzdC1vZi10eXBlOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMzcsIDM3LCAzNywgMC4xNSk7XG4gICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogY2FsYygxMDAlIC0gNDBweCk7XG4gICAgICAgICAgbGVmdDogMDsgfSB9XG4gIC5zcGxpdC1ibG9jayBoMyB7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7IH1cbiAgLnNwbGl0LWJsb2NrIHAge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5zcGxpdC1ibG9jayBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5zcGxpdC1ibG9jay5kYXJrLXRoZW1lIHtcbiAgICBjb2xvcjogIzI1MjUyNTsgfVxuICAuc3BsaXQtYmxvY2subGlnaHQtdGhlbWUge1xuICAgIGNvbG9yOiAjZmFmYWZhOyB9XG4gICAgLnNwbGl0LWJsb2NrLmxpZ2h0LXRoZW1lIC5ncmlkLWNvbnRhaW5lcjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgLnNwbGl0LWJsb2NrLmxpZ2h0LXRoZW1lIC5ncmlkLWNvbnRhaW5lciAuY2VsbDpmaXJzdC1vZi10eXBlOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTsgfSB9XG4gIC5zcGxpdC1ibG9jay5uby10b3AtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLnNwbGl0LWJsb2NrLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4ucHJvZ3Jlc3MtYmxvY2sgLnByb2dyZXNzLWhlYWRlciB7XG4gIHBhZGRpbmc6IDMwcHggMDtcbiAgaGVpZ2h0OiAxMTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTY5LCAxNjksIDE2OSwgMCk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMjAwbXMsIGJvcmRlciAyMDBtczsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgLnByb2dyZXNzLWJsb2NrIC5wcm9ncmVzcy1oZWFkZXIge1xuICAgICAgcGFkZGluZzogMzBweCAxMHB4OyB9IH1cbiAgLnByb2dyZXNzLWJsb2NrIC5wcm9ncmVzcy1oZWFkZXIgLmNlbGwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAucHJvZ3Jlc3MtYmxvY2sgLnByb2dyZXNzLWhlYWRlciBoMiB7XG4gICAgZm9udC1zaXplOiAyLjI1ZW07XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5wcm9ncmVzcy1ibG9jayAucHJvZ3Jlc3MtaGVhZGVyIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcztcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAgIC5wcm9ncmVzcy1ibG9jayAucHJvZ3Jlc3MtaGVhZGVyIHVsLmhlYWRlci1sb2NrIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgzNywgMzcsIDM3LCAwLjUpOyB9XG4gICAgLnByb2dyZXNzLWJsb2NrIC5wcm9ncmVzcy1oZWFkZXIgdWwgbGkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MHB4LCAtNTAlKTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIGNvbG9yOiByZ2JhKDM3LCAzNywgMzcsIDAuNSk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXM7IH1cbiAgICAgIC5wcm9ncmVzcy1ibG9jayAucHJvZ3Jlc3MtaGVhZGVyIHVsIGxpLmFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgLTUwJSk7IH1cbiAgLnByb2dyZXNzLWJsb2NrIC5wcm9ncmVzcy1oZWFkZXIuaXMtc3R1Y2ssIC5wcm9ncmVzcy1ibG9jayAucHJvZ3Jlc3MtaGVhZGVyLmlzLWF0LWJvdHRvbSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2E5YTlhOTtcbiAgICB6LWluZGV4OiA1OyB9XG5cbi5wcm9ncmVzcy1ibG9jayAucHJvZ3Jlc3MtY29udGVudCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgIC5wcm9ncmVzcy1ibG9jayAucHJvZ3Jlc3MtY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7IH0gfVxuICAucHJvZ3Jlc3MtYmxvY2sgLnByb2dyZXNzLWNvbnRlbnQgLnByb2dyZXNzLWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDEyMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgLnByb2dyZXNzLWJsb2NrIC5wcm9ncmVzcy1jb250ZW50IC5wcm9ncmVzcy1pdGVtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfSB9XG4gICAgLnByb2dyZXNzLWJsb2NrIC5wcm9ncmVzcy1jb250ZW50IC5wcm9ncmVzcy1pdGVtLmx0ciAuZ3JpZC1jb250YWluZXIgLmdyaWQteCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgICAucHJvZ3Jlc3MtYmxvY2sgLnByb2dyZXNzLWNvbnRlbnQgLnByb2dyZXNzLWl0ZW0gcCB7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4OyB9XG4gICAgICAucHJvZ3Jlc3MtYmxvY2sgLnByb2dyZXNzLWNvbnRlbnQgLnByb2dyZXNzLWl0ZW0gcDpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAgICAgLnByb2dyZXNzLWJsb2NrIC5wcm9ncmVzcy1jb250ZW50IC5wcm9ncmVzcy1pdGVtIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5wcm9ncmVzcy1ibG9jayAucHJvZ3Jlc3MtY29udGVudCAucHJvZ3Jlc3MtaXRlbSAuZ3JpZC1jb250YWluZXIuZnVsbCBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gICAgLnByb2dyZXNzLWJsb2NrIC5wcm9ncmVzcy1jb250ZW50IC5wcm9ncmVzcy1pdGVtIC5ncmlkLWNvbnRhaW5lciArIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tdG9wOiA3MHB4OyB9XG4gICAgLnByb2dyZXNzLWJsb2NrIC5wcm9ncmVzcy1jb250ZW50IC5wcm9ncmVzcy1pdGVtIC5jZWxsLnR3by1jb2x1bW5zIHtcbiAgICAgIGNvbHVtbnM6IDI7XG4gICAgICBjb2x1bW4td2lkdGg6IDMwMHB4O1xuICAgICAgY29sdW1uLWdhcDogNjBweDsgfVxuICAgICAgLnByb2dyZXNzLWJsb2NrIC5wcm9ncmVzcy1jb250ZW50IC5wcm9ncmVzcy1pdGVtIC5jZWxsLnR3by1jb2x1bW5zIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBicmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgLnByb2dyZXNzLWJsb2NrIC5wcm9ncmVzcy1jb250ZW50IC5wcm9ncmVzcy1pdGVtIC5jZWxsICsgLmNlbGwge1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4OyB9IH1cblxuLmxpbmstY2FyZHMge1xuICBwYWRkaW5nOiA5MHB4IDAgNTBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgLmxpbmstY2FyZHMge1xuICAgICAgcGFkZGluZzogOTBweCAxMHB4IDUwcHggMTBweDsgfSB9XG4gIC5saW5rLWNhcmRzIHAge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5saW5rLWNhcmRzIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmxpbmstY2FyZHMgaDIge1xuICAgIGZvbnQtc2l6ZTogMi4yNWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgLmxpbmstY2FyZHMgaDIgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgLmxpbmstY2FyZHMgLmdyaWQteCArIC5ncmlkLXgge1xuICAgIG1hcmdpbi10b3A6IDcwcHg7IH1cbiAgICAubGluay1jYXJkcyAuZ3JpZC14ICsgLmdyaWQteCAuY2VsbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIC5saW5rLWNhcmRzIC5saW5rLWl0ZW0ge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAyNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDsgfVxuICAgIC5saW5rLWNhcmRzIC5saW5rLWl0ZW0gaDMge1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgICAgcGFkZGluZzogMjBweCAwIDAgMDtcbiAgICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMzcsIDM3LCAzNywgMC4xNSk7IH1cbiAgICAubGluay1jYXJkcyAubGluay1pdGVtIGltZyB7XG4gICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAubGluay1jYXJkcyAubGluay1pdGVtOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogM3B4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gICAgICAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgICAvKiBGRjMuNi0xNSAqL1xuICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgIC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7XG4gICAgICAvKiBJRTYtOSAqLyB9XG4gICAgLmxpbmstY2FyZHMgLmxpbmstaXRlbTpob3ZlciB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgYm94LXNoYWRvdzogMCA1cHggMTZweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7IH1cbiAgICAgIC5saW5rLWNhcmRzIC5saW5rLWl0ZW06aG92ZXIgaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuXG4uY2FzZXN0dWR5LWFyY2hpdmUge1xuICBwYWRkaW5nOiA2MHB4IDAgNjBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAuY2FzZXN0dWR5LWFyY2hpdmUge1xuICAgICAgcGFkZGluZzogOTBweCAxMHB4OyB9IH1cbiAgLmNhc2VzdHVkeS1hcmNoaXZlIHAge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5jYXNlc3R1ZHktYXJjaGl2ZSBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jYXNlc3R1ZHktYXJjaGl2ZSBoMiB7XG4gICAgZm9udC1zaXplOiAyLjI1ZW07XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuICAgIC5jYXNlc3R1ZHktYXJjaGl2ZSBoMiArICoge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDsgfVxuICAuY2FzZXN0dWR5LWFyY2hpdmUgLmdyaWQteCArIC5ncmlkLXgge1xuICAgIG1hcmdpbi10b3A6IDcwcHg7IH1cbiAgLmNhc2VzdHVkeS1hcmNoaXZlIC5jZWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgLmNhc2VzdHVkeS1hcmNoaXZlIC5jZWxsOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAuY2FzZXN0dWR5LWFyY2hpdmUgLndvcmstbmF2IHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMCAwIDcwcHggMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLmNhc2VzdHVkeS1hcmNoaXZlIC53b3JrLW5hdiB1bCBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwIDMwcHggMCAwO1xuICAgICAgcGFkZGluZzogMCAwIDEycHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgIC5jYXNlc3R1ZHktYXJjaGl2ZSAud29yay1uYXYgdWwgbGk6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNTBweDsgfVxuICAgICAgLmNhc2VzdHVkeS1hcmNoaXZlIC53b3JrLW5hdiB1bCBsaSBhIHtcbiAgICAgICAgY29sb3I6ICMyNTI1MjU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgICAuY2FzZXN0dWR5LWFyY2hpdmUgLndvcmstbmF2IHVsIGxpIGE6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgICAgICAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgICAgICAgICAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgICAgIC8qIEZGMy42LTE1ICovXG4gICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgICAgICAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgICAgICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzBiODc5MycsIGVuZENvbG9yc3RyPScjMzYwMDMzJyxHcmFkaWVudFR5cGU9MSApO1xuICAgICAgICAgIC8qIElFNi05ICovIH1cbiAgLmNhc2VzdHVkeS1hcmNoaXZlIC5mZWF0dXJlZC1jYXNlc3R1ZHkge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuICAgIC5jYXNlc3R1ZHktYXJjaGl2ZSAuZmVhdHVyZWQtY2FzZXN0dWR5IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgICAgLmNhc2VzdHVkeS1hcmNoaXZlIC5mZWF0dXJlZC1jYXNlc3R1ZHkgLmNlbGwge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuICAgIC5jYXNlc3R1ZHktYXJjaGl2ZSAuZmVhdHVyZWQtY2FzZXN0dWR5IHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAwIDMwcHg7XG4gICAgICBjb2xvcjogIzI1MjUyNTtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAuY2FzZXN0dWR5LWFyY2hpdmUgLmZlYXR1cmVkLWNhc2VzdHVkeSBoNSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDAgMjBweDtcbiAgICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAuY2FzZXN0dWR5LWFyY2hpdmUgLmZlYXR1cmVkLWNhc2VzdHVkeSBoNSBpbWcge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNhOWE5YTk7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OyB9XG4gICAgLmNhc2VzdHVkeS1hcmNoaXZlIC5mZWF0dXJlZC1jYXNlc3R1ZHkgaDMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAwIDMwcHg7XG4gICAgICBjb2xvcjogIzI1MjUyNTtcbiAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgLmNhc2VzdHVkeS1hcmNoaXZlIC5mZWF0dXJlZC1jYXNlc3R1ZHkgYS5idXR0b24sIC5jYXNlc3R1ZHktYXJjaGl2ZSAuZmVhdHVyZWQtY2FzZXN0dWR5IC53cC1ibG9jay1idXR0b24gYS53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmNhc2VzdHVkeS1hcmNoaXZlIC5mZWF0dXJlZC1jYXNlc3R1ZHkgYS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1zaXplOiAxZW07IH1cbiAgICAuY2FzZXN0dWR5LWFyY2hpdmUgLmZlYXR1cmVkLWNhc2VzdHVkeSAuZmVhdHVyZWQtaW1hZ2Uge1xuICAgICAgbWluLWhlaWdodDogMzYwcHg7XG4gICAgICBtYXgtaGVpZ2h0OiA0NTBweDtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLmNhc2VzdHVkeS1hcmNoaXZlIC5jYXNlc3R1ZHktaXRlbSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMTJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gICAgLmNhc2VzdHVkeS1hcmNoaXZlIC5jYXNlc3R1ZHktaXRlbSBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgMzBweCAzMHB4O1xuICAgICAgY29sb3I6ICMyNTI1MjU7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAuY2FzZXN0dWR5LWFyY2hpdmUgLmNhc2VzdHVkeS1pdGVtIGltZyB7XG4gICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAuY2FzZXN0dWR5LWFyY2hpdmUgLmNhc2VzdHVkeS1pdGVtIGg1IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAyMHB4O1xuICAgICAgY29sb3I6ICMyNTI1MjU7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLmNhc2VzdHVkeS1hcmNoaXZlIC5jYXNlc3R1ZHktaXRlbSBoNSBpbWcge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNhOWE5YTk7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OyB9XG4gICAgLmNhc2VzdHVkeS1hcmNoaXZlIC5jYXNlc3R1ZHktaXRlbSBoMyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDMwcHggMzBweDtcbiAgICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAuY2FzZXN0dWR5LWFyY2hpdmUgLmNhc2VzdHVkeS1pdGVtOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogNnB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICAgICAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgICAgIC8qIE9sZCBicm93c2VycyAqL1xuICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgIC8qIEZGMy42LTE1ICovXG4gICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTtcbiAgICAgIC8qIElFNi05ICovIH1cbiAgICAuY2FzZXN0dWR5LWFyY2hpdmUgLmNhc2VzdHVkeS1pdGVtOmhvdmVyIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICBib3gtc2hhZG93OiAwIDVweCAxNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTsgfVxuICAgICAgLmNhc2VzdHVkeS1hcmNoaXZlIC5jYXNlc3R1ZHktaXRlbTpob3ZlciBpbWcge1xuICAgICAgICBvcGFjaXR5OiAxOyB9XG4gIC5jYXNlc3R1ZHktYXJjaGl2ZSBhLmJ1dHRvbiwgLmNhc2VzdHVkeS1hcmNoaXZlIC53cC1ibG9jay1idXR0b24gYS53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLmNhc2VzdHVkeS1hcmNoaXZlIGEud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4OyB9XG4gIC5jYXNlc3R1ZHktYXJjaGl2ZS5kYXJrLXRoZW1lIHtcbiAgICBjb2xvcjogIzI1MjUyNTsgfVxuICAuY2FzZXN0dWR5LWFyY2hpdmUubGlnaHQtdGhlbWUge1xuICAgIGNvbG9yOiAjZmFmYWZhOyB9XG4gIC5jYXNlc3R1ZHktYXJjaGl2ZS5uby10b3AtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLmNhc2VzdHVkeS1hcmNoaXZlLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uc2VydmljZS1hcmNoaXZlIHtcbiAgcGFkZGluZzogNjBweCAwIDYwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgLnNlcnZpY2UtYXJjaGl2ZSB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDEwcHg7IH0gfVxuICAuc2VydmljZS1hcmNoaXZlIHAge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5zZXJ2aWNlLWFyY2hpdmUgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuc2VydmljZS1hcmNoaXZlIGgyIHtcbiAgICBmb250LXNpemU6IDIuMjVlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG4gICAgLnNlcnZpY2UtYXJjaGl2ZSBoMiArICoge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDsgfVxuICAuc2VydmljZS1hcmNoaXZlIGgzIHtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgIC5zZXJ2aWNlLWFyY2hpdmUgaDMge1xuICAgICAgICBmb250LXNpemU6IDEuMjVlbTsgfSB9XG4gICAgLnNlcnZpY2UtYXJjaGl2ZSBoMyBhIHtcbiAgICAgIGNvbG9yOiAjMjUyNTI1OyB9XG4gICAgICAuc2VydmljZS1hcmNoaXZlIGgzIGE6YWZ0ZXIge1xuICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICAgICAgY29udGVudDogXCJcXGYwNjFcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgY29sb3I6ICMwYjg3OTM7XG4gICAgICAgIGZvbnQtc2l6ZTogLjc1ZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtczsgfVxuICAgIC5zZXJ2aWNlLWFyY2hpdmUgaDM6aG92ZXIgYTphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMjVweDsgfVxuICAuc2VydmljZS1hcmNoaXZlIGg0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgIG9wYWNpdHk6IC41O1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgIC5zZXJ2aWNlLWFyY2hpdmUgaDQge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAuc2VydmljZS1hcmNoaXZlIGg0OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggZGFzaGVkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IGNhbGMoMTAwJSArIDIwcHgpO1xuICAgICAgd2lkdGg6IDE2MHB4O1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgLnNlcnZpY2UtYXJjaGl2ZSBoNDpiZWZvcmUge1xuICAgICAgICAgIHdpZHRoOiAxMDBweDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAgIC5zZXJ2aWNlLWFyY2hpdmUgaDQ6YmVmb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLnNlcnZpY2UtYXJjaGl2ZSAuc2VydmljZXMtaW50cm8gLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzVweDsgfVxuICAuc2VydmljZS1hcmNoaXZlIC5zZXJ2aWNlcy1pbnRybyAuYnJhbmNoLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7IH1cbiAgLnNlcnZpY2UtYXJjaGl2ZSAuc2VydmljZXMtZ3JvdXAtc2VjdGlvbiAuY29udGVudC1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAzNXB4OyB9XG4gIC5zZXJ2aWNlLWFyY2hpdmUgLnNlcnZpY2VzLWdyb3VwLWl0ZW0gLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzBweDsgfVxuICAuc2VydmljZS1hcmNoaXZlIC5zZXJ2aWNlcy1ncm91cC1pdGVtOmxhc3Qtb2YtdHlwZSAuY29udGVudC1jb250YWluZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDsgfVxuICAuc2VydmljZS1hcmNoaXZlIC5zZXJ2aWNlcy1ncm91cC1lbmQgLmJyYW5jaC1jb250YWluZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA2NXB4OyB9XG4gIC5zZXJ2aWNlLWFyY2hpdmUgLnNlcnZpY2VzLWdyb3VwLWVuZCAuY29udGVudC1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIC5zZXJ2aWNlLWFyY2hpdmUgLmNlbGwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgei1pbmRleDogNTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNlcnZpY2UtYXJjaGl2ZSAuY2VsbCArIC5jZWxsLmltZy1jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuc2VydmljZS1hcmNoaXZlIC5jZWxsICsgLmNlbGwuaW1nLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAuc2VydmljZS1hcmNoaXZlIC5pbWctY29udGFpbmVyIGltZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnNlcnZpY2UtYXJjaGl2ZSAuaW1nLWNvbnRhaW5lciBpbWcge1xuICAgICAgICBwYWRkaW5nLXRvcDogNDBweDsgfSB9XG4gIC5zZXJ2aWNlLWFyY2hpdmUgLmltZy1tdWx0aS1jb250YWluZXIge1xuICAgIGhlaWdodDogY2FsYygxMDAlICsgNDBweCk7XG4gICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTIwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuc2VydmljZS1hcmNoaXZlIC5pbWctbXVsdGktY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgLnNlcnZpY2UtYXJjaGl2ZSAuaW1nLW11bHRpLWNvbnRhaW5lciAuaW1nLW11bHRpLWNvbnRhaW5lci1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgIGhlaWdodDogNTAlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgIC5zZXJ2aWNlLWFyY2hpdmUgLmltZy1tdWx0aS1jb250YWluZXIgLmltZy1tdWx0aS1jb250YWluZXItaXRlbSB7XG4gICAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gIC5zZXJ2aWNlLWFyY2hpdmUgLnNlcnZpY2VzLW5hdiB7XG4gICAgbWFyZ2luOiAyMHB4IDAgNDBweCAwO1xuICAgIHBhZGRpbmc6IDUwcHggMCAwIDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgIC5zZXJ2aWNlLWFyY2hpdmUgLnNlcnZpY2VzLW5hdiB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLnNlcnZpY2UtYXJjaGl2ZSAuc2VydmljZXMtbmF2IHVsIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwIDMwcHggMCAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMTJweCAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgICAgLnNlcnZpY2UtYXJjaGl2ZSAuc2VydmljZXMtbmF2IHVsIGxpIGEge1xuICAgICAgICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAgICAgLnNlcnZpY2UtYXJjaGl2ZSAuc2VydmljZXMtbmF2IHVsIGxpIGE6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgICAgICAgICAgIC8qIE9sZCBicm93c2VycyAqL1xuICAgICAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgICAgICAgIC8qIEZGMy42LTE1ICovXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgICAgICAgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgICAgICAgIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTtcbiAgICAgICAgICAgIC8qIElFNi05ICovIH1cbiAgLnNlcnZpY2UtYXJjaGl2ZSAuYnJhbmNoLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDQ1cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5zZXJ2aWNlLWFyY2hpdmUgLmJyYW5jaC1jb250YWluZXIgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5zZXJ2aWNlLWFyY2hpdmUgLmJyYW5jaC1jb250YWluZXIgaW1nLmNhcCB7XG4gICAgICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gICAgICAuc2VydmljZS1hcmNoaXZlIC5icmFuY2gtY29udGFpbmVyIGltZy5maWxsIHtcbiAgICAgICAgZmxleDogMSAwIGF1dG87IH1cbiAgLnNlcnZpY2UtYXJjaGl2ZSAuZmlsbC1iYWNrZ3JvdW5kIHtcbiAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICAgIGJhY2tncm91bmQ6ICMwYjg3OTM7XG4gICAgLyogT2xkIGJyb3dzZXJzICovXG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAvKiBGRjMuNi0xNSAqL1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTtcbiAgICAvKiBJRTYtOSAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDE1cHg7XG4gICAgd2lkdGg6IDQ1cHg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAuc2VydmljZS1hcmNoaXZlIC5maWxsLWJhY2tncm91bmQge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLnNlcnZpY2UtYXJjaGl2ZSAuZGVmYXVsdC1iYWNrZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDE1MSwgMTUxLCAxNTEsIDAuMik7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTVweDtcbiAgICB3aWR0aDogNDVweDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDgwcHgpO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAuc2VydmljZS1hcmNoaXZlIC5kZWZhdWx0LWJhY2tncm91bmQge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLnNlcnZpY2UtYXJjaGl2ZSBhLmJ1dHRvbiwgLnNlcnZpY2UtYXJjaGl2ZSAud3AtYmxvY2stYnV0dG9uIGEud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5zZXJ2aWNlLWFyY2hpdmUgYS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7IH1cbiAgLnNlcnZpY2UtYXJjaGl2ZS5kYXJrLXRoZW1lIHtcbiAgICBjb2xvcjogIzI1MjUyNTsgfVxuICAuc2VydmljZS1hcmNoaXZlLmxpZ2h0LXRoZW1lIHtcbiAgICBjb2xvcjogI2ZhZmFmYTsgfVxuICAuc2VydmljZS1hcmNoaXZlLm5vLXRvcC1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAuc2VydmljZS1hcmNoaXZlLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uc2ltcGxlLXN0YXRzIHtcbiAgcGFkZGluZzogMzBweCAwIDMwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAuc2ltcGxlLXN0YXRzIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMTBweCAzMHB4OyB9IH1cbiAgLnNpbXBsZS1zdGF0cyAuaGVhZGVyIC5jZWxsIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzBiODc5MztcbiAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5zaW1wbGUtc3RhdHMgLmdyaWQteCArIC5ncmlkLXgge1xuICAgIG1hcmdpbi10b3A6IDkwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAuc2ltcGxlLXN0YXRzIC5ncmlkLXggKyAuZ3JpZC14IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDsgfSB9XG4gIC5zaW1wbGUtc3RhdHMgLnN0YXQtaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAgNTBweCA1MHB4IDUwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAuc2ltcGxlLXN0YXRzIC5zdGF0LWl0ZW0ge1xuICAgICAgICBmbGV4OiAwIDEgNTAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBwYWRkaW5nOiAwIDMwcHggNTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgICAuc2ltcGxlLXN0YXRzIC5zdGF0LWl0ZW0gLnN0YXQtbnVtYmVyIHtcbiAgICAgIGZsZXg6IDAgMCAxMDBweDtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICBmb250LXNpemU6IDIuMjVlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvc3RhdHMtb3ZhbC5zdmdcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5zaW1wbGUtc3RhdHMgLnN0YXQtaXRlbSAuc3RhdC1udW1iZXIgc3Ryb25nIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuICAgICAgLnNpbXBsZS1zdGF0cyAuc3RhdC1pdGVtIC5zdGF0LW51bWJlciBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjZlbTtcbiAgICAgICAgY29sb3I6ICNmMWFmNDM7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDUwJSk7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgLnNpbXBsZS1zdGF0cyAuc3RhdC1pdGVtIC5zdGF0LW51bWJlciB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH0gfVxuICAgIC5zaW1wbGUtc3RhdHMgLnN0YXQtaXRlbSBwIHtcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4uc2ltcGxlLWdyaWQge1xuICBwYWRkaW5nOiAxMDBweCAwIDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAuc2ltcGxlLWdyaWQge1xuICAgICAgcGFkZGluZzogMTAwcHggMTBweDsgfSB9XG4gIC5zaW1wbGUtZ3JpZCBwIHtcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuc2ltcGxlLWdyaWQgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuc2ltcGxlLWdyaWQgaDIge1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMi4yNWVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnNpbXBsZS1ncmlkIGgyICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9XG4gIC5zaW1wbGUtZ3JpZCAuZ3JpZC1pdGVtLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogNjVweDtcbiAgICBjb2xvcjogIzI1MjUyNTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5zaW1wbGUtZ3JpZCAuZ3JpZC1pdGVtLWNvbnRhaW5lciBoNCB7XG4gICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnNpbXBsZS1ncmlkIC5ncmlkLWl0ZW0tY29udGFpbmVyIGEge1xuICAgICAgbWFyZ2luLWxlZnQ6IDM1cHg7XG4gICAgICBjb2xvcjogIzI1MjUyNTsgfVxuICAgIC5zaW1wbGUtZ3JpZCAuZ3JpZC1pdGVtLWNvbnRhaW5lciBwIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzNXB4O1xuICAgICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgICAuc2ltcGxlLWdyaWQgLmdyaWQtaXRlbS1jb250YWluZXIgLmdyaWQtaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNTBweDsgfVxuICAuc2ltcGxlLWdyaWQubm8tdG9wLXBhZGRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC5zaW1wbGUtZ3JpZC5uby1ib3R0b20tcGFkZGluZyB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLnJlc291cmNlcy1hcmNoaXZlIHtcbiAgcGFkZGluZzogNjBweCAwIDYwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgLnJlc291cmNlcy1hcmNoaXZlIHtcbiAgICAgIHBhZGRpbmc6IDkwcHggMTBweDsgfSB9XG4gIC5yZXNvdXJjZXMtYXJjaGl2ZSBwIHtcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAucmVzb3VyY2VzLWFyY2hpdmUgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucmVzb3VyY2VzLWFyY2hpdmUgaDIge1xuICAgIGZvbnQtc2l6ZTogMi4yNWVtO1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH1cbiAgICAucmVzb3VyY2VzLWFyY2hpdmUgaDIgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgLnJlc291cmNlcy1hcmNoaXZlIC5ncmlkLXggKyAuZ3JpZC14IHtcbiAgICBtYXJnaW4tdG9wOiA3MHB4OyB9XG4gIC5yZXNvdXJjZXMtYXJjaGl2ZSAuZ3JpZC14ICsgaDIge1xuICAgIG1hcmdpbi10b3A6IDcwcHg7IH1cbiAgLnJlc291cmNlcy1hcmNoaXZlIC5jZWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgICAgLnJlc291cmNlcy1hcmNoaXZlIC5jZWxsOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAucmVzb3VyY2VzLWFyY2hpdmUgLndvcmstbmF2IHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMCAwIDcwcHggMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnJlc291cmNlcy1hcmNoaXZlIC53b3JrLW5hdiB1bCBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwIDMwcHggMCAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgLnJlc291cmNlcy1hcmNoaXZlIC53b3JrLW5hdiB1bCBsaTpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1MHB4OyB9XG4gICAgICAucmVzb3VyY2VzLWFyY2hpdmUgLndvcmstbmF2IHVsIGxpIGEge1xuICAgICAgICBjb2xvcjogIzI1MjUyNTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAgIC5yZXNvdXJjZXMtYXJjaGl2ZSAud29yay1uYXYgdWwgbGkgYTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAgICAgICAgIC8qIE9sZCBicm93c2VycyAqL1xuICAgICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgICAgICAgLyogRkYzLjYtMTUgKi9cbiAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgICAgIC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgICAgIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7XG4gICAgICAgICAgLyogSUU2LTkgKi8gfVxuICAucmVzb3VyY2VzLWFyY2hpdmUgLmZlYXR1cmVkLXJlc291cmNlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLnJlc291cmNlcy1hcmNoaXZlIC5mZWF0dXJlZC1yZXNvdXJjZSBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAzMHB4O1xuICAgICAgY29sb3I6ICMyNTI1MjU7XG4gICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgLnJlc291cmNlcy1hcmNoaXZlIC5mZWF0dXJlZC1yZXNvdXJjZSBoNSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDAgMjBweDtcbiAgICAgIGNvbG9yOiByZ2JhKDM3LCAzNywgMzcsIDAuNik7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAgIC5yZXNvdXJjZXMtYXJjaGl2ZSAuZmVhdHVyZWQtcmVzb3VyY2UgaDUgaW1nIHtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYTlhOWE5O1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsgfVxuICAgICAgLnJlc291cmNlcy1hcmNoaXZlIC5mZWF0dXJlZC1yZXNvdXJjZSBoNSBzcGFuIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgICAucmVzb3VyY2VzLWFyY2hpdmUgLmZlYXR1cmVkLXJlc291cmNlIGgzIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAxNXB4O1xuICAgICAgY29sb3I6ICMyNTI1MjU7XG4gICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIC5yZXNvdXJjZXMtYXJjaGl2ZSAuZmVhdHVyZWQtcmVzb3VyY2UgYS5idXR0b24sIC5yZXNvdXJjZXMtYXJjaGl2ZSAuZmVhdHVyZWQtcmVzb3VyY2UgLndwLWJsb2NrLWJ1dHRvbiBhLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiAucmVzb3VyY2VzLWFyY2hpdmUgLmZlYXR1cmVkLXJlc291cmNlIGEud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtc2l6ZTogMWVtOyB9XG4gIC5yZXNvdXJjZXMtYXJjaGl2ZSAucmVzb3VyY2UtaXRlbSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMTJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gICAgLnJlc291cmNlcy1hcmNoaXZlIC5yZXNvdXJjZS1pdGVtIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAzMHB4IDMwcHg7XG4gICAgICBjb2xvcjogIzI1MjUyNTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAucmVzb3VyY2VzLWFyY2hpdmUgLnJlc291cmNlLWl0ZW0gaW1nIHtcbiAgICAgIGhlaWdodDogMTkwcHg7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDsgfVxuICAgIC5yZXNvdXJjZXMtYXJjaGl2ZSAucmVzb3VyY2UtaXRlbSBoNSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAzMHB4IDMwcHggMjBweDtcbiAgICAgIGNvbG9yOiByZ2JhKDM3LCAzNywgMzcsIDAuNik7XG4gICAgICBmb250LXNpemU6IDAuODc1ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgICAucmVzb3VyY2VzLWFyY2hpdmUgLnJlc291cmNlLWl0ZW0gaDUgaW1nIHtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYTlhOWE5O1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsgfVxuICAgICAgLnJlc291cmNlcy1hcmNoaXZlIC5yZXNvdXJjZS1pdGVtIGg1IHNwYW4ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxuICAgIC5yZXNvdXJjZXMtYXJjaGl2ZSAucmVzb3VyY2UtaXRlbSBoMyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDMwcHggMTVweDtcbiAgICAgIGNvbG9yOiAjMjUyNTI1O1xuICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgLnJlc291cmNlcy1hcmNoaXZlIC5yZXNvdXJjZS1pdGVtOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogNnB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICAgICAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgICAgIC8qIE9sZCBicm93c2VycyAqL1xuICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgIC8qIEZGMy42LTE1ICovXG4gICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTtcbiAgICAgIC8qIElFNi05ICovIH1cbiAgICAucmVzb3VyY2VzLWFyY2hpdmUgLnJlc291cmNlLWl0ZW06aG92ZXIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDE2cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9XG4gICAgICAucmVzb3VyY2VzLWFyY2hpdmUgLnJlc291cmNlLWl0ZW06aG92ZXIgaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuICAucmVzb3VyY2VzLWFyY2hpdmUgYS5idXR0b24sIC5yZXNvdXJjZXMtYXJjaGl2ZSAud3AtYmxvY2stYnV0dG9uIGEud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5yZXNvdXJjZXMtYXJjaGl2ZSBhLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgbWFyZ2luLXRvcDogODBweDsgfVxuICAucmVzb3VyY2VzLWFyY2hpdmUuZGFyay10aGVtZSB7XG4gICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgLnJlc291cmNlcy1hcmNoaXZlLmxpZ2h0LXRoZW1lIHtcbiAgICBjb2xvcjogI2ZhZmFmYTsgfVxuICAucmVzb3VyY2VzLWFyY2hpdmUubm8tdG9wLXBhZGRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC5yZXNvdXJjZXMtYXJjaGl2ZS5uby1ib3R0b20tcGFkZGluZyB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLnNpZGUtYnktc2lkZS1ibG9jayB7XG4gIHBhZGRpbmc6IDgwcHggMDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAuc2lkZS1ieS1zaWRlLWJsb2NrIHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMDsgfSB9XG4gIC5zaWRlLWJ5LXNpZGUtYmxvY2sgLnJ0bCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gICAgLnNpZGUtYnktc2lkZS1ibG9jayAucnRsIC5jZWxsLmltYWdlLnNwYW4tdG8tZWRnZSBpbWcge1xuICAgICAgd2lkdGg6IDUwdnc7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAgIC5zaWRlLWJ5LXNpZGUtYmxvY2sgLnJ0bCAuY2VsbC5pbWFnZS5zcGFuLXRvLWVkZ2UgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cbiAgICAuc2lkZS1ieS1zaWRlLWJsb2NrIC5ydGwgLmNlbGwuaW1hZ2UuY29udGFpbi1pbWFnZSBpbWcge1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjsgfVxuICAuc2lkZS1ieS1zaWRlLWJsb2NrIC5sdHIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAuc2lkZS1ieS1zaWRlLWJsb2NrIC5sdHIgLmNlbGwuaW1hZ2Uuc3Bhbi10by1lZGdlIGltZyB7XG4gICAgICB3aWR0aDogNTB2dztcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgICBtYXJnaW4tbGVmdDogMTAwJTtcbiAgICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgICAgLnNpZGUtYnktc2lkZS1ibG9jayAubHRyIC5jZWxsLmltYWdlLnNwYW4tdG8tZWRnZSBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cbiAgICAuc2lkZS1ieS1zaWRlLWJsb2NrIC5sdHIgLmNlbGwuaW1hZ2UuY29udGFpbi1pbWFnZSBpbWcge1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjsgfVxuICAuc2lkZS1ieS1zaWRlLWJsb2NrIC5jZWxsLnRleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAuc2lkZS1ieS1zaWRlLWJsb2NrIGgyIHtcbiAgICBmb250LXNpemU6IDIuMjVlbTtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW46IDAgMCAyNXB4O1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnNpZGUtYnktc2lkZS1ibG9jayBwIHtcbiAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgbGluZS1oZWlnaHQ6IDE3NSU7IH1cbiAgICAuc2lkZS1ieS1zaWRlLWJsb2NrIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnNpZGUtYnktc2lkZS1ibG9jay5kYXJrLXRoZW1lIHtcbiAgICBjb2xvcjogIzI1MjUyNTsgfVxuICAuc2lkZS1ieS1zaWRlLWJsb2NrLmxpZ2h0LXRoZW1lIHtcbiAgICBjb2xvcjogI2ZhZmFmYTsgfVxuICAuc2lkZS1ieS1zaWRlLWJsb2NrLm5vLXRvcC1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAuc2lkZS1ieS1zaWRlLWJsb2NrLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uaGVhZHNob3QtZ3JpZCB7XG4gIHBhZGRpbmc6IDgwcHggMDsgfVxuICAuaGVhZHNob3QtZ3JpZCBoMiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMCAwIDI1cHg7XG4gICAgcGFkZGluZzogMDsgfVxuICAuaGVhZHNob3QtZ3JpZCAuaGVhZHNob3QtaXRlbSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDU1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNTVweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgICAgIC5oZWFkc2hvdC1ncmlkIC5oZWFkc2hvdC1pdGVtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfSB9XG4gICAgLmhlYWRzaG90LWdyaWQgLmhlYWRzaG90LWl0ZW0gYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHRyYW5zaXRpb246IGFsbCA0MDBtczsgfVxuICAgICAgLmhlYWRzaG90LWdyaWQgLmhlYWRzaG90LWl0ZW0gYTpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7IH1cbiAgICAgIC5oZWFkc2hvdC1ncmlkIC5oZWFkc2hvdC1pdGVtIGEgaDMge1xuICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbjogMjBweCAwIDA7XG4gICAgICAgIGNvbG9yOiAjMjUyNTI1OyB9XG4gICAgICAgIC5oZWFkc2hvdC1ncmlkIC5oZWFkc2hvdC1pdGVtIGEgaDMgc3BhbiB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCA1cHg7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAgICAgLmhlYWRzaG90LWdyaWQgLmhlYWRzaG90LWl0ZW0gYSBoMyBzcGFuOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMGI4NzkzO1xuICAgICAgICAgICAgLyogT2xkIGJyb3dzZXJzICovXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgICAgICAgLyogRkYzLjYtMTUgKi9cbiAgICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICMwYjg3OTMgMCUsICMzNjAwMzMgMTAwJSk7XG4gICAgICAgICAgICAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgICAgICAgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLCBHcmFkaWVudFR5cGU9MSk7XG4gICAgICAgICAgICAvKiBJRTYtOSAqLyB9XG4gICAgICAuaGVhZHNob3QtZ3JpZCAuaGVhZHNob3QtaXRlbSBhIHAge1xuICAgICAgICBmb250LXNpemU6IDAuODc1ZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gMDtcbiAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgICAgIC5oZWFkc2hvdC1ncmlkIC5oZWFkc2hvdC1pdGVtIGEgLmltZy1oZWFkc2hvdC1jb250YWluZXIgaW1nIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG5cbi5tZWRpYS1zdHJpcCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxuICAubWVkaWEtc3RyaXAgLmdyaWQteCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7IH1cbiAgLm1lZGlhLXN0cmlwIC5jZWxsIHtcbiAgICBwYWRkaW5nOiAwIDEwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAubWVkaWEtc3RyaXAgLmNlbGwge1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHggMjBweDsgfSB9XG4gIC5tZWRpYS1zdHJpcCBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMjE1cHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cblxuLmNhcmVlcnMtYXJjaGl2ZSB7XG4gIHBhZGRpbmc6IDgwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAgIC5jYXJlZXJzLWFyY2hpdmUge1xuICAgICAgcGFkZGluZzogODBweCAxMHB4OyB9IH1cbiAgLmNhcmVlcnMtYXJjaGl2ZSBwIHtcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuY2FyZWVycy1hcmNoaXZlIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmNhcmVlcnMtYXJjaGl2ZSBoMiB7XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAyLjI1ZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuY2FyZWVycy1hcmNoaXZlIGgyICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9XG4gIC5jYXJlZXJzLWFyY2hpdmUgaDMge1xuICAgIGZvbnQtZmFtaWx5OiAnbXVzZW8tc2FucycsICdBdmVuaXIgTmV4dCcsICdWZXJkYW5hJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLmNhcmVlcnMtYXJjaGl2ZSAuZGVzY3JpcHRpb24ge1xuICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5jYXJlZXJzLWFyY2hpdmUgLmFsbC1jYXJlZXJzIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH1cbiAgICAuY2FyZWVycy1hcmNoaXZlIC5hbGwtY2FyZWVycyAuY2VsbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gICAgICAgIC5jYXJlZXJzLWFyY2hpdmUgLmFsbC1jYXJlZXJzIC5jZWxsOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5jYXJlZXJzLWFyY2hpdmUgLmNhcmVlci1pdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBib3gtc2hhZG93OiAwIDdweCAxMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAuY2FyZWVycy1hcmNoaXZlIC5jYXJlZXItaXRlbSBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgMzBweCAzMHB4O1xuICAgICAgY29sb3I6ICMyNTI1MjU7XG4gICAgICBmb250LXNpemU6IDAuODc1ZW07XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgLmNhcmVlcnMtYXJjaGl2ZSAuY2FyZWVyLWl0ZW0gaW1nIHtcbiAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDsgfVxuICAgIC5jYXJlZXJzLWFyY2hpdmUgLmNhcmVlci1pdGVtIGgzIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAyMHB4O1xuICAgICAgY29sb3I6ICMyNTI1MjU7XG4gICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIC5jYXJlZXJzLWFyY2hpdmUgLmNhcmVlci1pdGVtOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogNnB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICAgICAgYmFja2dyb3VuZDogIzBiODc5MztcbiAgICAgIC8qIE9sZCBicm93c2VycyAqL1xuICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgIC8qIEZGMy42LTE1ICovXG4gICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMGI4NzkzIDAlLCAjMzYwMDMzIDEwMCUpO1xuICAgICAgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzBiODc5MyAwJSwgIzM2MDAzMyAxMDAlKTtcbiAgICAgIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTtcbiAgICAgIC8qIElFNi05ICovIH1cbiAgICAuY2FyZWVycy1hcmNoaXZlIC5jYXJlZXItaXRlbTpob3ZlciB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgYm94LXNoYWRvdzogMCA1cHggMTZweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7IH1cbiAgICAgIC5jYXJlZXJzLWFyY2hpdmUgLmNhcmVlci1pdGVtOmhvdmVyIGltZyB7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cblxuLnN1Yi1uYXZpZ2F0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogODg4O1xuICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG4gIC5zdWItbmF2aWdhdGlvbjpiZWZvcmUge1xuICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwczovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jZmZmZmZmKzAsZmZmZmZmKzEwMCYxKzAsMCsxMDAgKi9cbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCB3aGl0ZSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgICAvKiBGRjMuNi0xNSAqL1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHdoaXRlIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICAgIC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB3aGl0ZSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nI2ZmZmZmZicsIGVuZENvbG9yc3RyPScjMDBmZmZmZmYnLEdyYWRpZW50VHlwZT0xICk7XG4gICAgLyogSUU2LTkgKi9cbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMjVweDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLnN1Yi1uYXZpZ2F0aW9uOmFmdGVyIHtcbiAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cHM6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvI2ZmZmZmZiswLGZmZmZmZisxMDAmMCswLDErOTkgKi9cbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCB3aGl0ZSA5OSUsIHdoaXRlIDEwMCUpO1xuICAgIC8qIEZGMy42LTE1ICovXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgd2hpdGUgOTklLCB3aGl0ZSAxMDAlKTtcbiAgICAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgd2hpdGUgOTklLCB3aGl0ZSAxMDAlKTtcbiAgICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwZmZmZmZmJywgZW5kQ29sb3JzdHI9JyNmZmZmZmYnLEdyYWRpZW50VHlwZT0xICk7XG4gICAgLyogSUU2LTkgKi9cbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMjVweDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAyOyB9XG4gIC5zdWItbmF2aWdhdGlvbiAuc3VibmF2LXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgIC8qIGhhcyB0byBiZSBzY3JvbGwsIG5vdCBhdXRvICovXG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5zdWItbmF2aWdhdGlvbiAuc3VibmF2LWNvbnRhaW5lciB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxOyB9XG4gICAgLnN1Yi1uYXZpZ2F0aW9uIC5zdWJuYXYtY29udGFpbmVyIGxpIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiAxZW07IH1cbiAgICAgIC5zdWItbmF2aWdhdGlvbiAuc3VibmF2LWNvbnRhaW5lciBsaSBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgICAgIC5zdWItbmF2aWdhdGlvbiAuc3VibmF2LWNvbnRhaW5lciBsaS5zZWxlY3RlZCBhIHtcbiAgICAgICAgY29sb3I6ICMyNTI1MjU7IH1cbiAgICAgIC5zdWItbmF2aWdhdGlvbiAuc3VibmF2LWNvbnRhaW5lciBsaTphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYmFja2dyb3VuZDogIzhlOGU4ZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgYm90dG9tOiA1cHg7XG4gICAgICAgIHJpZ2h0OiAtMnB4OyB9XG4gICAgICAuc3ViLW5hdmlnYXRpb24gLnN1Ym5hdi1jb250YWluZXIgbGk6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfVxuICAgICAgICAuc3ViLW5hdmlnYXRpb24gLnN1Ym5hdi1jb250YWluZXIgbGk6bGFzdC1vZi10eXBlOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuc3ViLW5hdmlnYXRpb24gLnN1Ym5hdi1jb250YWluZXIgbGk6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfVxuXG5Ac3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgLnN1Yi1uYXZpZ2F0aW9uIHtcbiAgICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDcwcHg7IH0gfVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWxpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnNsaWNrLWxpc3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLnNsaWNrLWxpc3QuZHJhZ2dpbmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7IH1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuc2xpY2stc2xpZGUgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG4iLCIvKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi41LjFcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5cbi8vIERlcGVuZGVuY2llc1xuQGltcG9ydCAndmVuZG9yL25vcm1hbGl6ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvbWlzc2luZy1kZXBlbmRlbmNpZXMnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL3RydWUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvY29udGFpbic7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9wdXJnZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZW1vdmUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVwbGFjZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy90by1saXN0JztcblxuLy8gLS0tIFNldHRpbmdzIC0tLVxuLy8gaW1wb3J0IHlvdXIgb3duIGBzZXR0aW5nc2AgaGVyZSBvclxuLy8gaW1wb3J0IGFuZCBtb2RpZnkgdGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhyb3VnaFxuLy8gQGltcG9ydCAnc2V0dGluZ3Mvc2V0dGluZ3MnO1xuXG4vLyAtLS0gQ29tcG9uZW50cyAtLS1cbi8vIFV0aWxpdGllc1xuQGltcG9ydCAndXRpbC91dGlsJztcbi8vIEdsb2JhbCBzdHlsZXNcbkBpbXBvcnQgJ2dsb2JhbCc7XG5AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuXG4vLyBHcmlkc1xuQGltcG9ydCAnZ3JpZC9ncmlkJztcbkBpbXBvcnQgJ3h5LWdyaWQveHktZ3JpZCc7XG4vLyBHZW5lcmljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uLWdyb3VwJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2xvc2UtYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wcm9ncmVzcy1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGlkZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zd2l0Y2gnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJsZSc7XG4vLyBCYXNpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2JhZGdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYWxsb3V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FyZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2x0aXAnO1xuXG4vLyBDb250YWluZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhLW9iamVjdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmVzcG9uc2l2ZS1lbWJlZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51LWljb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RyaWxsZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUnO1xuXG4vLyBMYXlvdXQgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9vZmYtY2FudmFzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmV2ZWFsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RpY2t5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGl0bGUtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9wLWJhcic7XG5cbi8vIEhlbHBlcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxvYXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbGV4JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmlzaWJpbGl0eSc7XG5AaW1wb3J0ICdwcm90b3R5cGUvcHJvdG90eXBlJztcblxuXG5AbWl4aW4gZm91bmRhdGlvbi1ldmVyeXRoaW5nKFxuICAkZmxleDogdHJ1ZSxcbiAgJHByb3RvdHlwZTogZmFsc2Vcbikge1xuICBAaWYgJGZsZXgge1xuICAgICRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLy8gR2xvYmFsIHN0eWxlc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcblxuICAvLyBHcmlkc1xuICBAaWYgbm90ICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkeHktZ3JpZCB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG4gIC8vIEJhc2ljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuXG4gIC8vIENvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG4gIC8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG5cbiAgLy8gTGF5b3V0IGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG5cbiAgLy8gSGVscGVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG4gIEBpZiAkZmxleCB7IEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzOyB9XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuICBAaWYgJHByb3RvdHlwZSB7IEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7IH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1RoZSBmaXJzdCBrZXkgaW4gdGhlICRicmVha3BvaW50cyBtYXAgbXVzdCBoYXZlIGEgdmFsdWUgb2YgXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IDA7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBFdmVudHVhbCBvdXRwdXRcbiAgJHN0cjogJyc7XG4gIC8vIElzIGl0IGEgbmFtZWQgbWVkaWEgcXVlcnk/XG4gICRuYW1lZDogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG4gIEBlbHNlIGlmICRicCA9PSAncmV0aW5hJyB7XG4gICAgQHJldHVybiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSc7XG4gIH1cblxuICAvLyBUcnkgdG8gcHVsbCBhIG5hbWVkIGJyZWFrcG9pbnQgb3V0IG9mIHRoZSAkYnJlYWtwb2ludHMgbWFwXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICAgJGJwLW1heDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgIH1cblxuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgICRuYW1lZDogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciAkYnJlYWtwb2ludHMgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbnZlcnQgYW55IHBpeGVsLCByZW0sIG9yIHVuaXRsZXNzIHZhbHVlIHRvIGVtXG4gICRicDogLXpmLWJwLXRvLWVtKCRicCk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICBAaWYgJGJwLW1heCB7XG4gICAgJGJwLW1heDogLXpmLWJwLXRvLWVtKCRicC1tYXgpIC0gLjAwMTI1O1xuICB9XG5cbiAgLy8gQ29uZGl0aW9ucyB0byBza2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uXG4gIC8vIC0gSXQncyBhIG5hbWVkIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgZG93blwiIG9yIFwiMCB1cFwiXG4gIC8vIC0gSXQncyBhIG51bWVyaWMgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBcIiArIGFueXRoaW5nXG4gIEBpZiAkYnAgPiAwZW0gb3IgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIGBvbmx5YCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pIGFuZCAobWF4LXdpZHRoOiBuKWBcbiAgICBAaWYgJGRpciA9PSAnb25seScge1xuICAgICAgLy8gT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIFwib25seVwiIHJhbmdlXG4gICAgICBAaWYgJG5hbWVkID09IHRydWUge1xuICAgICAgICAvLyBPbmx5IHVzZSBcIm1pbi13aWR0aFwiIGlmIHRoZSBmbG9vciBpcyBncmVhdGVyIHRoYW4gMFxuICAgICAgICBAaWYgJGJwID4gMGVtIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuXG4gICAgICAgICAgLy8gT25seSBhZGQgXCJhbmRcIiB0byB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAgICRzdHI6ICRzdHIgKyAnIGFuZCAnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWF4LXdpZHRoXCIgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRicC1tYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGBkb3duYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtYXgtd2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICRtYXg6IGlmKCRuYW1lZCwgJGJwLW1heCwgJGJwKTtcblxuICAgICAgLy8gU2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvbiBpZiBpbnB1dCB2YWx1ZSBpcyBleGFjdGx5IFwiMCBkb3duXCIsXG4gICAgICAvLyB1bmxlc3MgdGhlIGZ1bmN0aW9uIHdhcyBjYWxsZWQgYXMgXCJzbWFsbCBkb3duXCIsIGluIHdoaWNoIGNhc2UgaXQncyBqdXN0IFwic21hbGwgb25seVwiXG4gICAgICBAaWYgJG5hbWVkIG9yICRicCA+IDBlbSB7XG4gICAgICAgIEBpZiAkbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYHVwYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRicCA+IDBlbSB7XG4gICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZSkge1xuICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG4gICRicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkdmFsdWUpO1xuICAkcGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICRwcmludC1icmVha3BvaW50KTtcblxuICAkb2xkLXpmLXNpemU6IG51bGw7XG5cbiAgLy8gTWFrZSBicmVha3BvaW50IHNpemUgYXZhaWxhYmxlIGFzIGEgdmFyaWFibGVcbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgfVxuICAkLXpmLXNpemU6IG50aCgkdmFsdWUsIDEpICFnbG9iYWw7IC8vIGdldCB0aGUgZmlyc3QgdmFsdWUgdG8gYWNjb3VudCBmb3IgYG9ubHlgIGFuZCBgZG93bmAga2V5d29yZHNcblxuICAvLyBJZiAkc3RyIGlzIHN0aWxsIGFuIGVtcHR5IHN0cmluZywgbm8gbWVkaWEgcXVlcnkgaXMgbmVlZGVkXG4gIEBpZiAkc3RyID09ICcnIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gIEBlbHNlIHtcbiAgICAvLyBGb3IgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICRwcmludC1icmVha3BvaW50LCBhZGQgcHJpbnQgdG8gdGhlIG1lZGlhIHR5cGVzXG4gICAgQGlmICRicCAhPSBudWxsIGFuZCAkYnAgPD0gJHBicCB7XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG59XG5cbi8vLyBDb252ZXJ0cyB0aGUgYnJlYWtwb2ludHMgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFRoZSB2YWx1ZSBpcyB0aGVuIGRyb3BwZWQgaW50byB0aGUgQ1NTIGZvciBhIHNwZWNpYWwgYDxtZXRhPmAgdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHQuIFRoaXMgaXMgaG93IHdlIHRyYW5zZmVyIHZhbHVlcyBmcm9tIFNhc3MgdG8gSmF2YVNjcmlwdCwgc28gdGhleSBjYW4gYmUgZGVmaW5lZCBpbiBvbmUgcGxhY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBjb252ZXJ0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWFwJ3MgY29udGVudHMuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIEZpbmQgdGhlIG5leHQga2V5IGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGtleSAtIEtleSB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCwgaWYgYCRrZXlgIHdhcyBmb3VuZC4gSWYgYCRrZXlgIHdhcyBub3QgZm91bmQsIG9yIGAka2V5YCB3YXMgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0KCRtYXAsICRrZXkpIHtcblxuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cblxufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBsYXN0IGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigka2V5KSB7XG4gICRsaXN0OiAoKTtcbiAgJGZvdW5kX2tleTogZmFsc2U7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJC16Zi1icmVha3BvaW50cy1rZXlzIHtcbiAgICBAaWYgKCRuYW1lID09ICRrZXkpIHtcbiAgICAgICRmb3VuZF9rZXk6IHRydWU7XG4gICAgfVxuICAgIEBpZiBub3QgJGZvdW5kX2tleSB7XG4gICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkbmFtZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IC0gYSBuYW1lZCBvciBub24tbmFtZWQgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICRsYXN0OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgJGZvdW5kOiBmYWxzZTtcblxuICAkdmFsdWU6IHVuaXRsZXNzLWNhbGMoJGJyZWFrcG9pbnQsIDFweCk7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICBAaWYgdW5pdGxlc3MtY2FsYygkdmFsKSA+ICR2YWx1ZSB7XG4gICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkbGFzdDogJGtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsYXN0O1xufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJG1hcDtcbiAgfVxuXG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgICAgJHZhbHVlOiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbiRzbWFsbC11cDogJyc7XG4kc21hbGwtb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbiRtZWRpdW0tdXA6ICcnO1xuJG1lZGl1bS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG4kbGFyZ2UtdXA6ICcnO1xuJGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG4keGxhcmdlLXVwOiAnJztcbiR4bGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHh4bGFyZ2UtdXA6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJldmVhbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB3aWR0aCBvZiBhIG1vZGFsLCB3aXRoIG5vIGNsYXNzIGFwcGxpZWQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXdpZHRoOiA2MDBweCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWF4aW11bSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyB6LWluZGV4IGZvciBtb2RhbHMuIFRoZSBvdmVybGF5IHVzZXMgdGhpcyB2YWx1ZSwgd2hpbGUgdGhlIG1vZGFsIGl0c2VsZiB1c2VzIHRoaXMgdmFsdWUgcGx1cyBvbmUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXppbmRleDogMTAwNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgb3ZlcmxheXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSkgIWRlZmF1bHQ7XG5cblxuLy8gUGxhY2Vob2xkZXIgc2VsZWN0b3IgZm9yIG1lZGl1bS1hbmQtdXAgbW9kYWxzXG4vLyBQcmV2ZW50cyBkdXBsaWNhdGUgQ1NTIHdoZW4gZGVmaW5pbmcgbXVsdGlwbGUgUmV2ZWFsIHNpemVzXG4vLyBUaGlzIHNob3VsZCBiZSBpbiB0aGUgc2FtZSBicmVha3BvaW50IHRoZW4gYEBtaXhpbiByZXZlYWwtbW9kYWwtd2lkdGhgXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAlcmV2ZWFsLWNlbnRlcmVkIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1vZGFsIG92ZXJsYXkuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIG92ZXJsYXkuXG5AbWl4aW4gcmV2ZWFsLW92ZXJsYXkoJGJhY2tncm91bmQ6ICRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kKSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleDtcblxuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGEgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4ICsgMTtcbiAgLy8gV29ya2Fyb3VuZCBhbmRyb2lkIGJyb3dzZXIgei1pbmRleCBidWdcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRyZXZlYWwtcGFkZGluZztcblxuICBib3JkZXI6ICRyZXZlYWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmV2ZWFsLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJldmVhbC1iYWNrZ3JvdW5kO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSByb3dzIGRvbid0IGhhdmUgYSBtaW4td2lkdGggb24gdGhlbVxuICAuY29sdW1uIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cblxuICAvLyBTdHJpcCBtYXJnaW5zIGZyb20gdGhlIGxhc3QgaXRlbSBpbiB0aGUgbW9kYWxcbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRqdXN0cyB0aGUgd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIC0gV2lkdGggb2YgdGhlIG1vZGFsLiBHZW5lcmFsbHkgYSBwZXJjZW50YWdlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4LXdpZHRoIFskcmV2ZWFsLW1heC13aWR0aF0gLSBNYXhpbXVtIHdpZHRoIG9mIHRoZSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtd2lkdGgoXG4gICR3aWR0aDogJHJldmVhbC13aWR0aCxcbiAgJG1heC13aWR0aDogJHJldmVhbC1tYXgtd2lkdGhcbikge1xuICAvLyBFeHRlbmRzIG11c3QgYmUgbWFkZSBvdXRzaWRlIG9mIGJyZWFrcG9pbnRzIGZvciBjb21wYXRpYmlsaXR5IHdpdGggbmV3ZXIgU2FzcyB2ZXJzaW9ucyAobGlic2FzcyB2My41KVxuICBAZXh0ZW5kICVyZXZlYWwtY2VudGVyZWQ7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBmdWxsLXNjcmVlbiBtb2RhbCwgd2hpY2ggc3RyZXRjaGVzIHRoZSBmdWxsIHdpZHRoIGFuZCBoZWlnaHQgb2YgdGhlIHdpbmRvdy5cbkBtaXhpbiByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbiB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcblxuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuXG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmV2ZWFsIHtcblxuICAvLy8gRGlzYWJsZXMgdGhlIHNjcm9sbCB3aGVuIFJldmVhbCBpcyBzaG93biB0byBwcmV2ZW50IHRoZSBiYWNrZ3JvdW5kIGZyb20gc2hpZnRpbmdcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcblxuICAgICYuemYtaGFzLXNjcm9sbCB7XG4gICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgfVxuXG4gICAgYm9keSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIH1cbiAgfVxuXG4gIC8vIE92ZXJsYXlcbiAgLnJldmVhbC1vdmVybGF5IHtcbiAgICBAaW5jbHVkZSByZXZlYWwtb3ZlcmxheTtcbiAgfVxuXG4gIC8vIE1vZGFsIGNvbnRhaW5lclxuICAucmV2ZWFsIHtcbiAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZTtcbiAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoJHJldmVhbC13aWR0aCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMTAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICAvLyBSZW1vdmUgcGFkZGluZ1xuICAgICYuY29sbGFwc2Uge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvLyBTaXppbmcgY2xhc3Nlc1xuICAgICYudGlueSAgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoMzAlKTsgfVxuICAgICYuc21hbGwgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoNTAlKTsgfVxuICAgICYubGFyZ2UgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoOTAlKTsgfVxuXG4gICAgLy8gRnVsbC1zY3JlZW4gbW9kZVxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgICYud2l0aG91dC1vdmVybGF5IHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBmb3VuZGF0aW9uLW5vcm1hbGl6ZSgpIHtcbiAgLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4gIC8vIERvY3VtZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cblxuICBodG1sIHtcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxuICB9XG5cbiAgLy8gU2VjdGlvbnNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAvLyBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBtYXJnaW46IDAuNjdlbSAwO1xuICB9XG5cbiAgLy8gR3JvdXBpbmcgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gIC8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG4gIGhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICAgIGhlaWdodDogMDsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgcHJlIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG5cbiAgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICAvLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuXG4gIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyAvLyAxXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8vIDJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG5cbiAgYixcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGNvZGUsXG4gIGtiZCxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAvLyBhbGwgYnJvd3NlcnMuXG5cbiAgc3ViLFxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICBzdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgfVxuXG4gIHN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG4gIH1cblxuICAvLyBFbWJlZGRlZCBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cblxuICBpbWcge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC8vIEZvcm1zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8vIDFcbiAgICBmb250LXNpemU6IDEwMCU7IC8vIDFcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIG1hcmdpbjogMDsgLy8gMlxuICB9XG5cbiAgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gIC8vIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCB7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAvLyAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uLFxuICBzZWxlY3QgeyAvLyAxXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuXG4gIGJ1dHRvbjotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gIC8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgLy8gMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAvLyAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cblxuICBsZWdlbmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAxXG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gM1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbiAgcHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDJcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cblxuICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAvLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG5cbiAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbiAgICBmb250OiBpbmhlcml0OyAvLyAyXG4gIH1cblxuICAvLyBJbnRlcmFjdGl2ZVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG5cbiAgZGV0YWlscyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB9XG5cbiAgLy8gTWlzY1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cblxuICB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuXG4gIFtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBhbnRpYWxpYXNlZCB0eXBlLCB1c2luZyB0aGUgYC13ZWJraXQtZm9udC1zbW9vdGhpbmdgIGFuZCBgLW1vei1vc3gtZm9udC1zbW9vdGhpbmdgIENTUyBwcm9wZXJ0aWVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIG1hcmdpbiBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcGFkZGluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBvc2l0aW9uaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIG5vcm1hbCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIGJvbGQgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBlbGVtZW50cyB0aGF0IGhhdmUgYSBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1yYWRpdXM6IDAgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBDYW4gYmUgb3ZlcndyaXR0ZW4gYXQgaW5kaXZpZHVhbCBtZW51IGNvbXBvbmVudCBsZXZlbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIE5lc3RlZCBtYXJnaW4gZm9yIHN1Ym1lbnUuXG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHRleHQgZGlyZWN0aW9uIG9mIHRoZSBDU1MuIENhbiBiZSBlaXRoZXIgYGx0cmAgb3IgYHJ0bGAuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGZvciBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCBpdC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLWZsZXhib3g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVkIHJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIHByb3RvdHlwZXMgaWYgYXBwbGljYWJsZVxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJ1dHRvbiBjdXJzb3IncyB2YWx1ZSwgYGF1dG9gIGJ5IGRlZmF1bHRcbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG8gIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlIHRoYXQgY29udGFpbnMgdGhlIGZsZXgganVzdGlmeWluZyBvcHRpb25zXG4kLXpmLWZsZXgtanVzdGlmeTogLXpmLWZsZXgtanVzdGlmeSgkZ2xvYmFsLXRleHQtZGlyZWN0aW9uKTtcblxuLy8vIEdsb2JhbCB0b2xlcmFuY2UgZm9yIGNvbG9yIHBpY2sgY29udHJhc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgY29sb3JzXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXMge1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiAkZ2xvYmFsLWJ1dHRvbi1jdXJzb3I7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vICBGb3VuZGF0aW9uUHJlc3Mgc2V0dGluZ3MuXG4vLyAgQmFzZWQgb24gRm91bmRhdGlvbiBmb3IgU2l0ZXMgdjYuNC4zXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAgMjAuIEZvcm1zXG4vLyAgMjEuIExhYmVsXG4vLyAgMjIuIE1lZGlhIE9iamVjdFxuLy8gIDIzLiBNZW51XG4vLyAgMjQuIE1ldGVyXG4vLyAgMjUuIE9mZi1jYW52YXNcbi8vICAyNi4gT3JiaXRcbi8vICAyNy4gUGFnaW5hdGlvblxuLy8gIDI4LiBQcm9ncmVzcyBCYXJcbi8vICAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAgMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vICAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vICAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAgNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vICA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vICA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDQ3LiBSZXZlYWxcbi8vICA0OC4gU2xpZGVyXG4vLyAgNDkuIFN3aXRjaFxuLy8gIDUwLiBUYWJsZVxuLy8gIDUxLiBUYWJzXG4vLyAgNTIuIFRodW1ibmFpbFxuLy8gIDUzLiBUaXRsZSBCYXJcbi8vICA1NC4gVG9vbHRpcFxuLy8gIDU1LiBUb3AgQmFyXG4vLyAgNTYuIFh5IEdyaWRcblxuQGltcG9ydCAndXRpbC91dGlsJztcbkBpbXBvcnQgJ2dsb2JhbC9jb2xvcnMnO1xuXG4vLyAxLiBHbG9iYWxcbi8vIC0tLS0tLS0tLVxuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDExMDApO1xuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjU7XG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMwYjg3OTMsXG4gIHNlY29uZGFyeTogI2ZiYjMxNixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pO1xuJGxpZ2h0LWdyYXk6ICNlNmU2ZTY7XG4kbWVkaXVtLWdyYXk6ICNjYWNhY2E7XG4kZGFyay1ncmF5OiAjOGE4YThhO1xuJGJsYWNrOiAjMGEwYTBhO1xuJHdoaXRlOiAjZmVmZWZlO1xuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlO1xuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrO1xuLy8kYm9keS1mb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiUm9ib3RvXCIsIFwiT3h5Z2VuXCIsIFwiVWJ1bnR1XCIsIFwiQ2FudGFyZWxsXCIsIFwiRmlyYSBTYW5zXCIsIFwiRHJvaWQgU2Fuc1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7XG4kYm9keS1mb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZTtcbiRnbG9iYWwtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC1wYWRkaW5nOiAxcmVtO1xuJGdsb2JhbC1wb3NpdGlvbjogMXJlbTtcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsO1xuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZDtcbiRnbG9iYWwtcmFkaXVzOiAwO1xuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XG4kZ2xvYmFsLWZsZXhib3g6IHRydWU7XG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2U7XG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG87XG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwO1xuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlO1xuXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG5cbi8vIDIuIEJyZWFrcG9pbnRzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIHRhYmxldDogNzY4cHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTEwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG5cbiAgcGhhYmxldDogOTYwcHgsXG4pO1xuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlO1xuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSB0YWJsZXQgbGFyZ2UgeGxhcmdlIHh4bGFyZ2UgcGhhYmxldCk7XG5cbi8vIDMuIFRoZSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4kZ3JpZC1yb3ctd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW4tY291bnQ6IDEyO1xuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxuICBzbWFsbDogMjBweCxcbiAgbWVkaXVtOiA0MHB4LFxuKTtcbiRncmlkLWNvbHVtbi1hbGlnbi1lZGdlOiB0cnVlO1xuJGdyaWQtY29sdW1uLWFsaWFzOiAnY29sdW1ucyc7XG4kYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWw7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiRoZWFkZXItY29sb3I6IGluaGVyaXQ7XG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE5KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA0OCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiA0MCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAzMSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyNSksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4pO1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJHNtYWxsLWZvbnQtc2l6ZTogODAlO1xuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNjtcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRjb2RlLWNvbG9yOiAkYmxhY2s7XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKTtcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lO1xuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvO1xuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW07XG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW07XG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KTtcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnO1xuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrO1xuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApO1xuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjaztcblxuLy8gNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjU7XG4kbGVhZC1saW5laGVpZ2h0OiAxLjY7XG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXk7XG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbTtcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJHN0YXQtZm9udC1zaXplOiAyLjVyZW07XG5cbi8vIDYuIEFiaWRlXG4vLyAtLS0tLS0tLVxuXG4kYWJpZGUtaW5wdXRzOiB0cnVlO1xuJGFiaWRlLWxhYmVsczogdHJ1ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4vLyA3LiBBY2NvcmRpb25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlO1xuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA4LiBBY2NvcmRpb24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkd2hpdGU7XG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kOiBudWxsO1xuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4O1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcblxuLy8gOS4gQmFkZ2Vcbi8vIC0tLS0tLS0tXG5cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xuXG4vLyAxMC4gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLyc7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGw6ICdcXFxcJztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuXG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG5cbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW07XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2s7XG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweDtcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbik7XG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcblxuLy8gMTIuIEJ1dHRvbiBHcm91cFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtO1xuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nO1xuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWU7XG5cbi8vIDEzLiBDYWxsb3V0XG4vLyAtLS0tLS0tLS0tLVxuXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JTtcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW07XG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhbGxvdXQtbGluay10aW50OiAzMCU7XG5cbi8vIDE0LiBDYXJkXG4vLyAtLS0tLS0tLVxuXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGNhcmQtc2hhZG93OiBub25lO1xuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kY2FyZC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcblxuLy8gMTUuIENsb3NlIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbik7XG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheTtcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xuXG4vLyAxNi4gRHJpbGxkb3duXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xuJGRyaWxsZG93bi1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbjogMDtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZztcbiRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyAxNy4gRHJvcGRvd25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW07XG4kZHJvcGRvd24td2lkdGg6IDMwMHB4O1xuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4LFxuKTtcblxuLy8gMTguIERyb3Bkb3duIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvcjtcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW07XG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6ICRkYXJrLW5hdi1jb2xvcjtcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQ7XG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luOiAwO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICRsaWdodC1ncmF5O1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQ7XG5cbi8vIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNjtcbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWU7XG5cbi8vIDIwLiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG5cbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheTtcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDI7XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSk7XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIxLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG5cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjIuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcblxuLy8gMjMuIE1lbnVcbi8vIC0tLS0tLS0tXG5cbiRtZW51LW1hcmdpbjogMDtcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZTtcbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWU7XG5cbi8vIDI0LiBNZXRlclxuLy8gLS0tLS0tLS0tXG5cbiRtZXRlci1oZWlnaHQ6IDFyZW07XG4kbWV0ZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRtZXRlci1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kbWV0ZXItZmlsbC1nb29kOiAkc3VjY2Vzcy1jb2xvcjtcbiRtZXRlci1maWxsLW1lZGl1bTogJHdhcm5pbmctY29sb3I7XG4kbWV0ZXItZmlsbC1iYWQ6ICRhbGVydC1jb2xvcjtcblxuLy8gMjUuIE9mZi1jYW52YXNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRvZmZjYW52YXMtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKTtcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKTtcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGRhcmstbmF2LWNvbG9yO1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpO1xuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweDtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSk7XG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMTtcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTM7XG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xuXG4vLyAyNi4gT3JiaXRcbi8vIC0tLS0tLS0tLVxuXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTA7XG5cbi8vIDI3LiBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKTtcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSk7XG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvcjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7XG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZTtcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcblxuLy8gMjguIFByb2dyZXNzIEJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAxcmVtO1xuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRwcm9ncmVzcy1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYXJyb3ctZGlyZWN0aW9uczogKFxuICBkb3duLFxuICB1cCxcbiAgcmlnaHQsXG4gIGxlZnRcbik7XG4kcHJvdG90eXBlLWFycm93LXNpemU6IDAuNDM3NXJlbTtcbiRwcm90b3R5cGUtYXJyb3ctY29sb3I6ICRibGFjaztcblxuLy8gMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXItYm94LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ub25lLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlcmVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXdpZHRoOiByZW0tY2FsYygxKTtcbiRwcm90b3R5cGUtYm9yZGVyLXR5cGU6IHNvbGlkO1xuJHByb3RvdHlwZS1ib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcblxuLy8gMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1kaXNwbGF5LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtZGlzcGxheTogKFxuICBpbmxpbmUsXG4gIGlubGluZS1ibG9jayxcbiAgYmxvY2ssXG4gIHRhYmxlLFxuICB0YWJsZS1jZWxsXG4pO1xuXG4vLyAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1mb250LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoNCk7XG4kcHJvdG90eXBlLWZvbnQtbm9ybWFsOiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kcHJvdG90eXBlLWZvbnQtYm9sZDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtbGlzdC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtdW5vcmRlcmVkOiAoXG4gIGRpc2MsXG4gIGNpcmNsZSxcbiAgc3F1YXJlXG4pO1xuJHByb3RvdHlwZS1zdHlsZS10eXBlLW9yZGVyZWQ6IChcbiAgZGVjaW1hbCxcbiAgbG93ZXItYWxwaGEsXG4gIGxvd2VyLWxhdGluLFxuICBsb3dlci1yb21hbixcbiAgdXBwZXItYWxwaGEsXG4gIHVwcGVyLWxhdGluLFxuICB1cHBlci1yb21hblxuKTtcblxuLy8gMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLW92ZXJmbG93LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtb3ZlcmZsb3c6IChcbiAgdmlzaWJsZSxcbiAgaGlkZGVuLFxuICBzY3JvbGxcbik7XG5cbi8vIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXBvc2l0aW9uOiAoXG4gIHN0YXRpYyxcbiAgcmVsYXRpdmUsXG4gIGFic29sdXRlLFxuICBmaXhlZFxuKTtcbiRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleDogOTc1O1xuXG4vLyAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXJvdW5kZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcblxuLy8gMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWFsaWduOiBjZW50ZXI7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1oZWlnaHQ6IHJlbS1jYWxjKDIpO1xuJHByb3RvdHlwZS1zZXBhcmF0b3Itd2lkdGg6IDNyZW07XG4kcHJvdG90eXBlLXNlcGFyYXRvci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLW1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyA0MC4gUHJvdG90eXBlIFNoYWRvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zaGFkb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsMCwwLC4xNiksXG4gICAgICAgICAgICAgICAgICAgICAgIDAgMnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xMik7XG5cbi8vIDQxLiBQcm90b3R5cGUgU2l6aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNpemluZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNpemluZzogKFxuICB3aWR0aCxcbiAgaGVpZ2h0XG4pO1xuJHByb3RvdHlwZS1zaXplczogKFxuICAyNTogMjUlLFxuICA1MDogNTAlLFxuICA3NTogNzUlLFxuICAxMDA6IDEwMCVcbik7XG5cbi8vIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc3BhY2luZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNwYWNlcnMtY291bnQ6IDM7XG5cbi8vIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWRlY29yYXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LWRlY29yYXRpb246IChcbiAgb3ZlcmxpbmUsXG4gIHVuZGVybGluZSxcbiAgbGluZS10aHJvdWdoLFxuKTtcblxuLy8gNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS10cmFuc2Zvcm1hdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtdHJhbnNmb3JtYXRpb246IChcbiAgbG93ZXJjYXNlLFxuICB1cHBlcmNhc2UsXG4gIGNhcGl0YWxpemVcbik7XG5cbi8vIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS11dGlsaXRpZXMtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuLy8gNDYuIFJlc3BvbnNpdmUgRW1iZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pO1xuXG4vLyA0Ny4gUmV2ZWFsXG4vLyAtLS0tLS0tLS0tXG5cbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlO1xuJHJldmVhbC13aWR0aDogNjAwcHg7XG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcmV2ZWFsLXppbmRleDogMTAwNTtcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSk7XG5cbi8vIDQ4LiBTbGlkZXJcbi8vIC0tLS0tLS0tLS1cblxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtO1xuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XG4kc2xpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHNsaWRlci1maWxsLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtd2lkdGg6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJHNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA0OS4gU3dpdGNoXG4vLyAtLS0tLS0tLS0tXG5cbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XG4kc3dpdGNoLWhlaWdodDogMnJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtO1xuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDUwLiBUYWJsZVxuLy8gLS0tLS0tLS0tXG5cbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApO1xuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZTtcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXN0cmlwZTogZXZlbjtcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKTtcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1MS4gVGFic1xuLy8gLS0tLS0tLS1cblxuJHRhYi1tYXJnaW46IDA7XG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuJHRhYi1leHBhbmQtbWF4OiA2O1xuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5O1xuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDUyLiBUaHVtYm5haWxcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGU7XG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA1My4gVGl0bGUgQmFyXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkZGFyay1uYXYtY29sb3I7XG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZDtcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5O1xuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbTtcblxuLy8gNTQuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG5cbiRoYXMtdGlwLWN1cnNvcjogaGVscDtcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5O1xuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZTtcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW07XG4kdG9vbHRpcC1tYXgtd2lkdGg6IDEwcmVtO1xuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtO1xuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA1NS4gVG9wIEJhclxuLy8gLS0tLS0tLS0tLS1cblxuJHRvcGJhci1wYWRkaW5nOiAwO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiAkZGFyay1uYXYtY29sb3I7XG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuLy8gNTYuIFh5IEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiR4eS1ncmlkOiB0cnVlO1xuJGdyaWQtY29udGFpbmVyOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uczogMTI7XG4kZ3JpZC1tYXJnaW4tZ3V0dGVyczogKFxuICBzbWFsbDogMjBweCxcbiAgbWVkaXVtOiA0MHB4XG4pO1xuJGdyaWQtcGFkZGluZy1ndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycztcbiRncmlkLWNvbnRhaW5lci1wYWRkaW5nOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnM7XG4kZ3JpZC1jb250YWluZXItbWF4OiAkZ2xvYmFsLXdpZHRoO1xuJHh5LWJsb2NrLWdyaWQtbWF4OiA4O1xuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6ICN7JHJnYn0nPjwvcG9seWdvbj48L3N2Zz5cIik7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiB0cnVlLCAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHM6IHRydWUpIHtcbiAgJGxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG5cbiAgQGlmIG5vdCAkc21hbGwge1xuICAgICRsaXN0OiBzbC1yZW1vdmUoJGxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIEBlYWNoICRuYW1lIGluICRsaXN0IHtcbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6ICRuYW1lICFnbG9iYWw7XG5cbiAgICBAaWYgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJG5hbWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmFzZS1ncmlkLWNsYXNzZXMge1xuXG4gIC8vIEdyaWQgQ29udGFpbmVyXG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG5cbiAgICAmLmZsdWlkIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUpO1xuICAgIH1cblxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlLCAwKTtcbiAgICB9XG4gIH1cblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIC5ncmlkLXgge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIH1cblxuICAuY2VsbCB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKCk7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGdyaWQtY29sdW1ucywgZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgICAmLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgIH1cblxuICAgICYuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICB9XG4gIC5ncmlkLXgge1xuICAgID4gLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoYXV0bywgZmFsc2UpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICAvLyBBdXRvIHdpZHRoXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gVGhpcyBpcyBhIGJpdCBvZiBhIGhhY2svd29ya2Fyb3VuZCwgc2VlIHRoZXNlIGlzc3VlcyAmIFBScyBmb3IgdGhlIGJhY2tzdG9yeTpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDIyMiBhbmRcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAxNjRcbiAgICAuZ3JpZC14IHtcbiAgICAgICRzdHI6IFwiPiAuI3skLXpmLXNpemV9LXNocmluaywgPiAuI3skLXpmLXNpemV9LWZ1bGxcIjtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICRzdHI6ICRzdHIgKyBcIiwgPiAuI3skLXpmLXNpemV9LSN7JGl9XCJcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksIGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHdpZHRoIHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi14YCBub3Qgb24gYC5ncmlkLXhgXG4gIC5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC8vIFJlc2V0IGhlaWdodCB3aGVuIHVzaW5nIGAuZ3JpZC1tYXJnaW4teWAgbm90IG9uIGAuZ3JpZC15YFxuICAuZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbkBtaXhpbiAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGNsYXNzLWJyZWFrcG9pbnQsICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsKSB7XG4gICRwcmVmaXg6IGlmKCRjbGFzcy1icmVha3BvaW50ID09ICQtemYtemVyby1icmVha3BvaW50LCAnJywgJyN7JGNsYXNzLWJyZWFrcG9pbnR9LScpO1xuICA+IC4jeyRwcmVmaXh9YXV0byB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoYXV0bywgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gID4gLiN7JHByZWZpeH1zaHJpbmsge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICRjbGFzc25hbWU6IGlmKCR2ZXJ0aWNhbCwgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScsICcuI3skY2xhc3MtYnJlYWtwb2ludH0tI3skaX0nKTtcblxuICAgID4gI3skY2xhc3NuYW1lfSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoXG4gICRndXR0ZXItcG9zaXRpb246IGxlZnQgcmlnaHQsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICR3cmFwcGluZy1zZWxlY3RvcjogJy5ncmlkLW1hcmdpbi14J1xuKXtcbiAgI3skd3JhcHBpbmctc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSwgJGd1dHRlci1wb3NpdGlvbjogJGd1dHRlci1wb3NpdGlvbik7XG5cbiAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gYmFzZSBzdHlsZXMgbmVlZCB0byBhbGwgYmUgYmVmb3JlIHRoZSBhdXRvIGFuZCBzaHJpbmsgc3R5bGVzXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkgYW5kICQtemYtc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC5jZWxsIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkYnJlYWtwb2ludDogJC16Zi1zaXplLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuXG4gICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgLy8gZm9yIGFsbCBwcmlvciBicmVha3BvaW50cy5cbiAgICAgIC8vIEFzIHRoZWlyIGd1dHRlciBpcyBkZWZpbmVkIHdpdGggdGhlaXIgd2lkdGgvaGVpZ2h0LCBldmVuIGJyZWFrcG9pbnQgd2l0aG91dCBhIG5ldyBtYXJnaW4gbXVzdCBiZVxuICAgICAgLy8gZ2VuZXJhdGVkIHRvIG5vdCBoYXZpbmcgdGhlaXIgd2lkdGgvaGVpZ2h0IG92ZXJyaWRlZCBieSByZS1hZGp1c3RlZCBzbWFsbGVyIGJyZWFrcG9pbnRzLlxuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGJwLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCQtemYtc2l6ZSwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQYWRkaW5nIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzIHtcbiAgLmdyaWQtcGFkZGluZy14IHtcblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIGdyaWRzIHdpdGhpbiBgZ3JpZC1jb250YWluZXIvZ3JpZC1jb250YWluZXIuZmx1aWRgXG4gICAgLy8gVGhpcyBhbGxvd3MgbWFyZ2luIGFuZCBwYWRkaW5nIGdyaWRzIHRvIGxpbmUgdXAgd2l0aCBlYWNob3RoZXJcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+ICYge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQmxvY2sgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLW91dHB1dDogZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZywgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLy8gVGhpcyBpcyBwdXJlbHkgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycyAtIHRoZSBtYXJnaW4gZ3JpZCBoYXMgdG8gZ28gYmFjayBhbmQgYWRqdXN0IHdpZHRocyAob3IgaGVpZ2h0cylcbiAgICAgICAgLy8gZm9yIHByaW9yIGJyZWFrcG9pbnRzIGJhc2VkIG9uIHRoZSByZXNwb25zaXZlIGd1dHRlci5cbiAgICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgQGlmKG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkYnApKSB7XG4gICAgICAgICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JGJwfS11cC0jeyRpfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbGxhcHNlIGNsYXNzZXNcbkBtaXhpbiB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICAgIC4jeyRicH0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAgIC4jeyRicH0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9mZnNldCBjbGFzc2VzXG5AbWl4aW4geHktb2Zmc2V0LWNlbGwtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvLCAkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC1tYXJnaW4teCA+IC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBWZXJ0aWNhbCBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgIH1cbiAgfVxuXG4gIC5ncmlkLXkge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQodmVydGljYWwsIGZhbHNlKTtcblxuXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXJlc2V0KCk7XG4gICAgfVxuXG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzIGFuZCBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9O1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksIGZhbHNlLCAkdmVydGljYWw6IHRydWUsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cblxuICAgICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICB9XG5cbn1cblxuQG1peGluIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZDogdHJ1ZSwgJG1hcmdpbi1ncmlkOiB0cnVlKSB7XG4gIC8vIEZyYW1lZCBncmlkIHN0eWxlc1xuICAuZ3JpZC1mcmFtZSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgfVxuXG4gIC5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgfVxuXG4gIC5jZWxsLWJsb2NrIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gIH1cblxuICAuY2VsbC1ibG9jay15IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICB9XG5cblxuICAuY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gIH1cblxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcblxuICAgIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICAgIH1cblxuICAgIC5jZWxsIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2steSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdmVydGljYWwtZ3JpZCB7XG4gICAgLmdyaWQteSB7XG4gICAgICAmLmdyaWQtZnJhbWUge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAmLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAuZ3JpZC15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkaW5jbHVkZS1iYXNlOiBmYWxzZSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgIC5ncmlkLW1hcmdpbi15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaW5hbCBjbGFzc2VzXG5AbWl4aW4gZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXMoXG4gICRiYXNlLWdyaWQ6IHRydWUsXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZSxcbiAgJGJsb2NrLWdyaWQ6IHRydWUsXG4gICRjb2xsYXBzZTogdHJ1ZSxcbiAgJG9mZnNldDogdHJ1ZSxcbiAgJHZlcnRpY2FsLWdyaWQ6IHRydWUsXG4gICRmcmFtZS1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIEBpZigkYmFzZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmFzZS1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIE1hcmdpbiBncmlkXG4gIEBpZigkbWFyZ2luLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBQYWRkaW5nIGdyaWRcbiAgQGlmKCRwYWRkaW5nLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZFxuICBAaWYoJGJsb2NrLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIENvbGxhcHNlIGd1dHRlcnNcbiAgQGlmKCRjb2xsYXBzZSkge1xuICAgIEBpbmNsdWRlIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gT2Zmc2V0IGd1dHRlcnNcbiAgQGlmKCRvZmZzZXQpIHtcbiAgICBAaW5jbHVkZSB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBncmlkXG4gIEBpZigkdmVydGljYWwtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgQGlmICgkZnJhbWUtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZCwgJG1hcmdpbi1ncmlkKVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGUgZ3V0dGVycyBmb3IgYSBjZWxsL2NvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgZWl0aGVyIG1hcmdpbiBvciBwYWRkaW5nLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVnYXRpdmUgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gYXBwbHkgdGhlIGd1dHRlciBhcyBhIG5lZ2F0aXZlIHZhbHVlLiBDb21tb25seSB1c2VkIGZvciBuZXN0ZWQgZ3JpZHMuXG5AbWl4aW4geHktZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG5lZ2F0aXZlOiBmYWxzZVxuKSB7XG4gICRvcGVyYXRvcjogaWYoJG5lZ2F0aXZlLCAnLScsICcnKTtcblxuICAvLyBJZiB3ZSBoYXZlIGRlY2xhcmVkIG5lZ2F0aXZlIGd1dHRlcnMsIGZvcmNlIHR5cGUgdG8gYG1hcmdpbi5cbiAgJGd1dHRlci10eXBlOiBpZigkbmVnYXRpdmUsICdtYXJnaW4nLCAkZ3V0dGVyLXR5cGUpO1xuXG4gIC8vIE91dHB1dCBvdXIgbWFyZ2luIGd1dHRlcnMuXG4gIEBpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcpIHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkZ3V0dGVycykge1xuICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogdW5xdW90ZShcIiN7JG9wZXJhdG9yfSN7JGd1dHRlcn1cIik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbnVtYmVyJykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXJzKSAvIDI7XG5cbiAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBtYXggd2lkdGggY29udGFpbmVyLCBkZXNpZ25lZCB0byBob3VzZSB5b3VyIGdyaWQgY29udGVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLWNvbnRhaW5lcl0gLSBhIHdpZHRoIHRvIGxpbWl0IHRoZSBjb250YWluZXIgdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskZ3JpZC1jb250YWluZXItcGFkZGluZ10gLSBwYWRkaW5ncyBvZiB0aGUgY29udGFpbmVyLlxuQG1peGluIHh5LWdyaWQtY29udGFpbmVyKFxuICAkd2lkdGg6ICRncmlkLWNvbnRhaW5lcixcbiAgJHBhZGRpbmc6ICRncmlkLWNvbnRhaW5lci1wYWRkaW5nXG4pIHtcbiAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJHBhZGRpbmcsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgeW91ciBmbGV4IGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtob3Jpem9udGFsXSAtIEVpdGhlciBob3Jpem9udGFsIG9yIHZlcnRpY2FsIGRpcmVjdGlvbiBvZiBjZWxscyB3aXRoaW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkd3JhcCBbdHJ1ZV0gLSBJZiB0aGUgY2VsbHMgd2l0aGluIHNob3VsZCB3cmFwIG9yIG5vdC5cbkBtaXhpbiB4eS1ncmlkKFxuICAkZGlyZWN0aW9uOiBob3Jpem9udGFsLFxuICAkd3JhcDogdHJ1ZVxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gPT0gJ2hvcml6b250YWwnLCByb3csIGNvbHVtbik7XG4gICR3cmFwOiBpZigkd3JhcCwgd3JhcCwgbm93cmFwKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6ICRkaXJlY3Rpb24gJHdyYXA7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXQncyBjb252ZXJ0IG91ciB2YWx1ZSB0byBwaXhlbHMgdG9vXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJyUnIHtcbiAgICAkdmFsdWU6ICgkdmFsdWUgLyAxMDAlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIC8vICdweCdcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIHtcbiAgICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgLy8gYXNzdW1lIHRoYXQgbGluZS1oZWlnaHRzIGdyZWF0ZXIgdGhhbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlIHRoZSBwZXJjZW50YWdlIHNpemUgb2YgYSBjZWxsLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHNpemUgWyRncmlkLWNvbHVtbnNdIC0gU2l6ZSB0byBtYWtlIHRoZSBjZWxsLiBZb3UgY2FuIHBhc3MgYSB2YWx1ZSBpbiBtdWx0aXBsZSBmb3JtYXRzLCBzdWNoIGFzIGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzNgLlxuQGZ1bmN0aW9uIHh5LWNlbGwtc2l6ZShcbiAgJHNpemU6ICRncmlkLWNvbHVtbnNcbikge1xuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgbiBvZiBuIGFuZCBudW1iZXIgY291bnRzXG4gIEBpZiB0eXBlLW9mKCRzaXplKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJHNpemUpID09ICclJyB7XG4gICAgICAkc2l6ZTogJHNpemU7XG4gICAgfVxuICAgIEBlbHNlIGlmICRzaXplIDwgMSB7XG4gICAgICAkc2l6ZTogcGVyY2VudGFnZSgkc2l6ZSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRzaXplOiBwZXJjZW50YWdlKCRzaXplIC8gJGdyaWQtY29sdW1ucyk7XG4gICAgfVxuICB9XG5cbiAgLy8gUGFyc2luZyBcIm4gb2YgblwiIG9yIFwibi9uXCIgZXhwcmVzc2lvbnNcbiAgQGVsc2UgaWYgdHlwZS1vZigkc2l6ZSkgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRzaXplKSAhPSAzIHtcbiAgICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciB4eS1jZWxsLXNpemUoKS4gVXNlIHRoZSBmb3JtYXQgXCJuIG9mIG5cIiBvciBcIm4vblwiLic7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRzaXplOiBwZXJjZW50YWdlKG50aCgkc2l6ZSwgMSkgLyBudGgoJHNpemUsIDMpKTtcbiAgICB9XG4gIH1cbiAgLy8gQW55dGhpbmcgZWxzZSBpcyBpbmNvcnJlY3RcbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciB4eS1jZWxsLXNpemUoKS4gVXNlIGEgbnVtYmVyLCBkZWNpbWFsLCBwZXJjZW50YWdlLCBvciBcIm4gb2YgblwiIC8gXCJuL25cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkc2l6ZTtcbn1cblxuLy8vIFNldHMgYmFzZSBmbGV4IHByb3BlcnRpZXMgZm9yIGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIEFjY2VwdHMgYGZ1bGxgLCBgYXV0b2AsIGBzaHJpbmtgIG9yIGBncm93YC5cbkBtaXhpbiB4eS1jZWxsLWJhc2UoJHNpemU6IGZ1bGwpIHtcbiAgQGlmKCRzaXplID09ICdmdWxsJykge1xuICAgIC8vIFRoaXMgaXMgdGhlIGJhc2Ugc3R5bGUsIGFsbCBvdGhlcnMgaW5oZXJpdCBmcm9tIGl0XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgbWluLWhlaWdodDogMHB4O1xuICAgIG1pbi13aWR0aDogMHB4O1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnYXV0bycpIHtcbiAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnc2hyaW5rJykge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnZ3JvdycpIHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxufVxuXG4vLy8gUmVzZXRzIGEgY2VsbHMgd2lkdGggKG9yIGhlaWdodCBpZiB2ZXJ0aWNhbCBpcyB0cnVlKSBhcyB3ZWxsIGFzIHN0cmlwcyBpdHMgZ3V0dGVycy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXJlc2V0KCR2ZXJ0aWNhbDogdHJ1ZSkge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgd2lkdGgsIGhlaWdodCk7XG4gICN7JGRpcmVjdGlvbn06IGF1dG87XG4gIG1heC0jeyRkaXJlY3Rpb259OiBub25lO1xufVxuXG4vLyBTZXRzIG91ciBjZWxsIHdpZHRocyBvciBoZWlnaHRzIGRlcGVuZGluZyBvbiBndXR0ZXIgdHlwZS5cbkBtaXhpbiAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkbWFyZ2luLWd1dHRlciwgJHZlcnRpY2FsKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCBoZWlnaHQsIHdpZHRoKTtcbiAgQGlmKCRzaXplID09ICdmdWxsJykge1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsIDEwMCUsIGNhbGMoMTAwJSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICAgICN7JGRpcmVjdGlvbn06ICR2YWw7XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdhdXRvJykge1xuICAgICN7JGRpcmVjdGlvbn06IGF1dG87XG4gICAgJHZhbDogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgMTAwJSwgY2FsYygxMDAlIC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgJHZhbDogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgI3t4eS1jZWxsLXNpemUoJHNpemUpfSwgY2FsYygje3h5LWNlbGwtc2l6ZSgkc2l6ZSl9IC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gICAgI3skZGlyZWN0aW9ufTogJHZhbDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGNlbGwgZm9yIHlvdXIgZ3JpZC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoZGVmYXVsdCkgZm9yIDEwMCUgd2lkdGgsIGBhdXRvYCB0byB1c2UgdXAgYXZhaWxhYmxlIHNwYWNlIGFuZCBgc2hyaW5rYCB0byB1c2UgdXAgb25seSByZXF1aXJlZCBzcGFjZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkYnAtaXMtZmFsbGJhY2s6IGZhbHNlO1xuXG4gIEBpZigkYnJlYWtwb2ludCA9PSBudWxsKSB7XG4gICAgLy8gSWYgYCRicC1zaXplYCBpcyBhdmFpbGFibGUgdGhlbiB1c2UgdGhpcywgb3RoZXJ3aXNlIHJldmVydCB0byB0aGUgc21hbGxlc3QgYnAuXG4gICAgQGlmKHZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkgYW5kIHR5cGUtb2YoJC16Zi1zaXplKSAhPSAnbnVtYmVyJykgYW5kICQtemYtc2l6ZSAhPSBudWxsIHtcbiAgICAgICRicmVha3BvaW50OiAkLXpmLXNpemU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgICAgICRicC1pcy1mYWxsYmFjazogdHJ1ZTtcbiAgICB9XG4gIH1cblxuICAvLyBHZXQgdGhlIGd1dHRlciBmb3IgdGhlIGdpdmVuIGJyZWFrcG9pbnQvdmFsdWUuXG4gICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gIC8vIElmIHRoZSBicmVha3BvaW50IGlzIGEgZmFsbGJhY2ssIHVzZSBhIGZhbGxiYWNrIGd1dHRlciBhcyB3ZWxsXG4gIEBpZiAoJGJwLWlzLWZhbGxiYWNrID09IHRydWUgYW5kICRndXR0ZXIgPT0gbnVsbCkge1xuICAgICRndXR0ZXI6IDA7XG4gIH1cblxuICBAaWYoJGd1dHRlciAhPSBudWxsKSB7XG4gICAgLy8gQmFzZSBmbGV4IHByb3BlcnRpZXNcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoJHNpemUpO1xuXG4gICAgQGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJGd1dHRlciwgJHZlcnRpY2FsKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgMCwgJHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAaWYgJGd1dHRlci1vdXRwdXQge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ3h5LWNlbGw6IG5vIGd1dHRlcnMgd2VyZSBmb3VuZCBpbiBgJGd1dHRlcnNgIGZvciBcIiRicmVha3BvaW50OiAjeyRicmVha3BvaW50fVwiLCBjZWxsIHdhcyBub3QgZ2VuZXJhdGVkYCdcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHNpemVkIGdyaWQuIFVzZWQgdG8gZ2VuZXJhdGUgb3VyIGdyaWQgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoZGVmYXVsdCkgZm9yIDEwMCUgd2lkdGgsIGBhdXRvYCB0byB1c2UgdXAgYXZhaWxhYmxlIHNwYWNlIGFuZCBgc2hyaW5rYCB0byB1c2UgdXAgb25seSByZXF1aXJlZCBzcGFjZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXN0YXRpYyhcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuXG4gICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gICRndXR0ZXItcG9zaXRpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB0b3AgYm90dG9tLCBsZWZ0IHJpZ2h0KTtcblxuICBAaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJGd1dHRlciwgJHZlcnRpY2FsKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgMCwgJHZlcnRpY2FsKTtcbiAgfVxuXG4gIC8vIElmIHdlIHdhbnQgdG8gb3V0cHV0IHRoZSBndXR0ZXJzXG4gIEBpZigkZ3V0dGVyLW91dHB1dCkge1xuICAgIC8vIFRPRE86IEZpZ3VyZSBvdXQgaWYgd2UgbmVlZCB0byBwYXNzIGJyZWFrcG9pbnQgaW4gaGVyZSB0b28uXG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBTaXplcyBjaGlsZCBlbGVtZW50cyBzbyB0aGF0IGAkbmAgbnVtYmVyIG9mIGl0ZW1zIGFwcGVhciBvbiBlYWNoIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBlbGVtZW50cyB0byBkaXNwbGF5IHBlciByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJy5jZWxsJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gIG9yIGBwYWRkaW5nYC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgYnJlYWtwb2ludCB0byB1c2UgZm9yIHRoZSBjZWxsIGdlbmVyYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkc2l6ZTogcGVyY2VudGFnZSgxLyRuKTtcblxuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKCRzaXplLCAkZ3V0dGVyLW91dHB1dCwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbiwgJGJyZWFrcG9pbnQsICR2ZXJ0aWNhbCk7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENvbGxhcHNlcyB0aGUgZ3JpZCBhIGNlbGxzIHdpdGhpbiBpdC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWy5jZWxsXSAtIFRoZSBjaGlsZCBlbGVtZW50IHRvIHJlbW92ZSB0aGUgZ3V0dGVyIGZyb20uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUaGUgdHlwZSBvZiBndXR0ZXIgdG8gcmVtb3ZlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb25zIHRvIHJlbW92ZSBndXR0ZXJzIGZyb20uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJG1pbi1icmVha3BvaW50IFskLXpmLXplcm8tYnJlYWtwb2ludF0gLSBNaW5pbXVtIGJyZWFrcG9pbnQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGZvciB3aGljaCB0byBjb2xsYXBzZSB0aGUgZ3V0dGVyLlxuQG1peGluIHh5LWdyaWQtY29sbGFwc2UoXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRtaW4tYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnRcbikge1xuICAvLyBGaXJzdCwgbGV0cyBuZWdhdGUgYW55IG1hcmdpbnMgb24gdGhlIHRvcCBsZXZlbFxuICBAaWYgKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICRleGNsdWRlZC1icHM6IC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJG1pbi1icmVha3BvaW50KTtcblxuICAgIC8vIE91dHB1dCBuZXcgd2lkdGhzIHRvIG5vdCBpbmNsdWRlIGd1dHRlcnNcbiAgICBAZWFjaCAkYnAgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYoc2wtY29udGFpbigkZXhjbHVkZWQtYnBzLCAkYnApKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRpLCAkZ3V0dGVyLW91dHB1dDogZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnApIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgcGFkZGluZy0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIE9mZnNldHMgYSBjb2x1bW4gdG8gdGhlIHJpZ2h0L2JvdHRvbSBieSBgJG5gIGNvbHVtbnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkbiAtIFNpemUgdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgemYtY2VsbCgpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gTWFwIG9mIGd1dHRlcnMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIFRoZSB0eXBlIG9mIGd1dHRlciB0byB1c2UuIENhbiBiZSBgbWFyZ2luYCBvciBgcGFkZGluZ2Bcbi8vLyBAcGFyYW0ge051bWJlcnxBcnJheXxLZXl3b3JkfSAkYnJlYWtwb2ludCBbJC16Zi16ZXJvLWJyZWFrcG9pbnRdIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UgZm9yIGAkZ3V0dGVyc2AuIFNlZSBgLXpmLWJyZWFrcG9pbnQtdmFsdWUoKWAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgdGhlIG9mZnNldC4gSWYgc2V0IHRvIHRydWUgd2lsbCBhcHBseSBtYXJnaW4tdG9wIGluc3RlYWQuXG5AbWl4aW4geHktY2VsbC1vZmZzZXQoXG4gJG4sXG4gJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsLCAndG9wJywgJGdsb2JhbC1sZWZ0KTtcblxuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkYnJlYWtwb2ludCwgJGd1dHRlcnMpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG4gICAgJGd1dHRlci1tYXJnaW46IGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJywgJGd1dHRlciwgMCk7XG4gICAgJHNpemU6IGlmKCRndXR0ZXItbWFyZ2luID09IDAsICN7eHktY2VsbC1zaXplKCRuKX0sIGNhbGMoI3t4eS1jZWxsLXNpemUoJG4pfSArICN7JGd1dHRlci1tYXJnaW59KSk7XG5cbiAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skc2l6ZX07XG4gIH1cbn1cbiIsIi8vLyBNb2RpZmllcyBhIGdyaWQgdG8gZ2l2ZSBpdCBcImZyYW1lXCIgYmVoYXZpb3IgKG5vIG92ZXJmbG93LCBubyB3cmFwLCBzdHJldGNoIGJlaGF2aW9yKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVzdGVkIFtmYWxzZV0gLSBJcyBncmlkIG5lc3RlZCBvciBub3QuIElmIG5lc3RlZCBpcyB0cnVlIHRoaXMgc2V0cyB0aGUgZnJhbWUgdG8gMTAwJSBoZWlnaHQsIG90aGVyd2lzZSB3aWxsIGJlIDEwMHZoLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgW251bGxdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGluY2x1ZGUtYmFzZSBbdHJ1ZV0gLSBJbmNsdWRlIHRoZSBiYXNlIHN0eWxlcyB0aGF0IGRvbid0IHZhcnkgcGVyIGJyZWFrcG9pbnQuXG5AbWl4aW4geHktZ3JpZC1mcmFtZShcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJG5lc3RlZDogZmFsc2UsXG4gICRndXR0ZXJzOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJGluY2x1ZGUtYmFzZTogdHJ1ZVxuKSB7XG5cbiAgQGlmICRpbmNsdWRlLWJhc2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG5cbiAgQGlmICRicmVha3BvaW50ID09IG51bGwgYW5kIHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSgkdmVydGljYWwsICRuZXN0ZWQsICRndXR0ZXJzLCAkLXpmLXNpemUsIGZhbHNlKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEdldCBvdXIgZ3V0dGVycyBpZiBhcHBsaWNhYmxlXG4gICAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcblxuICAgIC8vIElmIHdlIGhhdmUgYSBndXR0ZXIsIGFkZCBpdCB0byB0aGUgd2lkdGgvaGVpZ2h0XG4gICAgQGlmICRndXR0ZXIge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKCN7JHVuaXR9ICsgI3skZ3V0dGVyfSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdncpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgaGVpZ2h0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICB3aWR0aDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBNb2RpZmllcyBhIGNlbGwgdG8gZ2l2ZSBpdCBcImJsb2NrXCIgYmVoYXZpb3IgKG92ZXJmbG93IGF1dG8sIGluZXJ0aWFsIHNjcm9sbGluZylcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuQG1peGluIHh5LWNlbGwtYmxvY2soXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkcHJvcGVydHk6IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCAnb3ZlcmZsb3cteScsICdvdmVyZmxvdy14Jyk7XG5cbiAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgfSBAZWxzZSB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xufVxuXG4vLy8gQ29udGFpbmVyIGZvciBpbnNpZGUgYSBncmlkIGZyYW1lIGNvbnRhaW5pbmcgbXVsdGlwbGUgYmxvY2tzLiBUeXBpY2FsbHkgdXNlZFxuLy8vIGFzIGEgbW9kaWZpZXIgZm9yIGEgYC5jZWxsYCB0byBhbGxvdyB0aGUgY2VsbCB0byBwYXNzIGFsb25nIGZsZXggc2l6aW5nXG4vLy8gY29uc3RyYWludHMgLyBmcm9tIHBhcmVudHMgdG8gY2hpbGRyZW4uXG5AbWl4aW4geHktY2VsbC1ibG9jay1jb250YWluZXIoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG5cbiAgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTtcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLCAuaDEsXG4gIGgyLCAuaDIsXG4gIGgzLCAuaDMsXG4gIGg0LCAuaDQsXG4gIGg1LCAuaDUsXG4gIGg2LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSwgLiN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29kZVxuICBjb2RlIHtcbiAgICBwYWRkaW5nOiAkY29kZS1wYWRkaW5nO1xuXG4gICAgYm9yZGVyOiAkY29kZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkY29kZS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGNvZGUtZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB9XG5cbiAgLy8gS2V5c3Ryb2tlc1xuICBrYmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAka2V5c3Ryb2tlLXBhZGRpbmc7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2V5c3Ryb2tlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGtleXN0cm9rZS1mb250O1xuICAgIGNvbG9yOiAka2V5c3Ryb2tlLWNvbG9yO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgka2V5c3Ryb2tlLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGtleXN0cm9rZS1yYWRpdXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWhlbHBlcnNcbi8vLy9cblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRvcCBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXlzIG5leHQgdG8gYWxsIGxpbmtzIHRoZWlyIFwiaHJlZlwiIHdoZW4gcHJpbnRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b25cbi8vLy9cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBidXR0b24gZWxlbWVudHMuXG4vLy8gQHR5cGUgRm9udFxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHdpZHRoIGZvciBob2xsb3cgb3V0bGluZSBidXR0b25zXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiAwLjc1cmVtLFxuICBkZWZhdWx0OiAwLjlyZW0sXG4gIGxhcmdlOiAxLjI1cmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gb3BhY2l0eSBmb3IgYSBkaXNhYmxlZCBidXR0b24uXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBob2xsb3cgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJSAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWw6IGZsaXAgZnJvbSBtYXJnaW4tcmlnaHQgdG8gbWFyZ2luLWxlZnQgZm9yIGRlZmF1bHRzXG5AaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG59XG5cbi8vLyB0cmFuc2l0aW9ucyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gQWRkaXRpb25hbCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIC5leHBhbmRlZFxuLy8vIEB0eXBlIEJvb2xlYW5cbiRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuXG4gIEBpZiAodHlwZS1vZigkYnV0dG9uLXBhZGRpbmcpID09ICdtYXAnKSB7XG4gICAgQGVhY2ggJHNpemUsICRwYWRkaW5nIGluICRidXR0b24tcGFkZGluZyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xuICB9XG5cbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG4gIGZvbnQtZmFtaWx5OiAkYnV0dG9uLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLy8gRXhwYW5kcyBhIGJ1dHRvbiB0byBtYWtlIGl0IGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIHRoZSBleHBhbmQgYmVoYXZpb3IuIFNldCB0byBgZmFsc2VgIHRvIHJldmVyc2UgdGhpcyBiZWhhdmlvci5cbkBtaXhpbiBidXR0b24tZXhwYW5kKCRleHBhbmQ6IHRydWUpIHtcbiAgQGlmICRleHBhbmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gYnV0dG9uLXN0eWxlKFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzc1xuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIEBpZiAkYmFja2dyb3VuZC1ob3ZlciA9PSBhdXRvIHtcbiAgICAkYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJhY2tncm91bmQsICRsaWdodG5lc3M6ICRiYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzcyk7XG4gIH1cblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBSZW1vdmVzIGJhY2tncm91bmQgZmlsbCBvbiBob3ZlciBhbmQgZm9jdXMgZm9yIGhvbGxvdyBidXR0b25zLlxuQG1peGluIGJ1dHRvbi1ob2xsb3cge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdIHtcbiAgICAmLFxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24taG9sbG93LXN0eWxlKFxuICAkY29sb3I6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzLFxuICAkYm9yZGVyLXdpZHRoOiAkYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhcbikge1xuICAkY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGhvdmVyLWxpZ2h0bmVzcyk7XG5cbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgICYuZGlzYWJsZWQsXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGRpc2FibGVkIHN0eWxlcyB0byBhIGJ1dHRvbiBieSBmYWRpbmcgdGhlIGVsZW1lbnQsIHJlc2V0aW5nIHRoZSBjdXJzb3IsIGFuZCBkaXNhYmxpbmcgcG9pbnRlciBldmVudHMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBkaXNhYmxlZCBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gYnV0dG9uLWRpc2FibGVkKFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRidXR0b24tY29sb3Jcbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRyb3Bkb3duIGFycm93IHRvIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSBbMC40ZW1dIC0gU2l6ZSBvZiB0aGUgYXJyb3cuIFdlIHJlY29tbWVuZCB1c2luZyBhbiBgZW1gIHZhbHVlIHNvIHRoZSB0cmlhbmdsZSBzY2FsZXMgd2hlbiB1c2VkIGluc2lkZSBkaWZmZXJlbnQgc2l6ZXMgb2YgYnV0dG9ucy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgW3doaXRlXSAtIENvbG9yIG9mIHRoZSBhcnJvdy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9mZnNldCBbJGJ1dHRvbi1wYWRkaW5nXSAtIERpc3RhbmNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uLiBEZWZhdWx0cyB0byB3aGF0ZXZlciB0aGUgcmlnaHQgcGFkZGluZyBvZiBhIGJ1dHRvbiBpcy5cbkBtaXhpbiBidXR0b24tZHJvcGRvd24oXG4gICRzaXplOiAwLjRlbSxcbiAgJGNvbG9yOiAkd2hpdGUsXG4gICRvZmZzZXQ6IGdldC1zaWRlKCRidXR0b24tcGFkZGluZywgcmlnaHQpXG4pIHtcbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkc2l6ZSwgJGNvbG9yLCBkb3duKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTsgLy8gQWxpZ25zIHRoZSBhcnJvdyB3aXRoIHRoZSB0ZXh0IG9mIHRoZSBidXR0b25cblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogI3skZ2xvYmFsLXJpZ2h0fTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG59XG5cbi8vLyBBZGRzIGFsbCBzdHlsZXMgZm9yIGEgYnV0dG9uLiBGb3IgbW9yZSBncmFudWxhciBjb250cm9sIG92ZXIgc3R5bGVzLCB1c2UgdGhlIGluZGl2aWR1YWwgYnV0dG9uIG1peGlucy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gbWFrZSB0aGUgYnV0dG9uIGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0eWxlIFtzb2xpZF0gLSBTZXQgdG8gYGhvbGxvd2AgdG8gY3JlYXRlIGEgaG9sbG93IGJ1dHRvbi4gVGhlIGNvbG9yIGRlZmluZWQgaW4gYCRiYWNrZ3JvdW5kYCB3aWxsIGJlIHVzZWQgYXMgdGhlIHByaW1hcnkgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24oXG4gICRleHBhbmQ6IGZhbHNlLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRzdHlsZTogJGJ1dHRvbi1maWxsXG4pIHtcbiAgQGluY2x1ZGUgYnV0dG9uLWJhc2U7XG5cbiAgQGlmICRzdHlsZSA9PSBzb2xpZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiYWNrZ3JvdW5kLCAkYmFja2dyb3VuZC1ob3ZlciwgJGNvbG9yKTtcbiAgfVxuICBAZWxzZSBpZiAkc3R5bGUgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG5cbiAgQGlmICRleHBhbmQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uIHtcbiAgLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZXhwYW5kZWQgeyBAaW5jbHVkZSBidXR0b24tZXhwYW5kOyB9XG5cbiAgICBAaWYgJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkIHtcbiAgICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IG9ubHkpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LW9ubHktZXhwYW5kZWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IGRvd24pIHtcbiAgICAgICAgICAgICYuI3skc2l6ZX0tZG93bi1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSkge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29sb3JzXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICAmLiN7JG5hbWV9LmRyb3Bkb3duOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3R5bGVcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcblxuICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQoJGNvbG9yLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhvbGxvdyBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICYuaG9sbG93IHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2xlYXIgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGNsZWFyIHtcbiAgICAgICYuY2xlYXIge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlO1xuXG4gICAgICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICYsICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuXG4gICAgICAgICAgICAmLCAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICYsXG4gICAgICAgICAgICAgICYuZGlzYWJsZWQsXG4gICAgICAgICAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd24gYXJyb3dcbiAgICAmLmRyb3Bkb3duIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kcm9wZG93bjtcblxuICAgICAgQGlmICRidXR0b24tZmlsbCA9PSBob2xsb3cge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuaG9sbG93LCAmLmNsZWFyIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbiB3aXRoIGRyb3Bkb3duIGFycm93IG9ubHlcbiAgICAmLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICAgIHRvcDogLTAuMWVtO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIH1cbiAgfVxuXG4gIGEuYnV0dG9uIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBGb250IGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgcGxhY2Vob2xkZXIgdGV4dCB3aXRoaW4gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgRm9udFxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGZvY3VzZWQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgZm9jdXNlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDIgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGluc2lkZSB0ZXh0IGlucHV0cyB3aGVuIG5vdCBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBvdXRzaWRlIHRleHQgaW5wdXRzIHdoZW4gZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3Vyc29yIHRvIHVzZSB3aGVuIGhvdmVyaW5nIG92ZXIgYSBkaXNhYmxlZCB0ZXh0IGlucHV0LlxuLy8vIEB0eXBlIEN1cnNvclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cbi8vLyBQcm9wZXJ0aWVzIHRvIHRyYW5zaXRpb24gb24gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyB0aGUgdXAvZG93biBidXR0b25zIHRoYXQgQ2hyb21lIGFuZCBGaXJlZm94IGFkZCB0byBgPGlucHV0IHR5cGU9J251bWJlcic+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gUmFkaXVzIGZvciB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgZm9ybSBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93O1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tdGV4dCB7XG4gIC8vIFRleHQgaW5wdXRzXG4gICN7dGV4dC1pbnB1dHMoKX0sXG4gIHRleHRhcmVhIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIFRleHQgYXJlYXNcbiAgdGV4dGFyZWEge1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICZbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgLy8gRGlzYWJsZWQvcmVhZG9ubHkgc3RhdGVcbiAgICAmOmRpc2FibGVkLFxuICAgICZbcmVhZG9ubHldIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvbiBidXR0b24tbGlrZSBpbnB1dHNcbiAgW3R5cGU9J3N1Ym1pdCddLFxuICBbdHlwZT0nYnV0dG9uJ10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tYnV0dG9uLXJhZGl1cztcbiAgfVxuXG4gIC8vIFJlc2V0IE5vcm1hbGl6ZSBzZXR0aW5nIGNvbnRlbnQtYm94IHRvIHNlYXJjaCBlbGVtZW50c1xuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAvLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4gIFt0eXBlPSdudW1iZXInXSB7XG4gICAgQGlmIG5vdCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuXG4gICAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3IgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgZm9ybSBsYWJlbHMuIFRoZSBoaWdoZXIgdGhlIG51bWJlciwgdGhlIG1vcmUgc3BhY2UgYmV0d2VlbiB0aGUgbGFiZWwgYW5kIGl0cyBpbnB1dCBmaWVsZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjggIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcblxuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuQG1peGluIGZvcm0tbGFiZWwtbWlkZGxlIHtcbiAgJGlucHV0LWJvcmRlci13aWR0aDogZ2V0LWJvcmRlci12YWx1ZSgkaW5wdXQtYm9yZGVyLCB3aWR0aCk7XG5cbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyAyICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkpIDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tbGFiZWwge1xuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybS1sYWJlbDtcblxuICAgICYubWlkZGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHN0eWxlIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1oZWxwdGV4dCB7XG4gIC5oZWxwLXRleHQge1xuICAgICRtYXJnaW4tdG9wOiAoJGZvcm0tc3BhY2luZyAqIDAuNSkgKiAtMTtcblxuICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGhlbHB0ZXh0LWZvbnQtc2l6ZTtcbiAgICBmb250LXN0eWxlOiAkaGVscHRleHQtZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlbHB0ZXh0LWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0L3JpZ2h0IHBhZGRpbmcgb2YgYW4gcHJlL3Bvc3RmaXhlZCBpbnB1dCBsYWJlbFxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXgge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqICRpbnB1dC1saW5lLWhlaWdodCkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIHRhYmxlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cywgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJWlucHV0LWdyb3VwLWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZzogMCAkaW5wdXQtcHJlZml4LXBhZGRpbmc7XG4gICAgYm9yZGVyOiAkaW5wdXQtcHJlZml4LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtcHJlZml4LWJhY2tncm91bmQ7XG5cbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXByZWZpeC1ib3JkZXIpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbixcbiAgICBsYWJlbCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcblxuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgfVxuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBkcm9wZG93biB0cmlhbmdsZSBpbnNpZGUgc2VsZWN0IG1lbnVzLiBTZXQgdG8gYHRyYW5zcGFyZW50YCB0byByZW1vdmUgaXQgZW50aXJlbHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLXNlbGVjdCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmICRzZWxlY3QtdHJpYW5nbGUtY29sb3IgIT0gdHJhbnNwYXJlbnQge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdHJpYW5nbGUoJHNlbGVjdC10cmlhbmdsZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRnbG9iYWwtcmlnaHQgKC0kZm9ybS1zcGFjaW5nKSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG5cbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICgkZm9ybS1zcGFjaW5nICogMS41KTtcbiAgfVxuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gdXNlIGZvciBsYWJlbHMgb2YgaW52YWxpZCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWxpZ2h0ZW4gWzEwJV0gLSBMaWdodG5lc3MgbGV2ZWwgb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gZm9ybS1pbnB1dC1lcnJvcihcbiAgJGJhY2tncm91bmQ6ICRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQsXG4gICRiYWNrZ3JvdW5kLWxpZ2h0ZW46IDEwJVxuKSB7XG4gICY6bm90KDpmb2N1cykge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KCRiYWNrZ3JvdW5kLCAkd2hpdGUsICRiYWNrZ3JvdW5kLWxpZ2h0ZW4pO1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBlcnJvciBzdHlsZXMgdG8gYSBmb3JtIGVsZW1lbnQsIHVzaW5nIHRoZSB2YWx1ZXMgaW4gdGhlIHNldHRpbmdzIGZpbGUuXG5AbWl4aW4gZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXNwYWNpbmcgKiAtMC41O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gIGZvbnQtc2l6ZTogJGlucHV0LWVycm9yLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1lcnJvci1mb250LXdlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1lcnJvci1jb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1lcnJvciB7XG4gIEBpZiAkYWJpZGUtaW5wdXRzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgaW52YWxpZCBpbnB1dHNcbiAgICAuaXMtaW52YWxpZC1pbnB1dCB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWlucHV0LWVycm9yO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkYWJpZGUtbGFiZWxzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgbGFiZWxzIG9mIGludmFsaWQgb3V0cHV0c1xuICAgIC5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZvcm0gZXJyb3IgZWxlbWVudFxuICAuZm9ybS1lcnJvciB7XG4gICAgQGluY2x1ZGUgZm9ybS1lcnJvcjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjY29yZGlvbiBncm91cC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgcGx1cyBhbmQgbWludXMgaWNvbnMgdG8gdGhlIHNpZGUgb2YgZWFjaCBhY2NvcmRpb24gdGl0bGUuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYWNjb3JkaW9uIHRpdGxlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gYWNjb3JkaW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgc2FtZSBlbGVtZW50IHRoYXQgZ2V0cyBgZGF0YS1hY2NvcmRpb25gLlxuQG1peGluIGFjY29yZGlvbi1jb250YWluZXIgKFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1iYWNrZ3JvdW5kXG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAmW2Rpc2FibGVkXSB7XG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGlzdCBpdGVtIHdpdGhpbiBhbiBhY2NvcmRpb24gdWwuXG5AbWl4aW4gYWNjb3JkaW9uLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cyAwIDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHRpdGxlIG9mIGFuIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaW5rIHdpdGhpbiBhbiBhY2NvcmRpb24gaXRlbS5cbkBtaXhpbiBhY2NvcmRpb24tdGl0bGUgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplLFxuICAkY29sb3I6ICRhY2NvcmRpb24taXRlbS1jb2xvcixcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gJiB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxuXG4gIEBpZiAkYWNjb3JkaW9uLXBsdXNtaW51cyB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICBjb250ZW50OiAnKyc7XG4gICAgfVxuXG4gICAgLmlzLWFjdGl2ZSA+ICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDEzJztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhY2NvcmRpb24gY29udGVudC4gQXBwbHkgdGhpcyB0byB0aGUgY29udGVudCBwYW5lIGJlbG93IGFuIGFjY29yZGlvbiBpdGVtJ3MgdGl0bGUuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRlbnQgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmcsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWNvbnRlbnQtY29sb3Jcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQgPiAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYWNjb3JkaW9uIHtcbiAgLmFjY29yZGlvbiB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWl0ZW07XG4gIH1cblxuICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tdGl0bGU7XG4gIH1cblxuICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250ZW50O1xuICB9XG59XG4iLCIvLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvbi1tZW51XG4vLy8vXG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgbmVzdGVkIG1hcmdpblxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgYWNjb3JkaW9uIG1lbnVzIGhhdmUgdGhlIGRlZmF1bHQgYXJyb3cgc3R5bGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBib3JkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgTGlzdFxuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlciAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSB0b2dnbGUgYmFja2dyb3VuZCB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHRvZ2dsZSBiYWNrZ3JvdW5kIGhlaWdodC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuQG1peGluIHpmLWFjY29yZGlvbi1tZW51LWxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZSwgJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplIC8gMik7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tbGVmdCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMXJlbTtcbiAgfVxufVxuQG1peGluIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnUge1xuXG4gIC5hY2NvcmRpb24tbWVudSB7XG4gICAgQGlmICRhY2NvcmRpb25tZW51LWJvcmRlciB7XG4gICAgICBib3JkZXItYm90dG9tOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgQGlmICRhY2NvcmRpb25tZW51LWJvcmRlciB7XG4gICAgICAgIGJvcmRlci10b3A6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgICB9XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIEBpZiAkYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgICBwYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5pcy1hY2NvcmRpb24tc3VibWVudSBhIHtcbiAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgICYuYWxpZ24tI3skZ2xvYmFsLXJpZ2h0fSB7XG4gICAgICAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbiwgcmlnaHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1hcnJvd3Mge1xuICAgICAgQGluY2x1ZGUgemYtYWNjb3JkaW9uLW1lbnUtbGVmdC1yaWdodC1hcnJvd3M7XG5cbiAgICAgIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD0ndHJ1ZSddID4gYTo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1hY2NvcmRpb24tc3VibWVudSBsaSB7XG4gICAgQGlmICRhY2NvcmRpb25tZW51LWJvcmRlciB7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICBib3JkZXItbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuaGFzLXN1Ym1lbnUtdG9nZ2xlID4gYSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuICB9XG5cbiAgLy8gU3VibWVudSB0b2dnbGVcbiAgLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1yaWdodH06IDA7XG5cbiAgICB3aWR0aDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4gICAgaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ7XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjtcblxuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kIHtcbiAgICAgIGJhY2tncm91bmQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgLy8gQWRkIHRoZSBhcnJvdyB0byB0aGUgdG9nZ2xlXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKDZweCwgJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuXG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLy8gUm90YXRlIHRoZSBhcnJvdyB3aGVuIG1lbnUgaXMgb3BlblxuICAuc3VibWVudS10b2dnbGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIH1cblxuICAuc3VibWVudS10b2dnbGUtdGV4dCB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgcGlsbCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgc2ltcGxlIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYW4gaWNvbiBhbmQgdGV4dCBpbiBhIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIG1lbnUgc3RhdGUuIElmIHRydWUsIHRoaXMgZHVwbGljYXRlIGBhY3RpdmVgIHdpdGggYGlzLWFjdGl2ZWAuIFxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBhY3RpdmVgIHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIG1lbnUgY2VudGVyZWQuIElmIHRydWUsIHRoaXMgZHVwbGljYXRlIGAubWVudS1jZW50ZXJlZCA+IC5tZW51YCB3aXRoIGAubWVudS5hbGlnbi1jZW50ZXJgLiBcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCBgbWVudS1jZW50ZXJlZGAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgdXNpbmcgYGljb24tKmAgY2xhc3NlcyB3aXRob3V0IGAuaWNvbnNgIGNsYXNzZXNcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCB0aGlzIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LWljb25zLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgTWVudS5cbkBtaXhpbiBtZW51LWJhc2Uge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gIGxpIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIH1cblxuICBhLFxuICAuYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJG1lbnUtaXRlbXMtcGFkZGluZztcbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvZiBpbm5lciBlbGVtZW50c1xuICBpbnB1dCxcbiAgc2VsZWN0LFxuICBhLFxuICBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICBpbnB1dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi8vLyBFeHBhbmRzIHRoZSBpdGVtcyBvZiBhIE1lbnUsIHNvIGVhY2ggaXRlbSBpcyB0aGUgc2FtZSB3aWR0aC5cbkBtaXhpbiBtZW51LWV4cGFuZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgID4gbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBbGlnbiBtZW51IGl0ZW1zLlxuQG1peGluIG1lbnUtYWxpZ24oJGFsaWdubWVudCkge1xuICBAaWYgJGFsaWdubWVudCA9PSBsZWZ0IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYudmVydGljYWwgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gY2VudGVyIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIGEgTWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgW2hvcml6b250YWxdIC0gRGlyZWN0aW9uIG9mIHRoZSBNZW51LiBDYW4gYmUgYGhvcml6b250YWxgIG9yIGB2ZXJ0aWNhbGAuXG5AbWl4aW4gbWVudS1kaXJlY3Rpb24oJGRpcjogaG9yaXpvbnRhbCkge1xuICBAaWYgJGRpciA9PSBob3Jpem9udGFsIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIG1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzaW1wbGUgTWVudSwgd2hpY2ggaGFzIG5vIHBhZGRpbmcgb3IgaG92ZXIgc3RhdGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFskZ2xvYmFsLWxlZnRdIC0gRGlyZWN0aW9uIG9mIHRoZSBtZW51LiBUaGlzIGVmZmVjdHMgdGhlIHNpZGUgb2YgdGhlIGA8bGk+YCB0aGF0IHJlY2VpdmVzIHRoZSBtYXJnaW4uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXJnaW4gWyRtZW51LXNpbXBsZS1tYXJnaW5dIC0gVGhlIG1hcmdpbiB0byBhcHBseSB0byBlYWNoIGA8bGk+YC5cbkBtaXhpbiBtZW51LXNpbXBsZSgkZGlyOiAkZ2xvYmFsLWxlZnQsICRtYXJnaW46ICRtZW51LXNpbXBsZS1tYXJnaW4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIGxpICsgbGkge1xuICAgIG1hcmdpbi0jeyRkaXJ9OiAkbWFyZ2luO1xuICB9XG5cbiAgYSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbmVzdGVkIE1lbnUsIGJ5IGFkZGluZyBgbWFyZ2luLWxlZnRgIHRvIHRoZSBtZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRtYXJnaW4gWyRtZW51LW5lc3RlZC1tYXJnaW5dIC0gTGVuZ3RoIG9mIHRoZSBtYXJnaW4uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbmVzdGVkLWFsaWdubWVudCBbbGVmdF0gLSBBbGlnbm1lbnQgb2YgdGhlIG5lc3RlZCBjbGFzc1xuQG1peGluIG1lbnUtbmVzdGVkKFxuICAkbWFyZ2luOiAkbWVudS1uZXN0ZWQtbWFyZ2luLFxuICAkbmVzdGVkLWFsaWdubWVudDogbGVmdFxuKSB7XG4gIEBpZiAkbmVzdGVkLWFsaWdubWVudCA9PSByaWdodCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRtYXJnaW47XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgfVxuICBAZWxzZSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG1hcmdpbjtcbiAgfVxuXG59XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgaWNvbnMgaW4gbWVudXMuXG5AbWl4aW4gbWVudS1pY29ucygpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgaW1nLFxuICAgIGksXG4gICAgc3ZnIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICsgc3BhbiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHBvc2l0aW9uIGNsYXNzZXMgZm9yIGljb25zIHdpdGhpbiBhIG1lbnUuXG5AbWl4aW4gbWVudS1pY29uLXBvc2l0aW9uKCRwb3NpdGlvbjogbGVmdCwgJHNwYWNpbmc6ICRtZW51LWljb24tc3BhY2luZykge1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAkc3BhY2luZztcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAkc3BhY2luZyBhdXRvIDA7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZW51LXRleHQge1xuICBwYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcblxuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5AbWl4aW4gbWVudS1zdGF0ZS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAkbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlO1xuICBjb2xvcjogJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUge1xuICAubWVudSB7XG4gICAgQGluY2x1ZGUgbWVudS1iYXNlO1xuXG4gICAgLy8gRGVmYXVsdCBvcmllbnRhdGlvbjogaG9yaXpvbnRhbFxuICAgICYsICYuaG9yaXpvbnRhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICB9XG5cbiAgICAvLyBWZXJ0aWNhbCBvcmllbnRhdGlvbiBtb2RpZmllclxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggbW9kaWZpZXIgZm9yIGhvcml6b250YWwgb3JpZW50YXRpb25cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgIH1cblxuICAgIC8vIFNpbXBsZVxuICAgICYuc2ltcGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc2ltcGxlO1xuICAgIH1cblxuICAgIC8vIEJyZWFrcG9pbnQgc3BlY2lmaWMgdmVyc2lvbnNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogZmFsc2UpIHtcbiAgICAgICYuI3skLXpmLXNpemV9LWhvcml6b250YWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tdmVydGljYWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXNpbXBsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmLm5lc3RlZCB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZDtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJhc2UgU3R5bGVzXG4gICAgJi5pY29ucyB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgIH1cblxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1pY29ucy1iYWNrLWNvbXBhdCB7XG4gICAgICAmLmljb24tdG9wLFxuICAgICAgJi5pY29uLXJpZ2h0LFxuICAgICAgJi5pY29uLWJvdHRvbSxcbiAgICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29ucztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJY29uIExlZnRcbiAgICAmLmljb24tbGVmdCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBSaWdodFxuICAgICYuaWNvbi1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24ocmlnaHQpO1xuICAgIH1cblxuICAgIC8vIEljb24gVG9wXG4gICAgJi5pY29uLXRvcCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24odG9wKTtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJvdHRvbVxuICAgICYuaWNvbi1ib3R0b20ge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKGJvdHRvbSk7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgfVxuICAgIFxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1zdGF0ZS1iYWNrLWNvbXBhdCB7XG4gICAgICAuYWN0aXZlID4gYSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtc3RhdGUtYWN0aXZlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGxlZnRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1sZWZ0fSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGxlZnQpO1xuICAgIH1cblxuICAgIC8vIEFsaWduIHJpZ2h0XG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24ocmlnaHQpO1xuXG4gICAgICAubmVzdGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJG5lc3RlZC1hbGlnbm1lbnQ6IHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiBjZW50ZXJcbiAgICAmLmFsaWduLWNlbnRlciB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGNlbnRlcik7XG4gICAgfVxuXG4gICAgLm1lbnUtdGV4dCB7XG4gICAgICBAaW5jbHVkZSBtZW51LXRleHQ7XG4gICAgfVxuICB9XG5cbiAgQGlmICRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0IHtcbiAgICAubWVudS1jZW50ZXJlZCB7XG4gICAgICA+IC5tZW51IHtcbiAgICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmV2ZW50IEZPVUMgd2hlbiB1c2luZyB0aGUgUmVzcG9uc2l2ZSBNZW51IHBsdWdpblxuICAubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYmFkZ2Vcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGUgdGV4dCBjb2xvciBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBiYWRnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmFkZ2UtcGFkZGluZzogMC4zZW0gIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGEgYmFkZ2UuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgYmFkZ2UuXG5AbWl4aW4gYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogJGJhZGdlLW1pbndpZHRoO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgZm9udC1zaXplOiAkYmFkZ2UtZm9udC1zaXplO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJhZGdlIHtcbiAgLmJhZGdlIHtcbiAgICBAaW5jbHVkZSBiYWRnZTtcblxuICAgIGJhY2tncm91bmQ6ICRiYWRnZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYmFkZ2UtY29sb3I7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRiYWRnZS1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRjb2xvciwgKCRiYWRnZS1jb2xvciwgJGJhZGdlLWNvbG9yLWFsdCkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWRjcnVtYnNcbi8vLy9cblxuLy8vIE1hcmdpbiBhcm91bmQgYSBicmVhZGNydW1icyBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgYWN0aXZlIGJyZWFkY3J1bWIgbGluay5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gT3BhY2l0eSBvZiBkaXNhYmxlZCBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBiZXR3ZWVuIGJyZWFkY3J1bWIgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIG1ha2VzIGJyZWFkY3J1bWIgbGlua3MgdXBwZXJjYXNlLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBhIHNlcGVyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBJZiBpdCBleGlzdHMgJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2ggaXMgdXNlZCB0byBidWlsZCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3IuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCkge1xuICAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6ICRicmVhZGNydW1icy1pdGVtLXNsYXNoO1xufVxuXG4vLy8gVXNlZCBjaGFyYWN0ZXIgZm9yIHRoZSBicmVhZGNydW1iIHNlcGFyYXRvci5cbi8vLyBAdHlwZSBDb250ZW50XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbTogJy8nICFkZWZhdWx0O1xuXG4vLy8gVXNlZCBjaGFyYWN0ZXIgZm9yIHRoZSBicmVhZGNydW1iIHNlcGFyYXRvciBpbiBydGwgbW9kZS5cbi8vLyBAdHlwZSBDb250ZW50XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGw6ICdcXFxcJyAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vIElmIGl0IGV4aXN0cyAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvciBpcyB1c2VkIHRvIGJ1aWxkICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvci4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yKSB7XG4gICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3I7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBicmVhZGNydW1icyBjb250YWluZXIsIGFsb25nIHdpdGggdGhlIHN0eWxlcyBmb3IgdGhlIGA8bGk+YCBhbmQgYDxhPmAgZWxlbWVudHMgaW5zaWRlIG9mIGl0LlxuQG1peGluIGJyZWFkY3J1bWJzLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICRicmVhZGNydW1icy1tYXJnaW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLy8gSXRlbSB3cmFwcGVyXG4gIGxpIHtcbiAgICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gICAgZm9udC1zaXplOiAkYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU7XG4gICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIEBpZiAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3Ige1xuICAgICAgLy8gTmVlZCB0byBlc2NhcGUgdGhlIGJhY2tzbGFzaFxuICAgICAgJHNlcGFyYXRvcjogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAnbHRyJywgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0sICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bCk7XG5cbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgbWFyZ2luOiAwICRicmVhZGNydW1icy1pdGVtLW1hcmdpbjtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIGNvbnRlbnQ6ICRzZXBhcmF0b3I7XG4gICAgICAgICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnJlYWRjcnVtYnMge1xuICAuYnJlYWRjcnVtYnMge1xuICAgIEBpbmNsdWRlIGJyZWFkY3J1bWJzLWNvbnRhaW5lcjtcblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uLWdyb3VwXG4vLy8vXG5cbi8vLyBNYXJnaW4gZm9yIGJ1dHRvbiBncm91cHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbicgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIG51bWJlciBvZiBidXR0b25zIHRoYXQgY2FuIGJlIGluIGFuIGV2ZW4td2lkdGggYnV0dG9uIGdyb3VwLiAoT25seSBuZWVkZWQgd2hlbiAkZ2xvYmFsLWZsZXhib3g6IGZhbHNlOylcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2ICFkZWZhdWx0O1xuXG4vLy8gRGV0ZXJtaW5lcyBpZiAkYnV0dG9uLXJhZGl1cyBpcyBhcHBsaWVkIHRvIGVhY2ggYnV0dG9uIG9yIHRoZSBidXR0b24gZ3JvdXAgYXMgYSB3aG9sZS4gVXNlICRnbG9iYWwtcmFkaXVzIGluIF9zZXR0aW5ncy5zY3NzIHRvIGNoYW5nZSByYWRpdXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQWRkIHN0eWxlcyBmb3IgYSBidXR0b24gZ3JvdXAgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkY2hpbGQtc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwKFxuICAkY2hpbGQtc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJHNwYWNpbmc6ICRidXR0b25ncm91cC1zcGFjaW5nXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi1ib3R0b206ICRidXR0b25ncm91cC1tYXJnaW47XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuICBAZWxzZSB7XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG5cbiAgI3skY2hpbGQtc2VsZWN0b3J9IHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIH1cblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBmdWxsLXdpZHRoIGJ1dHRvbiBncm91cCwgbWFraW5nIGVhY2ggYnV0dG9uIGVxdWFsIHdpZHRoLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLWV4cGFuZChcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRzcGFjaW5nOiAkYnV0dG9uZ3JvdXAtc3BhY2luZyxcbiAgJGNvdW50OiBudWxsXG4pIHtcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAtJHNwYWNpbmc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gT25lIGNoaWxkXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gI3skc3BhY2luZ30pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFR3byBvciBtb3JlIGNoaWxkcmVlblxuICAgICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYnV0dG9uZ3JvdXAtZXhwYW5kLW1heCB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgICAmLCAmOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygje3BlcmNlbnRhZ2UoMSAvICRpKX0gLSAjeyRzcGFjaW5nfSk7XG4gICAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZyAqIC0kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC1zdGFjayhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG4vLy8gVW4tc3RhY2tzIHRoZSBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIHRoZSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLXVuc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24tZ3JvdXAge1xuICAuYnV0dG9uLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXA7XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggR3JvdXBcbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gQ29sb3JzXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgICAmLiN7JG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLFxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwsXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0YWNrO1xuXG4gICAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWV4cGFuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FsbG91dFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZhZGUgdmFsdWUgZm9yIGNhbGxvdXQgYmFja2dyb3VuZHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHN0eWxlIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBpbm5lciBwYWRkaW5nIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cywgaWYgdGhlIGNhbGxvdXQgaGFzIGEgZGFyayBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cyBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBbW91bnQgdG8gdGludCBsaW5rcyB1c2VkIHdpdGhpbiBjb2xvcmVkIHBhbmVscy4gU2V0IHRvIGBmYWxzZWAgdG8gZGlzYWJsZSB0aGlzIGZlYXR1cmUuXG4vLy8gQHR5cGUgTnVtYmVyIHwgQm9vbGVhblxuJGNhbGxvdXQtbGluay10aW50OiAzMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYSBjYWxsb3V0LCBpbmNsdWRpbmcgcGFkZGluZyBhbmQgbWFyZ2luLlxuQG1peGluIGNhbGxvdXQtYmFzZSgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46ICRjYWxsb3V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGNhbGxvdXQtcGFkZGluZztcblxuICBib3JkZXI6ICRjYWxsb3V0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGNhbGxvdXQtcmFkaXVzO1xuXG4gIC8vIFJlc3BlY3QgdGhlIHBhZGRpbmcsIGZvb2wuXG4gID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgcXVpY2sgc3R5bGVzIGZvciBhIGNhbGxvdXQgdXNpbmcgYSBzaW5nbGUgY29sb3IgYXMgYSBiYXNlbGluZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQtc3R5bGUoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gICRiYWNrZ3JvdW5kOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRjYWxsb3V0LWJhY2tncm91bmQtZmFkZSk7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGNhbGxvdXQtZm9udC1jb2xvciwgJGNhbGxvdXQtZm9udC1jb2xvci1hbHQpKTtcbn1cblxuQG1peGluIGNhbGxvdXQtc2l6ZSgkcGFkZGluZykge1xuICBwYWRkaW5nLXRvcDogJHBhZGRpbmc7XG4gIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmc7XG4gIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhbGxvdXQuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0KCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICBAaW5jbHVkZSBjYWxsb3V0LWJhc2U7XG4gIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2FsbG91dCB7XG4gIC5jYWxsb3V0IHtcbiAgICBAaW5jbHVkZSBjYWxsb3V0O1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zbWFsbCB7XG4gICAgICBAaW5jbHVkZSBjYWxsb3V0LXNpemUoMC41cmVtKTtcbiAgICB9XG5cbiAgICAmLmxhcmdlIHtcbiAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgzcmVtKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNhcmRcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAdHlwZSBDb2xvclxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYXJkcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHN0eWxlLlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjYXJkIHNoYWRvdy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4uXG4vLy8gQHR5cGUgbnVtYmVyXG4kY2FyZC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhcmQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBmb250IGNvbG9yIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWFyZ2luIC0gQm90dG9tIG1hcmdpbiBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRib3JkZXIgLSBCb3JkZXIgYXJvdW5kIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHJhZGl1cyAtIGJvcmRlciByYWRpdXMgb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hhZG93IC0gYm94IHNoYWRvdyBvZiB0aGUgY2FyZC5cbkBtaXhpbiBjYXJkLWNvbnRhaW5lcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWJhY2tncm91bmQsXG4gICRjb2xvcjogJGNhcmQtZm9udC1jb2xvcixcbiAgJG1hcmdpbjogJGNhcmQtbWFyZ2luLWJvdHRvbSxcbiAgJGJvcmRlcjogJGNhcmQtYm9yZGVyLFxuICAkcmFkaXVzOiAkY2FyZC1ib3JkZXItcmFkaXVzLFxuICAkc2hhZG93OiAkY2FyZC1zaGFkb3dcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1ncm93OiAxO1xuICB9XG5cbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbjtcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG5cbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhcmQgZGl2aWRlci5cbkBtaXhpbiBjYXJkLWRpdmlkZXIoXG4gICRiYWNrZ3JvdW5kOiAkY2FyZC1kaXZpZGVyLWJhY2tncm91bmQsXG4gICRwYWRkaW5nOiAkY2FyZC1wYWRkaW5nXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcblxuICAmID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhcmQgc2VjdGlvbi5cbkBtaXhpbiBjYXJkLXNlY3Rpb24oXG4gICRwYWRkaW5nOiAkY2FyZC1wYWRkaW5nXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2FyZCB7XG4gIC5jYXJkIHtcbiAgICBAaW5jbHVkZSBjYXJkLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5jYXJkLWRpdmlkZXIge1xuICAgIEBpbmNsdWRlIGNhcmQtZGl2aWRlcjtcbiAgfVxuXG4gIC5jYXJkLXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIGNhcmQtc2VjdGlvbjtcbiAgfVxuXG4gIC8vIEZvciBJRSAxMSAtIEZsZXhidWdcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncy9pc3N1ZXMvNzVcbiAgLmNhcmQtaW1hZ2Uge1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2xvc2UtYnV0dG9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uIFRoZSBmaXJzdCB2YWx1ZSBzaG91bGQgYmUgYHJpZ2h0YCBvciBgbGVmdGAsIGFuZCB0aGUgc2Vjb25kIHZhbHVlIHNob3VsZCBiZSBgdG9wYCBvciBgYm90dG9tYC5cbi8vLyBAdHlwZSBMaXN0XG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcCAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IChvciBsZWZ0KSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRvcCAob3IgYm90dG9tKSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICBzbWFsbDogMS41ZW0sXG4gIG1lZGl1bTogMmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsaW5lLWhlaWdodCBvZiB0aGUgY2xvc2UgYnV0dG9uLiBJdCBhZmZlY3RzIHRoZSBzcGFjaW5nIG9mIHRoZSBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDEgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbiB3aGVuIGJlaW5nIGhvdmVyZWQgb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrICFkZWZhdWx0O1xuXG5cbi8vLyBHZXQgdGhlIHNpemUgYW5kIHBvc2l0aW9uIGZvciBhIGNsb3NlIGJ1dHRvbi4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgbnVtYmVyLCB0aGUgbnVtYmVyIGlzIHJldHVybmVkLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBjb25maWcgbWFwIGFuZCB0aGUgbWFwIGhhcyB0aGUga2V5IGAkc2l6ZWAsIHRoZSB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJHZhbHVlIC0gQSBudW1iZXIgb3IgbWFwIHRoYXQgcmVwcmVzZW50cyB0aGUgc2l6ZSBvciBwb3NpdGlvbiB2YWx1ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBUaGUgc2l6ZSBvZiB0aGUgY2xvc2UgYnV0dG9uIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gVGhlIGdpdmVuIG51bWJlciBvciB0aGUgdmFsdWUgZm91bmQgaW4gdGhlIG1hcC5cbkBmdW5jdGlvbiAtemYtZ2V0LXNpemUtdmFsKCR2YWx1ZSwgJHNpemUpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgIC8vIElmIGl0IGlzLCBqdXN0IHJldHVybiB0aGUgbnVtYmVyXG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgc2l6ZSBuYW1lIGV4aXN0cyBpbiB0aGUgdmFsdWUgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCR2YWx1ZSwgJHNpemUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCR2YWx1ZSwgJHNpemUpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBzaXplIGFuZCBwb3NpdGlvbiBvZiBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFttZWRpdW1dIC0gVGhlIHNpemUgdG8gdXNlLiBTZXQgdG8gYHNtYWxsYCB0byBjcmVhdGUgYSBzbWFsbCBjbG9zZSBidXR0b24uIFRoZSAnbWVkaXVtJyB2YWx1ZXMgZGVmaW5lZCBpbiBgJGNsb3NlYnV0dG9uLSpgIHZhcmlhYmxlcyB3aWxsIGJlIHVzZWQgYXMgdGhlIGRlZmF1bHQgc2l6ZSBhbmQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbkBtaXhpbiBjbG9zZS1idXR0b24tc2l6ZSgkc2l6ZSkge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICAjeyR4fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWwsICRzaXplKTtcbiAgI3skeX06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbCwgJHNpemUpO1xuICBmb250LXNpemU6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLXNpemUsICRzaXplKTtcbiAgbGluZS1oZWlnaHQ6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQsICRzaXplKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNsb3NlIGJ1dHRvbiwgdXNpbmcgdGhlIHN0eWxlcyBpbiB0aGUgc2V0dGluZ3MgdmFyaWFibGVzLlxuQG1peGluIGNsb3NlLWJ1dHRvbiB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jbG9zZS1idXR0b24ge1xuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBjbG9zZS1idXR0b247XG5cbiAgICAmLnNtYWxsIHsgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUoc21hbGwpIH1cbiAgICAmLCAmLm1lZGl1bSB7IEBpbmNsdWRlIGNsb3NlLWJ1dHRvbi1zaXplKG1lZGl1bSkgfVxuICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1tZW51LWljb24ge1xuICAubWVudS1pY29uIHtcbiAgICBAaW5jbHVkZSBoYW1idXJnZXIoJGNvbG9yOiAkdGl0bGViYXItaWNvbi1jb2xvciwgJGNvbG9yLWhvdmVyOiAkdGl0bGViYXItaWNvbi1jb2xvci1ob3Zlcik7XG4gIH1cblxuICAubWVudS1pY29uLmRhcmsge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJpbGxkb3duXG4vLy8vXG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnR5IHRvIHVzZSBmb3IgYW5pbWF0aW5nIG1lbnVzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhciAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYXJyb3dzIHRvIGRyaWxsZG93biBpdGVtcyB3aXRoIHN1Ym1lbnVzLCBhcyB3ZWxsIGFzIHRoZSBiYWNrIGJ1dHRvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJpbGxkb3duLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgbmVzdGVkIG1hcmdpblxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJpbGxkb3duIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBtZW51IGl0ZW0gcGFkZGluZyBpbiB0aGUgc3VibWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gc3VibWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtZHJpbGxkb3duLWxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJpbGxkb3duLWFycm93LXNpemUsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtcmlnaHQpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICRkcmlsbGRvd24tYXJyb3ctc2l6ZTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi1sZWZ0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMXJlbTtcbiAgfVxuXG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51IHtcbiAgLy8gQXBwbGllZCB0byB0aGUgTWVudSBjb250YWluZXJcbiAgLmlzLWRyaWxsZG93biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmLmFuaW1hdGUtaGVpZ2h0IHtcbiAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjVzO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoZSB0b3AgbGV2ZWwgPHVsPlxuICAuZHJpbGxkb3duIHtcbiAgICBhIHtcbiAgICAgIHBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZztcbiAgICAgIGJhY2tncm91bmQ6ICRkcmlsbGRvd24tYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAvLyBBcHBsaWVkIHRvIHN1Ym1lbnUgPHVsPnNcbiAgICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ7XG4gICAgICB0cmFuc2l0aW9uOiAkZHJpbGxkb3duLXRyYW5zaXRpb247XG5cbiAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgLTEwMCUsIDEwMCUpKTtcbiAgICAgIH1cblxuICAgICAgJi5pcy1jbG9zaW5nIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAxMDAlLCAtMTAwJSkpO1xuICAgICAgfVxuXG4gICAgICAvLyBTdWJtZW51IGl0ZW0gcGFkZGluZ1xuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmc6ICRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAuZHJpbGxkb3duLXN1Ym1lbnUtY292ZXItcHJldmlvdXMge1xuICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgJGRyaWxsZG93bi1hcnJvd3Mge1xuICAgICAgQGluY2x1ZGUgemYtZHJpbGxkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuXG4gICAgICAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyaWxsZG93bi1hcnJvdy1zaXplLCAkZHJpbGxkb3duLWFycm93LWNvbG9yLCAkZ2xvYmFsLWxlZnQpO1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9LXdpZHRoOiAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjc1cmVtOyAvLyBDcmVhdGVzIHNwYWNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dFxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd25cbi8vLy9cblxuLy8vIFBhZGRpbmcgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3duLXdpZHRoOiAzMDBweCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBkcm9wZG93biBwYW5lcy4gRWFjaCBzaXplIGlzIGEgQ1NTIGNsYXNzIHlvdSBjYW4gYXBwbHkuXG4vLy8gQHR5cGUgTWFwXG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEFwcGxpZXMgc3R5bGVzIGZvciBhIGJhc2ljIGRyb3Bkb3duLlxuQG1peGluIGRyb3Bkb3duLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG5cbiAgZGlzcGxheTogbm9uZTtcblxuICB3aWR0aDogJGRyb3Bkb3duLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZztcblxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGRyb3Bkb3duLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJhY2tncm91bmQ7XG5cbiAgZm9udC1zaXplOiAkZHJvcGRvd24tZm9udC1zaXplO1xuXG5cbiAgLy8gQWxsb3cgYW4gaW50ZXJtaXR0ZW50IHN0YXRlIHRvIGRvIHBvc2l0aW9uaW5nIGJlZm9yZSBtYWtpbmcgdmlzaWJsZS5cbiAgJi5pcy1vcGVuaW5nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYuaXMtb3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93biB7XG4gIC5kcm9wZG93bi1wYW5lIHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXI7XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGRyb3Bkb3duLXNpemVzIHtcbiAgICAuZHJvcGRvd24tcGFuZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd24tbWVudVxuLy8vL1xuXG4vLy8gRW5hYmxlcyBhcnJvd3MgZm9yIGl0ZW1zIHdpdGggZHJvcGRvd24gbWVudXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBwYWRkaW5nIGZvciBhbGlnbmluZyB0aGUgYXJyb3cgY29ycmVjdGx5LlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJvcGRvd25zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBzdWItbWVudSBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gQm9yZGVyIHdpZHRoIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLyBVc2VkIHRvIGFkanVzdCB0b3AgbWFyZ2luIG9mIGEgc3ViLW1lbnUgaWYgYSBib3JkZXIgaXMgdXNlZC5cbi8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGg6IG50aCgkZHJvcGRvd25tZW51LWJvcmRlciwgMSk7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0uIEV4cGxpY2l0IG92ZXJyaWRlIGZvciBtZW51IGRlZmF1bHRzXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0uIEV4cGxpY2l0IG92ZXJyaWRlIGZvciBtZW51IGRlZmF1bHRzXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICA+IGE6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAxNHB4O1xuICB9XG5cbiAgJi5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgfVxuXG4gICYub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpO1xuICB9XG59XG5cbkBtaXhpbiBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgID4gbGkub3BlbnMtbGVmdCB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaS5vcGVucy1yaWdodCB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc7XG4gICAgICB9XG5cbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IC0xICogKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSAvIDIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICA+IGxpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLWxlZnQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLXJpZ2h0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudSB7XG4gIC5kcm9wZG93bi5tZW51IHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcblxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIH1cblxuICAgIC8vIFRvcC1sZXZlbCBpdGVtXG4gICAgPiBsaSA+IGEge1xuICAgICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kO1xuICAgICAgcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC8vIFRvcC1sZXZlbCBpdGVtIGFjdGl2ZSBzdGF0ZVxuICAgID4gbGkuaXMtYWN0aXZlID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlO1xuICAgIH1cblxuICAgIC5uby1qcyAmIHVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuI3skc2l6ZX0tdmVydGljYWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gICAgd2lkdGg6IDEwMHB4O1xuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBhOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplO1xuICAgIH1cblxuICAgICYub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG5cbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1pbi13aWR0aDogJGRyb3Bkb3dubWVudS1taW4td2lkdGg7XG5cbiAgICBib3JkZXI6ICRkcm9wZG93bm1lbnUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kO1xuXG4gICAgLmRyb3Bkb3duICYgYSB7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICh0eXBlLW9mKCRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKSA9PSAnbnVtYmVyJykge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICBtYXJnaW4tdG9wOiAoLSRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8vIFtUT0RPXSBDdXQgYmFjayBzcGVjaWZpY2l0eVxuICAgIC8vJjpub3QoLmpzLWRyb3Bkb3duLW5vaG92ZXIpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50OmhvdmVyID4gJiwgLy8gd2h5IGlzIHRoaXMgbGluZSBuZWVkZWQ/IE9wZW5pbmcgaXMgaGFuZGxlZCBieSBKUyBhbmQgdGhpcyBjYXVzZXMgc29tZSB1Z2x5IGZsaWNrZXJpbmcgd2hlbiB0aGUgc3ViIGlzIHJlLXBvc2l0aW9uZWQgYXV0b21hdGljYWxseS4uLlxuICAgICYuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiJGRhcmstbmF2LWNvbG9yOiAjMkMzODQwO1xuXG4vL2N1c3RvbSBjb2xvcnNcbiRsaWdodGVzdC1jb2xvcjogI2ZmZmZmZjtcbiRsaWdodGVyLWNvbG9yOiAjZmFmYWZhO1xuXG4kZGFya2VzdC1jb2xvcjogIzI1MjUyNTtcbiRkYXJrZXItY29sb3I6ICMzNjAwMzM7XG4kZGFya2VyLWhlYWRsaW5lOiAjMmU0MjQ0O1xuJGRhcmstY29sb3I6ICNhOWE5YTk7XG4kYWx0LWRhcmstY29sb3I6ICMyYjQzNGM7XG5cbiRzZWNvbmRhcnktY29sb3I6ICM1M2JiZDE7XG4kaGlnaGxpZ2h0LWNvbG9yOiAjMGI4NzkzO1xuXG4kc2Vjb25kYXJ5LWNvbG9yOiAjZjFhZjQzO1xuJHRlcnRpYXJ5LWNvbG9yOiAjZTNjZGE5OyIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJlc3BvbnNpdmUtZW1iZWRcbi8vLy9cblxuLy8vIE1hcmdpbiBiZWxvdyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gQXNwZWN0IHJhdGlvcyB1c2VkIHRvIGRldGVybWluZSBwYWRkaW5nLWJvdHRvbSBvZiByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lcnMuXG4vLy8gQHR5cGUgTWFwXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge1N0cmluZ3xMaXN0fSAkcmF0aW8gW2RlZmF1bHRdIC0gUmF0aW8gb2YgdGhlIGNvbnRhaW5lci4gQ2FuIGJlIGEga2V5IGZyb20gdGhlIGAkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3NgIG1hcCBvciBhIGxpc3QgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuQG1peGluIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KSB7XG4gIEBpZiB0eXBlLW9mKCRyYXRpbykgPT0gJ3N0cmluZycge1xuICAgICRyYXRpbzogbWFwLWdldCgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsICRyYXRpbyk7XG4gIH1cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b207XG4gIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgaWZyYW1lLFxuICBvYmplY3QsXG4gIGVtYmVkLFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQge1xuICAucmVzcG9uc2l2ZS1lbWJlZCxcbiAgLmZsZXgtdmlkZW8ge1xuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KTtcblxuICAgICRyYXRpb3M6IG1hcC1yZW1vdmUoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLGRlZmF1bHQpO1xuXG4gICAgQGVhY2ggJG5hbWUsICRyYXRpbyBpbiAkcmF0aW9zIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBGaW5kcyB0aGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3Igb2YgdHdvIGludGVnZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhIC0gRmlyc3QgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiIC0gU2Vjb25kIG51bWJlciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yLlxuQGZ1bmN0aW9uIGdjZCgkYSwgJGIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL0dyZWF0ZXN0X2NvbW1vbl9kaXZpc29yI0phdmFTY3JpcHRcbiAgQGlmICgkYiAhPSAwKSB7XG4gICAgQHJldHVybiBnY2QoJGIsICRhICUgJGIpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGFicygkYSk7XG4gIH1cbn1cblxuLy8vIEhhbmRsZXMgZGVjaW1hbCBleHBvbmVudHMgYnkgdHJ5aW5nIHRvIGNvbnZlcnQgdGhlbSBpbnRvIGEgZnJhY3Rpb24gYW5kIHRoZW4gdXNlIGEgbnRoLXJvb3QtYWxnb3JpdGhtIGZvciBwYXJ0cyBvZiB0aGUgY2FsY3VsYXRpb25cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBiYXNlIG51bWJlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGV4cG9uZW50IC0gVGhlIGV4cG9uZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHByb2R1Y3Qgb2YgdGhlIGV4cG9uZW50aWF0aW9uLlxuQGZ1bmN0aW9uIHBvdygkYmFzZSwgJGV4cG9uZW50LCAkcHJlYzogMTYpIHtcbiAgQGlmIChmbG9vcigkZXhwb25lbnQpICE9ICRleHBvbmVudCkge1xuICAgICRwcmVjMiA6IHBvdygxMCwgJHByZWMpO1xuICAgICRleHBvbmVudDogcm91bmQoJGV4cG9uZW50ICogJHByZWMyKTtcbiAgICAkZGVub21pbmF0b3I6IGdjZCgkZXhwb25lbnQsICRwcmVjMik7XG4gICAgQHJldHVybiBudGgtcm9vdChwb3coJGJhc2UsICRleHBvbmVudCAvICRkZW5vbWluYXRvciksICRwcmVjMiAvICRkZW5vbWluYXRvciwgJHByZWMpO1xuICB9XG5cbiAgJHZhbHVlOiAkYmFzZTtcbiAgQGlmICRleHBvbmVudCA+IDEge1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGV4cG9uZW50IHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogJGJhc2U7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRleHBvbmVudCA8IDEge1xuICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggLSRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAvICRiYXNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG5AZnVuY3Rpb24gbnRoLXJvb3QoJG51bSwgJG46IDIsICRwcmVjOiAxMikge1xuICAvLyBGcm9tOiBodHRwOi8vcm9zZXR0YWNvZGUub3JnL3dpa2kvTnRoX3Jvb3QjSmF2YVNjcmlwdFxuICAkeDogMTtcblxuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRwcmVjIHtcbiAgICAkeDogMSAvICRuICogKCgkbiAtIDEpICogJHggKyAoJG51bSAvIHBvdygkeCwgJG4gLSAxKSkpO1xuICB9XG5cbiAgQHJldHVybiAkeDtcbn1cblxuLy8vIENhbGN1bGF0ZXMgdGhlIGhlaWdodCBhcyBhIHBlcmNlbnRhZ2Ugb2YgdGhlIHdpZHRoIGZvciBhIGdpdmVuIHJhdGlvLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHJhdGlvIC0gUmF0aW8gdG8gdXNlIHRvIGNhbGN1bGF0ZSB0aGUgaGVpZ2h0LCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG4vLy8gQHJldHVybiB7TnVtYmVyfSBBIHBlcmNlbnRhZ2UgdmFsdWUgZm9yIHRoZSBoZWlnaHQgcmVsYXRpdmUgdG8gdGhlIHdpZHRoIG9mIGEgcmVzcG9uc2l2ZSBjb250YWluZXIuXG5AZnVuY3Rpb24gcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pIHtcbiAgJHc6IG50aCgkcmF0aW8sIDEpO1xuICAkaDogbnRoKCRyYXRpbywgMyk7XG4gIEByZXR1cm4gJGggLyAkdyAqIDEwMCU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBsYWJlbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBvZiBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBiYXNlIHN0eWxlcyBmb3IgYSBsYWJlbC5cbkBtaXhpbiBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGxhYmVsLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJGxhYmVsLXJhZGl1cztcblxuICBmb250LXNpemU6ICRsYWJlbC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWxhYmVsIHtcbiAgLmxhYmVsIHtcbiAgICBAaW5jbHVkZSBsYWJlbDtcblxuICAgIGJhY2tncm91bmQ6ICRsYWJlbC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRsYWJlbC1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRjb2xvciwgKCRsYWJlbC1jb2xvciwgJGxhYmVsLWNvbG9yLWFsdCkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVkaWEtb2JqZWN0XG4vLy8vXG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gTGVmdCBhbmQgcmlnaHQgcGFkZGluZyBvbiBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBvZiBpbWFnZXMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LCB3aGVuIHRoZSBvYmplY3QgaXMgc3RhY2tlZCB2ZXJ0aWNhbGx5LiBTZXQgdG8gJ2F1dG8nIHRvIHVzZSB0aGUgaW1hZ2UncyBuYXR1cmFsIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtZWRpYSBvYmplY3QgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1jb250YWluZXIge1xuICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIGJsb2NrKTtcbiAgbWFyZ2luLWJvdHRvbTogJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b207XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cblxuICBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICYuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3Igc2VjdGlvbnMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZ10gLSBQYWRkaW5nIGJldHdlZW4gc2VjdGlvbnMuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LXNlY3Rpb24oJHBhZGRpbmc6ICRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmcpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogJHBhZGRpbmc7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1sZWZ0fTogJHBhZGRpbmc7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSAmIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zdGFjaztcbiAgICB9XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAmLm1haW4tc2VjdGlvbiB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJi5taWRkbGUge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAmLmJvdHRvbSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gc3RhY2sgc2VjdGlvbnMgb2YgYSBtZWRpYSBvYmplY3QuIEFwcGx5IHRoaXMgdG8gdGhlIHNlY3Rpb24gZWxlbWVudHMsIG5vdCB0aGUgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1zdGFjayB7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6ICRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdCB7XG4gIC5tZWRpYS1vYmplY3Qge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1jb250YWluZXI7XG4gIH1cblxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zZWN0aW9uO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBvZmYtY2FudmFzXG4vLy8vXG5cbi8vLyBXaWR0aCBtYXAgb2YgYSBsZWZ0L3JpZ2h0IG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTWFwXG4kb2ZmY2FudmFzLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgbWFwIG9mIGEgdG9wL2JvdHRvbSBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE1hcFxuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIENvbG9yXG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBmb3IgdGhlIG9mZi1jYW52YXMgb3ZlcmxhcCBwYW5lbC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KSAhZGVmYXVsdDtcblxuLy8vIElubmVyIGJveCBzaGFkb3cgc2l6ZSBmb3IgdGhlIG9mZi1jYW52YXMgcHVzaCBwYW5lbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemU6IDIwcHggIWRlZmF1bHQ7XG5cbi8vLyBJbm5lciBib3ggc2hhZG93IGNvbG9yIGZvciB0aGUgb2ZmLWNhbnZhcyBwdXNoIHBhbmVsLlxuLy8vIEB0eXBlIENvbG9yXG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIGNvbnRlbnQgb3ZlcmxheS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg6IDExICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHdpdGggdGhlIGBwdXNoYCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTIgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgd2l0aCB0aGUgYG92ZXJsYXBgIHRyYW5zaXRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMyAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB1c2luZyB0aGUgYHJldmVhbC1mb3ItKmAgY2xhc3NlcyBvciBtaXhpbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTIgIWRlZmF1bHQ7XG5cbi8vLyBMZW5ndGggb2YgdGhlIGFuaW1hdGlvbiBvbiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cyAhZGVmYXVsdDtcblxuLy8vIFRpbWluZyBmdW5jdGlvbiBvZiB0aGUgYW5pbWF0aW9uIG9uIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgS2V5d29yZFxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYSByZXZlYWxlZCBvZmYtY2FudmFzIHdpbGwgYmUgZml4ZWQtcG9zaXRpb24sIGFuZCBzY3JvbGwgd2l0aCB0aGUgc2NyZWVuLlxuLy8vIEB0eXBlIEJvb2xcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIG92ZXJsYXkgdGhhdCBhcHBlYXJzIHdoZW4gYW4gb2ZmLWNhbnZhcyBwYW5lbCBpcyBvcGVuLlxuLy8vIEB0eXBlIENvbG9yXG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gQ1NTIGNsYXNzIHVzZWQgZm9yIHRoZSBtYWluIGNvbnRlbnQgYXJlYS4gVGhlIG9mZi1jYW52YXMgbWl4aW5zIHVzZSB0aGlzIHRvIHRhcmdldCB0aGUgcGFnZSBjb250ZW50LlxuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JyAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzZWxpbmUgc3R5bGVzIGZvciBvZmYtY2FudmFzLiBUaGlzIENTUyBpcyByZXF1aXJlZCB0byBtYWtlIHRoZSBvdGhlciBwaWVjZXMgd29yay5cbkBtaXhpbiBvZmYtY2FudmFzLWJhc2ljcyB7XG5cbiAgLy8vIFRyYW5zZm9ybSBkZXByZWNhdGVkIHNpemUgc2V0dGluZ3MgaW50byBtYXAgJiBzaG93IHdhcm5pbmdcbiAgQGlmIHZhcmlhYmxlLWV4aXN0cyhvZmZjYW52YXMtc2l6ZSkge1xuICAgICRvZmZjYW52YXMtc2l6ZXM6IChzbWFsbDogJG9mZmNhbnZhcy1zaXplLCBtZWRpdW06ICRvZmZjYW52YXMtc2l6ZSkgIWdsb2JhbDtcbiAgICBAd2FybiAnJG9mZmNhbnZhcy1zaXplIGlzIGRlcHJlY2F0ZWQgYW5kIG5vdCB1c2VkIGFueW1vcmUhIFBsZWFzZSB1cGRhdGUgeW91ciBzZXR0aW5ncyBhbmQgdXNlIHRoZSBtYXAgJG9mZmNhbnZhcy1zaXplcyBpbnN0ZWFkJztcbiAgfVxuICBAaWYgdmFyaWFibGUtZXhpc3RzKG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplKSB7XG4gICAgJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKHNtYWxsOiAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemUsIG1lZGl1bTogJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplKSAhZ2xvYmFsO1xuICAgIEB3YXJuICckb2ZmY2FudmFzLXZlcnRpY2FsLXNpemUgaXMgZGVwcmVjYXRlZCBhbmQgbm90IHVzZWQgYW55bW9yZSEgUGxlYXNlIHVwZGF0ZSB5b3VyIHNldHRpbmdzIGFuZCB1c2UgdGhlIG1hcCAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzIGluc3RlYWQnO1xuICB9XG5cbiAgLy8gQ2hlY2tzIHRoZSB6LWluZGV4ZXMgYW5kIGluY3JlYXNlIHRoZW0gZHVlIHRvIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LlxuICAvLyBUaGlzIGlzIG5lY2Vzc2FyeSBiZWNhdXNlIHRoZSBvdmVybGF5J3Mgei1pbmRleCBpcyBuZXcgc2luY2UgdjYuNCBhbmQgbWF5IGJlIGlkZW50aWNhbCB0byB0aGUgdXNlciBjdXN0b20gc2V0dGluZ3Mgb2YgdGhlIHB1c2ggei1pbmRleC5cbiAgQGlmICRvZmZjYW52YXMtcHVzaC16aW5kZXggPD0gJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCB7ICRvZmZjYW52YXMtcHVzaC16aW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggKyAxICFnbG9iYWw7IH1cbiAgQGlmICRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXggPD0gJG9mZmNhbnZhcy1wdXNoLXppbmRleCB7ICRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXggKyAxICFnbG9iYWw7IH1cbiAgQGlmICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCA8PSAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4IHsgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4ICsgMSAhZ2xvYmFsOyB9XG5cbiAgLy8gSGlkZXMgb3ZlcmZsb3cgb24gYm9keSB3aGVuIGFuIG9mZi1jYW52YXMgcGFuZWwgaXMgb3Blbi5cbiAgLmlzLW9mZi1jYW52YXMtb3BlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgb3ZlcmxheSAoZ2VuZXJhdGVkIGJ5IEphdmFTY3JpcHQpXG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4O1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmcsIHZpc2liaWxpdHkgJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nO1xuXG4gICAgYmFja2dyb3VuZDogJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ7XG5cbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgJi5pcy1jbG9zYWJsZSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJi5pcy1vdmVybGF5LWFic29sdXRlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG5cbiAgICAmLmlzLW92ZXJsYXktZml4ZWQge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYW4gb2ZmLWNhbnZhcyB3cmFwcGVyLlxuQG1peGluIG9mZi1jYW52YXMtd3JhcHBlcigpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGFuIG9mZi1jYW52YXMgcGFuZWwuXG5AbWl4aW4gb2ZmLWNhbnZhcy1iYXNlKFxuICAkYmFja2dyb3VuZDogJG9mZmNhbnZhcy1iYWNrZ3JvdW5kLFxuICAkdHJhbnNpdGlvbjogJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nLFxuICAkZml4ZWQ6IHRydWVcbikge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgQGlmICRmaXhlZCA9PSB0cnVlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gIC8vIFNldCB0aGUgb2ZmLWNhbnZhcyB6LWluZGV4LlxuICB6LWluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4O1xuXG4gIC8vIEluY3JlYXNlIENTUyBzcGVjaWZpY2l0eVxuICAmLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleDtcbiAgfVxuXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXG4gIC8vIEhpZGUgaW5hY3RpdmUgb2ZmLWNhbnZhcyB3aXRoaW4gdGhlIGNvbnRlbnQgdGhhdCBoYXZlIHRoZSBzYW1lIHBvc2l0aW9uXG4gICYuaXMtY2xvc2VkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBPdmVybGFwIG9ubHkgc3R5bGVzLlxuICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDtcblxuICAgICYuaXMtb3BlbiB7XG4gICAgICBib3gtc2hhZG93OiAkb2ZmY2FudmFzLXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAvLyBTZXRzIHRyYW5zZm9ybSB0byAwIHRvIHNob3cgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbiAgJi5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gcG9zaXRpb24gYW4gb2ZmLWNhbnZhcyBwYW5lbCB0byB0aGUgbGVmdC9yaWdodC90b3AvYm90dG9tLlxuQG1peGluIG9mZi1jYW52YXMtcG9zaXRpb24oXG4gICRwb3NpdGlvbjogbGVmdCxcbiAgJG9yaWVudGF0aW9uOiBob3Jpem9udGFsLFxuICAkc2l6ZXM6IGlmKCRvcmllbnRhdGlvbiA9PSBob3Jpem9udGFsLCAkb2ZmY2FudmFzLXNpemVzLCAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzKVxuKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcblxuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBoZWlnaHQ6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBoZWlnaHQ6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUgaXMgc2V0LCBhZGQgaW5uZXIgYm94LXNoYWRvdy5cbiAgLy8gVGhpcyBtaW1pY3MgdGhlIG9mZi1jYW52YXMgcGFuZWwgaGF2aW5nIGEgbG93ZXIgei1pbmRleCwgd2l0aG91dCBoYXZpbmcgdG8gaGF2ZSBvbmUuXG4gIEBpZiAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplIHtcbiAgICAmLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhyaWdodCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3cobGVmdCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KGJvdHRvbSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KHRvcCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cbi8vLyBTZXRzIHRoZSBzdHlsZXMgZm9yIHRoZSBjb250ZW50IGNvbnRhaW5lci5cbkBtaXhpbiBvZmYtY2FudmFzLWNvbnRlbnQoKSB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIC8vIFRyYW5zZm9ybSBzY29wZSB1bnRpbCB0aGUgZWxlbWVudCBpcyBjbG9zZWQgKG1ha2VzIHN1cmUgdHJhbnNpdGlvbmVuZCBnZXRzIHRyaWdnZXJlZClcbiAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuXG4gIC8vIENvbnNpZGVyIGVsZW1lbnQgJiBjb250ZW50LCBuZXN0ZWQgaW4gYW5vdGhlciBjb250ZW50XG4gIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0aGF0IHJldmVhbCBhbiBvZmYtY2FudmFzIHBhbmVsLlxuQG1peGluIG9mZi1jYW52YXMtcmV2ZWFsKFxuJHBvc2l0aW9uOiBsZWZ0LFxuJHppbmRleDogJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LFxuJGNvbnRlbnQ6ICRtYWluY29udGVudC1jbGFzcyxcbiRicmVha3BvaW50OiBzbWFsbFxuKSB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgei1pbmRleDogJHppbmRleDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICBAaWYgbm90ICRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQ29uc2lkZXIgcmV2ZWFsZWQgZWxlbWVudCBpcyBuZXN0ZWQgaW4gY29udGVudFxuICAuI3skbWFpbmNvbnRlbnQtY2xhc3N9ICYge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIEBhdC1yb290IC4jeyRjb250ZW50fS5oYXMtcmV2ZWFsLSN7JHBvc2l0aW9ufSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogLXpmLWdldC1icC12YWwoJG9mZmNhbnZhcy1zaXplcywgJGJyZWFrcG9pbnQpO1xuICB9XG5cbiAgLy8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgKHByaW9yIHRvIHY2LjQpXG4gICYgfiAuI3skY29udGVudH0ge1xuICAgIG1hcmdpbi0jeyRwb3NpdGlvbn06IC16Zi1nZXQtYnAtdmFsKCRvZmZjYW52YXMtc2l6ZXMsICRicmVha3BvaW50KTtcbiAgfVxufVxuXG4vLy8gT3ZlcnJpZGVzIHRoZSBvZmYtY2FudmFzIHN0eWxlc1xuQG1peGluIGluLWNhbnZhcygpIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB3aWR0aDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgLy8gSW5jcmVhc2UgQ1NTIHNwZWNpZmljaXR5XG4gICYucG9zaXRpb24tbGVmdCxcbiAgJi5wb3NpdGlvbi1yaWdodCxcbiAgJi5wb3NpdGlvbi10b3AsXG4gICYucG9zaXRpb24tYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tb2ZmLWNhbnZhcyB7XG4gIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzaWNzO1xuXG4gIC8vIE9mZi1jYW52YXMgd3JhcHBlclxuICAub2ZmLWNhbnZhcy13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXdyYXBwZXI7XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIGNvbnRhaW5lclxuICAub2ZmLWNhbnZhcyB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNlO1xuXG4gICAgLy8gRm9yY2UgcG9zaXRpb24gYWJzb2x1dGUgZm9yIG5lc3RlZCBvZmYtY2FudmFzIGJlY2F1c2UgZml4ZWQgZG9lc24ndCB3b3JrIGZvciBwdXNoIHRyYW5zaXRpb24gd2l0aGluIHRoZSB0cmFuc2Zvcm0gc2NvcGUuXG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAmIHtcbiAgICAgIC8vIE5PVEU6IHNpbmNlIG92ZXJsYXAgdHJhbnNpdGlvbiBpcyBjdXJyZW50bHkgZm9yY2VkIGlmIG5lc3RlZCwgdGhlcmUncyBubyBuZWVkIHRvIGZvcmNlIHBvc2l0aW9uIGFic29sdXRlIHVudGlsIG5lc3RlZCBwdXNoIHRyYW5zaXRpb24gaXMgc3VwcG9ydGVkLlxuICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgY29udGFpbmVyIHdpdGggYWJzb2x1dGUgcG9zaXRpb25cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzZSgkZml4ZWQ6IGZhbHNlKTtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgcG9zaXRpb24gY2xhc3Nlc1xuICAucG9zaXRpb24tbGVmdCAgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24obGVmdCwgICBob3Jpem9udGFsKTsgfVxuICAucG9zaXRpb24tcmlnaHQgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24ocmlnaHQsICBob3Jpem9udGFsKTsgfVxuICAucG9zaXRpb24tdG9wICAgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24odG9wLCAgICB2ZXJ0aWNhbCk7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbSAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKGJvdHRvbSwgdmVydGljYWwpOyB9XG5cbiAgLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1jb250ZW50O1xuICB9XG5cbiAgLy8gUmV2ZWFsIG9mZi1jYW52YXMgcGFuZWwgb24gbGFyZ2VyIHNjcmVlbnNcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG5hbWUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChsZWZ0LCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHJpZ2h0LCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbCh0b3AsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGJvdHRvbSwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIE1vdmUgaW4tY2FudmFzIGZvciBsYXJnZXIgc2NyZWVuc1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbmFtZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGluLWNhbnZhcztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBvcmJpdFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYWN0aXZlIGNvbG9yIGZvciBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGRpYW1ldGVyIGZvciBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBiZXR3ZWVuIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGRpc3RhbmNlIGZyb20gc2xpZGUgcmVnaW9uIGZvciBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmcm9tIE9yYml0J3MgYnVsbGV0cyB0byB3aGF0ZXZlciBjb250ZW50IG1heSBsdXJrIGJlbG93IGl0LlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIE9yYml0J3MgY2FwdGlvbi5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIE9yYml0J3MgY2FwdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIE9yYml0J3MgY29udHJvbHMgd2hlbiBob3ZlcmVkLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgT3JiaXQncyBjb250cm9scy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHotaW5kZXggZm9yIE9yYml0J3MgY29udHJvbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBvdXRlciBPcmJpdCB3cmFwcGVyLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXRgIGNsYXNzLlxuQG1peGluIG9yYml0LXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGlubmVyIE9yYml0IHNsaWRlIGNvbnRhaW5lci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWNvbnRhaW5lcmAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7IC8vIFByZXZlbnQgRk9VQyBieSBub3Qgc2hvd2luZyB1bnRpbCBKUyBzZXRzIGhlaWdodFxuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGluZGl2aWR1YWwgc2xpZGVzIG9mIGFuIE9yYml0IHNsaWRlci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LXNsaWRlYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1zbGlkZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgJi5uby1tb3Rpb251aSB7XG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG9yYml0LWZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHNsaWRlIGNvbnRhaW5pbmcgYW4gaW1hZ2UuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1pbWFnZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gb3JiaXQgc2xpZGUgY2FwdGlvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWNhcHRpb25gIGNsYXNzLlxuQG1peGluIG9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6ICRvcmJpdC1jYXB0aW9uLXBhZGRpbmc7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZCk7XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciB0aGUgbmV4dC9wcmV2aW91cyBidXR0b25zIGluIGFuIE9yYml0IHNsaWRlci4gVGhlc2Ugc3R5bGVzIGFyZSBzaGFyZWQgYmV0d2VlbiB0aGUgYC5vcmJpdC1uZXh0YCBhbmQgYC5vcmJpdC1wcmV2aW91c2AgY2xhc3NlcyBpbiB0aGUgZGVmYXVsdCBDU1MuXG5AbWl4aW4gb3JiaXQtY29udHJvbCB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuICB6LWluZGV4OiAkb3JiaXQtY29udHJvbC16aW5kZXg7XG4gIHBhZGRpbmc6ICRvcmJpdC1jb250cm9sLXBhZGRpbmc7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtcHJldmlvdXNgIGNsYXNzLlxuQG1peGluIG9yYml0LXByZXZpb3VzIHtcbiAgI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBuZXh0IGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LW5leHRgIGNsYXNzLlxuQG1peGluIG9yYml0LW5leHQge1xuICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICN7JGdsb2JhbC1yaWdodH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjb250YWluZXIgb2YgT3JiaXQgYnVsbGV0cy4gLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtYnVsbGV0c2AgY2xhc3MuXG5AbWl4aW4gb3JiaXQtYnVsbGV0cyB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAkb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A7XG4gIG1hcmdpbi1ib3R0b206ICRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGJ1dHRvbiB7XG4gICAgd2lkdGg6ICRvcmJpdC1idWxsZXQtZGlhbWV0ZXI7XG4gICAgaGVpZ2h0OiAkb3JiaXQtYnVsbGV0LWRpYW1ldGVyO1xuICAgIG1hcmdpbjogJG9yYml0LWJ1bGxldC1tYXJnaW47XG5cbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW9yYml0IHtcbiAgLm9yYml0IHtcbiAgICBAaW5jbHVkZSBvcmJpdC13cmFwcGVyO1xuICB9XG5cbiAgLm9yYml0LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY29udGFpbmVyO1xuICB9XG5cbiAgLm9yYml0LXNsaWRlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1zbGlkZTtcbiAgfVxuXG4gIC5vcmJpdC1maWd1cmUge1xuICAgIEBpbmNsdWRlIG9yYml0LWZpZ3VyZTtcbiAgfVxuXG4gIC5vcmJpdC1pbWFnZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtaW1hZ2U7XG4gIH1cblxuICAub3JiaXQtY2FwdGlvbiB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY2FwdGlvbjtcbiAgfVxuXG4gICVvcmJpdC1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jb250cm9sO1xuICB9XG5cbiAgLm9yYml0LXByZXZpb3VzIHtcbiAgICBAZXh0ZW5kICVvcmJpdC1jb250cm9sO1xuICAgIEBpbmNsdWRlIG9yYml0LXByZXZpb3VzO1xuICB9XG5cbiAgLm9yYml0LW5leHQge1xuICAgIEBleHRlbmQgJW9yYml0LWNvbnRyb2w7XG4gICAgQGluY2x1ZGUgb3JiaXQtbmV4dDtcbiAgfVxuXG4gIC5vcmJpdC1idWxsZXRzIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1idWxsZXRzO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwYWdpbmF0aW9uXG4vLy8vXG5cbi8vLyBGb250IHNpemUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIG9mIHRoZSBwYWdpbmF0aW9uIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKSAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IG1hcmdpbiB0byBzZXBhcmF0ZSBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGVsbGlwc2lzIGluIGEgcGFnaW5hdGlvbiBtZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gSWYgYGZhbHNlYCwgZG9uJ3QgZGlzcGxheSBwYWdlIG51bWJlciBsaW5rcyBvbiBtb2JpbGUsIG9ubHkgbmV4dC9wcmV2aW91cyBsaW5rc1xuLy8vIGFuZCBvcHRpb25hbGx5IGN1cnJlbnQgcGFnZSBudW1iZXIuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheSB0aGUgY3VycmVudCBwYWdlIG51bWJlciBvbiBtb2JpbGUgZXZlbiBpZiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYGZhbHNlYC5cbi8vLyBUaGlzIHBhcmFtZXRlciB3aWxsIG9ubHkgb3ZlcnJpZGUgdGhlIHZpc2liaWxpdHkgc2V0dGluZyBvZiB0aGUgY3VycmVudCBpdGVtIGZvciBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtgLFxuLy8vIGl0IHdpbGwgbm90IGFmZmVjdCB0aGUgY3VycmVudCBwYWdlIG51bWJlciB2aXNpYmlsaXR5IHdoZW4gYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGB0cnVlYC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYXJyb3dzIGFyZSBhZGRlZCB0byB0aGUgbmV4dCBhbmQgcHJldmlvdXMgbGlua3Mgb2YgcGFnaW5hdGlvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwYWdpbmF0aW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWNvbnRhaW5lciAoXG4gICRtYXJnaW4tYm90dG9tOiAkcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tLFxuICAkZm9udC1zaXplOiAkcGFnaW5hdGlvbi1mb250LXNpemUsXG4gICRzcGFjaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmcsXG4gICRyYWRpdXM6ICRwYWdpbmF0aW9uLXJhZGl1cyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gIC8vIExpc3QgaXRlbVxuICBsaSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6bGFzdC1jaGlsZCxcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtIHtcbiAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBjdXJyZW50IHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50LFxuICAkY29sb3ItY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50XG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWN1cnJlbnQ7XG4gIGNvbG9yOiAkY29sb3ItY3VycmVudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gZWxsaXBzaXMgZm9yIHVzZSBpbiBhIHBhZ2luYXRpb24gbGlzdC5cbkBtaXhpbiBwYWdpbmF0aW9uLWVsbGlwc2lzIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvclxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb250ZW50OiAnXFwyMDI2JztcbiAgY29sb3I6ICRjb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcGFnaW5hdGlvbiB7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWNvbnRhaW5lcjtcblxuICAgIC5jdXJyZW50IHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1jdXJyZW50O1xuICAgIH1cblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLmVsbGlwc2lzOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWVsbGlwc2lzO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFnaW5hdGlvbi1hcnJvd3Mge1xuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAnXFwwMGFiJztcbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuICAgIC5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYmInO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwcm9ncmVzcyBiYXIgY29udGFpbmVyLlxuQG1peGluIHByb2dyZXNzLWNvbnRhaW5lciB7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogJHByb2dyZXNzLW1hcmdpbi1ib3R0b207XG4gIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYWNrZ3JvdW5kO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBtZXRlciBvZiBhIHByb2dyZXNzIGJhci5cbkBtaXhpbiBwcm9ncmVzcy1tZXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDtcblxuICBAaWYgaGFzLXZhbHVlKCRwcm9ncmVzcy1yYWRpdXMpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRleHQgaW4gdGhlIHByb2dyZXNzIG1ldGVyLlxuQG1peGluIHByb2dyZXNzLW1ldGVyLXRleHQge1xuICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogJHdoaXRlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpZiBoYXMtdmFsdWUoJHByb2dyZXNzLXJhZGl1cykge1xuICAgIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyIHtcbiAgLy8gUHJvZ3Jlc3MgYmFyXG4gIC5wcm9ncmVzcyB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtY29udGFpbmVyO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElubmVyIG1ldGVyXG4gIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXI7XG4gIH1cblxuICAvLyBJbm5lciBtZXRlciB0ZXh0XG4gIC5wcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlci10ZXh0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gW1RPRE9dIENoZWNrIGhvdyBwbHVnaW4gY29uZmlybXMgZGlzYWJsZWQgb3IgdmVydGljYWwgc3RhdHVzXG4vLyBbVE9ET10gQ2hlY2sgaWYgdHJhbnNpdGlvbjogYWxsOyBpcyBuZWNlc3NhcnlcblxuLy8vL1xuLy8vIEBncm91cCBzbGlkZXJcbi8vLy9cblxuLy8vIERlZmF1bHQgc2xpZGVyIHdpZHRoIG9mIGEgdmVydGljYWwgc2xpZGVyLiAoRG9lc24ndCBhcHBseSB0byB0aGUgbmF0aXZlIHNsaWRlci4pXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnRpZXMgdG8gYXBwbHkgdG8gdGhlIHNsaWRlciBoYW5kbGUgYW5kIGZpbGwuIChEb2Vzbid0IGFwcGx5IHRvIHRoZSBuYXRpdmUgc2xpZGVyLilcbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHNsaWRlcnMuXG5AbWl4aW4gc2xpZGVyLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWJhY2tncm91bmQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciBhY3RpdmUgZmlsbCBmb3Igc2xpZGVycy5cbkBtaXhpbiBzbGlkZXItZmlsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRzbGlkZXItaGVpZ2h0O1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRoZSBzbGlkZXIgaGFuZGxlcy5cbkBtaXhpbiBzbGlkZXItaGFuZGxlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXI7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gIGhlaWdodDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuXG4gIGJvcmRlci1yYWRpdXM6ICRzbGlkZXItcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHNjYWxlLWNvbG9yKCRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuICB9XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgfVxufVxuXG5AbWl4aW4gc2xpZGVyLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5AbWl4aW4gc2xpZGVyLXZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci13aWR0aC12ZXJ0aWNhbDtcbiAgaGVpZ2h0OiAxMi41cmVtO1xuICBtYXJnaW46IDAgMS4yNXJlbTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XG5cbiAgLnNsaWRlci1maWxsIHtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6ICRzbGlkZXItd2lkdGgtdmVydGljYWw7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuICAgIGhlaWdodDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXNsaWRlciB7XG4gIC8vIENvbnRhaW5lclxuICAuc2xpZGVyIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItY29udGFpbmVyO1xuICB9XG5cbiAgLy8gRmlsbCBhcmVhXG4gIC5zbGlkZXItZmlsbCB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWZpbGw7XG4gIH1cblxuICAvLyBEcmFnZ2FibGUgaGFuZGxlXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItaGFuZGxlO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgLnNsaWRlci5kaXNhYmxlZCxcbiAgLnNsaWRlcltkaXNhYmxlZF0ge1xuICAgIEBpbmNsdWRlIHNsaWRlci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIHNsaWRlclxuICAuc2xpZGVyLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBSVEwgc3VwcG9ydFxuICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgIC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tc3RpY2t5IHtcbiAgLnN0aWNreS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5zdGlja3kge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAuc3RpY2t5LmlzLXN0dWNrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogNTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICYuaXMtYXQtdG9wIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBzd2l0Y2hcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYSBzd2l0Y2guXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBhY3RpdmUgY29sb3Igb2YgYSBzd2l0Y2guXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoLCB3aXRoIG5vIGNsYXNzIGFwcGxpZWQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodDogMnJlbSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCB3aXRoIC50aW55IGNsYXNzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoIHdpdGggLnNtYWxsIGNsYXNzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2ggd2l0aCAubGFyZ2UgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBvZiB0aGUgc3dpdGNoXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgc3dpdGNoIGNvbnRhaW5lciBhbmQgcGFkZGxlLlxuLy8vIEB0eXBlIENvbG9yXG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYSBzd2l0Y2ggcGFkZGxlIGFuZCB0aGUgZWRnZSBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIGJvcmRlciByYWRpdXMgb2YgdGhlIHN3aXRjaCBwYWRkbGVcbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBzd2l0Y2ggdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8gbWFrZSB0aGVtIHZhcmlhYmxlc1xuLy8gYXNrIGFib3V0IGFjY2Vzc2liaWxpdHkgb24gbGFiZWxcbi8vIGNoYW5nZSBjbGFzcyBuYW1lIGZvciB0ZXh0XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzd2l0Y2ggY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgY29udGFpbmVyIGNsYXNzLlxuQG1peGluIHN3aXRjaC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206ICRzd2l0Y2gtbWFyZ2luO1xuICBvdXRsaW5lOiAwO1xuXG4gIC8vIFRoZXNlIHByb3BlcnRpZXMgY2FzY2FkZSBkb3duIHRvIHRoZSBzd2l0Y2ggdGV4dFxuICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzd2l0Y2ggaW5wdXQuIEFwcGx5IHRoaXMgdG8gYW4gYDxpbnB1dD5gIHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGJhY2tncm91bmQgYW5kIHBhZGRsZSBvZiBhIHN3aXRjaC4gQXBwbHkgdGhpcyB0byBhIGA8bGFiZWw+YCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXBhZGRsZSB7XG4gICRzd2l0Y2gtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0ICogMjtcbiAgJHBhZGRsZS1oZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRzd2l0Y2gtcGFkZGxlLW9mZnNldCAqIDIpO1xuICAkcGFkZGxlLXdpZHRoOiAkc3dpdGNoLWhlaWdodCAtICgkc3dpdGNoLXBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS1hY3RpdmUtb2ZmZXN0OiAkc3dpdGNoLXdpZHRoIC0gJHBhZGRsZS13aWR0aCAtICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJHN3aXRjaC13aWR0aDtcbiAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcblxuICBib3JkZXItcmFkaXVzOiAkc3dpdGNoLXJhZGl1cztcbiAgYmFja2dyb3VuZDogJHN3aXRjaC1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uO1xuXG4gIC8vIFJlc2V0dGluZyB0aGVzZSA8bGFiZWw+IHByZXNldHMgc28gdHlwZSBzdHlsZXMgY2FzY2FkZSBkb3duXG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcblxuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gTmVlZGVkIHRvIG92ZXJyaWRlIHNwZWNpZmljaXR5XG4gIGlucHV0ICsgJiB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gVGhlIHBhZGRsZSBpdHNlbGZcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcGFkZGxlLXdpZHRoO1xuICAgIGhlaWdodDogJHBhZGRsZS1oZWlnaHQ7XG5cbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIGJvcmRlci1yYWRpdXM6ICRzd2l0Y2gtcGFkZGxlLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kO1xuICAgIHRyYW5zaXRpb246ICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb247XG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBDaGFuZ2UgdGhlIHZpc3VhbCBzdHlsZSB3aGVuIHRoZSBzd2l0Y2ggaXMgYWN0aXZlXG4gIGlucHV0OmNoZWNrZWQgfiAmIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGxlLWFjdGl2ZS1vZmZlc3Q7XG4gICAgfVxuICB9XG5cbiAgaW5wdXQ6Zm9jdXMgfiAmIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIH1cbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGFjdGl2ZS9pbmFjdGl2ZSB0ZXh0IGluc2lkZSBhIHN3aXRjaC4gQXBwbHkgdGhpcyB0byB0ZXh0IGVsZW1lbnRzIGluc2lkZSB0aGUgc3dpdGNoIGA8bGFiZWw+YC5cbkBtaXhpbiBzd2l0Y2gtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWN0aXZlIHN0YXRlIHRleHQgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC10ZXh0LWFjdGl2ZSB7XG4gICN7JGdsb2JhbC1sZWZ0fTogOCU7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5hY3RpdmUgc3RhdGUgdGV4dCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXRleHQtaW5hY3RpdmUge1xuICAjeyRnbG9iYWwtcmlnaHR9OiAxNSU7XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc2l6ZSBvZiBhIHN3aXRjaCBieSBtb2RpZnlpbmcgdGhlIHNpemUgb2YgdGhlIGJvZHkgYW5kIHBhZGRsZS4gQXBwbHkgdGhpcyB0byBhIHN3aXRjaCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmb250LXNpemUgWzFyZW1dIC0gRm9udCBzaXplIG9mIGxhYmVsIHRleHQgd2l0aGluIHRoZSBzd2l0Y2guXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzd2l0Y2gtaGVpZ2h0IFsycmVtXSAtIEhlaWdodCBvZiB0aGUgc3dpdGNoIGJvZHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkbGUtb2Zmc2V0IFswLjI1cmVtXSAtIFNwYWNpbmcgYmV0d2VlbiB0aGUgc3dpdGNoIHBhZGRsZSBhbmQgdGhlIGVkZ2Ugb2YgdGhlIHN3aXRjaCBib2R5LlxuQG1peGluIHN3aXRjaC1zaXplKFxuICAkZm9udC1zaXplOiAxcmVtLFxuICAkc3dpdGNoLWhlaWdodDogMnJlbSxcbiAgJHBhZGRsZS1vZmZzZXQ6IDAuMjVyZW1cbikge1xuXG4gICRzd2l0Y2gtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0ICogMjtcbiAgJHBhZGRsZS13aWR0aDogJHN3aXRjaC1oZWlnaHQgLSAoJHBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS1oZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRwYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtYWN0aXZlLW9mZmVzdDogJHN3aXRjaC13aWR0aCAtICRwYWRkbGUtd2lkdGggLSAkcGFkZGxlLW9mZnNldDtcblxuICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuXG4gIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICB3aWR0aDogJHN3aXRjaC13aWR0aDtcbiAgICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgfVxuXG4gIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgdG9wOiAkcGFkZGxlLW9mZnNldDtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtb2Zmc2V0O1xuICAgIHdpZHRoOiAkcGFkZGxlLXdpZHRoO1xuICAgIGhlaWdodDogJHBhZGRsZS1oZWlnaHQ7XG4gIH1cblxuICBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtYWN0aXZlLW9mZmVzdDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zd2l0Y2gge1xuICAvLyBDb250YWluZXIgY2xhc3NcbiAgLnN3aXRjaCB7XG4gICAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtY29udGFpbmVyO1xuICB9XG5cbiAgLy8gPGlucHV0PiBlbGVtZW50XG4gIC5zd2l0Y2gtaW5wdXQge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1pbnB1dDtcbiAgfVxuXG4gIC8vIDxsYWJlbD4gZWxlbWVudFxuICAuc3dpdGNoLXBhZGRsZSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXBhZGRsZTtcbiAgfVxuXG4gIC8vIEJhc2UgbGFiZWwgdGV4dCBzdHlsZXNcbiAgJXN3aXRjaC10ZXh0IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtdGV4dDtcbiAgfVxuXG4gIC8vIEFjdGl2ZSBsYWJlbCB0ZXh0IHN0eWxlc1xuICAuc3dpdGNoLWFjdGl2ZSB7XG4gICAgQGV4dGVuZCAlc3dpdGNoLXRleHQ7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQtYWN0aXZlO1xuICB9XG5cbiAgLy8gSW5hY3RpdmUgbGFiZWwgdGV4dCBzdHlsZXNcbiAgLnN3aXRjaC1pbmFjdGl2ZSB7XG4gICAgQGV4dGVuZCAlc3dpdGNoLXRleHQ7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQtaW5hY3RpdmU7XG4gIH1cblxuICAvLyBTd2l0Y2ggc2l6ZXNcbiAgLnN3aXRjaC50aW55IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZShyZW0tY2FsYygxMCksICRzd2l0Y2gtaGVpZ2h0LXRpbnksICRzd2l0Y2gtcGFkZGxlLW9mZnNldCk7XG4gIH1cblxuICAuc3dpdGNoLnNtYWxsIHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZShyZW0tY2FsYygxMiksICRzd2l0Y2gtaGVpZ2h0LXNtYWxsLCAkc3dpdGNoLXBhZGRsZS1vZmZzZXQpO1xuICB9XG5cbiAgLnN3aXRjaC5sYXJnZSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXNpemUocmVtLWNhbGMoMTYpLCAkc3dpdGNoLWhlaWdodC1sYXJnZSwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCB0YWJsZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgdGFibGUgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZSAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHN0cmlwZWQgdGFibGUgcm93cyBhbmQgdGhlIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1jb2xvci1zY2FsZTogNSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHN0eWxlIGZvciB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWJsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0YW5kYXJkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdHJpcGVkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgdGFibGVzIGFyZSBzdHJpcGVkIGJ5IGRlZmF1bHQgYW5kIGFuIC51bnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC4gSWYgYGZhbHNlYCwgYSAuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBzdHJpcGVkIHJvd3MuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgc3RyaXBlIG9uIHJvd3Mgb2YgdGhlIHRhYmxlcywgZXhjbHVkaW5nIHRoZSBoZWFkZXIgYW5kIGZvb3Rlci4gSWYgZXZlbiwgdGhlIGV2ZW4gcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBvZGQsIHRoZSBvZGQgcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBlbXB0eSwgb3IgYW55IG90aGVyIHZhbHVlLCB0aGUgdGFibGUgcm93cyB3aWxsIGhhdmUgbm8gc3RyaXBpbmcuXG4vLy8gQHR5cGUgS2V5d29yZFxuJHRhYmxlLXN0cmlwZTogZXZlbiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlYWRlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBmb290ZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGhlYWRlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9vdGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgaGVhZGVyIHdoZW4gdXNpbmcgc3RhY2tlZCB0YWJsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggc3RhY2tlZCB0YWJsZSBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuQG1peGluIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSkge1xuICB0ciB7XG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBldmVuLCBkYXJrZW4gdGhlIGV2ZW4gcm93cy5cbiAgICBAaWYgJHN0cmlwZSA9PSBldmVuIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIG9kZCwgZGFya2VuIHRoZSBvZGQgcm93cy5cbiAgICBAZWxzZSBpZiAkc3RyaXBlID09IG9kZCB7XG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS11bnN0cmlwZSgpIHtcbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlOiAkdGFibGUtc3RyaXBlLCAkaXMtc3RyaXBlZDogJHRhYmxlLWlzLXN0cmlwZWQpIHtcbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2FwdGlvblxuICBjYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWRcbiAgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1oZWFkLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBmb290XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtZm9vdC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtZm9vdC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZCBhbmQgZm9vdFxuICB0aGVhZCxcbiAgdGZvb3Qge1xuICAgIC8vIFJvd3Mgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0ciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAvLyBDZWxscyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiAjeyRnbG9iYWwtbGVmdH07XG4gICAgfVxuICB9XG5cbiAgLy8gVGFibGUgcm93c1xuICB0Ym9keSB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBzdHJpcGVkXG4gIEBpZiAkaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgIH1cblxuICAgICYudW5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgbm90IHN0cmlwZWRcbiAgQGVsc2UgaWYgJGlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgIH1cblxuICAgICYuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGFibGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0cmlwZSBbJHRhYmxlLXN0cmlwZV0gLSBVc2VzIGtleXdvcmRzIGV2ZW4sIG9kZCwgb3Igbm9uZSB0byBkYXJrZW4gcm93cyBvZiB0aGUgdGFibGUuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGV2ZW4uXG5AbWl4aW4gdGFibGUoXG4gICRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsXG4gICRuZXN0OiBmYWxzZVxuKSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGlmICRuZXN0IHtcbiAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgYWJpbGl0eSB0byBob3Jpem9udGFsbHkgc2Nyb2xsIHRoZSB0YWJsZSB3aGVuIHRoZSBjb250ZW50IG92ZXJmbG93cyBob3Jpem9udGFsbHkuXG5AbWl4aW4gdGFibGUtc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4vLy8gU2xpZ2h0bHkgZGFya2VucyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbkBtaXhpbiB0YWJsZS1ob3ZlciB7XG4gIHRoZWFkIHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWZvb3Qtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRib2R5IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIG5vbi1zdHJpcGVkIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2UgaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWNrZWQgdGFibGUuIFVzZWZ1bCBmb3Igc21hbGwtc2NyZWVuIGxheW91dHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaGVhZGVyIFskc2hvdy1oZWFkZXItZm9yLXN0YWNrZWRdIC0gU2hvdyB0aGUgZmlyc3QgdGggb2YgaGVhZGVyIHdoZW4gc3RhY2tlZC5cbkBtaXhpbiB0YWJsZS1zdGFjaygkaGVhZGVyOiAkc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQpIHtcbiAgQGlmICRoZWFkZXIge1xuICAgIHRoZWFkIHtcbiAgICAgIHRoIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdHIsXG4gIHRoLFxuICB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJsZSgkbmVzdDogZmFsc2UpIHtcbiAgdGFibGUge1xuICAgIEBpbmNsdWRlIHRhYmxlKCRuZXN0OiAkbmVzdCk7XG4gIH1cblxuICB0YWJsZS5zdGFjayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGUtc3RhY2stYnJlYWtwb2ludCBkb3duKSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZS1zdGFjaztcbiAgICB9XG4gIH1cblxuICB0YWJsZS5zY3JvbGwge1xuICAgIEBpbmNsdWRlIHRhYmxlLXNjcm9sbDtcbiAgfVxuXG4gIHRhYmxlLmhvdmVyIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1ob3ZlcjtcbiAgfVxuXG4gIC50YWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIGNoZWNrIHRoZSBsdW1pbmFuY2Ugb2YuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuQGZ1bmN0aW9uIGNvbG9yLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI3JlbGF0aXZlbHVtaW5hbmNlZGVmXG4gICRyZ2JhOiByZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpO1xuICAkcmdiYTI6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMyB7XG4gICAgJHJnYjogbnRoKCRyZ2JhLCAkaSk7XG4gICAgJHJnYjogJHJnYiAvIDI1NTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCAkcmdiIC8gMTIuOTIsIHBvdygoJHJnYiArIDAuMDU1KSAvIDEuMDU1LCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiAkbHVtaW5hbmNlMSAvICRsdW1pbmFuY2UyO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IDEgLyAkcmF0aW87XG4gIH1cblxuICAkcmF0aW86IHJvdW5kKCRyYXRpbyAqIDEwKSAvIDEwO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFzZSAtIENvbG9yIHRvIGNoZWNrIGx1bWluYW5jZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRjb2xvcnMgWygkd2hpdGUsICRibGFjayldIC0gQ29sb3JzIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b2xlcmFuY2UgWyRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2VdIC0gQ29udHJhc3QgdG9sZXJhbmNlLlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAkZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3Qtd2FybmluZ3MgYW5kICRjb250cmFzdCA8IDMpIHtcbiAgICBAd2FybiBcIkNvbnRyYXN0IHJhdGlvIG9mICN7JGJlc3R9IG9uICN7JGJhc2V9IGlzIHByZXR0eSBiYWQsIGp1c3QgI3skY29udHJhc3R9XCI7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYCBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRwcmltYXJ5LWNvbG9yOiAjMTc3OWJhICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiAjNzY3Njc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogIzNhZGI3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHdhcm5pbmctY29sb3I6ICNmZmFlMDAgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRhbGVydC1jb2xvcjogI2NjNGIzNyAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0YWJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBvZiB0aGUgdGFiIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgZm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRhYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhIHRhYiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lciAoXG4gICRtYXJnaW46ICR0YWItbWFyZ2luLFxuICAkYmFja2dyb3VuZDogJHRhYi1iYWNrZ3JvdW5kLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJG1hcmdpbjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRhaW5lciB0byBoYXZlIHZlcnRpY2FsIHRhYnMuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGFpbmVyKClgLlxuQG1peGluIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsIHtcbiAgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgbGlua3Mgd2l0aGluIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgYDxsaT5gIGVsZW1lbnRzIGluc2lkZSBhIHRhYiBjb250YWluZXIuXG5AbWl4aW4gdGFicy10aXRsZSAoXG4gICRwYWRkaW5nOiAkdGFiLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJHRhYi1pdGVtLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkdGFiLWNvbG9yLFxuICAkY29sb3ItYWN0aXZlOiAkdGFiLWFjdGl2ZS1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkYmFja2dyb3VuZC1hY3RpdmU6ICR0YWItYmFja2dyb3VuZC1hY3RpdmVcbikge1xuICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gID4gYSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJlthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRjb2xvci1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHdyYXBwZXIgdGhhdCBzdXJyb3VuZHMgYSB0YWIgZ3JvdXAncyBjb250ZW50IHBhbmVzLlxuQG1peGluIHRhYnMtY29udGVudCAoXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkdGFiLWNvbnRlbnQtY29sb3IsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRlbnQgY29udGFpbmVyIHRvIGhhdmUgYSB2ZXJ0aWNhbCBzdHlsZSwgYnkgc2hpZnRpbmcgdGhlIGJvcmRlciBhcm91bmQuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGVudCgpYC5cbkBtaXhpbiB0YWJzLWNvbnRlbnQtdmVydGljYWwgKFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBpbmRpdmlkdWFsIHRhYiBjb250ZW50IHBhbmVsIHdpdGhpbiB0aGUgdGFiIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIHRhYnMtcGFuZWwgKFxuICAkcGFkZGluZzogJHRhYi1jb250ZW50LXBhZGRpbmdcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFicyB7XG4gIC50YWJzIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsXG4gIC50YWJzLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFNpbXBsZVxuICAudGFicy5zaW1wbGUge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmltYXJ5IGNvbG9yXG4gIC50YWJzLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJHByaW1hcnktY29sb3IpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCRwcmltYXJ5LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFicy10aXRsZSB7XG4gICAgQGluY2x1ZGUgdGFicy10aXRsZTtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudDtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudC12ZXJ0aWNhbDtcbiAgfVxuXG4gIC50YWJzLXBhbmVsIHtcbiAgICBAaW5jbHVkZSB0YWJzLXBhbmVsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0aHVtYm5haWxcbi8vLy9cblxuLy8vIEJvcmRlciBhcm91bmQgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBCb3JkZXJcbiR0aHVtYm5haWwtYm9yZGVyOiA0cHggc29saWQgJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHVuZGVyIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyB1bmRlciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFNoYWRvd1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2l0aW9uIHByb3BydGllcyBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFkZHMgdGh1bWJuYWlsIHN0eWxlcyB0byBhbiBlbGVtZW50LlxuQG1peGluIHRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkdGh1bWJuYWlsLW1hcmdpbi1ib3R0b207XG5cbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1yYWRpdXM7XG4gIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93O1xuXG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG5AbWl4aW4gdGh1bWJuYWlsLWxpbmsge1xuICB0cmFuc2l0aW9uOiAkdGh1bWJuYWlsLXRyYW5zaXRpb247XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI7XG4gIH1cblxuICBpbWFnZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10aHVtYm5haWwge1xuICAudGh1bWJuYWlsIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWw7XG4gIH1cblxuICBhLnRodW1ibmFpbCB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsLWxpbms7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRpdGxlLWJhclxuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIFdlaWdodFxuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIHRoZSBtZW51IGljb24gYW5kIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdGl0bGUtYmFyIHtcbiAgLnRpdGxlLWJhciB7XG4gICAgcGFkZGluZzogJHRpdGxlYmFyLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJHRpdGxlYmFyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0aXRsZWJhci1jb2xvcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIH1cblxuICAgIC5tZW51LWljb24ge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkdGl0bGViYXItaWNvbi1zcGFjaW5nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC50aXRsZS1iYXItbGVmdCxcbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50aXRsZS1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZS1iYXItdGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkdGl0bGViYXItdGV4dC1mb250LXdlaWdodDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9vbHRpcFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjdXJzb3Igb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBib3R0b20gb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBMaXN0XG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIHRvb2x0aXAgZm9udC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWF4IHdpZHRoIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLW1heC13aWR0aDogMTByZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBvZiB0aGUgdG9vbHRpcCB0ZXh0LiBCeSBkZWZhdWx0LCB3ZSByZWNvbW1lbmQgYSBzbWFsbGVyIGZvbnQgc2l6ZSB0aGFuIHRoZSBib2R5IGNvcHkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCBoZWlnaHQgZm9yIHRvb2x0aXBzLiBUaGlzIGlzIGhlbHBmdWwgZm9yIGNhbGN1bGF0aW5nIHRoZSBkaXN0YW5jZSBvZiB0aGUgdG9vbHRpcCBmcm9tIHRoZSB0b29sdGlwIHdvcmQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBoYXMtdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgYm9yZGVyLWJvdHRvbTogJGhhcy10aXAtYm9yZGVyLWJvdHRvbTtcbiAgZm9udC13ZWlnaHQ6ICRoYXMtdGlwLWZvbnQtd2VpZ2h0O1xuICBjdXJzb3I6ICRoYXMtdGlwLWN1cnNvcjtcbn1cblxuQG1peGluIHRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgI3skdG9vbHRpcC1waXAtaGVpZ2h0fSk7XG4gIHotaW5kZXg6IDEyMDA7XG5cbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBmb250LXNpemU6ICR0b29sdGlwLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgJi5ib3R0b20ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCB1cCk7XG4gICAgICBib3R0b206IDEwMCU7XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi50b3Age1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCBkb3duKTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLmxlZnQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCByaWdodCk7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5yaWdodCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIGxlZnQpO1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi10b3A6OmJlZm9yZSB7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHRvcDogMTAlO1xuICB9XG5cbiAgJi5hbGlnbi1ib3R0b206OmJlZm9yZSB7XG4gICAgYm90dG9tOiAxMCU7XG4gICAgdG9wOiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1sZWZ0OjpiZWZvcmUge1xuICAgIGxlZnQ6IDEwJTtcbiAgICByaWdodDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvb2x0aXAge1xuICAuaGFzLXRpcCB7XG4gICAgQGluY2x1ZGUgaGFzLXRpcDtcbiAgfVxuXG4gIC50b29sdGlwIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0b3AtYmFyXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGZvciB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItcGFkZGluZzogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRvcCBiYXIuIFRoaXMgY29sb3IgYWxzbyBjYXNjYWRlcyB0byBtZW51cyB3aXRoaW4gdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHN1Ym1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci4gVXNlZnVsbCBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgdHJhbnNwYXJlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGZvciB0aGUgdG9wIGJhciB0aXRsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMC41cmVtIDFyZW0gMC41cmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGA8aW5wdXQ+YCBlbGVtZW50cyBpbnNpZGUgdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggdG9wIGJhciBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRvcCBiYXIgY29udGFpbmVyLlxuQG1peGluIHRvcC1iYXItY29udGFpbmVyIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBwYWRkaW5nOiAkdG9wYmFyLXBhZGRpbmc7XG5cbiAgJixcbiAgdWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICR0b3BiYXItYmFja2dyb3VuZCBpcyBkaWZmZXJudCBmcm9tICR0b3BiYXItYmFja2dyb3VuZC1zdWJtZW51XG4gIEBpZiAoJHRvcGJhci1iYWNrZ3JvdW5kICE9ICR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kKSB7XG4gICAgdWwgdWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzdHJhaW4gd2lkdGggb2YgaW5wdXRzIGJ5IGRlZmF1bHQgdG8gbWFrZSB0aGVtIGVhc2llciB0byBhcnJhbmdlXG4gIGlucHV0IHtcbiAgICBtYXgtd2lkdGg6ICR0b3BiYXItaW5wdXQtd2lkdGg7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gIH1cblxuICAvLyBUaGUgYWJvdmUgc3R5bGVzIHNob3VsZG4ndCBhcHBseSB0byBpbnB1dCBncm91cCBmaWVsZHNcbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgfVxuXG4gIGlucHV0LmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBNYWtlcyBzZWN0aW9ucyBvZiBhIHRvcCBiYXIgc3RhY2sgb24gdG9wIG9mIGVhY2ggb3RoZXIuXG5AbWl4aW4gdG9wLWJhci1zdGFja2VkIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgLy8gU3ViLXNlY3Rpb25zXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBVbmRvZXMgdGhlIENTUyBhcHBsaWVkIGJ5IHRoZSBgdG9wLWJhci1zdGFja2VkKClgIG1peGluLlxuQG1peGluIHRvcC1iYXItdW5zdGFjayB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdG9wLWJhciB7XG4gIC8vIFRvcCBiYXIgY29udGFpbmVyXG4gIC50b3AtYmFyIHtcbiAgICBAaW5jbHVkZSB0b3AtYmFyLWNvbnRhaW5lcjtcblxuICAgIC8vIFN0YWNrIG9uIHNtYWxsIHNjcmVlbnMgYnkgZGVmYXVsdFxuICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBpbmNsdWRlIHRvcC1iYXItdW5zdGFjaztcbiAgICB9XG5cbiAgICAvLyBHZW5lcmF0ZSBjbGFzc2VzIGZvciBzdGFja2luZyBvbiBlYWNoIHNjcmVlbiBzaXplIChkZWZpbmVkIGluICRicmVha3BvaW50LWNsYXNzZXMpXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAmLnN0YWNrZWQtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTdWItc2VjdGlvbnNcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBtYXJnaW46ICR0b3BiYXItdGl0bGUtc3BhY2luZztcbiAgICB9XG5cbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAkdG9wYmFyLXRpdGxlLXNwYWNpbmc7XG5cbiAgICAgIC5tZW51LWljb24ge1xuICAgICAgICBib3R0b206IDJweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvcigkc2l6ZSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gLjAwMTI1O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gLjAwMTI1O1xuICAvLyB0ZXN0IGFjdHVhbCBsb3dlci1ib3VuZC1zaXplLCBpZiAwIHNldCBpdCB0byAwZW1cbiAgQGlmIHN0cmlwLXVuaXQoJGxvd2VyLWJvdW5kLXNpemUpID09IDAge1xuICAgICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKTtcbiAgfVxuXG4gIEBpZiAkdXBwZXItYm91bmQtc2l6ZSA9PSBudWxsIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICR1cHBlci1ib3VuZDogLXpmLWJwLXRvLWVtKCR1cHBlci1ib3VuZC1zaXplKTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHVwcGVyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvcigkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3Itb25seSgkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIG9ubHkpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzIHtcbiAgLy8gQmFzaWMgaGlkaW5nIGNsYXNzZXNcbiAgLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAuaGlkZS1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBoaWRlLWZvcigkc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIC5zaG93LWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHNob3ctZm9yKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGlkZS1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBoaWRlLWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBzaG93LWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG4gIH1cblxuICAvLyBTY3JlZW4gcmVhZGVyIHZpc2liaWxpdHkgY2xhc3Nlc1xuICAvLyBOZWVkIGEgXCJoaWRlLWZvci1zclwiIGNsYXNzPyBBZGQgYXJpYS1oaWRkZW49J3RydWUnIHRvIHRoZSBlbGVtZW50XG4gIC5zaG93LWZvci1zcixcbiAgLnNob3ctb24tZm9jdXMge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICB9XG5cbiAgLy8gT25seSBkaXNwbGF5IHRoZSBlbGVtZW50IHdoZW4gaXQncyBmb2N1c2VkXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZjtcbiAgICB9XG4gIH1cblxuICAvLyBMYW5kc2NhcGUgYW5kIHBvcnRyYWl0IHZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgRmxleGJveCBVdGlsaXRpZXNcbi8vLy9cbi8vXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGNvdW50IG9mIHNvdXJjZSBvcmRlcmluZ2Bcbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNiAhZGVmYXVsdDtcblxuLy8vIFF1aWNrbHkgZGlzYWJsZS9lbmFibGUgUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgVmFuaWxsYSBGbGV4IEhlbHBlcnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZSAhZGVmYXVsdDtcblxuQG1peGluIGZsZXgtaGVscGVycyB7XG4gIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgLmZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50cykge1xuICAgIC8vIExvb3AgdGhyb3VnaCBSZXNwb25zaXZlIEJyZWFrcG9pbnRzXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtYXV0byB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1ncm93IHtcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LWNsYXNzZXMge1xuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCB1c2luZyBqdXN0aWZ5LWNvbnRlbnRcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluICQtemYtZmxleC1qdXN0aWZ5IHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgIH1cbiAgfVxuICBcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgU3BlY2lmaWNhbGx5IGZvciBWZXJ0aWNhbCBNZW51XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiBtYXAtcmVtb3ZlKCQtemYtZmxleC1qdXN0aWZ5LCAnanVzdGlmeScsICdzcGFjZWQnKSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgICYudmVydGljYWwge1xuICAgICAgICAmLm1lbnUgPiBsaSA+IGEge1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudCB1c2luZyBhbGlnbi1pdGVtcyBhbmQgYWxpZ24tc2VsZlxuICBAZWFjaCAkdmRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWFsaWduIHtcbiAgICAuYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeTogJHZkaXIpO1xuICAgIH1cblxuICAgIC5hbGlnbi1zZWxmLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZigkeTogJHZkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENlbnRyYWwgYWxpZ25tZW50IG9mIGNvbnRlbnRcbiAgLmFsaWduLWNlbnRlci1taWRkbGUge1xuICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6IGNlbnRlciwgJHk6IG1pZGRsZSk7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLy8gU291cmNlIG9yZGVyaW5nXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tb3JkZXItI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LW9yZGVyKCRpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWYW5pbGxhIEZsZXhib3ggSGVscGVyc1xuICBAaW5jbHVkZSBmbGV4LWhlbHBlcnM7XG59XG4iLCJAZnVuY3Rpb24gLXpmLWZsZXgtanVzdGlmeSgkdGV4dC1kaXJlY3Rpb24pe1xuICAkLXpmLWZsZXgtanVzdGlmeTogKFxuICAgICdsZWZ0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1lbmQsIGZsZXgtc3RhcnQpLFxuICAgICdyaWdodCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtc3RhcnQsIGZsZXgtZW5kKSxcbiAgICAnY2VudGVyJzogY2VudGVyLFxuICAgICdqdXN0aWZ5Jzogc3BhY2UtYmV0d2VlbixcbiAgICAnc3BhY2VkJzogc3BhY2UtYXJvdW5kLFxuICApO1xuXG4gIEByZXR1cm4gJC16Zi1mbGV4LWp1c3RpZnk7XG59XG5cblxuJC16Zi1mbGV4LWFsaWduOiAoXG4gICd0b3AnOiBmbGV4LXN0YXJ0LFxuICAnYm90dG9tJzogZmxleC1lbmQsXG4gICdtaWRkbGUnOiBjZW50ZXIsXG4gICdzdHJldGNoJzogc3RyZXRjaCxcbik7XG5cbiQtemYtZmxleC1kaXJlY3Rpb246IChcbiAgJ3Jvdyc6IHJvdyxcbiAgJ3Jvdy1yZXZlcnNlJzogcm93LXJldmVyc2UsXG4gICdjb2x1bW4nOiBjb2x1bW4sXG4gICdjb2x1bW4tcmV2ZXJzZSc6IGNvbHVtbi1yZXZlcnNlLFxuKTtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBieSBhZGRpbmcgYGRpc3BsYXk6IGZsZXhgIHRvIHRoZSBlbGVtZW50LlxuQG1peGluIGZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgYWxpZ25zIHRoZSBpdGVtcyB3aXRoaW4gYSBmbGV4IGNvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHggW251bGxdIC0gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYGxlZnRgLCBgcmlnaHRgLCBgY2VudGVyYCwgYGp1c3RpZnlgLCBvciBgc3BhY2VkYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IGhvcml6b250YWwgYWxpZ25tZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduKCR4OiBudWxsLCAkeTogbnVsbCkge1xuICBAaWYgJHgge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtanVzdGlmeSwgJHgpIHtcbiAgICAgICR4OiBtYXAtZ2V0KCQtemYtZmxleC1qdXN0aWZ5LCAkeCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHh9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBob3Jpem9udGFsIGFsaWdubWVudC4gVXNlIGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnksIG9yIHNwYWNlZC4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgdmVydGljYWwgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGp1c3RpZnktY29udGVudDogJHg7XG4gIGFsaWduLWl0ZW1zOiAkeTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgYWxpZ24gYSBzaW5nbGUgY29sdW1uIHdpdGhpbiBhIGZsZXggcm93LiBBcHBseSB0aGlzIG1peGluIHRvIGEgZmxleCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbi1zZWxmKCR5OiBudWxsKSB7XG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLWNvbHVtbi1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGFsaWduLXNlbGY6ICR5O1xufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc291cmNlIG9yZGVyIG9mIGEgZmxleCBjaGlsZC4gQ2hpbGRyZW4gd2l0aCBsb3dlciBudW1iZXJzIGFwcGVhciBmaXJzdCBpbiB0aGUgbGF5b3V0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3JkZXIgWzBdIC0gT3JkZXIgbnVtYmVyIHRvIGFwcGx5LlxuQG1peGluIGZsZXgtb3JkZXIoJG9yZGVyOiAwKSB7XG4gIG9yZGVyOiAkb3JkZXI7XG59XG5cbi8vLyBDaGFuZ2UgZmxleC1kaXJlY3Rpb25cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW3Jvd10gLSBGbGV4IGRpcmVjdGlvbiB0byB1c2UuIENhbiBiZVxuLy8vICAgLSByb3cgKGRlZmF1bHQpOiBzYW1lIGFzIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIHJvdy1yZXZlcnNlOiBvcHBvc2l0ZSB0byB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSBjb2x1bW46IHNhbWUgYXMgcm93IGJ1dCB0b3AgdG8gYm90dG9tXG4vLy8gICAtIGNvbHVtbi1yZXZlcnNlOiBzYW1lIGFzIHJvdy1yZXZlcnNlIHRvcCB0byBib3R0b21cbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uOiByb3cpIHtcbiAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG4iLCIvLy8gQXBwbGllcyBiYXNpYyB0cmFuc2l0aW9uIHNldHRpbmdzIHRvIGFuIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gdHJhbnNpdGlvbi1iYXNpY3MoXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgQGluY2x1ZGUgLW1vdGlvbi11aS1kZWZhdWx0cztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZztcbiAgdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5O1xufVxuXG4vLy8gV3JhcHMgdGhlIGNvbnRlbnQgaW4gdGhlIHNldHVwIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gc2V0dXAgZm9yIHRyYW5zaXRpb24uXG5AbWl4aW4gdHJhbnNpdGlvbi1zdGFydCgkZGlyKSB7XG4gICRzZWxlY3RvcjogLW11aS1idWlsZC1zZWxlY3RvcihtYXAtZ2V0KCRtb3Rpb24tdWktc3RhdGVzLCAkZGlyKSk7XG5cbiAgQGF0LXJvb3Qge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBhY3RpdmUgY2xhc3MgZm9yIGEgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgLSBTdGF0ZSB0byBhY3RpdmF0ZSBhIHRyYW5zaXRpb24gb24uXG5AbWl4aW4gdHJhbnNpdGlvbi1lbmQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpciksIHRydWUpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzdGFnZ2VyIGFuaW1hdGlvbiwgd2hpY2ggY2FuIGJlIHVzZWQgd2l0aCBBbmd1bGFyJ3MgYG5nLXJlcGVhdGAuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5LWFtb3VudCAtIEFtb3VudCBvZiB0aW1lIGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIHRvIGFkZCBiZXR3ZWVuIGVhY2ggaXRlbSdzIGFuaW1hdGlvbi5cbkBtaXhpbiBzdGFnZ2VyKCRkZWxheS1hbW91bnQpIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5LWFtb3VudDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMDsgLy8gUHJldmVudCBhY2NpZGVudGFsIENTUyBpbmhlcml0YW5jZVxufVxuIiwiLy8gc2Nzcy1saW50OmRpc2FibGUgSW1wb3J0YW50UnVsZSwgU3BhY2VBZnRlckNvbW1hLCBTaW5nbGVMaW5lUGVyUHJvcGVydHlcblxuQG1peGluIC1tb3Rpb24tdWktZGVmYXVsdHMge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IG1hcC1nZXQoJG1vdGlvbi11aS1lYXNpbmdzLCBkZWZhdWx0KTtcbn1cblxuLy8gVHJhbnNpdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLXRyYW5zaXRpb25zIHtcbiAgLy8gU2xpZGVcbiAgLnNsaWRlLWluLWRvd24gICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBkb3duKTsgfVxuICAuc2xpZGUtaW4tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIHJpZ2h0KTsgfVxuICAuc2xpZGUtaW4tdXAgICAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIHVwKTsgfVxuICAuc2xpZGUtaW4tcmlnaHQgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIGxlZnQpOyB9XG4gIC5zbGlkZS1vdXQtZG93biAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgZG93bik7IH1cbiAgLnNsaWRlLW91dC1yaWdodCAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCByaWdodCk7IH1cbiAgLnNsaWRlLW91dC11cCAgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCB1cCk7IH1cbiAgLnNsaWRlLW91dC1sZWZ0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCBsZWZ0KTsgfVxuXG4gIC8vIEZhZGVcbiAgLmZhZGUtaW4gIHsgQGluY2x1ZGUgbXVpLWZhZGUoaW4sICAwLCAxKTsgfVxuICAuZmFkZS1vdXQgeyBAaW5jbHVkZSBtdWktZmFkZShvdXQsIDEsIDApOyB9XG5cbiAgLy8gSGluZ2VcbiAgLmhpbmdlLWluLWZyb20tdG9wICAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICB0b3ApOyB9XG4gIC5oaW5nZS1pbi1mcm9tLXJpZ2h0ICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgcmlnaHQpOyB9XG4gIC5oaW5nZS1pbi1mcm9tLWJvdHRvbSAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgYm90dG9tKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1sZWZ0ICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIGxlZnQpOyB9XG4gIC5oaW5nZS1pbi1mcm9tLW1pZGRsZS14ICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHRvcCwgICBjZW50ZXIpOyB9XG4gIC5oaW5nZS1pbi1mcm9tLW1pZGRsZS15ICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHJpZ2h0LCBjZW50ZXIpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS10b3AgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgdG9wKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tcmlnaHQgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHJpZ2h0KTsgfVxuICAuaGluZ2Utb3V0LWZyb20tYm90dG9tICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIGJvdHRvbSk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLWxlZnQgICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCBsZWZ0KTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbWlkZGxlLXggeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCB0b3AsICAgY2VudGVyKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCByaWdodCwgY2VudGVyKTsgfVxuXG4gIC8vIFNjYWxlXG4gIC5zY2FsZS1pbi11cCAgICB7IEBpbmNsdWRlIG11aS16b29tKGluLCAgMC41LCAxKTsgfVxuICAuc2NhbGUtaW4tZG93biAgeyBAaW5jbHVkZSBtdWktem9vbShpbiwgIDEuNSwgMSk7IH1cbiAgLnNjYWxlLW91dC11cCAgIHsgQGluY2x1ZGUgbXVpLXpvb20ob3V0LCAxLCAxLjUpOyB9XG4gIC5zY2FsZS1vdXQtZG93biB7IEBpbmNsdWRlIG11aS16b29tKG91dCwgMSwgMC41KTsgfVxuXG4gIC8vIFNwaW5cbiAgLnNwaW4taW4gICAgIHsgQGluY2x1ZGUgbXVpLXNwaW4oaW4sICBjdyk7IH1cbiAgLnNwaW4tb3V0ICAgIHsgQGluY2x1ZGUgbXVpLXNwaW4ob3V0LCBjdyk7IH1cbiAgLnNwaW4taW4tY2N3ICB7IEBpbmNsdWRlIG11aS1zcGluKGluLCAgY2N3KTsgfVxuICAuc3Bpbi1vdXQtY2N3IHsgQGluY2x1ZGUgbXVpLXNwaW4ob3V0LCBjY3cpOyB9XG5cbiAgLy8gVHJhbnNpdGlvbiBNb2RpZmllcnNcbiAgLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktc3BlZWRzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1lYXNpbmdzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZGVsYXlzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0tZGVsYXkgeyB0cmFuc2l0aW9uLWRlbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBBbmltYXRpb25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuQG1peGluIG1vdGlvbi11aS1hbmltYXRpb25zIHtcbiAgLnNoYWtlICAgIHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzaGFrZSk7IH1cbiAgLnNwaW4tY3cgIHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzcGluKTsgfVxuICAuc3Bpbi1jY3cgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNwaW4oY2N3KSk7IH1cbiAgLndpZ2dsZSAgIHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbih3aWdnbGUpOyB9XG5cbiAgLnNoYWtlLFxuICAuc3Bpbi1jdyxcbiAgLnNwaW4tY2N3LFxuICAud2lnZ2xlIHtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG1vdGlvbi11aS1zcGVlZHMsIGRlZmF1bHQpO1xuICB9XG5cbiAgLy8gQW5pbWF0aW9uIE1vZGlmaWVyc1xuICAvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuICAuaW5maW5pdGUgeyBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1zcGVlZHMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IGFuaW1hdGlvbi1kdXJhdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZWFzaW5ncyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZGVsYXlzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0tZGVsYXkgeyBhbmltYXRpb24tZGVsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG4iLCIvLy8gRm9ybWF0IGZvciBDU1MgY2xhc3NlcyBjcmVhdGVkIHdpdGggTW90aW9uIFVJLlxuLy8vIEB0eXBlIE1hcFxuLy8vIEBwcm9wIHtCb29sZWFufSBhcHBlbmQgW3RydWVdIC0gRGVmaW5lcyBpZiBzZWxlY3RvcnMgYXJlIGNoYWluZWQgdG8gdGhlIHNlbGVjdG9yIChgLmNsYXNzLmVudGVyYCksIG9yIGFwcGVuZGVkIGFzIGEgbmV3IGNsYXNzIChgLmNsYXNzLWVudGVyYCkuXG4vLy8gQHByb3Age1N0cmluZ30gcHJlZml4IFsnbXVpLSddIC0gUHJlZml4IHRvIGFkZCBiZWZvcmUgdGhlIHN0YXRlIG9mIGEgY2xhc3MuIEVudGVyIGFuIGVtcHR5IHN0cmluZyB0byB1c2Ugbm8gcHJlZml4LlxuLy8vIEBwcm9wIHtTdHJpbmd9IHByZWZpeCBbJy1hY3RpdmUnXSAtIFN1ZmZpeCB0byBhZGQgdG8gdGhlIGFjdGl2ZSBzdGF0ZSBjbGFzcy5cbiRtb3Rpb24tdWktY2xhc3NlczogKFxuICBjaGFpbjogdHJ1ZSxcbiAgcHJlZml4OiAnbXVpLScsXG4gIGFjdGl2ZTogJy1hY3RpdmUnLFxuKSAhZGVmYXVsdDtcblxuLy8vIFN0YXRlIG5hbWVzIHRvIHJlZmVyZW5jZSB3aGVuIHdyaXRpbmcgbW90aW9uIGNsYXNzZXMuIFRvIHVzZSBtdWx0aXBsZSBjbGFzcyBuYW1lcyBmb3Igb25lIHN0YXRlLCBlbnRlciBhIGxpc3Qgb2Ygc3RyaW5ncyBpbnN0ZWFkIG9mIG9uZSBzdHJpbmcuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLXN0YXRlczogKFxuICBpbjogJ2VudGVyJyxcbiAgb3V0OiAnbGVhdmUnLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc3BlZWQgdGhhdCB0cmFuc2l0aW9ucyBhbmQgYW5pbWF0aW9ucyBwbGF5IGF0LCBhbG9uZyB3aXRoIHZhbHVlcyBmb3IgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGhlIHNwZWVkLlxuLy8vIEB0eXBlIE1hcFxuJG1vdGlvbi11aS1zcGVlZHM6IChcbiAgZGVmYXVsdDogNTAwbXMsXG4gIHNsb3c6IDc1MG1zLFxuICBmYXN0OiAyNTBtcyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGRlbGF5IHRvIGFkZCBiZWZvcmUgbW90aW9uLCBhbG9uZyB3aXRoIHZhbHVlcyBmb3IgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGhlIGRlbGF5LlxuLy8vIEB0eXBlIE1hcFxuJG1vdGlvbi11aS1kZWxheXM6IChcbiAgZGVmYXVsdDogMCxcbiAgc2hvcnQ6IDMwMG1zLFxuICBsb25nOiA3MDBtcyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGVhc2luZyBmb3IgdHJhbnNpdGlvbnMgYW5kIGFuaW1hdGlvbnMsIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgZWFzaW5nLlxuLy8vIEB0eXBlIE1hcFxuJG1vdGlvbi11aS1lYXNpbmdzOiAoXG4gIGRlZmF1bHQ6IGxpbmVhcixcbiAgbGluZWFyOiBsaW5lYXIsXG4gIGVhc2U6IGVhc2UsXG4gIGVhc2UtaW46IGVhc2UtaW4sXG4gIGVhc2Utb3V0OiBlYXNlLW91dCxcbiAgZWFzZS1pbi1vdXQ6IGVhc2UtaW4tb3V0LFxuICBib3VuY2UtaW46IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSxcbiAgYm91bmNlLW91dDogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSxcbiAgYm91bmNlLWluLW91dDogY3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpLFxuKSAhZGVmYXVsdDtcblxuLy8vIE1pc2NlbGxhbmVvdXMgc2V0dGluZ3MgcmVsYXRlZCB0byBNb3Rpb24gVUkuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFtmYWxzZV0gLSBEZWZpbmVzIGlmIHNsaWRlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgaGluZ2UgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBzY2FsZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNwaW4gbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbiRtb3Rpb24tdWktc2V0dGluZ3M6IChcbiAgc2xpZGUtYW5kLWZhZGU6IGZhbHNlLFxuICBoaW5nZS1hbmQtZmFkZTogdHJ1ZSxcbiAgc2NhbGUtYW5kLWZhZGU6IHRydWUsXG4gIHNwaW4tYW5kLWZhZGU6IHRydWUsXG4gIGFjdGl2YXRlLXF1ZXVlLWNsYXNzOiAnaXMtYW5pbWF0aW5nJyxcbikgIWRlZmF1bHQ7XG4iLCIvLyBJbnRlcm5hbCBjb3VudGVyIGZvciBjcmVhdGluZyB1bmlxdWUga2V5ZnJhbWUgbmFtZXNcbiQtbXVpLWN1c3RvbTogMDtcblxuLy8vIENyZWF0ZXMgYSBrZXlmcmFtZSBmcm9tIG9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMuIFVzZSB0aGlzIGZ1bmN0aW9uIGluc3RlYWQgb2YgYG11aS1hbmltYXRpb25gIGlmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIGtleWZyYW1lIGFuaW1hdGlvbiAqd2l0aG91dCogYXV0b21hdGljYWxseSBhc3NpZ25pbmcgaXQgdG8gdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUga2V5ZnJhbWUuXG4vLy8gQHBhcmFtIHtGdW5jdGlvbn0gJGVmZmVjdHMuLi4gLSBPbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIHRvIGJ1aWxkIHRoZSBrZXlmcmFtZSB3aXRoLlxuQG1peGluIG11aS1rZXlmcmFtZXMoJG5hbWUsICRlZmZlY3RzLi4uKSB7XG4gICRvYmo6IC1tdWktcHJvY2Vzcy1hcmdzKCRlZmZlY3RzLi4uKTtcbiAgJG9iajogbWFwLXJlbW92ZSgkb2JqLCBuYW1lKTtcblxuICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAvLyBOb3cgaXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgcGVyY2VudGFnZVxuICAgIEBlYWNoICRwY3QsICRwcm9wcyBpbiAkb2JqIHtcbiAgICAgICN7LW11aS1rZXlmcmFtZS1wY3QoJHBjdCl9IHtcbiAgICAgICAgLy8gTGFzdGx5LCBpdGVyYXRlIHRocm91Z2ggZWFjaCBDU1MgcHJvcGVydHkgd2l0aGluIGEgcGVyY2VudGFnZSBhbmQgcHJpbnQgaXQgb3V0XG4gICAgICAgIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJHByb3BzIHtcbiAgICAgICAgICAjeyRwcm9wfTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc3RyaW5nIGZvciBhIENTUyBrZXlmcmFtZSwgYnkgY29udmVydGluZyBhIGxpc3Qgb2YgbnVtYmVycyB0byBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRpbnB1dCAtIExpc3Qgb2YgbnVtYmVycyB0byB1c2UuXG4vLy8gQHJldHVybiB7U3RyaW5nfSBBIHNldCBvZiBjb21tYS1zZXBhcmF0ZWQgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1wY3QoJGlucHV0KSB7XG4gICRvdXRwdXQ6ICgpO1xuXG4gIEBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ251bWJlcicge1xuICAgICRvdXRwdXQ6ICgkaW5wdXQgKiAxJSk7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkaW5wdXQpID09ICdsaXN0JyB7XG4gICAgQGVhY2ggJGkgaW4gJGlucHV0IHtcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAoJGkgKiAxJSksIGNvbW1hKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRvdXRwdXQ7XG59XG5cbi8vLyBQcmludHMgdGhlIENTUyBwcm9wZXJ0aWVzIGZyb20gYSBzcGVjaWZpYyBrZXkgaW4gYSBrZXlmcmFtZXMgbWFwLiBVc2VkIHRvIGJvcnJvdyBDU1MgZnJvbSBrZXlmcmFtZSBmdW5jdGlvbnMgZm9yIHVzZSBpbiB0cmFuc2l0aW9ucy5cbi8vLyBAcGFyYW0ge01hcH0gJGtmIC0gS2V5ZnJhbWUgbWFwIHRvIGV4dHJhY3QgZnJvbS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGtleSAtIEtleSBpbiB0aGUgbWFwIHRvIHByaW50IHRoZSBDU1Mgb2YuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLW11aS1rZXlmcmFtZS1nZXQoJGtmLCAka2V5KSB7XG4gICRtYXA6IG1hcC1nZXQoJGtmLCAka2V5KTtcblxuICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRtYXAgb3IgKCkge1xuICAgIC8vIFNvbWUga2V5ZnJhbWUgbWFwcyBzdG9yZSB0cmFuc2Zvcm1zIGFzIHF1b3RlZCBzdHJpbmdzXG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkdmFsdWU6IHVucXVvdGUoJHZhbHVlKTtcbiAgICB9XG4gICAgI3skcHJvcH06ICR2YWx1ZTtcbiAgfVxufVxuXG4vLy8gUmVmb3JtYXRzIGEgbWFwIGNvbnRhaW5pbmcga2V5cyB3aXRoIGEgbGlzdCBvZiB2YWx1ZXMsIHNvIHRoYXQgZWFjaCBrZXkgaXMgYSBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gc3BsaXQgdXAuXG4vLy8gQHJldHVybiB7TWFwfSBBIHJlZm9ybWF0dGVkIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApIHtcbiAgJG5ldy1tYXA6ICgpO1xuXG4gIC8vIFNwbGl0IGtleXMgd2l0aCBtdWx0aXBsZSB2YWx1ZXMgaW50byBpbmRpdmlkdWFsIGtleXNcbiAgQGVhY2ggJGtleSwgJGl0ZW0gaW4gJG1hcCB7XG4gICAgJGtleS10eXBlOiB0eXBlLW9mKCRrZXkpO1xuXG4gICAgQGlmICRrZXktdHlwZSA9PSAnbnVtYmVyJyB7XG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJGl0ZW0pKTtcbiAgICB9IEBlbHNlIGlmICRrZXktdHlwZSA9PSAnbGlzdCcge1xuICAgICAgQGVhY2ggJGsgaW4gJGtleSB7XG4gICAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgkazogJGl0ZW0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXctbWFwO1xufVxuXG4vLy8gQ29tYmluZXMgYSBzZXJpZXMgb2Yga2V5ZnJhbWUgb2JqZWN0cyBpbnRvIG9uZS5cbi8vLyBAcGFyYW0ge01hcH0gJG1hcHMuLi4gLSBBIHNlcmllcyBvZiBtYXBzIHRvIG1lcmdlLCBhcyBpbmRpdmlkdWFsIHBhcmFtZXRlcnMuXG4vLy8gQHJldHVybiB7TWFwfSBBIGNvbWJpbmVkIGtleWZyYW1lIG9iamVjdC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLWNvbWJpbmUoJG1hcHMuLi4pIHtcbiAgJG5ldy1tYXA6ICgpO1xuXG4gIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIG1hcCBwYXNzZWQgaW5cbiAgQGVhY2ggJG1hcCBpbiAkbWFwcyB7XG4gICAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ3N0cmluZycge1xuICAgICAgJG1hcDogY2FsbCgkbWFwKTtcbiAgICB9XG5cbiAgICAkbWFwOiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApO1xuXG4gICAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgaW4gdGhlIG1hcFxuICAgIC8vICRrZXkgaXMgdGhlIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICAvLyAkdmFsdWUgaXMgYSBtYXAgb2YgQ1NTIHByb3BlcnRpZXNcbiAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgICAkbmV3LXZhbHVlOiAoKTtcblxuICAgICAgQGlmIG1hcC1oYXMta2V5KCRuZXctbWFwLCAka2V5KSB7XG4gICAgICAgIC8vIElmIHRoZSBtYXAgYWxyZWFkeSBoYXMgdGhlIGtleWZyYW1lICUsIGFwcGVuZCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6IC1tdWktbWVyZ2UtcHJvcGVydGllcyhtYXAtZ2V0KCRuZXctbWFwLCAka2V5KSwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBPdGhlcndpc2UsIGNyZWF0ZSBhIG5ldyBtYXAgd2l0aCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6ICR2YWx1ZTtcbiAgICAgIH1cblxuICAgICAgLy8gRmluYWxseSwgbWVyZ2UgdGhlIG1vZGlmaWVkIGtleWZyYW1lIHZhbHVlIGludG8gdGhlIG91dHB1dCBtYXBcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkbmV3LXZhbHVlKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gTWFrZSBhIG5hbWUgZm9yIHRoZSBrZXlmcmFtZXNcbiAgJC1tdWktY3VzdG9tOiAkLW11aS1jdXN0b20gKyAxICFnbG9iYWw7XG4gICRtYXAtbmFtZTogKG5hbWU6ICdjdXN0b20tI3skLW11aS1jdXN0b219Jyk7XG4gICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICRtYXAtbmFtZSk7XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIHR3byBtYXBzIG9mIENTUyBwcm9wZXJ0aWVzIGludG8gb25lIG1hcC4gSWYgYm90aCBtYXBzIGhhdmUgYSB0cmFuc2Zvcm0gcHJvcGVydHksIHRoZSB2YWx1ZXMgZnJvbSBlYWNoIHdpbGwgYmUgY29tYmluZWQgaW50byBvbmUgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtNYXB9ICRvbmUgLSBGaXJzdCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHBhcmFtIHtNYXB9ICR0d28gLSBTZWNvbmQgbWFwIHRvIG1lcmdlLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1tZXJnZS1wcm9wZXJ0aWVzKCRvbmUsICR0d28pIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRvbmUsIHRyYW5zZm9ybSkgYW5kIG1hcC1oYXMta2V5KCR0d28sIHRyYW5zZm9ybSkge1xuICAgICR0cmFuc2Zvcm06IGpvaW4obWFwLWdldCgkb25lLCB0cmFuc2Zvcm0pLCBtYXAtZ2V0KCR0d28sIHRyYW5zZm9ybSkpO1xuICAgICRvbmU6IG1hcC1tZXJnZSgkb25lLCAodHJhbnNmb3JtOiAkdHJhbnNmb3JtKSk7XG4gICAgJHR3bzogbWFwLXJlbW92ZSgkdHdvLCB0cmFuc2Zvcm0pO1xuICB9XG5cbiAgQHJldHVybiBtYXAtbWVyZ2UoJG9uZSwgJHR3byk7XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNsaWRpbmcgdHJhbnNpdGlvbiBieSB0cmFuc2xhdGluZyB0aGUgZWxlbWVudCBob3Jpem9udGFsbHkgb3IgdmVydGljYWxseS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2xlZnRdIC0gRGlyZWN0aW9uIHRvIHNsaWRlIHRvLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRhbW91bnQgWzEwMCVdIC0gTGVuZ3RoIG9mIHRoZSBzbGlkZSBhcyBhIHBlcmNlbnRhZ2UgdmFsdWUuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc2xpZGUgKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBsZWZ0LFxuICAkYW1vdW50OiAxMDAlLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzbGlkZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJHNsaWRlOiBzbGlkZSgkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIC8vIENTUyBPdXRwdXRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNsaWRlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cblxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBmYWRlIHRyYW5zaXRpb24gYnkgYWRqdXN0aW5nIHRoZSBvcGFjaXR5IG9mIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbMF0gLSBPcGFjaXR5IHRvIHN0YXJ0IGF0LiBNdXN0IGJlIGEgbnVtYmVyIGJldHdlZW4gMCBhbmQgMS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvIFsxXSAtIE9wYWNpdHkgdG8gZW5kIG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLWZhZGUoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiAwLFxuICAkdG86IDEsXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGZhZGU6IGZhZGUoJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDApO1xuXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAxMDApO1xuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGhpbmdlIGVmZmVjdCBieSByb3RhdGluZyB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmcm9tIFtsZWZ0XSAtIEVkZ2Ugb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIGZyb20uIENhbiBiZSBgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRheGlzIFtlZGdlXSAtIEF4aXMgb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIG9uLiBDYW4gYmUgYGVkZ2VgIG9yIGBjZW50ZXJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGVyc3BlY3RpdmUgWzIwMDBweF0gLSBQZXJjZWl2ZWQgZGlzdGFuY2UgYmV0d2VlbiB0aGUgdmlld2VyIGFuZCB0aGUgZWxlbWVudC4gQSBoaWdoZXIgbnVtYmVyIHdpbGwgbWFrZSB0aGUgcm90YXRpb24gZWZmZWN0IG1vcmUgcHJvbm91bmNlZC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0dXJuLW9yaWdpbiBbZnJvbS1iYWNrXSAtIFNpZGUgb2YgdGhlIGVsZW1lbnQgdG8gc3RhcnQgdGhlIHJvdGF0aW9uIGZyb20uIENhbiBiZSBgZnJvbS1iYWNrYCBvciBgZnJvbS1mcm9udGAuXG5AZnVuY3Rpb24gaGluZ2UgKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbGVmdCxcbiAgJGF4aXM6IGVkZ2UsXG4gICRwZXJzcGVjdGl2ZTogMjAwMHB4LFxuICAkdHVybi1vcmlnaW46IGZyb20tYmFja1xuKSB7XG4gIC8vIFJvdGF0aW9uIGRpcmVjdGlvbnMgd2hlbiBoaW5naW5nIGZyb20gYmFjayB2cy4gZnJvbnRcbiAgJHJvdGF0aW9uLWFtb3VudDogOTBkZWc7XG4gICRyb3RhdGlvbnMtYmFjazogKFxuICAgIHRvcDogcm90YXRlWCgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIHJpZ2h0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgYm90dG9tOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIGxlZnQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCksXG4gICk7XG4gICRyb3RhdGlvbnMtZnJvbTogKFxuICAgIHRvcDogcm90YXRlWCgkcm90YXRpb24tYW1vdW50KSxcbiAgICByaWdodDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50KSxcbiAgICBib3R0b206IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICBsZWZ0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICk7XG5cbiAgLy8gUm90YXRpb24gb3JpZ2luXG4gICRyb3RhdGlvbjogJyc7XG4gIEBpZiAkdHVybi1vcmlnaW4gPT0gZnJvbS1mcm9udCB7XG4gICAgJHJvdGF0aW9uOiBtYXAtZ2V0KCRyb3RhdGlvbnMtZnJvbSwgJGZyb20pO1xuICB9IEBlbHNlIGlmICR0dXJuLW9yaWdpbiA9PSBmcm9tLWJhY2sge1xuICAgICRyb3RhdGlvbjogbWFwLWdldCgkcm90YXRpb25zLWJhY2ssICRmcm9tKTtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gJyR0dXJuLW9yaWdpbiBtdXN0IGJlIGVpdGhlciBcImZyb20tYmFja1wiIG9yIFwiZnJvbS1mcm9udFwiJztcbiAgfVxuXG4gIC8vIFN0YXJ0IGFuZCBlbmQgc3RhdGVcbiAgJHN0YXJ0OiAnJztcbiAgJGVuZDogJyc7XG4gIEBpZiAkc3RhdGUgPT0gaW4ge1xuICAgICRzdGFydDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkcm90YXRpb247XG4gICAgJGVuZDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSByb3RhdGUoMGRlZyk7XG4gIH0gQGVsc2Uge1xuICAgICRzdGFydDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSByb3RhdGUoMGRlZyk7XG4gICAgJGVuZDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkcm90YXRpb247XG4gIH1cblxuICAvLyBUdXJuIGF4aXNcbiAgJG9yaWdpbjogJyc7XG4gIEBpZiAkYXhpcyA9PSBlZGdlIHtcbiAgICAkb3JpZ2luOiAkZnJvbTtcbiAgfSBAZWxzZSB7XG4gICAgJG9yaWdpbjogY2VudGVyO1xuICB9XG5cbiAgJGtleWZyYW1lczogKFxuICAgIG5hbWU6ICdoaW5nZS0jeyRzdGF0ZX0tI3skZnJvbX0tI3skYXhpc30tI3skdHVybi1vcmlnaW59JyxcbiAgICAwOiAodHJhbnNmb3JtOiAkc3RhcnQsIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW4pLFxuICAgIDEwMDogKHRyYW5zZm9ybTogJGVuZCksXG4gICk7XG5cbiAgQHJldHVybiAka2V5ZnJhbWVzO1xufVxuIiwiLy8vIENyZWF0ZXMgYSBoaW5nZSB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZyb20gW2xlZnRdIC0gRWRnZSBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgZnJvbS4gQ2FuIGJlIGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGF4aXMgW2VkZ2VdIC0gQXhpcyBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgb24uIENhbiBiZSBgZWRnZWAgb3IgYGNlbnRlcmAuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRwZXJzcGVjdGl2ZSBbMjAwMHB4XSAtIFBlcmNlaXZlZCBkaXN0YW5jZSBiZXR3ZWVuIHRoZSB2aWV3ZXIgYW5kIHRoZSBlbGVtZW50LiBBIGhpZ2hlciBudW1iZXIgd2lsbCBtYWtlIHRoZSByb3RhdGlvbiBlZmZlY3QgbW9yZSBwcm9ub3VuY2VkLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHR1cm4tb3JpZ2luIFtmcm9tLWJhY2tdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLWhpbmdlIChcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IGxlZnQsXG4gICRheGlzOiBlZGdlLFxuICAkcGVyc3BlY3RpdmU6IDIwMDBweCxcbiAgJHR1cm4tb3JpZ2luOiBmcm9tLWJhY2ssXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIGhpbmdlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkaGluZ2U6IGhpbmdlKCRzdGF0ZSwgJGZyb20sICRheGlzLCAkcGVyc3BlY3RpdmUsICR0dXJuLW9yaWdpbik7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzY2FsaW5nIHRyYW5zaXRpb24uIEEgc2NhbGUgb2YgYDFgIG1lYW5zIHRoZSBlbGVtZW50IGlzIHRoZSBzYW1lIHNpemUuIExhcmdlciBudW1iZXJzIG1ha2UgdGhlIGVsZW1lbnQgYmlnZ2VyLCB3aGlsZSBudW1iZXJzIGxlc3MgdGhhbiAxIG1ha2UgdGhlIGVsZW1lbnQgc21hbGxlci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gWzEuNV0gLSBTaXplIHRvIHN0YXJ0IGF0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbMV0gLSBTaXplIHRvIGVuZCBhdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXpvb20oXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiAxLjUsXG4gICR0bzogMSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2NhbGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzY2FsZTogem9vbSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNwaW5uaW5nIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuIFRoZSBgdHVybmAgdW5pdCBpcyB1c2VkIHRvIHNwZWNpZnkgaG93IGZhciB0byByb3RhdGUuIGAxdHVybmAgaXMgZXF1YWwgdG8gYSAzNjAtZGVncmVlIHNwaW4uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZGlyZWN0aW9uIFtjd10gLSBEaXJlY3Rpb24gdG8gc3Bpbi4gU2hvdWxkIGJlIGBjd2AgKGNsb2Nrd2lzZSkgb3IgYGNjd2AgKGNvdW50ZXJjbG9ja3dpc2UpLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYW1vdW50IFswLjc1dHVybl0gLSBBbW91bnQgdG8gZWxlbWVudCB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zcGluKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBjdyxcbiAgJGFtb3VudDogMC43NXR1cm4sXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNwaW4tYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzcGluOiBzcGluKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIGFuZCBhc3NpZ25zIGl0IHRvIHRoZSBlbGVtZW50IGJ5IGFkZGluZyB0aGUgYGFuaW1hdGlvbi1uYW1lYCBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge0Z1bmN0aW9ufSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWFuaW1hdGlvbigkYXJncy4uLikge1xuICAkbmFtZTogbWFwLWdldCgtbXVpLXByb2Nlc3MtYXJncygkYXJncy4uLiksIG5hbWUpO1xuICBAaW5jbHVkZSBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkYXJncy4uLik7XG4gIGFuaW1hdGlvbi1uYW1lOiB1bnF1b3RlKCRuYW1lKTtcbn1cbiIsIkBjaGFyc2V0IFwidXRmLThcIjtcblxuXG5AaW1wb3J0ICdzZXR0aW5ncyc7XG5AaW1wb3J0ICdmb3VuZGF0aW9uJztcbkBpbXBvcnQgJ21vdGlvbi11aSc7XG5cbkBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcblxuQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXJhbmdlLWlucHV0O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3Nlcztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzO1xuXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb3RvdHlwZS1jbGFzc2VzO1xuXG5AaW5jbHVkZSBtb3Rpb24tdWktdHJhbnNpdGlvbnM7XG5AaW5jbHVkZSBtb3Rpb24tdWktYW5pbWF0aW9ucztcblxuLypcbiAgTXkgY3VzdG9tIHN0eWxlczpcbiAgQWRkIHlvdXIgc2NzcyBmaWxlcyBiZWxvdyB0byBzdHJ1Y3R1cmUgeW91ciBwcm9qZWN0IHN0eWxlc1xuKi9cblxuLy8gR2xvYmFsXG5AaW1wb3J0IFwiZ2xvYmFsL2ZvbnRzXCI7XG5cbkBpbXBvcnQgXCJnbG9iYWwvYWNjZXNzaWJpbGl0eVwiO1xuQGltcG9ydCBcImdsb2JhbC9jb2xvcnNcIjtcbkBpbXBvcnQgXCJnbG9iYWwvd3AtYWRtaW5cIjtcbkBpbXBvcnQgXCJnbG9iYWwvd3Atb3ZlcnJpZGVzXCI7XG5AaW1wb3J0IFwiZ2xvYmFsL2d1dGVuYmVyZ1wiO1xuXG5AaW1wb3J0IFwiZ2xvYmFsL2NhbXBhaWduLWZvcm1zXCI7XG5AaW1wb3J0IFwiZ2xvYmFsL2dmb3Jtc1wiO1xuXG4vLyBNb2R1bGVzXG5AaW1wb3J0IFwibW9kdWxlcy9uYXZpZ2F0aW9uXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9jb250ZW50XCI7XG5AaW1wb3J0IFwibW9kdWxlcy9mb290ZXJcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2VkaXRvci1zdHlsZVwiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwiY29tcG9uZW50cy9idXR0b25zXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9jYXJkc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZmVhdHVyZWQtaW1hZ2VcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2RpdmlkZXJzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9saW5rc1wiO1xuXG4vLyBUZW1wbGF0ZXNcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvZnJvbnRcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMva2l0Y2hlbi1zaW5rXCI7XG5AaW1wb3J0IFwidGVtcGxhdGVzL2F1dGhvclwiO1xuQGltcG9ydCBcInRlbXBsYXRlcy9ibG9nXCI7XG5AaW1wb3J0IFwidGVtcGxhdGVzLzQwNFwiO1xuQGltcG9ydCBcInRlbXBsYXRlcy93aHlza1wiO1xuXG4vL2ZsZXggY29tcG9uZW50c1xuQGltcG9ydCBcIm1vZHVsZXMvZmxleC1tb2R1bGVzL2ZjLW1hc3RoZWFkXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9mbGV4LW1vZHVsZXMvZmMtbWFzdGhlYWQtZm9ybVwiO1xuQGltcG9ydCBcIm1vZHVsZXMvZmxleC1tb2R1bGVzL2ZjLWxvZ28tc3RyaXBcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9mYy1zdGF0c1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvZmxleC1tb2R1bGVzL2ZjLXRlc3RpbW9uaWFsXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9mbGV4LW1vZHVsZXMvZmMtaWNvbi1ncmlkXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9mbGV4LW1vZHVsZXMvZmMtY2FzZXN0dWR5XCI7XG5AaW1wb3J0IFwibW9kdWxlcy9mbGV4LW1vZHVsZXMvZmMtb3Blbi10ZXh0XCI7XG5AaW1wb3J0IFwibW9kdWxlcy9mbGV4LW1vZHVsZXMvZmMtaGVhZHNob3RzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9mbGV4LW1vZHVsZXMvZmMtY3RhLWJsb2NrXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9mbGV4LW1vZHVsZXMvZmMtY2FsbG91dC1iYW5uZXJcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9mYy1yZWxhdGVkLWNvbnRlbnRcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9mYy1tZWRpYS1ncmlkXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9mbGV4LW1vZHVsZXMvZmMtc3BsaXQtYmxvY2tcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9mYy1wcm9ncmVzcy1ibG9ja1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvZmxleC1tb2R1bGVzL2ZjLWxpbmstY2FyZHNcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9mYy1jYXNlc3R1ZHktYXJjaGl2ZVwiO1xuQGltcG9ydCBcIm1vZHVsZXMvZmxleC1tb2R1bGVzL2ZjLXNlcnZpY2UtYXJjaGl2ZVwiO1xuQGltcG9ydCBcIm1vZHVsZXMvZmxleC1tb2R1bGVzL2ZjLXNpbXBsZS1zdGF0c1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvZmxleC1tb2R1bGVzL2ZjLXNpbXBsZS1ncmlkXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9mbGV4LW1vZHVsZXMvZmMtcmVzb3VyY2VzLWFyY2hpdmVcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9mYy1zaWRlLWJ5LXNpZGVcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9mYy1oZWFkc2hvdC1ncmlkXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9mbGV4LW1vZHVsZXMvZmMtbWVkaWEtc3RyaXBcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9mYy1jYXJlZXJzLWFyY2hpdmVcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2ZsZXgtbW9kdWxlcy9mYy1zdWJtZW51XCI7XG5cbi8vTm9kZSBNb2R1bGVzXG5AaW1wb3J0IFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLnNjc3NcIjtcbiIsIi8vIFRleHQgbWVhbnQgb25seSBmb3Igc2NyZWVuIHJlYWRlcnMuIEFkZHJlc3NlcyBwYXJ0IG9mIHRoZW1lLWNoZWNrIGlzc3VlICM4NDAuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vQXV0b21hdHRpYy9fcy9ibG9iL21hc3Rlci9zdHlsZS5jc3Ncbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMjE3NTliO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRvcDogNXB4O1xuICB3aWR0aDogYXV0bztcbiAgei1pbmRleDogMTAwMDAwOyAvLyBBYm92ZSBXUCB0b29sYmFyLlxufVxuIiwiLy8gRml4IHRoZSBpc3N1ZSB3aGVyZSB0aGUgV1AgYWRtaW4tYmFyIG92ZXJsYXBzIHRoZSBtb2JpbGUgbWVudVxuI3dwYWRtaW5iYXIge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbn1cblxuLy8gTWFrZSBzdXJlIHRoYXQgdGhlIFdQIGFkbWluLWJhciBkb2VzIG5vdCBvdmVybGFwIEZvdW5kYXRpb24gY29tcG9uZW50c1xuYm9keS5hZG1pbi1iYXIge1xuICAvLyBPZmZzZXQgc3RpY2t5IHRvcCBiYXJcbiAgJi5mLXRvcGJhci1maXhlZCB7XG4gICAgLnN0aWNreS5maXhlZCB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMik7XG4gICAgfVxuICB9XG4gIC8vIE9mZnNldCBtb2JpbGUgb2ZmLWNhbnZhcyBtZW51XG4gICYub2ZmY2FudmFzIHtcbiAgICAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICAgIHRvcDogcmVtLWNhbGMoNDYpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3ODMpIHtcbiAgICAgICAgdG9wOiByZW0tY2FsYygzMik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJib2R5IHtcbiAgYmFja2dyb3VuZDogJGxpZ2h0ZXItY29sb3IgdXJsKFwiLi4vaW1hZ2VzL2hleC1ub2RlLWdyaWQtbGlnaHQucG5nXCIpIDAgMCByZXBlYXQ7XG4gIC8vYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcblxuICAmLm9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cblxuLndwLWNhcHRpb24gPiBmaWdjYXB0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgY29sb3I6ICM5OTk7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMDtcbn1cblxucC53cC1jYXB0aW9uLXRleHR7XG4gIGZvbnQtc2l6ZTo5MCU7XG4gIGNvbG9yOiAjNjY2O1xuICBwYWRkaW5nOnJlbS1jYWxjKDEwKSAwO1xufVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIG1hcmdpbjogMDtcbn1cblxuLmFsaWducmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYWxpZ25jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLmdhbGxlcnkge1xuICBAaW5jbHVkZSB4eS1ncmlkO1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSk7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggOSB7XG4gICAgJi5nYWxsZXJ5LWNvbHVtbnMtI3skaX0ge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoMiwgJy5nYWxsZXJ5LWl0ZW0nLCB0cnVlKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgJi5nYWxsZXJ5LWNvbHVtbnMtI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCg0LCAnLmdhbGxlcnktaXRlbScsIHRydWUsIChzbWFsbDogMzBweCkpO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAmLmdhbGxlcnktY29sdW1ucy0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRpLCAnLmdhbGxlcnktaXRlbScsIHRydWUsIChzbWFsbDogMzBweCkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZ2FsbGVyeS1pY29uID4gYSB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsO1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbC1saW5rO1xuICB9XG4gIC5nYWxsZXJ5LWljb24gPiBpbWcge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbDtcbiAgfVxufVxuXG5cbi8vYWRkaXRpb25hbCBvdmVycmlkZXNcbmNvZGUge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4xKTtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5wcmVbY2xhc3MqPVwibGFuZ3VhZ2UtXCJdIHtcbiAgYmFja2dyb3VuZDogI2ZmZiFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEpIWltcG9ydGFudDtcbiAgcGFkZGluZzogNDBweCFpbXBvcnRhbnQ7XG5cbiAgY29kZSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbn1cblxuLmJsb2ctZW50cnkgb2wge1xuICBjb3VudGVyLXJlc2V0OiBvcmRlcmVkLWxpc3Q7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMCAwIDAgMTVweDtcbiAgcGFkZGluZzogMDtcblxuICBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgIHBhZGRpbmc6IDAgMCAwIDMwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY291bnRlci1pbmNyZW1lbnQ6IG9yZGVyZWQtbGlzdDtcbiAgICAgIGNvbnRlbnQ6IGNvdW50ZXIob3JkZXJlZC1saXN0KSBcIi5cIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBjb2xvcjogcmdiYSgwLDAsMCwwLjUpO1xuICAgIH1cbiAgfVxufVxuXG4uYmxvZy1lbnRyeSB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMCAwIDAgMTVweDtcbiAgcGFkZGluZzogMDtcblxuICBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgIHBhZGRpbmc6IDAgMCAwIDMwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAgIGNvbnRlbnQ6IFwiXFxmMGRhXCI7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgY29sb3I6IHJnYmEoMCwwLDAsMC41KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5ibG9ja3F1b3RlLndwLWJsb2NrLXF1b3RlIHtcbiAgcGFkZGluZzogMTBweCAwIDEwcHggMzVweDtcbiAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCwgXCJzbGFiXCIpO1xuICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG5cbiAgYm9yZGVyLXdpZHRoOiAwIDAgMCA0cHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG5cbiAgYm9yZGVyLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDExLDEzNSwxNDcsMSksIHJnYmEoNTQsMCw1MSwxKSkgMSAxMDAlOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cblxuICBwIHtcbiAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgQGluY2x1ZGUgZm9udC10by1lbXMoMjApO1xuICB9XG5cbiAgY2l0ZSB7XG4gICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTYpO1xuICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIEBpbmNsdWRlIG1haW4tZm9udCg1MDApO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi53cC1ibG9jay1wdWxscXVvdGU6bm90KC5pcy1zdHlsZS1zb2xpZC1jb2xvcikge1xuICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICBiYWNrZ3JvdW5kOiByZ2IoMTEsMTM1LDE0Nyk7IC8qIE9sZCBicm93c2VycyAqL1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCgtNDVkZWcsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSwgcmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgtNDVkZWcsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzBiODc5MycsIGVuZENvbG9yc3RyPScjMzYwMDMzJyxHcmFkaWVudFR5cGU9MSApOyAvKiBJRTYtOSBmYWxsYmFjayBvbiBob3Jpem9udGFsIGdyYWRpZW50ICovXG5cbiAgbWFyZ2luOiA1MHB4IDA7XG5cbiAgLy9icmVhayBpdCBvdXQgb2YgdGhlIGNvbnRhaW5lciBib3hcbiAgd2lkdGg6IDEwMHZ3O1xuICBtYXJnaW4tbGVmdDogNTAlIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBwYWRkaW5nOiAwO1xuXG4gIGJsb2NrcXVvdGUge1xuICAgIC8vQGluY2x1ZGUgeHktZ3JpZDtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCwgXCJzbGFiXCIpO1xuICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBwIHtcbiAgICAgIGNvbG9yOiAkbGlnaHRlc3QtY29sb3I7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygyMCk7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEwKTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0byFpbXBvcnRhbnQ7XG5cbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICYgKyBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2hleC1ub2RlLWdyaWQtZGFyay5wbmdcIikgMCAwIHJlcGVhdDtcbiAgICAvL2JhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgLy9taXgtYmxlbmQtbW9kZTogc2NyZWVuO1xuICAgIC8vb3BhY2l0eTogMC4xO1xuICB9XG59XG5cbi53cC1ibG9jay1lbWJlZCB7XG4gIHdpZHRoOiA3NSU7XG4gIG1hcmdpbjogMCBhdXRvO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4ud3AtYmxvY2stZW1iZWRfX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuLndwLWJsb2NrLWVtYmVkX193cmFwcGVyIGlmcmFtZSxcbi53cC1ibG9jay1lbWJlZF9fd3JhcHBlciBvYmplY3QsXG4ud3AtYmxvY2stZW1iZWRfX3dyYXBwZXIgZW1iZWQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLndwLWJsb2NrLWltYWdlIHtcbiAgbWFyZ2luLXRvcDogNTBweDtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcblxuICBmaWd1cmUge1xuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICB9XG4gIH1cbn1cblxuI3ZpZGVvLW1vZGFsIHtcbiAgd2lkdGg6IDgwJTtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbiAgcGFkZGluZy10b3A6IDUwcHg7XG5cbiAgLnJlc3BvbnNpdmUtZW1iZWQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn0iLCJAbWl4aW4gbWFpbi1mb250ICgkd2VpZ2h0LCAkc3R5bGU6J251bGwnKSB7XG4gIEBpZiAkc3R5bGUgPT0gXCJzbGFiXCIge1xuICAgIGZvbnQtZmFtaWx5OiAnbWlzbGFiLXN0ZCcsICdDb3VyaWVyJywgc2VyaWY7XG4gIH0gQGVsc2UgaWYgJHN0eWxlID09IFwiYW5vblwiIHtcbiAgICBmb250LWZhbWlseTogXCJhbm9ueW1vdXMtcHJvXCIsIG1vbm9zcGFjZTtcbiAgfSBAZWxzZSB7XG4gICAgZm9udC1mYW1pbHk6ICdtdXNlby1zYW5zJywgJ0F2ZW5pciBOZXh0JywgJ1ZlcmRhbmEnLCBzYW5zLXNlcmlmO1xuICB9XG4gIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xufVxuXG5AbWl4aW4gZm9udC10by1lbXMgKCRwaXhlbC1zaXplKSB7XG4gIGZvbnQtc2l6ZTogKCRwaXhlbC1zaXplIC8gMTYpICogMWVtO1xufSIsIi8qXG5Gcm9udGVuZCBzdHlsZXMgZm9yIGd1dGVuYmVyZyBibG9ja3NcbiovXG5cbi8qKiA9PT0gQmFzZSBDb2xvciBQYWxhdHRlID09PSAqL1xuQGVhY2ggJGNvbG9yLCAkY29kZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcblxuICAuaGFzLSN7JGNvbG9yfS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlO1xuICB9XG5cbiAgLmhhcy0jeyRjb2xvcn0tY29sb3Ige1xuICAgICAgY29sb3I6ICRjb2RlO1xuICB9XG59XG5cbi8qKiA9PT0gQnV0dG9uID09PSAqL1xuLndwLWJsb2NrLWJ1dHRvbiB7XG5cblx0Ly8gYWRkIGdlbmVyYWwgZm91bmRhdGlvbiBidXR0b24gc3R5bGluZ1xuXHQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcblx0XHRAZXh0ZW5kIC5idXR0b247XG4gICAgQGVhY2ggJGNvbG9yLCAkY29kZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcblxuICAgICAgJi5oYXMtI3skY29sb3J9LWJhY2tncm91bmQtY29sb3Ige1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlO1xuICAgICAgfVxuXG4gICAgICAmLmhhcy0jeyRjb2xvcn0tY29sb3Ige1xuICAgICAgICAgIGNvbG9yOiAkY29kZTtcbiAgICAgIH1cbiAgICB9XG5cdH1cblxuXHQvLyBhZGQgc3BlY2lhbCBzdHlsaW5nIGZvciBzcXVhcmVkIGJ1dHRvbnNcblx0Ji5pcy1zdHlsZS1zcXVhcmVkIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuXHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdH1cblxuXHQvLyBhZGQgb3V0bGluZSBzdHlsZXNcblx0Ji5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmt7XG5cdFx0QGV4dGVuZCAuaG9sbG93O1xuXHR9XG5cblx0Ly8gc2V0IHRyYW5zcGFyZW50IGJhY2tncm91bmQgdG8gYmxvY2sgZm9yIG91dGxpbmUgYnV0dG9uXG5cdCYuaXMtc3R5bGUtb3V0bGluZSxcblx0Ji5pcy1zdHlsZS1vdXRsaW5lOmhvdmVyLFxuXHQmLmlzLXN0eWxlLW91dGxpbmU6Zm9jdXMsXG5cdCYuaXMtc3R5bGUtb3V0bGluZTphY3RpdmUge1xuICAgIC8vIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIC53cC1ibG9jay1idXR0b25fX2xpbmt7XG4gICAgICAvLyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cdH1cbn1cblxuLyoqID09PSBGaWxlID09PSAqL1xuLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbntcbiAgQGluY2x1ZGUgYnV0dG9uKCk7XG59XG4iLCIvL0FjdGl2ZSBDYW1wYWlnblxuZm9vdGVyIHtcblxuICAuX2Zvcm0ge1xuXG4gICAgLl9mb3JtLWNvbnRlbnQge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogMDtcblxuICAgICAgPiAqIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5fZm9ybS10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgfVxuXG4gICAgLl9mb3JtLWJyYW5kaW5nIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLl9mb3JtLWxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgW3R5cGU9J3RleHQnXSwgW3R5cGU9J3Bhc3N3b3JkJ10sIFt0eXBlPSdkYXRlJ10sIFt0eXBlPSdkYXRldGltZSddLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgW3R5cGU9J21vbnRoJ10sIFt0eXBlPSd3ZWVrJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdzZWFyY2gnXSwgW3R5cGU9J3RlbCddLCBbdHlwZT0ndGltZSddLCBbdHlwZT0ndXJsJ10sIFt0eXBlPSdjb2xvciddLCAuX3N1Ym1pdCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMi40Mzc1ZW07XG4gICAgICBtYXJnaW46IDAgMCAxZW07XG4gICAgICBwYWRkaW5nOiAwLjVlbTtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgICAvLyY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIC8vICBjb2xvcjogJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgIC8vfVxuICAgIH1cblxuICAgIC5faW5saW5lLXN0eWxlOm5vdCguX2NsZWFyKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEzNXB4KTtcblxuICAgICAgaW5wdXQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAuMjVlbSAwIDAgLjI1ZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLl9idXR0b24td3JhcHBlci5faW5saW5lLXN0eWxlIHtcbiAgICAgIHdpZHRoOiAxMzRweDtcblxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcGFkZGluZzogLjVlbSAxLjVlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAuMjVlbSAuMjVlbSAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE2KTtcbiAgICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDcwMCk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRoaWdobGlnaHQtY29sb3IsIDUlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbi8vSHVic3BvdFxuZm9vdGVyIHtcbiAgLmhic3B0LWZvcm0ge1xuXG4gICAgLmlucHV0cy1saXN0IHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCFpbXBvcnRhbnQ7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUhaW1wb3J0YW50O1xuXG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5oc19lcnJvcl9yb2xsdXAge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuaHMtZXJyb3ItbXNnIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDEyKTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg1MDApO1xuICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgY29sb3I6ICRsaWdodGVzdC1jb2xvcjtcbiAgICB9XG5cbiAgICAuZm9ybSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiAwO1xuXG4gICAgICA+ICoge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBbdHlwZT0ndGV4dCddLCBbdHlwZT0ncGFzc3dvcmQnXSwgW3R5cGU9J2RhdGUnXSwgW3R5cGU9J2RhdGV0aW1lJ10sIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBbdHlwZT0nbW9udGgnXSwgW3R5cGU9J3dlZWsnXSwgW3R5cGU9J2VtYWlsJ10sIFt0eXBlPSdudW1iZXInXSwgW3R5cGU9J3NlYXJjaCddLCBbdHlwZT0ndGVsJ10sIFt0eXBlPSd0aW1lJ10sIFt0eXBlPSd1cmwnXSwgW3R5cGU9J2NvbG9yJ10sIC5fc3VibWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAyLjQzNzVlbTtcbiAgICAgIG1hcmdpbjogMCAwIDFlbTtcbiAgICAgIHBhZGRpbmc6IDAuNWVtO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgfVxuXG4gICAgZGl2LmhzLWZvcm0tZmllbGQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxMzVweCk7XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogLjI1ZW0gMCAwIC4yNWVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIGRpdi5ocy1zdWJtaXQge1xuICAgICAgd2lkdGg6IDEzNHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxMzVweCk7XG5cbiAgICAgIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHBhZGRpbmc6IC41ZW0gMS41ZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgLjI1ZW0gLjI1ZW0gMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg3MDApO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBoZWlnaHQ6IDIuNDM3NWVtO1xuICAgICAgICBtYXJnaW46IDAgMCAxZW07XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkaGlnaGxpZ2h0LWNvbG9yLCA1JSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG4vL0FjdGl2ZSBDYW1wYWlnbjpcbi5vcGVuLXRleHQge1xuXG4gIC5fZm9ybSB7XG5cbiAgICAuX2Zvcm0tY29udGVudCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgPiAqIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5fZm9ybS10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgfVxuXG4gICAgLl9mb3JtLWJyYW5kaW5nIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLl9mb3JtLWxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgW3R5cGU9J3RleHQnXSxcbiAgICBbdHlwZT0ncGFzc3dvcmQnXSxcbiAgICBbdHlwZT0nZGF0ZSddLFxuICAgIFt0eXBlPSdkYXRldGltZSddLFxuICAgIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLFxuICAgIFt0eXBlPSdtb250aCddLFxuICAgIFt0eXBlPSd3ZWVrJ10sXG4gICAgW3R5cGU9J2VtYWlsJ10sXG4gICAgW3R5cGU9J251bWJlciddLFxuICAgIFt0eXBlPSdzZWFyY2gnXSxcbiAgICBbdHlwZT0ndGVsJ10sXG4gICAgW3R5cGU9J3RpbWUnXSxcbiAgICBbdHlwZT0ndXJsJ10sXG4gICAgW3R5cGU9J2NvbG9yJ10sXG4gICAgdGV4dGFyZWEsXG4gICAgc2VsZWN0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICAgIHBhZGRpbmc6IDEycHggMTZweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRoaWdobGlnaHQtY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGRhcmstY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc2VsZWN0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4MTM4LCAxMzgsIDEzOCUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG5cbiAgICAgIGNvbG9yOiByZ2JhKCRkYXJrZXN0LWNvbG9yLCAwLjQpO1xuICAgIH1cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIGhlaWdodDogMTgwcHg7XG4gICAgfVxuXG4gICAgLl9jaGVja2JveC1yYWRpbyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICAgICAgd2lkdGg6IDlweDtcbiAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRoaWdobGlnaHQtY29sb3I7XG5cbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IC0yMnB4O1xuICAgICAgICAgIHRvcDogN3B4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgW3R5cGU9J2NoZWNrYm94J10ge1xuICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgfVxuXG4gICAgICAvLyY6Y2hlY2tlZCB7XG4gICAgICAvLyAgYmFja2dyb3VuZDogJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgIC8vfVxuICAgIH1cblxuICAgIFt0eXBlPSdjaGVja2JveCddOmNoZWNrZWQgKyBzcGFuIGxhYmVsOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuXG4gICAgLl9zdWJtaXQge1xuICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAvL2ZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTYpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDcwMCk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC44cHg7XG4gICAgICBwYWRkaW5nOiAxNXB4IDM1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgYm94LXNoYWRvdzogMCAycHggOHB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKSwgMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIH1cblxuICAgIC8vLl9pbmxpbmUtc3R5bGU6bm90KC5fY2xlYXIpIHtcbiAgICAvLyAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC8vICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIC8vICB3aWR0aDogNDAwcHg7XG4gICAgLy8gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTQwcHgpO1xuICAgIC8vXG4gICAgLy8gIGlucHV0IHtcbiAgICAvLyAgICBib3JkZXItcmFkaXVzOiAuMjVlbSAwIDAgLjI1ZW07XG4gICAgLy8gIH1cbiAgICAvL31cblxuICAgIC5fZnVsbF93aWR0aCB7XG4gICAgICBmbGV4OiAxIDAgNTAlO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcblxuICAgICAgJi5fZmllbGQxIHtcbiAgICAgICAgZmxleDogMSAwIDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuX2J1dHRvbi13cmFwcGVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG5cbiAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuXG4gICAgLl9jbGVhciB7XG4gICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgIH1cblxuICAgIC5fYnV0dG9uLXdyYXBwZXIuX2lubGluZS1zdHlsZSB7XG4gICAgICB3aWR0aDogMTM0cHg7XG5cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHBhZGRpbmc6IC41ZW0gMS41ZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgLjI1ZW0gLjI1ZW0gMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg3MDApO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkaGlnaGxpZ2h0LWNvbG9yLCA1JSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuX2Zvcm0tdGhhbmsteW91IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGhpZ2hsaWdodC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCRoaWdobGlnaHQtY29sb3IsLjEpO1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgbWFyZ2luOiAxNXB4O1xuICB9XG5cbiAgLl9lcnJvci5fYWJvdmUsIC5fZXJyb3IuX2JlbG93IHtcbiAgICBmb250LXNpemU6IC43ZW07XG4gICAgY29sb3I6IHJlZDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yOHB4KTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cblxufVxuXG4vL0h1YnNwb3Rcbi5vcGVuLXRleHQsIC5ibG9nLWVudHJ5IGFydGljbGUge1xuXG4gIC5oYnNwdC1mb3JtIHtcblxuICAgIC5oc19lcnJvcl9yb2xsdXAge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBmb3JtIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBmb250LXNpemU6IDA7XG4gICAgICBwYWRkaW5nOiAwcHggMDtcblxuICAgICAgPiAqIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICBmaWVsZHNldCB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCAtMjBweCAzMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICBtYXJnaW46IDAgLTIwcHggMHB4O1xuXG4gICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmZvcm0tY29sdW1ucy0xIC5ocy1pbnB1dCxcbiAgICAgICAgJi5mb3JtLWNvbHVtbnMtMSAuaW5wdXQge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlIWltcG9ydGFudDtcblxuICAgICAgICAgICAgW3R5cGU9J2NoZWNrYm94J10ge1xuICAgICAgICAgICAgICB3aWR0aDogMjBweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGhlaWdodDogMjBweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5mb3JtLWNvbHVtbnMtMiAuaHMtaW5wdXQsXG4gICAgICAgICYuZm9ybS1jb2x1bW5zLTIgLmlucHV0IHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIFt0eXBlPSdjaGVja2JveCddIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDIwcHghaW1wb3J0YW50O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHghaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuZm9ybS1jb2x1bW5zLTEge1xuICAgICAgICAgIC5ocy1mb3JtLWZpZWxkIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmZvcm0tY29sdW1ucy0yIHtcbiAgICAgICAgICAuaHMtZm9ybS1maWVsZCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICBbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMjBweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHghaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhzLWZvcm0tZmllbGQge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDEzcHg7XG4gICAgICAgICAgbGVmdDogMzdweDtcbiAgICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgIGNvbG9yOiByZ2JhKCRkYXJrZXN0LWNvbG9yLCAuNSk7XG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7XG5cbiAgICAgICAgICAmLmZsb2F0LW1lIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjYpO1xuICAgICAgICAgICAgdG9wOiA4cHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgICAgICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuXG4gICAgW3R5cGU9J3RleHQnXSxcbiAgICBbdHlwZT0ncGFzc3dvcmQnXSxcbiAgICBbdHlwZT0nZGF0ZSddLFxuICAgIFt0eXBlPSdkYXRldGltZSddLFxuICAgIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLFxuICAgIFt0eXBlPSdtb250aCddLFxuICAgIFt0eXBlPSd3ZWVrJ10sXG4gICAgW3R5cGU9J2VtYWlsJ10sXG4gICAgW3R5cGU9J251bWJlciddLFxuICAgIFt0eXBlPSdzZWFyY2gnXSxcbiAgICBbdHlwZT0ndGVsJ10sXG4gICAgW3R5cGU9J3RpbWUnXSxcbiAgICBbdHlwZT0ndXJsJ10sXG4gICAgW3R5cGU9J2NvbG9yJ10sXG4gICAgdGV4dGFyZWEsXG4gICAgc2VsZWN0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICAgIHBhZGRpbmc6IDE4cHggMTZweCA2cHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTYpO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRkYXJrLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6IHJnYiUyODEzOCwgMTM4LCAxMzglMjknPjwvcG9seWdvbj48L3N2Zz5cIik7XG4gICAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCA1cHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuXG4gICAgICBjb2xvcjogcmdiYSgkZGFya2VzdC1jb2xvciwgMC40KTtcbiAgICB9XG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBoZWlnaHQ6IDE4MHB4O1xuICAgIH1cblxuICAgIC5pbnB1dHMtbGlzdCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXghaW1wb3J0YW50O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlIWltcG9ydGFudDtcblxuICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuXG4gICAgICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgICBtYXJnaW46IDAgMTBweCAwIDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICB3aWR0aDogMjBweCFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBmbGV4OiAwIDEgMjBweDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICB3aWR0aDogMjBweCFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMjBweCFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgfVxuXG4gICAgICAmICsgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICBmbGV4OiAxIDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgW3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCLinJNcIjtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMnB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhzLWZpZWxkdHlwZS1maWxlIHtcblxuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgIG1hcmdpbjogMCAyMHB4O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpIWltcG9ydGFudDtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiQXR0YWNoIEZpbGVcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgYmFja2dyb3VuZDogJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgY29sb3I6ICRsaWdodGVyLWNvbG9yO1xuICAgICAgICB0b3A6IDlweDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAuOGVtO1xuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcztcbiAgICAgIH1cblxuICAgICAgJjpob3ZlcjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkaGlnaGxpZ2h0LWNvbG9yLCA1JSk7XG4gICAgICB9XG5cbiAgICAgIC5maWxlLWZvcm0tZGlzcGxheSB7XG4gICAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgICAgbWFyZ2luOiAtMzBweCAwIDRweDtcbiAgICAgIH1cblxuICAgICAgW3R5cGU9J2ZpbGUnXXtcbiAgICAgICAgd2lkdGg6IDAuMXB4O1xuICAgICAgICBoZWlnaHQ6IDAuMXB4O1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgfVxuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGNvbG9yOiByZ2JhKCRkYXJrZXN0LWNvbG9yLCAuNSk7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmZsb2F0LW1lIHtcbiAgICAgICAgICBwYWRkaW5nOiAxM3B4IDA7XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06ICBub25lO1xuICAgICAgICAgICAgdG9wOiAtNi41cHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRkYXJrZXN0LWNvbG9yLCAuNSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5mbG9hdC1sYWJlbCB7XG4gICAgICAgICAgcGFkZGluZzogMTNweCAwO1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguNik7XG4gICAgICAgICAgICB0b3A6IC02LjVweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAgICAgICAgICAgY29sb3I6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhzLWZpZWxkdHlwZS1jaGVja2JveCB7XG4gICAgICBsYWJlbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgY29sb3I6IHJnYmEoJGRhcmtlc3QtY29sb3IsIC41KTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcztcblxuICAgICAgICAmLmZsb2F0LW1lIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgICAgICAgICBjb2xvcjogcmdiYSgkZGFya2VzdC1jb2xvciwgLjUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHVsIGxpIGxhYmVsIHtcbiAgICAgICAgJi5mbG9hdC1tZSB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoJGRhcmtlc3QtY29sb3IsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhzLXN1Ym1pdCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmhzLWJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTYpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDcwMCk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC44cHg7XG4gICAgICBwYWRkaW5nOiAxNXB4IDM1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgYm94LXNoYWRvdzogMCAycHggOHB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKSwgMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRwcmltYXJ5LWNvbG9yLCA1JSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhzLWVycm9yLW1zZyB7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxMik7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNTAwKTtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIH1cblxuICAgIC5zdWJtaXR0ZWQtbWVzc2FnZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkaGlnaGxpZ2h0LWNvbG9yLC4xKTtcbiAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICBtYXJnaW46IDE1cHg7XG4gICAgfVxuXG4gIH1cblxuICAmLmxpZ2h0LXRoZW1lIHtcbiAgICAuaGJzcHQtZm9ybSB7XG4gICAgICAuaHMtZXJyb3ItbXNnIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTIpO1xuICAgICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNTAwKTtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cbi8vQ1RBIGl0ZW1cbi5ocy1jdGEtd3JhcHBlciB7XG5cbiAgLy9zcGFuIHtcbiAgLy8gIGRpc3BsYXk6IGJsb2NrO1xuICAvL31cblxuICBhLmZsb2F0aW5nLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgIC8vYmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoIHJnYmEoMzUsIDIxLCA2MCwgLjcpLCByZ2JhKDM1LCAyMSwgNjAsIC43KSApO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDAgMCAzNXB4IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDZweCByZ2JhKCRkYXJrZXN0LWNvbG9yLC4zKTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMzUsIDIxLCA2MCwgLjcpO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgcGFkZGluZzogMCAwIDEwcHggMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRsaWdodGVzdC1jb2xvciwgLjQpO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE0KTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg3MDApO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICB9XG5cbiAgICBoNiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE0KTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg5MDApO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICBjb250ZW50OiBcIlxcZjA2MVwiO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBmb250LXNpemU6IC44ZW07XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtMXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTgpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KDE1MjBweCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWF4LXdpZHRoOiAyNzBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTI5NXB4O1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogMjBweDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGg2IHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDhweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5nZm9ybV93cmFwcGVyIHtcbiAgZm9ybSB7XG4gICAgLnZhbGlkYXRpb25fZXJyb3Ige1xuICAgICAgYm9yZGVyOiBub25lIWltcG9ydGFudDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5nZm9ybV9ib2R5IHtcblxuICAgICAgLmZpbGUtZm9ybS1kaXNwbGF5IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgICBtYXJnaW46IDMwcHggMCAwcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XG5cbiAgICAgICAgJiArIC5maWxlLWZvcm0tZGlzcGxheSB7XG4gICAgICAgICAgbWFyZ2luOiA1cHggMCAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5nZm9ybV9maWVsZHMge1xuICAgICAgICBtYXJnaW46IC0yMHB4IWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgIC5nZmllbGQge1xuICAgICAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcblxuICAgICAgICAgIGRpdi5naW5wdXRfY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMik7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMThweCAxNnB4IDZweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7XG5cbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmJ1dHRvbiB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDI0cHghaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5nZmllbGRfbGFiZWwge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxM3B4O1xuICAgICAgICAgICAgbGVmdDogMzdweDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTYpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgkZGFya2VzdC1jb2xvciwgLjUpO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcztcblxuICAgICAgICAgICAgJi5mbG9hdC1tZSB7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjYpO1xuICAgICAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gICAgICAgICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZ2ZpZWxkX3JlcXVpcmVkIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmNvbC0xIHtcbiAgICAgICAgICAgIHdpZHRoOiAxIC8gMTIgKiAxMDAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMiAvIDEyICogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmNvbC0yIHtcbiAgICAgICAgICAgIHdpZHRoOiAyIC8gMTIgKiAxMDAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMiAvIDEyICogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmNvbC0zIHtcbiAgICAgICAgICAgIHdpZHRoOiAzIC8gMTIgKiAxMDAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMiAvIDEyICogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmNvbC00IHtcbiAgICAgICAgICAgIHdpZHRoOiA0IC8gMTIgKiAxMDAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMiAvIDEyICogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmNvbC02IHtcbiAgICAgICAgICAgIHdpZHRoOiA2IC8gMTIgKiAxMDAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMiAvIDEyICogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmNvbC0xMiB7XG4gICAgICAgICAgICB3aWR0aDogMTIgLyAxMiAqIDEwMCU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEyIC8gMTIgKiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYuZmlsZS11cGxvYWQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDIwcHghaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgN3B4IDEycHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuXG4gICAgICAgICAgICAuZ2Zvcm1fZHJvcF9hcmVhIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogMDtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgLmdmb3JtX2Ryb3BfaW5zdHJ1Y3Rpb25zIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLmdmb3JtX2J1dHRvbl9zZWxlY3RfZmlsZXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudmFsaWRhdGlvbl9tZXNzYWdlIHtcbiAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMjRweDtcblxuICAgICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGRhcmtlc3QtY29sb3IsIC42KTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE0KTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg0MDApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZ2lucHV0X3ByZXZpZXcge1xuICAgICAgICAgICAgICBtYXJnaW46IDEycHggMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAyNHB4O1xuXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAuZ2Zvcm1fZGVsZXRlIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAvL3dpZHRoOiAwLjFweDtcbiAgICAgICAgICAgICAgLy9oZWlnaHQ6IDAuMXB4O1xuICAgICAgICAgICAgICAvL29wYWNpdHk6IDA7XG4gICAgICAgICAgICAgIC8vb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIC8vei1pbmRleDogLTE7XG4gICAgICAgICAgICAgIC8vbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAvL3JpZ2h0OiAwO1xuICAgICAgICAgICAgICAvL2JvdHRvbTogMDtcbiAgICAgICAgICAgICAgLy9wYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgICAgICAgIC8vQGluY2x1ZGUgZm9udC10by1lbXMoMTYpO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgIC5nZmllbGRfcmVxdWlyZWQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiAudmFsaWRhdGlvbl9tZXNzYWdlIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAyNHB4IDMwcHghaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYuZ3NlY3Rpb24ge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDAgMzBweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgICAgICAgICAgIC5nc2VjdGlvbl90aXRsZSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDIwKTtcbiAgICAgICAgICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZ3NlY3Rpb25fZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRkYXJrZXN0LWNvbG9yLCAuNik7XG4gICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIDAgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmdmaWVsZF9lcnJvciB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmUhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIvLyBOYXZpZ2F0aW9uIGJyZWFrcG9pbnRzXG4ubW9iaWxlLW1lbnUsXG4uc2l0ZS10aXRsZS1iYXIge1xuICBAaW5jbHVkZSBoaWRlLWZvcihtZWRpdW0pO1xufVxuXG4uZGVza3RvcC1tZW51LFxuLnNpdGUtbmF2aWdhdGlvbiAudG9wLWJhci1sZWZ0IHtcbiAgQGluY2x1ZGUgc2hvdy1mb3IobWVkaXVtKTtcbn1cblxuLy8gU2l0ZSB0aXRsZVxuLnNpdGUtZGVza3RvcC10aXRsZSBhIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vIE1vYmlsZSBtZW51XG4ubW9iaWxlLW1lbnUge1xuICBkaXNwbGF5OiBub25lOyAvLyBwcmV2ZW50cyByZXBhaW50IGNhdXNlZCBieSBKUyBoaWRpbmcgbWVudSBvbmxvYWRcbn1cblxuLm9mZi1jYW52YXMge1xuICA+IHVsLm1lbnUge1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgcGFkZGluZzogMXJlbTtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICB9XG4gIH1cblxuICAubWVudSAuYWN0aXZlID4gYSB7IGJhY2tncm91bmQtY29sb3I6ICNjY2M7IH1cblxufVxuXG4udGl0bGUtYmFyLXRpdGxlIHtcbiAgYSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGNvbG9yOiAjQjlCOUI5O1xuICB9XG59XG5cbi5tb2JpbGUtbWVudSxcbi5tb2JpbGUtb2ZmLWNhbnZhcy1tZW51IHtcblxuICAubWVudSAuaXMtYWN0aXZlID4gYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkZGFyay1uYXYtY29sb3IsIDUlKTtcbiAgfVxufVxuXG4vLyBUYWJsZXQgYW5kIGRlc2t0b3AgbWVudVxuXG4udG9wLWJhciB7XG5cbiAgLnRvcC1iYXItdGl0bGUgYSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGNvbG9yOiAjQjlCOUI5O1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS44O1xuICB9XG5cbiAgLm1lbnUgYSB7XG4gICAgY29sb3I6ICNlNmU2ZTY7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAmOmhvdmVyOm5vdCguYnV0dG9uKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDI1MjVEO1xuICAgIH1cbiAgfVxuXG4gIC5tZW51IC5hY3RpdmUgPiBhIHsgYmFja2dyb3VuZC1jb2xvcjogI2NjYzsgfVxuXG4gIC5tZW51PmxpOm5vdCgubWVudS10ZXh0KT5hIHsgcGFkZGluZzogMXJlbTsgfVxuICAubWVudSBsaTpub3QoOmxhc3QtY2hpbGQpIHsgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzRlNGU0ZTsgfVxuXG4gIC5kcm9wZG93bi5tZW51IC5zdWJtZW51IHsgYm9yZGVyOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51IC5oYXMtc3VibWVudS5pcy1kb3duLWFycm93IGEgeyBwYWRkaW5nLXJpZ2h0OiAxcmVtOyB9XG4gIC5kcm9wZG93bi5tZW51IC5oYXMtc3VibWVudS5pcy1kb3duLWFycm93ID4gYTo6YWZ0ZXIgeyBib3JkZXI6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnU6Zmlyc3QtY2hpbGQgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHsgZGlzcGxheTogbm9uZTsgfVxufVxuXG4uc2l0ZS1uYXZpZ2F0aW9uIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgcGFkZGluZzogMDsgLy8gcHJldmVudHMgY29udGFpbmVyIHZpc2liaWxpdHkgb24gc21hbGwgc2NyZWVuc1xuICB9XG59XG5cbi8vIFdQIHBvc3QgbmF2aWdhdGlvblxuLnBvc3QtbmF2aWdhdGlvbiB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4ubmF2LXByZXZpb3VzIHtcbiAgZmxvYXQ6bGVmdDtcbn1cblxuLm5hdi1uZXh0IHtcbiAgZmxvYXQ6cmlnaHQ7XG59XG5cbi8vY3VzdG9tIG5hdlxuLnNpdGUtaGVhZGVyIHtcbiAgaGVpZ2h0OiA5MHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgLy90cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDIwMG1zO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogOTk5O1xuXG4gIG9wYWNpdHk6IDA7XG5cbiAgLmxvZ28ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDIwcHg7XG4gICAgbGVmdDogNDBweDtcbiAgICB3aWR0aDogMjUwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xuXG4gICAgLmNhcCwgLnRleHQsIC5ydWxlLCAua2VybmVsIHsgdHJhbnNpdGlvbjogYWxsIDIwMG1zOyB9XG5cbiAgICBzdmcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgICAgd2lkdGg6IDE2MHB4O1xuICAgICAgbGVmdDogMjBweDtcbiAgICAgIHRvcDogMTBweDtcbiAgICB9XG4gIH1cblxuICAubW9iaWxlLW5hdi10cmlnZ2VyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMjBweDtcbiAgICB0b3A6IDI1cHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIHotaW5kZXg6IDk5OTtcblxuICAgIC50b3AtYmFyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlc3QtY29sb3I7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7XG4gICAgfVxuXG4gICAgLm1pZC1iYXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGJhY2tncm91bmQ6ICRsaWdodGVzdC1jb2xvcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xuICAgIH1cblxuICAgIC5ib3R0b20tYmFyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlc3QtY29sb3I7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7XG4gICAgfVxuXG4gICAgJi50cmlnZ2VyLW9wZW4ge1xuICAgICAgLnRvcC1iYXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWShjYWxjKC01MCUpKTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWdodGVzdC1jb2xvcjtcbiAgICAgIH1cbiAgICAgIC5taWQtYmFyIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgfVxuICAgICAgLmJvdHRvbS1iYXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVkoY2FsYyg1MCUpKTtcbiAgICAgICAgYm90dG9tOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWdodGVzdC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAubWFpbi1uYXYtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyMHB4O1xuICAgIHJpZ2h0OiAyNXB4O1xuICAgIHRyYW5zaXRpb246IGFsbCA0NTBtcyBlYXNlLW91dDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0IGRvd24pIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRkYXJrZXN0LWNvbG9yLC45NSk7XG4gICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgJi5vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cblxuICAgIHVsI21lbnUtcHJpbWFyeS1uYXZpZ2F0aW9uIHtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgbGkge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBAaW5jbHVkZSBtYWluLWZvbnQoODAwKTtcbiAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTUpO1xuICAgICAgICBcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygyNSk7XG4gICAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICAgIC8vdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7XG5cbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0byAyMCB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgjeyRpfSkge1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1vdXQgKDE1MG1zICsgKCRpICogNTApKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgICAgIG1hcmdpbjogMC42NWVtIDFlbTtcbiAgICAgICAgICBwYWRkaW5nOiAwLjY1ZW0gMDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICAgICAgICAvL21hcmdpbjogMDtcbiAgICAgICAgICAgIC8vcGFkZGluZzogMCAwIDYwcHg7XG5cbiAgICAgICAgICAgIGNvbG9yOiAkbGlnaHRlc3QtY29sb3I7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0IGRvd24pIHtcbiAgICAgICYub3BlbiB7XG4gICAgICAgIHVsI21lbnUtcHJpbWFyeS1uYXZpZ2F0aW9uIHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgJi5kYXJrLXRoZW1lIHtcbiAgICAubG9nbyB7XG4gICAgICAuY2FwIHsgZmlsbDogIzAwMDsgc3Ryb2tlOiAjMDAwOyB9XG4gICAgICAudGV4dCB7IGZpbGw6ICMwMDA7IH1cbiAgICAgIC5ydWxlIHsgZmlsbDogIzAwMDsgc3Ryb2tlOiAjMDAwOyB9XG4gICAgICAua2VybmVsIHsgc3Ryb2tlOiAjMDAwOyB9XG4gICAgfVxuXG4gICAgLm1vYmlsZS1uYXYtdHJpZ2dlciB7XG4gICAgICAudG9wLWJhciwgLm1pZC1iYXIsIC5ib3R0b20tYmFyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuOCk7XG4gICAgICB9XG5cbiAgICAgICYudHJpZ2dlci1vcGVuIHtcbiAgICAgICAgLnRvcC1iYXIsIC5taWQtYmFyLCAuYm90dG9tLWJhciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1haW4tbmF2LWNvbnRhaW5lciB1bCNtZW51LXByaW1hcnktbmF2aWdhdGlvbiBsaSBhIHtcbiAgICAgIGNvbG9yOiByZ2JhKDAsMCwwLC44KTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgICAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubWVudSNtZW51LXByaW1hcnktbmF2aWdhdGlvbiB7XG4gIGxpIHtcbiAgICBhOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDNweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgfVxuICB9XG5cbiAgbGk6aG92ZXIsXG4gIC5pcy1hY3RpdmUge1xuICAgID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubWVudSB7XG4gIGxpOmhvdmVyLFxuICAuaXMtYWN0aXZlIHtcbiAgICA+IGEge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi5zaXRlLWhlYWRlci5zdGlja3kge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgaGVpZ2h0OiA3MHB4O1xuICAvL3Bvc2l0aW9uOiBmaXhlZDtcbiAgLy90b3A6IDA7XG4gIC8vd2lkdGg6IDEwMCU7XG5cbiAgLm1vYmlsZS1uYXYtdHJpZ2dlciB7XG4gICAgLnRvcC1iYXIsIC5taWQtYmFyLCAuYm90dG9tLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAxKTtcbiAgICB9XG4gIH1cblxuICAubWFpbi1uYXYtY29udGFpbmVyIHVsI21lbnUtcHJpbWFyeS1uYXZpZ2F0aW9uIGxpIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgLmxvZ28ge1xuICAgIHdpZHRoOiAxNjBweDtcbiAgICB0b3A6IDEwcHg7XG5cbiAgICAuY2FwIHsgZmlsbDogI2ZmZjsgc3Ryb2tlOiAjZmZmOyB9XG4gICAgLnRleHQgeyBmaWxsOiAjZmZmOyB9XG4gICAgLnJ1bGUgeyBmaWxsOiAjZmZmOyBzdHJva2U6ICNmZmY7IH1cbiAgICAua2VybmVsIHsgc3Ryb2tlOiAjZmZmOyB9XG4gIH1cblxuICAubWFpbi1uYXYtY29udGFpbmVyIHtcbiAgICB0b3A6IDEwcHg7XG4gIH1cbn0iLCIubWFpbi1jb250YWluZXIge1xuICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcbn1cblxuLm1haW4tZ3JpZCB7XG4gIEBpbmNsdWRlIHh5LWdyaWQoKTtcbiAgbWFyZ2luLXRvcDogMXJlbTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG4gIH1cblxuICAmLnNpZGViYXItbGVmdCB7XG4gICAgLy8gUGxhY2UgdGhlIHNpZGViYXIgYmVsb3cgbWFpbiBjb250ZW50IG9uIHNtYWxsIHNjcmVlbnMgLi4uXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgLm1haW4tY29udGVudCB7IG9yZGVyOiAxOyB9XG4gICAgICAuc2lkZWJhciB7IG9yZGVyOiAyOyB9XG4gICAgfVxuXG4gICAgLy8gLi4uIGFuZCB0byB0aGUgbGVmdCBvbiBtZWRpdW0tdXAgc2NyZWVucywgd2hlbiB1c2luZyB0aGUgc2lkZWJhci1sZWZ0IHRlbXBsYXRlXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIC5tYWluLWNvbnRlbnQgeyBvcmRlcjogMjsgfVxuICAgICAgLnNpZGViYXIgeyBvcmRlcjogMTsgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEZ1bGwgd2lkdGggdGVtcGxhdGVcbiAgLm1haW4tY29udGVudC1mdWxsLXdpZHRoIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgfVxuXG4gIC8vIERlZmF1bHQgdGVtcGxhdGVcbiAgLm1haW4tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoOCk7XG4gICAgfVxuICB9XG5cbiAgLnNpZGViYXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDQpO1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG5cbiAgfVxufVxuXG5zZWN0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRlci1jb2xvcjsgLy9kZWZhdWx0IGNvbG9yXG5cbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gICYubGlnaHQtdGV4dHVyZSB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9oZXgtbm9kZS1ncmlkLWxpZ2h0LnBuZ1wiKSAwIDAgcmVwZWF0O1xuICAgICAgLy96LWluZGV4OiAtMTtcbiAgICB9XG4gIH1cblxuICAmLmRhcmstdGV4dHVyZSB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9oZXgtbm9kZS1ncmlkLWRhcmsucG5nXCIpIDAgMCByZXBlYXQ7XG4gICAgICAvL3otaW5kZXg6IC0xO1xuICAgIH1cbiAgfVxufVxuIiwiLmZvb3Rlci1jb250YWluZXIge1xuICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNjApO1xufVxuXG4uZm9vdGVyLWdyaWQge1xuICBAaW5jbHVkZSB4eS1ncmlkO1xuICBwYWRkaW5nOiByZW0tY2FsYygzMCkgMDtcblxuICBzZWN0aW9uIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbChhdXRvKTtcbiAgICB9XG4gIH1cblxuICB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbmZvb3Rlci5mb290ZXJ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICBwYWRkaW5nOiA1MHB4IDgwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgcGFkZGluZzogNDBweCAyMHB4O1xuICB9XG59XG5cbi5mb290ZXItY29udGVudHtcbiAgbWFyZ2luOiAwIGF1dG8gNDVweCBhdXRvO1xuICAvL21heC13aWR0aDogJGdsb2JhbC13aWR0aDtcblxuICAuY2VsbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgbWFyZ2luOiAwIDAgMzBweDtcblxuICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHVsI21lbnUtZm9vdGVyLW5hdmlnYXRpb24ge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgY29sdW1uLXdpZHRoOiAxMDBweDtcbiAgICBjb2x1bW4tZ2FwOiA2MHB4O1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIFxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgY29sb3I6ICRsaWdodGVzdC1jb2xvcjtcbiAgICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuNHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZm9vdG5vdGV7XG4gIG1hcmdpbjogMCBhdXRvO1xuICAvL21heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiAgY29sb3I6IHJnYmEoJGxpZ2h0ZXN0LWNvbG9yLCAuNik7XG59IiwiYm9keSN0aW55bWNle1xuICBoZWlnaHQ6IGF1dG87IC8vIEZpeCBlZGl0b3Igc3R5bGUgYnVnXG4gIG1heC13aWR0aDogJGdyaWQtcm93LXdpZHRoOyAvLyBHaXZlIHRoZSBlZGl0b3IgYSBtYXgtd2lkdGhcbiAgcGFkZGluZzogcmVtLWNhbGMoMjApICFpbXBvcnRhbnQ7XG59IiwiLnNpdGVzLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICBmb250LXNpemU6IDFlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYm94LXNoYWRvdzogMCAtMnB4IDAgcmdiYSgwLDAsMCwwLjIpIGluc2V0O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmJ1dHRvbiB7XG4gIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE2KTtcbiAgQGluY2x1ZGUgbWFpbi1mb250KDcwMCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAuOHB4O1xuICBwYWRkaW5nOiAxNXB4IDM1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogMCAycHggOHB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKSwgMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xuXG4gICYub3BlbiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE2KTtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICBsaW5lLWhlaWdodDogdW5zZXQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1bnNldDtcbiAgfVxufVxuIiwiLmNhcmRzLWNvbnRhaW5lciB7XG5cbiAgQGluY2x1ZGUgeHktZ3JpZDtcblxuICAuY2FyZCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG5cbiAgICAgIC5jYXJkLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMSBvZiAzLCB0cnVlLCAwLjdyZW0gKTtcblxuICAgIH1cblxuICB9XG59XG4iLCIuZmVhdHVyZWQtaGVybyB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgLy9oZWlnaHQ6IDUwMHB4O1xuICBwYWRkaW5nOiA5MHB4IDAgNzVweDtcbn1cbiIsIi5kb3R0ZWQge1xuICBib3JkZXItc3R5bGU6IGRhc2hlZDtcbiAgbWFyZ2luOiAycmVtIDA7XG59XG4iLCIvLyBBcHBseSBvdXRsaW5lIHN0eWxlcyBvbmx5IHdoZW4gaW5wdXQgbWV0aG9kIGlzIGtleWJvYXJkXG4vLyByZW1vdmUgOmZvY3VzIHN0eWxlIHZpYSBXaGF0IElucHV0IHVzaW5nIHByb2dyZXNzaXZlIGVuaGFuY2VtZW50XG4vLyBzbyA6Zm9jdXMgaXNuJ3QgbGVmdCBicm9rZW4gaWYgSmF2YVNjcmlwdCBmYWlsc1xuXG5bZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSBhOmZvY3VzLCBidXR0b246Zm9jdXNcbltkYXRhLXdoYXRpbnB1dD1cInRvdWNoXCJdIGE6Zm9jdXMsIGJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4iLCIvLyBQYWdlIGhlYWRlclxuLmZyb250LWhlcm8ge1xuICAubWFya2V0aW5nIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcig1NXJlbSk7XG4gICAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9kZW1vL2hlcm8tYmctZm91bmRhdGlvbi02LXNtYWxsLnN2ZycpIGJvdHRvbSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b207XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNjUlKSAwO1xuICAgIG1hcmdpbjogMCAwIHJlbS1jYWxjKDMyKTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2RlbW8vaGVyby1iZy1mb3VuZGF0aW9uLTYtbGFyZ2Uuc3ZnJykgYm90dG9tIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDY4NSk7XG4gICAgbWFyZ2luOiAwIDAgcmVtLWNhbGMoNzIpO1xuICB9XG5cbiAgLndhdGNoIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDcpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjQjRDOUQxO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgI3N0YXJnYXplcnMge1xuICAgICAgOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDliXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gICAgICAgIGNvbG9yOiAjQjRDOUQxO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICN0d2l0dGVyIHtcbiAgICAgIDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjA5OVwiO1xuICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICAgICAgICBjb2xvcjogI0I0QzlEMTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIC50YWdsaW5lIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDUpO1xuICAgICAgcGFkZGluZy10b3A6IDZyZW07XG4gICAgfVxuICB9XG5cbiAgaDEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZm9udC1zaXplOiAyLjg3NXJlbTtcbiAgICB9XG4gIH1cblxuICBoNCB7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXNpemU6IDEuMzEyNXJlbTtcbiAgfVxuXG4gIC5kb3dubG9hZCB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICB9XG59XG5cbi8vIEludHJvXG4uaW50cm8ge1xuICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcbiAgQGluY2x1ZGUgeHktZ3JpZDtcblxuICAuZnAtaW50cm8ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEwKTtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KDEpO1xuXG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgIH1cblxuICAgICAgaDQge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICBjb2xvcjogIzc3NztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2VjdGlvbiBkaXZpZGVyXG4uc2VjdGlvbi1kaXZpZGVyIHtcbiAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG4gIEBpbmNsdWRlIHh5LWdyaWQ7XG5cbiAgaHIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuICAgIEBleHRlbmQgLmRvdHRlZDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG59XG5cbi8vIEJlbmVmaXRzXG4uYmVuZWZpdHMge1xuICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcbiAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGhlYWRlciB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG5cbiAgICBoMiB7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgY29sb3I6ICM3Nzc7XG4gICAgfVxuICB9XG5cbiAgLnNlbWFudGljLFxuICAucmVzcG9uc2l2ZSxcbiAgLmN1c3RvbWl6YWJsZSxcbiAgLnByb2Zlc3Npb25hbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMyk7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgICBtYXJnaW46IDFyZW0gYXV0byAwIGF1dG87XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgfVxuICB9XG5cbiAgLndoeS1mb3VuZGF0aW9uIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICB9XG59XG4iLCIua2l0Y2hlbi1zaW5rLWhlYWRlciB7XG4gIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xufVxuXG5cbi5raXRjaGVuLXNpbmstY29tcG9uZW50cyB7XG4gIGhyIHtcbiAgICBtYXJnaW46IDNyZW0gMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDkpO1xuICB9XG59XG5cbi5raXRjaGVuLXNpbmstbmF2IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgzKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAuZG9jcy1zdWItbWVudSB7XG4gICAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cblxuICAgIC5kb2NzLW1lbnUtdGl0bGUge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgIH1cblxuICAgIC5kb2NzLXRvYyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctbGVmdDogNHJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgfVxuXG4gICAgLmRvY3MtdG9jIC5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogIzIxOTllODtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG5cbiAgICAuZG9jcy10b2MgLmRvY3Mtc3ViLW1lbnU6Zmlyc3QtY2hpbGQgLmRvY3MtbWVudS10aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4ua2l0Y2hlbi1zaW5rLWdyaWQge1xuICAuZ3JpZC14IHtcbiAgICBiYWNrZ3JvdW5kOiAjZDZlY2ZhO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgXG4gICAgLmNlbGwsOm50aC1jaGlsZChvZGQpIHtcbiAgICAgIGJhY2tncm91bmQ6ICM3YmMxZWY7XG4gICAgICBjb2xvcjogIzBhMGEwYTtcbiAgICB9XG5cbiAgICAuY2VsbDpudGgtY2hpbGQoZXZlbikge1xuICAgICAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIH1cbiAgfVxufVxuIiwiIGJvZHkuYXV0aG9yIHtcbiAgIHBhZGRpbmctdG9wOiAxNDBweDtcblxuICAgaGVhZGVyIHtcbiAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgYmFja2dyb3VuZDogcmdiKDExLDEzNSwxNDcpOyAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLCByZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIEZGMy42LTE1ICovXG4gICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7IC8qIElFNi05ICovXG4gICB9XG5cbiAgIC5hdmF0YXItY29udGFpbmVyIHtcbiAgICAgd2lkdGg6IDEwMCU7XG4gICAgIHBhZGRpbmctdG9wOiAxMDAlO1xuICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICBpbWcge1xuICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICB0b3A6IDUwJTtcbiAgICAgICBib3R0b206IDA7XG4gICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICB9XG4gICB9XG5cbiAgIGgyIHtcbiAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMzYpO1xuICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcbiAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICBwYWRkaW5nOiAwO1xuICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICB9XG5cbiAgIC5hdXRob3ItbWV0YSB7XG5cbiAgICAgaDIge1xuICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDM2KTtcbiAgICAgICBAaW5jbHVkZSBtYWluLWZvbnQoOTAwKTtcbiAgICAgICBtYXJnaW46IDA7XG4gICAgICAgcGFkZGluZzogMzVweCAwIDAgMDtcbiAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgIH1cblxuICAgICBoMyB7XG4gICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMjgpO1xuICAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgICAgIG1hcmdpbjogMDtcbiAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgfVxuXG4gICAgIGg0IHtcbiAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygyMCk7XG4gICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG4gICAgICAgbWFyZ2luOiAwO1xuICAgICAgIHBhZGRpbmc6IDAgMCAyNXB4IDA7XG4gICAgICAgY29sb3I6IHJnYmEoJGRhcmtlc3QtY29sb3IsIDAuNSk7XG4gICAgIH1cblxuICAgICBwIHtcbiAgICAgICBsaW5lLWhlaWdodDogMTc1JTtcbiAgICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNTAwKTtcbiAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgIH1cblxuICAgICAuc29jaWFsLWxpbmtzIHtcbiAgICAgICBtYXJnaW46IDUwcHggMDtcbiAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICBsaSB7XG4gICAgICAgICBtYXJnaW46IDAgNDBweCAwIDA7XG4gICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgfVxuXG4gICAgICAgICBpbWcge1xuICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgIH1cbiAgICAgICB9XG4gICAgIH1cblxuICAgICAubWVudGlvbi1saW5rcyB7XG4gICAgICAgbWFyZ2luOiAzMHB4IDAgMDtcbiAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICBsaSB7XG4gICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgfVxuXG4gICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICB9XG4gICAgICAgfVxuICAgICB9XG5cbiAgICAgJiArIGgyIHtcbiAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkZGFya2VzdC1jb2xvciwgMC4xNSk7XG4gICAgICAgcGFkZGluZy10b3A6IDYwcHg7XG4gICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICAgfVxuXG4gICB9XG5cbiAgIC5hdXRob3ItYXJ0aWNsZXMge1xuICAgICAuY2VsbCB7XG4gICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcblxuICAgICAgIC8vdGVzdGluZyBzb21lIHN0dWZmXG4gICAgICAgLy9oZWlnaHQ6IDQ2NXB4O1xuICAgICB9XG4gICB9XG5cbiAgIC5ibG9nLWl0ZW0ge1xuICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgIGJhY2tncm91bmQ6ICRsaWdodGVzdC1jb2xvcjtcbiAgICAgYm94LXNoYWRvdzogMCA3cHggMTJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG5cbiAgICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgIC8vc29tZSB0ZXN0aW5nIHN0dWZmXG4gICAgIC8vZGlzcGxheTogZmxleDtcbiAgICAgLy9mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgIHAge1xuICAgICAgIG1hcmdpbjogMDtcbiAgICAgICBwYWRkaW5nOiAwIDMwcHggMzBweDtcbiAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTQuNCk7XG4gICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCk7XG5cbiAgICAgICAvL3NvbWUgdGVzdGluZyBzdHVmZlxuICAgICAgIC8vZmxleDogMCAxIGF1dG87XG4gICAgICAgLy9wYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAvL21hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgLy9vdmVyZmxvdzogaGlkZGVuO1xuICAgICAgIC8vdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgIH1cblxuICAgICBpbWcge1xuICAgICAgIGhlaWdodDogMTkwcHg7XG4gICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDtcblxuICAgICAgIC8vc29tZSB0ZXN0aW5nIHN0dWZmXG4gICAgICAgLy9mbGV4OiAxIDAgMTkwcHg7XG4gICAgIH1cblxuICAgICBoNSB7XG4gICAgICAgbWFyZ2luOiAwO1xuICAgICAgIHBhZGRpbmc6IDIwcHggMzBweCAwO1xuICAgICAgIGNvbG9yOiByZ2JhKCRkYXJrZXN0LWNvbG9yLCAwLjYpO1xuICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE0KTtcbiAgICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNDAwKTtcbiAgICAgICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICBpbWcge1xuICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1jb2xvcjtcbiAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgfVxuXG4gICAgICAgc3BhbiB7XG4gICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICB9XG4gICAgIH1cblxuICAgICBoMyB7XG4gICAgICAgbWFyZ2luOiAwO1xuICAgICAgIHBhZGRpbmc6IDE1cHggMzBweCAxNXB4O1xuICAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygyMCk7XG4gICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG4gICAgIH1cblxuICAgICAmOmFmdGVyIHtcbiAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICBib3R0b206IDA7XG4gICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICAgICAgIGJhY2tncm91bmQ6IHJnYigxMSwxMzUsMTQ3KTsgLyogT2xkIGJyb3dzZXJzICovXG4gICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLCByZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIEZGMy42LTE1ICovXG4gICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7IC8qIElFNi05ICovXG4gICAgIH1cblxuICAgICAmOmhvdmVyIHtcbiAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDE2cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuXG4gICAgICAgaW1nIHtcbiAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgfVxuICAgICB9XG4gICB9XG5cblxuICAgLnBhZ2luYXRpb24ge1xuICAgICBsaSB7XG4gICAgICAgLy9veG8gcGFnaW5hdGlvblxuICAgICAgIGE6aG92ZXIge1xuICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgfVxuXG4gICAgICAgYS5jdXJyZW50IHtcbiAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgIH1cblxuICAgICAgICYubmV4dCB7XG4gICAgICAgICBhIHtcbiAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgICAgICAgICAgY29udGVudDogXCJcXGYwNjFcIjtcbiAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgY29sb3I6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICBmb250LXNpemU6IC43ZW07XG4gICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICAgICAgICAgICB9XG4gICAgICAgICB9XG4gICAgICAgfVxuXG4gICAgICAgJi5wcmV2IHtcbiAgICAgICAgIGEge1xuICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgICAgICAgICAgY29udGVudDogXCJcXGYwNjBcIjtcbiAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgZm9udC1zaXplOiAuN2VtO1xuICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgICAgfVxuICAgICAgICAgfVxuICAgICAgIH1cblxuICAgICAgICYubGFzdCB7XG4gICAgICAgICBhIHtcbiAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgICAgICAgICAgY29udGVudDogXCJcXGYzNDBcIjtcbiAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgY29sb3I6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICBmb250LXNpemU6IC43ZW07XG4gICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICAgICAgICAgICB9XG4gICAgICAgICB9XG4gICAgICAgfVxuXG4gICAgICAgJi5maXJzdCB7XG4gICAgICAgICBhIHtcbiAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMzNlXCI7XG4gICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICBjb2xvcjogJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjdlbTtcbiAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgICAgICAgIH1cbiAgICAgICAgIH1cbiAgICAgICB9XG5cbiAgICAgICAvL2ZvdW5kYXRpb24gcGFnaW5hdGlvblxuICAgICAgIHNwYW4ge1xuICAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgfVxuICAgICAgIH1cblxuICAgICAgIGEge1xuICAgICAgICAgY29sb3I6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgICAgICAgICYubmV4dCB7XG4gICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG4gICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgZm9udC1zaXplOiAuN2VtO1xuICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgICAgfVxuICAgICAgICAgfVxuXG4gICAgICAgICAmLnByZXYge1xuICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgICAgICAgICAgY29udGVudDogXCJcXGYwNjBcIjtcbiAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgZm9udC1zaXplOiAuN2VtO1xuICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgICAgfVxuICAgICAgICAgfVxuICAgICAgIH1cbiAgICAgfVxuICAgfVxuXG4gfVxuXG4gLmF1dGhvci1wYWdlIHtcbiAgIHBhZGRpbmctYm90dG9tOiA5MHB4O1xuIH0iLCJib2R5LmJsb2csXG5ib2R5LnNpbmdsZS1wb3N0LFxuYm9keS5jYXRlZ29yeSxcbmJvZHkuc2VhcmNoLXJlc3VsdHMsXG5ib2R5LmFyY2hpdmUsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hbGwtcG9zdHMsXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1wb3N0cyxcbmJvZHkuc2luZ2xlLXJlc291cmNlX2l0ZW0gIHtcblxuICBoZWFkZXIge1xuICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgYmFja2dyb3VuZDogcmdiKDExLDEzNSwxNDcpOyAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUsIHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogRkYzLjYtMTUgKi9cbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUscmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgKi9cblxuICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsMCwwLDAuMSk7XG5cbiAgICAmLnNpdGUtaGVhZGVyIHtcbiAgICAgIGhlaWdodDogNzBweDtcbiAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0IGRvd24pIHtcbiAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgfVxuXG4gICAgICAubW9iaWxlLW5hdi10cmlnZ2VyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgICAgICAgIHRvcDogMTZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc2l0ZS1oZWFkZXIgLmxvZ28ge1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgdG9wOiAxMHB4O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgICAgdG9wOiAycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHtcbiAgICAgIHRvcDogMTBweDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZlYXR1cmVkLXBvc3Qge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAzMHB4O1xuICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTYpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCk7XG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAwIDIwcHg7XG4gICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNDAwKTtcbiAgICAgIC8vdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgfVxuXG4gICAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAwIDE1cHg7XG4gICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygyOCk7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcbiAgICB9XG5cbiAgICBhLmJ1dHRvbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgfVxuXG4gICAgLmZlYXR1cmVkLWltYWdlIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDM2MHB4O1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucG9zdC1pdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDEycHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgLy9zb21lIHRlc3Rpbmcgc3R1ZmZcbiAgICAvL2Rpc3BsYXk6IGZsZXg7XG4gICAgLy9mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgcCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDMwcHggMzBweDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE0LjQpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCk7XG5cbiAgICAgIC8vc29tZSB0ZXN0aW5nIHN0dWZmXG4gICAgICAvL2ZsZXg6IDAgMSBhdXRvO1xuICAgICAgLy9wYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIC8vbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIC8vb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIC8vdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgfVxuXG4gICAgLmNhdGVnb3J5IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTUwcHg7XG4gICAgICBsZWZ0OiAzMHB4O1xuICAgICAgY29sb3I6ICRsaWdodGVzdC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGxpZ2h0ZXN0LWNvbG9yLCAuNDApO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE1KTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg5MDApO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC43NXB4O1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiA0cHggMTBweCAzcHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmltZy1jb250YWluZXIge1xuICAgICAgYmFja2dyb3VuZDogJGRhcmtlc3QtY29sb3I7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGhlaWdodDogMTkwcHg7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBvcGFjaXR5OiAwLjY1O1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDtcbiAgICB9XG5cbiAgICBoNSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAyMHB4IDMwcHggMDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE0KTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg0MDApO1xuICAgICAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIH1cblxuICAgICAgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDIwcHggMzBweCAxMnB4O1xuICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMjApO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG4gICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGNvbG9yOiAjOTg5ODk4O1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCk7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNyk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDMwcHg7XG4gICAgICBsZWZ0OiAzMHB4O1xuXG4gICAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAuOGVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC0ycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDZweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICAgICAgYmFja2dyb3VuZDogcmdiKDExLDEzNSwxNDcpOyAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSwgcmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xuICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzBiODc5MycsIGVuZENvbG9yc3RyPScjMzYwMDMzJyxHcmFkaWVudFR5cGU9MSApOyAvKiBJRTYtOSAqL1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDE2cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuXG4gICAgICBpbWcge1xuICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBhZ2luYXRpb24ge1xuICAgIGxpIHtcbiAgICAgIC8vb3hvIHBhZ2luYXRpb25cbiAgICAgIGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cblxuICAgICAgYS5jdXJyZW50IHtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuXG4gICAgICAmLm5leHQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjdlbTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5wcmV2IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYwNjBcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjdlbTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5sYXN0IHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMzQwXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjdlbTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5maXJzdCB7XG4gICAgICAgIGEge1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYzM2VcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjdlbTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy9mb3VuZGF0aW9uIHBhZ2luYXRpb25cbiAgICAgIHNwYW4ge1xuICAgICAgICAmLmN1cnJlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgICAgICAgJi5uZXh0IHtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYwNjFcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgY29sb3I6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAuN2VtO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucHJldiB7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjA2MFwiO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgY29sb3I6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAuN2VtO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cbmJvZHkuY2F0ZWdvcnksXG5ib2R5LmJsb2csXG5ib2R5LnNlYXJjaC1yZXN1bHRzIHtcbiAgLnBvc3QtaXRlbSB7XG4gICAgcCB7XG4gICAgICBtYXJnaW46IDAgMCA0MHB4O1xuICAgIH1cbiAgfVxufVxuXG5ib2R5LnNlYXJjaC1yZXN1bHRzIHtcbiAgLnBvc3QtaXRlbSB7XG4gICAgaW1nIHtcbiAgICAgIG9wYWNpdHk6IDAuODU7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBpbWcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5zZWN0aW9uLmJsb2ctYXJjaGl2ZSxcbi5ibG9nLWVudHJ5IHtcbiAgcGFkZGluZzogNzBweCAwIDkwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgIHBhZGRpbmc6IDU1cHggMCA5MHB4O1xuICB9XG5cbiAgLmJyZWFkY3J1bWJzIHtcbiAgICBtYXJnaW46IDM1cHggMCAwO1xuXG4gICAgbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogcmdiYSgkZGFya2VzdC1jb2xvciwgMC41KTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgICAgICBjb2xvcjogJGRhcmstY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW50cm8tYXJlYSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1heC13aWR0aDogNzYwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogNjBweCAwIDgwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKXtcbiAgICAgIHBhZGRpbmc6IDYwcHggMCAzNXB4O1xuICAgIH1cblxuICAgIC8vI3NlYXJjaGZvcm0ge1xuICAgIC8vICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgIC8vICBtYXJnaW46IDMwcHggYXV0byAwO1xuICAgIC8vXG4gICAgLy8gIC5pbnB1dC1ncm91cCB7XG4gICAgLy8gICAgbWFyZ2luOiAwO1xuICAgIC8vICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvL1xuICAgIC8vICAgICY6YmVmb3JlIHtcbiAgICAvLyAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgIC8vICAgICAgY29udGVudDogXCJcXGYwMDJcIjtcbiAgICAvLyAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvLyAgICAgIGNvbG9yOiByZ2JhKDAsMCwwLC40KTtcbiAgICAvLyAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgLy8gICAgICBmb250LXNpemU6IC44ZW07XG4gICAgLy8gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLy8gICAgICBsZWZ0OiAyMHB4O1xuICAgIC8vICAgICAgdG9wOiA1MCU7XG4gICAgLy8gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgLy8gICAgfVxuICAgIC8vXG4gICAgLy8gICAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICAvLyAgICAgIHBhZGRpbmc6IDE1cHggMCAxNXB4IDQwcHg7XG4gICAgLy8gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgLy9cbiAgICAvLyAgICAgICY6Zm9jdXMge1xuICAgIC8vICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIC8vICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgIC8vICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgIC8vICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIC8vICAgICAgfVxuICAgIC8vICAgIH1cbiAgICAvLyAgfVxuICAgIC8vXG4gICAgLy8gICNzZWFyY2hzdWJtaXQge1xuICAgIC8vICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgLy8gICAgcGFkZGluZzogMCAzMHB4O1xuICAgIC8vICB9XG4gICAgLy9cbiAgICAvLyAgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQsXG4gICAgLy8gIC5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgIC8vICAgIGJvcmRlci1yYWRpdXM6IDAgNHB4IDRweCAwO1xuICAgIC8vICB9XG4gICAgLy99XG5cbiAgICAjc2VhcmNoZm9ybSB7XG4gICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgICAgbWFyZ2luOiAyNXB4IGF1dG8gMDtcblxuICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMTVweDtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDZweCByZ2JhKCMwMDAwMDAsIC4xNSk7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgdG9wOiAxMHB4O1xuXG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCB0byByaWdodCwgcmdiYSgjZmZmLCAwKSwgcmdiYSgjZmZmLCAxKSA1MCUgKTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG5cbiAgICAgICAgICAuZmEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaW5wdXRbdmFsdWU9XCJTZWFyY2hcIl17XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDIwKTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg1MDApO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcyg2NCk7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoOTAwKTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjb2xvcjogJGRhcmtlci1oZWFkbGluZTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bil7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDQ4KTtcbiAgICAgIH1cblxuICAgICAgJiArIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDI0KTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg3MDApO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGNvbG9yOiAkZGFya2VyLWhlYWRsaW5lO1xuICAgIH1cblxuICB9XG5cbiAgaDIge1xuICAgIG1hcmdpbjogMTAwcHggMCA2MHB4O1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDM2KTtcbiAgICBAaW5jbHVkZSBtYWluLWZvbnQoNzAwKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBtYXJnaW46IDYwcHggMCA2MHB4O1xuICAgIH1cblxuICAgICYud2h5LXNrLWhlYWRlciB7XG4gICAgICB3aWR0aDogNDA0cHg7XG4gICAgICBoZWlnaHQ6IDEzMHB4O1xuICAgICAgbWFyZ2luOiA2MHB4IGF1dG8gNTBweDtcblxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtaW5kZW50OiAxMDAlO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICB3aWR0aDogODUlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYigxMSwgMTM1LCAxNDcpOyAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLCAxMzUsIDE0NywgMSkgMCUsIHJnYmEoNTQsIDAsIDUxLCAxKSAxMDAlKTsgLyogRkYzLjYtMTUgKi9cbiAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLCAxMzUsIDE0NywgMSkgMCUsIHJnYmEoNTQsIDAsIDUxLCAxKSAxMDAlKTsgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMTEsIDEzNSwgMTQ3LCAxKSAwJSwgcmdiYSg1NCwgMCwgNTEsIDEpIDEwMCUpOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLCBHcmFkaWVudFR5cGU9MSk7IC8qIElFNi05ICovXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICBjb250ZW50OiBcIlxcZjA2MVwiO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICBjb2xvcjogJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgZm9udC1zaXplOiAuN2VtO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG5cbmJvZHkuY2F0ZWdvcnksXG5ib2R5LnNlYXJjaC1yZXN1bHRzLFxuYm9keS5hcmNoaXZlLFxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtYWxsLXBvc3RzLFxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcG9zdHMsXG5ib2R5LmJsb2csXG5ib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtICB7XG5cbiAgc2VjdGlvbi5ibG9nLWFyY2hpdmUge1xuICAgIHBhZGRpbmctYm90dG9tOiA5MHB4O1xuXG4gICAgLmludHJvLWFyZWEge1xuICAgICAgcGFkZGluZy10b3A6IDM1cHg7XG4gICAgfVxuICB9XG5cbiAgLmZlYXR1cmVkLXBvc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG5cbiAgICAmICsgaDIge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICAuYWxsLXBvc3RzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgLmNlbGwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvL3Rlc3Rpbmcgc29tZSBzdHVmZlxuICAgICAgLy9oZWlnaHQ6IDQ2NXB4O1xuICAgIH1cbiAgfVxufVxuXG5ib2R5LnRheC1lc3NlbnRpYWxfY2F0ZWdvcmllcyxcbmJvZHkudGF4LWVzc2VudGlhbF90eXBlIHtcbiAgLmFsbC1wb3N0cy5oYXMtdHlwZSAucG9zdC1pdGVtIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDVweDtcbiAgfVxuXG4gIC5mZWF0dXJlZC1wb3N0IHtcbiAgICBpbWcuZmVhdHVyZWQtaW1hZ2Uge1xuICAgICAgLy9vYmplY3QtZml0OiBjb250YWluO1xuICAgIH1cbiAgfVxuXG4gIC5lbWJlZC1ob2xkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAudGFnLWNsb3VkIHtcblxuICAgIG1hcmdpbi10b3A6IDY1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDAgMTBweCAxNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg3MDApO1xuICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNSk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgcGFkZGluZzogNHB4IDEwcHggM3B4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGhpZ2hsaWdodC1jb2xvciwgLjEpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgY29sb3I6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VsZWN0ZWQge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgICAgICAgcGFkZGluZzogNHB4IDEwcHggM3B4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAzcHggNnB4ICMwMDAwMDAyOTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYWxsLXBvc3RzIC5jZWxsIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzUwbXM7XG5cbiAgICAmLnNjYWxlLW91dCB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKC43KTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG59XG5cbmJvZHkuYmxvZywgYm9keS5zZWFyY2gtcmVzdWx0cyB7XG4gIC5hbGwtcG9zdHMge1xuXG4gICAgLmNlbGwge1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvL3Rlc3Rpbmcgc29tZSBzdHVmZlxuICAgICAgLy9oZWlnaHQ6IDQ2NXB4O1xuICAgIH1cbiAgfVxufVxuXG4uYmxvZy1lbnRyeSB7XG5cbiAgLmJyZWFkY3J1bWJzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLDAsMCwwLjE1KTtcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xuICB9XG5cbiAgaGVhZGVyLmZlYXR1cmVkLWhlcm8ge1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC5pbnRyby1hcmVhIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bil7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDQwKTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg3MDAsJ2Fub24nKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMTUlO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKXtcbiAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMzIpO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgfVxuXG4gICAgLmljb24td3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIGkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jYXRlZ29yeS10YWcge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkbGlnaHRlc3QtY29sb3IsIC40KTtcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4IDNweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoOTAwKTtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE1KTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTgpO1xuICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRsaWdodGVzdC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoNiB7XG4gICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgIGNvbG9yOiByZ2JhKCRkYXJrZXN0LWNvbG9yLCAwLjUpO1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTgpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCk7XG4gICAgfVxuICB9XG5cbiAgaDIge1xuICAgIG1hcmdpbjogNTBweCAwIDI1cHg7XG4gICAgQGluY2x1ZGUgZm9udC10by1lbXMoMjQpO1xuICAgIEBpbmNsdWRlIG1haW4tZm9udCg3MDApO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIGgzIHtcbiAgICBtYXJnaW46IDI1cHggMCAxNXB4O1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE4KTtcbiAgICBAaW5jbHVkZSBtYWluLWZvbnQoNzAwKTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBwIHtcbiAgICBsaW5lLWhlaWdodDogMTgwJTtcbiAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gIH1cblxuICBoNi5kYXRlIHtcbiAgICBtYXJnaW46IDMwcHggMCAwO1xuICAgIGNvbG9yOiByZ2JhKCRkYXJrZXN0LWNvbG9yLCAwLjUpO1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE4KTtcbiAgICBAaW5jbHVkZSBtYWluLWZvbnQoNTAwKTtcbiAgfVxuXG4gIC5hdXRob3ItYmxvY2sge1xuICAgIGJhY2tncm91bmQ6ICRsaWdodGVzdC1jb2xvcjtcbiAgICBwYWRkaW5nOiAyMHB4IDI1cHggMjBweCAxNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDEycHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDM1cHggMCAyMHB4O1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiA2NXB4O1xuICAgICAgaGVpZ2h0OiA2NXB4O1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuXG4gICAgLmF1dGhvci1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgIGg1IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgZm9udC1zaXplOiAuN2VtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGNvbG9yOiByZ2JhKDAsMCwwLDAuNSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDZweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgIGJhY2tncm91bmQ6IHJnYigxMSwxMzUsMTQ3KTsgLyogT2xkIGJyb3dzZXJzICovXG4gICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUsIHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogRkYzLjYtMTUgKi9cbiAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgKi9cbiAgICB9XG4gIH1cblxuICAudGFnLWxpc3Qge1xuICAgIEBpbmNsdWRlIG1haW4tZm9udCg1MDApO1xuXG4gICAgYSB7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYigxMSwxMzUsMTQ3KTsgLyogT2xkIGJyb3dzZXJzICovXG4gICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSwgcmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xuICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUscmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzBiODc5MycsIGVuZENvbG9yc3RyPScjMzYwMDMzJyxHcmFkaWVudFR5cGU9MSApOyAvKiBJRTYtOSAqL1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ibG9nLXV0aWxpdHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNjVweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkZGFya2VzdC1jb2xvciwgLjE1KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5zaGFyZS1saW5rcyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBtYXJnaW46IDAgNDVweCAwIDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG5cbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBvcGFjaXR5OiAuNTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY29tbWVudHMtY291bnQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBvcGFjaXR5OiAuNTtcbiAgICB9XG4gIH1cblxuICAucmVsYXRlZCB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTUpO1xuXG4gICAgaDIge1xuICAgICAgbWFyZ2luOiAwcHggMCA2MHB4O1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMzYpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDcwMCk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgLmNlbGwgKyAuY2VsbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnN1YnNjcmliZS1mb3JtIHtcbiAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICAgIGJhY2tncm91bmQ6IHJnYigxMSwxMzUsMTQ3KTsgLyogT2xkIGJyb3dzZXJzICovXG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoLTQ1ZGVnLCByZ2JhKDExLDEzNSwxNDcsMSkgMCUsIHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogRkYzLjYtMTUgKi9cbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgtNDVkZWcsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgZmFsbGJhY2sgb24gaG9yaXpvbnRhbCBncmFkaWVudCAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9oZXgtbm9kZS1ncmlkLWRhcmsucG5nXCIpIDAgMCByZXBlYXQ7XG4gICAgICAvL2JhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgICAvL21peC1ibGVuZC1tb2RlOiBzY3JlZW47XG4gICAgICAvL29wYWNpdHk6IDAuMTtcbiAgICB9XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogNjBweCAwO1xuICAgIGNvbG9yOiAkbGlnaHRlc3QtY29sb3I7XG5cbiAgICBoMiB7XG4gICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAvL2FjdGl2ZSBjYW1wYWlnblxuICAgIC5fZm9ybSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgIC5fZm9ybS1jb250ZW50IHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZm9udC1zaXplOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICA+ICoge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuX2Zvcm0tdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5fZm9ybS1icmFuZGluZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5fZm9ybS1sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIFt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSwgLl9zdWJtaXQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMi40Mzc1ZW07XG4gICAgICAgIG1hcmdpbjogMCAwIDFlbTtcbiAgICAgICAgcGFkZGluZzogMC41ZW07XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBjb2xvcjogJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuX2lubGluZS1zdHlsZTpub3QoLl9jbGVhcikge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxNDBweCk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IC4yNWVtIDAgMCAuMjVlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuX2J1dHRvbi13cmFwcGVyLl9pbmxpbmUtc3R5bGUge1xuICAgICAgICB3aWR0aDogMTM0cHg7XG5cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBwYWRkaW5nOiAuNWVtIDEuNWVtO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgLjI1ZW0gLjI1ZW0gMDtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkaGlnaGxpZ2h0LWNvbG9yLCA1JSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvL2h1YnNwb3RcbiAgICAuaGJzcHQtZm9ybSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICAuaW5wdXRzLWxpc3Qge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4IWltcG9ydGFudDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodGVzdC1jb2xvcjtcblxuICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuaHNfZXJyb3Jfcm9sbHVwIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmhzLWVycm9yLW1zZyB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDEyKTtcbiAgICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCk7XG4gICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuXG4gICAgICAgIGNvbG9yOiAkbGlnaHRlc3QtY29sb3I7XG4gICAgICB9XG5cbiAgICAgIC5mb3JtIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZm9udC1zaXplOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICA+ICoge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLy5fZm9ybS10aXRsZSB7XG4gICAgICAvLyAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgLy8gIGRpc3BsYXk6IG5vbmU7XG4gICAgICAvL31cbiAgICAgIC8vXG4gICAgICAvLy5fZm9ybS1icmFuZGluZyB7XG4gICAgICAvLyAgZGlzcGxheTogbm9uZTtcbiAgICAgIC8vfVxuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIFt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSwgLl9zdWJtaXQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMi40Mzc1ZW07XG4gICAgICAgIG1hcmdpbjogMCAwIDFlbTtcbiAgICAgICAgcGFkZGluZzogMC41ZW07XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBjb2xvcjogJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBkaXYuaHMtZm9ybS1maWVsZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgd2lkdGg6IDQwMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDE0MHB4KTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogLjI1ZW0gMCAwIC4yNWVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGRpdi5ocy1zdWJtaXQge1xuICAgICAgICB3aWR0aDogMTM0cHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAgICAgICAgIC8vYmFja2dyb3VuZDogJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgICAvL2NvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIC8vcGFkZGluZzogLjVlbSAxLjVlbTtcbiAgICAgICAgICAvL2JvcmRlci1yYWRpdXM6IDAgLjI1ZW0gLjI1ZW0gMDtcbiAgICAgICAgICAvL2N1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgIGJhY2tncm91bmQ6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIHBhZGRpbmc6IC41ZW0gMS41ZW07XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAuMjVlbSAuMjVlbSAwO1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDcwMCk7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBoZWlnaHQ6IDIuNDM3NWVtO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDFlbTtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkaGlnaGxpZ2h0LWNvbG9yLCA1JSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvL2JyZWFrIGl0IG91dCBvZiB0aGUgY29udGFpbmVyIGJveFxuICAgIHdpZHRoOiAxMDB2dztcbiAgICBtYXJnaW4tbGVmdDogNTAlIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgLy9wYWRkaW5nOiAwO1xuXG4gIH1cblxuICAjY29tbWVudHMtYXJlYSB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcblxuICAgIC5jb21tZW50cy1oZWFkZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTUpO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDI1cHggMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIG9sIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGFydGljbGUge1xuICAgICAgICAgIGhlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hdXRob3ItbWV0YSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuXG4gICAgICAgICAgICAgIGNpdGUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDIwKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNTAwKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB0aW1lIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNCk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGRhcmtlc3QtY29sb3IsIDAuNyk7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRkYXJrZXN0LWNvbG9yLCAwLjcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHNlY3Rpb24ge1xuICAgICAgICAgICAgbWFyZ2luOiAyNXB4IDAgMCA2OHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5yZXBseSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwIDY4cHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjNlNVwiO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICBjb2xvcjogJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2hpbGRyZW4ge1xuICAgICAgICAgIG1hcmdpbjogMzBweCAwIDMwcHggNjhweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbW1lbnQtcmVzcG9uZCB7XG4gICAgICAuY29tbWVudC1mb3JtIHtcbiAgICAgICAgLmNvbW1lbnQtZm9ybS11cmwsIC5jb21tZW50LW5vdGVzIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgW3R5cGU9J3RleHQnXSxcbiAgICAgICAgW3R5cGU9J3Bhc3N3b3JkJ10sXG4gICAgICAgIFt0eXBlPSdkYXRlJ10sXG4gICAgICAgIFt0eXBlPSdkYXRldGltZSddLFxuICAgICAgICBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSxcbiAgICAgICAgW3R5cGU9J21vbnRoJ10sXG4gICAgICAgIFt0eXBlPSd3ZWVrJ10sXG4gICAgICAgIFt0eXBlPSdlbWFpbCddLFxuICAgICAgICBbdHlwZT0nbnVtYmVyJ10sXG4gICAgICAgIFt0eXBlPSdzZWFyY2gnXSxcbiAgICAgICAgW3R5cGU9J3RlbCddLFxuICAgICAgICBbdHlwZT0ndGltZSddLFxuICAgICAgICBbdHlwZT0ndXJsJ10sXG4gICAgICAgIFt0eXBlPSdjb2xvciddLFxuICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTVweDtcbiAgICAgICAgICBwYWRkaW5nOiAxOHB4IDIwcHggN3B4O1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRlc3QtY29sb3I7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xuICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb21tZW50LWZvcm0tYXV0aG9yIHtcbiAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb21tZW50LWZvcm0tZW1haWwge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDE5cHgpO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tc3VibWl0IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwW2NsYXNzIF49ICdjb21tZW50LSddIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxN3B4O1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAxMnB4O1xuICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCk7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTYpO1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDAsMCwwLDAuNSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xuXG4gICAgICAgICAgJi5mbG9hdC1tZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC42KTtcbiAgICAgICAgICAgIHRvcDogNXB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gICAgICAgICAgICBjb2xvcjogJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cblxuXG4gIH1cblxufVxuXG5ib2R5LnNpbmdsZS1yZXNvdXJjZV9pdGVtIHtcbiAgI21haW4tY29udGFpbmVyLmhhcy1wYXl3YWxsIHtcbiAgICAvL2hlaWdodDogMTU1MHB4O1xuICAgIC8vb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cblxuI3BheXdhbGwtZm9ybSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogOTk5OTtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwczovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jZmFmYWZhKzAsZmFmYWZhKzEwMCYwKzAsMSsxMDAgKi9cbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2JhKDI1MCwyNTAsMjUwLDApIDAlLCByZ2JhKDI1MCwyNTAsMjUwLDEpIDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoMjUwLDI1MCwyNTAsMCkgMCUscmdiYSgyNTAsMjUwLDI1MCwxKSAxMDAlKTsgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAgcmdiYSgyNTAsMjUwLDI1MCwwKSAwJSxyZ2JhKDI1MCwyNTAsMjUwLDEpIDEwMCUpOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwZmFmYWZhJywgZW5kQ29sb3JzdHI9JyNmYWZhZmEnLEdyYWRpZW50VHlwZT0wICk7IC8qIElFNi05ICovXG4gIH1cblxuICAuZm9ybS13cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICAgIHBhZGRpbmc6IDUwcHggMCAxMDBweDtcblxuICAgIGgyLCBwIHtcbiAgICAgIG1heC13aWR0aDogNjgwcHg7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMTBweCBhdXRvIDMwcHg7XG4gICAgfVxuICB9XG5cbiAgZm9ybSB7XG4gICAgbWF4LXdpZHRoOiA2ODBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIC5rZXktZmllbGQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbi8vYWN0aXZlIGNhbXBhaWduXG4gIC5fZm9ybSB7XG5cbiAgICAuX2Zvcm0tY29udGVudCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgPiAqIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5fZm9ybS10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgfVxuXG4gICAgLl9mb3JtLWJyYW5kaW5nIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLl9mb3JtLWxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgW3R5cGU9J3RleHQnXSxcbiAgICBbdHlwZT0ncGFzc3dvcmQnXSxcbiAgICBbdHlwZT0nZGF0ZSddLFxuICAgIFt0eXBlPSdkYXRldGltZSddLFxuICAgIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLFxuICAgIFt0eXBlPSdtb250aCddLFxuICAgIFt0eXBlPSd3ZWVrJ10sXG4gICAgW3R5cGU9J2VtYWlsJ10sXG4gICAgW3R5cGU9J251bWJlciddLFxuICAgIFt0eXBlPSdzZWFyY2gnXSxcbiAgICBbdHlwZT0ndGVsJ10sXG4gICAgW3R5cGU9J3RpbWUnXSxcbiAgICBbdHlwZT0ndXJsJ10sXG4gICAgW3R5cGU9J2NvbG9yJ10sXG4gICAgdGV4dGFyZWEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgICAgcGFkZGluZzogMTJweCAxNnB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE2KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAkZGFyay1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBoZWlnaHQ6IDE4MHB4O1xuICAgIH1cblxuICAgIC5fYnV0dG9uLXdyYXBwZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICB9XG5cbiAgICAuX3N1Ym1pdCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIC8vZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNzAwKTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjhweDtcbiAgICAgIHBhZGRpbmc6IDE1cHggMzVweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGNvbG9yOiAkbGlnaHRlc3QtY29sb3I7XG4gICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpLCAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgfVxuXG4gICAgLl9mdWxsX3dpZHRoIHtcbiAgICAgIGZsZXg6IDEgMCA1MCU7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuXG4gICAgICAmLl9maWVsZDEge1xuICAgICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZmxleDogMSAwIDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5fYnV0dG9uLXdyYXBwZXIuX2lubGluZS1zdHlsZSB7XG4gICAgICB3aWR0aDogMTM0cHg7XG5cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHBhZGRpbmc6IC41ZW0gMS41ZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgLjI1ZW0gLjI1ZW0gMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg3MDApO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkaGlnaGxpZ2h0LWNvbG9yLCA1JSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuX2Zvcm0tdGhhbmsteW91IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAzMHB4O1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRoaWdobGlnaHQtY29sb3I7XG4gIH1cblxuICAuX2Vycm9yLl9hYm92ZSwgLl9lcnJvci5fYmVsb3cge1xuICAgIGZvbnQtc2l6ZTogLjdlbTtcbiAgICBjb2xvcjogcmVkO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI4cHgpO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgfVxuXG5cbi8vaHVic3BvdFxuICAuaGJzcHQtZm9ybSB7XG5cbiAgICAuaHNfZXJyb3Jfcm9sbHVwIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZm9ybSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgPiAqIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICBmaWVsZHNldCB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCAtMjBweCAzMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICBtYXJnaW46IDAgLTIwcHggMHB4O1xuXG4gICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmZvcm0tY29sdW1ucy0xIC5ocy1pbnB1dCxcbiAgICAgICAgJi5mb3JtLWNvbHVtbnMtMSAuaW5wdXQge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlIWltcG9ydGFudDtcblxuICAgICAgICAgICAgW3R5cGU9J2NoZWNrYm94J10ge1xuICAgICAgICAgICAgICB3aWR0aDogMjBweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGhlaWdodDogMjBweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5mb3JtLWNvbHVtbnMtMiAuaHMtaW5wdXQsXG4gICAgICAgICYuZm9ybS1jb2x1bW5zLTIgLmlucHV0IHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIFt0eXBlPSdjaGVja2JveCddIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDIwcHghaW1wb3J0YW50O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHghaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuZm9ybS1jb2x1bW5zLTEge1xuICAgICAgICAgIC5ocy1mb3JtLWZpZWxkIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmZvcm0tY29sdW1ucy0yIHtcbiAgICAgICAgICAuaHMtZm9ybS1maWVsZCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICBbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHghaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaHMtZm9ybS1maWVsZCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMTNweDtcbiAgICAgICAgICBsZWZ0OiAzN3B4O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE2KTtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgY29sb3I6IHJnYmEoJGRhcmtlc3QtY29sb3IsIC41KTtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcztcblxuICAgICAgICAgICYuZmxvYXQtbWUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguNik7XG4gICAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAgICAgICAgICAgY29sb3I6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG5cbiAgICBbdHlwZT0ndGV4dCddLFxuICAgIFt0eXBlPSdwYXNzd29yZCddLFxuICAgIFt0eXBlPSdkYXRlJ10sXG4gICAgW3R5cGU9J2RhdGV0aW1lJ10sXG4gICAgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG4gICAgW3R5cGU9J21vbnRoJ10sXG4gICAgW3R5cGU9J3dlZWsnXSxcbiAgICBbdHlwZT0nZW1haWwnXSxcbiAgICBbdHlwZT0nbnVtYmVyJ10sXG4gICAgW3R5cGU9J3NlYXJjaCddLFxuICAgIFt0eXBlPSd0ZWwnXSxcbiAgICBbdHlwZT0ndGltZSddLFxuICAgIFt0eXBlPSd1cmwnXSxcbiAgICBbdHlwZT0nY29sb3InXSxcbiAgICB0ZXh0YXJlYSxcbiAgICBzZWxlY3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgICAgcGFkZGluZzogMThweCAxNnB4IDZweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRoaWdobGlnaHQtY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGRhcmstY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc2VsZWN0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4MTM4LCAxMzgsIDEzOCUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDVweDtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG5cbiAgICAgIGNvbG9yOiByZ2JhKCRkYXJrZXN0LWNvbG9yLCAwLjQpO1xuICAgIH1cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIGhlaWdodDogMTgwcHg7XG4gICAgfVxuXG4gICAgLmlucHV0cy1saXN0IHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCFpbXBvcnRhbnQ7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUhaW1wb3J0YW50O1xuXG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG5cbiAgICAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIFt0eXBlPSdjaGVja2JveCddIHtcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHdpZHRoOiAyMHB4IWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRoaWdobGlnaHQtY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGZsZXg6IDAgMSAyMHB4O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHdpZHRoOiAyMHB4IWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4IWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYgKyBzcGFuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIGZsZXg6IDEgMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBbdHlwZT0nY2hlY2tib3gnXTpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIuKck1wiO1xuICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAycHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaHMtZmllbGR0eXBlLWNoZWNrYm94IHtcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTYpO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBjb2xvcjogcmdiYSgkZGFya2VzdC1jb2xvciwgLjUpO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xuXG4gICAgICAgICYuZmxvYXQtbWUge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAgICAgICAgIGNvbG9yOiByZ2JhKCRkYXJrZXN0LWNvbG9yLCAuNSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdWwgbGkgbGFiZWwge1xuICAgICAgICAmLmZsb2F0LW1lIHtcbiAgICAgICAgICBjb2xvcjogcmdiYSgkZGFya2VzdC1jb2xvciwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaHMtc3VibWl0IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuaHMtYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNzAwKTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjhweDtcbiAgICAgIHBhZGRpbmc6IDE1cHggMzVweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGNvbG9yOiAkbGlnaHRlc3QtY29sb3I7XG4gICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpLCAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgfVxuXG4gICAgLmhzLWVycm9yLW1zZyB7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxMik7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNTAwKTtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIH1cblxuICAgIC5zdWJtaXR0ZWQtbWVzc2FnZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkaGlnaGxpZ2h0LWNvbG9yLC4xKTtcbiAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICBtYXJnaW46IDE1cHggYXV0bztcbiAgICAgIG1heC13aWR0aDogNjgwcHg7XG4gICAgfVxuICB9XG5cbiAgLl9mb3JtLXRoYW5rLXlvdSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMzBweDtcbiAgICBwYWRkaW5nOiAzMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaGlnaGxpZ2h0LWNvbG9yO1xuICB9XG5cbiAgLl9lcnJvci5fYWJvdmUsIC5fZXJyb3IuX2JlbG93IHtcbiAgICBmb250LXNpemU6IC43ZW07XG4gICAgY29sb3I6IHJlZDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yOHB4KTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cblxufVxuXG4ua2V5LWZpZWxkIHtcbiAgZGlzcGxheTogbm9uZTtcbn0iLCJib2R5LmVycm9yNDA0IHtcblxuICBoZWFkZXIge1xuICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgYmFja2dyb3VuZDogcmdiKDExLCAxMzUsIDE0Nyk7IC8qIE9sZCBicm93c2VycyAqL1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsIDEzNSwgMTQ3LCAxKSAwJSwgcmdiYSg1NCwgMCwgNTEsIDEpIDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsIDEzNSwgMTQ3LCAxKSAwJSwgcmdiYSg1NCwgMCwgNTEsIDEpIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgxMSwgMTM1LCAxNDcsIDEpIDAlLCByZ2JhKDU0LCAwLCA1MSwgMSkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsIEdyYWRpZW50VHlwZT0xKTsgLyogSUU2LTkgKi9cblxuICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG5cbiAgICAmLnNpdGUtaGVhZGVyIHtcbiAgICAgIGhlaWdodDogNzBweDtcbiAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0IGRvd24pIHtcbiAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgfVxuXG4gICAgICAubW9iaWxlLW5hdi10cmlnZ2VyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgICAgICAgIHRvcDogMTZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc2l0ZS1oZWFkZXIgLmxvZ28ge1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgdG9wOiAxMHB4O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgICAgdG9wOiAycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHtcbiAgICAgIHRvcDogMTBweDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmludHJvLWFyZWEge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXgtd2lkdGg6IDc2MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDYwcHggMCA4MHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bil7XG4gICAgICBwYWRkaW5nOiA2MHB4IDAgMzVweDtcbiAgICB9XG5cbiAgICAjc2VhcmNoZm9ybSB7XG4gICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgbWFyZ2luOiAzMHB4IGF1dG8gMDtcblxuICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDAyXCI7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDAsMCwwLC40KTtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogLjhlbTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMCAxNXB4IDQwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAjc2VhcmNoc3VibWl0IHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgfVxuXG4gICAgICAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCxcbiAgICAgIC5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDIwKTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg1MDApO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcyg2NCk7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoOTAwKTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjb2xvcjogJGRhcmtlci1oZWFkbGluZTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bil7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDQ4KTtcbiAgICAgIH1cblxuICAgICAgJiArIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDI0KTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg3MDApO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGNvbG9yOiAkZGFya2VyLWhlYWRsaW5lO1xuICAgIH1cblxuICB9XG5cbiAgaDIge1xuICAgIG1hcmdpbjogMCAwIDYwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDM2KTtcbiAgICBAaW5jbHVkZSBtYWluLWZvbnQoNzAwKTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIG1hcmdpbjogNjBweCAwIDYwcHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiKDExLCAxMzUsIDE0Nyk7IC8qIE9sZCBicm93c2VycyAqL1xuICAgICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsIDEzNSwgMTQ3LCAxKSAwJSwgcmdiYSg1NCwgMCwgNTEsIDEpIDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xuICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsIDEzNSwgMTQ3LCAxKSAwJSwgcmdiYSg1NCwgMCwgNTEsIDEpIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgxMSwgMTM1LCAxNDcsIDEpIDAlLCByZ2JhKDU0LCAwLCA1MSwgMSkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsIEdyYWRpZW50VHlwZT0xKTsgLyogSUU2LTkgKi9cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBmb250LXNpemU6IC43ZW07XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcztcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICAucG9zdC1pdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDEycHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgLy9zb21lIHRlc3Rpbmcgc3R1ZmZcbiAgICAvL2Rpc3BsYXk6IGZsZXg7XG4gICAgLy9mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgcCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDMwcHggMzBweDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE0LjQpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCk7XG5cbiAgICAgIC8vc29tZSB0ZXN0aW5nIHN0dWZmXG4gICAgICAvL2ZsZXg6IDAgMSBhdXRvO1xuICAgICAgLy9wYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIC8vbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIC8vb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIC8vdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGhlaWdodDogMTkwcHg7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAvL3NvbWUgdGVzdGluZyBzdHVmZlxuICAgICAgLy9mbGV4OiAxIDAgMTkwcHg7XG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMjBweCAzMHB4IDA7XG4gICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNCk7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNDAwKTtcbiAgICAgIC8vdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB9XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAyMHB4IDMwcHggMTJweDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDIwKTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgIGJhY2tncm91bmQ6IHJnYigxMSwxMzUsMTQ3KTsgLyogT2xkIGJyb3dzZXJzICovXG4gICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUsIHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogRkYzLjYtMTUgKi9cbiAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgKi9cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICBib3gtc2hhZG93OiAwIDVweCAxNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS13aHlzayAge1xuICBoZWFkZXIge1xuICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgYmFja2dyb3VuZDogcmdiKDExLDEzNSwxNDcpOyAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUsIHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogRkYzLjYtMTUgKi9cbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUscmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgKi9cblxuICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsMCwwLDAuMSk7XG5cbiAgICAmLnNpdGUtaGVhZGVyIHtcbiAgICAgIGhlaWdodDogNzBweDtcbiAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0IGRvd24pIHtcbiAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgfVxuXG4gICAgICAubW9iaWxlLW5hdi10cmlnZ2VyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgICAgICAgIHRvcDogMTZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc2l0ZS1oZWFkZXIgLmxvZ28ge1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgdG9wOiAxMHB4O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgICAgdG9wOiAycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zaXRlLWhlYWRlciAubWFpbi1uYXYtY29udGFpbmVyIHtcbiAgICAgIHRvcDogMTBweDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgc2VjdGlvbi5mZWF0dXJlZC1tYXN0aGVhZCB7XG4gICAgcGFkZGluZy10b3A6IDcwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICBwYWRkaW5nLXRvcDogNTVweDtcbiAgICB9XG5cbiAgICAuY2VsbCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgIC5iYWNrZ3JvdW5kLWltYWdlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC40cztcblxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgICAgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHRlc3QtY29sb3I7XG4gICAgICAgIHBhZGRpbmc6IDE1MHB4IDQwcHggMTE1cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuICAgICAgICAgIHBhZGRpbmc6IDc1cHggMjVweCA0NXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg3MDAsJ2Fub24nKTtcbiAgICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcyg0MCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRhZyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkbGlnaHRlc3QtY29sb3IsIC40KTtcbiAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweCAzcHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDkwMCk7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTUpO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgICAgIH1cblxuICAgICAgICAubGluayB7XG4gICAgICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDkwMCk7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTUpO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYwNjFcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodGVzdC1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IC44ZW07XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAtMXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDMwcHggcmdiYSgwLDAsMCwuNSk7XG5cbiAgICAgICAgLnRhZyB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAzcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgICAubGluazphZnRlciB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmFja2dyb3VuZC1pbWFnZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuY2VsbDpudGgtY2hpbGQoMSkgYSB7XG4gICAgICAvL2JhY2tncm91bmQ6IHJnYmEoIzBFODQ5MSwgLjcpO1xuXG4gICAgfVxuXG4gICAgLmNlbGw6bnRoLWNoaWxkKDIpIGEge1xuICAgICAgLy9iYWNrZ3JvdW5kOiByZ2JhKCM0RDlFNEEsIC43KTtcbiAgICB9XG5cbiAgICAuY2VsbDpudGgtY2hpbGQoMykgYSB7XG4gICAgICAvL2JhY2tncm91bmQ6IHJnYmEoIzIzMTUzQywgLjcpO1xuICAgIH1cbiAgfVxuXG4gIHNlY3Rpb24uYXJ0aWNsZS1ncmlkIHtcbiAgICBwYWRkaW5nOiA4MHB4IDA7XG5cbiAgICAuaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIHAge1xuICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygyMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLndoeS1zay1oZWFkZXIge1xuICAgICAgd2lkdGg6IDQwNHB4O1xuICAgICAgaGVpZ2h0OiAxMzBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDM1cHg7XG5cbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LWluZGVudDogMTAwJTtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgd2lkdGg6IDg1JTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFnLWNsb3VkIHtcblxuICAgICAgbWFyZ2luLXRvcDogNjVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMTBweCAxNXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDcwMCk7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTUpO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxMHB4IDNweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGhpZ2hsaWdodC1jb2xvciwgLjEpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgICAgICAgICBwYWRkaW5nOiA0cHggMTBweCAzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAzcHggNnB4ICMwMDAwMDAyOTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnV0dG9uLXJvdyB7XG4gICAgICBhIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuXG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIH1cblxuICAgIC5hbGwtcG9zdHMgLmNlbGwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcblxuICAgICAgdHJhbnNpdGlvbjogYWxsIDM1MG1zO1xuXG4gICAgICAmLnNjYWxlLW91dCB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjcpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wb3N0LWl0ZW0ge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgYm94LXNoYWRvdzogMCA3cHggMTJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG5cbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDtcblxuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMzBweCAzMHB4O1xuICAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE0LjQpO1xuICAgICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNTAwKTtcbiAgICAgIH1cblxuICAgICAgLmNhdGVnb3J5IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDE1MHB4O1xuICAgICAgICBsZWZ0OiAzMHB4O1xuICAgICAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRsaWdodGVzdC1jb2xvciwgLjQwKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTUpO1xuICAgICAgICBAaW5jbHVkZSBtYWluLWZvbnQoOTAwKTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC43NXB4O1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDRweCAxMHB4IDNweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuXG4gICAgICAuaW1nLWNvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6IDE5MHB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgb3BhY2l0eTogMC42NTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDtcbiAgICAgIH1cblxuICAgICAgaDUge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMzBweCAwO1xuICAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE0KTtcbiAgICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDQwMCk7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaDQge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGNvbG9yOiAjOTg5ODk4O1xuICAgICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNTAwKTtcbiAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTcpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMzBweDtcbiAgICAgICAgbGVmdDogMzBweDtcblxuICAgICAgICBpIHtcbiAgICAgICAgICBmb250LXNpemU6IC44ZW07XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogLTJweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMjBweCAzMHB4IDEycHg7XG4gICAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMjApO1xuICAgICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgICAgYmFja2dyb3VuZDogcmdiKDExLDEzNSwxNDcpOyAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLCByZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIEZGMy42LTE1ICovXG4gICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7IC8qIElFNi05ICovXG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDVweCAxNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgI3NlYXJjaGZvcm0ge1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgbWFyZ2luOiAyNXB4IGF1dG8gMDtcblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDZweCByZ2JhKCMwMDAwMDAsIC4xNSk7XG4gICAgICB9XG5cbiAgICAgIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICB0b3A6IDEwcHg7XG5cbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCB0byByaWdodCwgcmdiYSgjZmZmLCAwKSwgcmdiYSgjZmZmLCAxKSA1MCUgKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuXG4gICAgICAgIC5mYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgcGFkZGluZzogMXB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt2YWx1ZT1cIlNlYXJjaFwiXXtcbiAgICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG59IiwiLm1hc3RoZWFkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gIC5jbGllbnQtbG9nby1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQ6ICRsaWdodGVyLWNvbG9yO1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiA4MHB4O1xuXG4gICAgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmxvZ28tYnVnIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxNDBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKTtcblxuICAgICYubGVmdCB7XG4gICAgICBsZWZ0OiA0MHB4O1xuICAgIH1cblxuICAgICYucmlnaHQge1xuICAgICAgcmlnaHQ6IDQwcHg7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIG1heC13aWR0aDogNTgwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDIwKTtcbiAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3NjhweCBkb3duKSB7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgfVxuICB9XG5cbiAgaDEge1xuICAgIEBpbmNsdWRlIG1haW4tZm9udCg4MDApO1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDY0KTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjRweDtcbiAgICBsaW5lLWhlaWdodDogMTIwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICYgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgfVxuICB9XG5cbiAgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogNDVweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0IGRvd24pIHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgfVxuICB9XG5cbiAgLy9leHRyYSBzdHVmZlxuICAmLnByaW1hcnksICYudmFudGEge1xuICAgIC8vcGFkZGluZzogMzAwcHggMCAxNDVweDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA5MHB4KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEyJSk7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIC8vcGFkZGluZzogMTUwcHggMTBweCA3MHB4O1xuICAgICAgcGFkZGluZzogMCAxMHB4IDA7XG4gICAgICBtaW4taGVpZ2h0OiA2ODBweDtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICAgIC8vQGluY2x1ZGUgZm9udC10by1lbXMoNDUpO1xuICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcyg0OCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMzYpO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgLnZhbnRhLWNhbnZhcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLnNlY29uZGFyeSB7XG4gICAgcGFkZGluZzogMjAwcHggMCA1MHB4O1xuXG4gICAgJi5oYXMtbG9nbyB7XG4gICAgICBwYWRkaW5nOiA5NnB4IDAgNTBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBwYWRkaW5nOiAxMDBweCAxMHB4IDI1cHg7XG4gICAgfVxuXG4gICAgaDEge1xuXG4gICAgICAmICsgKiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIC8vQGluY2x1ZGUgZm9udC10by1lbXMoNDUpO1xuICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcyg0OCk7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAmLmxpZ2h0LXRoZW1lIHtcbiAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICB9XG5cbiAgJi5kYXJrLXRoZW1lIHtcbiAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gIH1cblxuICAmLm5vLXRvcC1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gICYubm8tYm90dG9tLXBhZGRpbmcge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbi8vcGFyYWxsYXggc3R1ZmZcbi5tYXN0aGVhZC1maWxsZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogJGRhcmtlc3QtY29sb3I7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogLTE7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxufVxuXG4ubWFzdGhlYWQtY292ZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6ICRsaWdodGVzdC1jb2xvcjtcbiAgLy96LWluZGV4OiAtMTtcblxuICAmOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvYmctdGlsZS1oZXgtb3BhY2l0eS01LnBuZ1wiKSAwIDAgcmVwZWF0O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG59IiwiLm1hc3RoZWFkLWZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gIHBhZGRpbmc6IDE0MHB4IDAgNjBweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgcGFkZGluZzogNjBweCAxMHB4O1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE2KTtcbiAgICBAaW5jbHVkZSBtYWluLWZvbnQoNDAwKTtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgaDMge1xuICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDIyKTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjRweDtcbiAgICBsaW5lLWhlaWdodDogMTIwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICYgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuICB9XG5cbiAgaDEge1xuICAgIEBpbmNsdWRlIG1haW4tZm9udCg4MDApO1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDQwKTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjRweDtcbiAgICBsaW5lLWhlaWdodDogMTIwJTtcbiAgICBtYXJnaW46IDIwcHggMCAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IDQ1cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbiAgfVxuXG4gIC8vZXh0cmEgc3R1ZmZcbiAgJi5wcmltYXJ5IHtcbiAgICAvL3BhZGRpbmc6IDMwMHB4IDAgMTQ1cHg7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gOTBweCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmdyaWQtY29udGFpbmVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMiUpO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAvL3BhZGRpbmc6IDE1MHB4IDEwcHggNzBweDtcbiAgICAgIHBhZGRpbmc6IDAgMTBweCAwO1xuICAgICAgbWluLWhlaWdodDogNjgwcHg7XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgICAgICAvL0BpbmNsdWRlIGZvbnQtdG8tZW1zKDQ1KTtcbiAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoNDgpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDM2KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG5cbiAgLmZvcm0tY29udGFpbmVyIHtcblxuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICB9XG5cbiAgICAuaGJzcHQtZm9ybSB7XG5cbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgIGZpZWxkc2V0IHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIC01cHggMTBweDtcblxuICAgICAgICAmLmZvcm0tY29sdW1ucy0yIC5ocy1mb3JtLWZpZWxkIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmZvcm0tY29sdW1ucy0xIC5ocy1mb3JtLWZpZWxkIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgbGFiZWwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTFweDtcbiAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBjb2xvcjogcmdiYSgzNywgMzcsIDM3LCAwLjUpO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xuICAgICAgfVxuXG4gICAgICBbdHlwZT0ndGV4dCddLFxuICAgICAgW3R5cGU9J3Bhc3N3b3JkJ10sXG4gICAgICBbdHlwZT0nZGF0ZSddLFxuICAgICAgW3R5cGU9J2RhdGV0aW1lJ10sXG4gICAgICBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSxcbiAgICAgIFt0eXBlPSdtb250aCddLFxuICAgICAgW3R5cGU9J3dlZWsnXSxcbiAgICAgIFt0eXBlPSdlbWFpbCddLFxuICAgICAgW3R5cGU9J251bWJlciddLFxuICAgICAgW3R5cGU9J3NlYXJjaCddLFxuICAgICAgW3R5cGU9J3RlbCddLFxuICAgICAgW3R5cGU9J3RpbWUnXSxcbiAgICAgIFt0eXBlPSd1cmwnXSxcbiAgICAgIFt0eXBlPSdjb2xvciddLFxuICAgICAgdGV4dGFyZWEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgcGFkZGluZzogMTVweCAxMHB4IDVweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBjb2xvcjogJGRhcmstY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTBweCA1cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTYpO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgY29sb3I6ICRkYXJrLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHNlbGVjdCB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4MTM4LCAxMzgsIDEzOCUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgICAgICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCA1cHg7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcblxuICAgICAgICBjb2xvcjogcmdiYSgkZGFya2VzdC1jb2xvciwgMC40KTtcbiAgICAgIH1cblxuICAgICAgdGV4dGFyZWEge1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLl9mb3JtIHtcblxuICAgICAgLl9mb3JtLWNvbnRlbnQge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5fZm9ybS10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgIH1cblxuICAgICAgLl9mb3JtLWJyYW5kaW5nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLl9mb3JtLWxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgW3R5cGU9J3RleHQnXSxcbiAgICAgIFt0eXBlPSdwYXNzd29yZCddLFxuICAgICAgW3R5cGU9J2RhdGUnXSxcbiAgICAgIFt0eXBlPSdkYXRldGltZSddLFxuICAgICAgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG4gICAgICBbdHlwZT0nbW9udGgnXSxcbiAgICAgIFt0eXBlPSd3ZWVrJ10sXG4gICAgICBbdHlwZT0nZW1haWwnXSxcbiAgICAgIFt0eXBlPSdudW1iZXInXSxcbiAgICAgIFt0eXBlPSdzZWFyY2gnXSxcbiAgICAgIFt0eXBlPSd0ZWwnXSxcbiAgICAgIFt0eXBlPSd0aW1lJ10sXG4gICAgICBbdHlwZT0ndXJsJ10sXG4gICAgICBbdHlwZT0nY29sb3InXSxcbiAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMTZweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBjb2xvcjogJGRhcmstY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGV4dGFyZWEge1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgfVxuXG4gICAgICAuX2J1dHRvbi13cmFwcGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgfVxuXG4gICAgICAuX3N1Ym1pdCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg3MDApO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjhweDtcbiAgICAgICAgcGFkZGluZzogMTVweCAzNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGNvbG9yOiAkbGlnaHRlc3QtY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMiksIDAgMnB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgIH1cblxuICAgICAgLl9mdWxsX3dpZHRoIHtcbiAgICAgICAgZmxleDogMCAxIDQ4LjUlO1xuICAgICAgICB3aWR0aDogNDguNSU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJi5fZmllbGQxIHtcbiAgICAgICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuX2J1dHRvbi13cmFwcGVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCUhaW1wb3J0YW50O1xuICAgICAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcblxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDcwMCk7XG5cblxuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICBmb250LWZhbWlseTogJ211c2VvLXNhbnMnLCAnQXZlbmlyIE5leHQnLCAnVmVyZGFuYScsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjhweDtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDM1cHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGhpZ2hsaWdodC1jb2xvciwgNSUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5fZXJyb3IuX2Fib3ZlLCAuX2Vycm9yLl9iZWxvdyB7XG4gICAgICBmb250LXNpemU6IC43ZW07XG4gICAgICBjb2xvcjogcmVkO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIH1cblxuICB9XG5cblxuICAmLmxpZ2h0LXRoZW1lIHtcbiAgICBjb2xvcjogJGxpZ2h0ZXN0LWNvbG9yO1xuICB9XG5cbiAgJi5kYXJrLXRoZW1lIHtcbiAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gIH1cblxuICAmLm5vLXRvcC1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gICYubm8tYm90dG9tLXBhZGRpbmcge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59IiwiLmxvZ28tc3RyaXAge1xuICBwYWRkaW5nOiA2MHB4IDA7XG5cbiAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzAwMDAwMCswLDAwMDAwMCsxMDAmMC41KzAsMCsxMDAgKi9cbiAgLy9iYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwwLDAsMC4xNSkgMCUsIHJnYmEoMCwwLDAsMCkgMTAwJSk7IC8qIEZGMy42LTE1ICovXG4gIC8vYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsMCwwLDAuMTUpIDAlLHJnYmEoMCwwLDAsMCkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gIC8vYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLDAsMCwwLjE1KSAwJSxyZ2JhKDAsMCwwLDApIDEwMCUpOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cblxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIHBhZGRpbmc6IDEwcHggMTBweDtcbiAgfVxuXG4gIGgyIHtcbiAgICBAaW5jbHVkZSBmb250LXRvLWVtcygzNik7XG4gICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG5cbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgJi5uby1iYWNrZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG5cbiAgdWwge1xuICAgIC8vbWFyZ2luOiAwO1xuICAgIC8vcGFkZGluZzogMDtcbiAgICAvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvL3otaW5kZXg6IDE7XG4gICAgLy9cbiAgICAvL3dpZHRoOiAxMDAlO1xuXG4gICAgLy9kaXNwbGF5OiBmbGV4O1xuICAgIC8vanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIGxpIHtcbiAgICAvL3BhZGRpbmc6IDAgMjBweDtcbiAgICAvL2Rpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIC8vYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAvL1xuICAgIC8vbGlzdC1zdHlsZTogbm9uZTtcbiAgICAvL21hcmdpbjogMDtcbiAgICAvL1xuICAgIC8vd2lkdGg6IDExNXB4O1xuICAgIC8vaGVpZ2h0OiAxMDAlO1xuXG4gICAgLy9mbGV4OiAwIDEgMTE1cHg7XG5cbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xuICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDExNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgIHRyYW5zaXRpb246IGFsbCA2MDBtcztcblxuICAgIG9wYWNpdHk6IDA7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgbWF4LWhlaWdodDogNDBweDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuXG4gIC5sb2dvLWJ1ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTQwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgIH1cblxuICAgICYubGVmdCB7XG4gICAgICBsZWZ0OiA0MHB4O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5yaWdodCB7XG4gICAgICByaWdodDogNDBweDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5vZmZzZXQtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE4MHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgcGFkZGluZy1yaWdodDogMTIwcHg7XG4gICAgfVxuICB9XG5cbiAgJi5vZmZzZXQtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxODBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTIwcHg7XG4gICAgfVxuICB9XG5cbiAgJi5uby10b3AtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAmLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufSIsIi5zdGF0cyB7XG4gIHBhZGRpbmc6IDYwcHggMDtcblxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIHBhZGRpbmc6IDYwcHggMTBweDtcbiAgfVxuXG4gIC5ncmlkLXgge1xuICAgIC8vYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIGgyIHtcbiAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcbiAgICBAaW5jbHVkZSBmb250LXRvLWVtcygzNik7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgbWFyZ2luOiA0MHB4IDAgMzBweDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuZGV2aWNlLWltYWdlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgIGhlaWdodDogNTB2aDtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvYmplY3QtcG9zaXRpb246IHRvcDtcbiAgICB9XG4gIH1cblxuICAuc3RhdC1pdGVtLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgcGFkZGluZzogNDBweCAwIDA7XG5cbiAgICAuc3RhdC1pdGVtIHtcbiAgICAgIGZsZXg6IDAgMSA1MCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDAgNjVweCA1MHB4IDA7XG4gICAgICB3aWR0aDogNTAlO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICAgIGZsZXg6IDAgMSA1MCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHBhZGRpbmc6IDAgMzBweCA1MHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5zdGF0LW51bWJlciB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDBweDtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDM2KTtcbiAgICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDMwMCk7XG4gICAgICAgIC8vYm9yZGVyOiAxcHggc29saWQgJGRhcmtlc3QtY29sb3I7XG4gICAgICAgIC8vYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9zdGF0cy1vdmFsLnN2ZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC42ZW07XG4gICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNTAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0IGRvd24pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy9leHRyYXNcbiAgJi5ydGwgLmdyaWQteCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG5cbiAgJi5uby10b3AtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAmLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gICYuZGFyay10aGVtZSB7XG4gICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICB9XG5cbiAgJi5saWdodC10aGVtZSB7XG4gICAgY29sb3I6ICRsaWdodGVyLWNvbG9yO1xuICB9XG59IiwiLnNpbmdsZS10ZXN0aW1vbmlhbCB7XG4gIHBhZGRpbmc6IDcwcHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gIGJhY2tncm91bmQ6IHJnYigxMSwxMzUsMTQ3KTsgLyogT2xkIGJyb3dzZXJzICovXG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KC00NWRlZywgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLCByZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIEZGMy42LTE1ICovXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KC00NWRlZywgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7IC8qIElFNi05IGZhbGxiYWNrIG9uIGhvcml6b250YWwgZ3JhZGllbnQgKi9cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgcGFkZGluZzogNDBweCAxMHB4O1xuICB9XG5cbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICAvL0BpbmNsdWRlIGZvbnQtdG8tZW1zKDIwKTtcbiAgICBAaW5jbHVkZSBtYWluLWZvbnQoNTAwLCAnc2xhYicpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIGgzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXRvLWVtcygyOCk7XG4gICAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCwgJ3NsYWInKTtcblxuICAgICYgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxuICB9XG5cbiAgLnF1b3RlLW1hcmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBwYWRkaW5nOiAwIDAgNDBweDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hdHRyaWJ1dGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG5cbiAgICAuYXR0LWltYWdlIHtcbiAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGZsZXg6IDAgMCA2MHB4O1xuXG4gICAgICBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYXR0LWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG5cbiAgICAgIHN0cm9uZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxOCk7XG4gICAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg3MDAsICdzbGFiJyk7XG4gICAgICB9XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg1MDAsICdzbGFiJyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9oZXgtbm9kZS1ncmlkLWRhcmsucG5nXCIpIDAgMCByZXBlYXQ7XG4gICAgLy9iYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgIC8vbWl4LWJsZW5kLW1vZGU6IHNjcmVlbjtcbiAgICAvL29wYWNpdHk6IDAuMTtcbiAgfVxuXG4gICYuZGFyay10aGVtZSB7XG4gICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICB9XG5cbiAgJi5saWdodC10aGVtZSB7XG4gICAgY29sb3I6ICRsaWdodGVyLWNvbG9yO1xuICB9XG5cbiAgJi5uby10b3AtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAmLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gICYuY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBoMywgcCB7XG4gICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLmF0dHJpYnV0aW9uIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1heC13aWR0aDogMzIwcHg7XG4gICAgfVxuICB9XG59IiwiLmljb24tZ3JpZCB7XG4gIHBhZGRpbmc6IDEwMHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBjb3VudGVyLXJlc2V0OiBudW1iZXJlZC1jb3VudGVyO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBwYWRkaW5nOiAxMDBweCAxMHB4O1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICBoMiB7XG4gICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG4gICAgQGluY2x1ZGUgZm9udC10by1lbXMoMzYpO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJiArICoge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICB9XG4gIH1cblxuICBoMyB7XG4gICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG4gICAgQGluY2x1ZGUgZm9udC10by1lbXMoMjQpO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gIC5pY29uLWdyaWQtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiA2NXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1sZWZ0OiAtNTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC01MHB4O1xuICAgIGNvbG9yOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgaDQge1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMjApO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICBjb250ZW50OiBcIlxcZjA2MVwiO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICBjb2xvcjogJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzdHJvbmcge1xuICAgICAgbWFyZ2luLWxlZnQ6IDM1cHg7XG4gICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtYXJnaW4tbGVmdDogMzVweDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICB9XG5cbiAgICBzcGFuW2NsYXNzXj1cImZhXCJdIHsvL3RoZSBpY29uIGZvbnRcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzcHgpO1xuICAgICAgZm9udC1zaXplOiAxLjE1ZW07XG4gICAgfVxuXG4gICAgJi5udW1iZXItbGlzdCB7XG5cbiAgICAgIGg0IHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAuaWNvbi1ncmlkLWl0ZW0ge1xuICAgICAgICBjb3VudGVyLWluY3JlbWVudDogbnVtYmVyZWQtY291bnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBjb3VudGVyKG51bWJlcmVkLWNvdW50ZXIpO1xuICAgICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDI0KTtcbiAgICAgICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAzMHB4O1xuICAgICAgICAgIGxlZnQ6IDUwcHg7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYS5idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IDY1cHg7XG4gIH1cblxuICAubG9nby1zdHJpcCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgIGgzIHtcbiAgICAgIG1hcmdpbi10b3A6IDEyNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgbWF4LWhlaWdodDogMzVweDtcbiAgICB9XG4gIH1cblxuICAmLnR3by1wZXItcm93IHtcbiAgICAuaWNvbi1ncmlkLWl0ZW0ge1xuICAgICAgZmxleDogMSAwIDUwJTtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nOiAzNXB4IDUwcHg7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZmxleDogMSAwIDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDUwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi50aHJlZS1wZXItcm93IHtcbiAgICAuaWNvbi1ncmlkLWl0ZW0ge1xuICAgICAgZmxleDogMSAwIDMzLjMzMzMlO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDM1cHggNTBweDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggNTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLm5vLXRvcC1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gICYubm8tYm90dG9tLXBhZGRpbmcge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbn0iLCIuY2FzZXN0dWR5IHtcbiAgcGFkZGluZzogNjBweCAwIDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIHBhZGRpbmc6IDYwcHggMTBweCAxMHB4O1xuICB9XG5cbiAgLmdyaWQteCB7XG4gICAgLy9hbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgaDIge1xuICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDM2KTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICBtYXJnaW46IDQwcHggMCAzMHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICBwIHtcbiAgICBtYXJnaW46IDAgMCA1MHB4O1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAvLyY6bGFzdC1vZi10eXBlIHtcbiAgICAvLyAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAvL31cbiAgfVxuXG4gIGEuYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3NXB4O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAuZGV2aWNlLWltYWdlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgIGhlaWdodDogNTB2aDtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvYmplY3QtcG9zaXRpb246IHRvcDtcbiAgICB9XG4gIH1cblxuICAudGVzdGltb25pYWwge1xuICAgIHBhZGRpbmc6IDUwcHggMDtcblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAvL0BpbmNsdWRlIGZvbnQtdG8tZW1zKDIwKTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg1MDAsICdzbGFiJyk7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuXG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDI4KTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg1MDAsICdzbGFiJyk7XG5cbiAgICAgICYgKyAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYXR0cmlidXRpb24ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuXG4gICAgICAuYXR0LWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBmbGV4OiAwIDAgNjBweDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYXR0LWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMjVweDtcblxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNzAwLCAnc2xhYicpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTYpO1xuICAgICAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg1MDAsICdzbGFiJyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxpZ2h0IHtcbiAgICAgIGNvbG9yOiAkbGlnaHRlc3QtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmJnLXRlc3RpbW9uaWFsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICAgIGJhY2tncm91bmQ6IHJnYigxMSwxMzUsMTQ3KTsgLyogT2xkIGJyb3dzZXJzICovXG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoLTQ1ZGVnLCByZ2JhKDExLDEzNSwxNDcsMSkgMCUsIHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogRkYzLjYtMTUgKi9cbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgtNDVkZWcsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgZmFsbGJhY2sgb24gaG9yaXpvbnRhbCBncmFkaWVudCAqL1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2hleC1ub2RlLWdyaWQtZGFyay5wbmdcIikgMCAwIHJlcGVhdDtcbiAgICAgIC8vYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgIC8vbWl4LWJsZW5kLW1vZGU6IHNjcmVlbjtcbiAgICAgIC8vb3BhY2l0eTogMC4xO1xuICAgIH1cbiAgfVxuXG4gIC8vZXh0cmFzXG4gICYuZGFyay10aGVtZSB7XG4gICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICB9XG5cbiAgJi5saWdodC10aGVtZSB7XG4gICAgY29sb3I6ICRsaWdodGVyLWNvbG9yO1xuICB9XG59IiwiLm9wZW4tdGV4dCB7XG4gIHBhZGRpbmc6IDgwcHggMDtcblxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIHBhZGRpbmc6IDgwcHggMTBweDtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJiArICoge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICB9XG4gIH1cblxuICBoMiB7XG4gICAgQGluY2x1ZGUgZm9udC10by1lbXMoMzYpO1xuICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJiArICoge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICB9XG4gIH1cblxuICBoMyB7XG4gICAgQGluY2x1ZGUgZm9udC10by1lbXMoMjQpO1xuICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMjApO1xuICAgIH1cblxuICAgICYgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgfVxuICB9XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgICAgcGFkZGluZzogMCAwIDAgMzBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIuKAolwiO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICBjb2xvcjogJGhpZ2hsaWdodC1jb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9sIHtcbiAgICBjb3VudGVyLXJlc2V0OiBvcmRlcmVkLWxpc3Q7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgICBwYWRkaW5nOiAwIDAgMCAzMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBvcmRlcmVkLWxpc3Q7XG4gICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIob3JkZXJlZC1saXN0KSBcIi5cIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjb2xvcjogcmdiYSgwLDAsMCwwLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGhyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkZGFya2VzdC1jb2xvciwgLjEyKTtcbiAgICBtYXJnaW46IDMwcHggMDtcbiAgfVxuXG4gIGEuYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG5cbiAgJiArIC5sb2dvLXN0cmlwIHtcbiAgICAvL21hcmdpbi10b3A6IC01MHB4O1xuICB9XG5cbiAgJi50d28tY29sdW1ucyAudGV4dC1hcmVhIHtcbiAgICBjb2x1bW5zOiAyO1xuICAgIGNvbHVtbi13aWR0aDogMzAwcHg7XG4gICAgY29sdW1uLWdhcDogNjBweDtcblxuICAgIHAge1xuICAgICAgYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG4gIH1cblxuICAmLnRocmVlLWNvbHVtbnMgLnRleHQtYXJlYSB7XG4gICAgY29sdW1uczogMztcbiAgICBjb2x1bW4td2lkdGg6IDMwMHB4O1xuICAgIGNvbHVtbi1nYXA6IDYwcHg7XG5cbiAgICBwIHtcbiAgICAgIGJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuICB9XG5cbiAgJi5kYXJrLXRoZW1lIHtcbiAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gIH1cblxuICAmLmxpZ2h0LXRoZW1lIHtcbiAgICBjb2xvcjogJGxpZ2h0ZXItY29sb3I7XG4gIH1cblxuICAmLm5vLXRvcC1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gICYubm8tYm90dG9tLXBhZGRpbmcge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59IiwiLmhlYWRzaG90cyB7XG4gIHBhZGRpbmc6IDcwcHggMDtcblxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIHBhZGRpbmc6IDcwcHggMTBweDtcbiAgfVxuXG4gIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgLy93aWR0aDogMTIwcHg7XG4gICAgICAvL2hlaWdodDogMTIwcHg7XG5cbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5uby10b3AtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAmLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG59IiwiLmN0YS1ibG9jayB7XG4gIHBhZGRpbmc6IDMwcHggMCA4MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBwYWRkaW5nOiAzMHB4IDEwcHggODBweDtcbiAgfVxuXG4gIC5jZWxsIHtcbiAgICBwYWRkaW5nLXRvcDogNzBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgJi50b3AtYm9yZGVyIHtcbiAgICAuY2VsbCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO1xuICAgIH1cbiAgfVxuXG4gIGgyIHtcbiAgICBAaW5jbHVkZSBmb250LXRvLWVtcygzNik7XG4gICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG5cbiAgICAmICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5zZWNvbmRhcnktY3RhIHtcbiAgICBtYXJnaW46IDExNXB4IGF1dG8gMDtcbiAgICBtYXgtd2lkdGg6IDUxMHB4O1xuXG4gICAgQGluY2x1ZGUgZm9udC10by1lbXMoMjApO1xuICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuXG4gICAgYSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAxNXB4IDQwcHg7XG4gICAgICB9XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgICAgYmFja2dyb3VuZDogcmdiKDExLDEzNSwxNDcpOyAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLCByZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIEZGMy42LTE1ICovXG4gICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7IC8qIElFNi05ICovXG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IDAgMTVweCA0MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5uby10b3AtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAmLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG59IiwiLmNhbGxvdXQtYmFubmVyIHtcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRlcnRpYXJ5LWNvbG9yOy8vZGVmYXVsdCBjb2xvclxuXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICB6LWluZGV4OiA5OTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgcGFkZGluZzogMjBweCAxMHB4O1xuICB9XG5cbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuY2VsbCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXgtd2lkdGg6IDc4MHB4O1xuICAgICAgLy9wYWRkaW5nLWxlZnQ6IDEwMHB4O1xuXG4gICAgICAvL0BpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgLy8gIHdpZHRoOiAxMDAlO1xuICAgICAgLy8gIHBhZGRpbmctbGVmdDogMTUwcHg7XG4gICAgICAvL31cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBoMyB7XG4gICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTcuNik7XG4gICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG4gICAgY29sb3I6ICRhbHQtZGFyay1jb2xvcjtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAwIDAgMTQwcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIC8vQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIC8vICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIC8vfVxuICB9XG5cbiAgLmxvZ28tYnVnIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgbWF4LXdpZHRoOiAxMjBweDtcblxuICAgIC8vQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgLy8gIGxlZnQ6IDA7XG4gICAgLy99XG4gIH1cbn0iLCIucmVsYXRlZC1jb250ZW50IHtcbiAgcGFkZGluZzogOTBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBwYWRkaW5nOiA5MHB4IDEwcHg7XG4gIH1cblxuICBwIHtcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIGgyIHtcbiAgICBAaW5jbHVkZSBmb250LXRvLWVtcygzNik7XG4gICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG5cbiAgICAmICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIH1cbiAgfVxuXG4gIC5ncmlkLXggKyAuZ3JpZC14IHtcbiAgICBtYXJnaW4tdG9wOiA3MHB4O1xuICB9XG5cbiAgLnBvc3RzIC5jZWxsIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICAvL21hcmdpbi1ib3R0b206IDYwcHg7XG5cbiAgICAgIC8vdGVzdGluZyBzb21lIHN0dWZmXG4gICAgICAvL2hlaWdodDogNDY1cHg7XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuXG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5yZWxhdGVkLWl0ZW0ge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlc3QtY29sb3I7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMTJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG5cbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAvL3NvbWUgdGVzdGluZyBzdHVmZlxuICAgIC8vZGlzcGxheTogZmxleDtcbiAgICAvL2ZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICBoNSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAzMHB4IDMwcHggMDtcbiAgICAgIGNvbG9yOiAkZGFyay1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE0KTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDMwcHggMjRweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDIwKTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAzMHB4IDMwcHg7XG4gICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNC40KTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg1MDApO1xuXG4gICAgICAvL3NvbWUgdGVzdGluZyBzdHVmZlxuICAgICAgLy9mbGV4OiAwIDEgYXV0bztcbiAgICAgIC8vcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAvL21hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAvL292ZXJmbG93OiBoaWRkZW47XG4gICAgICAvL3RleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBoZWlnaHQ6IDE3MHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcblxuICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDtcblxuICAgICAgLy9zb21lIHRlc3Rpbmcgc3R1ZmZcbiAgICAgIC8vZmxleDogMSAwIDE5MHB4O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgIGJhY2tncm91bmQ6IHJnYigxMSwxMzUsMTQ3KTsgLyogT2xkIGJyb3dzZXJzICovXG4gICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUsIHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogRkYzLjYtMTUgKi9cbiAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgKi9cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICBib3gtc2hhZG93OiAwIDVweCAxNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbiAgfVxuXG4gICYuZGFyay10aGVtZSB7XG4gICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICB9XG5cbiAgJi5saWdodC10aGVtZSB7XG4gICAgY29sb3I6ICRsaWdodGVyLWNvbG9yO1xuICB9XG5cbiAgJi5uby10b3AtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAmLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufSIsIi5tZWRpYS1ncmlkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiA2NXZoO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0IGRvd24pIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgLmdyaWQtY29udGFpbmVyLFxuICAuZ3JpZC14LFxuICAuY2VsbCxcbiAgLm1lZGlhLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgaW1nIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAucHJpbWFyeSB7XG4gICAgLm1lZGlhLWNvbnRhaW5lciB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLnNlY29uZGFyeSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyA0MHB4KTtcbiAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMjBweDtcblxuICAgIC5tZWRpYS1jb250YWluZXIge1xuICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICBwYWRkaW5nOiAyMHB4IDA7XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgMTBweCk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAubWVkaWEtY29udGFpbmVyIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBmbGV4OiAwIDEgNTAlO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHggMDtcblxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYubm8tdG9wLXBhZGRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG5cbiAgJi5uby1ib3R0b20tcGFkZGluZyB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cblxufSIsIi5zcGxpdC1ibG9jayB7XG5cbiAgcGFkZGluZzogODBweCAwO1xuXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgcGFkZGluZzogNDBweCAxMHB4O1xuICB9XG5cbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRkYXJrZXN0LWNvbG9yLCAuMTUpO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlICsgMjBweCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiA1MCU7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jZWxsIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMCAzMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkZGFya2VzdC1jb2xvciwgLjE1KTtcbiAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaDMge1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDI0KTtcbiAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcbiAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gIH1cblxuICBwIHtcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vZXh0cmFzXG4gICYuZGFyay10aGVtZSB7XG4gICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICB9XG5cbiAgJi5saWdodC10aGVtZSB7XG4gICAgY29sb3I6ICRsaWdodGVyLWNvbG9yO1xuXG4gICAgLmdyaWQtY29udGFpbmVyIHtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGxpZ2h0ZXN0LWNvbG9yLCAuMTUpO1xuICAgICAgfVxuXG4gICAgICAuY2VsbCB7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRsaWdodGVzdC1jb2xvciwgLjE1KTtcblxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgJi5uby10b3AtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAmLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufSIsIi5wcm9ncmVzcy1ibG9jayB7XG5cbiAgLnByb2dyZXNzLWhlYWRlciB7XG4gICAgcGFkZGluZzogMzBweCAwO1xuICAgIGhlaWdodDogMTEwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMTBweDtcbiAgICB9XG5cbiAgICAuY2VsbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygzNik7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDUwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xuICAgICAgZmxleDogMSAwIGF1dG87XG5cbiAgICAgICYuaGVhZGVyLWxvY2sge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoJGRhcmtlc3QtY29sb3IsIC41KTtcbiAgICAgIH1cblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgLy93aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MHB4LC01MCUpO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgY29sb3I6IHJnYmEoJGRhcmtlc3QtY29sb3IsIC41KTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwtNTAlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGJhY2tncm91bmQ6IHJnYmEoJGxpZ2h0ZXN0LWNvbG9yLCAwKTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkZGFyay1jb2xvciwgMCk7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAyMDBtcywgYm9yZGVyIDIwMG1zO1xuXG4gICAgJi5pcy1zdHVjaywgJi5pcy1hdC1ib3R0b20ge1xuICAgICAgYmFja2dyb3VuZDogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWNvbG9yO1xuICAgICAgei1pbmRleDogNTtcbiAgICB9XG5cbiAgfVxuXG4gIC5wcm9ncmVzcy1jb250ZW50IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgIH1cblxuICAgIC5wcm9ncmVzcy1pdGVtIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEyMHB4O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICB9XG5cbiAgICAgICYubHRyIHtcbiAgICAgICAgLmdyaWQtY29udGFpbmVyIC5ncmlkLXgge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcblxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZ3JpZC1jb250YWluZXIuZnVsbCB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5ncmlkLWNvbnRhaW5lciArIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDcwcHg7XG4gICAgICB9XG5cbiAgICAgIC5jZWxsIHtcbiAgICAgICAgJi50d28tY29sdW1ucyB7XG4gICAgICAgICAgY29sdW1uczogMjtcbiAgICAgICAgICBjb2x1bW4td2lkdGg6IDMwMHB4O1xuICAgICAgICAgIGNvbHVtbi1nYXA6IDYwcHg7XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAmICsgLmNlbGwge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5saW5rLWNhcmRzIHtcbiAgcGFkZGluZzogOTBweCAwIDUwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgcGFkZGluZzogOTBweCAxMHB4IDUwcHggMTBweDtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgaDIge1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDM2KTtcbiAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcblxuICAgICYgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgfVxuICB9XG5cbiAgLmdyaWQteCArIC5ncmlkLXgge1xuICAgIG1hcmdpbi10b3A6IDcwcHg7XG5cbiAgICAuY2VsbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5saW5rLWl0ZW0ge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAyNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodGVzdC1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDAsMCwwLCAwLjUpO1xuXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgaDMge1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgICAgcGFkZGluZzogMjBweCAwIDAgMDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDIwKTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoJGRhcmtlc3QtY29sb3IsIC4xNSk7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGhlaWdodDogMzVweDtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuXG4gICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgICBiYWNrZ3JvdW5kOiByZ2IoMTEsMTM1LDE0Nyk7IC8qIE9sZCBicm93c2VycyAqL1xuICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLCByZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIEZGMy42LTE1ICovXG4gICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUscmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUscmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7IC8qIElFNi05ICovXG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgYm94LXNoYWRvdzogMCA1cHggMTZweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmNhc2VzdHVkeS1hcmNoaXZlIHtcbiAgcGFkZGluZzogNjBweCAwIDYwcHg7XG5cbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBwYWRkaW5nOiA5MHB4IDEwcHg7XG4gIH1cblxuICBwIHtcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIGgyIHtcbiAgICBAaW5jbHVkZSBmb250LXRvLWVtcygzNik7XG4gICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAvL21hcmdpbi10b3A6IDYwcHg7XG5cbiAgICAmICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIH1cbiAgfVxuXG4gIC5ncmlkLXggKyAuZ3JpZC14IHtcbiAgICBtYXJnaW4tdG9wOiA3MHB4O1xuICB9XG5cbiAgLmNlbGwge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLndvcmstbmF2IHtcbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwIDAgNzBweCAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMzBweCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAxMnB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG5cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYigxMSwxMzUsMTQ3KTsgLyogT2xkIGJyb3dzZXJzICovXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUsIHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogRkYzLjYtMTUgKi9cbiAgICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgKi9cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG5cbiAgLmZlYXR1cmVkLWNhc2VzdHVkeSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuXG4gICAgLmNlbGwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAwIDMwcHg7XG4gICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxOCk7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNTAwKTtcbiAgICB9XG5cbiAgICBoNSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDAgMjBweDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE2KTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgICAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWNvbG9yO1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDAgMzBweDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDI0KTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgIH1cblxuICAgIGEuYnV0dG9uIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE2KTtcbiAgICB9XG5cbiAgICAuZmVhdHVyZWQtaW1hZ2Uge1xuICAgICAgbWluLWhlaWdodDogMzYwcHg7XG4gICAgICBtYXgtaGVpZ2h0OiA0NTBweDtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cblxuXG5cblxuICAuY2FzZXN0dWR5LWl0ZW0ge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlc3QtY29sb3I7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMTJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG5cbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgMzBweCAzMHB4O1xuICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTYpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCk7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAyMHB4O1xuICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTYpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG5cbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWNvbG9yO1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDMwcHggMzBweDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDI0KTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgIGJhY2tncm91bmQ6IHJnYigxMSwxMzUsMTQ3KTsgLyogT2xkIGJyb3dzZXJzICovXG4gICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUsIHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogRkYzLjYtMTUgKi9cbiAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgKi9cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICBib3gtc2hhZG93OiAwIDVweCAxNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbiAgfVxuXG4gICYuZGFyay10aGVtZSB7XG4gICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICB9XG5cbiAgJi5saWdodC10aGVtZSB7XG4gICAgY29sb3I6ICRsaWdodGVyLWNvbG9yO1xuICB9XG5cbiAgJi5uby10b3AtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAmLm5vLWJvdHRvbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufSIsIi5zZXJ2aWNlLWFyY2hpdmUge1xuICBwYWRkaW5nOiA2MHB4IDAgNjBweDtcblxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIHBhZGRpbmc6IDQwcHggMTBweDtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgaDIge1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDM2KTtcbiAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIC8vbWFyZ2luLXRvcDogNjBweDtcblxuICAgICYgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgfVxuICB9XG5cbiAgaDMge1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDI0KTtcbiAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcbiAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygyMCk7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICAgICAgY29udGVudDogXCJcXGYwNjFcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgY29sb3I6ICRoaWdobGlnaHQtY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogLjc1ZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYSB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaDQge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgIG9wYWNpdHk6IC41O1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE2KTtcbiAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcbiAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBkYXNoZWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogY2FsYygxMDAlICsgMjBweCk7XG4gICAgICB3aWR0aDogMTYwcHg7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ3JpZC14ICsgLmdyaWQteCB7XG4gICAgLy9tYXJnaW4tdG9wOiA3MHB4O1xuICB9XG5cbiAgLnNlcnZpY2VzLWludHJvIHtcbiAgICAuY29udGVudC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1ib3R0b206IDM1cHg7XG4gICAgfVxuXG4gICAgLmJyYW5jaC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgfVxuICB9XG5cbiAgLnNlcnZpY2VzLWdyb3VwLXNlY3Rpb24ge1xuICAgIC5jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogMzVweDtcbiAgICB9XG4gIH1cblxuICAuc2VydmljZXMtZ3JvdXAtaXRlbSB7XG4gICAgLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA3MHB4O1xuICAgIH1cblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIC5jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2VydmljZXMtZ3JvdXAtZW5kIHtcbiAgICAuYnJhbmNoLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNjVweDtcbiAgICB9XG5cbiAgICAuY29udGVudC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG4gIDtcbiAgfVxuXG4gIC5jZWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmNlbGwgKyAuY2VsbC5pbWctY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pbWctY29udGFpbmVyIHtcbiAgICBpbWcge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbWctbXVsdGktY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDQwcHgpO1xuICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IC0yMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuaW1nLW11bHRpLWNvbnRhaW5lci1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgIGhlaWdodDogNTAlO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2VydmljZXMtbmF2IHtcbiAgICBtYXJnaW46IDIwcHggMCA0MHB4IDA7XG4gICAgcGFkZGluZzogNTBweCAwIDAgMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO1xuXG4gICAgdWwge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwIDMwcHggMCAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMTJweCAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMTEsMTM1LDE0Nyk7IC8qIE9sZCBicm93c2VycyAqL1xuICAgICAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLCByZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIEZGMy42LTE1ICovXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUscmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUscmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICAgICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7IC8qIElFNi05ICovXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmJyYW5jaC1jb250YWluZXIge1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgJi5jYXAge1xuICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIH1cblxuICAgICAgJi5maWxsIHtcbiAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZpbGwtYmFja2dyb3VuZCB7XG4gICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICBiYWNrZ3JvdW5kOiByZ2IoMTEsMTM1LDE0Nyk7IC8qIE9sZCBicm93c2VycyAqL1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSwgcmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSxyZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUscmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzBiODc5MycsIGVuZENvbG9yc3RyPScjMzYwMDMzJyxHcmFkaWVudFR5cGU9MSApOyAvKiBJRTYtOSAqL1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTVweDtcbiAgICAvL2xlZnQ6IDA7XG4gICAgd2lkdGg6IDQ1cHg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5kZWZhdWx0LWJhY2tncm91bmQge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoIzk3OTc5NywgMC4yKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxNXB4O1xuICAgIC8vbGVmdDogMDtcbiAgICB3aWR0aDogNDVweDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDgwcHgpO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIGEuYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICB9XG5cbiAgJi5kYXJrLXRoZW1lIHtcbiAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gIH1cblxuICAmLmxpZ2h0LXRoZW1lIHtcbiAgICBjb2xvcjogJGxpZ2h0ZXItY29sb3I7XG4gIH1cblxuICAmLm5vLXRvcC1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gICYubm8tYm90dG9tLXBhZGRpbmcge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59IiwiLnNpbXBsZS1zdGF0cyB7XG4gIHBhZGRpbmc6IDMwcHggMCAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBwYWRkaW5nOiAzMHB4IDEwcHggMzBweDtcbiAgfVxuXG4gIC5oZWFkZXIgLmNlbGwge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaGlnaGxpZ2h0LWNvbG9yO1xuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuZ3JpZC14ICsgLmdyaWQteCB7XG4gICAgbWFyZ2luLXRvcDogOTBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgfVxuICB9XG5cbiAgLnN0YXQtaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAgNTBweCA1MHB4IDUwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICBmbGV4OiAwIDEgNTAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBwYWRkaW5nOiAwIDMwcHggNTBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAvL0BpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAvLyAgZGlzcGxheTogYmxvY2s7XG4gICAgLy99XG5cbiAgICAuc3RhdC1udW1iZXIge1xuICAgICAgZmxleDogMCAwIDEwMHB4O1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDM2KTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCgzMDApO1xuICAgICAgLy9ib3JkZXI6IDFweCBzb2xpZCAkZGFya2VzdC1jb2xvcjtcbiAgICAgIC8vYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvc3RhdHMtb3ZhbC5zdmcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgc3Ryb25nIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIH1cblxuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC42ZW07XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA1MCUpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCBkb3duKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cbn0iLCIuc2ltcGxlLWdyaWQge1xuICBwYWRkaW5nOiAxMDBweCAwIDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgcGFkZGluZzogMTAwcHggMTBweDtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgaDIge1xuICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDM2KTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICYgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgfVxuICB9XG5cbiAgLmdyaWQtaXRlbS1jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IDY1cHg7XG4gICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgaDQge1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMjQpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG4gICAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzNXB4O1xuICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luLWxlZnQ6IDM1cHg7XG4gICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgfVxuXG4gICAgLmdyaWQtaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgICB9XG4gIH1cblxuICAmLm5vLXRvcC1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gICYubm8tYm90dG9tLXBhZGRpbmcge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbn0iLCIucmVzb3VyY2VzLWFyY2hpdmUge1xuICBwYWRkaW5nOiA2MHB4IDAgNjBweDtcblxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIHBhZGRpbmc6IDkwcHggMTBweDtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgaDIge1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDM2KTtcbiAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIC8vbWFyZ2luLXRvcDogNjBweDtcblxuICAgICYgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgfVxuICB9XG5cbiAgLmdyaWQteCArIC5ncmlkLXgge1xuICAgIG1hcmdpbi10b3A6IDcwcHg7XG4gIH1cblxuICAuZ3JpZC14ICsgaDIge1xuICAgIG1hcmdpbi10b3A6IDcwcHg7XG4gIH1cblxuICAuY2VsbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAud29yay1uYXYge1xuICAgIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgMCA3MHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCAzMHB4IDAgMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMTEsMTM1LDE0Nyk7IC8qIE9sZCBicm93c2VycyAqL1xuICAgICAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLCByZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIEZGMy42LTE1ICovXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUscmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUscmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICAgICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7IC8qIElFNi05ICovXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuXG4gIC5mZWF0dXJlZC1yZXNvdXJjZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAwIDMwcHg7XG4gICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxOCk7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNTAwKTtcbiAgICB9XG5cbiAgICBoNSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDAgMjBweDtcbiAgICAgIGNvbG9yOiByZ2JhKCRkYXJrZXN0LWNvbG9yLCAwLjYpO1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTYpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDQwMCk7XG4gICAgICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstY29sb3I7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgfVxuXG4gICAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAwIDE1cHg7XG4gICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygyNCk7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcbiAgICB9XG5cbiAgICBhLmJ1dHRvbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygxNik7XG4gICAgfVxuICB9XG5cblxuICAvLy5hbGwtcmVzb3VyY2VzIHtcbiAgLy8gIC5jZWxsIHtcbiAgLy8gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQgZG93bikge1xuICAvLyAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgLy8gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gIC8vICAgICAgfVxuICAvLyAgICB9XG4gIC8vICB9XG4gIC8vfVxuXG4gIC5yZXNvdXJjZS1pdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0ZXN0LWNvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDEycHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgcCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDMwcHggMzBweDtcbiAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE0KTtcbiAgICAgIEBpbmNsdWRlIG1haW4tZm9udCg1MDApO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBoZWlnaHQ6IDE5MHB4O1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDtcbiAgICB9XG5cbiAgICBoNSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAzMHB4IDMwcHggMjBweDtcbiAgICAgIGNvbG9yOiByZ2JhKCRkYXJrZXN0LWNvbG9yLCAwLjYpO1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTQpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDQwMCk7XG4gICAgICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstY29sb3I7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgfVxuXG4gICAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAzMHB4IDE1cHg7XG4gICAgICBjb2xvcjogJGRhcmtlc3QtY29sb3I7XG4gICAgICBAaW5jbHVkZSBmb250LXRvLWVtcygyMCk7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNjAwKTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogNnB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwYjg3OTMrMCwzNjAwMzMrMTAwICovXG4gICAgICBiYWNrZ3JvdW5kOiByZ2IoMTEsMTM1LDE0Nyk7IC8qIE9sZCBicm93c2VycyAqL1xuICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLCByZ2JhKDU0LDAsNTEsMSkgMTAwJSk7IC8qIEZGMy42LTE1ICovXG4gICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUscmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDExLDEzNSwxNDcsMSkgMCUscmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMGI4NzkzJywgZW5kQ29sb3JzdHI9JyMzNjAwMzMnLEdyYWRpZW50VHlwZT0xICk7IC8qIElFNi05ICovXG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgYm94LXNoYWRvdzogMCA1cHggMTZweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYS5idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gIH1cblxuICAmLmRhcmstdGhlbWUge1xuICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgfVxuXG4gICYubGlnaHQtdGhlbWUge1xuICAgIGNvbG9yOiAkbGlnaHRlci1jb2xvcjtcbiAgfVxuXG4gICYubm8tdG9wLXBhZGRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG5cbiAgJi5uby1ib3R0b20tcGFkZGluZyB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn0iLCIuc2lkZS1ieS1zaWRlLWJsb2NrIHtcbiAgcGFkZGluZzogODBweCAwO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgfVxuXG4gIC5ydGwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcblxuICAgIC5jZWxsIHtcbiAgICAgICYuaW1hZ2Uuc3Bhbi10by1lZGdlIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogNTB2dztcbiAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgbWF4LWhlaWdodDogNTAwcHg7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuaW1hZ2UuY29udGFpbi1pbWFnZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5sdHIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAuY2VsbCB7XG4gICAgICAmLmltYWdlLnNwYW4tdG8tZWRnZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDUwdnc7XG4gICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwMCU7XG4gICAgICAgICAgbWF4LWhlaWdodDogNTAwcHg7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5pbWFnZS5jb250YWluLWltYWdlIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmNlbGwge1xuICAgICYudGV4dCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIGgyIHtcbiAgICBAaW5jbHVkZSBmb250LXRvLWVtcygzNik7XG4gICAgQGluY2x1ZGUgbWFpbi1mb250KDcwMCk7XG4gICAgbWFyZ2luOiAwIDAgMjVweDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgcCB7XG4gICAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCk7XG4gICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxNzUlO1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmLmRhcmstdGhlbWUge1xuICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgfVxuXG4gICYubGlnaHQtdGhlbWUge1xuICAgIGNvbG9yOiAkbGlnaHRlci1jb2xvcjtcbiAgfVxuXG4gICYubm8tdG9wLXBhZGRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG5cbiAgJi5uby1ib3R0b20tcGFkZGluZyB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cblxufSIsIi5oZWFkc2hvdC1ncmlkIHtcbiAgcGFkZGluZzogODBweCAwO1xuXG4gIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIDAgMjVweDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmhlYWRzaG90LWl0ZW0ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiA1NXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDU1cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgNDAwbXM7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDI0KTtcbiAgICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDcwMCk7XG4gICAgICAgIG1hcmdpbjogMjBweCAwIDA7XG4gICAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDVweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHA6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzBiODc5MyswLDM2MDAzMysxMDAgKi9cbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYigxMSwgMTM1LCAxNDcpOyAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICAgICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsIDEzNSwgMTQ3LCAxKSAwJSwgcmdiYSg1NCwgMCwgNTEsIDEpIDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xuICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgxMSwgMTM1LCAxNDcsIDEpIDAlLCByZ2JhKDU0LCAwLCA1MSwgMSkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMTEsIDEzNSwgMTQ3LCAxKSAwJSwgcmdiYSg1NCwgMCwgNTEsIDEpIDEwMCUpOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi9cbiAgICAgICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyMwYjg3OTMnLCBlbmRDb2xvcnN0cj0nIzM2MDAzMycsIEdyYWRpZW50VHlwZT0xKTsgLyogSUU2LTkgKi9cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE0KTtcbiAgICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCk7XG4gICAgICAgIG1hcmdpbjogMjBweCBhdXRvIDA7XG4gICAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgLmltZy1oZWFkc2hvdC1jb250YWluZXIge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5tZWRpYS1zdHJpcCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcblxuICAuZ3JpZC14IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgfVxuXG4gIC5jZWxsIHtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHggMjBweDtcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMjE1cHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cbn0iLCIuY2FyZWVycy1hcmNoaXZlIHtcbiAgcGFkZGluZzogODBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIHBhZGRpbmc6IDgwcHggMTBweDtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgaDIge1xuICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDM2KTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICYgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgfVxuICB9XG5cbiAgaDMge1xuICAgIEBpbmNsdWRlIG1haW4tZm9udCg2MDApO1xuICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDI0KTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5kZXNjcmlwdGlvbiB7XG4gICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuICAuYWxsLWNhcmVlcnMge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcblxuICAgIC5jZWxsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2FyZWVyLWl0ZW0ge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlc3QtY29sb3I7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMTJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG5cbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgMzBweCAzMHB4O1xuICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMTQpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDUwMCk7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAyMHB4O1xuICAgICAgY29sb3I6ICRkYXJrZXN0LWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZm9udC10by1lbXMoMjQpO1xuICAgICAgQGluY2x1ZGUgbWFpbi1mb250KDYwMCk7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDZweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMGI4NzkzKzAsMzYwMDMzKzEwMCAqL1xuICAgICAgYmFja2dyb3VuZDogcmdiKDExLDEzNSwxNDcpOyAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMTEsMTM1LDE0NywxKSAwJSwgcmdiYSg1NCwwLDUxLDEpIDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xuICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgxMSwxMzUsMTQ3LDEpIDAlLHJnYmEoNTQsMCw1MSwxKSAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzBiODc5MycsIGVuZENvbG9yc3RyPScjMzYwMDMzJyxHcmFkaWVudFR5cGU9MSApOyAvKiBJRTYtOSAqL1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDE2cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuXG4gICAgICBpbWcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5zdWItbmF2aWdhdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDg4ODtcbiAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwwLDAsLjIpO1xuXG4gICY6YmVmb3JlIHtcbiAgICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cHM6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvI2ZmZmZmZiswLGZmZmZmZisxMDAmMSswLDArMTAwICovXG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgIHJnYmEoMjU1LDI1NSwyNTUsMSkgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7IC8qIEZGMy42LTE1ICovXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIHJnYmEoMjU1LDI1NSwyNTUsMSkgMCUscmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTsgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICByZ2JhKDI1NSwyNTUsMjU1LDEpIDAlLHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjZmZmZmZmJywgZW5kQ29sb3JzdHI9JyMwMGZmZmZmZicsR3JhZGllbnRUeXBlPTEgKTsgLyogSUU2LTkgKi9cblxuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwczovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jZmZmZmZmKzAsZmZmZmZmKzEwMCYwKzAsMSs5OSAqL1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICByZ2JhKDI1NSwyNTUsMjU1LDApIDAlLCByZ2JhKDI1NSwyNTUsMjU1LDEpIDk5JSwgcmdiYSgyNTUsMjU1LDI1NSwxKSAxMDAlKTsgLyogRkYzLjYtMTUgKi9cbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAgcmdiYSgyNTUsMjU1LDI1NSwwKSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDEpIDk5JSxyZ2JhKDI1NSwyNTUsMjU1LDEpIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIHJnYmEoMjU1LDI1NSwyNTUsMCkgMCUscmdiYSgyNTUsMjU1LDI1NSwxKSA5OSUscmdiYSgyNTUsMjU1LDI1NSwxKSAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMGZmZmZmZicsIGVuZENvbG9yc3RyPScjZmZmZmZmJyxHcmFkaWVudFR5cGU9MSApOyAvKiBJRTYtOSAqL1xuXG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gIC5zdWJuYXYtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7IC8qIGhhcyB0byBiZSBzY3JvbGwsIG5vdCBhdXRvICovXG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgLnN1Ym5hdi1jb250YWluZXIge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAaW5jbHVkZSBtYWluLWZvbnQoNzAwKTtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdG8tZW1zKDE2KTtcblxuICAgICAgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkZGFya2VzdC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjOGU4ZThlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIHRvcDogNXB4O1xuICAgICAgICBib3R0b206IDVweDtcbiAgICAgICAgcmlnaHQ6IC0ycHg7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xuICAuc3ViLW5hdmlnYXRpb24ge1xuICAgIHBvc2l0aW9uOiAtd2Via2l0LXN0aWNreTtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogNzBweDtcbiAgfVxufSIsIi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiJdfQ== */

code[class*="language-"],pre[class*="language-"]{color: black;background: none;text-shadow: 0 1px white;font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;text-align: left;white-space: pre;word-spacing: normal;word-break: normal;word-wrap: normal;line-height: 1.5;-moz-tab-size: 4;-o-tab-size: 4;tab-size: 4;-webkit-hyphens: none;-moz-hyphens: none;-ms-hyphens: none;hyphens: none}pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection,code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection{text-shadow: none;background: #b3d4fc}pre[class*="language-"]::selection, pre[class*="language-"] ::selection,code[class*="language-"]::selection, code[class*="language-"] ::selection{text-shadow: none;background: #b3d4fc}@media print{code[class*="language-"],pre[class*="language-"]{text-shadow: none}}pre[class*="language-"]{padding: 1em;margin: .5em 0;overflow: auto}:not(pre) > code[class*="language-"],pre[class*="language-"]{background: #f5f2f0}:not(pre) > code[class*="language-"]{padding: .1em;border-radius: .3em;white-space: normal}.token.comment,.token.prolog,.token.doctype,.token.cdata{color: slategray}.token.punctuation{color: #999}.namespace{opacity: .7}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted{color: #905}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color: #690}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string{color: #a67f59;background: hsla(0, 0%, 100%, .5)}.token.atrule,.token.attr-value,.token.keyword{color: #07a}.token.function{color: #DD4A68}.token.regex,.token.important,.token.variable{color: #e90}.token.important,.token.bold{font-weight: bold}.token.italic{font-style: italic}.token.entity{cursor: help}pre.code-toolbar{position: relative}pre.code-toolbar > .toolbar{position: absolute;top: .3em;right: .2em;transition: opacity 0.3s ease-in-out;opacity: 0}pre.code-toolbar:hover > .toolbar{opacity: 1}pre.code-toolbar > .toolbar .toolbar-item{display: inline-block}pre.code-toolbar > .toolbar a{cursor: pointer}pre.code-toolbar > .toolbar button{background: none;border: 0;color: inherit;font: inherit;line-height: normal;overflow: visible;padding: 0;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none}pre.code-toolbar > .toolbar a,pre.code-toolbar > .toolbar button,pre.code-toolbar > .toolbar span{color: #bbb;font-size: .8em;padding: 0 .5em;background: #f5f2f0;background: rgba(224, 224, 224, 0.2);box-shadow: 0 2px 0 0 rgba(0,0,0,0.2);border-radius: .5em}pre.code-toolbar > .toolbar a:hover,pre.code-toolbar > .toolbar a:focus,pre.code-toolbar > .toolbar button:hover,pre.code-toolbar > .toolbar button:focus,pre.code-toolbar > .toolbar span:hover,pre.code-toolbar > .toolbar span:focus{color: inherit;text-decoration: none}