cropper

MUKASA VENTURE PARTNERS LLC

  • Discover
  • About Us
  • Our Services
  • Our Products
  • Contact Us
  • Thank You
  • Message Sent
  • Guide Sent
  • About Me
  • Birthday Club Casino
  • Casino Entered
  • Cohort Ubuntu
  • Cohort CEO Life
  • Cohort Mentrx
{"js":"PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBjaGFyc2V0PSJVVEYtOCI+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCI+CiAgICA8dGl0bGU+TXkgMjAyNC0yMDI1IExlYXJuaW5nIEpvdXJuZXkgfCBUaGUgU0hFIEUtQm9zcyBTb2x1dGlvbmlzdOKEoiBTaG93Y2FzZTwvdGl0bGU+CiAgICA8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iQSBzaG93Y2FzZSBvZiBteSBjb21taXRtZW50IHRvIGxpZmVsb25nIGxlYXJuaW5nLCBzdXBwb3J0aW5nIEFmcmljYW4gY29hY2hlcywgYW5kIGJ1aWxkaW5nIHNvdmVyZWlnbiBkaWdpdGFsIGFjYWRlbWllcy4gRXhwbG9yZSBteSBjb2hvcnQgam91cm5leXMgYW5kIGhvbWV3b3JrIHBvcnRmb2xpb3MuIj4KICAgIDxtZXRhIG5hbWU9InJvYm90cyIgY29udGVudD0iaW5kZXgsIGZvbGxvdywgbm9hcmNoaXZlLCBub2ltYWdlaW5kZXgiPgogICAgPG1ldGEgcHJvcGVydHk9Im9nOnVybCIgY29udGVudD0iaHR0cHM6Ly9keW5hbWljcGFyYWRpZ21zYWNhZGVteS5jb20vbXlqb3VybmV5Ij4KICAgIDxsaW5rIHJlbD0iY2Fub25pY2FsIiBocmVmPSJodHRwczovL2R5bmFtaWNwYXJhZGlnbXNhY2FkZW15LmNvbS9teWpvdXJuZXkiPgogICAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1QbGF5ZmFpcitEaXNwbGF5OndnaHRANDAwOzUwMDs2MDA7NzAwJmZhbWlseT1Db3Jtb3JhbnQrR2FyYW1vbmQ6aXRhbCx3Z2h0QDAsNDAwOzAsNTAwOzAsNjAwOzEsNDAwJmZhbWlseT1OdW5pdG86d2dodEAzMDA7NDAwOzUwMDs2MDA7NzAwJmRpc3BsYXk9c3dhcCIgcmVsPSJzdHlsZXNoZWV0Ij4KICAgIDxzdHlsZT4KICAgICAgICA6cm9vdCB7CiAgICAgICAgICAgIC0tbmF2eTogIzBEMUIyQTsKICAgICAgICAgICAgLS1pbmRpZ286ICMxQzFGNEE7CiAgICAgICAgICAgIC0tZ29sZDogI0Q0QUYzNzsKICAgICAgICAgICAgLS1yb3NlZ29sZDogI0MyOUE4QjsKICAgICAgICAgICAgLS1pdm9yeTogI0Y4RjRFQzsKICAgICAgICAgICAgLS1kZWVwZ29sZDogI0I4OTcyRTsKICAgICAgICAgICAgLS1saWdodGdvbGQ6ICNFOEQ1QTM7CiAgICAgICAgICAgIC0tc2hhZG93bmF2eTogcmdiYSgxMywgMjcsIDQyLCAwLjk1KTsKICAgICAgICAgICAgLS10ZWFsOiAjMDA4OTdiOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAqIHsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9CiAgICAgICAgaHRtbCB7IHNjcm9sbC1iZWhhdmlvcjogc21vb3RoOyB9CiAgICAgICAgCiAgICAgICAgYm9keSB7CiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnTnVuaXRvJywgc2Fucy1zZXJpZjsKICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbmF2eSk7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pdm9yeSk7CiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDsKICAgICAgICAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qIFdhdGVybWFyayAqLwogICAgICAgIC53YXRlcm1hcmsgewogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7IHRvcDogMDsgbGVmdDogMDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsKICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IHotaW5kZXg6IDk5OTk7IG9wYWNpdHk6IDAuMDE1OwogICAgICAgIH0KICAgICAgICAud2F0ZXJtYXJrOjpiZWZvcmUgewogICAgICAgICAgICBjb250ZW50OiAnwqkgVGhlIFNIRSBFLUJvc3MgU29sdXRpb25pc3TihKIg4oCiIExpZmVsb25nIExlYXJuZXIg4oCiIEVtcGlyZSBCdWlsZGVyJzsKICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDUwJTsgbGVmdDogNTAlOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoLTI1ZGVnKTsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07IGNvbG9yOiByZ2JhKDIxMiwgMTc1LCA1NSwgMC4wNSk7CiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIEBtZWRpYSBwcmludCB7IGJvZHkgKiB7IHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50OyB9IH0KICAgICAgICAKICAgICAgICAvKiBHZW9tZXRyaWMgUGF0dGVybiAqLwogICAgICAgIC5nZW9wYXR0ZXJuIHsKICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkOyB0b3A6IDA7IGxlZnQ6IDA7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7CiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB6LWluZGV4OiAwOyBvcGFjaXR5OiAwLjAyNTsKICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogCiAgICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMzBkZWcsIHZhcigtLWdvbGQpIDFweCwgdHJhbnNwYXJlbnQgMXB4KSwKICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgtMzBkZWcsIHZhcigtLWdvbGQpIDFweCwgdHJhbnNwYXJlbnQgMXB4KSwKICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxNTBkZWcsIHZhcigtLWdvbGQpIDFweCwgdHJhbnNwYXJlbnQgMXB4KSwKICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgtMTUwZGVnLCB2YXIoLS1nb2xkKSAxcHgsIHRyYW5zcGFyZW50IDFweCk7CiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogODBweCAxMzhweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLyogRmxvYXRpbmcgT3JicyAqLwogICAgICAgIC5vcmIgeyBwb3NpdGlvbjogZml4ZWQ7IGJvcmRlci1yYWRpdXM6IDUwJTsgZmlsdGVyOiBibHVyKDEwMHB4KTsgcG9pbnRlci1ldmVudHM6IG5vbmU7IHotaW5kZXg6IDA7IH0KICAgICAgICAub3JiMSB7IHdpZHRoOiA3MDBweDsgaGVpZ2h0OiA3MDBweDsgYmFja2dyb3VuZDogdmFyKC0tZ29sZCk7IG9wYWNpdHk6IDAuMTI7IHRvcDogLTI1MHB4OyByaWdodDogLTI1MHB4OyBhbmltYXRpb246IGZsb2F0T3JiMSAyNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7IH0KICAgICAgICAub3JiMiB7IHdpZHRoOiA1MDBweDsgaGVpZ2h0OiA1MDBweDsgYmFja2dyb3VuZDogdmFyKC0tcm9zZWdvbGQpOyBvcGFjaXR5OiAwLjE7IGJvdHRvbTogMTAlOyBsZWZ0OiAtMjAwcHg7IGFuaW1hdGlvbjogZmxvYXRPcmIyIDMwcyBlYXNlLWluLW91dCBpbmZpbml0ZTsgfQogICAgICAgIC5vcmIzIHsgd2lkdGg6IDQwMHB4OyBoZWlnaHQ6IDQwMHB4OyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS10ZWFsKSwgdmFyKC0tZ29sZCkpOyBvcGFjaXR5OiAwLjA4OyB0b3A6IDQwJTsgbGVmdDogNjAlOyBhbmltYXRpb246IGZsb2F0T3JiMyAyMHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7IH0KICAgICAgICAub3JiNCB7IHdpZHRoOiAzMDBweDsgaGVpZ2h0OiAzMDBweDsgYmFja2dyb3VuZDogdmFyKC0tcm9zZWdvbGQpOyBvcGFjaXR5OiAwLjE7IHRvcDogNzAlOyByaWdodDogMTAlOyBhbmltYXRpb246IGZsb2F0T3JiMSAyMnMgZWFzZS1pbi1vdXQgaW5maW5pdGUgcmV2ZXJzZTsgfQogICAgICAgIAogICAgICAgIEBrZXlmcmFtZXMgZmxvYXRPcmIxIHsKICAgICAgICAgICAgMCUsIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKSBzY2FsZSgxKTsgfQogICAgICAgICAgICAyNSUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0MHB4LCAtNDBweCkgc2NhbGUoMS4wNSk7IH0KICAgICAgICAgICAgNTAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTMwcHgsIDMwcHgpIHNjYWxlKDAuOTUpOyB9CiAgICAgICAgICAgIDc1JSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlKDMwcHgsIDQwcHgpIHNjYWxlKDEuMDIpOyB9CiAgICAgICAgfQogICAgICAgIEBrZXlmcmFtZXMgZmxvYXRPcmIyIHsKICAgICAgICAgICAgMCUsIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKSByb3RhdGUoMGRlZyk7IH0KICAgICAgICAgICAgNTAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTBweCwgLTUwcHgpIHJvdGF0ZSgxODBkZWcpOyB9CiAgICAgICAgfQogICAgICAgIEBrZXlmcmFtZXMgZmxvYXRPcmIzIHsKICAgICAgICAgICAgMCUsIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKSBzY2FsZSgxKTsgb3BhY2l0eTogMC4wODsgfQogICAgICAgICAgICA1MCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNDBweCwgNDBweCkgc2NhbGUoMS4xKTsgb3BhY2l0eTogMC4xMjsgfQogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiBGbG9hdGluZyBCb3RhbmljYWxzICovCiAgICAgICAgLmJvdGFuaWNhbCB7IHBvc2l0aW9uOiBmaXhlZDsgcG9pbnRlci1ldmVudHM6IG5vbmU7IHotaW5kZXg6IDE7IG9wYWNpdHk6IDAuMDQ7IGZvbnQtc2l6ZTogNHJlbTsgfQogICAgICAgIC5ib3RhbmljYWwxIHsgdG9wOiAxNSU7IGxlZnQ6IDUlOyBhbmltYXRpb246IGZsb2F0Qm90YW5pY2FsIDE1cyBlYXNlLWluLW91dCBpbmZpbml0ZTsgfQogICAgICAgIC5ib3RhbmljYWwyIHsgdG9wOiA2MCU7IHJpZ2h0OiA4JTsgYW5pbWF0aW9uOiBmbG9hdEJvdGFuaWNhbCAxOHMgZWFzZS1pbi1vdXQgaW5maW5pdGUgcmV2ZXJzZTsgfQogICAgICAgIC5ib3RhbmljYWwzIHsgYm90dG9tOiAyMCU7IGxlZnQ6IDEyJTsgYW5pbWF0aW9uOiBmbG9hdEJvdGFuaWNhbCAyMHMgZWFzZS1pbi1vdXQgaW5maW5pdGUgMnM7IH0KICAgICAgICAuYm90YW5pY2FsNCB7IHRvcDogMzUlOyByaWdodDogMTUlOyBhbmltYXRpb246IGZsb2F0Qm90YW5pY2FsIDE3cyBlYXNlLWluLW91dCBpbmZpbml0ZSAxczsgfQogICAgICAgIAogICAgICAgIEBrZXlmcmFtZXMgZmxvYXRCb3RhbmljYWwgewogICAgICAgICAgICAwJSwgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSByb3RhdGUoMGRlZyk7IH0KICAgICAgICAgICAgNTAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KSByb3RhdGUoMTBkZWcpOyB9CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qIE5hdmlnYXRpb24gKi8KICAgICAgICAudG9wbmF2IHsKICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkOyB0b3A6IDA7IGxlZnQ6IDA7IHJpZ2h0OiAwOyB6LWluZGV4OiAxMDAwOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zaGFkb3duYXZ5KTsgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDI1cHgpOwogICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDQwcHg7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjEyLCAxNzUsIDU1LCAwLjEpOwogICAgICAgIH0KICAgICAgICAubmF2bG9nbyB7CiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUGxheWZhaXIgRGlzcGxheScsIHNlcmlmOwogICAgICAgICAgICBmb250LXNpemU6IDAuOTVyZW07IGNvbG9yOiB2YXIoLS1nb2xkKTsKICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgICAgIH0KICAgICAgICAubmF2bGlua3MgeyBkaXNwbGF5OiBmbGV4OyBnYXA6IDE1cHg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0KICAgICAgICAubmF2bGluayB7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pdm9yeSk7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtOyBsZXR0ZXItc3BhY2luZzogMXB4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgICAgICAgICBwYWRkaW5nOiA4cHggMThweDsgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7IHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7CiAgICAgICAgfQogICAgICAgIC5uYXZsaW5rOmhvdmVyIHsgYm9yZGVyLWNvbG9yOiByZ2JhKDIxMiwgMTc1LCA1NSwgMC4zKTsgY29sb3I6IHZhcigtLWdvbGQpOyB9CiAgICAgICAgLm5hdmxpbmsucHJpbWFyeSB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLWdvbGQpLCB2YXIoLS1kZWVwZ29sZCkpOwogICAgICAgICAgICBjb2xvcjogdmFyKC0tbmF2eSk7IGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgfQogICAgICAgIC5uYXZsaW5rLnByaW1hcnk6aG92ZXIgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7IGJveC1zaGFkb3c6IDAgOHB4IDI1cHggcmdiYSgyMTIsIDE3NSwgNTUsIDAuMyk7IH0KICAgICAgICAKICAgICAgICAvKiBQb3dlcmVkIEJ5IEJhbm5lciAqLwogICAgICAgIC5wb3dlcmVkLWJhbm5lciB7CiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgICAgICAgdG9wOiA2MHB4OwogICAgICAgICAgICBsZWZ0OiAwOyByaWdodDogMDsKICAgICAgICAgICAgei1pbmRleDogOTk5OwogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHZhcigtLW5hdnkpLCB2YXIoLS1pbmRpZ28pLCB2YXIoLS1uYXZ5KSk7CiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDIxMiwgMTc1LCA1NSwgMC4xKTsKICAgICAgICAgICAgcGFkZGluZzogOHB4IDIwcHg7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICB9CiAgICAgICAgLnBvd2VyZWQtdGV4dCB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC42NXJlbTsKICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDsKICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKICAgICAgICAgICAgY29sb3I6IHJnYmEoMjQ4LCAyNDQsIDIzNiwgMC42KTsKICAgICAgICB9CiAgICAgICAgLnBvd2VyZWQtdGV4dCBzdHJvbmcgewogICAgICAgICAgICBjb2xvcjogdmFyKC0tZ29sZCk7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgICAgICAgICAgU0NST0xMSU5HIFFVT1RFUyBCQU5ORVIKICAgICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwogICAgICAgIC5xdW90ZXMtYmFubmVyIHsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCB2YXIoLS1pbmRpZ28pLCB2YXIoLS1uYXZ5KSwgdmFyKC0taW5kaWdvKSk7CiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDIxMiwgMTc1LCA1NSwgMC4xNSk7CiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDIxMiwgMTc1LCA1NSwgMC4xNSk7CiAgICAgICAgICAgIHBhZGRpbmc6IDE4cHggMDsKICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgICBtYXJnaW4tdG9wOiA5NXB4OwogICAgICAgIH0KICAgICAgICAucXVvdGVzLXRyYWNrIHsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgYW5pbWF0aW9uOiBzY3JvbGxRdW90ZXMgNjBzIGxpbmVhciBpbmZpbml0ZTsKICAgICAgICAgICAgd2lkdGg6IG1heC1jb250ZW50OwogICAgICAgIH0KICAgICAgICAucXVvdGVzLXRyYWNrOmhvdmVyIHsgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZDsgfQogICAgICAgIAogICAgICAgIC5xdW90ZS1pdGVtIHsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgICAgZ2FwOiAxNXB4OwogICAgICAgICAgICBwYWRkaW5nOiAwIDUwcHg7CiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgICAgfQogICAgICAgIC5xdW90ZS1pY29uIHsKICAgICAgICAgICAgY29sb3I6IHZhcigtLWdvbGQpOwogICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTsKICAgICAgICB9CiAgICAgICAgLnF1b3RlLXRleHQgewogICAgICAgICAgICBmb250LWZhbWlseTogJ0Nvcm1vcmFudCBHYXJhbW9uZCcsIHNlcmlmOwogICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTsKICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICAgICAgICBjb2xvcjogdmFyKC0taXZvcnkpOwogICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7CiAgICAgICAgfQogICAgICAgIC5xdW90ZS1kaXZpZGVyIHsKICAgICAgICAgICAgY29sb3I6IHZhcigtLXJvc2Vnb2xkKTsKICAgICAgICAgICAgb3BhY2l0eTogMC40OwogICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgQGtleWZyYW1lcyBzY3JvbGxRdW90ZXMgewogICAgICAgICAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfQogICAgICAgICAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgICAgICAgICAgSEVSTyBTRUNUSU9OCiAgICAgICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KICAgICAgICAuaGVybyB7CiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDkwdmg7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgIHBhZGRpbmc6IDEwMHB4IDQwcHggODBweDsKICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAxOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuaGVyby1iYWRnZSB7CiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDEycHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjEyLCAxNzUsIDU1LCAwLjEpOwogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nb2xkKTsKICAgICAgICAgICAgY29sb3I6IHZhcigtLWdvbGQpOwogICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDMwcHg7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43cmVtOyBsZXR0ZXItc3BhY2luZzogNHB4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4OwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OwogICAgICAgICAgICBhbmltYXRpb246IGZhZGVJblVwIDFzIGVhc2UgZm9yd2FyZHMgMC4yczsgb3BhY2l0eTogMDsKICAgICAgICB9CiAgICAgICAgLmhlcm8tYmFkZ2UgLmJhZGdlLWljb24geyBmb250LXNpemU6IDEuM3JlbTsgfQogICAgICAgIAogICAgICAgIC5oZXJvLXRpdGxlIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMi41cmVtLCA3dncsIDVyZW0pOwogICAgICAgICAgICBmb250LXdlaWdodDogNDAwOyBsaW5lLWhlaWdodDogMS4xOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OwogICAgICAgICAgICBhbmltYXRpb246IGZhZGVJblVwIDFzIGVhc2UgZm9yd2FyZHMgMC40czsgb3BhY2l0eTogMDsKICAgICAgICB9CiAgICAgICAgLmhlcm8tdGl0bGUgc3BhbiB7CiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1nb2xkKSwgdmFyKC0tbGlnaHRnb2xkKSwgdmFyKC0tcm9zZWdvbGQpLCB2YXIoLS1nb2xkKSk7CiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzAwJSAzMDAlOwogICAgICAgICAgICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDsgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50OwogICAgICAgICAgICBhbmltYXRpb246IHNoaW1tZXIgOHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIEBrZXlmcmFtZXMgc2hpbW1lciB7CiAgICAgICAgICAgIDAlLCAxMDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgNTAlOyB9CiAgICAgICAgICAgIDUwJSB7IGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlOyB9CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5oZXJvLXN1YnRpdGxlIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdDb3Jtb3JhbnQgR2FyYW1vbmQnLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjNyZW0sIDIuNXZ3LCAxLjhyZW0pOwogICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7IGNvbG9yOiB2YXIoLS1yb3NlZ29sZCk7CiAgICAgICAgICAgIG1heC13aWR0aDogNzUwcHg7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7CiAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgMXMgZWFzZSBmb3J3YXJkcyAwLjZzOyBvcGFjaXR5OiAwOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuaGVyby1kZXNjcmlwdGlvbiB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4wNXJlbTsgY29sb3I6IHJnYmEoMjQ4LCAyNDQsIDIzNiwgMC44KTsKICAgICAgICAgICAgbWF4LXdpZHRoOiA3MDBweDsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsKICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTsKICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5VcCAxcyBlYXNlIGZvcndhcmRzIDAuOHM7IG9wYWNpdHk6IDA7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5oZXJvLXN0YXRzIHsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsgZ2FwOiA0MHB4OyBmbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OwogICAgICAgICAgICBhbmltYXRpb246IGZhZGVJblVwIDFzIGVhc2UgZm9yd2FyZHMgMXM7IG9wYWNpdHk6IDA7CiAgICAgICAgfQogICAgICAgIC5zdGF0LWl0ZW0geyB0ZXh0LWFsaWduOiBjZW50ZXI7IH0KICAgICAgICAuc3RhdC1udW1iZXIgewogICAgICAgICAgICBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1nb2xkKTsKICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7CiAgICAgICAgfQogICAgICAgIC5zdGF0LWxhYmVsIHsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjdyZW07CiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7CiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI0OCwgMjQ0LCAyMzYsIDAuNik7CiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLmhlcm8tY3RhIHsKICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogMTJweDsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tZ29sZCksIHZhcigtLWRlZXBnb2xkKSk7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1uYXZ5KTsKICAgICAgICAgICAgcGFkZGluZzogMThweCA0NXB4OwogICAgICAgICAgICBmb250LXNpemU6IDAuODVyZW07IGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYm9yZGVyLXJhZGl1czogNTBweDsKICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZTsKICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxNXB4IDQwcHggcmdiYSgyMTIsIDE3NSwgNTUsIDAuMyk7CiAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgMXMgZWFzZSBmb3J3YXJkcyAxLjJzOyBvcGFjaXR5OiAwOwogICAgICAgIH0KICAgICAgICAuaGVyby1jdGE6aG92ZXIgewogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMjVweCA2MHB4IHJnYmEoMjEyLCAxNzUsIDU1LCAwLjQpOwogICAgICAgIH0KICAgICAgICAuaGVyby1jdGEgLmFycm93IHsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTsgfQogICAgICAgIC5oZXJvLWN0YTpob3ZlciAuYXJyb3cgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTsgfQogICAgICAgIAogICAgICAgIEBrZXlmcmFtZXMgZmFkZUluVXAgewogICAgICAgICAgICBmcm9tIHsgb3BhY2l0eTogMDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpOyB9CiAgICAgICAgICAgIHRvIHsgb3BhY2l0eTogMTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgICAgICAgICAgUEhJTE9TT1BIWSBTRUNUSU9OCiAgICAgICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KICAgICAgICAucGhpbG9zb3BoeS1zZWN0aW9uIHsKICAgICAgICAgICAgcGFkZGluZzogMTAwcHggNDBweDsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgdHJhbnNwYXJlbnQsIHJnYmEoMjgsIDMxLCA3NCwgMC40KSwgdHJhbnNwYXJlbnQpOwogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDE7CiAgICAgICAgfQogICAgICAgIC5jb250YWluZXIgeyBtYXgtd2lkdGg6IDEyMDBweDsgbWFyZ2luOiAwIGF1dG87IH0KICAgICAgICAKICAgICAgICAuc2VjdGlvbi1oZWFkZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDYwcHg7IH0KICAgICAgICAuc2VjdGlvbi1sYWJlbCB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43cmVtOyBsZXR0ZXItc3BhY2luZzogNHB4OwogICAgICAgICAgICBjb2xvcjogdmFyKC0tZ29sZCk7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7CiAgICAgICAgfQogICAgICAgIC5zZWN0aW9uLXRpdGxlIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMnJlbSwgNXZ3LCAzLjVyZW0pOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OwogICAgICAgIH0KICAgICAgICAuc2VjdGlvbi1zdWJ0aXRsZSB7CiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnQ29ybW9yYW50IEdhcmFtb25kJywgc2VyaWY7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtOyBmb250LXN0eWxlOiBpdGFsaWM7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1yb3NlZ29sZCk7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5waGlsb3NvcGh5LWdyaWQgewogICAgICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpOwogICAgICAgICAgICBnYXA6IDMwcHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5waGlsb3NvcGh5LWNhcmQgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCByZ2JhKDEzLCAyNywgNDIsIDAuOSksIHJnYmEoMjgsIDMxLCA3NCwgMC41KSk7CiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjEyLCAxNzUsIDU1LCAwLjE1KTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDsKICAgICAgICAgICAgcGFkZGluZzogNDBweCAzMHB4OwogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2U7CiAgICAgICAgfQogICAgICAgIC5waGlsb3NvcGh5LWNhcmQ6aG92ZXIgewogICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdvbGQpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwogICAgICAgICAgICBib3gtc2hhZG93OiAwIDMwcHggNjBweCByZ2JhKDAsIDAsIDAsIDAuMyk7CiAgICAgICAgfQogICAgICAgIC5waGlsb3NvcGh5LWljb24gewogICAgICAgICAgICBmb250LXNpemU6IDNyZW07CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7CiAgICAgICAgfQogICAgICAgIC5waGlsb3NvcGh5LXRpdGxlIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtOwogICAgICAgICAgICBjb2xvcjogdmFyKC0tZ29sZCk7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7CiAgICAgICAgfQogICAgICAgIC5waGlsb3NvcGh5LXRleHQgewogICAgICAgICAgICBmb250LXNpemU6IDAuOTVyZW07CiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI0OCwgMjQ0LCAyMzYsIDAuNzUpOwogICAgICAgICAgICBsaW5lLWhlaWdodDogMS44OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICAgICAgICAgIENPSE9SVFMgU0VDVElPTgogICAgICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCiAgICAgICAgLmNvaG9ydHMtc2VjdGlvbiB7CiAgICAgICAgICAgIHBhZGRpbmc6IDEwMHB4IDQwcHg7CiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogMTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLmNvaG9ydHMtZ3JpZCB7CiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7CiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMzUwcHgsIDFmcikpOwogICAgICAgICAgICBnYXA6IDMwcHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5jb2hvcnQtY2FyZCB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNDVkZWcsIHJnYmEoMTMsIDI3LCA0MiwgMC45NSksIHJnYmEoMjgsIDMxLCA3NCwgMC42KSk7CiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjEyLCAxNzUsIDU1LCAwLjIpOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyNXB4OwogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlOwogICAgICAgIH0KICAgICAgICAuY29ob3J0LWNhcmQ6aG92ZXIgewogICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdvbGQpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMzBweCA3MHB4IHJnYmEoMCwgMCwgMCwgMC40KTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLmNvaG9ydC1oZWFkZXIgewogICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDMwcHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoMjEyLCAxNzUsIDU1LCAwLjE1KSwgcmdiYSgyMTIsIDE3NSwgNTUsIDAuMDUpKTsKICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjEyLCAxNzUsIDU1LCAwLjEpOwogICAgICAgICAgICBkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgfQogICAgICAgIC5jb2hvcnQtYmFkZ2UgewogICAgICAgICAgICBmb250LXNpemU6IDAuNjVyZW07IGxldHRlci1zcGFjaW5nOiAycHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1nb2xkKTsKICAgICAgICB9CiAgICAgICAgLmNvaG9ydC1zdGF0dXMgewogICAgICAgICAgICBmb250LXNpemU6IDAuNnJlbTsgbGV0dGVyLXNwYWNpbmc6IDFweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKICAgICAgICAgICAgcGFkZGluZzogNXB4IDEycHg7IGJvcmRlci1yYWRpdXM6IDE1cHg7CiAgICAgICAgfQogICAgICAgIC5jb2hvcnQtc3RhdHVzLmNvbXBsZXRlZCB7IGJhY2tncm91bmQ6IHJnYmEoMCwgMTM3LCAxMjMsIDAuMik7IGNvbG9yOiB2YXIoLS10ZWFsKTsgfQogICAgICAgIC5jb2hvcnQtc3RhdHVzLmN1cnJlbnQgeyBiYWNrZ3JvdW5kOiByZ2JhKDIxMiwgMTc1LCA1NSwgMC4yKTsgY29sb3I6IHZhcigtLWdvbGQpOyB9CiAgICAgICAgCiAgICAgICAgLmNvaG9ydC1ib2R5IHsgcGFkZGluZzogMzBweDsgfQogICAgICAgIAogICAgICAgIC5jb2hvcnQtaWNvbiB7IGZvbnQtc2l6ZTogMi41cmVtOyBtYXJnaW4tYm90dG9tOiAxNXB4OyB9CiAgICAgICAgCiAgICAgICAgLmNvaG9ydC1uYW1lIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtOwogICAgICAgICAgICBjb2xvcjogdmFyKC0taXZvcnkpOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5jb2hvcnQtY29hY2ggewogICAgICAgICAgICBmb250LXNpemU6IDAuODVyZW07CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1yb3NlZ29sZCk7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5jb2hvcnQtZGVzY3JpcHRpb24gewogICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTsKICAgICAgICAgICAgY29sb3I6IHJnYmEoMjQ4LCAyNDQsIDIzNiwgMC43KTsKICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNzsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLmNvaG9ydC1tZXRhIHsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsgZ2FwOiAyMHB4OyBmbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7CiAgICAgICAgfQogICAgICAgIC5tZXRhLWl0ZW0gewogICAgICAgICAgICBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDhweDsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtOwogICAgICAgICAgICBjb2xvcjogcmdiYSgyNDgsIDI0NCwgMjM2LCAwLjYpOwogICAgICAgIH0KICAgICAgICAubWV0YS1pY29uIHsgY29sb3I6IHZhcigtLWdvbGQpOyB9CiAgICAgICAgCiAgICAgICAgLmNvaG9ydC1hY3Rpb25zIHsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsgZ2FwOiAxMnB4OyBmbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgfQogICAgICAgIC5jb2hvcnQtYnRuIHsKICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogOHB4OwogICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDIycHg7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBib3JkZXItcmFkaXVzOiAyNXB4OwogICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOwogICAgICAgIH0KICAgICAgICAuY29ob3J0LWJ0bi5wcmltYXJ5IHsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tZ29sZCksIHZhcigtLWRlZXBnb2xkKSk7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1uYXZ5KTsKICAgICAgICB9CiAgICAgICAgLmNvaG9ydC1idG4ucHJpbWFyeTpob3ZlciB7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsKICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxMHB4IDI1cHggcmdiYSgyMTIsIDE3NSwgNTUsIDAuMyk7CiAgICAgICAgfQogICAgICAgIC5jb2hvcnQtYnRuLnNlY29uZGFyeSB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIxMiwgMTc1LCA1NSwgMC4zKTsKICAgICAgICAgICAgY29sb3I6IHZhcigtLWdvbGQpOwogICAgICAgIH0KICAgICAgICAuY29ob3J0LWJ0bi5zZWNvbmRhcnk6aG92ZXIgewogICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdvbGQpOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIxMiwgMTc1LCA1NSwgMC4xKTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLnZpZGVvLXBsYWNlaG9sZGVyIHsKICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDsKICAgICAgICAgICAgcGFkZGluZzogMjBweDsKICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgxMywgMjcsIDQyLCAwLjUpOwogICAgICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgcmdiYSgyMTIsIDE3NSwgNTUsIDAuMik7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICB9CiAgICAgICAgLnZpZGVvLXBsYWNlaG9sZGVyLWljb24geyBmb250LXNpemU6IDJyZW07IG1hcmdpbi1ib3R0b206IDEwcHg7IG9wYWNpdHk6IDAuNTsgfQogICAgICAgIC52aWRlby1wbGFjZWhvbGRlci10ZXh0IHsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtOwogICAgICAgICAgICBjb2xvcjogcmdiYSgyNDgsIDI0NCwgMjM2LCAwLjQpOwogICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgICAgICAgICAgQUNBREVNWSBPRkZFUklOR1MgU0VDVElPTgogICAgICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCiAgICAgICAgLm9mZmVyaW5ncy1zZWN0aW9uIHsKICAgICAgICAgICAgcGFkZGluZzogMTAwcHggNDBweDsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0taW5kaWdvKSwgdmFyKC0tbmF2eSkpOwogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDE7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5vZmZlcmluZ3MtaW50cm8gewogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgIG1heC13aWR0aDogODAwcHg7CiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDYwcHg7CiAgICAgICAgfQogICAgICAgIC5vZmZlcmluZ3MtaW50cm8gcCB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4wNXJlbTsKICAgICAgICAgICAgY29sb3I6IHJnYmEoMjQ4LCAyNDQsIDIzNiwgMC44KTsKICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLm9mZmVyaW5ncy1ncmlkIHsKICAgICAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyODBweCwgMWZyKSk7CiAgICAgICAgICAgIGdhcDogMjVweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLm9mZmVyaW5nLWNhcmQgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCByZ2JhKDEzLCAyNywgNDIsIDAuOCksIHJnYmEoMjgsIDMxLCA3NCwgMC40KSk7CiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjEyLCAxNzUsIDU1LCAwLjE1KTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDsKICAgICAgICAgICAgcGFkZGluZzogMzVweCAzMHB4OwogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2U7CiAgICAgICAgfQogICAgICAgIC5vZmZlcmluZy1jYXJkOmhvdmVyIHsKICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDIxMiwgMTc1LCA1NSwgMC40KTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwogICAgICAgIH0KICAgICAgICAub2ZmZXJpbmctaWNvbiB7IGZvbnQtc2l6ZTogMi41cmVtOyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9CiAgICAgICAgLm9mZmVyaW5nLXRpdGxlIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtOwogICAgICAgICAgICBjb2xvcjogdmFyKC0tZ29sZCk7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7CiAgICAgICAgfQogICAgICAgIC5vZmZlcmluZy10ZXh0IHsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07CiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI0OCwgMjQ0LCAyMzYsIDAuNyk7CiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgICAgICAgICAgQ1RBIFNFQ1RJT04KICAgICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwogICAgICAgIC5jdGEtc2VjdGlvbiB7CiAgICAgICAgICAgIHBhZGRpbmc6IDEwMHB4IDQwcHg7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAxOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuY3RhLWNhcmQgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCByZ2JhKDEzLCAyNywgNDIsIDAuOTUpLCByZ2JhKDI4LCAzMSwgNzQsIDAuNikpOwogICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1nb2xkKTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDsKICAgICAgICAgICAgcGFkZGluZzogNjBweDsKICAgICAgICAgICAgbWF4LXdpZHRoOiA4MDBweDsKICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMzBweCA4MHB4IHJnYmEoMjEyLCAxNzUsIDU1LCAwLjE1KTsKICAgICAgICB9CiAgICAgICAgLmN0YS1jYXJkIGgyIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMS44cmVtLCA0dncsIDIuNXJlbSk7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7CiAgICAgICAgfQogICAgICAgIC5jdGEtY2FyZCBwIHsKICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtOwogICAgICAgICAgICBjb2xvcjogcmdiYSgyNDgsIDI0NCwgMjM2LCAwLjc1KTsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDsKICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODsKICAgICAgICB9CiAgICAgICAgLmN0YS1idXR0b25zIHsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsgZ2FwOiAyMHB4OwogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgZmxleC13cmFwOiB3cmFwOwogICAgICAgIH0KICAgICAgICAuY3RhLWJ0biB7CiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDEwcHg7CiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMzVweDsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07IGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYm9yZGVyLXJhZGl1czogMzBweDsKICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZTsKICAgICAgICB9CiAgICAgICAgLmN0YS1idG4ucHJpbWFyeSB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLWdvbGQpLCB2YXIoLS1kZWVwZ29sZCkpOwogICAgICAgICAgICBjb2xvcjogdmFyKC0tbmF2eSk7CiAgICAgICAgfQogICAgICAgIC5jdGEtYnRuLnByaW1hcnk6aG92ZXIgewogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCk7CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMTVweCA0MHB4IHJnYmEoMjEyLCAxNzUsIDU1LCAwLjQpOwogICAgICAgIH0KICAgICAgICAuY3RhLWJ0bi5zZWNvbmRhcnkgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyMTIsIDE3NSwgNTUsIDAuNCk7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pdm9yeSk7CiAgICAgICAgfQogICAgICAgIC5jdGEtYnRuLnNlY29uZGFyeTpob3ZlciB7CiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ29sZCk7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1nb2xkKTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICAgICAgICAgICBGT09URVIKICAgICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwogICAgICAgIC5mb290ZXIgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1uYXZ5KTsKICAgICAgICAgICAgcGFkZGluZzogNjBweCA0MHB4IDMwcHg7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjEyLCAxNzUsIDU1LCAwLjEpOwogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDE7CiAgICAgICAgfQogICAgICAgIC5mb290ZXItbG9nbyB7CiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUGxheWZhaXIgRGlzcGxheScsIHNlcmlmOwogICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTsKICAgICAgICAgICAgY29sb3I6IHZhcigtLWdvbGQpOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OwogICAgICAgIH0KICAgICAgICAuZm9vdGVyLXRhZ2xpbmUgewogICAgICAgICAgICBmb250LWZhbWlseTogJ0Nvcm1vcmFudCBHYXJhbW9uZCcsIHNlcmlmOwogICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1yb3NlZ29sZCk7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7CiAgICAgICAgfQogICAgICAgIC5mb290ZXItZGl2aWRlciB7CiAgICAgICAgICAgIHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxcHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgdHJhbnNwYXJlbnQsIHZhcigtLWdvbGQpLCB0cmFuc3BhcmVudCk7CiAgICAgICAgICAgIG1hcmdpbjogMjVweCBhdXRvOwogICAgICAgIH0KICAgICAgICAuZm9vdGVyLWNvcHlyaWdodCB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43cmVtOwogICAgICAgICAgICBjb2xvcjogcmdiYSgyNDgsIDI0NCwgMjM2LCAwLjQpOwogICAgICAgICAgICBsaW5lLWhlaWdodDogMS44OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiBTaGFyZSBTZWN0aW9uICovCiAgICAgICAgLnNoYXJlLXNlY3Rpb24gewogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI4LCAzMSwgNzQsIDAuNCk7CiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjEyLCAxNzUsIDU1LCAwLjE1KTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDsKICAgICAgICAgICAgcGFkZGluZzogMjVweCAzMHB4OwogICAgICAgICAgICBtYXgtd2lkdGg6IDQ1MHB4OwogICAgICAgICAgICBtYXJnaW46IDMwcHggYXV0bzsKICAgICAgICB9CiAgICAgICAgLnNoYXJlLWhlYWRsaW5lIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtOwogICAgICAgICAgICBjb2xvcjogdmFyKC0taXZvcnkpOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgICAgfQogICAgICAgIC5zaGFyZS1zdWJ0ZXh0IHsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07CiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI0OCwgMjQ0LCAyMzYsIDAuNik7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7CiAgICAgICAgfQogICAgICAgIC5zaGFyZS1idXR0b25zIHsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsgZ2FwOiAxMnB4OwogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgZmxleC13cmFwOiB3cmFwOwogICAgICAgIH0KICAgICAgICAuc2hhcmUtYnRuIHsKICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogOHB4OwogICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDIwcHg7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtOyBmb250LXdlaWdodDogNTAwOwogICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICAgICAgYm9yZGVyOiBub25lOwogICAgICAgICAgICBmb250LWZhbWlseTogJ051bml0bycsIHNhbnMtc2VyaWY7CiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7CiAgICAgICAgfQogICAgICAgIC5zaGFyZS1idG4ud2hhdHNhcHAgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDM3LCAyMTEsIDEwMiwgMC4xNSk7CiAgICAgICAgICAgIGNvbG9yOiAjMjVEMzY2OwogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM3LCAyMTEsIDEwMiwgMC4zKTsKICAgICAgICB9CiAgICAgICAgLnNoYXJlLWJ0bi53aGF0c2FwcDpob3ZlciB7IGJhY2tncm91bmQ6ICMyNUQzNjY7IGNvbG9yOiB3aGl0ZTsgfQogICAgICAgIC5zaGFyZS1idG4ubGlua2VkaW4gewogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDEwLCAxMDIsIDE5NCwgMC4xNSk7CiAgICAgICAgICAgIGNvbG9yOiAjMEE2NkMyOwogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwLCAxMDIsIDE5NCwgMC4zKTsKICAgICAgICB9CiAgICAgICAgLnNoYXJlLWJ0bi5saW5rZWRpbjpob3ZlciB7IGJhY2tncm91bmQ6ICMwQTY2QzI7IGNvbG9yOiB3aGl0ZTsgfQogICAgICAgIC5zaGFyZS1idG4uY29weSB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjEyLCAxNzUsIDU1LCAwLjEpOwogICAgICAgICAgICBjb2xvcjogdmFyKC0tZ29sZCk7CiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjEyLCAxNzUsIDU1LCAwLjMpOwogICAgICAgIH0KICAgICAgICAuc2hhcmUtYnRuLmNvcHk6aG92ZXIgeyBiYWNrZ3JvdW5kOiB2YXIoLS1nb2xkKTsgY29sb3I6IHZhcigtLW5hdnkpOyB9CiAgICAgICAgCiAgICAgICAgLyogUmVzcG9uc2l2ZSAqLwogICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkgewogICAgICAgICAgICAucGhpbG9zb3BoeS1ncmlkIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH0KICAgICAgICAgICAgLmNvaG9ydHMtZ3JpZCB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyB9CiAgICAgICAgfQogICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkgewogICAgICAgICAgICAudG9wbmF2IHsgcGFkZGluZzogMTJweCAyMHB4OyB9CiAgICAgICAgICAgIC5uYXZsaW5rcyB7IGdhcDogMTBweDsgfQogICAgICAgICAgICAubmF2bGluayB7IHBhZGRpbmc6IDZweCAxMnB4OyBmb250LXNpemU6IDAuNjVyZW07IH0KICAgICAgICAgICAgLmhlcm8geyBwYWRkaW5nOiA4MHB4IDIwcHggNjBweDsgfQogICAgICAgICAgICAuaGVyby1zdGF0cyB7IGdhcDogMjVweDsgfQogICAgICAgICAgICAuY3RhLWJ1dHRvbnMgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogY2VudGVyOyB9CiAgICAgICAgICAgIC5zaGFyZS1idXR0b25zIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfQogICAgICAgICAgICBzZWN0aW9uIHsgcGFkZGluZzogNjBweCAyMHB4OyB9CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qIFJldmVhbCBBbmltYXRpb24gKi8KICAgICAgICAucmV2ZWFsIHsgb3BhY2l0eTogMDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwcHgpOyB0cmFuc2l0aW9uOiBhbGwgMC44cyBlYXNlOyB9CiAgICAgICAgLnJldmVhbC5hY3RpdmUgeyBvcGFjaXR5OiAxOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH0KICAgICAgICAKICAgICAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICAgICAgICAgIEZPVU5EQVRJT04gU0VDVElPTgogICAgICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCiAgICAgICAgLmZvdW5kYXRpb24tc2VjdGlvbiB7CiAgICAgICAgICAgIHBhZGRpbmc6IDEwMHB4IDQwcHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjgsIDMxLCA3NCwgMC4zKSwgdHJhbnNwYXJlbnQsIHJnYmEoMjgsIDMxLCA3NCwgMC4yKSk7CiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogMTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLmZvdW5kYXRpb24taW50cm8gewogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgIG1heC13aWR0aDogODAwcHg7CiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDUwcHg7CiAgICAgICAgfQogICAgICAgIC5mb3VuZGF0aW9uLWludHJvIHAgewogICAgICAgICAgICBmb250LXNpemU6IDEuMDVyZW07CiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI0OCwgMjQ0LCAyMzYsIDAuODUpOwogICAgICAgICAgICBsaW5lLWhlaWdodDogMS45OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAubWVudG9ycy1ncmlkIHsKICAgICAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMDBweCwgMWZyKSk7CiAgICAgICAgICAgIGdhcDogMjBweDsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLm1lbnRvci1jYXJkIHsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0NWRlZywgcmdiYSgxMywgMjcsIDQyLCAwLjkpLCByZ2JhKDI4LCAzMSwgNzQsIDAuNSkpOwogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIxMiwgMTc1LCA1NSwgMC4xNSk7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7CiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDsKICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlOwogICAgICAgIH0KICAgICAgICAubWVudG9yLWNhcmQ6aG92ZXIgewogICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdvbGQpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7CiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMjBweCA1MHB4IHJnYmEoMCwgMCwgMCwgMC4zKTsKICAgICAgICB9CiAgICAgICAgLm1lbnRvci1pY29uIHsKICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7CiAgICAgICAgfQogICAgICAgIC5tZW50b3ItbmFtZSB7CiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUGxheWZhaXIgRGlzcGxheScsIHNlcmlmOwogICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTsKICAgICAgICAgICAgY29sb3I6IHZhcigtLWdvbGQpOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgICAgfQogICAgICAgIC5tZW50b3ItZm9jdXMgewogICAgICAgICAgICBmb250LXNpemU6IDAuODVyZW07CiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI0OCwgMjQ0LCAyMzYsIDAuNjUpOwogICAgICAgICAgICBsaW5lLWhlaWdodDogMS42OwogICAgICAgIH0KICAgICAgICAubWVudG9yLWxpbmsgewogICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsKICAgICAgICAgICAgY29sb3I6IHZhcigtLXJvc2Vnb2xkKTsKICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4OwogICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7CiAgICAgICAgfQogICAgICAgIC5tZW50b3ItbGluazpob3ZlciB7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1nb2xkKTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLmZvdW5kYXRpb24tcXVvdGUgewogICAgICAgICAgICBtYXgtd2lkdGg6IDkwMHB4OwogICAgICAgICAgICBtYXJnaW46IDAgYXV0bzsKICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIH0KICAgICAgICAuZm91bmRhdGlvbi1xdW90ZSBibG9ja3F1b3RlIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdDb3Jtb3JhbnQgR2FyYW1vbmQnLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07CiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKICAgICAgICAgICAgY29sb3I6IHZhcigtLWl2b3J5KTsKICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTsKICAgICAgICAgICAgcGFkZGluZzogNDBweDsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0NWRlZywgcmdiYSgyMTIsIDE3NSwgNTUsIDAuMDgpLCByZ2JhKDIxMiwgMTc1LCA1NSwgMC4wMikpOwogICAgICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLWdvbGQpOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDIwcHggMjBweCAwOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiBQaGlsb3NvcGh5IFN0YXRlbWVudCAqLwogICAgICAgIC5waGlsb3NvcGh5LXN0YXRlbWVudCB7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgbWF4LXdpZHRoOiA5MDBweDsKICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gNTBweDsKICAgICAgICAgICAgcGFkZGluZzogMzBweDsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0NWRlZywgcmdiYSgyMTIsIDE3NSwgNTUsIDAuMDUpLCB0cmFuc3BhcmVudCk7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7CiAgICAgICAgfQogICAgICAgIC5waGlsb3NvcGh5LXN0YXRlbWVudCBwIHsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07CiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI0OCwgMjQ0LCAyMzYsIDAuOSk7CiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiBDb2hvcnQgRm91bmRlciBOb3RlICovCiAgICAgICAgLmNvaG9ydC1mb3VuZGVyLW5vdGUgewogICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTsKICAgICAgICAgICAgY29sb3I6IHZhcigtLXJvc2Vnb2xkKTsKICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4OwogICAgICAgIH0KICAgIDwvc3R5bGU+CjwvaGVhZD4KPGJvZHk+CiAgICA8ZGl2IGNsYXNzPSJ3YXRlcm1hcmsiPjwvZGl2PgogICAgPGRpdiBjbGFzcz0iZ2VvcGF0dGVybiI+PC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJvcmIgb3JiMSI+PC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJvcmIgb3JiMiI+PC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJvcmIgb3JiMyI+PC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJvcmIgb3JiNCI+PC9kaXY+CiAgICAKICAgIDwhLS0gRmxvYXRpbmcgQm90YW5pY2FscyAtLT4KICAgIDxkaXYgY2xhc3M9ImJvdGFuaWNhbCBib3RhbmljYWwxIj7wn4y/PC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJib3RhbmljYWwgYm90YW5pY2FsMiI+4pyoPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJib3RhbmljYWwgYm90YW5pY2FsMyI+8J+NgzwvZGl2PgogICAgPGRpdiBjbGFzcz0iYm90YW5pY2FsIGJvdGFuaWNhbDQiPuKtkDwvZGl2PgogICAgCiAgICA8IS0tIE5hdmlnYXRpb24gLS0+CiAgICA8bmF2IGNsYXNzPSJ0b3BuYXYiPgogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vZHluYW1pY3BhcmFkaWdtc2FjYWRlbXkuY29tLyIgY2xhc3M9Im5hdmxvZ28iPlRIRSBTSEUgRS1CT1NTIFNPTFVUSU9OSVNU4oSiPC9hPgogICAgICAgIDxkaXYgY2xhc3M9Im5hdmxpbmtzIj4KICAgICAgICAgICAgPGEgaHJlZj0iI2ZvdW5kYXRpb24iIGNsYXNzPSJuYXZsaW5rIj5NeSBUcmFpbmluZzwvYT4KICAgICAgICAgICAgPGEgaHJlZj0iI2NvaG9ydHMiIGNsYXNzPSJuYXZsaW5rIj5NeSBDb2hvcnRzPC9hPgogICAgICAgICAgICA8YSBocmVmPSIjb2ZmZXJpbmdzIiBjbGFzcz0ibmF2bGluayI+QWNhZGVteTwvYT4KICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9keW5hbWljcGFyYWRpZ21zYWNhZGVteS5jb20vY29ubmVjdCIgY2xhc3M9Im5hdmxpbmsgcHJpbWFyeSI+UmVxdWVzdCBBY2Nlc3M8L2E+CiAgICAgICAgPC9kaXY+CiAgICA8L25hdj4KICAgIAogICAgPCEtLSBQb3dlcmVkIEJ5IEJhbm5lciAtLT4KICAgIDxkaXYgY2xhc3M9InBvd2VyZWQtYmFubmVyIj4KICAgICAgICA8c3BhbiBjbGFzcz0icG93ZXJlZC10ZXh0Ij5Qb3dlcmVkIGJ5IDxzdHJvbmc+QlJJTExJQU5UIEJSQU5EIFNUUkFURUdJRVM8L3N0cm9uZz4g4oCiIFVTQSBNb3RoZXJzaGlwIOKAoiAyOCBQcm9wcmlldGFyeSBTeXN0ZW1zIOKAoiBFc3QuIDIwMTc8L3NwYW4+CiAgICA8L2Rpdj4KICAgIAogICAgPCEtLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICAgICAgICBTQ1JPTExJTkcgUVVPVEVTIEJBTk5FUgogICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KICAgIDxkaXYgY2xhc3M9InF1b3Rlcy1iYW5uZXIiPgogICAgICAgIDxkaXYgY2xhc3M9InF1b3Rlcy10cmFjayI+CiAgICAgICAgICAgIDwhLS0gRmlyc3QgU2V0IC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJxdW90ZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS1pY29uIj7inKY8L3NwYW4+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtdGV4dCI+IkkgYW0gR0xPQkFMLiBHb2luZyBsb2NhbCB0byBBZnJpY2HigJRteSByb290cywgbXkgbW90aGVybGFuZC4iPC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLWRpdmlkZXIiPuKXhjwvc3Bhbj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icXVvdGUtaXRlbSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtaWNvbiI+4pymPC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLXRleHQiPiJOb3QgaGVyZSB0byBjb21wZXRlLiBIZXJlIHRvIGNvbGxhYm9yYXRlLCBlbGV2YXRlLCBhbmQgYnVpbGQgYWxvbmdzaWRlIG15IEFmcmljYW4gc2lzdGVycyBhbmQgYnJvdGhlcnMuIjwvc3Bhbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS1kaXZpZGVyIj7il4Y8L3NwYW4+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InF1b3RlLWl0ZW0iPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLWljb24iPuKcpjwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS10ZXh0Ij4iTGlmZWxvbmcgbGVhcm5pbmcgaXMgbm90IHdlYWtuZXNz4oCUaXQgaXMgdGhlIG1hcmsgb2YgYSBzb3ZlcmVpZ24gbWluZCB0aGF0IHJlZnVzZXMgdG8gc3RhZ25hdGUuIjwvc3Bhbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS1kaXZpZGVyIj7il4Y8L3NwYW4+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InF1b3RlLWl0ZW0iPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLWljb24iPuKcpjwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS10ZXh0Ij4iSSB3YWxrIHRoaXMgcGF0aCBub3QgYXMgYSBzdHVkZW50IHNlZWtpbmcgZW5saWdodGVubWVudCwgYnV0IGFzIGEgcGVlciBzaGFyaW5nIHRoZSBqb3VybmV5IHRvIHByb3NwZXJpdHkuIjwvc3Bhbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS1kaXZpZGVyIj7il4Y8L3NwYW4+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InF1b3RlLWl0ZW0iPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLWljb24iPuKcpjwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS10ZXh0Ij4iTXkgdG9vbGNoZXN0IGlzIHZhc3QuIE15IHZpc2lvbiBpcyBncmFuZC4gTXkgY29tbWl0bWVudCB0byBBZnJpY2FuIGV4Y2VsbGVuY2UgaXMgdW53YXZlcmluZy4iPC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLWRpdmlkZXIiPuKXhjwvc3Bhbj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icXVvdGUtaXRlbSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtaWNvbiI+4pymPC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLXRleHQiPiJJIGludmVzdCBpbiBjb2FjaGVzIGJlY2F1c2UgSSBiZWxpZXZlIGluIHRoZSBlY29zeXN0ZW3igJRub3QgYmVjYXVzZSBJIG5lZWQgc2F2aW5nLiI8L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtZGl2aWRlciI+4peGPC9zcGFuPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJxdW90ZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS1pY29uIj7inKY8L3NwYW4+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtdGV4dCI+IkZvciBBZnJpY2EgdG8gc3RheSBzb3ZlcmVpZ24gYW5kIHJlc3BlY3RlZCwgd2UgbXVzdCBsb2NrIGFybXMgYW5kIG1hZ25pZnkgb3VyIGltcGFjdC4iPC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLWRpdmlkZXIiPuKXhjwvc3Bhbj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icXVvdGUtaXRlbSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtaWNvbiI+4pymPC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLXRleHQiPiJBSSBoYXMgbGV2ZWxlZCB0aGUgcGxheWluZyBmaWVsZC4gVGhlIHZpcnR1YWwgaGlnaHdheSBpcyBvcGVuIHRvIGFsbC4iPC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLWRpdmlkZXIiPuKXhjwvc3Bhbj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icXVvdGUtaXRlbSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtaWNvbiI+4pymPC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLXRleHQiPiJXaGF0IEkgaW52ZXN0IGluIG15c2VsZiwgSSBwYXNzIG9uLiBUaGV5IHJlY2VpdmUgdGhlIHZhbHVlLiBJIGFic29yYiB0aGUgY29zdC4iPC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLWRpdmlkZXIiPuKXhjwvc3Bhbj4KICAgICAgICAgICAgPCEtLSBEdXBsaWNhdGUgZm9yIHNlYW1sZXNzIGxvb3AgLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InF1b3RlLWl0ZW0iPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLWljb24iPuKcpjwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS10ZXh0Ij4iSSBhbSBHTE9CQUwuIEdvaW5nIGxvY2FsIHRvIEFmcmljYeKAlG15IHJvb3RzLCBteSBtb3RoZXJsYW5kLiI8L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtZGl2aWRlciI+4peGPC9zcGFuPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJxdW90ZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS1pY29uIj7inKY8L3NwYW4+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtdGV4dCI+Ik5vdCBoZXJlIHRvIGNvbXBldGUuIEhlcmUgdG8gY29sbGFib3JhdGUsIGVsZXZhdGUsIGFuZCBidWlsZCBhbG9uZ3NpZGUgbXkgQWZyaWNhbiBzaXN0ZXJzIGFuZCBicm90aGVycy4iPC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLWRpdmlkZXIiPuKXhjwvc3Bhbj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icXVvdGUtaXRlbSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtaWNvbiI+4pymPC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLXRleHQiPiJMaWZlbG9uZyBsZWFybmluZyBpcyBub3Qgd2Vha25lc3PigJRpdCBpcyB0aGUgbWFyayBvZiBhIHNvdmVyZWlnbiBtaW5kIHRoYXQgcmVmdXNlcyB0byBzdGFnbmF0ZS4iPC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLWRpdmlkZXIiPuKXhjwvc3Bhbj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icXVvdGUtaXRlbSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtaWNvbiI+4pymPC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLXRleHQiPiJJIHdhbGsgdGhpcyBwYXRoIG5vdCBhcyBhIHN0dWRlbnQgc2Vla2luZyBlbmxpZ2h0ZW5tZW50LCBidXQgYXMgYSBwZWVyIHNoYXJpbmcgdGhlIGpvdXJuZXkgdG8gcHJvc3Blcml0eS4iPC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLWRpdmlkZXIiPuKXhjwvc3Bhbj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icXVvdGUtaXRlbSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtaWNvbiI+4pymPC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLXRleHQiPiJNeSB0b29sY2hlc3QgaXMgdmFzdC4gTXkgdmlzaW9uIGlzIGdyYW5kLiBNeSBjb21taXRtZW50IHRvIEFmcmljYW4gZXhjZWxsZW5jZSBpcyB1bndhdmVyaW5nLiI8L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtZGl2aWRlciI+4peGPC9zcGFuPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJxdW90ZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS1pY29uIj7inKY8L3NwYW4+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtdGV4dCI+IkkgaW52ZXN0IGluIGNvYWNoZXMgYmVjYXVzZSBJIGJlbGlldmUgaW4gdGhlIGVjb3N5c3RlbeKAlG5vdCBiZWNhdXNlIEkgbmVlZCBzYXZpbmcuIjwvc3Bhbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS1kaXZpZGVyIj7il4Y8L3NwYW4+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InF1b3RlLWl0ZW0iPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InF1b3RlLWljb24iPuKcpjwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS10ZXh0Ij4iRm9yIEFmcmljYSB0byBzdGF5IHNvdmVyZWlnbiBhbmQgcmVzcGVjdGVkLCB3ZSBtdXN0IGxvY2sgYXJtcyBhbmQgbWFnbmlmeSBvdXIgaW1wYWN0LiI8L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtZGl2aWRlciI+4peGPC9zcGFuPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJxdW90ZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS1pY29uIj7inKY8L3NwYW4+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtdGV4dCI+IkFJIGhhcyBsZXZlbGVkIHRoZSBwbGF5aW5nIGZpZWxkLiBUaGUgdmlydHVhbCBoaWdod2F5IGlzIG9wZW4gdG8gYWxsLiI8L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtZGl2aWRlciI+4peGPC9zcGFuPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJxdW90ZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJxdW90ZS1pY29uIj7inKY8L3NwYW4+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtdGV4dCI+IldoYXQgSSBpbnZlc3QgaW4gbXlzZWxmLCBJIHBhc3Mgb24uIFRoZXkgcmVjZWl2ZSB0aGUgdmFsdWUuIEkgYWJzb3JiIHRoZSBjb3N0LiI8L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8c3BhbiBjbGFzcz0icXVvdGUtZGl2aWRlciI+4peGPC9zcGFuPgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgICAKICAgIDwhLS0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICAgICAgICAgSEVSTyBTRUNUSU9OCiAgICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgogICAgPHNlY3Rpb24gY2xhc3M9Imhlcm8iPgogICAgICAgIDxkaXYgY2xhc3M9Imhlcm8tYmFkZ2UiPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYmFkZ2UtaWNvbiI+8J+Tmjwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4+TGlmZWxvbmcgTGVhcm5lciDigKIgRGlhc3BvcmEgQnJpZGdlIEJ1aWxkZXIg4oCiIEVjb3N5c3RlbSBQYXJ0bmVyPC9zcGFuPgogICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgIDxoMSBjbGFzcz0iaGVyby10aXRsZSI+CiAgICAgICAgICAgIE15IDIwMjQtMjAyNTxicj4KICAgICAgICAgICAgPHNwYW4+TGVhcm5pbmcgSm91cm5leTwvc3Bhbj4KICAgICAgICA8L2gxPgogICAgICAgIAogICAgICAgIDxwIGNsYXNzPSJoZXJvLXN1YnRpdGxlIj5Xb3JsZC1DbGFzcyBUcmFpbmluZyBNZWV0cyBBZnJpY2FuIEVjb3N5c3RlbSBJbnZlc3RtZW50PC9wPgogICAgICAgIAogICAgICAgIDxwIGNsYXNzPSJoZXJvLWRlc2NyaXB0aW9uIj4KICAgICAgICAgICAgTG9uZyBiZWZvcmUgdGhlc2UgQWZyaWNhbiBjb2hvcnRz4oCUdW5wbGFubmVkIGFkZGl0aW9ucyBJIHNxdWVlemVkIGludG8gbXkgYWxyZWFkeSBmdWxsIGZvdW5kZXIncyBtYXN0ZXJwbGFu4oCUSSB3YXMgaGVhdmlseSBpbnZlc3RlZCBpbiA8c3Ryb25nPndvcmxkLWNsYXNzIGJ1c2luZXNzIGNvYWNoaW5nPC9zdHJvbmc+LiBEYXJyZW4gSGFyZHkuIEpvaG4gTWF4d2VsbC4gQnJpYW4gQ2FycnV0aGVycy4gRGFycmVsIFNlbGYuIE1vbnRobHkgc3RyYXRlZ3kgdHJhaW5pbmcuIFNldmVuIGRlZGljYXRlZCBob3VycyB3ZWVrbHkuIEFuIGV4dGVuc2l2ZSBsaWJyYXJ5IGJ1aWx0IG92ZXIgeWVhcnMuPGJyPjxicj4KICAgICAgICAgICAgV2hlbiB0aGUgb3Bwb3J0dW5pdHkgdG8gaW52ZXN0IGluIEFmcmljYW4gY29hY2hlcyBhcm9zZSwgSSBjb21taXR0ZWQuIERlc3BpdGUgdGhlIGdydWVsaW5nIDxzdHJvbmc+RUFUIHZzIEVTVCB0aW1lIGRpZmZlcmVuY2U8L3N0cm9uZz4uIERlc3BpdGUgbXkgcGFja2VkIHNjaGVkdWxlLiBJIHNob3dlZCB1cCBjb25zaXN0ZW50bHnigJRub3QgYXMgYSBzdHVkZW50IHNlZWtpbmcgZW5saWdodGVubWVudCwgYnV0IGFzIGEgPHN0cm9uZz5wZWVyIGludmVzdGluZyBpbiB0aGUgZWNvc3lzdGVtPC9zdHJvbmc+LgogICAgICAgIDwvcD4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJoZXJvLXN0YXRzIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbnVtYmVyIj43KzwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1sYWJlbCI+WWVhcnMgb2YgVHJhaW5pbmc8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtaXRlbSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LW51bWJlciI+MzwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1sYWJlbCI+QWZyaWNhbiBDb2hvcnRzPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0LWl0ZW0iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1udW1iZXIiPjc8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbGFiZWwiPkhvdXJzIFdlZWtseTwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdC1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbnVtYmVyIj7iiJ48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXQtbGFiZWwiPlZhbHVlIFBhc3NlZCBPbjwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8YSBocmVmPSIjZm91bmRhdGlvbiIgY2xhc3M9Imhlcm8tY3RhIj4KICAgICAgICAgICAgPHNwYW4+U2VlIFRoZSBGdWxsIFBpY3R1cmU8L3NwYW4+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdyI+4oaTPC9zcGFuPgogICAgICAgIDwvYT4KICAgIDwvc2VjdGlvbj4KICAgIAogICAgPCEtLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICAgICAgICBVU0EgRk9VTkRBVElPTiBTRUNUSU9OCiAgICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgogICAgPHNlY3Rpb24gY2xhc3M9ImZvdW5kYXRpb24tc2VjdGlvbiIgaWQ9ImZvdW5kYXRpb24iPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24taGVhZGVyIHJldmVhbCI+CiAgICAgICAgICAgICAgICA8cCBjbGFzcz0ic2VjdGlvbi1sYWJlbCI+VGhlIEZvdW5kYXRpb24g4oCiIEVzdC4gMjAxNzwvcD4KICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+QmVmb3JlIEFmcmljYTogV29ybGQtQ2xhc3MgVHJhaW5pbmc8L2gyPgogICAgICAgICAgICAgICAgPHAgY2xhc3M9InNlY3Rpb24tc3VidGl0bGUiPlllYXJzIG9mIGludmVzdG1lbnQgaW4gcHJlbWl1bSBjb2FjaGluZyBhbmQgc3RyYXRlZ3kgZGV2ZWxvcG1lbnQ8L3A+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAKICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm91bmRhdGlvbi1pbnRybyByZXZlYWwiPgogICAgICAgICAgICAgICAgPHA+QmVmb3JlIEkgZXZlciBqb2luZWQgYW4gQWZyaWNhbiBjb2hvcnQsIEkgaGFkIGFscmVhZHkgaW52ZXN0ZWQgaGVhdmlseSBpbiB3b3JsZC1jbGFzcyBidXNpbmVzcyBjb2FjaGluZyBhbmQgbGVhZGVyc2hpcCBkZXZlbG9wbWVudC4gVGhpcyBpc24ndCBiYWNrZ3JvdW5k4oCUaXQncyB0aGUgPHN0cm9uZz5mb3VuZGF0aW9uPC9zdHJvbmc+IHRoYXQgbWFrZXMgbWUgZWZmZWN0aXZlLiBFdmVyeSBzdHJhdGVneSBJIHNoYXJlLCBldmVyeSBzeXN0ZW0gSSBidWlsZCwgZXZlcnkgbWVudGVlIEkgZ3VpZGUgYmVuZWZpdHMgZnJvbSB5ZWFycyBvZiBwcmVtaXVtIHRyYWluaW5nIEkndmUgYWJzb3JiZWQgYW5kIGNvbnRpbnVlIHRvIGludmVzdCBpbi48L3A+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVudG9ycy1ncmlkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lbnRvci1jYXJkIHJldmVhbCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVudG9yLWljb24iPvCfjq88L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im1lbnRvci1uYW1lIj5EYXJyZW4gSGFyZHk8L2gzPgogICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJtZW50b3ItZm9jdXMiPkhpZ2ggUGVyZm9ybWFuY2UgJiBDb21wb3VuZCBFZmZlY3Q8L3A+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVudG9yLWNhcmQgcmV2ZWFsIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZW50b3ItaWNvbiI+8J+RkTwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ibWVudG9yLW5hbWUiPkpvaG4gTWF4d2VsbDwvaDM+CiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1lbnRvci1mb2N1cyI+TGVhZGVyc2hpcCAmIEluZmx1ZW5jZTwvcD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZW50b3ItY2FyZCByZXZlYWwiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lbnRvci1pY29uIj7wn5K8PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJtZW50b3ItbmFtZSI+QnJpYW4gQ2FycnV0aGVyczwvaDM+CiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1lbnRvci1mb2N1cyI+QnVzaW5lc3MgQnVpbGRpbmcgJiBUZWFtczwvcD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZW50b3ItY2FyZCByZXZlYWwiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lbnRvci1pY29uIj7wn5OKPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJtZW50b3ItbmFtZSI+RGFycmVsIFNlbGY8L2gzPgogICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJtZW50b3ItZm9jdXMiPlN0cmF0ZWd5ICYgU3lzdGVtczwvcD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZW50b3ItY2FyZCByZXZlYWwiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lbnRvci1pY29uIj7wn5OaPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJtZW50b3ItbmFtZSI+TW9udGhseSBTdHJhdGVneSBUcmFpbmluZzwvaDM+CiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1lbnRvci1mb2N1cyI+NyBIb3VycyBXZWVrbHkg4oCiIE9uZ29pbmcgSW52ZXN0bWVudDwvcD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZW50b3ItY2FyZCByZXZlYWwiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1lbnRvci1pY29uIj7wn46nPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJtZW50b3ItbmFtZSI+RW50cmVwcmVuZXVyJ3MgTGlicmFyeTwvaDM+CiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im1lbnRvci1mb2N1cyI+QXVkaW8gQm9va3Mg4oCiIFRyYWluaW5nIE1hdGVyaWFscyDigKIgTWVkaWE8L3A+CiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9tYWplc3RpY21lZGlhc29sdXRpb25zLmNvbS9lbnRyZXByZW5ldXJzLWxpYnJhcnkiIGNsYXNzPSJtZW50b3ItbGluayIgdGFyZ2V0PSJfYmxhbmsiPkV4cGxvcmUgTGlicmFyeSDihpI8L2E+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3VuZGF0aW9uLXF1b3RlIHJldmVhbCI+CiAgICAgICAgICAgICAgICA8YmxvY2txdW90ZT4KICAgICAgICAgICAgICAgICAgICAiTGlmZWxvbmcgbGVhcm5pbmcgaXMgdGhlIGNvcm5lcnN0b25lIG9mIG15IHBlcnNvbmFsIGdyb3d0aCBhbmQgYnVzaW5lc3Mgc3RyYXRlZ3kuIFdoYXQgSSBpbnZlc3QgaW4gbXlzZWxmLCBJIHBhc3Mgb24gdG8gbXkgbWVudGVlcyBhbmQgY2xpZW50cy4gVGhleSByZWNlaXZlIHN0YXRlLW9mLXRoZS1hcnQgc29sdXRpb25zIGFuZCBleHBlcnRpc2UgYXQgcHJpY2VzIHRoYXQgYmVuZWZpdCB0aGVtLiBJIGFic29yYiB0aGUgY29zdCBvZiBteSBlZHVjYXRpb24uIFRoZXkgcmVjZWl2ZSB0aGUgdmFsdWUuIgogICAgICAgICAgICAgICAgPC9ibG9ja3F1b3RlPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvc2VjdGlvbj4KCiAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgICAgICAgIFBISUxPU09QSFkgU0VDVElPTgogICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KICAgIDxzZWN0aW9uIGNsYXNzPSJwaGlsb3NvcGh5LXNlY3Rpb24iPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24taGVhZGVyIHJldmVhbCI+CiAgICAgICAgICAgICAgICA8cCBjbGFzcz0ic2VjdGlvbi1sYWJlbCI+TXkgUGhpbG9zb3BoeTwvcD4KICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+V2h5IEkgSW52ZXN0IGluIEFmcmljYTwvaDI+CiAgICAgICAgICAgICAgICA8cCBjbGFzcz0ic2VjdGlvbi1zdWJ0aXRsZSI+QSBkaWFzcG9yYSBicmlkZ2UgYnVpbGRlciBsb2NraW5nIGFybXMgd2l0aCB0aGUgbW90aGVybGFuZDwvcD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaGlsb3NvcGh5LXN0YXRlbWVudCByZXZlYWwiPgogICAgICAgICAgICAgICAgPHA+SSBhbSA8c3Ryb25nPkdMT0JBTDwvc3Ryb25nPi4gR29pbmcgbG9jYWwgdG8gQWZyaWNh4oCUbXkgcm9vdHMsIG15IG1vdGhlcmxhbmQuIEFzIGEgZGlhc3BvcmEgYnJpZGdlIGJ1aWxkZXIsIEkga25vdyB0aGF0IGZvciBBZnJpY2EgdG8gc3RheSBzb3ZlcmVpZ24gYW5kIHJlc3BlY3RlZCwgd2UgbXVzdCA8c3Ryb25nPmxvY2sgYXJtczwvc3Ryb25nPiBhY3Jvc3Mgb3VyIHZhcmlvdXMgY2FwYWNpdGllcyBhbmQgY29ybmVycy4gQ29tZSB0b2dldGhlciB0byA8c3Ryb25nPm1hZ25pZnkgb3VyIGltcGFjdDwvc3Ryb25nPi4gTWF4aW1pemUgb3VyIGVmZm9ydHMuIE1vbmV0aXplIG91ciByZXNvdXJjZXMgYW5kIHJlc291cmNlZnVsbmVzcy4gU28gd2UgaGF2ZSB0aGUgZnVuZHMgbmVlZGVkIHRvIGhlbHAgb3VyIGZlbGxvdyBBZnJpY2FuIGJyb3RoZXJzIGFuZCBzaXN0ZXJzIHByb3NwZXIgaW4gdGhpcyBkaWdpdGFsIGFnZeKAlHdoZXJlIDxzdHJvbmc+QUkgaGFzIGxldmVsZWQgdGhlIHBsYXlpbmcgZmllbGQ8L3N0cm9uZz4gYW5kIHRoZSB2aXJ0dWFsIGhpZ2h3YXkgaXMgb3BlbiB0byBhbGwuPC9wPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBoaWxvc29waHktZ3JpZCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaGlsb3NvcGh5LWNhcmQgcmV2ZWFsIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaGlsb3NvcGh5LWljb24iPvCfjI08L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InBoaWxvc29waHktdGl0bGUiPlN1cHBvcnQgdGhlIEVjb3N5c3RlbTwvaDM+CiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InBoaWxvc29waHktdGV4dCI+SSBpbnZlc3QgaW4gQWZyaWNhbiBjb2FjaGVzIGFuZCBtZW50b3JzIGJlY2F1c2UgSSBiZWxpZXZlIGluIGJ1aWxkaW5nIHRoaXMgc3BhY2UgdG9nZXRoZXIuIE15IHBhcnRpY2lwYXRpb24gc2F5cyAiSSBzZWUgeW91LCBJIHZhbHVlIHlvdSwgSSdtIHdhbGtpbmcgd2l0aCB5b3XigJRhcyBhIHBlZXIuIjwvcD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaGlsb3NvcGh5LWNhcmQgcmV2ZWFsIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaGlsb3NvcGh5LWljb24iPvCfkYHvuI88L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InBoaWxvc29waHktdGl0bGUiPkdyb3VuZC1MZXZlbCBJbnRlbDwvaDM+CiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InBoaWxvc29waHktdGV4dCI+VGhlc2UgY29hY2hlcyBsaXZlIGFuZCBicmVhdGhlIHRoZSBBZnJpY2FuIG1hcmtldCByZWFsaXR5LiBJIGdhaW4gcHJpY2VsZXNzIGluc2lnaHQgaW50byB3aGF0J3Mgd29ya2luZyBvbiB0aGUgZ3JvdW5k4oCUaW5zaWdodCBubyBib29rLCBjb3Vyc2UsIG9yIFVTQSBtYXN0ZXJtaW5kIGNhbiBwcm92aWRlLjwvcD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaGlsb3NvcGh5LWNhcmQgcmV2ZWFsIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaGlsb3NvcGh5LWljb24iPvCfjIk8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InBoaWxvc29waHktdGl0bGUiPkJyaWRnZSBCdWlsZGVyPC9oMz4KICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0icGhpbG9zb3BoeS10ZXh0Ij5EaWFzcG9yYSBtZWV0cyBtb3RoZXJsYW5kLiBVU0EgdHJhaW5pbmcgbWVldHMgQWZyaWNhbiBodXN0bGUuIFdvcmxkLWNsYXNzIHN5c3RlbXMgbWVldCBncmFzc3Jvb3RzIHJlYWxpdHkuIEkgYnJpZGdlIHRoZXNlIHdvcmxkcyBzbyBldmVyeW9uZSBlbGV2YXRlcy48L3A+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CiAgICAKICAgIDwhLS0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICAgICAgICAgQ09IT1JUUyBTRUNUSU9OCiAgICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgogICAgPHNlY3Rpb24gY2xhc3M9ImNvaG9ydHMtc2VjdGlvbiIgaWQ9ImNvaG9ydHMiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24taGVhZGVyIHJldmVhbCI+CiAgICAgICAgICAgICAgICA8cCBjbGFzcz0ic2VjdGlvbi1sYWJlbCI+QWZyaWNhbiBFY29zeXN0ZW0gSW52ZXN0bWVudCDigKIgMjAyNDwvcD4KICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+TXkgRm91bmRpbmcgQ29ob3J0czwvaDI+CiAgICAgICAgICAgICAgICA8cCBjbGFzcz0ic2VjdGlvbi1zdWJ0aXRsZSI+VGhyZWUgZm91bmRpbmcgY2xhc3Nlcy4gVGhyZWUgdmlzaW9uYXJ5IGNvYWNoZXMuIE9uZSBzaGFyZWQgbWlzc2lvbjogQWZyaWNhbiBwcm9zcGVyaXR5LjwvcD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2hvcnRzLWdyaWQiPgogICAgICAgICAgICAgICAgPCEtLSBDT0hPUlQgMTogUmVhZ2FuIEthd3VtYSAtLT4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvaG9ydC1jYXJkIHJldmVhbCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29ob3J0LWhlYWRlciI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb2hvcnQtYmFkZ2UiPkZvdW5kaW5nIENvaG9ydDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvaG9ydC1zdGF0dXMgY29tcGxldGVkIj7inJMgQ29tcGxldGVkPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvaG9ydC1ib2R5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29ob3J0LWljb24iPvCfpoU8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJjb2hvcnQtbmFtZSI+TWVudHJ4IE1hc3RlciBNaW5kczwvaDM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJjb2hvcnQtY29hY2giPkNvYWNoOiBSZWFnYW4gS2F3dW1hPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iY29ob3J0LWZvdW5kZXItbm90ZSI+QWxzbyBGb3VuZGVyIG9mIE11c29taSAmIFNheXVuIENvZmZlZTwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImNvaG9ydC1kZXNjcmlwdGlvbiI+TXkgZmlyc3QgcmVhbCBBZnJpY2FuIHRhcmdldCBhdWRpZW5jZeKAlDE2KyB3b21lbiwgYWxsIGJ5IHNlcmVuZGlwaXR5LiBMaW5rZWRJbidzIGFsZ29yaXRobSBtYXRjaGVkIHVzLCBhbmQgbWFnaWMgaGFwcGVuZWQuIEhpcyB2ZXJ5IGZpcnN0IGNvaG9ydCwgYW5kIEkgd2FzIGhvbm9yZWQgdG8gYmUgcGFydCBvZiB0aGUgZm91bmRpbmcgY2xhc3MuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2hvcnQtbWV0YSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibWV0YS1pdGVtIj48c3BhbiBjbGFzcz0ibWV0YS1pY29uIj7wn5OFPC9zcGFuPiAyMDI0PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1ldGEtaXRlbSI+PHNwYW4gY2xhc3M9Im1ldGEtaWNvbiI+8J+TjTwvc3Bhbj4gS2FtcGFsYSwgVWdhbmRhPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1ldGEtaXRlbSI+PHNwYW4gY2xhc3M9Im1ldGEtaWNvbiI+8J+RpTwvc3Bhbj4gMTYrIFdvbWVuPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29ob3J0LWFjdGlvbnMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9keW5hbWljcGFyYWRpZ21zYWNhZGVteS5jb20vcmVhZ2FuLWNvaG9ydCIgY2xhc3M9ImNvaG9ydC1idG4gcHJpbWFyeSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+VmlldyBIb21ld29yazwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj7ihpI8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iY29ob3J0LWJ0biBzZWNvbmRhcnkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPk15IFJldmlldzwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InZpZGVvLXBsYWNlaG9sZGVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InZpZGVvLXBsYWNlaG9sZGVyLWljb24iPvCfjqw8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ2aWRlby1wbGFjZWhvbGRlci10ZXh0Ij5WaWRlbyB0ZXN0aW1vbmlhbCByZWFkeTwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPCEtLSBDT0hPUlQgMjogVmljdG9yaWEgLSBDRU8gb2YgTXkgTGlmZSAtLT4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvaG9ydC1jYXJkIHJldmVhbCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29ob3J0LWhlYWRlciI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb2hvcnQtYmFkZ2UiPkZvdW5kaW5nIENvaG9ydDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvaG9ydC1zdGF0dXMgY29tcGxldGVkIj7inJMgQ29tcGxldGVkPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvaG9ydC1ib2R5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29ob3J0LWljb24iPvCfkZE8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJjb2hvcnQtbmFtZSI+Q0VPIG9mIE15IExpZmU8L2gzPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iY29ob3J0LWNvYWNoIj5Db2FjaDogVmljdG9yaWEgTnlhbnppIEF0ZWVueWk8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJjb2hvcnQtZm91bmRlci1ub3RlIj5Gb3VuZGVyLCBUaGUgQWZyaWNhbiBTaXN0ZXJzIE5ldHdvcmsgKFRBU04pPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iY29ob3J0LWRlc2NyaXB0aW9uIj5BIHRyYW5zZm9ybWF0aXZlIGpvdXJuZXkgdGhyb3VnaCBwZXJzb25hbCBsZWFkZXJzaGlwIGFuZCBidXNpbmVzcyBtYXN0ZXJ5LiBGZWF0dXJlZCB+NSBjb2FjaGVzIGluY2x1ZGluZyBJc2FhYy4gVmljdG9yaWEncyB2aXNpb246IFVnYW5kYSDihpIgS2VueWEg4oaSIEFmcmljYSDihpIgR2xvYmFsLiBIZXIgZmlyc3QgY29ob3J0LCBhbmQgSSB3YXMgdGhlcmUgZnJvbSBkYXkgb25lLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29ob3J0LW1ldGEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1ldGEtaXRlbSI+PHNwYW4gY2xhc3M9Im1ldGEtaWNvbiI+8J+ThTwvc3Bhbj4gMjAyNDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJtZXRhLWl0ZW0iPjxzcGFuIGNsYXNzPSJtZXRhLWljb24iPvCfk408L3NwYW4+IFVnYW5kYSDihpIgS2VueWE8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibWV0YS1pdGVtIj48c3BhbiBjbGFzcz0ibWV0YS1pY29uIj7wn4yNPC9zcGFuPiBUQVNOIE5ldHdvcms8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2hvcnQtYWN0aW9ucyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2R5bmFtaWNwYXJhZGlnbXNhY2FkZW15LmNvbS9jZW8tY29ob3J0IiBjbGFzcz0iY29ob3J0LWJ0biBwcmltYXJ5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5WaWV3IEhvbWV3b3JrPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPuKGkjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJjb2hvcnQtYnRuIHNlY29uZGFyeSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+TXkgUmV2aWV3PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idmlkZW8tcGxhY2Vob2xkZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idmlkZW8tcGxhY2Vob2xkZXItaWNvbiI+8J+OrDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InZpZGVvLXBsYWNlaG9sZGVyLXRleHQiPlZpZGVvIHRlc3RpbW9uaWFsIGNvbWluZyBzb29uPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8IS0tIENPSE9SVCAzOiBJc2FhYyAtIFRBU04gVWJ1bnR1IC0tPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29ob3J0LWNhcmQgcmV2ZWFsIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2hvcnQtaGVhZGVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvaG9ydC1iYWRnZSI+Rm91bmRpbmcgQ29ob3J0PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29ob3J0LXN0YXR1cyBjdXJyZW50Ij7imIUgQ3VycmVudDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2hvcnQtYm9keSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvaG9ydC1pY29uIj7wn6aBPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0iY29ob3J0LW5hbWUiPlVidW50dSBDb2hvcnQ8L2gzPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iY29ob3J0LWNvYWNoIj5Db2FjaDogSXNhYWM8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJjb2hvcnQtZm91bmRlci1ub3RlIj5VbmRlciBUaGUgQWZyaWNhbiBTaXN0ZXJzIE5ldHdvcmsgKFRBU04pPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iY29ob3J0LWRlc2NyaXB0aW9uIj5UaGUgQnVzaW5lc3MgQWNjZWxlcmF0b3IgTWVudG9yc2hpcOKAlGFuIDgtd2VlayBqb3VybmV5IHRocm91Z2ggc292ZXJlaWduIGJ1c2luZXNzIGFyY2hpdGVjdHVyZS4gSXNhYWMncyB2ZXJ5IGZpcnN0IGNvaG9ydCB1bmRlciBUQVNOLCBhbmQgSSdtIGhvbm9yZWQgdG8gYmUgcGFydCBvZiB0aGUgZm91bmRpbmcgY2xhc3MgZG9jdW1lbnRpbmcgdGhpcyBqb3VybmV5LjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29ob3J0LW1ldGEiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1ldGEtaXRlbSI+PHNwYW4gY2xhc3M9Im1ldGEtaWNvbiI+8J+ThTwvc3Bhbj4gMjAyNDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJtZXRhLWl0ZW0iPjxzcGFuIGNsYXNzPSJtZXRhLWljb24iPuKPse+4jzwvc3Bhbj4gOCBXZWVrczwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJtZXRhLWl0ZW0iPjxzcGFuIGNsYXNzPSJtZXRhLWljb24iPvCfjI08L3NwYW4+IFRBU04gTmV0d29yazwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvaG9ydC1hY3Rpb25zIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vZHluYW1pY3BhcmFkaWdtc2FjYWRlbXkuY29tL3VidW50dWNvaG9ydCIgY2xhc3M9ImNvaG9ydC1idG4gcHJpbWFyeSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+VmlldyBIb21ld29yazwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj7ihpI8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iY29ob3J0LWJ0biBzZWNvbmRhcnkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPk15IFJldmlldzwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InZpZGVvLXBsYWNlaG9sZGVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InZpZGVvLXBsYWNlaG9sZGVyLWljb24iPvCfjqw8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ2aWRlby1wbGFjZWhvbGRlci10ZXh0Ij5WaWRlbyB0ZXN0aW1vbmlhbCBpbiBwcm9ncmVzczwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CiAgICAKICAgIDwhLS0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICAgICAgICAgQUNBREVNWSBPRkZFUklOR1MgU0VDVElPTgogICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KICAgIDxzZWN0aW9uIGNsYXNzPSJvZmZlcmluZ3Mtc2VjdGlvbiIgaWQ9Im9mZmVyaW5ncyI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1oZWFkZXIgcmV2ZWFsIj4KICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJzZWN0aW9uLWxhYmVsIj5Gb3IgTmV0d29ya3MsIEh1YnMgJiBQYXJ0bmVyczwvcD4KICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+TGV2ZXJhZ2UgTXkgRW1waXJlPC9oMj4KICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJzZWN0aW9uLXN1YnRpdGxlIj5BY2FkZW1pZXMsIE1lZGlhIENoYW5uZWxzLCBhbmQgU3lzdGVtc+KAlGF2YWlsYWJsZSBmb3IgcGFydG5lcnNoaXA8L3A+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAKICAgICAgICAgICAgPGRpdiBjbGFzcz0ib2ZmZXJpbmdzLWludHJvIHJldmVhbCI+CiAgICAgICAgICAgICAgICA8cD5VbmRlciA8c3Ryb25nPkJyaWxsaWFudCBCcmFuZCBTdHJhdGVnaWVzPC9zdHJvbmc+LCBJJ3ZlIGJ1aWx0IGEgY29tcHJlaGVuc2l2ZSBzdWl0ZSBvZiBldmVyZ3JlZW4gd2ViaW5hcnMsIGRpZ2l0YWwgYWNhZGVtaWVzLCA8c3Ryb25nPjI3IG1lZGlhIGNoYW5uZWxzPC9zdHJvbmc+ICh2aWEgQnJpbGxpYW50IEJyb2FkY2FzdGluZyBDaGFubmVscyksIGFuZCB0cmFpbmluZyBzeXN0ZW1zLiBOZXR3b3Jrcywgc3RhcnR1cCBodWJzLCBhbmQgZm91bmRlciBjb21tdW5pdGllcyBjYW4gbGljZW5zZSwgcmVudCwgb3IgcGFydG5lci4gWW91ciBtZW1iZXJzIGdhaW4gYWNjZXNzIHRvIG15IDIxc3QtY2VudHVyeSBzdHJhdGVnaWVzLCBzb2x1dGlvbnMsIHNlcnZpY2VzLCBhbmQgMjggcHJvcHJpZXRhcnkgc29mdHdhcmUgc3lzdGVtc+KAlHdoaWxlIEkgZWFybiB3aGlsZSBJIHNsZWVwLiBJdCdzIGEgc292ZXJlaWduIHBhcnRuZXJzaGlwLjwvcD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJvZmZlcmluZ3MtZ3JpZCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJvZmZlcmluZy1jYXJkIHJldmVhbCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ib2ZmZXJpbmctaWNvbiI+8J+OkzwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ib2ZmZXJpbmctdGl0bGUiPkV2ZXJncmVlbiBXZWJpbmFyczwvaDM+CiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im9mZmVyaW5nLXRleHQiPlByZS1yZWNvcmRlZCwgcHJvZmVzc2lvbmFsbHkgcHJvZHVjZWQgdHJhaW5pbmcgc2Vzc2lvbnMgeW91ciBtZW1iZXJzIGNhbiBhY2Nlc3Mgb24gdGhlaXIgb3duIHNjaGVkdWxlLiBObyBsaXZlIGZhY2lsaXRhdGlvbiByZXF1aXJlZC48L3A+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ib2ZmZXJpbmctY2FyZCByZXZlYWwiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im9mZmVyaW5nLWljb24iPvCfk7o8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im9mZmVyaW5nLXRpdGxlIj4yNyBNZWRpYSBDaGFubmVsczwvaDM+CiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im9mZmVyaW5nLXRleHQiPkJyaWxsaWFudCBCcm9hZGNhc3RpbmcgQ2hhbm5lbHM6IEFmcmljYSBDaHJvbmljbGVzLCBTSEUgRXZvbHZlcywgQUkgTmV4dXMsIFRyYXZlbCBQb3J0Zm9saW8sIFNhbmN0dWFyeSwgU292ZXJlaWduIEFyY2hpdGVjdHMsIGFuZCBtb3JlLjwvcD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJvZmZlcmluZy1jYXJkIHJldmVhbCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ib2ZmZXJpbmctaWNvbiI+8J+Pm++4jzwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ib2ZmZXJpbmctdGl0bGUiPlZpcnR1YWwgTGVhcm5pbmcgU3BhY2VzPC9oMz4KICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0ib2ZmZXJpbmctdGV4dCI+Q29tcGxldGUgZS1hY2FkZW15IGVudmlyb25tZW50cyB3aGVyZSB2ZW50dXJlcHJlbmV1cnMgZ2FpbiBidXNpbmVzcyBkaWdpdGFsIHNraWxscyBwcml2YXRlbHksIHNlY3VyZWx5LCBvbiB0aGVpciBvd24gdGltZWxpbmUuPC9wPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im9mZmVyaW5nLWNhcmQgcmV2ZWFsIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJvZmZlcmluZy1pY29uIj7wn5ONPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJvZmZlcmluZy10aXRsZSI+RGlyZWN0b3J5IEVtcGlyZTwvaDM+CiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im9mZmVyaW5nLXRleHQiPkVhc3QgQWZyaWNhLCBCZXN0IEFmcmljYSwgQWZyaWNhIEJlc3TigJRkaXJlY3RvcnkgbGlzdGluZ3MgZm9yIGJ1c2luZXNzZXMgcmVhZHkgdG8gc3RlcCB1cCB0byBHb29nbGUgTXkgQnVzaW5lc3MgbGV2ZWwgdmlzaWJpbGl0eS48L3A+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ib2ZmZXJpbmctY2FyZCByZXZlYWwiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im9mZmVyaW5nLWljb24iPvCfk4o8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9Im9mZmVyaW5nLXRpdGxlIj5RdWFydGVybHkgTWFzdGVyY2xhc3NlczwvaDM+CiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9Im9mZmVyaW5nLXRleHQiPkxpdmUsIHBhaWQgdHJhaW5pbmcgZXZlbnRzIGZvciBtZW1iZXJzIHJlYWR5IHRvIGxldmVsIHVwLiBOZXR3b3JraW5nIG9wcG9ydHVuaXRpZXMgaW5jbHVkZWQgZm9yIGRlZXBlciBlbmdhZ2VtZW50LjwvcD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJvZmZlcmluZy1jYXJkIHJldmVhbCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ib2ZmZXJpbmctaWNvbiI+8J+boO+4jzwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ib2ZmZXJpbmctdGl0bGUiPjI4IFByb3ByaWV0YXJ5IFN5c3RlbXM8L2gzPgogICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJvZmZlcmluZy10ZXh0Ij5BY2Nlc3MgdG8gbXkgY3V0dGluZy1lZGdlIFNBQVMgdG9vbGNoZXN04oCUdGhlIHNhbWUgc3lzdGVtcyBJIHVzZSB0byBidWlsZCBzb3ZlcmVpZ24gZGlnaXRhbCBlbXBpcmVzLiBQb3dlcmVkIGJ5IEluYyA1MDAgdGVjaG5vbG9neS48L3A+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CiAgICAKICAgIDwhLS0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICAgICAgICAgQ1RBIFNFQ1RJT04KICAgICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CiAgICA8c2VjdGlvbiBjbGFzcz0iY3RhLXNlY3Rpb24iPgogICAgICAgIDxkaXYgY2xhc3M9ImN0YS1jYXJkIHJldmVhbCI+CiAgICAgICAgICAgIDxoMj5JbnRlcmVzdGVkIGluIFBhcnRuZXJzaGlwIG9yIEFjY2Vzcz88L2gyPgogICAgICAgICAgICA8cD5XaGV0aGVyIHlvdSdyZSBhIG5ldHdvcmsgc2Vla2luZyBldmVyZ3JlZW4gY29udGVudCwgYSBodWIgd2FudGluZyB0byBsaWNlbnNlIG15IGFjYWRlbWllcywgYSBwb3RlbnRpYWwgcGFydG5lciBleHBsb3JpbmcgY29sbGFib3JhdGlvbiwgb3Igc2ltcGx5IGN1cmlvdXMgYWJvdXQgbXkgam91cm5leeKAlEknZCBsb3ZlIHRvIGhlYXIgZnJvbSB5b3UuPC9wPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjdGEtYnV0dG9ucyI+CiAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2R5bmFtaWNwYXJhZGlnbXNhY2FkZW15LmNvbS9jb25uZWN0IiBjbGFzcz0iY3RhLWJ0biBwcmltYXJ5Ij4KICAgICAgICAgICAgICAgICAgICA8c3Bhbj5SZXF1ZXN0IEFjY2Vzczwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8c3Bhbj7ihpI8L3NwYW4+CiAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2R5bmFtaWNwYXJhZGlnbXNhY2FkZW15LmNvbS9hYm91dCIgY2xhc3M9ImN0YS1idG4gc2Vjb25kYXJ5Ij4KICAgICAgICAgICAgICAgICAgICA8c3Bhbj5MZWFybiBBYm91dCBNZTwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CiAgICAKICAgIDwhLS0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICAgICAgICAgRk9PVEVSCiAgICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgogICAgPGZvb3RlciBjbGFzcz0iZm9vdGVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXItbG9nbyI+VEhFIFNIRSBFLUJPU1MgU09MVVRJT05JU1TihKI8L2Rpdj4KICAgICAgICA8cCBjbGFzcz0iZm9vdGVyLXRhZ2xpbmUiPldoZXJlIElkZW50aXR5IE1lZXRzIERpZ2l0YWwgUG93ZXI8L3A+CiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0ic2hhcmUtc2VjdGlvbiI+CiAgICAgICAgICAgIDxoMyBjbGFzcz0ic2hhcmUtaGVhZGxpbmUiPktub3cgYSBuZXR3b3JrIHRoYXQgY291bGQgYmVuZWZpdD88L2gzPgogICAgICAgICAgICA8cCBjbGFzcz0ic2hhcmUtc3VidGV4dCI+U2hhcmUgdGhpcyBzaG93Y2FzZSB3aXRoIGh1YnMsIGZvdW5kZXJzLCBvciBmZWxsb3cgbGlmZWxvbmcgbGVhcm5lcnM8L3A+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNoYXJlLWJ1dHRvbnMiPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgY2xhc3M9InNoYXJlLWJ0biB3aGF0c2FwcCIgaWQ9InNoYXJlV2hhdHNBcHAiPjxzcGFuPvCfkqw8L3NwYW4+PHNwYW4+V2hhdHNBcHA8L3NwYW4+PC9hPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgY2xhc3M9InNoYXJlLWJ0biBsaW5rZWRpbiIgaWQ9InNoYXJlTGlua2VkSW4iPjxzcGFuPvCfkrw8L3NwYW4+PHNwYW4+TGlua2VkSW48L3NwYW4+PC9hPgogICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0ic2hhcmUtYnRuIGNvcHkiIGlkPSJzaGFyZUNvcHkiPjxzcGFuPvCfk4s8L3NwYW4+PHNwYW4+Q29weSBMaW5rPC9zcGFuPjwvYnV0dG9uPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXItZGl2aWRlciI+PC9kaXY+CiAgICAgICAgCiAgICAgICAgPHAgY2xhc3M9ImZvb3Rlci1jb3B5cmlnaHQiPgogICAgICAgICAgICDCqSAyMDI0IDxzdHJvbmc+RHluYW1pYyBQYXJhZGlnbXMgJiBNZW50b3JzaGlwIFN1Y2Nlc3MgQWNhZGVtaWVz4oSiPC9zdHJvbmc+PGJyPgogICAgICAgICAgICBUaGUgU0hFIEUtQm9zcyBTb2x1dGlvbmlzdOKEoiBGcmFtZXdvcmsgaXMgcHJvcHJpZXRhcnkgaW50ZWxsZWN0dWFsIHByb3BlcnR5Ljxicj4KICAgICAgICAgICAgQWxsIGNvaG9ydCBob21ld29yayBhbmQgc2hvd2Nhc2VzIGNvbnRhaW4gcHJvcHJpZXRhcnkgSVAuIFVuYXV0aG9yaXplZCByZXByb2R1Y3Rpb24gcHJvaGliaXRlZC4KICAgICAgICA8L3A+CiAgICA8L2Zvb3Rlcj4KICAgIAogICAgPHNjcmlwdD4KICAgICAgICAvLyBJUCBQcm90ZWN0aW9uCiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY29udGV4dG1lbnUnLCBlID0+IGUucHJldmVudERlZmF1bHQoKSk7CiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIGUgPT4gewogICAgICAgICAgICBpZiAoKGUuY3RybEtleSAmJiBbJ2MnLCd2JywncycsJ3AnLCd1J10uaW5jbHVkZXMoZS5rZXkudG9Mb3dlckNhc2UoKSkpIHx8IGUua2V5ID09PSAnRjEyJykgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgIH0pOwogICAgICAgIAogICAgICAgIC8vIFNoYXJlIGJ1dHRvbnMgLSBob21lcGFnZSBvbmx5CiAgICAgICAgY29uc3QgU0hBUkVfQ09ORklHID0geyBzaGFyZVVybDogJ2h0dHBzOi8vZHluYW1pY3BhcmFkaWdtc2FjYWRlbXkuY29tLycgfTsKICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgKCkgPT4gewogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2hhcmVXaGF0c0FwcCcpLmhyZWYgPSAnaHR0cHM6Ly93YS5tZS8/dGV4dD0nICsgZW5jb2RlVVJJQ29tcG9uZW50KCdDaGVjayBvdXQgdGhpcyBpbmNyZWRpYmxlIGxlYXJuaW5nIGpvdXJuZXkgc2hvd2Nhc2U6ICcgKyBTSEFSRV9DT05GSUcuc2hhcmVVcmwpOwogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2hhcmVXaGF0c0FwcCcpLnRhcmdldCA9ICdfYmxhbmsnOwogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2hhcmVMaW5rZWRJbicpLmhyZWYgPSAnaHR0cHM6Ly93d3cubGlua2VkaW4uY29tL3NoYXJpbmcvc2hhcmUtb2Zmc2l0ZS8/dXJsPScgKyBlbmNvZGVVUklDb21wb25lbnQoU0hBUkVfQ09ORklHLnNoYXJlVXJsKTsKICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3NoYXJlTGlua2VkSW4nKS50YXJnZXQgPSAnX2JsYW5rJzsKICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3NoYXJlQ29weScpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChTSEFSRV9DT05GSUcuc2hhcmVVcmwpLnRoZW4oKCkgPT4gewogICAgICAgICAgICAgICAgICAgIHRoaXMuaW5uZXJIVE1MID0gJzxzcGFuPuKckzwvc3Bhbj48c3Bhbj5Db3BpZWQhPC9zcGFuPic7CiAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmlubmVySFRNTCA9ICc8c3Bhbj7wn5OLPC9zcGFuPjxzcGFuPkNvcHkgTGluazwvc3Bhbj4nLCAyMDAwKTsKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgICAKICAgICAgICAvLyBTY3JvbGwgYW5pbWF0aW9ucwogICAgICAgIGZ1bmN0aW9uIHJldmVhbCgpIHsKICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLnJldmVhbCcpLmZvckVhY2goZWwgPT4gewogICAgICAgICAgICAgICAgaWYgKGVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCA8IHdpbmRvdy5pbm5lckhlaWdodCAtIDEwMCkgewogICAgICAgICAgICAgICAgICAgIGVsLmNsYXNzTGlzdC5hZGQoJ2FjdGl2ZScpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHJldmVhbCk7CiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCByZXZlYWwpOwogICAgICAgIAogICAgICAgIC8vIFNtb290aCBzY3JvbGwKICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdhW2hyZWZePSIjIl0nKS5mb3JFYWNoKGFuY2hvciA9PiB7CiAgICAgICAgICAgIGFuY2hvci5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodGhpcy5nZXRBdHRyaWJ1dGUoJ2hyZWYnKSkuc2Nyb2xsSW50b1ZpZXcoeyBiZWhhdmlvcjogJ3Ntb290aCcgfSk7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgPC9zY3JpcHQ+CjwvYm9keT4KPC9odG1sPg==","embed":""}
My 2024-2025 Learning Journey | The SHE E-Boss Solutionist™ Showcase
🌿
✨
🍃
⭐
THE SHE E-BOSS SOLUTIONIST™
My Training My Cohorts Academy Request Access
Powered by BRILLIANT BRAND STRATEGIES • USA Mothership • 28 Proprietary Systems • Est. 2017
✦ "I am GLOBAL. Going local to Africa—my roots, my motherland."
◆
✦ "Not here to compete. Here to collaborate, elevate, and build alongside my African sisters and brothers."
◆
✦ "Lifelong learning is not weakness—it is the mark of a sovereign mind that refuses to stagnate."
◆
✦ "I walk this path not as a student seeking enlightenment, but as a peer sharing the journey to prosperity."
◆
✦ "My toolchest is vast. My vision is grand. My commitment to African excellence is unwavering."
◆
✦ "I invest in coaches because I believe in the ecosystem—not because I need saving."
◆
✦ "For Africa to stay sovereign and respected, we must lock arms and magnify our impact."
◆
✦ "AI has leveled the playing field. The virtual highway is open to all."
◆
✦ "What I invest in myself, I pass on. They receive the value. I absorb the cost."
◆
✦ "I am GLOBAL. Going local to Africa—my roots, my motherland."
◆
✦ "Not here to compete. Here to collaborate, elevate, and build alongside my African sisters and brothers."
◆
✦ "Lifelong learning is not weakness—it is the mark of a sovereign mind that refuses to stagnate."
◆
✦ "I walk this path not as a student seeking enlightenment, but as a peer sharing the journey to prosperity."
◆
✦ "My toolchest is vast. My vision is grand. My commitment to African excellence is unwavering."
◆
✦ "I invest in coaches because I believe in the ecosystem—not because I need saving."
◆
✦ "For Africa to stay sovereign and respected, we must lock arms and magnify our impact."
◆
✦ "AI has leveled the playing field. The virtual highway is open to all."
◆
✦ "What I invest in myself, I pass on. They receive the value. I absorb the cost."
◆
📚 Lifelong Learner • Diaspora Bridge Builder • Ecosystem Partner

