.SiteFooter{--social-color:#aaaaaa}.SiteFooter--hide{display:none}.SiteFooter__primary{color:#003876;padding:25px 15px 20px 15px}@media (max-width:37.4375em){.SiteFooter__primary{text-align:center}}.SiteFooter__primary a{color:#003876;white-space:nowrap}@media (min-width:56.25em){.SiteFooter__primary{padding-top:50px}}@media (min-width:64em){.SiteFooter__primary{padding-right:0;padding-left:0}}.SiteFooter__logo{display:block;width:100%;max-width:350px}@media (max-width:37.4375em){.SiteFooter__logo{margin-right:auto;margin-left:auto}}@media (min-width:37.5em){.SiteFooter__logo{max-width:500px}}.SiteFooter__logo img{width:100%;max-width:none}.SiteFooter__menu{list-style:none;padding:0 20px;margin:0}.SiteFooter__secondary{padding-top:12px;padding-bottom:12px;background-color:#fff}@media (max-width:37.4375em){.SiteFooter__contact{margin-bottom:20px}}@media (min-width:37.5em) and (max-width:63.9375em){.SiteFooter__contact{margin-top:20px}}.SiteFooter__contact-value{font-size:14px;font-weight:700}.SiteFooter__contact-value+.SiteFooter__contact-value{margin-top:10px}.SiteFooter__social-col{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}@media (min-width:43.75em) and (max-width:63.9375em){.SiteFooter__social-col{margin-top:20px}}@media (min-width:43.75em) and (max-width:63.9375em){.SiteFooter__social-col{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}@media (min-width:64em) and (max-width:89.9375em){.SiteFooter__social-col{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.SiteFooter__social-col .SocialNav{margin-right:40px}}@media (min-width:90em){.SiteFooter__social-col{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin-top:20px}}.SiteFooter__logos{margin:20px auto;text-align:center}.SiteFooter__logos span{margin-right:4px}.SiteFooter__copyright{margin:40px auto 0;line-height:1.2;text-align:center}.SiteFooter__links{text-align:center;margin-top:30px}.SiteFooter .SiteFooter__nav--primary{font-weight:700;text-transform:uppercase}@media (max-width:56.1875em){.SiteFooter .SiteFooter__nav--primary{font-size:14px}}@media (min-width:37.5em) and (max-width:63.9375em){.SiteFooter .SiteFooter__nav--primary{margin-top:40px}}@media (min-width:64em){.SiteFooter .SiteFooter__nav--primary{margin-top:20px}}.SiteFooter .SiteFooter__nav--primary .menu-item+.menu-item{margin-top:10px}@media (max-width:37.4375em){.SiteFooter .SiteFooter__nav--secondary{margin-top:20px}}@media (max-width:56.1875em){.SiteFooter .SiteFooter__nav--secondary{font-size:14px}}@media (min-width:37.5em) and (max-width:63.9375em){.SiteFooter .SiteFooter__nav--secondary{margin-top:40px}}@media (min-width:64em){.SiteFooter .SiteFooter__nav--secondary{margin-top:20px}}@media (min-width:37.5em){.SiteFooter .SiteFooter__nav--secondary .SiteFooter__menu{-webkit-columns:2;columns:2}}.SiteFooter .SiteFooter__nav--secondary .menu-item{margin-bottom:10px}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxheW91dC9zaXRlLWZvb3Rlci5zY3NzIiwibWl4aW5zL19tZWRpYS1xdWVyaWVzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBU0EsWUFFSSxlQUFBLFFBRUEsa0JBQ0ksUUFBQSxLQUdKLHFCQUNJLE1BQUEsUUFDQSxRQUFBLEtBQUEsS0FBQSxLQUFBLEtDc0JBLDZCRHhCSixxQkFLUSxXQUFBLFFBTFAsdUJBU08sTUFBQSxRQUNBLFlBQUEsT0NBSiwyQkRWSixxQkFjUSxZQUFBLE1DSkosd0JEVkoscUJBa0JRLGNBQUEsRUFDQSxhQUFBLEdBSVIsa0JBQ0ksUUFBQSxNQUNBLE1BQUEsS0FDQSxVQUFBLE1DRkEsNkJEREosa0JBTVEsYUFBQSxLQUNBLFlBQUEsTUNwQkosMEJEYUosa0JBV1EsVUFBQSxPQVhQLHNCQWVPLE1BQUEsS0FDQSxVQUFBLEtBSVIsa0JBQ0ksV0FBQSxLQUNBLFFBQUEsRUFBQSxLQUNBLE9BQUEsRUFHSix1QkFDSSxZQUFBLEtBQ0EsZUFBQSxLQUNBLGlCQUFBLEtDNUJBLDZCRCtCSixxQkFFUSxjQUFBLE1DVkosb0REUUoscUJBTVEsV0FBQSxNQUdKLDJCQUNJLFVBQUEsS0FDQSxZQUFBLElBRkgsc0RBS08sV0FBQSxLQUtaLHdCQUNJLFFBQUEsWUFBQSxRQUFBLFlBQUEsUUFBQSxLQUNBLGlCQUFBLE9BQUEsY0FBQSxPQUFBLGdCQUFBLE9BQ0Esa0JBQUEsT0FBQSxlQUFBLE9BQUEsWUFBQSxPQzlCQSxxREQyQkosd0JBTVEsV0FBQSxNQ2pDSixxREQyQkosd0JBVVEsbUJBQUEsU0FBQSxzQkFBQSxPQUFBLG1CQUFBLE9BQUEsZUFBQSxRQ3JDSixrREQyQkosd0JBY1EsaUJBQUEsSUFBQSxjQUFBLElBQUEsZ0JBQUEsU0FkUCxtQ0FpQlcsYUFBQSxNQ2pGUix3QkRnRUosd0JBc0JRLG1CQUFBLFNBQUEsc0JBQUEsT0FBQSxtQkFBQSxPQUFBLGVBQUEsT0FDQSxXQUFBLE1BSVIsbUJBQ0ksT0FBQSxLQUFBLEtBQ0EsV0FBQSxPQUZILHdCQUtPLGFBQUEsSUFJUix1QkFDSSxPQUFBLEtBQUEsS0FBQSxFQUNBLFlBQUEsSUFDQSxXQUFBLE9BVUosbUJBQ0ksV0FBQSxPQUNBLFdBQUEsS0FySVIsc0NBeUlRLFlBQUEsSUFDQSxlQUFBLFVDMUdBLDZCRGhDUixzQ0E2SVksVUFBQSxNQ3RGSixvRER2RFIsc0NBaUpZLFdBQUEsTUMvSEosd0JEbEJSLHNDQXFKWSxXQUFBLE1BckpaLDREQTBKZ0IsV0FBQSxLQzFIUiw2QkRoQ1Isd0NBaUtZLFdBQUEsTUNqSUosNkJEaENSLHdDQXFLWSxVQUFBLE1DOUdKLG9ERHZEUix3Q0F5S1ksV0FBQSxNQ3ZKSix3QkRsQlIsd0NBNktZLFdBQUEsTUMzSkosMEJEbEJSLDBEQWtMZ0IsZ0JBQUEsRUFBQSxRQUFBLEdBbExoQixtREF1TFksY0FBQSIsImZpbGUiOiJsYXlvdXQvc2l0ZS1mb290ZXIuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnLi4vdmFyaWFibGVzJztcbkBpbXBvcnQgXCIvVXNlcnMvY29ubm9yaGlua3Nvbi9Mb2NhbCBTaXRlcy9wYXRyaW90LWNsb3NpbmcvYXBwL3B1YmxpYy93cC1jb250ZW50L3RoZW1lcy9ibHVmaXNoLW9jZWFuLWZsb29yL3NyYy9zdHlsZXMvbWl4aW5zL19jb3VudGVyLnNjc3NcIjtcbkBpbXBvcnQgXCIvVXNlcnMvY29ubm9yaGlua3Nvbi9Mb2NhbCBTaXRlcy9wYXRyaW90LWNsb3NpbmcvYXBwL3B1YmxpYy93cC1jb250ZW50L3RoZW1lcy9ibHVmaXNoLW9jZWFuLWZsb29yL3NyYy9zdHlsZXMvbWl4aW5zL19kb3RzLnNjc3NcIjtcbkBpbXBvcnQgXCIvVXNlcnMvY29ubm9yaGlua3Nvbi9Mb2NhbCBTaXRlcy9wYXRyaW90LWNsb3NpbmcvYXBwL3B1YmxpYy93cC1jb250ZW50L3RoZW1lcy9ibHVmaXNoLW9jZWFuLWZsb29yL3NyYy9zdHlsZXMvbWl4aW5zL19ncmFkaWVudC10ZXh0LnNjc3NcIjtcbkBpbXBvcnQgXCIvVXNlcnMvY29ubm9yaGlua3Nvbi9Mb2NhbCBTaXRlcy9wYXRyaW90LWNsb3NpbmcvYXBwL3B1YmxpYy93cC1jb250ZW50L3RoZW1lcy9ibHVmaXNoLW9jZWFuLWZsb29yL3NyYy9zdHlsZXMvbWl4aW5zL19tZWRpYS1xdWVyaWVzLnNjc3NcIjtcbkBpbXBvcnQgXCIvVXNlcnMvY29ubm9yaGlua3Nvbi9Mb2NhbCBTaXRlcy9wYXRyaW90LWNsb3NpbmcvYXBwL3B1YmxpYy93cC1jb250ZW50L3RoZW1lcy9ibHVmaXNoLW9jZWFuLWZsb29yL3NyYy9zdHlsZXMvbWl4aW5zL19yZW0uc2Nzc1wiO1xuQGltcG9ydCBcIi9Vc2Vycy9jb25ub3JoaW5rc29uL0xvY2FsIFNpdGVzL3BhdHJpb3QtY2xvc2luZy9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2JsdWZpc2gtb2NlYW4tZmxvb3Ivc3JjL3N0eWxlcy9taXhpbnMvX3NjcmVlbi1yZWFkZXItdGV4dC5zY3NzXCI7XG5AaW1wb3J0IFwiL1VzZXJzL2Nvbm5vcmhpbmtzb24vTG9jYWwgU2l0ZXMvcGF0cmlvdC1jbG9zaW5nL2FwcC9wdWJsaWMvd3AtY29udGVudC90aGVtZXMvYmx1ZmlzaC1vY2Vhbi1mbG9vci9zcmMvc3R5bGVzL21peGlucy9fc2l0ZS1jb2xvci5zY3NzXCI7XG5AaW1wb3J0IFwiL1VzZXJzL2Nvbm5vcmhpbmtzb24vTG9jYWwgU2l0ZXMvcGF0cmlvdC1jbG9zaW5nL2FwcC9wdWJsaWMvd3AtY29udGVudC90aGVtZXMvYmx1ZmlzaC1vY2Vhbi1mbG9vci9zcmMvc3R5bGVzL21peGlucy9fc2xpY2stZG90cy5zY3NzXCI7XG4uU2l0ZUZvb3RlciB7XG4gICAgJGJhc2U6ICY7XG4gICAgLS1zb2NpYWwtY29sb3I6ICNhYWFhYWE7XG5cbiAgICAmLS1oaWRlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmX19wcmltYXJ5IHtcbiAgICAgICAgY29sb3I6IHNpdGUtY29sb3IocHJpbWFyeSk7XG4gICAgICAgIHBhZGRpbmc6IHJlbSgyNXB4KSByZW0oMTVweCkgcmVtKDIwcHgpIHJlbSgxNXB4KTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDAsIHNtYWxsKSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiBzaXRlLWNvbG9yKHByaW1hcnkpO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDUwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xvZ28ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogcmVtKDM1MHB4KTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDAsIHNtYWxsKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtKDUwMHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21lbnUge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAmX19zZWNvbmRhcnkge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDEycHgpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDEycHgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzaXRlLWNvbG9yKHdoaXRlKTtcbiAgICB9XG5cbiAgICAmX19jb250YWN0IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgwLCBzbWFsbCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCwgbGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSgyMHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtdmFsdWUge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTRweCk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuXG4gICAgICAgICAgICAmICsgJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKDEwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc29jaWFsLWNvbCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21lZGl1bSwgbGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSgyMHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21lZGl1bSwgbGFyZ2UpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlLCB4eGxhcmdlKSB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgICAgICAuU29jaWFsTmF2IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSg0MHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSgyMHB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xvZ29zIHtcbiAgICAgICAgbWFyZ2luOiByZW0oMjBweCkgYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oNHB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvcHlyaWdodCB7XG4gICAgICAgIG1hcmdpbjogcmVtKDQwcHgpIGF1dG8gMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIC8vICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgLy8gICAgIGltZyB7XG4gICAgICAgIC8vICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oMTZweCk7XG4gICAgICAgIC8vICAgICB9XG4gICAgICAgIC8vIH1cbiAgICB9XG5cbiAgICAmX19saW5rcyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKDMwcHgpO1xuICAgIH1cblxuICAgIC5TaXRlRm9vdGVyX19uYXYtLXByaW1hcnkge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoMCwgbWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwsIGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oNDBweCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oMjBweCk7XG4gICAgICAgIH1cblxuICAgICAgICAubWVudS1pdGVtIHtcbiAgICAgICAgICAgICsgLm1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKDEwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLlNpdGVGb290ZXJfX25hdi0tc2Vjb25kYXJ5IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgwLCBzbWFsbCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKDIwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgwLCBtZWRpdW0pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0cHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCwgbGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSg0MHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSgyMHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5TaXRlRm9vdGVyX19tZW51IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgICAgICAgICAgICBjb2x1bW5zOiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1lbnUtaXRlbSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTBweCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKipcbiAqIE1peGluIGZvciBjcmVhdGluZyBicmVha3BvaW50c1xuICpcbiAqIEBwYXJhbSAkbWluICAgIHBpeGVsICAgVGhlIG1pbiB3aWR0aCBicmVha3BvaW50XG4gKiBAcGFyYW0gJG1heCAgICBwaXhlbCAgIFRoZSBtYXggd2lkdGggYnJlYWtwb2ludFxuICogQHBhcmFtICR3aGljaCAgc3RyaW5nICBXaWR0aCBvciBoZWlnaHRcbiAqIEByZXR1cm4gY29udGVudFxuICpcbiAqIEV4YW1wbGVzOlxuICogQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQtbGFuZHNjYXBlKSB7fSA9IEBtZWRpYSBtaW4td2lkdGg6OTAwcHgge31cbiAqIEBpbmNsdWRlIGJyZWFrcG9pbnQoMCwgdGFibGV0LWxhbmRzY2FwZSkge30gPSBAbWVkaWEgbWF4LXdpZHRoOjg5OXB4IHt9XG4gKiBAaW5jbHVkZSBicmVha3BvaW50KDQwMHB4LCBkZXNrdG9wKSB7fSA9IEBtZWRpYSBtaW4td2lkdGg6IDQwMHB4IGFuZCBtYXgtd2lkdGg6IDExOTlweCB7fVxuICovXG5AbWl4aW4gYnJlYWtwb2ludCgkbWluOiAwLCAkbWF4OiAwLCAkd2hpY2g6IHdpZHRoKSB7XG4gICAgJG1pbi1icmVhazogJyc7XG4gICAgJG1heC1icmVhazogJyc7XG4gICAgQGlmICgkbWF4ID09IDApIHtcbiAgICAgICAgLy8gaWYgJG1heCBpcyB6ZXJvIHRoZW4gd2UncmUgb25seSBkZWFsaW5nIHdpdGggYSBtaW4gYnJlYWtwb2ludFxuICAgICAgICBAaWYgdHlwZS1vZigkbWluKSA9PSAnbnVtYmVyJyB7XG4gICAgICAgICAgICAkbWluLWJyZWFrOiAkbWluIC8gMTZweCAqIDFlbTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbWluKSB7XG4gICAgICAgICAgICAgICAgJG1pbi1icmVhazogKG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbWluKSAvIDE2cHgpICogMWVtO1xuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgQGVycm9yICdNaW4gYnJlYWtwb2ludCBub3QgZm91bmQgaW4gbWFwLidcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgKG1pbi0jeyR3aGljaH06ICRtaW4tYnJlYWspIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfSBAZWxzZSBpZiAoJG1pbiA9PSAwKSB7XG4gICAgICAgIC8vIGlmICRtaW4gaXMgemVybyB0aGVuIHdlJ3JlIG9ubHkgZGVhbGluZyB3aXRoIGEgbWF4IGJyZWFrcG9pbnRcbiAgICAgICAgQGlmIHR5cGUtb2YoJG1heCkgPT0gJ251bWJlcicge1xuICAgICAgICAgICAgJG1heC1icmVhazogKCRtYXggLSAxKSAvIDE2cHggKiAxZW07XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJG1heCkge1xuICAgICAgICAgICAgICAgICRtYXgtYnJlYWs6ICgobWFwLWdldCgkYnJlYWtwb2ludHMsICRtYXgpIC0gMSkgLyAxNnB4KSAqIDFlbTtcbiAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIEBlcnJvciAnTWF4IGJyZWFrcG9pbnQgbm90IGZvdW5kIGluIG1hcC4nXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtYXgtI3skd2hpY2h9OiAkbWF4LWJyZWFrKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBpZiBuZWl0aGVyIGFyZSB6ZXJvIHRoZW4gd2UncmUgZGVhbGluZyB3aXRoIGJvdGhcbiAgICAgICAgQGlmIHR5cGUtb2YoJG1pbikgPT0gJ251bWJlcicge1xuICAgICAgICAgICAgJG1pbi1icmVhazogJG1pbiAvIDE2cHggKiAxZW07XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJG1pbikge1xuICAgICAgICAgICAgICAgICRtaW4tYnJlYWs6IChtYXAtZ2V0KCRicmVha3BvaW50cywgJG1pbikgLyAxNnB4KSAqIDFlbTtcbiAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIEBlcnJvciAnTWluIGJyZWFrcG9pbnQgbm90IGZvdW5kIGluIG1hcC4nXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGlmIHR5cGUtb2YoJG1heCkgPT0gJ251bWJlcicge1xuICAgICAgICAgICAgJG1heC1icmVhazogKCRtYXggLSAxKSAvIDE2cHggKiAxZW07XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJG1heCkge1xuICAgICAgICAgICAgICAgICRtYXgtYnJlYWs6ICgobWFwLWdldCgkYnJlYWtwb2ludHMsICRtYXgpIC0gMSkgLyAxNnB4KSAqIDFlbTtcbiAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIEBlcnJvciAnTWF4IGJyZWFrcG9pbnQgbm90IGZvdW5kIGluIG1hcC4nXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtaW4tI3skd2hpY2h9OiAkbWluLWJyZWFrKSBhbmQgKG1heC0jeyR3aGljaH06ICRtYXgtYnJlYWspIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuIl19 */
