cropper

VIRTUAL HANDSHAKE AFRICA

  • Home
  • Discover
  • Gallery
  • Pricing
  • Contact Us
  • About Us
  • Oder Essential
  • Order Essential
  • Order Professional
{"js":"PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgPG1ldGEgY2hhcnNldD0iVVRGLTgiPgogIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4KICA8dGl0bGU+Q29udGFjdCBVcyAtIExldCdzIEJ1aWxkIFlvdXIgRGlnaXRhbCBQcmVzZW5jZSB8IEhhbmRzaGFrZS5hZnJpY2E8L3RpdGxlPgogIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJHZXQgaW4gdG91Y2ggd2l0aCBIYW5kc2hha2UuYWZyaWNhLiBGcmVlIGNvbnN1bHRhdGlvbnMsIGN1c3RvbSBxdW90ZXMsIGFuZCBzdHJhdGVnaWMgZ3VpZGFuY2UgZm9yIEFmcmljYW4gZW50cmVwcmVuZXVycy4iPgogIDxtZXRhIG5hbWU9InJvYm90cyIgY29udGVudD0ibm9pbmRleCwgbm9mb2xsb3ciPgogIAogIDxsaW5rIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9SW50ZXI6d2dodEAzMDA7NDAwOzYwMDs3MDA7ODAwOzkwMCZmYW1pbHk9UGxheWZhaXIrRGlzcGxheTp3Z2h0QDcwMDs5MDAmZGlzcGxheT1zd2FwIiByZWw9InN0eWxlc2hlZXQiPgogIAogIDxzdHlsZT4KICAgIDpyb290IHsKICAgICAgLS1uYXZ5OiAjMDAxRjNGOwogICAgICAtLXJveWFsLWJsdWU6ICMwMDQ3QUI7CiAgICAgIC0tZ29sZDogI0ZGRDcwMDsKICAgICAgLS1nb2xkLXdhcm06ICNGRkMxMDc7CiAgICAgIC0td2hpdGU6ICNGRkZGRkY7CiAgICAgIC0tbGlnaHQtYmc6ICNGN0Y5RkM7CiAgICAgIC0tZ3JheTogIzZCNzI4MDsKICAgICAgLS10ZWFsOiAjMDBDOUE3OwogICAgICAtLW9yYW5nZTogI0ZGNkIzNTsKICAgICAgLS1wdXJwbGU6ICM3QjY4RUU7CiAgICB9CiAgICAKICAgICogewogICAgICBtYXJnaW46IDA7CiAgICAgIHBhZGRpbmc6IDA7CiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICB9CiAgICAKICAgIGJvZHkgewogICAgICBmb250LWZhbWlseTogJ0ludGVyJywgc2Fucy1zZXJpZjsKICAgICAgY29sb3I6IHZhcigtLW5hdnkpOwogICAgICBsaW5lLWhlaWdodDogMS42OwogICAgICBvdmVyZmxvdy14OiBoaWRkZW47CiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0LWJnKTsKICAgIH0KICAgIAogICAgaDEsIGgyLCBoMyB7CiAgICAgIGZvbnQtZmFtaWx5OiAnUGxheWZhaXIgRGlzcGxheScsIHNlcmlmOwogICAgICBmb250LXdlaWdodDogOTAwOwogICAgICBsaW5lLWhlaWdodDogMS4yOwogICAgfQogICAgCiAgICAvKiBBbGxvdyB0ZXh0IHNlbGVjdGlvbiBpbiBmb3JtcyAqLwogICAgaW5wdXQsIHRleHRhcmVhLCBzZWxlY3QgewogICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiB0ZXh0OwogICAgICAtbW96LXVzZXItc2VsZWN0OiB0ZXh0OwogICAgICB1c2VyLXNlbGVjdDogdGV4dDsKICAgIH0KICAgIAogICAgLyogTkFWSUdBVElPTiAqLwogICAgLm5hdiB7CiAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgdG9wOiAwOwogICAgICB3aWR0aDogMTAwJTsKICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAzMSwgNjMsIDAuOTgpOwogICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7CiAgICAgIHotaW5kZXg6IDEwMDA7CiAgICAgIHBhZGRpbmc6IDFyZW0gMnJlbTsKICAgICAgYm94LXNoYWRvdzogMCAycHggMjBweCByZ2JhKDAsMCwwLDAuMSk7CiAgICB9CiAgICAKICAgIC5uYXYtY29udGFpbmVyIHsKICAgICAgbWF4LXdpZHRoOiAxNDAwcHg7CiAgICAgIG1hcmdpbjogMCBhdXRvOwogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICB9CiAgICAKICAgIC5sb2dvIHsKICAgICAgZm9udC1zaXplOiAxLjVyZW07CiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7CiAgICAgIGNvbG9yOiB2YXIoLS1nb2xkKTsKICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgICBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknLCBzZXJpZjsKICAgIH0KICAgIAogICAgLm5hdi1saW5rcyB7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGdhcDogMnJlbTsKICAgICAgbGlzdC1zdHlsZTogbm9uZTsKICAgIH0KICAgIAogICAgLm5hdi1saW5rcyBhIHsKICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTsKICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgICBmb250LXdlaWdodDogNjAwOwogICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzOwogICAgfQogICAgCiAgICAubmF2LWxpbmtzIGE6aG92ZXIsCiAgICAubmF2LWxpbmtzIGEuYWN0aXZlIHsKICAgICAgY29sb3I6IHZhcigtLWdvbGQpOwogICAgfQogICAgCiAgICAvKiBIRVJPICovCiAgICAuaGVybyB7CiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLW5hdnkpIDAlLCB2YXIoLS1wdXJwbGUpIDEwMCUpOwogICAgICBjb2xvcjogdmFyKC0td2hpdGUpOwogICAgICBwYWRkaW5nOiAxNDBweCAycmVtIDgwcHg7CiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIH0KICAgIAogICAgLmhlcm86OmJlZm9yZSB7CiAgICAgIGNvbnRlbnQ6ICcnOwogICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgIHdpZHRoOiAxMDAlOwogICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgIGJhY2tncm91bmQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgd2lkdGg9IjYwIiBoZWlnaHQ9IjYwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxjaXJjbGUgY3g9IjMwIiBjeT0iMzAiIHI9IjIiIGZpbGw9InJnYmEoMjU1LDIxNSwwLDAuMSkiLz48L3N2Zz4nKTsKICAgICAgb3BhY2l0eTogMC4zOwogICAgfQogICAgCiAgICAuaGVyby1jb250YWluZXIgewogICAgICBtYXgtd2lkdGg6IDEyMDBweDsKICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgei1pbmRleDogMjsKICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgfQogICAgCiAgICAuaGVybyBoMSB7CiAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMi41cmVtLCA3dncsIDQuNXJlbSk7CiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsKICAgIH0KICAgIAogICAgLmhlcm8tc3VidGl0bGUgewogICAgICBmb250LXNpemU6IGNsYW1wKDEuMnJlbSwgM3Z3LCAxLjZyZW0pOwogICAgICBvcGFjaXR5OiAwLjk1OwogICAgICBtYXgtd2lkdGg6IDgwMHB4OwogICAgICBtYXJnaW46IDAgYXV0bzsKICAgIH0KICAgIAogICAgLyogQ09OVEFDVCBTRUNUSU9OICovCiAgICAuY29udGFjdC1zZWN0aW9uIHsKICAgICAgcGFkZGluZzogMTAwcHggMnJlbTsKICAgICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpOwogICAgfQogICAgCiAgICAuY29udGFjdC1jb250YWluZXIgewogICAgICBtYXgtd2lkdGg6IDE0MDBweDsKICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICB9CiAgICAKICAgIC5jb250YWN0LWdyaWQgewogICAgICBkaXNwbGF5OiBncmlkOwogICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7CiAgICAgIGdhcDogNXJlbTsKICAgICAgbWFyZ2luLXRvcDogNHJlbTsKICAgIH0KICAgIAogICAgLyogQ09OVEFDVCBJTkZPIFNJREUgKi8KICAgIC5jb250YWN0LWluZm8gewogICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1saWdodC1iZykgMCUsIHZhcigtLXdoaXRlKSAxMDAlKTsKICAgICAgcGFkZGluZzogM3JlbTsKICAgICAgYm9yZGVyLXJhZGl1czogMzBweDsKICAgICAgYm94LXNoYWRvdzogMCAxMHB4IDQwcHggcmdiYSgwLDAsMCwwLjA4KTsKICAgIH0KICAgIAogICAgLmNvbnRhY3QtaW5mbyBoMiB7CiAgICAgIGZvbnQtc2l6ZTogMi41cmVtOwogICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOwogICAgICBjb2xvcjogdmFyKC0tbmF2eSk7CiAgICB9CiAgICAKICAgIC5jb250YWN0LWludHJvIHsKICAgICAgZm9udC1zaXplOiAxLjFyZW07CiAgICAgIGNvbG9yOiB2YXIoLS1ncmF5KTsKICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTsKICAgICAgbGluZS1oZWlnaHQ6IDEuODsKICAgIH0KICAgIAogICAgLmNvbnRhY3QtbWV0aG9kIHsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7CiAgICAgIGdhcDogMS41cmVtOwogICAgICBtYXJnaW4tYm90dG9tOiAycmVtOwogICAgICBwYWRkaW5nOiAycmVtOwogICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7CiAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7CiAgICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgdmFyKC0tZ29sZCk7CiAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgwLDAsMCwwLjA1KTsKICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7CiAgICB9CiAgICAKICAgIC5jb250YWN0LW1ldGhvZDpob3ZlciB7CiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTsKICAgICAgYm94LXNoYWRvdzogMCAxMHB4IDMwcHggcmdiYSgwLDAsMCwwLjEpOwogICAgfQogICAgCiAgICAuY29udGFjdC1pY29uIHsKICAgICAgZm9udC1zaXplOiAyLjVyZW07CiAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgfQogICAgCiAgICAuY29udGFjdC1kZXRhaWxzIGgzIHsKICAgICAgZm9udC1zaXplOiAxLjNyZW07CiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsKICAgICAgY29sb3I6IHZhcigtLW5hdnkpOwogICAgfQogICAgCiAgICAuY29udGFjdC1kZXRhaWxzIHAgewogICAgICBjb2xvcjogdmFyKC0tZ3JheSk7CiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7CiAgICB9CiAgICAKICAgIC5jb250YWN0LWRldGFpbHMgYSB7CiAgICAgIGNvbG9yOiB2YXIoLS1yb3lhbC1ibHVlKTsKICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgICBmb250LXdlaWdodDogNzAwOwogICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzOwogICAgfQogICAgCiAgICAuY29udGFjdC1kZXRhaWxzIGE6aG92ZXIgewogICAgICBjb2xvcjogdmFyKC0tdGVhbCk7CiAgICB9CiAgICAKICAgIC5zZWN1cml0eS1iYWRnZSB7CiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMjAxLCAxNjcsIDAuMSk7CiAgICAgIHBhZGRpbmc6IDJyZW07CiAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7CiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXRlYWwpOwogICAgICBtYXJnaW4tdG9wOiAycmVtOwogICAgfQogICAgCiAgICAuc2VjdXJpdHktYmFkZ2UgaDQgewogICAgICBmb250LXNpemU6IDEuMnJlbTsKICAgICAgY29sb3I6IHZhcigtLXRlYWwpOwogICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOwogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICBnYXA6IDAuNXJlbTsKICAgIH0KICAgIAogICAgLnNlY3VyaXR5LWJhZGdlIHVsIHsKICAgICAgbGlzdC1zdHlsZTogbm9uZTsKICAgICAgbWFyZ2luLWxlZnQ6IDA7CiAgICB9CiAgICAKICAgIC5zZWN1cml0eS1iYWRnZSBsaSB7CiAgICAgIHBhZGRpbmc6IDAuNXJlbSAwOwogICAgICBjb2xvcjogdmFyKC0tZ3JheSk7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgIGdhcDogMC43NXJlbTsKICAgIH0KICAgIAogICAgLnNlY3VyaXR5LWJhZGdlIGxpOjpiZWZvcmUgewogICAgICBjb250ZW50OiAn4pyTJzsKICAgICAgY29sb3I6IHZhcigtLXRlYWwpOwogICAgICBmb250LXdlaWdodDogOTAwOwogICAgICBmb250LXNpemU6IDEuMnJlbTsKICAgIH0KICAgIAogICAgLyogRk9STSBTSURFICovCiAgICAuY29udGFjdC1mb3JtIHsKICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tbGlnaHQtYmcpIDAlLCB2YXIoLS13aGl0ZSkgMTAwJSk7CiAgICAgIHBhZGRpbmc6IDNyZW07CiAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7CiAgICAgIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IHJnYmEoMCwwLDAsMC4wOCk7CiAgICB9CiAgICAKICAgIC5jb250YWN0LWZvcm0gaDIgewogICAgICBmb250LXNpemU6IDIuNXJlbTsKICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsKICAgICAgY29sb3I6IHZhcigtLW5hdnkpOwogICAgfQogICAgCiAgICAuZm9ybS1pbnRybyB7CiAgICAgIGZvbnQtc2l6ZTogMS4xcmVtOwogICAgICBjb2xvcjogdmFyKC0tZ3JheSk7CiAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTsKICAgIH0KICAgIAogICAgLyog4qyH77iPIEVNQkVEIFpPTkUgRk9SIFlPVVIgQ1JNIEZPUk0gKi8KICAgIC5mb3JtLWVtYmVkLXpvbmUgewogICAgICBtaW4taGVpZ2h0OiA0MDBweDsKICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjE1LDAsMC4wNSk7CiAgICAgIGJvcmRlcjogM3B4IGRhc2hlZCB2YXIoLS1nb2xkKTsKICAgICAgYm9yZGVyLXJhZGl1czogMjBweDsKICAgICAgcGFkZGluZzogMnJlbTsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIH0KICAgIAogICAgLmZvcm0tZW1iZWQtem9uZSBoMyB7CiAgICAgIGNvbG9yOiB2YXIoLS1nb2xkKTsKICAgICAgZm9udC1zaXplOiAxLjVyZW07CiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07CiAgICB9CiAgICAKICAgIC5mb3JtLWVtYmVkLXpvbmUgcCB7CiAgICAgIGNvbG9yOiB2YXIoLS1ncmF5KTsKICAgICAgZm9udC1zaXplOiAxLjFyZW07CiAgICAgIG1heC13aWR0aDogNTAwcHg7CiAgICB9CiAgICAKICAgIC5lbWJlZC1hcnJvd3MgewogICAgICBmb250LXNpemU6IDNyZW07CiAgICAgIGNvbG9yOiB2YXIoLS1nb2xkKTsKICAgICAgbWFyZ2luOiAxcmVtIDA7CiAgICAgIGFuaW1hdGlvbjogYm91bmNlIDJzIGluZmluaXRlOwogICAgfQogICAgCiAgICBAa2V5ZnJhbWVzIGJvdW5jZSB7CiAgICAgIDAlLCAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9CiAgICAgIDUwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTVweCk7IH0KICAgIH0KICAgIAogICAgLyogT1IgdXNlIHRoaXMgZmFsbGJhY2sgZm9ybSBpZiBubyBlbWJlZCAqLwogICAgLmZhbGxiYWNrLWZvcm0gewogICAgICBkaXNwbGF5OiBub25lOyAvKiBIaWRkZW4gYnkgZGVmYXVsdCAtIHJlbW92ZSB0aGlzIHRvIHNob3cgZmFsbGJhY2sgKi8KICAgIH0KICAgIAogICAgLmZvcm0tZ3JvdXAgewogICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07CiAgICB9CiAgICAKICAgIC5mb3JtLWdyb3VwIGxhYmVsIHsKICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsKICAgICAgY29sb3I6IHZhcigtLW5hdnkpOwogICAgICBmb250LXNpemU6IDFyZW07CiAgICB9CiAgICAKICAgIC5mb3JtLWdyb3VwIGlucHV0LAogICAgLmZvcm0tZ3JvdXAgc2VsZWN0LAogICAgLmZvcm0tZ3JvdXAgdGV4dGFyZWEgewogICAgICB3aWR0aDogMTAwJTsKICAgICAgcGFkZGluZzogMS4xcmVtOwogICAgICBib3JkZXI6IDJweCBzb2xpZCAjRTVFN0VCOwogICAgICBib3JkZXItcmFkaXVzOiAxNXB4OwogICAgICBmb250LWZhbWlseTogJ0ludGVyJywgc2Fucy1zZXJpZjsKICAgICAgZm9udC1zaXplOiAxcmVtOwogICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zczsKICAgICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpOwogICAgfQogICAgCiAgICAuZm9ybS1ncm91cCBpbnB1dDpmb2N1cywKICAgIC5mb3JtLWdyb3VwIHNlbGVjdDpmb2N1cywKICAgIC5mb3JtLWdyb3VwIHRleHRhcmVhOmZvY3VzIHsKICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nb2xkKTsKICAgICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMjU1LDIxNSwwLDAuMSk7CiAgICB9CiAgICAKICAgIC5mb3JtLWdyb3VwIHRleHRhcmVhIHsKICAgICAgcmVzaXplOiB2ZXJ0aWNhbDsKICAgICAgbWluLWhlaWdodDogMTUwcHg7CiAgICB9CiAgICAKICAgIC5zdWJtaXQtYnRuIHsKICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIHBhZGRpbmc6IDEuM3JlbTsKICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tZ29sZCkgMCUsIHZhcigtLWdvbGQtd2FybSkgMTAwJSk7CiAgICAgIGNvbG9yOiB2YXIoLS1uYXZ5KTsKICAgICAgYm9yZGVyOiBub25lOwogICAgICBib3JkZXItcmFkaXVzOiA1MHB4OwogICAgICBmb250LXdlaWdodDogOTAwOwogICAgICBmb250LXNpemU6IDEuMnJlbTsKICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zczsKICAgICAgYm94LXNoYWRvdzogMCAxMHB4IDMwcHggcmdiYSgyNTUsMjE1LDAsMC4zKTsKICAgIH0KICAgIAogICAgLnN1Ym1pdC1idG46aG92ZXIgewogICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCk7CiAgICAgIGJveC1zaGFkb3c6IDAgMTVweCA0MHB4IHJnYmEoMjU1LDIxNSwwLDAuNSk7CiAgICB9CiAgICAKICAgIC8qIEZBUSBTRUNUSU9OIC0gVFdPIENPTFVNTlMgKi8KICAgIC5mYXEtc2VjdGlvbiB7CiAgICAgIHBhZGRpbmc6IDEwMHB4IDJyZW07CiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0LWJnKTsKICAgIH0KICAgIAogICAgLmZhcS1jb250YWluZXIgewogICAgICBtYXgtd2lkdGg6IDE0MDBweDsKICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICB9CiAgICAKICAgIC5mYXEtaGVhZGVyIHsKICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICBtYXJnaW4tYm90dG9tOiA1cmVtOwogICAgfQogICAgCiAgICAuZmFxLWhlYWRlciBoMiB7CiAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMi41cmVtLCA2dncsIDRyZW0pOwogICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07CiAgICAgIGNvbG9yOiB2YXIoLS1uYXZ5KTsKICAgIH0KICAgIAogICAgLmZhcS1jb2x1bW5zIHsKICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyOwogICAgICBnYXA6IDRyZW07CiAgICB9CiAgICAKICAgIC5mYXEtY29sdW1uIGgzIHsKICAgICAgZm9udC1zaXplOiAxLjhyZW07CiAgICAgIGNvbG9yOiB2YXIoLS1wdXJwbGUpOwogICAgICBtYXJnaW4tYm90dG9tOiAycmVtOwogICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsKICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHZhcigtLWdvbGQpOwogICAgfQogICAgCiAgICAuZmFxLWl0ZW0gewogICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7CiAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7CiAgICAgIHBhZGRpbmc6IDJyZW07CiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsKICAgICAgYm94LXNoYWRvdzogMCA1cHggMjBweCByZ2JhKDAsMCwwLDAuMDUpOwogICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zczsKICAgIH0KICAgIAogICAgLmZhcS1pdGVtOmhvdmVyIHsKICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOwogICAgICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDAsMCwwLDAuMSk7CiAgICB9CiAgICAKICAgIC5mYXEtcXVlc3Rpb24gewogICAgICBmb250LXNpemU6IDEuMnJlbTsKICAgICAgZm9udC13ZWlnaHQ6IDgwMDsKICAgICAgY29sb3I6IHZhcigtLW5hdnkpOwogICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOwogICAgfQogICAgCiAgICAuZmFxLWFuc3dlciB7CiAgICAgIGNvbG9yOiB2YXIoLS1ncmF5KTsKICAgICAgbGluZS1oZWlnaHQ6IDEuODsKICAgICAgZm9udC1zaXplOiAxLjA1cmVtOwogICAgfQogICAgCiAgICAuZmFxLWFuc3dlciBhIHsKICAgICAgY29sb3I6IHZhcigtLXJveWFsLWJsdWUpOwogICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICB9CiAgICAKICAgIC5mYXEtYW5zd2VyIGE6aG92ZXIgewogICAgICBjb2xvcjogdmFyKC0tdGVhbCk7CiAgICB9CiAgICAKICAgIC8qIENUQSBTRUNUSU9OICovCiAgICAuY3RhLXNlY3Rpb24gewogICAgICBwYWRkaW5nOiAxMDBweCAycmVtOwogICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1nb2xkKSAwJSwgdmFyKC0tZ29sZC13YXJtKSAxMDAlKTsKICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgfQogICAgCiAgICAuY3RhLWNvbnRhaW5lciB7CiAgICAgIG1heC13aWR0aDogOTAwcHg7CiAgICAgIG1hcmdpbjogMCBhdXRvOwogICAgfQogICAgCiAgICAuY3RhLXNlY3Rpb24gaDIgewogICAgICBmb250LXNpemU6IGNsYW1wKDIuNXJlbSwgNnZ3LCA0cmVtKTsKICAgICAgY29sb3I6IHZhcigtLW5hdnkpOwogICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07CiAgICB9CiAgICAKICAgIC5jdGEtc2VjdGlvbiBwIHsKICAgICAgZm9udC1zaXplOiAxLjRyZW07CiAgICAgIGNvbG9yOiB2YXIoLS1uYXZ5KTsKICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTsKICAgICAgb3BhY2l0eTogMC45OwogICAgfQogICAgCiAgICAuYnRuLWN0YSB7CiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgcGFkZGluZzogMS41cmVtIDRyZW07CiAgICAgIGJhY2tncm91bmQ6IHZhcigtLW5hdnkpOwogICAgICBjb2xvcjogdmFyKC0tZ29sZCk7CiAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7CiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7CiAgICAgIGZvbnQtc2l6ZTogMS4zcmVtOwogICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzOwogICAgICBib3gtc2hhZG93OiAwIDIwcHggNTBweCByZ2JhKDAsMzEsNjMsMC4zKTsKICAgIH0KICAgIAogICAgLmJ0bi1jdGE6aG92ZXIgewogICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCkgc2NhbGUoMS4wNSk7CiAgICAgIGJveC1zaGFkb3c6IDAgMzBweCA3MHB4IHJnYmEoMCwzMSw2MywwLjUpOwogICAgfQogICAgCiAgICAvKiBGT09URVIgKi8KICAgIC5mb290ZXIgewogICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1uYXZ5KTsKICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTsKICAgICAgcGFkZGluZzogNjBweCAycmVtIDIwcHg7CiAgICB9CiAgICAKICAgIC5mb290ZXItY29udGFpbmVyIHsKICAgICAgbWF4LXdpZHRoOiAxNDAwcHg7CiAgICAgIG1hcmdpbjogMCBhdXRvOwogICAgfQogICAgCiAgICAuZm9vdGVyLWdyaWQgewogICAgICBkaXNwbGF5OiBncmlkOwogICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDIwMHB4LCAxZnIpKTsKICAgICAgZ2FwOiAzcmVtOwogICAgICBtYXJnaW4tYm90dG9tOiAzcmVtOwogICAgfQogICAgCiAgICAuZm9vdGVyLWNvbHVtbiBoNCB7CiAgICAgIGNvbG9yOiB2YXIoLS1nb2xkKTsKICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsKICAgICAgZm9udC1zaXplOiAxLjJyZW07CiAgICB9CiAgICAKICAgIC5mb290ZXItY29sdW1uIHVsIHsKICAgICAgbGlzdC1zdHlsZTogbm9uZTsKICAgIH0KICAgIAogICAgLmZvb3Rlci1jb2x1bW4gdWwgbGkgewogICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtOwogICAgfQogICAgCiAgICAuZm9vdGVyLWNvbHVtbiBhIHsKICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTsKICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgICBvcGFjaXR5OiAwLjk7CiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzOwogICAgfQogICAgCiAgICAuZm9vdGVyLWNvbHVtbiBhOmhvdmVyIHsKICAgICAgb3BhY2l0eTogMTsKICAgICAgY29sb3I6IHZhcigtLWdvbGQpOwogICAgICBwYWRkaW5nLWxlZnQ6IDVweDsKICAgIH0KICAgIAogICAgLmZvb3Rlci1ib3R0b20gewogICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsMjE1LDAsMC4zKTsKICAgICAgcGFkZGluZy10b3A6IDJyZW07CiAgICAgIG1hcmdpbi10b3A6IDJyZW07CiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgZm9udC1zaXplOiAwLjlyZW07CiAgICAgIG9wYWNpdHk6IDAuODsKICAgIH0KICAgIAogICAgLmZvb3Rlci1ib3R0b20gYSB7CiAgICAgIGNvbG9yOiB2YXIoLS1nb2xkKTsKICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgfQogICAgCiAgICAvKiBSRVNQT05TSVZFICovCiAgICBAbWVkaWEgKG1heC13aWR0aDogOTY4cHgpIHsKICAgICAgLmNvbnRhY3QtZ3JpZCwKICAgICAgLmZhcS1jb2x1bW5zIHsKICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsKICAgICAgICBnYXA6IDNyZW07CiAgICAgIH0KICAgIH0KICAgIAogICAgLyogU0NST0xMIEFOSU1BVElPTlMgKi8KICAgIC5mYWRlLWluIHsKICAgICAgb3BhY2l0eTogMDsKICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpOwogICAgICB0cmFuc2l0aW9uOiBhbGwgMC44cyBlYXNlLW91dDsKICAgIH0KICAgIAogICAgLmZhZGUtaW4udmlzaWJsZSB7CiAgICAgIG9wYWNpdHk6IDE7CiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgIH0KICA8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgoKICA8IS0tIE5BVklHQVRJT04gLS0+CiAgPG5hdiBjbGFzcz0ibmF2Ij4KICAgIDxkaXYgY2xhc3M9Im5hdi1jb250YWluZXIiPgogICAgICA8YSBocmVmPSIvIiBjbGFzcz0ibG9nbyI+SGFuZHNoYWtlLmFmcmljYTwvYT4KICAgICAgPHVsIGNsYXNzPSJuYXYtbGlua3MiPgogICAgICAgIDxsaT48YSBocmVmPSIvIj5Ib21lPC9hPjwvbGk+CiAgICAgICAgPGxpPjxhIGhyZWY9Ii9kaXNjb3ZlciI+RGlzY292ZXI8L2E+PC9saT4KICAgICAgICA8bGk+PGEgaHJlZj0iL2dhbGxlcnkiPkdhbGxlcnk8L2E+PC9saT4KICAgICAgICA8bGk+PGEgaHJlZj0iL3ByaWNpbmciPlByaWNpbmc8L2E+PC9saT4KICAgICAgICA8bGk+PGEgaHJlZj0iL2RpZ2l0YWwtZW1waXJlIj5Zb3VyIFBvc3NpYmlsaXRpZXM8L2E+PC9saT4KICAgICAgICA8bGk+PGEgaHJlZj0iL2NvbnRhY3QiIGNsYXNzPSJhY3RpdmUiPkNvbnRhY3Q8L2E+PC9saT4KICAgICAgPC91bD4KICAgIDwvZGl2PgogIDwvbmF2PgoKICA8IS0tIEhFUk8gLS0+CiAgPHNlY3Rpb24gY2xhc3M9Imhlcm8iPgogICAgPGRpdiBjbGFzcz0iaGVyby1jb250YWluZXIiPgogICAgICA8aDE+TGV0J3MgQnVpbGQgWW91ciBEaWdpdGFsIFNvdmVyZWlnbnR5PC9oMT4KICAgICAgPHAgY2xhc3M9Imhlcm8tc3VidGl0bGUiPgogICAgICAgIFF1ZXN0aW9ucz8gQ3VzdG9tIG5lZWRzPyBTdHJhdGVnaWMgZ3VpZGFuY2U/IFdlJ3JlIGhlcmUgdG8gaGVscCB5b3UgY2xhaW0geW91ciBkaWdpdGFsIHNwYWNlIHdpdGggY29uZmlkZW5jZS4KICAgICAgPC9wPgogICAgPC9kaXY+CiAgPC9zZWN0aW9uPgoKICA8IS0tIENPTlRBQ1QgU0VDVElPTiAtLT4KICA8c2VjdGlvbiBjbGFzcz0iY29udGFjdC1zZWN0aW9uIj4KICAgIDxkaXYgY2xhc3M9ImNvbnRhY3QtY29udGFpbmVyIj4KICAgICAgPGRpdiBjbGFzcz0iY29udGFjdC1ncmlkIj4KICAgICAgICAKICAgICAgICA8IS0tIExFRlQ6IENPTlRBQ1QgSU5GTyAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWN0LWluZm8gZmFkZS1pbiI+CiAgICAgICAgICA8aDI+R2V0IEluIFRvdWNoPC9oMj4KICAgICAgICAgIDxwIGNsYXNzPSJjb250YWN0LWludHJvIj4KICAgICAgICAgICAgRXZlcnkgZW50cmVwcmVuZXVyJ3Mgam91cm5leSBpcyB1bmlxdWUuIFdlIGFzc2VzcyB5b3VyIHNwZWNpZmljIG5lZWRzLCB0aW1lbGluZSwgYW5kIGdvYWxzIGJlZm9yZSBwcm92aWRpbmcgcGVyc29uYWxpemVkIHJlY29tbWVuZGF0aW9ucyBhbmQgZGVsaXZlcnkgc2NoZWR1bGVzLgogICAgICAgICAgPC9wPgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWN0LW1ldGhvZCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhY3QtaWNvbiI+8J+TpzwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWN0LWRldGFpbHMiPgogICAgICAgICAgICAgIDxoMz5FbWFpbCBVczwvaDM+CiAgICAgICAgICAgICAgPHA+Rm9yIGlucXVpcmllcywgcGFydG5lcnNoaXBzLCBzdXBwb3J0LCBvciBjdXN0b20gcHJvamVjdHM8L3A+CiAgICAgICAgICAgICAgPGEgaHJlZj0ibWFpbHRvOmhlbGxvQGhhbmRzaGFrZS5hZnJpY2EiPmhlbGxvQGhhbmRzaGFrZS5hZnJpY2E8L2E+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICAKICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhY3QtbWV0aG9kIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFjdC1pY29uIj7wn5OxPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhY3QtZGV0YWlscyI+CiAgICAgICAgICAgICAgPGgzPldoYXRzQXBwPC9oMz4KICAgICAgICAgICAgICA8cD5RdWljayBxdWVzdGlvbnMsIG9yZGVyIHVwZGF0ZXMsIG1vYmlsZSBzdXBwb3J0PC9wPgogICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd2EubWUvWU9VUl9OVU1CRVJfSEVSRSIgdGFyZ2V0PSJfYmxhbmsiPlN0YXJ0IFdoYXRzQXBwIENoYXQ8L2E+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICAKICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhY3QtbWV0aG9kIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFjdC1pY29uIj7wn5OFPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhY3QtZGV0YWlscyI+CiAgICAgICAgICAgICAgPGgzPkZyZWUgMTUtTWluIERpc2NvdmVyeSBDYWxsPC9oMz4KICAgICAgICAgICAgICA8cD5Ob3Qgc3VyZSB3aGVyZSB0byBzdGFydD8gQm9vayBhIHF1aWNrIGNvbnN1bHRhdGlvbjwvcD4KICAgICAgICAgICAgICA8YSBocmVmPSIjIiB0YXJnZXQ9Il9ibGFuayI+U2NoZWR1bGUgWW91ciBDYWxsPC9hPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWN0LW1ldGhvZCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhY3QtaWNvbiI+8J+VkjwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWN0LWRldGFpbHMiPgogICAgICAgICAgICAgIDxoMz5SZXNwb25zZSBUaW1lPC9oMz4KICAgICAgICAgICAgICA8cD48c3Ryb25nPkVtYWlsOjwvc3Ryb25nPiBXaXRoaW4gMjQgaG91cnMgKGJ1c2luZXNzIGRheXMpPC9wPgogICAgICAgICAgICAgIDxwPjxzdHJvbmc+V2hhdHNBcHA6PC9zdHJvbmc+IFdpdGhpbiA0IGhvdXJzICg5QU0tNVBNIEVBVCk8L3A+CiAgICAgICAgICAgICAgPHA+PHN0cm9uZz5CdXNpbmVzcyBIb3Vyczo8L3N0cm9uZz4gTW9uLUZyaSA5QU0tNVBNLCBTYXQgMTBBTS0yUE0gRUFUPC9wPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgCiAgICAgICAgICA8IS0tIFNFQ1VSSVRZIEJBREdFIC0tPgogICAgICAgICAgPGRpdiBjbGFzcz0ic2VjdXJpdHktYmFkZ2UiPgogICAgICAgICAgICA8aDQ+8J+UkiBZb3VyIFByaXZhY3kgJiBTZWN1cml0eTwvaDQ+CiAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICA8bGk+U1NMLWVuY3J5cHRlZCBjb21tdW5pY2F0aW9uczwvbGk+CiAgICAgICAgICAgICAgPGxpPlNlY3VyZSBjbG91ZCBob3N0aW5nICg5OS45JSB1cHRpbWUpPC9saT4KICAgICAgICAgICAgICA8bGk+R0RQUi1jb21wbGlhbnQgZGF0YSBoYW5kbGluZzwvbGk+CiAgICAgICAgICAgICAgPGxpPk5vIHNwYW0sIGV2ZXIuIFdlIHJlc3BlY3QgeW91ciBpbmJveC48L2xpPgogICAgICAgICAgICA8L3VsPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgPCEtLSBSSUdIVDogRk9STSAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWN0LWZvcm0gZmFkZS1pbiI+CiAgICAgICAgICA8aDI+U2VuZCBVcyBhIE1lc3NhZ2U8L2gyPgogICAgICAgICAgPHAgY2xhc3M9ImZvcm0taW50cm8iPgogICAgICAgICAgICBGaWxsIG91dCB0aGUgZm9ybSBiZWxvdyBhbmQgd2UnbGwgZ2V0IGJhY2sgdG8geW91IHdpdGggcGVyc29uYWxpemVkIGd1aWRhbmNlIHdpdGhpbiAyNCBob3Vycy4KICAgICAgICAgIDwvcD4KICAgICAgICAgIAogICAgICAgICAgPCEtLSDirIfvuI/irIfvuI/irIfvuI8gWU9VUiBDUk0gRk9STSBFTUJFRCBaT05FIOKsh++4j+Ksh++4j+Ksh++4jyAtLT4KICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZW1iZWQtem9uZSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVtYmVkLWFycm93cyI+4oaT4oaT4oaTPC9kaXY+CiAgICAgICAgICAgIDxoMz7wn5OLIEVNQkVEIFlPVVIgQ1JNIEZPUk0gSEVSRTwvaDM+CiAgICAgICAgICAgIDxwPgogICAgICAgICAgICAgIFJlcGxhY2UgdGhpcyBwbGFjZWhvbGRlciB3aXRoIHlvdXIgQ1JNIGZvcm0gZW1iZWQgY29kZSAoZS5nLiwgQ29udmVydEtpdCwgTWFpbGVyTGl0ZSwgQWN0aXZlQ2FtcGFpZ24sIGV0Yy4pCiAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZW1iZWQtYXJyb3dzIj7ihpPihpPihpM8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPCEtLSDirIbvuI/irIbvuI/irIbvuI8gRU5EIEVNQkVEIFpPTkUg4qyG77iP4qyG77iP4qyG77iPIC0tPgogICAgICAgICAgCiAgICAgICAgICA8IS0tIEFMVEVSTkFUSVZFOiBGYWxsYmFjayBmb3JtIChoaWRkZW4gYnkgZGVmYXVsdCkgLS0+CiAgICAgICAgICA8Zm9ybSBjbGFzcz0iZmFsbGJhY2stZm9ybSIgYWN0aW9uPSJZT1VSX0ZPUk1fQUNUSU9OX1VSTCIgbWV0aG9kPSJQT1NUIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibmFtZSI+WW91ciBOYW1lICo8L2xhYmVsPgogICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0ibmFtZSIgbmFtZT0ibmFtZSIgcmVxdWlyZWQgcGxhY2Vob2xkZXI9IkJhcmJhcmEgTmFudG9nbyI+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAKICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgPGxhYmVsIGZvcj0iZW1haWwiPkVtYWlsIEFkZHJlc3MgKjwvbGFiZWw+CiAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImVtYWlsIiBpZD0iZW1haWwiIG5hbWU9ImVtYWlsIiByZXF1aXJlZCBwbGFjZWhvbGRlcj0iYmFyYmFyYUBleGFtcGxlLmNvbSI+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAKICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgPGxhYmVsIGZvcj0icGhvbmUiPlBob25lIE51bWJlcjwvbGFiZWw+CiAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRlbCIgaWQ9InBob25lIiBuYW1lPSJwaG9uZSIgcGxhY2Vob2xkZXI9IisyNTYgNzAwIDAwMDAwMCI+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAKICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ic3ViamVjdCI+SSdtIGludGVyZXN0ZWQgaW4uLi4gKjwvbGFiZWw+CiAgICAgICAgICAgICAgPHNlbGVjdCBpZD0ic3ViamVjdCIgbmFtZT0ic3ViamVjdCIgcmVxdWlyZWQ+CiAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSIiPkNob29zZSBvbmUuLi48L29wdGlvbj4KICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InRlbXBsYXRlLWNhcmQiPlRlbXBsYXRlIERpZ2l0YWwgQ2FyZDwvb3B0aW9uPgogICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iY3VzdG9tLWNhcmQiPkN1c3RvbSBCcmFuZGVkIENhcmQ8L29wdGlvbj4KICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImNvbnN1bHRhdGlvbiI+QnJhbmRpbmcgQ29uc3VsdGF0aW9uPC9vcHRpb24+CiAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJncm91cCI+R3JvdXAvVGVhbSBQcmljaW5nICgxMCspPC9vcHRpb24+CiAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJhbGFjYXJ0ZSI+w4AgTGEgQ2FydGUgQWRkLU9uczwvb3B0aW9uPgogICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iZW1waXJlIj5GdWxsIERpZ2l0YWwgRW1waXJlIEJ1aWxkPC9vcHRpb24+CiAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJwYXJ0bmVyc2hpcCI+UGFydG5lcnNoaXAvV2hpdGUtbGFiZWw8L29wdGlvbj4KICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Im90aGVyIj5PdGhlcjwvb3B0aW9uPgogICAgICAgICAgICAgIDwvc2VsZWN0PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1lc3NhZ2UiPlRlbGwgdXMgYWJvdXQgeW91ciBuZWVkcyAqPC9sYWJlbD4KICAgICAgICAgICAgICA8dGV4dGFyZWEgaWQ9Im1lc3NhZ2UiIG5hbWU9Im1lc3NhZ2UiIHJlcXVpcmVkIHBsYWNlaG9sZGVyPSJXaGF0IGFyZSB5b3UgbG9va2luZyB0byBjcmVhdGU/IFdoYXQncyB5b3VyIHRpbWVsaW5lPyBBbnkgc3BlY2lmaWMgcXVlc3Rpb25zPyI+PC90ZXh0YXJlYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIAogICAgICAgICAgICA8YnV0dG9uIHR5cGU9InN1Ym1pdCIgY2xhc3M9InN1Ym1pdC1idG4iPlNlbmQgTWVzc2FnZSDihpI8L2J1dHRvbj4KICAgICAgICAgIDwvZm9ybT4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L3NlY3Rpb24+CgogIDwhLS0gRkFRIFNFQ1RJT04gLSBUV08gQ09MVU1OUyAtLT4KICA8c2VjdGlvbiBjbGFzcz0iZmFxLXNlY3Rpb24iPgogICAgPGRpdiBjbGFzcz0iZmFxLWNvbnRhaW5lciI+CiAgICAgIDxkaXYgY2xhc3M9ImZhcS1oZWFkZXIiPgogICAgICAgIDxoMj5RdWVzdGlvbnM/IFdlJ3ZlIEdvdCBBbnN3ZXJzLjwvaDI+CiAgICAgIDwvZGl2PgogICAgICAKICAgICAgPGRpdiBjbGFzcz0iZmFxLWNvbHVtbnMiPgogICAgICAgIAogICAgICAgIDwhLS0gQ09MVU1OIDE6IFBFT1BMRSBBTFNPIEFTSyAoT2JqZWN0aW9uIEJ1c3RpbmcpIC0tPgogICAgICAgIDxkaXYgY2xhc3M9ImZhcS1jb2x1bW4gZmFkZS1pbiI+CiAgICAgICAgICA8aDM+8J+SrSBQZW9wbGUgQWxzbyBBc2s8L2gzPgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJmYXEtaXRlbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1xdWVzdGlvbiI+V2h5IGRpZ2l0YWwgaW5zdGVhZCBvZiBwYXBlciBjYXJkcz88L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmFxLWFuc3dlciI+CiAgICAgICAgICAgICAgUGFwZXIgY2FyZHMgZ2V0IGxvc3Qgd2l0aGluIGRheXMuIFlvdXIgZGlnaXRhbCBjYXJkIGxpdmVzIG9uIGV2ZXJ5IHBob25lIHRoYXQgc2NhbnMgaXTigJRmb3JldmVyLiBQbHVzOiB1cGRhdGVhYmxlLCB0cmFja2FibGUsIGVjby1mcmllbmRseSwgYW5kIGluZmluaXRlbHkgbW9yZSBwcm9mZXNzaW9uYWwuCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICAKICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1pdGVtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmFxLXF1ZXN0aW9uIj5XaWxsIHBlb3BsZSBhY3R1YWxseSB1c2UgdGhpcz88L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmFxLWFuc3dlciI+CiAgICAgICAgICAgICAgVGhleSBhbHJlYWR5IGRvLiA4NSUgb2YgcHJvZmVzc2lvbmFscyBwcmVmZXIgcmVjZWl2aW5nIGRpZ2l0YWwgY29udGFjdCBpbmZvIG92ZXIgcGFwZXIuIFFSIGNvZGVzIGFyZSB1bml2ZXJzYWwuIE9uZSBzY2FuID0geW91ciBlbnRpcmUgcHJvZmlsZSBzYXZlZC4gSXQncyBlYXNpZXIgZm9yIFRIRU0sIHdoaWNoIG1lYW5zIGJldHRlciByZXN1bHRzIGZvciBZT1UuCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICAKICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1pdGVtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmFxLXF1ZXN0aW9uIj5JJ20gbm90IHRlY2gtc2F2dnkuIElzIHRoaXMgY29tcGxpY2F0ZWQ/PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1hbnN3ZXIiPgogICAgICAgICAgICAgIElmIHlvdSBjYW4gc2VuZCBhIFdoYXRzQXBwIG1lc3NhZ2UsIHlvdSBjYW4gc2hhcmUgeW91ciBjYXJkLiBXZSBoYW5kbGUgQUxMIHRoZSB0ZWNobmljYWwgc2V0dXAuIFlvdSBqdXN0IHByb3ZpZGUgeW91ciBpbmZvIGFuZCBwcmVmZXJlbmNlcy4gWW91ciBjYXJkIGlzIHJlYWR5IHRvIHNoYXJlIGluIGRheXMuCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICAKICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1pdGVtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmFxLXF1ZXN0aW9uIj5Ib3cgaXMgdGhpcyBkaWZmZXJlbnQgZnJvbSBMaW5rdHJlZT88L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmFxLWFuc3dlciI+CiAgICAgICAgICAgICAgTGlua3RyZWUgaXMgYSBsaW5rIHBhZ2UuIFlvdXIgSGFuZHNoYWtlIGNhcmQgaXMgYSBjb21wbGV0ZSBkaWdpdGFsIGlkZW50aXR54oCUcHJvZmVzc2lvbmFsIGJyYW5kaW5nLCB2aWRlbyBpbnRyb2R1Y3Rpb25zLCBhbmFseXRpY3MsIG9mZmxpbmUgY2FwYWJpbGl0eSwgYW5kIGJ1aWx0IGZvciBCVVNJTkVTUywgbm90IGp1c3Qgc29jaWFsIG1lZGlhIGZvbGxvd2Vycy4gPGEgaHJlZj0iL2RpZ2l0YWwtZW1waXJlIj5TZWUgYWxsIHBvc3NpYmlsaXRpZXMg4oaSPC9hPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJmYXEtaXRlbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1xdWVzdGlvbiI+SXMgdGhpcyBqdXN0IGFub3RoZXIgdHJlbmQ/PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1hbnN3ZXIiPgogICAgICAgICAgICAgIERpZ2l0YWwgYnVzaW5lc3MgY2FyZHMgYXJlbid0IGEgdHJlbmTigJR0aGV5J3JlIHRoZSBORVcgU1RBTkRBUkQuIEZvcnR1bmUgNTAwIGNvbXBhbmllcywgZ2xvYmFsIGNvbmZlcmVuY2VzLCBhbmQgZm9yd2FyZC10aGlua2luZyBwcm9mZXNzaW9uYWxzIHdvcmxkd2lkZSBoYXZlIGFscmVhZHkgbWFkZSB0aGUgc3dpdGNoLiBUaGUgcXVlc3Rpb24gaXNuJ3QgImlmIiBidXQgIndoZW4gd2lsbCBZT1U/IgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJmYXEtaXRlbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1xdWVzdGlvbiI+V2hhdCBpZiBJIGRvbid0IGhhdmUgYSB3ZWJzaXRlIHlldD88L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmFxLWFuc3dlciI+CiAgICAgICAgICAgICAgUEVSRkVDVC4gWW91ciBkaWdpdGFsIGNhcmQgSVMgeW91ciB3ZWIgcHJlc2VuY2UuIE1hbnkgZW50cmVwcmVuZXVycyBza2lwIHdlYnNpdGVzIGVudGlyZWx5IGFuZCBidWlsZCBtdWx0aS1wYWdlIGNhcmQgZXhwZXJpZW5jZXMgaW5zdGVhZOKAlG1vcmUgYWZmb3JkYWJsZSwgbW9yZSBtb2JpbGUtb3B0aW1pemVkLCBhbmQgZmFzdGVyIHRvIGxhdW5jaC4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8IS0tIENPTFVNTiAyOiBXT1JLSU5HIFdJVEggVVMgKFByb2Nlc3MgJiBMb2dpc3RpY3MpIC0tPgogICAgICAgIDxkaXYgY2xhc3M9ImZhcS1jb2x1bW4gZmFkZS1pbiI+CiAgICAgICAgICA8aDM+8J+knSBXb3JraW5nIFdpdGggVXM8L2gzPgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJmYXEtaXRlbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1xdWVzdGlvbiI+V2hhdCBoYXBwZW5zIGFmdGVyIEkgY29udGFjdCB5b3U/PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1hbnN3ZXIiPgogICAgICAgICAgICAgIFdlIGFzc2VzcyB5b3VyIG5lZWRzLCByZWNvbW1lbmQgdGhlIGJlc3QgdGllci9vcHRpb25zLCBwcm92aWRlIGEgY3VzdG9taXplZCB0aW1lbGluZSBhbmQgcXVvdGUsIHRoZW4gZ3VpZGUgeW91IHRocm91Z2ggZXZlcnkgc3RlcC4gRWFjaCBwcm9qZWN0IHJlY2VpdmVzIGluZGl2aWR1YWwgYXR0ZW50aW9u4oCUbm8gY29va2llLWN1dHRlciBhcHByb2FjaCBoZXJlLgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJmYXEtaXRlbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1xdWVzdGlvbiI+SG93IGxvbmcgZG9lcyBpdCB0YWtlIHRvIGdldCBteSBjYXJkPzwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmYXEtYW5zd2VyIj4KICAgICAgICAgICAgICA8c3Ryb25nPlRlbXBsYXRlIGNhcmRzOjwvc3Ryb25nPiA0OC03MiBob3VycyBhZnRlciBjb250ZW50IHN1Ym1pc3Npb24uPGJyPgogICAgICAgICAgICAgIDxzdHJvbmc+Q3VzdG9tIGJyYW5kZWQgY2FyZHM6PC9zdHJvbmc+IDUtNyBidXNpbmVzcyBkYXlzLjxicj4KICAgICAgICAgICAgICA8c3Ryb25nPkZ1bGwgZGlnaXRhbCBlbXBpcmUgYnVpbGRzOjwvc3Ryb25nPiAyLTQgd2Vla3MgZGVwZW5kaW5nIG9uIHNjb3BlLjxicj4KICAgICAgICAgICAgICBXZSBwcm92aWRlIFlPVVIgc3BlY2lmaWMgdGltZWxpbmUgYmVmb3JlIHN0YXJ0aW5nLgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJmYXEtaXRlbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1xdWVzdGlvbiI+V2hhdCBkbyBJIG5lZWQgdG8gcHJvdmlkZT88L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmFxLWFuc3dlciI+CiAgICAgICAgICAgICAgQmFzaWMgaW5mbzogbmFtZSwgdGl0bGUsIGNvbnRhY3QgZGV0YWlscywgc29jaWFsIGxpbmtzLCBwaG90by4gT3B0aW9uYWw6IGxvZ28sIGJyYW5kIGNvbG9ycywgdmlkZW8sIHBvcnRmb2xpbyBpdGVtcy4gV2UgcHJvdmlkZSBhIGRldGFpbGVkIHF1ZXN0aW9ubmFpcmUgb25jZSB5b3UncmUgb25ib2FyZGVk4oCUbWFrZXMgaXQgc3VwZXIgZWFzeS4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIAogICAgICAgICAgPGRpdiBjbGFzcz0iZmFxLWl0ZW0iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmYXEtcXVlc3Rpb24iPkNhbiBJIG1ha2UgY2hhbmdlcyBhZnRlciBsYXVuY2g/PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1hbnN3ZXIiPgogICAgICAgICAgICAgIFlFUyEgRXNzZW50aWFsIHRpZXI6IDEgbWFqb3IgdXBkYXRlL3llYXIuIFByb2Zlc3Npb25hbDogMiB1cGRhdGVzL3llYXIuIFByZW1pdW06IFF1YXJ0ZXJseSB1cGRhdGVzIGluY2x1ZGVkLiBOZWVkIG1vcmU/IFVwZ3JhZGUgeW91ciB0aWVyIG9yIHB1cmNoYXNlIMOgIGxhIGNhcnRlIHVwZGF0ZSBwYWNrYWdlcy4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIAogICAgICAgICAgPGRpdiBjbGFzcz0iZmFxLWl0ZW0iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmYXEtcXVlc3Rpb24iPldoYXQgYWJvdXQgY29uc3VsdGF0aW9ucz88L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmFxLWFuc3dlciI+CiAgICAgICAgICAgICAgPHN0cm9uZz5GcmVlIDE1LW1pbiBkaXNjb3ZlcnkgY2FsbDo8L3N0cm9uZz4gSXMgZGlnaXRhbCByaWdodCBmb3IgeW91Pzxicj4KICAgICAgICAgICAgICA8c3Ryb25nPlBhaWQgYnJhbmRpbmcgY29uc3VsdGF0aW9uICgkOTctJDI5Nyk6PC9zdHJvbmc+IEJyYW5kIGlkZW50aXR5LCBjb250ZW50IHN0cmF0ZWd5LCBwb3NpdGlvbmluZy48YnI+CiAgICAgICAgICAgICAgPHN0cm9uZz5WSVAgc3RyYXRlZ3kgc2Vzc2lvbiAoJDQ5NyspOjwvc3Ryb25nPiBDb21wbGV0ZSBkaWdpdGFsIHByZXNlbmNlIGF1ZGl0ICsgaW1wbGVtZW50YXRpb24gcm9hZG1hcC4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIAogICAgICAgICAgPGRpdiBjbGFzcz0iZmFxLWl0ZW0iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmYXEtcXVlc3Rpb24iPkRvIHlvdSBvZmZlciBncm91cC90ZWFtIHByaWNpbmc/PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1hbnN3ZXIiPgogICAgICAgICAgICAgIEFic29sdXRlbHkhIEZvciBvcmdhbml6YXRpb25zIG9yZGVyaW5nIDEwKyBjYXJkcywgd2Ugb2ZmZXIgc3BlY2lhbCBwcmljaW5nLCBidWxrIG1hbmFnZW1lbnQgdG9vbHMsIGFuZCBjdXN0b20gdGVhbSBicmFuZGluZy4gPGEgaHJlZj0iL2dyb3VwLXByaWNpbmciPlNlZSBncm91cCBwcmljaW5nIOKGkjwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIAogICAgICAgICAgPGRpdiBjbGFzcz0iZmFxLWl0ZW0iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmYXEtcXVlc3Rpb24iPldoYXQgcGF5bWVudCBtZXRob2RzIGRvIHlvdSBhY2NlcHQ/PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhcS1hbnN3ZXIiPgogICAgICAgICAgICAgIE0tUGVzYSwgQWlydGVsIE1vbmV5LCBiYW5rIHRyYW5zZmVycywgYW5kIGludGVybmF0aW9uYWwgY3JlZGl0L2RlYml0IGNhcmRzLiBXZSBtYWtlIEFmcmljYW4gcGF5bWVudCBFQVNZLiBTU0wtc2VjdXJlZCB0cmFuc2FjdGlvbnMgYWx3YXlzLgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvc2VjdGlvbj4KCiAgPCEtLSBDVEEgU0VDVElPTiAtLT4KICA8c2VjdGlvbiBjbGFzcz0iY3RhLXNlY3Rpb24iPgogICAgPGRpdiBjbGFzcz0iY3RhLWNvbnRhaW5lciI+CiAgICAgIDxoMj5SZWFkeSB0byBTdGFydCBZb3VyIEpvdXJuZXk/PC9oMj4KICAgICAgPHA+RXhwbG9yZSB3aGF0J3MgcG9zc2libGUuIFNlZSB5b3VyIG9wdGlvbnMuIEJ1aWxkIHlvdXIgZW1waXJlLjwvcD4KICAgICAgPGEgaHJlZj0iL2RpZ2l0YWwtZW1waXJlIiBjbGFzcz0iYnRuLWN0YSI+RGlzY292ZXIgWW91ciBQb3NzaWJpbGl0aWVzIOKGkjwvYT4KICAgIDwvZGl2PgogIDwvc2VjdGlvbj4KCiAgPCEtLSBGT09URVIgLS0+CiAgPGZvb3RlciBjbGFzcz0iZm9vdGVyIj4KICAgIDxkaXYgY2xhc3M9ImZvb3Rlci1jb250YWluZXIiPgogICAgICA8ZGl2IGNsYXNzPSJmb290ZXItZ3JpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyLWNvbHVtbiI+CiAgICAgICAgICA8aDQ+SGFuZHNoYWtlLmFmcmljYTwvaDQ+CiAgICAgICAgICA8cCBzdHlsZT0ib3BhY2l0eTogMC45OyBsaW5lLWhlaWdodDogMS43OyI+CiAgICAgICAgICAgIERpZ2l0YWwgc292ZXJlaWdudHkgZm9yIEFmcmljYW4gZW50cmVwcmVuZXVycy4gQUktcG93ZXJlZC4gRWNvLWNvbnNjaW91cy4gR2xvYmFsbHkgY29tcGV0aXRpdmUuCiAgICAgICAgICA8L3A+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyLWNvbHVtbiI+CiAgICAgICAgICA8aDQ+UHJvZHVjdDwvaDQ+CiAgICAgICAgICA8dWw+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSIvIj5Ib21lPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSIvZGlzY292ZXIiPkRpc2NvdmVyPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSIvZ2FsbGVyeSI+R2FsbGVyeTwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iL3ByaWNpbmciPlByaWNpbmc8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii9kaWdpdGFsLWVtcGlyZSI+WW91ciBQb3NzaWJpbGl0aWVzPC9hPjwvbGk+CiAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlci1jb2x1bW4iPgogICAgICAgICAgPGg0PkNvbXBhbnk8L2g0PgogICAgICAgICAgPHVsPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iL2Fib3V0Ij5BYm91dCBVczwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iL2NvbnRhY3QiPkNvbnRhY3Q8L2E+PC9saT4KICAgICAgICAgIDwvdWw+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyLWNvbHVtbiI+CiAgICAgICAgICA8aDQ+TGVnYWw8L2g0PgogICAgICAgICAgPHVsPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iL3Rlcm1zIj5UZXJtczwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iL3ByaXZhY3kiPlByaXZhY3k8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii9yZWZ1bmQtcG9saWN5Ij5SZWZ1bmRzPC9hPjwvbGk+CiAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyLWJvdHRvbSI+CiAgICAgICAgPHA+wqkgMjAyNSBIYW5kc2hha2UuYWZyaWNhIOKAoiBBbGwgUmlnaHRzIFJlc2VydmVkPC9wPgogICAgICAgIDxwPlBvd2VyZWQgYnkgPGEgaHJlZj0iaHR0cHM6Ly9keW5hbWljcGFyYWRpZ21zLmlvIj5EeW5hbWljIFBhcmFkaWdtczwvYT48L3A+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgPC9mb290ZXI+CgogIDxzY3JpcHQ+CiAgICAvLyBTY3JvbGwgYW5pbWF0aW9ucwogICAgY29uc3Qgb2JzZXJ2ZXJPcHRpb25zID0gewogICAgICB0aHJlc2hvbGQ6IDAuMSwKICAgICAgcm9vdE1hcmdpbjogJzBweCAwcHggLTEwMHB4IDBweCcKICAgIH07CiAgICAKICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGZ1bmN0aW9uKGVudHJpZXMpIHsKICAgICAgZW50cmllcy5mb3JFYWNoKGVudHJ5ID0+IHsKICAgICAgICBpZiAoZW50cnkuaXNJbnRlcnNlY3RpbmcpIHsKICAgICAgICAgIGVudHJ5LnRhcmdldC5jbGFzc0xpc3QuYWRkKCd2aXNpYmxlJyk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0sIG9ic2VydmVyT3B0aW9ucyk7CiAgICAKICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5mYWRlLWluJykuZm9yRWFjaChlbCA9PiBvYnNlcnZlci5vYnNlcnZlKGVsKSk7CiAgICAKICAgIC8vIFNlY3VyaXR5CiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdjb250ZXh0bWVudScsIGUgPT4gZS5wcmV2ZW50RGVmYXVsdCgpKTsKICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBmdW5jdGlvbihlKSB7CiAgICAgIGlmIChlLmtleUNvZGUgPT09IDEyMyB8fCAoZS5jdHJsS2V5ICYmIGUuc2hpZnRLZXkgJiYgZS5rZXlDb2RlID09PSA3MykpIHsKICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7CiAgICAgIH0KICAgIH0pOwogIDwvc2NyaXB0PgoKPC9ib2R5Pgo8L2h0bWw+","embed":""}
Contact Us - Let's Build Your Digital Presence | Handshake.africa
Handshake.africa
  • Home
  • Discover
  • Gallery
  • Pricing
  • Your Possibilities
  • Contact