My 2024-2025
Learning Journey

World-Class Training Meets African Ecosystem Investment

Long before these African cohorts—unplanned additions I squeezed into my already full founder's masterplan—I was heavily invested in world-class business coaching. Darren Hardy. John Maxwell. Brian Carruthers. Darrel Self. Monthly strategy training. Seven dedicated hours weekly. An extensive library built over years.

When the opportunity to invest in African coaches arose, I committed. Despite the grueling EAT vs EST time difference. Despite my packed schedule. I showed up consistently—not as a student seeking enlightenment, but as a peer investing in the ecosystem.

7+
Years of Training
3
African Cohorts
7
Hours Weekly
∞
Value Passed On
See The Full Picture ↓

The Foundation • Est. 2017

Before Africa: World-Class Training

Years of investment in premium coaching and strategy development

Before I ever joined an African cohort, I had already invested heavily in world-class business coaching and leadership development. This isn't background—it's the foundation that makes me effective. Every strategy I share, every system I build, every mentee I guide benefits from years of premium training I've absorbed and continue to invest in.

🎯

Darren Hardy

High Performance & Compound Effect

👑

John Maxwell

Leadership & Influence

💼

Brian Carruthers

Business Building & Teams

📊

Darrel Self

Strategy & Systems

📚

Monthly Strategy Training

