diff --git a/css/editor-style.css b/css/editor-style.css index 0f0feb183..0b77ba8ba 100644 --- a/css/editor-style.css +++ b/css/editor-style.css @@ -786,46 +786,11 @@ body.normal.single-post article.page > header .edit-link, body.normal.page article.page > header .edit-link { padding-left: 5px; } -body.normal.single-post .hero, -body.normal.page .hero { - text-align: center; - background-color: #efefef; - width: 100%; - margin: 0 0 24px; -} -body.normal.single-post .hero.is-gallery, -body.normal.page .hero.is-gallery { - background-color: transparent; -} body.normal.single-post .hero p.wp-caption-text, body.normal.page .hero p.wp-caption-text, body.normal.single-post .hero p.wp-media-credit, body.normal.page .hero p.wp-media-credit { - float: none; - margin: 0 auto; - text-align: left; - font-size: 14px; margin: 0 17.0213% 12px; - padding-top: 4px; -} -body.normal.single-post .hero p.wp-media-credit, -body.normal.page .hero p.wp-media-credit { - text-align: right; - margin-top: 4px; - min-height: 0; -} -body.normal.single-post .hero.is-video, -body.normal.page .hero.is-video { - margin-bottom: 24px; -} -body.normal.single-post .hero.is-video .embed-container, -body.normal.page .hero.is-video .embed-container { - margin-bottom: 0; -} -body.normal.single-post .hero.is-empty, -body.normal.page .hero.is-empty { - min-height: 0; - height: 0; } body.normal.single-post .single #main #sidebar, body.normal.page .single #main #sidebar { @@ -1256,6 +1221,48 @@ body.normal.page #disqus_thread { font-size: 13.04px; margin-bottom: 0; } +/** + * Styles for the post-leading hero, used in both single-column .normal posts and two-column .classic posts + * + * @since 0.5.5 + * @link https://github.com/INN/Largo/issues/934 + */ +.hero { + text-align: center; + background-color: #efefef; + width: 100%; + margin: 0 0 24px; +} +.hero.is-gallery { + background-color: transparent; +} +.hero p.wp-caption-text, +.hero p.wp-media-credit { + float: none; + font-size: 14px; +} +.hero p.wp-caption-text { + text-align: left; + margin: 0 12px; + padding-bottom: 12px; +} +.hero p.wp-media-credit { + text-align: right; + margin: 4px 12px 4px; + min-height: 0; +} +.hero.is-embed, +.hero.is-video { + margin-bottom: 24px; +} +.hero.is-embed .embed-container, +.hero.is-video .embed-container { + margin-bottom: 0; +} +.hero.is-empty { + min-height: 0; + height: 0; +} .home .stories article img.attachment-medium, .sub-stories img.attachment-post-thumbnail { max-width: 30%; @@ -1376,4 +1383,4 @@ html .mceContentBody { max-width: 771px; margin: 0 2.5%; } -/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxlc3MvaW5jL21peGlucy5sZXNzIiwibGVzcy9pbmMvdHlwb2dyYXBoeS5sZXNzIiwibGVzcy9pbmMvdmFyaWFibGVzLmxlc3MiLCJsZXNzL2luYy9wb3N0cy1hbmQtcGFnZXMubGVzcyIsImxlc3MvaW5jL2FyY2hpdmVzLmxlc3MiLCJsZXNzL2luYy9zZWFyY2gubGVzcyIsImxlc3MvaW5jL3N0aWNreS5sZXNzIiwibGVzcy9pbmMvc2luZ2xlLmxlc3MiLCJsZXNzL2luYy9ob21lcGFnZS5sZXNzIiwibGVzcy9lZGl0b3Itc3R5bGUubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVVBO0VBQ0UsUUFBQTs7QUFDQSxTQUFDO0FBQ0QsU0FBQztFQUNDLGNBQUE7RUFDQSxTQUFTLEVBQVQ7O0FBRUYsU0FBQztFQUNDLFdBQUE7O0FBT0o7RUFDRSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxhQUFOO0VBQ0EsV0FBQTtFQUFhLFVBQUE7RUFDYixZQUFBO0VBQWMsVUFBQTtFQUFZLFNBQUE7O0FBTTVCO0VBQ0UsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSw2QkFBQTtFQUNBLFNBQUE7O0FBSUY7RUFDRSxjQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBd1BBLDhCQUFBO0VBQ0csMkJBQUE7RUFDQywwQkFBQTtFQUNJLHNCQUFBOztBQzNTVjtFQUNFLFNBQUE7RUFDQSxzQkNxSitCLCtCRHJKL0I7RUFDQSxlQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSx5QkFBQTs7QUFFRjtFQUNFLHlCQUFBO0VBQ0EsZUFBQTs7QUFPRjtFQUNFLGNBQUE7RUFDQSxxQkFBQTs7QUFDQSxDQUFDO0VBQ0MsY0FBQTtFQUNBLDBCQUFBOztBQUVGLENBQUM7RUFDQyxt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RTtBQWhCRixnQkFnQkU7RUFDRSxlQUFBO0VBQ0EsU0FBQTtFQUNBLG9CQUFBOztBQXBCSixXQXNCRTtBQXJCRixnQkFxQkU7RUFDRSxlQUFBO0VBQ0Esa0JBQUE7O0FBR0o7RUFDRSxrQkFBQTs7QU1qSkYsSUFBSztFQUNKLFVBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBNaXhpbnMubGVzc1xuLy8gU25pcHBldHMgb2YgcmV1c2FibGUgQ1NTIHRvIGRldmVsb3AgZmFzdGVyIGFuZCBrZWVwIGNvZGUgcmVhZGFibGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFVUSUxJVFkgTUlYSU5TXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBDbGVhcmZpeFxuLy8gLS0tLS0tLS1cbi8vIEZvciBjbGVhcmluZyBmbG9hdHMgbGlrZSBhIGJvc3MgaDVicC5jb20vcVxuLmNsZWFyZml4IHtcbiAgKnpvb206IDE7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSGlkZSBhbiBpdGVtIHZpc3VhbGx5IG9ubHlcbi52aXN1YWxseWhpZGRlbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7IHdpZHRoOiAxcHg7XG4gIG1hcmdpbjogLTFweDsgcGFkZGluZzogMDsgYm9yZGVyOiAwO1xufVxuXG4vLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvY29tbWl0L2FhMDM5NmVhZTc1N1xuLmhpZGUtdGV4dCB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBCbG9jayBsZXZlbCBmb3JtIGlucHV0c1xuLmlucHV0LWJsb2NrLWxldmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAyOHB4OyAgICAgICAgLy8gTWFrZSBpbnB1dHMgYXQgbGVhc3QgdGhlIGhlaWdodCBvZiB0aGVpciBidXR0b24gY291bnRlcnBhcnRcbiAgLmJveC1zaXppbmcoYm9yZGVyLWJveCk7IC8vIE1ha2VzIGlucHV0cyBiZWhhdmUgbGlrZSB0cnVlIGJsb2NrLWxldmVsIGVsZW1lbnRzXG59XG5cbi8vIFdlYmtpdC1zdHlsZSBmb2N1c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG4udGFiLWZvY3VzKCkge1xuICAvLyBEZWZhdWx0XG4gIG91dGxpbmU6IHRoaW4gZG90dGVkICMzMzM7XG4gIC8vIFdlYmtpdFxuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuXG4vLyBDZW50ZXItYWxpZ24gYSBibG9jayBsZXZlbCBlbGVtZW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uY2VudGVyLWJsb2NrKCkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLy8gSUU3IGlubGluZS1ibG9ja1xuLy8gLS0tLS0tLS0tLS0tLS0tLVxuLmllNy1pbmxpbmUtYmxvY2soKSB7XG4gICpkaXNwbGF5OiBpbmxpbmU7IC8qIElFNyBpbmxpbmUtYmxvY2sgaGFjayAqL1xuICAqem9vbTogMTtcbn1cblxuLy8gSUU3IGxpa2VzIHRvIGNvbGxhcHNlIHdoaXRlc3BhY2Ugb24gZWl0aGVyIHNpZGUgb2YgdGhlIGlubGluZS1ibG9jayBlbGVtZW50cy5cbi8vIEVtcyBiZWNhdXNlIHdlJ3JlIGF0dGVtcHRpbmcgdG8gbWF0Y2ggdGhlIHdpZHRoIG9mIGEgc3BhY2UgY2hhcmFjdGVyLiBMZWZ0XG4vLyB2ZXJzaW9uIGlzIGZvciBmb3JtIGJ1dHRvbnMsIHdoaWNoIHR5cGljYWxseSBjb21lIGFmdGVyIG90aGVyIGVsZW1lbnRzLCBhbmRcbi8vIHJpZ2h0IHZlcnNpb24gaXMgZm9yIGljb25zLCB3aGljaCBjb21lIGJlZm9yZS4gQXBwbHlpbmcgYm90aCBpcyBvaywgYnV0IGl0IHdpbGxcbi8vIG1lYW4gdGhhdCBzcGFjZSBiZXR3ZWVuIHRob3NlIGVsZW1lbnRzIHdpbGwgYmUgLjZlbSAofjIgc3BhY2UgY2hhcmFjdGVycykgaW4gSUU3LFxuLy8gaW5zdGVhZCBvZiB0aGUgMSBzcGFjZSBpbiBvdGhlciBicm93c2Vycy5cbi5pZTctcmVzdG9yZS1sZWZ0LXdoaXRlc3BhY2UoKSB7XG4gICptYXJnaW4tbGVmdDogLjNlbTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAqbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmllNy1yZXN0b3JlLXJpZ2h0LXdoaXRlc3BhY2UoKSB7XG4gICptYXJnaW4tcmlnaHQ6IC4zZW07XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAqbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLy8gU2l6aW5nIHNob3J0Y3V0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnNpemUoQGhlaWdodCwgQHdpZHRoKSB7XG4gIHdpZHRoOiBAd2lkdGg7XG4gIGhlaWdodDogQGhlaWdodDtcbn1cbi5zcXVhcmUoQHNpemUpIHtcbiAgLnNpemUoQHNpemUsIEBzaXplKTtcbn1cblxuLy8gUGxhY2Vob2xkZXIgdGV4dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnBsYWNlaG9sZGVyKEBjb2xvcjogQHBsYWNlaG9sZGVyVGV4dCkge1xuICAmOi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiBAY29sb3I7XG4gIH1cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiBAY29sb3I7XG4gIH1cbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IEBjb2xvcjtcbiAgfVxufVxuXG4vLyBUZXh0IG92ZXJmbG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG4udGV4dC1vdmVyZmxvdygpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cblxuLy8gRk9OVFNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiNmb250IHtcbiAgI2ZhbWlseSB7XG4gICAgLnNlcmlmKCkge1xuICAgICAgZm9udC1mYW1pbHk6IEBzZXJpZkZvbnRGYW1pbHk7XG4gICAgfVxuICAgIC5zYW5zLXNlcmlmKCkge1xuICAgICAgZm9udC1mYW1pbHk6IEBzYW5zRm9udEZhbWlseTtcbiAgICB9XG4gICAgLm1vbm9zcGFjZSgpIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBAbW9ub0ZvbnRGYW1pbHk7XG4gICAgfVxuICB9XG4gIC5zaG9ydGhhbmQoQHNpemU6IEBiYXNlRm9udFNpemUsIEB3ZWlnaHQ6IG5vcm1hbCwgQGxpbmVIZWlnaHQ6IEBiYXNlTGluZUhlaWdodCkge1xuICAgIGZvbnQtc2l6ZTogQHNpemU7XG4gICAgZm9udC13ZWlnaHQ6IEB3ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IEBsaW5lSGVpZ2h0O1xuICB9XG4gIC5zZXJpZihAc2l6ZTogQGJhc2VGb250U2l6ZSwgQHdlaWdodDogbm9ybWFsLCBAbGluZUhlaWdodDogQGJhc2VMaW5lSGVpZ2h0KSB7XG4gICAgI2ZvbnQgPiAjZmFtaWx5ID4gLnNlcmlmO1xuICAgICNmb250ID4gLnNob3J0aGFuZChAc2l6ZSwgQHdlaWdodCwgQGxpbmVIZWlnaHQpO1xuICB9XG4gIC5zYW5zLXNlcmlmKEBzaXplOiBAYmFzZUZvbnRTaXplLCBAd2VpZ2h0OiBub3JtYWwsIEBsaW5lSGVpZ2h0OiBAYmFzZUxpbmVIZWlnaHQpIHtcbiAgICAjZm9udCA+ICNmYW1pbHkgPiAuc2Fucy1zZXJpZjtcbiAgICAjZm9udCA+IC5zaG9ydGhhbmQoQHNpemUsIEB3ZWlnaHQsIEBsaW5lSGVpZ2h0KTtcbiAgfVxuICAubW9ub3NwYWNlKEBzaXplOiBAYmFzZUZvbnRTaXplLCBAd2VpZ2h0OiBub3JtYWwsIEBsaW5lSGVpZ2h0OiBAYmFzZUxpbmVIZWlnaHQpIHtcbiAgICAjZm9udCA+ICNmYW1pbHkgPiAubW9ub3NwYWNlO1xuICAgICNmb250ID4gLnNob3J0aGFuZChAc2l6ZSwgQHdlaWdodCwgQGxpbmVIZWlnaHQpO1xuICB9XG59XG5cblxuLy8gRk9STVNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE1peGluIGZvciBmb3JtIGZpZWxkIHN0YXRlc1xuLmZvcm1GaWVsZFN0YXRlKEB0ZXh0Q29sb3I6ICM1NTUsIEBib3JkZXJDb2xvcjogI2NjYywgQGJhY2tncm91bmRDb2xvcjogI2Y1ZjVmNSkge1xuICAvLyBTZXQgdGhlIHRleHQgY29sb3JcbiAgPiBsYWJlbCxcbiAgLmhlbHAtYmxvY2ssXG4gIC5oZWxwLWlubGluZSB7XG4gICAgY29sb3I6IEB0ZXh0Q29sb3I7XG4gIH1cbiAgLy8gU3R5bGUgaW5wdXRzIGFjY29yZGluZ2x5XG4gIC5jaGVja2JveCxcbiAgLnJhZGlvLFxuICBpbnB1dCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgY29sb3I6IEB0ZXh0Q29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiBAYm9yZGVyQ29sb3I7XG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbihAYm9yZGVyQ29sb3IsIDEwJSk7XG4gICAgICAuYm94LXNoYWRvdygwIDAgNnB4IGxpZ2h0ZW4oQGJvcmRlckNvbG9yLCAyMCUpKTtcbiAgICB9XG4gIH1cbiAgLy8gR2l2ZSBhIHNtYWxsIGJhY2tncm91bmQgY29sb3IgZm9yIGlucHV0LXByZXBlbmQvLWFwcGVuZFxuICAuaW5wdXQtcHJlcGVuZCAuYWRkLW9uLFxuICAuaW5wdXQtYXBwZW5kIC5hZGQtb24ge1xuICAgIGNvbG9yOiBAdGV4dENvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBiYWNrZ3JvdW5kQ29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiBAdGV4dENvbG9yO1xuICB9XG59XG5cblxuXG4vLyBDU1MzIFBST1BFUlRJRVNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEJvcmRlciBSYWRpdXNcbi5ib3JkZXItcmFkaXVzKEByYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xuICAgICAtbW96LWJvcmRlci1yYWRpdXM6IEByYWRpdXM7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogQHJhZGl1cztcbn1cblxuLy8gRHJvcCBzaGFkb3dzXG4uYm94LXNoYWRvdyhAc2hhZG93KSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogQHNoYWRvdztcbiAgICAgLW1vei1ib3gtc2hhZG93OiBAc2hhZG93O1xuICAgICAgICAgIGJveC1zaGFkb3c6IEBzaGFkb3c7XG59XG5cbi8vIFRyYW5zaXRpb25zXG4udHJhbnNpdGlvbihAdHJhbnNpdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xuICAgICAtbW96LXRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xuICAgICAgLW1zLXRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xufVxuXG4vLyBUcmFuc2Zvcm1hdGlvbnNcbi5yb3RhdGUoQGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7XG4gICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoQGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKEBkZWdyZWVzKTtcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoQGRlZ3JlZXMpO1xufVxuLnNjYWxlKEByYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoQHJhdGlvKTtcbiAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKEByYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZShAcmF0aW8pO1xuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoQHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKEByYXRpbyk7XG59XG4udHJhbnNsYXRlKEB4LCBAeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSk7XG4gICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoQHgsIEB5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHkpO1xuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoQHgsIEB5KTtcbn1cbi5za2V3KEB4LCBAeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2tldyhAeCwgQHkpO1xuICAgICAtbW96LXRyYW5zZm9ybTogc2tldyhAeCwgQHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2tldyhAeCwgQHkpO1xuICAgICAgIC1vLXRyYW5zZm9ybTogc2tldyhAeCwgQHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tldyhAeCwgQHkpO1xufVxuLnRyYW5zbGF0ZTNkKEB4LCBAeSwgQHopIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHksIEB6KTtcbiAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHksIEB6KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHksIEB6KTtcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHksIEB6KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHksIEB6KTtcbn1cblxuLy8gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cbi8vIERlZmF1bHQgdmFsdWUgaXMgYHZpc2libGVgLCBidXQgY2FuIGJlIGNoYW5nZWQgdG8gYGhpZGRlblxuLy8gU2VlIGdpdCBwdWxsIGh0dHBzOi8vZ2l0aHViLmNvbS9kYW5ueWtlYW5lL2Jvb3RzdHJhcC5naXQgYmFja2ZhY2UtdmlzaWJpbGl0eSBmb3IgZXhhbXBsZXNcbi5iYWNrZmFjZS12aXNpYmlsaXR5KEB2aXNpYmlsaXR5KXtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBAdmlzaWJpbGl0eTtcbiAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBAdmlzaWJpbGl0eTtcbiAgICAgIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBAdmlzaWJpbGl0eTtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBAdmlzaWJpbGl0eTtcbn1cblxuLy8gQmFja2dyb3VuZCBjbGlwcGluZ1xuLy8gSGVhZHMgdXA6IEZGIDMuNiBhbmQgdW5kZXIgbmVlZCBcInBhZGRpbmdcIiBpbnN0ZWFkIG9mIFwicGFkZGluZy1ib3hcIlxuLmJhY2tncm91bmQtY2xpcChAY2xpcCkge1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogQGNsaXA7XG4gICAgIC1tb3otYmFja2dyb3VuZC1jbGlwOiBAY2xpcDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IEBjbGlwO1xufVxuXG4vLyBCYWNrZ3JvdW5kIHNpemluZ1xuLmJhY2tncm91bmQtc2l6ZShAc2l6ZSl7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBAc2l6ZTtcbiAgICAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IEBzaXplO1xuICAgICAgIC1vLWJhY2tncm91bmQtc2l6ZTogQHNpemU7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBAc2l6ZTtcbn1cblxuXG4vLyBCb3ggc2l6aW5nXG4uYm94LXNpemluZyhAYm94bW9kZWwpIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBAYm94bW9kZWw7XG4gICAgIC1tb3otYm94LXNpemluZzogQGJveG1vZGVsO1xuICAgICAgLW1zLWJveC1zaXppbmc6IEBib3htb2RlbDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBAYm94bW9kZWw7XG59XG5cbi8vIFVzZXIgc2VsZWN0XG4vLyBGb3Igc2VsZWN0aW5nIHRleHQgb24gdGhlIHBhZ2Vcbi51c2VyLXNlbGVjdChAc2VsZWN0KSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XG4gICAgICAgLW8tdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XG59XG5cbi8vIFJlc2l6ZSBhbnl0aGluZ1xuLnJlc2l6YWJsZShAZGlyZWN0aW9uKSB7XG4gIHJlc2l6ZTogQGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFNhZmFyaSBmaXhcbn1cblxuLy8gQ1NTMyBDb250ZW50IENvbHVtbnNcbi5jb250ZW50LWNvbHVtbnMoQGNvbHVtbkNvdW50LCBAY29sdW1uR2FwOiBAZ3JpZEd1dHRlcldpZHRoKSB7XG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiBAY29sdW1uQ291bnQ7XG4gICAgIC1tb3otY29sdW1uLWNvdW50OiBAY29sdW1uQ291bnQ7XG4gICAgICAgICAgY29sdW1uLWNvdW50OiBAY29sdW1uQ291bnQ7XG4gIC13ZWJraXQtY29sdW1uLWdhcDogQGNvbHVtbkdhcDtcbiAgICAgLW1vei1jb2x1bW4tZ2FwOiBAY29sdW1uR2FwO1xuICAgICAgICAgIGNvbHVtbi1nYXA6IEBjb2x1bW5HYXA7XG59XG5cbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXG4uaHlwaGVucyhAbW9kZTogYXV0bykge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogQG1vZGU7XG4gICAgIC1tb3otaHlwaGVuczogQG1vZGU7XG4gICAgICAtbXMtaHlwaGVuczogQG1vZGU7XG4gICAgICAgLW8taHlwaGVuczogQG1vZGU7XG4gICAgICAgICAgaHlwaGVuczogQG1vZGU7XG59XG5cbi8vIE9wYWNpdHlcbi5vcGFjaXR5KEBvcGFjaXR5KSB7XG4gIG9wYWNpdHk6IEBvcGFjaXR5IC8gMTAwO1xuICBmaWx0ZXI6IH5cImFscGhhKG9wYWNpdHk9QHtvcGFjaXR5fSlcIjtcbn1cblxuXG5cbi8vIEJBQ0tHUk9VTkRTXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBBZGQgYW4gYWxwaGF0cmFuc3BhcmVuY3kgdmFsdWUgdG8gYW55IGJhY2tncm91bmQgb3IgYm9yZGVyIGNvbG9yICh2aWEgRWx5c2UgSG9sbGFkYXkpXG4jdHJhbnNsdWNlbnQge1xuICAuYmFja2dyb3VuZChAY29sb3I6IEB3aGl0ZSwgQGFscGhhOiAxKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaHNsYShodWUoQGNvbG9yKSwgc2F0dXJhdGlvbihAY29sb3IpLCBsaWdodG5lc3MoQGNvbG9yKSwgQGFscGhhKTtcbiAgfVxuICAuYm9yZGVyKEBjb2xvcjogQHdoaXRlLCBAYWxwaGE6IDEpIHtcbiAgICBib3JkZXItY29sb3I6IGhzbGEoaHVlKEBjb2xvciksIHNhdHVyYXRpb24oQGNvbG9yKSwgbGlnaHRuZXNzKEBjb2xvciksIEBhbHBoYSk7XG4gICAgLmJhY2tncm91bmQtY2xpcChwYWRkaW5nLWJveCk7XG4gIH1cbn1cblxuLy8gR3JhZGllbnQgQmFyIENvbG9ycyBmb3IgYnV0dG9ucyBhbmQgYWxlcnRzXG4uZ3JhZGllbnRCYXIoQHByaW1hcnlDb2xvciwgQHNlY29uZGFyeUNvbG9yKSB7XG4gICNncmFkaWVudCA+IC52ZXJ0aWNhbChAcHJpbWFyeUNvbG9yLCBAc2Vjb25kYXJ5Q29sb3IpO1xuICBib3JkZXItY29sb3I6IEBzZWNvbmRhcnlDb2xvciBAc2Vjb25kYXJ5Q29sb3IgZGFya2VuKEBzZWNvbmRhcnlDb2xvciwgMTUlKTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLC4xKSByZ2JhKDAsMCwwLC4xKSBmYWRlaW4ocmdiYSgwLDAsMCwuMSksIDE1JSk7XG59XG5cbi8vIEdyYWRpZW50c1xuI2dyYWRpZW50IHtcbiAgLmhvcml6b250YWwoQHN0YXJ0Q29sb3I6ICM1NTUsIEBlbmRDb2xvcjogIzMzMykge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBlbmRDb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gRkYgMy42K1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQobGVmdCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIElFMTBcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAxMDAlIDAsIGZyb20oQHN0YXJ0Q29sb3IpLCB0byhAZW5kQ29sb3IpKTsgLy8gU2FmYXJpIDQrLCBDaHJvbWUgMitcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gU2FmYXJpIDUuMSssIENocm9tZSAxMCtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIE9wZXJhIDExLjEwXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KGxlZnQsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBMZSBzdGFuZGFyZFxuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBmaWx0ZXI6IGUoJShcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSclZCcsIGVuZENvbG9yc3RyPSclZCcsIEdyYWRpZW50VHlwZT0xKVwiLEBzdGFydENvbG9yLEBlbmRDb2xvcikpOyAvLyBJRTkgYW5kIGRvd25cbiAgfVxuICAudmVydGljYWwoQHN0YXJ0Q29sb3I6ICM1NTUsIEBlbmRDb2xvcjogIzMzMykge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peChAc3RhcnRDb2xvciwgQGVuZENvbG9yLCA2MCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIEZGIDMuNitcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIElFMTBcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oQHN0YXJ0Q29sb3IpLCB0byhAZW5kQ29sb3IpKTsgLy8gU2FmYXJpIDQrLCBDaHJvbWUgMitcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBTYWZhcmkgNS4xKywgQ2hyb21lIDEwK1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBPcGVyYSAxMS4xMFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0b3AsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBUaGUgc3RhbmRhcmRcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nJWQnLCBlbmRDb2xvcnN0cj0nJWQnLCBHcmFkaWVudFR5cGU9MClcIixAc3RhcnRDb2xvcixAZW5kQ29sb3IpKTsgLy8gSUU5IGFuZCBkb3duXG4gIH1cbiAgLmRpcmVjdGlvbmFsKEBzdGFydENvbG9yOiAjNTU1LCBAZW5kQ29sb3I6ICMzMzMsIEBkZWc6IDQ1ZGVnKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGVuZENvbG9yO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChAZGVnLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gRkYgMy42K1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQoQGRlZywgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIElFMTBcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChAZGVnLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gU2FmYXJpIDUuMSssIENocm9tZSAxMCtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoQGRlZywgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIE9wZXJhIDExLjEwXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KEBkZWcsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBUaGUgc3RhbmRhcmRcbiAgfVxuICAudmVydGljYWwtdGhyZWUtY29sb3JzKEBzdGFydENvbG9yOiAjMDBiM2VlLCBAbWlkQ29sb3I6ICM3YTQzYjYsIEBjb2xvclN0b3A6IDUwJSwgQGVuZENvbG9yOiAjYzMzMjVmKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KEBtaWRDb2xvciwgQGVuZENvbG9yLCA4MCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbShAc3RhcnRDb2xvciksIGNvbG9yLXN0b3AoQGNvbG9yU3RvcCwgQG1pZENvbG9yKSwgdG8oQGVuZENvbG9yKSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoQHN0YXJ0Q29sb3IsIEBtaWRDb2xvciBAY29sb3JTdG9wLCBAZW5kQ29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IsIEBtaWRDb2xvciBAY29sb3JTdG9wLCBAZW5kQ29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQoQHN0YXJ0Q29sb3IsIEBtaWRDb2xvciBAY29sb3JTdG9wLCBAZW5kQ29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChAc3RhcnRDb2xvciwgQG1pZENvbG9yIEBjb2xvclN0b3AsIEBlbmRDb2xvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KEBzdGFydENvbG9yLCBAbWlkQ29sb3IgQGNvbG9yU3RvcCwgQGVuZENvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyVkJywgZW5kQ29sb3JzdHI9JyVkJywgR3JhZGllbnRUeXBlPTApXCIsQHN0YXJ0Q29sb3IsQGVuZENvbG9yKSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG4gIH1cbiAgLnJhZGlhbChAaW5uZXJDb2xvcjogIzU1NSwgQG91dGVyQ29sb3I6ICMzMzMpICB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQG91dGVyQ29sb3I7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChyYWRpYWwsIGNlbnRlciBjZW50ZXIsIDAsIGNlbnRlciBjZW50ZXIsIDQ2MCwgZnJvbShAaW5uZXJDb2xvciksIHRvKEBvdXRlckNvbG9yKSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCBAaW5uZXJDb2xvciwgQG91dGVyQ29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgQGlubmVyQ29sb3IsIEBvdXRlckNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgQGlubmVyQ29sb3IsIEBvdXRlckNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCBAaW5uZXJDb2xvciwgQG91dGVyQ29sb3IpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cbiAgLnN0cmlwZWQoQGNvbG9yLCBAYW5nbGU6IC00NWRlZykge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAxMDAlLCAxMDAlIDAsIGNvbG9yLXN0b3AoLjI1LCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkpLCBjb2xvci1zdG9wKC4yNSwgdHJhbnNwYXJlbnQpLCBjb2xvci1zdG9wKC41LCB0cmFuc3BhcmVudCksIGNvbG9yLXN0b3AoLjUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSksIGNvbG9yLXN0b3AoLjc1LCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkpLCBjb2xvci1zdG9wKC43NSwgdHJhbnNwYXJlbnQpLCB0byh0cmFuc3BhcmVudCkpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQoQGFuZ2xlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChAYW5nbGUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNTAlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgfVxufVxuLy8gUmVzZXQgZmlsdGVycyBmb3IgSUVcbi5yZXNldC1maWx0ZXIoKSB7XG4gIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KGVuYWJsZWQgPSBmYWxzZSlcIikpO1xufVxuXG5cblxuLy8gQ09NUE9ORU5UIE1JWElOU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQnV0dG9uIGJhY2tncm91bmRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cbi5idXR0b25CYWNrZ3JvdW5kKEBzdGFydENvbG9yLCBAZW5kQ29sb3IpIHtcbiAgLy8gZ3JhZGllbnRCYXIgd2lsbCBzZXQgdGhlIGJhY2tncm91bmQgdG8gYSBwbGVhc2luZyBibGVuZCBvZiB0aGVzZSwgdG8gc3VwcG9ydCBJRTw9OVxuICAuZ3JhZGllbnRCYXIoQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7XG4gICpiYWNrZ3JvdW5kLWNvbG9yOiBAZW5kQ29sb3I7IC8qIERhcmtlbiBJRTcgYnV0dG9ucyBieSBkZWZhdWx0IHNvIHRoZXkgc3RhbmQgb3V0IG1vcmUgZ2l2ZW4gdGhleSB3b24ndCBoYXZlIGJvcmRlcnMgKi9cbiAgLnJlc2V0LWZpbHRlcigpO1xuXG4gIC8vIGluIHRoZXNlIGNhc2VzIHRoZSBncmFkaWVudCB3b24ndCBjb3ZlciB0aGUgYmFja2dyb3VuZCwgc28gd2Ugb3ZlcnJpZGVcbiAgJjpob3ZlciwgJjphY3RpdmUsICYuYWN0aXZlLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGVuZENvbG9yO1xuICAgICpiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGVuZENvbG9yLCA1JSk7XG4gIH1cblxuICAvLyBJRSA3ICsgOCBjYW4ndCBoYW5kbGUgYm94LXNoYWRvdyB0byBzaG93IGFjdGl2ZSwgc28gd2UgZGFya2VuIGEgYml0IG91cnNlbHZlc1xuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAZW5kQ29sb3IsIDEwJSkgZShcIlxcOVwiKTtcbiAgfVxufVxuXG4vLyBOYXZiYXIgdmVydGljYWwgYWxpZ25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFZlcnRpY2FsbHkgY2VudGVyIGVsZW1lbnRzIGluIHRoZSBuYXZiYXIuXG4vLyBFeGFtcGxlOiBhbiBlbGVtZW50IGhhcyBhIGhlaWdodCBvZiAzMHB4LCBzbyB3cml0ZSBvdXQgYC5uYXZiYXJWZXJ0aWNhbEFsaWduKDMwcHgpO2AgdG8gY2FsY3VsYXRlIHRoZSBhcHByb3ByaWF0ZSB0b3AgbWFyZ2luLlxuLm5hdmJhclZlcnRpY2FsQWxpZ24oQGVsZW1lbnRIZWlnaHQpIHtcbiAgbWFyZ2luLXRvcDogKEBuYXZiYXJIZWlnaHQgLSBAZWxlbWVudEhlaWdodCkgLyAyO1xufVxuXG4vLyBQb3BvdmVyIGFycm93c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRm9yIHRpcHNpZXMgYW5kIHBvcG92ZXJzXG4jcG9wb3ZlckFycm93IHtcbiAgLnRvcChAYXJyb3dXaWR0aDogNXB4LCBAY29sb3I6IEBibGFjaykge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC1AYXJyb3dXaWR0aDtcbiAgICBib3JkZXItbGVmdDogQGFycm93V2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiBAYXJyb3dXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wOiBAYXJyb3dXaWR0aCBzb2xpZCBAY29sb3I7XG4gIH1cbiAgLmxlZnQoQGFycm93V2lkdGg6IDVweCwgQGNvbG9yOiBAYmxhY2spIHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAtQGFycm93V2lkdGg7XG4gICAgYm9yZGVyLXRvcDogQGFycm93V2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogQGFycm93V2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQ6IEBhcnJvd1dpZHRoIHNvbGlkIEBjb2xvcjtcbiAgfVxuICAuYm90dG9tKEBhcnJvd1dpZHRoOiA1cHgsIEBjb2xvcjogQGJsYWNrKSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLUBhcnJvd1dpZHRoO1xuICAgIGJvcmRlci1sZWZ0OiBAYXJyb3dXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IEBhcnJvd1dpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IEBhcnJvd1dpZHRoIHNvbGlkIEBjb2xvcjtcbiAgfVxuICAucmlnaHQoQGFycm93V2lkdGg6IDVweCwgQGNvbG9yOiBAYmxhY2spIHtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IC1AYXJyb3dXaWR0aDtcbiAgICBib3JkZXItdG9wOiBAYXJyb3dXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiBAYXJyb3dXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IEBhcnJvd1dpZHRoIHNvbGlkIEBjb2xvcjtcbiAgfVxufVxuXG4vLyBHcmlkIFN5c3RlbVxuLy8gLS0tLS0tLS0tLS1cblxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcbi5jb250YWluZXItZml4ZWQoKSB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIC5jbGVhcmZpeCgpO1xufVxuXG4vLyBUYWJsZSBjb2x1bW5zXG4udGFibGVDb2x1bW5zKEBjb2x1bW5TcGFuOiAxKSB7XG4gIGZsb2F0OiBub25lOyAvLyB1bmRvIGRlZmF1bHQgZ3JpZCBjb2x1bW4gc3R5bGVzXG4gIHdpZHRoOiAoKEBmbHVpZEdyaWRDb2x1bW5XaWR0aCkgKiBAY29sdW1uU3BhbikgKyAoQGZsdWlkR3JpZEd1dHRlcldpZHRoICogKEBjb2x1bW5TcGFuIC0gMSkpIC0gMTY7IC8vIDE2IGlzIHRvdGFsIHBhZGRpbmcgb24gbGVmdCBhbmQgcmlnaHQgb2YgdGFibGUgY2VsbHNcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIHVuZG8gZGVmYXVsdCBncmlkIGNvbHVtbiBzdHlsZXNcbn1cblxuLy8gTWFrZSBhIEdyaWRcbi8vIFVzZSAubWFrZVJvdyBhbmQgLm1ha2VDb2x1bW4gdG8gYXNzaWduIHNlbWFudGljIGxheW91dHMgZ3JpZCBzeXN0ZW0gYmVoYXZpb3Jcbi5tYWtlUm93KCkge1xuICBtYXJnaW4tbGVmdDogQGdyaWRHdXR0ZXJXaWR0aCAqIC0xO1xuICAuY2xlYXJmaXgoKTtcbn1cbi5tYWtlQ29sdW1uKEBjb2x1bW5zOiAxLCBAb2Zmc2V0OiAwKSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogKEBncmlkQ29sdW1uV2lkdGggKiBAb2Zmc2V0KSArIChAZ3JpZEd1dHRlcldpZHRoICogKEBvZmZzZXQgLSAxKSkgKyAoQGdyaWRHdXR0ZXJXaWR0aCAqIDIpO1xuICB3aWR0aDogKEBncmlkQ29sdW1uV2lkdGggKiBAY29sdW1ucykgKyAoQGdyaWRHdXR0ZXJXaWR0aCAqIChAY29sdW1ucyAtIDEpKTtcbn1cblxuLy8gVGhlIEdyaWRcbiNncmlkIHtcblxuICAuY29yZSAoQGdyaWRDb2x1bW5XaWR0aCwgQGdyaWRHdXR0ZXJXaWR0aCkge1xuXG4gICAgLnNwYW5YIChAaW5kZXgpIHdoZW4gKEBpbmRleCA+IDApIHtcbiAgICAgIC5zcGFuQHtpbmRleH0geyAuc3BhbihAaW5kZXgpOyB9XG4gICAgICAuc3BhblgoQGluZGV4IC0gMSk7XG4gICAgfVxuICAgIC5zcGFuWCAoMCkge31cblxuICAgIC5vZmZzZXRYIChAaW5kZXgpIHdoZW4gKEBpbmRleCA+IDApIHtcbiAgICAgIC5vZmZzZXRAe2luZGV4fSB7IC5vZmZzZXQoQGluZGV4KTsgfVxuICAgICAgLm9mZnNldFgoQGluZGV4IC0gMSk7XG4gICAgfVxuICAgIC5vZmZzZXRYICgwKSB7fVxuXG4gICAgLm9mZnNldCAoQGNvbHVtbnMpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAoQGdyaWRDb2x1bW5XaWR0aCAqIEBjb2x1bW5zKSArIChAZ3JpZEd1dHRlcldpZHRoICogKEBjb2x1bW5zICsgMSkpO1xuICAgIH1cblxuICAgIC5zcGFuIChAY29sdW1ucykge1xuICAgICAgd2lkdGg6IChAZ3JpZENvbHVtbldpZHRoICogQGNvbHVtbnMpICsgKEBncmlkR3V0dGVyV2lkdGggKiAoQGNvbHVtbnMgLSAxKSk7XG4gICAgfVxuXG4gICAgLnJvdyB7XG4gICAgICBtYXJnaW4tbGVmdDogQGdyaWRHdXR0ZXJXaWR0aCAqIC0xO1xuICAgICAgLmNsZWFyZml4KCk7XG4gICAgfVxuXG4gICAgW2NsYXNzKj1cInNwYW5cIl0ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tbGVmdDogQGdyaWRHdXR0ZXJXaWR0aDtcbiAgICB9XG5cbiAgICAvLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXNcbiAgICAuY29udGFpbmVyLFxuICAgIC5uYXZiYXItZml4ZWQtdG9wIC5jb250YWluZXIsXG4gICAgLm5hdmJhci1maXhlZC1ib3R0b20gLmNvbnRhaW5lciB7IC5zcGFuKEBncmlkQ29sdW1ucyk7IH1cblxuICAgIC8vIGdlbmVyYXRlIC5zcGFuWCBhbmQgLm9mZnNldFhcbiAgICAuc3BhblggKEBncmlkQ29sdW1ucyk7XG4gICAgLm9mZnNldFggKEBncmlkQ29sdW1ucyk7XG5cbiAgfVxuXG4gIC5mbHVpZCAoQGZsdWlkR3JpZENvbHVtbldpZHRoLCBAZmx1aWRHcmlkR3V0dGVyV2lkdGgpIHtcblxuICAgIC5zcGFuWCAoQGluZGV4KSB3aGVuIChAaW5kZXggPiAwKSB7XG4gICAgICAuc3BhbkB7aW5kZXh9IHsgLnNwYW4oQGluZGV4KTsgfVxuICAgICAgLnNwYW5YKEBpbmRleCAtIDEpO1xuICAgIH1cbiAgICAuc3BhblggKDApIHt9XG5cbiAgICAuc3BhbiAoQGNvbHVtbnMpIHtcbiAgICAgIHdpZHRoOiAoQGZsdWlkR3JpZENvbHVtbldpZHRoICogQGNvbHVtbnMpICsgKEBmbHVpZEdyaWRHdXR0ZXJXaWR0aCAqIChAY29sdW1ucyAtIDEpKTtcbiAgICAgICp3aWR0aDogKEBmbHVpZEdyaWRDb2x1bW5XaWR0aCAqIEBjb2x1bW5zKSArIChAZmx1aWRHcmlkR3V0dGVyV2lkdGggKiAoQGNvbHVtbnMgLSAxKSkgLSAoLjUgLyBAZ3JpZFJvd1dpZHRoICogMTAwICogMSUpO1xuICAgIH1cblxuICAgIC5yb3ctZmx1aWQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAuY2xlYXJmaXgoKTtcbiAgICAgIFtjbGFzcyo9XCJzcGFuXCJdIHtcbiAgICAgICAgLmlucHV0LWJsb2NrLWxldmVsKCk7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tbGVmdDogQGZsdWlkR3JpZEd1dHRlcldpZHRoO1xuICAgICAgICAqbWFyZ2luLWxlZnQ6IEBmbHVpZEdyaWRHdXR0ZXJXaWR0aCAtICguNSAvIEBncmlkUm93V2lkdGggKiAxMDAgKiAxJSk7XG4gICAgICB9XG4gICAgICBbY2xhc3MqPVwic3BhblwiXTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBnZW5lcmF0ZSAuc3BhblhcbiAgICAgIC5zcGFuWCAoQGdyaWRDb2x1bW5zKTtcbiAgICB9XG5cbiAgfVxuXG4gIC5pbnB1dChAZ3JpZENvbHVtbldpZHRoLCBAZ3JpZEd1dHRlcldpZHRoKSB7XG5cbiAgICAuc3BhblggKEBpbmRleCkgd2hlbiAoQGluZGV4ID4gMCkge1xuICAgICAgaW5wdXQuc3BhbkB7aW5kZXh9LCB0ZXh0YXJlYS5zcGFuQHtpbmRleH0sIC51bmVkaXRhYmxlLWlucHV0LnNwYW5Ae2luZGV4fSB7IC5zcGFuKEBpbmRleCk7IH1cbiAgICAgIC5zcGFuWChAaW5kZXggLSAxKTtcbiAgICB9XG4gICAgLnNwYW5YICgwKSB7fVxuXG4gICAgLnNwYW4oQGNvbHVtbnMpIHtcbiAgICAgIHdpZHRoOiAoKEBncmlkQ29sdW1uV2lkdGgpICogQGNvbHVtbnMpICsgKEBncmlkR3V0dGVyV2lkdGggKiAoQGNvbHVtbnMgLSAxKSkgLSAxMDtcbiAgICB9XG5cbiAgICBpbnB1dCxcbiAgICB0ZXh0YXJlYSxcbiAgICAudW5lZGl0YWJsZS1pbnB1dCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgLy8gb3ZlcnJpZGUgbWFyZ2luLWxlZnQgZnJvbSBjb3JlIGdyaWQgc3lzdGVtXG4gICAgfVxuXG4gICAgLy8gZ2VuZXJhdGUgLnNwYW5YXG4gICAgLnNwYW5YIChAZ3JpZENvbHVtbnMpO1xuXG4gIH1cblxufVxuXG4uZGFya0xpZ2h0IChAYSkgd2hlbiAobGlnaHRuZXNzKEBhKSA+PSA1MCUpIHtcbiAgY29sb3I6IEBncmF5RGFya2VyO1xufVxuLmRhcmtMaWdodCAoQGEpIHdoZW4gKGxpZ2h0bmVzcyhAYSkgPCA1MCUpIHtcbiAgY29sb3I6IEB3aGl0ZTtcbn1cbiIsImJvZHkge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBAYmFzZUZvbnRGYW1pbHk7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgZm9udC13ZWlnaHQ6IEBiYXNlRm9udFdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IEBiYXNlTGluZUhlaWdodDtcbiAgY29sb3I6IEB0ZXh0Q29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IEBib2R5QmFja2dyb3VuZDtcbn1cbiNwYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHBhZ2VCYWNrZ3JvdW5kO1xuICBwYWRkaW5nOiAwIDIwcHg7XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBMaW5rc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuYSB7XG4gIGNvbG9yOiBAbGlua0NvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiBAbGlua0NvbG9ySG92ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgJi5tb3JlLWxpbmsge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEdlbmVyYWwgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxucCxcbmRsLFxuaHIsXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5vbCxcbnVsLFxucHJlLFxudGFibGUsXG5hZGRyZXNzLFxuZmllbGRzZXQge1xuICBtYXJnaW46IDAgMCBAYmFzZWxpbmU7XG59XG5oMSB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDMuMzc1O1xuICAmLmVudHJ5LXRpdGxlIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAyLjc1O1xuICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDI7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbn1cbmgyIHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMi43NTtcbn1cbmgzIHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMi4yNTtcbn1cbmg0LFxuLmVudHJ5LWNvbnRlbnQgaDEsXG4uZW50cnktY29udGVudCBoMixcbi5lbnRyeS1jb250ZW50IGgzIHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS44MzM7XG59XG5oNSxcbi5zdG9yaWVzIGgzLFxuLmVudHJ5LWNvbnRlbnQgaDQge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjU7XG59XG5oNS50b3AtdGFnLFxuLndpZGdldCBoNS50b3AtdGFnLFxuLmVudHJ5LWNvbnRlbnQgaDUudG9wLXRhZyB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lLzU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiBAZ3JheUxpZ2h0O1xuICBhIHtcbiAgICBjb2xvcjogQGdyYXlMaWdodDtcbiAgfVxufVxuaDYsXG4uZW50cnktY29udGVudCBoNSB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuMjIyO1xufVxuLmVudHJ5LWNvbnRlbnQgaDYge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgZm9udC1mYW1pbHk6IEBoZWFkaW5nc0ZvbnRGYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiBAaGVhZGluZ3NGb250V2VpZ2h0O1xuICBjb2xvcjogQGhlYWRpbmdzQ29sb3I7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZWxlZ2liaWxpdHk7XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuODE1ZW07XG4gIH1cbn1cbi5lbnRyeS1jb250ZW50IGgyLFxuLmVudHJ5LWNvbnRlbnQgaDMsXG4uZW50cnktY29udGVudCBoNCxcbi5lbnRyeS1jb250ZW50IGg1LFxuLmVudHJ5LWNvbnRlbnQgaDYge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmU7XG59XG5wIHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yMjI7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIG1hcmdpbjogMCAwIEBiYXNlbGluZTtcbiAgc21hbGwsXG4gICYuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuODE1O1xuICAgIGNvbG9yOiBAZ3JheUxpZ2h0O1xuICB9XG4gICYueHNtYWxsIHtcblx0Zm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMC42Njc7XG5cdGNvbG9yOiBAZ3JheUxpZ2h0O1xuICB9XG4gICYuaW50cm8ge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcbiAgICBjb2xvcjogQGdyYXk7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICB9XG59XG5cbnVsLCBvbCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMCAwIEBiYXNlbGluZSAyNXB4O1xufVxuLmVudHJ5LWNvbnRlbnQge1xuICB1bCxcbiAgb2wge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuMjIyO1xuICB9XG59XG51bCB1bCxcbnVsIG9sLFxub2wgb2wsXG5vbCB1bCB7XG4gIG1hcmdpbi10b3A6IEBiYXNlbGluZSAvIDM7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG51bCB7XG4gIGxpc3Qtc3R5bGU6IGRpc2M7XG59XG5vbCB7XG4gIGxpc3Qtc3R5bGU6IGRlY2ltYWw7XG4gIG9sIHtcbiAgICBsaXN0LXN0eWxlOiBsb3dlci1hbHBoYTtcbiAgICBvbCB7XG5cdCAgbGlzdC1zdHlsZTogbG93ZXItcm9tYW47XG4gICAgfVxuICB9XG59XG5saSB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAqIDAuNTtcbn1cbnVsLnVuc3R5bGVkLFxub2wudW5zdHlsZWQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbmRsIGR0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5kZCB7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG59XG5zdHJvbmcsIGRmbiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuZW0sIGRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbmFiYnIsIGFjcm9ueW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIEBncmF5TGlnaHQ7XG59XG5hZGRyZXNzIHtcbiAgbWFyZ2luOiAwIDAgQGJhc2VsaW5lO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5kZWwge1xuICBjb2xvcjogQGdyYXlMaWdodDtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEZhbmN5IFBvc3QgRm9ybWF0dGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuYmxvY2txdW90ZSB7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nOiA1cHggMTVweCA1cHggMzBweDtcbiAgbWFyZ2luOiBAYmFzZWxpbmU7XG4gIGJvcmRlci1sZWZ0OiA1cHggc29saWQgQGdyYXlMaWdodGVyO1xuICBwIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgbWFyZ2luOiBAYmFzZWxpbmUvMiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cbiAgc21hbGwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiBAYmFzZWxpbmU7XG4gICAgY29sb3I6IEBncmF5TGlnaHQ7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAxNCBcXDAwQTAnO1xuICAgIH1cbiAgfVxuICAvLyBGbG9hdCByaWdodCB3aXRoIHRleHQtYWxpZ246IHJpZ2h0XG4gICYucHVsbC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgcCxcbiAgICBzbWFsbCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbn1cblxuY29kZSxcbnByZSB7XG4gIHBhZGRpbmc6IDAgM3B4IDJweDtcbiAgI2ZvbnQgPiAjZmFtaWx5ID4gLm1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplIC0gMjtcbiAgY29sb3I6IEBncmF5RGFyaztcbn1cblxuLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBjb2xvcjogI2QxNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmOTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UxZTFlODtcbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiBAYmFzZWxpbmUgLyAyO1xuICBtYXJnaW46IDAgMCBAYmFzZWxpbmU7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIC45MjU7IC8vIDEzcHggdG8gMTJweFxuICBsaW5lLWhlaWdodDogQGJhc2VsaW5lO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjOyAvLyBmYWxsYmFjayBmb3IgSUU3LThcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLDAsMCwuMTUpO1xuXG4gIC8vIE1ha2UgcHJldHR5cHJpbnQgc3R5bGVzIG1vcmUgc3BhY2VkIG91dCBmb3IgcmVhZGFiaWxpdHlcbiAgJi5wcmV0dHlwcmludCB7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lO1xuICB9XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6IDM0MHB4O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5cbmhyIHtcbiAgbWFyZ2luOiBAYmFzZWxpbmUgMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgQGdyYXlMaWdodGVyO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQHdoaXRlO1xufVxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENPTE9SXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHcmF5c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGJsYWNrOiAgICAgICAgICAgICAgICAgIzAwMDtcbkBncmF5RGFya2VyOiAgICAgICAgICAgICMyMjI7XG5AZ3JheURhcms6ICAgICAgICAgICAgICAjNDg0ODQ4O1xuQGdyYXk6ICAgICAgICAgICAgICAgICAgIzdEODE4NTtcbkBncmF5TGlnaHQ6ICAgICAgICAgICAgICNhYWE7XG5AZ3JheUxpZ2h0ZXI6ICAgICAgICAgICAjZGRkO1xuQHdoaXRlOiAgICAgICAgICAgICAgICAgI2ZmZjtcblxuXG4vLyBBY2NlbnQgY29sb3JzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AYmx1ZTogICAgICAgICAgICAgICAgICAjMjI3NWJiO1xuQGJsdWVEYXJrOiAgICAgICAgICAgICAgIzAwNjRjZDtcbkBncmVlbjogICAgICAgICAgICAgICAgICM0NmE1NDY7XG5AcmVkOiAgICAgICAgICAgICAgICAgICAjYmQyNjFkO1xuQHllbGxvdzogICAgICAgICAgICAgICAgI2ZmYzQwZDtcbkBvcmFuZ2U6ICAgICAgICAgICAgICAgICNmODk0MDY7XG5AcGluazogICAgICAgICAgICAgICAgICAjYzMzMjVmO1xuQHB1cnBsZTogICAgICAgICAgICAgICAgIzdhNDNiNjtcblxuLyoqXG4gKiBAZ3JvdXAgQ29sb3JcbiAqIEBsYWJlbCBCYXNlIENvbG9yICh1c2VkIGZvciBuYXZiYXIsIHdpZGdldCB0aXRsZXMsIGV0Yy4pXG4gKiBAdHlwZSBjb2xvclxuICogQGRlZmF1bHRfdmFsdWUgIzIyNzViYlxuICovXG5AYmFzZUNvbG9yOlx0XHRcdFx0QGJsdWU7XG5cbi8qKlxuICogQGdyb3VwIENvbG9yXG4gKiBAbGFiZWwgSGVhZGVyL0Zvb3RlciBDb2xvclxuICogQHR5cGUgY29sb3JcbiAqIEBkZWZhdWx0X3ZhbHVlICMyMjJcbiAqL1xuQGhlYWRlckZvb3RlckNvbG9yOlx0XHRAZ3JheURhcmtlcjtcblxuLyoqXG4gKiBAZ3JvdXAgQ29sb3JcbiAqIEBsYWJlbCBQcmUtRm9vdGVyIENvbG9yXG4gKiBAdHlwZSBjb2xvclxuICogQGRlZmF1bHRfdmFsdWUgI2RkZFxuICovXG5AcHJlRm9vdGVyQ29sb3I6XHRcdEBncmF5TGlnaHRlcjtcblxuLyoqXG4gKiBAZ3JvdXAgQ29sb3JcbiAqIEBsYWJlbCBDb2xvciBvZiBsaW5rc1xuICogQHR5cGUgY29sb3JcbiAqIEBkZWZhdWx0X3ZhbHVlICMyMjc1YmJcbiAqL1xuQGxpbmtDb2xvcjogICAgICAgICAgICAgQGJsdWU7XG5cbi8qKlxuICogQGdyb3VwIENvbG9yXG4gKiBAbGFiZWwgSG92ZXIgY29sb3Igb2YgbGlua3NcbiAqIEB0eXBlIGNvbG9yXG4gKiBAZGVmYXVsdF92YWx1ZSAjMjI3NWJiXG4gKi9cbkBsaW5rQ29sb3JIb3ZlcjogICAgICAgIGxpZ2h0ZW4oQGxpbmtDb2xvciwgMTAlKTtcblxuLyoqXG4gKiBAZ3JvdXAgQ29sb3JcbiAqIEBsYWJlbCBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBvc3QgbWV0YSBib3hlcyAoYXV0aG9yIGJpbywgcmVsYXRlZCBwb3N0cywgZXRjLilcbiAqIEB0eXBlIGNvbG9yXG4gKiBAZGVmYXVsdF92YWx1ZSAjZmZmXG4gKi9cbkBwb3N0Qm94QmFja2dyb3VuZENvbG9yOlx0I2ZmZjtcblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTEFZT1VUXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AY29udGFpbmVyTWF4V2lkdGg6XHRcdDExNzBweDtcblxuLyoqXG4gKiBAZ3JvdXAgQmFzaWNzXG4gKiBAbGFiZWwgQm9keSBCYWNrZ3JvdW5kIENvbG9yXG4gKiBAdHlwZSBjb2xvclxuICogQGRlZmF1bHRfdmFsdWUgI2ZmZlxuICovXG5AYm9keUJhY2tncm91bmQ6ICAgICAgICBAd2hpdGU7XG5cbi8qKlxuICogQGdyb3VwIEJhc2ljc1xuICogQGxhYmVsIFBhZ2UgQmFja2dyb3VuZCBDb2xvclxuICogQHR5cGUgY29sb3JcbiAqIEBkZWZhdWx0X3ZhbHVlICNmZmZcbiAqL1xuQHBhZ2VCYWNrZ3JvdW5kOiAgICAgICAgQHdoaXRlO1xuXG4vKipcbiAqIEBncm91cCBCYXNpY3NcbiAqIEBsYWJlbCBUZXh0IENvbG9yXG4gKiBAdHlwZSBjb2xvclxuICogQGRlZmF1bHRfdmFsdWUgIzMzM1xuICovXG5AdGV4dENvbG9yOiAgICAgICAgICAgICBAZ3JheURhcms7XG4vKipcbiAqIEBncm91cCBCYXNpY3NcbiAqIEBsYWJlbCBEZWZhdWx0IFZlcnRpY2FsIFNwYWNpbmdcbiAqIEB0eXBlIHBpeGVsc1xuICogQGRlZmF1bHRfdmFsdWUgMjRweFxuICovXG5AYmFzZWxpbmU6XHRcdFx0XHQyNHB4O1xuXG4vLyBHcmlkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AZ3JpZENvbHVtbnM6ICAgICAgICAgICAgIDEyO1xuQGZsdWlkR3JpZENvbHVtbldpZHRoOiAgICA2LjM4Mjk3ODcyMyU7XG5AZmx1aWRHcmlkR3V0dGVyV2lkdGg6ICAgIDIuMTI3NjU5NTc0JTtcbkBncmlkUm93V2lkdGg6ICAgICAgICAgICAgMTAwJTtcblxuLy8gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBoaWdoZGVuc2l0eTogflwib25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSlcIixcbiAgICAgICAgICAgICAgflwib25seSBzY3JlZW4gYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSlcIixcbiAgICAgICAgICAgICAgflwib25seSBzY3JlZW4gYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzLzIgKVwiLFxuICAgICAgICAgICAgICB+XCJvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSlcIjtcblxuQG1vYmlsZTogICAgICB+XCJvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTI5cHgpXCI7XG5cbkB0YWJsZXQ6ICAgICAgflwib25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTc5cHgpXCI7XG5AdGFibGV0RG93bjogIH5cIm9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NzlweClcIjtcbkB0YWJsZXRVcDogICAgflwib25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KVwiO1xuXG5AZGVza3RvcDogICAgIH5cIm9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5ODBweCkgYW5kIChtYXgtd2lkdGg6IDExMjhweClcIjtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRZUE9HUkFQSFlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qKlxuICogQGdyb3VwIFR5cG9ncmFwaHlcbiAqIEBsYWJlbCBTYW5zIEZvbnQgRmFtaWx5XG4gKiBAdHlwZSB0ZXh0XG4gKiBAZGVmYXVsdF92YWx1ZSBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWZcbiAqL1xuQHNhbnNGb250RmFtaWx5OiAgICAgICAgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuXG4vKipcbiAqIEBncm91cCBUeXBvZ3JhcGh5XG4gKiBAbGFiZWwgU2VyaWYgRm9udCBGYW1pbHlcbiAqIEB0eXBlIHRleHRcbiAqL1xuQHNlcmlmRm9udEZhbWlseTogICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmO1xuQG1vbm9Gb250RmFtaWx5OiAgICAgICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlO1xuXG4vKipcbiAqIEBncm91cCBUeXBvZ3JhcGh5XG4gKiBAbGFiZWwgQmFzZSBGb250IFNpemVcbiAqIEB0eXBlIHBpeGVsc1xuICovXG5AYmFzZUZvbnRTaXplOiAgICAgICAgICAxNnB4O1xuXG4vKipcbiAqIEBncm91cCBUeXBvZ3JhcGh5XG4gKiBAbGFiZWwgU2FucyBGb250IEZhbWlseVxuICogQHR5cGUgZHJvcGRvd25cbiAqIEBvcHRpb25zIEBzZXJpZkZvbnRGYW1pbHl8QHNhbnNGb250RmFtaWx5XG4gKiBAZGVmYXVsdF92YWx1ZSBAc2VyaWZGb250RmFtaWx5XG4gKi9cbkBiYXNlRm9udEZhbWlseTogICAgICAgIEBzZXJpZkZvbnRGYW1pbHk7XG4vKipcbiAqIEBncm91cCBUeXBvZ3JhcGh5XG4gKiBAbGFiZWwgQmFzZSBMaW5lIEhlaWdodFxuICogQHR5cGUgdGV4dFxuICogQGRlZmF1bHRfdmFsdWUgMS41XG4gKi9cbkBiYXNlTGluZUhlaWdodDogICAgICAgIDEuNTtcblxuQGFsdEZvbnRGYW1pbHk6ICAgICAgICAgQHNhbnNGb250RmFtaWx5O1xuQGJhc2VGb250V2VpZ2h0Olx0XHRub3JtYWw7XG5cbkBoZWFkaW5nc0ZvbnRGYW1pbHk6ICAgIEBzYW5zRm9udEZhbWlseTsgLy8gZW1wdHkgdG8gdXNlIGRlZmF1bHQsIEBiYXNlRm9udEZhbWlseVxuQGhlYWRpbmdzRm9udFdlaWdodDogICAgYm9sZDsgLy8gZW1wdHkgdG8gdXNlIGRlZmF1bHQsIEBiYXNlRm9udFdlaWdodFxuQGhlYWRpbmdzQ29sb3I6ICAgICAgICAgaW5oZXJpdDsgLy8gZW1wdHkgdG8gdXNlIGRlZmF1bHQsIEB0ZXh0Q29sb3JcblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRk9STVMsIFRBQkxFUyBBTkQgQlVUVE9OU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVGFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AdGFibGVCYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudDsgLy8gb3ZlcmFsbCBiYWNrZ3JvdW5kLWNvbG9yXG5AdGFibGVCYWNrZ3JvdW5kQWNjZW50OiAgICAgICAgICAgICAjZjlmOWY5OyAvLyBmb3Igc3RyaXBpbmdcbkB0YWJsZUJhY2tncm91bmRIb3ZlcjogICAgICAgICAgICAgICNmNWY1ZjU7IC8vIGZvciBob3ZlclxuQHRhYmxlQm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgI2RkZDsgLy8gdGFibGUgYW5kIGNlbGwgYm9yZGVyXG5cblxuLy8gQnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGJ0bkJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgQHdoaXRlO1xuQGJ0bkJhY2tncm91bmRIaWdobGlnaHQ6ICAgICAgICAgICAgZGFya2VuKEB3aGl0ZSwgMTAlKTtcbkBidG5Cb3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICNjY2M7XG5cbkBidG5QcmltYXJ5QmFja2dyb3VuZDogICAgICAgICAgICAgIEBiYXNlQ29sb3I7XG5AYnRuUHJpbWFyeUJhY2tncm91bmRIaWdobGlnaHQ6ICAgICBzcGluKEBidG5QcmltYXJ5QmFja2dyb3VuZCwgMTUlKTtcblxuXG4vLyBGb3Jtc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGlucHV0QmFja2dyb3VuZDogICAgICAgICAgICAgICBAd2hpdGU7XG5AaW5wdXRCb3JkZXI6ICAgICAgICAgICAgICAgICAgICNjY2M7XG5AaW5wdXRCb3JkZXJSYWRpdXM6ICAgICAgICAgICAgIDNweDtcbkBpbnB1dERpc2FibGVkQmFja2dyb3VuZDogICAgICAgQGdyYXlMaWdodGVyO1xuQGZvcm1BY3Rpb25zQmFja2dyb3VuZDogICAgICAgICAjZjVmNWY1O1xuXG5AcGxhY2Vob2xkZXJUZXh0OiAgICAgICAgIEBncmF5TGlnaHQ7XG5cblxuLy8gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQHdhcm5pbmdUZXh0OiAgICAgICAgICAgICAjYzA5ODUzO1xuQHdhcm5pbmdCYWNrZ3JvdW5kOiAgICAgICAjZmNmOGUzO1xuQHdhcm5pbmdCb3JkZXI6ICAgICAgICAgICBkYXJrZW4oc3BpbihAd2FybmluZ0JhY2tncm91bmQsIC0xMCksIDMlKTtcblxuQGVycm9yVGV4dDogICAgICAgICAgICAgICAjYjk0YTQ4O1xuQGVycm9yQmFja2dyb3VuZDogICAgICAgICAjZjJkZWRlO1xuQGVycm9yQm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oc3BpbihAZXJyb3JCYWNrZ3JvdW5kLCAtMTApLCAzJSk7XG5cbkBzdWNjZXNzVGV4dDogICAgICAgICAgICAgIzQ2ODg0NztcbkBzdWNjZXNzQmFja2dyb3VuZDogICAgICAgI2RmZjBkODtcbkBzdWNjZXNzQm9yZGVyOiAgICAgICAgICAgZGFya2VuKHNwaW4oQHN1Y2Nlc3NCYWNrZ3JvdW5kLCAtMTApLCA1JSk7XG5cbkBpbmZvVGV4dDogICAgICAgICAgICAgICAgIzNhODdhZDtcbkBpbmZvQmFja2dyb3VuZDogICAgICAgICAgI2Q5ZWRmNztcbkBpbmZvQm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKHNwaW4oQGluZm9CYWNrZ3JvdW5kLCAtMTApLCA3JSk7XG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkB6aW5kZXhEcm9wZG93bjogICAgICAgICAgMTAwMDtcbkB6aW5kZXhQb3BvdmVyOiAgICAgICAgICAgMTAxMDtcbkB6aW5kZXhUb29sdGlwOiAgICAgICAgICAgMTAyMDtcbkB6aW5kZXhGaXhlZE5hdmJhcjogICAgICAgMTAzMDtcbkB6aW5kZXhNb2RhbEJhY2tkcm9wOiAgICAgMTA0MDtcbkB6aW5kZXhNb2RhbDogICAgICAgICAgICAgMTA1MDtcblxuLy8gTmF2YmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AbmF2YmFySGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgNDBweDtcbkBuYXZiYXJGb250U2l6ZTogICAgICAgICAgICAgICAgICAxNXB4O1xuQG5hdmJhckJhY2tncm91bmQ6ICAgICAgICAgICAgICAgIEBib2R5QmFja2dyb3VuZDtcbi8vIE5hdmJhciBidXR0b24gKGJ1cmdlcikgZm9yIHRvZ2dsaW5nIG5hdmJhciBpdGVtcyBpbiByZXNwb25zaXZlIGxheW91dHNcbkBpY29uYmFySGVpZ2h0OiAzcHg7XG5cbiAgICAvLyBOYXZiYXIgZHJvcGRvd25zXG4gICAgQGRyb3Bkb3duQmFja2dyb3VuZDogQHdoaXRlO1xuICAgIEBkcm9wZG93bkJvcmRlcjogcmdiYSgwLDAsMCwuMik7XG4gICAgQGRyb3Bkb3duRGl2aWRlclRvcDogI2U1ZTVlNTtcbiAgICBAZHJvcGRvd25EaXZpZGVyQm90dG9tOiBAd2hpdGU7XG5cbiAgICAvLyBNYWluIG5hdmJhclxuICAgIEBuYXZiYXJUZXh0OiBAdGV4dENvbG9yO1xuICAgIEBuYXZiYXJMaW5rQ29sb3I6IEBuYXZiYXJUZXh0O1xuICAgIEBuYXZiYXJMaW5rQ29sb3JIb3ZlcjogZGFya2VuKEBuYXZiYXJMaW5rQ29sb3IsIDUlKTtcbiAgICBAbmF2YmFyTGlua0JhY2tncm91bmRBY3RpdmU6IGRhcmtlbihAbmF2YmFyQmFja2dyb3VuZCwgNSUpO1xuICAgIEBuYXZiYXJEcm9wZG93bkNhcmV0Q29sb3I6IEBuYXZiYXJMaW5rQ29sb3I7XG4gICAgQG5hdmJhckRyb3Bkb3duQ2FyZXRDb2xvckhvdmVyOiBAbmF2YmFyTGlua0NvbG9ySG92ZXI7XG4gICAgQG5hdmJhclJ1bGVDb2xvcjogQGdyYXlMaWdodDtcblxuICAgIC8vIFN0aWNreSBuYXZiYXJcbiAgICBAc3RpY2t5TmF2YmFyVGV4dDogQHRleHRDb2xvcjtcbiAgICBAc3RpY2t5TmF2YmFyTGlua0NvbG9yOiBAc3RpY2t5TmF2YmFyVGV4dDtcbiAgICBAc3RpY2t5TmF2YmFyTGlua0NvbG9ySG92ZXI6IGRhcmtlbihAc3RpY2t5TmF2YmFyTGlua0NvbG9yLCA1JSk7XG4gICAgQHN0aWNreU5hdmJhckJhY2tncm91bmRDb2xvcjogQHdoaXRlO1xuICAgIEBzdGlja3lOYXZiYXJEcm9wZG93bkNhcmV0Q29sb3I6IEBzdGlja3lOYXZiYXJMaW5rQ29sb3I7XG4gICAgQHN0aWNreU5hdmJhckRyb3Bkb3duQ2FyZXRDb2xvckhvdmVyOiBAc3RpY2t5TmF2YmFyTGlua0NvbG9ySG92ZXI7XG5cblxuLy8gU29jaWFsIEJyYW5kc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQHJzczogI2Y4OTQwNjtcbkBmYWNlYm9vazogIzNhNTc5NTtcbkB0d2l0dGVyOiAjNTVhY2VlO1xuQHlvdXR1YmU6ICNlNTJkMjc7XG5AZ3BsdXM6ICNkZDRiMzk7XG5AZmxpY2tyOiAjZmYwMDg0O1xuQGxpbmtlZGluOiAjMDA3YmI2O1xuQHR1bWJscjogIzM1NDY1YztcbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQT1NUL1BBR0UgRUxFTUVOVFNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wb3N0LWhlYWRlcixcbi5wYWdlLWhlYWRlcixcbi5lbnRyeS1jb250ZW50LFxuLnBvc3QtZm9vdGVyLFxuYXJ0aWNsZS5zdG9yeSB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZTtcbn1cbi5wb3N0LWhlYWRlcixcbi5wYWdlLWhlYWRlcixcbmFydGljbGUuc3Rvcnkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQGdyYXlMaWdodGVyO1xufVxuYXJ0aWNsZS5zdG9yeSB7XG4gIHBhZGRpbmctYm90dG9tOiBAYmFzZWxpbmUgLyAyO1xufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSU5ERVguUEhQXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uc3RvcmllcyBhcnRpY2xlIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCBAZ3JheUxpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmU7XG59XG4uc3RvcmllcyBhcnRpY2xlW2NsYXNzKj1cInNwYW5cIl0ge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5zdG9yaWVzIGgyLmVudHJ5LXRpdGxlIHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMjtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lLzM7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG59XG4uc3RvcmllcyAuZW50cnktY29udGVudCBwIHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAyO1xufVxuLnN0b3JpZXMgaDUudGFnLWxpc3Qge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjgxNTtcbiAgZm9udC1mYW1pbHk6IEBzYW5zRm9udEZhbWlseTtcbiAgZm9udC13ZWlnaHQ6bm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUGFnZS9Db21wb25lbnQgU3BlY2lmaWMgU3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0IFwiYXJjaGl2ZXMubGVzc1wiO1xuQGltcG9ydCBcInNlYXJjaC5sZXNzXCI7XG5AaW1wb3J0IFwic3RpY2t5Lmxlc3NcIjtcbkBpbXBvcnQgXCJzaW5nbGUubGVzc1wiO1xuQGltcG9ydCBcImhvbWVwYWdlLmxlc3NcIjtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFBvc3QgUGFnZSBDb250ZW50IE1vZHVsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5tb2R1bGUge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUvMjtcbiAgY29sb3I6IEBibGFjaztcbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUvMjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICBkbCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIGR0LCBkZCB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMC44MTU7XG4gICAgbWFyZ2luOiAwIDAgQGJhc2VsaW5lLzI7XG4gIH1cbiAgdWwge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuODE1O1xuICB9XG59XG4udHlwZS1hc2lkZSBwIHtcbiAgZm9udC1zaXplOiAwLjgxNWVtO1xufVxuLyogZGVwcmVjYXRlZCBpbWFnZSB0eXBlPyAqL1xuLmltYWdlIHAge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZvbnQtc2l6ZTogMTBweDtcbn1cbi5pbWFnZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbnAud3AtbWVkaWEtY3JlZGl0IHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMC44MTU7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGNvbG9yOiBAZ3JheTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5wLndwLWNhcHRpb24tdGV4dCB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDVweCAwIDA7XG4gIGNvbG9yOiBAZ3JheTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5oYWxmLFxuLmZ1bGwsXG4uZXh0cmFjdCB7XG4gIG1hcmdpbjogMCAwIEBiYXNlbGluZTtcbn1cbi5oYWxmIHtcbiAgd2lkdGg6IDQwJTtcbn1cbi5mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZnVsbC1pbWFnZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGdyYXlMaWdodGVyO1xufVxuLnB1bGwtcXVvdGUsXG4udHlwZS1wdWxsLXF1b3RlIHtcbiAgZm9udDogQHNlcmlmRm9udEZhbWlseTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjU7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDFweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDIwcHggYXV0bztcbiAgICBiYWNrZ3JvdW5kOiBAZ3JheUxpZ2h0ZXI7XG4gIH1cblxuICBoNiB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICAgIG1hcmdpbjogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjU7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lLzQ7XG4gIH1cbn1cbi5EVi1jb250YWluZXIge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUvMztcbn1cbiIsIi8vIENhdGVnb3J5LCBUYWcgYW5kIFRheG9ub215IFBhZ2VzXG4uYXJjaGl2ZS1iYWNrZ3JvdW5kIHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lO1xuICBwYWRkaW5nLWJvdHRvbTogQGJhc2VsaW5lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQGdyYXlMaWdodGVyO1xuICBoMSB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMi43NTtcbiAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gIH1cbiAgcCB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZS8zO1xuICB9XG4gIC5yZWxhdGVkLXRvcGljcyB7XG4gICAgZm9udC1mYW1pbHk6IEBzYW5zRm9udEZhbWlseTtcblx0dWwge1xuXHQgIGZsb2F0OiBsZWZ0O1xuXHQgIHdpZHRoOiAxMDAlO1xuXHQgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cdCAgbWFyZ2luOiAwO1xuXHQgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcblx0ICBsaW5lLWhlaWdodDogMS4zO1xuXHQgIGxpIHtcblx0ICAgIGRpc3BsYXk6IGlubGluZTtcblx0ICAgIG1hcmdpbjogMDtcblx0ICAgIHBhZGRpbmc6IDA7XG5cdCAgICAmOmZpcnN0LWNoaWxkIHtcblx0XHQgIG1hcmdpbi1yaWdodDogNXB4O1xuXHQgICAgfVxuXHQgICAgJjphZnRlciB7XG5cdCAgICAgIGNvbnRlbnQ6IFwiLCBcIjtcblx0ICAgIH1cblx0ICAgICY6Zmlyc3QtY2hpbGQ6YWZ0ZXIsXG5cdCAgICAmOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuXHQgICAgICBjb250ZW50OiBcIlwiO1xuXHQgICAgfVxuXHQgIH1cbiAgICB9XG4gIH1cbiAgLnJzcy1zdWJzY3JpYmUtbGluayB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgZm9udC1mYW1pbHk6IEBzYW5zRm9udEZhbWlseTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiBAcnNzO1xuICAgIGkge1xuXHQgIHBhZGRpbmctbGVmdDogM3B4O1xuXHQgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ICB0b3A6IC0ycHg7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6IGRhcmtlbihAcnNzLCAxNSUpO1xuICAgIH1cbn1cbn1cbi5hcmNoaXZlIC5oZXJvIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMWVtIDA7XG4gIC53cC1jYXB0aW9uLXRleHQsXG4gIC53cC1tZWRpYS1jcmVkaXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbmFydGljbGUgZGl2Lmhhcy10aHVtYm5haWwge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1heC13aWR0aDogMzAlO1xuICBtYXJnaW46IDAgMCAxMHB4IDIwcHg7XG59XG5hcnRpY2xlIGltZy5hdHRhY2htZW50LXBvc3QtdGh1bWJuYWlsIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4vLyBoaWVyYXJjaGljYWwgY2F0ZWdvcnkgcGFnZXNcbi5wcmltYXJ5LWZlYXR1cmVkLXBvc3QsXG4uc2Vjb25kYXJ5LWZlYXR1cmVkLXBvc3Qge1xuICBwYWRkaW5nOiAwIDAgMjRweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBncmF5TGlnaHRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbn1cbi5wcmltYXJ5LWZlYXR1cmVkLXBvc3Qge1xuICBoMiB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUvMztcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAyLjI1O1xuICB9XG4gIC5lbnRyeS1jb250ZW50IHAsXG4gIC5lbnRyeS1jb250ZW50IHVsLFxuICAuZW50cnktY29udGVudCBvbCB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICB9XG59XG4uc2Vjb25kYXJ5LWZlYXR1cmVkLXBvc3Qge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gIGltZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuMjU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOjk2MHB4KXtcbiAgLnNlY29uZGFyeS1mZWF0dXJlZC1wb3N0IHtcbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjU7XG4gICAgfVxuICB9XG59XG5cbi8vIHBvc3RzIG9uIGFyY2hpdmUgcGFnZXNcbi5hcmNoaXZlLFxuLmhvbWUge1xuICAuc3RvcmllcyAuaGVyby5pcy1pbWFnZSBpbWcge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG4gIC5lbnRyeS1jb250ZW50IHtcbiAgICAmLndpdGgtaGVybyB7XG4gICAgICBtYXJnaW46IC0yMnB4IDclIDA7XG4gICAgICBwYWRkaW5nOiAyMnB4IDE4cHg7XG4gICAgICB3aWR0aDogODYlO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIG1hcmdpbjogOHB4IDAgMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIGg1LmJ5bGluZSB7XG4gICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjgxNTtcbiAgICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDI7XG4gICAgfVxuICB9XG59XG5cbi8vIERhdGUgQXJjaGl2ZVxuLmFyY2hpdmUtZHJvcGRvd24ge1xuICBtYXJnaW46IEBiYXNlbGluZS8yIDA7XG59XG5cbi8vIFNlcmllcyBMYW5kaW5nc1xuI3Nlcmllcy1mb290ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbiNzZXJpZXMtbWFpbiAjY29udGVudCB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZTtcbn1cbiNzZXJpZXMtaGVhZGVyIC5ieWxpbmUgdGltZSxcbiNzZXJpZXMtaGVhZGVyIC5ieWxpbmUgLnNlcCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8vIExvYWQgbW9yZSBwb3N0c1xuLmxvYWQtbW9yZSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5sb2FkaW5nIC5sb2FkLW1vcmUge1xuICBwYWRkaW5nLXJpZ2h0OiAzMnB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3dwLWFkbWluL2ltYWdlcy9sb2FkaW5nLmdpZik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDk2JSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4iLCIvKipcbiAqIFN0eWxlcyBmb3Igc2VhcmNoIGZvcm1zIGFuZCBzZWFyY2ggcmVzdWx0c1xuICpcbiAqIFN0eWxlcyBmb3IgdGhlIGdsb2JhbCBuYXYgc2VhcmNoIGFyZSBpbiBsZXNzL2luYy9oZWFkZXIubGVzc1xuICovXG5cbi8vIFNlYXJjaCBSZXN1bHRzXG4uYXJjaGl2ZS5zZWFyY2gtcmVzdWx0cyB7XG4gIC5pbnB1dC1hcHBlbmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAuZm9ybS1zZWFyY2gge1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICBpbnB1dCB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gICAgYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMCU7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cbiAgfVxuICAuc2VhcmNoLXRlcm0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBncmF5TGlnaHRlcjtcbiAgICBwYWRkaW5nOiAxcHggNXB4O1xuICB9XG4gIGgzIC5yc3MtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgfVxuICBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQGdyYXk7XG4gIH1cblxuICAuc3RvcmllcyB7XG4gICAgYXJ0aWNsZSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICB9XG4gIH1cbiAgLy8gTm8gc3BhY2luZyBhZnRlciBwYXJhZ3JhcGgsIHNlZSBodHRwczovL2dpdGh1Yi5jb20vSU5OL0xhcmdvL3B1bGwvMTE3N1xuICAuZW50cnktY29udGVudCBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5kYXRlLWxpbmsgYSxcbiAgLmRhdGUtbGluayB7XG4gICAgY29sb3I6IEBncmF5O1xuICB9XG59XG4uc2VhcmNoLXJlc3VsdHMgI2NvbnRlbnQgLmZvcm0tc2VhcmNoIHtcbn1cblxuLyogR29vZ2xlIENTRSAqL1xuLmdjc19jb250YWluZXIge1xuICBtYXJnaW46IDIwcHggMDtcblxuICB0YWJsZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgdGFibGUsXG4gIHRib2R5LFxuICB0cixcbiAgdGQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIC5nc2Mtc2VhcmNoLWJveCB7XG4gICAgbWFyZ2luOiAxOHB4IDA7XG4gICAgLmdzc3RfYSAuZ3NjYl9hIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogM3B4O1xuICAgIH1cbiAgICB0ZC5nc2liX2Ege1xuICAgICAgcGFkZGluZzogMCA2cHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuZ3NjLWNvbnRyb2wtY3NlIHtcbiAgICAuZ3MtcmVzdWx0IHtcbiAgICAgIC5ncy10aXRsZSxcbiAgICAgIC5ncy10aXRsZSAqIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnN0aWNreS1yZWxhdGVkLFxuLnN0aWNreS1zb2xvIHtcbiAgYSB7XG4gICAgJjpob3ZlciB7XG4gICAgICAub3BhY2l0eSg5MCk7XG4gICAgfVxuICB9XG59XG4uc3RpY2t5LW1haW4tZmVhdHVyZSB7XG4gIC5pbWFnZS13cmFwIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBpbWcge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgICYuc3BhbjMgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICBoMiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuICBwIHtcbiAgICBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gIH1cbn1cbi5zdGlja3ktZmVhdHVyZXMtbGlzdCB7XG4gIGg0IHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjI7XG4gICAgbWFyZ2luOiAwIDAgOHB4IDA7XG4gIH1cbiAgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICYuc3RpY2t5LWFsbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgLnN0aWNreS1tYWluLWZlYXR1cmUge1xuICAgIC5pbWFnZS13cmFwIGltZyB7XG4gICAgICBtYXJnaW46IDAgMTVweCAxNXB4IDA7XG4gICAgfVxuICAgIGg1LmJ5bGluZSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gICAgLnNwYW45IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzYwcHgpIHtcbiAgLnN0aWNreS1tYWluLWZlYXR1cmUge1xuICAgIC5oaWRkZW4tcGhvbmUge1xuICAgICAgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAudmlzaWJsZS1waG9uZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIFNpbmdsZSAtIFN0eWxpbmcgZm9yIHNpbmdsZSBwb3N0cyAmIHBhZ2VzLlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIDEuMCAtIE5vcm1hbCBsYXlvdXQgb3ZlcnJpZGVzIChvdmVycmlkZSB0d28gY29sdW1uIGRpc3BsYXkpXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5ib2R5Lm5vcm1hbC5zaW5nbGUtcG9zdCxcbmJvZHkubm9ybWFsLnBhZ2Uge1xuXG4gIC8qIDEuMSAtIEhlYWRlciAqL1xuXG4gIGFydGljbGUucG9zdCA+IGhlYWRlcixcbiAgYXJ0aWNsZS5wYWdlID4gaGVhZGVyIHtcblxuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbjogMjRweCAxNy4wMjEzJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyB0b3AgZGF0ZVxuICAgIGg1LnRvcC1kYXRlIHtcbiAgICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAtIDI7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLy8gdG9wIHRhZ1xuICAgIGg1LnRvcC10YWcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICBwYWRkaW5nLXRvcDogMjZweDtcbiAgICB9XG5cbiAgICAvLyBzdWJ0aXRsZVxuICAgIGgyLnN1YnRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuMjIyO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgIH1cblxuICAgIC8vIGhpZGUgbm9ybWFsIGRhdGUgZGlzcGxheS5cbiAgICAuc2VwLFxuICAgIC5lbnRyeS1kYXRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gZWRpdCBsaW5rXG4gICAgLmVkaXQtbGluayB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIDEuMiAtIEhlcm8gKi9cbiAgXG4gIC5oZXJvIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgMCAyNHB4O1xuICAgICYuaXMtZ2FsbGVyeSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgcC53cC1jYXB0aW9uLXRleHQsXG4gICAgcC53cC1tZWRpYS1jcmVkaXQge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgLSAyO1xuICAgICAgbWFyZ2luOjAgMTcuMDIxMyUgMTJweDtcbiAgICAgIHBhZGRpbmctdG9wOiA0cHg7XG4gICAgfVxuICAgIHAud3AtbWVkaWEtY3JlZGl0IHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgbWluLWhlaWdodDogMDtcbiAgICB9XG4gICAgJi5pcy12aWRlbyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgICAgLmVtYmVkLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICAgICYuaXMtZW1wdHkge1xuICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAvKiAxLjMgLSBTaWRlYmFyIChsZWZ0IG9mIHBvc3QpICovXG5cbiAgLnNpbmdsZSAjbWFpbiAjc2lkZWJhciB7XG4gICAgICAvKiBhbGwgdG8gdW5kbyBib290c3RyYXAgKi9cbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgLndpZGdldCB7XG4gICAgICAvKiBmbG9hdCB3aWRnZXRzICovXG4gICAgICBmbG9hdDogbGVmdDsgXG4gICAgICBjbGVhcjogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IC8vIGFkZCBwYWRkaW5nIGZvciBndXR0ZXIgYmV0d2VlbiBib2R5IHRleHQgJiBzaWRlYmFyXG4gICAgICB3aWR0aDogMTcuMDIxMjc2NTk0JSAtIEBmbHVpZEdyaWRHdXR0ZXJXaWR0aDtcbiAgICB9XG4gICAgLndpZGdldDpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMDsgLy8gZmlyc3Qgd2lkZ2V0IGZsdXNoIHdpdGggdG9wIG9mIGFydGljbGVcbiAgICB9XG4gIH1cblxuICAvKiAxLjQgLSBFbnRyeSBDb250ZW50ICh0aGUgbWFpbiBwb3N0IGNvbnRlbnQpICovXG5cbiAgLmVudHJ5LWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDAgMTcuMDIxMjc2NTk0JTtcbiAgfVxuXG5cbiAgcC5pbnRybyxcbiAgcC53cC1jYXB0aW9uLXRleHQge1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxuXG4gIC8qIDEuNSAtIEFydGljbGUgQm90dG9tIChhZnRlciBwb3N0IGNvbnRlbnQpICovXG5cbiAgLmFydGljbGUtYm90dG9tIHtcbiAgICBtYXJnaW46IDAgMTcuMDIxMjc2NTk0JTtcbiAgICAucG9zdC1zb2NpYWwge1xuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgI2NvbW1lbnRzLFxuICAjZGlzcXVzX3RocmVhZCB7XG4gICAgbWFyZ2luOiAwIDE3LjAyMTI3NjU5NCU7XG4gIH1cblxuICAvKiAxLjYgLSBPdmVycmlkZXMgKi9cblxuICBAbWVkaWEgQHRhYmxldERvd24ge1xuICAuc2luZ2xlICNtYWluICNzaWRlYmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5hcnRpY2xlLWJvdHRvbSxcbiAgICAjY29tbWVudHMsXG4gICAgI2Rpc3F1c190aHJlYWQge1xuICAgICAgbWFyZ2luOiAwIEBmbHVpZEdyaWRDb2x1bW5XaWR0aDtcbiAgICB9XG4gICAgYXJ0aWNsZS5wb3N0ID4gaGVhZGVyIHtcbiAgICAgIG1hcmdpbjogMjRweCBAZmx1aWRHcmlkQ29sdW1uV2lkdGg7XG4gICAgfVxuICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDAgQGZsdWlkR3JpZENvbHVtbldpZHRoO1xuICAgIH1cbiAgICAuaGVybyB7XG4gICAgICBwLndwLWNhcHRpb24tdGV4dCxcbiAgICAgIHAud3AtbWVkaWEtY3JlZGl0IHtcbiAgICAgICAgbWFyZ2luOjAgQGZsdWlkR3JpZEd1dHRlcldpZHRoIDEycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIEBtb2JpbGUge1xuICAgIC5hcnRpY2xlLWJvdHRvbSxcbiAgICAjY29tbWVudHMsXG4gICAgI2Rpc3F1c190aHJlYWQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICBhcnRpY2xlLnBvc3QgPiBoZWFkZXIge1xuICAgICAgbWFyZ2luOiAyNHB4IDA7XG4gICAgfVxuICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAyLjAgLSBFbnRyeSBFbGVtZW50IFN0eWxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogMi4xIC0gQnlsaW5lICovXG5cbi5ieWxpbmUge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAyO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjkxNTtcbiAgYSB7XG4gICAgY29sb3I6IEB0ZXh0Q29sb3I7XG4gIH1cbiAgLmF1dGhvcixcbiAgLnRpbWUtYWdvLFxuICAuZWRpdC1saW5rIGEge1xuICAgIC8qdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsqL1xuICB9XG4gIC5hdXRob3Ige1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC50aW1lLWFnbyxcbiAgLmVkaXQtbGluayBhIHtcbiAgICBjb2xvcjogQHJlZDtcbiAgfVxufVxuXG4vKiAyLjIgLSBTb2NpYWwgbWVkaWEgbGlua3MgKi9cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5wb3N0LXNvY2lhbCA+IHNwYW4ge1xuICAgIG1pbi13aWR0aDogNTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAucG9zdC1zb2NpYWwgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLy8gRnVkZ2luZyB0byBwcmV2ZW50IG92ZXJsYXAgYmV0d2VlbiB0aGUgaWNvbiBhbmQgdGhlIHRleHRcbiAgLnBvc3Qtc29jaWFsIGkge1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuMmVtO1xuICB9XG59XG5cbi5wb3N0LXNvY2lhbCB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZTtcbiAgJiA+IHNwYW4ge1xuICAgIC8vIGNvcGllZCBmcm9tIHdpZGdldHMvbGFyZ28tZm9sbG93Lmxlc3NcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICBtYXJnaW46IDAuNWVtIDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgY29sb3I6IEB3aGl0ZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgICYgPiBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMC4zZW0gMWVtIDAuM2VtIDAuNWVtOyAvLyBJcnJlZ3VsYXIgcGFkZGluZyBpcyB0byBjb3VudGVyIDAuMmVtIG1hcmdpbi1sZWZ0IG9uIHRoZSBpY29uLlxuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgcGFkZGluZzogMC4zZW0gMC42ZW07XG4gICAgICB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgcGFkZGluZzogMC4zZW0gMC4yZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGEge1xuICAgIGNvbG9yOiBAd2hpdGU7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogQHdoaXRlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuICBpLCAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAuZW1haWw6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICAubW9yZS1zb2NpYWwtbGlua3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBvcmFuZ2U7XG4gICAgY29sb3I6IEB3aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oQG9yYW5nZSwgNSUpO1xuICAgIH1cblxuICAgIC5wb3BvdmVyIHtcbiAgICAgIHRvcDogNDBweDtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiBAZ3JheTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IEBncmF5RGFyaztcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpIHtcbiAgICAgICAgY29sb3I6IEBncmF5TGlnaHQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC4yNWVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgdWwsIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyOHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMDtcblxuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgcmlnaHQ6IDE5cHg7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2Zsb2F0aW5nLXNvY2lhbC1idXR0b25zIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICBib3JkZXI6IDFweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gIC5oaWRkZW4tcGhvbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAucG9zdC1zb2NpYWwge1xuICAgICYgPiBzcGFuIHtcbiAgICAgIHBhZGRpbmctbGVmdDogLTEwMCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG5cbiAgICAgICY6aG92ZXIgeyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuICAgICAgJiA+IGEge1xuICAgICAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMThweDtcbiAgICAgICAgbWluLXdpZHRoOiAyOHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiAyOHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmID4gLmVtYWlsOmhvdmVyLFxuICAgICYgPiBzcGFuOmhvdmVyID4gYSB7XG4gICAgICBjb2xvcjogQHdoaXRlO1xuICAgIH1cbiAgfVxuICAucnNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2hpdGU7XG4gICAgY29sb3I6IEBncmF5TGlnaHRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAcnNzLCA1JSk7XG4gICAgfVxuICB9XG4gIC50d2l0dGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2hpdGU7XG4gICAgY29sb3I6IEBncmF5TGlnaHRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAdHdpdHRlciwgNSUpO1xuICAgIH1cbiAgfVxuICAuZmFjZWJvb2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBmYWNlYm9vaywgNSUpO1xuICAgIH1cbiAgfVxuICAubGlua2VkaW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBsaW5rZWRpbiwgNSUpO1xuICAgIH1cbiAgfVxuICAuZ3BsdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBncGx1cywgNSUpO1xuICAgIH1cbiAgfVxuICAuZmxpY2tyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2hpdGU7XG4gICAgY29sb3I6IEBncmF5TGlnaHRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAZmxpY2tyLCA1JSk7XG4gICAgfVxuICB9XG4gIC55b3V0dWJlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2hpdGU7XG4gICAgY29sb3I6IEBncmF5TGlnaHRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAeW91dHViZSwgNSUpO1xuICAgIH1cbiAgfVxuICAucHJpbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCM4NTg5OEYsIDUlKTtcbiAgICB9XG4gIH1cbiAgLmVtYWlsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2hpdGU7XG4gICAgY29sb3I6IEBncmF5TGlnaHRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigjNjI2NTZGLCA1JSk7XG4gICAgfVxuICB9XG4gIC5tb3JlLXNvY2lhbC1saW5rcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdoaXRlO1xuICAgIGNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gICAgYS5wb3BwZWQsXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAb3JhbmdlO1xuICAgICAgY29sb3I6IEB3aGl0ZTtcbiAgICB9XG5cbiAgICAucG9wb3ZlciB7XG4gICAgICB0b3A6IDY4cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgIGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogQGdyYXk7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiBAZ3JheURhcms7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNvY2lhbC1idG4ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgIG1hcmdpbjogMC41ZW0gMDtcbiAgICBwYWRkaW5nOiAwLjVlbTtcbiAgfVxuICAucG9zdC1zb2NpYWwge1xuICAgIGE6aG92ZXIgaSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vKiAyLjMgLSBEZWZhdWx0IFdQIFBvc3QgUGFnaW5hdGlvbiBcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogTk9URTogTGFyZ28gaGFzIGEgd2lkZ2V0IHRvIGhhbmRsZSBwb3N0IHBhZ2luYXRpb24sIHRoZXNlIHN0eWxlIGRlZmF1bHQgV1Agb3V0cHV0XG4gKlxuICogQHNlZSAvbGVzcy9pbmMvd2lkZ2V0cy9sYXJnby1wcmV2LW5leHQtbGlua3MubGVzc1xuICovXG4ucG9zdC1wYWdpbmF0aW9uIHtcbiAgYSwgc3BhbiB7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjgxNTtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLyogMi40IC0gUG9zdCBtZXRhICovXG5cbi5sYWJlbHMsXG4udGFncyxcbi5wYWdlcixcbi50YWdzLFxuLnBhZ2VyIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xufVxuXG4uc2luZ2xlLXBvc3QgLmF1dGhvci1ib3gsXG4uc2luZ2xlLWFyZ29saW5rcm91bmR1cHMgLmF1dGhvci1ib3gsXG4ubGFiZWxzIHtcbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuMjtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4ubGFiZWxzIC5zZXJpZXMtbGFiZWwgaDUge1xuICBhLnJzcy1saW5rIHtcbiAgICBmbG9hdDpyaWdodDtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgY29sb3I6ICNmODk0MDY7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICsgMjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIC5vcGFjaXR5KDg1KTtcbiAgICB9XG4gIH1cbn1cblxuLyogMi41IC0gTGFibGVzICovXG5cbi5zZXJpZXMtbGFiZWwge1xuICBtYXJnaW46IDVweDtcbiAgcGFkZGluZzogOHB4O1xuICBoNSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjgxNTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4iLCIuaG9tZSAuc3RvcmllcyBhcnRpY2xlIGltZy5hdHRhY2htZW50LW1lZGl1bSxcbi5zdWItc3RvcmllcyBpbWcuYXR0YWNobWVudC1wb3N0LXRodW1ibmFpbCB7XG4gIG1heC13aWR0aDogMzAlO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMCAwIDEwcHggMjBweDtcbn1cblxuI2hvbWVwYWdlLWJvdHRvbSB7XG4gIG1hcmdpbi10b3A6IEBiYXNlbGluZTtcbiAgLndpZGdldCB7XG4gICAgd2lkdGg6IDQyLjUlO1xuICAgIHBhZGRpbmc6IDIuNSU7XG4gICAgJi5vZGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgICAmLmV2ZW4ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgY2xlYXI6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwiaW5jL3ZhcmlhYmxlcy5sZXNzXCI7XG5AaW1wb3J0IFwiaW5jL21peGlucy5sZXNzXCI7XG5AaW1wb3J0IFwiaW5jL3R5cG9ncmFwaHkubGVzc1wiO1xuQGltcG9ydCBcImluYy9wb3N0cy1hbmQtcGFnZXMubGVzc1wiO1xuXG5odG1sIC5tY2VDb250ZW50Qm9keSB7XG5cdHdpZHRoOiA5NSU7XG5cdG1heC13aWR0aDogNzcxcHg7XG5cdG1hcmdpbjogMCAyLjUlO1xufVxuIl19 */ \ No newline at end of file +/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxlc3MvaW5jL21peGlucy5sZXNzIiwibGVzcy9pbmMvdHlwb2dyYXBoeS5sZXNzIiwibGVzcy9pbmMvdmFyaWFibGVzLmxlc3MiLCJsZXNzL2luYy9wb3N0cy1hbmQtcGFnZXMubGVzcyIsImxlc3MvaW5jL2FyY2hpdmVzLmxlc3MiLCJsZXNzL2luYy9zZWFyY2gubGVzcyIsImxlc3MvaW5jL3N0aWNreS5sZXNzIiwibGVzcy9pbmMvc2luZ2xlLmxlc3MiLCJsZXNzL2luYy9ob21lcGFnZS5sZXNzIiwibGVzcy9lZGl0b3Itc3R5bGUubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVVBO0VBQ0UsUUFBQTs7QUFDQSxTQUFDO0FBQ0QsU0FBQztFQUNDLGNBQUE7RUFDQSxTQUFTLEVBQVQ7O0FBRUYsU0FBQztFQUNDLFdBQUE7O0FBT0o7RUFDRSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBTSxhQUFOO0VBQ0EsV0FBQTtFQUFhLFVBQUE7RUFDYixZQUFBO0VBQWMsVUFBQTtFQUFZLFNBQUE7O0FBTTVCO0VBQ0UsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSw2QkFBQTtFQUNBLFNBQUE7O0FBSUY7RUFDRSxjQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBd1BBLDhCQUFBO0VBQ0csMkJBQUE7RUFDQywwQkFBQTtFQUNJLHNCQUFBOztBQzNTVjtFQUNFLFNBQUE7RUFDQSxzQkNxSitCLCtCRHJKL0I7RUFDQSxlQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSx5QkFBQTs7QUFFRjtFQUNFLHlCQUFBO0VBQ0EsZUFBQTs7QUFPRjtFQUNFLGNBQUE7RUFDQSxxQkFBQTs7QUFDQSxDQUFDO0VBQ0MsY0FBQTtFQUNBLDBCQUFBOztBQUVGLENBQUM7RUFDQyxt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cGV0cyBvZiByZXVzYWJsZSBDU1MgdG8gZGV2ZWxvcCBmYXN0ZXIgYW5kIGtlZXAgY29kZSByZWFkYWJsZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVVRJTElUWSBNSVhJTlNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIENsZWFyZml4XG4vLyAtLS0tLS0tLVxuLy8gRm9yIGNsZWFyaW5nIGZsb2F0cyBsaWtlIGEgYm9zcyBoNWJwLmNvbS9xXG4uY2xlYXJmaXgge1xuICAqem9vbTogMTtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBIaWRlIGFuIGl0ZW0gdmlzdWFsbHkgb25seVxuLnZpc3VhbGx5aGlkZGVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICBoZWlnaHQ6IDFweDsgd2lkdGg6IDFweDtcbiAgbWFyZ2luOiAtMXB4OyBwYWRkaW5nOiAwOyBib3JkZXI6IDA7XG59XG5cbi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9jb21taXQvYWEwMzk2ZWFlNzU3XG4uaGlkZS10ZXh0IHtcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi8vIEJsb2NrIGxldmVsIGZvcm0gaW5wdXRzXG4uaW5wdXQtYmxvY2stbGV2ZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDI4cHg7ICAgICAgICAvLyBNYWtlIGlucHV0cyBhdCBsZWFzdCB0aGUgaGVpZ2h0IG9mIHRoZWlyIGJ1dHRvbiBjb3VudGVycGFydFxuICAuYm94LXNpemluZyhib3JkZXItYm94KTsgLy8gTWFrZXMgaW5wdXRzIGJlaGF2ZSBsaWtlIHRydWUgYmxvY2stbGV2ZWwgZWxlbWVudHNcbn1cblxuLy8gV2Via2l0LXN0eWxlIGZvY3VzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cbi50YWItZm9jdXMoKSB7XG4gIC8vIERlZmF1bHRcbiAgb3V0bGluZTogdGhpbiBkb3R0ZWQgIzMzMztcbiAgLy8gV2Via2l0XG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG59XG5cbi8vIENlbnRlci1hbGlnbiBhIGJsb2NrIGxldmVsIGVsZW1lbnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5jZW50ZXItYmxvY2soKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vLyBJRTcgaW5saW5lLWJsb2NrXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG4uaWU3LWlubGluZS1ibG9jaygpIHtcbiAgKmRpc3BsYXk6IGlubGluZTsgLyogSUU3IGlubGluZS1ibG9jayBoYWNrICovXG4gICp6b29tOiAxO1xufVxuXG4vLyBJRTcgbGlrZXMgdG8gY29sbGFwc2Ugd2hpdGVzcGFjZSBvbiBlaXRoZXIgc2lkZSBvZiB0aGUgaW5saW5lLWJsb2NrIGVsZW1lbnRzLlxuLy8gRW1zIGJlY2F1c2Ugd2UncmUgYXR0ZW1wdGluZyB0byBtYXRjaCB0aGUgd2lkdGggb2YgYSBzcGFjZSBjaGFyYWN0ZXIuIExlZnRcbi8vIHZlcnNpb24gaXMgZm9yIGZvcm0gYnV0dG9ucywgd2hpY2ggdHlwaWNhbGx5IGNvbWUgYWZ0ZXIgb3RoZXIgZWxlbWVudHMsIGFuZFxuLy8gcmlnaHQgdmVyc2lvbiBpcyBmb3IgaWNvbnMsIHdoaWNoIGNvbWUgYmVmb3JlLiBBcHBseWluZyBib3RoIGlzIG9rLCBidXQgaXQgd2lsbFxuLy8gbWVhbiB0aGF0IHNwYWNlIGJldHdlZW4gdGhvc2UgZWxlbWVudHMgd2lsbCBiZSAuNmVtICh+MiBzcGFjZSBjaGFyYWN0ZXJzKSBpbiBJRTcsXG4vLyBpbnN0ZWFkIG9mIHRoZSAxIHNwYWNlIGluIG90aGVyIGJyb3dzZXJzLlxuLmllNy1yZXN0b3JlLWxlZnQtd2hpdGVzcGFjZSgpIHtcbiAgKm1hcmdpbi1sZWZ0OiAuM2VtO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgICptYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uaWU3LXJlc3RvcmUtcmlnaHQtd2hpdGVzcGFjZSgpIHtcbiAgKm1hcmdpbi1yaWdodDogLjNlbTtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgICptYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4vLyBTaXppbmcgc2hvcnRjdXRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2l6ZShAaGVpZ2h0LCBAd2lkdGgpIHtcbiAgd2lkdGg6IEB3aWR0aDtcbiAgaGVpZ2h0OiBAaGVpZ2h0O1xufVxuLnNxdWFyZShAc2l6ZSkge1xuICAuc2l6ZShAc2l6ZSwgQHNpemUpO1xufVxuXG4vLyBQbGFjZWhvbGRlciB0ZXh0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucGxhY2Vob2xkZXIoQGNvbG9yOiBAcGxhY2Vob2xkZXJUZXh0KSB7XG4gICY6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IEBjb2xvcjtcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IEBjb2xvcjtcbiAgfVxuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogQGNvbG9yO1xuICB9XG59XG5cbi8vIFRleHQgb3ZlcmZsb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcbi50ZXh0LW92ZXJmbG93KCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuXG4vLyBGT05UU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuI2ZvbnQge1xuICAjZmFtaWx5IHtcbiAgICAuc2VyaWYoKSB7XG4gICAgICBmb250LWZhbWlseTogQHNlcmlmRm9udEZhbWlseTtcbiAgICB9XG4gICAgLnNhbnMtc2VyaWYoKSB7XG4gICAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICAgIH1cbiAgICAubW9ub3NwYWNlKCkge1xuICAgICAgZm9udC1mYW1pbHk6IEBtb25vRm9udEZhbWlseTtcbiAgICB9XG4gIH1cbiAgLnNob3J0aGFuZChAc2l6ZTogQGJhc2VGb250U2l6ZSwgQHdlaWdodDogbm9ybWFsLCBAbGluZUhlaWdodDogQGJhc2VMaW5lSGVpZ2h0KSB7XG4gICAgZm9udC1zaXplOiBAc2l6ZTtcbiAgICBmb250LXdlaWdodDogQHdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogQGxpbmVIZWlnaHQ7XG4gIH1cbiAgLnNlcmlmKEBzaXplOiBAYmFzZUZvbnRTaXplLCBAd2VpZ2h0OiBub3JtYWwsIEBsaW5lSGVpZ2h0OiBAYmFzZUxpbmVIZWlnaHQpIHtcbiAgICAjZm9udCA+ICNmYW1pbHkgPiAuc2VyaWY7XG4gICAgI2ZvbnQgPiAuc2hvcnRoYW5kKEBzaXplLCBAd2VpZ2h0LCBAbGluZUhlaWdodCk7XG4gIH1cbiAgLnNhbnMtc2VyaWYoQHNpemU6IEBiYXNlRm9udFNpemUsIEB3ZWlnaHQ6IG5vcm1hbCwgQGxpbmVIZWlnaHQ6IEBiYXNlTGluZUhlaWdodCkge1xuICAgICNmb250ID4gI2ZhbWlseSA+IC5zYW5zLXNlcmlmO1xuICAgICNmb250ID4gLnNob3J0aGFuZChAc2l6ZSwgQHdlaWdodCwgQGxpbmVIZWlnaHQpO1xuICB9XG4gIC5tb25vc3BhY2UoQHNpemU6IEBiYXNlRm9udFNpemUsIEB3ZWlnaHQ6IG5vcm1hbCwgQGxpbmVIZWlnaHQ6IEBiYXNlTGluZUhlaWdodCkge1xuICAgICNmb250ID4gI2ZhbWlseSA+IC5tb25vc3BhY2U7XG4gICAgI2ZvbnQgPiAuc2hvcnRoYW5kKEBzaXplLCBAd2VpZ2h0LCBAbGluZUhlaWdodCk7XG4gIH1cbn1cblxuXG4vLyBGT1JNU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTWl4aW4gZm9yIGZvcm0gZmllbGQgc3RhdGVzXG4uZm9ybUZpZWxkU3RhdGUoQHRleHRDb2xvcjogIzU1NSwgQGJvcmRlckNvbG9yOiAjY2NjLCBAYmFja2dyb3VuZENvbG9yOiAjZjVmNWY1KSB7XG4gIC8vIFNldCB0aGUgdGV4dCBjb2xvclxuICA+IGxhYmVsLFxuICAuaGVscC1ibG9jayxcbiAgLmhlbHAtaW5saW5lIHtcbiAgICBjb2xvcjogQHRleHRDb2xvcjtcbiAgfVxuICAvLyBTdHlsZSBpbnB1dHMgYWNjb3JkaW5nbHlcbiAgLmNoZWNrYm94LFxuICAucmFkaW8sXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBjb2xvcjogQHRleHRDb2xvcjtcbiAgICBib3JkZXItY29sb3I6IEBib3JkZXJDb2xvcjtcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKEBib3JkZXJDb2xvciwgMTAlKTtcbiAgICAgIC5ib3gtc2hhZG93KDAgMCA2cHggbGlnaHRlbihAYm9yZGVyQ29sb3IsIDIwJSkpO1xuICAgIH1cbiAgfVxuICAvLyBHaXZlIGEgc21hbGwgYmFja2dyb3VuZCBjb2xvciBmb3IgaW5wdXQtcHJlcGVuZC8tYXBwZW5kXG4gIC5pbnB1dC1wcmVwZW5kIC5hZGQtb24sXG4gIC5pbnB1dC1hcHBlbmQgLmFkZC1vbiB7XG4gICAgY29sb3I6IEB0ZXh0Q29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGJhY2tncm91bmRDb2xvcjtcbiAgICBib3JkZXItY29sb3I6IEB0ZXh0Q29sb3I7XG4gIH1cbn1cblxuXG5cbi8vIENTUzMgUFJPUEVSVElFU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQm9yZGVyIFJhZGl1c1xuLmJvcmRlci1yYWRpdXMoQHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IEByYWRpdXM7XG4gICAgIC1tb3otYm9yZGVyLXJhZGl1czogQHJhZGl1cztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xufVxuXG4vLyBEcm9wIHNoYWRvd3Ncbi5ib3gtc2hhZG93KEBzaGFkb3cpIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBAc2hhZG93O1xuICAgICAtbW96LWJveC1zaGFkb3c6IEBzaGFkb3c7XG4gICAgICAgICAgYm94LXNoYWRvdzogQHNoYWRvdztcbn1cblxuLy8gVHJhbnNpdGlvbnNcbi50cmFuc2l0aW9uKEB0cmFuc2l0aW9uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG4gICAgIC1tb3otdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG4gICAgICAtbXMtdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uc1xuLnJvdGF0ZShAZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKEBkZWdyZWVzKTtcbiAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoQGRlZ3JlZXMpO1xuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKEBkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7XG59XG4uc2NhbGUoQHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZShAcmF0aW8pO1xuICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoQHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKEByYXRpbyk7XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZShAcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoQHJhdGlvKTtcbn1cbi50cmFuc2xhdGUoQHgsIEB5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoQHgsIEB5KTtcbiAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSk7XG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoQHgsIEB5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHkpO1xufVxuLnNrZXcoQHgsIEB5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KEB4LCBAeSk7XG4gICAgIC1tb3otdHJhbnNmb3JtOiBza2V3KEB4LCBAeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBza2V3KEB4LCBAeSk7XG4gICAgICAgLW8tdHJhbnNmb3JtOiBza2V3KEB4LCBAeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3KEB4LCBAeSk7XG59XG4udHJhbnNsYXRlM2QoQHgsIEB5LCBAeikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSwgQHopO1xuICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSwgQHopO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSwgQHopO1xuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSwgQHopO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSwgQHopO1xufVxuXG4vLyBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyBQcmV2ZW50IGJyb3dzZXJzIGZyb20gZmxpY2tlcmluZyB3aGVuIHVzaW5nIENTUyAzRCB0cmFuc2Zvcm1zLlxuLy8gRGVmYXVsdCB2YWx1ZSBpcyBgdmlzaWJsZWAsIGJ1dCBjYW4gYmUgY2hhbmdlZCB0byBgaGlkZGVuXG4vLyBTZWUgZ2l0IHB1bGwgaHR0cHM6Ly9naXRodWIuY29tL2Rhbm55a2VhbmUvYm9vdHN0cmFwLmdpdCBiYWNrZmFjZS12aXNpYmlsaXR5IGZvciBleGFtcGxlc1xuLmJhY2tmYWNlLXZpc2liaWxpdHkoQHZpc2liaWxpdHkpe1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IEB2aXNpYmlsaXR5O1xuICAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IEB2aXNpYmlsaXR5O1xuICAgICAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IEB2aXNpYmlsaXR5O1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IEB2aXNpYmlsaXR5O1xufVxuXG4vLyBCYWNrZ3JvdW5kIGNsaXBwaW5nXG4vLyBIZWFkcyB1cDogRkYgMy42IGFuZCB1bmRlciBuZWVkIFwicGFkZGluZ1wiIGluc3RlYWQgb2YgXCJwYWRkaW5nLWJveFwiXG4uYmFja2dyb3VuZC1jbGlwKEBjbGlwKSB7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiBAY2xpcDtcbiAgICAgLW1vei1iYWNrZ3JvdW5kLWNsaXA6IEBjbGlwO1xuICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogQGNsaXA7XG59XG5cbi8vIEJhY2tncm91bmQgc2l6aW5nXG4uYmFja2dyb3VuZC1zaXplKEBzaXplKXtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IEBzaXplO1xuICAgICAtbW96LWJhY2tncm91bmQtc2l6ZTogQHNpemU7XG4gICAgICAgLW8tYmFja2dyb3VuZC1zaXplOiBAc2l6ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IEBzaXplO1xufVxuXG5cbi8vIEJveCBzaXppbmdcbi5ib3gtc2l6aW5nKEBib3htb2RlbCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6IEBib3htb2RlbDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiBAYm94bW9kZWw7XG4gICAgICAtbXMtYm94LXNpemluZzogQGJveG1vZGVsO1xuICAgICAgICAgIGJveC1zaXppbmc6IEBib3htb2RlbDtcbn1cblxuLy8gVXNlciBzZWxlY3Rcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxuLnVzZXItc2VsZWN0KEBzZWxlY3QpIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogQHNlbGVjdDtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogQHNlbGVjdDtcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogQHNlbGVjdDtcbiAgICAgICAtby11c2VyLXNlbGVjdDogQHNlbGVjdDtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogQHNlbGVjdDtcbn1cblxuLy8gUmVzaXplIGFueXRoaW5nXG4ucmVzaXphYmxlKEBkaXJlY3Rpb24pIHtcbiAgcmVzaXplOiBAZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxuICBvdmVyZmxvdzogYXV0bzsgLy8gU2FmYXJpIGZpeFxufVxuXG4vLyBDU1MzIENvbnRlbnQgQ29sdW1uc1xuLmNvbnRlbnQtY29sdW1ucyhAY29sdW1uQ291bnQsIEBjb2x1bW5HYXA6IEBncmlkR3V0dGVyV2lkdGgpIHtcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IEBjb2x1bW5Db3VudDtcbiAgICAgLW1vei1jb2x1bW4tY291bnQ6IEBjb2x1bW5Db3VudDtcbiAgICAgICAgICBjb2x1bW4tY291bnQ6IEBjb2x1bW5Db3VudDtcbiAgLXdlYmtpdC1jb2x1bW4tZ2FwOiBAY29sdW1uR2FwO1xuICAgICAtbW96LWNvbHVtbi1nYXA6IEBjb2x1bW5HYXA7XG4gICAgICAgICAgY29sdW1uLWdhcDogQGNvbHVtbkdhcDtcbn1cblxuLy8gT3B0aW9uYWwgaHlwaGVuYXRpb25cbi5oeXBoZW5zKEBtb2RlOiBhdXRvKSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBAbW9kZTtcbiAgICAgLW1vei1oeXBoZW5zOiBAbW9kZTtcbiAgICAgIC1tcy1oeXBoZW5zOiBAbW9kZTtcbiAgICAgICAtby1oeXBoZW5zOiBAbW9kZTtcbiAgICAgICAgICBoeXBoZW5zOiBAbW9kZTtcbn1cblxuLy8gT3BhY2l0eVxuLm9wYWNpdHkoQG9wYWNpdHkpIHtcbiAgb3BhY2l0eTogQG9wYWNpdHkgLyAxMDA7XG4gIGZpbHRlcjogflwiYWxwaGEob3BhY2l0eT1Ae29wYWNpdHl9KVwiO1xufVxuXG5cblxuLy8gQkFDS0dST1VORFNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEFkZCBhbiBhbHBoYXRyYW5zcGFyZW5jeSB2YWx1ZSB0byBhbnkgYmFja2dyb3VuZCBvciBib3JkZXIgY29sb3IgKHZpYSBFbHlzZSBIb2xsYWRheSlcbiN0cmFuc2x1Y2VudCB7XG4gIC5iYWNrZ3JvdW5kKEBjb2xvcjogQHdoaXRlLCBAYWxwaGE6IDEpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2xhKGh1ZShAY29sb3IpLCBzYXR1cmF0aW9uKEBjb2xvciksIGxpZ2h0bmVzcyhAY29sb3IpLCBAYWxwaGEpO1xuICB9XG4gIC5ib3JkZXIoQGNvbG9yOiBAd2hpdGUsIEBhbHBoYTogMSkge1xuICAgIGJvcmRlci1jb2xvcjogaHNsYShodWUoQGNvbG9yKSwgc2F0dXJhdGlvbihAY29sb3IpLCBsaWdodG5lc3MoQGNvbG9yKSwgQGFscGhhKTtcbiAgICAuYmFja2dyb3VuZC1jbGlwKHBhZGRpbmctYm94KTtcbiAgfVxufVxuXG4vLyBHcmFkaWVudCBCYXIgQ29sb3JzIGZvciBidXR0b25zIGFuZCBhbGVydHNcbi5ncmFkaWVudEJhcihAcHJpbWFyeUNvbG9yLCBAc2Vjb25kYXJ5Q29sb3IpIHtcbiAgI2dyYWRpZW50ID4gLnZlcnRpY2FsKEBwcmltYXJ5Q29sb3IsIEBzZWNvbmRhcnlDb2xvcik7XG4gIGJvcmRlci1jb2xvcjogQHNlY29uZGFyeUNvbG9yIEBzZWNvbmRhcnlDb2xvciBkYXJrZW4oQHNlY29uZGFyeUNvbG9yLCAxNSUpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjEpIHJnYmEoMCwwLDAsLjEpIGZhZGVpbihyZ2JhKDAsMCwwLC4xKSwgMTUlKTtcbn1cblxuLy8gR3JhZGllbnRzXG4jZ3JhZGllbnQge1xuICAuaG9yaXpvbnRhbChAc3RhcnRDb2xvcjogIzU1NSwgQGVuZENvbG9yOiAjMzMzKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGVuZENvbG9yO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBGRiAzLjYrXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gSUUxMFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDEwMCUgMCwgZnJvbShAc3RhcnRDb2xvciksIHRvKEBlbmRDb2xvcikpOyAvLyBTYWZhcmkgNCssIENocm9tZSAyK1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBTYWZhcmkgNS4xKywgQ2hyb21lIDEwK1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gT3BlcmEgMTEuMTBcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQobGVmdCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIExlIHN0YW5kYXJkXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyVkJywgZW5kQ29sb3JzdHI9JyVkJywgR3JhZGllbnRUeXBlPTEpXCIsQHN0YXJ0Q29sb3IsQGVuZENvbG9yKSk7IC8vIElFOSBhbmQgZG93blxuICB9XG4gIC52ZXJ0aWNhbChAc3RhcnRDb2xvcjogIzU1NSwgQGVuZENvbG9yOiAjMzMzKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KEBzdGFydENvbG9yLCBAZW5kQ29sb3IsIDYwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gRkYgMy42K1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gSUUxMFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbShAc3RhcnRDb2xvciksIHRvKEBlbmRDb2xvcikpOyAvLyBTYWZhcmkgNCssIENocm9tZSAyK1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIFNhZmFyaSA1LjErLCBDaHJvbWUgMTArXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIE9wZXJhIDExLjEwXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIFRoZSBzdGFuZGFyZFxuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBmaWx0ZXI6IGUoJShcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSclZCcsIGVuZENvbG9yc3RyPSclZCcsIEdyYWRpZW50VHlwZT0wKVwiLEBzdGFydENvbG9yLEBlbmRDb2xvcikpOyAvLyBJRTkgYW5kIGRvd25cbiAgfVxuICAuZGlyZWN0aW9uYWwoQHN0YXJ0Q29sb3I6ICM1NTUsIEBlbmRDb2xvcjogIzMzMywgQGRlZzogNDVkZWcpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAZW5kQ29sb3I7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KEBkZWcsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBGRiAzLjYrXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudChAZGVnLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gSUUxMFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KEBkZWcsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBTYWZhcmkgNS4xKywgQ2hyb21lIDEwK1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChAZGVnLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gT3BlcmEgMTEuMTBcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoQGRlZywgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIFRoZSBzdGFuZGFyZFxuICB9XG4gIC52ZXJ0aWNhbC10aHJlZS1jb2xvcnMoQHN0YXJ0Q29sb3I6ICMwMGIzZWUsIEBtaWRDb2xvcjogIzdhNDNiNiwgQGNvbG9yU3RvcDogNTAlLCBAZW5kQ29sb3I6ICNjMzMyNWYpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoQG1pZENvbG9yLCBAZW5kQ29sb3IsIDgwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKEBzdGFydENvbG9yKSwgY29sb3Itc3RvcChAY29sb3JTdG9wLCBAbWlkQ29sb3IpLCB0byhAZW5kQ29sb3IpKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChAc3RhcnRDb2xvciwgQG1pZENvbG9yIEBjb2xvclN0b3AsIEBlbmRDb2xvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCBAc3RhcnRDb2xvciwgQG1pZENvbG9yIEBjb2xvclN0b3AsIEBlbmRDb2xvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudChAc3RhcnRDb2xvciwgQG1pZENvbG9yIEBjb2xvclN0b3AsIEBlbmRDb2xvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KEBzdGFydENvbG9yLCBAbWlkQ29sb3IgQGNvbG9yU3RvcCwgQGVuZENvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoQHN0YXJ0Q29sb3IsIEBtaWRDb2xvciBAY29sb3JTdG9wLCBAZW5kQ29sb3IpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nJWQnLCBlbmRDb2xvcnN0cj0nJWQnLCBHcmFkaWVudFR5cGU9MClcIixAc3RhcnRDb2xvcixAZW5kQ29sb3IpKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbiAgfVxuICAucmFkaWFsKEBpbm5lckNvbG9yOiAjNTU1LCBAb3V0ZXJDb2xvcjogIzMzMykgIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAb3V0ZXJDb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KHJhZGlhbCwgY2VudGVyIGNlbnRlciwgMCwgY2VudGVyIGNlbnRlciwgNDYwLCBmcm9tKEBpbm5lckNvbG9yKSwgdG8oQG91dGVyQ29sb3IpKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsIEBpbm5lckNvbG9yLCBAb3V0ZXJDb2xvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCBAaW5uZXJDb2xvciwgQG91dGVyQ29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCBAaW5uZXJDb2xvciwgQG91dGVyQ29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLXJhZGlhbC1ncmFkaWVudChjaXJjbGUsIEBpbm5lckNvbG9yLCBAb3V0ZXJDb2xvcik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuICAuc3RyaXBlZChAY29sb3IsIEBhbmdsZTogLTQ1ZGVnKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDEwMCUsIDEwMCUgMCwgY29sb3Itc3RvcCguMjUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSksIGNvbG9yLXN0b3AoLjI1LCB0cmFuc3BhcmVudCksIGNvbG9yLXN0b3AoLjUsIHRyYW5zcGFyZW50KSwgY29sb3Itc3RvcCguNSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpKSwgY29sb3Itc3RvcCguNzUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSksIGNvbG9yLXN0b3AoLjc1LCB0cmFuc3BhcmVudCksIHRvKHRyYW5zcGFyZW50KSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoQGFuZ2xlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoQGFuZ2xlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudChAYW5nbGUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNTAlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoQGFuZ2xlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICB9XG59XG4vLyBSZXNldCBmaWx0ZXJzIGZvciBJRVxuLnJlc2V0LWZpbHRlcigpIHtcbiAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKVwiKSk7XG59XG5cblxuXG4vLyBDT01QT05FTlQgTUlYSU5TXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBCdXR0b24gYmFja2dyb3VuZHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuLmJ1dHRvbkJhY2tncm91bmQoQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcikge1xuICAvLyBncmFkaWVudEJhciB3aWxsIHNldCB0aGUgYmFja2dyb3VuZCB0byBhIHBsZWFzaW5nIGJsZW5kIG9mIHRoZXNlLCB0byBzdXBwb3J0IElFPD05XG4gIC5ncmFkaWVudEJhcihAc3RhcnRDb2xvciwgQGVuZENvbG9yKTtcbiAgKmJhY2tncm91bmQtY29sb3I6IEBlbmRDb2xvcjsgLyogRGFya2VuIElFNyBidXR0b25zIGJ5IGRlZmF1bHQgc28gdGhleSBzdGFuZCBvdXQgbW9yZSBnaXZlbiB0aGV5IHdvbid0IGhhdmUgYm9yZGVycyAqL1xuICAucmVzZXQtZmlsdGVyKCk7XG5cbiAgLy8gaW4gdGhlc2UgY2FzZXMgdGhlIGdyYWRpZW50IHdvbid0IGNvdmVyIHRoZSBiYWNrZ3JvdW5kLCBzbyB3ZSBvdmVycmlkZVxuICAmOmhvdmVyLCAmOmFjdGl2ZSwgJi5hY3RpdmUsICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAZW5kQ29sb3I7XG4gICAgKmJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAZW5kQ29sb3IsIDUlKTtcbiAgfVxuXG4gIC8vIElFIDcgKyA4IGNhbid0IGhhbmRsZSBib3gtc2hhZG93IHRvIHNob3cgYWN0aXZlLCBzbyB3ZSBkYXJrZW4gYSBiaXQgb3Vyc2VsdmVzXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBlbmRDb2xvciwgMTAlKSBlKFwiXFw5XCIpO1xuICB9XG59XG5cbi8vIE5hdmJhciB2ZXJ0aWNhbCBhbGlnblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVmVydGljYWxseSBjZW50ZXIgZWxlbWVudHMgaW4gdGhlIG5hdmJhci5cbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhclZlcnRpY2FsQWxpZ24oMzBweCk7YCB0byBjYWxjdWxhdGUgdGhlIGFwcHJvcHJpYXRlIHRvcCBtYXJnaW4uXG4ubmF2YmFyVmVydGljYWxBbGlnbihAZWxlbWVudEhlaWdodCkge1xuICBtYXJnaW4tdG9wOiAoQG5hdmJhckhlaWdodCAtIEBlbGVtZW50SGVpZ2h0KSAvIDI7XG59XG5cbi8vIFBvcG92ZXIgYXJyb3dzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBGb3IgdGlwc2llcyBhbmQgcG9wb3ZlcnNcbiNwb3BvdmVyQXJyb3cge1xuICAudG9wKEBhcnJvd1dpZHRoOiA1cHgsIEBjb2xvcjogQGJsYWNrKSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLUBhcnJvd1dpZHRoO1xuICAgIGJvcmRlci1sZWZ0OiBAYXJyb3dXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IEBhcnJvd1dpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3A6IEBhcnJvd1dpZHRoIHNvbGlkIEBjb2xvcjtcbiAgfVxuICAubGVmdChAYXJyb3dXaWR0aDogNXB4LCBAY29sb3I6IEBibGFjaykge1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IC1AYXJyb3dXaWR0aDtcbiAgICBib3JkZXItdG9wOiBAYXJyb3dXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiBAYXJyb3dXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogQGFycm93V2lkdGggc29saWQgQGNvbG9yO1xuICB9XG4gIC5ib3R0b20oQGFycm93V2lkdGg6IDVweCwgQGNvbG9yOiBAYmxhY2spIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtQGFycm93V2lkdGg7XG4gICAgYm9yZGVyLWxlZnQ6IEBhcnJvd1dpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogQGFycm93V2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogQGFycm93V2lkdGggc29saWQgQGNvbG9yO1xuICB9XG4gIC5yaWdodChAYXJyb3dXaWR0aDogNXB4LCBAY29sb3I6IEBibGFjaykge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogLUBhcnJvd1dpZHRoO1xuICAgIGJvcmRlci10b3A6IEBhcnJvd1dpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IEBhcnJvd1dpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogQGFycm93V2lkdGggc29saWQgQGNvbG9yO1xuICB9XG59XG5cbi8vIEdyaWQgU3lzdGVtXG4vLyAtLS0tLS0tLS0tLVxuXG4vLyBDZW50ZXJlZCBjb250YWluZXIgZWxlbWVudFxuLmNvbnRhaW5lci1maXhlZCgpIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgLmNsZWFyZml4KCk7XG59XG5cbi8vIFRhYmxlIGNvbHVtbnNcbi50YWJsZUNvbHVtbnMoQGNvbHVtblNwYW46IDEpIHtcbiAgZmxvYXQ6IG5vbmU7IC8vIHVuZG8gZGVmYXVsdCBncmlkIGNvbHVtbiBzdHlsZXNcbiAgd2lkdGg6ICgoQGZsdWlkR3JpZENvbHVtbldpZHRoKSAqIEBjb2x1bW5TcGFuKSArIChAZmx1aWRHcmlkR3V0dGVyV2lkdGggKiAoQGNvbHVtblNwYW4gLSAxKSkgLSAxNjsgLy8gMTYgaXMgdG90YWwgcGFkZGluZyBvbiBsZWZ0IGFuZCByaWdodCBvZiB0YWJsZSBjZWxsc1xuICBtYXJnaW4tbGVmdDogMDsgLy8gdW5kbyBkZWZhdWx0IGdyaWQgY29sdW1uIHN0eWxlc1xufVxuXG4vLyBNYWtlIGEgR3JpZFxuLy8gVXNlIC5tYWtlUm93IGFuZCAubWFrZUNvbHVtbiB0byBhc3NpZ24gc2VtYW50aWMgbGF5b3V0cyBncmlkIHN5c3RlbSBiZWhhdmlvclxuLm1ha2VSb3coKSB7XG4gIG1hcmdpbi1sZWZ0OiBAZ3JpZEd1dHRlcldpZHRoICogLTE7XG4gIC5jbGVhcmZpeCgpO1xufVxuLm1ha2VDb2x1bW4oQGNvbHVtbnM6IDEsIEBvZmZzZXQ6IDApIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAoQGdyaWRDb2x1bW5XaWR0aCAqIEBvZmZzZXQpICsgKEBncmlkR3V0dGVyV2lkdGggKiAoQG9mZnNldCAtIDEpKSArIChAZ3JpZEd1dHRlcldpZHRoICogMik7XG4gIHdpZHRoOiAoQGdyaWRDb2x1bW5XaWR0aCAqIEBjb2x1bW5zKSArIChAZ3JpZEd1dHRlcldpZHRoICogKEBjb2x1bW5zIC0gMSkpO1xufVxuXG4vLyBUaGUgR3JpZFxuI2dyaWQge1xuXG4gIC5jb3JlIChAZ3JpZENvbHVtbldpZHRoLCBAZ3JpZEd1dHRlcldpZHRoKSB7XG5cbiAgICAuc3BhblggKEBpbmRleCkgd2hlbiAoQGluZGV4ID4gMCkge1xuICAgICAgLnNwYW5Ae2luZGV4fSB7IC5zcGFuKEBpbmRleCk7IH1cbiAgICAgIC5zcGFuWChAaW5kZXggLSAxKTtcbiAgICB9XG4gICAgLnNwYW5YICgwKSB7fVxuXG4gICAgLm9mZnNldFggKEBpbmRleCkgd2hlbiAoQGluZGV4ID4gMCkge1xuICAgICAgLm9mZnNldEB7aW5kZXh9IHsgLm9mZnNldChAaW5kZXgpOyB9XG4gICAgICAub2Zmc2V0WChAaW5kZXggLSAxKTtcbiAgICB9XG4gICAgLm9mZnNldFggKDApIHt9XG5cbiAgICAub2Zmc2V0IChAY29sdW1ucykge1xuICAgICAgbWFyZ2luLWxlZnQ6IChAZ3JpZENvbHVtbldpZHRoICogQGNvbHVtbnMpICsgKEBncmlkR3V0dGVyV2lkdGggKiAoQGNvbHVtbnMgKyAxKSk7XG4gICAgfVxuXG4gICAgLnNwYW4gKEBjb2x1bW5zKSB7XG4gICAgICB3aWR0aDogKEBncmlkQ29sdW1uV2lkdGggKiBAY29sdW1ucykgKyAoQGdyaWRHdXR0ZXJXaWR0aCAqIChAY29sdW1ucyAtIDEpKTtcbiAgICB9XG5cbiAgICAucm93IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBAZ3JpZEd1dHRlcldpZHRoICogLTE7XG4gICAgICAuY2xlYXJmaXgoKTtcbiAgICB9XG5cbiAgICBbY2xhc3MqPVwic3BhblwiXSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBAZ3JpZEd1dHRlcldpZHRoO1xuICAgIH1cblxuICAgIC8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllc1xuICAgIC5jb250YWluZXIsXG4gICAgLm5hdmJhci1maXhlZC10b3AgLmNvbnRhaW5lcixcbiAgICAubmF2YmFyLWZpeGVkLWJvdHRvbSAuY29udGFpbmVyIHsgLnNwYW4oQGdyaWRDb2x1bW5zKTsgfVxuXG4gICAgLy8gZ2VuZXJhdGUgLnNwYW5YIGFuZCAub2Zmc2V0WFxuICAgIC5zcGFuWCAoQGdyaWRDb2x1bW5zKTtcbiAgICAub2Zmc2V0WCAoQGdyaWRDb2x1bW5zKTtcblxuICB9XG5cbiAgLmZsdWlkIChAZmx1aWRHcmlkQ29sdW1uV2lkdGgsIEBmbHVpZEdyaWRHdXR0ZXJXaWR0aCkge1xuXG4gICAgLnNwYW5YIChAaW5kZXgpIHdoZW4gKEBpbmRleCA+IDApIHtcbiAgICAgIC5zcGFuQHtpbmRleH0geyAuc3BhbihAaW5kZXgpOyB9XG4gICAgICAuc3BhblgoQGluZGV4IC0gMSk7XG4gICAgfVxuICAgIC5zcGFuWCAoMCkge31cblxuICAgIC5zcGFuIChAY29sdW1ucykge1xuICAgICAgd2lkdGg6IChAZmx1aWRHcmlkQ29sdW1uV2lkdGggKiBAY29sdW1ucykgKyAoQGZsdWlkR3JpZEd1dHRlcldpZHRoICogKEBjb2x1bW5zIC0gMSkpO1xuICAgICAgKndpZHRoOiAoQGZsdWlkR3JpZENvbHVtbldpZHRoICogQGNvbHVtbnMpICsgKEBmbHVpZEdyaWRHdXR0ZXJXaWR0aCAqIChAY29sdW1ucyAtIDEpKSAtICguNSAvIEBncmlkUm93V2lkdGggKiAxMDAgKiAxJSk7XG4gICAgfVxuXG4gICAgLnJvdy1mbHVpZCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIC5jbGVhcmZpeCgpO1xuICAgICAgW2NsYXNzKj1cInNwYW5cIl0ge1xuICAgICAgICAuaW5wdXQtYmxvY2stbGV2ZWwoKTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBAZmx1aWRHcmlkR3V0dGVyV2lkdGg7XG4gICAgICAgICptYXJnaW4tbGVmdDogQGZsdWlkR3JpZEd1dHRlcldpZHRoIC0gKC41IC8gQGdyaWRSb3dXaWR0aCAqIDEwMCAqIDElKTtcbiAgICAgIH1cbiAgICAgIFtjbGFzcyo9XCJzcGFuXCJdOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIGdlbmVyYXRlIC5zcGFuWFxuICAgICAgLnNwYW5YIChAZ3JpZENvbHVtbnMpO1xuICAgIH1cblxuICB9XG5cbiAgLmlucHV0KEBncmlkQ29sdW1uV2lkdGgsIEBncmlkR3V0dGVyV2lkdGgpIHtcblxuICAgIC5zcGFuWCAoQGluZGV4KSB3aGVuIChAaW5kZXggPiAwKSB7XG4gICAgICBpbnB1dC5zcGFuQHtpbmRleH0sIHRleHRhcmVhLnNwYW5Ae2luZGV4fSwgLnVuZWRpdGFibGUtaW5wdXQuc3BhbkB7aW5kZXh9IHsgLnNwYW4oQGluZGV4KTsgfVxuICAgICAgLnNwYW5YKEBpbmRleCAtIDEpO1xuICAgIH1cbiAgICAuc3BhblggKDApIHt9XG5cbiAgICAuc3BhbihAY29sdW1ucykge1xuICAgICAgd2lkdGg6ICgoQGdyaWRDb2x1bW5XaWR0aCkgKiBAY29sdW1ucykgKyAoQGdyaWRHdXR0ZXJXaWR0aCAqIChAY29sdW1ucyAtIDEpKSAtIDEwO1xuICAgIH1cblxuICAgIGlucHV0LFxuICAgIHRleHRhcmVhLFxuICAgIC51bmVkaXRhYmxlLWlucHV0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyAvLyBvdmVycmlkZSBtYXJnaW4tbGVmdCBmcm9tIGNvcmUgZ3JpZCBzeXN0ZW1cbiAgICB9XG5cbiAgICAvLyBnZW5lcmF0ZSAuc3BhblhcbiAgICAuc3BhblggKEBncmlkQ29sdW1ucyk7XG5cbiAgfVxuXG59XG5cbi5kYXJrTGlnaHQgKEBhKSB3aGVuIChsaWdodG5lc3MoQGEpID49IDUwJSkge1xuICBjb2xvcjogQGdyYXlEYXJrZXI7XG59XG4uZGFya0xpZ2h0IChAYSkgd2hlbiAobGlnaHRuZXNzKEBhKSA8IDUwJSkge1xuICBjb2xvcjogQHdoaXRlO1xufVxuIiwiYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IEBiYXNlRm9udEZhbWlseTtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICBmb250LXdlaWdodDogQGJhc2VGb250V2VpZ2h0O1xuICBsaW5lLWhlaWdodDogQGJhc2VMaW5lSGVpZ2h0O1xuICBjb2xvcjogQHRleHRDb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGJvZHlCYWNrZ3JvdW5kO1xufVxuI3BhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcGFnZUJhY2tncm91bmQ7XG4gIHBhZGRpbmc6IDAgMjBweDtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIExpbmtzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5hIHtcbiAgY29sb3I6IEBsaW5rQ29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IEBsaW5rQ29sb3JIb3ZlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAmLm1vcmUtbGluayB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gR2VuZXJhbCBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5wLFxuZGwsXG5ocixcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbm9sLFxudWwsXG5wcmUsXG50YWJsZSxcbmFkZHJlc3MsXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMCAwIEBiYXNlbGluZTtcbn1cbmgxIHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMy4zNzU7XG4gICYuZW50cnktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDIuNzU7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMjtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxufVxuaDIge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAyLjc1O1xufVxuaDMge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAyLjI1O1xufVxuaDQsXG4uZW50cnktY29udGVudCBoMSxcbi5lbnRyeS1jb250ZW50IGgyLFxuLmVudHJ5LWNvbnRlbnQgaDMge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjgzMztcbn1cbmg1LFxuLnN0b3JpZXMgaDMsXG4uZW50cnktY29udGVudCBoNCB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcbn1cbmg1LnRvcC10YWcsXG4ud2lkZ2V0IGg1LnRvcC10YWcsXG4uZW50cnktY29udGVudCBoNS50b3AtdGFnIHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUvNTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IEBncmF5TGlnaHQ7XG4gIGEge1xuICAgIGNvbG9yOiBAZ3JheUxpZ2h0O1xuICB9XG59XG5oNixcbi5lbnRyeS1jb250ZW50IGg1IHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yMjI7XG59XG4uZW50cnktY29udGVudCBoNiB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBmb250LWZhbWlseTogQGhlYWRpbmdzRm9udEZhbWlseTtcbiAgZm9udC13ZWlnaHQ6IEBoZWFkaW5nc0ZvbnRXZWlnaHQ7XG4gIGNvbG9yOiBAaGVhZGluZ3NDb2xvcjtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplbGVnaWJpbGl0eTtcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC44MTVlbTtcbiAgfVxufVxuLmVudHJ5LWNvbnRlbnQgaDIsXG4uZW50cnktY29udGVudCBoMyxcbi5lbnRyeS1jb250ZW50IGg0LFxuLmVudHJ5LWNvbnRlbnQgaDUsXG4uZW50cnktY29udGVudCBoNiB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZTtcbn1cbnAge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjIyMjtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbWFyZ2luOiAwIDAgQGJhc2VsaW5lO1xuICBzbWFsbCxcbiAgJi5zbWFsbCB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMC44MTU7XG4gICAgY29sb3I6IEBncmF5TGlnaHQ7XG4gIH1cbiAgJi54c21hbGwge1xuXHRmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjY2Nztcblx0Y29sb3I6IEBncmF5TGlnaHQ7XG4gIH1cbiAgJi5pbnRybyB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS41O1xuICAgIGNvbG9yOiBAZ3JheTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cbn1cblxudWwsIG9sIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwIDAgQGJhc2VsaW5lIDI1cHg7XG59XG4uZW50cnktY29udGVudCB7XG4gIHVsLFxuICBvbCB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yMjI7XG4gIH1cbn1cbnVsIHVsLFxudWwgb2wsXG5vbCBvbCxcbm9sIHVsIHtcbiAgbWFyZ2luLXRvcDogQGJhc2VsaW5lIC8gMztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbnVsIHtcbiAgbGlzdC1zdHlsZTogZGlzYztcbn1cbm9sIHtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbiAgb2wge1xuICAgIGxpc3Qtc3R5bGU6IGxvd2VyLWFscGhhO1xuICAgIG9sIHtcblx0ICBsaXN0LXN0eWxlOiBsb3dlci1yb21hbjtcbiAgICB9XG4gIH1cbn1cbmxpIHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lICogMC41O1xufVxudWwudW5zdHlsZWQsXG5vbC51bnN0eWxlZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuZGwgZHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbmRkIHtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cbnN0cm9uZywgZGZuIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5lbSwgZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuYWJiciwgYWNyb255bSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgQGdyYXlMaWdodDtcbn1cbmFkZHJlc3Mge1xuICBtYXJnaW46IDAgMCBAYmFzZWxpbmU7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbmRlbCB7XG4gIGNvbG9yOiBAZ3JheUxpZ2h0O1xufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRmFuY3kgUG9zdCBGb3JtYXR0aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5ibG9ja3F1b3RlIHtcbiAgY2xlYXI6IGJvdGg7XG4gIHBhZGRpbmc6IDVweCAxNXB4IDVweCAzMHB4O1xuICBtYXJnaW46IEBiYXNlbGluZTtcbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgICBtYXJnaW46IEBiYXNlbGluZS8yIDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxuICBzbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6IEBiYXNlbGluZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDE0IFxcMDBBMCc7XG4gICAgfVxuICB9XG4gIC8vIEZsb2F0IHJpZ2h0IHdpdGggdGV4dC1hbGlnbjogcmlnaHRcbiAgJi5wdWxsLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodDogNXB4IHNvbGlkIEBncmF5TGlnaHRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBwLFxuICAgIHNtYWxsIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG5jb2RlLFxucHJlIHtcbiAgcGFkZGluZzogMCAzcHggMnB4O1xuICAjZm9udCA+ICNmYW1pbHkgPiAubW9ub3NwYWNlO1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgLSAyO1xuICBjb2xvcjogQGdyYXlEYXJrO1xufVxuXG4vLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGNvbG9yOiAjZDE0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y5O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTFlMWU4O1xufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IEBiYXNlbGluZSAvIDI7XG4gIG1hcmdpbjogMCAwIEBiYXNlbGluZTtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogLjkyNTsgLy8gMTNweCB0byAxMnB4XG4gIGxpbmUtaGVpZ2h0OiBAYmFzZWxpbmU7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7IC8vIGZhbGxiYWNrIGZvciBJRTctOFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4xNSk7XG5cbiAgLy8gTWFrZSBwcmV0dHlwcmludCBzdHlsZXMgbW9yZSBzcGFjZWQgb3V0IGZvciByZWFkYWJpbGl0eVxuICAmLnByZXR0eXByaW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmU7XG4gIH1cblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogMzQwcHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuaHIge1xuICBtYXJnaW46IEBiYXNlbGluZSAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAd2hpdGU7XG59XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ09MT1Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEdyYXlzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AYmxhY2s6ICAgICAgICAgICAgICAgICAjMDAwO1xuQGdyYXlEYXJrZXI6ICAgICAgICAgICAgIzIyMjtcbkBncmF5RGFyazogICAgICAgICAgICAgICM0ODQ4NDg7XG5AZ3JheTogICAgICAgICAgICAgICAgICAjN0Q4MTg1O1xuQGdyYXlMaWdodDogICAgICAgICAgICAgI2FhYTtcbkBncmF5TGlnaHRlcjogICAgICAgICAgICNkZGQ7XG5Ad2hpdGU6ICAgICAgICAgICAgICAgICAjZmZmO1xuXG5cbi8vIEFjY2VudCBjb2xvcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBibHVlOiAgICAgICAgICAgICAgICAgICMyMjc1YmI7XG5AYmx1ZURhcms6ICAgICAgICAgICAgICAjMDA2NGNkO1xuQGdyZWVuOiAgICAgICAgICAgICAgICAgIzQ2YTU0NjtcbkByZWQ6ICAgICAgICAgICAgICAgICAgICNiZDI2MWQ7XG5AeWVsbG93OiAgICAgICAgICAgICAgICAjZmZjNDBkO1xuQG9yYW5nZTogICAgICAgICAgICAgICAgI2Y4OTQwNjtcbkBwaW5rOiAgICAgICAgICAgICAgICAgICNjMzMyNWY7XG5AcHVycGxlOiAgICAgICAgICAgICAgICAjN2E0M2I2O1xuXG4vKipcbiAqIEBncm91cCBDb2xvclxuICogQGxhYmVsIEJhc2UgQ29sb3IgKHVzZWQgZm9yIG5hdmJhciwgd2lkZ2V0IHRpdGxlcywgZXRjLilcbiAqIEB0eXBlIGNvbG9yXG4gKiBAZGVmYXVsdF92YWx1ZSAjMjI3NWJiXG4gKi9cbkBiYXNlQ29sb3I6XHRcdFx0XHRAYmx1ZTtcblxuLyoqXG4gKiBAZ3JvdXAgQ29sb3JcbiAqIEBsYWJlbCBIZWFkZXIvRm9vdGVyIENvbG9yXG4gKiBAdHlwZSBjb2xvclxuICogQGRlZmF1bHRfdmFsdWUgIzIyMlxuICovXG5AaGVhZGVyRm9vdGVyQ29sb3I6XHRcdEBncmF5RGFya2VyO1xuXG4vKipcbiAqIEBncm91cCBDb2xvclxuICogQGxhYmVsIFByZS1Gb290ZXIgQ29sb3JcbiAqIEB0eXBlIGNvbG9yXG4gKiBAZGVmYXVsdF92YWx1ZSAjZGRkXG4gKi9cbkBwcmVGb290ZXJDb2xvcjpcdFx0QGdyYXlMaWdodGVyO1xuXG4vKipcbiAqIEBncm91cCBDb2xvclxuICogQGxhYmVsIENvbG9yIG9mIGxpbmtzXG4gKiBAdHlwZSBjb2xvclxuICogQGRlZmF1bHRfdmFsdWUgIzIyNzViYlxuICovXG5AbGlua0NvbG9yOiAgICAgICAgICAgICBAYmx1ZTtcblxuLyoqXG4gKiBAZ3JvdXAgQ29sb3JcbiAqIEBsYWJlbCBIb3ZlciBjb2xvciBvZiBsaW5rc1xuICogQHR5cGUgY29sb3JcbiAqIEBkZWZhdWx0X3ZhbHVlICMyMjc1YmJcbiAqL1xuQGxpbmtDb2xvckhvdmVyOiAgICAgICAgbGlnaHRlbihAbGlua0NvbG9yLCAxMCUpO1xuXG4vKipcbiAqIEBncm91cCBDb2xvclxuICogQGxhYmVsIEJhY2tncm91bmQgY29sb3Igb2YgcG9zdCBtZXRhIGJveGVzIChhdXRob3IgYmlvLCByZWxhdGVkIHBvc3RzLCBldGMuKVxuICogQHR5cGUgY29sb3JcbiAqIEBkZWZhdWx0X3ZhbHVlICNmZmZcbiAqL1xuQHBvc3RCb3hCYWNrZ3JvdW5kQ29sb3I6XHQjZmZmO1xuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBMQVlPVVRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBjb250YWluZXJNYXhXaWR0aDpcdFx0MTE3MHB4O1xuXG4vKipcbiAqIEBncm91cCBCYXNpY3NcbiAqIEBsYWJlbCBCb2R5IEJhY2tncm91bmQgQ29sb3JcbiAqIEB0eXBlIGNvbG9yXG4gKiBAZGVmYXVsdF92YWx1ZSAjZmZmXG4gKi9cbkBib2R5QmFja2dyb3VuZDogICAgICAgIEB3aGl0ZTtcblxuLyoqXG4gKiBAZ3JvdXAgQmFzaWNzXG4gKiBAbGFiZWwgUGFnZSBCYWNrZ3JvdW5kIENvbG9yXG4gKiBAdHlwZSBjb2xvclxuICogQGRlZmF1bHRfdmFsdWUgI2ZmZlxuICovXG5AcGFnZUJhY2tncm91bmQ6ICAgICAgICBAd2hpdGU7XG5cbi8qKlxuICogQGdyb3VwIEJhc2ljc1xuICogQGxhYmVsIFRleHQgQ29sb3JcbiAqIEB0eXBlIGNvbG9yXG4gKiBAZGVmYXVsdF92YWx1ZSAjMzMzXG4gKi9cbkB0ZXh0Q29sb3I6ICAgICAgICAgICAgIEBncmF5RGFyaztcbi8qKlxuICogQGdyb3VwIEJhc2ljc1xuICogQGxhYmVsIERlZmF1bHQgVmVydGljYWwgU3BhY2luZ1xuICogQHR5cGUgcGl4ZWxzXG4gKiBAZGVmYXVsdF92YWx1ZSAyNHB4XG4gKi9cbkBiYXNlbGluZTpcdFx0XHRcdDI0cHg7XG5cbi8vIEdyaWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBncmlkQ29sdW1uczogICAgICAgICAgICAgMTI7XG5AZmx1aWRHcmlkQ29sdW1uV2lkdGg6ICAgIDYuMzgyOTc4NzIzJTtcbkBmbHVpZEdyaWRHdXR0ZXJXaWR0aDogICAgMi4xMjc2NTk1NzQlO1xuQGdyaWRSb3dXaWR0aDogICAgICAgICAgICAxMDAlO1xuXG4vLyBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGhpZ2hkZW5zaXR5OiB+XCJvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KVwiLFxuICAgICAgICAgICAgICB+XCJvbmx5IHNjcmVlbiBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KVwiLFxuICAgICAgICAgICAgICB+XCJvbmx5IHNjcmVlbiBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMvMiApXCIsXG4gICAgICAgICAgICAgIH5cIm9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KVwiO1xuXG5AbW9iaWxlOiAgICAgIH5cIm9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MjlweClcIjtcblxuQHRhYmxldDogICAgICB+XCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5NzlweClcIjtcbkB0YWJsZXREb3duOiAgflwib25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk3OXB4KVwiO1xuQHRhYmxldFVwOiAgICB+XCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpXCI7XG5cbkBkZXNrdG9wOiAgICAgflwib25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk4MHB4KSBhbmQgKG1heC13aWR0aDogMTEyOHB4KVwiO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVFlQT0dSQVBIWVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLyoqXG4gKiBAZ3JvdXAgVHlwb2dyYXBoeVxuICogQGxhYmVsIFNhbnMgRm9udCBGYW1pbHlcbiAqIEB0eXBlIHRleHRcbiAqIEBkZWZhdWx0X3ZhbHVlIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZlxuICovXG5Ac2Fuc0ZvbnRGYW1pbHk6ICAgICAgICBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG5cbi8qKlxuICogQGdyb3VwIFR5cG9ncmFwaHlcbiAqIEBsYWJlbCBTZXJpZiBGb250IEZhbWlseVxuICogQHR5cGUgdGV4dFxuICovXG5Ac2VyaWZGb250RmFtaWx5OiAgICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWY7XG5AbW9ub0ZvbnRGYW1pbHk6ICAgICAgICBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2U7XG5cbi8qKlxuICogQGdyb3VwIFR5cG9ncmFwaHlcbiAqIEBsYWJlbCBCYXNlIEZvbnQgU2l6ZVxuICogQHR5cGUgcGl4ZWxzXG4gKi9cbkBiYXNlRm9udFNpemU6ICAgICAgICAgIDE2cHg7XG5cbi8qKlxuICogQGdyb3VwIFR5cG9ncmFwaHlcbiAqIEBsYWJlbCBTYW5zIEZvbnQgRmFtaWx5XG4gKiBAdHlwZSBkcm9wZG93blxuICogQG9wdGlvbnMgQHNlcmlmRm9udEZhbWlseXxAc2Fuc0ZvbnRGYW1pbHlcbiAqIEBkZWZhdWx0X3ZhbHVlIEBzZXJpZkZvbnRGYW1pbHlcbiAqL1xuQGJhc2VGb250RmFtaWx5OiAgICAgICAgQHNlcmlmRm9udEZhbWlseTtcbi8qKlxuICogQGdyb3VwIFR5cG9ncmFwaHlcbiAqIEBsYWJlbCBCYXNlIExpbmUgSGVpZ2h0XG4gKiBAdHlwZSB0ZXh0XG4gKiBAZGVmYXVsdF92YWx1ZSAxLjVcbiAqL1xuQGJhc2VMaW5lSGVpZ2h0OiAgICAgICAgMS41O1xuXG5AYWx0Rm9udEZhbWlseTogICAgICAgICBAc2Fuc0ZvbnRGYW1pbHk7XG5AYmFzZUZvbnRXZWlnaHQ6XHRcdG5vcm1hbDtcblxuQGhlYWRpbmdzRm9udEZhbWlseTogICAgQHNhbnNGb250RmFtaWx5OyAvLyBlbXB0eSB0byB1c2UgZGVmYXVsdCwgQGJhc2VGb250RmFtaWx5XG5AaGVhZGluZ3NGb250V2VpZ2h0OiAgICBib2xkOyAvLyBlbXB0eSB0byB1c2UgZGVmYXVsdCwgQGJhc2VGb250V2VpZ2h0XG5AaGVhZGluZ3NDb2xvcjogICAgICAgICBpbmhlcml0OyAvLyBlbXB0eSB0byB1c2UgZGVmYXVsdCwgQHRleHRDb2xvclxuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBGT1JNUywgVEFCTEVTIEFORCBCVVRUT05TXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBUYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkB0YWJsZUJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50OyAvLyBvdmVyYWxsIGJhY2tncm91bmQtY29sb3JcbkB0YWJsZUJhY2tncm91bmRBY2NlbnQ6ICAgICAgICAgICAgICNmOWY5Zjk7IC8vIGZvciBzdHJpcGluZ1xuQHRhYmxlQmFja2dyb3VuZEhvdmVyOiAgICAgICAgICAgICAgI2Y1ZjVmNTsgLy8gZm9yIGhvdmVyXG5AdGFibGVCb3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAjZGRkOyAvLyB0YWJsZSBhbmQgY2VsbCBib3JkZXJcblxuXG4vLyBCdXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AYnRuQmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICBAd2hpdGU7XG5AYnRuQmFja2dyb3VuZEhpZ2hsaWdodDogICAgICAgICAgICBkYXJrZW4oQHdoaXRlLCAxMCUpO1xuQGJ0bkJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgI2NjYztcblxuQGJ0blByaW1hcnlCYWNrZ3JvdW5kOiAgICAgICAgICAgICAgQGJhc2VDb2xvcjtcbkBidG5QcmltYXJ5QmFja2dyb3VuZEhpZ2hsaWdodDogICAgIHNwaW4oQGJ0blByaW1hcnlCYWNrZ3JvdW5kLCAxNSUpO1xuXG5cbi8vIEZvcm1zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AaW5wdXRCYWNrZ3JvdW5kOiAgICAgICAgICAgICAgIEB3aGl0ZTtcbkBpbnB1dEJvcmRlcjogICAgICAgICAgICAgICAgICAgI2NjYztcbkBpbnB1dEJvcmRlclJhZGl1czogICAgICAgICAgICAgM3B4O1xuQGlucHV0RGlzYWJsZWRCYWNrZ3JvdW5kOiAgICAgICBAZ3JheUxpZ2h0ZXI7XG5AZm9ybUFjdGlvbnNCYWNrZ3JvdW5kOiAgICAgICAgICNmNWY1ZjU7XG5cbkBwbGFjZWhvbGRlclRleHQ6ICAgICAgICAgQGdyYXlMaWdodDtcblxuXG4vLyBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Ad2FybmluZ1RleHQ6ICAgICAgICAgICAgICNjMDk4NTM7XG5Ad2FybmluZ0JhY2tncm91bmQ6ICAgICAgICNmY2Y4ZTM7XG5Ad2FybmluZ0JvcmRlcjogICAgICAgICAgIGRhcmtlbihzcGluKEB3YXJuaW5nQmFja2dyb3VuZCwgLTEwKSwgMyUpO1xuXG5AZXJyb3JUZXh0OiAgICAgICAgICAgICAgICNiOTRhNDg7XG5AZXJyb3JCYWNrZ3JvdW5kOiAgICAgICAgICNmMmRlZGU7XG5AZXJyb3JCb3JkZXI6ICAgICAgICAgICAgIGRhcmtlbihzcGluKEBlcnJvckJhY2tncm91bmQsIC0xMCksIDMlKTtcblxuQHN1Y2Nlc3NUZXh0OiAgICAgICAgICAgICAjNDY4ODQ3O1xuQHN1Y2Nlc3NCYWNrZ3JvdW5kOiAgICAgICAjZGZmMGQ4O1xuQHN1Y2Nlc3NCb3JkZXI6ICAgICAgICAgICBkYXJrZW4oc3BpbihAc3VjY2Vzc0JhY2tncm91bmQsIC0xMCksIDUlKTtcblxuQGluZm9UZXh0OiAgICAgICAgICAgICAgICAjM2E4N2FkO1xuQGluZm9CYWNrZ3JvdW5kOiAgICAgICAgICAjZDllZGY3O1xuQGluZm9Cb3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oc3BpbihAaW5mb0JhY2tncm91bmQsIC0xMCksIDclKTtcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQHppbmRleERyb3Bkb3duOiAgICAgICAgICAxMDAwO1xuQHppbmRleFBvcG92ZXI6ICAgICAgICAgICAxMDEwO1xuQHppbmRleFRvb2x0aXA6ICAgICAgICAgICAxMDIwO1xuQHppbmRleEZpeGVkTmF2YmFyOiAgICAgICAxMDMwO1xuQHppbmRleE1vZGFsQmFja2Ryb3A6ICAgICAxMDQwO1xuQHppbmRleE1vZGFsOiAgICAgICAgICAgICAxMDUwO1xuXG4vLyBOYXZiYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBuYXZiYXJIZWlnaHQ6ICAgICAgICAgICAgICAgICAgICA0MHB4O1xuQG5hdmJhckZvbnRTaXplOiAgICAgICAgICAgICAgICAgIDE1cHg7XG5AbmF2YmFyQmFja2dyb3VuZDogICAgICAgICAgICAgICAgQGJvZHlCYWNrZ3JvdW5kO1xuLy8gTmF2YmFyIGJ1dHRvbiAoYnVyZ2VyKSBmb3IgdG9nZ2xpbmcgbmF2YmFyIGl0ZW1zIGluIHJlc3BvbnNpdmUgbGF5b3V0c1xuQGljb25iYXJIZWlnaHQ6IDNweDtcblxuICAgIC8vIE5hdmJhciBkcm9wZG93bnNcbiAgICBAZHJvcGRvd25CYWNrZ3JvdW5kOiBAd2hpdGU7XG4gICAgQGRyb3Bkb3duQm9yZGVyOiByZ2JhKDAsMCwwLC4yKTtcbiAgICBAZHJvcGRvd25EaXZpZGVyVG9wOiAjZTVlNWU1O1xuICAgIEBkcm9wZG93bkRpdmlkZXJCb3R0b206IEB3aGl0ZTtcblxuICAgIC8vIE1haW4gbmF2YmFyXG4gICAgQG5hdmJhclRleHQ6IEB0ZXh0Q29sb3I7XG4gICAgQG5hdmJhckxpbmtDb2xvcjogQG5hdmJhclRleHQ7XG4gICAgQG5hdmJhckxpbmtDb2xvckhvdmVyOiBkYXJrZW4oQG5hdmJhckxpbmtDb2xvciwgNSUpO1xuICAgIEBuYXZiYXJMaW5rQmFja2dyb3VuZEFjdGl2ZTogZGFya2VuKEBuYXZiYXJCYWNrZ3JvdW5kLCA1JSk7XG4gICAgQG5hdmJhckRyb3Bkb3duQ2FyZXRDb2xvcjogQG5hdmJhckxpbmtDb2xvcjtcbiAgICBAbmF2YmFyRHJvcGRvd25DYXJldENvbG9ySG92ZXI6IEBuYXZiYXJMaW5rQ29sb3JIb3ZlcjtcbiAgICBAbmF2YmFyUnVsZUNvbG9yOiBAZ3JheUxpZ2h0O1xuXG4gICAgLy8gU3RpY2t5IG5hdmJhclxuICAgIEBzdGlja3lOYXZiYXJUZXh0OiBAdGV4dENvbG9yO1xuICAgIEBzdGlja3lOYXZiYXJMaW5rQ29sb3I6IEBzdGlja3lOYXZiYXJUZXh0O1xuICAgIEBzdGlja3lOYXZiYXJMaW5rQ29sb3JIb3ZlcjogZGFya2VuKEBzdGlja3lOYXZiYXJMaW5rQ29sb3IsIDUlKTtcbiAgICBAc3RpY2t5TmF2YmFyQmFja2dyb3VuZENvbG9yOiBAd2hpdGU7XG4gICAgQHN0aWNreU5hdmJhckRyb3Bkb3duQ2FyZXRDb2xvcjogQHN0aWNreU5hdmJhckxpbmtDb2xvcjtcbiAgICBAc3RpY2t5TmF2YmFyRHJvcGRvd25DYXJldENvbG9ySG92ZXI6IEBzdGlja3lOYXZiYXJMaW5rQ29sb3JIb3ZlcjtcblxuXG4vLyBTb2NpYWwgQnJhbmRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AcnNzOiAjZjg5NDA2O1xuQGZhY2Vib29rOiAjM2E1Nzk1O1xuQHR3aXR0ZXI6ICM1NWFjZWU7XG5AeW91dHViZTogI2U1MmQyNztcbkBncGx1czogI2RkNGIzOTtcbkBmbGlja3I6ICNmZjAwODQ7XG5AbGlua2VkaW46ICMwMDdiYjY7XG5AdHVtYmxyOiAjMzU0NjVjO1xuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFBPU1QvUEFHRSBFTEVNRU5UU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnBvc3QtaGVhZGVyLFxuLnBhZ2UtaGVhZGVyLFxuLmVudHJ5LWNvbnRlbnQsXG4ucG9zdC1mb290ZXIsXG5hcnRpY2xlLnN0b3J5IHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lO1xufVxuLnBvc3QtaGVhZGVyLFxuLnBhZ2UtaGVhZGVyLFxuYXJ0aWNsZS5zdG9yeSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG59XG5hcnRpY2xlLnN0b3J5IHtcbiAgcGFkZGluZy1ib3R0b206IEBiYXNlbGluZSAvIDI7XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBJTkRFWC5QSFBcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5zdG9yaWVzIGFydGljbGUge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIEBncmF5TGlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZTtcbn1cbi5zdG9yaWVzIGFydGljbGVbY2xhc3MqPVwic3BhblwiXSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnN0b3JpZXMgaDIuZW50cnktdGl0bGUge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAyO1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUvMztcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbn1cbi5zdG9yaWVzIC5lbnRyeS1jb250ZW50IHAge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDI7XG59XG4uc3RvcmllcyBoNS50YWctbGlzdCB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuODE1O1xuICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICBmb250LXdlaWdodDpub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQYWdlL0NvbXBvbmVudCBTcGVjaWZpYyBTdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgXCJhcmNoaXZlcy5sZXNzXCI7XG5AaW1wb3J0IFwic2VhcmNoLmxlc3NcIjtcbkBpbXBvcnQgXCJzdGlja3kubGVzc1wiO1xuQGltcG9ydCBcInNpbmdsZS5sZXNzXCI7XG5AaW1wb3J0IFwiaG9tZXBhZ2UubGVzc1wiO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUG9zdCBQYWdlIENvbnRlbnQgTW9kdWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm1vZHVsZSB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZS8yO1xuICBjb2xvcjogQGJsYWNrO1xuICBoMyB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZS8yO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIGRsIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgZHQsIGRkIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjgxNTtcbiAgICBtYXJnaW46IDAgMCBAYmFzZWxpbmUvMjtcbiAgfVxuICB1bCB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMC44MTU7XG4gIH1cbn1cbi50eXBlLWFzaWRlIHAge1xuICBmb250LXNpemU6IDAuODE1ZW07XG59XG4vKiBkZXByZWNhdGVkIGltYWdlIHR5cGU/ICovXG4uaW1hZ2UgcCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZm9udC1zaXplOiAxMHB4O1xufVxuLmltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxucC53cC1tZWRpYS1jcmVkaXQge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjgxNTtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgY29sb3I6IEBncmF5O1xuICBkaXNwbGF5OiBibG9jaztcbn1cbnAud3AtY2FwdGlvbi10ZXh0IHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogNXB4IDAgMDtcbiAgY29sb3I6IEBncmF5O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmhhbGYsXG4uZnVsbCxcbi5leHRyYWN0IHtcbiAgbWFyZ2luOiAwIDAgQGJhc2VsaW5lO1xufVxuLmhhbGYge1xuICB3aWR0aDogNDAlO1xufVxuLmZ1bGwge1xuICB3aWR0aDogMTAwJTtcbn1cbi5mdWxsLWltYWdlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG59XG4ucHVsbC1xdW90ZSxcbi50eXBlLXB1bGwtcXVvdGUge1xuICBmb250OiBAc2VyaWZGb250RmFtaWx5O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICAgIGJhY2tncm91bmQ6IEBncmF5TGlnaHRlcjtcbiAgfVxuXG4gIGg2IHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUvNDtcbiAgfVxufVxuLkRWLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZS8zO1xufVxuIiwiLy8gQ2F0ZWdvcnksIFRhZyBhbmQgVGF4b25vbXkgUGFnZXNcbi5hcmNoaXZlLWJhY2tncm91bmQge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmU7XG4gIHBhZGRpbmctYm90dG9tOiBAYmFzZWxpbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gIGgxIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAyLjc1O1xuICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lLzM7XG4gIH1cbiAgLnJlbGF0ZWQtdG9waWNzIHtcbiAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuXHR1bCB7XG5cdCAgZmxvYXQ6IGxlZnQ7XG5cdCAgd2lkdGg6IDEwMCU7XG5cdCAgbGlzdC1zdHlsZTogbm9uZTtcblx0ICBtYXJnaW46IDA7XG5cdCAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuXHQgIGxpbmUtaGVpZ2h0OiAxLjM7XG5cdCAgbGkge1xuXHQgICAgZGlzcGxheTogaW5saW5lO1xuXHQgICAgbWFyZ2luOiAwO1xuXHQgICAgcGFkZGluZzogMDtcblx0ICAgICY6Zmlyc3QtY2hpbGQge1xuXHRcdCAgbWFyZ2luLXJpZ2h0OiA1cHg7XG5cdCAgICB9XG5cdCAgICAmOmFmdGVyIHtcblx0ICAgICAgY29udGVudDogXCIsIFwiO1xuXHQgICAgfVxuXHQgICAgJjpmaXJzdC1jaGlsZDphZnRlcixcblx0ICAgICY6bGFzdC1jaGlsZDphZnRlciB7XG5cdCAgICAgIGNvbnRlbnQ6IFwiXCI7XG5cdCAgICB9XG5cdCAgfVxuICAgIH1cbiAgfVxuICAucnNzLXN1YnNjcmliZS1saW5rIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IEByc3M7XG4gICAgaSB7XG5cdCAgcGFkZGluZy1sZWZ0OiAzcHg7XG5cdCAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHQgIHRvcDogLTJweDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogZGFya2VuKEByc3MsIDE1JSk7XG4gICAgfVxufVxufVxuLmFyY2hpdmUgLmhlcm8ge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAxZW0gMDtcbiAgLndwLWNhcHRpb24tdGV4dCxcbiAgLndwLW1lZGlhLWNyZWRpdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuYXJ0aWNsZSBkaXYuaGFzLXRodW1ibmFpbCB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWF4LXdpZHRoOiAzMCU7XG4gIG1hcmdpbjogMCAwIDEwcHggMjBweDtcbn1cbmFydGljbGUgaW1nLmF0dGFjaG1lbnQtcG9zdC10aHVtYm5haWwge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi8vIGhpZXJhcmNoaWNhbCBjYXRlZ29yeSBwYWdlc1xuLnByaW1hcnktZmVhdHVyZWQtcG9zdCxcbi5zZWNvbmRhcnktZmVhdHVyZWQtcG9zdCB7XG4gIHBhZGRpbmc6IDAgMCAyNHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQGdyYXlMaWdodGVyO1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xufVxuLnByaW1hcnktZmVhdHVyZWQtcG9zdCB7XG4gIGgyIHtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZS8zO1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDIuMjU7XG4gIH1cbiAgLmVudHJ5LWNvbnRlbnQgcCxcbiAgLmVudHJ5LWNvbnRlbnQgdWwsXG4gIC5lbnRyeS1jb250ZW50IG9sIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gIH1cbn1cbi5zZWNvbmRhcnktZmVhdHVyZWQtcG9zdCB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yNTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6OTYwcHgpe1xuICAuc2Vjb25kYXJ5LWZlYXR1cmVkLXBvc3Qge1xuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcbiAgICB9XG4gIH1cbn1cblxuLy8gcG9zdHMgb24gYXJjaGl2ZSBwYWdlc1xuLmFyY2hpdmUsXG4uaG9tZSB7XG4gIC5zdG9yaWVzIC5oZXJvLmlzLWltYWdlIGltZyB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbiAgLmVudHJ5LWNvbnRlbnQge1xuICAgICYud2l0aC1oZXJvIHtcbiAgICAgIG1hcmdpbjogLTIycHggNyUgMDtcbiAgICAgIHBhZGRpbmc6IDIycHggMThweDtcbiAgICAgIHdpZHRoOiA4NiU7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgbWFyZ2luOiA4cHggMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDUuYnlsaW5lIHtcbiAgICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuODE1O1xuICAgICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMjtcbiAgICB9XG4gIH1cbn1cblxuLy8gRGF0ZSBBcmNoaXZlXG4uYXJjaGl2ZS1kcm9wZG93biB7XG4gIG1hcmdpbjogQGJhc2VsaW5lLzIgMDtcbn1cblxuLy8gU2VyaWVzIExhbmRpbmdzXG4jc2VyaWVzLWZvb3RlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuI3Nlcmllcy1tYWluICNjb250ZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lO1xufVxuI3Nlcmllcy1oZWFkZXIgLmJ5bGluZSB0aW1lLFxuI3Nlcmllcy1oZWFkZXIgLmJ5bGluZSAuc2VwIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gTG9hZCBtb3JlIHBvc3RzXG4ubG9hZC1tb3JlIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmxvYWRpbmcgLmxvYWQtbW9yZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDMycHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvd3AtYWRtaW4vaW1hZ2VzL2xvYWRpbmcuZ2lmKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogOTYlIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbiIsIi8qKlxuICogU3R5bGVzIGZvciBzZWFyY2ggZm9ybXMgYW5kIHNlYXJjaCByZXN1bHRzXG4gKlxuICogU3R5bGVzIGZvciB0aGUgZ2xvYmFsIG5hdiBzZWFyY2ggYXJlIGluIGxlc3MvaW5jL2hlYWRlci5sZXNzXG4gKi9cblxuLy8gU2VhcmNoIFJlc3VsdHNcbi5hcmNoaXZlLnNlYXJjaC1yZXN1bHRzIHtcbiAgLmlucHV0LWFwcGVuZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5mb3JtLXNlYXJjaCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIGlucHV0IHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cbiAgICBidXR0b24ge1xuICAgICAgd2lkdGg6IDEwJTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuICB9XG4gIC5zZWFyY2gtdGVybSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGdyYXlMaWdodGVyO1xuICAgIHBhZGRpbmc6IDFweCA1cHg7XG4gIH1cbiAgaDMgLnJzcy1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICB9XG4gIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAZ3JheTtcbiAgfVxuXG4gIC5zdG9yaWVzIHtcbiAgICBhcnRpY2xlIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICAgIH1cbiAgfVxuICAvLyBObyBzcGFjaW5nIGFmdGVyIHBhcmFncmFwaCwgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9JTk4vTGFyZ28vcHVsbC8xMTc3XG4gIC5lbnRyeS1jb250ZW50IHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmRhdGUtbGluayBhLFxuICAuZGF0ZS1saW5rIHtcbiAgICBjb2xvcjogQGdyYXk7XG4gIH1cbn1cbi5zZWFyY2gtcmVzdWx0cyAjY29udGVudCAuZm9ybS1zZWFyY2gge1xufVxuXG4vKiBHb29nbGUgQ1NFICovXG4uZ2NzX2NvbnRhaW5lciB7XG4gIG1hcmdpbjogMjBweCAwO1xuXG4gIHRhYmxlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICB0YWJsZSxcbiAgdGJvZHksXG4gIHRyLFxuICB0ZCB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLmdzYy1zZWFyY2gtYm94IHtcbiAgICBtYXJnaW46IDE4cHggMDtcbiAgICAuZ3NzdF9hIC5nc2NiX2Ege1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAzcHg7XG4gICAgfVxuICAgIHRkLmdzaWJfYSB7XG4gICAgICBwYWRkaW5nOiAwIDZweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5nc2MtY29udHJvbC1jc2Uge1xuICAgIC5ncy1yZXN1bHQge1xuICAgICAgLmdzLXRpdGxlLFxuICAgICAgLmdzLXRpdGxlICoge1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuc3RpY2t5LXJlbGF0ZWQsXG4uc3RpY2t5LXNvbG8ge1xuICBhIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIC5vcGFjaXR5KDkwKTtcbiAgICB9XG4gIH1cbn1cbi5zdGlja3ktbWFpbi1mZWF0dXJlIHtcbiAgLmltYWdlLXdyYXAge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGltZyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgJi5zcGFuMyBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIGgyIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG4gIHAge1xuICAgIGEge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgfVxufVxuLnN0aWNreS1mZWF0dXJlcy1saXN0IHtcbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuMjtcbiAgICBtYXJnaW46IDAgMCA4cHggMDtcbiAgfVxuICB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbGkge1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgJi5zdGlja3ktYWxsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAuc3RpY2t5LW1haW4tZmVhdHVyZSB7XG4gICAgLmltYWdlLXdyYXAgaW1nIHtcbiAgICAgIG1hcmdpbjogMCAxNXB4IDE1cHggMDtcbiAgICB9XG4gICAgaDUuYnlsaW5lIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICAuc3Bhbjkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzNjBweCkge1xuICAuc3RpY2t5LW1haW4tZmVhdHVyZSB7XG4gICAgLmhpZGRlbi1waG9uZSB7XG4gICAgICBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC52aXNpYmxlLXBob25lIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIlxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgU2luZ2xlIC0gU3R5bGluZyBmb3Igc2luZ2xlIHBvc3RzICYgcGFnZXMuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgMS4wIC0gTm9ybWFsIGxheW91dCBvdmVycmlkZXMgKG92ZXJyaWRlIHR3byBjb2x1bW4gZGlzcGxheSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmJvZHkubm9ybWFsLnNpbmdsZS1wb3N0LFxuYm9keS5ub3JtYWwucGFnZSB7XG5cbiAgLyogMS4xIC0gSGVhZGVyICovXG5cbiAgYXJ0aWNsZS5wb3N0ID4gaGVhZGVyLFxuICBhcnRpY2xlLnBhZ2UgPiBoZWFkZXIge1xuXG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luOiAyNHB4IDE3LjAyMTMlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vIHRvcCBkYXRlXG4gICAgaDUudG9wLWRhdGUge1xuICAgICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplIC0gMjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICB9XG5cbiAgICAvLyB0b3AgdGFnXG4gICAgaDUudG9wLXRhZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyNnB4O1xuICAgIH1cblxuICAgIC8vIHN1YnRpdGxlXG4gICAgaDIuc3VidGl0bGUge1xuICAgICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yMjI7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgY29sb3I6ICM5OTk7XG4gICAgfVxuXG4gICAgLy8gaGlkZSBub3JtYWwgZGF0ZSBkaXNwbGF5LlxuICAgIC5zZXAsXG4gICAgLmVudHJ5LWRhdGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBlZGl0IGxpbmtcbiAgICAuZWRpdC1saW5rIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIH1cblxuICB9XG5cbiAgLyogMS4yIC0gSGVybyAqL1xuICAuaGVybyB7XG4gICAgcC53cC1jYXB0aW9uLXRleHQsXG4gICAgcC53cC1tZWRpYS1jcmVkaXQge1xuICAgICAgbWFyZ2luOjAgMTcuMDIxMyUgMTJweDtcbiAgICB9XG4gIH1cblxuICAvKiAxLjMgLSBTaWRlYmFyIChsZWZ0IG9mIHBvc3QpICovXG5cbiAgLnNpbmdsZSAjbWFpbiAjc2lkZWJhciB7XG4gICAgICAvKiBhbGwgdG8gdW5kbyBib290c3RyYXAgKi9cbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgLndpZGdldCB7XG4gICAgICAvKiBmbG9hdCB3aWRnZXRzICovXG4gICAgICBmbG9hdDogbGVmdDsgXG4gICAgICBjbGVhcjogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IC8vIGFkZCBwYWRkaW5nIGZvciBndXR0ZXIgYmV0d2VlbiBib2R5IHRleHQgJiBzaWRlYmFyXG4gICAgICB3aWR0aDogMTcuMDIxMjc2NTk0JSAtIEBmbHVpZEdyaWRHdXR0ZXJXaWR0aDtcbiAgICB9XG4gICAgLndpZGdldDpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMDsgLy8gZmlyc3Qgd2lkZ2V0IGZsdXNoIHdpdGggdG9wIG9mIGFydGljbGVcbiAgICB9XG4gIH1cblxuICAvKiAxLjQgLSBFbnRyeSBDb250ZW50ICh0aGUgbWFpbiBwb3N0IGNvbnRlbnQpICovXG5cbiAgLmVudHJ5LWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDAgMTcuMDIxMjc2NTk0JTtcbiAgfVxuXG5cbiAgcC5pbnRybyxcbiAgcC53cC1jYXB0aW9uLXRleHQge1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxuXG4gIC8qIDEuNSAtIEFydGljbGUgQm90dG9tIChhZnRlciBwb3N0IGNvbnRlbnQpICovXG5cbiAgLmFydGljbGUtYm90dG9tIHtcbiAgICBtYXJnaW46IDAgMTcuMDIxMjc2NTk0JTtcbiAgICAucG9zdC1zb2NpYWwge1xuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgI2NvbW1lbnRzLFxuICAjZGlzcXVzX3RocmVhZCB7XG4gICAgbWFyZ2luOiAwIDE3LjAyMTI3NjU5NCU7XG4gIH1cblxuICAvKiAxLjYgLSBPdmVycmlkZXMgKi9cblxuICBAbWVkaWEgQHRhYmxldERvd24ge1xuICAuc2luZ2xlICNtYWluICNzaWRlYmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5hcnRpY2xlLWJvdHRvbSxcbiAgICAjY29tbWVudHMsXG4gICAgI2Rpc3F1c190aHJlYWQge1xuICAgICAgbWFyZ2luOiAwIEBmbHVpZEdyaWRDb2x1bW5XaWR0aDtcbiAgICB9XG4gICAgYXJ0aWNsZS5wb3N0ID4gaGVhZGVyIHtcbiAgICAgIG1hcmdpbjogMjRweCBAZmx1aWRHcmlkQ29sdW1uV2lkdGg7XG4gICAgfVxuICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDAgQGZsdWlkR3JpZENvbHVtbldpZHRoO1xuICAgIH1cbiAgICAuaGVybyB7XG4gICAgICBwLndwLWNhcHRpb24tdGV4dCxcbiAgICAgIHAud3AtbWVkaWEtY3JlZGl0IHtcbiAgICAgICAgbWFyZ2luOjAgQGZsdWlkR3JpZEd1dHRlcldpZHRoIDEycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIEBtb2JpbGUge1xuICAgIC5hcnRpY2xlLWJvdHRvbSxcbiAgICAjY29tbWVudHMsXG4gICAgI2Rpc3F1c190aHJlYWQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICBhcnRpY2xlLnBvc3QgPiBoZWFkZXIge1xuICAgICAgbWFyZ2luOiAyNHB4IDA7XG4gICAgfVxuICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAyLjAgLSBFbnRyeSBFbGVtZW50IFN0eWxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogMi4xIC0gQnlsaW5lICovXG5cbi5ieWxpbmUge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAyO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjkxNTtcbiAgYSB7XG4gICAgY29sb3I6IEB0ZXh0Q29sb3I7XG4gIH1cbiAgLmF1dGhvcixcbiAgLnRpbWUtYWdvLFxuICAuZWRpdC1saW5rIGEge1xuICAgIC8qdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsqL1xuICB9XG4gIC5hdXRob3Ige1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC50aW1lLWFnbyxcbiAgLmVkaXQtbGluayBhIHtcbiAgICBjb2xvcjogQHJlZDtcbiAgfVxufVxuXG4vKiAyLjIgLSBTb2NpYWwgbWVkaWEgbGlua3MgKi9cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5wb3N0LXNvY2lhbCA+IHNwYW4ge1xuICAgIG1pbi13aWR0aDogNTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAucG9zdC1zb2NpYWwgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLy8gRnVkZ2luZyB0byBwcmV2ZW50IG92ZXJsYXAgYmV0d2VlbiB0aGUgaWNvbiBhbmQgdGhlIHRleHRcbiAgLnBvc3Qtc29jaWFsIGkge1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuMmVtO1xuICB9XG59XG5cbi5wb3N0LXNvY2lhbCB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZTtcbiAgJiA+IHNwYW4ge1xuICAgIC8vIGNvcGllZCBmcm9tIHdpZGdldHMvbGFyZ28tZm9sbG93Lmxlc3NcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICBtYXJnaW46IDAuNWVtIDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgY29sb3I6IEB3aGl0ZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgICYgPiBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMC4zZW0gMWVtIDAuM2VtIDAuNWVtOyAvLyBJcnJlZ3VsYXIgcGFkZGluZyBpcyB0byBjb3VudGVyIDAuMmVtIG1hcmdpbi1sZWZ0IG9uIHRoZSBpY29uLlxuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgcGFkZGluZzogMC4zZW0gMC42ZW07XG4gICAgICB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgcGFkZGluZzogMC4zZW0gMC4yZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGEge1xuICAgIGNvbG9yOiBAd2hpdGU7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogQHdoaXRlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuICBpLCAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAuZW1haWw6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICAubW9yZS1zb2NpYWwtbGlua3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBvcmFuZ2U7XG4gICAgY29sb3I6IEB3aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oQG9yYW5nZSwgNSUpO1xuICAgIH1cblxuICAgIC5wb3BvdmVyIHtcbiAgICAgIHRvcDogNDBweDtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiBAZ3JheTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IEBncmF5RGFyaztcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpIHtcbiAgICAgICAgY29sb3I6IEBncmF5TGlnaHQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC4yNWVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgdWwsIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyOHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMDtcblxuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgcmlnaHQ6IDE5cHg7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2Zsb2F0aW5nLXNvY2lhbC1idXR0b25zIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICBib3JkZXI6IDFweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gIC5oaWRkZW4tcGhvbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAucG9zdC1zb2NpYWwge1xuICAgICYgPiBzcGFuIHtcbiAgICAgIHBhZGRpbmctbGVmdDogLTEwMCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG5cbiAgICAgICY6aG92ZXIgeyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuICAgICAgJiA+IGEge1xuICAgICAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMThweDtcbiAgICAgICAgbWluLXdpZHRoOiAyOHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiAyOHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmID4gLmVtYWlsOmhvdmVyLFxuICAgICYgPiBzcGFuOmhvdmVyID4gYSB7XG4gICAgICBjb2xvcjogQHdoaXRlO1xuICAgIH1cbiAgfVxuICAucnNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2hpdGU7XG4gICAgY29sb3I6IEBncmF5TGlnaHRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAcnNzLCA1JSk7XG4gICAgfVxuICB9XG4gIC50d2l0dGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2hpdGU7XG4gICAgY29sb3I6IEBncmF5TGlnaHRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAdHdpdHRlciwgNSUpO1xuICAgIH1cbiAgfVxuICAuZmFjZWJvb2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBmYWNlYm9vaywgNSUpO1xuICAgIH1cbiAgfVxuICAubGlua2VkaW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBsaW5rZWRpbiwgNSUpO1xuICAgIH1cbiAgfVxuICAuZ3BsdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBncGx1cywgNSUpO1xuICAgIH1cbiAgfVxuICAuZmxpY2tyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2hpdGU7XG4gICAgY29sb3I6IEBncmF5TGlnaHRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAZmxpY2tyLCA1JSk7XG4gICAgfVxuICB9XG4gIC55b3V0dWJlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2hpdGU7XG4gICAgY29sb3I6IEBncmF5TGlnaHRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAeW91dHViZSwgNSUpO1xuICAgIH1cbiAgfVxuICAucHJpbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCM4NTg5OEYsIDUlKTtcbiAgICB9XG4gIH1cbiAgLmVtYWlsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2hpdGU7XG4gICAgY29sb3I6IEBncmF5TGlnaHRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigjNjI2NTZGLCA1JSk7XG4gICAgfVxuICB9XG4gIC5tb3JlLXNvY2lhbC1saW5rcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdoaXRlO1xuICAgIGNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gICAgYS5wb3BwZWQsXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAb3JhbmdlO1xuICAgICAgY29sb3I6IEB3aGl0ZTtcbiAgICB9XG5cbiAgICAucG9wb3ZlciB7XG4gICAgICB0b3A6IDY4cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgIGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogQGdyYXk7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiBAZ3JheURhcms7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNvY2lhbC1idG4ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgIG1hcmdpbjogMC41ZW0gMDtcbiAgICBwYWRkaW5nOiAwLjVlbTtcbiAgfVxuICAucG9zdC1zb2NpYWwge1xuICAgIGE6aG92ZXIgaSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vKiAyLjMgLSBEZWZhdWx0IFdQIFBvc3QgUGFnaW5hdGlvbiBcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogTk9URTogTGFyZ28gaGFzIGEgd2lkZ2V0IHRvIGhhbmRsZSBwb3N0IHBhZ2luYXRpb24sIHRoZXNlIHN0eWxlIGRlZmF1bHQgV1Agb3V0cHV0XG4gKlxuICogQHNlZSAvbGVzcy9pbmMvd2lkZ2V0cy9sYXJnby1wcmV2LW5leHQtbGlua3MubGVzc1xuICovXG4ucG9zdC1wYWdpbmF0aW9uIHtcbiAgYSwgc3BhbiB7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjgxNTtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLyogMi40IC0gUG9zdCBtZXRhICovXG5cbi5sYWJlbHMsXG4udGFncyxcbi5wYWdlcixcbi50YWdzLFxuLnBhZ2VyIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xufVxuXG4uc2luZ2xlLXBvc3QgLmF1dGhvci1ib3gsXG4uc2luZ2xlLWFyZ29saW5rcm91bmR1cHMgLmF1dGhvci1ib3gsXG4ubGFiZWxzIHtcbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuMjtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4ubGFiZWxzIC5zZXJpZXMtbGFiZWwgaDUge1xuICBhLnJzcy1saW5rIHtcbiAgICBmbG9hdDpyaWdodDtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgY29sb3I6ICNmODk0MDY7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICsgMjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIC5vcGFjaXR5KDg1KTtcbiAgICB9XG4gIH1cbn1cblxuLyogMi41IC0gTGFibGVzICovXG5cbi5zZXJpZXMtbGFiZWwge1xuICBtYXJnaW46IDVweDtcbiAgcGFkZGluZzogOHB4O1xuICBoNSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjgxNTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8qKlxuICogU3R5bGVzIGZvciB0aGUgcG9zdC1sZWFkaW5nIGhlcm8sIHVzZWQgaW4gYm90aCBzaW5nbGUtY29sdW1uIC5ub3JtYWwgcG9zdHMgYW5kIHR3by1jb2x1bW4gLmNsYXNzaWMgcG9zdHNcbiAqXG4gKiBAc2luY2UgMC41LjVcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9JTk4vTGFyZ28vaXNzdWVzLzkzNFxuICovXG5cbi5oZXJvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIDAgMjRweDtcbiAgJi5pcy1nYWxsZXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICBwLndwLWNhcHRpb24tdGV4dCxcbiAgcC53cC1tZWRpYS1jcmVkaXQge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAtIDI7XG4gIH1cbiAgcC53cC1jYXB0aW9uLXRleHQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luOiAwIDEycHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gIH1cbiAgcC53cC1tZWRpYS1jcmVkaXQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG1hcmdpbjogNHB4IDEycHggNHB4O1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cbiAgJi5pcy1lbWJlZCxcbiAgJi5pcy12aWRlbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgICAuZW1iZWQtY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG4gICYuaXMtZW1wdHkge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICB9XG59XG4iLCIuaG9tZSAuc3RvcmllcyBhcnRpY2xlIGltZy5hdHRhY2htZW50LW1lZGl1bSxcbi5zdWItc3RvcmllcyBpbWcuYXR0YWNobWVudC1wb3N0LXRodW1ibmFpbCB7XG4gIG1heC13aWR0aDogMzAlO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMCAwIDEwcHggMjBweDtcbn1cblxuI2hvbWVwYWdlLWJvdHRvbSB7XG4gIG1hcmdpbi10b3A6IEBiYXNlbGluZTtcbiAgLndpZGdldCB7XG4gICAgd2lkdGg6IDQyLjUlO1xuICAgIHBhZGRpbmc6IDIuNSU7XG4gICAgJi5vZGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgICAmLmV2ZW4ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgY2xlYXI6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwiaW5jL3ZhcmlhYmxlcy5sZXNzXCI7XG5AaW1wb3J0IFwiaW5jL21peGlucy5sZXNzXCI7XG5AaW1wb3J0IFwiaW5jL3R5cG9ncmFwaHkubGVzc1wiO1xuQGltcG9ydCBcImluYy9wb3N0cy1hbmQtcGFnZXMubGVzc1wiO1xuXG5odG1sIC5tY2VDb250ZW50Qm9keSB7XG5cdHdpZHRoOiA5NSU7XG5cdG1heC13aWR0aDogNzcxcHg7XG5cdG1hcmdpbjogMCAyLjUlO1xufVxuIl19 */ \ No newline at end of file diff --git a/css/editor-style.min.css b/css/editor-style.min.css index 80029af98..5c0e471fe 100644 --- a/css/editor-style.min.css +++ b/css/editor-style.min.css @@ -1 +1 @@ -.hide-text,pre code{background-color:transparent}#floating-social-buttons .post-social>span:hover,.post-social .email:hover,.post-social>span:hover{cursor:pointer}.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}.visuallyhidden{position:absolute;overflow:hidden;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0}.hide-text{font:0/0 a;color:transparent;text-shadow:none;border:0}address,dfn,em,p.intro{font-style:italic}#page,body{background-color:#fff}.input-block-level{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}body{margin:0;font-family:Georgia,"Times New Roman",Times,serif;font-size:16px;font-weight:400;line-height:1.5;color:#484848}#page{padding:0 20px}a{color:#2275bb;text-decoration:none}a:hover{color:#368fda;text-decoration:underline}a.more-link{white-space:nowrap}address,dl,fieldset,h1,h2,h3,h4,h5,h6,hr,ol,p,pre,table,ul{margin:0 0 24px}h1{font-size:54px}h1.entry-title,h2{font-size:44px}h1.entry-title{margin-bottom:12px;line-height:1}blockquote p,p{line-height:1.5}blockquote small,pre{display:block;line-height:24px}h3{font-size:36px}.entry-content h1,.entry-content h2,.entry-content h3,h4{font-size:29.33px}.entry-content h4,.stories h3,h5{font-size:24px}.entry-content h5.top-tag,.widget h5.top-tag,h5.top-tag{font-size:16px;margin-bottom:4.8px;text-transform:uppercase;color:#aaa}.entry-content h5.top-tag a,.widget h5.top-tag a,h5.top-tag a{color:#aaa}.entry-content h5,h6{font-size:19.55px}.entry-content h6{font-size:16px;text-transform:uppercase}h1,h2,h3,h4,h5,h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:700;color:inherit;line-height:1.3;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-size:.815em}.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6{margin-bottom:24px}p{font-size:19.55px;margin:0 0 24px}p small,p.small{font-size:13.04px;color:#aaa}p.xsmall{font-size:10.67px;color:#aaa}p.intro{font-size:24px;color:#7d8185}ol,ul{padding:0;margin:0 0 24px 25px}.entry-content ol,.entry-content ul{font-size:19.55px}ol ol,ol ul,ul ol,ul ul{margin-top:8px;margin-bottom:0}ul{list-style:disc}ol{list-style:decimal}ol ol{list-style:lower-alpha}ol ol ol{list-style:lower-roman}li{margin-bottom:12px}ol.unstyled,ul.unstyled{margin-left:0;list-style:none}address,pre{margin:0 0 24px}dfn,dl dt,strong{font-weight:700}dd{margin-left:5px}abbr,acronym{border-bottom:1px dotted #aaa}del{color:#aaa}blockquote{clear:both;padding:5px 15px 5px 30px;margin:24px;border-left:5px solid #ddd}blockquote p{font-size:16px;margin:12px 0}blockquote small{color:#aaa}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-left:0;border-right:5px solid #ddd;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}code,pre{padding:0 3px 2px;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;font-size:14px;color:#484848}.archive-background .related-topics,.archive-background .rss-subscribe-link,.labels,.pager,.post-pagination a,.post-pagination span,.post-social>span,.stories h5.tag-list,.tags{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8}pre{padding:12px;font-size:14.8px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15)}pre.prettyprint{margin-bottom:24px}pre code{padding:0;color:inherit;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}hr{margin:24px 0;border:0;border-top:1px solid #ddd;border-bottom:1px solid #fff}.entry-content,.page-header,.post-footer,.post-header,.stories article,article.story{margin-bottom:24px}.page-header,.post-header,article.story{border-bottom:1px solid #ddd}article.story{padding-bottom:12px}.stories article{border-bottom:1px dotted #aaa}.stories article[class*=span]{margin-left:0}.stories h2.entry-title{font-size:32px;margin-bottom:8px;line-height:1.1}.stories .entry-content p{font-size:16px;margin-bottom:12px}.stories h5.tag-list{font-size:13.04px;font-weight:400;line-height:1.5;margin-bottom:0}.archive-background{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #ddd}.archive-background h1{font-size:44px;margin-bottom:3px}.archive-background p{font-size:16px;margin-bottom:8px}.archive-background .related-topics ul{float:left;width:100%;list-style:none;margin:0;font-size:16px;line-height:1.3}.archive-background .related-topics ul li{display:inline;margin:0;padding:0}.archive-background .related-topics ul li:first-child{margin-right:5px}.archive-background .related-topics ul li:after{content:", "}.archive-background .related-topics ul li:first-child:after,.archive-background .related-topics ul li:last-child:after{content:""}.archive-background .rss-subscribe-link{float:right;margin-top:10px;text-transform:uppercase;color:#f89406}.archive-background .rss-subscribe-link i{padding-left:3px;position:relative;top:-2px}.archive-background .rss-subscribe-link:hover{text-decoration:none;color:#ad6704}.archive .hero{clear:both;margin:1em 0}.archive .hero .wp-caption-text,.archive .hero .wp-media-credit{display:none}article div.has-thumbnail{float:right;max-width:30%;margin:0 0 10px 20px}article img.attachment-post-thumbnail{float:right}.primary-featured-post,.secondary-featured-post{padding:0 0 24px;border-bottom:1px solid #ddd;margin-bottom:24px}.primary-featured-post h2{line-height:1.1;margin-bottom:8px;font-size:36px}.primary-featured-post .entry-content ol,.primary-featured-post .entry-content p,.primary-featured-post .entry-content ul{font-size:16px}.secondary-featured-post{margin-bottom:40px}.secondary-featured-post img{margin-bottom:0;width:100%}.secondary-featured-post h2{margin-bottom:12px;line-height:1.3;font-size:20px}@media (min-width:960px){.secondary-featured-post h2{font-size:24px}}.archive .stories .hero.is-image img,.home .stories .hero.is-image img{clear:both;float:none;display:block;margin:0 auto}.archive .entry-content.with-hero,.home .entry-content.with-hero{margin:-22px 7% 0;padding:22px 18px;width:86%;background:#fff}@media screen and (max-width:768px){.archive .entry-content.with-hero,.home .entry-content.with-hero{margin:8px 0 0;padding:0;width:100%}}.archive .entry-content h5.byline,.home .entry-content h5.byline{font-size:13.04px;margin-bottom:12px}.archive-dropdown{margin:12px 0}#series-footer{clear:both}#series-main #content{margin-bottom:24px}#series-header .byline .sep,#series-header .byline time{display:none}.load-more{display:inline-block}.loading .load-more{padding-right:32px;background-image:url(/wp-admin/images/loading.gif);background-position:96% center;background-repeat:no-repeat}.archive.search-results .input-append{width:100%;position:relative}.archive.search-results .form-search{margin-bottom:1em}.archive.search-results .form-search input{width:90%;box-sizing:border-box}.archive.search-results .form-search button{width:10%;box-sizing:border-box}.archive.search-results .search-term{background-color:#ddd;padding:1px 5px}.archive.search-results h3 .rss-link{margin-left:1em}.archive.search-results h3{margin-bottom:1em;padding-bottom:.5em;border-bottom:1px solid #7d8185}.archive.search-results .stories article{padding-bottom:12px}.archive.search-results .entry-content p{margin-bottom:0}.archive.search-results .date-link,.archive.search-results .date-link a{color:#7d8185}.gcs_container{margin:20px 0}.gcs_container table{margin:0}.gcs_container table,.gcs_container tbody,.gcs_container td,.gcs_container tr{border:none}.gcs_container .gsc-search-box{margin:18px 0}.gcs_container .gsc-search-box .gsst_a .gscb_a{position:relative;top:3px}.gcs_container .gsc-search-box td.gsib_a{padding:0 6px!important}.gcs_container .gsc-control-cse .gs-result .gs-title,.gcs_container .gsc-control-cse .gs-result .gs-title *{font-size:22px;line-height:1.2}.sticky-related a:hover,.sticky-solo a:hover{opacity:.9;filter:alpha(opacity=90)}.sticky-main-feature .image-wrap{float:left}.sticky-main-feature .image-wrap img{float:left;display:block;position:relative;z-index:1;margin:0;max-width:100%}.sticky-main-feature .image-wrap.span3 img{width:100%}.sticky-main-feature h2{line-height:1;margin-bottom:10px}.sticky-main-feature p a{font-weight:700;white-space:nowrap}.sticky-features-list h4{font-size:19.2px;margin:0 0 8px}.sticky-features-list ul{margin:0;list-style:none}.sticky-features-list ul li{list-style-type:disc;margin-left:20px;margin-bottom:7px;line-height:1.2}.sticky-features-list ul li.sticky-all{font-weight:700}@media (max-width:360px){.sticky-main-feature .image-wrap img{margin:0 15px 15px 0}.sticky-main-feature h5.byline{clear:both}.sticky-main-feature .span9{width:100%}}@media (min-width:360px){.sticky-main-feature .hidden-phone{display:inherit!important}.sticky-main-feature .visible-phone{display:none!important}}body.normal.page article.page>header,body.normal.page article.post>header,body.normal.single-post article.page>header,body.normal.single-post article.post>header{clear:both;margin:24px 17.0213%;position:relative}body.normal.page article.page>header h5.top-date,body.normal.page article.post>header h5.top-date,body.normal.single-post article.page>header h5.top-date,body.normal.single-post article.post>header h5.top-date{font-size:14px;font-weight:400;position:absolute;right:0}body.normal.page article.page>header h5.top-tag,body.normal.page article.post>header h5.top-tag,body.normal.single-post article.page>header h5.top-tag,body.normal.single-post article.post>header h5.top-tag{position:absolute;left:0}.post-social i,.post-social::before,.post-social>span{position:relative}body.normal.page article.page>header h1,body.normal.page article.post>header h1,body.normal.single-post article.page>header h1,body.normal.single-post article.post>header h1{padding-top:26px}body.normal.page article.page>header h2.subtitle,body.normal.page article.post>header h2.subtitle,body.normal.single-post article.page>header h2.subtitle,body.normal.single-post article.post>header h2.subtitle{font-size:19.55px;font-weight:400;color:#999}body.normal.page article.page>header .entry-date,body.normal.page article.page>header .sep,body.normal.page article.post>header .entry-date,body.normal.page article.post>header .sep,body.normal.single-post article.page>header .entry-date,body.normal.single-post article.page>header .sep,body.normal.single-post article.post>header .entry-date,body.normal.single-post article.post>header .sep{display:none}body.normal.page article.page>header .edit-link,body.normal.page article.post>header .edit-link,body.normal.single-post article.page>header .edit-link,body.normal.single-post article.post>header .edit-link{padding-left:5px}body.normal.page .hero,body.normal.single-post .hero{text-align:center;background-color:#efefef;width:100%;margin:0 0 24px}body.normal.page .hero.is-gallery,body.normal.single-post .hero.is-gallery{background-color:transparent}body.normal.page .hero p.wp-caption-text,body.normal.page .hero p.wp-media-credit,body.normal.single-post .hero p.wp-caption-text,body.normal.single-post .hero p.wp-media-credit{float:none;text-align:left;font-size:14px;margin:0 17.0213% 12px;padding-top:4px}body.normal.page .hero p.wp-media-credit,body.normal.single-post .hero p.wp-media-credit{text-align:right;margin-top:4px;min-height:0}body.normal.page .hero.is-video,body.normal.single-post .hero.is-video{margin-bottom:24px}body.normal.page .hero.is-video .embed-container,body.normal.single-post .hero.is-video .embed-container{margin-bottom:0}body.normal.page .hero.is-empty,body.normal.single-post .hero.is-empty{min-height:0;height:0}body.normal.page .single #main #sidebar,body.normal.single-post .single #main #sidebar{float:none;width:auto;min-height:0;margin-left:0}body.normal.page #comments,body.normal.page #disqus_thread,body.normal.page .article-bottom,body.normal.single-post #comments,body.normal.single-post #disqus_thread,body.normal.single-post .article-bottom{margin:0 17.021276594%}body.normal.page .single #main #sidebar .widget,body.normal.single-post .single #main #sidebar .widget{float:left;clear:left;padding-right:20px;width:14.89361702%}body.normal.page .single #main #sidebar .widget:first-child,body.normal.single-post .single #main #sidebar .widget:first-child{padding-top:0}body.normal.page .entry-content,body.normal.single-post .entry-content{padding:0 17.021276594%}body.normal.page p.intro,body.normal.page p.wp-caption-text,body.normal.single-post p.intro,body.normal.single-post p.wp-caption-text{font-style:normal}body.normal.page .article-bottom .post-social,body.normal.single-post .article-bottom .post-social{border-top:none;border-bottom:none}@media only screen and (max-width:979px){body.normal.page .single #main #sidebar,body.normal.single-post .single #main #sidebar{display:none}body.normal.page #comments,body.normal.page #disqus_thread,body.normal.page .article-bottom,body.normal.single-post #comments,body.normal.single-post #disqus_thread,body.normal.single-post .article-bottom{margin:0 6.38297872%}body.normal.page article.post>header,body.normal.single-post article.post>header{margin:24px 6.38297872%}body.normal.page .entry-content,body.normal.single-post .entry-content{padding:0 6.38297872%}body.normal.page .hero p.wp-caption-text,body.normal.page .hero p.wp-media-credit,body.normal.single-post .hero p.wp-caption-text,body.normal.single-post .hero p.wp-media-credit{margin:0 2.12765957% 12px}}@media only screen and (max-width:529px){body.normal.page #comments,body.normal.page #disqus_thread,body.normal.page .article-bottom,body.normal.single-post #comments,body.normal.single-post #disqus_thread,body.normal.single-post .article-bottom{margin:0}body.normal.page article.post>header,body.normal.single-post article.post>header{margin:24px 0}body.normal.page .entry-content,body.normal.single-post .entry-content{padding:0}}.byline{margin-bottom:12px;font-weight:400;font-size:14.64px}.byline a{color:#484848}.byline .author{font-weight:700}.byline .edit-link a,.byline .time-ago{color:#bd261d}@media (max-width:768px){.post-social>span{min-width:50px;text-align:center;display:inline-block}}@media (min-width:769px){.post-social>span{display:inline-block}.post-social i{margin-right:.5em;margin-left:.2em}}.post-social{margin-bottom:24px}.post-social>span{line-height:1.5em;max-width:250px;margin:.5em 0;text-align:center;text-transform:uppercase;font-weight:300;font-size:16px;color:#fff}.post-social>span:last-child{margin-right:0}.post-social>span>a{display:block;padding:.3em 1em .3em .5em}@media (max-width:768px){.post-social>span>a{padding:.3em .6em}}@media (max-width:480px){.post-social>span>a{padding:.3em .2em}}.post-social a{color:#fff}.post-social a:hover{color:#fff;text-decoration:none}.post-social .more-social-links{background-color:#f89406;color:#fff}.post-social .more-social-links:hover{background-color:#fa9f1e}.post-social .more-social-links .popover{top:40px}.post-social .more-social-links .popover a{color:#7d8185;position:relative;float:left}.post-social .more-social-links .popover a:hover{color:#484848;text-decoration:underline}.post-social .more-social-links .popover i{color:#aaa;margin-right:.25em;position:absolute;top:0;left:0}.post-social .more-social-links .popover li,.post-social .more-social-links .popover ul{list-style-type:none;margin:0;padding:0;font-size:14px;line-height:20px}.post-social .more-social-links .popover li{margin-bottom:.5em;float:left}.post-social .more-social-links .popover li:last-child{margin-bottom:0}.post-social .more-social-links .popover li span{display:block;margin-left:28px}@media (max-width:480px){.post-social .more-social-links .popover{left:auto;right:0}.post-social .more-social-links .popover:after,.post-social .more-social-links .popover:before{left:auto}.post-social .more-social-links .popover:before{right:19px}.post-social .more-social-links .popover:after{right:20px}}#floating-social-buttons{transition:opacity .2s;border:1px solid #ddd}#floating-social-buttons .hidden-phone{display:none}#floating-social-buttons .post-social>span{display:block;margin:0;padding:0;font-size:20px}#floating-social-buttons .post-social>span>a{color:#ddd;display:block;padding:18px;min-width:28px;min-height:28px}#floating-social-buttons .post-social>.email:hover,#floating-social-buttons .post-social>span:hover>a{color:#fff}#floating-social-buttons .rss{background-color:#fff;color:#ddd}#floating-social-buttons .rss:hover{background-color:#df8505}#floating-social-buttons .twitter{background-color:#fff;color:#ddd}#floating-social-buttons .twitter:hover{background-color:#3ea1ec}#floating-social-buttons .facebook{background-color:#fff;color:#ddd}#floating-social-buttons .facebook:hover{background-color:#334c83}#floating-social-buttons .linkedin{background-color:#fff;color:#ddd}#floating-social-buttons .linkedin:hover{background-color:#006a9d}#floating-social-buttons .gplus{background-color:#fff;color:#ddd}#floating-social-buttons .gplus:hover{background-color:#d73925}#floating-social-buttons .flickr{background-color:#fff;color:#ddd}#floating-social-buttons .flickr:hover{background-color:#e60077}#floating-social-buttons .youtube{background-color:#fff;color:#ddd}#floating-social-buttons .youtube:hover{background-color:#d8201a}#floating-social-buttons .print{background-color:#fff;color:#ddd}#floating-social-buttons .print:hover{background-color:#787c83}#floating-social-buttons .email{background-color:#fff;color:#ddd}#floating-social-buttons .email:hover{background-color:#565961}#floating-social-buttons .more-social-links{background-color:#fff;color:#ddd}#floating-social-buttons .more-social-links a.popped,#floating-social-buttons .more-social-links:hover{background-color:#f89406;color:#fff}#floating-social-buttons .more-social-links .popover{top:68px;font-size:14px}#floating-social-buttons .more-social-links .popover i{margin-right:.25em}#floating-social-buttons .more-social-links .popover a{color:#7d8185}#floating-social-buttons .more-social-links .popover a:hover{color:#484848;text-decoration:underline}#floating-social-buttons .social-btn{line-height:1.5em;max-width:250px;margin:.5em 0;padding:.5em}#floating-social-buttons .post-social{margin-bottom:0}#floating-social-buttons .post-social a:hover i{opacity:1}#floating-social-buttons .post-social i{margin:0}.post-pagination a,.post-pagination span{padding:5px;text-transform:uppercase;font-size:13.04px}.post-pagination a:first-child,.post-pagination span:first-child{padding-left:0}.labels,.pager,.tags{list-style:none;font-size:16px}.labels h5,.single-argolinkroundups .author-box h5,.single-post .author-box h5{font-size:19.2px;line-height:1;margin-bottom:0}.labels .series-label h5 a.rss-link{float:right;margin-top:4px;color:#f89406;font-size:18px}.labels .series-label h5 a.rss-link:hover{opacity:.85;filter:alpha(opacity=85)}.series-label{margin:5px;padding:8px}.series-label h5{background:0 0;padding:0;margin-bottom:2px}.series-label p{font-size:13.04px;margin-bottom:0}.home .stories article img.attachment-medium,.sub-stories img.attachment-post-thumbnail{max-width:30%;float:right;margin:0 0 10px 20px}.module,.module h3{margin-bottom:12px}#homepage-bottom{margin-top:24px}#homepage-bottom .widget{width:42.5%;padding:2.5%}#homepage-bottom .widget.odd{float:left;clear:both;margin-left:0}#homepage-bottom .widget.even{float:right;clear:none}.module{color:#000}.module h3{font-size:16px;font-weight:700}.module dl{margin:0}.module dd,.module dt{font-size:13.04px;margin:0 0 12px}.module ul{font-size:13.04px}.type-aside p{font-size:.815em}.image p{display:inline;font-size:10px}.image img{display:block}p.wp-media-credit{font-size:13.04px;margin:0;text-align:right;color:#7d8185;display:block}p.wp-caption-text{font-size:16px!important;margin:5px 0 0;color:#7d8185;font-style:italic;line-height:1.5;display:block}.extract,.full,.half{margin:0 0 24px}.half{width:40%}.full{width:100%}.full-image{text-align:center;background-color:#ddd}.pull-quote,.type-pull-quote{font:Georgia,"Times New Roman",Times,serif;font-style:italic;font-size:24px;line-height:1.3}.pull-quote::after,.pull-quote::before,.type-pull-quote::after,.type-pull-quote::before{content:"";display:block;height:1px;width:100%;margin:20px auto;background:#ddd}.pull-quote h6,.type-pull-quote h6{font-size:16px;margin:0;text-transform:none}.pull-quote p,.type-pull-quote p{font-size:24px;margin-bottom:6px}.DV-container{margin-bottom:8px}html .mceContentBody{width:95%;max-width:771px;margin:0 2.5%} \ No newline at end of file +#floating-social-buttons .post-social>span:hover,.post-social .email:hover,.post-social>span:hover{cursor:pointer}.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}.visuallyhidden{position:absolute;overflow:hidden;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}#page,body{background-color:#fff}h1.entry-title,h2{font-size:44px}address,dfn,em,p.intro{font-style:italic}.input-block-level{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}body{margin:0;font-family:Georgia,"Times New Roman",Times,serif;font-size:16px;font-weight:400;line-height:1.5;color:#484848}#page{padding:0 20px}a{color:#2275bb;text-decoration:none}a:hover{color:#368fda;text-decoration:underline}a.more-link{white-space:nowrap}address,dl,fieldset,h1,h2,h3,h4,h5,h6,hr,ol,p,pre,table,ul{margin:0 0 24px}h1{font-size:54px}h1.entry-title{margin-bottom:12px;line-height:1}h3{font-size:36px}.entry-content h1,.entry-content h2,.entry-content h3,h4{font-size:29.33px}.entry-content h4,.stories h3,h5{font-size:24px}.entry-content h5.top-tag,.widget h5.top-tag,h5.top-tag{font-size:16px;margin-bottom:4.8px;text-transform:uppercase;color:#aaa}.entry-content h5.top-tag a,.widget h5.top-tag a,h5.top-tag a{color:#aaa}.entry-content h5,h6{font-size:19.55px}.entry-content h6{font-size:16px;text-transform:uppercase}h1,h2,h3,h4,h5,h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:700;color:inherit;line-height:1.3;text-rendering:optimizelegibility}blockquote p,p{line-height:1.5}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-size:.815em}.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6{margin-bottom:24px}p{font-size:19.55px;margin:0 0 24px}p small,p.small{font-size:13.04px;color:#aaa}p.xsmall{font-size:10.67px;color:#aaa}p.intro{font-size:24px;color:#7d8185}blockquote small,del{color:#aaa}ol,ul{padding:0;margin:0 0 24px 25px}.entry-content ol,.entry-content ul{font-size:19.55px}ol ol,ol ul,ul ol,ul ul{margin-top:8px;margin-bottom:0}ul{list-style:disc}ol{list-style:decimal}ol ol{list-style:lower-alpha}ol ol ol{list-style:lower-roman}li{margin-bottom:12px}ol.unstyled,ul.unstyled{margin-left:0;list-style:none}dfn,dl dt,strong{font-weight:700}dd{margin-left:5px}abbr,acronym{border-bottom:1px dotted #aaa}address{margin:0 0 24px}blockquote{clear:both;padding:5px 15px 5px 30px;margin:24px;border-left:5px solid #ddd}blockquote p{font-size:16px;margin:12px 0}blockquote small,pre{display:block;line-height:24px}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-left:0;border-right:5px solid #ddd;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}code,pre{padding:0 3px 2px;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;font-size:14px;color:#484848}.archive-background .related-topics,.archive-background .rss-subscribe-link,.labels,.pager,.post-pagination a,.post-pagination span,.post-social>span,.stories h5.tag-list,.tags{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8}pre{padding:12px;margin:0 0 24px;font-size:14.8px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15)}pre.prettyprint{margin-bottom:24px}pre code{padding:0;color:inherit;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}hr{margin:24px 0;border:0;border-top:1px solid #ddd;border-bottom:1px solid #fff}.entry-content,.page-header,.post-footer,.post-header,.stories article,article.story{margin-bottom:24px}.page-header,.post-header,article.story{border-bottom:1px solid #ddd}article.story{padding-bottom:12px}.stories article{border-bottom:1px dotted #aaa}.stories article[class*=span]{margin-left:0}.stories h2.entry-title{font-size:32px;margin-bottom:8px;line-height:1.1}.stories .entry-content p{font-size:16px;margin-bottom:12px}.stories h5.tag-list{font-size:13.04px;font-weight:400;line-height:1.5;margin-bottom:0}.archive-background{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #ddd}.archive-background h1{font-size:44px;margin-bottom:3px}.archive-background p{font-size:16px;margin-bottom:8px}.archive-background .related-topics ul{float:left;width:100%;list-style:none;margin:0;font-size:16px;line-height:1.3}.archive-background .related-topics ul li{display:inline;margin:0;padding:0}.archive-background .related-topics ul li:first-child{margin-right:5px}.archive-background .related-topics ul li:after{content:", "}.archive-background .related-topics ul li:first-child:after,.archive-background .related-topics ul li:last-child:after{content:""}.archive-background .rss-subscribe-link{float:right;margin-top:10px;text-transform:uppercase;color:#f89406}.archive-background .rss-subscribe-link i{padding-left:3px;position:relative;top:-2px}.archive-background .rss-subscribe-link:hover{text-decoration:none;color:#ad6704}.archive .hero{clear:both;margin:1em 0}.archive .hero .wp-caption-text,.archive .hero .wp-media-credit{display:none}article div.has-thumbnail{float:right;max-width:30%;margin:0 0 10px 20px}article img.attachment-post-thumbnail{float:right}.primary-featured-post,.secondary-featured-post{padding:0 0 24px;border-bottom:1px solid #ddd;margin-bottom:24px}.primary-featured-post h2{line-height:1.1;margin-bottom:8px;font-size:36px}.primary-featured-post .entry-content ol,.primary-featured-post .entry-content p,.primary-featured-post .entry-content ul{font-size:16px}.secondary-featured-post{margin-bottom:40px}.secondary-featured-post img{margin-bottom:0;width:100%}.secondary-featured-post h2{margin-bottom:12px;line-height:1.3;font-size:20px}@media (min-width:960px){.secondary-featured-post h2{font-size:24px}}.archive .stories .hero.is-image img,.home .stories .hero.is-image img{clear:both;float:none;display:block;margin:0 auto}.archive .entry-content.with-hero,.home .entry-content.with-hero{margin:-22px 7% 0;padding:22px 18px;width:86%;background:#fff}@media screen and (max-width:768px){.archive .entry-content.with-hero,.home .entry-content.with-hero{margin:8px 0 0;padding:0;width:100%}}.archive .entry-content h5.byline,.home .entry-content h5.byline{font-size:13.04px;margin-bottom:12px}.archive-dropdown{margin:12px 0}#series-footer{clear:both}#series-main #content{margin-bottom:24px}#series-header .byline .sep,#series-header .byline time{display:none}.load-more{display:inline-block}.loading .load-more{padding-right:32px;background-image:url(/wp-admin/images/loading.gif);background-position:96% center;background-repeat:no-repeat}.archive.search-results .input-append{width:100%;position:relative}.archive.search-results .form-search{margin-bottom:1em}.archive.search-results .form-search input{width:90%;box-sizing:border-box}.archive.search-results .form-search button{width:10%;box-sizing:border-box}.archive.search-results .search-term{background-color:#ddd;padding:1px 5px}.archive.search-results h3 .rss-link{margin-left:1em}.archive.search-results h3{margin-bottom:1em;padding-bottom:.5em;border-bottom:1px solid #7d8185}.archive.search-results .stories article{padding-bottom:12px}.archive.search-results .entry-content p{margin-bottom:0}.archive.search-results .date-link,.archive.search-results .date-link a{color:#7d8185}.gcs_container{margin:20px 0}.gcs_container table{margin:0}.gcs_container table,.gcs_container tbody,.gcs_container td,.gcs_container tr{border:none}.gcs_container .gsc-search-box{margin:18px 0}.gcs_container .gsc-search-box .gsst_a .gscb_a{position:relative;top:3px}.gcs_container .gsc-search-box td.gsib_a{padding:0 6px!important}.gcs_container .gsc-control-cse .gs-result .gs-title,.gcs_container .gsc-control-cse .gs-result .gs-title *{font-size:22px;line-height:1.2}.sticky-related a:hover,.sticky-solo a:hover{opacity:.9;filter:alpha(opacity=90)}.sticky-main-feature .image-wrap{float:left}.sticky-main-feature .image-wrap img{float:left;display:block;position:relative;z-index:1;margin:0;max-width:100%}.sticky-main-feature .image-wrap.span3 img{width:100%}.sticky-main-feature h2{line-height:1;margin-bottom:10px}.sticky-main-feature p a{font-weight:700;white-space:nowrap}.sticky-features-list h4{font-size:19.2px;margin:0 0 8px}.sticky-features-list ul{margin:0;list-style:none}.sticky-features-list ul li{list-style-type:disc;margin-left:20px;margin-bottom:7px;line-height:1.2}.sticky-features-list ul li.sticky-all{font-weight:700}@media (max-width:360px){.sticky-main-feature .image-wrap img{margin:0 15px 15px 0}.sticky-main-feature h5.byline{clear:both}.sticky-main-feature .span9{width:100%}}@media (min-width:360px){.sticky-main-feature .hidden-phone{display:inherit!important}.sticky-main-feature .visible-phone{display:none!important}}body.normal.page article.page>header,body.normal.page article.post>header,body.normal.single-post article.page>header,body.normal.single-post article.post>header{clear:both;margin:24px 17.0213%;position:relative}body.normal.page article.page>header h5.top-date,body.normal.page article.post>header h5.top-date,body.normal.single-post article.page>header h5.top-date,body.normal.single-post article.post>header h5.top-date{font-size:14px;font-weight:400;position:absolute;right:0}body.normal.page article.page>header h5.top-tag,body.normal.page article.post>header h5.top-tag,body.normal.single-post article.page>header h5.top-tag,body.normal.single-post article.post>header h5.top-tag{position:absolute;left:0}.post-social i,.post-social::before,.post-social>span{position:relative}body.normal.page article.page>header h1,body.normal.page article.post>header h1,body.normal.single-post article.page>header h1,body.normal.single-post article.post>header h1{padding-top:26px}body.normal.page article.page>header h2.subtitle,body.normal.page article.post>header h2.subtitle,body.normal.single-post article.page>header h2.subtitle,body.normal.single-post article.post>header h2.subtitle{font-size:19.55px;font-weight:400;color:#999}body.normal.page article.page>header .entry-date,body.normal.page article.page>header .sep,body.normal.page article.post>header .entry-date,body.normal.page article.post>header .sep,body.normal.single-post article.page>header .entry-date,body.normal.single-post article.page>header .sep,body.normal.single-post article.post>header .entry-date,body.normal.single-post article.post>header .sep{display:none}body.normal.page article.page>header .edit-link,body.normal.page article.post>header .edit-link,body.normal.single-post article.page>header .edit-link,body.normal.single-post article.post>header .edit-link{padding-left:5px}body.normal.page .hero p.wp-caption-text,body.normal.page .hero p.wp-media-credit,body.normal.single-post .hero p.wp-caption-text,body.normal.single-post .hero p.wp-media-credit{margin:0 17.0213% 12px}body.normal.page .single #main #sidebar,body.normal.single-post .single #main #sidebar{float:none;width:auto;min-height:0;margin-left:0}body.normal.page #comments,body.normal.page #disqus_thread,body.normal.page .article-bottom,body.normal.single-post #comments,body.normal.single-post #disqus_thread,body.normal.single-post .article-bottom{margin:0 17.021276594%}body.normal.page .single #main #sidebar .widget,body.normal.single-post .single #main #sidebar .widget{float:left;clear:left;padding-right:20px;width:14.89361702%}body.normal.page .single #main #sidebar .widget:first-child,body.normal.single-post .single #main #sidebar .widget:first-child{padding-top:0}body.normal.page .entry-content,body.normal.single-post .entry-content{padding:0 17.021276594%}body.normal.page p.intro,body.normal.page p.wp-caption-text,body.normal.single-post p.intro,body.normal.single-post p.wp-caption-text{font-style:normal}body.normal.page .article-bottom .post-social,body.normal.single-post .article-bottom .post-social{border-top:none;border-bottom:none}@media only screen and (max-width:979px){body.normal.page .single #main #sidebar,body.normal.single-post .single #main #sidebar{display:none}body.normal.page #comments,body.normal.page #disqus_thread,body.normal.page .article-bottom,body.normal.single-post #comments,body.normal.single-post #disqus_thread,body.normal.single-post .article-bottom{margin:0 6.38297872%}body.normal.page article.post>header,body.normal.single-post article.post>header{margin:24px 6.38297872%}body.normal.page .entry-content,body.normal.single-post .entry-content{padding:0 6.38297872%}body.normal.page .hero p.wp-caption-text,body.normal.page .hero p.wp-media-credit,body.normal.single-post .hero p.wp-caption-text,body.normal.single-post .hero p.wp-media-credit{margin:0 2.12765957% 12px}}@media only screen and (max-width:529px){body.normal.page #comments,body.normal.page #disqus_thread,body.normal.page .article-bottom,body.normal.single-post #comments,body.normal.single-post #disqus_thread,body.normal.single-post .article-bottom{margin:0}body.normal.page article.post>header,body.normal.single-post article.post>header{margin:24px 0}body.normal.page .entry-content,body.normal.single-post .entry-content{padding:0}}.byline{margin-bottom:12px;font-weight:400;font-size:14.64px}.byline a{color:#484848}.byline .author{font-weight:700}.byline .edit-link a,.byline .time-ago{color:#bd261d}@media (max-width:768px){.post-social>span{min-width:50px;text-align:center;display:inline-block}}@media (min-width:769px){.post-social>span{display:inline-block}.post-social i{margin-right:.5em;margin-left:.2em}}.post-social{margin-bottom:24px}.post-social>span{line-height:1.5em;max-width:250px;margin:.5em 0;text-align:center;text-transform:uppercase;font-weight:300;font-size:16px;color:#fff}.post-social>span:last-child{margin-right:0}.post-social>span>a{display:block;padding:.3em 1em .3em .5em}@media (max-width:768px){.post-social>span>a{padding:.3em .6em}}@media (max-width:480px){.post-social>span>a{padding:.3em .2em}}.post-social a{color:#fff}.post-social a:hover{color:#fff;text-decoration:none}.post-social .more-social-links{background-color:#f89406;color:#fff}.post-social .more-social-links:hover{background-color:#fa9f1e}.post-social .more-social-links .popover{top:40px}.post-social .more-social-links .popover a{color:#7d8185;position:relative;float:left}.post-social .more-social-links .popover a:hover{color:#484848;text-decoration:underline}.post-social .more-social-links .popover i{color:#aaa;margin-right:.25em;position:absolute;top:0;left:0}.post-social .more-social-links .popover li,.post-social .more-social-links .popover ul{list-style-type:none;margin:0;padding:0;font-size:14px;line-height:20px}.post-social .more-social-links .popover li{margin-bottom:.5em;float:left}.post-social .more-social-links .popover li:last-child{margin-bottom:0}.post-social .more-social-links .popover li span{display:block;margin-left:28px}@media (max-width:480px){.post-social .more-social-links .popover{left:auto;right:0}.post-social .more-social-links .popover:after,.post-social .more-social-links .popover:before{left:auto}.post-social .more-social-links .popover:before{right:19px}.post-social .more-social-links .popover:after{right:20px}}#floating-social-buttons{transition:opacity .2s;border:1px solid #ddd}#floating-social-buttons .hidden-phone{display:none}#floating-social-buttons .post-social>span{display:block;margin:0;padding:0;font-size:20px}#floating-social-buttons .post-social>span>a{color:#ddd;display:block;padding:18px;min-width:28px;min-height:28px}#floating-social-buttons .post-social>.email:hover,#floating-social-buttons .post-social>span:hover>a{color:#fff}#floating-social-buttons .rss{background-color:#fff;color:#ddd}#floating-social-buttons .rss:hover{background-color:#df8505}#floating-social-buttons .twitter{background-color:#fff;color:#ddd}#floating-social-buttons .twitter:hover{background-color:#3ea1ec}#floating-social-buttons .facebook{background-color:#fff;color:#ddd}#floating-social-buttons .facebook:hover{background-color:#334c83}#floating-social-buttons .linkedin{background-color:#fff;color:#ddd}#floating-social-buttons .linkedin:hover{background-color:#006a9d}#floating-social-buttons .gplus{background-color:#fff;color:#ddd}#floating-social-buttons .gplus:hover{background-color:#d73925}#floating-social-buttons .flickr{background-color:#fff;color:#ddd}#floating-social-buttons .flickr:hover{background-color:#e60077}#floating-social-buttons .youtube{background-color:#fff;color:#ddd}#floating-social-buttons .youtube:hover{background-color:#d8201a}#floating-social-buttons .print{background-color:#fff;color:#ddd}#floating-social-buttons .print:hover{background-color:#787c83}#floating-social-buttons .email{background-color:#fff;color:#ddd}#floating-social-buttons .email:hover{background-color:#565961}#floating-social-buttons .more-social-links{background-color:#fff;color:#ddd}#floating-social-buttons .more-social-links a.popped,#floating-social-buttons .more-social-links:hover{background-color:#f89406;color:#fff}#floating-social-buttons .more-social-links .popover{top:68px;font-size:14px}#floating-social-buttons .more-social-links .popover i{margin-right:.25em}#floating-social-buttons .more-social-links .popover a{color:#7d8185}#floating-social-buttons .more-social-links .popover a:hover{color:#484848;text-decoration:underline}#floating-social-buttons .social-btn{line-height:1.5em;max-width:250px;margin:.5em 0;padding:.5em}#floating-social-buttons .post-social{margin-bottom:0}#floating-social-buttons .post-social a:hover i{opacity:1}#floating-social-buttons .post-social i{margin:0}.post-pagination a,.post-pagination span{padding:5px;text-transform:uppercase;font-size:13.04px}.post-pagination a:first-child,.post-pagination span:first-child{padding-left:0}.labels,.pager,.tags{list-style:none;font-size:16px}.labels h5,.single-argolinkroundups .author-box h5,.single-post .author-box h5{font-size:19.2px;line-height:1;margin-bottom:0}.labels .series-label h5 a.rss-link{float:right;margin-top:4px;color:#f89406;font-size:18px}.labels .series-label h5 a.rss-link:hover{opacity:.85;filter:alpha(opacity=85)}.series-label{margin:5px;padding:8px}.series-label h5{background:0 0;padding:0;margin-bottom:2px}.series-label p{font-size:13.04px;margin-bottom:0}.hero{text-align:center;background-color:#efefef;width:100%;margin:0 0 24px}.hero.is-gallery{background-color:transparent}.hero p.wp-caption-text,.hero p.wp-media-credit{float:none;font-size:14px}.hero p.wp-caption-text{text-align:left;margin:0 12px;padding-bottom:12px}.hero p.wp-media-credit{text-align:right;margin:4px 12px;min-height:0}.hero.is-embed,.hero.is-video{margin-bottom:24px}.hero.is-embed .embed-container,.hero.is-video .embed-container{margin-bottom:0}.hero.is-empty{min-height:0;height:0}.home .stories article img.attachment-medium,.sub-stories img.attachment-post-thumbnail{max-width:30%;float:right;margin:0 0 10px 20px}.module,.module h3{margin-bottom:12px}#homepage-bottom{margin-top:24px}#homepage-bottom .widget{width:42.5%;padding:2.5%}#homepage-bottom .widget.odd{float:left;clear:both;margin-left:0}#homepage-bottom .widget.even{float:right;clear:none}.module{color:#000}.module h3{font-size:16px;font-weight:700}.module dl{margin:0}.module dd,.module dt{font-size:13.04px;margin:0 0 12px}.module ul{font-size:13.04px}.type-aside p{font-size:.815em}.image p{display:inline;font-size:10px}.image img{display:block}p.wp-media-credit{font-size:13.04px;margin:0;text-align:right;color:#7d8185;display:block}p.wp-caption-text{font-size:16px!important;margin:5px 0 0;color:#7d8185;font-style:italic;line-height:1.5;display:block}.extract,.full,.half{margin:0 0 24px}.half{width:40%}.full{width:100%}.full-image{text-align:center;background-color:#ddd}.pull-quote,.type-pull-quote{font:Georgia,"Times New Roman",Times,serif;font-style:italic;font-size:24px;line-height:1.3}.pull-quote::after,.pull-quote::before,.type-pull-quote::after,.type-pull-quote::before{content:"";display:block;height:1px;width:100%;margin:20px auto;background:#ddd}.pull-quote h6,.type-pull-quote h6{font-size:16px;margin:0;text-transform:none}.pull-quote p,.type-pull-quote p{font-size:24px;margin-bottom:6px}.DV-container{margin-bottom:8px}html .mceContentBody{width:95%;max-width:771px;margin:0 2.5%} \ No newline at end of file diff --git a/css/style.css b/css/style.css index 0e3b80df0..d92cf02c9 100644 --- a/css/style.css +++ b/css/style.css @@ -3117,46 +3117,11 @@ body.normal.single-post article.page > header .edit-link, body.normal.page article.page > header .edit-link { padding-left: 5px; } -body.normal.single-post .hero, -body.normal.page .hero { - text-align: center; - background-color: #efefef; - width: 100%; - margin: 0 0 24px; -} -body.normal.single-post .hero.is-gallery, -body.normal.page .hero.is-gallery { - background-color: transparent; -} body.normal.single-post .hero p.wp-caption-text, body.normal.page .hero p.wp-caption-text, body.normal.single-post .hero p.wp-media-credit, body.normal.page .hero p.wp-media-credit { - float: none; - margin: 0 auto; - text-align: left; - font-size: 14px; margin: 0 17.0213% 12px; - padding-top: 4px; -} -body.normal.single-post .hero p.wp-media-credit, -body.normal.page .hero p.wp-media-credit { - text-align: right; - margin-top: 4px; - min-height: 0; -} -body.normal.single-post .hero.is-video, -body.normal.page .hero.is-video { - margin-bottom: 24px; -} -body.normal.single-post .hero.is-video .embed-container, -body.normal.page .hero.is-video .embed-container { - margin-bottom: 0; -} -body.normal.single-post .hero.is-empty, -body.normal.page .hero.is-empty { - min-height: 0; - height: 0; } body.normal.single-post .single #main #sidebar, body.normal.page .single #main #sidebar { @@ -3587,6 +3552,48 @@ body.normal.page #disqus_thread { font-size: 13.04px; margin-bottom: 0; } +/** + * Styles for the post-leading hero, used in both single-column .normal posts and two-column .classic posts + * + * @since 0.5.5 + * @link https://github.com/INN/Largo/issues/934 + */ +.hero { + text-align: center; + background-color: #efefef; + width: 100%; + margin: 0 0 24px; +} +.hero.is-gallery { + background-color: transparent; +} +.hero p.wp-caption-text, +.hero p.wp-media-credit { + float: none; + font-size: 14px; +} +.hero p.wp-caption-text { + text-align: left; + margin: 0 12px; + padding-bottom: 12px; +} +.hero p.wp-media-credit { + text-align: right; + margin: 4px 12px 4px; + min-height: 0; +} +.hero.is-embed, +.hero.is-video { + margin-bottom: 24px; +} +.hero.is-embed .embed-container, +.hero.is-video .embed-container { + margin-bottom: 0; +} +.hero.is-empty { + min-height: 0; + height: 0; +} .home .stories article img.attachment-medium, .sub-stories img.attachment-post-thumbnail { max-width: 30%; @@ -5626,4 +5633,4 @@ img[class*="wp-image-"] { display: none; } } -/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxlc3MvaW5jL3Jlc2V0Lmxlc3MiLCJsZXNzL2luYy9taXhpbnMubGVzcyIsImxlc3MvaW5jL3R5cG9ncmFwaHkubGVzcyIsImxlc3MvaW5jL3ZhcmlhYmxlcy5sZXNzIiwibGVzcy9pbmMvaW1hZ2VzLmxlc3MiLCJsZXNzL2luYy9mb3Jtcy5sZXNzIiwibGVzcy9pbmMvYnV0dG9ucy5sZXNzIiwibGVzcy9pbmMvdGFibGVzLmxlc3MiLCJsZXNzL2luYy9pY29ucy5sZXNzIiwibGVzcy9pbmMvbGF5b3V0Lmxlc3MiLCJsZXNzL2luYy9oZWFkZXIubGVzcyIsImxlc3MvaW5jL25hdmJhci1jb21tb24ubGVzcyIsImxlc3MvaW5jL25hdmJhci1zdGlja3kubGVzcyIsImxlc3MvaW5jL3Bvc3RzLWFuZC1wYWdlcy5sZXNzIiwibGVzcy9pbmMvYXJjaGl2ZXMubGVzcyIsImxlc3MvaW5jL3NlYXJjaC5sZXNzIiwibGVzcy9pbmMvc3RpY2t5Lmxlc3MiLCJsZXNzL2luYy9zaW5nbGUubGVzcyIsImxlc3MvaW5jL2hvbWVwYWdlLmxlc3MiLCJsZXNzL2luYy9jb21tZW50cy5sZXNzIiwibGVzcy9pbmMvd2lkZ2V0cy5sZXNzIiwibGVzcy9pbmMvd2lkZ2V0cy93cC1nZW5lcmFsLmxlc3MiLCJsZXNzL2luYy93aWRnZXRzL2xhcmdvLWFib3V0LXNpdGUubGVzcyIsImxlc3MvaW5jL3dpZGdldHMvbGFyZ28tYXV0aG9yLWJpby5sZXNzIiwibGVzcy9pbmMvd2lkZ2V0cy9sYXJnby1kaXNjbGFpbWVyLmxlc3MiLCJsZXNzL2luYy93aWRnZXRzL2xhcmdvLWRvbmF0ZS13aWRnZXQubGVzcyIsImxlc3MvaW5jL3dpZGdldHMvbGFyZ28tZXhwbG9yZS1yZWxhdGVkLmxlc3MiLCJsZXNzL2luYy93aWRnZXRzL2xhcmdvLWZvbGxvdy5sZXNzIiwibGVzcy9pbmMvd2lkZ2V0cy9sYXJnby1pbWFnZS13aWRnZXQubGVzcyIsImxlc3MvaW5jL3dpZGdldHMvbGFyZ28tcHJldi1uZXh0LWxpbmtzLmxlc3MiLCJsZXNzL2luYy93aWRnZXRzL2xhcmdvLXJlY2VudC1jb21tZW50cy5sZXNzIiwibGVzcy9pbmMvd2lkZ2V0cy9sYXJnby1yZWxhdGVkLXBvc3RzLmxlc3MiLCJsZXNzL2luYy93aWRnZXRzL2xhcmdvLXNlcmllcy1wb3N0cy5sZXNzIiwibGVzcy9pbmMvd2lkZ2V0cy9sYXJnby1zdGFmZi1yb3N0ZXIubGVzcyIsImxlc3MvaW5jL3dpZGdldHMvbGFyZ28tdGFnLWxpc3QubGVzcyIsImxlc3MvaW5jL3dpZGdldHMvbGFyZ28tdGF4b25vbXktbGlzdC5sZXNzIiwibGVzcy9pbmMvd2lkZ2V0cy9sYXJnby1pbm4tcnNzLmxlc3MiLCJsZXNzL2luYy93aWRnZXRzL2FuYWx5dGljLWJyaWRnZS1wb3B1bGFyLXBvc3RzLmxlc3MiLCJsZXNzL2luYy9mb290ZXIubGVzcyIsImxlc3MvaW5jL2Fkcy5sZXNzIiwibGVzcy9pbmMvd3AtcmVzcG9uc2l2ZS1tZWRpYS5sZXNzIiwibGVzcy9pbmMvcmVzcG9uc2l2ZS11dGlsaXRpZXMubGVzcyIsImxlc3MvaW5jL3Jlc3BvbnNpdmUtMTIwMHB4LW1pbi5sZXNzIiwibGVzcy9pbmMvcmVzcG9uc2l2ZS03NjhweC05NzlweC5sZXNzIiwibGVzcy9pbmMvcmVzcG9uc2l2ZS03NjdweC1tYXgubGVzcyIsImxlc3MvaW5jL3ByaW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFDRSxjQUFBOztBQU1GO0FBQ0E7QUFDQTtFQUNFLHFCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxRQUFBOztBQU1GLEtBQUssSUFBSTtFQUNMLGFBQUE7O0FBTUo7RUFDRSxlQUFBO0VBQ0EsOEJBQUE7RUFDSSwwQkFBQTs7QUFHTixDQUFDO0VDU0MseUJBQUE7RUFFQSwwQ0FBQTtFQUNBLG9CQUFBOztBRFJGLENBQUM7QUFDRCxDQUFDO0VBQ0MsVUFBQTs7QUFNRjtBQUNB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QUs7SUFDSixtQkFBQTs7RUFHRCxRQUFRLE1BQU07SUFDYix5QkFBQTs7RUFHRDtJQUNDLDJCQUFBOztFQUdEO0VBQUc7SUFDRix3QkFBQTs7RUFHRDs7Ozs7RUFJQTtJQUNDLHVCQUFBOztFQUdEO0VBQUU7RUFBRztJQUNKLFVBQUE7SUFDQSxTQUFBOztFQUdEO0VBQUc7SUFDRix1QkFBQTs7RUFHRCxPQUFRO0lBQ1AscUJBQUE7O0VBR0Q7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxlQUFnQixRQUFPLElBQUk7SUFDMUIsYUFBQTs7RUFHRDtJQUNDLDBCQUFBO0lBQ0EsNkJBQUE7O0VBR0Q7RUFDQSxPQUFPO0VBQ1A7RUFDQTtFQUNBLENBQUM7RUFDRDtFQUNBO0lBRUMsMEJBQUE7SUFDQSxrQkFBQTs7RUFHRCxLQUFNLEVBQUM7RUFDUCxLQUFNLEVBQUM7RUFDUCxLQUFNLEVBQUM7SUFDTixzQkFBQTtJQUNBLG9CQUFBOztFQUdEO0lBQ0MsYUFBQTs7RUFHRDtJQUNDLGNBQUE7SUFDQSw2QkFBQTtJQUNBLGdCQUFBOztFQUhELGFBSUM7SUFDQyxxQkFBQTtJQUNBLDRCQUFBO0lBQ0EsbUJBQUE7SUFDQSxrQkFBQTs7RUFJRjtFQUFFO0VBQUc7RUFBRztJQUNQLDBCQUFBO0lBQ0EsbUJBQUE7O0VBR0Q7RUFBRztFQUFHO0VBQUc7RUFBRztFQUFHO0VBQUcsY0FBZTtJQUNoQyxlQUFBOztFQUdELEVBQUU7SUFDRCxlQUFBOztFQUdELGNBQWUsRUFBQyxLQUFLO0VBQ3JCLGNBQWUsRUFBQyxRQUFRO0lBQ3ZCLFNBQVEsS0FBSyxXQUFXLElBQXhCO0lBQ0EsY0FBQTs7RUFHQTtJQUFnQixhQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLy8gUmVzZXQubGVzc1xuLy8gQWRhcHRlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgaHR0cDovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRGlzcGxheSBpbiBJRTYtOSBhbmQgRkYzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBEaXNwbGF5IGJsb2NrIGluIElFNi05IGFuZCBGRjNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuYXVkaW8sXG5jYW52YXMsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgKmRpc3BsYXk6IGlubGluZTtcbiAgKnpvb206IDE7XG59XG5cbi8vIFByZXZlbnRzIG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgJ2F1ZGlvJyB3aXRob3V0IGNvbnRyb2xzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gQmFzZSBzZXR0aW5nc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5odG1sIHtcbiAgZm9udC1zaXplOiAxMDAlO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cbi8vIEZvY3VzIHN0YXRlc1xuYTpmb2N1cyB7XG4gIC50YWItZm9jdXMoKTtcbn1cbi8vIEhvdmVyICYgQWN0aXZlXG5hOmhvdmVyLFxuYTphY3RpdmUge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBQcmV2ZW50cyBzdWIgYW5kIHN1cCBhZmZlY3RpbmcgbGluZS1oZWlnaHQgaW4gYWxsIGJyb3dzZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuLy8gSW1nIGJvcmRlciBpbiBhJ3MgYW5kIGltYWdlIHF1YWxpdHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBNYWtlIGltYWdlcyBpbmhlcmVudGx5IHJlc3BvbnNpdmVcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyOiAwO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xufVxuXG4vLyBQcmV2ZW50IG1heC13aWR0aCBmcm9tIGFmZmVjdGluZyBHb29nbGUgTWFwc1xuI21hcF9jYW52YXMgaW1nIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4vLyBGb3Jtc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBGb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLCBtYXJnaW4gY2hhbmdlcywgbWlzYyBjb25zaXN0ZW5jeVxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuYnV0dG9uLFxuaW5wdXQge1xuICAqb3ZlcmZsb3c6IHZpc2libGU7IC8vIElubmVyIHNwYWNpbmcgaWUgSUU2LzdcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgLy8gRkYzLzQgaGF2ZSAhaW1wb3J0YW50IG9uIGxpbmUtaGVpZ2h0IGluIFVBIHN0eWxlc2hlZXRcbn1cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHsgLy8gSW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIG9kZGl0aWVzIGluIEZGMy80XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cbmJ1dHRvbixcbmlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyOyAvLyBDdXJzb3JzIG9uIGFsbCBidXR0b25zIGFwcGxpZWQgY29uc2lzdGVudGx5XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyBTdHlsZSBjbGlja2FibGUgaW5wdXRzIGluIGlPU1xufVxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7IC8vIEFwcGVhcmFuY2UgaW4gU2FmYXJpL0Nocm9tZVxuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbn1cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBJbm5lci1wYWRkaW5nIGlzc3VlcyBpbiBDaHJvbWUgT1NYLCBTYWZhcmkgNVxufVxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUmVtb3ZlIHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRTYtOVxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyAvLyBSZWFkYWJpbGl0eSBhbmQgYWxpZ25tZW50IGNyb3NzLWJyb3dzZXJcbn0iLCIvLyBNaXhpbnMubGVzc1xuLy8gU25pcHBldHMgb2YgcmV1c2FibGUgQ1NTIHRvIGRldmVsb3AgZmFzdGVyIGFuZCBrZWVwIGNvZGUgcmVhZGFibGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFVUSUxJVFkgTUlYSU5TXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBDbGVhcmZpeFxuLy8gLS0tLS0tLS1cbi8vIEZvciBjbGVhcmluZyBmbG9hdHMgbGlrZSBhIGJvc3MgaDVicC5jb20vcVxuLmNsZWFyZml4IHtcbiAgKnpvb206IDE7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSGlkZSBhbiBpdGVtIHZpc3VhbGx5IG9ubHlcbi52aXN1YWxseWhpZGRlbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7IHdpZHRoOiAxcHg7XG4gIG1hcmdpbjogLTFweDsgcGFkZGluZzogMDsgYm9yZGVyOiAwO1xufVxuXG4vLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvY29tbWl0L2FhMDM5NmVhZTc1N1xuLmhpZGUtdGV4dCB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBCbG9jayBsZXZlbCBmb3JtIGlucHV0c1xuLmlucHV0LWJsb2NrLWxldmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAyOHB4OyAgICAgICAgLy8gTWFrZSBpbnB1dHMgYXQgbGVhc3QgdGhlIGhlaWdodCBvZiB0aGVpciBidXR0b24gY291bnRlcnBhcnRcbiAgLmJveC1zaXppbmcoYm9yZGVyLWJveCk7IC8vIE1ha2VzIGlucHV0cyBiZWhhdmUgbGlrZSB0cnVlIGJsb2NrLWxldmVsIGVsZW1lbnRzXG59XG5cbi8vIFdlYmtpdC1zdHlsZSBmb2N1c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG4udGFiLWZvY3VzKCkge1xuICAvLyBEZWZhdWx0XG4gIG91dGxpbmU6IHRoaW4gZG90dGVkICMzMzM7XG4gIC8vIFdlYmtpdFxuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuXG4vLyBDZW50ZXItYWxpZ24gYSBibG9jayBsZXZlbCBlbGVtZW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uY2VudGVyLWJsb2NrKCkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLy8gSUU3IGlubGluZS1ibG9ja1xuLy8gLS0tLS0tLS0tLS0tLS0tLVxuLmllNy1pbmxpbmUtYmxvY2soKSB7XG4gICpkaXNwbGF5OiBpbmxpbmU7IC8qIElFNyBpbmxpbmUtYmxvY2sgaGFjayAqL1xuICAqem9vbTogMTtcbn1cblxuLy8gSUU3IGxpa2VzIHRvIGNvbGxhcHNlIHdoaXRlc3BhY2Ugb24gZWl0aGVyIHNpZGUgb2YgdGhlIGlubGluZS1ibG9jayBlbGVtZW50cy5cbi8vIEVtcyBiZWNhdXNlIHdlJ3JlIGF0dGVtcHRpbmcgdG8gbWF0Y2ggdGhlIHdpZHRoIG9mIGEgc3BhY2UgY2hhcmFjdGVyLiBMZWZ0XG4vLyB2ZXJzaW9uIGlzIGZvciBmb3JtIGJ1dHRvbnMsIHdoaWNoIHR5cGljYWxseSBjb21lIGFmdGVyIG90aGVyIGVsZW1lbnRzLCBhbmRcbi8vIHJpZ2h0IHZlcnNpb24gaXMgZm9yIGljb25zLCB3aGljaCBjb21lIGJlZm9yZS4gQXBwbHlpbmcgYm90aCBpcyBvaywgYnV0IGl0IHdpbGxcbi8vIG1lYW4gdGhhdCBzcGFjZSBiZXR3ZWVuIHRob3NlIGVsZW1lbnRzIHdpbGwgYmUgLjZlbSAofjIgc3BhY2UgY2hhcmFjdGVycykgaW4gSUU3LFxuLy8gaW5zdGVhZCBvZiB0aGUgMSBzcGFjZSBpbiBvdGhlciBicm93c2Vycy5cbi5pZTctcmVzdG9yZS1sZWZ0LXdoaXRlc3BhY2UoKSB7XG4gICptYXJnaW4tbGVmdDogLjNlbTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAqbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmllNy1yZXN0b3JlLXJpZ2h0LXdoaXRlc3BhY2UoKSB7XG4gICptYXJnaW4tcmlnaHQ6IC4zZW07XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAqbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLy8gU2l6aW5nIHNob3J0Y3V0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnNpemUoQGhlaWdodCwgQHdpZHRoKSB7XG4gIHdpZHRoOiBAd2lkdGg7XG4gIGhlaWdodDogQGhlaWdodDtcbn1cbi5zcXVhcmUoQHNpemUpIHtcbiAgLnNpemUoQHNpemUsIEBzaXplKTtcbn1cblxuLy8gUGxhY2Vob2xkZXIgdGV4dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnBsYWNlaG9sZGVyKEBjb2xvcjogQHBsYWNlaG9sZGVyVGV4dCkge1xuICAmOi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiBAY29sb3I7XG4gIH1cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiBAY29sb3I7XG4gIH1cbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IEBjb2xvcjtcbiAgfVxufVxuXG4vLyBUZXh0IG92ZXJmbG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG4udGV4dC1vdmVyZmxvdygpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cblxuLy8gRk9OVFNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiNmb250IHtcbiAgI2ZhbWlseSB7XG4gICAgLnNlcmlmKCkge1xuICAgICAgZm9udC1mYW1pbHk6IEBzZXJpZkZvbnRGYW1pbHk7XG4gICAgfVxuICAgIC5zYW5zLXNlcmlmKCkge1xuICAgICAgZm9udC1mYW1pbHk6IEBzYW5zRm9udEZhbWlseTtcbiAgICB9XG4gICAgLm1vbm9zcGFjZSgpIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBAbW9ub0ZvbnRGYW1pbHk7XG4gICAgfVxuICB9XG4gIC5zaG9ydGhhbmQoQHNpemU6IEBiYXNlRm9udFNpemUsIEB3ZWlnaHQ6IG5vcm1hbCwgQGxpbmVIZWlnaHQ6IEBiYXNlTGluZUhlaWdodCkge1xuICAgIGZvbnQtc2l6ZTogQHNpemU7XG4gICAgZm9udC13ZWlnaHQ6IEB3ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IEBsaW5lSGVpZ2h0O1xuICB9XG4gIC5zZXJpZihAc2l6ZTogQGJhc2VGb250U2l6ZSwgQHdlaWdodDogbm9ybWFsLCBAbGluZUhlaWdodDogQGJhc2VMaW5lSGVpZ2h0KSB7XG4gICAgI2ZvbnQgPiAjZmFtaWx5ID4gLnNlcmlmO1xuICAgICNmb250ID4gLnNob3J0aGFuZChAc2l6ZSwgQHdlaWdodCwgQGxpbmVIZWlnaHQpO1xuICB9XG4gIC5zYW5zLXNlcmlmKEBzaXplOiBAYmFzZUZvbnRTaXplLCBAd2VpZ2h0OiBub3JtYWwsIEBsaW5lSGVpZ2h0OiBAYmFzZUxpbmVIZWlnaHQpIHtcbiAgICAjZm9udCA+ICNmYW1pbHkgPiAuc2Fucy1zZXJpZjtcbiAgICAjZm9udCA+IC5zaG9ydGhhbmQoQHNpemUsIEB3ZWlnaHQsIEBsaW5lSGVpZ2h0KTtcbiAgfVxuICAubW9ub3NwYWNlKEBzaXplOiBAYmFzZUZvbnRTaXplLCBAd2VpZ2h0OiBub3JtYWwsIEBsaW5lSGVpZ2h0OiBAYmFzZUxpbmVIZWlnaHQpIHtcbiAgICAjZm9udCA+ICNmYW1pbHkgPiAubW9ub3NwYWNlO1xuICAgICNmb250ID4gLnNob3J0aGFuZChAc2l6ZSwgQHdlaWdodCwgQGxpbmVIZWlnaHQpO1xuICB9XG59XG5cblxuLy8gRk9STVNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE1peGluIGZvciBmb3JtIGZpZWxkIHN0YXRlc1xuLmZvcm1GaWVsZFN0YXRlKEB0ZXh0Q29sb3I6ICM1NTUsIEBib3JkZXJDb2xvcjogI2NjYywgQGJhY2tncm91bmRDb2xvcjogI2Y1ZjVmNSkge1xuICAvLyBTZXQgdGhlIHRleHQgY29sb3JcbiAgPiBsYWJlbCxcbiAgLmhlbHAtYmxvY2ssXG4gIC5oZWxwLWlubGluZSB7XG4gICAgY29sb3I6IEB0ZXh0Q29sb3I7XG4gIH1cbiAgLy8gU3R5bGUgaW5wdXRzIGFjY29yZGluZ2x5XG4gIC5jaGVja2JveCxcbiAgLnJhZGlvLFxuICBpbnB1dCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgY29sb3I6IEB0ZXh0Q29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiBAYm9yZGVyQ29sb3I7XG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbihAYm9yZGVyQ29sb3IsIDEwJSk7XG4gICAgICAuYm94LXNoYWRvdygwIDAgNnB4IGxpZ2h0ZW4oQGJvcmRlckNvbG9yLCAyMCUpKTtcbiAgICB9XG4gIH1cbiAgLy8gR2l2ZSBhIHNtYWxsIGJhY2tncm91bmQgY29sb3IgZm9yIGlucHV0LXByZXBlbmQvLWFwcGVuZFxuICAuaW5wdXQtcHJlcGVuZCAuYWRkLW9uLFxuICAuaW5wdXQtYXBwZW5kIC5hZGQtb24ge1xuICAgIGNvbG9yOiBAdGV4dENvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBiYWNrZ3JvdW5kQ29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiBAdGV4dENvbG9yO1xuICB9XG59XG5cblxuXG4vLyBDU1MzIFBST1BFUlRJRVNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEJvcmRlciBSYWRpdXNcbi5ib3JkZXItcmFkaXVzKEByYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xuICAgICAtbW96LWJvcmRlci1yYWRpdXM6IEByYWRpdXM7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogQHJhZGl1cztcbn1cblxuLy8gRHJvcCBzaGFkb3dzXG4uYm94LXNoYWRvdyhAc2hhZG93KSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogQHNoYWRvdztcbiAgICAgLW1vei1ib3gtc2hhZG93OiBAc2hhZG93O1xuICAgICAgICAgIGJveC1zaGFkb3c6IEBzaGFkb3c7XG59XG5cbi8vIFRyYW5zaXRpb25zXG4udHJhbnNpdGlvbihAdHJhbnNpdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xuICAgICAtbW96LXRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xuICAgICAgLW1zLXRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xufVxuXG4vLyBUcmFuc2Zvcm1hdGlvbnNcbi5yb3RhdGUoQGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7XG4gICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoQGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKEBkZWdyZWVzKTtcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoQGRlZ3JlZXMpO1xufVxuLnNjYWxlKEByYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoQHJhdGlvKTtcbiAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKEByYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZShAcmF0aW8pO1xuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoQHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKEByYXRpbyk7XG59XG4udHJhbnNsYXRlKEB4LCBAeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSk7XG4gICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoQHgsIEB5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHkpO1xuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoQHgsIEB5KTtcbn1cbi5za2V3KEB4LCBAeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2tldyhAeCwgQHkpO1xuICAgICAtbW96LXRyYW5zZm9ybTogc2tldyhAeCwgQHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2tldyhAeCwgQHkpO1xuICAgICAgIC1vLXRyYW5zZm9ybTogc2tldyhAeCwgQHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tldyhAeCwgQHkpO1xufVxuLnRyYW5zbGF0ZTNkKEB4LCBAeSwgQHopIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHksIEB6KTtcbiAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHksIEB6KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHksIEB6KTtcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHksIEB6KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHksIEB6KTtcbn1cblxuLy8gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cbi8vIERlZmF1bHQgdmFsdWUgaXMgYHZpc2libGVgLCBidXQgY2FuIGJlIGNoYW5nZWQgdG8gYGhpZGRlblxuLy8gU2VlIGdpdCBwdWxsIGh0dHBzOi8vZ2l0aHViLmNvbS9kYW5ueWtlYW5lL2Jvb3RzdHJhcC5naXQgYmFja2ZhY2UtdmlzaWJpbGl0eSBmb3IgZXhhbXBsZXNcbi5iYWNrZmFjZS12aXNpYmlsaXR5KEB2aXNpYmlsaXR5KXtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBAdmlzaWJpbGl0eTtcbiAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBAdmlzaWJpbGl0eTtcbiAgICAgIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBAdmlzaWJpbGl0eTtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBAdmlzaWJpbGl0eTtcbn1cblxuLy8gQmFja2dyb3VuZCBjbGlwcGluZ1xuLy8gSGVhZHMgdXA6IEZGIDMuNiBhbmQgdW5kZXIgbmVlZCBcInBhZGRpbmdcIiBpbnN0ZWFkIG9mIFwicGFkZGluZy1ib3hcIlxuLmJhY2tncm91bmQtY2xpcChAY2xpcCkge1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogQGNsaXA7XG4gICAgIC1tb3otYmFja2dyb3VuZC1jbGlwOiBAY2xpcDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IEBjbGlwO1xufVxuXG4vLyBCYWNrZ3JvdW5kIHNpemluZ1xuLmJhY2tncm91bmQtc2l6ZShAc2l6ZSl7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBAc2l6ZTtcbiAgICAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IEBzaXplO1xuICAgICAgIC1vLWJhY2tncm91bmQtc2l6ZTogQHNpemU7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBAc2l6ZTtcbn1cblxuXG4vLyBCb3ggc2l6aW5nXG4uYm94LXNpemluZyhAYm94bW9kZWwpIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBAYm94bW9kZWw7XG4gICAgIC1tb3otYm94LXNpemluZzogQGJveG1vZGVsO1xuICAgICAgLW1zLWJveC1zaXppbmc6IEBib3htb2RlbDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBAYm94bW9kZWw7XG59XG5cbi8vIFVzZXIgc2VsZWN0XG4vLyBGb3Igc2VsZWN0aW5nIHRleHQgb24gdGhlIHBhZ2Vcbi51c2VyLXNlbGVjdChAc2VsZWN0KSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XG4gICAgICAgLW8tdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IEBzZWxlY3Q7XG59XG5cbi8vIFJlc2l6ZSBhbnl0aGluZ1xuLnJlc2l6YWJsZShAZGlyZWN0aW9uKSB7XG4gIHJlc2l6ZTogQGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFNhZmFyaSBmaXhcbn1cblxuLy8gQ1NTMyBDb250ZW50IENvbHVtbnNcbi5jb250ZW50LWNvbHVtbnMoQGNvbHVtbkNvdW50LCBAY29sdW1uR2FwOiBAZ3JpZEd1dHRlcldpZHRoKSB7XG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiBAY29sdW1uQ291bnQ7XG4gICAgIC1tb3otY29sdW1uLWNvdW50OiBAY29sdW1uQ291bnQ7XG4gICAgICAgICAgY29sdW1uLWNvdW50OiBAY29sdW1uQ291bnQ7XG4gIC13ZWJraXQtY29sdW1uLWdhcDogQGNvbHVtbkdhcDtcbiAgICAgLW1vei1jb2x1bW4tZ2FwOiBAY29sdW1uR2FwO1xuICAgICAgICAgIGNvbHVtbi1nYXA6IEBjb2x1bW5HYXA7XG59XG5cbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXG4uaHlwaGVucyhAbW9kZTogYXV0bykge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogQG1vZGU7XG4gICAgIC1tb3otaHlwaGVuczogQG1vZGU7XG4gICAgICAtbXMtaHlwaGVuczogQG1vZGU7XG4gICAgICAgLW8taHlwaGVuczogQG1vZGU7XG4gICAgICAgICAgaHlwaGVuczogQG1vZGU7XG59XG5cbi8vIE9wYWNpdHlcbi5vcGFjaXR5KEBvcGFjaXR5KSB7XG4gIG9wYWNpdHk6IEBvcGFjaXR5IC8gMTAwO1xuICBmaWx0ZXI6IH5cImFscGhhKG9wYWNpdHk9QHtvcGFjaXR5fSlcIjtcbn1cblxuXG5cbi8vIEJBQ0tHUk9VTkRTXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBBZGQgYW4gYWxwaGF0cmFuc3BhcmVuY3kgdmFsdWUgdG8gYW55IGJhY2tncm91bmQgb3IgYm9yZGVyIGNvbG9yICh2aWEgRWx5c2UgSG9sbGFkYXkpXG4jdHJhbnNsdWNlbnQge1xuICAuYmFja2dyb3VuZChAY29sb3I6IEB3aGl0ZSwgQGFscGhhOiAxKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaHNsYShodWUoQGNvbG9yKSwgc2F0dXJhdGlvbihAY29sb3IpLCBsaWdodG5lc3MoQGNvbG9yKSwgQGFscGhhKTtcbiAgfVxuICAuYm9yZGVyKEBjb2xvcjogQHdoaXRlLCBAYWxwaGE6IDEpIHtcbiAgICBib3JkZXItY29sb3I6IGhzbGEoaHVlKEBjb2xvciksIHNhdHVyYXRpb24oQGNvbG9yKSwgbGlnaHRuZXNzKEBjb2xvciksIEBhbHBoYSk7XG4gICAgLmJhY2tncm91bmQtY2xpcChwYWRkaW5nLWJveCk7XG4gIH1cbn1cblxuLy8gR3JhZGllbnQgQmFyIENvbG9ycyBmb3IgYnV0dG9ucyBhbmQgYWxlcnRzXG4uZ3JhZGllbnRCYXIoQHByaW1hcnlDb2xvciwgQHNlY29uZGFyeUNvbG9yKSB7XG4gICNncmFkaWVudCA+IC52ZXJ0aWNhbChAcHJpbWFyeUNvbG9yLCBAc2Vjb25kYXJ5Q29sb3IpO1xuICBib3JkZXItY29sb3I6IEBzZWNvbmRhcnlDb2xvciBAc2Vjb25kYXJ5Q29sb3IgZGFya2VuKEBzZWNvbmRhcnlDb2xvciwgMTUlKTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLC4xKSByZ2JhKDAsMCwwLC4xKSBmYWRlaW4ocmdiYSgwLDAsMCwuMSksIDE1JSk7XG59XG5cbi8vIEdyYWRpZW50c1xuI2dyYWRpZW50IHtcbiAgLmhvcml6b250YWwoQHN0YXJ0Q29sb3I6ICM1NTUsIEBlbmRDb2xvcjogIzMzMykge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBlbmRDb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gRkYgMy42K1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQobGVmdCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIElFMTBcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAxMDAlIDAsIGZyb20oQHN0YXJ0Q29sb3IpLCB0byhAZW5kQ29sb3IpKTsgLy8gU2FmYXJpIDQrLCBDaHJvbWUgMitcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gU2FmYXJpIDUuMSssIENocm9tZSAxMCtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIE9wZXJhIDExLjEwXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KGxlZnQsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBMZSBzdGFuZGFyZFxuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBmaWx0ZXI6IGUoJShcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSclZCcsIGVuZENvbG9yc3RyPSclZCcsIEdyYWRpZW50VHlwZT0xKVwiLEBzdGFydENvbG9yLEBlbmRDb2xvcikpOyAvLyBJRTkgYW5kIGRvd25cbiAgfVxuICAudmVydGljYWwoQHN0YXJ0Q29sb3I6ICM1NTUsIEBlbmRDb2xvcjogIzMzMykge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peChAc3RhcnRDb2xvciwgQGVuZENvbG9yLCA2MCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIEZGIDMuNitcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIElFMTBcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oQHN0YXJ0Q29sb3IpLCB0byhAZW5kQ29sb3IpKTsgLy8gU2FmYXJpIDQrLCBDaHJvbWUgMitcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBTYWZhcmkgNS4xKywgQ2hyb21lIDEwK1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBPcGVyYSAxMS4xMFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0b3AsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBUaGUgc3RhbmRhcmRcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nJWQnLCBlbmRDb2xvcnN0cj0nJWQnLCBHcmFkaWVudFR5cGU9MClcIixAc3RhcnRDb2xvcixAZW5kQ29sb3IpKTsgLy8gSUU5IGFuZCBkb3duXG4gIH1cbiAgLmRpcmVjdGlvbmFsKEBzdGFydENvbG9yOiAjNTU1LCBAZW5kQ29sb3I6ICMzMzMsIEBkZWc6IDQ1ZGVnKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGVuZENvbG9yO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChAZGVnLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gRkYgMy42K1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQoQGRlZywgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIElFMTBcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChAZGVnLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gU2FmYXJpIDUuMSssIENocm9tZSAxMCtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoQGRlZywgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIE9wZXJhIDExLjEwXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KEBkZWcsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBUaGUgc3RhbmRhcmRcbiAgfVxuICAudmVydGljYWwtdGhyZWUtY29sb3JzKEBzdGFydENvbG9yOiAjMDBiM2VlLCBAbWlkQ29sb3I6ICM3YTQzYjYsIEBjb2xvclN0b3A6IDUwJSwgQGVuZENvbG9yOiAjYzMzMjVmKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KEBtaWRDb2xvciwgQGVuZENvbG9yLCA4MCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbShAc3RhcnRDb2xvciksIGNvbG9yLXN0b3AoQGNvbG9yU3RvcCwgQG1pZENvbG9yKSwgdG8oQGVuZENvbG9yKSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoQHN0YXJ0Q29sb3IsIEBtaWRDb2xvciBAY29sb3JTdG9wLCBAZW5kQ29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IsIEBtaWRDb2xvciBAY29sb3JTdG9wLCBAZW5kQ29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQoQHN0YXJ0Q29sb3IsIEBtaWRDb2xvciBAY29sb3JTdG9wLCBAZW5kQ29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChAc3RhcnRDb2xvciwgQG1pZENvbG9yIEBjb2xvclN0b3AsIEBlbmRDb2xvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KEBzdGFydENvbG9yLCBAbWlkQ29sb3IgQGNvbG9yU3RvcCwgQGVuZENvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyVkJywgZW5kQ29sb3JzdHI9JyVkJywgR3JhZGllbnRUeXBlPTApXCIsQHN0YXJ0Q29sb3IsQGVuZENvbG9yKSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG4gIH1cbiAgLnJhZGlhbChAaW5uZXJDb2xvcjogIzU1NSwgQG91dGVyQ29sb3I6ICMzMzMpICB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQG91dGVyQ29sb3I7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChyYWRpYWwsIGNlbnRlciBjZW50ZXIsIDAsIGNlbnRlciBjZW50ZXIsIDQ2MCwgZnJvbShAaW5uZXJDb2xvciksIHRvKEBvdXRlckNvbG9yKSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCBAaW5uZXJDb2xvciwgQG91dGVyQ29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgQGlubmVyQ29sb3IsIEBvdXRlckNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgQGlubmVyQ29sb3IsIEBvdXRlckNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCBAaW5uZXJDb2xvciwgQG91dGVyQ29sb3IpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cbiAgLnN0cmlwZWQoQGNvbG9yLCBAYW5nbGU6IC00NWRlZykge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAxMDAlLCAxMDAlIDAsIGNvbG9yLXN0b3AoLjI1LCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkpLCBjb2xvci1zdG9wKC4yNSwgdHJhbnNwYXJlbnQpLCBjb2xvci1zdG9wKC41LCB0cmFuc3BhcmVudCksIGNvbG9yLXN0b3AoLjUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSksIGNvbG9yLXN0b3AoLjc1LCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkpLCBjb2xvci1zdG9wKC43NSwgdHJhbnNwYXJlbnQpLCB0byh0cmFuc3BhcmVudCkpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQoQGFuZ2xlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChAYW5nbGUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNTAlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgfVxufVxuLy8gUmVzZXQgZmlsdGVycyBmb3IgSUVcbi5yZXNldC1maWx0ZXIoKSB7XG4gIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KGVuYWJsZWQgPSBmYWxzZSlcIikpO1xufVxuXG5cblxuLy8gQ09NUE9ORU5UIE1JWElOU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQnV0dG9uIGJhY2tncm91bmRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cbi5idXR0b25CYWNrZ3JvdW5kKEBzdGFydENvbG9yLCBAZW5kQ29sb3IpIHtcbiAgLy8gZ3JhZGllbnRCYXIgd2lsbCBzZXQgdGhlIGJhY2tncm91bmQgdG8gYSBwbGVhc2luZyBibGVuZCBvZiB0aGVzZSwgdG8gc3VwcG9ydCBJRTw9OVxuICAuZ3JhZGllbnRCYXIoQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7XG4gICpiYWNrZ3JvdW5kLWNvbG9yOiBAZW5kQ29sb3I7IC8qIERhcmtlbiBJRTcgYnV0dG9ucyBieSBkZWZhdWx0IHNvIHRoZXkgc3RhbmQgb3V0IG1vcmUgZ2l2ZW4gdGhleSB3b24ndCBoYXZlIGJvcmRlcnMgKi9cbiAgLnJlc2V0LWZpbHRlcigpO1xuXG4gIC8vIGluIHRoZXNlIGNhc2VzIHRoZSBncmFkaWVudCB3b24ndCBjb3ZlciB0aGUgYmFja2dyb3VuZCwgc28gd2Ugb3ZlcnJpZGVcbiAgJjpob3ZlciwgJjphY3RpdmUsICYuYWN0aXZlLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGVuZENvbG9yO1xuICAgICpiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGVuZENvbG9yLCA1JSk7XG4gIH1cblxuICAvLyBJRSA3ICsgOCBjYW4ndCBoYW5kbGUgYm94LXNoYWRvdyB0byBzaG93IGFjdGl2ZSwgc28gd2UgZGFya2VuIGEgYml0IG91cnNlbHZlc1xuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAZW5kQ29sb3IsIDEwJSkgZShcIlxcOVwiKTtcbiAgfVxufVxuXG4vLyBOYXZiYXIgdmVydGljYWwgYWxpZ25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFZlcnRpY2FsbHkgY2VudGVyIGVsZW1lbnRzIGluIHRoZSBuYXZiYXIuXG4vLyBFeGFtcGxlOiBhbiBlbGVtZW50IGhhcyBhIGhlaWdodCBvZiAzMHB4LCBzbyB3cml0ZSBvdXQgYC5uYXZiYXJWZXJ0aWNhbEFsaWduKDMwcHgpO2AgdG8gY2FsY3VsYXRlIHRoZSBhcHByb3ByaWF0ZSB0b3AgbWFyZ2luLlxuLm5hdmJhclZlcnRpY2FsQWxpZ24oQGVsZW1lbnRIZWlnaHQpIHtcbiAgbWFyZ2luLXRvcDogKEBuYXZiYXJIZWlnaHQgLSBAZWxlbWVudEhlaWdodCkgLyAyO1xufVxuXG4vLyBQb3BvdmVyIGFycm93c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRm9yIHRpcHNpZXMgYW5kIHBvcG92ZXJzXG4jcG9wb3ZlckFycm93IHtcbiAgLnRvcChAYXJyb3dXaWR0aDogNXB4LCBAY29sb3I6IEBibGFjaykge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC1AYXJyb3dXaWR0aDtcbiAgICBib3JkZXItbGVmdDogQGFycm93V2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiBAYXJyb3dXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wOiBAYXJyb3dXaWR0aCBzb2xpZCBAY29sb3I7XG4gIH1cbiAgLmxlZnQoQGFycm93V2lkdGg6IDVweCwgQGNvbG9yOiBAYmxhY2spIHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAtQGFycm93V2lkdGg7XG4gICAgYm9yZGVyLXRvcDogQGFycm93V2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogQGFycm93V2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQ6IEBhcnJvd1dpZHRoIHNvbGlkIEBjb2xvcjtcbiAgfVxuICAuYm90dG9tKEBhcnJvd1dpZHRoOiA1cHgsIEBjb2xvcjogQGJsYWNrKSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLUBhcnJvd1dpZHRoO1xuICAgIGJvcmRlci1sZWZ0OiBAYXJyb3dXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IEBhcnJvd1dpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IEBhcnJvd1dpZHRoIHNvbGlkIEBjb2xvcjtcbiAgfVxuICAucmlnaHQoQGFycm93V2lkdGg6IDVweCwgQGNvbG9yOiBAYmxhY2spIHtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IC1AYXJyb3dXaWR0aDtcbiAgICBib3JkZXItdG9wOiBAYXJyb3dXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiBAYXJyb3dXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IEBhcnJvd1dpZHRoIHNvbGlkIEBjb2xvcjtcbiAgfVxufVxuXG4vLyBHcmlkIFN5c3RlbVxuLy8gLS0tLS0tLS0tLS1cblxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcbi5jb250YWluZXItZml4ZWQoKSB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIC5jbGVhcmZpeCgpO1xufVxuXG4vLyBUYWJsZSBjb2x1bW5zXG4udGFibGVDb2x1bW5zKEBjb2x1bW5TcGFuOiAxKSB7XG4gIGZsb2F0OiBub25lOyAvLyB1bmRvIGRlZmF1bHQgZ3JpZCBjb2x1bW4gc3R5bGVzXG4gIHdpZHRoOiAoKEBmbHVpZEdyaWRDb2x1bW5XaWR0aCkgKiBAY29sdW1uU3BhbikgKyAoQGZsdWlkR3JpZEd1dHRlcldpZHRoICogKEBjb2x1bW5TcGFuIC0gMSkpIC0gMTY7IC8vIDE2IGlzIHRvdGFsIHBhZGRpbmcgb24gbGVmdCBhbmQgcmlnaHQgb2YgdGFibGUgY2VsbHNcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIHVuZG8gZGVmYXVsdCBncmlkIGNvbHVtbiBzdHlsZXNcbn1cblxuLy8gTWFrZSBhIEdyaWRcbi8vIFVzZSAubWFrZVJvdyBhbmQgLm1ha2VDb2x1bW4gdG8gYXNzaWduIHNlbWFudGljIGxheW91dHMgZ3JpZCBzeXN0ZW0gYmVoYXZpb3Jcbi5tYWtlUm93KCkge1xuICBtYXJnaW4tbGVmdDogQGdyaWRHdXR0ZXJXaWR0aCAqIC0xO1xuICAuY2xlYXJmaXgoKTtcbn1cbi5tYWtlQ29sdW1uKEBjb2x1bW5zOiAxLCBAb2Zmc2V0OiAwKSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogKEBncmlkQ29sdW1uV2lkdGggKiBAb2Zmc2V0KSArIChAZ3JpZEd1dHRlcldpZHRoICogKEBvZmZzZXQgLSAxKSkgKyAoQGdyaWRHdXR0ZXJXaWR0aCAqIDIpO1xuICB3aWR0aDogKEBncmlkQ29sdW1uV2lkdGggKiBAY29sdW1ucykgKyAoQGdyaWRHdXR0ZXJXaWR0aCAqIChAY29sdW1ucyAtIDEpKTtcbn1cblxuLy8gVGhlIEdyaWRcbiNncmlkIHtcblxuICAuY29yZSAoQGdyaWRDb2x1bW5XaWR0aCwgQGdyaWRHdXR0ZXJXaWR0aCkge1xuXG4gICAgLnNwYW5YIChAaW5kZXgpIHdoZW4gKEBpbmRleCA+IDApIHtcbiAgICAgIC5zcGFuQHtpbmRleH0geyAuc3BhbihAaW5kZXgpOyB9XG4gICAgICAuc3BhblgoQGluZGV4IC0gMSk7XG4gICAgfVxuICAgIC5zcGFuWCAoMCkge31cblxuICAgIC5vZmZzZXRYIChAaW5kZXgpIHdoZW4gKEBpbmRleCA+IDApIHtcbiAgICAgIC5vZmZzZXRAe2luZGV4fSB7IC5vZmZzZXQoQGluZGV4KTsgfVxuICAgICAgLm9mZnNldFgoQGluZGV4IC0gMSk7XG4gICAgfVxuICAgIC5vZmZzZXRYICgwKSB7fVxuXG4gICAgLm9mZnNldCAoQGNvbHVtbnMpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAoQGdyaWRDb2x1bW5XaWR0aCAqIEBjb2x1bW5zKSArIChAZ3JpZEd1dHRlcldpZHRoICogKEBjb2x1bW5zICsgMSkpO1xuICAgIH1cblxuICAgIC5zcGFuIChAY29sdW1ucykge1xuICAgICAgd2lkdGg6IChAZ3JpZENvbHVtbldpZHRoICogQGNvbHVtbnMpICsgKEBncmlkR3V0dGVyV2lkdGggKiAoQGNvbHVtbnMgLSAxKSk7XG4gICAgfVxuXG4gICAgLnJvdyB7XG4gICAgICBtYXJnaW4tbGVmdDogQGdyaWRHdXR0ZXJXaWR0aCAqIC0xO1xuICAgICAgLmNsZWFyZml4KCk7XG4gICAgfVxuXG4gICAgW2NsYXNzKj1cInNwYW5cIl0ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tbGVmdDogQGdyaWRHdXR0ZXJXaWR0aDtcbiAgICB9XG5cbiAgICAvLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXNcbiAgICAuY29udGFpbmVyLFxuICAgIC5uYXZiYXItZml4ZWQtdG9wIC5jb250YWluZXIsXG4gICAgLm5hdmJhci1maXhlZC1ib3R0b20gLmNvbnRhaW5lciB7IC5zcGFuKEBncmlkQ29sdW1ucyk7IH1cblxuICAgIC8vIGdlbmVyYXRlIC5zcGFuWCBhbmQgLm9mZnNldFhcbiAgICAuc3BhblggKEBncmlkQ29sdW1ucyk7XG4gICAgLm9mZnNldFggKEBncmlkQ29sdW1ucyk7XG5cbiAgfVxuXG4gIC5mbHVpZCAoQGZsdWlkR3JpZENvbHVtbldpZHRoLCBAZmx1aWRHcmlkR3V0dGVyV2lkdGgpIHtcblxuICAgIC5zcGFuWCAoQGluZGV4KSB3aGVuIChAaW5kZXggPiAwKSB7XG4gICAgICAuc3BhbkB7aW5kZXh9IHsgLnNwYW4oQGluZGV4KTsgfVxuICAgICAgLnNwYW5YKEBpbmRleCAtIDEpO1xuICAgIH1cbiAgICAuc3BhblggKDApIHt9XG5cbiAgICAuc3BhbiAoQGNvbHVtbnMpIHtcbiAgICAgIHdpZHRoOiAoQGZsdWlkR3JpZENvbHVtbldpZHRoICogQGNvbHVtbnMpICsgKEBmbHVpZEdyaWRHdXR0ZXJXaWR0aCAqIChAY29sdW1ucyAtIDEpKTtcbiAgICAgICp3aWR0aDogKEBmbHVpZEdyaWRDb2x1bW5XaWR0aCAqIEBjb2x1bW5zKSArIChAZmx1aWRHcmlkR3V0dGVyV2lkdGggKiAoQGNvbHVtbnMgLSAxKSkgLSAoLjUgLyBAZ3JpZFJvd1dpZHRoICogMTAwICogMSUpO1xuICAgIH1cblxuICAgIC5yb3ctZmx1aWQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAuY2xlYXJmaXgoKTtcbiAgICAgIFtjbGFzcyo9XCJzcGFuXCJdIHtcbiAgICAgICAgLmlucHV0LWJsb2NrLWxldmVsKCk7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tbGVmdDogQGZsdWlkR3JpZEd1dHRlcldpZHRoO1xuICAgICAgICAqbWFyZ2luLWxlZnQ6IEBmbHVpZEdyaWRHdXR0ZXJXaWR0aCAtICguNSAvIEBncmlkUm93V2lkdGggKiAxMDAgKiAxJSk7XG4gICAgICB9XG4gICAgICBbY2xhc3MqPVwic3BhblwiXTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBnZW5lcmF0ZSAuc3BhblhcbiAgICAgIC5zcGFuWCAoQGdyaWRDb2x1bW5zKTtcbiAgICB9XG5cbiAgfVxuXG4gIC5pbnB1dChAZ3JpZENvbHVtbldpZHRoLCBAZ3JpZEd1dHRlcldpZHRoKSB7XG5cbiAgICAuc3BhblggKEBpbmRleCkgd2hlbiAoQGluZGV4ID4gMCkge1xuICAgICAgaW5wdXQuc3BhbkB7aW5kZXh9LCB0ZXh0YXJlYS5zcGFuQHtpbmRleH0sIC51bmVkaXRhYmxlLWlucHV0LnNwYW5Ae2luZGV4fSB7IC5zcGFuKEBpbmRleCk7IH1cbiAgICAgIC5zcGFuWChAaW5kZXggLSAxKTtcbiAgICB9XG4gICAgLnNwYW5YICgwKSB7fVxuXG4gICAgLnNwYW4oQGNvbHVtbnMpIHtcbiAgICAgIHdpZHRoOiAoKEBncmlkQ29sdW1uV2lkdGgpICogQGNvbHVtbnMpICsgKEBncmlkR3V0dGVyV2lkdGggKiAoQGNvbHVtbnMgLSAxKSkgLSAxMDtcbiAgICB9XG5cbiAgICBpbnB1dCxcbiAgICB0ZXh0YXJlYSxcbiAgICAudW5lZGl0YWJsZS1pbnB1dCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgLy8gb3ZlcnJpZGUgbWFyZ2luLWxlZnQgZnJvbSBjb3JlIGdyaWQgc3lzdGVtXG4gICAgfVxuXG4gICAgLy8gZ2VuZXJhdGUgLnNwYW5YXG4gICAgLnNwYW5YIChAZ3JpZENvbHVtbnMpO1xuXG4gIH1cblxufVxuXG4uZGFya0xpZ2h0IChAYSkgd2hlbiAobGlnaHRuZXNzKEBhKSA+PSA1MCUpIHtcbiAgY29sb3I6IEBncmF5RGFya2VyO1xufVxuLmRhcmtMaWdodCAoQGEpIHdoZW4gKGxpZ2h0bmVzcyhAYSkgPCA1MCUpIHtcbiAgY29sb3I6IEB3aGl0ZTtcbn1cbiIsImJvZHkge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBAYmFzZUZvbnRGYW1pbHk7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgZm9udC13ZWlnaHQ6IEBiYXNlRm9udFdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IEBiYXNlTGluZUhlaWdodDtcbiAgY29sb3I6IEB0ZXh0Q29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IEBib2R5QmFja2dyb3VuZDtcbn1cbiNwYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHBhZ2VCYWNrZ3JvdW5kO1xuICBwYWRkaW5nOiAwIDIwcHg7XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBMaW5rc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuYSB7XG4gIGNvbG9yOiBAbGlua0NvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiBAbGlua0NvbG9ySG92ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgJi5tb3JlLWxpbmsge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEdlbmVyYWwgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxucCxcbmRsLFxuaHIsXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5vbCxcbnVsLFxucHJlLFxudGFibGUsXG5hZGRyZXNzLFxuZmllbGRzZXQge1xuICBtYXJnaW46IDAgMCBAYmFzZWxpbmU7XG59XG5oMSB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDMuMzc1O1xuICAmLmVudHJ5LXRpdGxlIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAyLjc1O1xuICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDI7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbn1cbmgyIHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMi43NTtcbn1cbmgzIHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMi4yNTtcbn1cbmg0LFxuLmVudHJ5LWNvbnRlbnQgaDEsXG4uZW50cnktY29udGVudCBoMixcbi5lbnRyeS1jb250ZW50IGgzIHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS44MzM7XG59XG5oNSxcbi5zdG9yaWVzIGgzLFxuLmVudHJ5LWNvbnRlbnQgaDQge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjU7XG59XG5oNS50b3AtdGFnLFxuLndpZGdldCBoNS50b3AtdGFnLFxuLmVudHJ5LWNvbnRlbnQgaDUudG9wLXRhZyB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lLzU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiBAZ3JheUxpZ2h0O1xuICBhIHtcbiAgICBjb2xvcjogQGdyYXlMaWdodDtcbiAgfVxufVxuaDYsXG4uZW50cnktY29udGVudCBoNSB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuMjIyO1xufVxuLmVudHJ5LWNvbnRlbnQgaDYge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgZm9udC1mYW1pbHk6IEBoZWFkaW5nc0ZvbnRGYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiBAaGVhZGluZ3NGb250V2VpZ2h0O1xuICBjb2xvcjogQGhlYWRpbmdzQ29sb3I7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZWxlZ2liaWxpdHk7XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuODE1ZW07XG4gIH1cbn1cbi5lbnRyeS1jb250ZW50IGgyLFxuLmVudHJ5LWNvbnRlbnQgaDMsXG4uZW50cnktY29udGVudCBoNCxcbi5lbnRyeS1jb250ZW50IGg1LFxuLmVudHJ5LWNvbnRlbnQgaDYge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmU7XG59XG5wIHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yMjI7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIG1hcmdpbjogMCAwIEBiYXNlbGluZTtcbiAgc21hbGwsXG4gICYuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuODE1O1xuICAgIGNvbG9yOiBAZ3JheUxpZ2h0O1xuICB9XG4gICYueHNtYWxsIHtcblx0Zm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMC42Njc7XG5cdGNvbG9yOiBAZ3JheUxpZ2h0O1xuICB9XG4gICYuaW50cm8ge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcbiAgICBjb2xvcjogQGdyYXk7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICB9XG59XG5cbnVsLCBvbCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMCAwIEBiYXNlbGluZSAyNXB4O1xufVxuLmVudHJ5LWNvbnRlbnQge1xuICB1bCxcbiAgb2wge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuMjIyO1xuICB9XG59XG51bCB1bCxcbnVsIG9sLFxub2wgb2wsXG5vbCB1bCB7XG4gIG1hcmdpbi10b3A6IEBiYXNlbGluZSAvIDM7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG51bCB7XG4gIGxpc3Qtc3R5bGU6IGRpc2M7XG59XG5vbCB7XG4gIGxpc3Qtc3R5bGU6IGRlY2ltYWw7XG4gIG9sIHtcbiAgICBsaXN0LXN0eWxlOiBsb3dlci1hbHBoYTtcbiAgICBvbCB7XG5cdCAgbGlzdC1zdHlsZTogbG93ZXItcm9tYW47XG4gICAgfVxuICB9XG59XG5saSB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAqIDAuNTtcbn1cbnVsLnVuc3R5bGVkLFxub2wudW5zdHlsZWQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbmRsIGR0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5kZCB7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG59XG5zdHJvbmcsIGRmbiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuZW0sIGRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbmFiYnIsIGFjcm9ueW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIEBncmF5TGlnaHQ7XG59XG5hZGRyZXNzIHtcbiAgbWFyZ2luOiAwIDAgQGJhc2VsaW5lO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5kZWwge1xuICBjb2xvcjogQGdyYXlMaWdodDtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEZhbmN5IFBvc3QgRm9ybWF0dGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuYmxvY2txdW90ZSB7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nOiA1cHggMTVweCA1cHggMzBweDtcbiAgbWFyZ2luOiBAYmFzZWxpbmU7XG4gIGJvcmRlci1sZWZ0OiA1cHggc29saWQgQGdyYXlMaWdodGVyO1xuICBwIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgbWFyZ2luOiBAYmFzZWxpbmUvMiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cbiAgc21hbGwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiBAYmFzZWxpbmU7XG4gICAgY29sb3I6IEBncmF5TGlnaHQ7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAxNCBcXDAwQTAnO1xuICAgIH1cbiAgfVxuICAvLyBGbG9hdCByaWdodCB3aXRoIHRleHQtYWxpZ246IHJpZ2h0XG4gICYucHVsbC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgcCxcbiAgICBzbWFsbCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbn1cblxuY29kZSxcbnByZSB7XG4gIHBhZGRpbmc6IDAgM3B4IDJweDtcbiAgI2ZvbnQgPiAjZmFtaWx5ID4gLm1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplIC0gMjtcbiAgY29sb3I6IEBncmF5RGFyaztcbn1cblxuLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBjb2xvcjogI2QxNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmOTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UxZTFlODtcbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiBAYmFzZWxpbmUgLyAyO1xuICBtYXJnaW46IDAgMCBAYmFzZWxpbmU7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIC45MjU7IC8vIDEzcHggdG8gMTJweFxuICBsaW5lLWhlaWdodDogQGJhc2VsaW5lO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjOyAvLyBmYWxsYmFjayBmb3IgSUU3LThcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLDAsMCwuMTUpO1xuXG4gIC8vIE1ha2UgcHJldHR5cHJpbnQgc3R5bGVzIG1vcmUgc3BhY2VkIG91dCBmb3IgcmVhZGFiaWxpdHlcbiAgJi5wcmV0dHlwcmludCB7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lO1xuICB9XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6IDM0MHB4O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5cbmhyIHtcbiAgbWFyZ2luOiBAYmFzZWxpbmUgMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgQGdyYXlMaWdodGVyO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQHdoaXRlO1xufVxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENPTE9SXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHcmF5c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGJsYWNrOiAgICAgICAgICAgICAgICAgIzAwMDtcbkBncmF5RGFya2VyOiAgICAgICAgICAgICMyMjI7XG5AZ3JheURhcms6ICAgICAgICAgICAgICAjNDg0ODQ4O1xuQGdyYXk6ICAgICAgICAgICAgICAgICAgIzdEODE4NTtcbkBncmF5TGlnaHQ6ICAgICAgICAgICAgICNhYWE7XG5AZ3JheUxpZ2h0ZXI6ICAgICAgICAgICAjZGRkO1xuQHdoaXRlOiAgICAgICAgICAgICAgICAgI2ZmZjtcblxuXG4vLyBBY2NlbnQgY29sb3JzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AYmx1ZTogICAgICAgICAgICAgICAgICAjMjI3NWJiO1xuQGJsdWVEYXJrOiAgICAgICAgICAgICAgIzAwNjRjZDtcbkBncmVlbjogICAgICAgICAgICAgICAgICM0NmE1NDY7XG5AcmVkOiAgICAgICAgICAgICAgICAgICAjYmQyNjFkO1xuQHllbGxvdzogICAgICAgICAgICAgICAgI2ZmYzQwZDtcbkBvcmFuZ2U6ICAgICAgICAgICAgICAgICNmODk0MDY7XG5AcGluazogICAgICAgICAgICAgICAgICAjYzMzMjVmO1xuQHB1cnBsZTogICAgICAgICAgICAgICAgIzdhNDNiNjtcblxuLyoqXG4gKiBAZ3JvdXAgQ29sb3JcbiAqIEBsYWJlbCBCYXNlIENvbG9yICh1c2VkIGZvciBuYXZiYXIsIHdpZGdldCB0aXRsZXMsIGV0Yy4pXG4gKiBAdHlwZSBjb2xvclxuICogQGRlZmF1bHRfdmFsdWUgIzIyNzViYlxuICovXG5AYmFzZUNvbG9yOlx0XHRcdFx0QGJsdWU7XG5cbi8qKlxuICogQGdyb3VwIENvbG9yXG4gKiBAbGFiZWwgSGVhZGVyL0Zvb3RlciBDb2xvclxuICogQHR5cGUgY29sb3JcbiAqIEBkZWZhdWx0X3ZhbHVlICMyMjJcbiAqL1xuQGhlYWRlckZvb3RlckNvbG9yOlx0XHRAZ3JheURhcmtlcjtcblxuLyoqXG4gKiBAZ3JvdXAgQ29sb3JcbiAqIEBsYWJlbCBQcmUtRm9vdGVyIENvbG9yXG4gKiBAdHlwZSBjb2xvclxuICogQGRlZmF1bHRfdmFsdWUgI2RkZFxuICovXG5AcHJlRm9vdGVyQ29sb3I6XHRcdEBncmF5TGlnaHRlcjtcblxuLyoqXG4gKiBAZ3JvdXAgQ29sb3JcbiAqIEBsYWJlbCBDb2xvciBvZiBsaW5rc1xuICogQHR5cGUgY29sb3JcbiAqIEBkZWZhdWx0X3ZhbHVlICMyMjc1YmJcbiAqL1xuQGxpbmtDb2xvcjogICAgICAgICAgICAgQGJsdWU7XG5cbi8qKlxuICogQGdyb3VwIENvbG9yXG4gKiBAbGFiZWwgSG92ZXIgY29sb3Igb2YgbGlua3NcbiAqIEB0eXBlIGNvbG9yXG4gKiBAZGVmYXVsdF92YWx1ZSAjMjI3NWJiXG4gKi9cbkBsaW5rQ29sb3JIb3ZlcjogICAgICAgIGxpZ2h0ZW4oQGxpbmtDb2xvciwgMTAlKTtcblxuLyoqXG4gKiBAZ3JvdXAgQ29sb3JcbiAqIEBsYWJlbCBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBvc3QgbWV0YSBib3hlcyAoYXV0aG9yIGJpbywgcmVsYXRlZCBwb3N0cywgZXRjLilcbiAqIEB0eXBlIGNvbG9yXG4gKiBAZGVmYXVsdF92YWx1ZSAjZmZmXG4gKi9cbkBwb3N0Qm94QmFja2dyb3VuZENvbG9yOlx0I2ZmZjtcblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTEFZT1VUXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AY29udGFpbmVyTWF4V2lkdGg6XHRcdDExNzBweDtcblxuLyoqXG4gKiBAZ3JvdXAgQmFzaWNzXG4gKiBAbGFiZWwgQm9keSBCYWNrZ3JvdW5kIENvbG9yXG4gKiBAdHlwZSBjb2xvclxuICogQGRlZmF1bHRfdmFsdWUgI2ZmZlxuICovXG5AYm9keUJhY2tncm91bmQ6ICAgICAgICBAd2hpdGU7XG5cbi8qKlxuICogQGdyb3VwIEJhc2ljc1xuICogQGxhYmVsIFBhZ2UgQmFja2dyb3VuZCBDb2xvclxuICogQHR5cGUgY29sb3JcbiAqIEBkZWZhdWx0X3ZhbHVlICNmZmZcbiAqL1xuQHBhZ2VCYWNrZ3JvdW5kOiAgICAgICAgQHdoaXRlO1xuXG4vKipcbiAqIEBncm91cCBCYXNpY3NcbiAqIEBsYWJlbCBUZXh0IENvbG9yXG4gKiBAdHlwZSBjb2xvclxuICogQGRlZmF1bHRfdmFsdWUgIzMzM1xuICovXG5AdGV4dENvbG9yOiAgICAgICAgICAgICBAZ3JheURhcms7XG4vKipcbiAqIEBncm91cCBCYXNpY3NcbiAqIEBsYWJlbCBEZWZhdWx0IFZlcnRpY2FsIFNwYWNpbmdcbiAqIEB0eXBlIHBpeGVsc1xuICogQGRlZmF1bHRfdmFsdWUgMjRweFxuICovXG5AYmFzZWxpbmU6XHRcdFx0XHQyNHB4O1xuXG4vLyBHcmlkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AZ3JpZENvbHVtbnM6ICAgICAgICAgICAgIDEyO1xuQGZsdWlkR3JpZENvbHVtbldpZHRoOiAgICA2LjM4Mjk3ODcyMyU7XG5AZmx1aWRHcmlkR3V0dGVyV2lkdGg6ICAgIDIuMTI3NjU5NTc0JTtcbkBncmlkUm93V2lkdGg6ICAgICAgICAgICAgMTAwJTtcblxuLy8gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBoaWdoZGVuc2l0eTogflwib25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSlcIixcbiAgICAgICAgICAgICAgflwib25seSBzY3JlZW4gYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSlcIixcbiAgICAgICAgICAgICAgflwib25seSBzY3JlZW4gYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzLzIgKVwiLFxuICAgICAgICAgICAgICB+XCJvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSlcIjtcblxuQG1vYmlsZTogICAgICB+XCJvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTI5cHgpXCI7XG5cbkB0YWJsZXQ6ICAgICAgflwib25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTc5cHgpXCI7XG5AdGFibGV0RG93bjogIH5cIm9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NzlweClcIjtcbkB0YWJsZXRVcDogICAgflwib25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KVwiO1xuXG5AZGVza3RvcDogICAgIH5cIm9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5ODBweCkgYW5kIChtYXgtd2lkdGg6IDExMjhweClcIjtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRZUE9HUkFQSFlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qKlxuICogQGdyb3VwIFR5cG9ncmFwaHlcbiAqIEBsYWJlbCBTYW5zIEZvbnQgRmFtaWx5XG4gKiBAdHlwZSB0ZXh0XG4gKiBAZGVmYXVsdF92YWx1ZSBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWZcbiAqL1xuQHNhbnNGb250RmFtaWx5OiAgICAgICAgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuXG4vKipcbiAqIEBncm91cCBUeXBvZ3JhcGh5XG4gKiBAbGFiZWwgU2VyaWYgRm9udCBGYW1pbHlcbiAqIEB0eXBlIHRleHRcbiAqL1xuQHNlcmlmRm9udEZhbWlseTogICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmO1xuQG1vbm9Gb250RmFtaWx5OiAgICAgICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlO1xuXG4vKipcbiAqIEBncm91cCBUeXBvZ3JhcGh5XG4gKiBAbGFiZWwgQmFzZSBGb250IFNpemVcbiAqIEB0eXBlIHBpeGVsc1xuICovXG5AYmFzZUZvbnRTaXplOiAgICAgICAgICAxNnB4O1xuXG4vKipcbiAqIEBncm91cCBUeXBvZ3JhcGh5XG4gKiBAbGFiZWwgU2FucyBGb250IEZhbWlseVxuICogQHR5cGUgZHJvcGRvd25cbiAqIEBvcHRpb25zIEBzZXJpZkZvbnRGYW1pbHl8QHNhbnNGb250RmFtaWx5XG4gKiBAZGVmYXVsdF92YWx1ZSBAc2VyaWZGb250RmFtaWx5XG4gKi9cbkBiYXNlRm9udEZhbWlseTogICAgICAgIEBzZXJpZkZvbnRGYW1pbHk7XG4vKipcbiAqIEBncm91cCBUeXBvZ3JhcGh5XG4gKiBAbGFiZWwgQmFzZSBMaW5lIEhlaWdodFxuICogQHR5cGUgdGV4dFxuICogQGRlZmF1bHRfdmFsdWUgMS41XG4gKi9cbkBiYXNlTGluZUhlaWdodDogICAgICAgIDEuNTtcblxuQGFsdEZvbnRGYW1pbHk6ICAgICAgICAgQHNhbnNGb250RmFtaWx5O1xuQGJhc2VGb250V2VpZ2h0Olx0XHRub3JtYWw7XG5cbkBoZWFkaW5nc0ZvbnRGYW1pbHk6ICAgIEBzYW5zRm9udEZhbWlseTsgLy8gZW1wdHkgdG8gdXNlIGRlZmF1bHQsIEBiYXNlRm9udEZhbWlseVxuQGhlYWRpbmdzRm9udFdlaWdodDogICAgYm9sZDsgLy8gZW1wdHkgdG8gdXNlIGRlZmF1bHQsIEBiYXNlRm9udFdlaWdodFxuQGhlYWRpbmdzQ29sb3I6ICAgICAgICAgaW5oZXJpdDsgLy8gZW1wdHkgdG8gdXNlIGRlZmF1bHQsIEB0ZXh0Q29sb3JcblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRk9STVMsIFRBQkxFUyBBTkQgQlVUVE9OU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVGFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AdGFibGVCYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudDsgLy8gb3ZlcmFsbCBiYWNrZ3JvdW5kLWNvbG9yXG5AdGFibGVCYWNrZ3JvdW5kQWNjZW50OiAgICAgICAgICAgICAjZjlmOWY5OyAvLyBmb3Igc3RyaXBpbmdcbkB0YWJsZUJhY2tncm91bmRIb3ZlcjogICAgICAgICAgICAgICNmNWY1ZjU7IC8vIGZvciBob3ZlclxuQHRhYmxlQm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgI2RkZDsgLy8gdGFibGUgYW5kIGNlbGwgYm9yZGVyXG5cblxuLy8gQnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGJ0bkJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgQHdoaXRlO1xuQGJ0bkJhY2tncm91bmRIaWdobGlnaHQ6ICAgICAgICAgICAgZGFya2VuKEB3aGl0ZSwgMTAlKTtcbkBidG5Cb3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICNjY2M7XG5cbkBidG5QcmltYXJ5QmFja2dyb3VuZDogICAgICAgICAgICAgIEBiYXNlQ29sb3I7XG5AYnRuUHJpbWFyeUJhY2tncm91bmRIaWdobGlnaHQ6ICAgICBzcGluKEBidG5QcmltYXJ5QmFja2dyb3VuZCwgMTUlKTtcblxuXG4vLyBGb3Jtc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGlucHV0QmFja2dyb3VuZDogICAgICAgICAgICAgICBAd2hpdGU7XG5AaW5wdXRCb3JkZXI6ICAgICAgICAgICAgICAgICAgICNjY2M7XG5AaW5wdXRCb3JkZXJSYWRpdXM6ICAgICAgICAgICAgIDNweDtcbkBpbnB1dERpc2FibGVkQmFja2dyb3VuZDogICAgICAgQGdyYXlMaWdodGVyO1xuQGZvcm1BY3Rpb25zQmFja2dyb3VuZDogICAgICAgICAjZjVmNWY1O1xuXG5AcGxhY2Vob2xkZXJUZXh0OiAgICAgICAgIEBncmF5TGlnaHQ7XG5cblxuLy8gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQHdhcm5pbmdUZXh0OiAgICAgICAgICAgICAjYzA5ODUzO1xuQHdhcm5pbmdCYWNrZ3JvdW5kOiAgICAgICAjZmNmOGUzO1xuQHdhcm5pbmdCb3JkZXI6ICAgICAgICAgICBkYXJrZW4oc3BpbihAd2FybmluZ0JhY2tncm91bmQsIC0xMCksIDMlKTtcblxuQGVycm9yVGV4dDogICAgICAgICAgICAgICAjYjk0YTQ4O1xuQGVycm9yQmFja2dyb3VuZDogICAgICAgICAjZjJkZWRlO1xuQGVycm9yQm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oc3BpbihAZXJyb3JCYWNrZ3JvdW5kLCAtMTApLCAzJSk7XG5cbkBzdWNjZXNzVGV4dDogICAgICAgICAgICAgIzQ2ODg0NztcbkBzdWNjZXNzQmFja2dyb3VuZDogICAgICAgI2RmZjBkODtcbkBzdWNjZXNzQm9yZGVyOiAgICAgICAgICAgZGFya2VuKHNwaW4oQHN1Y2Nlc3NCYWNrZ3JvdW5kLCAtMTApLCA1JSk7XG5cbkBpbmZvVGV4dDogICAgICAgICAgICAgICAgIzNhODdhZDtcbkBpbmZvQmFja2dyb3VuZDogICAgICAgICAgI2Q5ZWRmNztcbkBpbmZvQm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKHNwaW4oQGluZm9CYWNrZ3JvdW5kLCAtMTApLCA3JSk7XG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkB6aW5kZXhEcm9wZG93bjogICAgICAgICAgMTAwMDtcbkB6aW5kZXhQb3BvdmVyOiAgICAgICAgICAgMTAxMDtcbkB6aW5kZXhUb29sdGlwOiAgICAgICAgICAgMTAyMDtcbkB6aW5kZXhGaXhlZE5hdmJhcjogICAgICAgMTAzMDtcbkB6aW5kZXhNb2RhbEJhY2tkcm9wOiAgICAgMTA0MDtcbkB6aW5kZXhNb2RhbDogICAgICAgICAgICAgMTA1MDtcblxuLy8gTmF2YmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AbmF2YmFySGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgNDBweDtcbkBuYXZiYXJGb250U2l6ZTogICAgICAgICAgICAgICAgICAxNXB4O1xuQG5hdmJhckJhY2tncm91bmQ6ICAgICAgICAgICAgICAgIEBib2R5QmFja2dyb3VuZDtcbi8vIE5hdmJhciBidXR0b24gKGJ1cmdlcikgZm9yIHRvZ2dsaW5nIG5hdmJhciBpdGVtcyBpbiByZXNwb25zaXZlIGxheW91dHNcbkBpY29uYmFySGVpZ2h0OiAzcHg7XG5cbiAgICAvLyBOYXZiYXIgZHJvcGRvd25zXG4gICAgQGRyb3Bkb3duQmFja2dyb3VuZDogQHdoaXRlO1xuICAgIEBkcm9wZG93bkJvcmRlcjogcmdiYSgwLDAsMCwuMik7XG4gICAgQGRyb3Bkb3duRGl2aWRlclRvcDogI2U1ZTVlNTtcbiAgICBAZHJvcGRvd25EaXZpZGVyQm90dG9tOiBAd2hpdGU7XG5cbiAgICAvLyBNYWluIG5hdmJhclxuICAgIEBuYXZiYXJUZXh0OiBAdGV4dENvbG9yO1xuICAgIEBuYXZiYXJMaW5rQ29sb3I6IEBuYXZiYXJUZXh0O1xuICAgIEBuYXZiYXJMaW5rQ29sb3JIb3ZlcjogZGFya2VuKEBuYXZiYXJMaW5rQ29sb3IsIDUlKTtcbiAgICBAbmF2YmFyTGlua0JhY2tncm91bmRBY3RpdmU6IGRhcmtlbihAbmF2YmFyQmFja2dyb3VuZCwgNSUpO1xuICAgIEBuYXZiYXJEcm9wZG93bkNhcmV0Q29sb3I6IEBuYXZiYXJMaW5rQ29sb3I7XG4gICAgQG5hdmJhckRyb3Bkb3duQ2FyZXRDb2xvckhvdmVyOiBAbmF2YmFyTGlua0NvbG9ySG92ZXI7XG4gICAgQG5hdmJhclJ1bGVDb2xvcjogQGdyYXlMaWdodDtcblxuICAgIC8vIFN0aWNreSBuYXZiYXJcbiAgICBAc3RpY2t5TmF2YmFyVGV4dDogQHRleHRDb2xvcjtcbiAgICBAc3RpY2t5TmF2YmFyTGlua0NvbG9yOiBAc3RpY2t5TmF2YmFyVGV4dDtcbiAgICBAc3RpY2t5TmF2YmFyTGlua0NvbG9ySG92ZXI6IGRhcmtlbihAc3RpY2t5TmF2YmFyTGlua0NvbG9yLCA1JSk7XG4gICAgQHN0aWNreU5hdmJhckJhY2tncm91bmRDb2xvcjogQHdoaXRlO1xuICAgIEBzdGlja3lOYXZiYXJEcm9wZG93bkNhcmV0Q29sb3I6IEBzdGlja3lOYXZiYXJMaW5rQ29sb3I7XG4gICAgQHN0aWNreU5hdmJhckRyb3Bkb3duQ2FyZXRDb2xvckhvdmVyOiBAc3RpY2t5TmF2YmFyTGlua0NvbG9ySG92ZXI7XG5cblxuLy8gU29jaWFsIEJyYW5kc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQHJzczogI2Y4OTQwNjtcbkBmYWNlYm9vazogIzNhNTc5NTtcbkB0d2l0dGVyOiAjNTVhY2VlO1xuQHlvdXR1YmU6ICNlNTJkMjc7XG5AZ3BsdXM6ICNkZDRiMzk7XG5AZmxpY2tyOiAjZmYwMDg0O1xuQGxpbmtlZGluOiAjMDA3YmI2O1xuQHR1bWJscjogIzM1NDY1YztcbiIsIi8vIEdsb2JhbCBpbWFnZSBzdHlsZXNcblxuLy8gU3R5bGUgZm9yIHRoZSB0aHVtYm5haWwgdGhhdCBhcHBlYXJzIG9uIHRodW1ibmFpbHMgb2YgdmlkZW9zXG4uaXMtdmlkZW8gaW1nIHtcbiAgb3BhY2l0eTogMC41O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmlzLXZpZGVvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pcy12aWRlby1wbGF5LWljb24uc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwJTtcbn1cbiIsIi8vIEZvcm1zLmxlc3Ncbi8vIEJhc2Ugc3R5bGVzIGZvciB2YXJpb3VzIGlucHV0IHR5cGVzLCBmb3JtIGxheW91dHMsIGFuZCBzdGF0ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBHRU5FUkFMIFNUWUxFU1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gR3JvdXBzIG9mIGZpZWxkcyB3aXRoIGxhYmVscyBvbiB0b3AgKGxlZ2VuZHMpXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlTGluZUhlaWdodCAqIDEuNTtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS41O1xuICBsaW5lLWhlaWdodDogQGJhc2VMaW5lSGVpZ2h0ICogMjtcbiAgY29sb3I6IEBncmF5RGFyaztcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTtcblxuICAvLyBTbWFsbFxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiBAYmFzZUxpbmVIZWlnaHQgKiAuNzU7XG4gICAgY29sb3I6IEBncmF5TGlnaHQ7XG4gIH1cbn1cblxuLy8gU2V0IGZvbnQgZm9yIGZvcm1zXG5sYWJlbCxcbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICAjZm9udCA+IC5zaG9ydGhhbmQoQGJhc2VGb250U2l6ZSxub3JtYWwsQGJhc2VMaW5lSGVpZ2h0KTsgLy8gU2V0IHNpemUsIHdlaWdodCwgbGluZS1oZWlnaHQgaGVyZVxufVxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBAYmFzZUZvbnRGYW1pbHk7IC8vIEFuZCBvbmx5IHNldCBmb250LWZhbWlseSBoZXJlIGZvciB0aG9zZSB0aGF0IG5lZWQgaXQgKG5vdGUgdGhlIG1pc3NpbmcgbGFiZWwgZWxlbWVudClcbn1cblxuLy8gSWRlbnRpZnkgY29udHJvbHMgYnkgdGhlaXIgbGFiZWxzXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi8vIEZvcm0gY29udHJvbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gU2hhcmVkIHNpemUgYW5kIHR5cGUgcmVzZXRzXG5zZWxlY3QsXG50ZXh0YXJlYSxcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbmlucHV0W3R5cGU9XCJjb2xvclwiXSxcbi51bmVkaXRhYmxlLWlucHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IEBiYXNlTGluZUhlaWdodDtcbiAgcGFkZGluZzogNHB4O1xuICBtYXJnaW4tYm90dG9tOiA5cHg7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgbGluZS1oZWlnaHQ6IEBiYXNlTGluZUhlaWdodDtcbiAgLmJvcmRlci1yYWRpdXMoMCk7XG4gIGNvbG9yOiBAZ3JheTtcbn1cblxuLy8gUmVzZXQgYXBwZWFyYW5jZSBwcm9wZXJ0aWVzIGZvciB0ZXh0dWFsIGlucHV0cyBhbmQgdGV4dGFyZWFcbi8vIERlY2xhcmUgd2lkdGggZm9yIGxlZ2FjeSAoY2FuJ3QgYmUgb24gaW5wdXRbdHlwZT0qXSBzZWxlY3RvcnMgb3IgaXQncyB0b28gc3BlY2lmaWMpXG5pbnB1dCxcbnRleHRhcmVhIHtcbiAgd2lkdGg6IDIxMHB4O1xufVxuLy8gUmVzZXQgaGVpZ2h0IHNpbmNlIHRleHRhcmVhcyBoYXZlIHJvd3NcbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLy8gRXZlcnl0aGluZyBlbHNlXG50ZXh0YXJlYSxcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbmlucHV0W3R5cGU9XCJjb2xvclwiXSxcbi51bmVkaXRhYmxlLWlucHV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGlucHV0QmFja2dyb3VuZDtcbiAgYm9yZGVyOiAxcHggc29saWQgQGlucHV0Qm9yZGVyO1xuICAuYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7XG4gIEB0cmFuc2l0aW9uOiBib3JkZXIgbGluZWFyIC4ycywgYm94LXNoYWRvdyBsaW5lYXIgLjJzO1xuICAudHJhbnNpdGlvbihAdHJhbnNpdGlvbik7XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDgyLDE2OCwyMzYsLjgpO1xuICAgIG91dGxpbmU6IDA7XG4gICAgb3V0bGluZTogdGhpbiBkb3R0ZWQgXFw5OyAvKiBJRTYtOSAqL1xuICAgIC5ib3gtc2hhZG93KH5cImluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgOHB4IHJnYmEoODIsMTY4LDIzNiwuNilcIik7XG4gIH1cbn1cblxuLy8gUG9zaXRpb24gcmFkaW9zIGFuZCBjaGVja2JveGVzIGJldHRlclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgbWFyZ2luOiAzcHggMDtcbiAgKm1hcmdpbi10b3A6IDA7IC8qIElFNyAqL1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vIFJlc2V0IHdpZHRoIG9mIGlucHV0IGJ1dHRvbnMsIHJhZGlvcywgY2hlY2tib3hlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICB3aWR0aDogYXV0bzsgLy8gT3ZlcnJpZGUgb2YgZ2VuZXJpYyBpbnB1dCBzZWxlY3RvclxufVxuXG4vLyBNYWtlIHVuZWRpdGFibGUgdGV4dGFyZWFzIGJlaGF2ZSBsaWtlIGEgdGV4dGFyZWFcbi51bmVkaXRhYmxlLXRleHRhcmVhIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gU2V0IHRoZSBoZWlnaHQgb2Ygc2VsZWN0IGFuZCBmaWxlIGNvbnRyb2xzIHRvIG1hdGNoIHRleHQgaW5wdXRzXG5zZWxlY3QsXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gIGhlaWdodDogMjhweDsgLyogSW4gSUU3LCB0aGUgaGVpZ2h0IG9mIHRoZSBzZWxlY3QgZWxlbWVudCBjYW5ub3QgYmUgY2hhbmdlZCBieSBoZWlnaHQsIG9ubHkgZm9udC1zaXplICovXG4gICptYXJnaW4tdG9wOiA0cHg7IC8qIEZvciBJRTcsIGFkZCB0b3AgbWFyZ2luIHRvIGFsaWduIHNlbGVjdCB3aXRoIGxhYmVscyAqL1xuICBsaW5lLWhlaWdodDogMjhweDtcbn1cblxuLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgb2JleSBoZWlnaHQgYnkgYXBwbHlpbmcgYSBib3JkZXJcbnNlbGVjdCB7XG4gIHdpZHRoOiAyMjBweDsgLy8gZGVmYXVsdCBpbnB1dCB3aWR0aCArIDEwcHggb2YgcGFkZGluZyB0aGF0IGRvZXNuJ3QgZ2V0IGFwcGxpZWRcbiAgYm9yZGVyOiAxcHggc29saWQgI2JiYjtcbiAgLmJvcmRlci1yYWRpdXMoMCk7XG59XG5cbi8vIE1ha2UgbXVsdGlwbGUgc2VsZWN0IGVsZW1lbnRzIGhlaWdodCBub3QgZml4ZWRcbnNlbGVjdFttdWx0aXBsZV0sXG5zZWxlY3Rbc2l6ZV0ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvY3VzIGZvciBzZWxlY3QsIGZpbGUsIHJhZGlvLCBhbmQgY2hlY2tib3hcbnNlbGVjdDpmb2N1cyxcbmlucHV0W3R5cGU9XCJmaWxlXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzIHtcbiAgLnRhYi1mb2N1cygpO1xufVxuXG5cblxuLy8gQ0hFQ0tCT1hFUyAmIFJBRElPU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nXG4ucmFkaW8sXG4uY2hlY2tib3gge1xuICBtaW4taGVpZ2h0OiAxOHB4OyAvLyBjbGVhciB0aGUgZmxvYXRpbmcgaW5wdXQgaWYgdGhlcmUgaXMgbm8gbGFiZWwgdGV4dFxuICBwYWRkaW5nLWxlZnQ6IDE4cHg7XG59XG4ucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogLTE4cHg7XG59XG5cbi8vIE1vdmUgdGhlIG9wdGlvbnMgbGlzdCBkb3duIHRvIGFsaWduIHdpdGggbGFiZWxzXG4uY29udHJvbHMgPiAucmFkaW86Zmlyc3QtY2hpbGQsXG4uY29udHJvbHMgPiAuY2hlY2tib3g6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXRvcDogNXB4OyAvLyBoYXMgdG8gYmUgcGFkZGluZyBiZWNhdXNlIG1hcmdpbiBjb2xsYXNwZXNcbn1cblxuLy8gUmFkaW9zIGFuZCBjaGVja2JveGVzIG9uIHNhbWUgbGluZVxuLy8gVE9ETyB2MzogQ29udmVydCAuaW5saW5lIHRvIC5jb250cm9sLWlubGluZVxuLnJhZGlvLmlubGluZSxcbi5jaGVja2JveC5pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4ucmFkaW8uaW5saW5lICsgLnJhZGlvLmlubGluZSxcbi5jaGVja2JveC5pbmxpbmUgKyAuY2hlY2tib3guaW5saW5lIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IC8vIHNwYWNlIG91dCBjb25zZWN1dGl2ZSBpbmxpbmUgY29udHJvbHNcbn1cblxuXG5cbi8vIElOUFVUIFNJWkVTXG4vLyAtLS0tLS0tLS0tLVxuXG4vLyBHZW5lcmFsIGNsYXNzZXMgZm9yIHF1aWNrIHNpemVzXG4uaW5wdXQtbWluaSAgICAgICB7IHdpZHRoOiA2MHB4OyB9XG4uaW5wdXQtc21hbGwgICAgICB7IHdpZHRoOiA5MHB4OyB9XG4uaW5wdXQtbWVkaXVtICAgICB7IHdpZHRoOiAxNTBweDsgfVxuLmlucHV0LWxhcmdlICAgICAgeyB3aWR0aDogMjEwcHg7IH1cbi5pbnB1dC14bGFyZ2UgICAgIHsgd2lkdGg6IDI3MHB4OyB9XG4uaW5wdXQteHhsYXJnZSAgICB7IHdpZHRoOiA1MzBweDsgfVxuXG4vLyBHcmlkIHN0eWxlIGlucHV0IHNpemVzXG5pbnB1dFtjbGFzcyo9XCJzcGFuXCJdLFxuc2VsZWN0W2NsYXNzKj1cInNwYW5cIl0sXG50ZXh0YXJlYVtjbGFzcyo9XCJzcGFuXCJdLFxuLnVuZWRpdGFibGUtaW5wdXRbY2xhc3MqPVwic3BhblwiXSxcbi8vIFJlZGVjbGFyZSBzaW5jZSB0aGUgZmx1aWQgcm93IGNsYXNzIGlzIG1vcmUgc3BlY2lmaWNcbi5yb3ctZmx1aWQgaW5wdXRbY2xhc3MqPVwic3BhblwiXSxcbi5yb3ctZmx1aWQgc2VsZWN0W2NsYXNzKj1cInNwYW5cIl0sXG4ucm93LWZsdWlkIHRleHRhcmVhW2NsYXNzKj1cInNwYW5cIl0sXG4ucm93LWZsdWlkIC51bmVkaXRhYmxlLWlucHV0W2NsYXNzKj1cInNwYW5cIl0ge1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4vLyBFbnN1cmUgaW5wdXQtcHJlcGVuZC9hcHBlbmQgbmV2ZXIgd3JhcHNcbi5pbnB1dC1hcHBlbmQgaW5wdXRbY2xhc3MqPVwic3BhblwiXSxcbi5pbnB1dC1hcHBlbmQgLnVuZWRpdGFibGUtaW5wdXRbY2xhc3MqPVwic3BhblwiXSxcbi5pbnB1dC1wcmVwZW5kIGlucHV0W2NsYXNzKj1cInNwYW5cIl0sXG4uaW5wdXQtcHJlcGVuZCAudW5lZGl0YWJsZS1pbnB1dFtjbGFzcyo9XCJzcGFuXCJdLFxuLnJvdy1mbHVpZCAuaW5wdXQtcHJlcGVuZCBbY2xhc3MqPVwic3BhblwiXSxcbi5yb3ctZmx1aWQgLmlucHV0LWFwcGVuZCBbY2xhc3MqPVwic3BhblwiXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuXG5cbi8vIEdSSUQgU0laSU5HIEZPUiBJTlBVVFNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuI2dyaWQgPiAuaW5wdXQoQGZsdWlkR3JpZENvbHVtbldpZHRoLCBAZmx1aWRHcmlkR3V0dGVyV2lkdGgpO1xuXG5cblxuLy8gRElTQUJMRUQgU1RBVEVcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbi8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG5pbnB1dFtkaXNhYmxlZF0sXG5zZWxlY3RbZGlzYWJsZWRdLFxudGV4dGFyZWFbZGlzYWJsZWRdLFxuaW5wdXRbcmVhZG9ubHldLFxuc2VsZWN0W3JlYWRvbmx5XSxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6IEBpbnB1dERpc2FibGVkQmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAjZGRkO1xufVxuLy8gRXhwbGljaXRseSByZXNldCB0aGUgY29sb3JzIGhlcmVcbmlucHV0W3R5cGU9XCJyYWRpb1wiXVtkaXNhYmxlZF0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl1bZGlzYWJsZWRdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdW3JlYWRvbmx5XSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXVtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuXG5cblxuLy8gRk9STSBGSUVMRCBGRUVEQkFDSyBTVEFURVNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFdhcm5pbmdcbi5jb250cm9sLWdyb3VwLndhcm5pbmcge1xuICAuZm9ybUZpZWxkU3RhdGUoQHdhcm5pbmdUZXh0LCBAd2FybmluZ1RleHQsIEB3YXJuaW5nQmFja2dyb3VuZCk7XG59XG4vLyBFcnJvclxuLmNvbnRyb2wtZ3JvdXAuZXJyb3Ige1xuICAuZm9ybUZpZWxkU3RhdGUoQGVycm9yVGV4dCwgQGVycm9yVGV4dCwgQGVycm9yQmFja2dyb3VuZCk7XG59XG4vLyBTdWNjZXNzXG4uY29udHJvbC1ncm91cC5zdWNjZXNzIHtcbiAgLmZvcm1GaWVsZFN0YXRlKEBzdWNjZXNzVGV4dCwgQHN1Y2Nlc3NUZXh0LCBAc3VjY2Vzc0JhY2tncm91bmQpO1xufVxuXG4vLyBIVE1MNSBpbnZhbGlkIHN0YXRlc1xuLy8gU2hhcmVzIHN0eWxlcyB3aXRoIHRoZSAuY29udHJvbC1ncm91cC5lcnJvciBhYm92ZVxuaW5wdXQ6Zm9jdXM6cmVxdWlyZWQ6aW52YWxpZCxcbnRleHRhcmVhOmZvY3VzOnJlcXVpcmVkOmludmFsaWQsXG5zZWxlY3Q6Zm9jdXM6cmVxdWlyZWQ6aW52YWxpZCB7XG4gIGNvbG9yOiAjYjk0YTQ4O1xuICBib3JkZXItY29sb3I6ICNlZTVmNWI7XG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCNlZTVmNWIsIDEwJSk7XG4gICAgLmJveC1zaGFkb3coMCAwIDZweCBsaWdodGVuKCNlZTVmNWIsIDIwJSkpO1xuICB9XG59XG5cblxuXG4vLyBGT1JNIEFDVElPTlNcbi8vIC0tLS0tLS0tLS0tLVxuXG4uZm9ybS1hY3Rpb25zIHtcbiAgcGFkZGluZzogKEBiYXNlTGluZUhlaWdodCAtIDEpIDIwcHggQGJhc2VMaW5lSGVpZ2h0O1xuICBtYXJnaW4tdG9wOiBAYmFzZUxpbmVIZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlTGluZUhlaWdodDtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGZvcm1BY3Rpb25zQmFja2dyb3VuZDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNWU1ZTU7XG4gIC5jbGVhcmZpeCgpOyAvLyBBZGRpbmcgY2xlYXJmaXggdG8gYWxsb3cgZm9yIC5wdWxsLXJpZ2h0IGJ1dHRvbiBjb250YWluZXJzXG59XG5cbi8vIEZvciB0ZXh0IHRoYXQgbmVlZHMgdG8gYXBwZWFyIGFzIGFuIGlucHV0IGJ1dCBzaG91bGQgbm90IGJlIGFuIGlucHV0XG4udW5lZGl0YWJsZS1pbnB1dCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIHByZXZlbnQgdGV4dCBmcm9tIHdyYXBwaW5nLCBidXQgc3RpbGwgY3V0IGl0IG9mZiBsaWtlIGFuIGlucHV0IGRvZXNcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGlucHV0QmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAjZWVlO1xuICAuYm94LXNoYWRvdyhpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwuMDI1KSk7XG59XG5cbi8vIFBsYWNlaG9sZGVyIHRleHQgZ2V0cyBzcGVjaWFsIHN0eWxlczsgY2Fubm90IGJlIGJ1bmRsZWQgdG9nZXRoZXIgdGhvdWdoIGZvciBzb21lIHJlYXNvblxuLnBsYWNlaG9sZGVyKCk7XG5cblxuXG4vLyBIRUxQIFRFWFRcbi8vIC0tLS0tLS0tLVxuXG4uaGVscC1ibG9jayxcbi5oZWxwLWlubGluZSB7XG4gIGNvbG9yOiBAZ3JheTsgLy8gbGlnaHRlbiB0aGUgdGV4dCBzb21lIGZvciBjb250cmFzdFxufVxuXG4uaGVscC1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrOyAvLyBhY2NvdW50IGZvciBhbnkgZWxlbWVudCB1c2luZyBoZWxwLWJsb2NrXG4gIG1hcmdpbi1ib3R0b206IEBiYXNlTGluZUhlaWdodCAvIDI7XG59XG5cbi5oZWxwLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLmllNy1pbmxpbmUtYmxvY2soKTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG59XG5cblxuXG4vLyBJTlBVVCBHUk9VUFNcbi8vIC0tLS0tLS0tLS0tLVxuXG4vLyBBbGxvdyB1cyB0byBwdXQgc3ltYm9scyBhbmQgdGV4dCB3aXRoaW4gdGhlIGlucHV0IGZpZWxkIGZvciBhIGNsZWFuZXIgbG9va1xuLmlucHV0LXByZXBlbmQsXG4uaW5wdXQtYXBwZW5kIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBpbnB1dCxcbiAgc2VsZWN0LFxuICAudW5lZGl0YWJsZS1pbnB1dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBwbGFjZWQgaGVyZSBieSBkZWZhdWx0IHNvIHRoYXQgb24gOmZvY3VzIHdlIGNhbiBwbGFjZSB0aGUgaW5wdXQgYWJvdmUgdGhlIC5hZGQtb24gZm9yIGZ1bGwgYm9yZGVyIGFuZCBib3gtc2hhZG93IGdvb2RuZXNzXG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gcHJldmVudCBib3R0b20gbWFyZ2luIGZyb20gc2NyZXdpbmcgdXAgYWxpZ25tZW50IGluIHN0YWNrZWQgZm9ybXNcbiAgICAqbWFyZ2luLWxlZnQ6IDA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvLyBNYWtlIGlucHV0IG9uIHRvcCB3aGVuIGZvY3VzZWQgc28gYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyBhbHdheXMgc2hvd1xuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cbiAgLnVuZWRpdGFibGUtaW5wdXQge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjY2NjO1xuICB9XG4gIC5hZGQtb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IEBiYXNlTGluZUhlaWdodDtcbiAgICBtaW4td2lkdGg6IDE2cHg7XG4gICAgcGFkZGluZzogNHB4IDVweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiBAYmFzZUxpbmVIZWlnaHQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtc2hhZG93OiAwIDFweCAwIEB3aGl0ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBncmF5TGlnaHRlcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICB9XG4gIC5hZGQtb24sXG4gIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG4gIC5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oQGdyZWVuLCAzMCk7XG4gICAgYm9yZGVyLWNvbG9yOiBAZ3JlZW47XG4gIH1cbn1cbi5pbnB1dC1wcmVwZW5kIHtcbiAgLmFkZC1vbixcbiAgLmJ0biB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICB9XG4gIC5hZGQtb246Zmlyc3QtY2hpbGQsXG4gIC5idG46Zmlyc3QtY2hpbGQge1xuICB9XG59XG4uaW5wdXQtYXBwZW5kIHtcbiAgaW5wdXQsXG4gIHNlbGVjdCxcbiAgLnVuZWRpdGFibGUtaW5wdXQge1xuICB9XG4gIC51bmVkaXRhYmxlLWlucHV0IHtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICNjY2M7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICNlZWU7XG4gIH1cbiAgLmFkZC1vbjpsYXN0LWNoaWxkLFxuICAuYnRuOmxhc3QtY2hpbGQge1xuICB9XG59XG5cbi8vIENvbW1vbiBwcm9wZXJ0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4uZm9ybS1zZWFyY2gsXG4uZm9ybS1pbmxpbmUsXG4uZm9ybS1ob3Jpem9udGFsIHtcbiAgaW5wdXQsXG4gIHRleHRhcmVhLFxuICBzZWxlY3QsXG4gIC5oZWxwLWlubGluZSxcbiAgLnVuZWRpdGFibGUtaW5wdXQsXG4gIC5pbnB1dC1wcmVwZW5kLFxuICAuaW5wdXQtYXBwZW5kIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLmllNy1pbmxpbmUtYmxvY2soKTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC8vIFJlLWhpZGUgaGlkZGVuIGVsZW1lbnRzIGR1ZSB0byBzcGVjaWZpdHlcbiAgLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5mb3JtLXNlYXJjaCBsYWJlbCxcbi5mb3JtLWlubGluZSBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi8vIFJlbW92ZSBtYXJnaW4gZm9yIGlucHV0LXByZXBlbmQvLWFwcGVuZFxuLmZvcm0tc2VhcmNoIC5pbnB1dC1hcHBlbmQsXG4uZm9ybS1pbmxpbmUgLmlucHV0LWFwcGVuZCxcbi5mb3JtLXNlYXJjaCAuaW5wdXQtcHJlcGVuZCxcbi5mb3JtLWlubGluZSAuaW5wdXQtcHJlcGVuZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4vLyBJbmxpbmUgY2hlY2tib3gvcmFkaW8gbGFiZWxzIChyZW1vdmUgcGFkZGluZyBvbiBsZWZ0KVxuLmZvcm0tc2VhcmNoIC5yYWRpbyxcbi5mb3JtLXNlYXJjaCAuY2hlY2tib3gsXG4uZm9ybS1pbmxpbmUgLnJhZGlvLFxuLmZvcm0taW5saW5lIC5jaGVja2JveCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi8vIFJlbW92ZSBmbG9hdCBhbmQgbWFyZ2luLCBzZXQgdG8gaW5saW5lLWJsb2NrXG4uZm9ybS1zZWFyY2ggLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5mb3JtLXNlYXJjaCAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuLmZvcm0taW5saW5lIC5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4uZm9ybS1pbmxpbmUgLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cblxuLy8gTWFyZ2luIHRvIHNwYWNlIG91dCBmaWVsZHNldHNcbi5jb250cm9sLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VMaW5lSGVpZ2h0IC8gMjtcbn1cblxuLy8gTGVnZW5kIGNvbGxhcHNlcyBtYXJnaW4sIHNvIG5leHQgZWxlbWVudCBpcyByZXNwb25zaWJsZSBmb3Igc3BhY2luZ1xubGVnZW5kICsgLmNvbnRyb2wtZ3JvdXAge1xuICBtYXJnaW4tdG9wOiBAYmFzZUxpbmVIZWlnaHQ7XG4gIC13ZWJraXQtbWFyZ2luLXRvcC1jb2xsYXBzZTogc2VwYXJhdGU7XG59XG5cbi8vIEhvcml6b250YWwtc3BlY2lmaWMgc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uZm9ybS1ob3Jpem9udGFsIHtcbiAgLy8gSW5jcmVhc2Ugc3BhY2luZyBiZXR3ZWVuIGdyb3Vwc1xuICAuY29udHJvbC1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VMaW5lSGVpZ2h0O1xuICAgIC5jbGVhcmZpeCgpO1xuICB9XG4gIC8vIEZsb2F0IHRoZSBsYWJlbHMgbGVmdFxuICAuY29udHJvbC1sYWJlbCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE0MHB4O1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLy8gTW92ZSBvdmVyIGFsbCBpbnB1dCBjb250cm9scyBhbmQgY29udGVudFxuICAuY29udHJvbHMge1xuICAgIC8vIFN1cGVyIGphbmsgSUU3IGZpeCB0byBlbnN1cmUgdGhlIGlucHV0cyBpbiAuaW5wdXQtYXBwZW5kIGFuZCBpbnB1dC1wcmVwZW5kXG4gICAgLy8gZG8gbm90IGluaGVyaXQgdGhlIG1hcmdpbiBvZiB0aGUgcGFyZW50LCBpbiB0aGlzIGNhc2UgLmNvbnRyb2xzXG4gICAgKmRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAqcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxNjBweDtcbiAgICAqbWFyZ2luLWxlZnQ6IDA7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAqcGFkZGluZy1sZWZ0OiAxNjBweDtcbiAgICB9XG4gIH1cbiAgLy8gUmVtb3ZlIGJvdHRvbSBtYXJnaW4gb24gYmxvY2sgbGV2ZWwgaGVscCB0ZXh0IHNpbmNlIHRoYXQgaXMgYWNjb3VudGVkIGZvciBvbiAuY29udHJvbC1ncm91cFxuICAuaGVscC1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogQGJhc2VMaW5lSGVpZ2h0IC8gMjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC8vIE1vdmUgb3ZlciBidXR0b25zIGluIC5mb3JtLWFjdGlvbnMgdG8gYWxpZ24gd2l0aCAuY29udHJvbHNcbiAgLmZvcm0tYWN0aW9ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNjBweDtcbiAgfVxufVxuXG4vKipcbiAqIEZpeGVzIHRvIEdvb2dsZSBDdXN0b20gU2VhcmNoXG4gKi9cbi5nY3NfY29udGFpbmVyIHtcbiAgLy9vdXRlciB3cmFwcGVyXG4gIC5nc2MtY29udHJvbC1jc2Uge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG4gIC5nc2Mtc2VhcmNoLWJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG5cblxuICAuZ3NjLXNlYXJjaC1ib3gsXG4gIC5nc2MtcmVzdWx0cy13cmFwcGVyLW92ZXJsYXkge1xuICAgIC5nc2MtaW5wdXQge1xuICAgICAgcGFkZGluZy1yaWdodDogNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHRhYmxlIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICB0ZCB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgJi5nc2liX2Ege1xuICAgICAgICBwYWRkaW5nOiAzcHggNnB4IDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgdGQuZ3NjLXNlYXJjaC1idXR0b24ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgfVxuICAgIGlucHV0W3R5cGU9J3RleHQnXSB7XG4gICAgICAuYm94LXNoYWRvdyhub25lKTtcbiAgICB9XG4gICAgaW5wdXQuZ3NjLXNlYXJjaC1idXR0b24tdjIge1xuICAgICAgcGFkZGluZzogNnB4IDE1cHggIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogMTNweCAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgI2dyYWRpZW50ID4gLnZlcnRpY2FsKCBsaWdodGVuKEBiYXNlQ29sb3IsIDIlKSwgZGFya2VuKEBiYXNlQ29sb3IsIDIlKSApO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgICNncmFkaWVudCA+IC52ZXJ0aWNhbChkYXJrZW4oQGJhc2VDb2xvciwgMiUpLCBsaWdodGVuKEBiYXNlQ29sb3IsIDIlKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCVVRUT04gU1RZTEVTXG4vLyAtLS0tLS0tLS0tLS0tXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBDb3JlXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiA0cHggMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gRm9yIGlucHV0LmJ0blxuICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gIGxpbmUtaGVpZ2h0OiBAYmFzZUxpbmVIZWlnaHQ7XG4gICpsaW5lLWhlaWdodDogMjBweDtcbiAgY29sb3I6IEBncmF5RGFyaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IEBncmF5TGlnaHRlcjtcbn1cbi8vIEhvdmVyIHN0YXRlXG4uYnRuOmhvdmVyIHtcbiAgY29sb3I6IEBncmF5RGFyaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQHdoaXRlLCAxMCUpO1xuICAqYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEB3aGl0ZSwgMTUlKTsgLyogQnV0dG9ucyBpbiBJRTcgZG9uJ3QgZ2V0IGJvcmRlcnMsIHNvIGRhcmtlbiBvbiBob3ZlciAqL1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNXB4O1xuXG4gIC8vIHRyYW5zaXRpb24gaXMgb25seSB3aGVuIGdvaW5nIHRvIGhvdmVyLCBvdGhlcndpc2UgdGhlIGJhY2tncm91bmRcbiAgLy8gYmVoaW5kIHRoZSBncmFkaWVudCAodGhlcmUgZm9yIElFPD05IGZhbGxiYWNrKSBnZXRzIG1pc21hdGNoZWRcbiAgLnRyYW5zaXRpb24oYmFja2dyb3VuZC1wb3NpdGlvbiAuMXMgbGluZWFyKTtcbn1cbi8vIEZvY3VzIHN0YXRlIGZvciBrZXlib2FyZCBhbmQgYWNjZXNzaWJpbGl0eVxuLmJ0bjpmb2N1cyB7XG4gIC50YWItZm9jdXMoKTtcbn1cbi5idG4uYWN0aXZlLFxuLmJ0bjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQHdoaXRlLCAxMCUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQHdoaXRlLCAxNSUpIGUoXCJcXDlcIik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIG91dGxpbmU6IDA7XG59XG4uYnRuLmRpc2FibGVkLFxuLmJ0bltkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAd2hpdGUsIDEwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIC5vcGFjaXR5KDY1KTtcbiAgLmJveC1zaGFkb3cobm9uZSk7XG59XG5cblxuLy8gQnV0dG9uIFNpemVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBMYXJnZVxuLmJ0bi1sYXJnZSB7XG4gIHBhZGRpbmc6IDlweCAxNHB4O1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKyAycHg7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG4uYnRuLWxhcmdlIFtjbGFzc149XCJpY29uLVwiXSB7XG4gIG1hcmdpbi10b3A6IDFweDtcbn1cblxuLy8gU21hbGxcbi5idG4tc21hbGwge1xuICBwYWRkaW5nOiA1cHggOXB4O1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgLSAycHg7XG4gIGxpbmUtaGVpZ2h0OiBAYmFzZUxpbmVIZWlnaHQgLSAycHg7XG59XG4uYnRuLXNtYWxsIFtjbGFzc149XCJpY29uLVwiXSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG59XG5cbi8vIE1pbmlcbi5idG4tbWluaSB7XG4gIHBhZGRpbmc6IDJweCA2cHg7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAtIDJweDtcbiAgbGluZS1oZWlnaHQ6IEBiYXNlTGluZUhlaWdodCAtIDRweDtcbn1cblxuXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gU2V0IHRleHQgY29sb3Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5idG4tcHJpbWFyeS5hY3RpdmUge1xuICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNzUpO1xufVxuXG4vLyBTZXQgdGhlIGJhY2tncm91bmRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uYnRuIHtcbiAgLy8gcmVzZXQgaGVyZSBhcyBvZiAyLjAuMyBkdWUgdG8gUmVjZXNzIHByb3BlcnR5IG9yZGVyXG4gIGJvcmRlci1jb2xvcjogI2NjYztcbiAgYmFja2dyb3VuZC1jb2xvcjogQGdyYXlMaWdodGVyO1xufVxuLmJ0bi1wcmltYXJ5LFxuLmJ0bi1wcmltYXJ5OmhvdmVyIHtcbiAgY29sb3I6IEB3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGJhc2VDb2xvcjtcbn1cblxuLmJ0bi1wcmltYXJ5OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBiYXNlQ29sb3IsIDEwJSk7XG4gICpiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGJhc2VDb2xvciwgMTUlKTsgLyogQnV0dG9ucyBpbiBJRTcgZG9uJ3QgZ2V0IGJvcmRlcnMsIHNvIGRhcmtlbiBvbiBob3ZlciAqL1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNXB4O1xuXG4gIC8vIHRyYW5zaXRpb24gaXMgb25seSB3aGVuIGdvaW5nIHRvIGhvdmVyLCBvdGhlcndpc2UgdGhlIGJhY2tncm91bmRcbiAgLy8gYmVoaW5kIHRoZSBncmFkaWVudCAodGhlcmUgZm9yIElFPD05IGZhbGxiYWNrKSBnZXRzIG1pc21hdGNoZWRcbiAgLnRyYW5zaXRpb24oYmFja2dyb3VuZC1wb3NpdGlvbiAuMXMgbGluZWFyKTtcbn1cbiIsIi8vXG4vLyBUYWJsZXMubGVzc1xuLy8gVGFibGVzIGZvciwgeW91IGd1ZXNzZWQgaXQsIHRhYnVsYXIgZGF0YVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJBU0UgVEFCTEVTXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG50YWJsZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IEB0YWJsZUJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBib3JkZXI6IDFweCBzb2xpZCBAdGFibGVCb3JkZXI7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZUxpbmVIZWlnaHQ7XG4gIC8vIENlbGxzXG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiBAYmFzZUxpbmVIZWlnaHQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBAdGFibGVCb3JkZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBAdGFibGVCb3JkZXI7XG4gIH1cbiAgdGgge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC8vIEJvdHRvbSBhbGlnbiBmb3IgY29sdW1uIGhlYWRpbmdzXG4gIHRoZWFkIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG4gIC8vIEFjY291bnQgZm9yIG11bHRpcGxlIHRib2R5IGluc3RhbmNlc1xuICB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgQHRhYmxlQm9yZGVyO1xuICB9XG4gIC8vIFByZXZlbnQgYSBkb3VibGUgYm9yZGVyXG4gIGNhcHRpb24gKyB0aGVhZCB0cjpmaXJzdC1jaGlsZCB0aCxcbiAgY2FwdGlvbiArIHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRkLFxuICBjYXB0aW9uICsgdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGgsXG4gIGNhcHRpb24gKyB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0ZCxcbiAgY29sZ3JvdXAgKyB0aGVhZCB0cjpmaXJzdC1jaGlsZCB0aCxcbiAgY29sZ3JvdXAgKyB0aGVhZCB0cjpmaXJzdC1jaGlsZCB0ZCxcbiAgY29sZ3JvdXAgKyB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0aCxcbiAgY29sZ3JvdXAgKyB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0ZCxcbiAgdGhlYWQ6Zmlyc3QtY2hpbGQgdHI6Zmlyc3QtY2hpbGQgdGgsXG4gIHRoZWFkOmZpcnN0LWNoaWxkIHRyOmZpcnN0LWNoaWxkIHRkLFxuICB0Ym9keTpmaXJzdC1jaGlsZCB0cjpmaXJzdC1jaGlsZCB0aCxcbiAgdGJvZHk6Zmlyc3QtY2hpbGQgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLy8gQ09OREVOU0VEIFRBQkxFIFcvIEhBTEYgUEFERElOR1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4udGFibGUtY29uZGVuc2VkIHtcbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiA0cHggNXB4O1xuICB9XG59XG5cbi8vIE5PIEJPUkRFUiBWRVJTSU9OXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbi50YWJsZS1ub2JvcmRlciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgdGgsXG4gIHRkIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbn1cblxuLy8gWkVCUkEtU1RSSVBJTkdcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG4udGFibGUtc3RyaXBlZCB7XG4gIHRib2R5IHtcbiAgICB0cjpudGgtY2hpbGQob2RkKSB0ZCxcbiAgICB0cjpudGgtY2hpbGQob2RkKSB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAdGFibGVCYWNrZ3JvdW5kQWNjZW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEhPVkVSIEVGRkVDVFxuLy8gLS0tLS0tLS0tLS0tXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG4udGFibGUge1xuICB0Ym9keSB0cjpob3ZlciB0ZCxcbiAgdGJvZHkgdHI6aG92ZXIgdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB0YWJsZUJhY2tncm91bmRIb3ZlcjtcbiAgfVxufVxuXG5cbi8vIFRBQkxFIENFTEwgU0laSU5HXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBDaGFuZ2UgdGhlIGNvbHVtbnNcbnRhYmxlIHtcbiAgLnNwYW4xICAgICB7IC50YWJsZUNvbHVtbnMoMSk7IH1cbiAgLnNwYW4yICAgICB7IC50YWJsZUNvbHVtbnMoMik7IH1cbiAgLnNwYW4zICAgICB7IC50YWJsZUNvbHVtbnMoMyk7IH1cbiAgLnNwYW40ICAgICB7IC50YWJsZUNvbHVtbnMoNCk7IH1cbiAgLnNwYW41ICAgICB7IC50YWJsZUNvbHVtbnMoNSk7IH1cbiAgLnNwYW42ICAgICB7IC50YWJsZUNvbHVtbnMoNik7IH1cbiAgLnNwYW43ICAgICB7IC50YWJsZUNvbHVtbnMoNyk7IH1cbiAgLnNwYW44ICAgICB7IC50YWJsZUNvbHVtbnMoOCk7IH1cbiAgLnNwYW45ICAgICB7IC50YWJsZUNvbHVtbnMoOSk7IH1cbiAgLnNwYW4xMCAgICB7IC50YWJsZUNvbHVtbnMoMTApOyB9XG4gIC5zcGFuMTEgICAgeyAudGFibGVDb2x1bW5zKDExKTsgfVxuICAuc3BhbjEyICAgIHsgLnRhYmxlQ29sdW1ucygxMik7IH1cbiAgLnNwYW4xMyAgICB7IC50YWJsZUNvbHVtbnMoMTMpOyB9XG4gIC5zcGFuMTQgICAgeyAudGFibGVDb2x1bW5zKDE0KTsgfVxuICAuc3BhbjE1ICAgIHsgLnRhYmxlQ29sdW1ucygxNSk7IH1cbiAgLnNwYW4xNiAgICB7IC50YWJsZUNvbHVtbnMoMTYpOyB9XG4gIC5zcGFuMTcgICAgeyAudGFibGVDb2x1bW5zKDE3KTsgfVxuICAuc3BhbjE4ICAgIHsgLnRhYmxlQ29sdW1ucygxOCk7IH1cbiAgLnNwYW4xOSAgICB7IC50YWJsZUNvbHVtbnMoMTkpOyB9XG4gIC5zcGFuMjAgICAgeyAudGFibGVDb2x1bW5zKDIwKTsgfVxuICAuc3BhbjIxICAgIHsgLnRhYmxlQ29sdW1ucygyMSk7IH1cbiAgLnNwYW4yMiAgICB7IC50YWJsZUNvbHVtbnMoMjIpOyB9XG4gIC5zcGFuMjMgICAgeyAudGFibGVDb2x1bW5zKDIzKTsgfVxuICAuc3BhbjI0ICAgIHsgLnRhYmxlQ29sdW1ucygyNCk7IH1cbn1cbiIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2ZvbnRlbGxvJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9mb250ZWxsby9mb250L2ZvbnRlbGxvLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9mb250ZWxsby9mb250L2ZvbnRlbGxvLmVvdD8jaWVmaXhcIikgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCB1cmwoXCIuLi9mb250cy9mb250ZWxsby9mb250L2ZvbnRlbGxvLndvZmZcIikgZm9ybWF0KCd3b2ZmJyksIHVybChcIi4uL2ZvbnRzL2ZvbnRlbGxvL2ZvbnQvZm9udGVsbG8udHRmXCIpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgdXJsKFwiLi4vZm9udHMvZm9udGVsbG8vZm9udC9mb250ZWxsby5zdmcjZm9udGVsbG9cIikgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSxcbltjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6ICdmb250ZWxsbyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3BlYWs6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB3aWR0aDogMWVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDE7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5pY29uLXNlYXJjaDpiZWZvcmUgeyBjb250ZW50OiAnXFw0ZCc7IH0gLyogJ00nICovXG4uaWNvbi1pbnN0YWdyYW06YmVmb3JlIHsgY29udGVudDogJ1xcNzQnOyB9IC8qICd0JyAqL1xuLmljb24taGVhcnQ6YmVmb3JlIHsgY29udGVudDogJ1xcNDEnOyB9IC8qICdBJyAqL1xuLmljb24taGVhcnQtZW1wdHk6YmVmb3JlIHsgY29udGVudDogJ1xcNDInOyB9IC8qICdCJyAqL1xuLmljb24tc3RhcjpiZWZvcmUgeyBjb250ZW50OiAnXFw0Myc7IH0gLyogJ0MnICovXG4uaWNvbi1zdGFyLWVtcHR5OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDQ0JzsgfSAvKiAnRCcgKi9cbi5pY29uLXZpZGVvY2FtOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDInOyB9IC8qICfuoIInICovXG4uaWNvbi1waWN0dXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDAnOyB9IC8qICfuoIAnICovXG4uaWNvbi1jYW1lcmE6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwMSc7IH0gLyogJ+6ggScgKi9cbi5pY29uLW9rOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDQ1JzsgfSAvKiAnRScgKi9cbi5pY29uLWNhbmNlbDpiZWZvcmUgeyBjb250ZW50OiAnXFw0Nic7IH0gLyogJ0YnICovXG4uaWNvbi1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDQ3JzsgfSAvKiAnRycgKi9cbi5pY29uLW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDQ4JzsgfSAvKiAnSCcgKi9cbi5pY29uLWhlbHA6YmVmb3JlIHsgY29udGVudDogJ1xcNDknOyB9IC8qICdJJyAqL1xuLmljb24taG9tZTpiZWZvcmUgeyBjb250ZW50OiAnXFw1MCc7IH0gLyogJ1AnICovXG4uaWNvbi1saW5rOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDUxJzsgfSAvKiAnUScgKi9cbi5pY29uLXRhZzpiZWZvcmUgeyBjb250ZW50OiAnXFw1Mic7IH0gLyogJ1InICovXG4uaWNvbi10YWdzOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDUzJzsgfSAvKiAnUycgKi9cbi5pY29uLWRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDU0JzsgfSAvKiAnVCcgKi9cbi5pY29uLXByaW50OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDU1JzsgfSAvKiAnVScgKi9cbi5pY29uLWNvbW1lbnQ6YmVmb3JlIHsgY29udGVudDogJ1xcNTYnOyB9IC8qICdWJyAqL1xuLmljb24tY2hhdDpiZWZvcmUgeyBjb250ZW50OiAnXFw1Nyc7IH0gLyogJ1cnICovXG4uaWNvbi1sb2NhdGlvbjpiZWZvcmUgeyBjb250ZW50OiAnXFxlODA4JzsgfSAvKiAn7qCIJyAqL1xuLmljb24tZG9jLXRleHQ6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwNCc7IH0gLyogJ+6ghCcgKi9cbi5pY29uLW1haWw6YmVmb3JlIHsgY29udGVudDogJ1xcNzUnOyB9IC8qICd1JyAqL1xuLmljb24tcGhvbmU6YmVmb3JlIHsgY29udGVudDogJ1xcNTgnOyB9IC8qICdYJyAqL1xuLmljb24tbWVudTpiZWZvcmUgeyBjb250ZW50OiAnXFw0Yyc7IH0gLyogJ0wnICovXG4uaWNvbi1jYWxlbmRhcjpiZWZvcmUgeyBjb250ZW50OiAnXFxlODA1JzsgfSAvKiAn7qCFJyAqL1xuLmljb24taGVhZHBob25lczpiZWZvcmUgeyBjb250ZW50OiAnXFw1OSc7IH0gLyogJ1knICovXG4uaWNvbi1wbGF5OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDYwJzsgfSAvKiAnYCcgKi9cbi5pY29uLXRhYmxlOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDcnOyB9IC8qICfuoIcnICovXG4uaWNvbi1jaGFydC1iYXI6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwNic7IH0gLyogJ+6ghicgKi9cbi5pY29uLXNwaW5uZXI6YmVmb3JlIHsgY29udGVudDogJ1xcNjEnOyB9IC8qICdhJyAqL1xuLmljb24tbWFwOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDknOyB9IC8qICfuoIknICovXG4uaWNvbi1zaGFyZTpiZWZvcmUgeyBjb250ZW50OiAnXFxlODBhJzsgfSAvKiAn7qCKJyAqL1xuLmljb24tZ3BsdXM6YmVmb3JlIHsgY29udGVudDogJ1xcNjInOyB9IC8qICdiJyAqL1xuLmljb24tcGludGVyZXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDYzJzsgfSAvKiAnYycgKi9cbi5pY29uLWNjOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDY0JzsgfSAvKiAnZCcgKi9cbi5pY29uLWZsaWNrcjpiZWZvcmUgeyBjb250ZW50OiAnXFw2NSc7IH0gLyogJ2UnICovXG4uaWNvbi1saW5rZWRpbjpiZWZvcmUgeyBjb250ZW50OiAnXFw2Nic7IH0gLyogJ2YnICovXG4uaWNvbi1yc3M6YmVmb3JlIHsgY29udGVudDogJ1xcNjcnOyB9IC8qICdnJyAqL1xuLmljb24tdHdpdHRlcjpiZWZvcmUgeyBjb250ZW50OiAnXFw2OCc7IH0gLyogJ2gnICovXG4uaWNvbi15b3V0dWJlOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDY5JzsgfSAvKiAnaScgKi9cbi5pY29uLWZhY2Vib29rOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDcwJzsgfSAvKiAncCcgKi9cbi5pY29uLWdpdGh1YjpiZWZvcmUgeyBjb250ZW50OiAnXFw3MSc7IH0gLyogJ3EnICovXG4uaWNvbi1pdHVuZXM6YmVmb3JlIHsgY29udGVudDogJ1xcNzInOyB9IC8qICdyJyAqL1xuLmljb24tdHVtYmxyOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDczJzsgfSAvKiAncycgKi9cbi5pY29uLWRvYy10ZXh0LWludjpiZWZvcmUgeyBjb250ZW50OiAnXFxlODAzJzsgfSAvKiAn7qCDJyAqL1xuXG4jaGVhZGVyLXNvY2lhbCB7XG4gIGkge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiA0cHg7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgb3BhY2l0eTogMC45O1xuICAgIH1cbiAgfVxufVxuIiwiLmdsb2JhbC1uYXYsXG4jcGFnZSxcbiNzaXRlLWZvb3RlcixcbiNmb290ZXItbG9nb3MsXG4uc3RpY2t5LW5hdi1jb250YWluZXIsXG4jYmVmb3JlLWZvb3RlciB7XG4gIG1heC13aWR0aDogQGNvbnRhaW5lck1heFdpZHRoO1xuICBwYWRkaW5nOiAwIDIuNSU7XG59XG4jcGFnZSB7XG4gIHBhZGRpbmctYm90dG9tOkBiYXNlbGluZSAqIDAuNzU7XG59XG4jbWFpbiB7XG4gIG1hcmdpbjogQGJhc2VsaW5lICogMC43NSAwO1xufVxuI2xlZnQtcmFpbCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbiNjb250ZW50LW1haW4ge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi8vIEZsdWlkIEdyaWRcbiNncmlkID4gLmZsdWlkKEBmbHVpZEdyaWRDb2x1bW5XaWR0aCwgQGZsdWlkR3JpZEd1dHRlcldpZHRoKTtcblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmhvbWUgI21haW4ge1xuICAgIG1hcmdpbi10b3A6IEBiYXNlbGluZTtcbiAgfVxufVxuXG4ucG9wb3ZlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBtaW4td2lkdGg6IDE4MHB4O1xuICBiYWNrZ3JvdW5kOiBAd2hpdGU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogQGdyYXk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDFlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgQGdyYXlMaWdodGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4yKTtcbiAgKmJvcmRlci1yaWdodC13aWR0aDogMnB4O1xuICAqYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuICAuYm94LXNoYWRvdygwIDVweCAxMHB4IHJnYmEoMCwwLDAsLjIpKTtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgICAtbW96LWJhY2tncm91bmQtY2xpcDogcGFkZGluZztcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgQGdyYXlMaWdodGVyO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IEBkcm9wZG93bkJvcmRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTBweDtcbiAgICBsZWZ0OiA5cHg7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1sZWZ0OiA5cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiA5cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogOXB4IHNvbGlkIEBkcm9wZG93bkJhY2tncm91bmQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTlweDtcbiAgICBsZWZ0OiAxMHB4O1xuICB9XG59XG4iLCIuZ2xvYmFsLW5hdi1iZyB7XG4gIGhlaWdodDogMzhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGhlYWRlckZvb3RlckNvbG9yO1xufVxuLmdsb2JhbC1uYXYge1xuICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMzhweDtcbiAgb3ZlcmZsb3c6dmlzaWJsZTtcbiAgei1pbmRleDogMTAzMDtcbiAgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luOiA5cHggMThweCAwIDA7XG4gICAgfVxuICAgIGEge1xuICAgICAgLmRhcmtMaWdodChAaGVhZGVyRm9vdGVyQ29sb3IpO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICAgICAgICBjb2xvcjogZGFya2VuKEB3aGl0ZSwgMTUlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm5hdi1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHVsI2hlYWRlci1zb2NpYWwge1xuICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiA1cHggMCA1cHggMTBweDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6IEB3aGl0ZTtcbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgcGFkZGluZzogM3B4IDRweCAycHggNHB4O1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmRvbmF0ZS1idG4ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW46IDVweCAwIDAgMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLmRvbmF0ZS1idG4ge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcmVkO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKEByZWQsIDUlKTtcbiAgfVxuICBhIHtcbiAgICBwYWRkaW5nOiAyNHB4IDdweDtcbiAgICBjb2xvcjogQHdoaXRlO1xuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgfVxuICB9XG4gIGkge1xuICAgIG1hcmdpbjogMXB4IDNweCAwIDA7XG4gIH1cbn1cblxuLm5hdi1zaGVsZiBsaS5kb25hdGUge1xuICBhLmRvbmF0ZS1saW5rIHtcbiAgICBjb2xvcjogQHJlZDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgI2hlYWRlci1leHRyYXMgbGkuZG9uYXRlIHsgZGlzcGxheTogbm9uZTsgfVxuICAubmF2LXNoZWxmIGxpLmRvbmF0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gIC5uYXYtc2hlbGYgbGkuZG9uYXRlIHsgZGlzcGxheTogbm9uZTsgfVxufVxuXG4vLyAjaGVhZGVyLXNlYXJjaCBzdHlsZXMgYXBwbHkgb25seSB0byB0aGUgc2VhcmNoIGluIHRoZSBnbG9iYWwgbmF2LlxuI2hlYWRlci1zZWFyY2gge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXgtd2lkdGg6IDIxMHB4O1xuICBmbG9hdDpsZWZ0O1xuICBmb3JtIHtcbiAgICBtYXJnaW46IDA7IC8vIGluIGNhc2Ugb2YgdXNlci1hZ2VudCBzdHlsZXNoZWV0LlxuICB9XG4gIGlucHV0LCBidXR0b24ge1xuICAgIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG4gIGlucHV0IHtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgcGFkZGluZzogNnB4IDRweCAycHg7XG4gIH1cbiAgYnV0dG9uIHtcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxufVxuI3NpdGUtaGVhZGVyIHtcbiAgbWFyZ2luOiBAYmFzZWxpbmUgMDtcbiAgd2lkdGg6IGF1dG87XG4gIGltZyB7XG4gICAgY2xlYXI6IG5vbmU7XG4gICAgbWFyZ2luOiA1cHggMDtcbiAgfVxuICAvLyBmb3IgbGFyZ29faGVhZGVyX3dpZGdldF9zaWRlYmFyXG4gIGFzaWRlIHtcbiAgICBtYXgtd2lkdGg6IDMyMHB4O1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuaDEuYnJhbmRpbmcsXG5oMi5icmFuZGluZyB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IDIwcHggMDtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMy4zNzU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBhIHtcbiAgICBjb2xvcjogQHRleHRDb2xvcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbiAgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5zaXRlbmFtZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNWVtOyAgXG4gIH1cbiAgLnRhZ2xpbmUge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiBAZ3JheTtcbiAgfVxufVxuLnByaW50LWhlYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEhvbWVwYWdlIGFsZXJ0ICovXG4uYWxlcnQtd3JhcHBlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDJweCBzb2xpZCBAcmVkO1xuICBtYXJnaW46IDIwcHggMDtcbn1cbiNhbGVydC1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IEBjb250YWluZXJNYXhXaWR0aDtcbiAgbWFyZ2luOiAxZW0gYXV0bztcbiAgcGFkZGluZzogOHB4IDIwcHggMDtcbiAgY29sb3I6IEBncmF5RGFyaztcbiAgYSB7XG4gICAgY29sb3I6IEBncmF5RGFyaztcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBAcmVkO1xuICAgIH1cbiAgfVxuICAud2lkZ2V0Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICNtYWluLW5hdixcbiAgI3NpdGUtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCJodG1sLm5hdi1vcGVuLFxuaHRtbC5uYXYtb3BlbiBib2R5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5uYXZiYXIge1xuICAvLyBGaXggZm9yIElFNydzIGJhZCB6LWluZGV4aW5nIHNvIGRyb3Bkb3ducyBkb24ndFxuICAvLyBhcHBlYXIgYmVsb3cgY29udGVudCB0aGF0IGZvbGxvd3MgdGhlIG5hdmJhclxuICAqcG9zaXRpb246IHJlbGF0aXZlO1xuICAqei1pbmRleDogMjtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDU7XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAudG9nZ2xlLW5hdi1iYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAubmF2YmFyLWlubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyQmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIEJyYW5kLCBsaW5rcywgdGV4dCwgYW5kIGJ1dHRvbnNcbiAgY29sb3I6IEBuYXZiYXJUZXh0O1xuICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuXG4gIC8vIEhvdmVyIGFuZCBhY3RpdmUgc3RhdGVzXG4gIC8vIFBsYWluIHRleHQgaW4gdG9wYmFyXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC8vIFNvY2lhbCBpY29ucyBhcHBlYXJpbmcgaW4gbWFpbiBvciBzdGlja3kgbmF2XG4gICNoZWFkZXItc29jaWFsIGxpID4gYSB7XG4gICAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gICAgcGFkZGluZy1yaWdodDogNHB4O1xuICB9XG5cbiAgLy8gQ29tbW9uIG5hdiBsYXlvdXRcbiAgLm5hdiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiBAbmF2YmFyVGV4dDtcblxuICAgICYgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IEBuYXZiYXJMaW5rQ29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSW5kaXZpZHVhbCBuYXYgbGlua3NcbiAgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAmID4gYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiBAbmF2YmFySGVpZ2h0O1xuICAgICAgcGFkZGluZy1sZWZ0OiBAbmF2YmFySGVpZ2h0IC8gNDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IEBuYXZiYXJIZWlnaHQgLyA0O1xuICAgIH1cbiAgfVxuXG4gIC8vIERyb3Bkb3ducyB3aXRoaW4gbmF2XG4gIGxpLmRyb3Bkb3duID4gYSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICBsaS5kcm9wZG93biAuZHJvcGRvd24tbWVudSBsaSBhIHtcbiAgICBjb2xvcjogQG5hdmJhckxpbmtDb2xvcjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiBAYmFzZUxpbmVIZWlnaHQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBAbmF2YmFyTGlua0NvbG9ySG92ZXI7XG4gICAgfVxuICB9XG5cbiAgbGkgPiBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAbmF2YmFyTGlua0JhY2tncm91bmRBY3RpdmU7XG4gICAgY29sb3I6IEBuYXZiYXJMaW5rQ29sb3JIb3ZlcjtcblxuICAgIC5jYXJldDpiZWZvcmUge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogQG5hdmJhckRyb3Bkb3duQ2FyZXRDb2xvckhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN1YiBtZW51c1xuICAuc3ViLW1lbnU6YmVmb3JlLFxuICAuc3ViLXN1Yi1tZW51OmJlZm9yZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogOXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgIGJvcmRlci1yaWdodDogOXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBib3JkZXItdG9wOiA5cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgbGVmdDogLTlweDtcbiAgICB0b3A6IDMwJTtcbiAgfVxuICAuc3ViLW1lbnU6YWZ0ZXIsXG4gIC5zdWItc3ViLW1lbnU6YWZ0ZXIge1xuICAgIGJvcmRlci10b3A6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6IDhweCBzb2xpZCBAd2hpdGU7XG4gICAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIHRvcDogMzElO1xuICAgIGxlZnQ6IC04cHg7XG4gIH1cblxuICAvLyBIb21lIGxpbmsgYW5kIGhvbWUgaWNvblxuICBsaS5ob21lLWljb24sXG4gIGxpLmhvbWUtbGluayB7XG4gICAgYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiBsaWdodGVuKEBsaW5rQ29sb3JIb3ZlciwgNSUpO1xuICAgIH1cbiAgfVxuXG4gIC5ob21lLWljb246aG92ZXIgaW1nLFxuICBsaS5ob21lLWxpbms6aG92ZXIgaSB7XG4gICAgLm9wYWNpdHkoODUpO1xuICB9XG5cbiAgbGkuaG9tZS1saW5rIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJiA+IGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogQG5hdmJhckhlaWdodDtcbiAgICAgICAgd2lkdGg6IEBuYXZiYXJIZWlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbGkuaG9tZS1pY29uID4gYSB7XG4gICAgcGFkZGluZzogMDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGhlaWdodDogKEBuYXZiYXJIZWlnaHQgLSAxNnB4KTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gICAgfVxuICB9XG5cbiAgLy8gTmF2IHRvZ2dsZSAoYnVyZ2VyIGJ1dHRvbilcbiAgLmJ0bi1uYXZiYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcblxuICAgIC8vIEBpY29uYmFySGVpZ2h0IGlzIHVzZWQgNXg6IDN4IGZvciB0aGUgYmFycywgMnggZm9yIHRoZSBtYXJnaW4gYmV0d2VlbiB0aGVtLlxuICAgIHBhZGRpbmc6IChmbG9vcihAbmF2YmFySGVpZ2h0IC0gKDUgKiBAaWNvbmJhckhlaWdodCkpKSAvIDIgMTBweDtcblxuICAgIC5sYWJlbCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIG1hcmdpbjogLTJweCAwIDAgNXB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGZvbnQtc2l6ZTogQG5hdmJhckZvbnRTaXplO1xuICAgIH1cblxuICAgIC5uYXZiYXIgLmJ0bi1uYXZiYXIgLmJhcnMge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLmljb24tYmFyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICBoZWlnaHQ6IEBpY29uYmFySGVpZ2h0O1xuICAgIH1cblxuICAgIC5pY29uLWJhciArIC5pY29uLWJhciB7XG4gICAgICBtYXJnaW4tdG9wOiBAaWNvbmJhckhlaWdodDtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgICAubmF2LWxlZnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHN0eWxlcyBmb3IgLm5hdmJhclxuICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogOTtcblxuICAgIGxpLmRyb3Bkb3duIHtcbiAgICAgIC5kcm9wZG93bi1tZW51IGxpIGEge1xuICAgICAgICBsaW5lLWhlaWdodDogQG5hdmJhckhlaWdodDtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IEBuYXZiYXJIZWlnaHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLnRvZ2dsZS1uYXYtYmFyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5uYXYtc2hlbGYge1xuICAgICAgYmFja2dyb3VuZDogQGRyb3Bkb3duQmFja2dyb3VuZDtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgIC5zaXRlLW5hbWUsIC5ob21lLWljb24sIC5ob21lLWxpbmsge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICB1bCwgbGkge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgbGkuaG9tZS1saW5rIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgbGkgYi5jYXJldCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgLnJvdGF0ZSggLTkwZGVnICk7XG4gICAgICB9XG5cbiAgICAgIGxpLm9wZW4gPiBhIC5jYXJldCB7XG4gICAgICAgIC5yb3RhdGUoIDBkZWcgKTtcbiAgICAgIH1cblxuICAgICAgbGkub3BlbiA+IHVsLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAuYm94LXNoYWRvdyggbm9uZSApO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5uYXYgPiBsaSB7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi5vcGVuIC5uYXYtc2hlbGYge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQGdyYXlMaWdodGVyO1xuICAgIH1cblxuICAgIC5uYXYgbGkge1xuICAgICAgJi5ob21lLWxpbmssXG4gICAgICAmLnNpdGUtbmFtZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEdyYWRpZW50IGlzIGFwcGxpZWQgdG8gaXQncyBvd24gZWxlbWVudCBiZWNhdXNlIG92ZXJmbG93XG4vLyB2aXNpYmxlIGlzIG5vdCBob25vcmVkIGJ5IElFIHdoZW4gZmlsdGVyIGlzIHByZXNlbnRcbi5uYXZiYXItaW5uZXIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIERyb3Bkb3duIGFycm93L2NhcmV0XG4uY2FyZXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IEBiYXNlRm9udFNpemU7XG4gIHBhZGRpbmc6IDAgKEBiYXNlRm9udFNpemUgLyAyKTtcbiAgdG9wOiAycHg7XG5cbiAgJjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItdG9wOiA2cHggc29saWQgQG5hdmJhckRyb3Bkb3duQ2FyZXRDb2xvcjtcbiAgICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuXG4vLyBHZW5lcmFsIGRyb3Bkb3duL2Ryb3B1cCBzdHlsZXNcbi5kcm9wdXAsXG4uZHJvcGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmNhcmV0IHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBAd2hpdGU7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQHdoaXRlO1xuICB9XG5cbiAgJi5hY3RpdmUgLmNhcmV0IHtcbiAgICAub3BhY2l0eSgxMDApO1xuICB9XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICAvLyBUaGUgY2FyZXQgbWFrZXMgdGhlIHRvZ2dsZSBhIGJpdCB0b28gdGFsbCBpbiBJRTdcbiAgKm1hcmdpbi1ib3R0b206IC0zcHg7XG59XG5cbi8vIERyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IEB6aW5kZXhEcm9wZG93bjtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi13aWR0aDogMTYwcHg7XG4gIHBhZGRpbmc6IDNweCAwO1xuICBtYXJnaW46IDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGRyb3Bkb3duQmFja2dyb3VuZDtcbiAgYm9yZGVyOiAxcHggc29saWQgQGdyYXlMaWdodGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4yKTtcbiAgKmJvcmRlci1yaWdodC13aWR0aDogMnB4O1xuICAqYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuICAuYm94LXNoYWRvdygwIDVweCAxMHB4IHJnYmEoMCwwLDAsLjIpKTtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAtbW96LWJhY2tncm91bmQtY2xpcDogcGFkZGluZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcblxuICBsaSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBMaW5rcyB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbiAgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAmID4gYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZzogM3B4IDE1cHg7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBBY3RpdmUgbGlua3MvbWVudXMgd2l0aGluIGRyb3Bkb3duc1xuICAuYWN0aXZlID4gYSxcbiAgLmFjdGl2ZSA+IGE6aG92ZXIge1xuICAgIGNvbG9yOiBAbmF2YmFyTGlua0NvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBkcm9wZG93bkJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBUT0RPOiBXaGF0IGlzIHRoaXM/XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgQGdyYXlMaWdodGVyO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IEBkcm9wZG93bkJvcmRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTBweDtcbiAgICBsZWZ0OiA5cHg7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1sZWZ0OiA5cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiA5cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogOXB4IHNvbGlkIEBkcm9wZG93bkJhY2tncm91bmQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTlweDtcbiAgICBsZWZ0OiAxMHB4O1xuICB9XG5cbiAgLy8gQWRkIHN1cHBvcnQgZm9yIHNlY29uZCBsZXZlbCBkcm9wZG93biBtZW51c1xuICAuc3ViLW1lbnUsXG4gIC5zdWItc3ViLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0yMCU7XG4gICAgbGVmdDogOTklO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5pY29uLWFycm93LXJpZ2h0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAycHg7XG4gICAgbGVmdDogM3B4O1xuICB9XG4gIGxpOmhvdmVyIC5zdWItbWVudSxcbiAgLnN1Yi1tZW51IGxpOmhvdmVyIC5zdWItc3ViLW1lbnUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBsaTpob3ZlciAuc3ViLXN1Yi1tZW51LFxuICAgIGxpOmhvdmVyIC5zdWItbWVudSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgaHRtbC5uby10b3VjaCB1bC5uYXYgbGkuZHJvcGRvd246aG92ZXIgdWwuZHJvcGRvd24tbWVudSxcbiAgaHRtbC50b3VjaCB1bC5uYXYgbGkuZHJvcGRvd24ub3BlbiB1bC5kcm9wZG93bi1tZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vIE9wZW4gc3RhdGUgZm9yIHRoZSBkcm9wZG93blxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ub3BlbiB7XG4gIC8vIElFNydzIHotaW5kZXggb25seSBnb2VzIHRvIHRoZSBuZWFyZXN0IHBvc2l0aW9uZWQgYW5jZXN0b3IsIHdoaWNoIHdvdWxkXG4gIC8vIG1ha2UgdGhlIG1lbnUgYXBwZWFyIGJlbG93IGJ1dHRvbnMgdGhhdCBhcHBlYXJlZCBsYXRlciBvbiB0aGUgcGFnZVxuICAqei1pbmRleDogQHppbmRleERyb3Bkb3duO1xuXG4gICYgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLmRyb3B1cCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5kcm9wZG93biB7XG4gIC8vIFJldmVyc2UgdGhlIGNhcmV0XG4gIC5jYXJldCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgQGJsYWNrO1xuICAgIGNvbnRlbnQ6IFwiXFwyMTkxXCI7XG4gIH1cbiAgLy8gRGlmZmVyZW50IHBvc2l0aW9uaW5nIGZvciBib3R0b20gdXAgbWVudVxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gIH1cbn1cblxuLy8gXCJEb24ndCBtaXNzXCIvdG9waWNzIGJhclxuI3RvcGljcy1iYXIge1xuICBwYWRkaW5nOiAzcHggMDtcbiAgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAmLm1lbnUtbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBOYXZiYXIgc2VhcmNoIGZvcm1cbiNtYWluLW5hdi5uYXZiYXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgQG5hdmJhclJ1bGVDb2xvcjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBuYXZiYXJSdWxlQ29sb3I7XG59XG4iLCJAc3RpY2t5TmF2TGluZUhlaWdodDogNTZweDtcblxuLnN0aWNreS1uYXYtY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnN0aWNreS1uYXYtaG9sZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiA5OTk5ODtcblxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IEBzdGlja3lOYXZiYXJCYWNrZ3JvdW5kQ29sb3I7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gIC50cmFuc2l0aW9uKG9wYWNpdHkgMC4zcyk7XG5cbiAgJi50cmFuc2l0aW9uaW5nIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogQHN0aWNreU5hdkxpbmVIZWlnaHQ7XG5cbiAgICAubmF2YmFyIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG5cbiAgJi5zaG93IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICBib2R5LmFkbWluLWJhciAmIHtcbiAgICB0b3A6IDMycHg7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzgycHgpIHtcbiAgICAgIHRvcDogNDZweDtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBib2R5LnNpbmdsZSAmLnN0aWNreV9uYXZfZGlzcGxheV9hcnRpY2xlLFxuICAgIGJvZHkuc2luZ2xlICYubWFpbl9uYXZfaGlkZV9hcnRpY2xlLFxuICAgIGJvZHkucGFnZSAmLnN0aWNreV9uYXZfZGlzcGxheV9hcnRpY2xlLFxuICAgIGJvZHkucGFnZSAmLm1haW5fbmF2X2hpZGVfYXJ0aWNsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLy8gRXh0ZW5kIHRoZSBjb21tb24gbmF2YmFyIHN0eWxlc1xuLm5hdmJhci5zdGlja3ktbmF2YmFyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgLnRyYW5zaXRpb24ob3BhY2l0eSAwLjNzKTtcblxuICAubmF2IHtcbiAgICBjb2xvcjogQHN0aWNreU5hdmJhclRleHQ7XG4gIH1cblxuICBsaSB7XG4gICAgYSB7XG4gICAgICBsaW5lLWhlaWdodDogQHN0aWNreU5hdkxpbmVIZWlnaHQ7XG4gICAgICBjb2xvcjogQHN0aWNreU5hdmJhckxpbmtDb2xvcjtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiBAc3RpY2t5TmF2YmFyTGlua0NvbG9ySG92ZXI7XG4gICAgICB9XG5cbiAgICAgIC5jYXJldDpiZWZvcmUge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiBAc3RpY2t5TmF2YmFyRHJvcGRvd25DYXJldENvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIC5jYXJldDpiZWZvcmUge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiBAc3RpY2t5TmF2YmFyRHJvcGRvd25DYXJldENvbG9ySG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5ob21lLWxpbmsgPiBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBsaWdodGVuKEBzdGlja3lOYXZiYXJMaW5rQ29sb3IsIDUlKTtcbiAgICB9XG4gIH1cblxuICAvLyBEcm9wZG93bnMgd2l0aGluIG5hdlxuICBsaS5kcm9wZG93biAuZHJvcGRvd24tbWVudSBsaSBhIHtcbiAgICBjb2xvcjogQHN0aWNreU5hdmJhckxpbmtDb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IEBzdGlja3lOYXZiYXJMaW5rQ29sb3JIb3ZlcjtcbiAgICB9XG4gIH1cblxuICAuc29jaWFsLWljb25zIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAuYnRuLW5hdmJhciB7XG4gICAgcGFkZGluZzogMCAxMHB4IDAgMTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbGluZS1oZWlnaHQ6IEBzdGlja3lOYXZMaW5lSGVpZ2h0O1xuXG4gICAgLmJhcnMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICAuaWNvbi1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQHN0aWNreU5hdmJhckxpbmtDb2xvcjtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC5pY29uLWJhciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBzdGlja3lOYXZiYXJMaW5rQ29sb3JIb3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmhvbWUtbGluayB7XG4gICAgLy8gVE9ETzogc2hvdWxkIGJlIGJhc2VkIG9uIGEgdmFyaWFibGVcbiAgICBtaW4td2lkdGg6IDQwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLm5hdiA+IGxpIHtcbiAgICAgIGEge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIC8vIFRPRE86IHNob3VsZCBiZSBiYXNlZCBvbiB2YXJpYWJsZVxuICAgICAgICAgIHdpZHRoOiAxLjQ5ZW07XG4gICAgICAgICAgaGVpZ2h0OiAxLjQ5ZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmljb24taG9tZTpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb250YWlucyBzb2NpYWwgaWNvbnMsIHNlYXJjaCwgZG9uYXRlIGxpbmtcbiAgLm5hdi1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgI2hlYWRlci1leHRyYXMge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBhLmRvbmF0ZS1saW5rOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG5cbiAgICAgIC5kb25hdGUge1xuICAgICAgICBhIHNwYW4ge1xuICAgICAgICAgIC8vIFRPRE86IHNob3VsZCBiZSBiYXNlZCBvbiB2YXJzXG4gICAgICAgICAgcGFkZGluZzogNHB4IDhweDtcblxuICAgICAgICAgIGNvbG9yOiBAd2hpdGU7XG5cbiAgICAgICAgICAvLyBUT0RPOiBpcyB0aGlzIHNwZWNpZmljIHRvIHRoZSBkb25hdGUgbGluaz9cbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAcmVkO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbihAcmVkLCA1JSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gVE9ETzogd2hhdCBpcyB0aGlzIGZvcj9cbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAvLyBOYXZiYXIgc2VhcmNoIGZvcm1cbiAgLmZvcm0tc2VhcmNoIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLnRvZ2dsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBjb2xvcjogQGJhc2VDb2xvcjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDkxO1xuICAgICAgLnRyYW5zaXRpb24oIDAuM3MgKTtcbiAgICB9XG4gICAgLmlucHV0LWFwcGVuZCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogNDRweDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIC50cmFuc2l0aW9uKCAwLjNzICk7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgei1pbmRleDogOTA7XG4gICAgICB3aWR0aDogMjQ2cHg7XG4gICAgICAudGV4dC1pbnB1dC13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMTk2cHg7XG4gICAgICB9XG4gICAgICBpbnB1dCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAuYm94LXNpemluZyggYm9yZGVyLWJveCApO1xuICAgICAgICBoZWlnaHQ6IDM2cHggIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMzZweCAhaW1wb3J0YW50O1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgLmJveC1zaXppbmcoIGJvcmRlci1ib3ggKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAgICNzdGlja3ktbmF2LXNlYXJjaC5zaG93IHtcbiAgICAgIC5pbnB1dC1hcHBlbmQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB9XG4gICAgICAuaW5wdXQtYXBwZW5kLFxuICAgICAgLnRvZ2dsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzNDM0MzQ7XG4gICAgICAgIGNvbG9yOiBAYm9keUJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdi1sZWZ0IHtcbiAgICAmID4gdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgc2Vjb25kIHNpdGUgbmFtZSBpbiB0aGUgc3RpY2t5IGhlYWRlclxuICAvLyB3aGVuIC5uYXYtc2hlbGYgaXMgdmlzaWJsZVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgICAubmF2LWxlZnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBTaXRlIG5hbWVcbiAgLnNpdGUtbmFtZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICMzNDM0MzQ7XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgcGFkZGluZzogMCAxMHB4IDAgMDtcbiAgICAgIGNvbG9yOiBAc3RpY2t5TmF2YmFyTGlua0NvbG9yO1xuICAgICAgbWF4LXdpZHRoOiAyMTRweDtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IEBzdGlja3lOYXZiYXJMaW5rQ29sb3JIb3ZlcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJpZ2h0IHNpZGUgb2YgbmF2LCBzZWFyY2gsIGRvbmF0ZSwgc29jaWFsIGljb25zXG4gIC5uYXYtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICAjaGVhZGVyLWV4dHJhcyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGEuZG9uYXRlLWxpbms6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTdGlja3kgbmF2IGRyb3Bkb3duIG1vZHNcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgbGkuZHJvcGRvd24ge1xuICAgICAgLmRyb3Bkb3duLW1lbnUgbGkgYSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAc3RpY2t5TmF2TGluZUhlaWdodDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2LXNoZWxmIGIuY2FyZXQge1xuICAgICAgcGFkZGluZzogMjJweDtcbiAgICB9XG4gIH1cbn1cblxuLy8gRm9ybWF0IHRoZSBzdGlja3kgbmF2IG92ZXJmbG93IG1lbnVcbiNtZW51LW92ZXJmbG93ID4gdWwge1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIG1heC1oZWlnaHQ6IDgwdmg7XG4gIC5jYXJldDo6YmVmb3JlLCAuY2FyZXQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbiAgdWwuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGxpIGEge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgICB9XG4gICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuc3ViLW1lbnUsXG4gICAgLnN1Yi1zdWItbWVudSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFBPU1QvUEFHRSBFTEVNRU5UU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnBvc3QtaGVhZGVyLFxuLnBhZ2UtaGVhZGVyLFxuLmVudHJ5LWNvbnRlbnQsXG4ucG9zdC1mb290ZXIsXG5hcnRpY2xlLnN0b3J5IHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lO1xufVxuLnBvc3QtaGVhZGVyLFxuLnBhZ2UtaGVhZGVyLFxuYXJ0aWNsZS5zdG9yeSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG59XG5hcnRpY2xlLnN0b3J5IHtcbiAgcGFkZGluZy1ib3R0b206IEBiYXNlbGluZSAvIDI7XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBJTkRFWC5QSFBcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5zdG9yaWVzIGFydGljbGUge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIEBncmF5TGlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZTtcbn1cbi5zdG9yaWVzIGFydGljbGVbY2xhc3MqPVwic3BhblwiXSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnN0b3JpZXMgaDIuZW50cnktdGl0bGUge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAyO1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUvMztcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbn1cbi5zdG9yaWVzIC5lbnRyeS1jb250ZW50IHAge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDI7XG59XG4uc3RvcmllcyBoNS50YWctbGlzdCB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuODE1O1xuICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICBmb250LXdlaWdodDpub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQYWdlL0NvbXBvbmVudCBTcGVjaWZpYyBTdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgXCJhcmNoaXZlcy5sZXNzXCI7XG5AaW1wb3J0IFwic2VhcmNoLmxlc3NcIjtcbkBpbXBvcnQgXCJzdGlja3kubGVzc1wiO1xuQGltcG9ydCBcInNpbmdsZS5sZXNzXCI7XG5AaW1wb3J0IFwiaG9tZXBhZ2UubGVzc1wiO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUG9zdCBQYWdlIENvbnRlbnQgTW9kdWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm1vZHVsZSB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZS8yO1xuICBjb2xvcjogQGJsYWNrO1xuICBoMyB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZS8yO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIGRsIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgZHQsIGRkIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjgxNTtcbiAgICBtYXJnaW46IDAgMCBAYmFzZWxpbmUvMjtcbiAgfVxuICB1bCB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMC44MTU7XG4gIH1cbn1cbi50eXBlLWFzaWRlIHAge1xuICBmb250LXNpemU6IDAuODE1ZW07XG59XG4vKiBkZXByZWNhdGVkIGltYWdlIHR5cGU/ICovXG4uaW1hZ2UgcCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZm9udC1zaXplOiAxMHB4O1xufVxuLmltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxucC53cC1tZWRpYS1jcmVkaXQge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjgxNTtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgY29sb3I6IEBncmF5O1xuICBkaXNwbGF5OiBibG9jaztcbn1cbnAud3AtY2FwdGlvbi10ZXh0IHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogNXB4IDAgMDtcbiAgY29sb3I6IEBncmF5O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmhhbGYsXG4uZnVsbCxcbi5leHRyYWN0IHtcbiAgbWFyZ2luOiAwIDAgQGJhc2VsaW5lO1xufVxuLmhhbGYge1xuICB3aWR0aDogNDAlO1xufVxuLmZ1bGwge1xuICB3aWR0aDogMTAwJTtcbn1cbi5mdWxsLWltYWdlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG59XG4ucHVsbC1xdW90ZSxcbi50eXBlLXB1bGwtcXVvdGUge1xuICBmb250OiBAc2VyaWZGb250RmFtaWx5O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICAgIGJhY2tncm91bmQ6IEBncmF5TGlnaHRlcjtcbiAgfVxuXG4gIGg2IHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUvNDtcbiAgfVxufVxuLkRWLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZS8zO1xufVxuIiwiLy8gQ2F0ZWdvcnksIFRhZyBhbmQgVGF4b25vbXkgUGFnZXNcbi5hcmNoaXZlLWJhY2tncm91bmQge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmU7XG4gIHBhZGRpbmctYm90dG9tOiBAYmFzZWxpbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gIGgxIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAyLjc1O1xuICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lLzM7XG4gIH1cbiAgLnJlbGF0ZWQtdG9waWNzIHtcbiAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuXHR1bCB7XG5cdCAgZmxvYXQ6IGxlZnQ7XG5cdCAgd2lkdGg6IDEwMCU7XG5cdCAgbGlzdC1zdHlsZTogbm9uZTtcblx0ICBtYXJnaW46IDA7XG5cdCAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuXHQgIGxpbmUtaGVpZ2h0OiAxLjM7XG5cdCAgbGkge1xuXHQgICAgZGlzcGxheTogaW5saW5lO1xuXHQgICAgbWFyZ2luOiAwO1xuXHQgICAgcGFkZGluZzogMDtcblx0ICAgICY6Zmlyc3QtY2hpbGQge1xuXHRcdCAgbWFyZ2luLXJpZ2h0OiA1cHg7XG5cdCAgICB9XG5cdCAgICAmOmFmdGVyIHtcblx0ICAgICAgY29udGVudDogXCIsIFwiO1xuXHQgICAgfVxuXHQgICAgJjpmaXJzdC1jaGlsZDphZnRlcixcblx0ICAgICY6bGFzdC1jaGlsZDphZnRlciB7XG5cdCAgICAgIGNvbnRlbnQ6IFwiXCI7XG5cdCAgICB9XG5cdCAgfVxuICAgIH1cbiAgfVxuICAucnNzLXN1YnNjcmliZS1saW5rIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IEByc3M7XG4gICAgaSB7XG5cdCAgcGFkZGluZy1sZWZ0OiAzcHg7XG5cdCAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHQgIHRvcDogLTJweDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogZGFya2VuKEByc3MsIDE1JSk7XG4gICAgfVxufVxufVxuLmFyY2hpdmUgLmhlcm8ge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAxZW0gMDtcbiAgLndwLWNhcHRpb24tdGV4dCxcbiAgLndwLW1lZGlhLWNyZWRpdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuYXJ0aWNsZSBkaXYuaGFzLXRodW1ibmFpbCB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWF4LXdpZHRoOiAzMCU7XG4gIG1hcmdpbjogMCAwIDEwcHggMjBweDtcbn1cbmFydGljbGUgaW1nLmF0dGFjaG1lbnQtcG9zdC10aHVtYm5haWwge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi8vIGhpZXJhcmNoaWNhbCBjYXRlZ29yeSBwYWdlc1xuLnByaW1hcnktZmVhdHVyZWQtcG9zdCxcbi5zZWNvbmRhcnktZmVhdHVyZWQtcG9zdCB7XG4gIHBhZGRpbmc6IDAgMCAyNHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQGdyYXlMaWdodGVyO1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xufVxuLnByaW1hcnktZmVhdHVyZWQtcG9zdCB7XG4gIGgyIHtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZS8zO1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDIuMjU7XG4gIH1cbiAgLmVudHJ5LWNvbnRlbnQgcCxcbiAgLmVudHJ5LWNvbnRlbnQgdWwsXG4gIC5lbnRyeS1jb250ZW50IG9sIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gIH1cbn1cbi5zZWNvbmRhcnktZmVhdHVyZWQtcG9zdCB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yNTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6OTYwcHgpe1xuICAuc2Vjb25kYXJ5LWZlYXR1cmVkLXBvc3Qge1xuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcbiAgICB9XG4gIH1cbn1cblxuLy8gcG9zdHMgb24gYXJjaGl2ZSBwYWdlc1xuLmFyY2hpdmUsXG4uaG9tZSB7XG4gIC5zdG9yaWVzIC5oZXJvLmlzLWltYWdlIGltZyB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbiAgLmVudHJ5LWNvbnRlbnQge1xuICAgICYud2l0aC1oZXJvIHtcbiAgICAgIG1hcmdpbjogLTIycHggNyUgMDtcbiAgICAgIHBhZGRpbmc6IDIycHggMThweDtcbiAgICAgIHdpZHRoOiA4NiU7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgbWFyZ2luOiA4cHggMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDUuYnlsaW5lIHtcbiAgICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuODE1O1xuICAgICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMjtcbiAgICB9XG4gIH1cbn1cblxuLy8gRGF0ZSBBcmNoaXZlXG4uYXJjaGl2ZS1kcm9wZG93biB7XG4gIG1hcmdpbjogQGJhc2VsaW5lLzIgMDtcbn1cblxuLy8gU2VyaWVzIExhbmRpbmdzXG4jc2VyaWVzLWZvb3RlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuI3Nlcmllcy1tYWluICNjb250ZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lO1xufVxuI3Nlcmllcy1oZWFkZXIgLmJ5bGluZSB0aW1lLFxuI3Nlcmllcy1oZWFkZXIgLmJ5bGluZSAuc2VwIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gTG9hZCBtb3JlIHBvc3RzXG4ubG9hZC1tb3JlIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmxvYWRpbmcgLmxvYWQtbW9yZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDMycHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvd3AtYWRtaW4vaW1hZ2VzL2xvYWRpbmcuZ2lmKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogOTYlIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbiIsIi8qKlxuICogU3R5bGVzIGZvciBzZWFyY2ggZm9ybXMgYW5kIHNlYXJjaCByZXN1bHRzXG4gKlxuICogU3R5bGVzIGZvciB0aGUgZ2xvYmFsIG5hdiBzZWFyY2ggYXJlIGluIGxlc3MvaW5jL2hlYWRlci5sZXNzXG4gKi9cblxuLy8gU2VhcmNoIFJlc3VsdHNcbi5hcmNoaXZlLnNlYXJjaC1yZXN1bHRzIHtcbiAgLmlucHV0LWFwcGVuZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5mb3JtLXNlYXJjaCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIGlucHV0IHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cbiAgICBidXR0b24ge1xuICAgICAgd2lkdGg6IDEwJTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuICB9XG4gIC5zZWFyY2gtdGVybSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGdyYXlMaWdodGVyO1xuICAgIHBhZGRpbmc6IDFweCA1cHg7XG4gIH1cbiAgaDMgLnJzcy1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICB9XG4gIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAZ3JheTtcbiAgfVxuXG4gIC5zdG9yaWVzIHtcbiAgICBhcnRpY2xlIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICAgIH1cbiAgfVxuICAvLyBObyBzcGFjaW5nIGFmdGVyIHBhcmFncmFwaCwgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9JTk4vTGFyZ28vcHVsbC8xMTc3XG4gIC5lbnRyeS1jb250ZW50IHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmRhdGUtbGluayBhLFxuICAuZGF0ZS1saW5rIHtcbiAgICBjb2xvcjogQGdyYXk7XG4gIH1cbn1cbi5zZWFyY2gtcmVzdWx0cyAjY29udGVudCAuZm9ybS1zZWFyY2gge1xufVxuXG4vKiBHb29nbGUgQ1NFICovXG4uZ2NzX2NvbnRhaW5lciB7XG4gIG1hcmdpbjogMjBweCAwO1xuXG4gIHRhYmxlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICB0YWJsZSxcbiAgdGJvZHksXG4gIHRyLFxuICB0ZCB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLmdzYy1zZWFyY2gtYm94IHtcbiAgICBtYXJnaW46IDE4cHggMDtcbiAgICAuZ3NzdF9hIC5nc2NiX2Ege1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAzcHg7XG4gICAgfVxuICAgIHRkLmdzaWJfYSB7XG4gICAgICBwYWRkaW5nOiAwIDZweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5nc2MtY29udHJvbC1jc2Uge1xuICAgIC5ncy1yZXN1bHQge1xuICAgICAgLmdzLXRpdGxlLFxuICAgICAgLmdzLXRpdGxlICoge1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuc3RpY2t5LXJlbGF0ZWQsXG4uc3RpY2t5LXNvbG8ge1xuICBhIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIC5vcGFjaXR5KDkwKTtcbiAgICB9XG4gIH1cbn1cbi5zdGlja3ktbWFpbi1mZWF0dXJlIHtcbiAgLmltYWdlLXdyYXAge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGltZyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgJi5zcGFuMyBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIGgyIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG4gIHAge1xuICAgIGEge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgfVxufVxuLnN0aWNreS1mZWF0dXJlcy1saXN0IHtcbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuMjtcbiAgICBtYXJnaW46IDAgMCA4cHggMDtcbiAgfVxuICB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbGkge1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgJi5zdGlja3ktYWxsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAuc3RpY2t5LW1haW4tZmVhdHVyZSB7XG4gICAgLmltYWdlLXdyYXAgaW1nIHtcbiAgICAgIG1hcmdpbjogMCAxNXB4IDE1cHggMDtcbiAgICB9XG4gICAgaDUuYnlsaW5lIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICAuc3Bhbjkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzNjBweCkge1xuICAuc3RpY2t5LW1haW4tZmVhdHVyZSB7XG4gICAgLmhpZGRlbi1waG9uZSB7XG4gICAgICBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC52aXNpYmxlLXBob25lIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIlxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgU2luZ2xlIC0gU3R5bGluZyBmb3Igc2luZ2xlIHBvc3RzICYgcGFnZXMuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgMS4wIC0gTm9ybWFsIGxheW91dCBvdmVycmlkZXMgKG92ZXJyaWRlIHR3byBjb2x1bW4gZGlzcGxheSlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmJvZHkubm9ybWFsLnNpbmdsZS1wb3N0LFxuYm9keS5ub3JtYWwucGFnZSB7XG5cbiAgLyogMS4xIC0gSGVhZGVyICovXG5cbiAgYXJ0aWNsZS5wb3N0ID4gaGVhZGVyLFxuICBhcnRpY2xlLnBhZ2UgPiBoZWFkZXIge1xuXG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luOiAyNHB4IDE3LjAyMTMlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vIHRvcCBkYXRlXG4gICAgaDUudG9wLWRhdGUge1xuICAgICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplIC0gMjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICB9XG5cbiAgICAvLyB0b3AgdGFnXG4gICAgaDUudG9wLXRhZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyNnB4O1xuICAgIH1cblxuICAgIC8vIHN1YnRpdGxlXG4gICAgaDIuc3VidGl0bGUge1xuICAgICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yMjI7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgY29sb3I6ICM5OTk7XG4gICAgfVxuXG4gICAgLy8gaGlkZSBub3JtYWwgZGF0ZSBkaXNwbGF5LlxuICAgIC5zZXAsXG4gICAgLmVudHJ5LWRhdGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBlZGl0IGxpbmtcbiAgICAuZWRpdC1saW5rIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIH1cblxuICB9XG5cbiAgLyogMS4yIC0gSGVybyAqL1xuICBcbiAgLmhlcm8ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCAwIDI0cHg7XG4gICAgJi5pcy1nYWxsZXJ5IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICBwLndwLWNhcHRpb24tdGV4dCxcbiAgICBwLndwLW1lZGlhLWNyZWRpdCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAtIDI7XG4gICAgICBtYXJnaW46MCAxNy4wMjEzJSAxMnB4O1xuICAgICAgcGFkZGluZy10b3A6IDRweDtcbiAgICB9XG4gICAgcC53cC1tZWRpYS1jcmVkaXQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgIH1cbiAgICAmLmlzLXZpZGVvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gICAgICAuZW1iZWQtY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5pcy1lbXB0eSB7XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC8qIDEuMyAtIFNpZGViYXIgKGxlZnQgb2YgcG9zdCkgKi9cblxuICAuc2luZ2xlICNtYWluICNzaWRlYmFyIHtcbiAgICAgIC8qIGFsbCB0byB1bmRvIGJvb3RzdHJhcCAqL1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAud2lkZ2V0IHtcbiAgICAgIC8qIGZsb2F0IHdpZGdldHMgKi9cbiAgICAgIGZsb2F0OiBsZWZ0OyBcbiAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgLy8gYWRkIHBhZGRpbmcgZm9yIGd1dHRlciBiZXR3ZWVuIGJvZHkgdGV4dCAmIHNpZGViYXJcbiAgICAgIHdpZHRoOiAxNy4wMjEyNzY1OTQlIC0gQGZsdWlkR3JpZEd1dHRlcldpZHRoO1xuICAgIH1cbiAgICAud2lkZ2V0OmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwOyAvLyBmaXJzdCB3aWRnZXQgZmx1c2ggd2l0aCB0b3Agb2YgYXJ0aWNsZVxuICAgIH1cbiAgfVxuXG4gIC8qIDEuNCAtIEVudHJ5IENvbnRlbnQgKHRoZSBtYWluIHBvc3QgY29udGVudCkgKi9cblxuICAuZW50cnktY29udGVudCB7XG4gICAgcGFkZGluZzogMCAxNy4wMjEyNzY1OTQlO1xuICB9XG5cblxuICBwLmludHJvLFxuICBwLndwLWNhcHRpb24tdGV4dCB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG5cbiAgLyogMS41IC0gQXJ0aWNsZSBCb3R0b20gKGFmdGVyIHBvc3QgY29udGVudCkgKi9cblxuICAuYXJ0aWNsZS1ib3R0b20ge1xuICAgIG1hcmdpbjogMCAxNy4wMjEyNzY1OTQlO1xuICAgIC5wb3N0LXNvY2lhbCB7XG4gICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAjY29tbWVudHMsXG4gICNkaXNxdXNfdGhyZWFkIHtcbiAgICBtYXJnaW46IDAgMTcuMDIxMjc2NTk0JTtcbiAgfVxuXG4gIC8qIDEuNiAtIE92ZXJyaWRlcyAqL1xuXG4gIEBtZWRpYSBAdGFibGV0RG93biB7XG4gIC5zaW5nbGUgI21haW4gI3NpZGViYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmFydGljbGUtYm90dG9tLFxuICAgICNjb21tZW50cyxcbiAgICAjZGlzcXVzX3RocmVhZCB7XG4gICAgICBtYXJnaW46IDAgQGZsdWlkR3JpZENvbHVtbldpZHRoO1xuICAgIH1cbiAgICBhcnRpY2xlLnBvc3QgPiBoZWFkZXIge1xuICAgICAgbWFyZ2luOiAyNHB4IEBmbHVpZEdyaWRDb2x1bW5XaWR0aDtcbiAgICB9XG4gICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMCBAZmx1aWRHcmlkQ29sdW1uV2lkdGg7XG4gICAgfVxuICAgIC5oZXJvIHtcbiAgICAgIHAud3AtY2FwdGlvbi10ZXh0LFxuICAgICAgcC53cC1tZWRpYS1jcmVkaXQge1xuICAgICAgICBtYXJnaW46MCBAZmx1aWRHcmlkR3V0dGVyV2lkdGggMTJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgQG1vYmlsZSB7XG4gICAgLmFydGljbGUtYm90dG9tLFxuICAgICNjb21tZW50cyxcbiAgICAjZGlzcXVzX3RocmVhZCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIGFydGljbGUucG9zdCA+IGhlYWRlciB7XG4gICAgICBtYXJnaW46IDI0cHggMDtcbiAgICB9XG4gICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIDIuMCAtIEVudHJ5IEVsZW1lbnQgU3R5bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiAyLjEgLSBCeWxpbmUgKi9cblxuLmJ5bGluZSB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDI7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuOTE1O1xuICBhIHtcbiAgICBjb2xvcjogQHRleHRDb2xvcjtcbiAgfVxuICAuYXV0aG9yLFxuICAudGltZS1hZ28sXG4gIC5lZGl0LWxpbmsgYSB7XG4gICAgLyp0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyovXG4gIH1cbiAgLmF1dGhvciB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLnRpbWUtYWdvLFxuICAuZWRpdC1saW5rIGEge1xuICAgIGNvbG9yOiBAcmVkO1xuICB9XG59XG5cbi8qIDIuMiAtIFNvY2lhbCBtZWRpYSBsaW5rcyAqL1xuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnBvc3Qtc29jaWFsID4gc3BhbiB7XG4gICAgbWluLXdpZHRoOiA1MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gIC5wb3N0LXNvY2lhbCA+IHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAvLyBGdWRnaW5nIHRvIHByZXZlbnQgb3ZlcmxhcCBiZXR3ZWVuIHRoZSBpY29uIGFuZCB0aGUgdGV4dFxuICAucG9zdC1zb2NpYWwgaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgICBtYXJnaW4tbGVmdDogMC4yZW07XG4gIH1cbn1cblxuLnBvc3Qtc29jaWFsIHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lO1xuICAmID4gc3BhbiB7XG4gICAgLy8gY29waWVkIGZyb20gd2lkZ2V0cy9sYXJnby1mb2xsb3cubGVzc1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgIG1hcmdpbjogMC41ZW0gMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgICBjb2xvcjogQHdoaXRlO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJiA+IGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwLjNlbSAxZW0gMC4zZW0gMC41ZW07IC8vIElycmVndWxhciBwYWRkaW5nIGlzIHRvIGNvdW50ZXIgMC4yZW0gbWFyZ2luLWxlZnQgb24gdGhlIGljb24uXG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICBwYWRkaW5nOiAwLjNlbSAwLjZlbTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICBwYWRkaW5nOiAwLjNlbSAwLjJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgYSB7XG4gICAgY29sb3I6IEB3aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBAd2hpdGU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG4gIGksICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5lbWFpbDpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIC5tb3JlLXNvY2lhbC1saW5rcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQG9yYW5nZTtcbiAgICBjb2xvcjogQHdoaXRlO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbihAb3JhbmdlLCA1JSk7XG4gICAgfVxuXG4gICAgLnBvcG92ZXIge1xuICAgICAgdG9wOiA0MHB4O1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IEBncmF5O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogQGdyYXlEYXJrO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGkge1xuICAgICAgICBjb2xvcjogQGdyYXlMaWdodDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICB1bCwgbGkge1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIH1cblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDI4cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICByaWdodDogMTlweDtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jZmxvYXRpbmctc29jaWFsLWJ1dHRvbnMge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG4gIGJvcmRlcjogMXB4IHNvbGlkIEBncmF5TGlnaHRlcjtcbiAgLmhpZGRlbi1waG9uZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5wb3N0LXNvY2lhbCB7XG4gICAgJiA+IHNwYW4ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAtMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcblxuICAgICAgJjpob3ZlciB7IGN1cnNvcjogcG9pbnRlcjsgfVxuXG4gICAgICAmID4gYSB7XG4gICAgICAgIGNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxOHB4O1xuICAgICAgICBtaW4td2lkdGg6IDI4cHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI4cHg7XG4gICAgICB9XG4gICAgfVxuICAgICYgPiAuZW1haWw6aG92ZXIsXG4gICAgJiA+IHNwYW46aG92ZXIgPiBhIHtcbiAgICAgIGNvbG9yOiBAd2hpdGU7XG4gICAgfVxuICB9XG4gIC5yc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEByc3MsIDUlKTtcbiAgICB9XG4gIH1cbiAgLnR3aXR0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEB0d2l0dGVyLCA1JSk7XG4gICAgfVxuICB9XG4gIC5mYWNlYm9vayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdoaXRlO1xuICAgIGNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGZhY2Vib29rLCA1JSk7XG4gICAgfVxuICB9XG4gIC5saW5rZWRpbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdoaXRlO1xuICAgIGNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGxpbmtlZGluLCA1JSk7XG4gICAgfVxuICB9XG4gIC5ncGx1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdoaXRlO1xuICAgIGNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGdwbHVzLCA1JSk7XG4gICAgfVxuICB9XG4gIC5mbGlja3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBmbGlja3IsIDUlKTtcbiAgICB9XG4gIH1cbiAgLnlvdXR1YmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEB5b3V0dWJlLCA1JSk7XG4gICAgfVxuICB9XG4gIC5wcmludCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdoaXRlO1xuICAgIGNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oIzg1ODk4RiwgNSUpO1xuICAgIH1cbiAgfVxuICAuZW1haWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCM2MjY1NkYsIDUlKTtcbiAgICB9XG4gIH1cbiAgLm1vcmUtc29jaWFsLWxpbmtzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2hpdGU7XG4gICAgY29sb3I6IEBncmF5TGlnaHRlcjtcbiAgICBhLnBvcHBlZCxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBvcmFuZ2U7XG4gICAgICBjb2xvcjogQHdoaXRlO1xuICAgIH1cblxuICAgIC5wb3BvdmVyIHtcbiAgICAgIHRvcDogNjhweDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgICAgaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC4yNWVtO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiBAZ3JheTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IEBncmF5RGFyaztcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc29jaWFsLWJ0biB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgbWFyZ2luOiAwLjVlbSAwO1xuICAgIHBhZGRpbmc6IDAuNWVtO1xuICB9XG4gIC5wb3N0LXNvY2lhbCB7XG4gICAgYTpob3ZlciBpIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgaSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG59XG5cbi8qIDIuMyAtIERlZmF1bHQgV1AgUG9zdCBQYWdpbmF0aW9uIFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBOT1RFOiBMYXJnbyBoYXMgYSB3aWRnZXQgdG8gaGFuZGxlIHBvc3QgcGFnaW5hdGlvbiwgdGhlc2Ugc3R5bGUgZGVmYXVsdCBXUCBvdXRwdXRcbiAqXG4gKiBAc2VlIC9sZXNzL2luYy93aWRnZXRzL2xhcmdvLXByZXYtbmV4dC1saW5rcy5sZXNzXG4gKi9cbi5wb3N0LXBhZ2luYXRpb24ge1xuICBhLCBzcGFuIHtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgZm9udC1mYW1pbHk6IEBzYW5zRm9udEZhbWlseTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuODE1O1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vKiAyLjQgLSBQb3N0IG1ldGEgKi9cblxuLmxhYmVscyxcbi50YWdzLFxuLnBhZ2VyLFxuLnRhZ3MsXG4ucGFnZXIge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG59XG5cbi5zaW5nbGUtcG9zdCAuYXV0aG9yLWJveCxcbi5zaW5nbGUtYXJnb2xpbmtyb3VuZHVwcyAuYXV0aG9yLWJveCxcbi5sYWJlbHMge1xuICBoNSB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbi5sYWJlbHMgLnNlcmllcy1sYWJlbCBoNSB7XG4gIGEucnNzLWxpbmsge1xuICAgIGZsb2F0OnJpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICBjb2xvcjogI2Y4OTQwNjtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKyAyO1xuICAgICY6aG92ZXIge1xuICAgICAgLm9wYWNpdHkoODUpO1xuICAgIH1cbiAgfVxufVxuXG4vKiAyLjUgLSBMYWJsZXMgKi9cblxuLnNlcmllcy1sYWJlbCB7XG4gIG1hcmdpbjogNXB4O1xuICBwYWRkaW5nOiA4cHg7XG4gIGg1IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuODE1O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbiIsIi5ob21lIC5zdG9yaWVzIGFydGljbGUgaW1nLmF0dGFjaG1lbnQtbWVkaXVtLFxuLnN1Yi1zdG9yaWVzIGltZy5hdHRhY2htZW50LXBvc3QtdGh1bWJuYWlsIHtcbiAgbWF4LXdpZHRoOiAzMCU7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwIDAgMTBweCAyMHB4O1xufVxuXG4jaG9tZXBhZ2UtYm90dG9tIHtcbiAgbWFyZ2luLXRvcDogQGJhc2VsaW5lO1xuICAud2lkZ2V0IHtcbiAgICB3aWR0aDogNDIuNSU7XG4gICAgcGFkZGluZzogMi41JTtcbiAgICAmLm9kZCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICAgICYuZXZlbiB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDT01NRU5UU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuI2Rpc3F1c190aHJlYWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgYm9yZGVyLXRvcDogOHB4IHNvbGlkIEBncmF5TGlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZTtcbn1cblxuLyogPSBDdXN0b21pemVkIGNvbW1lbnQgZm9ybSBzdHlsZXMgdmlhIHRoZSB0d2VudHkgZWxldmVuIHRoZW1lXG5odHRwOi8vd29yZHByZXNzLm9yZy9leHRlbmQvdGhlbWVzL3R3ZW50eWVsZXZlblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuI2NvbW1lbnRzIHtcblx0Y2xlYXI6Ym90aDtcbn1cbiNjb250ZW50ICNjb21tZW50cy10aXRsZSB7XG5cdGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcblx0bWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMjtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4ubm9wYXNzd29yZCB7XG5cdGNvbG9yOiBAZ3JheUxpZ2h0O1xuXHRmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjU7XG5cdGZvbnQtd2VpZ2h0OiAxMDA7XG5cdG1hcmdpbjogQGJhc2VsaW5lIDA7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5ub2NvbW1lbnRzIHtcblx0ZGlzcGxheTpub25lO1xufVxuLmNvbW1lbnRsaXN0IHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luOiAwIGF1dG87XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4uY29tbWVudGxpc3QgPiBsaS5jb21tZW50IHtcblx0YmFja2dyb3VuZDogI2Y2ZjZmNjtcblx0Ym9yZGVyOiAxcHggc29saWQgI2RkZDtcblx0bWFyZ2luOiAwIDAgQGJhc2VsaW5lIC8gMjtcblx0cGFkZGluZzogMTRweDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmNvbW1lbnRsaXN0IC5waW5nYmFjayB7XG5cdG1hcmdpbjogMCAwIDEuNjI1ZW07XG5cdHBhZGRpbmc6IDAgMS42MjVlbTtcbn1cbi5jb21tZW50bGlzdCAuY2hpbGRyZW4ge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRtYXJnaW46IDA7XG59XG4uY29tbWVudGxpc3QgLmNoaWxkcmVuIGxpLmNvbW1lbnQge1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRib3JkZXItbGVmdDogMXB4IHNvbGlkICNkZGQ7XG5cdG1hcmdpbjogMS42MjVlbSAwIDA7XG5cdHBhZGRpbmc6IDEuNjI1ZW07XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jb21tZW50bGlzdCAuY2hpbGRyZW4gbGkuY29tbWVudCAuZm4ge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbi5jb21tZW50LW1ldGEgLmZuIHtcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xufVxuLmNvbW1lbnQtbWV0YSB7XG5cdGNvbG9yOiAjNjY2O1xuXHRmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjgxNTtcblx0bGluZS1oZWlnaHQ6IDEuNTtcbn1cbi5jb21tZW50bGlzdCAuY29tbWVudC1jb250ZW50IHtcblx0Y2xlYXI6Ym90aDtcbn1cbi5jb21tZW50bGlzdCAuY29tbWVudC1jb250ZW50IHAge1xuXHRmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG5cdG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDQ7XG59XG4uY29tbWVudGxpc3QgLmNoaWxkcmVuIGxpLmNvbW1lbnQgLmNvbW1lbnQtbWV0YSB7XG5cdGxpbmUtaGVpZ2h0OiAxLjYyNWVtO1xuXHRtYXJnaW4tbGVmdDogNTBweDtcbn1cbi5jb21tZW50bGlzdCAuY2hpbGRyZW4gbGkuY29tbWVudCAuY29tbWVudC1jb250ZW50IHtcblx0bWFyZ2luOiAxLjYyNWVtIDAgMDtcbn1cbi5jb21tZW50LW1ldGEgYTpmb2N1cyxcbi5jb21tZW50LW1ldGEgYTphY3RpdmUsXG4uY29tbWVudC1tZXRhIGE6aG92ZXIge1xufVxuLmNvbW1lbnRsaXN0IC5hdmF0YXIge1xuXHQuYm94LXNoYWRvdygwIDFweCAycHggI2NjYyk7XG5cdHBhZGRpbmc6IDA7XG5cdGZsb2F0OmxlZnQ7XG5cdG1hcmdpbjogMCAxMHB4IDEwcHggMDtcblx0d2lkdGg6IDUwcHg7XG5cdGhlaWdodDogNTBweDtcbn1cblxuLmNvbW1lbnRsaXN0IC5jaGlsZHJlbiAuYXZhdGFyIHtcblx0YmFja2dyb3VuZDogbm9uZTtcblx0LXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuXHQtbW96LWJveC1zaGFkb3c6IG5vbmU7XG5cdGJveC1zaGFkb3c6IG5vbmU7XG5cdGxlZnQ6IDIuMmVtO1xuXHRwYWRkaW5nOiAwO1xuXHR0b3A6IDIuMmVtO1xufVxuYS5jb21tZW50LXJlcGx5LWxpbmsge1xuXHRiYWNrZ3JvdW5kOiAjZWVlO1xuXHRjb2xvcjogIzY2Njtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRmb250LXNpemU6IDEycHg7XG5cdHBhZGRpbmc6IDAgOHB4O1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5hLmNvbW1lbnQtcmVwbHktbGluazpob3ZlcixcbmEuY29tbWVudC1yZXBseS1saW5rOmZvY3VzLFxuYS5jb21tZW50LXJlcGx5LWxpbms6YWN0aXZlIHtcblx0YmFja2dyb3VuZDogIzg4ODtcblx0Y29sb3I6ICNmZmY7XG59XG5hLmNvbW1lbnQtcmVwbHktbGluayA+IHNwYW4ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dG9wOiAtMXB4O1xufVxuXG4vKiBQb3N0IGF1dGhvciBoaWdobGlnaHRpbmcgKi9cbi5jb21tZW50bGlzdCA+IGxpLmJ5cG9zdGF1dGhvciB7XG5cdGJhY2tncm91bmQ6ICNkZGQ7XG5cdGJvcmRlci1jb2xvcjogI2QzZDNkMztcbn1cbi5jb21tZW50bGlzdCA+IGxpLmJ5cG9zdGF1dGhvciAuY29tbWVudC1tZXRhIHtcblx0Y29sb3I6ICM1NzU3NTc7XG59XG4uY29tbWVudGxpc3QgPiBsaS5ieXBvc3RhdXRob3IgLmNvbW1lbnQtbWV0YSBhOmZvY3VzLFxuLmNvbW1lbnRsaXN0ID4gbGkuYnlwb3N0YXV0aG9yIC5jb21tZW50LW1ldGEgYTphY3RpdmUsXG4uY29tbWVudGxpc3QgPiBsaS5ieXBvc3RhdXRob3IgLmNvbW1lbnQtbWV0YSBhOmhvdmVyIHtcbn1cbi5jb21tZW50bGlzdCA+IGxpLmJ5cG9zdGF1dGhvcjpiZWZvcmUge1xuXHRjb250ZW50OiB1cmwoaW1hZ2VzL2NvbW1lbnQtYXJyb3ctYnlwb3N0YXV0aG9yLnBuZyk7XG59XG5cbi8qIFBvc3QgQXV0aG9yIHRocmVhZGVkIGNvbW1lbnRzICovXG4uY29tbWVudGxpc3QgLmNoaWxkcmVuID4gbGkuYnlwb3N0YXV0aG9yIHtcblx0YmFja2dyb3VuZDogI2RkZDtcblx0Ym9yZGVyLWNvbG9yOiAjZDNkM2QzO1xufVxuXG4vKiBDb21tZW50IEZvcm0gKi9cbiNyZXNwb25kIHtcblx0YmFja2dyb3VuZDogI2Y2ZjZmNjtcblx0Ym9yZGVyOiAxcHggc29saWQgI2VlZTtcblx0bWFyZ2luOiAwIGF1dG8gQGJhc2VsaW5lO1xuXHRwYWRkaW5nOiA0JSA0JSA4JTtcblx0d2lkdGg6IDkyJTtcbn1cbiNyZXNwb25kIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuI3Jlc3BvbmQgdGV4dGFyZWEge1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRib3JkZXI6IDRweCBzb2xpZCAjZWVlO1xuXHQtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDNweCByZ2JhKDIwNCwyMDQsMjA0LDAuOTUpO1xuXHQtbW96LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDNweCByZ2JhKDIwNCwyMDQsMjA0LDAuOTUpO1xuXHRib3gtc2hhZG93OiBpbnNldCAwIDFweCAzcHggcmdiYSgyMDQsMjA0LDIwNCwwLjk1KTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiAxMHB4O1xuXHR0ZXh0LWluZGVudDogODBweDtcbn1cbiNyZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yLFxuI3Jlc3BvbmQgLmNvbW1lbnQtZm9ybS1lbWFpbCxcbiNyZXNwb25kIC5jb21tZW50LWZvcm0tdXJsLFxuI3Jlc3BvbmQgLmNvbW1lbnQtZm9ybS1jb21tZW50IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRtYXJnaW4tdG9wOiAtMjBweDtcbn1cbiNyZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yIGxhYmVsLFxuI3Jlc3BvbmQgLmNvbW1lbnQtZm9ybS1lbWFpbCBsYWJlbCxcbiNyZXNwb25kIC5jb21tZW50LWZvcm0tdXJsIGxhYmVsLFxuI3Jlc3BvbmQgLmNvbW1lbnQtZm9ybS1jb21tZW50IGxhYmVsIHtcblx0YmFja2dyb3VuZDogI2VlZTtcblx0LXdlYmtpdC1ib3gtc2hhZG93OiAxcHggMnB4IDJweCByZ2JhKDIwNCwyMDQsMjA0LDAuOCk7XG5cdC1tb3otYm94LXNoYWRvdzogMXB4IDJweCAycHggcmdiYSgyMDQsMjA0LDIwNCwwLjgpO1xuXHRib3gtc2hhZG93OiAxcHggMnB4IDJweCByZ2JhKDIwNCwyMDQsMjA0LDAuOCk7XG5cdGNvbG9yOiAjNTU1O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGZvbnQtc2l6ZTogMC44MTVlbTtcblx0bGVmdDogNHB4O1xuXHRtaW4td2lkdGg6IDYwcHg7XG5cdHBhZGRpbmc6IDRweCAxMHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRvcDogNDBweDtcblx0ei1pbmRleDogMTtcbn1cbiNyZXNwb25kIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuI3Jlc3BvbmQgdGV4dGFyZWE6Zm9jdXMge1xuXHR0ZXh0LWluZGVudDogMDtcblx0ei1pbmRleDogMTtcbn1cbiNyZXNwb25kIHRleHRhcmVhIHtcblx0cmVzaXplOiB2ZXJ0aWNhbDtcblx0d2lkdGg6IDk1JTtcbn1cbiNyZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yIC5yZXF1aXJlZCxcbiNyZXNwb25kIC5jb21tZW50LWZvcm0tZW1haWwgLnJlcXVpcmVkIHtcblx0Y29sb3I6ICNiZDM1MDA7XG5cdGZvbnQtc2l6ZTogMjJweDtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGxlZnQ6IDc1JTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDQ1cHg7XG5cdHotaW5kZXg6IDE7XG59XG4jcmVzcG9uZCAuY29tbWVudC1ub3RlcyxcbiNyZXNwb25kIC5sb2dnZWQtaW4tYXMge1xuXHRmb250LXNpemU6IDAuODE1ZW07XG59XG4jcmVzcG9uZCBwIHtcblx0bWFyZ2luOiAxMHB4IDA7XG59XG4jcmVzcG9uZCAuZm9ybS1zdWJtaXQge1xuXHRmbG9hdDogcmlnaHQ7XG5cdG1hcmdpbjogLTIwcHggMCAxMHB4O1xufVxuI3Jlc3BvbmQgaW5wdXQjc3VibWl0IHtcblx0YmFja2dyb3VuZDogIzIyMjtcblx0Ym9yZGVyOiBub25lO1xuXHQuYm94LXNoYWRvdygwIDFweCAycHggcmdiYSgwLDAsMCwwLjMpKTtcblx0Y29sb3I6ICNlZWU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Zm9udC1zaXplOiAxNXB4O1xuXHRtYXJnaW46IDE0cHggMCAyMHB4O1xuXHRwYWRkaW5nOiA1cHggMjJweDtcblx0dGV4dC1zaGFkb3c6IDAgLTFweCAwIHJnYmEoMCwwLDAsMC4zKTtcbn1cblxuI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmhvdmVyIHtcblx0YmFja2dyb3VuZDogIzU1NTtcbn1cblxuI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmFjdGl2ZSB7XG5cdGJhY2tncm91bmQ6ICMxOTgyZDE7XG5cdGNvbG9yOiAjYmZkZGYzO1xufVxuI3Jlc3BvbmQgI2NhbmNlbC1jb21tZW50LXJlcGx5LWxpbmsge1xuXHRjb2xvcjogIzY2Njtcblx0bWFyZ2luLWxlZnQ6IDAuNjY3ZW07XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbiNyZXNwb25kIC5sb2dnZWQtaW4tYXMgYTpob3ZlcixcbiNyZXNwb25kICNjYW5jZWwtY29tbWVudC1yZXBseS1saW5rOmhvdmVyIHtcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uY29tbWVudGxpc3QgI3Jlc3BvbmQge1xuXHRtYXJnaW46IDEuNjI1ZW0gMCAwO1xuXHR3aWR0aDogYXV0bztcbn1cbiNyZXBseS10aXRsZSB7XG5cdGNvbG9yOiAjMzczNzM3O1xuXHRmb250LXNpemU6IDEuNWVtO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0bGluZS1oZWlnaHQ6IDMwcHg7XG59XG4jY2FuY2VsLWNvbW1lbnQtcmVwbHktbGluayB7XG5cdGNvbG9yOiAjODg4O1xuXHRkaXNwbGF5OiBibG9jaztcblx0Zm9udC1zaXplOiAwLjY2N2VtO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRsaW5lLWhlaWdodDogMi4yZW07XG5cdGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IDEuNjI1ZW07XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0dG9wOiAxLjFlbTtcbn1cbiNjYW5jZWwtY29tbWVudC1yZXBseS1saW5rOmZvY3VzLFxuI2NhbmNlbC1jb21tZW50LXJlcGx5LWxpbms6YWN0aXZlLFxuI2NhbmNlbC1jb21tZW50LXJlcGx5LWxpbms6aG92ZXIge1xuXHRjb2xvcjogI2ZmNGIzMztcbn1cbiNyZXNwb25kIGxhYmVsIHtcblx0bGluZS1oZWlnaHQ6IDIuMmVtO1xufVxuI3Jlc3BvbmQgaW5wdXRbdHlwZT10ZXh0XSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRoZWlnaHQ6IDI0cHg7XG5cdHdpZHRoOiA3NSU7XG59XG4jcmVzcG9uZCBwIHtcblx0Zm9udC1zaXplOiAwLjgxNWVtO1xufVxucC5jb21tZW50LWZvcm0tY29tbWVudCB7XG5cdG1hcmdpbjogMDtcbn1cbi5mb3JtLWFsbG93ZWQtdGFncyB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBXaWRnZXRzIC0gU3R5bGluZyB3aWRnZXRzIGFuZCBzaWRlYmFycy5cblxuICAxLjAgLSBHbG9iYWwgV2lkZ2V0IFN0eWxlc1xuICAgIDEuMSAtIEJhc2UgU3R5bGVzXG4gICAgMS4yIC0gVGl0bGUgU3R5bGVzXG4gICAgMS4zIC0gRm9vdGVyIFN0eWxlc1xuICAgIDEuNCAtIEJhY2tncm91bmQgU3R5bGVzXG4gICAgMS41IC0gUmVzZXRzIGFuZCBGaXhlc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAyLjAgLSBXaWRnZXQgRmlsZSBJbXBvcnRzXG4gICAgMi4xIC0gRGVmYXVsdCBXb3JkUHJlc3MgV2lkZ2V0cyAoZmlsZSBpbXBvcnRzKVxuICAgIDIuMiAtIExhcmdvIFdpZGdldHMgKGZpbGUgaW1wb3J0cylcbiAgICAyLjMgLSBJTk4tc3VwcG9ydGVkIHdpZGdldHMgKGZpbGUgaW1wb3J0cylcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAxLjAgLSBHbG9iYWwgV2lkZ2V0IFN0eWxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogMS4xIC0gQmFzZSBTdHlsZXMgKi9cbi53aWRnZXQge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmU7XG4gIHAsIHVsIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gIH1cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiBAYmFzZWxpbmUvNSAwIDAgMDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDU7XG4gICAgICBtYXJnaW4tdG9wOiBAYmFzZWxpbmUgKiAwLjU7XG4gICAgfVxuICB9XG4gIGxpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgfVxuICBwLm1vcmVsaW5rIHtcbiAgIG1hcmdpbjogLShAYmFzZWxpbmUgLyA0KSAwIDA7XG4gICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7IC8vIHRvIGF2b2lkIG92ZXJyaWRlc1xuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBTbWFsbCB0aHVtYm5haWxzIGFyZSBlaXRoZXIgcmlnaHQgb3IgbGVmdCBhbGlnbmVkLlxuICAgICYucmlnaHQtYWxpZ24ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgcGFkZGluZzogLjJlbSAwIC40ZW0gLjY2ZW07XG4gICAgfVxuICAgICYubGVmdC1hbGlnbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6IC4yZW0gLjY2ZW0gLjRlbSAwO1xuICAgIH1cbiAgICAvLyBMYXJnZSB0aHVtYm5haWxzIGdldCBkaWZmZXJlbnQgcGFkZGluZy5cbiAgICAmLmF0dGFjaG1lbnQtbGFyZ2UsJi5hdHRhY2htZW50LW1lZGl1bSB7XG4gICAgICBwYWRkaW5nOiAwIDAgLjY2ZW07XG4gICAgfVxuICB9XG4gIGg1IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjJlbTtcbiAgICBmb250LXNpemU6IDEuMjUgKiBAYmFzZUZvbnRTaXplO1xuICB9XG59XG5cbi5yb3ctZmx1aWQge1xuICAmID4gW2NsYXNzKj0nc3BhbiddIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICYgPiAqID4gLndpZGdldCxcbiAgICAgICYgPiAud2lkZ2V0IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogQGJhc2VsaW5lO1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAmID4gKiA+IC53aWRnZXQsXG4gICAgICAmID4gLndpZGdldCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogQGJhc2VsaW5lO1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyogMS4yIC0gVGl0bGUgU3R5bGVzICovXG5cbi53aWRnZXR0aXRsZSxcbi5zdG9yaWVzIGgzLndpZGdldHRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMztcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yNTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiBAYmxhY2s7XG4gIGEge1xuICAgIGNvbG9yOiBAYmxhY2s7XG4gIH1cbn1cblxuLyogMS4zIC0gRm9vdGVyIFN0eWxlcyAqL1xuXG4jc2l0ZS1mb290ZXIge1xuICAuZGFya0xpZ2h0KEBoZWFkZXJGb290ZXJDb2xvcik7XG4gIGE6aG92ZXIge1xuICAgIGNvbG9yOiBsaWdodGVuKEBsaW5rQ29sb3IsIDIwJSk7XG4gIH1cbiAgLndpZGdldHRpdGxlLFxuICBsaS5tZW51LWxhYmVsIHtcbiAgICAuZGFya0xpZ2h0KEBoZWFkZXJGb290ZXJDb2xvcik7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMztcbiAgICBwYWRkaW5nLWJvdHRvbTogQGJhc2VsaW5lIC8gNTtcbiAgfVxuICAud2lkZ2V0IHtcbiAgICBtYXJnaW46IDAgMCAoQGJhc2VsaW5lIC8gMikgMDtcbiAgfVxuICAud2lkZ2V0dGl0bGUsXG4gIC53aWRnZXQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG4gIHAsIGxpIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjk7XG4gIH1cbiAgdWwge1xuICAgIG1hcmdpbjowO1xuICAgIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG4gICAgbGkge1xuICAgICAgbGluZS1oZWlnaHQ6MS4yNTtcbiAgICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDI7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxuICAvKiBGT09URVIgRk9STSAvIFNFQVJDSCBTVFlMRVMgKi9cbiAgaW5wdXQsXG4gIHNlbGVjdCB7XG4gICAgZm9udC1mYW1pbHk6IEBzYW5zRm9udEZhbWlseTtcbiAgfVxuICBzZWxlY3Qge1xuICAgIHdpZHRoOiA5MCU7XG4gIH1cbiAgaW5wdXQuc2VhcmNoLXF1ZXJ5IHtcbiAgICB3aWR0aDogNjclO1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW07XG4gICAgaGVpZ2h0OiAxOXB4OyAvLyBsZWF2ZSB0aGlzIGFsb25lLCBmb3JtcyBiZSBjaGFsbGVuZ2luZ1xuICB9XG4gIGlucHV0LnNlYXJjaC1zdWJtaXQge1xuICAgIG1heC13aWR0aDogMjUlO1xuICAgIHBhZGRpbmc6IDAuMWVtIDAuNWVtO1xuICB9XG59XG5cbiNzdXBwbGVtZW50YXJ5IC5tZW51LWRvbnQtbWlzcy1jb250YWluZXIgaDQsXG4jc2l0ZS1mb290ZXIgYXNpZGUgbGkubWVudS1sYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIDEuNCAtIEJhY2tncm91bmQgU3R5bGVzIChSZXZlcnNlIGFuZCBOb25lKSAqL1xuXG4ud2lkZ2V0LnJldiB7XG4gIGNvbG9yOiBAd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6IEBiYXNlQ29sb3I7XG4gIC53aWRnZXR0aXRsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdoaXRlO1xuICAgIGNvbG9yOiBAYmFzZUNvbG9yO1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiBAYmFzZUNvbG9yO1xuICAgIH1cbiAgfVxuICBhIHtcbiAgICBjb2xvcjogQHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC53aWRnZXR0aXRsZSBhIHtcbiAgICBjb2xvcjogQGdyYXlEYXJrO1xuICB9XG59XG4ud2lkZ2V0Lm5vLWJnIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcCwgdWwge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG4gIC53aWRnZXR0aXRsZSB7XG4gICAgY29sb3I6IEBibGFjaztcbiAgfVxufVxuXG4vKiAxLjUgLSBSZXNldHMgYW5kIEZpeGVzICovXG5cbiNzaWRlYmFyIGlmcmFtZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyogMS42IC0gc2lkZWJhciBzdHlsZXMgKi9cbiNzaWRlYmFyIC53aWRnZXQge1xuICBwYWRkaW5nOiAwIDAgMCBAYmFzZWxpbmU7XG4gICYucmV2IHtcbiAgICBwYWRkaW5nOiBAYmFzZWxpbmUgQGJhc2VsaW5lIDA7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuLnNpbmdsZS5ub3JtYWwgI3NpZGViYXIgLndpZGdldCB7XG4gIHBhZGRpbmc6IDAgQGJhc2VsaW5lIDAgMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgMi4xIC0gV29yZFByZXNzIERlZmF1bHQgV2lkZ2V0c1xuXG4gICAgRWl0aGVyOlxuICAgIC0gQ1JFQVRFIGEgbmV3IGZpbGUgZm9yIHNpZ25pZmljYW50IGNoYW5nZXMgdG8gYSBkZWZhdWx0IHdpZGdldCdzIG91dHB1dC5cbiAgICAtIEFERCBhIHNlY3Rpb24gdG8gdGhlIHdwLWdlbmVyYWwubGVzcyBmaWxlIGFuZCBkb2N1bWVudCBoZXJlLlxuXG4gICAgd3AtZ2VuZXJhbC5sZXNzXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLndpZGdldF9hcmNoaXZlcyAtIEFyY2hpdmVzIGRyb3Bkb3duXG4gICAgLndpZGdldF9jYXRlZ29yaWVzIC0gQ2F0ZWdvcmllcyBkcm9wZG93blxuICAgIC53aWRnZXRfc2VhcmNoIC0gU2VhcmNoIGZvcm1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBpbXBvcnQgXCJ3aWRnZXRzL3dwLWdlbmVyYWwubGVzc1wiO1xuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgMi4yIC0gTGFyZ28gd2lkZ2V0IHN0eWxlc1xuXG4gICAgVGhpcyBzZWN0aW9uIGFpbXMgdG8gaGF2ZSBvbmUgZmlsZSBmb3IgZXZlcnkgd2lkZ2V0IGluY2x1ZGVkIGluIExhcmdvLCBhbmRcbiAgICBzZWxlY3QgdGhpcmQtcGFydHkgd2lkZ2V0cyB0aGF0IExhcmdvIHN1cHBvcnRzLiBJZiB5b3UgYWRkIGEgcnVsZSBmb3IgYVxuICAgIHdpZGdldCBpbiBhIGZpbGUgdGhhdCBkb2VzIG5vdCBiZWxvbmcgdG8gdGhhdCB3aWRnZXQsIHBsZWFzZSBkb2N1bWVudCBoZXJlXG4gICAgdGhlIGZpbGUgeW91IGFyZSBhZGRpbmcgdGhlIHJ1bGUgdG8uXG5cbiAgICBTb21lIGZpbGVzIGluIHRoaXMgc2VjdGlvbiBjb250YWluIG5vIHJ1bGVzLiBTZWUgdGhlaXIgQHNlZSBkaXJlY3RpdmVzIGZvclxuICAgIG1vcmUgaW5mb3JtYXRpb24uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vLyBGaWxlbmFtZXMgYXJlIGJhc2VkIG9uIHRoZSBuYW1lIG9mIHRoZSB3aWRnZXQgYXMgaXQgYXBwZWFycyBpbiB0aGUgV1AgQWRtaW4uXG5AaW1wb3J0IFwid2lkZ2V0cy9sYXJnby1hYm91dC1zaXRlLmxlc3NcIjtcbkBpbXBvcnQgXCJ3aWRnZXRzL2xhcmdvLWF1dGhvci1iaW8ubGVzc1wiO1xuQGltcG9ydCBcIndpZGdldHMvbGFyZ28tZGlzY2xhaW1lci5sZXNzXCI7XG5AaW1wb3J0IFwid2lkZ2V0cy9sYXJnby1kb25hdGUtd2lkZ2V0Lmxlc3NcIjtcbkBpbXBvcnQgXCJ3aWRnZXRzL2xhcmdvLWV4cGxvcmUtcmVsYXRlZC5sZXNzXCI7XG5AaW1wb3J0IFwid2lkZ2V0cy9sYXJnby1mb2xsb3cubGVzc1wiO1xuQGltcG9ydCBcIndpZGdldHMvbGFyZ28taW1hZ2Utd2lkZ2V0Lmxlc3NcIjtcbkBpbXBvcnQgXCJ3aWRnZXRzL2xhcmdvLXByZXYtbmV4dC1saW5rcy5sZXNzXCI7XG5AaW1wb3J0IFwid2lkZ2V0cy9sYXJnby1yZWNlbnQtY29tbWVudHMubGVzc1wiO1xuQGltcG9ydCBcIndpZGdldHMvbGFyZ28tcmVsYXRlZC1wb3N0cy5sZXNzXCI7XG5AaW1wb3J0IFwid2lkZ2V0cy9sYXJnby1zZXJpZXMtcG9zdHMubGVzc1wiO1xuQGltcG9ydCBcIndpZGdldHMvbGFyZ28tc3RhZmYtcm9zdGVyLmxlc3NcIjtcbkBpbXBvcnQgXCJ3aWRnZXRzL2xhcmdvLXRhZy1saXN0Lmxlc3NcIjtcbkBpbXBvcnQgXCJ3aWRnZXRzL2xhcmdvLXRheG9ub215LWxpc3QubGVzc1wiO1xuQGltcG9ydCBcIndpZGdldHMvbGFyZ28taW5uLXJzcy5sZXNzXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgMi4zIC0gU3R5bGVzIGZvciBJTk4tc3VwcG9ydGVkIG5vbi1MYXJnbyB3aWRnZXRzXG5cbiAgICBUaGlzIHNlY3Rpb24gYWltcyB0byBoYXZlIG9uZSBmaWxlIGFwaWVjZSBmb3IgdGhpcmQtcGFydHkgd2lkZ2V0cyB0aGF0XG4gICAgTGFyZ28gc3VwcG9ydHMuXG4gICAgSWYgeW91IGFkZCBhIHJ1bGUgZm9yIGEgd2lkZ2V0IGluIGEgZmlsZSB0aGF0IGRvZXMgbm90IGJlbG9uZyB0byB0aGF0IHdpZGdldCxcbiAgICBwbGVhc2UgZG9jdW1lbnQgaGVyZSB0aGUgZmlsZSB5b3UgYXJlIGFkZGluZyB0aGUgcnVsZSB0by5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8vIEZpbGVuYW1lcyBhcmUgYmFzZWQgb24gdGhlIG5hbWUgb2YgdGhlIHdpZGdldCBhcyBpdCBhcHBlYXJzIGluIHRoZSBXUCBBZG1pbi5cbkBpbXBvcnQgXCJ3aWRnZXRzL2FuYWx5dGljLWJyaWRnZS1wb3B1bGFyLXBvc3RzLmxlc3NcIjtcbiIsIi8qKlxuICogR2VuZXJhbCBzdHlsZXMgZm9yIFdvcmRQcmVzcyBkZWZhdWx0IHdpZGdldHNcbiAqXG4gKiBAc2luY2UgMC41LjNcbiAqL1xuLndpZGdldF9hcmNoaXZlIHNlbGVjdCxcbi53aWRnZXRfY2F0ZWdvcmllcyBzZWxlY3QsXG4ubGFyZ28tdGF4b25vbXktbGlzdCBzZWxlY3QsXG4ud2lkZ2V0X3NlYXJjaCBmb3JtIHtcbiAgbWFyZ2luOiBAYmFzZWxpbmUvNSAwO1xufVxuLndpZGdldF9hcmNoaXZlIGxhYmVsLFxuLndpZGdldF9jYXRlZ29yaWVzIGxhYmVsIHtcbiAgLnZpc3VhbGx5aGlkZGVuXG59XG4iLCIvKipcbiAqIFN0eWxlcyBmb3IgdGhlIExhcmdvIEFib3V0IFNpdGUgd2lkZ2V0XG4gKlxuICogQHNpbmNlIDAuM1xuICovXG5cbi5sYXJnby1hYm91dCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuI3NpdGUtZm9vdGVyIC5sYXJnby1hYm91dCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMjtcbn1cbiIsIi8qKlxuICogU3R5bGVzIGZvciB0aGUgTGFyZ28gQXV0aG9yIEJpbyB3aWRnZXRcbiAqXG4gKiBAc2luY2UgMC41LjNcbiAqL1xuXG4ud2lkZ2V0IC5hdXRob3ItYm94IHVsIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxuLy8gQVVUSE9SIEJPWFxuLmF1dGhvci1ib3gge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAwO1xuICBpbWcuYXZhdGFyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDVweCAxNXB4IDEwcHggMDtcbiAgICBwYWRkaW5nOiA0cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgQGdyYXlMaWdodGVyO1xuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUvMztcbiAgfVxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTpub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgbWluLXdpZHRoOiAzMHB4O1xuICAgICAgYSB7XG5cdCAgICBkaXNwbGF5OiBibG9jaztcblx0ICAgIHBhZGRpbmc6IDRweDtcblx0ICAgIGNvbG9yOiBAd2hpdGU7XG5cdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAZ3JheURhcms7XG5cdCAgICAuYm9yZGVyLXJhZGl1cyg0cHgpO1xuXHQgICAgJjpob3ZlciB7XG5cdFx0ICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKEBncmF5RGFyaywxMCUpO1xuXHRcdH0gICAgXG4gICAgICB9XG4gICAgICBpIHtcbiAgICAgICAgcGFkZGluZzogNHB4O1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5hdXRob3ItcG9zdHMtbGluayB7XG4gICAgICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAtIDM7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICAgICAgICBhIHtcblx0ICAgICAgcGFkZGluZzogNnB4IDEwcHg7XG4gICAgICAgICAgY29sb3I6IEB3aGl0ZTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIvKipcbiAqIFN0eWxlcyBmb3IgdGhlIExhcmdvIERpc2NsYWltZXIgd2lkZ2V0XG4gKlxuICogQHNpbmNlIDAuNS4zXG4gKi9cbmJvZHkubm9ybWFsLnNpbmdsZS1wb3N0LFxuYm9keS5ub3JtYWwucGFnZSB7XG4gIC5hcnRpY2xlLWJvdHRvbSB7XG4gICAgLmxhcmdvLWRpc2NsYWltZXIge1xuICAgICAgY29sb3I6IEBncmF5RGFyaztcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogU3R5bGVzIGZvciB0aGUgTGFyZ28gRG9uYXRlIFdpZGdldFxuICpcbiAqIEBzaW5jZSAwLjNcbiAqL1xuXG4ubGFyZ28tZG9uYXRlIHAge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAzO1xufVxuIiwiLyoqXG4gKiBTdHlsZXMgZm9yIExhcmdvIEV4cGxvcmUgUmVsYXRlZCB3aWRnZXRcbiAqXG4gKiBAc2VlIC9sZXNzL2luYy9zaW5nbGUubGVzc1xuICogQHNlZSAvbGVzcy9pbmMvcmVzcG9uc2l2ZS03NjdweC1tYXgubGVzc1xuICogQHNpbmNlIDAuNS4zXG4gKi9cblxuLy8gVGhlcmUgYXJlIG5vIHN0eWxlcyBob29rZWQgb24gLmxhcmdvLWV4cGxvcmUtcmVsYXRlZC5cbi8vIFNlZSB0aGUgYWJvdmUgZmlsZXMgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgI3JlbGF0ZWQtcG9zdHNcbiNyZWxhdGVkLXBvc3QtbmF2IHtcbiAgcGFkZGluZzogMC41ZW0gMDtcbiAgZm9udC1mYW1pbHk6IEBzYW5zRm9udEZhbWlseTtcbiAgbGkge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAtIDE7XG4gIH1cbiAgaDUge1xuICAgIG1hcmdpbjogMCAwIDAuMjVlbSAwO1xuICB9XG4gIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEuMjVlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgQGdyYXlMaWdodDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGdyYXlMaWdodGVyO1xuICAgIH1cbiAgICAmLnNlbGVjdGVkIHtcbiAgICAgIGNvbG9yOiBAd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiBAYmFzZUNvbG9yO1xuICAgICAgYm9yZGVyOiBub25lO1xuXHR9XG4gIH1cbn1cbi5yZWxhdGVkLWl0ZW1zIHtcbiAgZGl2IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmc6IDAgMWVtO1xuICAgIGltZyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbjogMCAwLjhlbSAwLjhlbSAwO1xuICAgIH1cbiAgfVxuICB1bCB7XG4gICAgbWFyZ2luOiAwLjRlbSAwO1xuICAgIGxpIHtcbiAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKyAyO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICYudG9wLXJlbGF0ZWQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAyO1xuICAgICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gNDtcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXdlaWdodDpub3JtYWw7XG4gICAgICAgICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgZm9udC1mYW1pbHk6IEBzYW5zRm9udEZhbWlseTtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gNDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgI3JlbGF0ZWQtcG9zdC1uYXYsXG4gICNyZWxhdGVkLXBvc3RzIC5yZWxhdGVkLWl0ZW1zIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAjcmVsYXRlZC1wb3N0LW5hdiBhIHtcbiAgICBwYWRkaW5nOiBAYmFzZWxpbmUgLyAyO1xuICB9XG4gICNyZWxhdGVkLXBvc3RzIC5yZWxhdGVkLWl0ZW1zIHVsIGxpLnRvcC1yZWxhdGVkIHtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAyO1xuICB9XG4gICNyZWxhdGVkLXBvc3RzIC5yZWxhdGVkLWl0ZW1zIHVsIGxpLnRvcC1yZWxhdGVkIGgzIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjU7XG4gICAgbWFyZ2luOiAoQGJhc2VsaW5lIC8gMykgMDtcbiAgfVxuICAjcmVsYXRlZC1wb3N0cyAucmVsYXRlZC1pdGVtcyB1bCBsaS50b3AtcmVsYXRlZCBwLFxuICAjcmVsYXRlZC1wb3N0cyAucmVsYXRlZC1pdGVtcyBkaXYgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICNyZWxhdGVkLXBvc3RzIC5yZWxhdGVkLWl0ZW1zIHVsIGxpIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAzO1xuICB9XG59XG4iLCIvKipcbiAqIFN0eWxlcyBmb3IgdGhlIExhcmdvIEZvbGxvdyB3aWRnZXRcbiAqXG4gKiBAc2luY2UgMC41LjNcbiAqL1xuLnN1YnNjcmliZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgLSAyO1xuICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyA0O1xuICBjb2xvcjogQGdyYXk7XG4gICY6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiBAZ3JheURhcmtlcjtcbiAgfVxuICBpIHtcbiAgICBjb2xvcjogQHdoaXRlO1xuICAgIHBhZGRpbmc6IDAgMWVtIDAgMC41ZW07XG4gICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCBAd2hpdGU7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplIC0gMztcbiAgICBtYXJnaW4tcmlnaHQ6IEBiYXNlbGluZSAvIDQ7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuLy8gVGhlc2UgY29sb3JzIGFsc28gdXNlZCBpbiAucG9zdC1zb2NpYWwgaW4gc2luZ2xlLmxlc3Ncbi5sYXJnby1mb2xsb3cge1xuICAucnNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAcnNzO1xuICAgIGNvbG9yOkB3aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAcnNzLCA1JSk7XG4gICAgfVxuICB9XG4gIC50d2l0dGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOkB0d2l0dGVyO1xuICAgIGNvbG9yOkB3aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAdHdpdHRlciwgNSUpO1xuICAgIH1cbiAgfVxuICAuZmFjZWJvb2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6QGZhY2Vib29rO1xuICAgIGNvbG9yOkB3aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAZmFjZWJvb2ssIDUlKTtcbiAgICB9XG4gIH1cbiAgLmxpbmtlZGluIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOkBsaW5rZWRpbjtcbiAgICBjb2xvcjojZmZmO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBsaW5rZWRpbiwgNSUpO1xuICAgIH1cbiAgfVxuICAuZ3BsdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6QGdwbHVzO1xuICAgIGNvbG9yOkB3aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAZ3BsdXMsIDUlKTtcbiAgICB9XG4gIH1cbiAgLmZsaWNrciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpAZmxpY2tyO1xuICAgIGNvbG9yOiNmZmY7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGZsaWNrciwgNSUpO1xuICAgIH1cbiAgfVxuICAueW91dHViZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpAeW91dHViZTtcbiAgICBjb2xvcjpAd2hpdGU7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQHlvdXR1YmUsIDUlKTtcbiAgICB9XG4gIH1cbiAgLnByaW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODU4OThGO1xuICAgIGNvbG9yOiNmZmY7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oIzg1ODk4RiwgNSUpO1xuICAgIH1cbiAgfVxuICAuZW1haWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2MjY1NkY7XG4gICAgY29sb3I6I2ZmZjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigjNjI2NTZGLCA1JSk7XG4gICAgfVxuICB9XG4gIC5zb2NpYWwtYnRuIHtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgbWFyZ2luOiAwLjVlbSAwOyAvLyBsZWZ0LWFsaWduIGJ1dHRvbnNcbiAgICBwYWRkaW5nOiAwLjY2ZW07XG4gIH1cbn1cblxuLmFydGljbGUtYm90dG9tIC5sYXJnby1mb2xsb3cge1xuICBwYWRkaW5nOiAwO1xufVxuLnR3aXR0ZXItZm9sbG93LWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMCAoQGJhc2VsaW5lIC0gNik7XG59XG4ud2lkZ2V0IC5mYi1saWtlIHtcbiAgbWFyZ2luOiAwIDAgKEBiYXNlbGluZSAvIDQpO1xufVxuLmZiLWxpa2UsIC5mYi1saWtlIHNwYW4sIC5mYi1saWtlLmZiX2lmcmFtZV93aWRnZXQgc3BhbiBpZnJhbWUsXG4uZmItbGlrZS1ib3gsIC5mYi1saWtlLWJveCBzcGFuLCAuZmItbGlrZS1ib3ggc3BhbiBpZnJhbWVbc3R5bGVdIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbi5mYi1saWtlLWJveCB7XG4gIGJhY2tncm91bmQ6IHdoaXRlICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG4uZmxpY2tyLWZvbGxvdyB7XG4gIG1hcmdpbi1ib3R0b206IChAYmFzZWxpbmUgLyAyKTtcbn1cblxuIiwiLyoqXG4gKiBTdHlsZXMgZm9yIHRoZSBMYXJnbyBJbWFnZSBXaWRnZXQsIGFrYSBcIkltYWdlIFdpZGdldFwiXG4gKlxuICogQHNlZSAvaW5jL3dpZGdldHMvbGFyZ28taW1hZ2Utd2lkZ2V0LnBocFxuICogQHNpbmNlIDAuNS4zXG4gKi9cblxuLy8gTWFueSBzdHlsZXMgZm9yIHRoaXMgd2lkZ2V0IGFyZSBpbmNsdWRlZCBpbiAvaW5jL3dpZGdldHMvbGFyZ28taW1hZ2Utd2lkZ2V0LnBocFxuXG4jc2l0ZS1mb290ZXIgLndpZGdldC1zcC1pbWFnZSBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgLy8gYmVjYXVzZSB0aGUgd2lkZ2V0IHVzZXMgaW5saW5lIG1heC13aWR0aDpweCBmaXhlZCB3aWR0aHNcbn1cbiIsIi8qKlxuICogU3R5bGVzIGZvciBMYXJnbyBQcmV2L05leHQgTGlua3Mgd2lkZ2V0c1xuICpcbiAqIEBzaW5jZSAwLjUuM1xuICovXG5cbi8vIFRoaXMgd2lkZ2V0IGlzIGFuIGluc3RhbmNlIG9mIGxhcmdvX2NvbnRlbnRfbmF2KCdzaW5nbGUtcG9zdC1uYXYtYmVsb3cnKSxcbi8vIHdoaWNoIHVzZXMgdGhlIElEICNuYXYtYmVsb3cgYW5kIGlzIG9ubHkgb3V0cHV0IG9uIHNpbmdsZSBwYWdlcy5cblxuLyogTmV4dC1wcmV2IG5hdmlnYXRpb24gXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBUaGVzZSBzdHlsZXMgd2VyZSBtb3ZlZCBmcm9tIHNpbmdsZS5sZXNzICovXG4ucGFnZXIge1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgIGNvbG9yOiBAdGV4dENvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAcG9zdEJveEJhY2tncm91bmRDb2xvciwgMTAlKTtcbiAgICAmOmhvdmVyIHtcbiAgXHQgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAcG9zdEJveEJhY2tncm91bmRDb2xvciwgMzUlKTtcbiAgXHQgIGNvbG9yOiBAd2hpdGU7XG4gIFx0ICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4ubmV4dCB7XG4gIHdpZHRoOiA0OCU7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGltZyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmctbGVmdDogQGJhc2VsaW5lIC0gNDtcbiAgfVxufVxuLnByZXZpb3VzIHtcbiAgd2lkdGg6IDQ4JTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGltZyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogQGJhc2VsaW5lIC0gNDtcbiAgfVxufVxuIiwiLyoqXG4gKiBTdHlsZXMgZm9yIHRoZSBMYXJnbyBSZWNlbnQgQ29tbWVudHMgd2lkZ2V0XG4gKlxuICogQHNlZSAvbGVzcy9pbmMvY29tbWVudHMubGVzcyBwcm92aWRlcyBtYW55IHN0eWxlcyBub3QgZW51bWVyYXRlZCBoZXJlXG4gKiBAc2luY2UgMC41LjNcbiAqL1xuXG4ud2lkZ2V0LmxhcmdvLXJlY2VudC1jb21tZW50cyB7XG4gIHVsIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG4gIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIH1cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gNTtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICYuY29tbWVudC1leGNlcnB0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgfVxuICAgICYuY29tbWVudC1wb3N0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICAmLmNvbW1lbnQtbWV0YSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBTdHlsZXMgZm9yIHRoZSBMYXJnbyBSZWxhdGVkIFBvc3RzIHdpZGdldFxuICpcbiAqIEBzZWUgL2xlc3MvaW5jL3Jlc3BvbnNpdmUtNzY3cHgtbWF4Lmxlc3NcbiAqIEBzZWUgL2xlc3MvaW5jL3NpbmdsZS5sZXNzXG4gKiBAc2luY2UgMC41LjNcbiAqL1xuXG4ud2lkZ2V0LmxhcmdvLXJlbGF0ZWQtcG9zdHMge1xuICAud2lkZ2V0dGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAtIDQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIHVsLnJlbGF0ZWQge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAuY2xlYXJmaXgoKTtcbiAgICB9XG4gIH1cbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAyO1xuICAgIC8qIFJlc3BvbnNpdmUgVHlwb2dyYXBoeSBQcm9wb3J0aW9uaW5nICovXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAgICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yNTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyA1O1xuICAgIH1cbiAgfVxuICBoNS5ieWxpbmUge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuOTtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAyO1xuICAgIC8qIEhpZGRlbiBvbiBNb2JpbGUgKi9cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgLyogSGlkZGVuIG9uIE1vYmlsZSAqL1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuOTtcbiAgICB9XG4gIH1cbiAgLndwLXBvc3QtaW1hZ2Uge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMC41ZW0gMS4yZW0gMCAwO1xuICB9XG59XG4iLCIvKipcbiAqIFN0eWxlcyBmb3IgdGhlIExhcmdvIFNlcmllcyBQb3N0cyB3aWRnZXRcbiAqXG4gKiBAc2luY2UgMC41LjNcbiAqL1xuXG4ud2lkZ2V0LmxhcmdvLXNlcmllcy1wb3N0cyB7XG4gIGg0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjRlbTtcbiAgICAvLyB0aGlzIHNwZWNpZmljIGg0IHNob3VsZCB0aGUgc2FtZSBzaXplIGFzIHRoZSBzdGFuZGFyZCB0ZXh0XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gIH1cbiAgdWwge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICB9XG4gIGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMTEwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICB9XG4gIGxpIGEge1xuICAgIHBhZGRpbmctbGVmdDogMmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICB9XG4gIGEubW9yZSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgwrtcIjtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogU3R5bGVzIGZvciB0aGUgTGFyZ28gU3RhZmYgUm9zdGVyIHdpZGdldFxuICpcbiAqIEBzaW5jZSAwLjUuM1xuICovXG5cbnVsLnN0YWZmLXJvc3RlciB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAoQGJhc2VsaW5lIC0gNCkgMCAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luOiAwIDAgQGJhc2VsaW5lIDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaW1nIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW46IDAgMWVtIDAuNWVtIDA7XG4gICAgICBib3JkZXI6MXB4IHNvbGlkIEBncmF5TGlnaHRlcjtcbiAgICAgIHBhZGRpbmc6IEBiYXNlbGluZSAvIDU7XG4gICAgfVxuICB9XG4gIC5zdGFmZi1uYW1lIHtcbiAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgIG1hcmdpbi1ib3R0b206MC4yNWVtO1xuICB9XG4gIHAge1xuICAgIG1hcmdpbjogMC40ZW0gMDtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgICBjb2xvcjogQGdyYXk7XG4gIH1cbiAgcCArIHAge1xuICAgIG1hcmdpbi10b3A6MC43NWVtO1xuICB9XG59XG4iLCIvKipcbiAqIFN0eWxlcyBmb3IgdGhlIExhcmdvIFRhZyBMaXN0IHdpZGdldFxuICpcbiAqIEBzZWUgL2xlc3MvaW5jL3NpbmdsZS5sZXNzXG4gKiBAc2luY2UgMC41LjNcbiAqL1xuXG4vLyBUaGUgTGFyZ28gVGFnIExpc3Qgd2lkZ2V0IGhhcyBubyBzdHlsZXMgaG9va2VkIG9uIGl0cyBjbGFzcyAubGFyZ28tdGFnLWxpc3QuXG4vLyBXaGF0IHN0eWxlcyB0aGVyZSBhcmUgYXJlIGluIC9sZXNzL2luYy9zaW5nbGUubGVzcyB1bmRlciAudGFncywgd2l0aCBhIGxvdCBvZiBzaW1pbGFyIHN0eWxlcy5cblxuLmxhYmVscyxcbi50YWdzIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMjtcbiAgLy8gVGhpcyBzdGF5cyBhbiBoNSBmb3Igc2VtYW50aWMgcmVhc29ucywgYnV0IGdhaW5zIHRoZSBhcHBlYXJhbmNlIG9mIGp1c3Qgbm9ybWFsIHRleHRcbiAgaDUge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBAYmFzZUZvbnRTaXplO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgfVxuICB1bCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAtIDEuNTtcbiAgICBsaW5lLWhlaWdodDogQGJhc2VGb250U2l6ZSAtIDE7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgIHwgIFwiO1xuICAgICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgICB9XG4gICAgICAmOmxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIGkge1xuICAgICAgICBtYXJnaW46IDFweCAzcHggMCAwO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiBAZ3JheTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IGRhcmtlbihAZ3JheURhcmssIDEwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB0YXgtbGlzdC1pbWctc2l6ZTogNjBweDtcbi5sYXJnby10YXhvbm9teS1saXN0IGltZyB7XG4gIG1heC13aWR0aDogQHRheC1saXN0LWltZy1zaXplO1xuICBtYXgtaGVpZ2h0OiBAdGF4LWxpc3QtaW1nLXNpemU7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDhweDs7XG59XG4ubGFyZ28tdGF4b25vbXktbGlzdCB1bCB7XG4gIG1hcmdpbjogMDtcbn1cbi5sYXJnby10YXhvbm9teS1saXN0IGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5sYXJnby10YXhvbm9teS1saXN0IGg1IHtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vLyBTdHlsZXMgZm9yIHRoaXMgd2lkZ2V0IGluIHRoZSBsZWZ0LWhhbmQgc2lkZWJhciAod2hpY2ggc2hvdWxkIG5vdCBiZSB1c2VkLCBidXQganVzdCBpbiBjYXNlKVxuYXJ0aWNsZSAubGFyZ28tdGF4b25vbXktbGlzdCB7XG4gIC5oYXMtdGh1bWJuYWlsIGEge1xuICAgIHRleHQtYWxpZ246IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICBpbWcuYXR0YWNobWVudC1wb3N0LXRodW1ibmFpbCB7XG4gICAgLy8gZnVsbCB3aWR0aCBvZiB3aWRnZXRcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vIEZpeCBmb3IgcmlnaHQgc2lkZWJhciBlZGdlIGNhc2Ugd2hlcmUgbG9uZyBzZXJpZXMgbmFtZSBhbmQgbG9uZyBoZWFkbGluZSBuYW1lIGNvbWJpbmUgd2l0aCB0aHVtYm5haWwgdG8gd3JhcCBiZWxvdyB0aGUgaW1hZ2UuXG4ubGFyZ28tdGF4b25vbXktbGlzdCBsaS5oYXMtdGh1bWJuYWlsIGE6bnRoLWNoaWxkKDIpIHtcbiAgcGFkZGluZy1sZWZ0OiBAdGF4LWxpc3QtaW1nLXNpemUgKyA4cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLy8gQW5kIGEgZnVydGhlciBmaXggZm9yIHRoZSBhYm92ZSBpc3N1ZSBvbiBhcnRpY2xlIHBhZ2VzLCB3aGVyZSBpdCBzaG91bGQgbm90IGRvIHRoYXQuIDooXG5hcnRpY2xlIC5sYXJnby10YXhvbm9teS1saXN0IGxpLmhhcy10aHVtYm5haWwgYTpudGgtY2hpbGQoMikge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiI3NpZGViYXIgLmxhcmdvLUlOTi1SU1Mge1xuICB1bCB7XG4gICAgbWFyZ2luOiBAYmFzZWxpbmUgLyAyIDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMjtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGg1LFxuICAgIGg2LFxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gNTtcbiAgICB9XG4gIH1cbn1cbiIsIiNzaWRlYmFyIC53aWRnZXRfYW5hbHl0aWMtYnJpZGdlLXBvcHVsYXItcG9zdHMge1xuICBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VGb250U2l6ZTtcbiAgICBkaXYgeyAvLyBJbiBMYXJnbywgdGhlIGltYWdlIGdldHMgd3JhcHBlZCBieSBhIGRpdiBieSBBQlAgdG8gc3VwcG9ydCB0aGUgbGFyZ28gLmlzLXZpZGVvIHN0eWxlc1xuICAgICAgbWFyZ2luLWJvdHRvbTogQGJhc2VGb250U2l6ZSAvIDI7XG4gICAgfVxuICAgIGRpdi5pcy1lbXB0eSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICBsaSArIGxpIHtcbiAgICBtYXJnaW4tdG9wOiAxLjggKiBAYmFzZUZvbnRTaXplO1xuICAgIGJvcmRlci10b3A6IDFweCBAZ3JheUxpZ2h0ZXIgc29saWQ7XG4gICAgcGFkZGluZy10b3A6IDEuOCAqIEBiYXNlRm9udFNpemU7XG4gIH1cbiAgb2wge1xuICAgIC8vIEZvciBhbiBleHBsYW5hdGlvbiBvZiB3aGF0IGlzIGdvaW5nIG9uIGhlcmUsIHNlZSBodHRwOi8vcmVkLXRlYW0tZGVzaWduLmNvbS9jc3MzLW9yZGVyZWQtbGlzdC1zdHlsZXMvXG4gICAgY291bnRlci1yZXNldDogbGk7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAqbGlzdC1zdHlsZTogZGVjaW1hbDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGxpICsgbGk6OmJlZm9yZSB7XG4gICAgICB0b3A6IDEuOCAqIEBiYXNlRm9udFNpemU7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIC8vIFRoaXMgc2V0cyB0aGUgc2l6ZSBvZiB0aGUgbnVtYmVyIGFuZCBzb21lIHBhZGRpbmcgYW5kIHBvc2l0aW9uaW5nIHZhbHVlcyB0aGF0IGRlcGVuZCB1cG9uIGl0XG4gICAgICBAbnVtYmVyc2l6ZTogMzBweDtcbiAgICAgIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1NXB4O1xuICAgICAgaDUgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWluLWhlaWdodDogQG51bWJlcnNpemU7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogQG51bWJlcnNpemU7XG4gICAgICAgIGNvbnRlbnQ6IH5cImNvdW50ZXIobGkpICcuJ1wiO1xuICAgICAgICBjb3VudGVyLWluY3JlbWVudDogbGk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMS41KkBudW1iZXJzaXplO1xuICAgICAgICBoZWlnaHQ6IDFlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IC0xLjUqQG51bWJlcnNpemUgLSAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uYXJ0aWNsZS1ib3R0b20gLndpZGdldF9hbmFseXRpYy1icmlkZ2UtcG9wdWxhci1wb3N0cyB7XG5cbiAgLy8gdGhyZWUtY29sdW1uIGxheW91dFxuICAuY291bnQtOSxcbiAgLmNvdW50LTYsXG4gIC5jb3VudC0zIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogdW5zZXQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgJjpudGgtY2hpbGQoM24rMSksXG4gICAgICAgICY6bnRoLWNoaWxkKDNuKzIpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEyLjUlO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDNuKzEpIHtcbiAgICAgICAgICBjbGVhcjogbGVmdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBCZWZvcmUgRm9vdGVyLCBTaXRlIEZvb3RlclxuICpcbiAqICNiZWZvcmUtZm9vdGVyIC0gYSBkeW5hbWljIHdpZGdldCBhcmVhIHByaW9yIHRvICNzaXRlLWZvb3RlclxuICogI3NpdGUtZm9vdGVyXG4gKiAgICNzdXBwbGVtZW50YXJ5IC0gcHJpbWFyeSB3aWRnZXQgem9uZXMgZm9yIHNpdGUgZm9vdGVyXG4gKiAgICNib2lsZXJwbGF0ZSAtIHNvY2lhbCBpY29ucywgY29weXJpZ2h0LCBJTk4gbG9nbyBhbmQgZm9vdGVyIGxpbmtzXG4gKlxuICogQHNpbmNlIDAuNS4zXG4gKi9cbiBcbi5iZWZvcmUtZm9vdGVyLXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcHJlRm9vdGVyQ29sb3I7XG59XG5cbiNiZWZvcmUtZm9vdGVyIHtcbiAgLndpZGdldDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5mb290ZXItYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaGVhZGVyRm9vdGVyQ29sb3I7XG4gIHBhZGRpbmc6IDAgMCAxOHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4jc3VwcGxlbWVudGFyeSB7XG4gIHBhZGRpbmc6IEBiYXNlbGluZSAwIDAgMDtcbiAgJi5fMWNvbCBhc2lkZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi8qIHNwZWNpZmljIHRvIHRoZSBvbmUgY29sdW1uIGZvb3RlciBsYXlvdXQgKi9cbi5fMWNvbCAud2lkZ2V0X25hdl9tZW51IGxpIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbn1cblxuLypcbiAqIGltYWdlIGRpc3BsYXlzIDMwMHB4IHdpZGUsIGJ1dCBpcyBwaHlzaWNhbGx5IDE2OTl4Mzg1IHB4XjJcbiAqIFdlJ2xsIHVzZSBtYXRoIHRvIGdldCB0aGUgcGFkZGluZyB0b3AgYW5kIGJvdHRvbSBjb3JyZWN0LCBhY2NvcmRpbmcgdG8gdGhlIGJyYW5kIGd1aWRlbGluZXNcbiAqIG1hcmdpbiB0b3AgYW5kIG1hcmdpbiBib3R0b20gc2hvdWxkIGJlIGVxdWFsIHRvIHRoZSBoZWlnaHQgb2Ygb25lIG9mIHRoZSBzcXVhcmVzLlxuICogQnkgY3JvcHBpbmcgdGhlIGltYWdlIHRvIHRoZSBvdXRlciBib3VuZGFyeSBvZiB0aGUgbG93ZXItbGVmdCBzcXVhcmUgaW4gaW5uX2xvZ29fcmV2ZXJzZXR5cGUucG5nLCB3ZSBnZXQgYSBzcXVhcmUgaGVpZ2h0IG9mIDE4NHB4LlxuICogMTg0LzE2NjkgPSB4LzMwMFxuICovXG5AaW5uLWxvZ28tcGh5c2ljYWwtd2lkdGg6IDE2NjlweDtcbkBpbm4tbG9nby1waHlzaWNhbC1oZWlnaHQ6IDM4NXB4O1xuQGlubi1sb2dvLXdpZHRoOiAyMDBweDtcbkBpbm4tbG9nby1zcXVhcmU6IChAaW5uLWxvZ28td2lkdGgqMTg0L0Bpbm4tbG9nby1waHlzaWNhbC13aWR0aCk7IC8vIDE4NCBjb21lcyBmb3JtIHRoZSB3aWR0aCBvZiBvbmUgc3F1YXJlIGluIElOTidzIDIwMTUgbG9nb1xuQGlubi1sb2dvLWhlaWdodDogKEBpbm4tbG9nby13aWR0aCpAaW5uLWxvZ28tcGh5c2ljYWwtaGVpZ2h0L0Bpbm4tbG9nby1waHlzaWNhbC13aWR0aCk7IC8vIHRoZSByZW5kZXJlZCBoZWlnaHQgb2YgdGhlIGxvZ28gaW1hZ2VcbkBmb290ZXItc29jaWFsLWxvZ28tZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICsgMjtcblxuI2lubi1sb2dvIHtcbiAgbWFyZ2luLXRvcDogQGlubi1sb2dvLXNxdWFyZTtcbiAgbWFyZ2luLWJvdHRvbTogQGlubi1sb2dvLXNxdWFyZSowLjc1O1xuICBtYXgtd2lkdGg6IEBpbm4tbG9nby13aWR0aDtcbn1cblxuI2Zvb3Rlci1sb2dvcy1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgcGFkZGluZzogMTBweCAwO1xufVxuXG4jZm9vdGVyLWxvZ29zIHtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuICBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgXHRmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY3JTtcbiAgICBpbWcge1xuXHQgIGRpc3BsYXk6IGJsb2NrO1xuXHQgIHdpZHRoOiAxMDAlO1xuXHQgIG1heC13aWR0aDogMTgwcHg7XG5cdCAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICB9XG4gIGg2IHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDNweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQGdyYXlMaWdodGVyO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBjb2xvcjogQGdyYXk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGEge1xuXHQgIGZsb2F0OiByaWdodDtcblx0ICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbn1cblxudWwjZm9vdGVyLXNvY2lhbCB7XG4gIHBhZGRpbmctdG9wOiBAaW5uLWxvZ28tc3F1YXJlO1xuICBwYWRkaW5nLWJvdHRvbTogQGlubi1sb2dvLXNxdWFyZSowLjc1O1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgbGkge1xuICAgIGhlaWdodDogQGlubi1sb2dvLWhlaWdodDtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgYSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgcGFkZGluZy10b3A6ICgoQGlubi1sb2dvLWhlaWdodCAtIEBmb290ZXItc29jaWFsLWxvZ28tZm9udC1zaXplKS8xLjc1KTtcbiAgICB9XG4gICAgaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDA7XG4gICAgICBjb2xvcjogQHdoaXRlO1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgbWFyZ2luLXRvcDogMS4yNSpAaW5uLWxvZ28tc3F1YXJlO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oQHdoaXRlLCAyNSUpO1xuICAgICAgfVxuICAgICAgZm9udC1zaXplOiBAZm9vdGVyLXNvY2lhbC1sb2dvLWZvbnQtc2l6ZTtcbiAgICAgIC5kYXJrTGlnaHQoQGhlYWRlckZvb3RlckNvbG9yKTtcbiAgICB9XG4gIH1cbiAgbGk6bGFzdC1jaGlsZCBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cbiNib2lsZXJwbGF0ZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiM5RjlGQTM7XG4gIH1cbiAgLm1lbnUge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMC42Njc7XG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbiAgLm1lbnUge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG59XG5cbmZvb3RlciAjYm9pbGVycGxhdGUge1xuICBwIHtcbiAgICBjb2xvcjojOUY5RkEzO1xuICB9XG4gIGEge1xuICAgIGNvbG9yOkBncmF5TGlnaHRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiMwOUM5RkY7IC8vIFRoaXMgYmx1ZSBpcyBJTk4ncyBQcmltYXJ5IEJyYW5kIGNvbG9yIVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgI2JvaWxlcnBsYXRlIC5zcGFuNi5yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5NzlweCkge1xuICAvLyBJZiB0aGUgSU5OIGxvZ28gaXMgbm90IGRpc3BsYXllZCwgdGhlIGZvb3RlciBjcmVkaXQgZ2V0cyBzb21lIHBhZGRpbmcgdXAgdG9wXG4gIC5mb290ZXItY3JlZGl0LXBhZGRpbmctaW5uLWxvZ28tbWlzc2luZyB7XG4gICAgbWFyZ2luLXRvcDogQGlubi1sb2dvLWhlaWdodCArIDEuNzUqQGlubi1sb2dvLXNxdWFyZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTc5cHgpIHtcbiAgI2JvaWxlcnBsYXRlIC5yb3ctZmx1aWQge1xuICAgIC5zcGFuNiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIHVsI2Zvb3Rlci1zb2NpYWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICAuZm9vdGVyLWNyZWRpdCBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uYmFjay10by10b3Age1xuICAudmlzdWFsbHloaWRkZW5cbn1cbiIsIi5oZWFkZXItYWQtem9uZSB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0I2hlYWRlci1hZC16b25lLWNvbnRhaW5lciB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcblx0XHQvKiBBQ00gYWQgem9uZXMgb25seSwgc29ycnkgKi9cblx0XHQuYWNtX2FkX3pvbmVzIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0fVxuXHR9XG59XG4jaGVhZGVyLWFkLXpvbmUtY29udGFpbmVyLFxuI2JlZm9yZS1mb290ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgZGl2IGRpdiB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgLy9zb21ldGltZXMgZGZwIGFkZHMgaW5saW5lIHN0eWxlcyBzZXQgdG8gZGlzcGxheTppbmxpbmUtYmxvY2sgOihcbiAgICBtYXgtd2lkdGg6IDcyOHB4O1xuICAgIG1hcmdpbjogMWVtIGF1dG87XG4gIH1cbn1cbiNoZWFkZXItYWQtem9uZS1jb250YWluZXIge1xuICAud2lkZ2V0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIGRpdiBkaXYge1xuICAgIG1hcmdpbjogMC41ZW0gYXV0byAwO1xuICB9XG59IiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEEgRkVXIENPUkUgU1RZTEVTIEZPUiBXUCBJTUFHRVNcbi8vIEJBU0VEIE9OOiBodHRwOi8vamVmZnNlYnJpbmcuY29tL3Jlc3BvbnNpdmUtd29yZHByZXNzLWltYWdlcy9cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5zdGlja3ksXG4uYnlwb3N0YXV0aG9yLFxuLmdhbGxlcnktY2FwdGlvbiB7XG4gICBkaXNwbGF5OiBub3JtYWw7XG59XG5cbi5hbGlnbm5vbmUge1xuICAgbWFyZ2luOiBAYmFzZWxpbmUgKjAuNzUgMDtcbn1cblxuLmFsaWduY2VudGVyLFxuLmFsaWduLWNlbnRlcixcbi5jZW50ZXIge1xuICAgY2xlYXI6IGJvdGg7XG4gICBkaXNwbGF5OmJsb2NrO1xuICAgbWFyZ2luOiAoQGJhc2VsaW5lICowLjc1KSBhdXRvO1xufVxuXG4uYWxpZ25yaWdodCxcbi5hbGlnbi1yaWdodCxcbi5yaWdodCB7XG4gICBmbG9hdDpyaWdodDtcbiAgIG1hcmdpbjogQGJhc2VsaW5lLzQgMCBAYmFzZWxpbmUvMiAyMHB4O1xufVxuXG4uYWxpZ25sZWZ0LFxuLmFsaWduLWxlZnQsXG4ubGVmdCB7XG4gICBmbG9hdDpsZWZ0O1xuICAgbWFyZ2luOiBAYmFzZWxpbmUvNCAyMHB4IEBiYXNlbGluZS8yIDA7XG59XG5cbmltZyxcbmltZ1tjbGFzcyo9XCJhbGlnblwiXSxcbmltZ1tjbGFzcyo9XCJ3cC1pbWFnZS1cIl0ge1xuICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgaGVpZ2h0OiBhdXRvO1xuICAgY2xlYXI6Ym90aDtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNVUFBPUlQgRk9SIElGUkFNRS9PQkpFQ1QvRU1CRURcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5lbWJlZC1jb250YWluZXIsXG4udHlwZS1lbWJlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IC8qIDE2LzkgcmF0aW8gKi9cbiAgICBwYWRkaW5nLXRvcDogMzBweDsgLyogSUU2IHdvcmthcm91bmQqL1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206MjhweDtcbn1cbi5lbWJlZC1jb250YWluZXIgaWZyYW1lLFxuLmVtYmVkLWNvbnRhaW5lciBvYmplY3QsXG4uZW1iZWQtY29udGFpbmVyIGVtYmVkLFxuLnR5cGUtZW1iZWQgaWZyYW1lLFxuLnR5cGUtZW1iZWQgb2JqZWN0LFxuLnR5cGUtZW1iZWQgZW1iZWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG59IiwiLy8gUkVTUE9OU0lWRSBDTEFTU0VTXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSGlkZSBmcm9tIHNjcmVlbnJlYWRlcnMgYW5kIGJyb3dzZXJzXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuXG4vLyBGb3IgZGVza3RvcHNcbi52aXNpYmxlLXBob25lICAgICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuLnZpc2libGUtdGFibGV0ICAgIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4udmlzaWJsZS1kZXNrdG9wICAgeyB9IC8vIERvbid0IHNldCBpbml0aWFsbHlcbi5oaWRkZW4tcGhvbmUgICAgICB7IH1cbi5oaWRkZW4tdGFibGV0ICAgICB7IH1cbi5oaWRkZW4tZGVza3RvcCAgICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4vLyBQaG9uZXMgb25seVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC8vIFNob3dcbiAgLnZpc2libGUtcGhvbmUgICAgIHsgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9IC8vIFVzZSBpbmhlcml0IHRvIHJlc3RvcmUgcHJldmlvdXMgYmVoYXZpb3JcbiAgLy8gSGlkZVxuICAuaGlkZGVuLXBob25lICAgICAgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLy8gSGlkZSBldmVyeXRoaW5nIGVsc2VcbiAgLmhpZGRlbi1kZXNrdG9wICAgIHsgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4gIC52aXNpYmxlLWRlc2t0b3AgICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxufVxuXG4vLyBUYWJsZXRzICYgc21hbGwgZGVza3RvcHMgb25seVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSBhbmQgKG1heC13aWR0aDogOTc5cHgpIHtcbiAgLy8gU2hvd1xuICAudmlzaWJsZS10YWJsZXQgICAgeyBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiAgLy8gSGlkZVxuICAuaGlkZGVuLXRhYmxldCAgICAgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLy8gSGlkZSBldmVyeXRoaW5nIGVsc2VcbiAgLmhpZGRlbi1kZXNrdG9wICAgIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC52aXNpYmxlLWRlc2t0b3AgICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudCA7IH1cbn1cbiIsIi8vIExBUkdFIERFU0tUT1AgJiBVUFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmdsb2JhbC1uYXYsXG4gICNwYWdlLFxuICAjc2l0ZS1mb290ZXIsXG4gICNmb290ZXItbG9nb3MsXG4gICNiZWZvcmUtZm9vdGVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLmdsb2JhbC1uYXYsXG4gICNzaXRlLWZvb3RlcixcbiAgI2Zvb3Rlci1sb2dvcyB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAjcGFnZSB7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICB9XG59XG5cbiIsIi8vIFBPUlRSQUlUIFRBQkxFVCBUTyBERUZBVUxUIERFU0tUT1Bcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSBhbmQgKG1heC13aWR0aDogOTc5cHgpe1xuICAuZ2xvYmFsLW5hdixcbiAgI3BhZ2UsXG4gICNzaXRlLWZvb3RlcixcbiAgI2Zvb3Rlci1sb2dvcyB7XG4gICAgcGFkZGluZzogMCAxOHB4O1xuICB9XG4gICNtYWluIHtcbiAgICBtYXJnaW46IDEycHggMCAwO1xuICB9XG4gIGgxLmJyYW5kaW5nLFxuICBoMi5icmFuZGluZyB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMi43NTtcbiAgICAudGFnbGluZSB7XG4gICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjIyMjtcbiAgICB9XG4gIH1cbiAgI2Zvb3Rlci1sb2dvcyxcbiAgI2Zvb3Rlci1sb2dvcyAubG9nbzQge1xuICAgIGNsZWFyOmJvdGg7XG4gIH1cbiAgI2Zvb3Rlci1sb2dvcyBhIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgI2hvbWVwYWdlLWJvdHRvbSAud2lkZ2V0Lm9kZCxcbiAgI2hvbWVwYWdlLWJvdHRvbSAud2lkZ2V0LmV2ZW4ge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiA5NSU7XG4gICAgbWFyZ2luOiAwIDAgQGJhc2VsaW5lO1xuICAgIHBhZGRpbmctbGVmdDogMi41JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyLjUlO1xuICB9XG4gICNzZXJpZXMtbWFpbiAjc2lkZWJhci1sZWZ0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICNzZXJpZXMtbWFpbiAjY29udGVudC5zcGFuNXtcbiAgICB3aWR0aDogNjMlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gICNzZXJpZXMtbWFpbiAjc2lkZWJhciB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5zdGlja3ktbWFpbi1mZWF0dXJlLFxuICAuc3RpY2t5LWZlYXR1cmVzLWxpc3Qge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIExBTkRTQ0FQRSBQSE9ORSBUTyBTTUFMTCBERVNLVE9QICYgUE9SVFJBSVQgVEFCTEVUXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgI3NpZGViYXIsXG4gICNzaXRlLWZvb3RlciBkaXZbY2xhc3NePVwic3BhblwiXSxcbiAgLmhhbGYsXG4gIC5mdWxsLFxuICAjbGVmdC1yYWlsLFxuICAjY29udGVudC1tYWluIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgMCBAYmFzZWxpbmU7XG4gIH1cbiAgI2hvbWVwYWdlLWJvdHRvbSAud2lkZ2V0Lm9kZCxcbiAgI2hvbWVwYWdlLWJvdHRvbSAud2lkZ2V0LmV2ZW4ge1xuICAgIHdpZHRoOiA5NSU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAyLjUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuNSU7XG4gIH1cbiAgLmhhbGYsXG4gIC5mdWxsLFxuICAjY29udGVudC1tYWluIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgI3BhZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICB9XG4gICNtYWluIHtcbiAgICBtYXJnaW46IEBiYXNlbGluZSAvIDMgMCAwO1xuICB9XG4gICNjb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZ2xvYmFsLW5hdiB1bCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZ2xvYmFsLW5hdiAubmF2LXJpZ2h0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZ2xvYmFsLW5hdiAubmF2LXJpZ2h0IC5kb25hdGUtYnRuIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICBoMS5lbnRyeS10aXRsZSxcbiAgaDEucGFnZS10aXRsZSB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMjtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG4gIC5jYXRlZ29yeS1iYWNrZ3JvdW5kIC5yZWxhdGVkLXRvcGljcyB1bCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxuICAuc3RvcmllcyBoMi5lbnRyeS10aXRsZSxcbiAgLnN0aWNreS1tYWluLWZlYXR1cmUgaDIsXG4gIC5jYXJvdXNlbC1jYXB0aW9uIGgyIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjU7XG4gIH1cbiAgLnN0aWNreS1tYWluLWZlYXR1cmUsXG4gIC5zdGlja3ktZmVhdHVyZXMtbGlzdCB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuICAjc2l0ZS1mb290ZXIgLndpZGdldF9uYXZfbWVudSBsaSBhIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKyAzO1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgfVxuICAjZm9vdGVyLWxvZ29zIC5sb2dvNCB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgI2Zvb3Rlci1sb2dvcyBhIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgI2Zvb3Rlci1sb2dvcyBoNiBhIHtcbiAgXHRkaXNwbGF5OiBpbmxpbmU7XG4gIFx0Y2xlYXI6IGJvdGg7XG4gIFx0ZmxvYXQ6IG5vbmU7XG4gIFx0dGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAjZnQtc29jaWFsIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBsaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIGkge1xuICAgICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAjc2l0ZS1mb290ZXIgaW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZTtcbiAgfVxuICAjc2l0ZS1mb290ZXIgaW5wdXQuc2VhcmNoLXF1ZXJ5IHtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgd2lkdGg6IDc0JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAjc2l0ZS1mb290ZXIgaW5wdXQuc2VhcmNoLXN1Ym1pdCB7XG4gICAgcGFkZGluZzogOHB4IDIlO1xuICAgIHdpZHRoOiAyMCU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gICNib2lsZXJwbGF0ZSBwLmJhY2stdG8tdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogQGJhc2VsaW5lIC8gMjtcbiAgfVxuICAjc2VyaWVzLW1haW4gI3NpZGViYXItbGVmdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAjc2VyaWVzLW1haW4gI2NvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5nbG9iYWwtbmF2LWJnIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5uYXZiYXIgLmJ0bi1uYXZiYXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5jYXRlZ29yeSB7XG4gICAgLnJvdy1mbHVpZCA+ICoge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gICAgLnNwYW40IGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMCBhdXRvIDFlbTtcbiAgICB9XG4gICAgLnNlY29uZGFyeS1mZWF0dXJlZC1wb3N0IGltZyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1heC13aWR0aDogMjMlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzJTtcbiAgICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICAgIH1cbiAgfVxufVxuXG4vLyBVUCBUTyBMQU5EU0NBUEUgUEhPTkVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICNmb290ZXItbG9nb3MgaDYgYSB7XG4gIFx0ZGlzcGxheTogaW5saW5lO1xuICBcdGNsZWFyOiBib3RoO1xuICBcdGZsb2F0OiBub25lO1xuICBcdHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuIiwiQG1lZGlhIHByaW50IHtcblxuXHQvLyB0aGUgYmFzaWNzIChiYXNlZCBvbiBodHRwOi8vaHRtbDVib2lsZXJwbGF0ZS5jb20vKVxuXHQqIHtcblx0XHRiYWNrZ3JvdW5kOnRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6IzAwMCAhaW1wb3J0YW50O1xuXHRcdGJveC1zaGFkb3c6bm9uZSAhaW1wb3J0YW50O1xuXHRcdHRleHQtc2hhZG93Om5vbmUgIWltcG9ydGFudDtcblx0XHRmaWx0ZXI6bm9uZSAhaW1wb3J0YW50O1xuXHRcdC1tcy1maWx0ZXI6bm9uZSAhaW1wb3J0YW50XG5cdH1cblxuXHRhLGE6dmlzaXRlZCB7XG5cdFx0Y29sb3I6IzAwMDA2NjsgXG5cdFx0dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZVxuXHR9XG5cblx0Lmhlcm8ge1xuXHRcdGZsb2F0OiByaWdodDtcblx0fVxuXG5cdGhyIHtcblx0XHRtYXJnaW46IDEycHggMDtcblx0fVxuXG5cdHByZSxibG9ja3F1b3RlIHtcblx0XHRib3JkZXI6MXB4IHNvbGlkICM5OTk7XG5cdFx0cGFnZS1icmVhay1pbnNpZGU6YXZvaWRcblx0fVxuXG5cdC8qIE9uZSBjb2x1bW4gZGlzcGxheSAqL1xuXG5cdGJvZHkubm9ybWFsLnNpbmdsZS1wb3N0IC5oZXJvLCBib2R5Lm5vcm1hbC5wYWdlIC5oZXJvIHtcblx0XHR3aWR0aDogNjAlOyAvKiBzYXZlIHNvbWUgcGFwZXIuICovXG5cdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRmbG9hdDpub25lO1xuXHR9XG5cdFxuXHQjY29udGVudCA+IGltZy5zaXplLWxhcmdlLCAjY29udGVudCAud3AtY2FwdGlvbiBpbWcuc2l6ZS1sYXJnZSB7XG5cdFx0bWF4LXdpZHRoOiA2MCUgIWltcG9ydGFudDtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cblxuXHRhc2lkZS50eXBlLXB1bGwtcXVvdGUge1xuXHRcdG1hcmdpbi1ib3R0b206IDEycHg7XG5cdH1cblxuXHQjY29udGVudC5zcGFuOFtyb2xlPW1haW5dIHtcblx0XHRtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuXHR9XG5cdFxuXHR0aGVhZCB7XG5cdFx0ZGlzcGxheTp0YWJsZS1oZWFkZXItZ3JvdXBcblx0fVxuXG5cdHRyLGltZyB7XG5cdFx0cGFnZS1icmVhay1pbnNpZGU6YXZvaWRcblx0fVxuXG5cdGltZyB7IC8qXG5cdFx0bWF4LXdpZHRoOjEwMCUgIWltcG9ydGFudFxuXHQqL31cblxuXHRAcGFnZSB7XG5cdFx0bWFyZ2luOi41Y20gLjVjbSAxY21cblx0fVxuXG5cdHAsaDIsaDMge1xuXHRcdG9ycGhhbnM6Mztcblx0XHR3aWRvd3M6M1xuXHR9XG5cblx0aDIsaDMge1xuXHRcdHBhZ2UtYnJlYWstYWZ0ZXI6YXZvaWRcblx0fVxuXG5cdC5hdXRob3IgLnVybCB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG5cblx0bmF2LFxuXHRpZnJhbWUsXG5cdG9iamVjdCxcblx0YXVkaW8sXG5cdHZpZGVvLFxuXHQuZ2xvYmFsLW5hdixcblx0I3NpdGUtaGVhZGVyLFxuXHQucG9zdC1zb2NpYWwsXG5cdC5ib3R0b20tbWV0YSxcblx0LmF1dGhvci1ib3gsXG5cdCNyZWxhdGVkLXBvc3RzLFxuXHQjY29tbWVudHMsXG5cdC5wb3N0LW5hdixcblx0I3NpZGViYXIsXG5cdCNzaXRlLWZvb3Rlcixcblx0LnN0aWNreS1uYXYtd3JhcHBlcixcblx0LmFydGljbGUtYm90dG9tIC53aWRnZXQ6bm90KC5sYXJnby1kaXNjbGFpbWVyKSB7XG5cdFx0ZGlzcGxheTpub25lXG5cdH1cblxuXHQuYXJ0aWNsZS1ib3R0b20ge1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuXHR9XG5cblx0Lm1vZHVsZSxcblx0Lm1vZHVsZS5pbWFnZSxcblx0LndwLWNhcHRpb24sXG5cdC53cC1tZWRpYS1jcmVkaXQsXG5cdHAud3AtY2FwdGlvbi10ZXh0LFxuXHQubGFyZ28tZGlzY2xhaW1lcixcblx0Lmhlcm9cblx0IHtcblx0XHRmb250LXNpemU6IDEwcHggIWltcG9ydGFudDtcblx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdH1cblxuXHQuaGVybyBwLndwLW1lZGlhLWNyZWRpdCxcblx0Lmhlcm8gcC53cC1jYXB0aW9uLFxuXHQuaGVybyBwLndwLWNhcHRpb24tdGV4dCB7XG5cdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblx0fVxuXG5cdC5lZGl0LWxpbmsge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQucHJpbnQtaGVhZGVyIHtcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwO1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0c3Ryb25nIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICMwMDA7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xuXHRcdH1cblx0fVxuXG5cdHAsdWwsb2wsLmJ5bGluZSB7XG5cdFx0Zm9udC1zaXplOjEycHggIWltcG9ydGFudDtcblx0XHRtYXJnaW4tYm90dG9tOjEwcHhcblx0fVxuXG5cdGgxLGgyLGgyLGg0LGg1LGg2LC5lbnRyeS1jb250ZW50IGgzIHtcblx0XHRmb250LXNpemU6MTZweCAhaW1wb3J0YW50XG5cdH1cblxuXHRoMS5lbnRyeS10aXRsZSB7XG5cdFx0Zm9udC1zaXplOjI4cHggIWltcG9ydGFudFxuXHR9XG5cblx0LmVudHJ5LWNvbnRlbnQgYTpsaW5rOmFmdGVyLFxuXHQuZW50cnktY29udGVudCBhOnZpc2l0ZWQ6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6XCIgKFwiIGF0dHIoaHJlZikgXCIpIFwiO1xuXHRcdGZvbnQtc2l6ZTo4MCVcblx0fVxuXG4gIC5EVi1jb250YWluZXIgeyBkaXNwbGF5OiBub25lOyB9XG59XG4iXX0= */ \ No newline at end of file +/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxlc3MvaW5jL3Jlc2V0Lmxlc3MiLCJsZXNzL2luYy9taXhpbnMubGVzcyIsImxlc3MvaW5jL3R5cG9ncmFwaHkubGVzcyIsImxlc3MvaW5jL3ZhcmlhYmxlcy5sZXNzIiwibGVzcy9pbmMvaW1hZ2VzLmxlc3MiLCJsZXNzL2luYy9mb3Jtcy5sZXNzIiwibGVzcy9pbmMvYnV0dG9ucy5sZXNzIiwibGVzcy9pbmMvdGFibGVzLmxlc3MiLCJsZXNzL2luYy9pY29ucy5sZXNzIiwibGVzcy9pbmMvbGF5b3V0Lmxlc3MiLCJsZXNzL2luYy9oZWFkZXIubGVzcyIsImxlc3MvaW5jL25hdmJhci1jb21tb24ubGVzcyIsImxlc3MvaW5jL25hdmJhci1zdGlja3kubGVzcyIsImxlc3MvaW5jL3Bvc3RzLWFuZC1wYWdlcy5sZXNzIiwibGVzcy9pbmMvYXJjaGl2ZXMubGVzcyIsImxlc3MvaW5jL3NlYXJjaC5sZXNzIiwibGVzcy9pbmMvc3RpY2t5Lmxlc3MiLCJsZXNzL2luYy9zaW5nbGUubGVzcyIsImxlc3MvaW5jL2hvbWVwYWdlLmxlc3MiLCJsZXNzL2luYy9jb21tZW50cy5sZXNzIiwibGVzcy9pbmMvd2lkZ2V0cy5sZXNzIiwibGVzcy9pbmMvd2lkZ2V0cy93cC1nZW5lcmFsLmxlc3MiLCJsZXNzL2luYy93aWRnZXRzL2xhcmdvLWFib3V0LXNpdGUubGVzcyIsImxlc3MvaW5jL3dpZGdldHMvbGFyZ28tYXV0aG9yLWJpby5sZXNzIiwibGVzcy9pbmMvd2lkZ2V0cy9sYXJnby1kaXNjbGFpbWVyLmxlc3MiLCJsZXNzL2luYy93aWRnZXRzL2xhcmdvLWRvbmF0ZS13aWRnZXQubGVzcyIsImxlc3MvaW5jL3dpZGdldHMvbGFyZ28tZXhwbG9yZS1yZWxhdGVkLmxlc3MiLCJsZXNzL2luYy93aWRnZXRzL2xhcmdvLWZvbGxvdy5sZXNzIiwibGVzcy9pbmMvd2lkZ2V0cy9sYXJnby1pbWFnZS13aWRnZXQubGVzcyIsImxlc3MvaW5jL3dpZGdldHMvbGFyZ28tcHJldi1uZXh0LWxpbmtzLmxlc3MiLCJsZXNzL2luYy93aWRnZXRzL2xhcmdvLXJlY2VudC1jb21tZW50cy5sZXNzIiwibGVzcy9pbmMvd2lkZ2V0cy9sYXJnby1yZWxhdGVkLXBvc3RzLmxlc3MiLCJsZXNzL2luYy93aWRnZXRzL2xhcmdvLXNlcmllcy1wb3N0cy5sZXNzIiwibGVzcy9pbmMvd2lkZ2V0cy9sYXJnby1zdGFmZi1yb3N0ZXIubGVzcyIsImxlc3MvaW5jL3dpZGdldHMvbGFyZ28tdGFnLWxpc3QubGVzcyIsImxlc3MvaW5jL3dpZGdldHMvbGFyZ28tdGF4b25vbXktbGlzdC5sZXNzIiwibGVzcy9pbmMvd2lkZ2V0cy9sYXJnby1pbm4tcnNzLmxlc3MiLCJsZXNzL2luYy93aWRnZXRzL2FuYWx5dGljLWJyaWRnZS1wb3B1bGFyLXBvc3RzLmxlc3MiLCJsZXNzL2luYy9mb290ZXIubGVzcyIsImxlc3MvaW5jL2Fkcy5sZXNzIiwibGVzcy9pbmMvd3AtcmVzcG9uc2l2ZS1tZWRpYS5sZXNzIiwibGVzcy9pbmMvcmVzcG9uc2l2ZS11dGlsaXRpZXMubGVzcyIsImxlc3MvaW5jL3Jlc3BvbnNpdmUtMTIwMHB4LW1pbi5sZXNzIiwibGVzcy9pbmMvcmVzcG9uc2l2ZS03NjhweC05NzlweC5sZXNzIiwibGVzcy9pbmMvcmVzcG9uc2l2ZS03NjdweC1tYXgubGVzcyIsImxlc3MvaW5jL3ByaW50Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFDRSxjQUFBOztBQU1GO0FBQ0E7QUFDQTtFQUNFLHFCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxRQUFBOztBQU1GLEtBQUssSUFBSTtFQUNMLGFBQUE7O0FBTUo7RUFDRSxlQUFBO0VBQ0EsOEJBQUE7RUFDSSwwQkFBQTs7QUFHTixDQUFDO0VDU0MseUJBQUE7RUFFQSwwQ0FBQTtFQUNBLG9CQUFBOztBRFJGLENBQUM7QUFDRCxDQUFDO0VBQ0MsVUFBQTs7QUFNRjtBQUNB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O0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGVBQWdCLFFBQU8sSUFBSTtJQUMxQixhQUFBOztFQUdEO0lBQ0MsMEJBQUE7SUFDQSw2QkFBQTs7RUFHRDtFQUNBLE9BQU87RUFDUDtFQUNBO0VBQ0EsQ0FBQztFQUNEO0VBQ0E7SUFFQywwQkFBQTtJQUNBLGtCQUFBOztFQUdELEtBQU0sRUFBQztFQUNQLEtBQU0sRUFBQztFQUNQLEtBQU0sRUFBQztJQUNOLHNCQUFBO0lBQ0Esb0JBQUE7O0VBR0Q7SUFDQyxhQUFBOztFQUdEO0lBQ0MsY0FBQTtJQUNBLDZCQUFBO0lBQ0EsZ0JBQUE7O0VBSEQsYUFJQztJQUNDLHFCQUFBO0lBQ0EsNEJBQUE7SUFDQSxtQkFBQTtJQUNBLGtCQUFBOztFQUlGO0VBQUU7RUFBRztFQUFHO0lBQ1AsMEJBQUE7SUFDQSxtQkFBQTs7RUFHRDtFQUFHO0VBQUc7RUFBRztFQUFHO0VBQUc7RUFBRyxjQUFlO0lBQ2hDLGVBQUE7O0VBR0QsRUFBRTtJQUNELGVBQUE7O0VBR0QsY0FBZSxFQUFDLEtBQUs7RUFDckIsY0FBZSxFQUFDLFFBQVE7SUFDdkIsU0FBUSxLQUFLLFdBQVcsSUFBeEI7SUFDQSxjQUFBOztFQUdBO0lBQWdCLGFBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBSZXNldC5sZXNzXG4vLyBBZGFwdGVkIGZyb20gTm9ybWFsaXplLmNzcyBodHRwOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBEaXNwbGF5IGluIElFNi05IGFuZCBGRjNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERpc3BsYXkgYmxvY2sgaW4gSUU2LTkgYW5kIEZGM1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5hdWRpbyxcbmNhbnZhcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAqZGlzcGxheTogaW5saW5lO1xuICAqem9vbTogMTtcbn1cblxuLy8gUHJldmVudHMgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyAnYXVkaW8nIHdpdGhvdXQgY29udHJvbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBCYXNlIHNldHRpbmdzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmh0bWwge1xuICBmb250LXNpemU6IDEwMCU7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xufVxuLy8gRm9jdXMgc3RhdGVzXG5hOmZvY3VzIHtcbiAgLnRhYi1mb2N1cygpO1xufVxuLy8gSG92ZXIgJiBBY3RpdmVcbmE6aG92ZXIsXG5hOmFjdGl2ZSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIFByZXZlbnRzIHN1YiBhbmQgc3VwIGFmZmVjdGluZyBsaW5lLWhlaWdodCBpbiBhbGwgYnJvd3NlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vLyBJbWcgYm9yZGVyIGluIGEncyBhbmQgaW1hZ2UgcXVhbGl0eVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIE1ha2UgaW1hZ2VzIGluaGVyZW50bHkgcmVzcG9uc2l2ZVxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXI6IDA7XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG59XG5cbi8vIFByZXZlbnQgbWF4LXdpZHRoIGZyb20gYWZmZWN0aW5nIEdvb2dsZSBNYXBzXG4jbWFwX2NhbnZhcyBpbWcge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbi8vIEZvcm1zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMsIG1hcmdpbiBjaGFuZ2VzLCBtaXNjIGNvbnNpc3RlbmN5XG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5idXR0b24sXG5pbnB1dCB7XG4gICpvdmVyZmxvdzogdmlzaWJsZTsgLy8gSW5uZXIgc3BhY2luZyBpZSBJRTYvN1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyAvLyBGRjMvNCBoYXZlICFpbXBvcnRhbnQgb24gbGluZS1oZWlnaHQgaW4gVUEgc3R5bGVzaGVldFxufVxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIgeyAvLyBJbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgb2RkaXRpZXMgaW4gRkYzLzRcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuYnV0dG9uLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7IC8vIEN1cnNvcnMgb24gYWxsIGJ1dHRvbnMgYXBwbGllZCBjb25zaXN0ZW50bHlcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIFN0eWxlIGNsaWNrYWJsZSBpbnB1dHMgaW4gaU9TXG59XG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHsgLy8gQXBwZWFyYW5jZSBpbiBTYWZhcmkvQ2hyb21lXG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xufVxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIElubmVyLXBhZGRpbmcgaXNzdWVzIGluIENocm9tZSBPU1gsIFNhZmFyaSA1XG59XG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmUgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFNi05XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IC8vIFJlYWRhYmlsaXR5IGFuZCBhbGlnbm1lbnQgY3Jvc3MtYnJvd3NlclxufSIsIi8vIE1peGlucy5sZXNzXG4vLyBTbmlwcGV0cyBvZiByZXVzYWJsZSBDU1MgdG8gZGV2ZWxvcCBmYXN0ZXIgYW5kIGtlZXAgY29kZSByZWFkYWJsZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVVRJTElUWSBNSVhJTlNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIENsZWFyZml4XG4vLyAtLS0tLS0tLVxuLy8gRm9yIGNsZWFyaW5nIGZsb2F0cyBsaWtlIGEgYm9zcyBoNWJwLmNvbS9xXG4uY2xlYXJmaXgge1xuICAqem9vbTogMTtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBIaWRlIGFuIGl0ZW0gdmlzdWFsbHkgb25seVxuLnZpc3VhbGx5aGlkZGVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICBoZWlnaHQ6IDFweDsgd2lkdGg6IDFweDtcbiAgbWFyZ2luOiAtMXB4OyBwYWRkaW5nOiAwOyBib3JkZXI6IDA7XG59XG5cbi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9jb21taXQvYWEwMzk2ZWFlNzU3XG4uaGlkZS10ZXh0IHtcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi8vIEJsb2NrIGxldmVsIGZvcm0gaW5wdXRzXG4uaW5wdXQtYmxvY2stbGV2ZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDI4cHg7ICAgICAgICAvLyBNYWtlIGlucHV0cyBhdCBsZWFzdCB0aGUgaGVpZ2h0IG9mIHRoZWlyIGJ1dHRvbiBjb3VudGVycGFydFxuICAuYm94LXNpemluZyhib3JkZXItYm94KTsgLy8gTWFrZXMgaW5wdXRzIGJlaGF2ZSBsaWtlIHRydWUgYmxvY2stbGV2ZWwgZWxlbWVudHNcbn1cblxuLy8gV2Via2l0LXN0eWxlIGZvY3VzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cbi50YWItZm9jdXMoKSB7XG4gIC8vIERlZmF1bHRcbiAgb3V0bGluZTogdGhpbiBkb3R0ZWQgIzMzMztcbiAgLy8gV2Via2l0XG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG59XG5cbi8vIENlbnRlci1hbGlnbiBhIGJsb2NrIGxldmVsIGVsZW1lbnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5jZW50ZXItYmxvY2soKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vLyBJRTcgaW5saW5lLWJsb2NrXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG4uaWU3LWlubGluZS1ibG9jaygpIHtcbiAgKmRpc3BsYXk6IGlubGluZTsgLyogSUU3IGlubGluZS1ibG9jayBoYWNrICovXG4gICp6b29tOiAxO1xufVxuXG4vLyBJRTcgbGlrZXMgdG8gY29sbGFwc2Ugd2hpdGVzcGFjZSBvbiBlaXRoZXIgc2lkZSBvZiB0aGUgaW5saW5lLWJsb2NrIGVsZW1lbnRzLlxuLy8gRW1zIGJlY2F1c2Ugd2UncmUgYXR0ZW1wdGluZyB0byBtYXRjaCB0aGUgd2lkdGggb2YgYSBzcGFjZSBjaGFyYWN0ZXIuIExlZnRcbi8vIHZlcnNpb24gaXMgZm9yIGZvcm0gYnV0dG9ucywgd2hpY2ggdHlwaWNhbGx5IGNvbWUgYWZ0ZXIgb3RoZXIgZWxlbWVudHMsIGFuZFxuLy8gcmlnaHQgdmVyc2lvbiBpcyBmb3IgaWNvbnMsIHdoaWNoIGNvbWUgYmVmb3JlLiBBcHBseWluZyBib3RoIGlzIG9rLCBidXQgaXQgd2lsbFxuLy8gbWVhbiB0aGF0IHNwYWNlIGJldHdlZW4gdGhvc2UgZWxlbWVudHMgd2lsbCBiZSAuNmVtICh+MiBzcGFjZSBjaGFyYWN0ZXJzKSBpbiBJRTcsXG4vLyBpbnN0ZWFkIG9mIHRoZSAxIHNwYWNlIGluIG90aGVyIGJyb3dzZXJzLlxuLmllNy1yZXN0b3JlLWxlZnQtd2hpdGVzcGFjZSgpIHtcbiAgKm1hcmdpbi1sZWZ0OiAuM2VtO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgICptYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uaWU3LXJlc3RvcmUtcmlnaHQtd2hpdGVzcGFjZSgpIHtcbiAgKm1hcmdpbi1yaWdodDogLjNlbTtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgICptYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4vLyBTaXppbmcgc2hvcnRjdXRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2l6ZShAaGVpZ2h0LCBAd2lkdGgpIHtcbiAgd2lkdGg6IEB3aWR0aDtcbiAgaGVpZ2h0OiBAaGVpZ2h0O1xufVxuLnNxdWFyZShAc2l6ZSkge1xuICAuc2l6ZShAc2l6ZSwgQHNpemUpO1xufVxuXG4vLyBQbGFjZWhvbGRlciB0ZXh0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucGxhY2Vob2xkZXIoQGNvbG9yOiBAcGxhY2Vob2xkZXJUZXh0KSB7XG4gICY6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IEBjb2xvcjtcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IEBjb2xvcjtcbiAgfVxuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogQGNvbG9yO1xuICB9XG59XG5cbi8vIFRleHQgb3ZlcmZsb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcbi50ZXh0LW92ZXJmbG93KCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuXG4vLyBGT05UU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuI2ZvbnQge1xuICAjZmFtaWx5IHtcbiAgICAuc2VyaWYoKSB7XG4gICAgICBmb250LWZhbWlseTogQHNlcmlmRm9udEZhbWlseTtcbiAgICB9XG4gICAgLnNhbnMtc2VyaWYoKSB7XG4gICAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICAgIH1cbiAgICAubW9ub3NwYWNlKCkge1xuICAgICAgZm9udC1mYW1pbHk6IEBtb25vRm9udEZhbWlseTtcbiAgICB9XG4gIH1cbiAgLnNob3J0aGFuZChAc2l6ZTogQGJhc2VGb250U2l6ZSwgQHdlaWdodDogbm9ybWFsLCBAbGluZUhlaWdodDogQGJhc2VMaW5lSGVpZ2h0KSB7XG4gICAgZm9udC1zaXplOiBAc2l6ZTtcbiAgICBmb250LXdlaWdodDogQHdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogQGxpbmVIZWlnaHQ7XG4gIH1cbiAgLnNlcmlmKEBzaXplOiBAYmFzZUZvbnRTaXplLCBAd2VpZ2h0OiBub3JtYWwsIEBsaW5lSGVpZ2h0OiBAYmFzZUxpbmVIZWlnaHQpIHtcbiAgICAjZm9udCA+ICNmYW1pbHkgPiAuc2VyaWY7XG4gICAgI2ZvbnQgPiAuc2hvcnRoYW5kKEBzaXplLCBAd2VpZ2h0LCBAbGluZUhlaWdodCk7XG4gIH1cbiAgLnNhbnMtc2VyaWYoQHNpemU6IEBiYXNlRm9udFNpemUsIEB3ZWlnaHQ6IG5vcm1hbCwgQGxpbmVIZWlnaHQ6IEBiYXNlTGluZUhlaWdodCkge1xuICAgICNmb250ID4gI2ZhbWlseSA+IC5zYW5zLXNlcmlmO1xuICAgICNmb250ID4gLnNob3J0aGFuZChAc2l6ZSwgQHdlaWdodCwgQGxpbmVIZWlnaHQpO1xuICB9XG4gIC5tb25vc3BhY2UoQHNpemU6IEBiYXNlRm9udFNpemUsIEB3ZWlnaHQ6IG5vcm1hbCwgQGxpbmVIZWlnaHQ6IEBiYXNlTGluZUhlaWdodCkge1xuICAgICNmb250ID4gI2ZhbWlseSA+IC5tb25vc3BhY2U7XG4gICAgI2ZvbnQgPiAuc2hvcnRoYW5kKEBzaXplLCBAd2VpZ2h0LCBAbGluZUhlaWdodCk7XG4gIH1cbn1cblxuXG4vLyBGT1JNU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTWl4aW4gZm9yIGZvcm0gZmllbGQgc3RhdGVzXG4uZm9ybUZpZWxkU3RhdGUoQHRleHRDb2xvcjogIzU1NSwgQGJvcmRlckNvbG9yOiAjY2NjLCBAYmFja2dyb3VuZENvbG9yOiAjZjVmNWY1KSB7XG4gIC8vIFNldCB0aGUgdGV4dCBjb2xvclxuICA+IGxhYmVsLFxuICAuaGVscC1ibG9jayxcbiAgLmhlbHAtaW5saW5lIHtcbiAgICBjb2xvcjogQHRleHRDb2xvcjtcbiAgfVxuICAvLyBTdHlsZSBpbnB1dHMgYWNjb3JkaW5nbHlcbiAgLmNoZWNrYm94LFxuICAucmFkaW8sXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBjb2xvcjogQHRleHRDb2xvcjtcbiAgICBib3JkZXItY29sb3I6IEBib3JkZXJDb2xvcjtcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKEBib3JkZXJDb2xvciwgMTAlKTtcbiAgICAgIC5ib3gtc2hhZG93KDAgMCA2cHggbGlnaHRlbihAYm9yZGVyQ29sb3IsIDIwJSkpO1xuICAgIH1cbiAgfVxuICAvLyBHaXZlIGEgc21hbGwgYmFja2dyb3VuZCBjb2xvciBmb3IgaW5wdXQtcHJlcGVuZC8tYXBwZW5kXG4gIC5pbnB1dC1wcmVwZW5kIC5hZGQtb24sXG4gIC5pbnB1dC1hcHBlbmQgLmFkZC1vbiB7XG4gICAgY29sb3I6IEB0ZXh0Q29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGJhY2tncm91bmRDb2xvcjtcbiAgICBib3JkZXItY29sb3I6IEB0ZXh0Q29sb3I7XG4gIH1cbn1cblxuXG5cbi8vIENTUzMgUFJPUEVSVElFU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQm9yZGVyIFJhZGl1c1xuLmJvcmRlci1yYWRpdXMoQHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IEByYWRpdXM7XG4gICAgIC1tb3otYm9yZGVyLXJhZGl1czogQHJhZGl1cztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xufVxuXG4vLyBEcm9wIHNoYWRvd3Ncbi5ib3gtc2hhZG93KEBzaGFkb3cpIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBAc2hhZG93O1xuICAgICAtbW96LWJveC1zaGFkb3c6IEBzaGFkb3c7XG4gICAgICAgICAgYm94LXNoYWRvdzogQHNoYWRvdztcbn1cblxuLy8gVHJhbnNpdGlvbnNcbi50cmFuc2l0aW9uKEB0cmFuc2l0aW9uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG4gICAgIC1tb3otdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG4gICAgICAtbXMtdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uc1xuLnJvdGF0ZShAZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKEBkZWdyZWVzKTtcbiAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoQGRlZ3JlZXMpO1xuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKEBkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZShAZGVncmVlcyk7XG59XG4uc2NhbGUoQHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZShAcmF0aW8pO1xuICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoQHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKEByYXRpbyk7XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZShAcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoQHJhdGlvKTtcbn1cbi50cmFuc2xhdGUoQHgsIEB5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoQHgsIEB5KTtcbiAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSk7XG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoQHgsIEB5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHkpO1xufVxuLnNrZXcoQHgsIEB5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KEB4LCBAeSk7XG4gICAgIC1tb3otdHJhbnNmb3JtOiBza2V3KEB4LCBAeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBza2V3KEB4LCBAeSk7XG4gICAgICAgLW8tdHJhbnNmb3JtOiBza2V3KEB4LCBAeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3KEB4LCBAeSk7XG59XG4udHJhbnNsYXRlM2QoQHgsIEB5LCBAeikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSwgQHopO1xuICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSwgQHopO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSwgQHopO1xuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSwgQHopO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSwgQHopO1xufVxuXG4vLyBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyBQcmV2ZW50IGJyb3dzZXJzIGZyb20gZmxpY2tlcmluZyB3aGVuIHVzaW5nIENTUyAzRCB0cmFuc2Zvcm1zLlxuLy8gRGVmYXVsdCB2YWx1ZSBpcyBgdmlzaWJsZWAsIGJ1dCBjYW4gYmUgY2hhbmdlZCB0byBgaGlkZGVuXG4vLyBTZWUgZ2l0IHB1bGwgaHR0cHM6Ly9naXRodWIuY29tL2Rhbm55a2VhbmUvYm9vdHN0cmFwLmdpdCBiYWNrZmFjZS12aXNpYmlsaXR5IGZvciBleGFtcGxlc1xuLmJhY2tmYWNlLXZpc2liaWxpdHkoQHZpc2liaWxpdHkpe1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IEB2aXNpYmlsaXR5O1xuICAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IEB2aXNpYmlsaXR5O1xuICAgICAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IEB2aXNpYmlsaXR5O1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IEB2aXNpYmlsaXR5O1xufVxuXG4vLyBCYWNrZ3JvdW5kIGNsaXBwaW5nXG4vLyBIZWFkcyB1cDogRkYgMy42IGFuZCB1bmRlciBuZWVkIFwicGFkZGluZ1wiIGluc3RlYWQgb2YgXCJwYWRkaW5nLWJveFwiXG4uYmFja2dyb3VuZC1jbGlwKEBjbGlwKSB7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiBAY2xpcDtcbiAgICAgLW1vei1iYWNrZ3JvdW5kLWNsaXA6IEBjbGlwO1xuICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogQGNsaXA7XG59XG5cbi8vIEJhY2tncm91bmQgc2l6aW5nXG4uYmFja2dyb3VuZC1zaXplKEBzaXplKXtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IEBzaXplO1xuICAgICAtbW96LWJhY2tncm91bmQtc2l6ZTogQHNpemU7XG4gICAgICAgLW8tYmFja2dyb3VuZC1zaXplOiBAc2l6ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IEBzaXplO1xufVxuXG5cbi8vIEJveCBzaXppbmdcbi5ib3gtc2l6aW5nKEBib3htb2RlbCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6IEBib3htb2RlbDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiBAYm94bW9kZWw7XG4gICAgICAtbXMtYm94LXNpemluZzogQGJveG1vZGVsO1xuICAgICAgICAgIGJveC1zaXppbmc6IEBib3htb2RlbDtcbn1cblxuLy8gVXNlciBzZWxlY3Rcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxuLnVzZXItc2VsZWN0KEBzZWxlY3QpIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogQHNlbGVjdDtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogQHNlbGVjdDtcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogQHNlbGVjdDtcbiAgICAgICAtby11c2VyLXNlbGVjdDogQHNlbGVjdDtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogQHNlbGVjdDtcbn1cblxuLy8gUmVzaXplIGFueXRoaW5nXG4ucmVzaXphYmxlKEBkaXJlY3Rpb24pIHtcbiAgcmVzaXplOiBAZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxuICBvdmVyZmxvdzogYXV0bzsgLy8gU2FmYXJpIGZpeFxufVxuXG4vLyBDU1MzIENvbnRlbnQgQ29sdW1uc1xuLmNvbnRlbnQtY29sdW1ucyhAY29sdW1uQ291bnQsIEBjb2x1bW5HYXA6IEBncmlkR3V0dGVyV2lkdGgpIHtcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IEBjb2x1bW5Db3VudDtcbiAgICAgLW1vei1jb2x1bW4tY291bnQ6IEBjb2x1bW5Db3VudDtcbiAgICAgICAgICBjb2x1bW4tY291bnQ6IEBjb2x1bW5Db3VudDtcbiAgLXdlYmtpdC1jb2x1bW4tZ2FwOiBAY29sdW1uR2FwO1xuICAgICAtbW96LWNvbHVtbi1nYXA6IEBjb2x1bW5HYXA7XG4gICAgICAgICAgY29sdW1uLWdhcDogQGNvbHVtbkdhcDtcbn1cblxuLy8gT3B0aW9uYWwgaHlwaGVuYXRpb25cbi5oeXBoZW5zKEBtb2RlOiBhdXRvKSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBAbW9kZTtcbiAgICAgLW1vei1oeXBoZW5zOiBAbW9kZTtcbiAgICAgIC1tcy1oeXBoZW5zOiBAbW9kZTtcbiAgICAgICAtby1oeXBoZW5zOiBAbW9kZTtcbiAgICAgICAgICBoeXBoZW5zOiBAbW9kZTtcbn1cblxuLy8gT3BhY2l0eVxuLm9wYWNpdHkoQG9wYWNpdHkpIHtcbiAgb3BhY2l0eTogQG9wYWNpdHkgLyAxMDA7XG4gIGZpbHRlcjogflwiYWxwaGEob3BhY2l0eT1Ae29wYWNpdHl9KVwiO1xufVxuXG5cblxuLy8gQkFDS0dST1VORFNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEFkZCBhbiBhbHBoYXRyYW5zcGFyZW5jeSB2YWx1ZSB0byBhbnkgYmFja2dyb3VuZCBvciBib3JkZXIgY29sb3IgKHZpYSBFbHlzZSBIb2xsYWRheSlcbiN0cmFuc2x1Y2VudCB7XG4gIC5iYWNrZ3JvdW5kKEBjb2xvcjogQHdoaXRlLCBAYWxwaGE6IDEpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBoc2xhKGh1ZShAY29sb3IpLCBzYXR1cmF0aW9uKEBjb2xvciksIGxpZ2h0bmVzcyhAY29sb3IpLCBAYWxwaGEpO1xuICB9XG4gIC5ib3JkZXIoQGNvbG9yOiBAd2hpdGUsIEBhbHBoYTogMSkge1xuICAgIGJvcmRlci1jb2xvcjogaHNsYShodWUoQGNvbG9yKSwgc2F0dXJhdGlvbihAY29sb3IpLCBsaWdodG5lc3MoQGNvbG9yKSwgQGFscGhhKTtcbiAgICAuYmFja2dyb3VuZC1jbGlwKHBhZGRpbmctYm94KTtcbiAgfVxufVxuXG4vLyBHcmFkaWVudCBCYXIgQ29sb3JzIGZvciBidXR0b25zIGFuZCBhbGVydHNcbi5ncmFkaWVudEJhcihAcHJpbWFyeUNvbG9yLCBAc2Vjb25kYXJ5Q29sb3IpIHtcbiAgI2dyYWRpZW50ID4gLnZlcnRpY2FsKEBwcmltYXJ5Q29sb3IsIEBzZWNvbmRhcnlDb2xvcik7XG4gIGJvcmRlci1jb2xvcjogQHNlY29uZGFyeUNvbG9yIEBzZWNvbmRhcnlDb2xvciBkYXJrZW4oQHNlY29uZGFyeUNvbG9yLCAxNSUpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjEpIHJnYmEoMCwwLDAsLjEpIGZhZGVpbihyZ2JhKDAsMCwwLC4xKSwgMTUlKTtcbn1cblxuLy8gR3JhZGllbnRzXG4jZ3JhZGllbnQge1xuICAuaG9yaXpvbnRhbChAc3RhcnRDb2xvcjogIzU1NSwgQGVuZENvbG9yOiAjMzMzKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGVuZENvbG9yO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBGRiAzLjYrXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gSUUxMFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDEwMCUgMCwgZnJvbShAc3RhcnRDb2xvciksIHRvKEBlbmRDb2xvcikpOyAvLyBTYWZhcmkgNCssIENocm9tZSAyK1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBTYWZhcmkgNS4xKywgQ2hyb21lIDEwK1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gT3BlcmEgMTEuMTBcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQobGVmdCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIExlIHN0YW5kYXJkXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyVkJywgZW5kQ29sb3JzdHI9JyVkJywgR3JhZGllbnRUeXBlPTEpXCIsQHN0YXJ0Q29sb3IsQGVuZENvbG9yKSk7IC8vIElFOSBhbmQgZG93blxuICB9XG4gIC52ZXJ0aWNhbChAc3RhcnRDb2xvcjogIzU1NSwgQGVuZENvbG9yOiAjMzMzKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KEBzdGFydENvbG9yLCBAZW5kQ29sb3IsIDYwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gRkYgMy42K1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gSUUxMFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbShAc3RhcnRDb2xvciksIHRvKEBlbmRDb2xvcikpOyAvLyBTYWZhcmkgNCssIENocm9tZSAyK1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIFNhZmFyaSA1LjErLCBDaHJvbWUgMTArXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIE9wZXJhIDExLjEwXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIFRoZSBzdGFuZGFyZFxuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBmaWx0ZXI6IGUoJShcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSclZCcsIGVuZENvbG9yc3RyPSclZCcsIEdyYWRpZW50VHlwZT0wKVwiLEBzdGFydENvbG9yLEBlbmRDb2xvcikpOyAvLyBJRTkgYW5kIGRvd25cbiAgfVxuICAuZGlyZWN0aW9uYWwoQHN0YXJ0Q29sb3I6ICM1NTUsIEBlbmRDb2xvcjogIzMzMywgQGRlZzogNDVkZWcpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAZW5kQ29sb3I7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KEBkZWcsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBGRiAzLjYrXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudChAZGVnLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gSUUxMFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KEBkZWcsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpOyAvLyBTYWZhcmkgNS4xKywgQ2hyb21lIDEwK1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChAZGVnLCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTsgLy8gT3BlcmEgMTEuMTBcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoQGRlZywgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7IC8vIFRoZSBzdGFuZGFyZFxuICB9XG4gIC52ZXJ0aWNhbC10aHJlZS1jb2xvcnMoQHN0YXJ0Q29sb3I6ICMwMGIzZWUsIEBtaWRDb2xvcjogIzdhNDNiNiwgQGNvbG9yU3RvcDogNTAlLCBAZW5kQ29sb3I6ICNjMzMyNWYpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoQG1pZENvbG9yLCBAZW5kQ29sb3IsIDgwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKEBzdGFydENvbG9yKSwgY29sb3Itc3RvcChAY29sb3JTdG9wLCBAbWlkQ29sb3IpLCB0byhAZW5kQ29sb3IpKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChAc3RhcnRDb2xvciwgQG1pZENvbG9yIEBjb2xvclN0b3AsIEBlbmRDb2xvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCBAc3RhcnRDb2xvciwgQG1pZENvbG9yIEBjb2xvclN0b3AsIEBlbmRDb2xvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudChAc3RhcnRDb2xvciwgQG1pZENvbG9yIEBjb2xvclN0b3AsIEBlbmRDb2xvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KEBzdGFydENvbG9yLCBAbWlkQ29sb3IgQGNvbG9yU3RvcCwgQGVuZENvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoQHN0YXJ0Q29sb3IsIEBtaWRDb2xvciBAY29sb3JTdG9wLCBAZW5kQ29sb3IpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nJWQnLCBlbmRDb2xvcnN0cj0nJWQnLCBHcmFkaWVudFR5cGU9MClcIixAc3RhcnRDb2xvcixAZW5kQ29sb3IpKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbiAgfVxuICAucmFkaWFsKEBpbm5lckNvbG9yOiAjNTU1LCBAb3V0ZXJDb2xvcjogIzMzMykgIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAb3V0ZXJDb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KHJhZGlhbCwgY2VudGVyIGNlbnRlciwgMCwgY2VudGVyIGNlbnRlciwgNDYwLCBmcm9tKEBpbm5lckNvbG9yKSwgdG8oQG91dGVyQ29sb3IpKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsIEBpbm5lckNvbG9yLCBAb3V0ZXJDb2xvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCBAaW5uZXJDb2xvciwgQG91dGVyQ29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCBAaW5uZXJDb2xvciwgQG91dGVyQ29sb3IpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLXJhZGlhbC1ncmFkaWVudChjaXJjbGUsIEBpbm5lckNvbG9yLCBAb3V0ZXJDb2xvcik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuICAuc3RyaXBlZChAY29sb3IsIEBhbmdsZTogLTQ1ZGVnKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDEwMCUsIDEwMCUgMCwgY29sb3Itc3RvcCguMjUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSksIGNvbG9yLXN0b3AoLjI1LCB0cmFuc3BhcmVudCksIGNvbG9yLXN0b3AoLjUsIHRyYW5zcGFyZW50KSwgY29sb3Itc3RvcCguNSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpKSwgY29sb3Itc3RvcCguNzUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSksIGNvbG9yLXN0b3AoLjc1LCB0cmFuc3BhcmVudCksIHRvKHRyYW5zcGFyZW50KSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoQGFuZ2xlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoQGFuZ2xlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudChAYW5nbGUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNTAlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoQGFuZ2xlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDUwJSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgcmdiYSgyNTUsMjU1LDI1NSwuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA1MCUsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICB9XG59XG4vLyBSZXNldCBmaWx0ZXJzIGZvciBJRVxuLnJlc2V0LWZpbHRlcigpIHtcbiAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKVwiKSk7XG59XG5cblxuXG4vLyBDT01QT05FTlQgTUlYSU5TXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBCdXR0b24gYmFja2dyb3VuZHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuLmJ1dHRvbkJhY2tncm91bmQoQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcikge1xuICAvLyBncmFkaWVudEJhciB3aWxsIHNldCB0aGUgYmFja2dyb3VuZCB0byBhIHBsZWFzaW5nIGJsZW5kIG9mIHRoZXNlLCB0byBzdXBwb3J0IElFPD05XG4gIC5ncmFkaWVudEJhcihAc3RhcnRDb2xvciwgQGVuZENvbG9yKTtcbiAgKmJhY2tncm91bmQtY29sb3I6IEBlbmRDb2xvcjsgLyogRGFya2VuIElFNyBidXR0b25zIGJ5IGRlZmF1bHQgc28gdGhleSBzdGFuZCBvdXQgbW9yZSBnaXZlbiB0aGV5IHdvbid0IGhhdmUgYm9yZGVycyAqL1xuICAucmVzZXQtZmlsdGVyKCk7XG5cbiAgLy8gaW4gdGhlc2UgY2FzZXMgdGhlIGdyYWRpZW50IHdvbid0IGNvdmVyIHRoZSBiYWNrZ3JvdW5kLCBzbyB3ZSBvdmVycmlkZVxuICAmOmhvdmVyLCAmOmFjdGl2ZSwgJi5hY3RpdmUsICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAZW5kQ29sb3I7XG4gICAgKmJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAZW5kQ29sb3IsIDUlKTtcbiAgfVxuXG4gIC8vIElFIDcgKyA4IGNhbid0IGhhbmRsZSBib3gtc2hhZG93IHRvIHNob3cgYWN0aXZlLCBzbyB3ZSBkYXJrZW4gYSBiaXQgb3Vyc2VsdmVzXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBlbmRDb2xvciwgMTAlKSBlKFwiXFw5XCIpO1xuICB9XG59XG5cbi8vIE5hdmJhciB2ZXJ0aWNhbCBhbGlnblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVmVydGljYWxseSBjZW50ZXIgZWxlbWVudHMgaW4gdGhlIG5hdmJhci5cbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhclZlcnRpY2FsQWxpZ24oMzBweCk7YCB0byBjYWxjdWxhdGUgdGhlIGFwcHJvcHJpYXRlIHRvcCBtYXJnaW4uXG4ubmF2YmFyVmVydGljYWxBbGlnbihAZWxlbWVudEhlaWdodCkge1xuICBtYXJnaW4tdG9wOiAoQG5hdmJhckhlaWdodCAtIEBlbGVtZW50SGVpZ2h0KSAvIDI7XG59XG5cbi8vIFBvcG92ZXIgYXJyb3dzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBGb3IgdGlwc2llcyBhbmQgcG9wb3ZlcnNcbiNwb3BvdmVyQXJyb3cge1xuICAudG9wKEBhcnJvd1dpZHRoOiA1cHgsIEBjb2xvcjogQGJsYWNrKSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLUBhcnJvd1dpZHRoO1xuICAgIGJvcmRlci1sZWZ0OiBAYXJyb3dXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IEBhcnJvd1dpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3A6IEBhcnJvd1dpZHRoIHNvbGlkIEBjb2xvcjtcbiAgfVxuICAubGVmdChAYXJyb3dXaWR0aDogNXB4LCBAY29sb3I6IEBibGFjaykge1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IC1AYXJyb3dXaWR0aDtcbiAgICBib3JkZXItdG9wOiBAYXJyb3dXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiBAYXJyb3dXaWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogQGFycm93V2lkdGggc29saWQgQGNvbG9yO1xuICB9XG4gIC5ib3R0b20oQGFycm93V2lkdGg6IDVweCwgQGNvbG9yOiBAYmxhY2spIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtQGFycm93V2lkdGg7XG4gICAgYm9yZGVyLWxlZnQ6IEBhcnJvd1dpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogQGFycm93V2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogQGFycm93V2lkdGggc29saWQgQGNvbG9yO1xuICB9XG4gIC5yaWdodChAYXJyb3dXaWR0aDogNXB4LCBAY29sb3I6IEBibGFjaykge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogLUBhcnJvd1dpZHRoO1xuICAgIGJvcmRlci10b3A6IEBhcnJvd1dpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IEBhcnJvd1dpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogQGFycm93V2lkdGggc29saWQgQGNvbG9yO1xuICB9XG59XG5cbi8vIEdyaWQgU3lzdGVtXG4vLyAtLS0tLS0tLS0tLVxuXG4vLyBDZW50ZXJlZCBjb250YWluZXIgZWxlbWVudFxuLmNvbnRhaW5lci1maXhlZCgpIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgLmNsZWFyZml4KCk7XG59XG5cbi8vIFRhYmxlIGNvbHVtbnNcbi50YWJsZUNvbHVtbnMoQGNvbHVtblNwYW46IDEpIHtcbiAgZmxvYXQ6IG5vbmU7IC8vIHVuZG8gZGVmYXVsdCBncmlkIGNvbHVtbiBzdHlsZXNcbiAgd2lkdGg6ICgoQGZsdWlkR3JpZENvbHVtbldpZHRoKSAqIEBjb2x1bW5TcGFuKSArIChAZmx1aWRHcmlkR3V0dGVyV2lkdGggKiAoQGNvbHVtblNwYW4gLSAxKSkgLSAxNjsgLy8gMTYgaXMgdG90YWwgcGFkZGluZyBvbiBsZWZ0IGFuZCByaWdodCBvZiB0YWJsZSBjZWxsc1xuICBtYXJnaW4tbGVmdDogMDsgLy8gdW5kbyBkZWZhdWx0IGdyaWQgY29sdW1uIHN0eWxlc1xufVxuXG4vLyBNYWtlIGEgR3JpZFxuLy8gVXNlIC5tYWtlUm93IGFuZCAubWFrZUNvbHVtbiB0byBhc3NpZ24gc2VtYW50aWMgbGF5b3V0cyBncmlkIHN5c3RlbSBiZWhhdmlvclxuLm1ha2VSb3coKSB7XG4gIG1hcmdpbi1sZWZ0OiBAZ3JpZEd1dHRlcldpZHRoICogLTE7XG4gIC5jbGVhcmZpeCgpO1xufVxuLm1ha2VDb2x1bW4oQGNvbHVtbnM6IDEsIEBvZmZzZXQ6IDApIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAoQGdyaWRDb2x1bW5XaWR0aCAqIEBvZmZzZXQpICsgKEBncmlkR3V0dGVyV2lkdGggKiAoQG9mZnNldCAtIDEpKSArIChAZ3JpZEd1dHRlcldpZHRoICogMik7XG4gIHdpZHRoOiAoQGdyaWRDb2x1bW5XaWR0aCAqIEBjb2x1bW5zKSArIChAZ3JpZEd1dHRlcldpZHRoICogKEBjb2x1bW5zIC0gMSkpO1xufVxuXG4vLyBUaGUgR3JpZFxuI2dyaWQge1xuXG4gIC5jb3JlIChAZ3JpZENvbHVtbldpZHRoLCBAZ3JpZEd1dHRlcldpZHRoKSB7XG5cbiAgICAuc3BhblggKEBpbmRleCkgd2hlbiAoQGluZGV4ID4gMCkge1xuICAgICAgLnNwYW5Ae2luZGV4fSB7IC5zcGFuKEBpbmRleCk7IH1cbiAgICAgIC5zcGFuWChAaW5kZXggLSAxKTtcbiAgICB9XG4gICAgLnNwYW5YICgwKSB7fVxuXG4gICAgLm9mZnNldFggKEBpbmRleCkgd2hlbiAoQGluZGV4ID4gMCkge1xuICAgICAgLm9mZnNldEB7aW5kZXh9IHsgLm9mZnNldChAaW5kZXgpOyB9XG4gICAgICAub2Zmc2V0WChAaW5kZXggLSAxKTtcbiAgICB9XG4gICAgLm9mZnNldFggKDApIHt9XG5cbiAgICAub2Zmc2V0IChAY29sdW1ucykge1xuICAgICAgbWFyZ2luLWxlZnQ6IChAZ3JpZENvbHVtbldpZHRoICogQGNvbHVtbnMpICsgKEBncmlkR3V0dGVyV2lkdGggKiAoQGNvbHVtbnMgKyAxKSk7XG4gICAgfVxuXG4gICAgLnNwYW4gKEBjb2x1bW5zKSB7XG4gICAgICB3aWR0aDogKEBncmlkQ29sdW1uV2lkdGggKiBAY29sdW1ucykgKyAoQGdyaWRHdXR0ZXJXaWR0aCAqIChAY29sdW1ucyAtIDEpKTtcbiAgICB9XG5cbiAgICAucm93IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBAZ3JpZEd1dHRlcldpZHRoICogLTE7XG4gICAgICAuY2xlYXJmaXgoKTtcbiAgICB9XG5cbiAgICBbY2xhc3MqPVwic3BhblwiXSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBAZ3JpZEd1dHRlcldpZHRoO1xuICAgIH1cblxuICAgIC8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllc1xuICAgIC5jb250YWluZXIsXG4gICAgLm5hdmJhci1maXhlZC10b3AgLmNvbnRhaW5lcixcbiAgICAubmF2YmFyLWZpeGVkLWJvdHRvbSAuY29udGFpbmVyIHsgLnNwYW4oQGdyaWRDb2x1bW5zKTsgfVxuXG4gICAgLy8gZ2VuZXJhdGUgLnNwYW5YIGFuZCAub2Zmc2V0WFxuICAgIC5zcGFuWCAoQGdyaWRDb2x1bW5zKTtcbiAgICAub2Zmc2V0WCAoQGdyaWRDb2x1bW5zKTtcblxuICB9XG5cbiAgLmZsdWlkIChAZmx1aWRHcmlkQ29sdW1uV2lkdGgsIEBmbHVpZEdyaWRHdXR0ZXJXaWR0aCkge1xuXG4gICAgLnNwYW5YIChAaW5kZXgpIHdoZW4gKEBpbmRleCA+IDApIHtcbiAgICAgIC5zcGFuQHtpbmRleH0geyAuc3BhbihAaW5kZXgpOyB9XG4gICAgICAuc3BhblgoQGluZGV4IC0gMSk7XG4gICAgfVxuICAgIC5zcGFuWCAoMCkge31cblxuICAgIC5zcGFuIChAY29sdW1ucykge1xuICAgICAgd2lkdGg6IChAZmx1aWRHcmlkQ29sdW1uV2lkdGggKiBAY29sdW1ucykgKyAoQGZsdWlkR3JpZEd1dHRlcldpZHRoICogKEBjb2x1bW5zIC0gMSkpO1xuICAgICAgKndpZHRoOiAoQGZsdWlkR3JpZENvbHVtbldpZHRoICogQGNvbHVtbnMpICsgKEBmbHVpZEdyaWRHdXR0ZXJXaWR0aCAqIChAY29sdW1ucyAtIDEpKSAtICguNSAvIEBncmlkUm93V2lkdGggKiAxMDAgKiAxJSk7XG4gICAgfVxuXG4gICAgLnJvdy1mbHVpZCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIC5jbGVhcmZpeCgpO1xuICAgICAgW2NsYXNzKj1cInNwYW5cIl0ge1xuICAgICAgICAuaW5wdXQtYmxvY2stbGV2ZWwoKTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBAZmx1aWRHcmlkR3V0dGVyV2lkdGg7XG4gICAgICAgICptYXJnaW4tbGVmdDogQGZsdWlkR3JpZEd1dHRlcldpZHRoIC0gKC41IC8gQGdyaWRSb3dXaWR0aCAqIDEwMCAqIDElKTtcbiAgICAgIH1cbiAgICAgIFtjbGFzcyo9XCJzcGFuXCJdOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIGdlbmVyYXRlIC5zcGFuWFxuICAgICAgLnNwYW5YIChAZ3JpZENvbHVtbnMpO1xuICAgIH1cblxuICB9XG5cbiAgLmlucHV0KEBncmlkQ29sdW1uV2lkdGgsIEBncmlkR3V0dGVyV2lkdGgpIHtcblxuICAgIC5zcGFuWCAoQGluZGV4KSB3aGVuIChAaW5kZXggPiAwKSB7XG4gICAgICBpbnB1dC5zcGFuQHtpbmRleH0sIHRleHRhcmVhLnNwYW5Ae2luZGV4fSwgLnVuZWRpdGFibGUtaW5wdXQuc3BhbkB7aW5kZXh9IHsgLnNwYW4oQGluZGV4KTsgfVxuICAgICAgLnNwYW5YKEBpbmRleCAtIDEpO1xuICAgIH1cbiAgICAuc3BhblggKDApIHt9XG5cbiAgICAuc3BhbihAY29sdW1ucykge1xuICAgICAgd2lkdGg6ICgoQGdyaWRDb2x1bW5XaWR0aCkgKiBAY29sdW1ucykgKyAoQGdyaWRHdXR0ZXJXaWR0aCAqIChAY29sdW1ucyAtIDEpKSAtIDEwO1xuICAgIH1cblxuICAgIGlucHV0LFxuICAgIHRleHRhcmVhLFxuICAgIC51bmVkaXRhYmxlLWlucHV0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyAvLyBvdmVycmlkZSBtYXJnaW4tbGVmdCBmcm9tIGNvcmUgZ3JpZCBzeXN0ZW1cbiAgICB9XG5cbiAgICAvLyBnZW5lcmF0ZSAuc3BhblhcbiAgICAuc3BhblggKEBncmlkQ29sdW1ucyk7XG5cbiAgfVxuXG59XG5cbi5kYXJrTGlnaHQgKEBhKSB3aGVuIChsaWdodG5lc3MoQGEpID49IDUwJSkge1xuICBjb2xvcjogQGdyYXlEYXJrZXI7XG59XG4uZGFya0xpZ2h0IChAYSkgd2hlbiAobGlnaHRuZXNzKEBhKSA8IDUwJSkge1xuICBjb2xvcjogQHdoaXRlO1xufVxuIiwiYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IEBiYXNlRm9udEZhbWlseTtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICBmb250LXdlaWdodDogQGJhc2VGb250V2VpZ2h0O1xuICBsaW5lLWhlaWdodDogQGJhc2VMaW5lSGVpZ2h0O1xuICBjb2xvcjogQHRleHRDb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGJvZHlCYWNrZ3JvdW5kO1xufVxuI3BhZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcGFnZUJhY2tncm91bmQ7XG4gIHBhZGRpbmc6IDAgMjBweDtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIExpbmtzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5hIHtcbiAgY29sb3I6IEBsaW5rQ29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IEBsaW5rQ29sb3JIb3ZlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAmLm1vcmUtbGluayB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gR2VuZXJhbCBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5wLFxuZGwsXG5ocixcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbm9sLFxudWwsXG5wcmUsXG50YWJsZSxcbmFkZHJlc3MsXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMCAwIEBiYXNlbGluZTtcbn1cbmgxIHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMy4zNzU7XG4gICYuZW50cnktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDIuNzU7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMjtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxufVxuaDIge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAyLjc1O1xufVxuaDMge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAyLjI1O1xufVxuaDQsXG4uZW50cnktY29udGVudCBoMSxcbi5lbnRyeS1jb250ZW50IGgyLFxuLmVudHJ5LWNvbnRlbnQgaDMge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjgzMztcbn1cbmg1LFxuLnN0b3JpZXMgaDMsXG4uZW50cnktY29udGVudCBoNCB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcbn1cbmg1LnRvcC10YWcsXG4ud2lkZ2V0IGg1LnRvcC10YWcsXG4uZW50cnktY29udGVudCBoNS50b3AtdGFnIHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUvNTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IEBncmF5TGlnaHQ7XG4gIGEge1xuICAgIGNvbG9yOiBAZ3JheUxpZ2h0O1xuICB9XG59XG5oNixcbi5lbnRyeS1jb250ZW50IGg1IHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yMjI7XG59XG4uZW50cnktY29udGVudCBoNiB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBmb250LWZhbWlseTogQGhlYWRpbmdzRm9udEZhbWlseTtcbiAgZm9udC13ZWlnaHQ6IEBoZWFkaW5nc0ZvbnRXZWlnaHQ7XG4gIGNvbG9yOiBAaGVhZGluZ3NDb2xvcjtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplbGVnaWJpbGl0eTtcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC44MTVlbTtcbiAgfVxufVxuLmVudHJ5LWNvbnRlbnQgaDIsXG4uZW50cnktY29udGVudCBoMyxcbi5lbnRyeS1jb250ZW50IGg0LFxuLmVudHJ5LWNvbnRlbnQgaDUsXG4uZW50cnktY29udGVudCBoNiB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZTtcbn1cbnAge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjIyMjtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbWFyZ2luOiAwIDAgQGJhc2VsaW5lO1xuICBzbWFsbCxcbiAgJi5zbWFsbCB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMC44MTU7XG4gICAgY29sb3I6IEBncmF5TGlnaHQ7XG4gIH1cbiAgJi54c21hbGwge1xuXHRmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjY2Nztcblx0Y29sb3I6IEBncmF5TGlnaHQ7XG4gIH1cbiAgJi5pbnRybyB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS41O1xuICAgIGNvbG9yOiBAZ3JheTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cbn1cblxudWwsIG9sIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwIDAgQGJhc2VsaW5lIDI1cHg7XG59XG4uZW50cnktY29udGVudCB7XG4gIHVsLFxuICBvbCB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yMjI7XG4gIH1cbn1cbnVsIHVsLFxudWwgb2wsXG5vbCBvbCxcbm9sIHVsIHtcbiAgbWFyZ2luLXRvcDogQGJhc2VsaW5lIC8gMztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbnVsIHtcbiAgbGlzdC1zdHlsZTogZGlzYztcbn1cbm9sIHtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbiAgb2wge1xuICAgIGxpc3Qtc3R5bGU6IGxvd2VyLWFscGhhO1xuICAgIG9sIHtcblx0ICBsaXN0LXN0eWxlOiBsb3dlci1yb21hbjtcbiAgICB9XG4gIH1cbn1cbmxpIHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lICogMC41O1xufVxudWwudW5zdHlsZWQsXG5vbC51bnN0eWxlZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuZGwgZHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbmRkIHtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cbnN0cm9uZywgZGZuIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5lbSwgZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuYWJiciwgYWNyb255bSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgQGdyYXlMaWdodDtcbn1cbmFkZHJlc3Mge1xuICBtYXJnaW46IDAgMCBAYmFzZWxpbmU7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbmRlbCB7XG4gIGNvbG9yOiBAZ3JheUxpZ2h0O1xufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRmFuY3kgUG9zdCBGb3JtYXR0aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5ibG9ja3F1b3RlIHtcbiAgY2xlYXI6IGJvdGg7XG4gIHBhZGRpbmc6IDVweCAxNXB4IDVweCAzMHB4O1xuICBtYXJnaW46IEBiYXNlbGluZTtcbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgICBtYXJnaW46IEBiYXNlbGluZS8yIDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxuICBzbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6IEBiYXNlbGluZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDE0IFxcMDBBMCc7XG4gICAgfVxuICB9XG4gIC8vIEZsb2F0IHJpZ2h0IHdpdGggdGV4dC1hbGlnbjogcmlnaHRcbiAgJi5wdWxsLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodDogNXB4IHNvbGlkIEBncmF5TGlnaHRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBwLFxuICAgIHNtYWxsIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG5jb2RlLFxucHJlIHtcbiAgcGFkZGluZzogMCAzcHggMnB4O1xuICAjZm9udCA+ICNmYW1pbHkgPiAubW9ub3NwYWNlO1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgLSAyO1xuICBjb2xvcjogQGdyYXlEYXJrO1xufVxuXG4vLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGNvbG9yOiAjZDE0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y5O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTFlMWU4O1xufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IEBiYXNlbGluZSAvIDI7XG4gIG1hcmdpbjogMCAwIEBiYXNlbGluZTtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogLjkyNTsgLy8gMTNweCB0byAxMnB4XG4gIGxpbmUtaGVpZ2h0OiBAYmFzZWxpbmU7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7IC8vIGZhbGxiYWNrIGZvciBJRTctOFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4xNSk7XG5cbiAgLy8gTWFrZSBwcmV0dHlwcmludCBzdHlsZXMgbW9yZSBzcGFjZWQgb3V0IGZvciByZWFkYWJpbGl0eVxuICAmLnByZXR0eXByaW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmU7XG4gIH1cblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogMzQwcHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuaHIge1xuICBtYXJnaW46IEBiYXNlbGluZSAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAd2hpdGU7XG59XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ09MT1Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEdyYXlzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AYmxhY2s6ICAgICAgICAgICAgICAgICAjMDAwO1xuQGdyYXlEYXJrZXI6ICAgICAgICAgICAgIzIyMjtcbkBncmF5RGFyazogICAgICAgICAgICAgICM0ODQ4NDg7XG5AZ3JheTogICAgICAgICAgICAgICAgICAjN0Q4MTg1O1xuQGdyYXlMaWdodDogICAgICAgICAgICAgI2FhYTtcbkBncmF5TGlnaHRlcjogICAgICAgICAgICNkZGQ7XG5Ad2hpdGU6ICAgICAgICAgICAgICAgICAjZmZmO1xuXG5cbi8vIEFjY2VudCBjb2xvcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBibHVlOiAgICAgICAgICAgICAgICAgICMyMjc1YmI7XG5AYmx1ZURhcms6ICAgICAgICAgICAgICAjMDA2NGNkO1xuQGdyZWVuOiAgICAgICAgICAgICAgICAgIzQ2YTU0NjtcbkByZWQ6ICAgICAgICAgICAgICAgICAgICNiZDI2MWQ7XG5AeWVsbG93OiAgICAgICAgICAgICAgICAjZmZjNDBkO1xuQG9yYW5nZTogICAgICAgICAgICAgICAgI2Y4OTQwNjtcbkBwaW5rOiAgICAgICAgICAgICAgICAgICNjMzMyNWY7XG5AcHVycGxlOiAgICAgICAgICAgICAgICAjN2E0M2I2O1xuXG4vKipcbiAqIEBncm91cCBDb2xvclxuICogQGxhYmVsIEJhc2UgQ29sb3IgKHVzZWQgZm9yIG5hdmJhciwgd2lkZ2V0IHRpdGxlcywgZXRjLilcbiAqIEB0eXBlIGNvbG9yXG4gKiBAZGVmYXVsdF92YWx1ZSAjMjI3NWJiXG4gKi9cbkBiYXNlQ29sb3I6XHRcdFx0XHRAYmx1ZTtcblxuLyoqXG4gKiBAZ3JvdXAgQ29sb3JcbiAqIEBsYWJlbCBIZWFkZXIvRm9vdGVyIENvbG9yXG4gKiBAdHlwZSBjb2xvclxuICogQGRlZmF1bHRfdmFsdWUgIzIyMlxuICovXG5AaGVhZGVyRm9vdGVyQ29sb3I6XHRcdEBncmF5RGFya2VyO1xuXG4vKipcbiAqIEBncm91cCBDb2xvclxuICogQGxhYmVsIFByZS1Gb290ZXIgQ29sb3JcbiAqIEB0eXBlIGNvbG9yXG4gKiBAZGVmYXVsdF92YWx1ZSAjZGRkXG4gKi9cbkBwcmVGb290ZXJDb2xvcjpcdFx0QGdyYXlMaWdodGVyO1xuXG4vKipcbiAqIEBncm91cCBDb2xvclxuICogQGxhYmVsIENvbG9yIG9mIGxpbmtzXG4gKiBAdHlwZSBjb2xvclxuICogQGRlZmF1bHRfdmFsdWUgIzIyNzViYlxuICovXG5AbGlua0NvbG9yOiAgICAgICAgICAgICBAYmx1ZTtcblxuLyoqXG4gKiBAZ3JvdXAgQ29sb3JcbiAqIEBsYWJlbCBIb3ZlciBjb2xvciBvZiBsaW5rc1xuICogQHR5cGUgY29sb3JcbiAqIEBkZWZhdWx0X3ZhbHVlICMyMjc1YmJcbiAqL1xuQGxpbmtDb2xvckhvdmVyOiAgICAgICAgbGlnaHRlbihAbGlua0NvbG9yLCAxMCUpO1xuXG4vKipcbiAqIEBncm91cCBDb2xvclxuICogQGxhYmVsIEJhY2tncm91bmQgY29sb3Igb2YgcG9zdCBtZXRhIGJveGVzIChhdXRob3IgYmlvLCByZWxhdGVkIHBvc3RzLCBldGMuKVxuICogQHR5cGUgY29sb3JcbiAqIEBkZWZhdWx0X3ZhbHVlICNmZmZcbiAqL1xuQHBvc3RCb3hCYWNrZ3JvdW5kQ29sb3I6XHQjZmZmO1xuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBMQVlPVVRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBjb250YWluZXJNYXhXaWR0aDpcdFx0MTE3MHB4O1xuXG4vKipcbiAqIEBncm91cCBCYXNpY3NcbiAqIEBsYWJlbCBCb2R5IEJhY2tncm91bmQgQ29sb3JcbiAqIEB0eXBlIGNvbG9yXG4gKiBAZGVmYXVsdF92YWx1ZSAjZmZmXG4gKi9cbkBib2R5QmFja2dyb3VuZDogICAgICAgIEB3aGl0ZTtcblxuLyoqXG4gKiBAZ3JvdXAgQmFzaWNzXG4gKiBAbGFiZWwgUGFnZSBCYWNrZ3JvdW5kIENvbG9yXG4gKiBAdHlwZSBjb2xvclxuICogQGRlZmF1bHRfdmFsdWUgI2ZmZlxuICovXG5AcGFnZUJhY2tncm91bmQ6ICAgICAgICBAd2hpdGU7XG5cbi8qKlxuICogQGdyb3VwIEJhc2ljc1xuICogQGxhYmVsIFRleHQgQ29sb3JcbiAqIEB0eXBlIGNvbG9yXG4gKiBAZGVmYXVsdF92YWx1ZSAjMzMzXG4gKi9cbkB0ZXh0Q29sb3I6ICAgICAgICAgICAgIEBncmF5RGFyaztcbi8qKlxuICogQGdyb3VwIEJhc2ljc1xuICogQGxhYmVsIERlZmF1bHQgVmVydGljYWwgU3BhY2luZ1xuICogQHR5cGUgcGl4ZWxzXG4gKiBAZGVmYXVsdF92YWx1ZSAyNHB4XG4gKi9cbkBiYXNlbGluZTpcdFx0XHRcdDI0cHg7XG5cbi8vIEdyaWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBncmlkQ29sdW1uczogICAgICAgICAgICAgMTI7XG5AZmx1aWRHcmlkQ29sdW1uV2lkdGg6ICAgIDYuMzgyOTc4NzIzJTtcbkBmbHVpZEdyaWRHdXR0ZXJXaWR0aDogICAgMi4xMjc2NTk1NzQlO1xuQGdyaWRSb3dXaWR0aDogICAgICAgICAgICAxMDAlO1xuXG4vLyBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGhpZ2hkZW5zaXR5OiB+XCJvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KVwiLFxuICAgICAgICAgICAgICB+XCJvbmx5IHNjcmVlbiBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KVwiLFxuICAgICAgICAgICAgICB+XCJvbmx5IHNjcmVlbiBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMvMiApXCIsXG4gICAgICAgICAgICAgIH5cIm9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KVwiO1xuXG5AbW9iaWxlOiAgICAgIH5cIm9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MjlweClcIjtcblxuQHRhYmxldDogICAgICB+XCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5NzlweClcIjtcbkB0YWJsZXREb3duOiAgflwib25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk3OXB4KVwiO1xuQHRhYmxldFVwOiAgICB+XCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpXCI7XG5cbkBkZXNrdG9wOiAgICAgflwib25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk4MHB4KSBhbmQgKG1heC13aWR0aDogMTEyOHB4KVwiO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVFlQT0dSQVBIWVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLyoqXG4gKiBAZ3JvdXAgVHlwb2dyYXBoeVxuICogQGxhYmVsIFNhbnMgRm9udCBGYW1pbHlcbiAqIEB0eXBlIHRleHRcbiAqIEBkZWZhdWx0X3ZhbHVlIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZlxuICovXG5Ac2Fuc0ZvbnRGYW1pbHk6ICAgICAgICBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG5cbi8qKlxuICogQGdyb3VwIFR5cG9ncmFwaHlcbiAqIEBsYWJlbCBTZXJpZiBGb250IEZhbWlseVxuICogQHR5cGUgdGV4dFxuICovXG5Ac2VyaWZGb250RmFtaWx5OiAgICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWY7XG5AbW9ub0ZvbnRGYW1pbHk6ICAgICAgICBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2U7XG5cbi8qKlxuICogQGdyb3VwIFR5cG9ncmFwaHlcbiAqIEBsYWJlbCBCYXNlIEZvbnQgU2l6ZVxuICogQHR5cGUgcGl4ZWxzXG4gKi9cbkBiYXNlRm9udFNpemU6ICAgICAgICAgIDE2cHg7XG5cbi8qKlxuICogQGdyb3VwIFR5cG9ncmFwaHlcbiAqIEBsYWJlbCBTYW5zIEZvbnQgRmFtaWx5XG4gKiBAdHlwZSBkcm9wZG93blxuICogQG9wdGlvbnMgQHNlcmlmRm9udEZhbWlseXxAc2Fuc0ZvbnRGYW1pbHlcbiAqIEBkZWZhdWx0X3ZhbHVlIEBzZXJpZkZvbnRGYW1pbHlcbiAqL1xuQGJhc2VGb250RmFtaWx5OiAgICAgICAgQHNlcmlmRm9udEZhbWlseTtcbi8qKlxuICogQGdyb3VwIFR5cG9ncmFwaHlcbiAqIEBsYWJlbCBCYXNlIExpbmUgSGVpZ2h0XG4gKiBAdHlwZSB0ZXh0XG4gKiBAZGVmYXVsdF92YWx1ZSAxLjVcbiAqL1xuQGJhc2VMaW5lSGVpZ2h0OiAgICAgICAgMS41O1xuXG5AYWx0Rm9udEZhbWlseTogICAgICAgICBAc2Fuc0ZvbnRGYW1pbHk7XG5AYmFzZUZvbnRXZWlnaHQ6XHRcdG5vcm1hbDtcblxuQGhlYWRpbmdzRm9udEZhbWlseTogICAgQHNhbnNGb250RmFtaWx5OyAvLyBlbXB0eSB0byB1c2UgZGVmYXVsdCwgQGJhc2VGb250RmFtaWx5XG5AaGVhZGluZ3NGb250V2VpZ2h0OiAgICBib2xkOyAvLyBlbXB0eSB0byB1c2UgZGVmYXVsdCwgQGJhc2VGb250V2VpZ2h0XG5AaGVhZGluZ3NDb2xvcjogICAgICAgICBpbmhlcml0OyAvLyBlbXB0eSB0byB1c2UgZGVmYXVsdCwgQHRleHRDb2xvclxuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBGT1JNUywgVEFCTEVTIEFORCBCVVRUT05TXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBUYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkB0YWJsZUJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50OyAvLyBvdmVyYWxsIGJhY2tncm91bmQtY29sb3JcbkB0YWJsZUJhY2tncm91bmRBY2NlbnQ6ICAgICAgICAgICAgICNmOWY5Zjk7IC8vIGZvciBzdHJpcGluZ1xuQHRhYmxlQmFja2dyb3VuZEhvdmVyOiAgICAgICAgICAgICAgI2Y1ZjVmNTsgLy8gZm9yIGhvdmVyXG5AdGFibGVCb3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAjZGRkOyAvLyB0YWJsZSBhbmQgY2VsbCBib3JkZXJcblxuXG4vLyBCdXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AYnRuQmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICBAd2hpdGU7XG5AYnRuQmFja2dyb3VuZEhpZ2hsaWdodDogICAgICAgICAgICBkYXJrZW4oQHdoaXRlLCAxMCUpO1xuQGJ0bkJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgI2NjYztcblxuQGJ0blByaW1hcnlCYWNrZ3JvdW5kOiAgICAgICAgICAgICAgQGJhc2VDb2xvcjtcbkBidG5QcmltYXJ5QmFja2dyb3VuZEhpZ2hsaWdodDogICAgIHNwaW4oQGJ0blByaW1hcnlCYWNrZ3JvdW5kLCAxNSUpO1xuXG5cbi8vIEZvcm1zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AaW5wdXRCYWNrZ3JvdW5kOiAgICAgICAgICAgICAgIEB3aGl0ZTtcbkBpbnB1dEJvcmRlcjogICAgICAgICAgICAgICAgICAgI2NjYztcbkBpbnB1dEJvcmRlclJhZGl1czogICAgICAgICAgICAgM3B4O1xuQGlucHV0RGlzYWJsZWRCYWNrZ3JvdW5kOiAgICAgICBAZ3JheUxpZ2h0ZXI7XG5AZm9ybUFjdGlvbnNCYWNrZ3JvdW5kOiAgICAgICAgICNmNWY1ZjU7XG5cbkBwbGFjZWhvbGRlclRleHQ6ICAgICAgICAgQGdyYXlMaWdodDtcblxuXG4vLyBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Ad2FybmluZ1RleHQ6ICAgICAgICAgICAgICNjMDk4NTM7XG5Ad2FybmluZ0JhY2tncm91bmQ6ICAgICAgICNmY2Y4ZTM7XG5Ad2FybmluZ0JvcmRlcjogICAgICAgICAgIGRhcmtlbihzcGluKEB3YXJuaW5nQmFja2dyb3VuZCwgLTEwKSwgMyUpO1xuXG5AZXJyb3JUZXh0OiAgICAgICAgICAgICAgICNiOTRhNDg7XG5AZXJyb3JCYWNrZ3JvdW5kOiAgICAgICAgICNmMmRlZGU7XG5AZXJyb3JCb3JkZXI6ICAgICAgICAgICAgIGRhcmtlbihzcGluKEBlcnJvckJhY2tncm91bmQsIC0xMCksIDMlKTtcblxuQHN1Y2Nlc3NUZXh0OiAgICAgICAgICAgICAjNDY4ODQ3O1xuQHN1Y2Nlc3NCYWNrZ3JvdW5kOiAgICAgICAjZGZmMGQ4O1xuQHN1Y2Nlc3NCb3JkZXI6ICAgICAgICAgICBkYXJrZW4oc3BpbihAc3VjY2Vzc0JhY2tncm91bmQsIC0xMCksIDUlKTtcblxuQGluZm9UZXh0OiAgICAgICAgICAgICAgICAjM2E4N2FkO1xuQGluZm9CYWNrZ3JvdW5kOiAgICAgICAgICAjZDllZGY3O1xuQGluZm9Cb3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oc3BpbihAaW5mb0JhY2tncm91bmQsIC0xMCksIDclKTtcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQHppbmRleERyb3Bkb3duOiAgICAgICAgICAxMDAwO1xuQHppbmRleFBvcG92ZXI6ICAgICAgICAgICAxMDEwO1xuQHppbmRleFRvb2x0aXA6ICAgICAgICAgICAxMDIwO1xuQHppbmRleEZpeGVkTmF2YmFyOiAgICAgICAxMDMwO1xuQHppbmRleE1vZGFsQmFja2Ryb3A6ICAgICAxMDQwO1xuQHppbmRleE1vZGFsOiAgICAgICAgICAgICAxMDUwO1xuXG4vLyBOYXZiYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBuYXZiYXJIZWlnaHQ6ICAgICAgICAgICAgICAgICAgICA0MHB4O1xuQG5hdmJhckZvbnRTaXplOiAgICAgICAgICAgICAgICAgIDE1cHg7XG5AbmF2YmFyQmFja2dyb3VuZDogICAgICAgICAgICAgICAgQGJvZHlCYWNrZ3JvdW5kO1xuLy8gTmF2YmFyIGJ1dHRvbiAoYnVyZ2VyKSBmb3IgdG9nZ2xpbmcgbmF2YmFyIGl0ZW1zIGluIHJlc3BvbnNpdmUgbGF5b3V0c1xuQGljb25iYXJIZWlnaHQ6IDNweDtcblxuICAgIC8vIE5hdmJhciBkcm9wZG93bnNcbiAgICBAZHJvcGRvd25CYWNrZ3JvdW5kOiBAd2hpdGU7XG4gICAgQGRyb3Bkb3duQm9yZGVyOiByZ2JhKDAsMCwwLC4yKTtcbiAgICBAZHJvcGRvd25EaXZpZGVyVG9wOiAjZTVlNWU1O1xuICAgIEBkcm9wZG93bkRpdmlkZXJCb3R0b206IEB3aGl0ZTtcblxuICAgIC8vIE1haW4gbmF2YmFyXG4gICAgQG5hdmJhclRleHQ6IEB0ZXh0Q29sb3I7XG4gICAgQG5hdmJhckxpbmtDb2xvcjogQG5hdmJhclRleHQ7XG4gICAgQG5hdmJhckxpbmtDb2xvckhvdmVyOiBkYXJrZW4oQG5hdmJhckxpbmtDb2xvciwgNSUpO1xuICAgIEBuYXZiYXJMaW5rQmFja2dyb3VuZEFjdGl2ZTogZGFya2VuKEBuYXZiYXJCYWNrZ3JvdW5kLCA1JSk7XG4gICAgQG5hdmJhckRyb3Bkb3duQ2FyZXRDb2xvcjogQG5hdmJhckxpbmtDb2xvcjtcbiAgICBAbmF2YmFyRHJvcGRvd25DYXJldENvbG9ySG92ZXI6IEBuYXZiYXJMaW5rQ29sb3JIb3ZlcjtcbiAgICBAbmF2YmFyUnVsZUNvbG9yOiBAZ3JheUxpZ2h0O1xuXG4gICAgLy8gU3RpY2t5IG5hdmJhclxuICAgIEBzdGlja3lOYXZiYXJUZXh0OiBAdGV4dENvbG9yO1xuICAgIEBzdGlja3lOYXZiYXJMaW5rQ29sb3I6IEBzdGlja3lOYXZiYXJUZXh0O1xuICAgIEBzdGlja3lOYXZiYXJMaW5rQ29sb3JIb3ZlcjogZGFya2VuKEBzdGlja3lOYXZiYXJMaW5rQ29sb3IsIDUlKTtcbiAgICBAc3RpY2t5TmF2YmFyQmFja2dyb3VuZENvbG9yOiBAd2hpdGU7XG4gICAgQHN0aWNreU5hdmJhckRyb3Bkb3duQ2FyZXRDb2xvcjogQHN0aWNreU5hdmJhckxpbmtDb2xvcjtcbiAgICBAc3RpY2t5TmF2YmFyRHJvcGRvd25DYXJldENvbG9ySG92ZXI6IEBzdGlja3lOYXZiYXJMaW5rQ29sb3JIb3ZlcjtcblxuXG4vLyBTb2NpYWwgQnJhbmRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AcnNzOiAjZjg5NDA2O1xuQGZhY2Vib29rOiAjM2E1Nzk1O1xuQHR3aXR0ZXI6ICM1NWFjZWU7XG5AeW91dHViZTogI2U1MmQyNztcbkBncGx1czogI2RkNGIzOTtcbkBmbGlja3I6ICNmZjAwODQ7XG5AbGlua2VkaW46ICMwMDdiYjY7XG5AdHVtYmxyOiAjMzU0NjVjO1xuIiwiLy8gR2xvYmFsIGltYWdlIHN0eWxlc1xuXG4vLyBTdHlsZSBmb3IgdGhlIHRodW1ibmFpbCB0aGF0IGFwcGVhcnMgb24gdGh1bWJuYWlscyBvZiB2aWRlb3Ncbi5pcy12aWRlbyBpbWcge1xuICBvcGFjaXR5OiAwLjU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaXMtdmlkZW8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2lzLXZpZGVvLXBsYXktaWNvbi5zdmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMjAlO1xufVxuIiwiLy8gRm9ybXMubGVzc1xuLy8gQmFzZSBzdHlsZXMgZm9yIHZhcmlvdXMgaW5wdXQgdHlwZXMsIGZvcm0gbGF5b3V0cywgYW5kIHN0YXRlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEdFTkVSQUwgU1RZTEVTXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBHcm91cHMgb2YgZmllbGRzIHdpdGggbGFiZWxzIG9uIHRvcCAobGVnZW5kcylcbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VMaW5lSGVpZ2h0ICogMS41O1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjU7XG4gIGxpbmUtaGVpZ2h0OiBAYmFzZUxpbmVIZWlnaHQgKiAyO1xuICBjb2xvcjogQGdyYXlEYXJrO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTVlNWU1O1xuXG4gIC8vIFNtYWxsXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IEBiYXNlTGluZUhlaWdodCAqIC43NTtcbiAgICBjb2xvcjogQGdyYXlMaWdodDtcbiAgfVxufVxuXG4vLyBTZXQgZm9udCBmb3IgZm9ybXNcbmxhYmVsLFxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gICNmb250ID4gLnNob3J0aGFuZChAYmFzZUZvbnRTaXplLG5vcm1hbCxAYmFzZUxpbmVIZWlnaHQpOyAvLyBTZXQgc2l6ZSwgd2VpZ2h0LCBsaW5lLWhlaWdodCBoZXJlXG59XG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IEBiYXNlRm9udEZhbWlseTsgLy8gQW5kIG9ubHkgc2V0IGZvbnQtZmFtaWx5IGhlcmUgZm9yIHRob3NlIHRoYXQgbmVlZCBpdCAobm90ZSB0aGUgbWlzc2luZyBsYWJlbCBlbGVtZW50KVxufVxuXG4vLyBJZGVudGlmeSBjb250cm9scyBieSB0aGVpciBsYWJlbHNcbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLy8gRm9ybSBjb250cm9sc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTaGFyZWQgc2l6ZSBhbmQgdHlwZSByZXNldHNcbnNlbGVjdCxcbnRleHRhcmVhLFxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cIndlZWtcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxuLnVuZWRpdGFibGUtaW5wdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogQGJhc2VMaW5lSGVpZ2h0O1xuICBwYWRkaW5nOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDlweDtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICBsaW5lLWhlaWdodDogQGJhc2VMaW5lSGVpZ2h0O1xuICAuYm9yZGVyLXJhZGl1cygwKTtcbiAgY29sb3I6IEBncmF5O1xufVxuXG4vLyBSZXNldCBhcHBlYXJhbmNlIHByb3BlcnRpZXMgZm9yIHRleHR1YWwgaW5wdXRzIGFuZCB0ZXh0YXJlYVxuLy8gRGVjbGFyZSB3aWR0aCBmb3IgbGVnYWN5IChjYW4ndCBiZSBvbiBpbnB1dFt0eXBlPSpdIHNlbGVjdG9ycyBvciBpdCdzIHRvbyBzcGVjaWZpYylcbmlucHV0LFxudGV4dGFyZWEge1xuICB3aWR0aDogMjEwcHg7XG59XG4vLyBSZXNldCBoZWlnaHQgc2luY2UgdGV4dGFyZWFzIGhhdmUgcm93c1xudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG59XG4vLyBFdmVyeXRoaW5nIGVsc2VcbnRleHRhcmVhLFxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cIndlZWtcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxuLnVuZWRpdGFibGUtaW5wdXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW5wdXRCYWNrZ3JvdW5kO1xuICBib3JkZXI6IDFweCBzb2xpZCBAaW5wdXRCb3JkZXI7XG4gIC5ib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpKTtcbiAgQHRyYW5zaXRpb246IGJvcmRlciBsaW5lYXIgLjJzLCBib3gtc2hhZG93IGxpbmVhciAuMnM7XG4gIC50cmFuc2l0aW9uKEB0cmFuc2l0aW9uKTtcblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoODIsMTY4LDIzNiwuOCk7XG4gICAgb3V0bGluZTogMDtcbiAgICBvdXRsaW5lOiB0aGluIGRvdHRlZCBcXDk7IC8qIElFNi05ICovXG4gICAgLmJveC1zaGFkb3coflwiaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA4cHggcmdiYSg4MiwxNjgsMjM2LC42KVwiKTtcbiAgfVxufVxuXG4vLyBQb3NpdGlvbiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgYmV0dGVyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBtYXJnaW46IDNweCAwO1xuICAqbWFyZ2luLXRvcDogMDsgLyogSUU3ICovXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8gUmVzZXQgd2lkdGggb2YgaW5wdXQgYnV0dG9ucywgcmFkaW9zLCBjaGVja2JveGVzXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHdpZHRoOiBhdXRvOyAvLyBPdmVycmlkZSBvZiBnZW5lcmljIGlucHV0IHNlbGVjdG9yXG59XG5cbi8vIE1ha2UgdW5lZGl0YWJsZSB0ZXh0YXJlYXMgYmVoYXZlIGxpa2UgYSB0ZXh0YXJlYVxuLnVuZWRpdGFibGUtdGV4dGFyZWEge1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBTZXQgdGhlIGhlaWdodCBvZiBzZWxlY3QgYW5kIGZpbGUgY29udHJvbHMgdG8gbWF0Y2ggdGV4dCBpbnB1dHNcbnNlbGVjdCxcbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgaGVpZ2h0OiAyOHB4OyAvKiBJbiBJRTcsIHRoZSBoZWlnaHQgb2YgdGhlIHNlbGVjdCBlbGVtZW50IGNhbm5vdCBiZSBjaGFuZ2VkIGJ5IGhlaWdodCwgb25seSBmb250LXNpemUgKi9cbiAgKm1hcmdpbi10b3A6IDRweDsgLyogRm9yIElFNywgYWRkIHRvcCBtYXJnaW4gdG8gYWxpZ24gc2VsZWN0IHdpdGggbGFiZWxzICovXG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xufVxuXG4vLyBNYWtlIHNlbGVjdCBlbGVtZW50cyBvYmV5IGhlaWdodCBieSBhcHBseWluZyBhIGJvcmRlclxuc2VsZWN0IHtcbiAgd2lkdGg6IDIyMHB4OyAvLyBkZWZhdWx0IGlucHV0IHdpZHRoICsgMTBweCBvZiBwYWRkaW5nIHRoYXQgZG9lc24ndCBnZXQgYXBwbGllZFxuICBib3JkZXI6IDFweCBzb2xpZCAjYmJiO1xuICAuYm9yZGVyLXJhZGl1cygwKTtcbn1cblxuLy8gTWFrZSBtdWx0aXBsZSBzZWxlY3QgZWxlbWVudHMgaGVpZ2h0IG5vdCBmaXhlZFxuc2VsZWN0W211bHRpcGxlXSxcbnNlbGVjdFtzaXplXSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gRm9jdXMgZm9yIHNlbGVjdCwgZmlsZSwgcmFkaW8sIGFuZCBjaGVja2JveFxuc2VsZWN0OmZvY3VzLFxuaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMge1xuICAudGFiLWZvY3VzKCk7XG59XG5cblxuXG4vLyBDSEVDS0JPWEVTICYgUkFESU9TXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmdcbi5yYWRpbyxcbi5jaGVja2JveCB7XG4gIG1pbi1oZWlnaHQ6IDE4cHg7IC8vIGNsZWFyIHRoZSBmbG9hdGluZyBpbnB1dCBpZiB0aGVyZSBpcyBubyBsYWJlbCB0ZXh0XG4gIHBhZGRpbmctbGVmdDogMThweDtcbn1cbi5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAtMThweDtcbn1cblxuLy8gTW92ZSB0aGUgb3B0aW9ucyBsaXN0IGRvd24gdG8gYWxpZ24gd2l0aCBsYWJlbHNcbi5jb250cm9scyA+IC5yYWRpbzpmaXJzdC1jaGlsZCxcbi5jb250cm9scyA+IC5jaGVja2JveDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiA1cHg7IC8vIGhhcyB0byBiZSBwYWRkaW5nIGJlY2F1c2UgbWFyZ2luIGNvbGxhc3Blc1xufVxuXG4vLyBSYWRpb3MgYW5kIGNoZWNrYm94ZXMgb24gc2FtZSBsaW5lXG4vLyBUT0RPIHYzOiBDb252ZXJ0IC5pbmxpbmUgdG8gLmNvbnRyb2wtaW5saW5lXG4ucmFkaW8uaW5saW5lLFxuLmNoZWNrYm94LmlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5yYWRpby5pbmxpbmUgKyAucmFkaW8uaW5saW5lLFxuLmNoZWNrYm94LmlubGluZSArIC5jaGVja2JveC5pbmxpbmUge1xuICBtYXJnaW4tbGVmdDogMTBweDsgLy8gc3BhY2Ugb3V0IGNvbnNlY3V0aXZlIGlubGluZSBjb250cm9sc1xufVxuXG5cblxuLy8gSU5QVVQgU0laRVNcbi8vIC0tLS0tLS0tLS0tXG5cbi8vIEdlbmVyYWwgY2xhc3NlcyBmb3IgcXVpY2sgc2l6ZXNcbi5pbnB1dC1taW5pICAgICAgIHsgd2lkdGg6IDYwcHg7IH1cbi5pbnB1dC1zbWFsbCAgICAgIHsgd2lkdGg6IDkwcHg7IH1cbi5pbnB1dC1tZWRpdW0gICAgIHsgd2lkdGg6IDE1MHB4OyB9XG4uaW5wdXQtbGFyZ2UgICAgICB7IHdpZHRoOiAyMTBweDsgfVxuLmlucHV0LXhsYXJnZSAgICAgeyB3aWR0aDogMjcwcHg7IH1cbi5pbnB1dC14eGxhcmdlICAgIHsgd2lkdGg6IDUzMHB4OyB9XG5cbi8vIEdyaWQgc3R5bGUgaW5wdXQgc2l6ZXNcbmlucHV0W2NsYXNzKj1cInNwYW5cIl0sXG5zZWxlY3RbY2xhc3MqPVwic3BhblwiXSxcbnRleHRhcmVhW2NsYXNzKj1cInNwYW5cIl0sXG4udW5lZGl0YWJsZS1pbnB1dFtjbGFzcyo9XCJzcGFuXCJdLFxuLy8gUmVkZWNsYXJlIHNpbmNlIHRoZSBmbHVpZCByb3cgY2xhc3MgaXMgbW9yZSBzcGVjaWZpY1xuLnJvdy1mbHVpZCBpbnB1dFtjbGFzcyo9XCJzcGFuXCJdLFxuLnJvdy1mbHVpZCBzZWxlY3RbY2xhc3MqPVwic3BhblwiXSxcbi5yb3ctZmx1aWQgdGV4dGFyZWFbY2xhc3MqPVwic3BhblwiXSxcbi5yb3ctZmx1aWQgLnVuZWRpdGFibGUtaW5wdXRbY2xhc3MqPVwic3BhblwiXSB7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi8vIEVuc3VyZSBpbnB1dC1wcmVwZW5kL2FwcGVuZCBuZXZlciB3cmFwc1xuLmlucHV0LWFwcGVuZCBpbnB1dFtjbGFzcyo9XCJzcGFuXCJdLFxuLmlucHV0LWFwcGVuZCAudW5lZGl0YWJsZS1pbnB1dFtjbGFzcyo9XCJzcGFuXCJdLFxuLmlucHV0LXByZXBlbmQgaW5wdXRbY2xhc3MqPVwic3BhblwiXSxcbi5pbnB1dC1wcmVwZW5kIC51bmVkaXRhYmxlLWlucHV0W2NsYXNzKj1cInNwYW5cIl0sXG4ucm93LWZsdWlkIC5pbnB1dC1wcmVwZW5kIFtjbGFzcyo9XCJzcGFuXCJdLFxuLnJvdy1mbHVpZCAuaW5wdXQtYXBwZW5kIFtjbGFzcyo9XCJzcGFuXCJdIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5cblxuLy8gR1JJRCBTSVpJTkcgRk9SIElOUFVUU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4jZ3JpZCA+IC5pbnB1dChAZmx1aWRHcmlkQ29sdW1uV2lkdGgsIEBmbHVpZEdyaWRHdXR0ZXJXaWR0aCk7XG5cblxuXG4vLyBESVNBQkxFRCBTVEFURVxuLy8gLS0tLS0tLS0tLS0tLS1cblxuLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbmlucHV0W2Rpc2FibGVkXSxcbnNlbGVjdFtkaXNhYmxlZF0sXG50ZXh0YXJlYVtkaXNhYmxlZF0sXG5pbnB1dFtyZWFkb25seV0sXG5zZWxlY3RbcmVhZG9ubHldLFxudGV4dGFyZWFbcmVhZG9ubHldIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGlucHV0RGlzYWJsZWRCYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICNkZGQ7XG59XG4vLyBFeHBsaWNpdGx5IHJlc2V0IHRoZSBjb2xvcnMgaGVyZVxuaW5wdXRbdHlwZT1cInJhZGlvXCJdW2Rpc2FibGVkXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXVtkaXNhYmxlZF0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl1bcmVhZG9ubHldLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5cblxuXG4vLyBGT1JNIEZJRUxEIEZFRURCQUNLIFNUQVRFU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gV2FybmluZ1xuLmNvbnRyb2wtZ3JvdXAud2FybmluZyB7XG4gIC5mb3JtRmllbGRTdGF0ZShAd2FybmluZ1RleHQsIEB3YXJuaW5nVGV4dCwgQHdhcm5pbmdCYWNrZ3JvdW5kKTtcbn1cbi8vIEVycm9yXG4uY29udHJvbC1ncm91cC5lcnJvciB7XG4gIC5mb3JtRmllbGRTdGF0ZShAZXJyb3JUZXh0LCBAZXJyb3JUZXh0LCBAZXJyb3JCYWNrZ3JvdW5kKTtcbn1cbi8vIFN1Y2Nlc3Ncbi5jb250cm9sLWdyb3VwLnN1Y2Nlc3Mge1xuICAuZm9ybUZpZWxkU3RhdGUoQHN1Y2Nlc3NUZXh0LCBAc3VjY2Vzc1RleHQsIEBzdWNjZXNzQmFja2dyb3VuZCk7XG59XG5cbi8vIEhUTUw1IGludmFsaWQgc3RhdGVzXG4vLyBTaGFyZXMgc3R5bGVzIHdpdGggdGhlIC5jb250cm9sLWdyb3VwLmVycm9yIGFib3ZlXG5pbnB1dDpmb2N1czpyZXF1aXJlZDppbnZhbGlkLFxudGV4dGFyZWE6Zm9jdXM6cmVxdWlyZWQ6aW52YWxpZCxcbnNlbGVjdDpmb2N1czpyZXF1aXJlZDppbnZhbGlkIHtcbiAgY29sb3I6ICNiOTRhNDg7XG4gIGJvcmRlci1jb2xvcjogI2VlNWY1YjtcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oI2VlNWY1YiwgMTAlKTtcbiAgICAuYm94LXNoYWRvdygwIDAgNnB4IGxpZ2h0ZW4oI2VlNWY1YiwgMjAlKSk7XG4gIH1cbn1cblxuXG5cbi8vIEZPUk0gQUNUSU9OU1xuLy8gLS0tLS0tLS0tLS0tXG5cbi5mb3JtLWFjdGlvbnMge1xuICBwYWRkaW5nOiAoQGJhc2VMaW5lSGVpZ2h0IC0gMSkgMjBweCBAYmFzZUxpbmVIZWlnaHQ7XG4gIG1hcmdpbi10b3A6IEBiYXNlTGluZUhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VMaW5lSGVpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZm9ybUFjdGlvbnNCYWNrZ3JvdW5kO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U1ZTVlNTtcbiAgLmNsZWFyZml4KCk7IC8vIEFkZGluZyBjbGVhcmZpeCB0byBhbGxvdyBmb3IgLnB1bGwtcmlnaHQgYnV0dG9uIGNvbnRhaW5lcnNcbn1cblxuLy8gRm9yIHRleHQgdGhhdCBuZWVkcyB0byBhcHBlYXIgYXMgYW4gaW5wdXQgYnV0IHNob3VsZCBub3QgYmUgYW4gaW5wdXRcbi51bmVkaXRhYmxlLWlucHV0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gcHJldmVudCB0ZXh0IGZyb20gd3JhcHBpbmcsIGJ1dCBzdGlsbCBjdXQgaXQgb2ZmIGxpa2UgYW4gaW5wdXQgZG9lc1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaW5wdXRCYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICNlZWU7XG4gIC5ib3gtc2hhZG93KGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLC4wMjUpKTtcbn1cblxuLy8gUGxhY2Vob2xkZXIgdGV4dCBnZXRzIHNwZWNpYWwgc3R5bGVzOyBjYW5ub3QgYmUgYnVuZGxlZCB0b2dldGhlciB0aG91Z2ggZm9yIHNvbWUgcmVhc29uXG4ucGxhY2Vob2xkZXIoKTtcblxuXG5cbi8vIEhFTFAgVEVYVFxuLy8gLS0tLS0tLS0tXG5cbi5oZWxwLWJsb2NrLFxuLmhlbHAtaW5saW5lIHtcbiAgY29sb3I6IEBncmF5OyAvLyBsaWdodGVuIHRoZSB0ZXh0IHNvbWUgZm9yIGNvbnRyYXN0XG59XG5cbi5oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7IC8vIGFjY291bnQgZm9yIGFueSBlbGVtZW50IHVzaW5nIGhlbHAtYmxvY2tcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VMaW5lSGVpZ2h0IC8gMjtcbn1cblxuLmhlbHAtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAuaWU3LWlubGluZS1ibG9jaygpO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBwYWRkaW5nLWxlZnQ6IDVweDtcbn1cblxuXG5cbi8vIElOUFVUIEdST1VQU1xuLy8gLS0tLS0tLS0tLS0tXG5cbi8vIEFsbG93IHVzIHRvIHB1dCBzeW1ib2xzIGFuZCB0ZXh0IHdpdGhpbiB0aGUgaW5wdXQgZmllbGQgZm9yIGEgY2xlYW5lciBsb29rXG4uaW5wdXQtcHJlcGVuZCxcbi5pbnB1dC1hcHBlbmQge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIC51bmVkaXRhYmxlLWlucHV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIHBsYWNlZCBoZXJlIGJ5IGRlZmF1bHQgc28gdGhhdCBvbiA6Zm9jdXMgd2UgY2FuIHBsYWNlIHRoZSBpbnB1dCBhYm92ZSB0aGUgLmFkZC1vbiBmb3IgZnVsbCBib3JkZXIgYW5kIGJveC1zaGFkb3cgZ29vZG5lc3NcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBwcmV2ZW50IGJvdHRvbSBtYXJnaW4gZnJvbSBzY3Jld2luZyB1cCBhbGlnbm1lbnQgaW4gc3RhY2tlZCBmb3Jtc1xuICAgICptYXJnaW4tbGVmdDogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIC8vIE1ha2UgaW5wdXQgb24gdG9wIHdoZW4gZm9jdXNlZCBzbyBibHVlIGJvcmRlciBhbmQgc2hhZG93IGFsd2F5cyBzaG93XG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxuICAudW5lZGl0YWJsZS1pbnB1dCB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICNjY2M7XG4gIH1cbiAgLmFkZC1vbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogQGJhc2VMaW5lSGVpZ2h0O1xuICAgIG1pbi13aWR0aDogMTZweDtcbiAgICBwYWRkaW5nOiA0cHggNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IEBiYXNlTGluZUhlaWdodDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgQHdoaXRlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGdyYXlMaWdodGVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIH1cbiAgLmFkZC1vbixcbiAgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIH1cbiAgLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbihAZ3JlZW4sIDMwKTtcbiAgICBib3JkZXItY29sb3I6IEBncmVlbjtcbiAgfVxufVxuLmlucHV0LXByZXBlbmQge1xuICAuYWRkLW9uLFxuICAuYnRuIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gIH1cbiAgLmFkZC1vbjpmaXJzdC1jaGlsZCxcbiAgLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIH1cbn1cbi5pbnB1dC1hcHBlbmQge1xuICBpbnB1dCxcbiAgc2VsZWN0LFxuICAudW5lZGl0YWJsZS1pbnB1dCB7XG4gIH1cbiAgLnVuZWRpdGFibGUtaW5wdXQge1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogI2NjYztcbiAgICBib3JkZXItbGVmdC1jb2xvcjogI2VlZTtcbiAgfVxuICAuYWRkLW9uOmxhc3QtY2hpbGQsXG4gIC5idG46bGFzdC1jaGlsZCB7XG4gIH1cbn1cblxuLy8gQ29tbW9uIHByb3BlcnRpZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbi5mb3JtLXNlYXJjaCxcbi5mb3JtLWlubGluZSxcbi5mb3JtLWhvcml6b250YWwge1xuICBpbnB1dCxcbiAgdGV4dGFyZWEsXG4gIHNlbGVjdCxcbiAgLmhlbHAtaW5saW5lLFxuICAudW5lZGl0YWJsZS1pbnB1dCxcbiAgLmlucHV0LXByZXBlbmQsXG4gIC5pbnB1dC1hcHBlbmQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAuaWU3LWlubGluZS1ibG9jaygpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLy8gUmUtaGlkZSBoaWRkZW4gZWxlbWVudHMgZHVlIHRvIHNwZWNpZml0eVxuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmZvcm0tc2VhcmNoIGxhYmVsLFxuLmZvcm0taW5saW5lIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLy8gUmVtb3ZlIG1hcmdpbiBmb3IgaW5wdXQtcHJlcGVuZC8tYXBwZW5kXG4uZm9ybS1zZWFyY2ggLmlucHV0LWFwcGVuZCxcbi5mb3JtLWlubGluZSAuaW5wdXQtYXBwZW5kLFxuLmZvcm0tc2VhcmNoIC5pbnB1dC1wcmVwZW5kLFxuLmZvcm0taW5saW5lIC5pbnB1dC1wcmVwZW5kIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi8vIElubGluZSBjaGVja2JveC9yYWRpbyBsYWJlbHMgKHJlbW92ZSBwYWRkaW5nIG9uIGxlZnQpXG4uZm9ybS1zZWFyY2ggLnJhZGlvLFxuLmZvcm0tc2VhcmNoIC5jaGVja2JveCxcbi5mb3JtLWlubGluZSAucmFkaW8sXG4uZm9ybS1pbmxpbmUgLmNoZWNrYm94IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLy8gUmVtb3ZlIGZsb2F0IGFuZCBtYXJnaW4sIHNldCB0byBpbmxpbmUtYmxvY2tcbi5mb3JtLXNlYXJjaCAucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLmZvcm0tc2VhcmNoIC5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4uZm9ybS1pbmxpbmUgLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5mb3JtLWlubGluZSAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuXG4vLyBNYXJnaW4gdG8gc3BhY2Ugb3V0IGZpZWxkc2V0c1xuLmNvbnRyb2wtZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZUxpbmVIZWlnaHQgLyAyO1xufVxuXG4vLyBMZWdlbmQgY29sbGFwc2VzIG1hcmdpbiwgc28gbmV4dCBlbGVtZW50IGlzIHJlc3BvbnNpYmxlIGZvciBzcGFjaW5nXG5sZWdlbmQgKyAuY29udHJvbC1ncm91cCB7XG4gIG1hcmdpbi10b3A6IEBiYXNlTGluZUhlaWdodDtcbiAgLXdlYmtpdC1tYXJnaW4tdG9wLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbn1cblxuLy8gSG9yaXpvbnRhbC1zcGVjaWZpYyBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5mb3JtLWhvcml6b250YWwge1xuICAvLyBJbmNyZWFzZSBzcGFjaW5nIGJldHdlZW4gZ3JvdXBzXG4gIC5jb250cm9sLWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZUxpbmVIZWlnaHQ7XG4gICAgLmNsZWFyZml4KCk7XG4gIH1cbiAgLy8gRmxvYXQgdGhlIGxhYmVscyBsZWZ0XG4gIC5jb250cm9sLWxhYmVsIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQwcHg7XG4gICAgcGFkZGluZy10b3A6IDVweDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICAvLyBNb3ZlIG92ZXIgYWxsIGlucHV0IGNvbnRyb2xzIGFuZCBjb250ZW50XG4gIC5jb250cm9scyB7XG4gICAgLy8gU3VwZXIgamFuayBJRTcgZml4IHRvIGVuc3VyZSB0aGUgaW5wdXRzIGluIC5pbnB1dC1hcHBlbmQgYW5kIGlucHV0LXByZXBlbmRcbiAgICAvLyBkbyBub3QgaW5oZXJpdCB0aGUgbWFyZ2luIG9mIHRoZSBwYXJlbnQsIGluIHRoaXMgY2FzZSAuY29udHJvbHNcbiAgICAqZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICpwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDE2MHB4O1xuICAgICptYXJnaW4tbGVmdDogMDtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICpwYWRkaW5nLWxlZnQ6IDE2MHB4O1xuICAgIH1cbiAgfVxuICAvLyBSZW1vdmUgYm90dG9tIG1hcmdpbiBvbiBibG9jayBsZXZlbCBoZWxwIHRleHQgc2luY2UgdGhhdCBpcyBhY2NvdW50ZWQgZm9yIG9uIC5jb250cm9sLWdyb3VwXG4gIC5oZWxwLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiBAYmFzZUxpbmVIZWlnaHQgLyAyO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLy8gTW92ZSBvdmVyIGJ1dHRvbnMgaW4gLmZvcm0tYWN0aW9ucyB0byBhbGlnbiB3aXRoIC5jb250cm9sc1xuICAuZm9ybS1hY3Rpb25zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE2MHB4O1xuICB9XG59XG5cbi8qKlxuICogRml4ZXMgdG8gR29vZ2xlIEN1c3RvbSBTZWFyY2hcbiAqL1xuLmdjc19jb250YWluZXIge1xuICAvL291dGVyIHdyYXBwZXJcbiAgLmdzYy1jb250cm9sLWNzZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbiAgLmdzYy1zZWFyY2gtYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuXG4gIC5nc2Mtc2VhcmNoLWJveCxcbiAgLmdzYy1yZXN1bHRzLXdyYXBwZXItb3ZlcmxheSB7XG4gICAgLmdzYy1pbnB1dCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1cHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgdGFibGUge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIHRkIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAmLmdzaWJfYSB7XG4gICAgICAgIHBhZGRpbmc6IDNweCA2cHggMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICB0ZC5nc2Mtc2VhcmNoLWJ1dHRvbiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG4gICAgaW5wdXRbdHlwZT0ndGV4dCddIHtcbiAgICAgIC5ib3gtc2hhZG93KG5vbmUpO1xuICAgIH1cbiAgICBpbnB1dC5nc2Mtc2VhcmNoLWJ1dHRvbi12MiB7XG4gICAgICBwYWRkaW5nOiA2cHggMTVweCAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiAxM3B4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAjZ3JhZGllbnQgPiAudmVydGljYWwoIGxpZ2h0ZW4oQGJhc2VDb2xvciwgMiUpLCBkYXJrZW4oQGJhc2VDb2xvciwgMiUpICk7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgI2dyYWRpZW50ID4gLnZlcnRpY2FsKGRhcmtlbihAYmFzZUNvbG9yLCAyJSksIGxpZ2h0ZW4oQGJhc2VDb2xvciwgMiUpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJVVFRPTiBTVFlMRVNcbi8vIC0tLS0tLS0tLS0tLS1cblxuLy8gQmFzZSBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIENvcmVcbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDRweCAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBGb3IgaW5wdXQuYnRuXG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgbGluZS1oZWlnaHQ6IEBiYXNlTGluZUhlaWdodDtcbiAgKmxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogQGdyYXlEYXJrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGdyYXlMaWdodGVyO1xufVxuLy8gSG92ZXIgc3RhdGVcbi5idG46aG92ZXIge1xuICBjb2xvcjogQGdyYXlEYXJrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAd2hpdGUsIDEwJSk7XG4gICpiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQHdoaXRlLCAxNSUpOyAvKiBCdXR0b25zIGluIElFNyBkb24ndCBnZXQgYm9yZGVycywgc28gZGFya2VuIG9uIGhvdmVyICovXG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE1cHg7XG5cbiAgLy8gdHJhbnNpdGlvbiBpcyBvbmx5IHdoZW4gZ29pbmcgdG8gaG92ZXIsIG90aGVyd2lzZSB0aGUgYmFja2dyb3VuZFxuICAvLyBiZWhpbmQgdGhlIGdyYWRpZW50ICh0aGVyZSBmb3IgSUU8PTkgZmFsbGJhY2spIGdldHMgbWlzbWF0Y2hlZFxuICAudHJhbnNpdGlvbihiYWNrZ3JvdW5kLXBvc2l0aW9uIC4xcyBsaW5lYXIpO1xufVxuLy8gRm9jdXMgc3RhdGUgZm9yIGtleWJvYXJkIGFuZCBhY2Nlc3NpYmlsaXR5XG4uYnRuOmZvY3VzIHtcbiAgLnRhYi1mb2N1cygpO1xufVxuLmJ0bi5hY3RpdmUsXG4uYnRuOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAd2hpdGUsIDEwJSk7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAd2hpdGUsIDE1JSkgZShcIlxcOVwiKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgb3V0bGluZTogMDtcbn1cbi5idG4uZGlzYWJsZWQsXG4uYnRuW2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEB3aGl0ZSwgMTAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgLm9wYWNpdHkoNjUpO1xuICAuYm94LXNoYWRvdyhub25lKTtcbn1cblxuXG4vLyBCdXR0b24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIExhcmdlXG4uYnRuLWxhcmdlIHtcbiAgcGFkZGluZzogOXB4IDE0cHg7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSArIDJweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cbi5idG4tbGFyZ2UgW2NsYXNzXj1cImljb24tXCJdIHtcbiAgbWFyZ2luLXRvcDogMXB4O1xufVxuXG4vLyBTbWFsbFxuLmJ0bi1zbWFsbCB7XG4gIHBhZGRpbmc6IDVweCA5cHg7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAtIDJweDtcbiAgbGluZS1oZWlnaHQ6IEBiYXNlTGluZUhlaWdodCAtIDJweDtcbn1cbi5idG4tc21hbGwgW2NsYXNzXj1cImljb24tXCJdIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbn1cblxuLy8gTWluaVxuLmJ0bi1taW5pIHtcbiAgcGFkZGluZzogMnB4IDZweDtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplIC0gMnB4O1xuICBsaW5lLWhlaWdodDogQGJhc2VMaW5lSGVpZ2h0IC0gNHB4O1xufVxuXG5cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTZXQgdGV4dCBjb2xvclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmJ0bi1wcmltYXJ5LmFjdGl2ZSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC43NSk7XG59XG5cbi8vIFNldCB0aGUgYmFja2dyb3VuZHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5idG4ge1xuICAvLyByZXNldCBoZXJlIGFzIG9mIDIuMC4zIGR1ZSB0byBSZWNlc3MgcHJvcGVydHkgb3JkZXJcbiAgYm9yZGVyLWNvbG9yOiAjY2NjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG59XG4uYnRuLXByaW1hcnksXG4uYnRuLXByaW1hcnk6aG92ZXIge1xuICBjb2xvcjogQHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFzZUNvbG9yO1xufVxuXG4uYnRuLXByaW1hcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGJhc2VDb2xvciwgMTAlKTtcbiAgKmJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAYmFzZUNvbG9yLCAxNSUpOyAvKiBCdXR0b25zIGluIElFNyBkb24ndCBnZXQgYm9yZGVycywgc28gZGFya2VuIG9uIGhvdmVyICovXG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE1cHg7XG5cbiAgLy8gdHJhbnNpdGlvbiBpcyBvbmx5IHdoZW4gZ29pbmcgdG8gaG92ZXIsIG90aGVyd2lzZSB0aGUgYmFja2dyb3VuZFxuICAvLyBiZWhpbmQgdGhlIGdyYWRpZW50ICh0aGVyZSBmb3IgSUU8PTkgZmFsbGJhY2spIGdldHMgbWlzbWF0Y2hlZFxuICAudHJhbnNpdGlvbihiYWNrZ3JvdW5kLXBvc2l0aW9uIC4xcyBsaW5lYXIpO1xufVxuIiwiLy9cbi8vIFRhYmxlcy5sZXNzXG4vLyBUYWJsZXMgZm9yLCB5b3UgZ3Vlc3NlZCBpdCwgdGFidWxhciBkYXRhXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQkFTRSBUQUJMRVNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbnRhYmxlIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHRhYmxlQmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkIEB0YWJsZUJvcmRlcjtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlTGluZUhlaWdodDtcbiAgLy8gQ2VsbHNcbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiA4cHg7XG4gICAgbGluZS1oZWlnaHQ6IEBiYXNlTGluZUhlaWdodDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIEB0YWJsZUJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIEB0YWJsZUJvcmRlcjtcbiAgfVxuICB0aCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLy8gQm90dG9tIGFsaWduIGZvciBjb2x1bW4gaGVhZGluZ3NcbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIH1cbiAgLy8gQWNjb3VudCBmb3IgbXVsdGlwbGUgdGJvZHkgaW5zdGFuY2VzXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCBAdGFibGVCb3JkZXI7XG4gIH1cbiAgLy8gUHJldmVudCBhIGRvdWJsZSBib3JkZXJcbiAgY2FwdGlvbiArIHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRoLFxuICBjYXB0aW9uICsgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGQsXG4gIGNhcHRpb24gKyB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0aCxcbiAgY2FwdGlvbiArIHRib2R5IHRyOmZpcnN0LWNoaWxkIHRkLFxuICBjb2xncm91cCArIHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRoLFxuICBjb2xncm91cCArIHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRkLFxuICBjb2xncm91cCArIHRib2R5IHRyOmZpcnN0LWNoaWxkIHRoLFxuICBjb2xncm91cCArIHRib2R5IHRyOmZpcnN0LWNoaWxkIHRkLFxuICB0aGVhZDpmaXJzdC1jaGlsZCB0cjpmaXJzdC1jaGlsZCB0aCxcbiAgdGhlYWQ6Zmlyc3QtY2hpbGQgdHI6Zmlyc3QtY2hpbGQgdGQsXG4gIHRib2R5OmZpcnN0LWNoaWxkIHRyOmZpcnN0LWNoaWxkIHRoLFxuICB0Ym9keTpmaXJzdC1jaGlsZCB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG4vLyBDT05ERU5TRUQgVEFCTEUgVy8gSEFMRiBQQURESU5HXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi50YWJsZS1jb25kZW5zZWQge1xuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6IDRweCA1cHg7XG4gIH1cbn1cblxuLy8gTk8gQk9SREVSIFZFUlNJT05cbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuLnRhYmxlLW5vYm9yZGVyIHtcbiAgYm9yZGVyOiBub25lO1xuICB0aCxcbiAgdGQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxufVxuXG4vLyBaRUJSQS1TVFJJUElOR1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcbi50YWJsZS1zdHJpcGVkIHtcbiAgdGJvZHkge1xuICAgIHRyOm50aC1jaGlsZChvZGQpIHRkLFxuICAgIHRyOm50aC1jaGlsZChvZGQpIHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEB0YWJsZUJhY2tncm91bmRBY2NlbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gSE9WRVIgRUZGRUNUXG4vLyAtLS0tLS0tLS0tLS1cbi8vIFBsYWNlZCBoZXJlIHNpbmNlIGl0IGhhcyB0byBjb21lIGFmdGVyIHRoZSBwb3RlbnRpYWwgemVicmEgc3RyaXBpbmdcbi50YWJsZSB7XG4gIHRib2R5IHRyOmhvdmVyIHRkLFxuICB0Ym9keSB0cjpob3ZlciB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHRhYmxlQmFja2dyb3VuZEhvdmVyO1xuICB9XG59XG5cblxuLy8gVEFCTEUgQ0VMTCBTSVpJTkdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIENoYW5nZSB0aGUgY29sdW1uc1xudGFibGUge1xuICAuc3BhbjEgICAgIHsgLnRhYmxlQ29sdW1ucygxKTsgfVxuICAuc3BhbjIgICAgIHsgLnRhYmxlQ29sdW1ucygyKTsgfVxuICAuc3BhbjMgICAgIHsgLnRhYmxlQ29sdW1ucygzKTsgfVxuICAuc3BhbjQgICAgIHsgLnRhYmxlQ29sdW1ucyg0KTsgfVxuICAuc3BhbjUgICAgIHsgLnRhYmxlQ29sdW1ucyg1KTsgfVxuICAuc3BhbjYgICAgIHsgLnRhYmxlQ29sdW1ucyg2KTsgfVxuICAuc3BhbjcgICAgIHsgLnRhYmxlQ29sdW1ucyg3KTsgfVxuICAuc3BhbjggICAgIHsgLnRhYmxlQ29sdW1ucyg4KTsgfVxuICAuc3BhbjkgICAgIHsgLnRhYmxlQ29sdW1ucyg5KTsgfVxuICAuc3BhbjEwICAgIHsgLnRhYmxlQ29sdW1ucygxMCk7IH1cbiAgLnNwYW4xMSAgICB7IC50YWJsZUNvbHVtbnMoMTEpOyB9XG4gIC5zcGFuMTIgICAgeyAudGFibGVDb2x1bW5zKDEyKTsgfVxuICAuc3BhbjEzICAgIHsgLnRhYmxlQ29sdW1ucygxMyk7IH1cbiAgLnNwYW4xNCAgICB7IC50YWJsZUNvbHVtbnMoMTQpOyB9XG4gIC5zcGFuMTUgICAgeyAudGFibGVDb2x1bW5zKDE1KTsgfVxuICAuc3BhbjE2ICAgIHsgLnRhYmxlQ29sdW1ucygxNik7IH1cbiAgLnNwYW4xNyAgICB7IC50YWJsZUNvbHVtbnMoMTcpOyB9XG4gIC5zcGFuMTggICAgeyAudGFibGVDb2x1bW5zKDE4KTsgfVxuICAuc3BhbjE5ICAgIHsgLnRhYmxlQ29sdW1ucygxOSk7IH1cbiAgLnNwYW4yMCAgICB7IC50YWJsZUNvbHVtbnMoMjApOyB9XG4gIC5zcGFuMjEgICAgeyAudGFibGVDb2x1bW5zKDIxKTsgfVxuICAuc3BhbjIyICAgIHsgLnRhYmxlQ29sdW1ucygyMik7IH1cbiAgLnNwYW4yMyAgICB7IC50YWJsZUNvbHVtbnMoMjMpOyB9XG4gIC5zcGFuMjQgICAgeyAudGFibGVDb2x1bW5zKDI0KTsgfVxufVxuIiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ZvbnRlbGxvL2ZvbnQvZm9udGVsbG8uZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ZvbnRlbGxvL2ZvbnQvZm9udGVsbG8uZW90PyNpZWZpeFwiKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIHVybChcIi4uL2ZvbnRzL2ZvbnRlbGxvL2ZvbnQvZm9udGVsbG8ud29mZlwiKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKFwiLi4vZm9udHMvZm9udGVsbG8vZm9udC9mb250ZWxsby50dGZcIikgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoXCIuLi9mb250cy9mb250ZWxsby9mb250L2ZvbnRlbGxvLnN2ZyNmb250ZWxsb1wiKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5bY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLFxuW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ2ZvbnRlbGxvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBzcGVhazogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHdpZHRoOiAxZW07XG4gIG1hcmdpbi1yaWdodDogMC4yZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogMTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmljb24tc2VhcmNoOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDRkJzsgfSAvKiAnTScgKi9cbi5pY29uLWluc3RhZ3JhbTpiZWZvcmUgeyBjb250ZW50OiAnXFw3NCc7IH0gLyogJ3QnICovXG4uaWNvbi1oZWFydDpiZWZvcmUgeyBjb250ZW50OiAnXFw0MSc7IH0gLyogJ0EnICovXG4uaWNvbi1oZWFydC1lbXB0eTpiZWZvcmUgeyBjb250ZW50OiAnXFw0Mic7IH0gLyogJ0InICovXG4uaWNvbi1zdGFyOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDQzJzsgfSAvKiAnQycgKi9cbi5pY29uLXN0YXItZW1wdHk6YmVmb3JlIHsgY29udGVudDogJ1xcNDQnOyB9IC8qICdEJyAqL1xuLmljb24tdmlkZW9jYW06YmVmb3JlIHsgY29udGVudDogJ1xcZTgwMic7IH0gLyogJ+6ggicgKi9cbi5pY29uLXBpY3R1cmU6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwMCc7IH0gLyogJ+6ggCcgKi9cbi5pY29uLWNhbWVyYTpiZWZvcmUgeyBjb250ZW50OiAnXFxlODAxJzsgfSAvKiAn7qCBJyAqL1xuLmljb24tb2s6YmVmb3JlIHsgY29udGVudDogJ1xcNDUnOyB9IC8qICdFJyAqL1xuLmljb24tY2FuY2VsOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDQ2JzsgfSAvKiAnRicgKi9cbi5pY29uLXBsdXM6YmVmb3JlIHsgY29udGVudDogJ1xcNDcnOyB9IC8qICdHJyAqL1xuLmljb24tbWludXM6YmVmb3JlIHsgY29udGVudDogJ1xcNDgnOyB9IC8qICdIJyAqL1xuLmljb24taGVscDpiZWZvcmUgeyBjb250ZW50OiAnXFw0OSc7IH0gLyogJ0knICovXG4uaWNvbi1ob21lOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDUwJzsgfSAvKiAnUCcgKi9cbi5pY29uLWxpbms6YmVmb3JlIHsgY29udGVudDogJ1xcNTEnOyB9IC8qICdRJyAqL1xuLmljb24tdGFnOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDUyJzsgfSAvKiAnUicgKi9cbi5pY29uLXRhZ3M6YmVmb3JlIHsgY29udGVudDogJ1xcNTMnOyB9IC8qICdTJyAqL1xuLmljb24tZG93bmxvYWQ6YmVmb3JlIHsgY29udGVudDogJ1xcNTQnOyB9IC8qICdUJyAqL1xuLmljb24tcHJpbnQ6YmVmb3JlIHsgY29udGVudDogJ1xcNTUnOyB9IC8qICdVJyAqL1xuLmljb24tY29tbWVudDpiZWZvcmUgeyBjb250ZW50OiAnXFw1Nic7IH0gLyogJ1YnICovXG4uaWNvbi1jaGF0OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDU3JzsgfSAvKiAnVycgKi9cbi5pY29uLWxvY2F0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDgnOyB9IC8qICfuoIgnICovXG4uaWNvbi1kb2MtdGV4dDpiZWZvcmUgeyBjb250ZW50OiAnXFxlODA0JzsgfSAvKiAn7qCEJyAqL1xuLmljb24tbWFpbDpiZWZvcmUgeyBjb250ZW50OiAnXFw3NSc7IH0gLyogJ3UnICovXG4uaWNvbi1waG9uZTpiZWZvcmUgeyBjb250ZW50OiAnXFw1OCc7IH0gLyogJ1gnICovXG4uaWNvbi1tZW51OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDRjJzsgfSAvKiAnTCcgKi9cbi5pY29uLWNhbGVuZGFyOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDUnOyB9IC8qICfuoIUnICovXG4uaWNvbi1oZWFkcGhvbmVzOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDU5JzsgfSAvKiAnWScgKi9cbi5pY29uLXBsYXk6YmVmb3JlIHsgY29udGVudDogJ1xcNjAnOyB9IC8qICdgJyAqL1xuLmljb24tdGFibGU6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwNyc7IH0gLyogJ+6ghycgKi9cbi5pY29uLWNoYXJ0LWJhcjpiZWZvcmUgeyBjb250ZW50OiAnXFxlODA2JzsgfSAvKiAn7qCGJyAqL1xuLmljb24tc3Bpbm5lcjpiZWZvcmUgeyBjb250ZW50OiAnXFw2MSc7IH0gLyogJ2EnICovXG4uaWNvbi1tYXA6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwOSc7IH0gLyogJ+6giScgKi9cbi5pY29uLXNoYXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MGEnOyB9IC8qICfuoIonICovXG4uaWNvbi1ncGx1czpiZWZvcmUgeyBjb250ZW50OiAnXFw2Mic7IH0gLyogJ2InICovXG4uaWNvbi1waW50ZXJlc3Q6YmVmb3JlIHsgY29udGVudDogJ1xcNjMnOyB9IC8qICdjJyAqL1xuLmljb24tY2M6YmVmb3JlIHsgY29udGVudDogJ1xcNjQnOyB9IC8qICdkJyAqL1xuLmljb24tZmxpY2tyOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDY1JzsgfSAvKiAnZScgKi9cbi5pY29uLWxpbmtlZGluOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDY2JzsgfSAvKiAnZicgKi9cbi5pY29uLXJzczpiZWZvcmUgeyBjb250ZW50OiAnXFw2Nyc7IH0gLyogJ2cnICovXG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDY4JzsgfSAvKiAnaCcgKi9cbi5pY29uLXlvdXR1YmU6YmVmb3JlIHsgY29udGVudDogJ1xcNjknOyB9IC8qICdpJyAqL1xuLmljb24tZmFjZWJvb2s6YmVmb3JlIHsgY29udGVudDogJ1xcNzAnOyB9IC8qICdwJyAqL1xuLmljb24tZ2l0aHViOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXDcxJzsgfSAvKiAncScgKi9cbi5pY29uLWl0dW5lczpiZWZvcmUgeyBjb250ZW50OiAnXFw3Mic7IH0gLyogJ3InICovXG4uaWNvbi10dW1ibHI6YmVmb3JlIHsgY29udGVudDogJ1xcNzMnOyB9IC8qICdzJyAqL1xuLmljb24tZG9jLXRleHQtaW52OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDMnOyB9IC8qICfuoIMnICovXG5cbiNoZWFkZXItc29jaWFsIHtcbiAgaSB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDRweDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICBvcGFjaXR5OiAwLjk7XG4gICAgfVxuICB9XG59XG4iLCIuZ2xvYmFsLW5hdixcbiNwYWdlLFxuI3NpdGUtZm9vdGVyLFxuI2Zvb3Rlci1sb2dvcyxcbi5zdGlja3ktbmF2LWNvbnRhaW5lcixcbiNiZWZvcmUtZm9vdGVyIHtcbiAgbWF4LXdpZHRoOiBAY29udGFpbmVyTWF4V2lkdGg7XG4gIHBhZGRpbmc6IDAgMi41JTtcbn1cbiNwYWdlIHtcbiAgcGFkZGluZy1ib3R0b206QGJhc2VsaW5lICogMC43NTtcbn1cbiNtYWluIHtcbiAgbWFyZ2luOiBAYmFzZWxpbmUgKiAwLjc1IDA7XG59XG4jbGVmdC1yYWlsIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuI2NvbnRlbnQtbWFpbiB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLy8gRmx1aWQgR3JpZFxuI2dyaWQgPiAuZmx1aWQoQGZsdWlkR3JpZENvbHVtbldpZHRoLCBAZmx1aWRHcmlkR3V0dGVyV2lkdGgpO1xuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuaG9tZSAjbWFpbiB7XG4gICAgbWFyZ2luLXRvcDogQGJhc2VsaW5lO1xuICB9XG59XG5cbi5wb3BvdmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG1pbi13aWR0aDogMTgwcHg7XG4gIGJhY2tncm91bmQ6IEB3aGl0ZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGNvbG9yOiBAZ3JheTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogMWVtO1xuICBib3JkZXI6IDFweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjIpO1xuICAqYm9yZGVyLXJpZ2h0LXdpZHRoOiAycHg7XG4gICpib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gIC5ib3gtc2hhZG93KDAgNXB4IDEwcHggcmdiYSgwLDAsMCwuMikpO1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgIC1tb3otYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nO1xuICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQGRyb3Bkb3duQm9yZGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMHB4O1xuICAgIGxlZnQ6IDlweDtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLWxlZnQ6IDlweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDlweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiA5cHggc29saWQgQGRyb3Bkb3duQmFja2dyb3VuZDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtOXB4O1xuICAgIGxlZnQ6IDEwcHg7XG4gIH1cbn1cbiIsIi5nbG9iYWwtbmF2LWJnIHtcbiAgaGVpZ2h0OiAzOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaGVhZGVyRm9vdGVyQ29sb3I7XG59XG4uZ2xvYmFsLW5hdiB7XG4gIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAzOHB4O1xuICBvdmVyZmxvdzp2aXNpYmxlO1xuICB6LWluZGV4OiAxMDMwO1xuICB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW46IDlweCAxOHB4IDAgMDtcbiAgICB9XG4gICAgYSB7XG4gICAgICAuZGFya0xpZ2h0KEBoZWFkZXJGb290ZXJDb2xvcik7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oQHdoaXRlLCAxNSUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubmF2LXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgdWwjaGVhZGVyLXNvY2lhbCB7XG4gICAgICBmbG9hdDpsZWZ0O1xuICAgICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDVweCAwIDVweCAxMHB4O1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogQHdoaXRlO1xuICAgICAgICAgIGkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggNHB4IDJweCA0cHg7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZG9uYXRlLWJ0biB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbjogNXB4IDAgMCAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG4uZG9uYXRlLWJ0biB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDI7XG4gIGJhY2tncm91bmQtY29sb3I6IEByZWQ7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oQHJlZCwgNSUpO1xuICB9XG4gIGEge1xuICAgIHBhZGRpbmc6IDI0cHggN3B4O1xuICAgIGNvbG9yOiBAd2hpdGU7XG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICB9XG4gIH1cbiAgaSB7XG4gICAgbWFyZ2luOiAxcHggM3B4IDAgMDtcbiAgfVxufVxuXG4ubmF2LXNoZWxmIGxpLmRvbmF0ZSB7XG4gIGEuZG9uYXRlLWxpbmsge1xuICAgIGNvbG9yOiBAcmVkO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAjaGVhZGVyLWV4dHJhcyBsaS5kb25hdGUgeyBkaXNwbGF5OiBub25lOyB9XG4gIC5uYXYtc2hlbGYgbGkuZG9uYXRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgLm5hdi1zaGVsZiBsaS5kb25hdGUgeyBkaXNwbGF5OiBub25lOyB9XG59XG5cbi8vICNoZWFkZXItc2VhcmNoIHN0eWxlcyBhcHBseSBvbmx5IHRvIHRoZSBzZWFyY2ggaW4gdGhlIGdsb2JhbCBuYXYuXG4jaGVhZGVyLXNlYXJjaCB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1heC13aWR0aDogMjEwcHg7XG4gIGZsb2F0OmxlZnQ7XG4gIGZvcm0ge1xuICAgIG1hcmdpbjogMDsgLy8gaW4gY2FzZSBvZiB1c2VyLWFnZW50IHN0eWxlc2hlZXQuXG4gIH1cbiAgaW5wdXQsIGJ1dHRvbiB7XG4gICAgZm9udC1mYW1pbHk6IEBzYW5zRm9udEZhbWlseTtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbiAgaW5wdXQge1xuICAgIGhlaWdodDogMThweDtcbiAgICBwYWRkaW5nOiA2cHggNHB4IDJweDtcbiAgfVxuICBidXR0b24ge1xuICAgIGhlaWdodDogMjhweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG4jc2l0ZS1oZWFkZXIge1xuICBtYXJnaW46IEBiYXNlbGluZSAwO1xuICB3aWR0aDogYXV0bztcbiAgaW1nIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgICBtYXJnaW46IDVweCAwO1xuICB9XG4gIC8vIGZvciBsYXJnb19oZWFkZXJfd2lkZ2V0X3NpZGViYXJcbiAgYXNpZGUge1xuICAgIG1heC13aWR0aDogMzIwcHg7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5oMS5icmFuZGluZyxcbmgyLmJyYW5kaW5nIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMjBweCAwO1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAzLjM3NTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGEge1xuICAgIGNvbG9yOiBAdGV4dENvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLnNpdGVuYW1lIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1ZW07ICBcbiAgfVxuICAudGFnbGluZSB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS41O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgY29sb3I6IEBncmF5O1xuICB9XG59XG4ucHJpbnQtaGVhZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogSG9tZXBhZ2UgYWxlcnQgKi9cbi5hbGVydC13cmFwcGVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkIEByZWQ7XG4gIG1hcmdpbjogMjBweCAwO1xufVxuI2FsZXJ0LWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogQGNvbnRhaW5lck1heFdpZHRoO1xuICBtYXJnaW46IDFlbSBhdXRvO1xuICBwYWRkaW5nOiA4cHggMjBweCAwO1xuICBjb2xvcjogQGdyYXlEYXJrO1xuICBhIHtcbiAgICBjb2xvcjogQGdyYXlEYXJrO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IEByZWQ7XG4gICAgfVxuICB9XG4gIC53aWRnZXQ6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgI21haW4tbmF2LFxuICAjc2l0ZS1oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsImh0bWwubmF2LW9wZW4sXG5odG1sLm5hdi1vcGVuIGJvZHkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm5hdmJhciB7XG4gIC8vIEZpeCBmb3IgSUU3J3MgYmFkIHotaW5kZXhpbmcgc28gZHJvcGRvd25zIGRvbid0XG4gIC8vIGFwcGVhciBiZWxvdyBjb250ZW50IHRoYXQgZm9sbG93cyB0aGUgbmF2YmFyXG4gICpwb3NpdGlvbjogcmVsYXRpdmU7XG4gICp6LWluZGV4OiAyO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gNTtcblxuICAuY29udGFpbmVyIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC50b2dnbGUtbmF2LWJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5uYXZiYXItaW5uZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXJCYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQnJhbmQsIGxpbmtzLCB0ZXh0LCBhbmQgYnV0dG9uc1xuICBjb2xvcjogQG5hdmJhclRleHQ7XG4gIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG5cbiAgLy8gSG92ZXIgYW5kIGFjdGl2ZSBzdGF0ZXNcbiAgLy8gUGxhaW4gdGV4dCBpbiB0b3BiYXJcbiAgLm5hdmJhci10ZXh0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLy8gU29jaWFsIGljb25zIGFwcGVhcmluZyBpbiBtYWluIG9yIHN0aWNreSBuYXZcbiAgI2hlYWRlci1zb2NpYWwgbGkgPiBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gIH1cblxuICAvLyBDb21tb24gbmF2IGxheW91dFxuICAubmF2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6IEBuYXZiYXJUZXh0O1xuXG4gICAgJiA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogQG5hdmJhckxpbmtDb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBJbmRpdmlkdWFsIG5hdiBsaW5rc1xuICBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICYgPiBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgbGluZS1oZWlnaHQ6IEBuYXZiYXJIZWlnaHQ7XG4gICAgICBwYWRkaW5nLWxlZnQ6IEBuYXZiYXJIZWlnaHQgLyA0O1xuICAgICAgcGFkZGluZy1yaWdodDogQG5hdmJhckhlaWdodCAvIDQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRHJvcGRvd25zIHdpdGhpbiBuYXZcbiAgbGkuZHJvcGRvd24gPiBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG4gIGxpLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IGxpIGEge1xuICAgIGNvbG9yOiBAbmF2YmFyTGlua0NvbG9yO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IEBiYXNlTGluZUhlaWdodDtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IEBuYXZiYXJMaW5rQ29sb3JIb3ZlcjtcbiAgICB9XG4gIH1cblxuICBsaSA+IGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBuYXZiYXJMaW5rQmFja2dyb3VuZEFjdGl2ZTtcbiAgICBjb2xvcjogQG5hdmJhckxpbmtDb2xvckhvdmVyO1xuXG4gICAgLmNhcmV0OmJlZm9yZSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiBAbmF2YmFyRHJvcGRvd25DYXJldENvbG9ySG92ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3ViIG1lbnVzXG4gIC5zdWItbWVudTpiZWZvcmUsXG4gIC5zdWItc3ViLW1lbnU6YmVmb3JlIHtcbiAgICBib3JkZXItYm90dG9tOiA5cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgYm9yZGVyLXJpZ2h0OiA5cHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIGJvcmRlci10b3A6IDlweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBsZWZ0OiAtOXB4O1xuICAgIHRvcDogMzAlO1xuICB9XG4gIC5zdWItbWVudTphZnRlcixcbiAgLnN1Yi1zdWItbWVudTphZnRlciB7XG4gICAgYm9yZGVyLXRvcDogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgIGJvcmRlci1yaWdodDogOHB4IHNvbGlkIEB3aGl0ZTtcbiAgICBib3JkZXItYm90dG9tOiA4cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiAzMSU7XG4gICAgbGVmdDogLThweDtcbiAgfVxuXG4gIC8vIEhvbWUgbGluayBhbmQgaG9tZSBpY29uXG4gIGxpLmhvbWUtaWNvbixcbiAgbGkuaG9tZS1saW5rIHtcbiAgICBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6IGxpZ2h0ZW4oQGxpbmtDb2xvckhvdmVyLCA1JSk7XG4gICAgfVxuICB9XG5cbiAgLmhvbWUtaWNvbjpob3ZlciBpbWcsXG4gIGxpLmhvbWUtbGluazpob3ZlciBpIHtcbiAgICAub3BhY2l0eSg4NSk7XG4gIH1cblxuICBsaS5ob21lLWxpbmsge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmID4gYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBAbmF2YmFySGVpZ2h0O1xuICAgICAgICB3aWR0aDogQG5hdmJhckhlaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBsaS5ob21lLWljb24gPiBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0OiAoQG5hdmJhckhlaWdodCAtIDE2cHgpO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgICB9XG4gIH1cblxuICAvLyBOYXYgdG9nZ2xlIChidXJnZXIgYnV0dG9uKVxuICAuYnRuLW5hdmJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuXG4gICAgLy8gQGljb25iYXJIZWlnaHQgaXMgdXNlZCA1eDogM3ggZm9yIHRoZSBiYXJzLCAyeCBmb3IgdGhlIG1hcmdpbiBiZXR3ZWVuIHRoZW0uXG4gICAgcGFkZGluZzogKGZsb29yKEBuYXZiYXJIZWlnaHQgLSAoNSAqIEBpY29uYmFySGVpZ2h0KSkpIC8gMiAxMHB4O1xuXG4gICAgLmxhYmVsIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbWFyZ2luOiAtMnB4IDAgMCA1cHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZm9udC1zaXplOiBAbmF2YmFyRm9udFNpemU7XG4gICAgfVxuXG4gICAgLm5hdmJhciAuYnRuLW5hdmJhciAuYmFycyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAuaWNvbi1iYXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMThweDtcbiAgICAgIGhlaWdodDogQGljb25iYXJIZWlnaHQ7XG4gICAgfVxuXG4gICAgLmljb24tYmFyICsgLmljb24tYmFyIHtcbiAgICAgIG1hcmdpbi10b3A6IEBpY29uYmFySGVpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAgIC5uYXYtbGVmdCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgc3R5bGVzIGZvciAubmF2YmFyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA5O1xuXG4gICAgbGkuZHJvcGRvd24ge1xuICAgICAgLmRyb3Bkb3duLW1lbnUgbGkgYSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBAbmF2YmFySGVpZ2h0O1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogQG5hdmJhckhlaWdodDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAudG9nZ2xlLW5hdi1iYXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLm5hdi1zaGVsZiB7XG4gICAgICBiYWNrZ3JvdW5kOiBAZHJvcGRvd25CYWNrZ3JvdW5kO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgICAgLnNpdGUtbmFtZSwgLmhvbWUtaWNvbiwgLmhvbWUtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIHVsLCBsaSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgfVxuXG4gICAgICBsaS5ob21lLWxpbmsge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICBsaSBiLmNhcmV0IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAucm90YXRlKCAtOTBkZWcgKTtcbiAgICAgIH1cblxuICAgICAgbGkub3BlbiA+IGEgLmNhcmV0IHtcbiAgICAgICAgLnJvdGF0ZSggMGRlZyApO1xuICAgICAgfVxuXG4gICAgICBsaS5vcGVuID4gdWwuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC5ib3gtc2hhZG93KCBub25lICk7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm5hdiA+IGxpIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAmLm9wZW4gLm5hdi1zaGVsZiB7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gICAgfVxuXG4gICAgLm5hdiBsaSB7XG4gICAgICAmLmhvbWUtbGluayxcbiAgICAgICYuc2l0ZS1uYW1lIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gR3JhZGllbnQgaXMgYXBwbGllZCB0byBpdCdzIG93biBlbGVtZW50IGJlY2F1c2Ugb3ZlcmZsb3dcbi8vIHZpc2libGUgaXMgbm90IGhvbm9yZWQgYnkgSUUgd2hlbiBmaWx0ZXIgaXMgcHJlc2VudFxuLm5hdmJhci1pbm5lciB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gRHJvcGRvd24gYXJyb3cvY2FyZXRcbi5jYXJldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogQGJhc2VGb250U2l6ZTtcbiAgcGFkZGluZzogMCAoQGJhc2VGb250U2l6ZSAvIDIpO1xuICB0b3A6IDJweDtcblxuICAmOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDZweCBzb2xpZCBAbmF2YmFyRHJvcGRvd25DYXJldENvbG9yO1xuICAgIGJvcmRlci1yaWdodDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogIDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG5cbi8vIEdlbmVyYWwgZHJvcGRvd24vZHJvcHVwIHN0eWxlc1xuLmRyb3B1cCxcbi5kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuY2FyZXQge1xuICAgIGJvcmRlci10b3AtY29sb3I6IEB3aGl0ZTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBAd2hpdGU7XG4gIH1cblxuICAmLmFjdGl2ZSAuY2FyZXQge1xuICAgIC5vcGFjaXR5KDEwMCk7XG4gIH1cbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIC8vIFRoZSBjYXJldCBtYWtlcyB0aGUgdG9nZ2xlIGEgYml0IHRvbyB0YWxsIGluIElFN1xuICAqbWFyZ2luLWJvdHRvbTogLTNweDtcbn1cblxuLy8gRHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogQHppbmRleERyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAxNjBweDtcbiAgcGFkZGluZzogM3B4IDA7XG4gIG1hcmdpbjogMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZHJvcGRvd25CYWNrZ3JvdW5kO1xuICBib3JkZXI6IDFweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjIpO1xuICAqYm9yZGVyLXJpZ2h0LXdpZHRoOiAycHg7XG4gICpib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gIC5ib3gtc2hhZG93KDAgNXB4IDEwcHggcmdiYSgwLDAsMCwuMikpO1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIC1tb3otYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXG4gIGxpIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIExpbmtzIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuICBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICYgPiBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nOiAzcHggMTVweDtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIHRleHQtc2hhZG93OiBub25lO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEFjdGl2ZSBsaW5rcy9tZW51cyB3aXRoaW4gZHJvcGRvd25zXG4gIC5hY3RpdmUgPiBhLFxuICAuYWN0aXZlID4gYTpob3ZlciB7XG4gICAgY29sb3I6IEBuYXZiYXJMaW5rQ29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGRyb3Bkb3duQmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIFRPRE86IFdoYXQgaXMgdGhpcz9cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogQGRyb3Bkb3duQm9yZGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMHB4O1xuICAgIGxlZnQ6IDlweDtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLWxlZnQ6IDlweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDlweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiA5cHggc29saWQgQGRyb3Bkb3duQmFja2dyb3VuZDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtOXB4O1xuICAgIGxlZnQ6IDEwcHg7XG4gIH1cblxuICAvLyBBZGQgc3VwcG9ydCBmb3Igc2Vjb25kIGxldmVsIGRyb3Bkb3duIG1lbnVzXG4gIC5zdWItbWVudSxcbiAgLnN1Yi1zdWItbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTIwJTtcbiAgICBsZWZ0OiA5OSU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLmljb24tYXJyb3ctcmlnaHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDJweDtcbiAgICBsZWZ0OiAzcHg7XG4gIH1cbiAgbGk6aG92ZXIgLnN1Yi1tZW51LFxuICAuc3ViLW1lbnUgbGk6aG92ZXIgLnN1Yi1zdWItbWVudSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIGxpOmhvdmVyIC5zdWItc3ViLW1lbnUsXG4gICAgbGk6aG92ZXIgLnN1Yi1tZW51IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICBodG1sLm5vLXRvdWNoIHVsLm5hdiBsaS5kcm9wZG93bjpob3ZlciB1bC5kcm9wZG93bi1tZW51LFxuICBodG1sLnRvdWNoIHVsLm5hdiBsaS5kcm9wZG93bi5vcGVuIHVsLmRyb3Bkb3duLW1lbnUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLy8gT3BlbiBzdGF0ZSBmb3IgdGhlIGRyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5vcGVuIHtcbiAgLy8gSUU3J3Mgei1pbmRleCBvbmx5IGdvZXMgdG8gdGhlIG5lYXJlc3QgcG9zaXRpb25lZCBhbmNlc3Rvciwgd2hpY2ggd291bGRcbiAgLy8gbWFrZSB0aGUgbWVudSBhcHBlYXIgYmVsb3cgYnV0dG9ucyB0aGF0IGFwcGVhcmVkIGxhdGVyIG9uIHRoZSBwYWdlXG4gICp6LWluZGV4OiBAemluZGV4RHJvcGRvd247XG5cbiAgJiA+IC5kcm9wZG93bi1tZW51IHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4uZHJvcHVwLFxuLm5hdmJhci1maXhlZC1ib3R0b20gLmRyb3Bkb3duIHtcbiAgLy8gUmV2ZXJzZSB0aGUgY2FyZXRcbiAgLmNhcmV0IHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCBAYmxhY2s7XG4gICAgY29udGVudDogXCJcXDIxOTFcIjtcbiAgfVxuICAvLyBEaWZmZXJlbnQgcG9zaXRpb25pbmcgZm9yIGJvdHRvbSB1cCBtZW51XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDFweDtcbiAgfVxufVxuXG4vLyBcIkRvbid0IG1pc3NcIi90b3BpY3MgYmFyXG4jdG9waWNzLWJhciB7XG4gIHBhZGRpbmc6IDNweCAwO1xuICB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICYubWVudS1sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE5hdmJhciBzZWFyY2ggZm9ybVxuI21haW4tbmF2Lm5hdmJhciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBAbmF2YmFyUnVsZUNvbG9yO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQG5hdmJhclJ1bGVDb2xvcjtcbn1cbiIsIkBzdGlja3lOYXZMaW5lSGVpZ2h0OiA1NnB4O1xuXG4uc3RpY2t5LW5hdi1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc3RpY2t5LW5hdi1ob2xkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDk5OTk4O1xuXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHN0aWNreU5hdmJhckJhY2tncm91bmRDb2xvcjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBncmF5TGlnaHRlcjtcbiAgLnRyYW5zaXRpb24ob3BhY2l0eSAwLjNzKTtcblxuICAmLnRyYW5zaXRpb25pbmcge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiBAc3RpY2t5TmF2TGluZUhlaWdodDtcblxuICAgIC5uYXZiYXIge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cblxuICAmLnNob3cge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIGJvZHkuYWRtaW4tYmFyICYge1xuICAgIHRvcDogMzJweDtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3ODJweCkge1xuICAgICAgdG9wOiA0NnB4O1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJvZHkuc2luZ2xlICYuc3RpY2t5X25hdl9kaXNwbGF5X2FydGljbGUsXG4gICAgYm9keS5zaW5nbGUgJi5tYWluX25hdl9oaWRlX2FydGljbGUsXG4gICAgYm9keS5wYWdlICYuc3RpY2t5X25hdl9kaXNwbGF5X2FydGljbGUsXG4gICAgYm9keS5wYWdlICYubWFpbl9uYXZfaGlkZV9hcnRpY2xlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4vLyBFeHRlbmQgdGhlIGNvbW1vbiBuYXZiYXIgc3R5bGVzXG4ubmF2YmFyLnN0aWNreS1uYXZiYXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICAudHJhbnNpdGlvbihvcGFjaXR5IDAuM3MpO1xuXG4gIC5uYXYge1xuICAgIGNvbG9yOiBAc3RpY2t5TmF2YmFyVGV4dDtcbiAgfVxuXG4gIGxpIHtcbiAgICBhIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiBAc3RpY2t5TmF2TGluZUhlaWdodDtcbiAgICAgIGNvbG9yOiBAc3RpY2t5TmF2YmFyTGlua0NvbG9yO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IEBzdGlja3lOYXZiYXJMaW5rQ29sb3JIb3ZlcjtcbiAgICAgIH1cblxuICAgICAgLmNhcmV0OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6IEBzdGlja3lOYXZiYXJEcm9wZG93bkNhcmV0Q29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIgLmNhcmV0OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6IEBzdGlja3lOYXZiYXJEcm9wZG93bkNhcmV0Q29sb3JIb3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmhvbWUtbGluayA+IGE6aG92ZXIge1xuICAgICAgY29sb3I6IGxpZ2h0ZW4oQHN0aWNreU5hdmJhckxpbmtDb2xvciwgNSUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERyb3Bkb3ducyB3aXRoaW4gbmF2XG4gIGxpLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IGxpIGEge1xuICAgIGNvbG9yOiBAc3RpY2t5TmF2YmFyTGlua0NvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogQHN0aWNreU5hdmJhckxpbmtDb2xvckhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIC5zb2NpYWwtaWNvbnMge1xuICAgIG1hcmdpbjogMDtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuXG4gIC5idG4tbmF2YmFyIHtcbiAgICBwYWRkaW5nOiAwIDEwcHggMCAxMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBsaW5lLWhlaWdodDogQHN0aWNreU5hdkxpbmVIZWlnaHQ7XG5cbiAgICAuYmFycyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIC5pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAc3RpY2t5TmF2YmFyTGlua0NvbG9yO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgLmljb24tYmFyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQHN0aWNreU5hdmJhckxpbmtDb2xvckhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuaG9tZS1saW5rIHtcbiAgICAvLyBUT0RPOiBzaG91bGQgYmUgYmFzZWQgb24gYSB2YXJpYWJsZVxuICAgIG1pbi13aWR0aDogNDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAubmF2ID4gbGkge1xuICAgICAgYSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgLy8gVE9ETzogc2hvdWxkIGJlIGJhc2VkIG9uIHZhcmlhYmxlXG4gICAgICAgICAgd2lkdGg6IDEuNDllbTtcbiAgICAgICAgICBoZWlnaHQ6IDEuNDllbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuaWNvbi1ob21lOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbnRhaW5zIHNvY2lhbCBpY29ucywgc2VhcmNoLCBkb25hdGUgbGlua1xuICAubmF2LXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAjaGVhZGVyLWV4dHJhcyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGEuZG9uYXRlLWxpbms6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cblxuICAgICAgLmRvbmF0ZSB7XG4gICAgICAgIGEgc3BhbiB7XG4gICAgICAgICAgLy8gVE9ETzogc2hvdWxkIGJlIGJhc2VkIG9uIHZhcnNcbiAgICAgICAgICBwYWRkaW5nOiA0cHggOHB4O1xuXG4gICAgICAgICAgY29sb3I6IEB3aGl0ZTtcblxuICAgICAgICAgIC8vIFRPRE86IGlzIHRoaXMgc3BlY2lmaWMgdG8gdGhlIGRvbmF0ZSBsaW5rP1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEByZWQ7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKEByZWQsIDUlKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBUT0RPOiB3aGF0IGlzIHRoaXMgZm9yP1xuICAgICAgICAgIGkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIC8vIE5hdmJhciBzZWFyY2ggZm9ybVxuICAuZm9ybS1zZWFyY2gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAudG9nZ2xlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGNvbG9yOiBAYmFzZUNvbG9yO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogOTE7XG4gICAgICAudHJhbnNpdGlvbiggMC4zcyApO1xuICAgIH1cbiAgICAuaW5wdXQtYXBwZW5kIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiA0NHB4O1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgLnRyYW5zaXRpb24oIDAuM3MgKTtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICB6LWluZGV4OiA5MDtcbiAgICAgIHdpZHRoOiAyNDZweDtcbiAgICAgIC50ZXh0LWlucHV0LXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxOTZweDtcbiAgICAgIH1cbiAgICAgIGlucHV0IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIC5ib3gtc2l6aW5nKCBib3JkZXItYm94ICk7XG4gICAgICAgIGhlaWdodDogMzZweCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDUwcHggIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAzNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAuYm94LXNpemluZyggYm9yZGVyLWJveCApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICAgI3N0aWNreS1uYXYtc2VhcmNoLnNob3cge1xuICAgICAgLmlucHV0LWFwcGVuZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIH1cbiAgICAgIC5pbnB1dC1hcHBlbmQsXG4gICAgICAudG9nZ2xlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzM0MzQzNDtcbiAgICAgICAgY29sb3I6IEBib2R5QmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubmF2LWxlZnQge1xuICAgICYgPiB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhpZGVzIHRoZSBzZWNvbmQgc2l0ZSBuYW1lIGluIHRoZSBzdGlja3kgaGVhZGVyXG4gIC8vIHdoZW4gLm5hdi1zaGVsZiBpcyB2aXNpYmxlXG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAgIC5uYXYtbGVmdCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNpdGUgbmFtZVxuICAuc2l0ZS1uYW1lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogIzM0MzQzNDtcblxuICAgIGEge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xuICAgICAgY29sb3I6IEBzdGlja3lOYXZiYXJMaW5rQ29sb3I7XG4gICAgICBtYXgtd2lkdGg6IDIxNHB4O1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogQHN0aWNreU5hdmJhckxpbmtDb2xvckhvdmVyO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmlnaHQgc2lkZSBvZiBuYXYsIHNlYXJjaCwgZG9uYXRlLCBzb2NpYWwgaWNvbnNcbiAgLm5hdi1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgICNoZWFkZXItZXh0cmFzIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYS5kb25hdGUtbGluazpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN0aWNreSBuYXYgZHJvcGRvd24gbW9kc1xuICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBsaS5kcm9wZG93biB7XG4gICAgICAuZHJvcGRvd24tbWVudSBsaSBhIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IEBzdGlja3lOYXZMaW5lSGVpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXYtc2hlbGYgYi5jYXJldCB7XG4gICAgICBwYWRkaW5nOiAyMnB4O1xuICAgIH1cbiAgfVxufVxuXG4vLyBGb3JtYXQgdGhlIHN0aWNreSBuYXYgb3ZlcmZsb3cgbWVudVxuI21lbnUtb3ZlcmZsb3cgPiB1bCB7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgbWF4LWhlaWdodDogODB2aDtcbiAgLmNhcmV0OjpiZWZvcmUsIC5jYXJldDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxuICB1bC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGZsb2F0OiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgbGkgYSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xuICAgIH1cbiAgICAmOjpiZWZvcmUsICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5zdWItbWVudSxcbiAgICAuc3ViLXN1Yi1tZW51IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUE9TVC9QQUdFIEVMRU1FTlRTXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucG9zdC1oZWFkZXIsXG4ucGFnZS1oZWFkZXIsXG4uZW50cnktY29udGVudCxcbi5wb3N0LWZvb3RlcixcbmFydGljbGUuc3Rvcnkge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmU7XG59XG4ucG9zdC1oZWFkZXIsXG4ucGFnZS1oZWFkZXIsXG5hcnRpY2xlLnN0b3J5IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBncmF5TGlnaHRlcjtcbn1cbmFydGljbGUuc3Rvcnkge1xuICBwYWRkaW5nLWJvdHRvbTogQGJhc2VsaW5lIC8gMjtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIElOREVYLlBIUFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnN0b3JpZXMgYXJ0aWNsZSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgQGdyYXlMaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lO1xufVxuLnN0b3JpZXMgYXJ0aWNsZVtjbGFzcyo9XCJzcGFuXCJdIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uc3RvcmllcyBoMi5lbnRyeS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDI7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZS8zO1xuICBsaW5lLWhlaWdodDogMS4xO1xufVxuLnN0b3JpZXMgLmVudHJ5LWNvbnRlbnQgcCB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMjtcbn1cbi5zdG9yaWVzIGg1LnRhZy1saXN0IHtcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMC44MTU7XG4gIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG4gIGZvbnQtd2VpZ2h0Om5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFBhZ2UvQ29tcG9uZW50IFNwZWNpZmljIFN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCBcImFyY2hpdmVzLmxlc3NcIjtcbkBpbXBvcnQgXCJzZWFyY2gubGVzc1wiO1xuQGltcG9ydCBcInN0aWNreS5sZXNzXCI7XG5AaW1wb3J0IFwic2luZ2xlLmxlc3NcIjtcbkBpbXBvcnQgXCJob21lcGFnZS5sZXNzXCI7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQb3N0IFBhZ2UgQ29udGVudCBNb2R1bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubW9kdWxlIHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lLzI7XG4gIGNvbG9yOiBAYmxhY2s7XG4gIGgzIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lLzI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgZGwge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICBkdCwgZGQge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuODE1O1xuICAgIG1hcmdpbjogMCAwIEBiYXNlbGluZS8yO1xuICB9XG4gIHVsIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjgxNTtcbiAgfVxufVxuLnR5cGUtYXNpZGUgcCB7XG4gIGZvbnQtc2l6ZTogMC44MTVlbTtcbn1cbi8qIGRlcHJlY2F0ZWQgaW1hZ2UgdHlwZT8gKi9cbi5pbWFnZSBwIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBmb250LXNpemU6IDEwcHg7XG59XG4uaW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5wLndwLW1lZGlhLWNyZWRpdCB7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuODE1O1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBjb2xvcjogQGdyYXk7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxucC53cC1jYXB0aW9uLXRleHQge1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgIWltcG9ydGFudDtcbiAgbWFyZ2luOiA1cHggMCAwO1xuICBjb2xvcjogQGdyYXk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uaGFsZixcbi5mdWxsLFxuLmV4dHJhY3Qge1xuICBtYXJnaW46IDAgMCBAYmFzZWxpbmU7XG59XG4uaGFsZiB7XG4gIHdpZHRoOiA0MCU7XG59XG4uZnVsbCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmZ1bGwtaW1hZ2Uge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IEBncmF5TGlnaHRlcjtcbn1cbi5wdWxsLXF1b3RlLFxuLnR5cGUtcHVsbC1xdW90ZSB7XG4gIGZvbnQ6IEBzZXJpZkZvbnRGYW1pbHk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS41O1xuICBsaW5lLWhlaWdodDogMS4zO1xuXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAyMHB4IGF1dG87XG4gICAgYmFja2dyb3VuZDogQGdyYXlMaWdodGVyO1xuICB9XG5cbiAgaDYge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgcCB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS41O1xuICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZS80O1xuICB9XG59XG4uRFYtY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lLzM7XG59XG4iLCIvLyBDYXRlZ29yeSwgVGFnIGFuZCBUYXhvbm9teSBQYWdlc1xuLmFyY2hpdmUtYmFja2dyb3VuZCB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZTtcbiAgcGFkZGluZy1ib3R0b206IEBiYXNlbGluZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBncmF5TGlnaHRlcjtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDIuNzU7XG4gICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUvMztcbiAgfVxuICAucmVsYXRlZC10b3BpY3Mge1xuICAgIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG5cdHVsIHtcblx0ICBmbG9hdDogbGVmdDtcblx0ICB3aWR0aDogMTAwJTtcblx0ICBsaXN0LXN0eWxlOiBub25lO1xuXHQgIG1hcmdpbjogMDtcblx0ICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG5cdCAgbGluZS1oZWlnaHQ6IDEuMztcblx0ICBsaSB7XG5cdCAgICBkaXNwbGF5OiBpbmxpbmU7XG5cdCAgICBtYXJnaW46IDA7XG5cdCAgICBwYWRkaW5nOiAwO1xuXHQgICAgJjpmaXJzdC1jaGlsZCB7XG5cdFx0ICBtYXJnaW4tcmlnaHQ6IDVweDtcblx0ICAgIH1cblx0ICAgICY6YWZ0ZXIge1xuXHQgICAgICBjb250ZW50OiBcIiwgXCI7XG5cdCAgICB9XG5cdCAgICAmOmZpcnN0LWNoaWxkOmFmdGVyLFxuXHQgICAgJjpsYXN0LWNoaWxkOmFmdGVyIHtcblx0ICAgICAgY29udGVudDogXCJcIjtcblx0ICAgIH1cblx0ICB9XG4gICAgfVxuICB9XG4gIC5yc3Mtc3Vic2NyaWJlLWxpbmsge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogQHJzcztcbiAgICBpIHtcblx0ICBwYWRkaW5nLWxlZnQ6IDNweDtcblx0ICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdCAgdG9wOiAtMnB4O1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiBkYXJrZW4oQHJzcywgMTUlKTtcbiAgICB9XG59XG59XG4uYXJjaGl2ZSAuaGVybyB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IDFlbSAwO1xuICAud3AtY2FwdGlvbi10ZXh0LFxuICAud3AtbWVkaWEtY3JlZGl0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5hcnRpY2xlIGRpdi5oYXMtdGh1bWJuYWlsIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXgtd2lkdGg6IDMwJTtcbiAgbWFyZ2luOiAwIDAgMTBweCAyMHB4O1xufVxuYXJ0aWNsZSBpbWcuYXR0YWNobWVudC1wb3N0LXRodW1ibmFpbCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLy8gaGllcmFyY2hpY2FsIGNhdGVnb3J5IHBhZ2VzXG4ucHJpbWFyeS1mZWF0dXJlZC1wb3N0LFxuLnNlY29uZGFyeS1mZWF0dXJlZC1wb3N0IHtcbiAgcGFkZGluZzogMCAwIDI0cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAZ3JheUxpZ2h0ZXI7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG4ucHJpbWFyeS1mZWF0dXJlZC1wb3N0IHtcbiAgaDIge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lLzM7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMi4yNTtcbiAgfVxuICAuZW50cnktY29udGVudCBwLFxuICAuZW50cnktY29udGVudCB1bCxcbiAgLmVudHJ5LWNvbnRlbnQgb2wge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgfVxufVxuLnNlY29uZGFyeS1mZWF0dXJlZC1wb3N0IHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcblxuICBpbWcge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjI1O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDo5NjBweCl7XG4gIC5zZWNvbmRhcnktZmVhdHVyZWQtcG9zdCB7XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS41O1xuICAgIH1cbiAgfVxufVxuXG4vLyBwb3N0cyBvbiBhcmNoaXZlIHBhZ2VzXG4uYXJjaGl2ZSxcbi5ob21lIHtcbiAgLnN0b3JpZXMgLmhlcm8uaXMtaW1hZ2UgaW1nIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICAuZW50cnktY29udGVudCB7XG4gICAgJi53aXRoLWhlcm8ge1xuICAgICAgbWFyZ2luOiAtMjJweCA3JSAwO1xuICAgICAgcGFkZGluZzogMjJweCAxOHB4O1xuICAgICAgd2lkdGg6IDg2JTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICBtYXJnaW46IDhweCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICBoNS5ieWxpbmUge1xuICAgICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMC44MTU7XG4gICAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBEYXRlIEFyY2hpdmVcbi5hcmNoaXZlLWRyb3Bkb3duIHtcbiAgbWFyZ2luOiBAYmFzZWxpbmUvMiAwO1xufVxuXG4vLyBTZXJpZXMgTGFuZGluZ3NcbiNzZXJpZXMtZm9vdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4jc2VyaWVzLW1haW4gI2NvbnRlbnQge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmU7XG59XG4jc2VyaWVzLWhlYWRlciAuYnlsaW5lIHRpbWUsXG4jc2VyaWVzLWhlYWRlciAuYnlsaW5lIC5zZXAge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBMb2FkIG1vcmUgcG9zdHNcbi5sb2FkLW1vcmUge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ubG9hZGluZyAubG9hZC1tb3JlIHtcbiAgcGFkZGluZy1yaWdodDogMzJweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC93cC1hZG1pbi9pbWFnZXMvbG9hZGluZy5naWYpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5NiUgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuIiwiLyoqXG4gKiBTdHlsZXMgZm9yIHNlYXJjaCBmb3JtcyBhbmQgc2VhcmNoIHJlc3VsdHNcbiAqXG4gKiBTdHlsZXMgZm9yIHRoZSBnbG9iYWwgbmF2IHNlYXJjaCBhcmUgaW4gbGVzcy9pbmMvaGVhZGVyLmxlc3NcbiAqL1xuXG4vLyBTZWFyY2ggUmVzdWx0c1xuLmFyY2hpdmUuc2VhcmNoLXJlc3VsdHMge1xuICAuaW5wdXQtYXBwZW5kIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLmZvcm0tc2VhcmNoIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgaW5wdXQge1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuICAgIGJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAlO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gIH1cbiAgLnNlYXJjaC10ZXJtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gICAgcGFkZGluZzogMXB4IDVweDtcbiAgfVxuICBoMyAucnNzLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gIH1cbiAgaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41ZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBncmF5O1xuICB9XG5cbiAgLnN0b3JpZXMge1xuICAgIGFydGljbGUge1xuICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gICAgfVxuICB9XG4gIC8vIE5vIHNwYWNpbmcgYWZ0ZXIgcGFyYWdyYXBoLCBzZWUgaHR0cHM6Ly9naXRodWIuY29tL0lOTi9MYXJnby9wdWxsLzExNzdcbiAgLmVudHJ5LWNvbnRlbnQgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuZGF0ZS1saW5rIGEsXG4gIC5kYXRlLWxpbmsge1xuICAgIGNvbG9yOiBAZ3JheTtcbiAgfVxufVxuLnNlYXJjaC1yZXN1bHRzICNjb250ZW50IC5mb3JtLXNlYXJjaCB7XG59XG5cbi8qIEdvb2dsZSBDU0UgKi9cbi5nY3NfY29udGFpbmVyIHtcbiAgbWFyZ2luOiAyMHB4IDA7XG5cbiAgdGFibGUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIHRhYmxlLFxuICB0Ym9keSxcbiAgdHIsXG4gIHRkIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cblxuICAuZ3NjLXNlYXJjaC1ib3gge1xuICAgIG1hcmdpbjogMThweCAwO1xuICAgIC5nc3N0X2EgLmdzY2JfYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDNweDtcbiAgICB9XG4gICAgdGQuZ3NpYl9hIHtcbiAgICAgIHBhZGRpbmc6IDAgNnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmdzYy1jb250cm9sLWNzZSB7XG4gICAgLmdzLXJlc3VsdCB7XG4gICAgICAuZ3MtdGl0bGUsXG4gICAgICAuZ3MtdGl0bGUgKiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5zdGlja3ktcmVsYXRlZCxcbi5zdGlja3ktc29sbyB7XG4gIGEge1xuICAgICY6aG92ZXIge1xuICAgICAgLm9wYWNpdHkoOTApO1xuICAgIH1cbiAgfVxufVxuLnN0aWNreS1tYWluLWZlYXR1cmUge1xuICAuaW1hZ2Utd3JhcCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaW1nIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAmLnNwYW4zIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgaDIge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbiAgcCB7XG4gICAgYSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICB9XG59XG4uc3RpY2t5LWZlYXR1cmVzLWxpc3Qge1xuICBoNCB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yO1xuICAgIG1hcmdpbjogMCAwIDhweCAwO1xuICB9XG4gIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDdweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAmLnN0aWNreS1hbGwge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gIC5zdGlja3ktbWFpbi1mZWF0dXJlIHtcbiAgICAuaW1hZ2Utd3JhcCBpbWcge1xuICAgICAgbWFyZ2luOiAwIDE1cHggMTVweCAwO1xuICAgIH1cbiAgICBoNS5ieWxpbmUge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICAgIC5zcGFuOSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDM2MHB4KSB7XG4gIC5zdGlja3ktbWFpbi1mZWF0dXJlIHtcbiAgICAuaGlkZGVuLXBob25lIHtcbiAgICAgIGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnZpc2libGUtcGhvbmUge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBTaW5nbGUgLSBTdHlsaW5nIGZvciBzaW5nbGUgcG9zdHMgJiBwYWdlcy5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAxLjAgLSBOb3JtYWwgbGF5b3V0IG92ZXJyaWRlcyAob3ZlcnJpZGUgdHdvIGNvbHVtbiBkaXNwbGF5KVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuYm9keS5ub3JtYWwuc2luZ2xlLXBvc3QsXG5ib2R5Lm5vcm1hbC5wYWdlIHtcblxuICAvKiAxLjEgLSBIZWFkZXIgKi9cblxuICBhcnRpY2xlLnBvc3QgPiBoZWFkZXIsXG4gIGFydGljbGUucGFnZSA+IGhlYWRlciB7XG5cbiAgICBjbGVhcjogYm90aDtcbiAgICBtYXJnaW46IDI0cHggMTcuMDIxMyU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLy8gdG9wIGRhdGVcbiAgICBoNS50b3AtZGF0ZSB7XG4gICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgLSAyO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8vIHRvcCB0YWdcbiAgICBoNS50b3AtdGFnIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgcGFkZGluZy10b3A6IDI2cHg7XG4gICAgfVxuXG4gICAgLy8gc3VidGl0bGVcbiAgICBoMi5zdWJ0aXRsZSB7XG4gICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjIyMjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBjb2xvcjogIzk5OTtcbiAgICB9XG5cbiAgICAvLyBoaWRlIG5vcm1hbCBkYXRlIGRpc3BsYXkuXG4gICAgLnNlcCxcbiAgICAuZW50cnktZGF0ZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8vIGVkaXQgbGlua1xuICAgIC5lZGl0LWxpbmsge1xuICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgfVxuXG4gIH1cblxuICAvKiAxLjIgLSBIZXJvICovXG4gIC5oZXJvIHtcbiAgICBwLndwLWNhcHRpb24tdGV4dCxcbiAgICBwLndwLW1lZGlhLWNyZWRpdCB7XG4gICAgICBtYXJnaW46MCAxNy4wMjEzJSAxMnB4O1xuICAgIH1cbiAgfVxuXG4gIC8qIDEuMyAtIFNpZGViYXIgKGxlZnQgb2YgcG9zdCkgKi9cblxuICAuc2luZ2xlICNtYWluICNzaWRlYmFyIHtcbiAgICAgIC8qIGFsbCB0byB1bmRvIGJvb3RzdHJhcCAqL1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAud2lkZ2V0IHtcbiAgICAgIC8qIGZsb2F0IHdpZGdldHMgKi9cbiAgICAgIGZsb2F0OiBsZWZ0OyBcbiAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgLy8gYWRkIHBhZGRpbmcgZm9yIGd1dHRlciBiZXR3ZWVuIGJvZHkgdGV4dCAmIHNpZGViYXJcbiAgICAgIHdpZHRoOiAxNy4wMjEyNzY1OTQlIC0gQGZsdWlkR3JpZEd1dHRlcldpZHRoO1xuICAgIH1cbiAgICAud2lkZ2V0OmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwOyAvLyBmaXJzdCB3aWRnZXQgZmx1c2ggd2l0aCB0b3Agb2YgYXJ0aWNsZVxuICAgIH1cbiAgfVxuXG4gIC8qIDEuNCAtIEVudHJ5IENvbnRlbnQgKHRoZSBtYWluIHBvc3QgY29udGVudCkgKi9cblxuICAuZW50cnktY29udGVudCB7XG4gICAgcGFkZGluZzogMCAxNy4wMjEyNzY1OTQlO1xuICB9XG5cblxuICBwLmludHJvLFxuICBwLndwLWNhcHRpb24tdGV4dCB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG5cbiAgLyogMS41IC0gQXJ0aWNsZSBCb3R0b20gKGFmdGVyIHBvc3QgY29udGVudCkgKi9cblxuICAuYXJ0aWNsZS1ib3R0b20ge1xuICAgIG1hcmdpbjogMCAxNy4wMjEyNzY1OTQlO1xuICAgIC5wb3N0LXNvY2lhbCB7XG4gICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAjY29tbWVudHMsXG4gICNkaXNxdXNfdGhyZWFkIHtcbiAgICBtYXJnaW46IDAgMTcuMDIxMjc2NTk0JTtcbiAgfVxuXG4gIC8qIDEuNiAtIE92ZXJyaWRlcyAqL1xuXG4gIEBtZWRpYSBAdGFibGV0RG93biB7XG4gIC5zaW5nbGUgI21haW4gI3NpZGViYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmFydGljbGUtYm90dG9tLFxuICAgICNjb21tZW50cyxcbiAgICAjZGlzcXVzX3RocmVhZCB7XG4gICAgICBtYXJnaW46IDAgQGZsdWlkR3JpZENvbHVtbldpZHRoO1xuICAgIH1cbiAgICBhcnRpY2xlLnBvc3QgPiBoZWFkZXIge1xuICAgICAgbWFyZ2luOiAyNHB4IEBmbHVpZEdyaWRDb2x1bW5XaWR0aDtcbiAgICB9XG4gICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMCBAZmx1aWRHcmlkQ29sdW1uV2lkdGg7XG4gICAgfVxuICAgIC5oZXJvIHtcbiAgICAgIHAud3AtY2FwdGlvbi10ZXh0LFxuICAgICAgcC53cC1tZWRpYS1jcmVkaXQge1xuICAgICAgICBtYXJnaW46MCBAZmx1aWRHcmlkR3V0dGVyV2lkdGggMTJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgQG1vYmlsZSB7XG4gICAgLmFydGljbGUtYm90dG9tLFxuICAgICNjb21tZW50cyxcbiAgICAjZGlzcXVzX3RocmVhZCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIGFydGljbGUucG9zdCA+IGhlYWRlciB7XG4gICAgICBtYXJnaW46IDI0cHggMDtcbiAgICB9XG4gICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIDIuMCAtIEVudHJ5IEVsZW1lbnQgU3R5bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiAyLjEgLSBCeWxpbmUgKi9cblxuLmJ5bGluZSB7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDI7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuOTE1O1xuICBhIHtcbiAgICBjb2xvcjogQHRleHRDb2xvcjtcbiAgfVxuICAuYXV0aG9yLFxuICAudGltZS1hZ28sXG4gIC5lZGl0LWxpbmsgYSB7XG4gICAgLyp0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyovXG4gIH1cbiAgLmF1dGhvciB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLnRpbWUtYWdvLFxuICAuZWRpdC1saW5rIGEge1xuICAgIGNvbG9yOiBAcmVkO1xuICB9XG59XG5cbi8qIDIuMiAtIFNvY2lhbCBtZWRpYSBsaW5rcyAqL1xuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnBvc3Qtc29jaWFsID4gc3BhbiB7XG4gICAgbWluLXdpZHRoOiA1MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gIC5wb3N0LXNvY2lhbCA+IHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAvLyBGdWRnaW5nIHRvIHByZXZlbnQgb3ZlcmxhcCBiZXR3ZWVuIHRoZSBpY29uIGFuZCB0aGUgdGV4dFxuICAucG9zdC1zb2NpYWwgaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgICBtYXJnaW4tbGVmdDogMC4yZW07XG4gIH1cbn1cblxuLnBvc3Qtc29jaWFsIHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lO1xuICAmID4gc3BhbiB7XG4gICAgLy8gY29waWVkIGZyb20gd2lkZ2V0cy9sYXJnby1mb2xsb3cubGVzc1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgIG1hcmdpbjogMC41ZW0gMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgICBjb2xvcjogQHdoaXRlO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJiA+IGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwLjNlbSAxZW0gMC4zZW0gMC41ZW07IC8vIElycmVndWxhciBwYWRkaW5nIGlzIHRvIGNvdW50ZXIgMC4yZW0gbWFyZ2luLWxlZnQgb24gdGhlIGljb24uXG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICBwYWRkaW5nOiAwLjNlbSAwLjZlbTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICBwYWRkaW5nOiAwLjNlbSAwLjJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgYSB7XG4gICAgY29sb3I6IEB3aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBAd2hpdGU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG4gIGksICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5lbWFpbDpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIC5tb3JlLXNvY2lhbC1saW5rcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQG9yYW5nZTtcbiAgICBjb2xvcjogQHdoaXRlO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbihAb3JhbmdlLCA1JSk7XG4gICAgfVxuXG4gICAgLnBvcG92ZXIge1xuICAgICAgdG9wOiA0MHB4O1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IEBncmF5O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogQGdyYXlEYXJrO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGkge1xuICAgICAgICBjb2xvcjogQGdyYXlMaWdodDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICB1bCwgbGkge1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIH1cblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDI4cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICByaWdodDogMTlweDtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jZmxvYXRpbmctc29jaWFsLWJ1dHRvbnMge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG4gIGJvcmRlcjogMXB4IHNvbGlkIEBncmF5TGlnaHRlcjtcbiAgLmhpZGRlbi1waG9uZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5wb3N0LXNvY2lhbCB7XG4gICAgJiA+IHNwYW4ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAtMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcblxuICAgICAgJjpob3ZlciB7IGN1cnNvcjogcG9pbnRlcjsgfVxuXG4gICAgICAmID4gYSB7XG4gICAgICAgIGNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxOHB4O1xuICAgICAgICBtaW4td2lkdGg6IDI4cHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI4cHg7XG4gICAgICB9XG4gICAgfVxuICAgICYgPiAuZW1haWw6aG92ZXIsXG4gICAgJiA+IHNwYW46aG92ZXIgPiBhIHtcbiAgICAgIGNvbG9yOiBAd2hpdGU7XG4gICAgfVxuICB9XG4gIC5yc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEByc3MsIDUlKTtcbiAgICB9XG4gIH1cbiAgLnR3aXR0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEB0d2l0dGVyLCA1JSk7XG4gICAgfVxuICB9XG4gIC5mYWNlYm9vayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdoaXRlO1xuICAgIGNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGZhY2Vib29rLCA1JSk7XG4gICAgfVxuICB9XG4gIC5saW5rZWRpbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdoaXRlO1xuICAgIGNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGxpbmtlZGluLCA1JSk7XG4gICAgfVxuICB9XG4gIC5ncGx1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdoaXRlO1xuICAgIGNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGdwbHVzLCA1JSk7XG4gICAgfVxuICB9XG4gIC5mbGlja3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBmbGlja3IsIDUlKTtcbiAgICB9XG4gIH1cbiAgLnlvdXR1YmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEB5b3V0dWJlLCA1JSk7XG4gICAgfVxuICB9XG4gIC5wcmludCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdoaXRlO1xuICAgIGNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oIzg1ODk4RiwgNSUpO1xuICAgIH1cbiAgfVxuICAuZW1haWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgICBjb2xvcjogQGdyYXlMaWdodGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCM2MjY1NkYsIDUlKTtcbiAgICB9XG4gIH1cbiAgLm1vcmUtc29jaWFsLWxpbmtzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2hpdGU7XG4gICAgY29sb3I6IEBncmF5TGlnaHRlcjtcbiAgICBhLnBvcHBlZCxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBvcmFuZ2U7XG4gICAgICBjb2xvcjogQHdoaXRlO1xuICAgIH1cblxuICAgIC5wb3BvdmVyIHtcbiAgICAgIHRvcDogNjhweDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgICAgaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC4yNWVtO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiBAZ3JheTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IEBncmF5RGFyaztcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc29jaWFsLWJ0biB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgbWFyZ2luOiAwLjVlbSAwO1xuICAgIHBhZGRpbmc6IDAuNWVtO1xuICB9XG4gIC5wb3N0LXNvY2lhbCB7XG4gICAgYTpob3ZlciBpIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgaSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG59XG5cbi8qIDIuMyAtIERlZmF1bHQgV1AgUG9zdCBQYWdpbmF0aW9uIFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBOT1RFOiBMYXJnbyBoYXMgYSB3aWRnZXQgdG8gaGFuZGxlIHBvc3QgcGFnaW5hdGlvbiwgdGhlc2Ugc3R5bGUgZGVmYXVsdCBXUCBvdXRwdXRcbiAqXG4gKiBAc2VlIC9sZXNzL2luYy93aWRnZXRzL2xhcmdvLXByZXYtbmV4dC1saW5rcy5sZXNzXG4gKi9cbi5wb3N0LXBhZ2luYXRpb24ge1xuICBhLCBzcGFuIHtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgZm9udC1mYW1pbHk6IEBzYW5zRm9udEZhbWlseTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuODE1O1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vKiAyLjQgLSBQb3N0IG1ldGEgKi9cblxuLmxhYmVscyxcbi50YWdzLFxuLnBhZ2VyLFxuLnRhZ3MsXG4ucGFnZXIge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG59XG5cbi5zaW5nbGUtcG9zdCAuYXV0aG9yLWJveCxcbi5zaW5nbGUtYXJnb2xpbmtyb3VuZHVwcyAuYXV0aG9yLWJveCxcbi5sYWJlbHMge1xuICBoNSB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbi5sYWJlbHMgLnNlcmllcy1sYWJlbCBoNSB7XG4gIGEucnNzLWxpbmsge1xuICAgIGZsb2F0OnJpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICBjb2xvcjogI2Y4OTQwNjtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKyAyO1xuICAgICY6aG92ZXIge1xuICAgICAgLm9wYWNpdHkoODUpO1xuICAgIH1cbiAgfVxufVxuXG4vKiAyLjUgLSBMYWJsZXMgKi9cblxuLnNlcmllcy1sYWJlbCB7XG4gIG1hcmdpbjogNXB4O1xuICBwYWRkaW5nOiA4cHg7XG4gIGg1IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuODE1O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLyoqXG4gKiBTdHlsZXMgZm9yIHRoZSBwb3N0LWxlYWRpbmcgaGVybywgdXNlZCBpbiBib3RoIHNpbmdsZS1jb2x1bW4gLm5vcm1hbCBwb3N0cyBhbmQgdHdvLWNvbHVtbiAuY2xhc3NpYyBwb3N0c1xuICpcbiAqIEBzaW5jZSAwLjUuNVxuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL0lOTi9MYXJnby9pc3N1ZXMvOTM0XG4gKi9cblxuLmhlcm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgMCAyNHB4O1xuICAmLmlzLWdhbGxlcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gIHAud3AtY2FwdGlvbi10ZXh0LFxuICBwLndwLW1lZGlhLWNyZWRpdCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplIC0gMjtcbiAgfVxuICBwLndwLWNhcHRpb24tdGV4dCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW46IDAgMTJweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgfVxuICBwLndwLW1lZGlhLWNyZWRpdCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luOiA0cHggMTJweCA0cHg7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxuICAmLmlzLWVtYmVkLFxuICAmLmlzLXZpZGVvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgIC5lbWJlZC1jb250YWluZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgJi5pcy1lbXB0eSB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gIH1cbn1cbiIsIi5ob21lIC5zdG9yaWVzIGFydGljbGUgaW1nLmF0dGFjaG1lbnQtbWVkaXVtLFxuLnN1Yi1zdG9yaWVzIGltZy5hdHRhY2htZW50LXBvc3QtdGh1bWJuYWlsIHtcbiAgbWF4LXdpZHRoOiAzMCU7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwIDAgMTBweCAyMHB4O1xufVxuXG4jaG9tZXBhZ2UtYm90dG9tIHtcbiAgbWFyZ2luLXRvcDogQGJhc2VsaW5lO1xuICAud2lkZ2V0IHtcbiAgICB3aWR0aDogNDIuNSU7XG4gICAgcGFkZGluZzogMi41JTtcbiAgICAmLm9kZCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICAgICYuZXZlbiB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDT01NRU5UU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuI2Rpc3F1c190aHJlYWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAZ3JheUxpZ2h0ZXI7XG4gIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgYm9yZGVyLXRvcDogOHB4IHNvbGlkIEBncmF5TGlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZTtcbn1cblxuLyogPSBDdXN0b21pemVkIGNvbW1lbnQgZm9ybSBzdHlsZXMgdmlhIHRoZSB0d2VudHkgZWxldmVuIHRoZW1lXG5odHRwOi8vd29yZHByZXNzLm9yZy9leHRlbmQvdGhlbWVzL3R3ZW50eWVsZXZlblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuI2NvbW1lbnRzIHtcblx0Y2xlYXI6Ym90aDtcbn1cbiNjb250ZW50ICNjb21tZW50cy10aXRsZSB7XG5cdGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcblx0bWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMjtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4ubm9wYXNzd29yZCB7XG5cdGNvbG9yOiBAZ3JheUxpZ2h0O1xuXHRmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjU7XG5cdGZvbnQtd2VpZ2h0OiAxMDA7XG5cdG1hcmdpbjogQGJhc2VsaW5lIDA7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5ub2NvbW1lbnRzIHtcblx0ZGlzcGxheTpub25lO1xufVxuLmNvbW1lbnRsaXN0IHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luOiAwIGF1dG87XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4uY29tbWVudGxpc3QgPiBsaS5jb21tZW50IHtcblx0YmFja2dyb3VuZDogI2Y2ZjZmNjtcblx0Ym9yZGVyOiAxcHggc29saWQgI2RkZDtcblx0bWFyZ2luOiAwIDAgQGJhc2VsaW5lIC8gMjtcblx0cGFkZGluZzogMTRweDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmNvbW1lbnRsaXN0IC5waW5nYmFjayB7XG5cdG1hcmdpbjogMCAwIDEuNjI1ZW07XG5cdHBhZGRpbmc6IDAgMS42MjVlbTtcbn1cbi5jb21tZW50bGlzdCAuY2hpbGRyZW4ge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRtYXJnaW46IDA7XG59XG4uY29tbWVudGxpc3QgLmNoaWxkcmVuIGxpLmNvbW1lbnQge1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRib3JkZXItbGVmdDogMXB4IHNvbGlkICNkZGQ7XG5cdG1hcmdpbjogMS42MjVlbSAwIDA7XG5cdHBhZGRpbmc6IDEuNjI1ZW07XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jb21tZW50bGlzdCAuY2hpbGRyZW4gbGkuY29tbWVudCAuZm4ge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbi5jb21tZW50LW1ldGEgLmZuIHtcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xufVxuLmNvbW1lbnQtbWV0YSB7XG5cdGNvbG9yOiAjNjY2O1xuXHRmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjgxNTtcblx0bGluZS1oZWlnaHQ6IDEuNTtcbn1cbi5jb21tZW50bGlzdCAuY29tbWVudC1jb250ZW50IHtcblx0Y2xlYXI6Ym90aDtcbn1cbi5jb21tZW50bGlzdCAuY29tbWVudC1jb250ZW50IHAge1xuXHRmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG5cdG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDQ7XG59XG4uY29tbWVudGxpc3QgLmNoaWxkcmVuIGxpLmNvbW1lbnQgLmNvbW1lbnQtbWV0YSB7XG5cdGxpbmUtaGVpZ2h0OiAxLjYyNWVtO1xuXHRtYXJnaW4tbGVmdDogNTBweDtcbn1cbi5jb21tZW50bGlzdCAuY2hpbGRyZW4gbGkuY29tbWVudCAuY29tbWVudC1jb250ZW50IHtcblx0bWFyZ2luOiAxLjYyNWVtIDAgMDtcbn1cbi5jb21tZW50LW1ldGEgYTpmb2N1cyxcbi5jb21tZW50LW1ldGEgYTphY3RpdmUsXG4uY29tbWVudC1tZXRhIGE6aG92ZXIge1xufVxuLmNvbW1lbnRsaXN0IC5hdmF0YXIge1xuXHQuYm94LXNoYWRvdygwIDFweCAycHggI2NjYyk7XG5cdHBhZGRpbmc6IDA7XG5cdGZsb2F0OmxlZnQ7XG5cdG1hcmdpbjogMCAxMHB4IDEwcHggMDtcblx0d2lkdGg6IDUwcHg7XG5cdGhlaWdodDogNTBweDtcbn1cblxuLmNvbW1lbnRsaXN0IC5jaGlsZHJlbiAuYXZhdGFyIHtcblx0YmFja2dyb3VuZDogbm9uZTtcblx0LXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuXHQtbW96LWJveC1zaGFkb3c6IG5vbmU7XG5cdGJveC1zaGFkb3c6IG5vbmU7XG5cdGxlZnQ6IDIuMmVtO1xuXHRwYWRkaW5nOiAwO1xuXHR0b3A6IDIuMmVtO1xufVxuYS5jb21tZW50LXJlcGx5LWxpbmsge1xuXHRiYWNrZ3JvdW5kOiAjZWVlO1xuXHRjb2xvcjogIzY2Njtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRmb250LXNpemU6IDEycHg7XG5cdHBhZGRpbmc6IDAgOHB4O1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5hLmNvbW1lbnQtcmVwbHktbGluazpob3ZlcixcbmEuY29tbWVudC1yZXBseS1saW5rOmZvY3VzLFxuYS5jb21tZW50LXJlcGx5LWxpbms6YWN0aXZlIHtcblx0YmFja2dyb3VuZDogIzg4ODtcblx0Y29sb3I6ICNmZmY7XG59XG5hLmNvbW1lbnQtcmVwbHktbGluayA+IHNwYW4ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dG9wOiAtMXB4O1xufVxuXG4vKiBQb3N0IGF1dGhvciBoaWdobGlnaHRpbmcgKi9cbi5jb21tZW50bGlzdCA+IGxpLmJ5cG9zdGF1dGhvciB7XG5cdGJhY2tncm91bmQ6ICNkZGQ7XG5cdGJvcmRlci1jb2xvcjogI2QzZDNkMztcbn1cbi5jb21tZW50bGlzdCA+IGxpLmJ5cG9zdGF1dGhvciAuY29tbWVudC1tZXRhIHtcblx0Y29sb3I6ICM1NzU3NTc7XG59XG4uY29tbWVudGxpc3QgPiBsaS5ieXBvc3RhdXRob3IgLmNvbW1lbnQtbWV0YSBhOmZvY3VzLFxuLmNvbW1lbnRsaXN0ID4gbGkuYnlwb3N0YXV0aG9yIC5jb21tZW50LW1ldGEgYTphY3RpdmUsXG4uY29tbWVudGxpc3QgPiBsaS5ieXBvc3RhdXRob3IgLmNvbW1lbnQtbWV0YSBhOmhvdmVyIHtcbn1cbi5jb21tZW50bGlzdCA+IGxpLmJ5cG9zdGF1dGhvcjpiZWZvcmUge1xuXHRjb250ZW50OiB1cmwoaW1hZ2VzL2NvbW1lbnQtYXJyb3ctYnlwb3N0YXV0aG9yLnBuZyk7XG59XG5cbi8qIFBvc3QgQXV0aG9yIHRocmVhZGVkIGNvbW1lbnRzICovXG4uY29tbWVudGxpc3QgLmNoaWxkcmVuID4gbGkuYnlwb3N0YXV0aG9yIHtcblx0YmFja2dyb3VuZDogI2RkZDtcblx0Ym9yZGVyLWNvbG9yOiAjZDNkM2QzO1xufVxuXG4vKiBDb21tZW50IEZvcm0gKi9cbiNyZXNwb25kIHtcblx0YmFja2dyb3VuZDogI2Y2ZjZmNjtcblx0Ym9yZGVyOiAxcHggc29saWQgI2VlZTtcblx0bWFyZ2luOiAwIGF1dG8gQGJhc2VsaW5lO1xuXHRwYWRkaW5nOiA0JSA0JSA4JTtcblx0d2lkdGg6IDkyJTtcbn1cbiNyZXNwb25kIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuI3Jlc3BvbmQgdGV4dGFyZWEge1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRib3JkZXI6IDRweCBzb2xpZCAjZWVlO1xuXHQtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDNweCByZ2JhKDIwNCwyMDQsMjA0LDAuOTUpO1xuXHQtbW96LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDNweCByZ2JhKDIwNCwyMDQsMjA0LDAuOTUpO1xuXHRib3gtc2hhZG93OiBpbnNldCAwIDFweCAzcHggcmdiYSgyMDQsMjA0LDIwNCwwLjk1KTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiAxMHB4O1xuXHR0ZXh0LWluZGVudDogODBweDtcbn1cbiNyZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yLFxuI3Jlc3BvbmQgLmNvbW1lbnQtZm9ybS1lbWFpbCxcbiNyZXNwb25kIC5jb21tZW50LWZvcm0tdXJsLFxuI3Jlc3BvbmQgLmNvbW1lbnQtZm9ybS1jb21tZW50IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRtYXJnaW4tdG9wOiAtMjBweDtcbn1cbiNyZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yIGxhYmVsLFxuI3Jlc3BvbmQgLmNvbW1lbnQtZm9ybS1lbWFpbCBsYWJlbCxcbiNyZXNwb25kIC5jb21tZW50LWZvcm0tdXJsIGxhYmVsLFxuI3Jlc3BvbmQgLmNvbW1lbnQtZm9ybS1jb21tZW50IGxhYmVsIHtcblx0YmFja2dyb3VuZDogI2VlZTtcblx0LXdlYmtpdC1ib3gtc2hhZG93OiAxcHggMnB4IDJweCByZ2JhKDIwNCwyMDQsMjA0LDAuOCk7XG5cdC1tb3otYm94LXNoYWRvdzogMXB4IDJweCAycHggcmdiYSgyMDQsMjA0LDIwNCwwLjgpO1xuXHRib3gtc2hhZG93OiAxcHggMnB4IDJweCByZ2JhKDIwNCwyMDQsMjA0LDAuOCk7XG5cdGNvbG9yOiAjNTU1O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGZvbnQtc2l6ZTogMC44MTVlbTtcblx0bGVmdDogNHB4O1xuXHRtaW4td2lkdGg6IDYwcHg7XG5cdHBhZGRpbmc6IDRweCAxMHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRvcDogNDBweDtcblx0ei1pbmRleDogMTtcbn1cbiNyZXNwb25kIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuI3Jlc3BvbmQgdGV4dGFyZWE6Zm9jdXMge1xuXHR0ZXh0LWluZGVudDogMDtcblx0ei1pbmRleDogMTtcbn1cbiNyZXNwb25kIHRleHRhcmVhIHtcblx0cmVzaXplOiB2ZXJ0aWNhbDtcblx0d2lkdGg6IDk1JTtcbn1cbiNyZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yIC5yZXF1aXJlZCxcbiNyZXNwb25kIC5jb21tZW50LWZvcm0tZW1haWwgLnJlcXVpcmVkIHtcblx0Y29sb3I6ICNiZDM1MDA7XG5cdGZvbnQtc2l6ZTogMjJweDtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGxlZnQ6IDc1JTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDQ1cHg7XG5cdHotaW5kZXg6IDE7XG59XG4jcmVzcG9uZCAuY29tbWVudC1ub3RlcyxcbiNyZXNwb25kIC5sb2dnZWQtaW4tYXMge1xuXHRmb250LXNpemU6IDAuODE1ZW07XG59XG4jcmVzcG9uZCBwIHtcblx0bWFyZ2luOiAxMHB4IDA7XG59XG4jcmVzcG9uZCAuZm9ybS1zdWJtaXQge1xuXHRmbG9hdDogcmlnaHQ7XG5cdG1hcmdpbjogLTIwcHggMCAxMHB4O1xufVxuI3Jlc3BvbmQgaW5wdXQjc3VibWl0IHtcblx0YmFja2dyb3VuZDogIzIyMjtcblx0Ym9yZGVyOiBub25lO1xuXHQuYm94LXNoYWRvdygwIDFweCAycHggcmdiYSgwLDAsMCwwLjMpKTtcblx0Y29sb3I6ICNlZWU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Zm9udC1zaXplOiAxNXB4O1xuXHRtYXJnaW46IDE0cHggMCAyMHB4O1xuXHRwYWRkaW5nOiA1cHggMjJweDtcblx0dGV4dC1zaGFkb3c6IDAgLTFweCAwIHJnYmEoMCwwLDAsMC4zKTtcbn1cblxuI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmhvdmVyIHtcblx0YmFja2dyb3VuZDogIzU1NTtcbn1cblxuI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmFjdGl2ZSB7XG5cdGJhY2tncm91bmQ6ICMxOTgyZDE7XG5cdGNvbG9yOiAjYmZkZGYzO1xufVxuI3Jlc3BvbmQgI2NhbmNlbC1jb21tZW50LXJlcGx5LWxpbmsge1xuXHRjb2xvcjogIzY2Njtcblx0bWFyZ2luLWxlZnQ6IDAuNjY3ZW07XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbiNyZXNwb25kIC5sb2dnZWQtaW4tYXMgYTpob3ZlcixcbiNyZXNwb25kICNjYW5jZWwtY29tbWVudC1yZXBseS1saW5rOmhvdmVyIHtcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uY29tbWVudGxpc3QgI3Jlc3BvbmQge1xuXHRtYXJnaW46IDEuNjI1ZW0gMCAwO1xuXHR3aWR0aDogYXV0bztcbn1cbiNyZXBseS10aXRsZSB7XG5cdGNvbG9yOiAjMzczNzM3O1xuXHRmb250LXNpemU6IDEuNWVtO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0bGluZS1oZWlnaHQ6IDMwcHg7XG59XG4jY2FuY2VsLWNvbW1lbnQtcmVwbHktbGluayB7XG5cdGNvbG9yOiAjODg4O1xuXHRkaXNwbGF5OiBibG9jaztcblx0Zm9udC1zaXplOiAwLjY2N2VtO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRsaW5lLWhlaWdodDogMi4yZW07XG5cdGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IDEuNjI1ZW07XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0dG9wOiAxLjFlbTtcbn1cbiNjYW5jZWwtY29tbWVudC1yZXBseS1saW5rOmZvY3VzLFxuI2NhbmNlbC1jb21tZW50LXJlcGx5LWxpbms6YWN0aXZlLFxuI2NhbmNlbC1jb21tZW50LXJlcGx5LWxpbms6aG92ZXIge1xuXHRjb2xvcjogI2ZmNGIzMztcbn1cbiNyZXNwb25kIGxhYmVsIHtcblx0bGluZS1oZWlnaHQ6IDIuMmVtO1xufVxuI3Jlc3BvbmQgaW5wdXRbdHlwZT10ZXh0XSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRoZWlnaHQ6IDI0cHg7XG5cdHdpZHRoOiA3NSU7XG59XG4jcmVzcG9uZCBwIHtcblx0Zm9udC1zaXplOiAwLjgxNWVtO1xufVxucC5jb21tZW50LWZvcm0tY29tbWVudCB7XG5cdG1hcmdpbjogMDtcbn1cbi5mb3JtLWFsbG93ZWQtdGFncyB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBXaWRnZXRzIC0gU3R5bGluZyB3aWRnZXRzIGFuZCBzaWRlYmFycy5cblxuICAxLjAgLSBHbG9iYWwgV2lkZ2V0IFN0eWxlc1xuICAgIDEuMSAtIEJhc2UgU3R5bGVzXG4gICAgMS4yIC0gVGl0bGUgU3R5bGVzXG4gICAgMS4zIC0gRm9vdGVyIFN0eWxlc1xuICAgIDEuNCAtIEJhY2tncm91bmQgU3R5bGVzXG4gICAgMS41IC0gUmVzZXRzIGFuZCBGaXhlc1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAyLjAgLSBXaWRnZXQgRmlsZSBJbXBvcnRzXG4gICAgMi4xIC0gRGVmYXVsdCBXb3JkUHJlc3MgV2lkZ2V0cyAoZmlsZSBpbXBvcnRzKVxuICAgIDIuMiAtIExhcmdvIFdpZGdldHMgKGZpbGUgaW1wb3J0cylcbiAgICAyLjMgLSBJTk4tc3VwcG9ydGVkIHdpZGdldHMgKGZpbGUgaW1wb3J0cylcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAxLjAgLSBHbG9iYWwgV2lkZ2V0IFN0eWxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogMS4xIC0gQmFzZSBTdHlsZXMgKi9cbi53aWRnZXQge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmU7XG4gIHAsIHVsIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gIH1cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiBAYmFzZWxpbmUvNSAwIDAgMDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDU7XG4gICAgICBtYXJnaW4tdG9wOiBAYmFzZWxpbmUgKiAwLjU7XG4gICAgfVxuICB9XG4gIGxpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgfVxuICBwLm1vcmVsaW5rIHtcbiAgIG1hcmdpbjogLShAYmFzZWxpbmUgLyA0KSAwIDA7XG4gICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7IC8vIHRvIGF2b2lkIG92ZXJyaWRlc1xuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBTbWFsbCB0aHVtYm5haWxzIGFyZSBlaXRoZXIgcmlnaHQgb3IgbGVmdCBhbGlnbmVkLlxuICAgICYucmlnaHQtYWxpZ24ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgcGFkZGluZzogLjJlbSAwIC40ZW0gLjY2ZW07XG4gICAgfVxuICAgICYubGVmdC1hbGlnbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6IC4yZW0gLjY2ZW0gLjRlbSAwO1xuICAgIH1cbiAgICAvLyBMYXJnZSB0aHVtYm5haWxzIGdldCBkaWZmZXJlbnQgcGFkZGluZy5cbiAgICAmLmF0dGFjaG1lbnQtbGFyZ2UsJi5hdHRhY2htZW50LW1lZGl1bSB7XG4gICAgICBwYWRkaW5nOiAwIDAgLjY2ZW07XG4gICAgfVxuICB9XG4gIGg1IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjJlbTtcbiAgICBmb250LXNpemU6IDEuMjUgKiBAYmFzZUZvbnRTaXplO1xuICB9XG59XG5cbi5yb3ctZmx1aWQge1xuICAmID4gW2NsYXNzKj0nc3BhbiddIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICYgPiAqID4gLndpZGdldCxcbiAgICAgICYgPiAud2lkZ2V0IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogQGJhc2VsaW5lO1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAmID4gKiA+IC53aWRnZXQsXG4gICAgICAmID4gLndpZGdldCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogQGJhc2VsaW5lO1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyogMS4yIC0gVGl0bGUgU3R5bGVzICovXG5cbi53aWRnZXR0aXRsZSxcbi5zdG9yaWVzIGgzLndpZGdldHRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMztcbiAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yNTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiBAYmxhY2s7XG4gIGEge1xuICAgIGNvbG9yOiBAYmxhY2s7XG4gIH1cbn1cblxuLyogMS4zIC0gRm9vdGVyIFN0eWxlcyAqL1xuXG4jc2l0ZS1mb290ZXIge1xuICAuZGFya0xpZ2h0KEBoZWFkZXJGb290ZXJDb2xvcik7XG4gIGE6aG92ZXIge1xuICAgIGNvbG9yOiBsaWdodGVuKEBsaW5rQ29sb3IsIDIwJSk7XG4gIH1cbiAgLndpZGdldHRpdGxlLFxuICBsaS5tZW51LWxhYmVsIHtcbiAgICAuZGFya0xpZ2h0KEBoZWFkZXJGb290ZXJDb2xvcik7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMztcbiAgICBwYWRkaW5nLWJvdHRvbTogQGJhc2VsaW5lIC8gNTtcbiAgfVxuICAud2lkZ2V0IHtcbiAgICBtYXJnaW46IDAgMCAoQGJhc2VsaW5lIC8gMikgMDtcbiAgfVxuICAud2lkZ2V0dGl0bGUsXG4gIC53aWRnZXQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG4gIHAsIGxpIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAwLjk7XG4gIH1cbiAgdWwge1xuICAgIG1hcmdpbjowO1xuICAgIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG4gICAgbGkge1xuICAgICAgbGluZS1oZWlnaHQ6MS4yNTtcbiAgICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDI7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxuICAvKiBGT09URVIgRk9STSAvIFNFQVJDSCBTVFlMRVMgKi9cbiAgaW5wdXQsXG4gIHNlbGVjdCB7XG4gICAgZm9udC1mYW1pbHk6IEBzYW5zRm9udEZhbWlseTtcbiAgfVxuICBzZWxlY3Qge1xuICAgIHdpZHRoOiA5MCU7XG4gIH1cbiAgaW5wdXQuc2VhcmNoLXF1ZXJ5IHtcbiAgICB3aWR0aDogNjclO1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW07XG4gICAgaGVpZ2h0OiAxOXB4OyAvLyBsZWF2ZSB0aGlzIGFsb25lLCBmb3JtcyBiZSBjaGFsbGVuZ2luZ1xuICB9XG4gIGlucHV0LnNlYXJjaC1zdWJtaXQge1xuICAgIG1heC13aWR0aDogMjUlO1xuICAgIHBhZGRpbmc6IDAuMWVtIDAuNWVtO1xuICB9XG59XG5cbiNzdXBwbGVtZW50YXJ5IC5tZW51LWRvbnQtbWlzcy1jb250YWluZXIgaDQsXG4jc2l0ZS1mb290ZXIgYXNpZGUgbGkubWVudS1sYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIDEuNCAtIEJhY2tncm91bmQgU3R5bGVzIChSZXZlcnNlIGFuZCBOb25lKSAqL1xuXG4ud2lkZ2V0LnJldiB7XG4gIGNvbG9yOiBAd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6IEBiYXNlQ29sb3I7XG4gIC53aWRnZXR0aXRsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdoaXRlO1xuICAgIGNvbG9yOiBAYmFzZUNvbG9yO1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiBAYmFzZUNvbG9yO1xuICAgIH1cbiAgfVxuICBhIHtcbiAgICBjb2xvcjogQHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC53aWRnZXR0aXRsZSBhIHtcbiAgICBjb2xvcjogQGdyYXlEYXJrO1xuICB9XG59XG4ud2lkZ2V0Lm5vLWJnIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcCwgdWwge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG4gIC53aWRnZXR0aXRsZSB7XG4gICAgY29sb3I6IEBibGFjaztcbiAgfVxufVxuXG4vKiAxLjUgLSBSZXNldHMgYW5kIEZpeGVzICovXG5cbiNzaWRlYmFyIGlmcmFtZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyogMS42IC0gc2lkZWJhciBzdHlsZXMgKi9cbiNzaWRlYmFyIC53aWRnZXQge1xuICBwYWRkaW5nOiAwIDAgMCBAYmFzZWxpbmU7XG4gICYucmV2IHtcbiAgICBwYWRkaW5nOiBAYmFzZWxpbmUgQGJhc2VsaW5lIDA7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuLnNpbmdsZS5ub3JtYWwgI3NpZGViYXIgLndpZGdldCB7XG4gIHBhZGRpbmc6IDAgQGJhc2VsaW5lIDAgMDtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgMi4xIC0gV29yZFByZXNzIERlZmF1bHQgV2lkZ2V0c1xuXG4gICAgRWl0aGVyOlxuICAgIC0gQ1JFQVRFIGEgbmV3IGZpbGUgZm9yIHNpZ25pZmljYW50IGNoYW5nZXMgdG8gYSBkZWZhdWx0IHdpZGdldCdzIG91dHB1dC5cbiAgICAtIEFERCBhIHNlY3Rpb24gdG8gdGhlIHdwLWdlbmVyYWwubGVzcyBmaWxlIGFuZCBkb2N1bWVudCBoZXJlLlxuXG4gICAgd3AtZ2VuZXJhbC5sZXNzXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLndpZGdldF9hcmNoaXZlcyAtIEFyY2hpdmVzIGRyb3Bkb3duXG4gICAgLndpZGdldF9jYXRlZ29yaWVzIC0gQ2F0ZWdvcmllcyBkcm9wZG93blxuICAgIC53aWRnZXRfc2VhcmNoIC0gU2VhcmNoIGZvcm1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBpbXBvcnQgXCJ3aWRnZXRzL3dwLWdlbmVyYWwubGVzc1wiO1xuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgMi4yIC0gTGFyZ28gd2lkZ2V0IHN0eWxlc1xuXG4gICAgVGhpcyBzZWN0aW9uIGFpbXMgdG8gaGF2ZSBvbmUgZmlsZSBmb3IgZXZlcnkgd2lkZ2V0IGluY2x1ZGVkIGluIExhcmdvLCBhbmRcbiAgICBzZWxlY3QgdGhpcmQtcGFydHkgd2lkZ2V0cyB0aGF0IExhcmdvIHN1cHBvcnRzLiBJZiB5b3UgYWRkIGEgcnVsZSBmb3IgYVxuICAgIHdpZGdldCBpbiBhIGZpbGUgdGhhdCBkb2VzIG5vdCBiZWxvbmcgdG8gdGhhdCB3aWRnZXQsIHBsZWFzZSBkb2N1bWVudCBoZXJlXG4gICAgdGhlIGZpbGUgeW91IGFyZSBhZGRpbmcgdGhlIHJ1bGUgdG8uXG5cbiAgICBTb21lIGZpbGVzIGluIHRoaXMgc2VjdGlvbiBjb250YWluIG5vIHJ1bGVzLiBTZWUgdGhlaXIgQHNlZSBkaXJlY3RpdmVzIGZvclxuICAgIG1vcmUgaW5mb3JtYXRpb24uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vLyBGaWxlbmFtZXMgYXJlIGJhc2VkIG9uIHRoZSBuYW1lIG9mIHRoZSB3aWRnZXQgYXMgaXQgYXBwZWFycyBpbiB0aGUgV1AgQWRtaW4uXG5AaW1wb3J0IFwid2lkZ2V0cy9sYXJnby1hYm91dC1zaXRlLmxlc3NcIjtcbkBpbXBvcnQgXCJ3aWRnZXRzL2xhcmdvLWF1dGhvci1iaW8ubGVzc1wiO1xuQGltcG9ydCBcIndpZGdldHMvbGFyZ28tZGlzY2xhaW1lci5sZXNzXCI7XG5AaW1wb3J0IFwid2lkZ2V0cy9sYXJnby1kb25hdGUtd2lkZ2V0Lmxlc3NcIjtcbkBpbXBvcnQgXCJ3aWRnZXRzL2xhcmdvLWV4cGxvcmUtcmVsYXRlZC5sZXNzXCI7XG5AaW1wb3J0IFwid2lkZ2V0cy9sYXJnby1mb2xsb3cubGVzc1wiO1xuQGltcG9ydCBcIndpZGdldHMvbGFyZ28taW1hZ2Utd2lkZ2V0Lmxlc3NcIjtcbkBpbXBvcnQgXCJ3aWRnZXRzL2xhcmdvLXByZXYtbmV4dC1saW5rcy5sZXNzXCI7XG5AaW1wb3J0IFwid2lkZ2V0cy9sYXJnby1yZWNlbnQtY29tbWVudHMubGVzc1wiO1xuQGltcG9ydCBcIndpZGdldHMvbGFyZ28tcmVsYXRlZC1wb3N0cy5sZXNzXCI7XG5AaW1wb3J0IFwid2lkZ2V0cy9sYXJnby1zZXJpZXMtcG9zdHMubGVzc1wiO1xuQGltcG9ydCBcIndpZGdldHMvbGFyZ28tc3RhZmYtcm9zdGVyLmxlc3NcIjtcbkBpbXBvcnQgXCJ3aWRnZXRzL2xhcmdvLXRhZy1saXN0Lmxlc3NcIjtcbkBpbXBvcnQgXCJ3aWRnZXRzL2xhcmdvLXRheG9ub215LWxpc3QubGVzc1wiO1xuQGltcG9ydCBcIndpZGdldHMvbGFyZ28taW5uLXJzcy5sZXNzXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgMi4zIC0gU3R5bGVzIGZvciBJTk4tc3VwcG9ydGVkIG5vbi1MYXJnbyB3aWRnZXRzXG5cbiAgICBUaGlzIHNlY3Rpb24gYWltcyB0byBoYXZlIG9uZSBmaWxlIGFwaWVjZSBmb3IgdGhpcmQtcGFydHkgd2lkZ2V0cyB0aGF0XG4gICAgTGFyZ28gc3VwcG9ydHMuXG4gICAgSWYgeW91IGFkZCBhIHJ1bGUgZm9yIGEgd2lkZ2V0IGluIGEgZmlsZSB0aGF0IGRvZXMgbm90IGJlbG9uZyB0byB0aGF0IHdpZGdldCxcbiAgICBwbGVhc2UgZG9jdW1lbnQgaGVyZSB0aGUgZmlsZSB5b3UgYXJlIGFkZGluZyB0aGUgcnVsZSB0by5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8vIEZpbGVuYW1lcyBhcmUgYmFzZWQgb24gdGhlIG5hbWUgb2YgdGhlIHdpZGdldCBhcyBpdCBhcHBlYXJzIGluIHRoZSBXUCBBZG1pbi5cbkBpbXBvcnQgXCJ3aWRnZXRzL2FuYWx5dGljLWJyaWRnZS1wb3B1bGFyLXBvc3RzLmxlc3NcIjtcbiIsIi8qKlxuICogR2VuZXJhbCBzdHlsZXMgZm9yIFdvcmRQcmVzcyBkZWZhdWx0IHdpZGdldHNcbiAqXG4gKiBAc2luY2UgMC41LjNcbiAqL1xuLndpZGdldF9hcmNoaXZlIHNlbGVjdCxcbi53aWRnZXRfY2F0ZWdvcmllcyBzZWxlY3QsXG4ubGFyZ28tdGF4b25vbXktbGlzdCBzZWxlY3QsXG4ud2lkZ2V0X3NlYXJjaCBmb3JtIHtcbiAgbWFyZ2luOiBAYmFzZWxpbmUvNSAwO1xufVxuLndpZGdldF9hcmNoaXZlIGxhYmVsLFxuLndpZGdldF9jYXRlZ29yaWVzIGxhYmVsIHtcbiAgLnZpc3VhbGx5aGlkZGVuXG59XG4iLCIvKipcbiAqIFN0eWxlcyBmb3IgdGhlIExhcmdvIEFib3V0IFNpdGUgd2lkZ2V0XG4gKlxuICogQHNpbmNlIDAuM1xuICovXG5cbi5sYXJnby1hYm91dCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuI3NpdGUtZm9vdGVyIC5sYXJnby1hYm91dCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMjtcbn1cbiIsIi8qKlxuICogU3R5bGVzIGZvciB0aGUgTGFyZ28gQXV0aG9yIEJpbyB3aWRnZXRcbiAqXG4gKiBAc2luY2UgMC41LjNcbiAqL1xuXG4ud2lkZ2V0IC5hdXRob3ItYm94IHVsIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxuLy8gQVVUSE9SIEJPWFxuLmF1dGhvci1ib3gge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAwO1xuICBpbWcuYXZhdGFyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDVweCAxNXB4IDEwcHggMDtcbiAgICBwYWRkaW5nOiA0cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgQGdyYXlMaWdodGVyO1xuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZTtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUvMztcbiAgfVxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTpub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgbWluLXdpZHRoOiAzMHB4O1xuICAgICAgYSB7XG5cdCAgICBkaXNwbGF5OiBibG9jaztcblx0ICAgIHBhZGRpbmc6IDRweDtcblx0ICAgIGNvbG9yOiBAd2hpdGU7XG5cdCAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAZ3JheURhcms7XG5cdCAgICAuYm9yZGVyLXJhZGl1cyg0cHgpO1xuXHQgICAgJjpob3ZlciB7XG5cdFx0ICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKEBncmF5RGFyaywxMCUpO1xuXHRcdH0gICAgXG4gICAgICB9XG4gICAgICBpIHtcbiAgICAgICAgcGFkZGluZzogNHB4O1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5hdXRob3ItcG9zdHMtbGluayB7XG4gICAgICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAtIDM7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICAgICAgICBhIHtcblx0ICAgICAgcGFkZGluZzogNnB4IDEwcHg7XG4gICAgICAgICAgY29sb3I6IEB3aGl0ZTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIvKipcbiAqIFN0eWxlcyBmb3IgdGhlIExhcmdvIERpc2NsYWltZXIgd2lkZ2V0XG4gKlxuICogQHNpbmNlIDAuNS4zXG4gKi9cbmJvZHkubm9ybWFsLnNpbmdsZS1wb3N0LFxuYm9keS5ub3JtYWwucGFnZSB7XG4gIC5hcnRpY2xlLWJvdHRvbSB7XG4gICAgLmxhcmdvLWRpc2NsYWltZXIge1xuICAgICAgY29sb3I6IEBncmF5RGFyaztcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogU3R5bGVzIGZvciB0aGUgTGFyZ28gRG9uYXRlIFdpZGdldFxuICpcbiAqIEBzaW5jZSAwLjNcbiAqL1xuXG4ubGFyZ28tZG9uYXRlIHAge1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAzO1xufVxuIiwiLyoqXG4gKiBTdHlsZXMgZm9yIExhcmdvIEV4cGxvcmUgUmVsYXRlZCB3aWRnZXRcbiAqXG4gKiBAc2VlIC9sZXNzL2luYy9zaW5nbGUubGVzc1xuICogQHNlZSAvbGVzcy9pbmMvcmVzcG9uc2l2ZS03NjdweC1tYXgubGVzc1xuICogQHNpbmNlIDAuNS4zXG4gKi9cblxuLy8gVGhlcmUgYXJlIG5vIHN0eWxlcyBob29rZWQgb24gLmxhcmdvLWV4cGxvcmUtcmVsYXRlZC5cbi8vIFNlZSB0aGUgYWJvdmUgZmlsZXMgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgI3JlbGF0ZWQtcG9zdHNcbiNyZWxhdGVkLXBvc3QtbmF2IHtcbiAgcGFkZGluZzogMC41ZW0gMDtcbiAgZm9udC1mYW1pbHk6IEBzYW5zRm9udEZhbWlseTtcbiAgbGkge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAtIDE7XG4gIH1cbiAgaDUge1xuICAgIG1hcmdpbjogMCAwIDAuMjVlbSAwO1xuICB9XG4gIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEuMjVlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgQGdyYXlMaWdodDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGdyYXlMaWdodGVyO1xuICAgIH1cbiAgICAmLnNlbGVjdGVkIHtcbiAgICAgIGNvbG9yOiBAd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiBAYmFzZUNvbG9yO1xuICAgICAgYm9yZGVyOiBub25lO1xuXHR9XG4gIH1cbn1cbi5yZWxhdGVkLWl0ZW1zIHtcbiAgZGl2IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmc6IDAgMWVtO1xuICAgIGltZyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbjogMCAwLjhlbSAwLjhlbSAwO1xuICAgIH1cbiAgfVxuICB1bCB7XG4gICAgbWFyZ2luOiAwLjRlbSAwO1xuICAgIGxpIHtcbiAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKyAyO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICYudG9wLXJlbGF0ZWQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAyO1xuICAgICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gNDtcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXdlaWdodDpub3JtYWw7XG4gICAgICAgICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAvIDI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgZm9udC1mYW1pbHk6IEBzYW5zRm9udEZhbWlseTtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gNDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgI3JlbGF0ZWQtcG9zdC1uYXYsXG4gICNyZWxhdGVkLXBvc3RzIC5yZWxhdGVkLWl0ZW1zIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAjcmVsYXRlZC1wb3N0LW5hdiBhIHtcbiAgICBwYWRkaW5nOiBAYmFzZWxpbmUgLyAyO1xuICB9XG4gICNyZWxhdGVkLXBvc3RzIC5yZWxhdGVkLWl0ZW1zIHVsIGxpLnRvcC1yZWxhdGVkIHtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAyO1xuICB9XG4gICNyZWxhdGVkLXBvc3RzIC5yZWxhdGVkLWl0ZW1zIHVsIGxpLnRvcC1yZWxhdGVkIGgzIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjU7XG4gICAgbWFyZ2luOiAoQGJhc2VsaW5lIC8gMykgMDtcbiAgfVxuICAjcmVsYXRlZC1wb3N0cyAucmVsYXRlZC1pdGVtcyB1bCBsaS50b3AtcmVsYXRlZCBwLFxuICAjcmVsYXRlZC1wb3N0cyAucmVsYXRlZC1pdGVtcyBkaXYgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICNyZWxhdGVkLXBvc3RzIC5yZWxhdGVkLWl0ZW1zIHVsIGxpIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAzO1xuICB9XG59XG4iLCIvKipcbiAqIFN0eWxlcyBmb3IgdGhlIExhcmdvIEZvbGxvdyB3aWRnZXRcbiAqXG4gKiBAc2luY2UgMC41LjNcbiAqL1xuLnN1YnNjcmliZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgLSAyO1xuICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyA0O1xuICBjb2xvcjogQGdyYXk7XG4gICY6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiBAZ3JheURhcmtlcjtcbiAgfVxuICBpIHtcbiAgICBjb2xvcjogQHdoaXRlO1xuICAgIHBhZGRpbmc6IDAgMWVtIDAgMC41ZW07XG4gICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCBAd2hpdGU7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplIC0gMztcbiAgICBtYXJnaW4tcmlnaHQ6IEBiYXNlbGluZSAvIDQ7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuLy8gVGhlc2UgY29sb3JzIGFsc28gdXNlZCBpbiAucG9zdC1zb2NpYWwgaW4gc2luZ2xlLmxlc3Ncbi5sYXJnby1mb2xsb3cge1xuICAucnNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAcnNzO1xuICAgIGNvbG9yOkB3aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAcnNzLCA1JSk7XG4gICAgfVxuICB9XG4gIC50d2l0dGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOkB0d2l0dGVyO1xuICAgIGNvbG9yOkB3aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAdHdpdHRlciwgNSUpO1xuICAgIH1cbiAgfVxuICAuZmFjZWJvb2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6QGZhY2Vib29rO1xuICAgIGNvbG9yOkB3aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAZmFjZWJvb2ssIDUlKTtcbiAgICB9XG4gIH1cbiAgLmxpbmtlZGluIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOkBsaW5rZWRpbjtcbiAgICBjb2xvcjojZmZmO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBsaW5rZWRpbiwgNSUpO1xuICAgIH1cbiAgfVxuICAuZ3BsdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6QGdwbHVzO1xuICAgIGNvbG9yOkB3aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAZ3BsdXMsIDUlKTtcbiAgICB9XG4gIH1cbiAgLmZsaWNrciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpAZmxpY2tyO1xuICAgIGNvbG9yOiNmZmY7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGZsaWNrciwgNSUpO1xuICAgIH1cbiAgfVxuICAueW91dHViZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpAeW91dHViZTtcbiAgICBjb2xvcjpAd2hpdGU7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQHlvdXR1YmUsIDUlKTtcbiAgICB9XG4gIH1cbiAgLnByaW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODU4OThGO1xuICAgIGNvbG9yOiNmZmY7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oIzg1ODk4RiwgNSUpO1xuICAgIH1cbiAgfVxuICAuZW1haWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2MjY1NkY7XG4gICAgY29sb3I6I2ZmZjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigjNjI2NTZGLCA1JSk7XG4gICAgfVxuICB9XG4gIC5zb2NpYWwtYnRuIHtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgbWFyZ2luOiAwLjVlbSAwOyAvLyBsZWZ0LWFsaWduIGJ1dHRvbnNcbiAgICBwYWRkaW5nOiAwLjY2ZW07XG4gIH1cbn1cblxuLmFydGljbGUtYm90dG9tIC5sYXJnby1mb2xsb3cge1xuICBwYWRkaW5nOiAwO1xufVxuLnR3aXR0ZXItZm9sbG93LWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMCAoQGJhc2VsaW5lIC0gNik7XG59XG4ud2lkZ2V0IC5mYi1saWtlIHtcbiAgbWFyZ2luOiAwIDAgKEBiYXNlbGluZSAvIDQpO1xufVxuLmZiLWxpa2UsIC5mYi1saWtlIHNwYW4sIC5mYi1saWtlLmZiX2lmcmFtZV93aWRnZXQgc3BhbiBpZnJhbWUsXG4uZmItbGlrZS1ib3gsIC5mYi1saWtlLWJveCBzcGFuLCAuZmItbGlrZS1ib3ggc3BhbiBpZnJhbWVbc3R5bGVdIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbi5mYi1saWtlLWJveCB7XG4gIGJhY2tncm91bmQ6IHdoaXRlICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG4uZmxpY2tyLWZvbGxvdyB7XG4gIG1hcmdpbi1ib3R0b206IChAYmFzZWxpbmUgLyAyKTtcbn1cblxuIiwiLyoqXG4gKiBTdHlsZXMgZm9yIHRoZSBMYXJnbyBJbWFnZSBXaWRnZXQsIGFrYSBcIkltYWdlIFdpZGdldFwiXG4gKlxuICogQHNlZSAvaW5jL3dpZGdldHMvbGFyZ28taW1hZ2Utd2lkZ2V0LnBocFxuICogQHNpbmNlIDAuNS4zXG4gKi9cblxuLy8gTWFueSBzdHlsZXMgZm9yIHRoaXMgd2lkZ2V0IGFyZSBpbmNsdWRlZCBpbiAvaW5jL3dpZGdldHMvbGFyZ28taW1hZ2Utd2lkZ2V0LnBocFxuXG4jc2l0ZS1mb290ZXIgLndpZGdldC1zcC1pbWFnZSBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgLy8gYmVjYXVzZSB0aGUgd2lkZ2V0IHVzZXMgaW5saW5lIG1heC13aWR0aDpweCBmaXhlZCB3aWR0aHNcbn1cbiIsIi8qKlxuICogU3R5bGVzIGZvciBMYXJnbyBQcmV2L05leHQgTGlua3Mgd2lkZ2V0c1xuICpcbiAqIEBzaW5jZSAwLjUuM1xuICovXG5cbi8vIFRoaXMgd2lkZ2V0IGlzIGFuIGluc3RhbmNlIG9mIGxhcmdvX2NvbnRlbnRfbmF2KCdzaW5nbGUtcG9zdC1uYXYtYmVsb3cnKSxcbi8vIHdoaWNoIHVzZXMgdGhlIElEICNuYXYtYmVsb3cgYW5kIGlzIG9ubHkgb3V0cHV0IG9uIHNpbmdsZSBwYWdlcy5cblxuLyogTmV4dC1wcmV2IG5hdmlnYXRpb24gXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBUaGVzZSBzdHlsZXMgd2VyZSBtb3ZlZCBmcm9tIHNpbmdsZS5sZXNzICovXG4ucGFnZXIge1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgIGNvbG9yOiBAdGV4dENvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAcG9zdEJveEJhY2tncm91bmRDb2xvciwgMTAlKTtcbiAgICAmOmhvdmVyIHtcbiAgXHQgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAcG9zdEJveEJhY2tncm91bmRDb2xvciwgMzUlKTtcbiAgXHQgIGNvbG9yOiBAd2hpdGU7XG4gIFx0ICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4ubmV4dCB7XG4gIHdpZHRoOiA0OCU7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGltZyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmctbGVmdDogQGJhc2VsaW5lIC0gNDtcbiAgfVxufVxuLnByZXZpb3VzIHtcbiAgd2lkdGg6IDQ4JTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGltZyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogQGJhc2VsaW5lIC0gNDtcbiAgfVxufVxuIiwiLyoqXG4gKiBTdHlsZXMgZm9yIHRoZSBMYXJnbyBSZWNlbnQgQ29tbWVudHMgd2lkZ2V0XG4gKlxuICogQHNlZSAvbGVzcy9pbmMvY29tbWVudHMubGVzcyBwcm92aWRlcyBtYW55IHN0eWxlcyBub3QgZW51bWVyYXRlZCBoZXJlXG4gKiBAc2luY2UgMC41LjNcbiAqL1xuXG4ud2lkZ2V0LmxhcmdvLXJlY2VudC1jb21tZW50cyB7XG4gIHVsIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG4gIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIH1cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gNTtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICYuY29tbWVudC1leGNlcnB0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgfVxuICAgICYuY29tbWVudC1wb3N0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICAmLmNvbW1lbnQtbWV0YSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBTdHlsZXMgZm9yIHRoZSBMYXJnbyBSZWxhdGVkIFBvc3RzIHdpZGdldFxuICpcbiAqIEBzZWUgL2xlc3MvaW5jL3Jlc3BvbnNpdmUtNzY3cHgtbWF4Lmxlc3NcbiAqIEBzZWUgL2xlc3MvaW5jL3NpbmdsZS5sZXNzXG4gKiBAc2luY2UgMC41LjNcbiAqL1xuXG4ud2lkZ2V0LmxhcmdvLXJlbGF0ZWQtcG9zdHMge1xuICAud2lkZ2V0dGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZSAtIDQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIHVsLnJlbGF0ZWQge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAuY2xlYXJmaXgoKTtcbiAgICB9XG4gIH1cbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDEuNTtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAyO1xuICAgIC8qIFJlc3BvbnNpdmUgVHlwb2dyYXBoeSBQcm9wb3J0aW9uaW5nICovXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAgICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMS4yNTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyA1O1xuICAgIH1cbiAgfVxuICBoNS5ieWxpbmUge1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuOTtcbiAgICBtYXJnaW4tYm90dG9tOiBAYmFzZWxpbmUgLyAyO1xuICAgIC8qIEhpZGRlbiBvbiBNb2JpbGUgKi9cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgLyogSGlkZGVuIG9uIE1vYmlsZSAqL1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAqIDAuOTtcbiAgICB9XG4gIH1cbiAgLndwLXBvc3QtaW1hZ2Uge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMC41ZW0gMS4yZW0gMCAwO1xuICB9XG59XG4iLCIvKipcbiAqIFN0eWxlcyBmb3IgdGhlIExhcmdvIFNlcmllcyBQb3N0cyB3aWRnZXRcbiAqXG4gKiBAc2luY2UgMC41LjNcbiAqL1xuXG4ud2lkZ2V0LmxhcmdvLXNlcmllcy1wb3N0cyB7XG4gIGg0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjRlbTtcbiAgICAvLyB0aGlzIHNwZWNpZmljIGg0IHNob3VsZCB0aGUgc2FtZSBzaXplIGFzIHRoZSBzdGFuZGFyZCB0ZXh0XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemU7XG4gIH1cbiAgdWwge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICB9XG4gIGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMTEwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICB9XG4gIGxpIGEge1xuICAgIHBhZGRpbmctbGVmdDogMmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICB9XG4gIGEubW9yZSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgwrtcIjtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogU3R5bGVzIGZvciB0aGUgTGFyZ28gU3RhZmYgUm9zdGVyIHdpZGdldFxuICpcbiAqIEBzaW5jZSAwLjUuM1xuICovXG5cbnVsLnN0YWZmLXJvc3RlciB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAoQGJhc2VsaW5lIC0gNCkgMCAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luOiAwIDAgQGJhc2VsaW5lIDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaW1nIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW46IDAgMWVtIDAuNWVtIDA7XG4gICAgICBib3JkZXI6MXB4IHNvbGlkIEBncmF5TGlnaHRlcjtcbiAgICAgIHBhZGRpbmc6IEBiYXNlbGluZSAvIDU7XG4gICAgfVxuICB9XG4gIC5zdGFmZi1uYW1lIHtcbiAgICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgIG1hcmdpbi1ib3R0b206MC4yNWVtO1xuICB9XG4gIHAge1xuICAgIG1hcmdpbjogMC40ZW0gMDtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgICBjb2xvcjogQGdyYXk7XG4gIH1cbiAgcCArIHAge1xuICAgIG1hcmdpbi10b3A6MC43NWVtO1xuICB9XG59XG4iLCIvKipcbiAqIFN0eWxlcyBmb3IgdGhlIExhcmdvIFRhZyBMaXN0IHdpZGdldFxuICpcbiAqIEBzZWUgL2xlc3MvaW5jL3NpbmdsZS5sZXNzXG4gKiBAc2luY2UgMC41LjNcbiAqL1xuXG4vLyBUaGUgTGFyZ28gVGFnIExpc3Qgd2lkZ2V0IGhhcyBubyBzdHlsZXMgaG9va2VkIG9uIGl0cyBjbGFzcyAubGFyZ28tdGFnLWxpc3QuXG4vLyBXaGF0IHN0eWxlcyB0aGVyZSBhcmUgYXJlIGluIC9sZXNzL2luYy9zaW5nbGUubGVzcyB1bmRlciAudGFncywgd2l0aCBhIGxvdCBvZiBzaW1pbGFyIHN0eWxlcy5cblxuLmxhYmVscyxcbi50YWdzIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMjtcbiAgLy8gVGhpcyBzdGF5cyBhbiBoNSBmb3Igc2VtYW50aWMgcmVhc29ucywgYnV0IGdhaW5zIHRoZSBhcHBlYXJhbmNlIG9mIGp1c3Qgbm9ybWFsIHRleHRcbiAgaDUge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBAYmFzZUZvbnRTaXplO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgfVxuICB1bCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogQGJhc2VGb250U2l6ZSAtIDEuNTtcbiAgICBsaW5lLWhlaWdodDogQGJhc2VGb250U2l6ZSAtIDE7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgIHwgIFwiO1xuICAgICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgICB9XG4gICAgICAmOmxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIGkge1xuICAgICAgICBtYXJnaW46IDFweCAzcHggMCAwO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiBAZ3JheTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IGRhcmtlbihAZ3JheURhcmssIDEwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB0YXgtbGlzdC1pbWctc2l6ZTogNjBweDtcbi5sYXJnby10YXhvbm9teS1saXN0IGltZyB7XG4gIG1heC13aWR0aDogQHRheC1saXN0LWltZy1zaXplO1xuICBtYXgtaGVpZ2h0OiBAdGF4LWxpc3QtaW1nLXNpemU7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDhweDs7XG59XG4ubGFyZ28tdGF4b25vbXktbGlzdCB1bCB7XG4gIG1hcmdpbjogMDtcbn1cbi5sYXJnby10YXhvbm9teS1saXN0IGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5sYXJnby10YXhvbm9teS1saXN0IGg1IHtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vLyBTdHlsZXMgZm9yIHRoaXMgd2lkZ2V0IGluIHRoZSBsZWZ0LWhhbmQgc2lkZWJhciAod2hpY2ggc2hvdWxkIG5vdCBiZSB1c2VkLCBidXQganVzdCBpbiBjYXNlKVxuYXJ0aWNsZSAubGFyZ28tdGF4b25vbXktbGlzdCB7XG4gIC5oYXMtdGh1bWJuYWlsIGEge1xuICAgIHRleHQtYWxpZ246IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICBpbWcuYXR0YWNobWVudC1wb3N0LXRodW1ibmFpbCB7XG4gICAgLy8gZnVsbCB3aWR0aCBvZiB3aWRnZXRcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vIEZpeCBmb3IgcmlnaHQgc2lkZWJhciBlZGdlIGNhc2Ugd2hlcmUgbG9uZyBzZXJpZXMgbmFtZSBhbmQgbG9uZyBoZWFkbGluZSBuYW1lIGNvbWJpbmUgd2l0aCB0aHVtYm5haWwgdG8gd3JhcCBiZWxvdyB0aGUgaW1hZ2UuXG4ubGFyZ28tdGF4b25vbXktbGlzdCBsaS5oYXMtdGh1bWJuYWlsIGE6bnRoLWNoaWxkKDIpIHtcbiAgcGFkZGluZy1sZWZ0OiBAdGF4LWxpc3QtaW1nLXNpemUgKyA4cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLy8gQW5kIGEgZnVydGhlciBmaXggZm9yIHRoZSBhYm92ZSBpc3N1ZSBvbiBhcnRpY2xlIHBhZ2VzLCB3aGVyZSBpdCBzaG91bGQgbm90IGRvIHRoYXQuIDooXG5hcnRpY2xlIC5sYXJnby10YXhvbm9teS1saXN0IGxpLmhhcy10aHVtYm5haWwgYTpudGgtY2hpbGQoMikge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiI3NpZGViYXIgLmxhcmdvLUlOTi1SU1Mge1xuICB1bCB7XG4gICAgbWFyZ2luOiBAYmFzZWxpbmUgLyAyIDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gMjtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGg1LFxuICAgIGg2LFxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogQGJhc2VsaW5lIC8gNTtcbiAgICB9XG4gIH1cbn1cbiIsIiNzaWRlYmFyIC53aWRnZXRfYW5hbHl0aWMtYnJpZGdlLXBvcHVsYXItcG9zdHMge1xuICBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogQGJhc2VGb250U2l6ZTtcbiAgICBkaXYgeyAvLyBJbiBMYXJnbywgdGhlIGltYWdlIGdldHMgd3JhcHBlZCBieSBhIGRpdiBieSBBQlAgdG8gc3VwcG9ydCB0aGUgbGFyZ28gLmlzLXZpZGVvIHN0eWxlc1xuICAgICAgbWFyZ2luLWJvdHRvbTogQGJhc2VGb250U2l6ZSAvIDI7XG4gICAgfVxuICAgIGRpdi5pcy1lbXB0eSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICBsaSArIGxpIHtcbiAgICBtYXJnaW4tdG9wOiAxLjggKiBAYmFzZUZvbnRTaXplO1xuICAgIGJvcmRlci10b3A6IDFweCBAZ3JheUxpZ2h0ZXIgc29saWQ7XG4gICAgcGFkZGluZy10b3A6IDEuOCAqIEBiYXNlRm9udFNpemU7XG4gIH1cbiAgb2wge1xuICAgIC8vIEZvciBhbiBleHBsYW5hdGlvbiBvZiB3aGF0IGlzIGdvaW5nIG9uIGhlcmUsIHNlZSBodHRwOi8vcmVkLXRlYW0tZGVzaWduLmNvbS9jc3MzLW9yZGVyZWQtbGlzdC1zdHlsZXMvXG4gICAgY291bnRlci1yZXNldDogbGk7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAqbGlzdC1zdHlsZTogZGVjaW1hbDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGxpICsgbGk6OmJlZm9yZSB7XG4gICAgICB0b3A6IDEuOCAqIEBiYXNlRm9udFNpemU7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIC8vIFRoaXMgc2V0cyB0aGUgc2l6ZSBvZiB0aGUgbnVtYmVyIGFuZCBzb21lIHBhZGRpbmcgYW5kIHBvc2l0aW9uaW5nIHZhbHVlcyB0aGF0IGRlcGVuZCB1cG9uIGl0XG4gICAgICBAbnVtYmVyc2l6ZTogMzBweDtcbiAgICAgIGZvbnQtZmFtaWx5OiBAc2Fuc0ZvbnRGYW1pbHk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1NXB4O1xuICAgICAgaDUgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWluLWhlaWdodDogQG51bWJlcnNpemU7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogQG51bWJlcnNpemU7XG4gICAgICAgIGNvbnRlbnQ6IH5cImNvdW50ZXIobGkpICcuJ1wiO1xuICAgICAgICBjb3VudGVyLWluY3JlbWVudDogbGk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMS41KkBudW1iZXJzaXplO1xuICAgICAgICBoZWlnaHQ6IDFlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IC0xLjUqQG51bWJlcnNpemUgLSAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uYXJ0aWNsZS1ib3R0b20gLndpZGdldF9hbmFseXRpYy1icmlkZ2UtcG9wdWxhci1wb3N0cyB7XG5cbiAgLy8gdGhyZWUtY29sdW1uIGxheW91dFxuICAuY291bnQtOSxcbiAgLmNvdW50LTYsXG4gIC5jb3VudC0zIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogdW5zZXQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgJjpudGgtY2hpbGQoM24rMSksXG4gICAgICAgICY6bnRoLWNoaWxkKDNuKzIpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEyLjUlO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDNuKzEpIHtcbiAgICAgICAgICBjbGVhcjogbGVmdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBCZWZvcmUgRm9vdGVyLCBTaXRlIEZvb3RlclxuICpcbiAqICNiZWZvcmUtZm9vdGVyIC0gYSBkeW5hbWljIHdpZGdldCBhcmVhIHByaW9yIHRvICNzaXRlLWZvb3RlclxuICogI3NpdGUtZm9vdGVyXG4gKiAgICNzdXBwbGVtZW50YXJ5IC0gcHJpbWFyeSB3aWRnZXQgem9uZXMgZm9yIHNpdGUgZm9vdGVyXG4gKiAgICNib2lsZXJwbGF0ZSAtIHNvY2lhbCBpY29ucywgY29weXJpZ2h0LCBJTk4gbG9nbyBhbmQgZm9vdGVyIGxpbmtzXG4gKlxuICogQHNpbmNlIDAuNS4zXG4gKi9cbiBcbi5iZWZvcmUtZm9vdGVyLXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAcHJlRm9vdGVyQ29sb3I7XG59XG5cbiNiZWZvcmUtZm9vdGVyIHtcbiAgLndpZGdldDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5mb290ZXItYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAaGVhZGVyRm9vdGVyQ29sb3I7XG4gIHBhZGRpbmc6IDAgMCAxOHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4jc3VwcGxlbWVudGFyeSB7XG4gIHBhZGRpbmc6IEBiYXNlbGluZSAwIDAgMDtcbiAgJi5fMWNvbCBhc2lkZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi8qIHNwZWNpZmljIHRvIHRoZSBvbmUgY29sdW1uIGZvb3RlciBsYXlvdXQgKi9cbi5fMWNvbCAud2lkZ2V0X25hdl9tZW51IGxpIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbn1cblxuLypcbiAqIGltYWdlIGRpc3BsYXlzIDMwMHB4IHdpZGUsIGJ1dCBpcyBwaHlzaWNhbGx5IDE2OTl4Mzg1IHB4XjJcbiAqIFdlJ2xsIHVzZSBtYXRoIHRvIGdldCB0aGUgcGFkZGluZyB0b3AgYW5kIGJvdHRvbSBjb3JyZWN0LCBhY2NvcmRpbmcgdG8gdGhlIGJyYW5kIGd1aWRlbGluZXNcbiAqIG1hcmdpbiB0b3AgYW5kIG1hcmdpbiBib3R0b20gc2hvdWxkIGJlIGVxdWFsIHRvIHRoZSBoZWlnaHQgb2Ygb25lIG9mIHRoZSBzcXVhcmVzLlxuICogQnkgY3JvcHBpbmcgdGhlIGltYWdlIHRvIHRoZSBvdXRlciBib3VuZGFyeSBvZiB0aGUgbG93ZXItbGVmdCBzcXVhcmUgaW4gaW5uX2xvZ29fcmV2ZXJzZXR5cGUucG5nLCB3ZSBnZXQgYSBzcXVhcmUgaGVpZ2h0IG9mIDE4NHB4LlxuICogMTg0LzE2NjkgPSB4LzMwMFxuICovXG5AaW5uLWxvZ28tcGh5c2ljYWwtd2lkdGg6IDE2NjlweDtcbkBpbm4tbG9nby1waHlzaWNhbC1oZWlnaHQ6IDM4NXB4O1xuQGlubi1sb2dvLXdpZHRoOiAyMDBweDtcbkBpbm4tbG9nby1zcXVhcmU6IChAaW5uLWxvZ28td2lkdGgqMTg0L0Bpbm4tbG9nby1waHlzaWNhbC13aWR0aCk7IC8vIDE4NCBjb21lcyBmb3JtIHRoZSB3aWR0aCBvZiBvbmUgc3F1YXJlIGluIElOTidzIDIwMTUgbG9nb1xuQGlubi1sb2dvLWhlaWdodDogKEBpbm4tbG9nby13aWR0aCpAaW5uLWxvZ28tcGh5c2ljYWwtaGVpZ2h0L0Bpbm4tbG9nby1waHlzaWNhbC13aWR0aCk7IC8vIHRoZSByZW5kZXJlZCBoZWlnaHQgb2YgdGhlIGxvZ28gaW1hZ2VcbkBmb290ZXItc29jaWFsLWxvZ28tZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICsgMjtcblxuI2lubi1sb2dvIHtcbiAgbWFyZ2luLXRvcDogQGlubi1sb2dvLXNxdWFyZTtcbiAgbWFyZ2luLWJvdHRvbTogQGlubi1sb2dvLXNxdWFyZSowLjc1O1xuICBtYXgtd2lkdGg6IEBpbm4tbG9nby13aWR0aDtcbn1cblxuI2Zvb3Rlci1sb2dvcy1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3aGl0ZTtcbiAgcGFkZGluZzogMTBweCAwO1xufVxuXG4jZm9vdGVyLWxvZ29zIHtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuICBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgXHRmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY3JTtcbiAgICBpbWcge1xuXHQgIGRpc3BsYXk6IGJsb2NrO1xuXHQgIHdpZHRoOiAxMDAlO1xuXHQgIG1heC13aWR0aDogMTgwcHg7XG5cdCAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICB9XG4gIGg2IHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDNweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQGdyYXlMaWdodGVyO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBjb2xvcjogQGdyYXk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGEge1xuXHQgIGZsb2F0OiByaWdodDtcblx0ICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbn1cblxudWwjZm9vdGVyLXNvY2lhbCB7XG4gIHBhZGRpbmctdG9wOiBAaW5uLWxvZ28tc3F1YXJlO1xuICBwYWRkaW5nLWJvdHRvbTogQGlubi1sb2dvLXNxdWFyZSowLjc1O1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgbGkge1xuICAgIGhlaWdodDogQGlubi1sb2dvLWhlaWdodDtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgYSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgcGFkZGluZy10b3A6ICgoQGlubi1sb2dvLWhlaWdodCAtIEBmb290ZXItc29jaWFsLWxvZ28tZm9udC1zaXplKS8xLjc1KTtcbiAgICB9XG4gICAgaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDA7XG4gICAgICBjb2xvcjogQHdoaXRlO1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgbWFyZ2luLXRvcDogMS4yNSpAaW5uLWxvZ28tc3F1YXJlO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oQHdoaXRlLCAyNSUpO1xuICAgICAgfVxuICAgICAgZm9udC1zaXplOiBAZm9vdGVyLXNvY2lhbC1sb2dvLWZvbnQtc2l6ZTtcbiAgICAgIC5kYXJrTGlnaHQoQGhlYWRlckZvb3RlckNvbG9yKTtcbiAgICB9XG4gIH1cbiAgbGk6bGFzdC1jaGlsZCBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cbiNib2lsZXJwbGF0ZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LWZhbWlseTogQHNhbnNGb250RmFtaWx5O1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiM5RjlGQTM7XG4gIH1cbiAgLm1lbnUge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMC42Njc7XG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbiAgLm1lbnUge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG59XG5cbmZvb3RlciAjYm9pbGVycGxhdGUge1xuICBwIHtcbiAgICBjb2xvcjojOUY5RkEzO1xuICB9XG4gIGEge1xuICAgIGNvbG9yOkBncmF5TGlnaHRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiMwOUM5RkY7IC8vIFRoaXMgYmx1ZSBpcyBJTk4ncyBQcmltYXJ5IEJyYW5kIGNvbG9yIVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgI2JvaWxlcnBsYXRlIC5zcGFuNi5yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5NzlweCkge1xuICAvLyBJZiB0aGUgSU5OIGxvZ28gaXMgbm90IGRpc3BsYXllZCwgdGhlIGZvb3RlciBjcmVkaXQgZ2V0cyBzb21lIHBhZGRpbmcgdXAgdG9wXG4gIC5mb290ZXItY3JlZGl0LXBhZGRpbmctaW5uLWxvZ28tbWlzc2luZyB7XG4gICAgbWFyZ2luLXRvcDogQGlubi1sb2dvLWhlaWdodCArIDEuNzUqQGlubi1sb2dvLXNxdWFyZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTc5cHgpIHtcbiAgI2JvaWxlcnBsYXRlIC5yb3ctZmx1aWQge1xuICAgIC5zcGFuNiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIHVsI2Zvb3Rlci1zb2NpYWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICAuZm9vdGVyLWNyZWRpdCBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uYmFjay10by10b3Age1xuICAudmlzdWFsbHloaWRkZW5cbn1cbiIsIi5oZWFkZXItYWQtem9uZSB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0I2hlYWRlci1hZC16b25lLWNvbnRhaW5lciB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcblx0XHQvKiBBQ00gYWQgem9uZXMgb25seSwgc29ycnkgKi9cblx0XHQuYWNtX2FkX3pvbmVzIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0fVxuXHR9XG59XG4jaGVhZGVyLWFkLXpvbmUtY29udGFpbmVyLFxuI2JlZm9yZS1mb290ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgZGl2IGRpdiB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgLy9zb21ldGltZXMgZGZwIGFkZHMgaW5saW5lIHN0eWxlcyBzZXQgdG8gZGlzcGxheTppbmxpbmUtYmxvY2sgOihcbiAgICBtYXgtd2lkdGg6IDcyOHB4O1xuICAgIG1hcmdpbjogMWVtIGF1dG87XG4gIH1cbn1cbiNoZWFkZXItYWQtem9uZS1jb250YWluZXIge1xuICAud2lkZ2V0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIGRpdiBkaXYge1xuICAgIG1hcmdpbjogMC41ZW0gYXV0byAwO1xuICB9XG59IiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEEgRkVXIENPUkUgU1RZTEVTIEZPUiBXUCBJTUFHRVNcbi8vIEJBU0VEIE9OOiBodHRwOi8vamVmZnNlYnJpbmcuY29tL3Jlc3BvbnNpdmUtd29yZHByZXNzLWltYWdlcy9cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5zdGlja3ksXG4uYnlwb3N0YXV0aG9yLFxuLmdhbGxlcnktY2FwdGlvbiB7XG4gICBkaXNwbGF5OiBub3JtYWw7XG59XG5cbi5hbGlnbm5vbmUge1xuICAgbWFyZ2luOiBAYmFzZWxpbmUgKjAuNzUgMDtcbn1cblxuLmFsaWduY2VudGVyLFxuLmFsaWduLWNlbnRlcixcbi5jZW50ZXIge1xuICAgY2xlYXI6IGJvdGg7XG4gICBkaXNwbGF5OmJsb2NrO1xuICAgbWFyZ2luOiAoQGJhc2VsaW5lICowLjc1KSBhdXRvO1xufVxuXG4uYWxpZ25yaWdodCxcbi5hbGlnbi1yaWdodCxcbi5yaWdodCB7XG4gICBmbG9hdDpyaWdodDtcbiAgIG1hcmdpbjogQGJhc2VsaW5lLzQgMCBAYmFzZWxpbmUvMiAyMHB4O1xufVxuXG4uYWxpZ25sZWZ0LFxuLmFsaWduLWxlZnQsXG4ubGVmdCB7XG4gICBmbG9hdDpsZWZ0O1xuICAgbWFyZ2luOiBAYmFzZWxpbmUvNCAyMHB4IEBiYXNlbGluZS8yIDA7XG59XG5cbmltZyxcbmltZ1tjbGFzcyo9XCJhbGlnblwiXSxcbmltZ1tjbGFzcyo9XCJ3cC1pbWFnZS1cIl0ge1xuICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgaGVpZ2h0OiBhdXRvO1xuICAgY2xlYXI6Ym90aDtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNVUFBPUlQgRk9SIElGUkFNRS9PQkpFQ1QvRU1CRURcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5lbWJlZC1jb250YWluZXIsXG4udHlwZS1lbWJlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IC8qIDE2LzkgcmF0aW8gKi9cbiAgICBwYWRkaW5nLXRvcDogMzBweDsgLyogSUU2IHdvcmthcm91bmQqL1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206MjhweDtcbn1cbi5lbWJlZC1jb250YWluZXIgaWZyYW1lLFxuLmVtYmVkLWNvbnRhaW5lciBvYmplY3QsXG4uZW1iZWQtY29udGFpbmVyIGVtYmVkLFxuLnR5cGUtZW1iZWQgaWZyYW1lLFxuLnR5cGUtZW1iZWQgb2JqZWN0LFxuLnR5cGUtZW1iZWQgZW1iZWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG59IiwiLy8gUkVTUE9OU0lWRSBDTEFTU0VTXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSGlkZSBmcm9tIHNjcmVlbnJlYWRlcnMgYW5kIGJyb3dzZXJzXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuXG4vLyBGb3IgZGVza3RvcHNcbi52aXNpYmxlLXBob25lICAgICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuLnZpc2libGUtdGFibGV0ICAgIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4udmlzaWJsZS1kZXNrdG9wICAgeyB9IC8vIERvbid0IHNldCBpbml0aWFsbHlcbi5oaWRkZW4tcGhvbmUgICAgICB7IH1cbi5oaWRkZW4tdGFibGV0ICAgICB7IH1cbi5oaWRkZW4tZGVza3RvcCAgICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4vLyBQaG9uZXMgb25seVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC8vIFNob3dcbiAgLnZpc2libGUtcGhvbmUgICAgIHsgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9IC8vIFVzZSBpbmhlcml0IHRvIHJlc3RvcmUgcHJldmlvdXMgYmVoYXZpb3JcbiAgLy8gSGlkZVxuICAuaGlkZGVuLXBob25lICAgICAgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLy8gSGlkZSBldmVyeXRoaW5nIGVsc2VcbiAgLmhpZGRlbi1kZXNrdG9wICAgIHsgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4gIC52aXNpYmxlLWRlc2t0b3AgICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxufVxuXG4vLyBUYWJsZXRzICYgc21hbGwgZGVza3RvcHMgb25seVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSBhbmQgKG1heC13aWR0aDogOTc5cHgpIHtcbiAgLy8gU2hvd1xuICAudmlzaWJsZS10YWJsZXQgICAgeyBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiAgLy8gSGlkZVxuICAuaGlkZGVuLXRhYmxldCAgICAgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLy8gSGlkZSBldmVyeXRoaW5nIGVsc2VcbiAgLmhpZGRlbi1kZXNrdG9wICAgIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC52aXNpYmxlLWRlc2t0b3AgICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudCA7IH1cbn1cbiIsIi8vIExBUkdFIERFU0tUT1AgJiBVUFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmdsb2JhbC1uYXYsXG4gICNwYWdlLFxuICAjc2l0ZS1mb290ZXIsXG4gICNmb290ZXItbG9nb3MsXG4gICNiZWZvcmUtZm9vdGVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLmdsb2JhbC1uYXYsXG4gICNzaXRlLWZvb3RlcixcbiAgI2Zvb3Rlci1sb2dvcyB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAjcGFnZSB7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICB9XG59XG5cbiIsIi8vIFBPUlRSQUlUIFRBQkxFVCBUTyBERUZBVUxUIERFU0tUT1Bcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSBhbmQgKG1heC13aWR0aDogOTc5cHgpe1xuICAuZ2xvYmFsLW5hdixcbiAgI3BhZ2UsXG4gICNzaXRlLWZvb3RlcixcbiAgI2Zvb3Rlci1sb2dvcyB7XG4gICAgcGFkZGluZzogMCAxOHB4O1xuICB9XG4gICNtYWluIHtcbiAgICBtYXJnaW46IDEycHggMCAwO1xuICB9XG4gIGgxLmJyYW5kaW5nLFxuICBoMi5icmFuZGluZyB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMi43NTtcbiAgICAudGFnbGluZSB7XG4gICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjIyMjtcbiAgICB9XG4gIH1cbiAgI2Zvb3Rlci1sb2dvcyxcbiAgI2Zvb3Rlci1sb2dvcyAubG9nbzQge1xuICAgIGNsZWFyOmJvdGg7XG4gIH1cbiAgI2Zvb3Rlci1sb2dvcyBhIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgI2hvbWVwYWdlLWJvdHRvbSAud2lkZ2V0Lm9kZCxcbiAgI2hvbWVwYWdlLWJvdHRvbSAud2lkZ2V0LmV2ZW4ge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiA5NSU7XG4gICAgbWFyZ2luOiAwIDAgQGJhc2VsaW5lO1xuICAgIHBhZGRpbmctbGVmdDogMi41JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyLjUlO1xuICB9XG4gICNzZXJpZXMtbWFpbiAjc2lkZWJhci1sZWZ0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICNzZXJpZXMtbWFpbiAjY29udGVudC5zcGFuNXtcbiAgICB3aWR0aDogNjMlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gICNzZXJpZXMtbWFpbiAjc2lkZWJhciB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5zdGlja3ktbWFpbi1mZWF0dXJlLFxuICAuc3RpY2t5LWZlYXR1cmVzLWxpc3Qge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIExBTkRTQ0FQRSBQSE9ORSBUTyBTTUFMTCBERVNLVE9QICYgUE9SVFJBSVQgVEFCTEVUXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgI3NpZGViYXIsXG4gICNzaXRlLWZvb3RlciBkaXZbY2xhc3NePVwic3BhblwiXSxcbiAgLmhhbGYsXG4gIC5mdWxsLFxuICAjbGVmdC1yYWlsLFxuICAjY29udGVudC1tYWluIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgMCBAYmFzZWxpbmU7XG4gIH1cbiAgI2hvbWVwYWdlLWJvdHRvbSAud2lkZ2V0Lm9kZCxcbiAgI2hvbWVwYWdlLWJvdHRvbSAud2lkZ2V0LmV2ZW4ge1xuICAgIHdpZHRoOiA5NSU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAyLjUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuNSU7XG4gIH1cbiAgLmhhbGYsXG4gIC5mdWxsLFxuICAjY29udGVudC1tYWluIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgI3BhZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICB9XG4gICNtYWluIHtcbiAgICBtYXJnaW46IEBiYXNlbGluZSAvIDMgMCAwO1xuICB9XG4gICNjb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZ2xvYmFsLW5hdiB1bCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZ2xvYmFsLW5hdiAubmF2LXJpZ2h0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZ2xvYmFsLW5hdiAubmF2LXJpZ2h0IC5kb25hdGUtYnRuIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICBoMS5lbnRyeS10aXRsZSxcbiAgaDEucGFnZS10aXRsZSB7XG4gICAgZm9udC1zaXplOiBAYmFzZUZvbnRTaXplICogMjtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG4gIC5jYXRlZ29yeS1iYWNrZ3JvdW5kIC5yZWxhdGVkLXRvcGljcyB1bCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxuICAuc3RvcmllcyBoMi5lbnRyeS10aXRsZSxcbiAgLnN0aWNreS1tYWluLWZlYXR1cmUgaDIsXG4gIC5jYXJvdXNlbC1jYXB0aW9uIGgyIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAxLjU7XG4gIH1cbiAgLnN0aWNreS1tYWluLWZlYXR1cmUsXG4gIC5zdGlja3ktZmVhdHVyZXMtbGlzdCB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuICAjc2l0ZS1mb290ZXIgLndpZGdldF9uYXZfbWVudSBsaSBhIHtcbiAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKyAzO1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgfVxuICAjZm9vdGVyLWxvZ29zIC5sb2dvNCB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgI2Zvb3Rlci1sb2dvcyBhIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgI2Zvb3Rlci1sb2dvcyBoNiBhIHtcbiAgXHRkaXNwbGF5OiBpbmxpbmU7XG4gIFx0Y2xlYXI6IGJvdGg7XG4gIFx0ZmxvYXQ6IG5vbmU7XG4gIFx0dGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAjZnQtc29jaWFsIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBsaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIGkge1xuICAgICAgICBmb250LXNpemU6IEBiYXNlRm9udFNpemUgKiAyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAjc2l0ZS1mb290ZXIgaW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206IEBiYXNlbGluZTtcbiAgfVxuICAjc2l0ZS1mb290ZXIgaW5wdXQuc2VhcmNoLXF1ZXJ5IHtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgd2lkdGg6IDc0JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAjc2l0ZS1mb290ZXIgaW5wdXQuc2VhcmNoLXN1Ym1pdCB7XG4gICAgcGFkZGluZzogOHB4IDIlO1xuICAgIHdpZHRoOiAyMCU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gICNib2lsZXJwbGF0ZSBwLmJhY2stdG8tdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogQGJhc2VsaW5lIC8gMjtcbiAgfVxuICAjc2VyaWVzLW1haW4gI3NpZGViYXItbGVmdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAjc2VyaWVzLW1haW4gI2NvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5nbG9iYWwtbmF2LWJnIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5uYXZiYXIgLmJ0bi1uYXZiYXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5jYXRlZ29yeSB7XG4gICAgLnJvdy1mbHVpZCA+ICoge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gICAgLnNwYW40IGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMCBhdXRvIDFlbTtcbiAgICB9XG4gICAgLnNlY29uZGFyeS1mZWF0dXJlZC1wb3N0IGltZyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1heC13aWR0aDogMjMlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzJTtcbiAgICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICAgIH1cbiAgfVxufVxuXG4vLyBVUCBUTyBMQU5EU0NBUEUgUEhPTkVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICNmb290ZXItbG9nb3MgaDYgYSB7XG4gIFx0ZGlzcGxheTogaW5saW5lO1xuICBcdGNsZWFyOiBib3RoO1xuICBcdGZsb2F0OiBub25lO1xuICBcdHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuIiwiQG1lZGlhIHByaW50IHtcblxuXHQvLyB0aGUgYmFzaWNzIChiYXNlZCBvbiBodHRwOi8vaHRtbDVib2lsZXJwbGF0ZS5jb20vKVxuXHQqIHtcblx0XHRiYWNrZ3JvdW5kOnRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6IzAwMCAhaW1wb3J0YW50O1xuXHRcdGJveC1zaGFkb3c6bm9uZSAhaW1wb3J0YW50O1xuXHRcdHRleHQtc2hhZG93Om5vbmUgIWltcG9ydGFudDtcblx0XHRmaWx0ZXI6bm9uZSAhaW1wb3J0YW50O1xuXHRcdC1tcy1maWx0ZXI6bm9uZSAhaW1wb3J0YW50XG5cdH1cblxuXHRhLGE6dmlzaXRlZCB7XG5cdFx0Y29sb3I6IzAwMDA2NjsgXG5cdFx0dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZVxuXHR9XG5cblx0Lmhlcm8ge1xuXHRcdGZsb2F0OiByaWdodDtcblx0fVxuXG5cdGhyIHtcblx0XHRtYXJnaW46IDEycHggMDtcblx0fVxuXG5cdHByZSxibG9ja3F1b3RlIHtcblx0XHRib3JkZXI6MXB4IHNvbGlkICM5OTk7XG5cdFx0cGFnZS1icmVhay1pbnNpZGU6YXZvaWRcblx0fVxuXG5cdC8qIE9uZSBjb2x1bW4gZGlzcGxheSAqL1xuXG5cdGJvZHkubm9ybWFsLnNpbmdsZS1wb3N0IC5oZXJvLCBib2R5Lm5vcm1hbC5wYWdlIC5oZXJvIHtcblx0XHR3aWR0aDogNjAlOyAvKiBzYXZlIHNvbWUgcGFwZXIuICovXG5cdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRmbG9hdDpub25lO1xuXHR9XG5cdFxuXHQjY29udGVudCA+IGltZy5zaXplLWxhcmdlLCAjY29udGVudCAud3AtY2FwdGlvbiBpbWcuc2l6ZS1sYXJnZSB7XG5cdFx0bWF4LXdpZHRoOiA2MCUgIWltcG9ydGFudDtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cblxuXHRhc2lkZS50eXBlLXB1bGwtcXVvdGUge1xuXHRcdG1hcmdpbi1ib3R0b206IDEycHg7XG5cdH1cblxuXHQjY29udGVudC5zcGFuOFtyb2xlPW1haW5dIHtcblx0XHRtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuXHR9XG5cdFxuXHR0aGVhZCB7XG5cdFx0ZGlzcGxheTp0YWJsZS1oZWFkZXItZ3JvdXBcblx0fVxuXG5cdHRyLGltZyB7XG5cdFx0cGFnZS1icmVhay1pbnNpZGU6YXZvaWRcblx0fVxuXG5cdGltZyB7IC8qXG5cdFx0bWF4LXdpZHRoOjEwMCUgIWltcG9ydGFudFxuXHQqL31cblxuXHRAcGFnZSB7XG5cdFx0bWFyZ2luOi41Y20gLjVjbSAxY21cblx0fVxuXG5cdHAsaDIsaDMge1xuXHRcdG9ycGhhbnM6Mztcblx0XHR3aWRvd3M6M1xuXHR9XG5cblx0aDIsaDMge1xuXHRcdHBhZ2UtYnJlYWstYWZ0ZXI6YXZvaWRcblx0fVxuXG5cdC5hdXRob3IgLnVybCB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG5cblx0bmF2LFxuXHRpZnJhbWUsXG5cdG9iamVjdCxcblx0YXVkaW8sXG5cdHZpZGVvLFxuXHQuZ2xvYmFsLW5hdixcblx0I3NpdGUtaGVhZGVyLFxuXHQucG9zdC1zb2NpYWwsXG5cdC5ib3R0b20tbWV0YSxcblx0LmF1dGhvci1ib3gsXG5cdCNyZWxhdGVkLXBvc3RzLFxuXHQjY29tbWVudHMsXG5cdC5wb3N0LW5hdixcblx0I3NpZGViYXIsXG5cdCNzaXRlLWZvb3Rlcixcblx0LnN0aWNreS1uYXYtd3JhcHBlcixcblx0LmFydGljbGUtYm90dG9tIC53aWRnZXQ6bm90KC5sYXJnby1kaXNjbGFpbWVyKSB7XG5cdFx0ZGlzcGxheTpub25lXG5cdH1cblxuXHQuYXJ0aWNsZS1ib3R0b20ge1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuXHR9XG5cblx0Lm1vZHVsZSxcblx0Lm1vZHVsZS5pbWFnZSxcblx0LndwLWNhcHRpb24sXG5cdC53cC1tZWRpYS1jcmVkaXQsXG5cdHAud3AtY2FwdGlvbi10ZXh0LFxuXHQubGFyZ28tZGlzY2xhaW1lcixcblx0Lmhlcm9cblx0IHtcblx0XHRmb250LXNpemU6IDEwcHggIWltcG9ydGFudDtcblx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdH1cblxuXHQuaGVybyBwLndwLW1lZGlhLWNyZWRpdCxcblx0Lmhlcm8gcC53cC1jYXB0aW9uLFxuXHQuaGVybyBwLndwLWNhcHRpb24tdGV4dCB7XG5cdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblx0fVxuXG5cdC5lZGl0LWxpbmsge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQucHJpbnQtaGVhZGVyIHtcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwO1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0c3Ryb25nIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICMwMDA7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xuXHRcdH1cblx0fVxuXG5cdHAsdWwsb2wsLmJ5bGluZSB7XG5cdFx0Zm9udC1zaXplOjEycHggIWltcG9ydGFudDtcblx0XHRtYXJnaW4tYm90dG9tOjEwcHhcblx0fVxuXG5cdGgxLGgyLGgyLGg0LGg1LGg2LC5lbnRyeS1jb250ZW50IGgzIHtcblx0XHRmb250LXNpemU6MTZweCAhaW1wb3J0YW50XG5cdH1cblxuXHRoMS5lbnRyeS10aXRsZSB7XG5cdFx0Zm9udC1zaXplOjI4cHggIWltcG9ydGFudFxuXHR9XG5cblx0LmVudHJ5LWNvbnRlbnQgYTpsaW5rOmFmdGVyLFxuXHQuZW50cnktY29udGVudCBhOnZpc2l0ZWQ6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6XCIgKFwiIGF0dHIoaHJlZikgXCIpIFwiO1xuXHRcdGZvbnQtc2l6ZTo4MCVcblx0fVxuXG4gIC5EVi1jb250YWluZXIgeyBkaXNwbGF5OiBub25lOyB9XG59XG4iXX0= */ \ No newline at end of file diff --git a/css/style.min.css b/css/style.min.css index b77e95865..91ec82954 100644 --- a/css/style.min.css +++ b/css/style.min.css @@ -1 +1 @@ -.hide-text,pre code{background-color:transparent}.clearfix:after,.form-actions:after,.form-horizontal .control-group:after,.row-fluid:after,blockquote{clear:both}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:#333 dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}a:active,a:hover{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}.clearfix:after,.clearfix:before{display:table;content:""}.visuallyhidden{position:absolute;overflow:hidden;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0}.hide-text{font:0/0 a;color:transparent;text-shadow:none;border:0}address,dfn,em,p.intro{font-style:italic}#page,body{background-color:#fff}.input-block-level{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}body{margin:0;font-family:Georgia,"Times New Roman",Times,serif;font-size:16px;font-weight:400;line-height:1.5;color:#484848}a{color:#2275bb;text-decoration:none}a:hover{color:#368fda;text-decoration:underline}a.more-link{white-space:nowrap}address,dl,fieldset,h1,h2,h3,h4,h5,h6,hr,ol,p,pre,table,ul{margin:0 0 24px}h1{font-size:54px}h1.entry-title,h2{font-size:44px}h1.entry-title{margin-bottom:12px;line-height:1}blockquote p,p{line-height:1.5}blockquote small,pre{line-height:24px;display:block}h3{font-size:36px}.entry-content h1,.entry-content h2,.entry-content h3,h4{font-size:29.33px}.entry-content h4,.stories h3,h5{font-size:24px}.entry-content h5.top-tag,.widget h5.top-tag,h5.top-tag{font-size:16px;margin-bottom:4.8px;text-transform:uppercase;color:#aaa}.entry-content h5.top-tag a,.widget h5.top-tag a,h5.top-tag a{color:#aaa}.entry-content h5,h6{font-size:19.55px}.entry-content h6{font-size:16px;text-transform:uppercase}h1,h2,h3,h4,h5,h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:700;color:inherit;line-height:1.3;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-size:.815em}.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6{margin-bottom:24px}p{font-size:19.55px;margin:0 0 24px}p small,p.small{font-size:13.04px;color:#aaa}p.xsmall{font-size:10.67px;color:#aaa}p.intro{font-size:24px;color:#7d8185}ol,ul{padding:0;margin:0 0 24px 25px}.entry-content ol,.entry-content ul{font-size:19.55px}ol ol,ol ul,ul ol,ul ul{margin-top:8px;margin-bottom:0}ul{list-style:disc}ol{list-style:decimal}ol ol{list-style:lower-alpha}ol ol ol{list-style:lower-roman}li{margin-bottom:12px}ol.unstyled,ul.unstyled{margin-left:0;list-style:none}address,pre{margin:0 0 24px}dfn,dl dt,strong{font-weight:700}dd{margin-left:5px}abbr,acronym{border-bottom:1px dotted #aaa}del{color:#aaa}blockquote{padding:5px 15px 5px 30px;margin:24px;border-left:5px solid #ddd}blockquote p{font-size:16px;margin:12px 0}blockquote small{color:#aaa}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-left:0;border-right:5px solid #ddd;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}code,pre{padding:0 3px 2px;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;font-size:14px;color:#484848}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8}pre{padding:12px;font-size:14.8px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15)}pre.prettyprint{margin-bottom:24px}pre code{padding:0;color:inherit;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}hr{margin:24px 0;border:0;border-top:1px solid #ddd;border-bottom:1px solid #fff}.is-video img{opacity:.5;position:relative;background:0 0;width:100%}.is-video{background-color:#000;background-image:url(../img/is-video-play-icon.svg);background-repeat:no-repeat;background-position:50% 50%;background-size:20%}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:2.25;font-size:24px;line-height:3;color:#484848;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:1.125;color:#aaa}button,input,label,select,textarea{font-size:16px;font-weight:400;line-height:1.5}button,input,select,textarea{font-family:Georgia,"Times New Roman",Times,serif}label{display:block;margin-bottom:5px}.uneditable-input,input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=tel],input[type=color],input[type=search],input[type=text],select,textarea{display:inline-block;height:1.5;padding:4px;margin-bottom:9px;font-size:16px;line-height:1.5;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;color:#7d8185}select[multiple],select[size],textarea{height:auto}input,textarea{width:210px}.uneditable-input,input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=tel],input[type=color],input[type=search],input[type=text],textarea{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-ms-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}.uneditable-input:focus,input[type=password]:focus,input[type=datetime]:focus,input[type=datetime-local]:focus,input[type=date]:focus,input[type=month]:focus,input[type=time]:focus,input[type=week]:focus,input[type=number]:focus,input[type=email]:focus,input[type=url]:focus,input[type=tel]:focus,input[type=color]:focus,input[type=search]:focus,input[type=text]:focus,textarea:focus{border-color:rgba(82,168,236,.8);outline:0;outline:dotted thin\9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6)}input[type=radio],input[type=checkbox]{margin:3px 0;line-height:normal;cursor:pointer}input[type=button],input[type=reset],input[type=radio],input[type=checkbox],input[type=submit]{width:auto}.uneditable-textarea{width:auto;height:auto}input[type=file],select{height:28px;line-height:28px}select{width:220px;border:1px solid #bbb;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}input[type=radio]:focus,input[type=checkbox]:focus,input[type=file]:focus,select:focus{outline:#333 dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.checkbox,.radio{min-height:18px;padding-left:18px}.checkbox input[type=checkbox],.radio input[type=radio]{float:left;margin-left:-18px}.controls>.checkbox:first-child,.controls>.radio:first-child{padding-top:5px}.checkbox.inline,.radio.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.checkbox.inline+.checkbox.inline,.radio.inline+.radio.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}.row-fluid .uneditable-input[class*=span],.row-fluid input[class*=span],.row-fluid select[class*=span],.row-fluid textarea[class*=span],.uneditable-input[class*=span],input[class*=span],select[class*=span],textarea[class*=span]{float:none;margin-left:0}.input-append .uneditable-input[class*=span],.input-append input[class*=span],.input-prepend .uneditable-input[class*=span],.input-prepend input[class*=span],.row-fluid .input-append [class*=span],.row-fluid .input-prepend [class*=span]{display:inline-block}.uneditable-input,input,textarea{margin-left:0}.uneditable-input.span12,input.span12,textarea.span12{width:89.99999999%}.uneditable-input.span11,input.span11,textarea.span11{width:81.48936169%}.uneditable-input.span10,input.span10,textarea.span10{width:72.9787234%}.uneditable-input.span9,input.span9,textarea.span9{width:64.4680851%}.uneditable-input.span8,input.span8,textarea.span8{width:55.9574468%}.uneditable-input.span7,input.span7,textarea.span7{width:47.4468085%}.uneditable-input.span6,input.span6,textarea.span6{width:38.93617021%}.uneditable-input.span5,input.span5,textarea.span5{width:30.42553191%}.uneditable-input.span4,input.span4,textarea.span4{width:21.91489361%}.uneditable-input.span3,input.span3,textarea.span3{width:13.40425532%}.uneditable-input.span2,input.span2,textarea.span2{width:4.89361702%}.uneditable-input.span1,input.span1,textarea.span1{width:-3.61702128%}input[disabled],input[readonly],select[disabled],select[readonly],textarea[disabled],textarea[readonly]{cursor:not-allowed;background-color:#ddd;border-color:#ddd}input[type=radio][disabled],input[type=radio][readonly],input[type=checkbox][disabled],input[type=checkbox][readonly]{background-color:transparent}.control-group.warning .help-block,.control-group.warning .help-inline,.control-group.warning>label{color:#c09853}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#c09853;border-color:#c09853}.control-group.warning .checkbox:focus,.control-group.warning .radio:focus,.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#a47e3c;-webkit-box-shadow:0 0 6px #dbc59e;-moz-box-shadow:0 0 6px #dbc59e;box-shadow:0 0 6px #dbc59e}.control-group.warning .input-append .add-on,.control-group.warning .input-prepend .add-on{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.control-group.error .help-block,.control-group.error .help-inline,.control-group.error>label{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48;border-color:#b94a48}.control-group.error .checkbox:focus,.control-group.error .radio:focus,.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:0 0 6px #d59392;-moz-box-shadow:0 0 6px #d59392;box-shadow:0 0 6px #d59392}.control-group.error .input-append .add-on,.control-group.error .input-prepend .add-on{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.control-group.success .help-block,.control-group.success .help-inline,.control-group.success>label{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847;border-color:#468847}.control-group.success .checkbox:focus,.control-group.success .radio:focus,.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:0 0 6px #7aba7b;-moz-box-shadow:0 0 6px #7aba7b;box-shadow:0 0 6px #7aba7b}.control-group.success .input-append .add-on,.control-group.success .input-prepend .add-on{color:#468847;background-color:#dff0d8;border-color:#468847}input:focus:required:invalid,select:focus:required:invalid,textarea:focus:required:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:required:invalid:focus,select:focus:required:invalid:focus,textarea:focus:required:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:.5 20px 1.5;margin-top:1.5;margin-bottom:1.5;background-color:#f5f5f5;border-top:1px solid #e5e5e5}.form-actions:after,.form-actions:before{display:table;content:""}.uneditable-input{overflow:hidden;white-space:nowrap;cursor:not-allowed;background-color:#fff;border-color:#eee;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.025);box-shadow:inset 0 1px 2px rgba(0,0,0,.025)}:-moz-placeholder{color:#aaa}:-ms-input-placeholder{color:#aaa}::-webkit-input-placeholder{color:#aaa}.help-block,.help-inline{color:#7d8185}.help-block{display:block;margin-bottom:.75}.help-inline{display:inline-block;vertical-align:middle;padding-left:5px}.input-append,.input-prepend{margin-bottom:5px}.input-append .uneditable-input,.input-append input,.input-append select,.input-prepend .uneditable-input,.input-prepend input,.input-prepend select{position:relative;margin-bottom:0;vertical-align:middle}.input-append .uneditable-input:focus,.input-append input:focus,.input-append select:focus,.input-prepend .uneditable-input:focus,.input-prepend input:focus,.input-prepend select:focus{z-index:2}.input-append .uneditable-input,.input-prepend .uneditable-input{border-left-color:#ccc}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:1.5;min-width:16px;padding:4px 5px;font-weight:400;line-height:1.5;text-align:center;text-shadow:0 1px 0 #fff;vertical-align:middle;background-color:#ddd;border:1px solid #ccc}.input-append .add-on,.input-append .btn,.input-prepend .add-on,.input-prepend .btn{margin-left:-1px}.input-append .active,.input-prepend .active{background-color:#a9dba9;border-color:#46a546}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-append .uneditable-input{border-right-color:#ccc;border-left-color:#eee}.form-horizontal .help-inline,.form-horizontal .input-append,.form-horizontal .input-prepend,.form-horizontal .uneditable-input,.form-horizontal input,.form-horizontal select,.form-horizontal textarea,.form-inline .help-inline,.form-inline .input-append,.form-inline .input-prepend,.form-inline .uneditable-input,.form-inline input,.form-inline select,.form-inline textarea,.form-search .help-inline,.form-search .input-append,.form-search .input-prepend,.form-search .uneditable-input,.form-search input,.form-search select,.form-search textarea{display:inline-block;margin-bottom:0}.form-horizontal .hide,.form-inline .hide,.form-search .hide{display:none}.form-inline label,.form-search label{display:inline-block}.form-inline .input-append,.form-inline .input-prepend,.form-search .input-append,.form-search .input-prepend{margin-bottom:0}.form-inline .checkbox,.form-inline .radio,.form-search .checkbox,.form-search .radio{padding-left:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio],.form-search .checkbox input[type=checkbox],.form-search .radio input[type=radio]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:.75}legend+.control-group{margin-top:1.5;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:1.5}.form-horizontal .control-group:after,.form-horizontal .control-group:before{display:table;content:""}.form-horizontal .control-label{float:left;width:140px;padding-top:5px;text-align:right}table .span1,table .span10,table .span11,table .span13,table .span14,table .span15,table .span16,table .span17,table .span18,table .span19,table .span2,table .span20,table .span21,table .span22,table .span23,table .span24,table .span3,table .span4,table .span5,table .span6,table .span7,table .span8,table .span9{float:none;margin-left:0}.form-horizontal .controls{margin-left:160px}.form-horizontal .help-block{margin-top:.75;margin-bottom:0}.form-horizontal .form-actions{padding-left:160px}.gcs_container .gsc-control-cse{width:auto;padding:0;background-color:transparent;border:none}.gcs_container .gsc-search-button{margin-top:0!important}.gcs_container .gsc-results-wrapper-overlay .gsc-input,.gcs_container .gsc-search-box .gsc-input{padding-right:5px!important}.gcs_container .gsc-results-wrapper-overlay table,.gcs_container .gsc-search-box table{border:0;border-collapse:separate;margin-bottom:0}.gcs_container .gsc-results-wrapper-overlay td,.gcs_container .gsc-search-box td{border:0;padding:0}.gcs_container .gsc-results-wrapper-overlay td.gsib_a,.gcs_container .gsc-search-box td.gsib_a{padding:3px 6px 0!important}.gcs_container .gsc-results-wrapper-overlay td.gsc-search-button,.gcs_container .gsc-search-box td.gsc-search-button{padding:0;line-height:normal}.gcs_container .gsc-results-wrapper-overlay input[type=text],.gcs_container .gsc-search-box input[type=text]{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.gcs_container .gsc-results-wrapper-overlay input.gsc-search-button-v2,.gcs_container .gsc-search-box input.gsc-search-button-v2{padding:6px 15px!important;height:13px!important;font-size:15px;margin-bottom:0!important;background-color:#2276bd;background-image:-moz-linear-gradient(top,#247ac4,#2070b2);background-image:-ms-linear-gradient(top,#247ac4,#2070b2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#247ac4),to(#2070b2));background-image:-webkit-linear-gradient(top,#247ac4,#2070b2);background-image:-o-linear-gradient(top,#247ac4,#2070b2);background-image:linear-gradient(top,#247ac4,#2070b2);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#247ac4', endColorstr='#2070b2', GradientType=0)}.gcs_container .gsc-results-wrapper-overlay input.gsc-search-button-v2:hover,.gcs_container .gsc-search-box input.gsc-search-button-v2:hover{background-color:#2274b9;background-image:-moz-linear-gradient(top,#2070b2,#247ac4);background-image:-ms-linear-gradient(top,#2070b2,#247ac4);background-image:-webkit-gradient(linear,0 0,0 100%,from(#2070b2),to(#247ac4));background-image:-webkit-linear-gradient(top,#2070b2,#247ac4);background-image:-o-linear-gradient(top,#2070b2,#247ac4);background-image:linear-gradient(top,#2070b2,#247ac4);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#2070b2', endColorstr='#247ac4', GradientType=0)}.btn{display:inline-block;padding:4px 10px;margin-bottom:0;font-size:16px;line-height:1.5;color:#484848;text-align:center;vertical-align:middle;cursor:pointer}.btn:hover{color:#484848;text-decoration:none;background-color:#e6e6e6;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-ms-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:#333 dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.btn.active,.btn:active{background-color:#e6e6e6;background-color:#d9d9d9\9;background-image:none;outline:0}.btn.disabled,.btn[disabled]{cursor:default;background-color:#e6e6e6;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}#floating-social-buttons .post-social>span:hover,#respond input#submit,.post-social .email:hover,.post-social>span:hover{cursor:pointer}.btn-large{padding:9px 14px;font-size:18px;line-height:normal}.btn-large [class^=icon-]{margin-top:1px}.btn-small{padding:5px 9px;font-size:14px;line-height:-.5px}.btn-small [class^=icon-]{margin-top:-1px}.btn-mini{padding:2px 6px;font-size:14px;line-height:-2.5px}.btn-primary.active{color:rgba(255,255,255,.75)}.btn{border-color:#ccc;background-color:#ddd}.btn-primary,.btn-primary:hover{color:#fff;background-color:#2275bb}.btn-primary:hover{background-color:#1a5a90;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-ms-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}table{max-width:100%;width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0;border:1px solid #ddd;border-left:0;margin-bottom:1.5}table td,table th{padding:8px;line-height:1.5;text-align:left;vertical-align:top;border-top:1px solid #ddd;border-left:1px solid #ddd}table th{font-weight:700}table thead th{vertical-align:bottom}table tbody+tbody{border-top:2px solid #ddd}table caption+tbody tr:first-child td,table caption+tbody tr:first-child th,table caption+thead tr:first-child td,table caption+thead tr:first-child th,table colgroup+tbody tr:first-child td,table colgroup+tbody tr:first-child th,table colgroup+thead tr:first-child td,table colgroup+thead tr:first-child th,table tbody:first-child tr:first-child td,table tbody:first-child tr:first-child th,table thead:first-child tr:first-child td,table thead:first-child tr:first-child th{border-top:0}.table-condensed td,.table-condensed th{padding:4px 5px}.table-noborder,.table-noborder td,.table-noborder th{border:none}.table-striped tbody tr:nth-child(odd) td,.table-striped tbody tr:nth-child(odd) th{background-color:#f9f9f9}.table tbody tr:hover td,.table tbody tr:hover th{background-color:#f5f5f5}table .span1{width:-9.61702128%}table .span2{width:-1.10638298%}table .span3{width:7.40425532%}table .span4{width:15.91489361%}table .span5{width:24.42553191%}table .span6{width:32.93617021%}table .span7{width:41.4468085%}table .span8{width:49.9574468%}table .span9{width:58.4680851%}table .span10{width:66.9787234%}table .span11{width:75.48936169%}table .span12{float:none;width:83.99999999%;margin-left:0}table .span13{width:92.51063829%}table .span14{width:101.02127658%}table .span15{width:109.53191488%}table .span16{width:118.04255318%}table .span17{width:126.55319148%}table .span18{width:135.06382977%}table .span19{width:143.57446807%}table .span20{width:152.08510637%}table .span21{width:160.59574466%}table .span22{width:169.10638296%}table .span23{width:177.61702126%}table .span24{width:186.12765955%}@font-face{font-family:fontello;src:url(../fonts/fontello/font/fontello.eot);src:url(../fonts/fontello/font/fontello.eot?#iefix) format('embedded-opentype'),url(../fonts/fontello/font/fontello.woff) format('woff'),url(../fonts/fontello/font/fontello.ttf) format('truetype'),url(../fonts/fontello/font/fontello.svg#fontello) format('svg');font-weight:400;font-style:normal}[class*=" icon-"]:before,[class^=icon-]:before{font-family:fontello;font-style:normal;font-weight:400;speak:none;display:inline-block;text-decoration:inherit;width:1em;margin-right:.2em;text-align:center;opacity:1;text-transform:none!important}#header-search button,#header-search input,#topics-bar ul,.archive-background .related-topics,.archive-background .rss-subscribe-link,.global-nav,.labels,.navbar,.pager,.post-pagination a,.post-pagination span,.post-social>span,.tags{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}.donate-btn a:hover,.dropdown-menu li>a:hover,.global-nav ul a:hover,.navbar li>a,.navbar.sticky-navbar .site-name a:hover,.post-social a:hover,h1.branding a:hover,h2.branding a:hover{text-decoration:none}.icon-search:before{content:'\4d'}.icon-instagram:before{content:'\74'}.icon-heart:before{content:'\41'}.icon-heart-empty:before{content:'\42'}.icon-star:before{content:'\43'}.icon-star-empty:before{content:'\44'}.icon-videocam:before{content:'\e802'}.icon-picture:before{content:'\e800'}.icon-camera:before{content:'\e801'}.icon-ok:before{content:'\45'}.icon-cancel:before{content:'\46'}.icon-plus:before{content:'\47'}.icon-minus:before{content:'\48'}.icon-help:before{content:'\49'}.icon-home:before{content:'\50'}.icon-link:before{content:'\51'}.icon-tag:before{content:'\52'}.icon-tags:before{content:'\53'}.icon-download:before{content:'\54'}.icon-print:before{content:'\55'}.icon-comment:before{content:'\56'}.icon-chat:before{content:'\57'}.icon-location:before{content:'\e808'}.icon-doc-text:before{content:'\e804'}.icon-mail:before{content:'\75'}.icon-phone:before{content:'\58'}.icon-menu:before{content:'\4c'}.icon-calendar:before{content:'\e805'}.icon-headphones:before{content:'\59'}.icon-play:before{content:'\60'}.icon-table:before{content:'\e807'}.icon-chart-bar:before{content:'\e806'}.icon-spinner:before{content:'\61'}.icon-map:before{content:'\e809'}.icon-share:before{content:'\e80a'}.icon-gplus:before{content:'\62'}.icon-pinterest:before{content:'\63'}.icon-cc:before{content:'\64'}.icon-flickr:before{content:'\65'}.icon-linkedin:before{content:'\66'}.icon-rss:before{content:'\67'}.icon-twitter:before{content:'\68'}.icon-youtube:before{content:'\69'}.icon-facebook:before{content:'\70'}.icon-github:before{content:'\71'}.icon-itunes:before{content:'\72'}.icon-tumblr:before{content:'\73'}.icon-doc-text-inv:before{content:'\e803'}#header-social i{position:relative;top:0;padding:4px}#header-social i:hover{color:#fff!important;opacity:.9}#before-footer,#footer-logos,#page,#site-footer,.global-nav,.sticky-nav-container{max-width:1170px;padding:0 2.5%}#page{padding-bottom:18px}#main{margin:18px 0}#left-rail{float:left;margin-left:0}#content-main{float:right}.row-fluid{width:100%}.row-fluid:after,.row-fluid:before{display:table;content:""}.row-fluid [class*=span]{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;float:left;margin-left:2.12765957%}.row-fluid [class*=span]:first-child{margin-left:0}.row-fluid .span12{width:99.99999999%}.row-fluid .span11{width:91.48936169%}.row-fluid .span10{width:82.9787234%}.row-fluid .span9{width:74.4680851%}.row-fluid .span8{width:65.9574468%}.row-fluid .span7{width:57.4468085%}.row-fluid .span6{width:48.93617021%}.row-fluid .span5{width:40.42553191%}.row-fluid .span4{width:31.91489361%}.row-fluid .span3{width:23.40425532%}.row-fluid .span2{width:14.89361702%}.row-fluid .span1{width:6.38297872%}@media screen and (max-width:480px){.home #main{margin-top:24px}}.popover{display:none;position:absolute;top:0;left:0;min-width:180px;background:#fff;text-transform:none;color:#7d8185;text-align:left;padding:1em;border:1px solid #ddd;border:1px solid rgba(0,0,0,.2);-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.popover:after,.popover:before{content:'';display:inline-block;position:absolute}.popover:before{border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:10px solid #ddd;border-bottom-color:rgba(0,0,0,.2);top:-10px;left:9px}.popover:after{border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:9px solid #fff;top:-9px;left:10px}.global-nav-bg{height:38px;background-color:#222}.global-nav{position:relative;height:38px;overflow:visible;z-index:1030}.global-nav ul{margin:0;list-style:none;font-size:11px;line-height:24px}.global-nav ul li{float:left;margin:9px 18px 0 0}.global-nav ul a{color:#fff}.global-nav ul a:hover{color:#d9d9d9}.global-nav .nav-right{float:right}.global-nav .nav-right ul#header-social{float:left;margin:0;font-size:14px}.global-nav .nav-right ul#header-social li{margin:5px 0 5px 10px}.global-nav .nav-right ul#header-social li a{color:#fff}.global-nav .nav-right ul#header-social li a i{display:block;height:24px;padding:3px 4px 2px}.global-nav .nav-right .donate-btn{float:left;margin:5px 0 0 10px}.donate-btn{font-size:14px;line-height:2;background-color:#bd261d}.donate-btn:hover{background-color:#d32a20}.donate-btn a{padding:24px 7px;color:#fff}.donate-btn i{margin:1px 3px 0 0}.nav-shelf li.donate a.donate-link{color:#bd261d}@media (max-width:480px){#header-extras li.donate{display:none}.nav-shelf li.donate{display:block}}@media (min-width:481px){.nav-shelf li.donate{display:none}}#header-search{margin-left:10px;margin-top:5px;max-width:210px;float:left}#header-search form{margin:0}#header-search button,#header-search input{font-size:13px;line-height:1}#header-search input{height:18px;padding:6px 4px 2px}#header-search button{height:28px;text-transform:uppercase}#site-header{margin:24px 0;width:auto}#site-header img{clear:none;margin:5px 0}#site-header aside{max-width:320px;float:right}h1.branding,h2.branding{clear:both;margin:20px 0;font-size:54px;line-height:1}h1.branding a,h2.branding a{color:#484848}h1.branding span,h2.branding span{display:block;clear:both;text-align:center}.navbar .toggle-nav-bar,.print-header{display:none}h1.branding .sitename,h2.branding .sitename{margin-bottom:.25em}h1.branding .tagline,h2.branding .tagline{font-size:24px;font-weight:300;color:#7d8185}.alert-wrapper{background:0 0;border:2px solid #bd261d;margin:20px 0}.dropdown-menu,.navbar .navbar-inner,.sticky-nav-holder{background-color:#fff}#alert-container{max-width:1170px;margin:1em auto;padding:8px 20px 0;color:#484848}#alert-container a{color:#484848}#alert-container a:hover{color:#bd261d}#alert-container .widget:last-child{margin-bottom:0}@media (max-width:768px){#main-nav,#site-header{display:none}}html.nav-open,html.nav-open body{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.navbar{overflow:visible;margin-bottom:4.8px;color:#484848}.navbar .navbar-text,.navbar li{margin-bottom:0}.navbar .container{width:auto}.navbar .nav,.navbar li,.navbar li.home-link>a,.navbar li>a{display:block}.navbar #header-social li>a{padding-left:4px;padding-right:4px}.navbar .nav{position:relative;left:0;float:left;margin:0;color:#484848}.navbar .nav>li>a{color:#484848}.navbar li{float:left}.navbar li>a{line-height:40px;padding-left:10px;padding-right:10px}.navbar li.dropdown>a{padding-right:0}.navbar li.dropdown .dropdown-menu li a{color:#484848;padding-right:10px;line-height:1.5}.navbar li.dropdown .dropdown-menu li a:hover{color:#3b3b3b}.navbar li>a:hover{background-color:#f2f2f2;color:#3b3b3b}.navbar li>a:hover .caret:before{border-top-color:#3b3b3b}.navbar .sub-menu:before,.navbar .sub-sub-menu:before{border-bottom:9px solid transparent;border-left:none;border-right:9px solid rgba(0,0,0,.2);border-top:9px solid transparent;left:-9px;top:30%}.navbar .sub-menu:after,.navbar .sub-sub-menu:after{border-top:8px solid transparent;border-left:none;border-right:8px solid #fff;border-bottom:8px solid transparent;top:31%;left:-8px}.navbar li.home-icon a:hover,.navbar li.home-link a:hover{background-color:transparent;color:#4b9bde}.navbar li.home-icon>a:hover,.navbar li.home-link>a:hover{background:0 0}.navbar .home-icon:hover img,.navbar li.home-link:hover i{opacity:.85;filter:alpha(opacity=85)}.navbar li.home-link{overflow:hidden}.navbar li.home-link>a img{display:block;height:40px;width:40px}.navbar li.home-icon>a{padding:0}.navbar li.home-icon>a img{display:inline-block;height:24px;width:auto;margin-right:1em}.navbar .btn-navbar{display:none;float:left;margin-right:10px;background-color:transparent;border:none;padding:12.5px 10px}.navbar .btn-navbar .label{float:right;color:#fff;line-height:1;margin:-2px 0 0 5px;padding:0;font-size:15px}.navbar .btn-navbar .navbar .btn-navbar .bars{float:left}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:3px}.navbar .btn-navbar .icon-bar+.icon-bar{margin-top:3px}@media (min-width:769px){.navbar .nav-left{display:none}}@media (max-width:768px){.navbar{position:relative;z-index:9}.navbar li.dropdown .dropdown-menu li a{line-height:40px;padding-top:0;padding-bottom:0;padding-left:40px}.navbar .container{width:auto;padding:0}.navbar .toggle-nav-bar{display:block}.navbar .nav-shelf .home-icon,.navbar .nav-shelf .home-link,.navbar .nav-shelf .site-name,.navbar .nav-shelf li.home-link{display:none}.navbar .nav-shelf{background:#fff;position:fixed;top:0;bottom:0;left:0;right:0;visibility:hidden;opacity:0;overflow-y:scroll;-webkit-overflow-scrolling:touch}.navbar .nav-shelf li,.navbar .nav-shelf ul{float:none}.navbar .nav-shelf li b.caret{float:right;-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.navbar .nav-shelf li.open>a .caret{-webkit-transform:rotate(0);-moz-transform:rotate(0);-ms-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}.navbar .nav-shelf li.open>ul.dropdown-menu{display:block;position:relative;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border:none;padding:0}.navbar .nav li.home-link,.navbar .nav li.site-name,.navbar .nav-shelf li.open>ul.dropdown-menu:after,.navbar .nav-shelf li.open>ul.dropdown-menu:before{display:none}.navbar .nav-shelf .nav>li:last-child{border-bottom:none;padding-bottom:none}.navbar.open .nav-shelf{visibility:visible;opacity:1;border-bottom:1px solid #ddd}}.caret,.caret:before,.dropdown,.dropup{position:relative}.navbar-inner{float:left;width:100%}.caret{display:inline-block;width:16px;padding:0 8px;top:2px}.caret:before{display:block;width:0;height:0;border-top:6px solid #484848;border-right:5px solid transparent;border-left:5px solid transparent;border-bottom:5px solid transparent;content:""}.dropdown .caret,.dropup .caret{border-top-color:#fff;border-bottom-color:#fff}.dropdown.active .caret,.dropup.active .caret{opacity:1;filter:alpha(opacity=100)}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:3px 0;margin:0;list-style:none;border:1px solid #ddd;border:1px solid rgba(0,0,0,.2);-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu li{padding-top:0;width:100%;margin-bottom:0}.dropdown-menu li>a{display:block;width:auto;padding:3px 15px;clear:both;white-space:nowrap;text-shadow:none}.dropdown-menu:after,.dropdown-menu:before{content:'';display:inline-block;position:absolute}.dropdown-menu .active>a,.dropdown-menu .active>a:hover{color:#484848;background-color:#fff}.dropdown-menu:before{border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:10px solid #ddd;border-bottom-color:rgba(0,0,0,.2);top:-10px;left:9px}.dropdown-menu:after{border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:9px solid #fff;top:-9px;left:10px}.dropdown-menu .sub-menu,.dropdown-menu .sub-sub-menu{position:absolute;top:-20%;left:99%;visibility:hidden;margin-top:0}.dropdown-menu .icon-arrow-right{position:relative;top:2px;left:3px}.dropdown-menu .sub-menu li:hover .sub-sub-menu,.dropdown-menu li:hover .sub-menu{visibility:visible;display:block}@media (max-width:768px){.dropdown-menu li:hover .sub-menu,.dropdown-menu li:hover .sub-sub-menu{display:none;visibility:hidden}.dropdown-menu li:hover .sub-menu:before,.dropdown-menu li:hover .sub-sub-menu:before{display:none}}.open>.dropdown-menu{display:block}@media (min-width:769px){html.no-touch ul.nav li.dropdown:hover ul.dropdown-menu,html.touch ul.nav li.dropdown.open ul.dropdown-menu{display:block}.open>.dropdown-menu{display:none}}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:"\2191"}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}#topics-bar{padding:3px 0}#topics-bar ul{margin:0}#topics-bar ul li{display:inline;margin-right:10px;white-space:nowrap;font-size:14px}#topics-bar ul li.menu-label{font-size:15px;font-weight:700}#main-nav.navbar{border-top:1px solid #aaa;border-bottom:1px solid #aaa}.sticky-nav-container{margin:0 auto;position:relative}.sticky-nav-holder{position:fixed;top:0;left:0;right:0;z-index:99998;visibility:hidden;opacity:0;border-bottom:1px solid #ddd;-webkit-transition:opacity .3s;-moz-transition:opacity .3s;-ms-transition:opacity .3s;-o-transition:opacity .3s;transition:opacity .3s}.sticky-nav-holder.transitioning{overflow:hidden;height:56px}.sticky-nav-holder.transitioning .navbar{opacity:0}.sticky-nav-holder.show{visibility:visible;opacity:1}body.admin-bar .sticky-nav-holder{top:32px}@media (max-width:782px){body.admin-bar .sticky-nav-holder{top:46px}}@media (max-width:600px){body.admin-bar .sticky-nav-holder{top:0}}@media (min-width:769px){.sticky-nav-holder{display:none}body.page .sticky-nav-holder.main_nav_hide_article,body.page .sticky-nav-holder.sticky_nav_display_article,body.single .sticky-nav-holder.main_nav_hide_article,body.single .sticky-nav-holder.sticky_nav_display_article{display:block}}.navbar.sticky-navbar{margin-bottom:0;-webkit-transition:opacity .3s;-moz-transition:opacity .3s;-ms-transition:opacity .3s;-o-transition:opacity .3s;transition:opacity .3s}.navbar.sticky-navbar .nav{color:#484848}.navbar.sticky-navbar li a{line-height:56px;color:#484848}.navbar.sticky-navbar li a:hover{color:#3b3b3b}.navbar.sticky-navbar li a .caret:before{border-top-color:#484848}.navbar.sticky-navbar li a:hover .caret:before{border-top-color:#3b3b3b}.navbar.sticky-navbar li.home-link>a:hover{color:#555}.navbar.sticky-navbar li.dropdown .dropdown-menu li a{color:#484848}.navbar.sticky-navbar li.dropdown .dropdown-menu li a:hover{color:#3b3b3b}.navbar.sticky-navbar .social-icons{margin:0;float:left}.navbar.sticky-navbar .btn-navbar{padding:0 10px;margin-right:0;line-height:56px}.navbar.sticky-navbar .btn-navbar .bars{display:inline-block}.navbar.sticky-navbar .btn-navbar .icon-bar{background-color:#484848}.navbar.sticky-navbar .btn-navbar:hover .icon-bar{background-color:#3b3b3b}.navbar.sticky-navbar.home-link{min-width:40px;text-align:center}.navbar.sticky-navbar.home-link .nav>li a img{width:1.49em;height:1.49em}.navbar.sticky-navbar.home-link .nav>li .icon-home:before{position:relative;top:0}.navbar.sticky-navbar .nav-right #header-extras .donate a span{padding:4px 8px;color:#fff;background-color:#bd261d}.navbar.sticky-navbar .nav-right #header-extras .donate a span:hover{background-color:#d32a20}.navbar.sticky-navbar .nav-right #header-extras .donate a span i{display:none}.navbar.sticky-navbar .nav-right .form-search{position:relative}.navbar.sticky-navbar .nav-right .form-search .toggle{color:#2275bb;display:inline-block;text-align:center;cursor:pointer;position:relative;z-index:91;-webkit-transition:.3s;-moz-transition:.3s;-ms-transition:.3s;-o-transition:.3s;transition:.3s}.navbar.sticky-navbar .nav-right .form-search .input-append{position:absolute;top:0;right:0;opacity:0;visibility:hidden;-webkit-transition:.3s;-moz-transition:.3s;-ms-transition:.3s;-o-transition:.3s;transition:.3s;padding:10px;z-index:90;width:246px}.navbar.sticky-navbar .nav-right .form-search .input-append .text-input-wrapper{display:block;float:left;width:196px}.navbar.sticky-navbar .nav-right .form-search .input-append input{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;height:36px!important}.navbar.sticky-navbar .nav-right .form-search .input-append button{width:50px!important;height:36px!important;float:left;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.navbar.sticky-navbar .nav-right #sticky-nav-search.show .input-append{position:absolute;opacity:1;visibility:visible}.navbar.sticky-navbar .nav-right #sticky-nav-search.show .input-append,.navbar.sticky-navbar .nav-right #sticky-nav-search.show .toggle{background-color:#343434;color:#fff}.navbar.sticky-navbar .nav-left>ul{margin:0;padding:0}@media (min-width:769px){.navbar.sticky-navbar .nav-left{display:none}}.navbar.sticky-navbar .site-name{display:block;color:#343434}#menu-overflow>ul .caret::after,#menu-overflow>ul .caret::before,#menu-overflow>ul ul.dropdown-menu .sub-menu,#menu-overflow>ul ul.dropdown-menu .sub-sub-menu,#menu-overflow>ul ul.dropdown-menu::after,#menu-overflow>ul ul.dropdown-menu::before{display:none}.navbar.sticky-navbar .site-name a{font-weight:700;padding:0 10px 0 0;color:#484848;max-width:214px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.navbar.sticky-navbar .site-name a:hover{background-color:transparent;color:#3b3b3b}.navbar.sticky-navbar .nav-right{float:right}.navbar.sticky-navbar .nav-right #header-extras{float:left;margin:0}.entry-content,.page-header,.post-footer,.post-header,.stories article,article.story{margin-bottom:24px}.navbar.sticky-navbar .nav-right #header-extras a.donate-link:hover{background:0 0}@media (max-width:768px){.navbar.sticky-navbar li.dropdown .dropdown-menu li a{line-height:56px}.navbar.sticky-navbar .nav-shelf b.caret{padding:22px}}#menu-overflow>ul{overflow-y:scroll;max-height:80vh}#menu-overflow>ul ul.dropdown-menu{position:relative;border:none;float:none;box-shadow:none}#menu-overflow>ul ul.dropdown-menu li a{padding-left:1.5em}.page-header,.post-header,article.story{border-bottom:1px solid #ddd}article.story{padding-bottom:12px}.stories article{border-bottom:1px dotted #aaa}.stories article[class*=span]{margin-left:0}.stories h2.entry-title{font-size:32px;margin-bottom:8px;line-height:1.1}.stories .entry-content p{font-size:16px;margin-bottom:12px}.stories h5.tag-list{font-size:13.04px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5;margin-bottom:0}.archive-background{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #ddd}.archive-background h1{font-size:44px;margin-bottom:3px}.archive-background p{font-size:16px;margin-bottom:8px}.archive-background .related-topics ul{float:left;width:100%;list-style:none;margin:0;font-size:16px;line-height:1.3}.archive-background .related-topics ul li{display:inline;margin:0;padding:0}.archive-background .related-topics ul li:first-child{margin-right:5px}.archive-background .related-topics ul li:after{content:", "}.archive-background .related-topics ul li:first-child:after,.archive-background .related-topics ul li:last-child:after{content:""}.archive-background .rss-subscribe-link{float:right;margin-top:10px;text-transform:uppercase;color:#f89406}.archive-background .rss-subscribe-link i{padding-left:3px;position:relative;top:-2px}.archive-background .rss-subscribe-link:hover{text-decoration:none;color:#ad6704}.archive .hero{clear:both;margin:1em 0}.archive .hero .wp-caption-text,.archive .hero .wp-media-credit{display:none}article div.has-thumbnail{float:right;max-width:30%;margin:0 0 10px 20px}article img.attachment-post-thumbnail{float:right}.primary-featured-post,.secondary-featured-post{padding:0 0 24px;border-bottom:1px solid #ddd;margin-bottom:24px}.primary-featured-post h2{line-height:1.1;margin-bottom:8px;font-size:36px}.primary-featured-post .entry-content ol,.primary-featured-post .entry-content p,.primary-featured-post .entry-content ul{font-size:16px}.secondary-featured-post{margin-bottom:40px}.secondary-featured-post img{margin-bottom:0;width:100%}.secondary-featured-post h2{margin-bottom:12px;line-height:1.3;font-size:20px}@media (min-width:960px){.secondary-featured-post h2{font-size:24px}}.archive .stories .hero.is-image img,.home .stories .hero.is-image img{clear:both;float:none;display:block;margin:0 auto}.archive .entry-content.with-hero,.home .entry-content.with-hero{margin:-22px 7% 0;padding:22px 18px;width:86%;background:#fff}@media screen and (max-width:768px){.archive .entry-content.with-hero,.home .entry-content.with-hero{margin:8px 0 0;padding:0;width:100%}}.archive .entry-content h5.byline,.home .entry-content h5.byline{font-size:13.04px;margin-bottom:12px}.archive-dropdown{margin:12px 0}#series-footer{clear:both}#series-main #content{margin-bottom:24px}#series-header .byline .sep,#series-header .byline time{display:none}.load-more{display:inline-block}.loading .load-more{padding-right:32px;background-image:url(/wp-admin/images/loading.gif);background-position:96% center;background-repeat:no-repeat}.archive.search-results .input-append{width:100%;position:relative}.archive.search-results .form-search{margin-bottom:1em}.archive.search-results .form-search input{width:90%;box-sizing:border-box}.archive.search-results .form-search button{width:10%;box-sizing:border-box}.archive.search-results .search-term{background-color:#ddd;padding:1px 5px}.archive.search-results h3 .rss-link{margin-left:1em}.archive.search-results h3{margin-bottom:1em;padding-bottom:.5em;border-bottom:1px solid #7d8185}.archive.search-results .stories article{padding-bottom:12px}.archive.search-results .entry-content p{margin-bottom:0}.archive.search-results .date-link,.archive.search-results .date-link a{color:#7d8185}.gcs_container{margin:20px 0}.gcs_container table{margin:0}.gcs_container table,.gcs_container tbody,.gcs_container td,.gcs_container tr{border:none}.gcs_container .gsc-search-box{margin:18px 0}.gcs_container .gsc-search-box .gsst_a .gscb_a{position:relative;top:3px}.gcs_container .gsc-search-box td.gsib_a{padding:0 6px!important}.gcs_container .gsc-control-cse .gs-result .gs-title,.gcs_container .gsc-control-cse .gs-result .gs-title *{font-size:22px;line-height:1.2}.sticky-related a:hover,.sticky-solo a:hover{opacity:.9;filter:alpha(opacity=90)}.sticky-main-feature .image-wrap{float:left}.sticky-main-feature .image-wrap img{float:left;display:block;position:relative;z-index:1;margin:0;max-width:100%}.sticky-main-feature .image-wrap.span3 img{width:100%}.sticky-main-feature h2{line-height:1;margin-bottom:10px}.sticky-main-feature p a{font-weight:700;white-space:nowrap}.sticky-features-list h4{font-size:19.2px;margin:0 0 8px}.sticky-features-list ul{margin:0;list-style:none}.sticky-features-list ul li{list-style-type:disc;margin-left:20px;margin-bottom:7px;line-height:1.2}.sticky-features-list ul li.sticky-all{font-weight:700}@media (max-width:360px){.sticky-main-feature .image-wrap img{margin:0 15px 15px 0}.sticky-main-feature h5.byline{clear:both}.sticky-main-feature .span9{width:100%}}@media (min-width:360px){.sticky-main-feature .hidden-phone{display:inherit!important}.sticky-main-feature .visible-phone{display:none!important}}body.normal.page article.page>header,body.normal.page article.post>header,body.normal.single-post article.page>header,body.normal.single-post article.post>header{clear:both;margin:24px 17.0213%;position:relative}body.normal.page article.page>header h5.top-date,body.normal.page article.post>header h5.top-date,body.normal.single-post article.page>header h5.top-date,body.normal.single-post article.post>header h5.top-date{font-size:14px;font-weight:400;position:absolute;right:0}body.normal.page article.page>header h5.top-tag,body.normal.page article.post>header h5.top-tag,body.normal.single-post article.page>header h5.top-tag,body.normal.single-post article.post>header h5.top-tag{position:absolute;left:0}.post-social i,.post-social::before,.post-social>span{position:relative}body.normal.page article.page>header h1,body.normal.page article.post>header h1,body.normal.single-post article.page>header h1,body.normal.single-post article.post>header h1{padding-top:26px}body.normal.page article.page>header h2.subtitle,body.normal.page article.post>header h2.subtitle,body.normal.single-post article.page>header h2.subtitle,body.normal.single-post article.post>header h2.subtitle{font-size:19.55px;font-weight:400;color:#999}body.normal.page article.page>header .entry-date,body.normal.page article.page>header .sep,body.normal.page article.post>header .entry-date,body.normal.page article.post>header .sep,body.normal.single-post article.page>header .entry-date,body.normal.single-post article.page>header .sep,body.normal.single-post article.post>header .entry-date,body.normal.single-post article.post>header .sep{display:none}body.normal.page article.page>header .edit-link,body.normal.page article.post>header .edit-link,body.normal.single-post article.page>header .edit-link,body.normal.single-post article.post>header .edit-link{padding-left:5px}body.normal.page .hero,body.normal.single-post .hero{text-align:center;background-color:#efefef;width:100%;margin:0 0 24px}body.normal.page .hero.is-gallery,body.normal.single-post .hero.is-gallery{background-color:transparent}body.normal.page .hero p.wp-caption-text,body.normal.page .hero p.wp-media-credit,body.normal.single-post .hero p.wp-caption-text,body.normal.single-post .hero p.wp-media-credit{float:none;text-align:left;font-size:14px;margin:0 17.0213% 12px;padding-top:4px}body.normal.page .hero p.wp-media-credit,body.normal.single-post .hero p.wp-media-credit{text-align:right;margin-top:4px;min-height:0}body.normal.page .hero.is-video,body.normal.single-post .hero.is-video{margin-bottom:24px}body.normal.page .hero.is-video .embed-container,body.normal.single-post .hero.is-video .embed-container{margin-bottom:0}body.normal.page .hero.is-empty,body.normal.single-post .hero.is-empty{min-height:0;height:0}body.normal.page .single #main #sidebar,body.normal.single-post .single #main #sidebar{float:none;width:auto;min-height:0;margin-left:0}body.normal.page #comments,body.normal.page #disqus_thread,body.normal.page .article-bottom,body.normal.single-post #comments,body.normal.single-post #disqus_thread,body.normal.single-post .article-bottom{margin:0 17.021276594%}body.normal.page .single #main #sidebar .widget,body.normal.single-post .single #main #sidebar .widget{float:left;clear:left;padding-right:20px;width:14.89361702%}body.normal.page .single #main #sidebar .widget:first-child,body.normal.single-post .single #main #sidebar .widget:first-child{padding-top:0}body.normal.page .entry-content,body.normal.single-post .entry-content{padding:0 17.021276594%}body.normal.page p.intro,body.normal.page p.wp-caption-text,body.normal.single-post p.intro,body.normal.single-post p.wp-caption-text{font-style:normal}body.normal.page .article-bottom .post-social,body.normal.single-post .article-bottom .post-social{border-top:none;border-bottom:none}@media only screen and (max-width:979px){body.normal.page .single #main #sidebar,body.normal.single-post .single #main #sidebar{display:none}body.normal.page #comments,body.normal.page #disqus_thread,body.normal.page .article-bottom,body.normal.single-post #comments,body.normal.single-post #disqus_thread,body.normal.single-post .article-bottom{margin:0 6.38297872%}body.normal.page article.post>header,body.normal.single-post article.post>header{margin:24px 6.38297872%}body.normal.page .entry-content,body.normal.single-post .entry-content{padding:0 6.38297872%}body.normal.page .hero p.wp-caption-text,body.normal.page .hero p.wp-media-credit,body.normal.single-post .hero p.wp-caption-text,body.normal.single-post .hero p.wp-media-credit{margin:0 2.12765957% 12px}}@media only screen and (max-width:529px){body.normal.page #comments,body.normal.page #disqus_thread,body.normal.page .article-bottom,body.normal.single-post #comments,body.normal.single-post #disqus_thread,body.normal.single-post .article-bottom{margin:0}body.normal.page article.post>header,body.normal.single-post article.post>header{margin:24px 0}body.normal.page .entry-content,body.normal.single-post .entry-content{padding:0}}.byline{margin-bottom:12px;font-weight:400;font-size:14.64px}.byline a{color:#484848}.byline .author{font-weight:700}.byline .edit-link a,.byline .time-ago{color:#bd261d}@media (max-width:768px){.post-social>span{min-width:50px;text-align:center;display:inline-block}}@media (min-width:769px){.post-social>span{display:inline-block}.post-social i{margin-right:.5em;margin-left:.2em}}.post-social{margin-bottom:24px}.post-social>span{line-height:1.5em;max-width:250px;margin:.5em 0;text-align:center;text-transform:uppercase;font-weight:300;font-size:16px;color:#fff}.post-social>span:last-child{margin-right:0}.post-social>span>a{display:block;padding:.3em 1em .3em .5em}@media (max-width:768px){.post-social>span>a{padding:.3em .6em}}@media (max-width:480px){.post-social>span>a{padding:.3em .2em}}.post-social a,.post-social a:hover{color:#fff}.post-social .more-social-links{background-color:#f89406;color:#fff}.post-social .more-social-links:hover{background-color:#fa9f1e}.post-social .more-social-links .popover{top:40px}.post-social .more-social-links .popover a{color:#7d8185;position:relative;float:left}.post-social .more-social-links .popover a:hover{color:#484848;text-decoration:underline}.post-social .more-social-links .popover i{color:#aaa;margin-right:.25em;position:absolute;top:0;left:0}.post-social .more-social-links .popover li,.post-social .more-social-links .popover ul{list-style-type:none;margin:0;padding:0;font-size:14px;line-height:20px}.post-social .more-social-links .popover li{margin-bottom:.5em;float:left}.post-social .more-social-links .popover li:last-child{margin-bottom:0}.post-social .more-social-links .popover li span{display:block;margin-left:28px}@media (max-width:480px){.post-social .more-social-links .popover{left:auto;right:0}.post-social .more-social-links .popover:after,.post-social .more-social-links .popover:before{left:auto}.post-social .more-social-links .popover:before{right:19px}.post-social .more-social-links .popover:after{right:20px}}#floating-social-buttons{transition:opacity .2s;border:1px solid #ddd}#floating-social-buttons .hidden-phone{display:none}#floating-social-buttons .post-social>span{display:block;margin:0;padding:0;font-size:20px}#floating-social-buttons .post-social>span>a{color:#ddd;display:block;padding:18px;min-width:28px;min-height:28px}#floating-social-buttons .post-social>.email:hover,#floating-social-buttons .post-social>span:hover>a{color:#fff}#floating-social-buttons .rss{background-color:#fff;color:#ddd}#floating-social-buttons .rss:hover{background-color:#df8505}#floating-social-buttons .twitter{background-color:#fff;color:#ddd}#floating-social-buttons .twitter:hover{background-color:#3ea1ec}#floating-social-buttons .facebook{background-color:#fff;color:#ddd}#floating-social-buttons .facebook:hover{background-color:#334c83}#floating-social-buttons .linkedin{background-color:#fff;color:#ddd}#floating-social-buttons .linkedin:hover{background-color:#006a9d}#floating-social-buttons .gplus{background-color:#fff;color:#ddd}#floating-social-buttons .gplus:hover{background-color:#d73925}#floating-social-buttons .flickr{background-color:#fff;color:#ddd}#floating-social-buttons .flickr:hover{background-color:#e60077}#floating-social-buttons .youtube{background-color:#fff;color:#ddd}#floating-social-buttons .youtube:hover{background-color:#d8201a}#floating-social-buttons .print{background-color:#fff;color:#ddd}#floating-social-buttons .print:hover{background-color:#787c83}#floating-social-buttons .email{background-color:#fff;color:#ddd}#floating-social-buttons .email:hover{background-color:#565961}#floating-social-buttons .more-social-links{background-color:#fff;color:#ddd}#floating-social-buttons .more-social-links a.popped,#floating-social-buttons .more-social-links:hover{background-color:#f89406;color:#fff}#floating-social-buttons .more-social-links .popover{top:68px;font-size:14px}#floating-social-buttons .more-social-links .popover i{margin-right:.25em}#floating-social-buttons .more-social-links .popover a{color:#7d8185}#floating-social-buttons .more-social-links .popover a:hover{color:#484848;text-decoration:underline}#floating-social-buttons .social-btn{line-height:1.5em;max-width:250px;margin:.5em 0;padding:.5em}#floating-social-buttons .post-social{margin-bottom:0}#floating-social-buttons .post-social a:hover i{opacity:1}#floating-social-buttons .post-social i{margin:0}.post-pagination a,.post-pagination span{padding:5px;text-transform:uppercase;font-size:13.04px}.post-pagination a:first-child,.post-pagination span:first-child{padding-left:0}.labels,.pager,.tags{list-style:none;font-size:16px}.labels h5,.single-argolinkroundups .author-box h5,.single-post .author-box h5{font-size:19.2px;line-height:1;margin-bottom:0}.labels .series-label h5 a.rss-link{float:right;margin-top:4px;color:#f89406;font-size:18px}.labels .series-label h5 a.rss-link:hover{opacity:.85;filter:alpha(opacity=85)}.series-label{margin:5px;padding:8px}.series-label h5{background:0 0;padding:0;margin-bottom:2px}.series-label p{font-size:13.04px;margin-bottom:0}.home .stories article img.attachment-medium,.sub-stories img.attachment-post-thumbnail{max-width:30%;float:right;margin:0 0 10px 20px}.module,.module h3{margin-bottom:12px}#homepage-bottom{margin-top:24px}#homepage-bottom .widget{width:42.5%;padding:2.5%}#homepage-bottom .widget.odd{float:left;clear:both;margin-left:0}#homepage-bottom .widget.even{float:right;clear:none}.module{color:#000}.module h3{font-size:16px;font-weight:700}.module dl{margin:0}.module dd,.module dt{font-size:13.04px;margin:0 0 12px}.module ul{font-size:13.04px}.type-aside p{font-size:.815em}.image p{display:inline;font-size:10px}.image img{display:block}p.wp-media-credit{font-size:13.04px;margin:0;text-align:right;color:#7d8185;display:block}p.wp-caption-text{font-size:16px!important;margin:5px 0 0;color:#7d8185;font-style:italic;line-height:1.5;display:block}.extract,.full,.half{margin:0 0 24px}.half{width:40%}.full{width:100%}.full-image{text-align:center;background-color:#ddd}.pull-quote,.type-pull-quote{font:Georgia,"Times New Roman",Times,serif;font-style:italic;font-size:24px;line-height:1.3}#boilerplate,#related-post-nav,#sidebar .widget_analytic-bridge-popular-posts ol li,#site-footer input,#site-footer select,#site-footer ul,.author-box ul li.author-posts-link,.subscribe,.widget.largo-series-posts li a,ul.staff-roster .staff-name{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}.pull-quote::after,.pull-quote::before,.type-pull-quote::after,.type-pull-quote::before{content:"";display:block;height:1px;width:100%;margin:20px auto;background:#ddd}.pull-quote h6,.type-pull-quote h6{font-size:16px;margin:0;text-transform:none}.pull-quote p,.type-pull-quote p{font-size:24px;margin-bottom:6px}.DV-container{margin-bottom:8px}#disqus_thread{background-color:#ddd;padding:20px 10px;border-top:8px solid #aaa;margin-bottom:24px}#comments{clear:both}#content #comments-title{font-size:24px;margin-bottom:12px;font-weight:700}.nopassword{color:#aaa;font-size:24px;font-weight:100;margin:24px 0;text-align:center}.nocomments{display:none}.commentlist{list-style:none;margin:0 auto;width:100%}.commentlist>li.comment{background:#f6f6f6;border:1px solid #ddd;margin:0 0 12px;padding:14px;position:relative}.commentlist .pingback{margin:0 0 1.625em;padding:0 1.625em}.commentlist .children{list-style:none;margin:0}.commentlist .children li.comment{background:#fff;border-left:1px solid #ddd;margin:1.625em 0 0;padding:1.625em;position:relative}.commentlist .children li.comment .fn{display:block}.comment-meta .fn{font-style:normal}.comment-meta{color:#666;font-size:13.04px;line-height:1.5}.commentlist .comment-content{clear:both}.commentlist .comment-content p{font-size:16px;margin-bottom:6px}.commentlist .children li.comment .comment-meta{line-height:1.625em;margin-left:50px}.commentlist .children li.comment .comment-content{margin:1.625em 0 0}.commentlist .avatar{-webkit-box-shadow:0 1px 2px #ccc;-moz-box-shadow:0 1px 2px #ccc;box-shadow:0 1px 2px #ccc;padding:0;float:left;margin:0 10px 10px 0;width:50px;height:50px}.commentlist .children .avatar{background:0 0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;left:2.2em;padding:0;top:2.2em}a.comment-reply-link{background:#eee;color:#666;display:inline-block;font-size:12px;padding:0 8px;text-decoration:none}a.comment-reply-link:active,a.comment-reply-link:focus,a.comment-reply-link:hover{background:#888;color:#fff}.commentlist .children>li.bypostauthor,.commentlist>li.bypostauthor{background:#ddd;border-color:#d3d3d3}a.comment-reply-link>span{display:inline-block;position:relative;top:-1px}.commentlist>li.bypostauthor .comment-meta{color:#575757}.commentlist>li.bypostauthor:before{content:url(images/comment-arrow-bypostauthor.png)}#respond{background:#f6f6f6;border:1px solid #eee;margin:0 auto 24px;padding:4% 4% 8%;width:92%}#respond input[type=text],#respond textarea{background:#fff;border:4px solid #eee;-webkit-box-shadow:inset 0 1px 3px rgba(204,204,204,.95);-moz-box-shadow:inset 0 1px 3px rgba(204,204,204,.95);box-shadow:inset 0 1px 3px rgba(204,204,204,.95);position:relative;padding:10px;text-indent:80px}#respond .comment-form-author,#respond .comment-form-comment,#respond .comment-form-email,#respond .comment-form-url{position:relative;margin-top:-20px}#respond .comment-form-author label,#respond .comment-form-comment label,#respond .comment-form-email label,#respond .comment-form-url label{background:#eee;-webkit-box-shadow:1px 2px 2px rgba(204,204,204,.8);-moz-box-shadow:1px 2px 2px rgba(204,204,204,.8);box-shadow:1px 2px 2px rgba(204,204,204,.8);color:#555;display:inline-block;font-size:.815em;left:4px;min-width:60px;padding:4px 10px;position:relative;top:40px;z-index:1}#respond input[type=text]:focus,#respond textarea:focus{text-indent:0;z-index:1}#respond textarea{resize:vertical;width:95%}#respond .comment-form-author .required,#respond .comment-form-email .required{color:#bd3500;font-size:22px;font-weight:700;left:75%;position:absolute;top:45px;z-index:1}#respond .comment-notes,#respond .logged-in-as{font-size:.815em}#respond p{margin:10px 0}#respond .form-submit{float:right;margin:-20px 0 10px}#respond input#submit{background:#222;border:none;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.3);-moz-box-shadow:0 1px 2px rgba(0,0,0,.3);box-shadow:0 1px 2px rgba(0,0,0,.3);color:#eee;font-size:15px;margin:14px 0 20px;padding:5px 22px;text-shadow:0 -1px 0 rgba(0,0,0,.3)}#respond input#submit:hover{background:#555}#respond input#submit:active{background:#1982d1;color:#bfddf3}#respond #cancel-comment-reply-link{color:#666;margin-left:.667em;text-decoration:none}#respond #cancel-comment-reply-link:hover,#respond .logged-in-as a:hover{text-decoration:underline}#related-post-nav a,.author-box ul li.author-posts-link a:hover,.pager a:hover,.subscribe:hover{text-decoration:none}.commentlist #respond{margin:1.625em 0 0;width:auto}#reply-title{color:#373737;font-size:1.5em;font-weight:700;line-height:30px}#cancel-comment-reply-link{color:#888;display:block;font-size:.667em;font-weight:400;line-height:2.2em;letter-spacing:.05em;position:absolute;right:1.625em;text-decoration:none;text-transform:uppercase;top:1.1em}#cancel-comment-reply-link:active,#cancel-comment-reply-link:focus,#cancel-comment-reply-link:hover{color:#ff4b33}#respond label{line-height:2.2em}#respond input[type=text]{display:block;height:24px;width:75%}#site-footer aside li.menu-label,#supplementary .menu-dont-miss-container h4,.form-allowed-tags{display:none}#respond p{font-size:.815em}p.comment-form-comment{margin:0}.widget{margin-bottom:24px}.widget p,.widget ul{font-size:16px}.widget ul{list-style:none;margin:4.8px 0 0;line-height:1.2}.widget ul ul{margin-bottom:4.8px;margin-top:12px}.widget li{overflow:hidden;margin-bottom:1em}.widget p.morelink{margin:-6px 0 0;font-size:16px}.widget img.right-align{float:right;padding:.2em 0 .4em .66em}.widget img.left-align{float:left;padding:.2em .66em .4em 0}.widget img.attachment-large,.widget img.attachment-medium{padding:0 0 .66em}.widget h5{margin-bottom:.2em;font-size:20px}.row-fluid>[class*=span]:first-child>*>.widget,.row-fluid>[class*=span]:first-child>.widget{padding-right:24px}.row-fluid>[class*=span]:last-child>*>.widget,.row-fluid>[class*=span]:last-child>.widget{padding-left:24px}@media (max-width:768px){.row-fluid>[class*=span]:first-child>*>.widget,.row-fluid>[class*=span]:first-child>.widget{padding-right:0}.row-fluid>[class*=span]:last-child>*>.widget,.row-fluid>[class*=span]:last-child>.widget{padding-left:0}}.stories h3.widgettitle,.widgettitle{margin-bottom:8px;font-size:20px;text-transform:uppercase;font-weight:700;color:#000}.stories h3.widgettitle a,.widgettitle a{color:#000}#site-footer{color:#fff}#site-footer a:hover{color:#61a7e2}#site-footer .widgettitle,#site-footer li.menu-label{color:#fff;font-size:16px;text-transform:uppercase;font-weight:700;margin-bottom:8px;padding-bottom:4.8px}#site-footer .widget{margin:0 0 12px}#site-footer .widget,#site-footer .widgettitle{background:0 0;border:none}#site-footer li,#site-footer p{font-size:14.4px}#site-footer ul{margin:0}#site-footer ul li{line-height:1.25;margin-bottom:12px;list-style:none}#site-footer select{width:90%}#site-footer input.search-query{width:67%;margin-right:.5em;height:19px}#site-footer input.search-submit{max-width:25%;padding:.1em .5em}.widget.rev{color:#fff;background-color:#2275bb}.widget.rev .widgettitle{background-color:#fff;color:#2275bb;padding:5px}.widget.rev a{color:#fff;font-weight:700}.widget.rev .widgettitle a{color:#484848}.widget.no-bg{background:0 0}.widget.no-bg p,.widget.no-bg ul{background:0 0;border:none}.widget.no-bg .widgettitle{color:#000}#sidebar iframe{max-width:100%}#sidebar .widget{padding:0 0 0 24px}#sidebar .widget.rev{padding:24px 24px 0}@media (max-width:768px){#sidebar .widget{padding:0}}.single.normal #sidebar .widget{padding:0 24px 0 0}.largo-taxonomy-list select,.widget_archive select,.widget_categories select,.widget_search form{margin:4.8px 0}.widget_archive label,.widget_categories label{position:absolute;overflow:hidden;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0}.largo-about p{margin-bottom:0}#site-footer .largo-about p{margin-bottom:12px}.widget .author-box ul{padding:0;margin:0}.author-box{clear:both;margin:0}.author-box img.avatar{float:left;margin:5px 15px 10px 0;padding:4px;border:1px solid #ddd}.author-box p{font-size:16px;margin-bottom:8px}.author-box ul{list-style:none;margin:0;float:left}.author-box ul li{display:inline-block;float:left;margin-right:5px;min-width:30px}.author-box ul li a{display:block;padding:4px;color:#fff;background-color:#484848;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.author-box ul li a:hover{background-color:#626262}.author-box ul li i{padding:4px}.author-box ul li i::before{font-size:14px}.author-box ul li.author-posts-link{font-size:13px;font-weight:700}.author-box ul li.author-posts-link a{padding:6px 10px;color:#fff}body.normal.page .article-bottom .largo-disclaimer,body.normal.single-post .article-bottom .largo-disclaimer{color:#484848}.largo-donate p{margin-bottom:8px}#related-post-nav{padding:.5em 0}#related-post-nav li{list-style-type:none;margin-bottom:0;font-size:15px}#related-post-nav h5{margin:0 0 .25em}#related-post-nav a{display:block;padding:1.25em;font-weight:400;border-top:1px solid #aaa;outline:0}#related-post-nav a:hover{background-color:#ddd}#related-post-nav a.selected{color:#fff;background:#2275bb;border:none}.related-items div{display:none;padding:0 1em}.related-items div img{float:left;margin:0 .8em .8em 0}.related-items ul{margin:.4em 0}.related-items ul li{font-weight:700;font-size:18px;list-style:none}.related-items ul li.top-related{margin-bottom:12px;font-size:16px}.related-items ul li.top-related h3{font-size:24px;font-weight:700;margin-bottom:6px}.related-items ul li.top-related p{font-weight:400;font-size:16px;margin-bottom:12px}.related-items p{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:16px;margin-bottom:6px}@media (max-width:768px){#related-post-nav,#related-posts .related-items{clear:both;float:none;width:100%}#related-post-nav a{padding:12px}#related-posts .related-items ul li.top-related{margin-bottom:12px}#related-posts .related-items ul li.top-related h3{font-size:24px;margin:8px 0}#related-posts .related-items div img,#related-posts .related-items ul li.top-related p{display:none}#related-posts .related-items ul li{font-size:16px;line-height:1.2;margin-bottom:8px}}.subscribe{display:block;font-size:14px;margin-bottom:6px;color:#7d8185}.subscribe:hover{color:#222}.subscribe i{color:#fff;padding:0 1em 0 .5em;border-right:1px solid #fff;font-size:13px;margin-right:6px;float:left}.largo-follow .rss{background-color:#f89406;color:#fff}.largo-follow .rss:hover{background-color:#df8505}.largo-follow .twitter{background-color:#55acee;color:#fff}.largo-follow .twitter:hover{background-color:#3ea1ec}.largo-follow .facebook{background-color:#3a5795;color:#fff}.largo-follow .facebook:hover{background-color:#334c83}.largo-follow .linkedin{background-color:#007bb6;color:#fff}.largo-follow .linkedin:hover{background-color:#006a9d}.largo-follow .gplus{background-color:#dd4b39;color:#fff}.largo-follow .gplus:hover{background-color:#d73925}.largo-follow .flickr{background-color:#ff0084;color:#fff}.largo-follow .flickr:hover{background-color:#e60077}.largo-follow .youtube{background-color:#e52d27;color:#fff}.largo-follow .youtube:hover{background-color:#d8201a}.largo-follow .print{background-color:#85898F;color:#fff}.largo-follow .print:hover{background-color:#787c83}.largo-follow .email{background-color:#62656F;color:#fff}.largo-follow .email:hover{background-color:#565961}.largo-follow .social-btn{line-height:1.5em;margin:.5em 0;padding:.66em}.article-bottom .largo-follow{padding:0}.twitter-follow-button{display:block;margin:0 0 18px}.widget .fb-like{margin:0 0 6px}.fb-like,.fb-like span,.fb-like-box,.fb-like-box span,.fb-like-box span iframe[style],.fb-like.fb_iframe_widget span iframe{width:100%!important}.fb-like-box{background:#fff!important}.flickr-follow{margin-bottom:12px}#site-footer .widget-sp-image img{max-width:100%!important}.pager{line-height:1.2}.pager a{display:inline-block;padding:10px 15px;color:#484848;background-color:#e6e6e6}.pager a:hover{background-color:#a6a6a6;color:#fff}.next{width:48%;float:right;text-align:right}.next img{float:right;padding-left:20px}.previous{width:48%;float:left;text-align:left}.previous img{float:left;padding-right:20px}.widget.largo-recent-comments ul{margin-left:0;list-style:none}.widget.largo-recent-comments li{float:left;margin-bottom:2em}.widget.largo-recent-comments p{margin-bottom:4.8px;line-height:1.3}.widget.largo-recent-comments p.comment-excerpt{font-size:1.5em}.widget.largo-recent-comments p.comment-post{float:left}.widget.largo-recent-comments p.comment-meta{float:left;clear:both;color:inherit}.widget.largo-recent-comments p.comment-meta a{font-weight:700}.widget.largo-related-posts .widgettitle{font-size:1.75em;margin-bottom:20px;text-align:center}.widget.largo-related-posts ul.related{margin:0}.widget.largo-related-posts ul.related li{list-style:none;display:block}.widget.largo-related-posts ul.related li:after,.widget.largo-related-posts ul.related li:before{display:table;content:""}.widget.largo-related-posts ul.related li:after{clear:both}.widget.largo-related-posts h4{font-size:24px;margin-bottom:12px}@media only screen and (max-width:640px){.widget.largo-related-posts h4{font-size:20px;line-height:1.1;margin-bottom:4.8px}.widget.largo-related-posts h5.byline{display:none}}.widget.largo-related-posts h5.byline{font-size:14.4px;margin-bottom:12px}.widget.largo-related-posts p{margin-bottom:1em}@media only screen and (max-width:640px){.widget.largo-related-posts p{font-size:14.4px}}.widget.largo-related-posts .wp-post-image{float:left;margin:.5em 1.2em 0 0}.widget.largo-series-posts h4{margin-bottom:.4em;line-height:1.3;font-size:16px}.widget.largo-series-posts ul{margin-left:0;list-style:none}.widget.largo-series-posts img{max-width:100px}.widget.largo-series-posts i{display:block;float:left;font-size:110%;margin-right:-100%}.widget.largo-series-posts li a{padding-left:2em;display:inline-block}.widget.largo-series-posts a.more{text-align:right;float:right}.widget.largo-series-posts a.more:after{content:" »"}ul.staff-roster{float:left;clear:both;margin:20px 0 0;list-style-type:none;width:100%}ul.staff-roster li{display:block;float:left;clear:both;margin:0 0 24px;width:100%}ul.staff-roster li img{float:left;width:65px;height:auto;margin:0 1em .5em 0;border:1px solid #ddd;padding:4.8px}ul.staff-roster .staff-name{font-size:1.25em;margin-bottom:.25em}ul.staff-roster p{margin:.4em 0;font-size:.9em;line-height:1.1em;color:#7d8185}ul.staff-roster p+p{margin-top:.75em}.labels,.tags{height:100%;overflow:auto;margin-bottom:12px}.labels h5,.tags h5{display:inline;margin:0 .5em 0 0;font-size:16px;line-height:16px;text-transform:uppercase}.labels ul,.tags ul{padding:0;display:inline;margin:0;font-size:14.5px;line-height:15px;white-space:normal}.labels ul li,.tags ul li{display:inline;vertical-align:baseline;font-weight:300;white-space:normal}.labels ul li::after,.tags ul li::after{content:" | ";white-space:pre-wrap}.labels ul li:last-child::after,.tags ul li:last-child::after{display:none}.labels ul li i,.tags ul li i{margin:1px 3px 0 0}.labels ul li a,.tags ul li a{color:#7d8185;text-transform:uppercase}.labels ul li a:hover,.tags ul li a:hover{color:#2f2f2f}#boilerplate p,footer #boilerplate p{color:#9F9FA3}.largo-taxonomy-list img{max-width:60px;max-height:60px;float:left;margin-right:8px}.largo-taxonomy-list ul{margin:0}.largo-taxonomy-list li{list-style:none}.largo-taxonomy-list h5{margin-bottom:.5em;font-size:1em}article .largo-taxonomy-list .has-thumbnail a{text-align:0;padding:0}article .largo-taxonomy-list img.attachment-post-thumbnail{float:none;margin:0 auto;width:100%;max-width:100%;max-height:none;clear:both}.largo-taxonomy-list li.has-thumbnail a:nth-child(2){padding-left:68px;display:block}article .largo-taxonomy-list li.has-thumbnail a:nth-child(2){padding:0}#sidebar .largo-INN-RSS ul{margin:12px 0;padding:0}#sidebar .largo-INN-RSS li{margin-bottom:12px;list-style:none}#sidebar .largo-INN-RSS li h5,#sidebar .largo-INN-RSS li h6,#sidebar .largo-INN-RSS li p{margin-bottom:4.8px}#sidebar .widget_analytic-bridge-popular-posts li{margin-bottom:16px}#sidebar .widget_analytic-bridge-popular-posts li div{margin-bottom:8px}#before-footer .widget:last-child,#boilerplate p,.footer-bg{margin-bottom:0}#sidebar .widget_analytic-bridge-popular-posts li div.is-empty{margin:0;display:none}#sidebar .widget_analytic-bridge-popular-posts li+li{margin-top:28.8px;border-top:1px #ddd solid;padding-top:28.8px}#sidebar .widget_analytic-bridge-popular-posts ol{counter-reset:li;list-style:none;padding:0;margin-left:0}#sidebar .widget_analytic-bridge-popular-posts ol li+li::before{top:28.8px}#sidebar .widget_analytic-bridge-popular-posts ol li{position:relative;overflow:visible;margin-left:55px}#footer-logos,.back-to-top{overflow:hidden}#sidebar .widget_analytic-bridge-popular-posts ol li h5 a{display:inline-block;min-height:30px}#sidebar .widget_analytic-bridge-popular-posts ol li img{padding-bottom:0}#sidebar .widget_analytic-bridge-popular-posts ol li::before{font-size:30px;content:counter(li) '.';counter-increment:li;display:block;width:45px;height:1em;position:absolute;top:0;left:-61px;line-height:1;text-align:right}.article-bottom .widget_analytic-bridge-popular-posts .count-3,.article-bottom .widget_analytic-bridge-popular-posts .count-6,.article-bottom .widget_analytic-bridge-popular-posts .count-9{box-sizing:border-box;position:relative;margin-left:0}@media (min-width:481px){.article-bottom .widget_analytic-bridge-popular-posts .count-3 li,.article-bottom .widget_analytic-bridge-popular-posts .count-6 li,.article-bottom .widget_analytic-bridge-popular-posts .count-9 li{list-style:outside;display:block;float:left;width:25%}.article-bottom .widget_analytic-bridge-popular-posts .count-3 li:nth-child(3n+1),.article-bottom .widget_analytic-bridge-popular-posts .count-3 li:nth-child(3n+2),.article-bottom .widget_analytic-bridge-popular-posts .count-6 li:nth-child(3n+1),.article-bottom .widget_analytic-bridge-popular-posts .count-6 li:nth-child(3n+2),.article-bottom .widget_analytic-bridge-popular-posts .count-9 li:nth-child(3n+1),.article-bottom .widget_analytic-bridge-popular-posts .count-9 li:nth-child(3n+2){margin-right:12.5%}.article-bottom .widget_analytic-bridge-popular-posts .count-3 li:nth-child(3n+1),.article-bottom .widget_analytic-bridge-popular-posts .count-6 li:nth-child(3n+1),.article-bottom .widget_analytic-bridge-popular-posts .count-9 li:nth-child(3n+1){clear:left}}.before-footer-wrapper{background-color:#ddd}.footer-bg{background-color:#222;padding:0 0 18px}#supplementary{padding:24px 0 0}#supplementary._1col aside{text-align:center}._1col .widget_nav_menu li{display:inline;margin-right:1em}#inn-logo{margin-top:22.05px;margin-bottom:16.54px;max-width:200px}#footer-logos-bg{background-color:#fff;padding:10px 0}#footer-logos a{display:block;float:left;width:16.666666667%}#footer-logos a img{display:block;width:100%;max-width:180px;margin:0 auto}#footer-logos h6{margin-bottom:4px;padding-bottom:3px;border-bottom:1px solid #ddd;font-size:12px;color:#7d8185;text-transform:uppercase;font-weight:400}#footer-logos h6 a{float:right;text-align:right}ul#footer-social{padding-top:22.05px;padding-bottom:16.54px;margin:0 auto;width:100%}ul#footer-social li{height:46.14px;display:table-cell;vertical-align:middle;font-size:18px}@media (max-width:768px){ul#footer-social{text-align:left}ul#footer-social li{margin-top:0}}ul#footer-social li a{padding-right:10px;padding-top:16.08px}ul#footer-social li i{position:relative;top:0;padding:5px;margin-top:27.56141402;font-size:18px;color:#fff}ul#footer-social li i:hover{color:#bfbfbf}ul#footer-social li:last-child a{padding-right:0}#boilerplate{width:100%}#boilerplate .menu{display:inline;margin:0;font-size:10.67px;clear:none}#boilerplate .menu li{display:inline;padding-right:10px}footer #boilerplate a{color:#ddd}footer #boilerplate a:hover{color:#09C9FF}@media (min-width:769px){#boilerplate .span6.right{text-align:right;margin-top:0;margin-bottom:0}}@media (min-width:979px){.footer-credit-padding-inn-logo-missing{margin-top:84.72px}}@media (max-width:979px){#boilerplate .row-fluid .span6{width:100%;clear:both;margin-left:0;text-align:center}ul#footer-social{display:inline-block;width:auto;margin:0 auto}.footer-credit span{display:block}}.back-to-top{position:absolute;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0}.header-ad-zone{text-align:center}.header-ad-zone #header-ad-zone-container{display:inline-block;text-align:center}.header-ad-zone #header-ad-zone-container .acm_ad_zones{display:inline-block;text-align:left}#before-footer,#header-ad-zone-container{width:100%}#before-footer div div,#header-ad-zone-container div div{display:block!important;max-width:728px;margin:1em auto}#header-ad-zone-container .widget{margin-bottom:0}#header-ad-zone-container div div{margin:.5em auto 0}.bypostauthor,.gallery-caption,.sticky{display:normal}.alignnone{margin:18px 0}.align-center,.aligncenter,.center{clear:both;display:block;margin:18px auto}.align-right,.alignright,.right{float:right;margin:6px 0 12px 20px}.align-left,.alignleft,.left{float:left;margin:6px 20px 12px 0}img,img[class*=align],img[class*=wp-image-]{max-width:100%;height:auto;clear:both}.embed-container,.type-embed{position:relative;padding-bottom:56.25%;padding-top:30px;height:0;overflow:hidden;margin-bottom:28px}.embed-container embed,.embed-container iframe,.embed-container object,.type-embed embed,.type-embed iframe,.type-embed object{position:absolute;top:0;left:0;width:100%;height:100%}.hidden{display:none;visibility:hidden}.hidden-desktop,.visible-phone,.visible-tablet{display:none!important}@media (max-width:768px){.visible-phone{display:inherit!important}.hidden-phone{display:none!important}.hidden-desktop{display:inherit!important}.visible-desktop{display:none!important}}@media (min-width:1200px){#before-footer,#footer-logos,#page,#site-footer,.global-nav{margin:0 auto}}@media screen and (min-width:1600px){#footer-logos,#site-footer,.global-nav{padding:0}#page{padding:0 20px}}@media (min-width:769px) and (max-width:979px){.visible-tablet{display:inherit!important}.hidden-desktop,.hidden-tablet,.visible-desktop{display:none!important}#footer-logos,#page,#site-footer,.global-nav{padding:0 18px}#main{margin:12px 0 0}h1.branding,h2.branding{font-size:44px}h1.branding .tagline,h2.branding .tagline{font-size:19.55px}#footer-logos,#footer-logos .logo4{clear:both}#footer-logos a{width:33.3333333333%}#homepage-bottom .widget.even,#homepage-bottom .widget.odd{clear:both;float:none;width:95%;margin:0 0 24px;padding-left:2.5%;padding-right:2.5%}#series-main #sidebar-left{display:none}#series-main #content.span5{width:63%;float:left}#series-main #sidebar{float:right}.sticky-features-list,.sticky-main-feature{clear:both;width:100%!important;margin:0!important}}@media (max-width:768px){#content-main,#left-rail,#sidebar,#site-footer div[class^=span],.full,.half{clear:both;float:none;width:100%;margin:0 0 24px}#homepage-bottom .widget.even,#homepage-bottom .widget.odd{width:95%;clear:both;float:none;padding-left:2.5%;padding-right:2.5%}#content,.global-nav .nav-right{width:100%}#content-main,.full,.half{margin:0}#page{padding-bottom:12px}#main{margin:8px 0 0}.global-nav ul{display:none}.global-nav .nav-right .donate-btn{float:left;margin-left:0}h1.entry-title,h1.page-title{font-size:32px;line-height:1.2}.category-background .related-topics ul{line-height:1.5}.carousel-caption h2,.sticky-main-feature h2,.stories h2.entry-title{font-size:24px}.sticky-features-list,.sticky-main-feature{clear:both;width:100%!important;margin:0!important}#site-footer .widget_nav_menu li a{font-size:19px;padding:10px 0}#footer-logos .logo4{clear:both}#footer-logos a{width:33.3333333333%}#footer-logos h6 a{display:inline;clear:both;float:none;text-align:left}#ft-social{float:left}#ft-social li{margin-right:10px;margin-left:10px}#ft-social li i{font-size:32px}#site-footer input{margin-bottom:24px}#site-footer input.search-query{height:32px;width:74%;float:left}#site-footer input.search-submit{padding:8px 2%;width:20%;float:right}#boilerplate p.back-to-top{padding-top:12px}#series-main #sidebar-left,.global-nav-bg{display:none}#series-main #content{margin-left:0}.navbar .btn-navbar{display:block}.category .row-fluid>*{width:100%;margin-left:0}.category .span4 img{display:block;margin:0 auto 1em}.category .secondary-featured-post img{float:left;max-width:23%;margin-right:3%;margin-top:1em;margin-bottom:.5em}}@media (max-width:480px){#footer-logos h6 a{display:inline;clear:both;float:none;text-align:left}}@media print{blockquote,img,pre,tr{page-break-inside:avoid}*{background:0 0!important;color:#000!important;box-shadow:none!important;text-shadow:none!important;filter:none!important;-ms-filter:none!important}a,a:visited{color:#006;text-decoration:underline}.hero{float:right}hr{margin:12px 0}blockquote,pre{border:1px solid #999}body.normal.page .hero,body.normal.single-post .hero{width:60%;margin-left:0;margin-bottom:0;float:none}#content .wp-caption img.size-large,#content>img.size-large{max-width:60%!important;height:auto}aside.type-pull-quote{margin-bottom:12px}#content.span8[role=main]{margin-left:0!important}thead{display:table-header-group}#comments,#related-posts,#sidebar,#site-footer,#site-header,.article-bottom .widget:not(.largo-disclaimer),.author-box,.bottom-meta,.edit-link,.global-nav,.post-nav,.post-social,.sticky-nav-wrapper,audio,iframe,nav,object,video{display:none}@page{margin:.5cm .5cm 1cm}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.author .url{text-decoration:none}.article-bottom{border-top:1px solid #ccc;border-bottom:1px solid #ccc}.hero,.largo-disclaimer,.module,.module.image,.wp-caption,.wp-media-credit,p.wp-caption-text{font-size:10px!important;font-style:italic}.hero p.wp-caption,.hero p.wp-caption-text,.hero p.wp-media-credit{width:100%!important;margin:0!important}.print-header{display:block;border-bottom:1px solid #000;margin-bottom:0}.print-header strong{display:inline-block;border-right:1px solid #000;padding-right:10px;margin-right:10px}.byline,ol,p,ul{font-size:12px!important;margin-bottom:10px}.entry-content h3,h1,h2,h4,h5,h6{font-size:16px!important}h1.entry-title{font-size:28px!important}.entry-content a:link:after,.entry-content a:visited:after{content:" (" attr(href) ") ";font-size:80%}.DV-container{display:none}} \ No newline at end of file +.clearfix:after,.form-actions:after,.form-horizontal .control-group:after,.row-fluid:after,blockquote{clear:both}.btn:hover,a{text-decoration:none}.hide-text,fieldset,hr,img,legend,pre code{border:0}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:#333 dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}a:active,a:hover{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{vertical-align:middle;-ms-interpolation-mode:bicubic}#map_canvas img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}.clearfix:after,.clearfix:before{display:table;content:""}.visuallyhidden{position:absolute;overflow:hidden;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent}#page,body{background-color:#fff}h1.entry-title,h2{font-size:44px}address,dfn,em,p.intro{font-style:italic}body,button,input,select,textarea{font-family:Georgia,"Times New Roman",Times,serif}.input-block-level{display:block;width:100%;min-height:28px;box-sizing:border-box}.input-block-level,.row-fluid [class*=span]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box}body{margin:0;font-size:16px;font-weight:400;line-height:1.5;color:#484848}a{color:#2275bb}a:hover{color:#368fda;text-decoration:underline}a.more-link{white-space:nowrap}address,dl,fieldset,h1,h2,h3,h4,h5,h6,hr,ol,p,pre,table,ul{margin:0 0 24px}h1{font-size:54px}h1.entry-title{margin-bottom:12px;line-height:1}h3{font-size:36px}.entry-content h1,.entry-content h2,.entry-content h3,h4{font-size:29.33px}.entry-content h4,.stories h3,h5{font-size:24px}.entry-content h5.top-tag,.widget h5.top-tag,h5.top-tag{font-size:16px;margin-bottom:4.8px;text-transform:uppercase;color:#aaa}.entry-content h5.top-tag a,.widget h5.top-tag a,h5.top-tag a{color:#aaa}.entry-content h5,h6{font-size:19.55px}.entry-content h6{font-size:16px;text-transform:uppercase}h1,h2,h3,h4,h5,h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:700;color:inherit;line-height:1.3;text-rendering:optimizelegibility}blockquote p,p{line-height:1.5}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-size:.815em}.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6{margin-bottom:24px}p{font-size:19.55px;margin:0 0 24px}p small,p.small{font-size:13.04px;color:#aaa}p.xsmall{font-size:10.67px;color:#aaa}p.intro{font-size:24px;color:#7d8185}blockquote small,del{color:#aaa}ol,ul{padding:0;margin:0 0 24px 25px}.entry-content ol,.entry-content ul{font-size:19.55px}ol ol,ol ul,ul ol,ul ul{margin-top:8px;margin-bottom:0}ul{list-style:disc}ol{list-style:decimal}ol ol{list-style:lower-alpha}ol ol ol{list-style:lower-roman}li{margin-bottom:12px}ol.unstyled,ul.unstyled{margin-left:0;list-style:none}dfn,dl dt,strong{font-weight:700}dd{margin-left:5px}abbr,acronym{border-bottom:1px dotted #aaa}address{margin:0 0 24px}blockquote{padding:5px 15px 5px 30px;margin:24px;border-left:5px solid #ddd}blockquote p{font-size:16px;margin:12px 0}blockquote small,pre{display:block;line-height:24px}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-left:0;border-right:5px solid #ddd;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}code,pre{padding:0 3px 2px;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;font-size:14px;color:#484848}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8}pre{padding:12px;margin:0 0 24px;font-size:14.8px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15)}pre.prettyprint{margin-bottom:24px}pre code{padding:0;color:inherit;background-color:transparent}.pre-scrollable{max-height:340px;overflow-y:scroll}hr{margin:24px 0;border-top:1px solid #ddd;border-bottom:1px solid #fff}.is-video img{opacity:.5;position:relative;background:0 0;width:100%}.is-video{background-color:#000;background-image:url(../img/is-video-play-icon.svg);background-repeat:no-repeat;background-position:50% 50%;background-size:20%}fieldset{padding:0;margin:0}legend{display:block;width:100%;padding:0;margin-bottom:2.25;font-size:24px;line-height:3;color:#484848;border-bottom:1px solid #e5e5e5}legend small{font-size:1.125;color:#aaa}button,input,label,select,textarea{font-size:16px;font-weight:400;line-height:1.5}label{display:block;margin-bottom:5px}.uneditable-input,input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=tel],input[type=color],input[type=search],input[type=text],select,textarea{display:inline-block;height:1.5;padding:4px;margin-bottom:9px;font-size:16px;line-height:1.5;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;color:#7d8185}select[multiple],select[size],textarea{height:auto}input,textarea{width:210px}.uneditable-input,input[type=password],input[type=datetime],input[type=datetime-local],input[type=date],input[type=month],input[type=time],input[type=week],input[type=number],input[type=email],input[type=url],input[type=tel],input[type=color],input[type=search],input[type=text],textarea{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-ms-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}.uneditable-input:focus,input[type=password]:focus,input[type=datetime]:focus,input[type=datetime-local]:focus,input[type=date]:focus,input[type=month]:focus,input[type=time]:focus,input[type=week]:focus,input[type=number]:focus,input[type=email]:focus,input[type=url]:focus,input[type=tel]:focus,input[type=color]:focus,input[type=search]:focus,input[type=text]:focus,textarea:focus{border-color:rgba(82,168,236,.8);outline:0;outline:dotted thin;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6)}input[type=radio],input[type=checkbox]{margin:3px 0;line-height:normal;cursor:pointer}input[type=button],input[type=reset],input[type=radio],input[type=checkbox],input[type=submit]{width:auto}.uneditable-textarea{width:auto;height:auto}input[type=file],select{height:28px;line-height:28px}select{width:220px;border:1px solid #bbb;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}input[type=radio]:focus,input[type=checkbox]:focus,input[type=file]:focus,select:focus{outline:#333 dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.checkbox,.radio{min-height:18px;padding-left:18px}.checkbox input[type=checkbox],.radio input[type=radio]{float:left;margin-left:-18px}.controls>.checkbox:first-child,.controls>.radio:first-child{padding-top:5px}.checkbox.inline,.radio.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.checkbox.inline+.checkbox.inline,.radio.inline+.radio.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}.row-fluid .uneditable-input[class*=span],.row-fluid input[class*=span],.row-fluid select[class*=span],.row-fluid textarea[class*=span],.uneditable-input[class*=span],input[class*=span],select[class*=span],textarea[class*=span]{float:none;margin-left:0}.input-append .uneditable-input[class*=span],.input-append input[class*=span],.input-prepend .uneditable-input[class*=span],.input-prepend input[class*=span],.row-fluid .input-append [class*=span],.row-fluid .input-prepend [class*=span]{display:inline-block}.uneditable-input,input,textarea{margin-left:0}.uneditable-input.span12,input.span12,textarea.span12{width:89.99999999%}.uneditable-input.span11,input.span11,textarea.span11{width:81.48936169%}.uneditable-input.span10,input.span10,textarea.span10{width:72.9787234%}.uneditable-input.span9,input.span9,textarea.span9{width:64.4680851%}.uneditable-input.span8,input.span8,textarea.span8{width:55.9574468%}.uneditable-input.span7,input.span7,textarea.span7{width:47.4468085%}.uneditable-input.span6,input.span6,textarea.span6{width:38.93617021%}.uneditable-input.span5,input.span5,textarea.span5{width:30.42553191%}.uneditable-input.span4,input.span4,textarea.span4{width:21.91489361%}.uneditable-input.span3,input.span3,textarea.span3{width:13.40425532%}.uneditable-input.span2,input.span2,textarea.span2{width:4.89361702%}.uneditable-input.span1,input.span1,textarea.span1{width:-3.61702128%}input[disabled],input[readonly],select[disabled],select[readonly],textarea[disabled],textarea[readonly]{cursor:not-allowed;background-color:#ddd;border-color:#ddd}input[type=radio][disabled],input[type=radio][readonly],input[type=checkbox][disabled],input[type=checkbox][readonly]{background-color:transparent}.control-group.warning .help-block,.control-group.warning .help-inline,.control-group.warning>label{color:#c09853}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#c09853;border-color:#c09853}.control-group.warning .checkbox:focus,.control-group.warning .radio:focus,.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#a47e3c;-webkit-box-shadow:0 0 6px #dbc59e;-moz-box-shadow:0 0 6px #dbc59e;box-shadow:0 0 6px #dbc59e}.control-group.warning .input-append .add-on,.control-group.warning .input-prepend .add-on{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.control-group.error .help-block,.control-group.error .help-inline,.control-group.error>label{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48;border-color:#b94a48}.control-group.error .checkbox:focus,.control-group.error .radio:focus,.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:0 0 6px #d59392;-moz-box-shadow:0 0 6px #d59392;box-shadow:0 0 6px #d59392}.control-group.error .input-append .add-on,.control-group.error .input-prepend .add-on{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.control-group.success .help-block,.control-group.success .help-inline,.control-group.success>label{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847;border-color:#468847}.control-group.success .checkbox:focus,.control-group.success .radio:focus,.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:0 0 6px #7aba7b;-moz-box-shadow:0 0 6px #7aba7b;box-shadow:0 0 6px #7aba7b}.control-group.success .input-append .add-on,.control-group.success .input-prepend .add-on{color:#468847;background-color:#dff0d8;border-color:#468847}input:focus:required:invalid,select:focus:required:invalid,textarea:focus:required:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:required:invalid:focus,select:focus:required:invalid:focus,textarea:focus:required:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:.5 20px 1.5;margin-top:1.5;margin-bottom:1.5;background-color:#f5f5f5;border-top:1px solid #e5e5e5}.form-actions:after,.form-actions:before{display:table;content:""}.uneditable-input{overflow:hidden;white-space:nowrap;cursor:not-allowed;background-color:#fff;border-color:#eee;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.025);box-shadow:inset 0 1px 2px rgba(0,0,0,.025)}:-moz-placeholder{color:#aaa}:-ms-input-placeholder{color:#aaa}::-webkit-input-placeholder{color:#aaa}.help-block,.help-inline{color:#7d8185}.help-block{display:block;margin-bottom:.75}.help-inline{display:inline-block;vertical-align:middle;padding-left:5px}.input-append,.input-prepend{margin-bottom:5px}.input-append .uneditable-input,.input-append input,.input-append select,.input-prepend .uneditable-input,.input-prepend input,.input-prepend select{position:relative;margin-bottom:0;vertical-align:middle}.input-append .uneditable-input:focus,.input-append input:focus,.input-append select:focus,.input-prepend .uneditable-input:focus,.input-prepend input:focus,.input-prepend select:focus{z-index:2}.input-append .uneditable-input,.input-prepend .uneditable-input{border-left-color:#ccc}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:1.5;min-width:16px;padding:4px 5px;font-weight:400;line-height:1.5;text-align:center;text-shadow:0 1px 0 #fff;vertical-align:middle;background-color:#ddd;border:1px solid #ccc}.input-append .add-on,.input-append .btn,.input-prepend .add-on,.input-prepend .btn{margin-left:-1px}.input-append .active,.input-prepend .active{background-color:#a9dba9;border-color:#46a546}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-append .uneditable-input{border-right-color:#ccc;border-left-color:#eee}.form-horizontal .help-inline,.form-horizontal .input-append,.form-horizontal .input-prepend,.form-horizontal .uneditable-input,.form-horizontal input,.form-horizontal select,.form-horizontal textarea,.form-inline .help-inline,.form-inline .input-append,.form-inline .input-prepend,.form-inline .uneditable-input,.form-inline input,.form-inline select,.form-inline textarea,.form-search .help-inline,.form-search .input-append,.form-search .input-prepend,.form-search .uneditable-input,.form-search input,.form-search select,.form-search textarea{display:inline-block;margin-bottom:0}.form-horizontal .hide,.form-inline .hide,.form-search .hide{display:none}.form-inline label,.form-search label{display:inline-block}.form-inline .input-append,.form-inline .input-prepend,.form-search .input-append,.form-search .input-prepend{margin-bottom:0}.form-inline .checkbox,.form-inline .radio,.form-search .checkbox,.form-search .radio{padding-left:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio],.form-search .checkbox input[type=checkbox],.form-search .radio input[type=radio]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:.75}legend+.control-group{margin-top:1.5;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:1.5}.form-horizontal .control-group:after,.form-horizontal .control-group:before{display:table;content:""}.form-horizontal .control-label{float:left;width:140px;padding-top:5px;text-align:right}.form-horizontal .controls{margin-left:160px}table .span1,table .span10,table .span11,table .span13,table .span14,table .span15,table .span16,table .span17,table .span18,table .span19,table .span2,table .span20,table .span21,table .span22,table .span23,table .span24,table .span3,table .span4,table .span5,table .span6,table .span7,table .span8,table .span9{float:none;margin-left:0}.form-horizontal .help-block{margin-top:.75;margin-bottom:0}.form-horizontal .form-actions{padding-left:160px}.gcs_container .gsc-control-cse{width:auto;padding:0;background-color:transparent;border:none}.gcs_container .gsc-search-button{margin-top:0!important}.gcs_container .gsc-results-wrapper-overlay .gsc-input,.gcs_container .gsc-search-box .gsc-input{padding-right:5px!important}.gcs_container .gsc-results-wrapper-overlay table,.gcs_container .gsc-search-box table{border:0;border-collapse:separate;margin-bottom:0}.gcs_container .gsc-results-wrapper-overlay td,.gcs_container .gsc-search-box td{border:0;padding:0}.gcs_container .gsc-results-wrapper-overlay td.gsib_a,.gcs_container .gsc-search-box td.gsib_a{padding:3px 6px 0!important}.gcs_container .gsc-results-wrapper-overlay td.gsc-search-button,.gcs_container .gsc-search-box td.gsc-search-button{padding:0;line-height:normal}.gcs_container .gsc-results-wrapper-overlay input[type=text],.gcs_container .gsc-search-box input[type=text]{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.gcs_container .gsc-results-wrapper-overlay input.gsc-search-button-v2,.gcs_container .gsc-search-box input.gsc-search-button-v2{padding:6px 15px!important;height:13px!important;font-size:15px;margin-bottom:0!important;background-color:#2276bd;background-image:-moz-linear-gradient(top,#247ac4,#2070b2);background-image:-ms-linear-gradient(top,#247ac4,#2070b2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#247ac4),to(#2070b2));background-image:-webkit-linear-gradient(top,#247ac4,#2070b2);background-image:-o-linear-gradient(top,#247ac4,#2070b2);background-image:linear-gradient(top,#247ac4,#2070b2);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#247ac4', endColorstr='#2070b2', GradientType=0)}.gcs_container .gsc-results-wrapper-overlay input.gsc-search-button-v2:hover,.gcs_container .gsc-search-box input.gsc-search-button-v2:hover{background-color:#2274b9;background-image:-moz-linear-gradient(top,#2070b2,#247ac4);background-image:-ms-linear-gradient(top,#2070b2,#247ac4);background-image:-webkit-gradient(linear,0 0,0 100%,from(#2070b2),to(#247ac4));background-image:-webkit-linear-gradient(top,#2070b2,#247ac4);background-image:-o-linear-gradient(top,#2070b2,#247ac4);background-image:linear-gradient(top,#2070b2,#247ac4);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#2070b2', endColorstr='#247ac4', GradientType=0)}.btn{display:inline-block;padding:4px 10px;margin-bottom:0;font-size:16px;line-height:1.5;color:#484848;text-align:center;vertical-align:middle;cursor:pointer}.btn:hover{color:#484848;background-color:#e6e6e6;transition:background-position .1s linear}.btn-primary:hover,.btn:hover{background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-ms-transition:background-position .1s linear;-o-transition:background-position .1s linear}.btn:focus{outline:#333 dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.btn.active,.btn:active{background-color:#e6e6e6;background-color:#d9d9d9 \9;background-image:none;outline:0}.btn.disabled,.btn[disabled]{cursor:default;background-color:#e6e6e6;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}#floating-social-buttons .post-social>span:hover,#respond input#submit,.post-social .email:hover,.post-social>span:hover{cursor:pointer}.btn-large{padding:9px 14px;font-size:18px;line-height:normal}.btn-large [class^=icon-]{margin-top:1px}.btn-small{padding:5px 9px;font-size:14px;line-height:-.5px}.btn-small [class^=icon-]{margin-top:-1px}.btn-mini{padding:2px 6px;font-size:14px;line-height:-2.5px}.btn-primary.active{color:rgba(255,255,255,.75)}.btn{border-color:#ccc;background-color:#ddd}.btn-primary,.btn-primary:hover{color:#fff;background-color:#2275bb}.btn-primary:hover{background-color:#1a5a90;transition:background-position .1s linear}table{max-width:100%;width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0;border:1px solid #ddd;border-left:0;margin-bottom:1.5}table td,table th{padding:8px;line-height:1.5;text-align:left;vertical-align:top;border-top:1px solid #ddd;border-left:1px solid #ddd}table th{font-weight:700}table thead th{vertical-align:bottom}table tbody+tbody{border-top:2px solid #ddd}table caption+tbody tr:first-child td,table caption+tbody tr:first-child th,table caption+thead tr:first-child td,table caption+thead tr:first-child th,table colgroup+tbody tr:first-child td,table colgroup+tbody tr:first-child th,table colgroup+thead tr:first-child td,table colgroup+thead tr:first-child th,table tbody:first-child tr:first-child td,table tbody:first-child tr:first-child th,table thead:first-child tr:first-child td,table thead:first-child tr:first-child th{border-top:0}.table-condensed td,.table-condensed th{padding:4px 5px}.table-noborder,.table-noborder td,.table-noborder th{border:none}.table-striped tbody tr:nth-child(odd) td,.table-striped tbody tr:nth-child(odd) th{background-color:#f9f9f9}.table tbody tr:hover td,.table tbody tr:hover th{background-color:#f5f5f5}table .span1{width:-9.61702128%}table .span2{width:-1.10638298%}table .span3{width:7.40425532%}table .span4{width:15.91489361%}table .span5{width:24.42553191%}table .span6{width:32.93617021%}table .span7{width:41.4468085%}table .span8{width:49.9574468%}table .span9{width:58.4680851%}table .span10{width:66.9787234%}table .span11{width:75.48936169%}table .span12{float:none;width:83.99999999%;margin-left:0}table .span13{width:92.51063829%}table .span14{width:101.02127658%}table .span15{width:109.53191488%}table .span16{width:118.04255318%}table .span17{width:126.55319148%}table .span18{width:135.06382977%}table .span19{width:143.57446807%}table .span20{width:152.08510637%}table .span21{width:160.59574466%}table .span22{width:169.10638296%}table .span23{width:177.61702126%}table .span24{width:186.12765955%}@font-face{font-family:fontello;src:url(../fonts/fontello/font/fontello.eot);src:url(../fonts/fontello/font/fontello.eot?#iefix)format('embedded-opentype'),url(../fonts/fontello/font/fontello.woff)format('woff'),url(../fonts/fontello/font/fontello.ttf)format('truetype'),url(../fonts/fontello/font/fontello.svg#fontello)format('svg');font-weight:400;font-style:normal}[class*=" icon-"]:before,[class^=icon-]:before{font-family:fontello;font-style:normal;font-weight:400;speak:none;display:inline-block;text-decoration:inherit;width:1em;margin-right:.2em;text-align:center;opacity:1;text-transform:none!important}.donate-btn a:hover,.dropdown-menu li>a:hover,.global-nav ul a:hover,.navbar li>a,.navbar.sticky-navbar .site-name a:hover,.post-social a:hover,h1.branding a:hover,h2.branding a:hover{text-decoration:none}#header-search button,#header-search input,#topics-bar ul,.archive-background .related-topics,.archive-background .rss-subscribe-link,.global-nav,.labels,.navbar,.pager,.post-pagination a,.post-pagination span,.post-social>span,.tags{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}.icon-search:before{content:'\4d'}.icon-instagram:before{content:'\74'}.icon-heart:before{content:'\41'}.icon-heart-empty:before{content:'\42'}.icon-star:before{content:'\43'}.icon-star-empty:before{content:'\44'}.icon-videocam:before{content:'\e802'}.icon-picture:before{content:'\e800'}.icon-camera:before{content:'\e801'}.icon-ok:before{content:'\45'}.icon-cancel:before{content:'\46'}.icon-plus:before{content:'\47'}.icon-minus:before{content:'\48'}.icon-help:before{content:'\49'}.icon-home:before{content:'\50'}.icon-link:before{content:'\51'}.icon-tag:before{content:'\52'}.icon-tags:before{content:'\53'}.icon-download:before{content:'\54'}.icon-print:before{content:'\55'}.icon-comment:before{content:'\56'}.icon-chat:before{content:'\57'}.icon-location:before{content:'\e808'}.icon-doc-text:before{content:'\e804'}.icon-mail:before{content:'\75'}.icon-phone:before{content:'\58'}.icon-menu:before{content:'\4c'}.icon-calendar:before{content:'\e805'}.icon-headphones:before{content:'\59'}.icon-play:before{content:'\60'}.icon-table:before{content:'\e807'}.icon-chart-bar:before{content:'\e806'}.icon-spinner:before{content:'\61'}.icon-map:before{content:'\e809'}.icon-share:before{content:'\e80a'}.icon-gplus:before{content:'\62'}.icon-pinterest:before{content:'\63'}.icon-cc:before{content:'\64'}.icon-flickr:before{content:'\65'}.icon-linkedin:before{content:'\66'}.icon-rss:before{content:'\67'}.icon-twitter:before{content:'\68'}.icon-youtube:before{content:'\69'}.icon-facebook:before{content:'\70'}.icon-github:before{content:'\71'}.icon-itunes:before{content:'\72'}.icon-tumblr:before{content:'\73'}.icon-doc-text-inv:before{content:'\e803'}#header-social i{position:relative;top:0;padding:4px}#header-social i:hover{color:#fff!important;opacity:.9}#before-footer,#footer-logos,#page,#site-footer,.global-nav,.sticky-nav-container{max-width:1170px;padding:0 2.5%}#page{padding-bottom:18px}#main{margin:18px 0}#left-rail{float:left;margin-left:0}#content-main{float:right}.row-fluid{width:100%}.row-fluid:after,.row-fluid:before{display:table;content:""}.row-fluid [class*=span]{display:block;width:100%;min-height:28px;box-sizing:border-box;float:left;margin-left:2.12765957%}.row-fluid [class*=span]:first-child{margin-left:0}.row-fluid .span12{width:99.99999999%}.row-fluid .span11{width:91.48936169%}.row-fluid .span10{width:82.9787234%}.row-fluid .span9{width:74.4680851%}.row-fluid .span8{width:65.9574468%}.row-fluid .span7{width:57.4468085%}.row-fluid .span6{width:48.93617021%}.row-fluid .span5{width:40.42553191%}.row-fluid .span4{width:31.91489361%}.row-fluid .span3{width:23.40425532%}.row-fluid .span2{width:14.89361702%}.row-fluid .span1{width:6.38297872%}@media screen and (max-width:480px){.home #main{margin-top:24px}}.popover{display:none;position:absolute;top:0;left:0;min-width:180px;background:padding-box #fff;text-transform:none;color:#7d8185;text-align:left;padding:1em;border:1px solid #ddd;border:1px solid rgba(0,0,0,.2);-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding}.popover:after,.popover:before{content:'';display:inline-block;position:absolute}.popover:before{border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:10px solid #ddd;border-bottom-color:rgba(0,0,0,.2);top:-10px;left:9px}.popover:after{border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:9px solid #fff;top:-9px;left:10px}.global-nav-bg{height:38px;background-color:#222}.global-nav{position:relative;height:38px;overflow:visible;z-index:1030}.global-nav ul{margin:0;list-style:none;font-size:11px;line-height:24px}.global-nav ul li{float:left;margin:9px 18px 0 0}.global-nav ul a{color:#fff}.global-nav ul a:hover{color:#d9d9d9}.global-nav .nav-right{float:right}.global-nav .nav-right ul#header-social{float:left;margin:0;font-size:14px}.global-nav .nav-right ul#header-social li{margin:5px 0 5px 10px}.global-nav .nav-right ul#header-social li a{color:#fff}.global-nav .nav-right ul#header-social li a i{display:block;height:24px;padding:3px 4px 2px}.global-nav .nav-right .donate-btn{float:left;margin:5px 0 0 10px}.donate-btn{font-size:14px;line-height:2;background-color:#bd261d}.donate-btn:hover{background-color:#d32a20}.donate-btn a{padding:24px 7px;color:#fff}.donate-btn i{margin:1px 3px 0 0}.nav-shelf li.donate a.donate-link{color:#bd261d}@media (max-width:480px){#header-extras li.donate{display:none}.nav-shelf li.donate{display:block}}@media (min-width:481px){.nav-shelf li.donate{display:none}}#header-search{margin-left:10px;margin-top:5px;max-width:210px;float:left}#header-search form{margin:0}#header-search button,#header-search input{font-size:13px;line-height:1}#header-search input{height:18px;padding:6px 4px 2px}#header-search button{height:28px;text-transform:uppercase}#site-header{margin:24px 0;width:auto}#site-header img{clear:none;margin:5px 0}#site-header aside{max-width:320px;float:right}h1.branding,h2.branding{clear:both;margin:20px 0;font-size:54px;line-height:1}h1.branding a,h2.branding a{color:#484848}h1.branding span,h2.branding span{display:block;clear:both;text-align:center}.navbar .toggle-nav-bar,.print-header{display:none}h1.branding .sitename,h2.branding .sitename{margin-bottom:.25em}h1.branding .tagline,h2.branding .tagline{font-size:24px;font-weight:300;color:#7d8185}.alert-wrapper{background:0 0;border:2px solid #bd261d;margin:20px 0}#alert-container{max-width:1170px;margin:1em auto;padding:8px 20px 0;color:#484848}#alert-container a{color:#484848}#alert-container a:hover{color:#bd261d}.navbar,.navbar .nav,.navbar .nav>li>a{color:#484848}#alert-container .widget:last-child{margin-bottom:0}@media (max-width:768px){#main-nav,#site-header{display:none}}html.nav-open,html.nav-open body{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.navbar{overflow:visible;margin-bottom:4.8px}.navbar .navbar-text,.navbar li{margin-bottom:0}.navbar .container{width:auto}.navbar .nav,.navbar li,.navbar li.home-link>a,.navbar li>a{display:block}.navbar .navbar-inner{background-color:#fff}.navbar #header-social li>a{padding-left:4px;padding-right:4px}.navbar .nav{position:relative;left:0;float:left;margin:0}.navbar li{float:left}.navbar li>a{line-height:40px;padding-left:10px;padding-right:10px}.navbar li.dropdown>a{padding-right:0}.navbar li.dropdown .dropdown-menu li a{color:#484848;padding-right:10px;line-height:1.5}.navbar li.dropdown .dropdown-menu li a:hover{color:#3b3b3b}.navbar li>a:hover{background-color:#f2f2f2;color:#3b3b3b}.navbar li>a:hover .caret:before{border-top-color:#3b3b3b}.navbar .sub-menu:before,.navbar .sub-sub-menu:before{border-bottom:9px solid transparent;border-left:none;border-right:9px solid rgba(0,0,0,.2);border-top:9px solid transparent;left:-9px;top:30%}.navbar .sub-menu:after,.navbar .sub-sub-menu:after{border-top:8px solid transparent;border-left:none;border-right:8px solid #fff;border-bottom:8px solid transparent;top:31%;left:-8px}.navbar li.home-icon a:hover,.navbar li.home-link a:hover{background-color:transparent;color:#4b9bde}.navbar li.home-icon>a:hover,.navbar li.home-link>a:hover{background:0 0}.navbar .home-icon:hover img,.navbar li.home-link:hover i{opacity:.85;filter:alpha(opacity=85)}.navbar li.home-link{overflow:hidden}.navbar li.home-link>a img{display:block;height:40px;width:40px}.navbar li.home-icon>a{padding:0}.navbar li.home-icon>a img{display:inline-block;height:24px;width:auto;margin-right:1em}.navbar .btn-navbar{display:none;float:left;margin-right:10px;background-color:transparent;border:none;padding:12.5px 10px}.navbar .btn-navbar .label{float:right;color:#fff;line-height:1;margin:-2px 0 0 5px;padding:0;font-size:15px}.navbar .btn-navbar .navbar .btn-navbar .bars{float:left}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:3px}.navbar .btn-navbar .icon-bar+.icon-bar{margin-top:3px}@media (min-width:769px){.navbar .nav-left{display:none}}@media (max-width:768px){.navbar{position:relative;z-index:9}.navbar li.dropdown .dropdown-menu li a{line-height:40px;padding-top:0;padding-bottom:0;padding-left:40px}.navbar .container{width:auto;padding:0}.navbar .toggle-nav-bar{display:block}.navbar .nav-shelf .home-icon,.navbar .nav-shelf .home-link,.navbar .nav-shelf .site-name,.navbar .nav-shelf li.home-link{display:none}.navbar .nav-shelf{background:#fff;position:fixed;top:0;bottom:0;left:0;right:0;visibility:hidden;opacity:0;overflow-y:scroll;-webkit-overflow-scrolling:touch}.navbar .nav-shelf li,.navbar .nav-shelf ul{float:none}.navbar .nav-shelf li b.caret{float:right;-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.navbar .nav-shelf li.open>a .caret{-webkit-transform:rotate(0);-moz-transform:rotate(0);-ms-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}.navbar .nav-shelf li.open>ul.dropdown-menu{display:block;position:relative;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border:none;padding:0}.navbar .nav li.home-link,.navbar .nav li.site-name,.navbar .nav-shelf li.open>ul.dropdown-menu:after,.navbar .nav-shelf li.open>ul.dropdown-menu:before{display:none}.navbar .nav-shelf .nav>li:last-child{border-bottom:none;padding-bottom:none}.navbar.open .nav-shelf{visibility:visible;opacity:1;border-bottom:1px solid #ddd}}.caret,.caret:before,.dropdown,.dropup{position:relative}.navbar-inner{float:left;width:100%}.caret{display:inline-block;width:16px;padding:0 8px;top:2px}.caret:before{display:block;width:0;height:0;border-top:6px solid #484848;border-right:5px solid transparent;border-left:5px solid transparent;border-bottom:5px solid transparent;content:""}.dropdown .caret,.dropup .caret{border-top-color:#fff;border-bottom-color:#fff}.dropdown.active .caret,.dropup.active .caret{opacity:1;filter:alpha(opacity=100)}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:3px 0;margin:0;list-style:none;background-color:#fff;border:1px solid #ddd;border:1px solid rgba(0,0,0,.2);-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu li{padding-top:0;width:100%;margin-bottom:0}.dropdown-menu li>a{display:block;width:auto;padding:3px 15px;clear:both;white-space:nowrap;text-shadow:none}.dropdown-menu:after,.dropdown-menu:before{position:absolute;content:'';display:inline-block}.dropdown-menu .active>a,.dropdown-menu .active>a:hover{color:#484848;background-color:#fff}.dropdown-menu:before{border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:10px solid #ddd;border-bottom-color:rgba(0,0,0,.2);top:-10px;left:9px}.dropdown-menu:after{border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:9px solid #fff;top:-9px;left:10px}.dropdown-menu .sub-menu,.dropdown-menu .sub-sub-menu{position:absolute;top:-20%;left:99%;visibility:hidden;margin-top:0}.dropdown-menu .icon-arrow-right{position:relative;top:2px;left:3px}.dropdown-menu .sub-menu li:hover .sub-sub-menu,.dropdown-menu li:hover .sub-menu{visibility:visible;display:block}@media (max-width:768px){.dropdown-menu li:hover .sub-menu,.dropdown-menu li:hover .sub-sub-menu{display:none;visibility:hidden}.dropdown-menu li:hover .sub-menu:before,.dropdown-menu li:hover .sub-sub-menu:before{display:none}}.open>.dropdown-menu{display:block}@media (min-width:769px){html.no-touch ul.nav li.dropdown:hover ul.dropdown-menu,html.touch ul.nav li.dropdown.open ul.dropdown-menu{display:block}.open>.dropdown-menu{display:none}}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:"\2191"}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}#topics-bar{padding:3px 0}#topics-bar ul{margin:0}#topics-bar ul li{display:inline;margin-right:10px;white-space:nowrap;font-size:14px}#topics-bar ul li.menu-label{font-size:15px;font-weight:700}#main-nav.navbar{border-top:1px solid #aaa;border-bottom:1px solid #aaa}.page-header,.post-header,.sticky-nav-holder,article.story{border-bottom:1px solid #ddd}.sticky-nav-container{margin:0 auto;position:relative}.sticky-nav-holder{position:fixed;top:0;left:0;right:0;z-index:99998;visibility:hidden;opacity:0;background-color:#fff;transition:opacity .3s}.navbar.sticky-navbar,.sticky-nav-holder{-webkit-transition:opacity .3s;-moz-transition:opacity .3s;-ms-transition:opacity .3s;-o-transition:opacity .3s}.sticky-nav-holder.transitioning{overflow:hidden;height:56px}.sticky-nav-holder.transitioning .navbar{opacity:0}.sticky-nav-holder.show{visibility:visible;opacity:1}body.admin-bar .sticky-nav-holder{top:32px}@media (max-width:782px){body.admin-bar .sticky-nav-holder{top:46px}}@media (max-width:600px){body.admin-bar .sticky-nav-holder{top:0}}@media (min-width:769px){.sticky-nav-holder{display:none}body.page .sticky-nav-holder.main_nav_hide_article,body.page .sticky-nav-holder.sticky_nav_display_article,body.single .sticky-nav-holder.main_nav_hide_article,body.single .sticky-nav-holder.sticky_nav_display_article{display:block}}.navbar.sticky-navbar{margin-bottom:0;transition:opacity .3s}.navbar.sticky-navbar .nav{color:#484848}.navbar.sticky-navbar li a{line-height:56px;color:#484848}.navbar.sticky-navbar li a:hover{color:#3b3b3b}.navbar.sticky-navbar li a .caret:before{border-top-color:#484848}.navbar.sticky-navbar li a:hover .caret:before{border-top-color:#3b3b3b}.navbar.sticky-navbar li.home-link>a:hover{color:#555}.navbar.sticky-navbar li.dropdown .dropdown-menu li a{color:#484848}.navbar.sticky-navbar li.dropdown .dropdown-menu li a:hover{color:#3b3b3b}.navbar.sticky-navbar .social-icons{margin:0;float:left}.navbar.sticky-navbar .btn-navbar{padding:0 10px;margin-right:0;line-height:56px}.navbar.sticky-navbar .btn-navbar .bars{display:inline-block}.navbar.sticky-navbar .btn-navbar .icon-bar{background-color:#484848}.navbar.sticky-navbar .btn-navbar:hover .icon-bar{background-color:#3b3b3b}.navbar.sticky-navbar.home-link{min-width:40px;text-align:center}.navbar.sticky-navbar.home-link .nav>li a img{width:1.49em;height:1.49em}.navbar.sticky-navbar.home-link .nav>li .icon-home:before{position:relative;top:0}.navbar.sticky-navbar .nav-right #header-extras .donate a span{padding:4px 8px;color:#fff;background-color:#bd261d}.navbar.sticky-navbar .nav-right #header-extras .donate a span:hover{background-color:#d32a20}.navbar.sticky-navbar .nav-right #header-extras .donate a span i{display:none}.navbar.sticky-navbar .nav-right .form-search{position:relative}.navbar.sticky-navbar .nav-right .form-search .toggle{color:#2275bb;display:inline-block;text-align:center;cursor:pointer;position:relative;z-index:91;-webkit-transition:.3s;-moz-transition:.3s;-ms-transition:.3s;-o-transition:.3s;transition:.3s}.navbar.sticky-navbar .nav-right .form-search .input-append{position:absolute;top:0;right:0;opacity:0;visibility:hidden;-webkit-transition:.3s;-moz-transition:.3s;-ms-transition:.3s;-o-transition:.3s;transition:.3s;padding:10px;z-index:90;width:246px}.navbar.sticky-navbar .nav-right .form-search .input-append .text-input-wrapper{display:block;float:left;width:196px}.navbar.sticky-navbar .nav-right .form-search .input-append input{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;height:36px!important}.navbar.sticky-navbar .nav-right .form-search .input-append button{width:50px!important;height:36px!important;float:left;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.navbar.sticky-navbar .nav-right #sticky-nav-search.show .input-append{position:absolute;opacity:1;visibility:visible}.navbar.sticky-navbar .nav-right #sticky-nav-search.show .input-append,.navbar.sticky-navbar .nav-right #sticky-nav-search.show .toggle{background-color:#343434;color:#fff}.navbar.sticky-navbar .nav-left>ul{margin:0;padding:0}@media (min-width:769px){.navbar.sticky-navbar .nav-left{display:none}}.navbar.sticky-navbar .site-name{display:block;color:#343434}#menu-overflow>ul .caret::after,#menu-overflow>ul .caret::before,#menu-overflow>ul ul.dropdown-menu .sub-menu,#menu-overflow>ul ul.dropdown-menu .sub-sub-menu,#menu-overflow>ul ul.dropdown-menu::after,#menu-overflow>ul ul.dropdown-menu::before{display:none}.navbar.sticky-navbar .site-name a{font-weight:700;padding:0 10px 0 0;color:#484848;max-width:214px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.navbar.sticky-navbar .site-name a:hover{background-color:transparent;color:#3b3b3b}.navbar.sticky-navbar .nav-right{float:right}.navbar.sticky-navbar .nav-right #header-extras{float:left;margin:0}.entry-content,.page-header,.post-footer,.post-header,.stories article,article.story{margin-bottom:24px}.navbar.sticky-navbar .nav-right #header-extras a.donate-link:hover{background:0 0}@media (max-width:768px){.navbar.sticky-navbar li.dropdown .dropdown-menu li a{line-height:56px}.navbar.sticky-navbar .nav-shelf b.caret{padding:22px}}#menu-overflow>ul{overflow-y:scroll;max-height:80vh}#menu-overflow>ul ul.dropdown-menu{position:relative;border:none;float:none;box-shadow:none}#menu-overflow>ul ul.dropdown-menu li a{padding-left:1.5em}article.story{padding-bottom:12px}.stories article{border-bottom:1px dotted #aaa}.stories article[class*=span]{margin-left:0}.stories h2.entry-title{font-size:32px;margin-bottom:8px;line-height:1.1}.stories .entry-content p{font-size:16px;margin-bottom:12px}.stories h5.tag-list{font-size:13.04px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5;margin-bottom:0}.archive-background{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #ddd}.archive-background h1{font-size:44px;margin-bottom:3px}.archive-background p{font-size:16px;margin-bottom:8px}.archive-background .related-topics ul{float:left;width:100%;list-style:none;margin:0;font-size:16px;line-height:1.3}.archive-background .related-topics ul li{display:inline;margin:0;padding:0}.archive-background .related-topics ul li:first-child{margin-right:5px}.archive-background .related-topics ul li:after{content:", "}.archive-background .related-topics ul li:first-child:after,.archive-background .related-topics ul li:last-child:after{content:""}.archive-background .rss-subscribe-link{float:right;margin-top:10px;text-transform:uppercase;color:#f89406}.archive-background .rss-subscribe-link i{padding-left:3px;position:relative;top:-2px}.archive-background .rss-subscribe-link:hover{text-decoration:none;color:#ad6704}.archive .hero{clear:both;margin:1em 0}.archive .hero .wp-caption-text,.archive .hero .wp-media-credit{display:none}article div.has-thumbnail{float:right;max-width:30%;margin:0 0 10px 20px}article img.attachment-post-thumbnail{float:right}.primary-featured-post,.secondary-featured-post{padding:0 0 24px;border-bottom:1px solid #ddd;margin-bottom:24px}.primary-featured-post h2{line-height:1.1;margin-bottom:8px;font-size:36px}.primary-featured-post .entry-content ol,.primary-featured-post .entry-content p,.primary-featured-post .entry-content ul{font-size:16px}.secondary-featured-post{margin-bottom:40px}.secondary-featured-post img{margin-bottom:0;width:100%}.secondary-featured-post h2{margin-bottom:12px;line-height:1.3;font-size:20px}@media (min-width:960px){.secondary-featured-post h2{font-size:24px}}.archive .stories .hero.is-image img,.home .stories .hero.is-image img{clear:both;float:none;display:block;margin:0 auto}.archive .entry-content.with-hero,.home .entry-content.with-hero{margin:-22px 7% 0;padding:22px 18px;width:86%;background:#fff}@media screen and (max-width:768px){.archive .entry-content.with-hero,.home .entry-content.with-hero{margin:8px 0 0;padding:0;width:100%}}.archive .entry-content h5.byline,.home .entry-content h5.byline{font-size:13.04px;margin-bottom:12px}.archive-dropdown{margin:12px 0}#series-footer{clear:both}#series-main #content{margin-bottom:24px}#series-header .byline .sep,#series-header .byline time{display:none}.load-more{display:inline-block}.loading .load-more{padding-right:32px;background-image:url(/wp-admin/images/loading.gif);background-position:96% center;background-repeat:no-repeat}.archive.search-results .input-append{width:100%;position:relative}.archive.search-results .form-search{margin-bottom:1em}.archive.search-results .form-search input{width:90%;box-sizing:border-box}.archive.search-results .form-search button{width:10%;box-sizing:border-box}.archive.search-results .search-term{background-color:#ddd;padding:1px 5px}.archive.search-results h3 .rss-link{margin-left:1em}.archive.search-results h3{margin-bottom:1em;padding-bottom:.5em;border-bottom:1px solid #7d8185}.archive.search-results .stories article{padding-bottom:12px}.archive.search-results .entry-content p{margin-bottom:0}.archive.search-results .date-link,.archive.search-results .date-link a{color:#7d8185}.gcs_container{margin:20px 0}.gcs_container table{margin:0}.gcs_container table,.gcs_container tbody,.gcs_container td,.gcs_container tr{border:none}.gcs_container .gsc-search-box{margin:18px 0}.gcs_container .gsc-search-box .gsst_a .gscb_a{position:relative;top:3px}.gcs_container .gsc-search-box td.gsib_a{padding:0 6px!important}.gcs_container .gsc-control-cse .gs-result .gs-title,.gcs_container .gsc-control-cse .gs-result .gs-title *{font-size:22px;line-height:1.2}.sticky-related a:hover,.sticky-solo a:hover{opacity:.9;filter:alpha(opacity=90)}.sticky-main-feature .image-wrap{float:left}.sticky-main-feature .image-wrap img{float:left;display:block;position:relative;z-index:1;margin:0;max-width:100%}.sticky-main-feature .image-wrap.span3 img{width:100%}.sticky-main-feature h2{line-height:1;margin-bottom:10px}.sticky-main-feature p a{font-weight:700;white-space:nowrap}.sticky-features-list h4{font-size:19.2px;margin:0 0 8px}.sticky-features-list ul{margin:0;list-style:none}.sticky-features-list ul li{list-style-type:disc;margin-left:20px;margin-bottom:7px;line-height:1.2}.sticky-features-list ul li.sticky-all{font-weight:700}@media (max-width:360px){.sticky-main-feature .image-wrap img{margin:0 15px 15px 0}.sticky-main-feature h5.byline{clear:both}.sticky-main-feature .span9{width:100%}}@media (min-width:360px){.sticky-main-feature .hidden-phone{display:inherit!important}.sticky-main-feature .visible-phone{display:none!important}}body.normal.page article.page>header,body.normal.page article.post>header,body.normal.single-post article.page>header,body.normal.single-post article.post>header{clear:both;margin:24px 17.0213%;position:relative}body.normal.page article.page>header h5.top-date,body.normal.page article.post>header h5.top-date,body.normal.single-post article.page>header h5.top-date,body.normal.single-post article.post>header h5.top-date{font-size:14px;font-weight:400;position:absolute;right:0}body.normal.page article.page>header h5.top-tag,body.normal.page article.post>header h5.top-tag,body.normal.single-post article.page>header h5.top-tag,body.normal.single-post article.post>header h5.top-tag{position:absolute;left:0}.post-social i,.post-social::before,.post-social>span{position:relative}body.normal.page article.page>header h1,body.normal.page article.post>header h1,body.normal.single-post article.page>header h1,body.normal.single-post article.post>header h1{padding-top:26px}body.normal.page article.page>header h2.subtitle,body.normal.page article.post>header h2.subtitle,body.normal.single-post article.page>header h2.subtitle,body.normal.single-post article.post>header h2.subtitle{font-size:19.55px;font-weight:400;color:#999}body.normal.page article.page>header .entry-date,body.normal.page article.page>header .sep,body.normal.page article.post>header .entry-date,body.normal.page article.post>header .sep,body.normal.single-post article.page>header .entry-date,body.normal.single-post article.page>header .sep,body.normal.single-post article.post>header .entry-date,body.normal.single-post article.post>header .sep{display:none}body.normal.page article.page>header .edit-link,body.normal.page article.post>header .edit-link,body.normal.single-post article.page>header .edit-link,body.normal.single-post article.post>header .edit-link{padding-left:5px}body.normal.page .hero p.wp-caption-text,body.normal.page .hero p.wp-media-credit,body.normal.single-post .hero p.wp-caption-text,body.normal.single-post .hero p.wp-media-credit{margin:0 17.0213% 12px}body.normal.page .single #main #sidebar,body.normal.single-post .single #main #sidebar{float:none;width:auto;min-height:0;margin-left:0}body.normal.page #comments,body.normal.page #disqus_thread,body.normal.page .article-bottom,body.normal.single-post #comments,body.normal.single-post #disqus_thread,body.normal.single-post .article-bottom{margin:0 17.021276594%}body.normal.page .single #main #sidebar .widget,body.normal.single-post .single #main #sidebar .widget{float:left;clear:left;padding-right:20px;width:14.89361702%}body.normal.page .single #main #sidebar .widget:first-child,body.normal.single-post .single #main #sidebar .widget:first-child{padding-top:0}body.normal.page .entry-content,body.normal.single-post .entry-content{padding:0 17.021276594%}body.normal.page p.intro,body.normal.page p.wp-caption-text,body.normal.single-post p.intro,body.normal.single-post p.wp-caption-text{font-style:normal}body.normal.page .article-bottom .post-social,body.normal.single-post .article-bottom .post-social{border-top:none;border-bottom:none}@media only screen and (max-width:979px){body.normal.page .single #main #sidebar,body.normal.single-post .single #main #sidebar{display:none}body.normal.page #comments,body.normal.page #disqus_thread,body.normal.page .article-bottom,body.normal.single-post #comments,body.normal.single-post #disqus_thread,body.normal.single-post .article-bottom{margin:0 6.38297872%}body.normal.page article.post>header,body.normal.single-post article.post>header{margin:24px 6.38297872%}body.normal.page .entry-content,body.normal.single-post .entry-content{padding:0 6.38297872%}body.normal.page .hero p.wp-caption-text,body.normal.page .hero p.wp-media-credit,body.normal.single-post .hero p.wp-caption-text,body.normal.single-post .hero p.wp-media-credit{margin:0 2.12765957% 12px}}@media only screen and (max-width:529px){body.normal.page #comments,body.normal.page #disqus_thread,body.normal.page .article-bottom,body.normal.single-post #comments,body.normal.single-post #disqus_thread,body.normal.single-post .article-bottom{margin:0}body.normal.page article.post>header,body.normal.single-post article.post>header{margin:24px 0}body.normal.page .entry-content,body.normal.single-post .entry-content{padding:0}}.byline{margin-bottom:12px;font-weight:400;font-size:14.64px}.byline a{color:#484848}.byline .author{font-weight:700}.byline .edit-link a,.byline .time-ago{color:#bd261d}@media (max-width:768px){.post-social>span{min-width:50px;text-align:center;display:inline-block}}@media (min-width:769px){.post-social>span{display:inline-block}.post-social i{margin-right:.5em;margin-left:.2em}}.post-social{margin-bottom:24px}.post-social>span{line-height:1.5em;max-width:250px;margin:.5em 0;text-align:center;text-transform:uppercase;font-weight:300;font-size:16px;color:#fff}.post-social>span:last-child{margin-right:0}.post-social>span>a{display:block;padding:.3em 1em .3em .5em}@media (max-width:768px){.post-social>span>a{padding:.3em .6em}}@media (max-width:480px){.post-social>span>a{padding:.3em .2em}}.post-social a,.post-social a:hover{color:#fff}.post-social .more-social-links{background-color:#f89406;color:#fff}.post-social .more-social-links:hover{background-color:#fa9f1e}.post-social .more-social-links .popover{top:40px}.post-social .more-social-links .popover a{color:#7d8185;position:relative;float:left}.post-social .more-social-links .popover a:hover{color:#484848;text-decoration:underline}.post-social .more-social-links .popover i{color:#aaa;margin-right:.25em;position:absolute;top:0;left:0}.post-social .more-social-links .popover li,.post-social .more-social-links .popover ul{list-style-type:none;margin:0;padding:0;font-size:14px;line-height:20px}.post-social .more-social-links .popover li{margin-bottom:.5em;float:left}.post-social .more-social-links .popover li:last-child{margin-bottom:0}.post-social .more-social-links .popover li span{display:block;margin-left:28px}@media (max-width:480px){.post-social .more-social-links .popover{left:auto;right:0}.post-social .more-social-links .popover:after,.post-social .more-social-links .popover:before{left:auto}.post-social .more-social-links .popover:before{right:19px}.post-social .more-social-links .popover:after{right:20px}}#floating-social-buttons{transition:opacity .2s;border:1px solid #ddd}#floating-social-buttons .hidden-phone{display:none}#floating-social-buttons .post-social>span{display:block;margin:0;padding:0;font-size:20px}#floating-social-buttons .post-social>span>a{color:#ddd;display:block;padding:18px;min-width:28px;min-height:28px}#floating-social-buttons .post-social>.email:hover,#floating-social-buttons .post-social>span:hover>a{color:#fff}#floating-social-buttons .rss{background-color:#fff;color:#ddd}#floating-social-buttons .rss:hover{background-color:#df8505}#floating-social-buttons .twitter{background-color:#fff;color:#ddd}#floating-social-buttons .twitter:hover{background-color:#3ea1ec}#floating-social-buttons .facebook{background-color:#fff;color:#ddd}#floating-social-buttons .facebook:hover{background-color:#334c83}#floating-social-buttons .linkedin{background-color:#fff;color:#ddd}#floating-social-buttons .linkedin:hover{background-color:#006a9d}#floating-social-buttons .gplus{background-color:#fff;color:#ddd}#floating-social-buttons .gplus:hover{background-color:#d73925}#floating-social-buttons .flickr{background-color:#fff;color:#ddd}#floating-social-buttons .flickr:hover{background-color:#e60077}#floating-social-buttons .youtube{background-color:#fff;color:#ddd}#floating-social-buttons .youtube:hover{background-color:#d8201a}#floating-social-buttons .print{background-color:#fff;color:#ddd}#floating-social-buttons .print:hover{background-color:#787c83}#floating-social-buttons .email{background-color:#fff;color:#ddd}#floating-social-buttons .email:hover{background-color:#565961}#floating-social-buttons .more-social-links{background-color:#fff;color:#ddd}#floating-social-buttons .more-social-links a.popped,#floating-social-buttons .more-social-links:hover{background-color:#f89406;color:#fff}#floating-social-buttons .more-social-links .popover{top:68px;font-size:14px}#floating-social-buttons .more-social-links .popover i{margin-right:.25em}#floating-social-buttons .more-social-links .popover a{color:#7d8185}#floating-social-buttons .more-social-links .popover a:hover{color:#484848;text-decoration:underline}#floating-social-buttons .social-btn{line-height:1.5em;max-width:250px;margin:.5em 0;padding:.5em}#floating-social-buttons .post-social{margin-bottom:0}#floating-social-buttons .post-social a:hover i{opacity:1}#floating-social-buttons .post-social i{margin:0}.post-pagination a,.post-pagination span{padding:5px;text-transform:uppercase;font-size:13.04px}.post-pagination a:first-child,.post-pagination span:first-child{padding-left:0}.labels,.pager,.tags{list-style:none;font-size:16px}.labels h5,.single-argolinkroundups .author-box h5,.single-post .author-box h5{font-size:19.2px;line-height:1;margin-bottom:0}.labels .series-label h5 a.rss-link{float:right;margin-top:4px;color:#f89406;font-size:18px}.labels .series-label h5 a.rss-link:hover{opacity:.85;filter:alpha(opacity=85)}.series-label{margin:5px;padding:8px}.series-label h5{background:0 0;padding:0;margin-bottom:2px}.series-label p{font-size:13.04px;margin-bottom:0}.hero{text-align:center;background-color:#efefef;width:100%;margin:0 0 24px}.hero.is-gallery{background-color:transparent}.hero p.wp-caption-text,.hero p.wp-media-credit{float:none;font-size:14px}.hero p.wp-caption-text{text-align:left;margin:0 12px;padding-bottom:12px}.hero p.wp-media-credit{text-align:right;margin:4px 12px;min-height:0}.hero.is-embed,.hero.is-video{margin-bottom:24px}.hero.is-embed .embed-container,.hero.is-video .embed-container{margin-bottom:0}.hero.is-empty{min-height:0;height:0}.home .stories article img.attachment-medium,.sub-stories img.attachment-post-thumbnail{max-width:30%;float:right;margin:0 0 10px 20px}.module,.module h3{margin-bottom:12px}#homepage-bottom{margin-top:24px}#homepage-bottom .widget{width:42.5%;padding:2.5%}#homepage-bottom .widget.odd{float:left;clear:both;margin-left:0}#homepage-bottom .widget.even{float:right;clear:none}.module{color:#000}.module h3{font-size:16px;font-weight:700}.module dl{margin:0}.module dd,.module dt{font-size:13.04px;margin:0 0 12px}.module ul{font-size:13.04px}.type-aside p{font-size:.815em}.image p{display:inline;font-size:10px}.image img{display:block}p.wp-media-credit{font-size:13.04px;margin:0;text-align:right;color:#7d8185;display:block}p.wp-caption-text{font-size:16px!important;margin:5px 0 0;color:#7d8185;font-style:italic;line-height:1.5;display:block}.extract,.full,.half{margin:0 0 24px}.half{width:40%}.full{width:100%}.full-image{text-align:center;background-color:#ddd}.pull-quote,.type-pull-quote{font:Georgia,"Times New Roman",Times,serif;font-style:italic;font-size:24px;line-height:1.3}#boilerplate,#related-post-nav,#sidebar .widget_analytic-bridge-popular-posts ol li,#site-footer input,#site-footer select,#site-footer ul,.author-box ul li.author-posts-link,.subscribe,.widget.largo-series-posts li a,ul.staff-roster .staff-name{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}.pull-quote::after,.pull-quote::before,.type-pull-quote::after,.type-pull-quote::before{content:"";display:block;height:1px;width:100%;margin:20px auto;background:#ddd}.pull-quote h6,.type-pull-quote h6{font-size:16px;margin:0;text-transform:none}.pull-quote p,.type-pull-quote p{font-size:24px;margin-bottom:6px}.DV-container{margin-bottom:8px}#disqus_thread{background-color:#ddd;padding:20px 10px;border-top:8px solid #aaa;margin-bottom:24px}#comments{clear:both}#content #comments-title{font-size:24px;margin-bottom:12px;font-weight:700}.nopassword{color:#aaa;font-size:24px;font-weight:100;margin:24px 0;text-align:center}.nocomments{display:none}.commentlist{list-style:none;margin:0 auto;width:100%}.commentlist>li.comment{background:#f6f6f6;border:1px solid #ddd;margin:0 0 12px;padding:14px;position:relative}.commentlist .pingback{margin:0 0 1.625em;padding:0 1.625em}.commentlist .children{list-style:none;margin:0}.commentlist .children li.comment{background:#fff;border-left:1px solid #ddd;margin:1.625em 0 0;padding:1.625em;position:relative}.commentlist .children li.comment .fn{display:block}.comment-meta .fn{font-style:normal}.comment-meta{color:#666;font-size:13.04px;line-height:1.5}.commentlist .comment-content{clear:both}.commentlist .comment-content p{font-size:16px;margin-bottom:6px}.commentlist .children li.comment .comment-meta{line-height:1.625em;margin-left:50px}.commentlist .children li.comment .comment-content{margin:1.625em 0 0}.commentlist .avatar{-webkit-box-shadow:0 1px 2px #ccc;-moz-box-shadow:0 1px 2px #ccc;box-shadow:0 1px 2px #ccc;padding:0;float:left;margin:0 10px 10px 0;width:50px;height:50px}.commentlist .children .avatar{background:0 0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;left:2.2em;padding:0;top:2.2em}a.comment-reply-link{background:#eee;color:#666;display:inline-block;font-size:12px;padding:0 8px;text-decoration:none}a.comment-reply-link:active,a.comment-reply-link:focus,a.comment-reply-link:hover{background:#888;color:#fff}.commentlist .children>li.bypostauthor,.commentlist>li.bypostauthor{background:#ddd;border-color:#d3d3d3}a.comment-reply-link>span{display:inline-block;position:relative;top:-1px}.commentlist>li.bypostauthor .comment-meta{color:#575757}.commentlist>li.bypostauthor:before{content:url(images/comment-arrow-bypostauthor.png)}#respond{background:#f6f6f6;border:1px solid #eee;margin:0 auto 24px;padding:4% 4% 8%;width:92%}#respond input[type=text],#respond textarea{background:#fff;border:4px solid #eee;-webkit-box-shadow:inset 0 1px 3px rgba(204,204,204,.95);-moz-box-shadow:inset 0 1px 3px rgba(204,204,204,.95);box-shadow:inset 0 1px 3px rgba(204,204,204,.95);position:relative;padding:10px;text-indent:80px}#respond .comment-form-author,#respond .comment-form-comment,#respond .comment-form-email,#respond .comment-form-url{position:relative;margin-top:-20px}#respond .comment-form-author label,#respond .comment-form-comment label,#respond .comment-form-email label,#respond .comment-form-url label{background:#eee;-webkit-box-shadow:1px 2px 2px rgba(204,204,204,.8);-moz-box-shadow:1px 2px 2px rgba(204,204,204,.8);box-shadow:1px 2px 2px rgba(204,204,204,.8);color:#555;display:inline-block;font-size:.815em;left:4px;min-width:60px;padding:4px 10px;position:relative;top:40px;z-index:1}#respond input[type=text]:focus,#respond textarea:focus{text-indent:0;z-index:1}#respond textarea{resize:vertical;width:95%}#respond .comment-form-author .required,#respond .comment-form-email .required{color:#bd3500;font-size:22px;font-weight:700;left:75%;position:absolute;top:45px;z-index:1}#respond .comment-notes,#respond .logged-in-as{font-size:.815em}#respond p{margin:10px 0}#respond .form-submit{float:right;margin:-20px 0 10px}#respond input#submit{background:#222;border:none;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.3);-moz-box-shadow:0 1px 2px rgba(0,0,0,.3);box-shadow:0 1px 2px rgba(0,0,0,.3);color:#eee;font-size:15px;margin:14px 0 20px;padding:5px 22px;text-shadow:0 -1px 0 rgba(0,0,0,.3)}#respond input#submit:hover{background:#555}#respond input#submit:active{background:#1982d1;color:#bfddf3}#respond #cancel-comment-reply-link{color:#666;margin-left:.667em;text-decoration:none}#respond #cancel-comment-reply-link:hover,#respond .logged-in-as a:hover{text-decoration:underline}#related-post-nav a,.author-box ul li.author-posts-link a:hover,.pager a:hover,.subscribe:hover{text-decoration:none}.commentlist #respond{margin:1.625em 0 0;width:auto}#reply-title{color:#373737;font-size:1.5em;font-weight:700;line-height:30px}#cancel-comment-reply-link{color:#888;display:block;font-size:.667em;font-weight:400;line-height:2.2em;letter-spacing:.05em;position:absolute;right:1.625em;text-decoration:none;text-transform:uppercase;top:1.1em}#cancel-comment-reply-link:active,#cancel-comment-reply-link:focus,#cancel-comment-reply-link:hover{color:#ff4b33}#respond label{line-height:2.2em}#respond input[type=text]{display:block;height:24px;width:75%}#site-footer aside li.menu-label,#supplementary .menu-dont-miss-container h4,.form-allowed-tags{display:none}#respond p{font-size:.815em}p.comment-form-comment{margin:0}.widget{margin-bottom:24px}.widget p,.widget ul{font-size:16px}.widget ul{list-style:none;margin:4.8px 0 0;line-height:1.2}.widget ul ul{margin-bottom:4.8px;margin-top:12px}.widget li{overflow:hidden;margin-bottom:1em}.widget p.morelink{margin:-6px 0 0;font-size:16px}.widget img.right-align{float:right;padding:.2em 0 .4em .66em}.widget img.left-align{float:left;padding:.2em .66em .4em 0}.widget img.attachment-large,.widget img.attachment-medium{padding:0 0 .66em}.widget h5{margin-bottom:.2em;font-size:20px}.row-fluid>[class*=span]:first-child>*>.widget,.row-fluid>[class*=span]:first-child>.widget{padding-right:24px}.row-fluid>[class*=span]:last-child>*>.widget,.row-fluid>[class*=span]:last-child>.widget{padding-left:24px}@media (max-width:768px){.row-fluid>[class*=span]:first-child>*>.widget,.row-fluid>[class*=span]:first-child>.widget{padding-right:0}.row-fluid>[class*=span]:last-child>*>.widget,.row-fluid>[class*=span]:last-child>.widget{padding-left:0}}.stories h3.widgettitle,.widgettitle{margin-bottom:8px;font-size:20px;text-transform:uppercase;font-weight:700;color:#000}.stories h3.widgettitle a,.widgettitle a{color:#000}#site-footer{color:#fff}#site-footer a:hover{color:#61a7e2}#site-footer .widgettitle,#site-footer li.menu-label{color:#fff;font-size:16px;text-transform:uppercase;font-weight:700;margin-bottom:8px;padding-bottom:4.8px}#site-footer .widget{margin:0 0 12px}#site-footer .widget,#site-footer .widgettitle{background:0 0;border:none}#site-footer li,#site-footer p{font-size:14.4px}#site-footer ul{margin:0}#site-footer ul li{line-height:1.25;margin-bottom:12px;list-style:none}#site-footer select{width:90%}#site-footer input.search-query{width:67%;margin-right:.5em;height:19px}#site-footer input.search-submit{max-width:25%;padding:.1em .5em}.widget.rev{color:#fff;background-color:#2275bb}.widget.rev .widgettitle{background-color:#fff;color:#2275bb;padding:5px}.widget.rev a{color:#fff;font-weight:700}.widget.rev .widgettitle a{color:#484848}.widget.no-bg{background:0 0}.widget.no-bg p,.widget.no-bg ul{background:0 0;border:none}.widget.no-bg .widgettitle{color:#000}#sidebar iframe{max-width:100%}#sidebar .widget{padding:0 0 0 24px}#sidebar .widget.rev{padding:24px 24px 0}@media (max-width:768px){#sidebar .widget{padding:0}}.single.normal #sidebar .widget{padding:0 24px 0 0}.largo-taxonomy-list select,.widget_archive select,.widget_categories select,.widget_search form{margin:4.8px 0}.widget_archive label,.widget_categories label{position:absolute;overflow:hidden;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0}.largo-about p{margin-bottom:0}#site-footer .largo-about p{margin-bottom:12px}.widget .author-box ul{padding:0;margin:0}.author-box{clear:both;margin:0}.author-box img.avatar{float:left;margin:5px 15px 10px 0;padding:4px;border:1px solid #ddd}.author-box p{font-size:16px;margin-bottom:8px}.author-box ul{list-style:none;margin:0;float:left}.author-box ul li{display:inline-block;float:left;margin-right:5px;min-width:30px}.author-box ul li a{display:block;padding:4px;color:#fff;background-color:#484848;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.author-box ul li a:hover{background-color:#626262}.author-box ul li i{padding:4px}.author-box ul li i::before{font-size:14px}.author-box ul li.author-posts-link{font-size:13px;font-weight:700}.author-box ul li.author-posts-link a{padding:6px 10px;color:#fff}body.normal.page .article-bottom .largo-disclaimer,body.normal.single-post .article-bottom .largo-disclaimer{color:#484848}.largo-donate p{margin-bottom:8px}#related-post-nav{padding:.5em 0}#related-post-nav li{list-style-type:none;margin-bottom:0;font-size:15px}#related-post-nav h5{margin:0 0 .25em}#related-post-nav a{display:block;padding:1.25em;font-weight:400;border-top:1px solid #aaa;outline:0}#related-post-nav a:hover{background-color:#ddd}#related-post-nav a.selected{color:#fff;background:#2275bb;border:none}.related-items div{display:none;padding:0 1em}.related-items div img{float:left;margin:0 .8em .8em 0}.related-items ul{margin:.4em 0}.related-items ul li{font-weight:700;font-size:18px;list-style:none}.related-items ul li.top-related{margin-bottom:12px;font-size:16px}.related-items ul li.top-related h3{font-size:24px;font-weight:700;margin-bottom:6px}.related-items ul li.top-related p{font-weight:400;font-size:16px;margin-bottom:12px}.related-items p{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:16px;margin-bottom:6px}@media (max-width:768px){#related-post-nav,#related-posts .related-items{clear:both;float:none;width:100%}#related-post-nav a{padding:12px}#related-posts .related-items ul li.top-related{margin-bottom:12px}#related-posts .related-items ul li.top-related h3{font-size:24px;margin:8px 0}#related-posts .related-items div img,#related-posts .related-items ul li.top-related p{display:none}#related-posts .related-items ul li{font-size:16px;line-height:1.2;margin-bottom:8px}}.subscribe{display:block;font-size:14px;margin-bottom:6px;color:#7d8185}.subscribe:hover{color:#222}.subscribe i{color:#fff;padding:0 1em 0 .5em;border-right:1px solid #fff;font-size:13px;margin-right:6px;float:left}.largo-follow .rss{background-color:#f89406;color:#fff}.largo-follow .rss:hover{background-color:#df8505}.largo-follow .twitter{background-color:#55acee;color:#fff}.largo-follow .twitter:hover{background-color:#3ea1ec}.largo-follow .facebook{background-color:#3a5795;color:#fff}.largo-follow .facebook:hover{background-color:#334c83}.largo-follow .linkedin{background-color:#007bb6;color:#fff}.largo-follow .linkedin:hover{background-color:#006a9d}.largo-follow .gplus{background-color:#dd4b39;color:#fff}.largo-follow .gplus:hover{background-color:#d73925}.largo-follow .flickr{background-color:#ff0084;color:#fff}.largo-follow .flickr:hover{background-color:#e60077}.largo-follow .youtube{background-color:#e52d27;color:#fff}.largo-follow .youtube:hover{background-color:#d8201a}.largo-follow .print{background-color:#85898F;color:#fff}.largo-follow .print:hover{background-color:#787c83}.largo-follow .email{background-color:#62656F;color:#fff}.largo-follow .email:hover{background-color:#565961}.largo-follow .social-btn{line-height:1.5em;margin:.5em 0;padding:.66em}.article-bottom .largo-follow{padding:0}.twitter-follow-button{display:block;margin:0 0 18px}.widget .fb-like{margin:0 0 6px}.fb-like,.fb-like span,.fb-like-box,.fb-like-box span,.fb-like-box span iframe[style],.fb-like.fb_iframe_widget span iframe{width:100%!important}.fb-like-box{background:#fff!important}.flickr-follow{margin-bottom:12px}#site-footer .widget-sp-image img{max-width:100%!important}.pager{line-height:1.2}.pager a{display:inline-block;padding:10px 15px;color:#484848;background-color:#e6e6e6}.pager a:hover{background-color:#a6a6a6;color:#fff}.next{width:48%;float:right;text-align:right}.next img{float:right;padding-left:20px}.previous{width:48%;float:left;text-align:left}.previous img{float:left;padding-right:20px}.widget.largo-recent-comments ul{margin-left:0;list-style:none}.widget.largo-recent-comments li{float:left;margin-bottom:2em}.widget.largo-recent-comments p{margin-bottom:4.8px;line-height:1.3}.widget.largo-recent-comments p.comment-excerpt{font-size:1.5em}.widget.largo-recent-comments p.comment-post{float:left}.widget.largo-recent-comments p.comment-meta{float:left;clear:both;color:inherit}.widget.largo-recent-comments p.comment-meta a{font-weight:700}.widget.largo-related-posts .widgettitle{font-size:1.75em;margin-bottom:20px;text-align:center}.widget.largo-related-posts ul.related{margin:0}.widget.largo-related-posts ul.related li{list-style:none;display:block}.widget.largo-related-posts ul.related li:after,.widget.largo-related-posts ul.related li:before{display:table;content:""}.widget.largo-related-posts ul.related li:after{clear:both}.widget.largo-related-posts h4{font-size:24px;margin-bottom:12px}@media only screen and (max-width:640px){.widget.largo-related-posts h4{font-size:20px;line-height:1.1;margin-bottom:4.8px}}.widget.largo-related-posts h5.byline{font-size:14.4px;margin-bottom:12px}.widget.largo-related-posts p{margin-bottom:1em}@media only screen and (max-width:640px){.widget.largo-related-posts h5.byline{display:none}.widget.largo-related-posts p{font-size:14.4px}}.widget.largo-related-posts .wp-post-image{float:left;margin:.5em 1.2em 0 0}.widget.largo-series-posts h4{margin-bottom:.4em;line-height:1.3;font-size:16px}.widget.largo-series-posts ul{margin-left:0;list-style:none}.widget.largo-series-posts img{max-width:100px}.widget.largo-series-posts i{display:block;float:left;font-size:110%;margin-right:-100%}.widget.largo-series-posts li a{padding-left:2em;display:inline-block}.widget.largo-series-posts a.more{text-align:right;float:right}.widget.largo-series-posts a.more:after{content:" »"}ul.staff-roster{float:left;clear:both;margin:20px 0 0;list-style-type:none;width:100%}ul.staff-roster li{display:block;float:left;clear:both;margin:0 0 24px;width:100%}ul.staff-roster li img{float:left;width:65px;height:auto;margin:0 1em .5em 0;border:1px solid #ddd;padding:4.8px}ul.staff-roster .staff-name{font-size:1.25em;margin-bottom:.25em}ul.staff-roster p{margin:.4em 0;font-size:.9em;line-height:1.1em;color:#7d8185}ul.staff-roster p+p{margin-top:.75em}.labels,.tags{height:100%;overflow:auto;margin-bottom:12px}.labels h5,.tags h5{display:inline;margin:0 .5em 0 0;font-size:16px;line-height:16px;text-transform:uppercase}.labels ul,.tags ul{padding:0;display:inline;margin:0;font-size:14.5px;line-height:15px;white-space:normal}.labels ul li,.tags ul li{display:inline;vertical-align:baseline;font-weight:300;white-space:normal}.labels ul li::after,.tags ul li::after{content:" | ";white-space:pre-wrap}.labels ul li:last-child::after,.tags ul li:last-child::after{display:none}.labels ul li i,.tags ul li i{margin:1px 3px 0 0}.labels ul li a,.tags ul li a{color:#7d8185;text-transform:uppercase}.labels ul li a:hover,.tags ul li a:hover{color:#2f2f2f}.largo-taxonomy-list img{max-width:60px;max-height:60px;float:left;margin-right:8px}.largo-taxonomy-list ul{margin:0}.largo-taxonomy-list li{list-style:none}.largo-taxonomy-list h5{margin-bottom:.5em;font-size:1em}article .largo-taxonomy-list .has-thumbnail a{text-align:0;padding:0}article .largo-taxonomy-list img.attachment-post-thumbnail{float:none;margin:0 auto;width:100%;max-width:100%;max-height:none;clear:both}.largo-taxonomy-list li.has-thumbnail a:nth-child(2){padding-left:68px;display:block}article .largo-taxonomy-list li.has-thumbnail a:nth-child(2){padding:0}#sidebar .largo-INN-RSS ul{margin:12px 0;padding:0}#sidebar .largo-INN-RSS li{margin-bottom:12px;list-style:none}#sidebar .largo-INN-RSS li h5,#sidebar .largo-INN-RSS li h6,#sidebar .largo-INN-RSS li p{margin-bottom:4.8px}#sidebar .widget_analytic-bridge-popular-posts li{margin-bottom:16px}#sidebar .widget_analytic-bridge-popular-posts li div{margin-bottom:8px}#before-footer .widget:last-child,.footer-bg{margin-bottom:0}#sidebar .widget_analytic-bridge-popular-posts li div.is-empty{margin:0;display:none}#sidebar .widget_analytic-bridge-popular-posts li+li{margin-top:28.8px;border-top:1px #ddd solid;padding-top:28.8px}#sidebar .widget_analytic-bridge-popular-posts ol{counter-reset:li;list-style:none;padding:0;margin-left:0}#sidebar .widget_analytic-bridge-popular-posts ol li+li::before{top:28.8px}#sidebar .widget_analytic-bridge-popular-posts ol li{position:relative;overflow:visible;margin-left:55px}#footer-logos,.back-to-top{overflow:hidden}#sidebar .widget_analytic-bridge-popular-posts ol li h5 a{display:inline-block;min-height:30px}#sidebar .widget_analytic-bridge-popular-posts ol li img{padding-bottom:0}#sidebar .widget_analytic-bridge-popular-posts ol li::before{font-size:30px;content:counter(li)'.';counter-increment:li;display:block;width:45px;height:1em;position:absolute;top:0;left:-61px;line-height:1;text-align:right}.article-bottom .widget_analytic-bridge-popular-posts .count-3,.article-bottom .widget_analytic-bridge-popular-posts .count-6,.article-bottom .widget_analytic-bridge-popular-posts .count-9{box-sizing:border-box;position:relative;margin-left:0}@media (min-width:481px){.article-bottom .widget_analytic-bridge-popular-posts .count-3 li,.article-bottom .widget_analytic-bridge-popular-posts .count-6 li,.article-bottom .widget_analytic-bridge-popular-posts .count-9 li{list-style:outside;display:block;float:left;width:25%}.article-bottom .widget_analytic-bridge-popular-posts .count-3 li:nth-child(3n+1),.article-bottom .widget_analytic-bridge-popular-posts .count-3 li:nth-child(3n+2),.article-bottom .widget_analytic-bridge-popular-posts .count-6 li:nth-child(3n+1),.article-bottom .widget_analytic-bridge-popular-posts .count-6 li:nth-child(3n+2),.article-bottom .widget_analytic-bridge-popular-posts .count-9 li:nth-child(3n+1),.article-bottom .widget_analytic-bridge-popular-posts .count-9 li:nth-child(3n+2){margin-right:12.5%}.article-bottom .widget_analytic-bridge-popular-posts .count-3 li:nth-child(3n+1),.article-bottom .widget_analytic-bridge-popular-posts .count-6 li:nth-child(3n+1),.article-bottom .widget_analytic-bridge-popular-posts .count-9 li:nth-child(3n+1){clear:left}}.before-footer-wrapper{background-color:#ddd}.footer-bg{background-color:#222;padding:0 0 18px}#supplementary{padding:24px 0 0}#supplementary._1col aside{text-align:center}._1col .widget_nav_menu li{display:inline;margin-right:1em}#inn-logo{margin-top:22.05px;margin-bottom:16.54px;max-width:200px}#footer-logos-bg{background-color:#fff;padding:10px 0}#footer-logos a{display:block;float:left;width:16.666666667%}#footer-logos a img{display:block;width:100%;max-width:180px;margin:0 auto}#footer-logos h6{margin-bottom:4px;padding-bottom:3px;border-bottom:1px solid #ddd;font-size:12px;color:#7d8185;text-transform:uppercase;font-weight:400}#footer-logos h6 a{float:right;text-align:right}ul#footer-social{padding-top:22.05px;padding-bottom:16.54px;margin:0 auto;width:100%}ul#footer-social li{height:46.14px;display:table-cell;vertical-align:middle;font-size:18px}@media (max-width:768px){ul#footer-social{text-align:left}ul#footer-social li{margin-top:0}}ul#footer-social li a{padding-right:10px;padding-top:16.08px}ul#footer-social li i{position:relative;top:0;padding:5px;margin-top:27.56141402;font-size:18px;color:#fff}ul#footer-social li i:hover{color:#bfbfbf}ul#footer-social li:last-child a{padding-right:0}#boilerplate{width:100%}#boilerplate p{margin-bottom:0;color:#9F9FA3}#boilerplate .menu{display:inline;margin:0;font-size:10.67px;clear:none}#boilerplate .menu li{display:inline;padding-right:10px}footer #boilerplate p{color:#9F9FA3}footer #boilerplate a{color:#ddd}footer #boilerplate a:hover{color:#09C9FF}@media (min-width:769px){#boilerplate .span6.right{text-align:right;margin-top:0;margin-bottom:0}}@media (min-width:979px){.footer-credit-padding-inn-logo-missing{margin-top:84.72px}}@media (max-width:979px){#boilerplate .row-fluid .span6{width:100%;clear:both;margin-left:0;text-align:center}ul#footer-social{display:inline-block;width:auto;margin:0 auto}.footer-credit span{display:block}}.back-to-top{position:absolute;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0}.header-ad-zone{text-align:center}.header-ad-zone #header-ad-zone-container{display:inline-block;text-align:center}.header-ad-zone #header-ad-zone-container .acm_ad_zones{display:inline-block;text-align:left}#before-footer,#header-ad-zone-container{width:100%}#before-footer div div,#header-ad-zone-container div div{display:block!important;max-width:728px;margin:1em auto}#header-ad-zone-container .widget{margin-bottom:0}#header-ad-zone-container div div{margin:.5em auto 0}.bypostauthor,.gallery-caption,.sticky{display:normal}.alignnone{margin:18px 0}.align-center,.aligncenter,.center{clear:both;display:block;margin:18px auto}.align-right,.alignright,.right{float:right;margin:6px 0 12px 20px}.align-left,.alignleft,.left{float:left;margin:6px 20px 12px 0}img,img[class*=align],img[class*=wp-image-]{max-width:100%;height:auto;clear:both}.embed-container,.type-embed{position:relative;padding-bottom:56.25%;padding-top:30px;height:0;overflow:hidden;margin-bottom:28px}.embed-container embed,.embed-container iframe,.embed-container object,.type-embed embed,.type-embed iframe,.type-embed object{position:absolute;top:0;left:0;width:100%;height:100%}.hidden{display:none;visibility:hidden}.hidden-desktop,.visible-phone,.visible-tablet{display:none!important}@media (max-width:768px){.visible-phone{display:inherit!important}.hidden-phone{display:none!important}.hidden-desktop{display:inherit!important}.visible-desktop{display:none!important}}@media (min-width:1200px){#before-footer,#footer-logos,#page,#site-footer,.global-nav{margin:0 auto}}@media screen and (min-width:1600px){#footer-logos,#site-footer,.global-nav{padding:0}#page{padding:0 20px}}@media (min-width:769px)and (max-width:979px){.visible-tablet{display:inherit!important}.hidden-desktop,.hidden-tablet,.visible-desktop{display:none!important}#footer-logos,#page,#site-footer,.global-nav{padding:0 18px}#main{margin:12px 0 0}h1.branding,h2.branding{font-size:44px}h1.branding .tagline,h2.branding .tagline{font-size:19.55px}#footer-logos,#footer-logos .logo4{clear:both}#footer-logos a{width:33.3333333333%}#homepage-bottom .widget.even,#homepage-bottom .widget.odd{clear:both;float:none;width:95%;margin:0 0 24px;padding-left:2.5%;padding-right:2.5%}#series-main #sidebar-left{display:none}#series-main #content.span5{width:63%;float:left}#series-main #sidebar{float:right}.sticky-features-list,.sticky-main-feature{clear:both;width:100%!important;margin:0!important}}@media (max-width:768px){#content-main,#left-rail,#sidebar,#site-footer div[class^=span],.full,.half{clear:both;float:none;width:100%;margin:0 0 24px}#homepage-bottom .widget.even,#homepage-bottom .widget.odd{width:95%;clear:both;float:none;padding-left:2.5%;padding-right:2.5%}#content,.global-nav .nav-right{width:100%}#content-main,.full,.half{margin:0}#page{padding-bottom:12px}#main{margin:8px 0 0}.global-nav ul{display:none}.global-nav .nav-right .donate-btn{float:left;margin-left:0}h1.entry-title,h1.page-title{font-size:32px;line-height:1.2}.category-background .related-topics ul{line-height:1.5}.carousel-caption h2,.sticky-main-feature h2,.stories h2.entry-title{font-size:24px}.sticky-features-list,.sticky-main-feature{clear:both;width:100%!important;margin:0!important}#site-footer .widget_nav_menu li a{font-size:19px;padding:10px 0}#footer-logos .logo4{clear:both}#footer-logos a{width:33.3333333333%}#footer-logos h6 a{display:inline;clear:both;float:none;text-align:left}#ft-social{float:left}#ft-social li{margin-right:10px;margin-left:10px}#ft-social li i{font-size:32px}#site-footer input{margin-bottom:24px}#site-footer input.search-query{height:32px;width:74%;float:left}#site-footer input.search-submit{padding:8px 2%;width:20%;float:right}#boilerplate p.back-to-top{padding-top:12px}#series-main #sidebar-left,.global-nav-bg{display:none}#series-main #content{margin-left:0}.navbar .btn-navbar{display:block}.category .row-fluid>*{width:100%;margin-left:0}.category .span4 img{display:block;margin:0 auto 1em}.category .secondary-featured-post img{float:left;max-width:23%;margin-right:3%;margin-top:1em;margin-bottom:.5em}}@media (max-width:480px){#footer-logos h6 a{display:inline;clear:both;float:none;text-align:left}}@media print{blockquote,img,pre,tr{page-break-inside:avoid}*{background:0 0!important;color:#000!important;box-shadow:none!important;text-shadow:none!important;filter:none!important;-ms-filter:none!important}a,a:visited{color:#006;text-decoration:underline}.hero{float:right}hr{margin:12px 0}blockquote,pre{border:1px solid #999}body.normal.page .hero,body.normal.single-post .hero{width:60%;margin-left:0;margin-bottom:0;float:none}#content .wp-caption img.size-large,#content>img.size-large{max-width:60%!important;height:auto}aside.type-pull-quote{margin-bottom:12px}#content.span8[role=main]{margin-left:0!important}thead{display:table-header-group}#comments,#related-posts,#sidebar,#site-footer,#site-header,.article-bottom .widget:not(.largo-disclaimer),.author-box,.bottom-meta,.edit-link,.global-nav,.post-nav,.post-social,.sticky-nav-wrapper,audio,iframe,nav,object,video{display:none}@page{margin:.5cm .5cm 1cm}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.author .url{text-decoration:none}.article-bottom{border-top:1px solid #ccc;border-bottom:1px solid #ccc}.hero,.largo-disclaimer,.module,.module.image,.wp-caption,.wp-media-credit,p.wp-caption-text{font-size:10px!important;font-style:italic}.hero p.wp-caption,.hero p.wp-caption-text,.hero p.wp-media-credit{width:100%!important;margin:0!important}.print-header{display:block;border-bottom:1px solid #000;margin-bottom:0}.print-header strong{display:inline-block;border-right:1px solid #000;padding-right:10px;margin-right:10px}.byline,ol,p,ul{font-size:12px!important;margin-bottom:10px}.entry-content h3,h1,h2,h4,h5,h6{font-size:16px!important}h1.entry-title{font-size:28px!important}.entry-content a:link:after,.entry-content a:visited:after{content:" (" attr(href)") ";font-size:80%}.DV-container{display:none}} \ No newline at end of file diff --git a/docs/developers/hooksfilters.rst b/docs/developers/hooksfilters.rst index 8357998e7..ff0744379 100644 --- a/docs/developers/hooksfilters.rst +++ b/docs/developers/hooksfilters.rst @@ -43,10 +43,10 @@ filter: **largo_archive_rounduplink_title** **Usage:** :: - function filter_rounduplink_title($title) { + function filter_rounduplink_title( $title ) { return "Custom title here"; } - add_action('largo_archive_rounduplink_title', 'filter_rounduplink_title'); + add_action( 'largo_archive_rounduplink_title', 'filter_rounduplink_title' ); filter: **largo_registration_extra_fields** @@ -58,10 +58,10 @@ filter: **largo_registration_extra_fields** Also passed in is a WP_Error object that stores all the generated errors for the page. Use this if you'd like to display an error message on the erroneous field. :: - function filter_function_name($values, $errors) { + function filter_function_name ($values, $errors ) { # ... } - add_filter('largo_registration_extra_fields', 'filter_function_name'); + add_filter( 'largo_registration_extra_fields', 'filter_function_name' ); action: **largo_validate_user_signup_extra_fields** @@ -73,10 +73,10 @@ action: **largo_validate_user_signup_extra_fields** Also passed in is an array that contains only the extra fields that were present. This is an easy way to check only the extra data. :: - function action_function_name($result,$extras) { + function action_function_name( $result, $extras ) { # ... } - add_action('largo_validate_user_signup_extra_fields', 'action_function_name'); + add_action( 'largo_validate_user_signup_extra_fields', 'action_function_name' ); filter: **largo_lmp_args** @@ -94,11 +94,11 @@ filter: **largo_lmp_template_partial** When building your own filter, you must set the fourth parameter of add_filter to 2: :: - function your_filter_name($partial, $post_type, $context) { + function your_filter_name( $partial, $post_type, $context ) { // things return $partials; } - add_filter( 'largo_lmp_template_partial', 'your_filter_name', 10, 2); + add_filter( 'largo_lmp_template_partial', 'your_filter_name', 10, 2 ); ^ Without setting '2', your filter will not be passed the $post_type or $context arguments. @@ -114,11 +114,11 @@ filter: **largo_partial_by_post_type** When building your own filter, you must set the fourth parameter of add_filter to 3: :: - function your_filter_name($partial, $post_type, $context) { + function your_filter_name( $partial, $post_type, $context ) { // things return $partial; } - add_filter('largo_partial_by_post_type', 'your_filter_name', 10, 3); + add_filter( 'largo_partial_by_post_type', 'your_filter_name', 10, 3 ); ^ Without setting '3', your filter will not be passed the $post_type or $context arguments. @@ -182,11 +182,27 @@ filter: **largo_post_social_more_social_links** Adding new social media networks is as simple as adding a new item to the array: :: - function add_linkedin($more) { + function add_linkedin( $more ) { $more[] = '
  • Your text here!
  • '; } - add_filter('largo_post_social_more_social_links', 'add_linkedin'); + add_filter( 'largo_post_social_more_social_links', 'add_linkedin' ); +.. php:function:: filter largo_remove_hero + + Filter to disable largo_remove_hero based on the global $post at the time the function is run + + :since: 0.5.5 + :param Boolean $run: Whether the function should run against the current post + :param WP_Post $post: The global ``$post`` object at the time the function is run + + When building your own filter, you must set the fourth parameter of add_filter to 2: :: + + function filter_largo_remove_hero( $run, $post ) { + # determine whether or not to run largo_remove_hero based on $post + return $run; + } + add_filter( 'largo_remove_hero', 'filter_largo_remove_hero', 10, 2 ); + ^ Template Hooks diff --git a/homepages/assets/css/single.min.css b/homepages/assets/css/single.min.css index b352be1af..472bd04f8 100644 --- a/homepages/assets/css/single.min.css +++ b/homepages/assets/css/single.min.css @@ -1 +1 @@ -#home-river header:after,.clearfix:after{clear:both}.clearfix:after,.clearfix:before{display:table;content:""}.visuallyhidden{position:absolute;overflow:hidden;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}#view-format h1,#view-format ul{font-size:12px;display:inline-block}#dark-top .more,#view-format .active{font-weight:700}.input-block-level{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}#main,.home-top{position:relative}.home-top{float:left;width:100%}#view-format{position:absolute;top:10px;right:10px;color:#fff;text-shadow:0 0 5px rgba(0,0,0,.6);z-index:1}#view-format *{margin-bottom:0}#view-format h1{text-transform:uppercase}#view-format h1:after{content:":"}#view-format ul{margin:0;padding:0}#view-format li{display:inline-block;border-right:1px solid #fff;padding:0 6px}#view-format li:last-child{border-right:0}#view-format a{color:#fff;font-family:sans-serif}.view-list #view-format{color:#666;text-shadow:none}.view-list #view-format a{color:inherit}#dark-top,#dark-top .side-featured h4 a{color:#fff}.home .full-hero{min-height:400px}.home .full-hero img{max-width:1170px;width:100%;margin:0 auto;display:block}.home .full-hero.one-third-width img{width:34.1%;float:left}.home .full-hero.two-third-width img{width:68.2%;float:left}#dark-top{margin-top:-28px;background-color:#000;font-family:sans-serif}#dark-top .side-featured h4,#dark-top .side-featured h5.byline,#dark-top .side-featured h5.top-tag{margin:0}#dark-top .side-featured h4{font-size:18px}#dark-top .side-featured h5{font-size:80%}#dark-top .side-featured h5.byline{color:#ddd}#dark-top .side-featured article{border-top:solid 3px rgba(108,185,225,.5);padding:10px 0}#dark-top .side-featured article:first-child{border-top:0 none}#dark-top .side-series h3{color:#6cb9e1;font-size:100%;text-transform:uppercase;margin:0}#dark-top .side-series h3 a{color:#6cb9e1}#dark-top .side-series h4{font-size:18px}#dark-top .side-series h4 a{color:#fff}#dark-top .side-series .read-more a,#dark-top h5 a{color:#6cb9e1}#dark-top .side-series article{padding:5px 0}#dark-top .side-series .read-more{text-align:right;font-size:80%}#dark-top .span10{background-color:rgba(0,0,0,.85);margin:0 8.510638302%;padding:25px 30px}#dark-top article{margin-bottom:0;border-bottom:none}#dark-top p{font-size:93%;line-height:1.4em;margin-bottom:0}#dark-top h2{font-size:38px;line-height:1.1em;margin-bottom:.3em}#dark-top h5{font-size:100%}#dark-top h2 a{color:#fff}#dark-top .byline,#dark-top .byline a,#dark-top section{color:#ddd}#dark-top .byline{font-weight:700;font-size:110%}#dark-top .byline a{text-transform:uppercase}#dark-top .span4 .top-tag{margin-bottom:.7em}#dark-top .related-story{font-size:18px;line-height:1.2em;margin-left:.2em;margin-bottom:1em}#dark-top .related-story a{color:#fff}#dark-top .more{text-align:right;margin-bottom:0;font-size:16px}#dark-top .more a{color:#6cb9e1}#dark-top .more a:after{content:" »"}#dark-top.overlay{background-color:transparent;margin-top:0;position:absolute;bottom:50px}#home-secondary{position:relative}#home-secondary>div{background-color:#fff;padding-bottom:0;margin-top:20px}#home-secondary .row-fluid>[class*=span] .widget{border:none}#home-secondary .row-fluid>[class*=span]:last-child .widget{border-right:none}#home-river{display:none}#home-river header:after,#home-river header:before{display:table;content:""}#home-river .hero{text-align:center;background-color:#eee}#home-river .span10{margin:0 auto;float:none;position:relative}#home-river .span10:before{height:25px;background-color:#fff;position:absolute;top:-25px;left:-4%;right:-4%;content:" "}@media screen and (max-width:980px){#dark-top.overlay{bottom:15px}}@media screen and (max-width:768px){#dark-top{position:relative!important;margin-top:-140px!important;bottom:auto!important}#dark-top .span10{width:100%;margin:0 auto}#dark-top .row-fluid [class*=span]{width:100%;margin:0}#dark-top .span4{margin-top:30px!important}#dark-top .related-story{margin-left:0}#dark-top.overlay{background-color:#000}#home-secondary .row-fluid>[class*=span]{float:none;width:100%;margin-left:0}}@media screen and (max-width:480px){.home .full-hero{min-height:50px}#dark-top{margin-top:-40px!important}#dark-top .span10{padding:15px 18px!important}#home-river{margin-top:24px}#home-river h1{font-size:36px;line-height:1.1}#view-format{width:100%;right:0;left:0;text-align:center}} \ No newline at end of file +#dark-top .byline a,#view-format h1{text-transform:uppercase}#home-river header:after,.clearfix:after{clear:both}.clearfix:after,.clearfix:before{display:table;content:""}.visuallyhidden{position:absolute;overflow:hidden;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}#view-format h1,#view-format ul{display:inline-block;font-size:12px}#dark-top .more,#view-format .active{font-weight:700}.input-block-level{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}#main,.home-top{position:relative}.home-top{float:left;width:100%}#view-format{position:absolute;top:10px;right:10px;color:#fff;text-shadow:0 0 5px rgba(0,0,0,.6);z-index:1}#view-format *{margin-bottom:0}#view-format h1:after{content:":"}#view-format ul{margin:0;padding:0}#view-format li{display:inline-block;border-right:1px solid #fff;padding:0 6px}#view-format li:last-child{border-right:0}#view-format a{color:#fff;font-family:sans-serif}.view-list #view-format{color:#666;text-shadow:none}.view-list #view-format a{color:inherit}#dark-top,#dark-top .side-featured h4 a{color:#fff}.home .full-hero{min-height:400px}.home .full-hero img{max-width:1170px;width:100%;margin:0 auto;display:block}.home .full-hero.one-third-width img{width:34.1%;float:left}.home .full-hero.two-third-width img{width:68.2%;float:left}#dark-top{margin-top:-28px;background-color:#000;font-family:sans-serif}#dark-top .side-featured h4,#dark-top .side-featured h5.byline,#dark-top .side-featured h5.top-tag{margin:0}#dark-top .side-featured h4{font-size:18px}#dark-top .side-featured h5{font-size:80%}#dark-top .side-featured h5.byline{color:#ddd}#dark-top .side-featured article{border-top:solid 3px rgba(108,185,225,.5);padding:10px 0}#dark-top .side-featured article:first-child{border-top:0 none}#dark-top .side-series h3{color:#6cb9e1;font-size:100%;text-transform:uppercase;margin:0}#dark-top .side-series h3 a{color:#6cb9e1}#dark-top .side-series h4{font-size:18px}#dark-top .side-series h4 a{color:#fff}#dark-top .side-series .read-more a,#dark-top h5 a{color:#6cb9e1}#dark-top .side-series article{padding:5px 0}#dark-top .side-series .read-more{text-align:right;font-size:80%}#dark-top .span10{background-color:rgba(0,0,0,.85);margin:0 8.510638302%;padding:25px 30px}#dark-top article{margin-bottom:0;border-bottom:none}#dark-top p{font-size:93%;line-height:1.4em;margin-bottom:0}#dark-top h2{font-size:38px;line-height:1.1em;margin-bottom:.3em}#dark-top h5{font-size:100%}#dark-top h2 a{color:#fff}#dark-top .byline,#dark-top .byline a,#dark-top section{color:#ddd}#dark-top .byline{font-weight:700;font-size:110%}#dark-top .span4 .top-tag{margin-bottom:.7em}#dark-top .related-story{font-size:18px;line-height:1.2em;margin-left:.2em;margin-bottom:1em}#dark-top .related-story a{color:#fff}#dark-top .more{text-align:right;margin-bottom:0;font-size:16px}#dark-top .more a{color:#6cb9e1}#dark-top .more a:after{content:" »"}#dark-top.overlay{background-color:transparent;margin-top:0;position:absolute;bottom:50px}#home-secondary{position:relative}#home-secondary>div{background-color:#fff;padding-bottom:0;margin-top:20px}#home-secondary .row-fluid>[class*=span] .widget{border:none}#home-secondary .row-fluid>[class*=span]:last-child .widget{border-right:none}#home-river{display:none}#home-river header:after,#home-river header:before{display:table;content:""}#home-river .hero{text-align:center;background-color:#eee}#home-river .span10{margin:0 auto;float:none;position:relative}#home-river .span10:before{height:25px;background-color:#fff;position:absolute;top:-25px;left:-4%;right:-4%;content:" "}@media screen and (max-width:980px){#dark-top.overlay{bottom:15px}}@media screen and (max-width:768px){#dark-top{position:relative!important;margin-top:-140px!important;bottom:auto!important}#dark-top .span10{width:100%;margin:0 auto}#dark-top .row-fluid [class*=span]{width:100%;margin:0}#dark-top .span4{margin-top:30px!important}#dark-top .related-story{margin-left:0}#dark-top.overlay{background-color:#000}#home-secondary .row-fluid>[class*=span]{float:none;width:100%;margin-left:0}}@media screen and (max-width:480px){.home .full-hero{min-height:50px}#dark-top{margin-top:-40px!important}#dark-top .span10{padding:15px 18px!important}#home-river{margin-top:24px}#home-river h1{font-size:36px;line-height:1.1}#view-format{width:100%;right:0;left:0;text-align:center}} \ No newline at end of file diff --git a/homepages/assets/css/top-stories.min.css b/homepages/assets/css/top-stories.min.css index b82b4667b..2b5c28e5f 100644 --- a/homepages/assets/css/top-stories.min.css +++ b/homepages/assets/css/top-stories.min.css @@ -1 +1 @@ -.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}.visuallyhidden{position:absolute;overflow:hidden;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}#homepage-featured{margin-bottom:24px;border:1px solid #ddd;border-bottom:5px solid #ddd}#homepage-featured .top-story{padding:10px 10px 24px}#homepage-featured .top-story img{margin-bottom:12px}#homepage-featured .top-story h2{font-size:32px;margin-bottom:12px;line-height:1.1}#homepage-featured .top-story p{font-size:13.04px;margin-bottom:12px}#homepage-featured .top-story h4{font-size:14px;margin-bottom:0}#homepage-featured .sub-stories{padding:10px 10px 10px 0}#homepage-featured .sub-stories .story{border-bottom:1px solid #ddd;margin-bottom:12px;overflow:hidden}#homepage-featured .sub-stories h5.top-tag{font-size:10.67px;margin-bottom:0;font-weight:700}#homepage-featured .sub-stories h3{font-size:16px;margin-bottom:6px;line-height:1.2}#homepage-featured .sub-stories p{font-size:10.67px;margin-bottom:12px}#homepage-featured .sub-stories p a{display:none}#homepage-featured .sub-stories h4.subhead{font-size:13.04px;text-transform:uppercase;margin-bottom:6px}#homepage-featured .sub-stories h5{font-size:13.04px;margin-bottom:6px;font-weight:400}@media (min-width:769px) and (max-width:979px){#homepage-featured .sub-stories h4,#homepage-featured .sub-stories h5{display:none}}@media (max-width:768px){#homepage-featured .sub-stories,#homepage-featured .top-story{clear:both;width:100%;padding:10px;margin:0}#homepage-featured .sub-stories{border-top:1px solid #ddd}} \ No newline at end of file +.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}.visuallyhidden{position:absolute;overflow:hidden;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}#homepage-featured{margin-bottom:24px;border:1px solid #ddd;border-bottom:5px solid #ddd}#homepage-featured .top-story{padding:10px 10px 24px}#homepage-featured .top-story img{margin-bottom:12px}#homepage-featured .top-story h2{font-size:32px;margin-bottom:12px;line-height:1.1}#homepage-featured .top-story p{font-size:13.04px;margin-bottom:12px}#homepage-featured .top-story h4{font-size:14px;margin-bottom:0}#homepage-featured .sub-stories{padding:10px 10px 10px 0}#homepage-featured .sub-stories .story{border-bottom:1px solid #ddd;margin-bottom:12px;overflow:hidden}#homepage-featured .sub-stories h5.top-tag{font-size:10.67px;margin-bottom:0;font-weight:700}#homepage-featured .sub-stories h3{font-size:16px;margin-bottom:6px;line-height:1.2}#homepage-featured .sub-stories p{font-size:10.67px;margin-bottom:12px}#homepage-featured .sub-stories p a{display:none}#homepage-featured .sub-stories h4.subhead{font-size:13.04px;text-transform:uppercase;margin-bottom:6px}#homepage-featured .sub-stories h5{font-size:13.04px;margin-bottom:6px;font-weight:400}@media (min-width:769px)and (max-width:979px){#homepage-featured .sub-stories h4,#homepage-featured .sub-stories h5{display:none}}@media (max-width:768px){#homepage-featured .sub-stories,#homepage-featured .top-story{clear:both;width:100%;padding:10px;margin:0}#homepage-featured .sub-stories{border-top:1px solid #ddd}} \ No newline at end of file diff --git a/inc/post-templates.php b/inc/post-templates.php index 2e0af9f4a..3abde73e9 100644 --- a/inc/post-templates.php +++ b/inc/post-templates.php @@ -1,9 +1,9 @@ get_files( 'php', 1, true ); $post_templates = array(); - $base = array(trailingslashit(get_template_directory()), trailingslashit(get_stylesheet_directory())); + $base = array(trailingslashit( get_template_directory()), trailingslashit( get_stylesheet_directory() ) ); - foreach ((array)$templates as $template) { - $template = WP_CONTENT_DIR . str_replace(WP_CONTENT_DIR, '', $template); - $basename = str_replace($base, '', $template); + foreach ( (array)$templates as $template ) { + $template = WP_CONTENT_DIR . str_replace( WP_CONTENT_DIR, '', $template ); + $basename = str_replace( $base, '', $template ); // don't allow template files in subdirectories // if (false !== strpos($basename, '/')) // continue; - $template_data = implode('', file( $template )); + $template_data = implode( '', file( $template ) ); $name = ''; - if (preg_match( '|Single Post Template:(.*)$|mi', $template_data, $name)) - $name = _cleanup_header_comment($name[1]); + if ( preg_match( '|Single Post Template:(.*)$|mi', $template_data, $name ) ) + $name = _cleanup_header_comment( $name[1] ); - if (!empty($name)) { - if(basename($template) != basename(__FILE__)) + if ( !empty( $name ) ) { + if( basename( $template ) != basename(__FILE__) ) $post_templates[trim($name)] = $basename; } } @@ -48,7 +48,11 @@ function post_templates_dropdown() { $post_templates = get_post_templates(); foreach ( $post_templates as $template_name => $template_file ) { //loop through templates, make them options - if ( $template_file == get_post_meta( $post->ID, '_wp_post_template', true )) { $selected = ' selected="selected"'; } else { $selected = ''; } + if ( $template_file == get_post_meta( $post->ID, '_wp_post_template', true ) ) { + $selected = ' selected="selected"'; + } else { + $selected = ''; + } $opt = ''; echo $opt; } @@ -62,7 +66,7 @@ function post_templates_dropdown() { if( !function_exists( 'get_post_template' ) ) { function get_post_template( $template ) { global $post; - if ( is_object($post) ) { + if ( is_object( $post ) ) { $custom_field = get_post_meta( $post->ID, '_wp_post_template', true ); } if ( !empty( $custom_field ) ) { @@ -82,7 +86,7 @@ function get_post_template( $template ) { * You can optionally provide a template name and then the check will be * specific to that template. * - * @since 1.0 + * @since 0.3 * @uses $wp_query * * @param string $template The specific template name if specific matching is required. @@ -108,38 +112,83 @@ function is_post_template( $template = '' ) { /** - * Remove potentially duplicated hero image after upgrade to v0.4 - * + * Remove potentially duplicated hero images in posts + * + * If the first paragraph of the post's content contains an img tag with a src, + * and if the src is the same as the src as the post featured media image, or if + * the src are different but the attachment IDs are the same, then remove the first + * paragraph from the post's content to hide the duplicate image. + * + * This does catch img tags inside shortcodes. + * + * This does not remove leading images that are different from the post featured media + * * The changes to the content in this function should eventually be made - * perminant in the database. (@see https://github.com/INN/Largo/issues/354) - * - * @since 0.4 - * + * permanent in the database. (@see https://github.com/INN/Largo/issues/354) + * + * If you would like to disable this function globally or on certain posts, + * use the filter `largo_remove_hero`. + * + * @since 0.4 - in Largo's single-column template + * @since 0.5.5 - in Largo's two-column template + * * @param String $content the post content passed in by WordPress filter * @return String filtered post content. */ -function largo_remove_hero($content) { +function largo_remove_hero( $content ) { global $post; + // Abort if there is no global $post + if ( !isset( $post ) ) { + return $content; + } - // 1: Only worry about this if it's a single template, there's a feature image, - // we haven't overridden the post display and we're not using the classic layout. + // 1: Only worry about this if: + // - it's a single template, and + // - there's a feature image, and + // - we haven't overridden the post display, and + // - we're not using a Largo layout - if( !is_single() ) + /** + * Filter to disable largo_remove_hero based on the global $post at the time the function is run + * + * When building your own filter, you must set the fourth parameter of add_filter to 2: + * + * function filter_largo_remove_hero( $run, $post ) { + * # determine whether or not to run largo_remove_hero based on $post + * return $run; + * } + * add_filter( 'largo_remove_hero', 'filter_largo_remove_hero', 10, 2 ); + * ^ + * + * @param Bool $run Whether `largo_remove_hero()` should be run + * @param WP_Object $post The global $post at the time the function is run. + * @since 0.5.5 + */ + $do_run = apply_filters( 'largo_remove_hero', true, $post ); + + if( !$do_run ) { return $content; + } - if( !has_post_thumbnail() ) + if( !has_post_thumbnail( $post->ID ) ) { return $content; + } - $options = get_post_custom($post->ID); + $options = get_post_custom( $post->ID ); - if( isset($options['featured-image-display'][0]) ) + if( isset( $options['featured-image-display'][0] ) ) { return $content; + } - if( of_get_option( 'single_template' ) == 'classic' ) + if( + of_get_option( 'single_template' ) != 'normal' && + of_get_option( 'single_template' ) != 'classic' + ) { return $content; + } - $p = explode("\n",$content); + $p = explode( "\n", $content ); // 2: Find an image (regex) // @@ -148,12 +197,13 @@ function largo_remove_hero($content) { // $matches[1] = value of src. $pattern = '/]*src="([^"]*)"[^>]*>/'; - $hasImg = preg_match($pattern,$p[0],$matches); + $hasImg = preg_match( $pattern, $p[0], $matches ); // 3: if there's no image, there's nothing to worry about. - if( !$hasImg ) + if( !$hasImg ) { return $content; + } $imgDom = $matches[0]; $src = $matches[1]; @@ -162,18 +212,18 @@ function largo_remove_hero($content) { // If they're the same, remove the top image. $featureImgId = get_post_thumbnail_id(); - $pImgId = largo_url_to_attachmentid($matches[1]); + $pImgId = largo_url_to_attachmentid( $matches[1] ); // Try a second way to get the attachment id $pattern = '/class="([^"]+)"/'; - preg_match($pattern,$imgDom,$classes); + preg_match( $pattern, $imgDom, $classes ); $classes = $classes[1]; if( !$pImgId ) { $pattern = '/wp-image-(\d+)/'; - preg_match($pattern,$classes,$imgId); + preg_match( $pattern, $classes, $imgId); $pImgId = $imgId[1]; } @@ -181,19 +231,18 @@ function largo_remove_hero($content) { return $content; // 5: Check if it's a full width image, or if the image is not large enough to be a hero. - - if( strpos($classes,'size-small') || strpos($classes,'size-medium') ) + if( strpos( $classes,'size-small' ) || strpos( $classes,'size-medium' ) ) return $content; // 6: Else, shift the first paragraph off the content and return. - - array_shift($p); - $content = implode("\n",$p); + var_log($p); + array_shift( $p ); + $content = implode( "\n", $p ); return $content; } -add_filter('the_content','largo_remove_hero',1); +add_filter( 'the_content', 'largo_remove_hero', 1 ); /** @@ -205,10 +254,10 @@ function largo_remove_hero($content) { * * @return Int ID of post attachment (or false if not found) */ -function largo_url_to_attachmentid($url) { +function largo_url_to_attachmentid( $url ) { global $wpdb; - $attachment = $wpdb->get_col($wpdb->prepare("SELECT ID FROM $wpdb->posts WHERE guid='%s';", $url )); + $attachment = $wpdb->get_col( $wpdb->prepare( "SELECT ID FROM $wpdb->posts WHERE guid='%s';", $url ) ); if( !empty( $attachment ) ) return $attachment[0]; @@ -216,7 +265,7 @@ function largo_url_to_attachmentid($url) { // Check if there's a size in the url and remove it. $url = preg_replace( '/-\d+x\d+(?=\.(jpg|jpeg|png|gif)$)/i', '', $url ); - $attachment = $wpdb->get_col($wpdb->prepare("SELECT ID FROM $wpdb->posts WHERE guid='%s';", $url )); + $attachment = $wpdb->get_col($wpdb->prepare( "SELECT ID FROM $wpdb->posts WHERE guid='%s';", $url ) ); if( !empty( $attachment ) ) return $attachment[0]; @@ -239,9 +288,9 @@ function largo_url_to_attachmentid($url) { * @filter largo_partial_by_post_type * @since 0.5.4 */ -function largo_get_partial_by_post_type($partial, $post_type, $context) { +function largo_get_partial_by_post_type( $partial, $post_type, $context ) { // Remove this conditional in #926. - if ($post_type == 'argolinks') { + if ( $post_type == 'argolinks' ) { $partial = 'argolinks'; } @@ -264,7 +313,7 @@ function largo_get_partial_by_post_type($partial, $post_type, $context) { * @param string $post_type The current post's post_type * @param string $context The context in which this filter is being called, defaulting to search. */ - $partial = apply_filters('largo_partial_by_post_type', $partial, $post_type, $context); + $partial = apply_filters( 'largo_partial_by_post_type', $partial, $post_type, $context ); return $partial; } diff --git a/less/inc/single.less b/less/inc/single.less index e400f08e8..0a9b41d3a 100644 --- a/less/inc/single.less +++ b/less/inc/single.less @@ -59,38 +59,10 @@ body.normal.page { } /* 1.2 - Hero */ - .hero { - text-align: center; - background-color: #efefef; - width: 100%; - margin: 0 0 24px; - &.is-gallery { - background-color: transparent; - } p.wp-caption-text, p.wp-media-credit { - float: none; - margin: 0 auto; - text-align: left; - font-size: @baseFontSize - 2; margin:0 17.0213% 12px; - padding-top: 4px; - } - p.wp-media-credit { - text-align: right; - margin-top: 4px; - min-height: 0; - } - &.is-video { - margin-bottom: 24px; - .embed-container { - margin-bottom: 0; - } - } - &.is-empty { - min-height: 0; - height: 0; } } @@ -547,3 +519,46 @@ body.normal.page { margin-bottom: 0; } } + +/** + * Styles for the post-leading hero, used in both single-column .normal posts and two-column .classic posts + * + * @since 0.5.5 + * @link https://github.com/INN/Largo/issues/934 + */ + +.hero { + text-align: center; + background-color: #efefef; + width: 100%; + margin: 0 0 24px; + &.is-gallery { + background-color: transparent; + } + p.wp-caption-text, + p.wp-media-credit { + float: none; + font-size: @baseFontSize - 2; + } + p.wp-caption-text { + text-align: left; + margin: 0 12px; + padding-bottom: 12px; + } + p.wp-media-credit { + text-align: right; + margin: 4px 12px 4px; + min-height: 0; + } + &.is-embed, + &.is-video { + margin-bottom: 24px; + .embed-container { + margin-bottom: 0; + } + } + &.is-empty { + min-height: 0; + height: 0; + } +} diff --git a/partials/content-single-classic.php b/partials/content-single-classic.php index 55ec2cecc..d4a2fdacb 100644 --- a/partials/content-single-classic.php +++ b/partials/content-single-classic.php @@ -6,7 +6,7 @@
    itemscope itemtype="http://schema.org/Article"> - +
    @@ -23,18 +23,24 @@
    - +
    - +
    - +
    diff --git a/tests/inc/test-post-templates.php b/tests/inc/test-post-templates.php index 2dcf986b1..4ed00238d 100644 --- a/tests/inc/test-post-templates.php +++ b/tests/inc/test-post-templates.php @@ -6,6 +6,40 @@ function setUp() { parent::setUp(); } + function test_get_post_templates() { + $this->markTestIncomplete( 'This test has not yet been implemented.' ); + } + + function test_post_templates_dropdown() { + $this->markTestIncomplete( 'This test has not yet been implemented.' ); + } + + function test_get_post_template() { + $this->markTestIncomplete( 'This test has not yet been implemented.' ); + } + + function test_is_post_template() { + $this->markTestIncomplete( 'This test has not yet been implemented.' ); + } + + function test_largo_remove_hero() { + // returns unchanged when: + // global $post is not set + // the current $post does not have a featured media thumbnail + // of_get_option('single_template') is not normal or classic + // the first paragraph of the post contents doesn't have an image + // the image in the first paragraph has a different src and attachment id than the post's featured media thumbnail + // the image in the first paragraph has the same src, or has a different src but the same id, and the image's classes include 'size-small' or 'size-medium' + // + // Otherwise, the first paragraph is removed from the post contents + + $this->markTestIncomplete( 'This test has not yet been implemented.' ); + } + + function test_largo_url_to_attachmentid() { + $this->markTestIncomplete( 'This test has not yet been implemented.' ); + } + private $ids = array(); function test_insert_image_no_thumb() { @@ -41,6 +75,7 @@ function test_insert_image_no_thumb() { $post_id = $this->factory->post->create(); add_post_meta( $post_id, '_thumbnail_id', $attachment_id ); + $this->go_to( '/?p=$post_id' ); $final1 = largo_remove_hero( $c1 );