Let's Build Your Digital Sovereignty

Questions? Custom needs? Strategic guidance? We're here to help you claim your digital space with confidence.

Get In Touch

Every entrepreneur's journey is unique. We assess your specific needs, timeline, and goals before providing personalized recommendations and delivery schedules.

📧

Email Us

For inquiries, partnerships, support, or custom projects

hello@handshake.africa
📱

WhatsApp

Quick questions, order updates, mobile support

Start WhatsApp Chat
📅

Free 15-Min Discovery Call

Not sure where to start? Book a quick consultation

Schedule Your Call
🕒

Response Time

Email: Within 24 hours (business days)

WhatsApp: Within 4 hours (9AM-5PM EAT)

Business Hours: Mon-Fri 9AM-5PM, Sat 10AM-2PM EAT

🔒 Your Privacy & Security

  • SSL-encrypted communications
  • Secure cloud hosting (99.9% uptime)
  • GDPR-compliant data handling
  • No spam, ever. We respect your inbox.

Send Us a Message

Fill out the form below and we'll get back to you with personalized guidance within 24 hours.

↓↓↓

📋 EMBED YOUR CRM FORM HERE

Replace this placeholder with your CRM form embed code (e.g., ConvertKit, MailerLite, ActiveCampaign, etc.)

↓↓↓

