{"js":"PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBjaGFyc2V0PSJVVEYtOCI+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCI+CiAgICAKICAgIDwhLS0gUFJJTUFSWSBNRVRBIC0tPgogICAgPHRpdGxlPldlbGNvbWUgdG8gdGhlIEZvdW5kcnkgfCBTb3ZlcmVpZ24gQXJjaGl0ZWN0czwvdGl0bGU+CiAgICA8bWV0YSBuYW1lPSJ0aXRsZSIgY29udGVudD0iWW91IEFyZSBOb3cgQSBGb3VuZGluZyBQaW9uZWVyIHwgU292ZXJlaWduIEFyY2hpdGVjdHMiPgogICAgPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IllvdXIgcGxhY2UgaXMgc2VjdXJlZC4gV2VsY29tZSB0byB0aGUgaW5uZXIgY2lyY2xlIG9mIEFmcmljYSdzIG1vc3QgaW50ZW50aW9uYWwgYnVpbGRlcnMuIj4KICAgIDxtZXRhIG5hbWU9ImtleXdvcmRzIiBjb250ZW50PSJGb3VuZGluZyBQaW9uZWVyLCBGb3VuZGVycyBGb3VuZHJ5LCBBZnJpY2FuIGJ1c2luZXNzIGxlYWRlcnMiPgogICAgPG1ldGEgbmFtZT0iYXV0aG9yIiBjb250ZW50PSJTb3ZlcmVpZ24gQXJjaGl0ZWN0cyBNZWRpYSI+CiAgICAKICAgIDwhLS0gSElERSBGUk9NIFNFQVJDSCAmIE5BVklHQVRJT04gLS0+CiAgICA8bWV0YSBuYW1lPSJyb2JvdHMiIGNvbnRlbnQ9Im5vaW5kZXgsIG5vZm9sbG93Ij4KICAgIDxtZXRhIG5hbWU9Imdvb2dsZWJvdCIgY29udGVudD0ibm9pbmRleCwgbm9mb2xsb3ciPgogICAgPG1ldGEgbmFtZT0ibmF2aWdhdGlvbiIgY29udGVudD0iaGlkZGVuIj4KICAgIDxtZXRhIG5hbWU9Im1lbnUtZXhjbHVkZSIgY29udGVudD0idHJ1ZSI+CiAgICA8bWV0YSBuYW1lPSJmcC1uYXZpZ2F0aW9uIiBjb250ZW50PSJleGNsdWRlIj4KICAgIDxtZXRhIG5hbWU9ImZwLW1lbnUiIGNvbnRlbnQ9ImhpZGRlbiI+CiAgICAKICAgIDwhLS0gTk8gQ0FDSEUgLS0+CiAgICA8bWV0YSBodHRwLWVxdWl2PSJDYWNoZS1Db250cm9sIiBjb250ZW50PSJuby1jYWNoZSwgbm8tc3RvcmUsIG11c3QtcmV2YWxpZGF0ZSI+CiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4KICAgIDxtZXRhIGh0dHAtZXF1aXY9IkV4cGlyZXMiIGNvbnRlbnQ9IjAiPgogICAgCiAgICA8IS0tIFJFRkVSUkVSIFBST1RFQ1RJT04gLS0+CiAgICA8bWV0YSBuYW1lPSJyZWZlcnJlciIgY29udGVudD0ibm8tcmVmZXJyZXItd2hlbi1kb3duZ3JhZGUiPgogICAgCiAgICA8IS0tIE9QRU4gR1JBUEggLyBTT0NJQUwgU0hBUklORyAtLT4KICAgIDxtZXRhIHByb3BlcnR5PSJvZzp0eXBlIiBjb250ZW50PSJ3ZWJzaXRlIj4KICAgIDxtZXRhIHByb3BlcnR5PSJvZzp1cmwiIGNvbnRlbnQ9Imh0dHBzOi8vc292ZXJlaWdubW9tZW50dW0uY29tLzIwMjZ3ZWxjb21lIj4KICAgIDxtZXRhIHByb3BlcnR5PSJvZzp0aXRsZSIgY29udGVudD0iV2VsY29tZSB0byB0aGUgRm91bmRlcnMgRm91bmRyeSI+CiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9IllvdXIgcGxhY2UgYW1vbmcgQWZyaWNhJ3MgbW9zdCBpbnRlbnRpb25hbCBidWlsZGVycyBpcyBub3cgc2VjdXJlZC4iPgogICAgPG1ldGEgcHJvcGVydHk9Im9nOmltYWdlIiBjb250ZW50PSJodHRwczovL3NvdmVyZWlnbm1vbWVudHVtLmNvbS9pbWFnZXMvc292ZXJlaWduLWFyY2hpdGVjdHMtb2cucG5nIj4KICAgIDxtZXRhIHByb3BlcnR5PSJvZzpzaXRlX25hbWUiIGNvbnRlbnQ9IlNvdmVyZWlnbiBBcmNoaXRlY3RzIj4KICAgIAogICAgPCEtLSBUV0lUVEVSIENBUkQgLS0+CiAgICA8bWV0YSBuYW1lPSJ0d2l0dGVyOmNhcmQiIGNvbnRlbnQ9InN1bW1hcnlfbGFyZ2VfaW1hZ2UiPgogICAgPG1ldGEgbmFtZT0idHdpdHRlcjp0aXRsZSIgY29udGVudD0iV2VsY29tZSB0byB0aGUgRm91bmRlcnMgRm91bmRyeSI+CiAgICA8bWV0YSBuYW1lPSJ0d2l0dGVyOmRlc2NyaXB0aW9uIiBjb250ZW50PSJZb3VyIHBsYWNlIGFtb25nIEFmcmljYSdzIG1vc3QgaW50ZW50aW9uYWwgYnVpbGRlcnMgaXMgbm93IHNlY3VyZWQuIj4KICAgIDxtZXRhIG5hbWU9InR3aXR0ZXI6aW1hZ2UiIGNvbnRlbnQ9Imh0dHBzOi8vc292ZXJlaWdubW9tZW50dW0uY29tL2ltYWdlcy9zb3ZlcmVpZ24tYXJjaGl0ZWN0cy1vZy5wbmciPgogICAgCiAgICA8IS0tIEZBVklDT04gLS0+CiAgICA8bGluayByZWw9Imljb24iIHR5cGU9ImltYWdlL3gtaWNvbiIgaHJlZj0iL2Zhdmljb24uaWNvIj4KICAgIAogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tIj4KICAgIDxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbSIgY3Jvc3NvcmlnaW4+CiAgICA8bGluayBocmVmPSJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUNpbnplbDp3Z2h0QDQwMDs1MDA7NjAwOzcwMCZmYW1pbHk9Q29ybW9yYW50K0dhcmFtb25kOml0YWwsd2dodEAwLDQwMDswLDUwMDswLDYwMDswLDcwMDsxLDQwMDsxLDUwMCZmYW1pbHk9UmFsZXdheTp3Z2h0QDMwMDs0MDA7NTAwOzYwMCZkaXNwbGF5PXN3YXAiIHJlbD0ic3R5bGVzaGVldCI+CiAgICAKICAgIDxzdHlsZT4KICAgICAgICA6cm9vdCB7CiAgICAgICAgICAgIC8qIFRoZSBFeGVjdXRpdmUgUGFsZXR0ZSAqLwogICAgICAgICAgICAtLXNvdmVyZWlnbi1nb2xkOiAjZjNiNzAwOwogICAgICAgICAgICAtLWFyY2hpdGVjdC1nb2xkOiAjZDRhZjM3OwogICAgICAgICAgICAtLXNvdmVyZWlnbi1jaGFyY29hbDogIzJkMzQzNjsKICAgICAgICAgICAgLS1kZWVwLXNsYXRlOiAjMWUyNzJlOwogICAgICAgICAgICAtLXdhcm0tZ3JheTogIzYzNmU3MjsKICAgICAgICAgICAgLS1zb2Z0LWdyYXk6ICNiMmJlYzM7CiAgICAgICAgICAgIC0tcGFsZS1nb2xkOiAjZjRlNGJjOwogICAgICAgICAgICAtLXNvZnQtaXZvcnk6ICNmYWY5ZjY7CiAgICAgICAgICAgIC0td2FybS1jcmVhbTogI2Y1ZjNlZjsKICAgICAgICAgICAgLS1wYXJjaG1lbnQ6ICNlZmU5ZTE7CiAgICAgICAgICAgIC0tZGVlcC1uYXZ5OiAjMWUzYTVmOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAqIHsKICAgICAgICAgICAgbWFyZ2luOiAwOwogICAgICAgICAgICBwYWRkaW5nOiAwOwogICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiA9PT09PT09PT09PT09PT09PT09PSBTQ1JFRU5TSE9UIFBSRVZFTlRJT04gPT09PT09PT09PT09PT09PT09PT0gKi8KICAgICAgICBib2R5IHsKICAgICAgICAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lOwogICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgaW1nIHsKICAgICAgICAgICAgLXdlYmtpdC11c2VyLWRyYWc6IG5vbmU7CiAgICAgICAgICAgIC1raHRtbC11c2VyLWRyYWc6IG5vbmU7CiAgICAgICAgICAgIC1tb3otdXNlci1kcmFnOiBub25lOwogICAgICAgICAgICAtby11c2VyLWRyYWc6IG5vbmU7CiAgICAgICAgICAgIHVzZXItZHJhZzogbm9uZTsKICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIEBtZWRpYSBwcmludCB7CiAgICAgICAgICAgIGJvZHkgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0KICAgICAgICAgICAgaHRtbCB7IGJhY2tncm91bmQ6ICMwMDAgIWltcG9ydGFudDsgfQogICAgICAgIH0KICAgICAgICAKICAgICAgICBodG1sIHsKICAgICAgICAgICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIGJvZHkgewogICAgICAgICAgICBmb250LWZhbWlseTogJ1JhbGV3YXknLCBzYW5zLXNlcmlmOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zb2Z0LWl2b3J5KTsKICAgICAgICAgICAgY29sb3I6IHZhcigtLXNvdmVyZWlnbi1jaGFyY29hbCk7CiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoOwogICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47CiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qID09PT09PT09PT09PT09PT09PT09IFNVQlRMRSBCQUNLR1JPVU5EID09PT09PT09PT09PT09PT09PT09ICovCiAgICAgICAgLmJhY2tncm91bmQtdGV4dHVyZSB7CiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgICAgICAgdG9wOiAwOwogICAgICAgICAgICBsZWZ0OiAwOwogICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICAgICAgei1pbmRleDogMDsKICAgICAgICAgICAgb3BhY2l0eTogMC4wMzsKICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPSc2MCcgaGVpZ2h0PSc2MCcgdmlld0JveD0nMCAwIDYwIDYwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDZyBmaWxsPSdub25lJyBmaWxsLXJ1bGU9J2V2ZW5vZGQnJTNFJTNDZyBmaWxsPSclMjNmM2I3MDAnIGZpbGwtb3BhY2l0eT0nMSclM0UlM0NwYXRoIGQ9J00zNiAzNHYtNGgtMnY0aC00djJoNHY0aDJ2LTRoNHYtMmgtNHptMC0zMFYwaC0ydjRoLTR2Mmg0djRoMlY2aDRWNGgtNHpNNiAzNHYtNEg0djRIMHYyaDR2NGgydi00aDR2LTJINnpNNiA0VjBINHY0SDB2Mmg0djRoMlY2aDRWNEg2eicvJTNFJTNDL2clM0UlM0MvZyUzRSUzQy9zdmclM0UiKTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLnRvcC1hY2NlbnQgewogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICAgICAgICAgIHRvcDogMDsKICAgICAgICAgICAgbGVmdDogMDsKICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgIGhlaWdodDogM3B4OwogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHRyYW5zcGFyZW50LCB2YXIoLS1zb3ZlcmVpZ24tZ29sZCksIHRyYW5zcGFyZW50KTsKICAgICAgICAgICAgei1pbmRleDogMTAwOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiA9PT09PT09PT09PT09PT09PT09PSBNQUlOIENPTlRBSU5FUiA9PT09PT09PT09PT09PT09PT09PSAqLwogICAgICAgIC53ZWxjb21lLWNvbnRhaW5lciB7CiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgICAgei1pbmRleDogMTA7CiAgICAgICAgICAgIG1heC13aWR0aDogODAwcHg7CiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvOwogICAgICAgICAgICBwYWRkaW5nOiA2MHB4IDQwcHggODBweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7CiAgICAgICAgICAgIC53ZWxjb21lLWNvbnRhaW5lciB7CiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDI1cHggNjBweDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiA9PT09PT09PT09PT09PT09PT09PSBXRUxDT01FIEhFQURFUiA9PT09PT09PT09PT09PT09PT09PSAqLwogICAgICAgIC53ZWxjb21lLWhlYWRlciB7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsKICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW4gMXMgZWFzZS1vdXQ7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIEBrZXlmcmFtZXMgZmFkZUluIHsKICAgICAgICAgICAgZnJvbSB7IG9wYWNpdHk6IDA7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7IH0KICAgICAgICAgICAgdG8geyBvcGFjaXR5OiAxOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH0KICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLndlbGNvbWUtaWNvbiB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogODBweDsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsKICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgICAgIGFuaW1hdGlvbjogZ2VudGxlLXB1bHNlIDNzIGVhc2UtaW4tb3V0IGluZmluaXRlOwogICAgICAgIH0KICAgICAgICAKICAgICAgICBAa2V5ZnJhbWVzIGdlbnRsZS1wdWxzZSB7CiAgICAgICAgICAgIDAlLCAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfQogICAgICAgICAgICA1MCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpOyB9CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC53ZWxjb21lLWJhZGdlIHsKICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgICAgICBwYWRkaW5nOiA4cHggMjVweDsKICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tc292ZXJlaWduLWdvbGQpLCB2YXIoLS1hcmNoaXRlY3QtZ29sZCkpOwogICAgICAgICAgICBjb2xvcjogdmFyKC0tc292ZXJlaWduLWNoYXJjb2FsKTsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdSYWxld2F5Jywgc2Fucy1zZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtOwogICAgICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogM3B4OwogICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC53ZWxjb21lLXRpdGxlIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdDaW56ZWwnLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjhyZW0sIDR2dywgMi41cmVtKTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICAgICAgY29sb3I6IHZhcigtLXNvdmVyZWlnbi1jaGFyY29hbCk7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7CiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC53ZWxjb21lLXN1YnRpdGxlIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdDb3Jtb3JhbnQgR2FyYW1vbmQnLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07CiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKICAgICAgICAgICAgY29sb3I6IHZhcigtLXdhcm0tZ3JheSk7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qID09PT09PT09PT09PT09PT09PT09IFdFTENPTUUgQ0FSRCA9PT09PT09PT09PT09PT09PT09PSAqLwogICAgICAgIC53ZWxjb21lLWNhcmQgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZmZmZmIDAlLCB2YXIoLS13YXJtLWNyZWFtKSAxMDAlKTsKICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNDMsIDE4MywgMCwgMC4yKTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgICAgICBwYWRkaW5nOiA1MHB4OwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OwogICAgICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggNDBweCByZ2JhKDAsIDAsIDAsIDAuMDYpOwogICAgICAgICAgICBhbmltYXRpb246IGZhZGVJbiAxcyBlYXNlLW91dCAwLjNzIGJvdGg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkgewogICAgICAgICAgICAud2VsY29tZS1jYXJkIHsKICAgICAgICAgICAgICAgIHBhZGRpbmc6IDM1cHggMjVweDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAKICAgICAgICAud2VsY29tZS1tZXNzYWdlIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdDb3Jtb3JhbnQgR2FyYW1vbmQnLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOwogICAgICAgICAgICBjb2xvcjogdmFyKC0tc292ZXJlaWduLWNoYXJjb2FsKTsKICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLndlbGNvbWUtbWVzc2FnZSBwIHsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLndlbGNvbWUtbWVzc2FnZSBwOmxhc3QtY2hpbGQgewogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAud2VsY29tZS1oaWdobGlnaHQgewogICAgICAgICAgICBjb2xvcjogdmFyKC0tc292ZXJlaWduLWdvbGQpOwogICAgICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAud2VsY29tZS1lbXBoYXNpcyB7CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kZWVwLW5hdnkpOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiA9PT09PT09PT09PT09PT09PT09PSBTVEFUVVMgQ09ORklSTUFUSU9OID09PT09PT09PT09PT09PT09PT09ICovCiAgICAgICAgLnN0YXR1cy1ibG9jayB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjQzLCAxODMsIDAsIDAuMDgpOwogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI0MywgMTgzLCAwLCAwLjIpOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgICAgIHBhZGRpbmc6IDM1cHg7CiAgICAgICAgICAgIG1hcmdpbjogNDBweCAwOwogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5zdGF0dXMtbGFiZWwgewogICAgICAgICAgICBmb250LWZhbWlseTogJ1JhbGV3YXknLCBzYW5zLXNlcmlmOwogICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7CiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13YXJtLWdyYXkpOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuc3RhdHVzLXRpdGxlIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdDaW56ZWwnLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zb3ZlcmVpZ24tY2hhcmNvYWwpOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuc3RhdHVzLWRlc2NyaXB0aW9uIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdDb3Jtb3JhbnQgR2FyYW1vbmQnLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07CiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKICAgICAgICAgICAgY29sb3I6IHZhcigtLXdhcm0tZ3JheSk7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qID09PT09PT09PT09PT09PT09PT09IFdIQVQnUyBORVhUID09PT09PT09PT09PT09PT09PT09ICovCiAgICAgICAgLm5leHQtc3RlcHMgewogICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4OwogICAgICAgICAgICBhbmltYXRpb246IGZhZGVJbiAxcyBlYXNlLW91dCAwLjZzIGJvdGg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5uZXh0LXN0ZXBzLWhlYWRlciB7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLm5leHQtc3RlcHMtdGl0bGUgewogICAgICAgICAgICBmb250LWZhbWlseTogJ0NpbnplbCcsIHNlcmlmOwogICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICAgICAgY29sb3I6IHZhcigtLXNvdmVyZWlnbi1jaGFyY29hbCk7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7CiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5uZXh0LXN0ZXBzLXN1YnRpdGxlIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdDb3Jtb3JhbnQgR2FyYW1vbmQnLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07CiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKICAgICAgICAgICAgY29sb3I6IHZhcigtLXdhcm0tZ3JheSk7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5zdGVwcy1ncmlkIHsKICAgICAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsKICAgICAgICAgICAgZ2FwOiAyMHB4OwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OwogICAgICAgIH0KICAgICAgICAKICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzAwcHgpIHsKICAgICAgICAgICAgLnN0ZXBzLWdyaWQgewogICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLnN0ZXAtY2FyZCB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7CiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjQzLCAxODMsIDAsIDAuMTUpOwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDsKICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5zdGVwLW51bWJlciB7CiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgICAgdG9wOiAtMTJweDsKICAgICAgICAgICAgbGVmdDogNTAlOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgICAgICAgICAgIHdpZHRoOiAyNHB4OwogICAgICAgICAgICBoZWlnaHQ6IDI0cHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNvdmVyZWlnbi1nb2xkKTsKICAgICAgICAgICAgY29sb3I6IHZhcigtLXNvdmVyZWlnbi1jaGFyY29hbCk7CiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnQ2luemVsJywgc2VyaWY7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLnN0ZXAtaWNvbiB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzVweDsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsKICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5zdGVwLXRpdGxlIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdDaW56ZWwnLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zb3ZlcmVpZ24tY2hhcmNvYWwpOwogICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5zdGVwLWRlc2NyaXB0aW9uIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdDb3Jtb3JhbnQgR2FyYW1vbmQnLCBzZXJpZjsKICAgICAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtOwogICAgICAgICAgICBjb2xvcjogdmFyKC0td2FybS1ncmF5KTsKICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICAgICAgICBsaW5lLWhlaWdodDogMS42OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiA9PT09PT09PT09PT09PT09PT09PSBDVEEgU0VDVElPTiA9PT09PT09PT09PT09PT09PT09PSAqLwogICAgICAgIC5jdGEtc2VjdGlvbiB7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDsKICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW4gMXMgZWFzZS1vdXQgMC45cyBib3RoOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuY3RhLXRleHQgewogICAgICAgICAgICBmb250LWZhbWlseTogJ0Nvcm1vcmFudCBHYXJhbW9uZCcsIHNlcmlmOwogICAgICAgICAgICBmb250LXNpemU6IDEuMTVyZW07CiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKICAgICAgICAgICAgY29sb3I6IHZhcigtLXdhcm0tZ3JheSk7CiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5jdGEtYnRuIHsKICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7CiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICAgIGdhcDogMTJweDsKICAgICAgICAgICAgcGFkZGluZzogMThweCA1MHB4OwogICAgICAgICAgICBmb250LWZhbWlseTogJ0NpbnplbCcsIHNlcmlmOwogICAgICAgICAgICBmb250LXNpemU6IDAuOTVyZW07CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zb3ZlcmVpZ24tY2hhcmNvYWwpOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1zb3ZlcmVpZ24tZ29sZCksIHZhcigtLWFyY2hpdGVjdC1nb2xkKSk7CiAgICAgICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4OwogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2U7CiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMjBweCByZ2JhKDI0MywgMTgzLCAwLCAwLjMpOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuY3RhLWJ0bjpob3ZlciB7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KTsKICAgICAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMzBweCByZ2JhKDI0MywgMTgzLCAwLCAwLjQpOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuY3RhLWJ0biBzdmcgewogICAgICAgICAgICB3aWR0aDogMThweDsKICAgICAgICAgICAgaGVpZ2h0OiAxOHB4OwogICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuY3RhLWJ0bjpob3ZlciBzdmcgewogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLyogPT09PT09PT09PT09PT09PT09PT0gRElWSURFUiA9PT09PT09PT09PT09PT09PT09PSAqLwogICAgICAgIC5zZWN0aW9uLWRpdmlkZXIgewogICAgICAgICAgICB3aWR0aDogNjBweDsKICAgICAgICAgICAgaGVpZ2h0OiAxcHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgdHJhbnNwYXJlbnQsIHZhcigtLXNvdmVyZWlnbi1nb2xkKSwgdHJhbnNwYXJlbnQpOwogICAgICAgICAgICBtYXJnaW46IDUwcHggYXV0bzsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLyogPT09PT09PT09PT09PT09PT09PT0gRk9PVEVSID09PT09PT09PT09PT09PT09PT09ICovCiAgICAgICAgLnBhZ2UtZm9vdGVyIHsKICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7CiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI0MywgMTgzLCAwLCAwLjEpOwogICAgICAgICAgICBtYXJnaW4tdG9wOiA2MHB4OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuZm9vdGVyLXRleHQgewogICAgICAgICAgICBmb250LWZhbWlseTogJ0Nvcm1vcmFudCBHYXJhbW9uZCcsIHNlcmlmOwogICAgICAgICAgICBmb250LXNpemU6IDAuOTVyZW07CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13YXJtLWdyYXkpOwogICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5mb290ZXItYnJhbmQgewogICAgICAgICAgICBmb250LWZhbWlseTogJ0NpbnplbCcsIHNlcmlmOwogICAgICAgICAgICBmb250LXNpemU6IDAuODVyZW07CiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7CiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zb3ZlcmVpZ24tY2hhcmNvYWwpOwogICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiA9PT09PT09PT09PT09PT09PT09PSBFTEVHQU5UIFBBUlRJQ0xFUyA9PT09PT09PT09PT09PT09PT09PSAqLwogICAgICAgIC5wYXJ0aWNsZXMgewogICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICAgICAgICAgIHRvcDogMDsKICAgICAgICAgICAgbGVmdDogMDsKICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgICAgICAgIHotaW5kZXg6IDE7CiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5wYXJ0aWNsZSB7CiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgICAgICBhbmltYXRpb246IGZsb2F0LXVwIDhzIGVhc2UtaW4tb3V0IGluZmluaXRlOwogICAgICAgIH0KICAgICAgICAKICAgICAgICBAa2V5ZnJhbWVzIGZsb2F0LXVwIHsKICAgICAgICAgICAgMCUgewogICAgICAgICAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDB2aCkgcm90YXRlKDBkZWcpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIDEwJSB7CiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjY7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgOTAlIHsKICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNjsKICAgICAgICAgICAgfQogICAgICAgICAgICAxMDAlIHsKICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KSByb3RhdGUoMzYwZGVnKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIDwvc3R5bGU+CjwvaGVhZD4KPGJvZHk+CiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLXRleHR1cmUiPjwvZGl2PgogICAgPGRpdiBjbGFzcz0idG9wLWFjY2VudCI+PC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJwYXJ0aWNsZXMiIGlkPSJwYXJ0aWNsZXMiPjwvZGl2PgogICAgCiAgICA8ZGl2IGNsYXNzPSJ3ZWxjb21lLWNvbnRhaW5lciI+CiAgICAgICAgPCEtLSBXZWxjb21lIEhlYWRlciAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJ3ZWxjb21lLWhlYWRlciI+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ3ZWxjb21lLWljb24iPvCfj5vvuI88L3NwYW4+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ3ZWxjb21lLWJhZGdlIj5TdGF0dXMgQ29uZmlybWVkPC9zcGFuPgogICAgICAgICAgICA8aDEgY2xhc3M9IndlbGNvbWUtdGl0bGUiPldlbGNvbWUsIEFyY2hpdGVjdDwvaDE+CiAgICAgICAgICAgIDxwIGNsYXNzPSJ3ZWxjb21lLXN1YnRpdGxlIj5Zb3VyIHBsYWNlIGFtb25nIHRoZSBidWlsZGVycyBpcyBub3cgc2VjdXJlZDwvcD4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8IS0tIFdlbGNvbWUgQ2FyZCAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJ3ZWxjb21lLWNhcmQiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3ZWxjb21lLW1lc3NhZ2UiPgogICAgICAgICAgICAgICAgPHA+WW91IGRpZG4ndCBqdXN0IGNvbXBsZXRlIGEgc3VydmV5LjwvcD4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPHA+WW91IHN0ZXBwZWQgZm9yd2FyZCBhcyBvbmUgb2YgdGhlIDxzcGFuIGNsYXNzPSJ3ZWxjb21lLWVtcGhhc2lzIj5pbnRlbnRpb25hbCBmZXc8L3NwYW4+IHdobyB1bmRlcnN0YW5kIHRoYXQgbGVnYWN5IGlzbid0IGJ1aWx0IGJ5IGFjY2lkZW504oCUaXQncyA8c3BhbiBjbGFzcz0id2VsY29tZS1oaWdobGlnaHQiPmFyY2hpdGVjdGVkPC9zcGFuPi48L3A+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIDxwPllvdXIgdm9pY2UsIHlvdXIgZXhwZXJ0aXNlLCB5b3VyIGpvdXJuZXnigJR0aGVzZSBtYXR0ZXIuIE5vdCBqdXN0IHRvIHVzLCBidXQgdG8gdGhlIGVtZXJnaW5nIGZvdW5kZXJzIGFuZCBsZWFkZXJzIGFjcm9zcyBBZnJpY2Egd2hvIG5lZWQgPHNwYW4gY2xhc3M9IndlbGNvbWUtZW1waGFzaXMiPmhvbWVncm93biBleGVtcGxhcnM8L3NwYW4+LCBub3QgaW1wb3J0ZWQgdGVtcGxhdGVzLjwvcD4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPHA+V2VsY29tZSB0byB0aGUgZm91bmRhdGlvbi48L3A+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAKICAgICAgICAgICAgPCEtLSBTdGF0dXMgQmxvY2sgLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YXR1cy1ibG9jayI+CiAgICAgICAgICAgICAgICA8cCBjbGFzcz0ic3RhdHVzLWxhYmVsIj5Zb3VyIFN0YXR1czwvcD4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0ic3RhdHVzLXRpdGxlIj5Gb3VuZGluZyBQaW9uZWVyPC9oMz4KICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJzdGF0dXMtZGVzY3JpcHRpb24iPkZvdW5kZXJzIEZvdW5kcnkgwrcgSW5uZXIgQ2lyY2xlIMK3IENoYXJ0ZXIgTWVtYmVyPC9wPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWRpdmlkZXIiPjwvZGl2PgogICAgICAgIAogICAgICAgIDwhLS0gV2hhdCdzIE5leHQgLS0+CiAgICAgICAgPGRpdiBjbGFzcz0ibmV4dC1zdGVwcyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5leHQtc3RlcHMtaGVhZGVyIj4KICAgICAgICAgICAgICAgIDxoMiBjbGFzcz0ibmV4dC1zdGVwcy10aXRsZSI+WW91ciBKb3VybmV5IENvbnRpbnVlczwvaDI+CiAgICAgICAgICAgICAgICA8cCBjbGFzcz0ibmV4dC1zdGVwcy1zdWJ0aXRsZSI+SGVyZSdzIHdoYXQgaGFwcGVucyBuZXh0PC9wPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0ZXBzLWdyaWQiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RlcC1jYXJkIj4KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RlcC1udW1iZXIiPjE8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0ZXAtaWNvbiI+8J+Tizwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InN0ZXAtdGl0bGUiPlN0cmF0ZWdpYyBBc3Nlc3NtZW50PC9oMz4KICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0ic3RlcC1kZXNjcmlwdGlvbiI+U2hhcmUgeW91ciBpbnNpZ2h0cyB0byBoZWxwIHNoYXBlIGhvdyB3ZSBzZXJ2ZSBBZnJpY2FuIGJ1c2luZXNzZXM8L3A+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RlcC1jYXJkIj4KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RlcC1udW1iZXIiPjI8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0ZXAtaWNvbiI+8J+OgTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InN0ZXAtdGl0bGUiPkNsYWltIFlvdXIgUmV3YXJkczwvaDM+CiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InN0ZXAtZGVzY3JpcHRpb24iPkFjY2VzcyB5b3VyIFBpb25lZXIgcGFja2FnZSBpbmNsdWRpbmcgZXhwZXJ0IGZlYXR1cmVzIGFuZCBkaWdpdGFsIHRvb2xzPC9wPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0ZXAtY2FyZCI+CiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0ZXAtbnVtYmVyIj4zPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdGVwLWljb24iPvCfjpnvuI88L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJzdGVwLXRpdGxlIj5TY2hlZHVsZSBJbnRlcnZpZXc8L2gzPgogICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJzdGVwLWRlc2NyaXB0aW9uIj5Cb29rIHlvdXIgZXhwZXJ0IGludGVydmlldyBmb3IgdGhlIEFmcmljYW4gQXJjaGl0ZWN0cyBBbnRob2xvZ3k8L3A+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgPCEtLSBDVEEgU2VjdGlvbiAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJjdGEtc2VjdGlvbiI+CiAgICAgICAgICAgIDxwIGNsYXNzPSJjdGEtdGV4dCI+UmVhZHkgdG8gY29udGludWU/IFlvdXIgaW5zaWdodHMgYXdhaXQuPC9wPgogICAgICAgICAgICA8YSBocmVmPSJodHRwczovL3NvdmVyZWlnbm1vbWVudHVtLmNvbS8yMDI2aW50cm9zcGVjdCIgY2xhc3M9ImN0YS1idG4iPgogICAgICAgICAgICAgICAgQmVnaW4gU3RyYXRlZ2ljIEFzc2Vzc21lbnQKICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBmaWxsPSJub25lIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHN0cm9rZT0iY3VycmVudENvbG9yIj4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTE3IDhsNCA0bTAgMGwtNCA0bTQtNEgzIiAvPgogICAgICAgICAgICAgICAgPC9zdmc+CiAgICAgICAgICAgIDwvYT4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgCiAgICA8IS0tIEZvb3RlciAtLT4KICAgIDxmb290ZXIgY2xhc3M9InBhZ2UtZm9vdGVyIj4KICAgICAgICA8cCBjbGFzcz0iZm9vdGVyLXRleHQiPiJCdWlsZGluZyBxdWlldGx5LiBBbXBsaWZ5aW5nIGludGVudGlvbmFsbHkuIjwvcD4KICAgICAgICA8cCBjbGFzcz0iZm9vdGVyLWJyYW5kIj5TT1ZFUkVJR04gQVJDSElURUNUUyBNRURJQTwvcD4KICAgIDwvZm9vdGVyPgogICAgCiAgICA8c2NyaXB0PgogICAgICAgIC8vID09PT09PT09PT09PT09PT09PT09IFNDUkVFTlNIT1QgJiBDT1BZIFBSRVZFTlRJT04gPT09PT09PT09PT09PT09PT09PT0KICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdjb250ZXh0bWVudScsIGUgPT4geyBlLnByZXZlbnREZWZhdWx0KCk7IHJldHVybiBmYWxzZTsgfSk7CiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgaWYgKGUua2V5ID09PSAnUHJpbnRTY3JlZW4nKSB7IGUucHJldmVudERlZmF1bHQoKTsgcmV0dXJuIGZhbHNlOyB9CiAgICAgICAgICAgIGlmIChlLmN0cmxLZXkgJiYgZS5rZXkgPT09ICdwJykgeyBlLnByZXZlbnREZWZhdWx0KCk7IHJldHVybiBmYWxzZTsgfQogICAgICAgICAgICBpZiAoZS5jdHJsS2V5ICYmIGUua2V5ID09PSAncycpIHsgZS5wcmV2ZW50RGVmYXVsdCgpOyByZXR1cm4gZmFsc2U7IH0KICAgICAgICAgICAgaWYgKGUuY3RybEtleSAmJiBlLnNoaWZ0S2V5ICYmIGUua2V5ID09PSAnSScpIHsgZS5wcmV2ZW50RGVmYXVsdCgpOyByZXR1cm4gZmFsc2U7IH0KICAgICAgICAgICAgaWYgKGUua2V5ID09PSAnRjEyJykgeyBlLnByZXZlbnREZWZhdWx0KCk7IHJldHVybiBmYWxzZTsgfQogICAgICAgICAgICBpZiAoZS5jdHJsS2V5ICYmIGUua2V5ID09PSAndScpIHsgZS5wcmV2ZW50RGVmYXVsdCgpOyByZXR1cm4gZmFsc2U7IH0KICAgICAgICB9KTsKICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdkcmFnc3RhcnQnLCBlID0+IHsgZS5wcmV2ZW50RGVmYXVsdCgpOyByZXR1cm4gZmFsc2U7IH0pOwogICAgICAgIAogICAgICAgIC8vID09PT09PT09PT09PT09PT09PT09IEVMRUdBTlQgUEFSVElDTEVTID09PT09PT09PT09PT09PT09PT09CiAgICAgICAgZnVuY3Rpb24gY3JlYXRlUGFydGljbGVzKCkgewogICAgICAgICAgICBjb25zdCBjb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncGFydGljbGVzJyk7CiAgICAgICAgICAgIGNvbnN0IHN5bWJvbHMgPSBbJ+KcpicsICfil4YnLCAn4piFJ107CiAgICAgICAgICAgIAogICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDE1OyBpKyspIHsKICAgICAgICAgICAgICAgIGNvbnN0IHBhcnRpY2xlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CiAgICAgICAgICAgICAgICBwYXJ0aWNsZS5jbGFzc05hbWUgPSAncGFydGljbGUnOwogICAgICAgICAgICAgICAgcGFydGljbGUudGV4dENvbnRlbnQgPSBzeW1ib2xzW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIHN5bWJvbHMubGVuZ3RoKV07CiAgICAgICAgICAgICAgICBwYXJ0aWNsZS5zdHlsZS5sZWZ0ID0gTWF0aC5yYW5kb20oKSAqIDEwMCArICclJzsKICAgICAgICAgICAgICAgIHBhcnRpY2xlLnN0eWxlLmFuaW1hdGlvbkRlbGF5ID0gTWF0aC5yYW5kb20oKSAqIDggKyAncyc7CiAgICAgICAgICAgICAgICBwYXJ0aWNsZS5zdHlsZS5hbmltYXRpb25EdXJhdGlvbiA9IChNYXRoLnJhbmRvbSgpICogNCArIDYpICsgJ3MnOwogICAgICAgICAgICAgICAgcGFydGljbGUuc3R5bGUuY29sb3IgPSBNYXRoLnJhbmRvbSgpID4gMC41ID8gJyNmM2I3MDAnIDogJyNkNGFmMzcnOwogICAgICAgICAgICAgICAgY29udGFpbmVyLmFwcGVuZENoaWxkKHBhcnRpY2xlKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAKICAgICAgICBjcmVhdGVQYXJ0aWNsZXMoKTsKICAgIDwvc2NyaXB0Pgo8L2JvZHk+CjwvaHRtbD4=","embed":""}
🏛️
Status Confirmed
Welcome, Architect
Your place among the builders is now secured
You didn't just complete a survey.
You stepped forward as one of the intentional few who understand that legacy isn't built by accident—it's architected.
Your voice, your expertise, your journey—these matter. Not just to us, but to the emerging founders and leaders across Africa who need homegrown exemplars, not imported templates.
Welcome to the foundation.
Your Status
Founding Pioneer
Founders Foundry · Inner Circle · Charter Member
Your Journey Continues
Here's what happens next
1
📋
Strategic Assessment
Share your insights to help shape how we serve African businesses
2
🎁
Claim Your Rewards
Access your Pioneer package including expert features and digital tools
3
🎙️
Schedule Interview
Book your expert interview for the African Architects Anthology
Ready to continue? Your insights await.
Begin Strategic Assessment