7 Hours Weekly • Ongoing Investment

🎧

Entrepreneur's Library

Audio Books • Training Materials • Media

Explore Library →
"Lifelong learning is the cornerstone of my personal growth and business strategy. What I invest in myself, I pass on to my mentees and clients. They receive state-of-the-art solutions and expertise at prices that benefit them. I absorb the cost of my education. They receive the value."

My Philosophy

Why I Invest in Africa

A diaspora bridge builder locking arms with the motherland

I am GLOBAL. Going local to Africa—my roots, my motherland. As a diaspora bridge builder, I know that for Africa to stay sovereign and respected, we must lock arms across our various capacities and corners. Come together to magnify our impact. Maximize our efforts. Monetize our resources and resourcefulness. So we have the funds needed to help our fellow African brothers and sisters prosper in this digital age—where AI has leveled the playing field and the virtual highway is open to all.

🌍

Support the Ecosystem

I invest in African coaches and mentors because I believe in building this space together. My participation says "I see you, I value you, I'm walking with you—as a peer."

👁️

Ground-Level Intel

These coaches live and breathe the African market reality. I gain priceless insight into what's working on the ground—insight no book, course, or USA mastermind can provide.

🌉

Bridge Builder

Diaspora meets motherland. USA training meets African hustle. World-class systems meet grassroots reality. I bridge these worlds so everyone elevates.