Questions? We've Got Answers.

💭 People Also Ask

Why digital instead of paper cards?
Paper cards get lost within days. Your digital card lives on every phone that scans it—forever. Plus: updateable, trackable, eco-friendly, and infinitely more professional.
Will people actually use this?
They already do. 85% of professionals prefer receiving digital contact info over paper. QR codes are universal. One scan = your entire profile saved. It's easier for THEM, which means better results for YOU.
I'm not tech-savvy. Is this complicated?
If you can send a WhatsApp message, you can share your card. We handle ALL the technical setup. You just provide your info and preferences. Your card is ready to share in days.
How is this different from Linktree?
Linktree is a link page. Your Handshake card is a complete digital identity—professional branding, video introductions, analytics, offline capability, and built for BUSINESS, not just social media followers. See all possibilities →
Is this just another trend?
Digital business cards aren't a trend—they're the NEW STANDARD. Fortune 500 companies, global conferences, and forward-thinking professionals worldwide have already made the switch. The question isn't "if" but "when will YOU?"
What if I don't have a website yet?
PERFECT. Your digital card IS your web presence. Many entrepreneurs skip websites entirely and build multi-page card experiences instead—more affordable, more mobile-optimized, and faster to launch.

🤝 Working With Us

What happens after I contact you?
We assess your needs, recommend the best tier/options, provide a customized timeline and quote, then guide you through every step. Each project receives individual attention—no cookie-cutter approach here.
How long does it take to get my card?
Template cards: 48-72 hours after content submission.
Custom branded cards: 5-7 business days.
Full digital empire builds: 2-4 weeks depending on scope.
We provide YOUR specific timeline before starting.
What do I need to provide?
Basic info: name, title, contact details, social links, photo. Optional: logo, brand colors, video, portfolio items. We provide a detailed questionnaire once you're onboarded—makes it super easy.
Can I make changes after launch?
YES! Essential tier: 1 major update/year. Professional: 2 updates/year. Premium: Quarterly updates included. Need more? Upgrade your tier or purchase à la carte update packages.
What about consultations?
Free 15-min discovery call: Is digital right for you?
Paid branding consultation ($97-$297): Brand identity, content strategy, positioning.
VIP strategy session ($497+): Complete digital presence audit + implementation roadmap.
Do you offer group/team pricing?
Absolutely! For organizations ordering 10+ cards, we offer special pricing, bulk management tools, and custom team branding. See group pricing →
What payment methods do you accept?
M-Pesa, Airtel Money, bank transfers, and international credit/debit cards. We make African payment EASY. SSL-secured transactions always.

Ready to Start Your Journey?

Explore what's possible. See your options. Build your empire.

Discover Your Possibilities →

Handshake.africa

Digital sovereignty for African entrepreneurs. AI-powered. Eco-conscious. Globally competitive.

Product

  • Home
  • Discover
  • Gallery
  • Pricing
  • Your Possibilities

Company

  • About Us
  • Contact

Legal

  • Terms
  • Privacy
  • Refunds

© 2025 Handshake.africa • All Rights Reserved

Powered by Dynamic Paradigms

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

warning