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
  • Media Empire
  • ELearning Empire
  • Brand Assessment
  • Webinar Registration
  • Nomination Page
  • Refugee Roots
  • Coming Soon Template
  • Contributor Guide
  • Tenex Channel
  • Digital Cards
  • Sovereign Podcast
{"js":"PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBjaGFyc2V0PSJVVEYtOCI+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCI+CiAgICA8dGl0bGU+QnJhbmQgSGVhbHRoIEFzc2Vzc21lbnQgfCBIb3cgU292ZXJlaWduIElzIFlvdXIgRGlnaXRhbCBQcmVzZW5jZT88L3RpdGxlPgogICAgPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRha2UgdGhpcyAyLW1pbnV0ZSBhc3Nlc3NtZW50IHRvIGRpc2NvdmVyIHlvdXIgYnJhbmQncyBkaWdpdGFsIGhlYWx0aCBzY29yZS4gR2V0IGEgZnJlZSByZXB1dGF0aW9uIHJlcG9ydCBhbmQgYWN0aW9uYWJsZSBpbnNpZ2h0cy4iPgogICAgPG1ldGEgbmFtZT0icm9ib3RzIiBjb250ZW50PSJpbmRleCwgZm9sbG93Ij4KICAgIDxsaW5rIHJlbD0iY2Fub25pY2FsIiBocmVmPSJET01BSU5HT0VTSEVSRS5jb20vYXNzZXNzbWVudCI+CiAgICA8bGluayBocmVmPSJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PVBsYXlmYWlyK0Rpc3BsYXk6d2dodEA0MDA7NTAwOzYwMDs3MDAmZmFtaWx5PUNvcm1vcmFudCtHYXJhbW9uZDppdGFsLHdnaHRAMCw0MDA7MCw1MDA7MCw2MDA7MSw0MDAmZmFtaWx5PU51bml0bzp3Z2h0QDMwMDs0MDA7NTAwOzYwMDs3MDAmZGlzcGxheT1zd2FwIiByZWw9InN0eWxlc2hlZXQiPgogICAgPHN0eWxlPgogICAgICAgIDpyb290IHsKICAgICAgICAgICAgLS1uYXZ5OiAjMEQxQjJBOwogICAgICAgICAgICAtLWluZGlnbzogIzFDMUY0QTsKICAgICAgICAgICAgLS1nb2xkOiAjRDRBRjM3OwogICAgICAgICAgICAtLXJvc2Vnb2xkOiAjQzI5QThCOwogICAgICAgICAgICAtLWl2b3J5OiAjRjhGNEVDOwogICAgICAgICAgICAtLWRlZXBnb2xkOiAjQjg5NzJFOwogICAgICAgICAgICAtLWNoYXJjb2FsOiAjMGEwYTEyOwogICAgICAgICAgICAtLXJlZDogI0RDMjYyNjsKICAgICAgICAgICAgLS1vcmFuZ2U6ICNFQTU4MEM7CiAgICAgICAgICAgIC0teWVsbG93OiAjQ0E4QTA0OwogICAgICAgICAgICAtLWdyZWVuOiAjMTZBMzRBOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAqIHsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9CiAgICAgICAgaHRtbCB7IHNjcm9sbC1iZWhhdmlvcjogc21vb3RoOyB9CiAgICAgICAgCiAgICAgICAgYm9keSB7CiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnTnVuaXRvJywgc2Fucy1zZXJpZjsKICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbmF2eSk7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pdm9yeSk7CiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDsKICAgICAgICAgICAgbWluLWhlaWdodDogMTAwdmg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qIEJhY2tncm91bmQgKi8KICAgICAgICAuYmctYW5pbWF0aW9uIHsKICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkOyB0b3A6IDA7IGxlZnQ6IDA7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7CiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB6LWluZGV4OiAwOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiAKICAgICAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IDIwJSAwJSwgcmdiYSgyMTIsIDE3NSwgNTUsIDAuMTIpIDAlLCB0cmFuc3BhcmVudCA1MCUpLAogICAgICAgICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgYXQgODAlIDEwMCUsIHJnYmEoMTk0LCAxNTQsIDEzOSwgMC4wOCkgMCUsIHRyYW5zcGFyZW50IDQwJSksCiAgICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCB2YXIoLS1jaGFyY29hbCkgMCUsIHZhcigtLW5hdnkpIDUwJSwgdmFyKC0taW5kaWdvKSAxMDAlKTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLyogQ29udGFpbmVyICovCiAgICAgICAgLnF1aXotY29udGFpbmVyIHsKICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgICB6LWluZGV4OiAxMDsKICAgICAgICAgICAgbWF4LXdpZHRoOiA4MDBweDsKICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggMjBweDsKICAgICAgICAgICAgbWluLWhlaWdodDogMTAwdmg7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiBQcm9ncmVzcyBCYXIgKi8KICAgICAgICAucHJvZ3Jlc3MtY29udGFpbmVyIHsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsKICAgICAgICB9CiAgICAgICAgLnByb2dyZXNzLWJhciB7CiAgICAgICAgICAgIGhlaWdodDogNnB4OwogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIxMiwgMTc1LCA1NSwgMC4yKTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIH0KICAgICAgICAucHJvZ3Jlc3MtZmlsbCB7CiAgICAgICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCB2YXIoLS1nb2xkKSwgdmFyKC0tcm9zZWdvbGQpKTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjVzIGVhc2U7CiAgICAgICAgICAgIHdpZHRoOiAwJTsKICAgICAgICB9CiAgICAgICAgLnByb2dyZXNzLXRleHQgewogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtOwogICAgICAgICAgICBjb2xvcjogcmdiYSgyNDgsIDI0NCwgMjM2LCAwLjUpOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiBRdWl6IENhcmQgKi8KICAgICAgICAucXVpei1jYXJkIHsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0NWRlZywgcmdiYSgyOCwgMzEsIDc0LCAwLjYpLCByZ2JhKDEzLCAyNywgNDIsIDAuOSkpOwogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIxMiwgMTc1LCA1NSwgMC4yKTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjVweDsKICAgICAgICAgICAgcGFkZGluZzogNTBweCA0MHB4OwogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluIDAuNXMgZWFzZTsKICAgICAgICB9CiAgICAgICAgQGtleWZyYW1lcyBmYWRlSW4gewogICAgICAgICAgICBmcm9tIHsgb3BhY2l0eTogMDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpOyB9CiAgICAgICAgICAgIHRvIHsgb3BhY2l0eTogMTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qIEludHJvIFNjcmVlbiAqLwogICAgICAgIC5pbnRyby1pY29uIHsKICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OwogICAgICAgIH0KICAgICAgICAuaW50cm8tdGl0bGUgewogICAgICAgICAgICBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjhyZW0sIDR2dywgMi41cmVtKTsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsKICAgICAgICB9CiAgICAgICAgLmludHJvLXRpdGxlIC5oaWdobGlnaHQgewogICAgICAgICAgICBjb2xvcjogdmFyKC0tZ29sZCk7CiAgICAgICAgfQogICAgICAgIC5pbnRyby1zdWJ0aXRsZSB7CiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnQ29ybW9yYW50IEdhcmFtb25kJywgc2VyaWY7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtOwogICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1yb3NlZ29sZCk7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7CiAgICAgICAgfQogICAgICAgIC5pbnRyby1kZXNjIHsKICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtOwogICAgICAgICAgICBjb2xvcjogcmdiYSgyNDgsIDI0NCwgMjM2LCAwLjgpOwogICAgICAgICAgICBtYXgtd2lkdGg6IDUwMHB4OwogICAgICAgICAgICBtYXJnaW46IDAgYXV0byAzMHB4OwogICAgICAgIH0KICAgICAgICAuaW50cm8tZmVhdHVyZXMgewogICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgICAgZ2FwOiAzMHB4OwogICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7CiAgICAgICAgfQogICAgICAgIC5pbnRyby1mZWF0dXJlIHsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45cmVtOwogICAgICAgICAgICBjb2xvcjogcmdiYSgyNDgsIDI0NCwgMjM2LCAwLjcpOwogICAgICAgIH0KICAgICAgICAuaW50cm8tZmVhdHVyZSBzcGFuOmZpcnN0LWNoaWxkIHsKICAgICAgICAgICAgY29sb3I6IHZhcigtLWdvbGQpOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiBRdWVzdGlvbiBTY3JlZW4gKi8KICAgICAgICAucXVlc3Rpb24tbnVtYmVyIHsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtOwogICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogM3B4OwogICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgICAgICAgICBjb2xvcjogdmFyKC0tZ29sZCk7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7CiAgICAgICAgfQogICAgICAgIC5xdWVzdGlvbi10ZXh0IHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4zcmVtLCAzdncsIDEuOHJlbSk7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7CiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qIEFuc3dlciBPcHRpb25zICovCiAgICAgICAgLmFuc3dlcnMtZ3JpZCB7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICAgIGdhcDogMTVweDsKICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDsKICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgICAgfQogICAgICAgIC5hbnN3ZXItYnRuIHsKICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMTIsIDE3NSwgNTUsIDAuMDUpOwogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIxMiwgMTc1LCA1NSwgMC4yKTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDsKICAgICAgICAgICAgcGFkZGluZzogMThweCAyNXB4OwogICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICAgIGdhcDogMTVweDsKICAgICAgICAgICAgY29sb3I6IHZhcigtLWl2b3J5KTsKICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtOwogICAgICAgIH0KICAgICAgICAuYW5zd2VyLWJ0bjpob3ZlciB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjEyLCAxNzUsIDU1LCAwLjE1KTsKICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nb2xkKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7CiAgICAgICAgfQogICAgICAgIC5hbnN3ZXItYnRuLnNlbGVjdGVkIHsKICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMTIsIDE3NSwgNTUsIDAuMik7CiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ29sZCk7CiAgICAgICAgfQogICAgICAgIC5hbnN3ZXItbGV0dGVyIHsKICAgICAgICAgICAgd2lkdGg6IDM1cHg7CiAgICAgICAgICAgIGhlaWdodDogMzVweDsKICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMTIsIDE3NSwgNTUsIDAuMik7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1nb2xkKTsKICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgfQogICAgICAgIC5hbnN3ZXItYnRuOmhvdmVyIC5hbnN3ZXItbGV0dGVyLAogICAgICAgIC5hbnN3ZXItYnRuLnNlbGVjdGVkIC5hbnN3ZXItbGV0dGVyIHsKICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ29sZCk7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1uYXZ5KTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLyogUmVzdWx0cyBTY3JlZW4gKi8KICAgICAgICAucmVzdWx0cy1zY29yZSB7CiAgICAgICAgICAgIHdpZHRoOiAxNTBweDsKICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMzBweDsKICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIH0KICAgICAgICAucmVzdWx0cy1zY29yZTo6YmVmb3JlIHsKICAgICAgICAgICAgY29udGVudDogJyc7CiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgICAgaW5zZXQ6IC01cHg7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgICAgICAgICAgcGFkZGluZzogNXB4OwogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1nb2xkKSwgdmFyKC0tcm9zZWdvbGQpKTsKICAgICAgICAgICAgLXdlYmtpdC1tYXNrOiBsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApIGNvbnRlbnQtYm94LCBsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApOwogICAgICAgICAgICBtYXNrOiBsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApIGNvbnRlbnQtYm94LCBsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApOwogICAgICAgICAgICAtd2Via2l0LW1hc2stY29tcG9zaXRlOiB4b3I7CiAgICAgICAgICAgIG1hc2stY29tcG9zaXRlOiBleGNsdWRlOwogICAgICAgIH0KICAgICAgICAuc2NvcmUtbnVtYmVyIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgICAgICAgICAgY29sb3I6IHZhcigtLWdvbGQpOwogICAgICAgIH0KICAgICAgICAuc2NvcmUtbGFiZWwgewogICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTsKICAgICAgICAgICAgY29sb3I6IHJnYmEoMjQ4LCAyNDQsIDIzNiwgMC42KTsKICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLnJlc3VsdHMtbGV2ZWwgewogICAgICAgICAgICBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7CiAgICAgICAgfQogICAgICAgIC5yZXN1bHRzLXRhZ2xpbmUgewogICAgICAgICAgICBmb250LWZhbWlseTogJ0Nvcm1vcmFudCBHYXJhbW9uZCcsIHNlcmlmOwogICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTsKICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICAgICAgICBjb2xvcjogdmFyKC0tcm9zZWdvbGQpOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4OwogICAgICAgIH0KICAgICAgICAucmVzdWx0cy1kZXNjIHsKICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtOwogICAgICAgICAgICBjb2xvcjogcmdiYSgyNDgsIDI0NCwgMjM2LCAwLjgpOwogICAgICAgICAgICBtYXgtd2lkdGg6IDUwMHB4OwogICAgICAgICAgICBtYXJnaW46IDAgYXV0byAzMHB4OwogICAgICAgICAgICBsaW5lLWhlaWdodDogMS43OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiBTY29yZSBMZXZlbHMgKi8KICAgICAgICAubGV2ZWwtY3JpdGljYWwgeyBjb2xvcjogdmFyKC0tcmVkKTsgfQogICAgICAgIC5sZXZlbC13YXJuaW5nIHsgY29sb3I6IHZhcigtLW9yYW5nZSk7IH0KICAgICAgICAubGV2ZWwtZGV2ZWxvcGluZyB7IGNvbG9yOiB2YXIoLS15ZWxsb3cpOyB9CiAgICAgICAgLmxldmVsLXN0cm9uZyB7IGNvbG9yOiB2YXIoLS1ncmVlbik7IH0KICAgICAgICAubGV2ZWwtc292ZXJlaWduIHsgY29sb3I6IHZhcigtLWdvbGQpOyB9CiAgICAgICAgCiAgICAgICAgLyogUmVzdWx0cyBCcmVha2Rvd24gKi8KICAgICAgICAucmVzdWx0cy1icmVha2Rvd24gewogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMik7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7CiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHg7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICAgICAgfQogICAgICAgIC5icmVha2Rvd24tdGl0bGUgewogICAgICAgICAgICBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgY29sb3I6IHZhcigtLWdvbGQpOwogICAgICAgIH0KICAgICAgICAuYnJlYWtkb3duLWl0ZW0gewogICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDsKICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjEyLCAxNzUsIDU1LCAwLjEpOwogICAgICAgIH0KICAgICAgICAuYnJlYWtkb3duLWl0ZW06bGFzdC1jaGlsZCB7CiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7CiAgICAgICAgfQogICAgICAgIC5icmVha2Rvd24tbGFiZWwgewogICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTsKICAgICAgICAgICAgY29sb3I6IHJnYmEoMjQ4LCAyNDQsIDIzNiwgMC43KTsKICAgICAgICB9CiAgICAgICAgLmJyZWFrZG93bi12YWx1ZSB7CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1nb2xkKTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLyogQ1RBIEJ1dHRvbnMgKi8KICAgICAgICAuY3RhLWJ0biB7CiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OwogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgICAgZ2FwOiAxMHB4OwogICAgICAgICAgICBwYWRkaW5nOiAxOHB4IDQwcHg7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDsKICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4OwogICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlOwogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7CiAgICAgICAgfQogICAgICAgIC5jdGEtYnRuLnByaW1hcnkgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1nb2xkKSwgdmFyKC0tZGVlcGdvbGQpKTsKICAgICAgICAgICAgY29sb3I6IHZhcigtLW5hdnkpOwogICAgICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDIxMiwgMTc1LCA1NSwgMC4zKTsKICAgICAgICB9CiAgICAgICAgLmN0YS1idG4ucHJpbWFyeTpob3ZlciB7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KTsKICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxNXB4IDQwcHggcmdiYSgyMTIsIDE3NSwgNTUsIDAuNCk7CiAgICAgICAgfQogICAgICAgIC5jdGEtYnRuLnNlY29uZGFyeSB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nb2xkKTsKICAgICAgICAgICAgY29sb3I6IHZhcigtLWdvbGQpOwogICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OwogICAgICAgIH0KICAgICAgICAuY3RhLWJ0bi5zZWNvbmRhcnk6aG92ZXIgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIxMiwgMTc1LCA1NSwgMC4xKTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLyogRnJlZSBUb29sIEJveCAqLwogICAgICAgIC5mcmVlLXRvb2wtYm94IHsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgyMiwgMTYzLCA3NCwgMC4xNSksIHJnYmEoMjEyLCAxNzUsIDU1LCAwLjEpKTsKICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyMiwgMTYzLCA3NCwgMC4zKTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDsKICAgICAgICAgICAgcGFkZGluZzogMjVweDsKICAgICAgICAgICAgbWFyZ2luOiAzMHB4IDA7CiAgICAgICAgfQogICAgICAgIC5mcmVlLWJhZGdlIHsKICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7CiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTsKICAgICAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43cmVtOwogICAgICAgICAgICBmb250LXdlaWdodDogNzAwOwogICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4OwogICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OwogICAgICAgIH0KICAgICAgICAuZnJlZS10b29sLWJveCBoMyB7CiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUGxheWZhaXIgRGlzcGxheScsIHNlcmlmOwogICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsKICAgICAgICB9CiAgICAgICAgLmZyZWUtdG9vbC1ib3ggcCB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45NXJlbTsKICAgICAgICAgICAgY29sb3I6IHJnYmEoMjQ4LCAyNDQsIDIzNiwgMC44KTsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLyogRW1haWwgQ2FwdHVyZSAqLwogICAgICAgIC5lbWFpbC1jYXB0dXJlIHsKICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDsKICAgICAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7CiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDIxMiwgMTc1LCA1NSwgMC4yKTsKICAgICAgICB9CiAgICAgICAgLmVtYWlsLWNhcHR1cmUgaDQgewogICAgICAgICAgICBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7CiAgICAgICAgfQogICAgICAgIC5lbWFpbC1jYXB0dXJlIHAgewogICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTsKICAgICAgICAgICAgY29sb3I6IHJnYmEoMjQ4LCAyNDQsIDIzNiwgMC43KTsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsKICAgICAgICB9CiAgICAgICAgLmVtYWlsLWZvcm0gewogICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICBnYXA6IDEwcHg7CiAgICAgICAgICAgIG1heC13aWR0aDogNDUwcHg7CiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvOwogICAgICAgIH0KICAgICAgICAuZW1haWwtaW5wdXQgewogICAgICAgICAgICBmbGV4OiAxOwogICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7CiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjEyLCAxNzUsIDU1LCAwLjMpOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4OwogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMik7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pdm9yeSk7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTsKICAgICAgICB9CiAgICAgICAgLmVtYWlsLWlucHV0OjpwbGFjZWhvbGRlciB7CiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI0OCwgMjQ0LCAyMzYsIDAuNCk7CiAgICAgICAgfQogICAgICAgIC5lbWFpbC1pbnB1dDpmb2N1cyB7CiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ29sZCk7CiAgICAgICAgfQogICAgICAgIC5lbWFpbC1zdWJtaXQgewogICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDMwcHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLWdvbGQpLCB2YXIoLS1kZWVwZ29sZCkpOwogICAgICAgICAgICBjb2xvcjogdmFyKC0tbmF2eSk7CiAgICAgICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOwogICAgICAgIH0KICAgICAgICAuZW1haWwtc3VibWl0OmhvdmVyIHsKICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLyogSGlkZGVuIFNjcmVlbnMgKi8KICAgICAgICAuc2NyZWVuIHsKICAgICAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgICB9CiAgICAgICAgLnNjcmVlbi5hY3RpdmUgewogICAgICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLyogUnVkZSBBd2FrZW5pbmcgQWxlcnQgKi8KICAgICAgICAuYXdha2VuaW5nLWFsZXJ0IHsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgyMjAsIDM4LCAzOCwgMC4xNSksIHJnYmEoMjM0LCA4OCwgMTIsIDAuMSkpOwogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIyMCwgMzgsIDM4LCAwLjMpOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4OwogICAgICAgICAgICBwYWRkaW5nOiAyMHB4OwogICAgICAgICAgICBtYXJnaW46IDI1cHggMDsKICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsKICAgICAgICB9CiAgICAgICAgLmF3YWtlbmluZy1hbGVydCBoNCB7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1yZWQpOwogICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDsKICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgfQogICAgICAgIC5hd2FrZW5pbmctYWxlcnQgcCB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45NXJlbTsKICAgICAgICAgICAgY29sb3I6IHJnYmEoMjQ4LCAyNDQsIDIzNiwgMC44KTsKICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLyogRm9vdGVyICovCiAgICAgICAgLnF1aXotZm9vdGVyIHsKICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4OwogICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07CiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI0OCwgMjQ0LCAyMzYsIDAuNCk7CiAgICAgICAgfQogICAgICAgIC5xdWl6LWZvb3RlciBhIHsKICAgICAgICAgICAgY29sb3I6IHZhcigtLWdvbGQpOwogICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qIFJlc3BvbnNpdmUgKi8KICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHsKICAgICAgICAgICAgLnF1aXotY2FyZCB7IHBhZGRpbmc6IDM1cHggMjVweDsgfQogICAgICAgICAgICAuZW1haWwtZm9ybSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0KICAgICAgICAgICAgLmludHJvLWZlYXR1cmVzIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiAxNXB4OyB9CiAgICAgICAgICAgIC51cHNlbGwtZ3JpZCB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyB9CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qIFVwc2VsbCBPcHBvcnR1bml0eSBCb3hlcyAqLwogICAgICAgIC51cHNlbGwtZ3JpZCB7CiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7CiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjAwcHgsIDFmcikpOwogICAgICAgICAgICBnYXA6IDE1cHg7CiAgICAgICAgICAgIG1hcmdpbjogMjVweCAwOwogICAgICAgIH0KICAgICAgICAudXBzZWxsLWJveCB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTA3LCA2MywgMTYwLCAwLjEpOwogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwNywgNjMsIDE2MCwgMC4zKTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTJweDsKICAgICAgICAgICAgcGFkZGluZzogMjBweDsKICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOwogICAgICAgIH0KICAgICAgICAudXBzZWxsLWJveDpob3ZlciB7CiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgxMDcsIDYzLCAxNjAsIDAuNik7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KTsKICAgICAgICB9CiAgICAgICAgLnVwc2VsbC1ib3guYWkgeyAKICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSg1OSwgMTMwLCAyNDYsIDAuMSk7IAogICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoNTksIDEzMCwgMjQ2LCAwLjMpOyAKICAgICAgICB9CiAgICAgICAgLnVwc2VsbC1ib3gudmlkZW8geyAKICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMzksIDY4LCA2OCwgMC4xKTsgCiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyMzksIDY4LCA2OCwgMC4zKTsgCiAgICAgICAgfQogICAgICAgIC51cHNlbGwtYm94LnJlcHV0YXRpb24geyAKICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgzNCwgMTk3LCA5NCwgMC4xKTsgCiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgzNCwgMTk3LCA5NCwgMC4zKTsgCiAgICAgICAgfQogICAgICAgIC51cHNlbGwtYm94LndoYXRzYXBwIHsgCiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMzcsIDIxMSwgMTAyLCAwLjEpOyAKICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDM3LCAyMTEsIDEwMiwgMC4zKTsgCiAgICAgICAgfQogICAgICAgIC51cHNlbGwtYm94LmNhcmQgeyAKICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMTIsIDE3NSwgNTUsIDAuMTUpOyAKICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDIxMiwgMTc1LCA1NSwgMC40KTsgCiAgICAgICAgfQogICAgICAgIC51cHNlbGwtYm94LmNtbyB7IAogICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDEzOSwgMjEsIDU2LCAwLjE1KTsgCiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgxMzksIDIxLCA1NiwgMC40KTsgCiAgICAgICAgfQogICAgICAgIC51cHNlbGwtYm94LmNvbnRlbnQgeyAKICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNDksIDExNSwgMjIsIDAuMTUpOyAKICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI0OSwgMTE1LCAyMiwgMC40KTsgCiAgICAgICAgfQogICAgICAgIC51cHNlbGwtYm94Lm1lbWJlcnNoaXAgeyAKICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgxNjgsIDg1LCAyNDcsIDAuMTUpOyAKICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE2OCwgODUsIDI0NywgMC40KTsgCiAgICAgICAgfQogICAgICAgIC51cHNlbGwtaWNvbiB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsKICAgICAgICB9CiAgICAgICAgLnVwc2VsbC1ib3ggaDQgewogICAgICAgICAgICBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pdm9yeSk7CiAgICAgICAgfQogICAgICAgIC51cHNlbGwtYm94IHAgewogICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTsKICAgICAgICAgICAgY29sb3I6IHJnYmEoMjQ4LCAyNDQsIDIzNiwgMC43KTsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDsKICAgICAgICB9CiAgICAgICAgLnVwc2VsbC1ib3ggLnNjb3JlLXRhZyB7CiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgICAgICAgcGFkZGluZzogM3B4IDEwcHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjIwLCAzOCwgMzgsIDAuMik7CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43cmVtOwogICAgICAgICAgICBjb2xvcjogI0ZDQTVBNTsKICAgICAgICB9CiAgICA8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgogICAgPGRpdiBjbGFzcz0iYmctYW5pbWF0aW9uIj48L2Rpdj4KICAgIAogICAgPGRpdiBjbGFzcz0icXVpei1jb250YWluZXIiPgogICAgICAgIDwhLS0gUHJvZ3Jlc3MgQmFyIC0tPgogICAgICAgIDxkaXYgY2xhc3M9InByb2dyZXNzLWNvbnRhaW5lciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2dyZXNzLWJhciI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9ncmVzcy1maWxsIiBpZD0icHJvZ3Jlc3NGaWxsIj48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxwIGNsYXNzPSJwcm9ncmVzcy10ZXh0IiBpZD0icHJvZ3Jlc3NUZXh0Ij5SZWFkeSB0byBiZWdpbjwvcD4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8IS0tIElOVFJPIFNDUkVFTiAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJxdWl6LWNhcmQgc2NyZWVuIGFjdGl2ZSIgaWQ9ImludHJvU2NyZWVuIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW50cm8taWNvbiI+8J+UjTwvZGl2PgogICAgICAgICAgICA8aDEgY2xhc3M9ImludHJvLXRpdGxlIj5Ib3cgPHNwYW4gY2xhc3M9ImhpZ2hsaWdodCI+U292ZXJlaWduPC9zcGFuPiBJcyBZb3VyIEJyYW5kPzwvaDE+CiAgICAgICAgICAgIDxwIGNsYXNzPSJpbnRyby1zdWJ0aXRsZSI+VGhlIDQtTWludXRlIERpZ2l0YWwgSGVhbHRoIEFzc2Vzc21lbnQ8L3A+CiAgICAgICAgICAgIDxwIGNsYXNzPSJpbnRyby1kZXNjIj4KICAgICAgICAgICAgICAgIE1vc3QgZW50cmVwcmVuZXVycyBhcmUgZGlnaXRhbCBzaGFyZWNyb3BwZXJzIH4gYnVpbGRpbmcgb24gcmVudGVkIGxhbmQsIGludmlzaWJsZSB0byB0aGVpciBpZGVhbCBjbGllbnRzLCBhbmQgb25lIGFsZ29yaXRobSBjaGFuZ2UgYXdheSBmcm9tIGRpc2FzdGVyLiBMZXQncyBmaW5kIG91dCB3aGVyZSB5b3Ugc3RhbmQuCiAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW50cm8tZmVhdHVyZXMiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW50cm8tZmVhdHVyZSI+CiAgICAgICAgICAgICAgICAgICAgPHNwYW4+4o+x77iPPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDxzcGFuPjQgTWludXRlczwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW50cm8tZmVhdHVyZSI+CiAgICAgICAgICAgICAgICAgICAgPHNwYW4+8J+Tijwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8c3Bhbj4xNyBRdWVzdGlvbnM8L3NwYW4+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImludHJvLWZlYXR1cmUiPgogICAgICAgICAgICAgICAgICAgIDxzcGFuPvCfjoE8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPHNwYW4+RnJlZSBSZXBvcnQ8L3NwYW4+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImN0YS1idG4gcHJpbWFyeSIgb25jbGljaz0ic3RhcnRRdWl6KCkiPgogICAgICAgICAgICAgICAgPHNwYW4+RGlzY292ZXIgTXkgU2NvcmU8L3NwYW4+CiAgICAgICAgICAgICAgICA8c3Bhbj7ihpI8L3NwYW4+CiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgIDwhLS0gUVVFU1RJT04gU0NSRUVOUyAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJxdWl6LWNhcmQgc2NyZWVuIiBpZD0icXVlc3Rpb25TY3JlZW4iPgogICAgICAgICAgICA8cCBjbGFzcz0icXVlc3Rpb24tbnVtYmVyIiBpZD0icXVlc3Rpb25OdW1iZXIiPlF1ZXN0aW9uIDEgb2YgMTA8L3A+CiAgICAgICAgICAgIDxoMiBjbGFzcz0icXVlc3Rpb24tdGV4dCIgaWQ9InF1ZXN0aW9uVGV4dCI+PC9oMj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5zd2Vycy1ncmlkIiBpZD0iYW5zd2Vyc0dyaWQiPjwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgIDwhLS0gUkVTVUxUUyBTQ1JFRU4gLS0+CiAgICAgICAgPGRpdiBjbGFzcz0icXVpei1jYXJkIHNjcmVlbiIgaWQ9InJlc3VsdHNTY3JlZW4iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZXN1bHRzLXNjb3JlIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzY29yZS1udW1iZXIiIGlkPSJzY29yZU51bWJlciI+MDwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzY29yZS1sYWJlbCI+b3V0IG9mIDEwMDwvc3Bhbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxoMiBjbGFzcz0icmVzdWx0cy1sZXZlbCIgaWQ9InJlc3VsdHNMZXZlbCI+TG9hZGluZy4uLjwvaDI+CiAgICAgICAgICAgIDxwIGNsYXNzPSJyZXN1bHRzLXRhZ2xpbmUiIGlkPSJyZXN1bHRzVGFnbGluZSI+PC9wPgogICAgICAgICAgICA8cCBjbGFzcz0icmVzdWx0cy1kZXNjIiBpZD0icmVzdWx0c0Rlc2MiPjwvcD4KICAgICAgICAgICAgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImF3YWtlbmluZy1hbGVydCIgaWQ9ImF3YWtlbmluZ0FsZXJ0Ij4KICAgICAgICAgICAgICAgIDxoND7imqDvuI8gUmVhbGl0eSBDaGVjazwvaDQ+CiAgICAgICAgICAgICAgICA8cCBpZD0iYXdha2VuaW5nVGV4dCI+PC9wPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJlc3VsdHMtYnJlYWtkb3duIiBpZD0icmVzdWx0c0JyZWFrZG93biI+CiAgICAgICAgICAgICAgICA8aDQgY2xhc3M9ImJyZWFrZG93bi10aXRsZSI+WW91ciBBc3Nlc3NtZW50IEJyZWFrZG93bjwvaDQ+CiAgICAgICAgICAgICAgICA8ZGl2IGlkPSJicmVha2Rvd25JdGVtcyI+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAKICAgICAgICAgICAgPCEtLSBGcmVlIFRvb2wgQ1RBIC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmcmVlLXRvb2wtYm94Ij4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJmcmVlLWJhZGdlIj7wn46BIEZyZWUgVG9vbDwvc3Bhbj4KICAgICAgICAgICAgICAgIDxoMz5HZXQgWW91ciBSZXB1dGF0aW9uIEdyYWRlIFJlcG9ydDwvaDM+CiAgICAgICAgICAgICAgICA8cD5TZWUgZXhhY3RseSB3aGF0IEdvb2dsZSBzaG93cyB3aGVuIHBlb3BsZSBzZWFyY2ggZm9yIHlvdSBvciB5b3VyIGJ1c2luZXNzLiBUaGlzIGZyZWUgcmVwb3J0IHJldmVhbHMgeW91ciBvbmxpbmUgcmVwdXRhdGlvbiBzY29yZSB+IG5vIHN0cmluZ3MgYXR0YWNoZWQuPC9wPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly90b3AucmVwZ3JhZGVyLmNvbS8iIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0iY3RhLWJ0biBwcmltYXJ5Ij4KICAgICAgICAgICAgICAgICAgICA8c3Bhbj5HZXQgRnJlZSBSZXB1dGF0aW9uIFJlcG9ydDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8c3Bhbj7ihpI8L3NwYW4+CiAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAKICAgICAgICAgICAgPCEtLSBVcHNlbGwgT3Bwb3J0dW5pdHkgQm94ZXMgLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InVwc2VsbC1ncmlkIiBpZD0idXBzZWxsR3JpZCI+CiAgICAgICAgICAgICAgICA8IS0tIFRoZXNlIHBvcHVsYXRlIGJhc2VkIG9uIGxvdyBzY29yZXMgLS0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAKICAgICAgICAgICAgPGRpdiBjbGFzcz0iZW1haWwtY2FwdHVyZSI+CiAgICAgICAgICAgICAgICA8aDQ+V2FudCB0aGUgRnVsbCBTb3ZlcmVpZ250eSBSb2FkbWFwPzwvaDQ+CiAgICAgICAgICAgICAgICA8cD5HZXQgeW91ciBwZXJzb25hbGl6ZWQgYWN0aW9uIHBsYW4gYmFzZWQgb24geW91ciBhc3Nlc3NtZW50IHJlc3VsdHMuPC9wPgogICAgICAgICAgICAgICAgPGZvcm0gY2xhc3M9ImVtYWlsLWZvcm0iIG9uc3VibWl0PSJoYW5kbGVFbWFpbFN1Ym1pdChldmVudCkiPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJlbWFpbCIgY2xhc3M9ImVtYWlsLWlucHV0IiBwbGFjZWhvbGRlcj0iRW50ZXIgeW91ciBlbWFpbCIgcmVxdWlyZWQ+CiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJzdWJtaXQiIGNsYXNzPSJlbWFpbC1zdWJtaXQiPlNlbmQgSXQg4oaSPC9idXR0b24+CiAgICAgICAgICAgICAgICA8L2Zvcm0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgIDwhLS0gRm9vdGVyIC0tPgogICAgICAgIDxkaXYgY2xhc3M9InF1aXotZm9vdGVyIj4KICAgICAgICAgICAgwqkgMjAxNy0yMDI2IDxhIGhyZWY9IkRPTUFJTkdPRVNIRVJFLmNvbS8iPk11a2FzYSBWZW50dXJlIFBhcnRuZXJzIExMQzwvYT4g4oCiIFRoZSBTb3ZlcmVpZ24gQXJjaGl0ZWN0cwogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgICAKICAgIDxzY3JpcHQ+CiAgICAgICAgLy8gUXVlc3Rpb25zIERhdGEKICAgICAgICBjb25zdCBxdWVzdGlvbnMgPSBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHF1ZXN0aW9uOiAiRG8geW91IG93biB5b3VyIHByaW1hcnkgd2Vic2l0ZSBkb21haW4sIG9yIGFyZSB5b3UgdXNpbmcgYSBmcmVlIHN1YmRvbWFpbiAobGlrZSAud2l4LmNvbSBvciAud29yZHByZXNzLmNvbSk/IiwKICAgICAgICAgICAgICAgIGFuc3dlcnM6IFsKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJJIG93biBteSBkb21haW4gYW5kIGl0J3MgbXkgYnVzaW5lc3MgbmFtZSIsIHBvaW50czogMTAsIGNhdGVnb3J5OiAiZGlnaXRhbC1sYW5kIiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkkgb3duIGEgZG9tYWluIGJ1dCBpdCdzIG5vdCBpZGVhbCIsIHBvaW50czogNiwgY2F0ZWdvcnk6ICJkaWdpdGFsLWxhbmQiIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiSSB1c2UgYSBmcmVlIHN1YmRvbWFpbiIsIHBvaW50czogMiwgY2F0ZWdvcnk6ICJkaWdpdGFsLWxhbmQiIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiSSBkb24ndCBoYXZlIGEgd2Vic2l0ZSIsIHBvaW50czogMCwgY2F0ZWdvcnk6ICJkaWdpdGFsLWxhbmQiIH0KICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcXVlc3Rpb246ICJJZiBJbnN0YWdyYW0sIEZhY2Vib29rLCBUaWtUb2ssIG9yIFdoYXRzQXBwIHNodXQgZG93biB0b21vcnJvdywgaG93IHdvdWxkIHlvdXIgaWRlYWwgY2xpZW50cyBmaW5kIHlvdT8iLAogICAgICAgICAgICAgICAgYW5zd2VyczogWwogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkVhc2lseSB+IEkgaGF2ZSBteSBvd24gd2Vic2l0ZSwgZW1haWwgbGlzdCwgYW5kIG11bHRpcGxlIGNoYW5uZWxzIiwgcG9pbnRzOiAxMCwgY2F0ZWdvcnk6ICJzb3ZlcmVpZ250eSIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJUaGV5J2QgZmluZCBteSB3ZWJzaXRlIGJ1dCBJJ2QgbG9zZSBtb3N0IGxlYWRzIiwgcG9pbnRzOiA2LCBjYXRlZ29yeTogInNvdmVyZWlnbnR5IiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkl0IHdvdWxkIGJlIHZlcnkgZGlmZmljdWx0IiwgcG9pbnRzOiAzLCBjYXRlZ29yeTogInNvdmVyZWlnbnR5IiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIlRoZXkgd291bGRuJ3QgfiBzb2NpYWwgbWVkaWEgSVMgbXkgYnVzaW5lc3MiLCBwb2ludHM6IDAsIGNhdGVnb3J5OiAic292ZXJlaWdudHkiIH0KICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcXVlc3Rpb246ICJIb3cgZG8geW91IHVzZSBXaGF0c0FwcCBmb3IgeW91ciBidXNpbmVzcz8iLAogICAgICAgICAgICAgICAgYW5zd2VyczogWwogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIldoYXRzQXBwIEJ1c2luZXNzIHdpdGggY2F0YWxvZywgYXV0b21hdGVkIHJlcGxpZXMsIGFuZCBicm9hZGNhc3QgbGlzdHMiLCBwb2ludHM6IDEwLCBjYXRlZ29yeTogIndoYXRzYXBwIiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIldoYXRzQXBwIEJ1c2luZXNzIGJ1dCBtb3N0bHkgbWFudWFsIG1lc3NhZ2luZyIsIHBvaW50czogNiwgY2F0ZWdvcnk6ICJ3aGF0c2FwcCIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJSZWd1bGFyIFdoYXRzQXBwIH4gSSBtaXggcGVyc29uYWwgYW5kIGJ1c2luZXNzIiwgcG9pbnRzOiAzLCBjYXRlZ29yeTogIndoYXRzYXBwIiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkkgZG9uJ3QgcmVhbGx5IHVzZSBXaGF0c0FwcCBmb3IgYnVzaW5lc3MiLCBwb2ludHM6IDAsIGNhdGVnb3J5OiAid2hhdHNhcHAiIH0KICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcXVlc3Rpb246ICJXaGVuIHlvdSBtZWV0IHNvbWVvbmUgYXQgYW4gZXZlbnQgb3IgbmV0d29ya2luZyBmdW5jdGlvbiwgaG93IGRvIHlvdSBzaGFyZSB5b3VyIGNvbnRhY3QgYW5kIHNlcnZpY2VzPyIsCiAgICAgICAgICAgICAgICBhbnN3ZXJzOiBbCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiRGlnaXRhbCBidXNpbmVzcyBjYXJkIHdpdGggbGlua3MgdG8gbXkgd2Vic2l0ZSwgcG9ydGZvbGlvLCBhbmQgYm9va2luZyIsIHBvaW50czogMTAsIGNhdGVnb3J5OiAiZGlnaXRhbC1jYXJkIiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIlRyYWRpdGlvbmFsIHBhcGVyIGJ1c2luZXNzIGNhcmQiLCBwb2ludHM6IDUsIGNhdGVnb3J5OiAiZGlnaXRhbC1jYXJkIiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkkganVzdCBleGNoYW5nZSBwaG9uZSBudW1iZXJzIG9yIHNvY2lhbCBoYW5kbGVzIiwgcG9pbnRzOiAzLCBjYXRlZ29yeTogImRpZ2l0YWwtY2FyZCIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJJIHVzdWFsbHkgZm9yZ2V0IG9yIGRvbid0IGhhdmUgYW55dGhpbmcgdG8gc2hhcmUiLCBwb2ludHM6IDAsIGNhdGVnb3J5OiAiZGlnaXRhbC1jYXJkIiB9CiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHF1ZXN0aW9uOiAiSG93IHdvdWxkIHlvdSBkZXNjcmliZSB5b3VyIGVtYWlsIGxpc3Q/IiwKICAgICAgICAgICAgICAgIGFuc3dlcnM6IFsKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJHcm93aW5nIGFuZCBlbmdhZ2VkIH4gSSBlbWFpbCByZWd1bGFybHkgYW5kIGdldCByZXNwb25zZXMiLCBwb2ludHM6IDEwLCBjYXRlZ29yeTogImF1ZGllbmNlIiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkkgaGF2ZSBvbmUgYnV0IHJhcmVseSB1c2UgaXQiLCBwb2ludHM6IDUsIGNhdGVnb3J5OiAiYXVkaWVuY2UiIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiU21hbGwgb3Igbm9uLWV4aXN0ZW50IiwgcG9pbnRzOiAyLCBjYXRlZ29yeTogImF1ZGllbmNlIiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIldoYXQgZW1haWwgbGlzdD8iLCBwb2ludHM6IDAsIGNhdGVnb3J5OiAiYXVkaWVuY2UiIH0KICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcXVlc3Rpb246ICJEbyB5b3UgaGF2ZSBhIGJsb2cgb3IgbmV3c2xldHRlciB0byBzaGFyZSB5b3VyIGV4cGVydGlzZSBhbmQgc3RheSBjb25uZWN0ZWQgd2l0aCB5b3VyIGF1ZGllbmNlPyIsCiAgICAgICAgICAgICAgICBhbnN3ZXJzOiBbCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiWWVzIH4gSSBwdWJsaXNoIGNvbnNpc3RlbnRseSBhbmQgaXQgZHJpdmVzIHJlYWwgZW5nYWdlbWVudCIsIHBvaW50czogMTAsIGNhdGVnb3J5OiAiY29udGVudC1lbmdpbmUiIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiSSBoYXZlIG9uZSBidXQgSSBwb3N0IGluY29uc2lzdGVudGx5IiwgcG9pbnRzOiA1LCBjYXRlZ29yeTogImNvbnRlbnQtZW5naW5lIiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkkndmUgYmVlbiBtZWFuaW5nIHRvIHN0YXJ0IG9uZSIsIHBvaW50czogMiwgY2F0ZWdvcnk6ICJjb250ZW50LWVuZ2luZSIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJObyB+IEkgb25seSBwb3N0IG9uIHNvY2lhbCBtZWRpYSIsIHBvaW50czogMCwgY2F0ZWdvcnk6ICJjb250ZW50LWVuZ2luZSIgfQogICAgICAgICAgICAgICAgXQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBxdWVzdGlvbjogIldoZW4gc29tZW9uZSBHb29nbGVzIHlvdXIgbmFtZSBvciBidXNpbmVzcywgd2hhdCBkbyB0aGV5IGZpbmQ/IiwKICAgICAgICAgICAgICAgIGFuc3dlcnM6IFsKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJNeSB3ZWJzaXRlLCBwcm9mZXNzaW9uYWwgcHJvZmlsZXMsIGFuZCBwb3NpdGl2ZSBjb250ZW50IEkgY29udHJvbCIsIHBvaW50czogMTAsIGNhdGVnb3J5OiAicmVwdXRhdGlvbiIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJNb3N0bHkgZ29vZCBzdHVmZiBidXQgc29tZSB0aGluZ3MgSSBjYW4ndCBjb250cm9sIiwgcG9pbnRzOiA2LCBjYXRlZ29yeTogInJlcHV0YXRpb24iIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiUmFuZG9tIHJlc3VsdHMgfiBJIGRvbid0IHJlYWxseSBrbm93IiwgcG9pbnRzOiAzLCBjYXRlZ29yeTogInJlcHV0YXRpb24iIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiTm90aGluZyByZWxldmFudCBvciBjb25jZXJuaW5nIHRoaW5ncyIsIHBvaW50czogMCwgY2F0ZWdvcnk6ICJyZXB1dGF0aW9uIiB9CiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHF1ZXN0aW9uOiAiRG8geW91IGFjdGl2ZWx5IG1hbmFnZSBhbmQgbW9uaXRvciB5b3VyIG9ubGluZSByZXB1dGF0aW9uPyIsCiAgICAgICAgICAgICAgICBhbnN3ZXJzOiBbCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiWWVzIH4gSSBoYXZlIGFsZXJ0cywgcmVzcG9uZCB0byByZXZpZXdzLCBhbmQgY3VyYXRlIG15IHNlYXJjaCByZXN1bHRzIiwgcG9pbnRzOiAxMCwgY2F0ZWdvcnk6ICJyZXB1dGF0aW9uLW1nbXQiIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiU29tZXRpbWVzIH4gSSBjaGVjayByZXZpZXdzIG9jY2FzaW9uYWxseSIsIHBvaW50czogNSwgY2F0ZWdvcnk6ICJyZXB1dGF0aW9uLW1nbXQiIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiUmFyZWx5IH4gSSBob3BlIGZvciB0aGUgYmVzdCIsIHBvaW50czogMiwgY2F0ZWdvcnk6ICJyZXB1dGF0aW9uLW1nbXQiIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiTmV2ZXIgfiBJIGRvbid0IGtub3cgd2hhdCBwZW9wbGUgYXJlIHNheWluZyBhYm91dCBtZSIsIHBvaW50czogMCwgY2F0ZWdvcnk6ICJyZXB1dGF0aW9uLW1nbXQiIH0KICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcXVlc3Rpb246ICJIb3cgY2xlYXIgaXMgeW91ciBicmFuZCBtZXNzYWdlIGFuZCBwb3NpdGlvbmluZz8iLAogICAgICAgICAgICAgICAgYW5zd2VyczogWwogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkNyeXN0YWwgY2xlYXIgfiBJIGNhbiBleHBsYWluIHdoYXQgSSBkbyBpbiBvbmUgc2VudGVuY2UiLCBwb2ludHM6IDEwLCBjYXRlZ29yeTogImNsYXJpdHkiIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiUHJldHR5IGNsZWFyIGJ1dCBJIHNvbWV0aW1lcyBzdHJ1Z2dsZSB0byBhcnRpY3VsYXRlIGl0IiwgcG9pbnRzOiA2LCBjYXRlZ29yeTogImNsYXJpdHkiIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiSXQncyBldm9sdmluZyB+IEknbSBzdGlsbCBmaWd1cmluZyBpdCBvdXQiLCBwb2ludHM6IDMsIGNhdGVnb3J5OiAiY2xhcml0eSIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJIb25lc3RseSwgSSdtIGFsbCBvdmVyIHRoZSBwbGFjZSIsIHBvaW50czogMCwgY2F0ZWdvcnk6ICJjbGFyaXR5IiB9CiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHF1ZXN0aW9uOiAiSG93IGFyZSB5b3UgdXNpbmcgdmlkZW8gY29udGVudCB0byBncm93IHlvdXIgYnVzaW5lc3M/IiwKICAgICAgICAgICAgICAgIGFuc3dlcnM6IFsKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJDb25zaXN0ZW50bHkgfiBZb3VUdWJlLCBUaWtUb2ssIFJlZWxzLCBvciBsaXZlIHN0cmVhbXMgd2l0aCBhIHN0cmF0ZWd5IiwgcG9pbnRzOiAxMCwgY2F0ZWdvcnk6ICJ2aWRlbyIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJTb21ldGltZXMgfiBJIHBvc3QgdmlkZW9zIGJ1dCBub3QgY29uc2lzdGVudGx5IiwgcG9pbnRzOiA1LCBjYXRlZ29yeTogInZpZGVvIiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIlJhcmVseSB+IEkga25vdyBJIHNob3VsZCBidXQgSSBhdm9pZCBjYW1lcmEiLCBwb2ludHM6IDIsIGNhdGVnb3J5OiAidmlkZW8iIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiTmV2ZXIgfiB2aWRlbyBpc24ndCBwYXJ0IG9mIG15IHN0cmF0ZWd5IiwgcG9pbnRzOiAwLCBjYXRlZ29yeTogInZpZGVvIiB9CiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHF1ZXN0aW9uOiAiSG93IGFyZSB5b3UgbGV2ZXJhZ2luZyBBSSB0b29scyBpbiB5b3VyIGJ1c2luZXNzPyIsCiAgICAgICAgICAgICAgICBhbnN3ZXJzOiBbCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiU3RyYXRlZ2ljYWxseSB+IEFJIGhlbHBzIHdpdGggY29udGVudCwgY3VzdG9tZXIgc2VydmljZSwgYW5kIGF1dG9tYXRpb24iLCBwb2ludHM6IDEwLCBjYXRlZ29yeTogImFpLXJlYWR5IiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkV4cGVyaW1lbnRpbmcgfiBJIHVzZSBDaGF0R1BUIG9yIHNpbWlsYXIgb2NjYXNpb25hbGx5IiwgcG9pbnRzOiA2LCBjYXRlZ29yeTogImFpLXJlYWR5IiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkN1cmlvdXMgYnV0IGhhdmVuJ3Qgc3RhcnRlZCB+IEkgZG9uJ3Qga25vdyB3aGVyZSB0byBiZWdpbiIsIHBvaW50czogMywgY2F0ZWdvcnk6ICJhaS1yZWFkeSIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJOb3QgYXQgYWxsIH4gQUkgZmVlbHMgb3ZlcndoZWxtaW5nIG9yIGlycmVsZXZhbnQiLCBwb2ludHM6IDAsIGNhdGVnb3J5OiAiYWktcmVhZHkiIH0KICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcXVlc3Rpb246ICJEbyB5b3UgaGF2ZSBzeXN0ZW1zIHRvIGNhcHR1cmUgYW5kIG51cnR1cmUgbGVhZHMgYXV0b21hdGljYWxseT8iLAogICAgICAgICAgICAgICAgYW5zd2VyczogWwogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIlllcyB+IGZ1bm5lbHMsIGF1dG9tYXRpb25zLCBhbmQgZm9sbG93LXVwIHNlcXVlbmNlcyIsIHBvaW50czogMTAsIGNhdGVnb3J5OiAic3lzdGVtcyIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJTb21lIGJhc2ljIGF1dG9tYXRpb24gYnV0IG1vc3RseSBtYW51YWwiLCBwb2ludHM6IDUsIGNhdGVnb3J5OiAic3lzdGVtcyIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJJIHJlc3BvbmQgdG8gaW5xdWlyaWVzIGJ1dCBubyByZWFsIHN5c3RlbSIsIHBvaW50czogMiwgY2F0ZWdvcnk6ICJzeXN0ZW1zIiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIldoYXQncyBhIGZ1bm5lbD8iLCBwb2ludHM6IDAsIGNhdGVnb3J5OiAic3lzdGVtcyIgfQogICAgICAgICAgICAgICAgXQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBxdWVzdGlvbjogIkRvIHlvdSBoYXZlIGEgbWVtYmVyc2hpcCwgY29tbXVuaXR5LCBvciBzdWJzY3JpcHRpb24gdGhhdCBjcmVhdGVzIHJlY3VycmluZyByZXZlbnVlPyIsCiAgICAgICAgICAgICAgICBhbnN3ZXJzOiBbCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiWWVzIH4gSSBoYXZlIG1lbWJlcnMgcGF5aW5nIG1vbnRobHkveWVhcmx5IGZvciBvbmdvaW5nIGFjY2VzcyIsIHBvaW50czogMTAsIGNhdGVnb3J5OiAibWVtYmVyc2hpcCIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJJIGhhdmUgYSBmcmVlIGNvbW11bml0eSBidXQgbm8gcGFpZCBtZW1iZXJzaGlwIHlldCIsIHBvaW50czogNSwgY2F0ZWdvcnk6ICJtZW1iZXJzaGlwIiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkkndmUgdGhvdWdodCBhYm91dCBpdCBidXQgaGF2ZW4ndCBidWlsdCBvbmUiLCBwb2ludHM6IDIsIGNhdGVnb3J5OiAibWVtYmVyc2hpcCIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJObyB+IEkgb25seSBzZWxsIG9uZS10aW1lIHByb2R1Y3RzIG9yIHNlcnZpY2VzIiwgcG9pbnRzOiAwLCBjYXRlZ29yeTogIm1lbWJlcnNoaXAiIH0KICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcXVlc3Rpb246ICJIb3cgZG8geW91IGN1cnJlbnRseSBnZW5lcmF0ZSBtb3N0IG9mIHlvdXIgY2xpZW50cy9jdXN0b21lcnM/IiwKICAgICAgICAgICAgICAgIGFuc3dlcnM6IFsKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJNdWx0aXBsZSBjaGFubmVscyB+IHJlZmVycmFscywgY29udGVudCwgYWRzLCBXaGF0c0FwcCwgcGFydG5lcnNoaXBzIiwgcG9pbnRzOiAxMCwgY2F0ZWdvcnk6ICJyZXZlbnVlIiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIk1vc3RseSByZWZlcnJhbHMgYW5kIHdvcmQgb2YgbW91dGgiLCBwb2ludHM6IDYsIGNhdGVnb3J5OiAicmV2ZW51ZSIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJTb2NpYWwgbWVkaWEgRE1zIGFuZCByYW5kb20gaW5xdWlyaWVzIiwgcG9pbnRzOiAzLCBjYXRlZ29yeTogInJldmVudWUiIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiSSdtIHN0aWxsIHRyeWluZyB0byBmaWd1cmUgdGhpcyBvdXQiLCBwb2ludHM6IDAsIGNhdGVnb3J5OiAicmV2ZW51ZSIgfQogICAgICAgICAgICAgICAgXQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBxdWVzdGlvbjogIkhvdyB3b3VsZCB5b3UgcmF0ZSB5b3VyIHZpc3VhbCBicmFuZCBpZGVudGl0eSAobG9nbywgY29sb3JzLCBmb250cywgaW1hZ2VyeSk/IiwKICAgICAgICAgICAgICAgIGFuc3dlcnM6IFsKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJQcm9mZXNzaW9uYWwgYW5kIGNvbnNpc3RlbnQgYWNyb3NzIGFsbCBwbGF0Zm9ybXMiLCBwb2ludHM6IDEwLCBjYXRlZ29yeTogImlkZW50aXR5IiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkdvb2QgYnV0IG5vdCBmdWxseSBjb25zaXN0ZW50IGV2ZXJ5d2hlcmUiLCBwb2ludHM6IDYsIGNhdGVnb3J5OiAiaWRlbnRpdHkiIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiQmFzaWMgfiBJIG1hZGUgaXQgbXlzZWxmIG9yIGl0J3Mgb3V0ZGF0ZWQiLCBwb2ludHM6IDMsIGNhdGVnb3J5OiAiaWRlbnRpdHkiIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiV2hhdCB2aXN1YWwgaWRlbnRpdHk/IiwgcG9pbnRzOiAwLCBjYXRlZ29yeTogImlkZW50aXR5IiB9CiAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHF1ZXN0aW9uOiAiV2hvIGhhbmRsZXMgeW91ciBtYXJrZXRpbmcgc3RyYXRlZ3kgYW5kIGV4ZWN1dGlvbj8iLAogICAgICAgICAgICAgICAgYW5zd2VyczogWwogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkkgaGF2ZSBhIG1hcmtldGluZyB0ZWFtIG9yIENNTy9hZ2VuY3kgZ3VpZGluZyBzdHJhdGVneSIsIHBvaW50czogMTAsIGNhdGVnb3J5OiAibWFya2V0aW5nLXRlYW0iIH0sCiAgICAgICAgICAgICAgICAgICAgeyB0ZXh0OiAiSSBvdXRzb3VyY2Ugc29tZSB0YXNrcyBidXQgSSdtIHN0aWxsIHRoZSBzdHJhdGVnaXN0IiwgcG9pbnRzOiA2LCBjYXRlZ29yeTogIm1hcmtldGluZy10ZWFtIiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkkgZG8gZXZlcnl0aGluZyBteXNlbGYgfiBJIEFNIHRoZSBtYXJrZXRpbmcgZGVwYXJ0bWVudCIsIHBvaW50czogMywgY2F0ZWdvcnk6ICJtYXJrZXRpbmctdGVhbSIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJNYXJrZXRpbmc/IEkgYmFyZWx5IGhhdmUgdGltZSB0byBwb3N0IG9uIHNvY2lhbCBtZWRpYSIsIHBvaW50czogMCwgY2F0ZWdvcnk6ICJtYXJrZXRpbmctdGVhbSIgfQogICAgICAgICAgICAgICAgXQogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBxdWVzdGlvbjogIklmIHlvdSBkaXNhcHBlYXJlZCBmb3IgMyBtb250aHMsIHdvdWxkIHlvdXIgYnVzaW5lc3Mgc3RpbGwgZ2VuZXJhdGUgbGVhZHMgYW5kIGluY29tZT8iLAogICAgICAgICAgICAgICAgYW5zd2VyczogWwogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIlllcyB+IEkgaGF2ZSBzeXN0ZW1zLCBjb250ZW50LCBhbmQgYXNzZXRzIHdvcmtpbmcgZm9yIG1lIiwgcG9pbnRzOiAxMCwgY2F0ZWdvcnk6ICJsZXZlcmFnZSIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJTb21lIGxlYWRzIHdvdWxkIGNvbWUgaW4gYnV0IHJldmVudWUgd291bGQgZHJvcCBzaWduaWZpY2FudGx5IiwgcG9pbnRzOiA1LCBjYXRlZ29yeTogImxldmVyYWdlIiB9LAogICAgICAgICAgICAgICAgICAgIHsgdGV4dDogIkV2ZXJ5dGhpbmcgd291bGQgc3RvcCIsIHBvaW50czogMiwgY2F0ZWdvcnk6ICJsZXZlcmFnZSIgfSwKICAgICAgICAgICAgICAgICAgICB7IHRleHQ6ICJJJ20gYWxyZWFkeSBiYXJlbHkga2VlcGluZyB1cCIsIHBvaW50czogMCwgY2F0ZWdvcnk6ICJsZXZlcmFnZSIgfQogICAgICAgICAgICAgICAgXQogICAgICAgICAgICB9CiAgICAgICAgXTsKICAgICAgICAKICAgICAgICAvLyBDYXRlZ29yaWVzIGZvciBicmVha2Rvd24KICAgICAgICBjb25zdCBjYXRlZ29yaWVzID0gewogICAgICAgICAgICAiZGlnaXRhbC1sYW5kIjogIkRpZ2l0YWwgTGFuZCBPd25lcnNoaXAiLAogICAgICAgICAgICAic292ZXJlaWdudHkiOiAiUGxhdGZvcm0gSW5kZXBlbmRlbmNlIiwKICAgICAgICAgICAgIndoYXRzYXBwIjogIldoYXRzQXBwIENvbW1lcmNlIiwKICAgICAgICAgICAgImRpZ2l0YWwtY2FyZCI6ICJQcm9mZXNzaW9uYWwgTmV0d29ya2luZyIsCiAgICAgICAgICAgICJhdWRpZW5jZSI6ICJBdWRpZW5jZSBPd25lcnNoaXAiLAogICAgICAgICAgICAiY29udGVudC1lbmdpbmUiOiAiQmxvZyAmIE5ld3NsZXR0ZXIiLAogICAgICAgICAgICAicmVwdXRhdGlvbiI6ICJPbmxpbmUgUmVwdXRhdGlvbiIsCiAgICAgICAgICAgICJyZXB1dGF0aW9uLW1nbXQiOiAiUmVwdXRhdGlvbiBNYW5hZ2VtZW50IiwKICAgICAgICAgICAgImNsYXJpdHkiOiAiQnJhbmQgQ2xhcml0eSIsCiAgICAgICAgICAgICJ2aWRlbyI6ICJWaWRlbyBNYXJrZXRpbmciLAogICAgICAgICAgICAiYWktcmVhZHkiOiAiQUkgUmVhZGluZXNzIiwKICAgICAgICAgICAgInN5c3RlbXMiOiAiQnVzaW5lc3MgU3lzdGVtcyIsCiAgICAgICAgICAgICJtZW1iZXJzaGlwIjogIk1lbWJlcnNoaXAgJiBDb21tdW5pdHkiLAogICAgICAgICAgICAicmV2ZW51ZSI6ICJSZXZlbnVlIENoYW5uZWxzIiwKICAgICAgICAgICAgImlkZW50aXR5IjogIlZpc3VhbCBJZGVudGl0eSIsCiAgICAgICAgICAgICJtYXJrZXRpbmctdGVhbSI6ICJNYXJrZXRpbmcgTGVhZGVyc2hpcCIsCiAgICAgICAgICAgICJsZXZlcmFnZSI6ICJCdXNpbmVzcyBMZXZlcmFnZSIKICAgICAgICB9OwogICAgICAgIAogICAgICAgIGxldCBjdXJyZW50UXVlc3Rpb24gPSAwOwogICAgICAgIGxldCBhbnN3ZXJzID0gW107CiAgICAgICAgbGV0IGNhdGVnb3J5U2NvcmVzID0ge307CiAgICAgICAgCiAgICAgICAgZnVuY3Rpb24gc3RhcnRRdWl6KCkgewogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW50cm9TY3JlZW4nKS5jbGFzc0xpc3QucmVtb3ZlKCdhY3RpdmUnKTsKICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3F1ZXN0aW9uU2NyZWVuJykuY2xhc3NMaXN0LmFkZCgnYWN0aXZlJyk7CiAgICAgICAgICAgIHNob3dRdWVzdGlvbigwKTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgZnVuY3Rpb24gc2hvd1F1ZXN0aW9uKGluZGV4KSB7CiAgICAgICAgICAgIGNvbnN0IHEgPSBxdWVzdGlvbnNbaW5kZXhdOwogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncXVlc3Rpb25OdW1iZXInKS50ZXh0Q29udGVudCA9IGBRdWVzdGlvbiAke2luZGV4ICsgMX0gb2YgJHtxdWVzdGlvbnMubGVuZ3RofWA7CiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdxdWVzdGlvblRleHQnKS50ZXh0Q29udGVudCA9IHEucXVlc3Rpb247CiAgICAgICAgICAgIAogICAgICAgICAgICBjb25zdCBncmlkID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Fuc3dlcnNHcmlkJyk7CiAgICAgICAgICAgIGdyaWQuaW5uZXJIVE1MID0gJyc7CiAgICAgICAgICAgIAogICAgICAgICAgICBjb25zdCBsZXR0ZXJzID0gWydBJywgJ0InLCAnQycsICdEJ107CiAgICAgICAgICAgIHEuYW5zd2Vycy5mb3JFYWNoKChhbnN3ZXIsIGkpID0+IHsKICAgICAgICAgICAgICAgIGNvbnN0IGJ0biA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2J1dHRvbicpOwogICAgICAgICAgICAgICAgYnRuLmNsYXNzTmFtZSA9ICdhbnN3ZXItYnRuJzsKICAgICAgICAgICAgICAgIGJ0bi5pbm5lckhUTUwgPSBgCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFuc3dlci1sZXR0ZXIiPiR7bGV0dGVyc1tpXX08L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPHNwYW4+JHthbnN3ZXIudGV4dH08L3NwYW4+CiAgICAgICAgICAgICAgICBgOwogICAgICAgICAgICAgICAgYnRuLm9uY2xpY2sgPSAoKSA9PiBzZWxlY3RBbnN3ZXIoaSk7CiAgICAgICAgICAgICAgICBncmlkLmFwcGVuZENoaWxkKGJ0bik7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICAKICAgICAgICAgICAgLy8gVXBkYXRlIHByb2dyZXNzCiAgICAgICAgICAgIGNvbnN0IHByb2dyZXNzID0gKChpbmRleCkgLyBxdWVzdGlvbnMubGVuZ3RoKSAqIDEwMDsKICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Byb2dyZXNzRmlsbCcpLnN0eWxlLndpZHRoID0gcHJvZ3Jlc3MgKyAnJSc7CiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwcm9ncmVzc1RleHQnKS50ZXh0Q29udGVudCA9IGBRdWVzdGlvbiAke2luZGV4ICsgMX0gb2YgJHtxdWVzdGlvbnMubGVuZ3RofWA7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIGZ1bmN0aW9uIHNlbGVjdEFuc3dlcihhbnN3ZXJJbmRleCkgewogICAgICAgICAgICBjb25zdCBxID0gcXVlc3Rpb25zW2N1cnJlbnRRdWVzdGlvbl07CiAgICAgICAgICAgIGNvbnN0IGFuc3dlciA9IHEuYW5zd2Vyc1thbnN3ZXJJbmRleF07CiAgICAgICAgICAgIAogICAgICAgICAgICBhbnN3ZXJzW2N1cnJlbnRRdWVzdGlvbl0gPSBhbnN3ZXI7CiAgICAgICAgICAgIAogICAgICAgICAgICAvLyBUcmFjayBjYXRlZ29yeSBzY29yZXMKICAgICAgICAgICAgaWYgKCFjYXRlZ29yeVNjb3Jlc1thbnN3ZXIuY2F0ZWdvcnldKSB7CiAgICAgICAgICAgICAgICBjYXRlZ29yeVNjb3Jlc1thbnN3ZXIuY2F0ZWdvcnldID0gMDsKICAgICAgICAgICAgfQogICAgICAgICAgICBjYXRlZ29yeVNjb3Jlc1thbnN3ZXIuY2F0ZWdvcnldID0gYW5zd2VyLnBvaW50czsKICAgICAgICAgICAgCiAgICAgICAgICAgIC8vIFZpc3VhbCBmZWVkYmFjawogICAgICAgICAgICBjb25zdCBidG5zID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmFuc3dlci1idG4nKTsKICAgICAgICAgICAgYnRucy5mb3JFYWNoKChidG4sIGkpID0+IHsKICAgICAgICAgICAgICAgIGJ0bi5jbGFzc0xpc3QucmVtb3ZlKCdzZWxlY3RlZCcpOwogICAgICAgICAgICAgICAgaWYgKGkgPT09IGFuc3dlckluZGV4KSBidG4uY2xhc3NMaXN0LmFkZCgnc2VsZWN0ZWQnKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIAogICAgICAgICAgICAvLyBOZXh0IHF1ZXN0aW9uIG9yIHJlc3VsdHMKICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7CiAgICAgICAgICAgICAgICBjdXJyZW50UXVlc3Rpb24rKzsKICAgICAgICAgICAgICAgIGlmIChjdXJyZW50UXVlc3Rpb24gPCBxdWVzdGlvbnMubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgc2hvd1F1ZXN0aW9uKGN1cnJlbnRRdWVzdGlvbik7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIHNob3dSZXN1bHRzKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sIDQwMCk7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIGZ1bmN0aW9uIHNob3dSZXN1bHRzKCkgewogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncXVlc3Rpb25TY3JlZW4nKS5jbGFzc0xpc3QucmVtb3ZlKCdhY3RpdmUnKTsKICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdHNTY3JlZW4nKS5jbGFzc0xpc3QuYWRkKCdhY3RpdmUnKTsKICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Byb2dyZXNzRmlsbCcpLnN0eWxlLndpZHRoID0gJzEwMCUnOwogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncHJvZ3Jlc3NUZXh0JykudGV4dENvbnRlbnQgPSAnQXNzZXNzbWVudCBDb21wbGV0ZSc7CiAgICAgICAgICAgIAogICAgICAgICAgICAvLyBDYWxjdWxhdGUgdG90YWwgc2NvcmUgKGNvbnZlcnQgdG8gcGVyY2VudGFnZSBvdXQgb2YgMTAwKQogICAgICAgICAgICBjb25zdCByYXdTY29yZSA9IGFuc3dlcnMucmVkdWNlKChzdW0sIGEpID0+IHN1bSArIGEucG9pbnRzLCAwKTsKICAgICAgICAgICAgY29uc3QgbWF4U2NvcmUgPSBxdWVzdGlvbnMubGVuZ3RoICogMTA7IC8vIDEzMCBwb2ludHMgbWF4CiAgICAgICAgICAgIGNvbnN0IHRvdGFsU2NvcmUgPSBNYXRoLnJvdW5kKChyYXdTY29yZSAvIG1heFNjb3JlKSAqIDEwMCk7CiAgICAgICAgICAgIAogICAgICAgICAgICAvLyBBbmltYXRlIHNjb3JlCiAgICAgICAgICAgIGxldCBkaXNwbGF5U2NvcmUgPSAwOwogICAgICAgICAgICBjb25zdCBzY29yZUVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Njb3JlTnVtYmVyJyk7CiAgICAgICAgICAgIGNvbnN0IGludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4gewogICAgICAgICAgICAgICAgZGlzcGxheVNjb3JlICs9IDI7CiAgICAgICAgICAgICAgICBpZiAoZGlzcGxheVNjb3JlID49IHRvdGFsU2NvcmUpIHsKICAgICAgICAgICAgICAgICAgICBkaXNwbGF5U2NvcmUgPSB0b3RhbFNjb3JlOwogICAgICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWwpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgc2NvcmVFbC50ZXh0Q29udGVudCA9IGRpc3BsYXlTY29yZTsKICAgICAgICAgICAgfSwgMzApOwogICAgICAgICAgICAKICAgICAgICAgICAgLy8gRGV0ZXJtaW5lIGxldmVsCiAgICAgICAgICAgIGxldCBsZXZlbCwgdGFnbGluZSwgZGVzYywgbGV2ZWxDbGFzcywgYXdha2VuaW5nOwogICAgICAgICAgICAKICAgICAgICAgICAgaWYgKHRvdGFsU2NvcmUgPj0gODUpIHsKICAgICAgICAgICAgICAgIGxldmVsID0gIlNvdmVyZWlnbiBBcmNoaXRlY3QiOwogICAgICAgICAgICAgICAgbGV2ZWxDbGFzcyA9ICJsZXZlbC1zb3ZlcmVpZ24iOwogICAgICAgICAgICAgICAgdGFnbGluZSA9ICJZb3UncmUgYnVpbGRpbmcgYW4gZW1waXJlLCBub3QgcmVudGluZyBhdHRlbnRpb24uIjsKICAgICAgICAgICAgICAgIGRlc2MgPSAiSW1wcmVzc2l2ZSEgWW91J3ZlIGJ1aWx0IHJlYWwgZGlnaXRhbCBzb3ZlcmVpZ250eS4gWW91ciBicmFuZCBoYXMgc3Ryb25nIGZvdW5kYXRpb25zLCBtdWx0aXBsZSByZXZlbnVlIGNoYW5uZWxzLCBhbmQgc3lzdGVtcyB0aGF0IHdvcmsgd2l0aG91dCB5b3UuIEZvY3VzIG9uIHNjYWxpbmcgYW5kIGxlZ2FjeS1idWlsZGluZy4iOwogICAgICAgICAgICAgICAgYXdha2VuaW5nID0gIkV2ZW4gYXQgdGhpcyBsZXZlbCwgY29tcGxhY2VuY3kgaXMgdGhlIGVuZW15LiBUaGUgZGlnaXRhbCBsYW5kc2NhcGUgc2hpZnRzIGNvbnN0YW50bHkuIEtlZXAgYnVpbGRpbmcsIGtlZXAgb3duaW5nLCBrZWVwIGxlYWRpbmcuIjsKICAgICAgICAgICAgfSBlbHNlIGlmICh0b3RhbFNjb3JlID49IDcwKSB7CiAgICAgICAgICAgICAgICBsZXZlbCA9ICJSaXNpbmcgQnVpbGRlciI7CiAgICAgICAgICAgICAgICBsZXZlbENsYXNzID0gImxldmVsLXN0cm9uZyI7CiAgICAgICAgICAgICAgICB0YWdsaW5lID0gIlN0cm9uZyBmb3VuZGF0aW9ucywgcm9vbSB0byBmb3J0aWZ5LiI7CiAgICAgICAgICAgICAgICBkZXNjID0gIllvdSdyZSBhaGVhZCBvZiBtb3N0IGVudHJlcHJlbmV1cnMuIFlvdSBoYXZlIHJlYWwgYXNzZXRzIGFuZCBzb21lIHNvdmVyZWlnbnR5LiBOb3cgaXQncyB0aW1lIHRvIGZpbGwgdGhlIGdhcHMgYW5kIGNyZWF0ZSBzeXN0ZW1zIHRoYXQgbXVsdGlwbHkgeW91ciBpbXBhY3QuIjsKICAgICAgICAgICAgICAgIGF3YWtlbmluZyA9ICJZb3UncmUgY2xvc2VyIHRoYW4geW91IHRoaW5rIHRvIHRydWUgc292ZXJlaWdudHkuIEJ1dCB0aG9zZSBnYXBzPyBUaGV5J3JlIGNvc3RpbmcgeW91IGxlYWRzLCByZXZlbnVlLCBhbmQgcGVhY2Ugb2YgbWluZCBldmVyeSBzaW5nbGUgZGF5LiI7CiAgICAgICAgICAgIH0gZWxzZSBpZiAodG90YWxTY29yZSA+PSA1MCkgewogICAgICAgICAgICAgICAgbGV2ZWwgPSAiRGV2ZWxvcGluZyBQcmVzZW5jZSI7CiAgICAgICAgICAgICAgICBsZXZlbENsYXNzID0gImxldmVsLWRldmVsb3BpbmciOwogICAgICAgICAgICAgICAgdGFnbGluZSA9ICJZb3UndmUgc3RhcnRlZCwgYnV0IHlvdSdyZSBzdGlsbCB2dWxuZXJhYmxlLiI7CiAgICAgICAgICAgICAgICBkZXNjID0gIllvdSBoYXZlIHNvbWUgcGllY2VzIGluIHBsYWNlLCBidXQgeW91ciBkaWdpdGFsIHByZXNlbmNlIGlzIGZyYWdpbGUuIE9uZSBhbGdvcml0aG0gY2hhbmdlLCBvbmUgcGxhdGZvcm0gc2h1dGRvd24sIGFuZCB5b3UgY291bGQgbG9zZSBldmVyeXRoaW5nIHlvdSd2ZSBidWlsdC4iOwogICAgICAgICAgICAgICAgYXdha2VuaW5nID0gIkhlcmUncyB0aGUgdHJ1dGg6IFlvdSdyZSBvbmUgYmFkIGRheSBhd2F5IGZyb20gc3RhcnRpbmcgb3Zlci4gWW91ciBidXNpbmVzcyBsaXZlcyBvbiByZW50ZWQgbGFuZC4gSXQncyB0aW1lIHRvIGJ1aWxkIHdoYXQgeW91IGFjdHVhbGx5IE9XTi4iOwogICAgICAgICAgICB9IGVsc2UgaWYgKHRvdGFsU2NvcmUgPj0gMzApIHsKICAgICAgICAgICAgICAgIGxldmVsID0gIldhcm5pbmcgWm9uZSI7CiAgICAgICAgICAgICAgICBsZXZlbENsYXNzID0gImxldmVsLXdhcm5pbmciOwogICAgICAgICAgICAgICAgdGFnbGluZSA9ICJZb3VyIGJyYW5kIGlzIGludmlzaWJsZSBvciB2dWxuZXJhYmxlLiI7CiAgICAgICAgICAgICAgICBkZXNjID0gIllvdXIgZGlnaXRhbCBwcmVzZW5jZSBuZWVkcyBzZXJpb3VzIGF0dGVudGlvbi4gWW91J3JlIGxpa2VseSBsb3NpbmcgY2xpZW50cyB0byBjb21wZXRpdG9ycyB3aG8gc2hvdyB1cCB3aGVuIHlvdSBkb24ndC4gVGhlIGdvb2QgbmV3cz8gQXdhcmVuZXNzIGlzIHRoZSBmaXJzdCBzdGVwLiI7CiAgICAgICAgICAgICAgICBhd2FrZW5pbmcgPSAiUmlnaHQgbm93LCBwZW9wbGUgYXJlIHNlYXJjaGluZyBmb3IgZXhhY3RseSB3aGF0IHlvdSBvZmZlciB+IGFuZCBmaW5kaW5nIHlvdXIgY29tcGV0aXRvcnMgaW5zdGVhZC4gRXZlcnkgZGF5IHdpdGhvdXQgYSBzb3ZlcmVpZ24gcHJlc2VuY2UgaXMgbW9uZXkgbGVmdCBvbiB0aGUgdGFibGUuIjsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIGxldmVsID0gIkNyaXRpY2FsIEF0dGVudGlvbiBOZWVkZWQiOwogICAgICAgICAgICAgICAgbGV2ZWxDbGFzcyA9ICJsZXZlbC1jcml0aWNhbCI7CiAgICAgICAgICAgICAgICB0YWdsaW5lID0gIllvdSdyZSBhIGRpZ2l0YWwgZ2hvc3QuIjsKICAgICAgICAgICAgICAgIGRlc2MgPSAiSWYgeW91ciBpZGVhbCBjbGllbnRzIGNhbid0IGZpbmQgeW91LCB5b3UgZG9uJ3QgZXhpc3QgdG8gdGhlbS4gWW91ciBleHBlcnRpc2UgbWVhbnMgbm90aGluZyBpZiBpdCdzIGludmlzaWJsZS4gVGhpcyBpc24ndCBhYm91dCBwZXJmZWN0aW9uIH4gaXQncyBhYm91dCBzdXJ2aXZhbC4iOwogICAgICAgICAgICAgICAgYXdha2VuaW5nID0gIlRoaXMgaXMgeW91ciB3YWtlLXVwIGNhbGwuIFlvdSdyZSBub3QganVzdCBsZWF2aW5nIG1vbmV5IG9uIHRoZSB0YWJsZSB+IHlvdSdyZSBsZWF2aW5nIHlvdXIgZW50aXJlIGxlZ2FjeSB0byBjaGFuY2UuIFRoZSB3b3JsZCBuZWVkcyB3aGF0IHlvdSBoYXZlLiBJdCdzIHRpbWUgdG8gYmUgc2Vlbi4iOwogICAgICAgICAgICB9CiAgICAgICAgICAgIAogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0c0xldmVsJykudGV4dENvbnRlbnQgPSBsZXZlbDsKICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdHNMZXZlbCcpLmNsYXNzTmFtZSA9ICdyZXN1bHRzLWxldmVsICcgKyBsZXZlbENsYXNzOwogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0c1RhZ2xpbmUnKS50ZXh0Q29udGVudCA9IHRhZ2xpbmU7CiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXN1bHRzRGVzYycpLnRleHRDb250ZW50ID0gZGVzYzsKICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2F3YWtlbmluZ1RleHQnKS50ZXh0Q29udGVudCA9IGF3YWtlbmluZzsKICAgICAgICAgICAgCiAgICAgICAgICAgIC8vIEJ1aWxkIGJyZWFrZG93bgogICAgICAgICAgICBjb25zdCBicmVha2Rvd25FbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdicmVha2Rvd25JdGVtcycpOwogICAgICAgICAgICBicmVha2Rvd25FbC5pbm5lckhUTUwgPSAnJzsKICAgICAgICAgICAgCiAgICAgICAgICAgIE9iamVjdC5rZXlzKGNhdGVnb3J5U2NvcmVzKS5mb3JFYWNoKGNhdCA9PiB7CiAgICAgICAgICAgICAgICBjb25zdCBzY29yZSA9IGNhdGVnb3J5U2NvcmVzW2NhdF07CiAgICAgICAgICAgICAgICBjb25zdCBpdGVtID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CiAgICAgICAgICAgICAgICBpdGVtLmNsYXNzTmFtZSA9ICdicmVha2Rvd24taXRlbSc7CiAgICAgICAgICAgICAgICBpdGVtLmlubmVySFRNTCA9IGAKICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iYnJlYWtkb3duLWxhYmVsIj4ke2NhdGVnb3JpZXNbY2F0XX08L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImJyZWFrZG93bi12YWx1ZSI+JHtzY29yZX0vMTA8L3NwYW4+CiAgICAgICAgICAgICAgICBgOwogICAgICAgICAgICAgICAgYnJlYWtkb3duRWwuYXBwZW5kQ2hpbGQoaXRlbSk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICAKICAgICAgICAgICAgLy8gQnVpbGQgdXBzZWxsIGJveGVzIGJhc2VkIG9uIGxvdyBzY29yZXMKICAgICAgICAgICAgY29uc3QgdXBzZWxsRWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndXBzZWxsR3JpZCcpOwogICAgICAgICAgICB1cHNlbGxFbC5pbm5lckhUTUwgPSAnJzsKICAgICAgICAgICAgCiAgICAgICAgICAgIGNvbnN0IHVwc2VsbE9wcG9ydHVuaXRpZXMgPSBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgY2F0ZWdvcnk6ICdkaWdpdGFsLWNhcmQnLAogICAgICAgICAgICAgICAgICAgIGljb246ICfwn5KzJywKICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ0RpZ2l0YWwgQnVzaW5lc3MgQ2FyZCcsCiAgICAgICAgICAgICAgICAgICAgZGVzYzogJ1N0YW5kIG91dCBhdCBldmVyeSBldmVudCcsCiAgICAgICAgICAgICAgICAgICAgY3NzQ2xhc3M6ICdjYXJkJwogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBjYXRlZ29yeTogJ21hcmtldGluZy10ZWFtJywKICAgICAgICAgICAgICAgICAgICBpY29uOiAn8J+RlCcsCiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdDTU8vTWFya2V0aW5nIFN0cmF0ZWd5JywKICAgICAgICAgICAgICAgICAgICBkZXNjOiAnRXhwZXJ0IGd1aWRhbmNlIG9uIGRlbWFuZCcsCiAgICAgICAgICAgICAgICAgICAgY3NzQ2xhc3M6ICdjbW8nCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGNhdGVnb3J5OiAnY29udGVudC1lbmdpbmUnLAogICAgICAgICAgICAgICAgICAgIGljb246ICfwn5OwJywKICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ0Jsb2cgJiBOZXdzbGV0dGVyJywKICAgICAgICAgICAgICAgICAgICBkZXNjOiAnT3duIHlvdXIgY29udGVudCBmb3JldmVyJywKICAgICAgICAgICAgICAgICAgICBjc3NDbGFzczogJ2NvbnRlbnQnCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGNhdGVnb3J5OiAnbWVtYmVyc2hpcCcsCiAgICAgICAgICAgICAgICAgICAgaWNvbjogJ/Cfj5vvuI8nLAogICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnTWVtYmVyc2hpcCBDb21tdW5pdHknLAogICAgICAgICAgICAgICAgICAgIGRlc2M6ICdSZWN1cnJpbmcgcmV2ZW51ZSB0aGF0IHNjYWxlcycsCiAgICAgICAgICAgICAgICAgICAgY3NzQ2xhc3M6ICdtZW1iZXJzaGlwJwogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBjYXRlZ29yeTogJ2FpLXJlYWR5JywKICAgICAgICAgICAgICAgICAgICBpY29uOiAn8J+klicsCiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdBSSBJbnRlZ3JhdGlvbicsCiAgICAgICAgICAgICAgICAgICAgZGVzYzogJ0xldCBBSSB3b3JrIGZvciB5b3UgMjQvNycsCiAgICAgICAgICAgICAgICAgICAgY3NzQ2xhc3M6ICdhaScKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgY2F0ZWdvcnk6ICd2aWRlbycsCiAgICAgICAgICAgICAgICAgICAgaWNvbjogJ/CfjqwnLAogICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnVmlkZW8gTWFya2V0aW5nJywKICAgICAgICAgICAgICAgICAgICBkZXNjOiAnQmUgc2Vlbi4gQmUgcmVtZW1iZXJlZC4nLAogICAgICAgICAgICAgICAgICAgIGNzc0NsYXNzOiAndmlkZW8nCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGNhdGVnb3J5OiAncmVwdXRhdGlvbicsCiAgICAgICAgICAgICAgICAgICAgaWNvbjogJ+KtkCcsCiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdSZXB1dGF0aW9uIE1hbmFnZW1lbnQnLAogICAgICAgICAgICAgICAgICAgIGRlc2M6ICdDb250cm9sIHlvdXIgbmFycmF0aXZlJywKICAgICAgICAgICAgICAgICAgICBjc3NDbGFzczogJ3JlcHV0YXRpb24nCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGNhdGVnb3J5OiAncmVwdXRhdGlvbi1tZ210JywKICAgICAgICAgICAgICAgICAgICBpY29uOiAn8J+boe+4jycsCiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdSZXB1dGF0aW9uIE1vbml0b3JpbmcnLAogICAgICAgICAgICAgICAgICAgIGRlc2M6ICdLbm93IHdoYXQgdGhleVwncmUgc2F5aW5nJywKICAgICAgICAgICAgICAgICAgICBjc3NDbGFzczogJ3JlcHV0YXRpb24nCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGNhdGVnb3J5OiAnd2hhdHNhcHAnLAogICAgICAgICAgICAgICAgICAgIGljb246ICfwn5KsJywKICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ1doYXRzQXBwIENvbW1lcmNlJywKICAgICAgICAgICAgICAgICAgICBkZXNjOiAnU2VsbCB3aGVyZSB5b3VyIGN1c3RvbWVycyBsaXZlJywKICAgICAgICAgICAgICAgICAgICBjc3NDbGFzczogJ3doYXRzYXBwJwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBdOwogICAgICAgICAgICAKICAgICAgICAgICAgdXBzZWxsT3Bwb3J0dW5pdGllcy5mb3JFYWNoKG9wcCA9PiB7CiAgICAgICAgICAgICAgICBjb25zdCBzY29yZSA9IGNhdGVnb3J5U2NvcmVzW29wcC5jYXRlZ29yeV0gfHwgMDsKICAgICAgICAgICAgICAgIGlmIChzY29yZSA8PSA1KSB7IC8vIFNob3cgaWYgdGhleSBzY29yZWQgNSBvciBiZWxvdwogICAgICAgICAgICAgICAgICAgIGNvbnN0IGJveCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwogICAgICAgICAgICAgICAgICAgIGJveC5jbGFzc05hbWUgPSBgdXBzZWxsLWJveCAke29wcC5jc3NDbGFzc31gOwogICAgICAgICAgICAgICAgICAgIGJveC5pbm5lckhUTUwgPSBgCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InVwc2VsbC1pY29uIj4ke29wcC5pY29ufTwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8aDQ+JHtvcHAudGl0bGV9PC9oND4KICAgICAgICAgICAgICAgICAgICAgICAgPHA+JHtvcHAuZGVzY308L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzY29yZS10YWciPllvdSBzY29yZWQgJHtzY29yZX0vMTA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgYDsKICAgICAgICAgICAgICAgICAgICB1cHNlbGxFbC5hcHBlbmRDaGlsZChib3gpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgZnVuY3Rpb24gaGFuZGxlRW1haWxTdWJtaXQoZSkgewogICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgICAgIGNvbnN0IGVtYWlsID0gZS50YXJnZXQucXVlcnlTZWxlY3RvcignaW5wdXQnKS52YWx1ZTsKICAgICAgICAgICAgLy8gSGVyZSB5b3Ugd291bGQgaW50ZWdyYXRlIHdpdGggeW91ciBlbWFpbCBzZXJ2aWNlCiAgICAgICAgICAgIGFsZXJ0KCdUaGFuayB5b3UhIFlvdXIgcGVyc29uYWxpemVkIHJvYWRtYXAgaXMgb24gaXRzIHdheSB0byAnICsgZW1haWwpOwogICAgICAgICAgICBlLnRhcmdldC5pbm5lckhUTUwgPSAnPHAgc3R5bGU9ImNvbG9yOiB2YXIoLS1nb2xkKTsiPuKckyBSb2FkbWFwIHNlbnQhIENoZWNrIHlvdXIgaW5ib3guPC9wPic7CiAgICAgICAgfQogICAgPC9zY3JpcHQ+CjwvYm9keT4KPC9odG1sPg==","embed":""}
Brand Health Assessment | How Sovereign Is Your Digital Presence?

Ready to begin

🔍

How Sovereign Is Your Brand?

The 4-Minute Digital Health Assessment

Most entrepreneurs are digital sharecroppers ~ building on rented land, invisible to their ideal clients, and one algorithm change away from disaster. Let's find out where you stand.

⏱️ 4 Minutes
📊 17 Questions
🎁 Free Report

Question 1 of 10

0 out of 100

Loading...

⚠️ Reality Check

Your Assessment Breakdown

🎁 Free Tool

Get Your Reputation Grade Report

See exactly what Google shows when people search for you or your business. This free report reveals your online reputation score ~ no strings attached.

Get Free Reputation Report →

Want the Full Sovereignty Roadmap?

Get your personalized action plan based on your assessment results.

© 2017-2026 Mukasa Venture Partners LLC • The Sovereign Architects
Image Gallery Grid
T
Please Check Your Email
We Will Be Following Up Shortly
*
*
*

warning