African Ecosystem Investment • 2024

My Founding Cohorts

Three founding classes. Three visionary coaches. One shared mission: African prosperity.

Founding Cohort ✓ Completed
🦅

Mentrx Master Minds

Coach: Reagan Kawuma

Also Founder of Musomi & Sayun Coffee

My first real African target audience—16+ women, all by serendipity. LinkedIn's algorithm matched us, and magic happened. His very first cohort, and I was honored to be part of the founding class.

📅 2024 📍 Kampala, Uganda 👥 16+ Women
View Homework → My Review
🎬

Video testimonial ready

Founding Cohort ✓ Completed
👑

CEO of My Life

Coach: Victoria Nyanzi Ateenyi

Founder, The African Sisters Network (TASN)

A transformative journey through personal leadership and business mastery. Featured ~5 coaches including Isaac. Victoria's vision: Uganda → Kenya → Africa → Global. Her first cohort, and I was there from day one.

📅 2024 📍 Uganda → Kenya 🌍 TASN Network
View Homework → My Review
🎬

Video testimonial coming soon

Founding Cohort ★ Current
🦁

Ubuntu Cohort

Coach: Isaac

Under The African Sisters Network (TASN)

The Business Accelerator Mentorship—an 8-week journey through sovereign business architecture. Isaac's very first cohort under TASN, and I'm honored to be part of the founding class documenting this journey.

📅 2024 ⏱️ 8 Weeks 🌍 TASN Network
View Homework → My Review
🎬

Video testimonial in progress

For Networks, Hubs & Partners

Leverage My Empire

Academies, Media Channels, and Systems—available for partnership

Under Brilliant Brand Strategies, I've built a comprehensive suite of evergreen webinars, digital academies, 27 media channels (via Brilliant Broadcasting Channels), and training systems. Networks, startup hubs, and founder communities can license, rent, or partner. Your members gain access to my 21st-century strategies, solutions, services, and 28 proprietary software systems—while I earn while I sleep. It's a sovereign partnership.

🎓

Evergreen Webinars

Pre-recorded, professionally produced training sessions your members can access on their own schedule. No live facilitation required.

📺

27 Media Channels

Brilliant Broadcasting Channels: Africa Chronicles, SHE Evolves, AI Nexus, Travel Portfolio, Sanctuary, Sovereign Architects, and more.

🏛️

Virtual Learning Spaces

Complete e-academy environments where venturepreneurs gain business digital skills privately, securely, on their own timeline.

📍

Directory Empire

East Africa, Best Africa, Africa Best—directory listings for businesses ready to step up to Google My Business level visibility.

📊

Quarterly Masterclasses

Live, paid training events for members ready to level up. Networking opportunities included for deeper engagement.

🛠️

28 Proprietary Systems

Access to my cutting-edge SAAS toolchest—the same systems I use to build sovereign digital empires. Powered by Inc 500 technology.

Interested in Partnership or Access?

Whether you're a network seeking evergreen content, a hub wanting to license my academies, a potential partner exploring collaboration, or simply curious about my journey—I'd love to hear from you.

Request Access → Learn About Me
THE SHE E-BOSS SOLUTIONIST™

Where Identity Meets Digital Power

Know a network that could benefit?

Share this showcase with hubs, founders, or fellow lifelong learners

💬WhatsApp 💼LinkedIn

© 2024 Dynamic Paradigms & Mentorship Success Academies™
The SHE E-Boss Solutionist™ Framework is proprietary intellectual property.
All cohort homework and showcases contain proprietary IP. Unauthorized reproduction prohibited.

Image Gallery Grid
T
Please Check Your Email
We Will Be Following Up Shortly
*
*
*

warning