cropper

THE SOVEREIGN CORDEX

cropper
  • THE CORDEX
  • THE HANDRAILS
  • THE KEYSTONE
  • THE AUDIT
  • THE SOURCE
  • THE ANCHOR
    • SOURCE ANCHOR
    • SOURCE ANCHOR
  • THE VOYAGE
    • SOURCE VOYAGE
  • THE TIDES
  • THE PIER
  • THE GALLERY
    • CHEF KAFALI
  • COMPASS
{"js":"PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CjxtZXRhIGNoYXJzZXQ9IlVURi04Ij4KPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAiPgo8dGl0bGU+VGhlIENvbXBhc3MgwrcgRmluZCBZb3VyIERvb3IgwrcgVGhlIFNvdmVyZWlnbiBDb2RleDwvdGl0bGU+CjxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJOb3Qgc3VyZSB3aGljaCBkaWFnbm9zdGljIHRvIHRha2UgZmlyc3Q/IFRoZSBDb21wYXNzIGFza3MgdGhyZWUgaG9uZXN0IHF1ZXN0aW9ucyBhbmQgcG9pbnRzIHlvdSB0byB0aGUgcmlnaHQgbmV4dCBzdGVwLiBUd28gbWludXRlcy4gTm8gcmVnaXN0cmF0aW9uLiBUaGUgZmFzdGVzdCBkb29yd2F5IGluIHRoZSBDb2RleC4iPgo8c3R5bGU+CkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUNvcm1vcmFudCtHYXJhbW9uZDp3Z2h0QDQwMDs1MDA7NjAwOzcwMCZmYW1pbHk9SUJNK1BsZXgrU2Fuczp3Z2h0QDMwMDs0MDA7NTAwOzYwMDs3MDAmZmFtaWx5PUlCTStQbGV4K01vbm86d2dodEA0MDA7NTAwJmRpc3BsYXk9c3dhcCcpOwo6cm9vdCB7CiAgLS1uYXZ5OiAjMEIxNjI4OyAtLW5hdnktZGVlcDogIzA2MGQxODsgLS1uYXZ5LW1pZDogIzE0MjEzYTsKICAtLWdvbGQ6ICNGMEM0MzA7IC0tZ29sZC1kZWVwOiAjYzlhMDIwOyAtLWdvbGQtc29mdDogcmdiYSgyNDAsIDE5NiwgNDgsIDAuMTUpOwogIC0tY3JlYW06ICNGRUZBRjA7IC0tY3JlYW0tbXV0ZWQ6IHJnYmEoMjU0LCAyNTAsIDI0MCwgMC43OCk7IC0tY3JlYW0tcXVpZXQ6IHJnYmEoMjU0LCAyNTAsIDI0MCwgMC41NSk7CiAgLS1wdXJwbGU6ICM0QTFBNkI7IC0tcHVycGxlLXNvZnQ6IHJnYmEoNzQsIDI2LCAxMDcsIDAuNCk7CiAgLS1ib3JkZXI6IHJnYmEoMjQwLCAxOTYsIDQ4LCAwLjE4KTsgLS1ib3JkZXItc29mdDogcmdiYSgyNDAsIDE5NiwgNDgsIDAuMDgpOwogIC0tc2VyaWY6ICdDb3Jtb3JhbnQgR2FyYW1vbmQnLCBHZW9yZ2lhLCBzZXJpZjsKICAtLXNhbnM6ICdJQk0gUGxleCBTYW5zJywgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBzYW5zLXNlcmlmOwogIC0tbW9ubzogJ0lCTSBQbGV4IE1vbm8nLCAnQ291cmllciBOZXcnLCBtb25vc3BhY2U7Cn0KKiB7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgYm94LXNpemluZzogYm9yZGVyLWJveDsgfQpodG1sIHsgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7IH0KYm9keSB7IGJhY2tncm91bmQ6IHZhcigtLW5hdnkpOyBjb2xvcjogdmFyKC0tY3JlYW0pOyBmb250LWZhbWlseTogdmFyKC0tc2Fucyk7IGZvbnQtd2VpZ2h0OiAzMDA7IGxpbmUtaGVpZ2h0OiAxLjY1OyBmb250LXNpemU6IDE3cHg7IG1pbi1oZWlnaHQ6IDEwMHZoOyBvdmVyZmxvdy14OiBoaWRkZW47IH0KYm9keTo6YmVmb3JlIHsgY29udGVudDogJyc7IHBvc2l0aW9uOiBmaXhlZDsgaW5zZXQ6IDA7IGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IDIwJSAwJSwgcmdiYSgyNDAsIDE5NiwgNDgsIDAuMDYpIDAlLCB0cmFuc3BhcmVudCA1MCUpLCByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCA4MCUgMTAwJSwgcmdiYSg3NCwgMjYsIDEwNywgMC4xMikgMCUsIHRyYW5zcGFyZW50IDU1JSk7IHBvaW50ZXItZXZlbnRzOiBub25lOyB6LWluZGV4OiAwOyB9Ci53cmFwIHsgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAxOyBtYXgtd2lkdGg6IDc4MHB4OyBtYXJnaW46IDAgYXV0bzsgcGFkZGluZzogMCAyNHB4OyB9Cgouc2l0ZS1oZWFkZXIgeyBwYWRkaW5nOiAyNHB4OyBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLXNvZnQpOyBiYWNrZ3JvdW5kOiByZ2JhKDYsIDEzLCAyNCwgMC40KTsgfQouc2l0ZS1oZWFkZXItaW5uZXIgeyBtYXgtd2lkdGg6IDc4MHB4OyBtYXJnaW46IDAgYXV0bzsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyBmbGV4LXdyYXA6IHdyYXA7IGdhcDogMTRweDsgfQouYnJhbmQtbWFyayB7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgZm9udC1zaXplOiAwLjc4cmVtOyBsZXR0ZXItc3BhY2luZzogMC4xOGVtOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBjb2xvcjogdmFyKC0tZ29sZCk7IH0KLmJyYW5kLW1hcmsgLmxvemVuZ2UgeyBtYXJnaW4tcmlnaHQ6IDhweDsgZm9udC1zaXplOiAwLjY1cmVtOyBvcGFjaXR5OiAwLjc7IH0KLmJhY2stbGluayB7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgZm9udC1zaXplOiAwLjcycmVtOyBsZXR0ZXItc3BhY2luZzogMC4xNGVtOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBjb2xvcjogdmFyKC0tY3JlYW0tcXVpZXQpOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IHRyYW5zaXRpb246IGNvbG9yIDAuMnM7IH0KLmJhY2stbGluazpob3ZlciB7IGNvbG9yOiB2YXIoLS1nb2xkKTsgfQoKLnN0YWdlIHsgZGlzcGxheTogbm9uZTsgfQouc3RhZ2UuYWN0aXZlIHsgZGlzcGxheTogYmxvY2s7IGFuaW1hdGlvbjogZmFkZUluIDAuNHMgZWFzZTsgfQpAa2V5ZnJhbWVzIGZhZGVJbiB7IGZyb20geyBvcGFjaXR5OiAwOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsgfSB0byB7IG9wYWNpdHk6IDE7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfSB9Cgoud2VsY29tZSB7IHBhZGRpbmc6IDgwcHggMCA2MHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IH0KLmV5ZWJyb3cgeyBmb250LWZhbWlseTogdmFyKC0tbW9ubyk7IGZvbnQtc2l6ZTogMC43cmVtOyBsZXR0ZXItc3BhY2luZzogMC4yOGVtOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBjb2xvcjogdmFyKC0tZ29sZCk7IG1hcmdpbi1ib3R0b206IDI2cHg7IG9wYWNpdHk6IDAuOTsgfQoKLyogQ29tcGFzcyBTVkcgbWFyayAqLwouY29tcGFzcy1tYXJrIHsgZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDMycHg7IH0KLmNvbXBhc3MtbWFyayBzdmcgeyB3aWR0aDogODRweDsgaGVpZ2h0OiA4NHB4OyBhbmltYXRpb246IGdlbnRsZVNwaW4gMjJzIGxpbmVhciBpbmZpbml0ZTsgfQpAa2V5ZnJhbWVzIGdlbnRsZVNwaW4geyBmcm9tIHsgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH0gdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH0KCi53ZWxjb21lIGgxIHsgZm9udC1mYW1pbHk6IHZhcigtLXNlcmlmKTsgZm9udC13ZWlnaHQ6IDUwMDsgZm9udC1zaXplOiBjbGFtcCgycmVtLCA1dncsIDMuNHJlbSk7IGxpbmUtaGVpZ2h0OiAxLjE1OyBjb2xvcjogdmFyKC0tY3JlYW0pOyBtYXJnaW4tYm90dG9tOiAyOHB4OyB9Ci53ZWxjb21lIGgxIGVtIHsgZm9udC1zdHlsZTogaXRhbGljOyBjb2xvcjogdmFyKC0tZ29sZCk7IH0KLndlbGNvbWUgLmxlZGUgeyBtYXgtd2lkdGg6IDYyMHB4OyBtYXJnaW46IDAgYXV0byAzNnB4OyBmb250LXNpemU6IDEuMDhyZW07IGxpbmUtaGVpZ2h0OiAxLjc1OyBjb2xvcjogdmFyKC0tY3JlYW0tbXV0ZWQpOyB9Ci53ZWxjb21lLW1ldGEgeyBkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgZ2FwOiAyOHB4OyBmbGV4LXdyYXA6IHdyYXA7IG1hcmdpbi1ib3R0b206IDQwcHg7IH0KLm1ldGEtaXRlbSB7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgZm9udC1zaXplOiAwLjc1cmVtOyBsZXR0ZXItc3BhY2luZzogMC4xNGVtOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBjb2xvcjogdmFyKC0tZ29sZCk7IG9wYWNpdHk6IDAuODU7IH0KLm1ldGEtaXRlbSAuZG90IHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB3aWR0aDogNXB4OyBoZWlnaHQ6IDVweDsgYmFja2dyb3VuZDogdmFyKC0tZ29sZCk7IGJvcmRlci1yYWRpdXM6IDUwJTsgbWFyZ2luLXJpZ2h0OiAxMHB4OyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBvcGFjaXR5OiAwLjc7IH0KLmJ0bi1wcmltYXJ5IHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LWZhbWlseTogdmFyKC0tbW9ubyk7IGZvbnQtc2l6ZTogMC44NXJlbTsgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgZm9udC13ZWlnaHQ6IDYwMDsgcGFkZGluZzogMThweCAzOHB4OyBiYWNrZ3JvdW5kOiB2YXIoLS1nb2xkKTsgY29sb3I6IHZhcigtLW5hdnkpOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJvcmRlcjogbm9uZTsgYm9yZGVyLXJhZGl1czogMnB4OyBjdXJzb3I6IHBvaW50ZXI7IHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7IH0KLmJ0bi1wcmltYXJ5OmhvdmVyIHsgYmFja2dyb3VuZDogdmFyKC0tZ29sZC1kZWVwKTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpOyBib3gtc2hhZG93OiAwIDZweCAyMHB4IHJnYmEoMjQwLCAxOTYsIDQ4LCAwLjIpOyB9Ci5zaWduYXR1cmUgeyBkaXNwbGF5OiBibG9jazsgZm9udC1mYW1pbHk6IHZhcigtLW1vbm8pOyBmb250LXNpemU6IDAuNzRyZW07IGxldHRlci1zcGFjaW5nOiAwLjE2ZW07IGNvbG9yOiB2YXIoLS1nb2xkKTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgbWFyZ2luLXRvcDogMzZweDsgb3BhY2l0eTogMC44NTsgfQoKLyogUXVlc3Rpb24gc3RhZ2UgKi8KLmFzc2VzcyB7IHBhZGRpbmc6IDUwcHggMCA3MHB4OyB9Ci5wcm9ncmVzcy1ibG9jayB7IG1hcmdpbi1ib3R0b206IDUwcHg7IH0KLnByb2dyZXNzLW1ldGEgeyBkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IGFsaWduLWl0ZW1zOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE0cHg7IGZsZXgtd3JhcDogd3JhcDsgZ2FwOiAxMHB4OyB9Ci5wcm9ncmVzcy1kaW0geyBmb250LWZhbWlseTogdmFyKC0tbW9ubyk7IGZvbnQtc2l6ZTogMC43NHJlbTsgbGV0dGVyLXNwYWNpbmc6IDAuMTZlbTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6IHZhcigtLWdvbGQpOyB9Ci5wcm9ncmVzcy1jb3VudCB7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgZm9udC1zaXplOiAwLjc0cmVtOyBsZXR0ZXItc3BhY2luZzogMC4xNGVtOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBjb2xvcjogdmFyKC0tY3JlYW0tcXVpZXQpOyB9Ci5wcm9ncmVzcy1jb3VudCBzdHJvbmcgeyBjb2xvcjogdmFyKC0tY3JlYW0pOyBmb250LXdlaWdodDogNTAwOyB9Ci5wcm9ncmVzcy1iYXIgeyBoZWlnaHQ6IDNweDsgYmFja2dyb3VuZDogcmdiYSgyNTQsIDI1MCwgMjQwLCAwLjA4KTsgYm9yZGVyLXJhZGl1czogMnB4OyBvdmVyZmxvdzogaGlkZGVuOyB9Ci5wcm9ncmVzcy1maWxsIHsgaGVpZ2h0OiAxMDAlOyBiYWNrZ3JvdW5kOiB2YXIoLS1nb2xkKTsgYm9yZGVyLXJhZGl1czogMnB4OyB0cmFuc2l0aW9uOiB3aWR0aCAwLjVzIGVhc2U7IHdpZHRoOiAwJTsgfQoucS1ibG9jayB7IG1hcmdpbi1ib3R0b206IDM2cHg7IH0KLnEtZXllYnJvdyB7IGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vKTsgZm9udC1zaXplOiAwLjdyZW07IGxldHRlci1zcGFjaW5nOiAwLjJlbTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6IHZhcigtLWdvbGQpOyBtYXJnaW4tYm90dG9tOiAxNnB4OyBvcGFjaXR5OiAwLjg1OyB9Ci5xLXRleHQgeyBmb250LWZhbWlseTogdmFyKC0tc2VyaWYpOyBmb250LXdlaWdodDogNTAwOyBmb250LXNpemU6IGNsYW1wKDEuNXJlbSwgMy4ydncsIDIuMDVyZW0pOyBsaW5lLWhlaWdodDogMS4zOyBjb2xvcjogdmFyKC0tY3JlYW0pOyBtYXJnaW4tYm90dG9tOiAxNHB4OyB9Ci5xLW51ZGdlIHsgZm9udC1zdHlsZTogaXRhbGljOyBmb250LXNpemU6IDAuOThyZW07IGNvbG9yOiB2YXIoLS1jcmVhbS1xdWlldCk7IG1hcmdpbi1ib3R0b206IDMwcHg7IH0KLm9wdGlvbnMgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBnYXA6IDEycHg7IH0KLm9wdCB7IHBhZGRpbmc6IDE4cHggMjJweDsgYmFja2dyb3VuZDogcmdiYSgyMCwgMzMsIDU4LCAwLjQ1KTsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLXNvZnQpOyBib3JkZXItcmFkaXVzOiAzcHg7IGN1cnNvcjogcG9pbnRlcjsgZm9udC1zaXplOiAxcmVtOyBsaW5lLWhlaWdodDogMS41NTsgY29sb3I6IHZhcigtLWNyZWFtLW11dGVkKTsgdHJhbnNpdGlvbjogYWxsIDAuMThzIGVhc2U7IHRleHQtYWxpZ246IGxlZnQ7IGZvbnQtZmFtaWx5OiBpbmhlcml0OyB9Ci5vcHQ6aG92ZXIgeyBiYWNrZ3JvdW5kOiByZ2JhKDI0MCwgMTk2LCA0OCwgMC4wNik7IGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyKTsgY29sb3I6IHZhcigtLWNyZWFtKTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCk7IH0KLm9wdC5zZWxlY3RlZCB7IGJhY2tncm91bmQ6IHZhcigtLWdvbGQtc29mdCk7IGJvcmRlci1jb2xvcjogdmFyKC0tZ29sZCk7IGNvbG9yOiB2YXIoLS1jcmVhbSk7IH0KLnEtbmF2IHsgZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyBhbGlnbi1pdGVtczogY2VudGVyOyBtYXJnaW4tdG9wOiAzNnB4OyBnYXA6IDE0cHg7IGZsZXgtd3JhcDogd3JhcDsgfQouYnRuLWJhY2sgeyBmb250LWZhbWlseTogdmFyKC0tbW9ubyk7IGZvbnQtc2l6ZTogMC43NHJlbTsgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6IHZhcigtLWNyZWFtLXF1aWV0KTsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1zb2Z0KTsgcGFkZGluZzogMTJweCAyMnB4OyBib3JkZXItcmFkaXVzOiAycHg7IGN1cnNvcjogcG9pbnRlcjsgdHJhbnNpdGlvbjogYWxsIDAuMnM7IH0KLmJ0bi1iYWNrOmhvdmVyIHsgY29sb3I6IHZhcigtLWNyZWFtKTsgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXIpOyB9Ci5idG4tYmFjay5oaWRkZW4geyB2aXNpYmlsaXR5OiBoaWRkZW47IH0KCi8qIFJlc3VsdCBzdGFnZSAqLwoucmVzdWx0IHsgcGFkZGluZzogNjBweCAwIDgwcHg7IH0KLnJlc3VsdC1leWVicm93IHsgdGV4dC1hbGlnbjogY2VudGVyOyBmb250LWZhbWlseTogdmFyKC0tbW9ubyk7IGZvbnQtc2l6ZTogMC43MnJlbTsgbGV0dGVyLXNwYWNpbmc6IDAuMjZlbTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6IHZhcigtLWdvbGQpOyBtYXJnaW4tYm90dG9tOiAyMnB4OyB9Ci5yZXN1bHQtaGVhZGluZyB7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogNTBweDsgfQoucmVzdWx0LXBvaW50ZXIgeyBmb250LWZhbWlseTogdmFyKC0tc2VyaWYpOyBmb250LXN0eWxlOiBpdGFsaWM7IGZvbnQtc2l6ZTogY2xhbXAoMS41cmVtLCAzdncsIDJyZW0pOyBjb2xvcjogdmFyKC0tY3JlYW0tbXV0ZWQpOyBtYXJnaW4tYm90dG9tOiAxNHB4OyBsaW5lLWhlaWdodDogMS40OyB9Ci5yZXN1bHQtbmFtZSB7IGZvbnQtZmFtaWx5OiB2YXIoLS1zZXJpZik7IGZvbnQtd2VpZ2h0OiA1MDA7IGZvbnQtc2l6ZTogY2xhbXAoMi40cmVtLCA2dncsIDRyZW0pOyBsaW5lLWhlaWdodDogMTsgY29sb3I6IHZhcigtLWdvbGQpOyBtYXJnaW4tYm90dG9tOiAxNHB4OyBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTsgfQoucmVzdWx0LW5hbWUgZW0geyBmb250LXN0eWxlOiBpdGFsaWM7IH0KLnJlc3VsdC1ib2R5IHsgbWF4LXdpZHRoOiA2NDBweDsgbWFyZ2luOiAwIGF1dG8gNDRweDsgcGFkZGluZzogMzZweCAzMnB4OyBiYWNrZ3JvdW5kOiByZ2JhKDIwLCAzMywgNTgsIDAuNSk7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1zb2Z0KTsgYm9yZGVyLXJhZGl1czogNHB4OyB9Ci5yZXN1bHQtYm9keSBwIHsgZm9udC1zaXplOiAxLjA0cmVtOyBsaW5lLWhlaWdodDogMS43NTsgY29sb3I6IHZhcigtLWNyZWFtLW11dGVkKTsgbWFyZ2luLWJvdHRvbTogMThweDsgfQoucmVzdWx0LWJvZHkgcDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfQoucmVzdWx0LWJvZHkgcCBzdHJvbmcgeyBjb2xvcjogdmFyKC0tY3JlYW0pOyBmb250LXdlaWdodDogNTAwOyB9CgoucmVzdWx0LWludml0YXRpb24geyBtYXgtd2lkdGg6IDY0MHB4OyBtYXJnaW46IDAgYXV0bzsgcGFkZGluZzogNDRweCAzNnB4OyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDc0LCAyNiwgMTA3LCAwLjI1KSwgcmdiYSgyNDAsIDE5NiwgNDgsIDAuMDYpKTsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ29sZCk7IGJvcmRlci1yYWRpdXM6IDRweDsgdGV4dC1hbGlnbjogY2VudGVyOyB9Ci5pbnZpdGF0aW9uLWV5ZWJyb3cgeyBmb250LWZhbWlseTogdmFyKC0tbW9ubyk7IGZvbnQtc2l6ZTogMC43MnJlbTsgbGV0dGVyLXNwYWNpbmc6IDAuMmVtOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBjb2xvcjogdmFyKC0tZ29sZCk7IG1hcmdpbi1ib3R0b206IDE4cHg7IH0KLnJlc3VsdC1pbnZpdGF0aW9uIGgzIHsgZm9udC1mYW1pbHk6IHZhcigtLXNlcmlmKTsgZm9udC13ZWlnaHQ6IDUwMDsgZm9udC1zaXplOiAxLjdyZW07IGNvbG9yOiB2YXIoLS1jcmVhbSk7IGxpbmUtaGVpZ2h0OiAxLjI1OyBtYXJnaW4tYm90dG9tOiAxOHB4OyB9Ci5yZXN1bHQtaW52aXRhdGlvbiBoMyBlbSB7IGZvbnQtc3R5bGU6IGl0YWxpYzsgY29sb3I6IHZhcigtLWdvbGQpOyB9Ci5yZXN1bHQtaW52aXRhdGlvbiBwIHsgZm9udC1zaXplOiAxcmVtOyBsaW5lLWhlaWdodDogMS43OyBjb2xvcjogdmFyKC0tY3JlYW0tbXV0ZWQpOyBtYXJnaW4tYm90dG9tOiAyOHB4OyB9Ci5pbnZpdGF0aW9uLWFjdGlvbnMgeyBkaXNwbGF5OiBmbGV4OyBnYXA6IDE0cHg7IGZsZXgtd3JhcDogd3JhcDsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0KLmJ0bi1pbnZpdGF0aW9uIHsgZGlzcGxheTogaW5saW5lLWZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogMTBweDsgZm9udC1mYW1pbHk6IHZhcigtLW1vbm8pOyBmb250LXNpemU6IDAuNzhyZW07IGxldHRlci1zcGFjaW5nOiAwLjE0ZW07IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGZvbnQtd2VpZ2h0OiA2MDA7IHBhZGRpbmc6IDE2cHggMjZweDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBib3JkZXItcmFkaXVzOiAycHg7IHRyYW5zaXRpb246IGFsbCAwLjJzOyB9Ci5idG4tcHJpbWFyeS1hY3Rpb24geyBiYWNrZ3JvdW5kOiB2YXIoLS1nb2xkKTsgY29sb3I6IHZhcigtLW5hdnkpOyB9Ci5idG4tcHJpbWFyeS1hY3Rpb246aG92ZXIgeyBiYWNrZ3JvdW5kOiB2YXIoLS1nb2xkLWRlZXApOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7IH0KLmJ0bi1zZWNvbmRhcnktYWN0aW9uIHsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IGNvbG9yOiB2YXIoLS1jcmVhbSk7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7IH0KLmJ0bi1zZWNvbmRhcnktYWN0aW9uOmhvdmVyIHsgYmFja2dyb3VuZDogdmFyKC0tZ29sZC1zb2Z0KTsgYm9yZGVyLWNvbG9yOiB2YXIoLS1nb2xkKTsgY29sb3I6IHZhcigtLWdvbGQpOyB9CgoucmV0YWtlLWJsb2NrIHsgdGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW4tdG9wOiA1MHB4OyB9Ci5idG4tcmV0YWtlIHsgZm9udC1mYW1pbHk6IHZhcigtLW1vbm8pOyBmb250LXNpemU6IDAuNzRyZW07IGxldHRlci1zcGFjaW5nOiAwLjE0ZW07IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiB2YXIoLS1jcmVhbS1xdWlldCk7IGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItc29mdCk7IHBhZGRpbmc6IDEycHggMjJweDsgYm9yZGVyLXJhZGl1czogMnB4OyBjdXJzb3I6IHBvaW50ZXI7IHRyYW5zaXRpb246IGFsbCAwLjJzOyB9Ci5idG4tcmV0YWtlOmhvdmVyIHsgY29sb3I6IHZhcigtLWNyZWFtKTsgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXIpOyB9Cgouc2l0ZS1mb290ZXIgeyBwYWRkaW5nOiA0MHB4IDI0cHg7IHRleHQtYWxpZ246IGNlbnRlcjsgYmFja2dyb3VuZDogdmFyKC0tbmF2eS1kZWVwKTsgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1zb2Z0KTsgbWFyZ2luLXRvcDogNDBweDsgfQouZm9vdGVyLWJyYW5kIHsgZm9udC1mYW1pbHk6IHZhcigtLW1vbm8pOyBmb250LXNpemU6IDAuNzhyZW07IGxldHRlci1zcGFjaW5nOiAwLjE4ZW07IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiB2YXIoLS1nb2xkKTsgbWFyZ2luLWJvdHRvbTogOHB4OyB9Ci5mb290ZXItcGFyZW50IHsgZm9udC1mYW1pbHk6IHZhcigtLXNhbnMpOyBmb250LXNpemU6IDAuODVyZW07IGNvbG9yOiB2YXIoLS1jcmVhbS1tdXRlZCk7IG1hcmdpbi1ib3R0b206IDZweDsgfQouZm9vdGVyLWNvcHkgeyBmb250LWZhbWlseTogdmFyKC0tbW9ubyk7IGZvbnQtc2l6ZTogMC43cmVtOyBsZXR0ZXItc3BhY2luZzogMC4xNGVtOyBjb2xvcjogdmFyKC0tY3JlYW0tcXVpZXQpOyBtYXJnaW4tdG9wOiAxNHB4OyB9CgpAbWVkaWEgKG1heC13aWR0aDogNjgwcHgpIHsKICAud2VsY29tZSB7IHBhZGRpbmc6IDYwcHggMCA0MHB4OyB9CiAgLmFzc2VzcyB7IHBhZGRpbmc6IDQwcHggMCA2MHB4OyB9CiAgLnJlc3VsdCB7IHBhZGRpbmc6IDUwcHggMCA2MHB4OyB9CiAgLnJlc3VsdC1ib2R5LCAucmVzdWx0LWludml0YXRpb24geyBwYWRkaW5nOiAyOHB4IDI0cHg7IH0KICAud2VsY29tZS1tZXRhIHsgZ2FwOiAxNnB4OyB9CiAgYm9keSB7IGZvbnQtc2l6ZTogMTZweDsgfQp9Cjwvc3R5bGU+CjwvaGVhZD4KPGJvZHk+Cgo8aGVhZGVyIGNsYXNzPSJzaXRlLWhlYWRlciI+CiAgPGRpdiBjbGFzcz0ic2l0ZS1oZWFkZXItaW5uZXIiPgogICAgPGRpdiBjbGFzcz0iYnJhbmQtbWFyayI+PHNwYW4gY2xhc3M9ImxvemVuZ2UiPuKXhjwvc3Bhbj5UaGUgU292ZXJlaWduIENvZGV4PC9kaXY+CiAgICA8YSBocmVmPSIvc292ZXJlaWduLWNvZGV4IiBjbGFzcz0iYmFjay1saW5rIj7ihpAgVGhlIENvZGV4IEhvbWU8L2E+CiAgPC9kaXY+CjwvaGVhZGVyPgoKPCEtLSBXRUxDT01FIC0tPgo8c2VjdGlvbiBjbGFzcz0ic3RhZ2UgYWN0aXZlIiBpZD0ic3RhZ2Utd2VsY29tZSI+CiAgPGRpdiBjbGFzcz0id3JhcCI+CiAgICA8ZGl2IGNsYXNzPSJ3ZWxjb21lIj4KCiAgICAgIDxkaXYgY2xhc3M9ImNvbXBhc3MtbWFyayI+CiAgICAgICAgPHN2ZyB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgICAgICAgIDxjaXJjbGUgY3g9IjUwIiBjeT0iNTAiIHI9IjQ1IiBmaWxsPSJub25lIiBzdHJva2U9IiNGMEM0MzAiIHN0cm9rZS13aWR0aD0iMS41Ii8+CiAgICAgICAgICA8Y2lyY2xlIGN4PSI1MCIgY3k9IjUwIiByPSIzOCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjRjBDNDMwIiBzdHJva2Utd2lkdGg9IjAuOCIgb3BhY2l0eT0iMC41Ii8+CiAgICAgICAgICA8bGluZSB4MT0iNTAiIHkxPSI4IiB4Mj0iNTAiIHkyPSIxOCIgc3Ryb2tlPSIjRjBDNDMwIiBzdHJva2Utd2lkdGg9IjIiLz4KICAgICAgICAgIDxsaW5lIHgxPSI1MCIgeTE9IjgyIiB4Mj0iNTAiIHkyPSI5MiIgc3Ryb2tlPSIjRjBDNDMwIiBzdHJva2Utd2lkdGg9IjIiLz4KICAgICAgICAgIDxsaW5lIHgxPSI4IiB5MT0iNTAiIHgyPSIxOCIgeTI9IjUwIiBzdHJva2U9IiNGMEM0MzAiIHN0cm9rZS13aWR0aD0iMiIvPgogICAgICAgICAgPGxpbmUgeDE9IjgyIiB5MT0iNTAiIHgyPSI5MiIgeTI9IjUwIiBzdHJva2U9IiNGMEM0MzAiIHN0cm9rZS13aWR0aD0iMiIvPgogICAgICAgICAgPHBvbHlnb24gcG9pbnRzPSI1MCwyMiA1Niw1MCA1MCw3OCA0NCw1MCIgZmlsbD0iI0YwQzQzMCIgb3BhY2l0eT0iMC44NSIvPgogICAgICAgICAgPGNpcmNsZSBjeD0iNTAiIGN5PSI1MCIgcj0iNCIgZmlsbD0iI0YwQzQzMCIvPgogICAgICAgIDwvc3ZnPgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9ImV5ZWJyb3ciPlRoZSBDb21wYXNzIMK3IEZpbmQgWW91ciBEb29yPC9kaXY+CgogICAgICA8aDE+Tm90IHN1cmUgd2hlcmUgdG8gc3RhcnQ/PGJyPjxlbT5UaHJlZSBxdWVzdGlvbnMuPC9lbT48L2gxPgoKICAgICAgPHAgY2xhc3M9ImxlZGUiPgogICAgICAgIFRoZSBDb2RleCBoYXMgbXVsdGlwbGUgZG9vcnMgYW5kIG5vdCBldmVyeSBmb3VuZGVyIGtub3dzIHdoaWNoIG9uZSB0byB3YWxrIHRocm91Z2ggZmlyc3QuIFRoZSBDb21wYXNzIGFza3MgdGhyZWUgaG9uZXN0IHF1ZXN0aW9ucyBhYm91dCB5b3VyIHNpdHVhdGlvbiBhbmQgcG9pbnRzIHlvdSB0byB0aGUgcmlnaHQgbmV4dCBzdGVwLiBUd28gbWludXRlcy4gTm8gcmVnaXN0cmF0aW9uLiBUaGUgZmFzdGVzdCBkb29yd2F5IGluIHRoZSBDb2RleC4KICAgICAgPC9wPgoKICAgICAgPGRpdiBjbGFzcz0id2VsY29tZS1tZXRhIj4KICAgICAgICA8ZGl2IGNsYXNzPSJtZXRhLWl0ZW0iPjxzcGFuIGNsYXNzPSJkb3QiPjwvc3Bhbj5Ud28gTWludXRlczwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im1ldGEtaXRlbSI+PHNwYW4gY2xhc3M9ImRvdCI+PC9zcGFuPlRocmVlIFF1ZXN0aW9uczwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im1ldGEtaXRlbSI+PHNwYW4gY2xhc3M9ImRvdCI+PC9zcGFuPkhvbmVzdCBSb3V0aW5nPC9kaXY+CiAgICAgIDwvZGl2PgoKICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuLXByaW1hcnkiIG9uY2xpY2s9InN0YXJ0Q29tcGFzcygpIj5CZWdpbiBUaGUgQ29tcGFzcyDihpI8L2J1dHRvbj4KCiAgICAgIDxzcGFuIGNsYXNzPSJzaWduYXR1cmUiPk5vdCBiZWhpbmQuIE5vdCBicm9rZW4uIE5vdCB0b28gbGF0ZS48L3NwYW4+CgogICAgPC9kaXY+CiAgPC9kaXY+Cjwvc2VjdGlvbj4KCjwhLS0gQVNTRVNTTUVOVCAtLT4KPHNlY3Rpb24gY2xhc3M9InN0YWdlIiBpZD0ic3RhZ2UtYXNzZXNzIj4KICA8ZGl2IGNsYXNzPSJ3cmFwIj4KICAgIDxkaXYgY2xhc3M9ImFzc2VzcyI+CgogICAgICA8ZGl2IGNsYXNzPSJwcm9ncmVzcy1ibG9jayI+CiAgICAgICAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtbWV0YSI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9ncmVzcy1kaW0iIGlkPSJwcm9nRGltIj5RdWVzdGlvbiBPbmU8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InByb2dyZXNzLWNvdW50Ij5RdWVzdGlvbiA8c3Ryb25nIGlkPSJwcm9nTnVtIj4xPC9zdHJvbmc+IG9mIDM8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJwcm9ncmVzcy1iYXIiPgogICAgICAgICAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtZmlsbCIgaWQ9InByb2dGaWxsIj48L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJxLWJsb2NrIj4KICAgICAgICA8ZGl2IGNsYXNzPSJxLWV5ZWJyb3ciIGlkPSJxRXllYnJvdyI+PC9kaXY+CiAgICAgICAgPGgyIGNsYXNzPSJxLXRleHQiIGlkPSJxVGV4dCI+PC9oMj4KICAgICAgICA8cCBjbGFzcz0icS1udWRnZSIgaWQ9InFOdWRnZSI+PC9wPgoKICAgICAgICA8ZGl2IGNsYXNzPSJvcHRpb25zIiBpZD0ib3B0c0JveCI+PC9kaXY+CgogICAgICAgIDxkaXYgY2xhc3M9InEtbmF2Ij4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0bi1iYWNrIiBpZD0iYnRuQmFjayIgb25jbGljaz0icHJldlF1ZXN0aW9uKCkiPuKGkCBQcmV2aW91czwvYnV0dG9uPgogICAgICAgICAgPHNwYW4+PC9zcGFuPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KCiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9zZWN0aW9uPgoKPCEtLSBSRVNVTFQgLS0+CjxzZWN0aW9uIGNsYXNzPSJzdGFnZSIgaWQ9InN0YWdlLXJlc3VsdCI+CiAgPGRpdiBjbGFzcz0id3JhcCI+CiAgICA8ZGl2IGNsYXNzPSJyZXN1bHQiPgoKICAgICAgPGRpdiBjbGFzcz0icmVzdWx0LWV5ZWJyb3ciPllvdXIgQ29tcGFzcyBSZWFkaW5nPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJyZXN1bHQtaGVhZGluZyI+CiAgICAgICAgPHAgY2xhc3M9InJlc3VsdC1wb2ludGVyIj5Zb3VyIHJpZ2h0IG5leHQgZG9vciBpczwvcD4KICAgICAgICA8ZGl2IGNsYXNzPSJyZXN1bHQtbmFtZSIgaWQ9InJlc3VsdE5hbWUiPlRoZSBDb21wYXNzPC9kaXY+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0icmVzdWx0LWJvZHkiIGlkPSJyZXN1bHRCb2R5Ij48L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9InJlc3VsdC1pbnZpdGF0aW9uIj4KICAgICAgICA8ZGl2IGNsYXNzPSJpbnZpdGF0aW9uLWV5ZWJyb3ciPllvdXIgTmV4dCBNb3ZlPC9kaXY+CiAgICAgICAgPGgzIGlkPSJpbnZIZWFkbGluZSI+PC9oMz4KICAgICAgICA8cCBpZD0iaW52Qm9keSI+PC9wPgogICAgICAgIDxkaXYgY2xhc3M9Imludml0YXRpb24tYWN0aW9ucyIgaWQ9ImludkFjdGlvbnMiPjwvZGl2PgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9InJldGFrZS1ibG9jayI+CiAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuLXJldGFrZSIgb25jbGljaz0icmVzZXRDb21wYXNzKCkiPuKGuiBSZXRha2UgVGhlIENvbXBhc3M8L2J1dHRvbj4KICAgICAgPC9kaXY+CgogICAgPC9kaXY+CiAgPC9kaXY+Cjwvc2VjdGlvbj4KCjxmb290ZXIgY2xhc3M9InNpdGUtZm9vdGVyIj4KICA8ZGl2IGNsYXNzPSJmb290ZXItYnJhbmQiPuKXhiBUaGUgU292ZXJlaWduIENvZGV4PC9kaXY+CiAgPGRpdiBjbGFzcz0iZm9vdGVyLXBhcmVudCI+QSBQcmFjdGljZSBvZiBNdWthc2EgVmVudHVyZSBQYXJ0bmVycyBMTEM8L2Rpdj4KICA8ZGl2IGNsYXNzPSJmb290ZXItcGFyZW50Ij50aGVtZXJpZGlhbi5hZnJpY2E8L2Rpdj4KICA8ZGl2IGNsYXNzPSJmb290ZXItY29weSI+wqkgMjAyNiDCtyBBbGwgcmlnaHRzIHJlc2VydmVkPC9kaXY+CjwvZm9vdGVyPgoKPHNjcmlwdD4KLy8g4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQCi8vICAgVEhFIENPTVBBU1MgwrcgUVVFU1RJT05TCi8vIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkApjb25zdCBRVUVTVElPTlMgPSBbCiAgewogICAgZXllYnJvdzogIlF1ZXN0aW9uIE9uZSDCtyBZb3VyIFNpdHVhdGlvbiIsCiAgICB0ZXh0OiAnIldoZXJlIGlzIHlvdXIgYnVzaW5lc3MgPGVtPnJpZ2h0IG5vdzwvZW0+PyInLAogICAgbnVkZ2U6ICJUaGVyZSBpcyBubyB3cm9uZyBhbnN3ZXIuIEp1c3QgdGhlIG1vc3QgaG9uZXN0IG9uZS4iLAogICAgb3B0czogWwogICAgICB7IGxhYmVsOiAiRWFybHktc3RhZ2UuIFN0aWxsIGZpZ3VyaW5nIG91dCB0aGUgb2ZmZXIgYW5kIHRoZSBmb3VuZGF0aW9ucy4iLCByb3V0ZTogImZvdW5kYXRpb25zIiB9LAogICAgICB7IGxhYmVsOiAiRXN0YWJsaXNoZWQuIEZvdW5kYXRpb25zIGFyZSBzb2xpZCwgZ3Jvd2luZyB0aGUgYnVzaW5lc3Mgbm93LiIsIHJvdXRlOiAiZ3Jvd3RoIiB9LAogICAgICB7IGxhYmVsOiAiTWF0dXJlLiBMb29raW5nIGZvciBzdHJhdGVnaWMgbGV2ZXJhZ2UgYW5kIGFtcGxpZmljYXRpb24uIiwgcm91dGU6ICJsZXZlcmFnZSIgfSwKICAgICAgeyBsYWJlbDogIkhvbmVzdGx5IG5vdCBzdXJlIGhvdyB0byBkZXNjcmliZSBpdC4iLCByb3V0ZTogInVuc3VyZSIgfQogICAgXQogIH0sCiAgewogICAgZXllYnJvdzogIlF1ZXN0aW9uIFR3byDCtyBZb3VyIFF1ZXN0aW9uIiwKICAgIHRleHQ6ICciV2hhdCBhcmUgeW91IDxlbT5tb3N0IGN1cmlvdXMgYWJvdXQ8L2VtPj8iJywKICAgIG51ZGdlOiAiUGljayB0aGUgdGhpbmcgdGhhdCBoYXMgYmVlbiBxdWlldGx5IG9uIHlvdXIgbWluZC4iLAogICAgb3B0czogWwogICAgICB7IGxhYmVsOiAiV2hldGhlciBteSBidXNpbmVzcyBmb3VuZGF0aW9ucyBhcmUgY2xlYXIgYW5kIGRvY3VtZW50ZWQgZW5vdWdoLiIsIHJvdXRlOiAiZm91bmRhdGlvbnMiIH0sCiAgICAgIHsgbGFiZWw6ICJXaGV0aGVyIG15IGJ1c2luZXNzIGlzIHJlYWR5IGZvciBBSSB0b29scyB0byBhY3R1YWxseSB3b3JrIGZvciBpdC4iLCByb3V0ZTogImFpIiB9LAogICAgICB7IGxhYmVsOiAiV2hlcmUgdGhlIGhpZ2hlc3QtbGV2ZXJhZ2UgZ3Jvd3RoIG1vdmUgaXMgZm9yIHRoZSBuZXh0IHR3ZWx2ZSBtb250aHMuIiwgcm91dGU6ICJsZXZlcmFnZSIgfSwKICAgICAgeyBsYWJlbDogIkkgd2FudCB0byByZWFkIGFuZCBsZWFybiBiZWZvcmUgYW55IGRpYWdub3N0aWMgY29udmVyc2F0aW9uLiIsIHJvdXRlOiAibGVhcm4iIH0KICAgIF0KICB9LAogIHsKICAgIGV5ZWJyb3c6ICJRdWVzdGlvbiBUaHJlZSDCtyBZb3VyIFByZWZlcmVuY2UiLAogICAgdGV4dDogJyJIb3cgZG8geW91IGxpa2UgPGVtPnRvIGZpZ3VyZSB0aGluZ3Mgb3V0PC9lbT4/IicsCiAgICBudWRnZTogIlNvbWUgZm91bmRlcnMgd2FudCBhIHRvb2wuIE90aGVycyB3YW50IGEgY29udmVyc2F0aW9uLiBCb3RoIGFyZSB2YWxpZC4iLAogICAgb3B0czogWwogICAgICB7IGxhYmVsOiAiR2l2ZSBtZSBhIHNlbGYtcGFjZWQgdG9vbCBJIGNhbiBjb21wbGV0ZSBpbiB0d28gbWludXRlcy4iLCByb3V0ZTogInRvb2wiIH0sCiAgICAgIHsgbGFiZWw6ICJJIHdvdWxkIHByZWZlciBhIHJlYWwgY29udmVyc2F0aW9uIHdpdGggc29tZW9uZSB3aG8gY2FuIGxpc3Rlbi4iLCByb3V0ZTogImNvbnZlcnNhdGlvbiIgfSwKICAgICAgeyBsYWJlbDogIkkgd2FudCB0byByZWFkIGFuZCBleHBsb3JlIGJlZm9yZSBkZWNpZGluZy4iLCByb3V0ZTogImxlYXJuIiB9LAogICAgICB7IGxhYmVsOiAiQWxsIG9mIHRoZSBhYm92ZSB+IEkgYW0gcmVhZHkgZm9yIHdoaWNoZXZlciBmaXRzIG5leHQuIiwgcm91dGU6ICJhbnkiIH0KICAgIF0KICB9Cl07CgovLyDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAKLy8gICBSRVNVTFQgTUFQUElORyBMT0dJQwovLyDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAKLy8gVGFsbGllcyByb3V0ZXMgZnJvbSBlYWNoIGFuc3dlciBhbmQgcmVjb21tZW5kcyB0aGUgYmVzdCBuZXh0IGRvb3IKY29uc3QgUkVTVUxUUyA9IHsKICBmb3VuZGF0aW9uczogewogICAgbmFtZTogIlRoZSBLZXlzdG9uZSIsCiAgICBwb2ludGVyOiAiWW91ciByaWdodCBuZXh0IGRvb3IgaXMiLAogICAgYm9keTogWwogICAgICAiWW91ciBhbnN3ZXJzIHN1Z2dlc3QgdGhlIGZvdW5kYXRpb25zIGNvbnZlcnNhdGlvbiBtYXR0ZXJzIG1vc3QgZm9yIHlvdSByaWdodCBub3cuIEJlZm9yZSBhbnkgQUkgdG9vbCwgbWFya2V0aW5nIHN5c3RlbSwgb3IgZ3Jvd3RoIHN0cmF0ZWd5IHdpbGwgZGVsaXZlciB0aGUgcmV0dXJucyBpdCBwcm9taXNlcywgdGhlIGZvdW5kYXRpb25hbCBsYXllciBvZiB5b3VyIGJ1c2luZXNzIGhhcyB0byBob2xkLiBUaGUgS2V5c3RvbmUgZGlhZ25vc3RpYyB3YWxrcyB5b3UgdGhyb3VnaCBzZXZlbiBmb3VuZGF0aW9uYWwgc2lnbmFscyBpbiB0d28gbWludXRlcyBhbmQgZ2l2ZXMgeW91IGFuIGhvbmVzdCByZWFkaW5nIG9mIHdoZXJlIHlvdXIgYnVzaW5lc3Mgc3RhbmRzIHRvZGF5LiIsCiAgICAgICI8c3Ryb25nPlN0YXJ0IHRoZXJlLjwvc3Ryb25nPiBUaGUgcmVhZGluZyBpcyB5b3Vycy4gVGhlIG5leHQgbW92ZSBkZXBlbmRzIG9uIHdoYXQgaXQgc3VyZmFjZXMuIgogICAgXSwKICAgIGludkhlYWRsaW5lOiAiVGFrZSA8ZW0+VGhlIEtleXN0b25lPC9lbT4gbmV4dC4iLAogICAgaW52Qm9keTogIlNldmVuIHF1ZXN0aW9ucyBvbiB5b3VyIGJ1c2luZXNzIGZvdW5kYXRpb25zLiBUd28gbWludXRlcy4gTm8gcmVnaXN0cmF0aW9uLiBZb3UgbGVhdmUgd2l0aCBhbiBob25lc3QgcmVhZGluZyBhbmQgYSBjbGVhciBuZXh0IG1vdmUgYmFzZWQgb24gdGhlIHJlc3VsdC4iLAogICAgcHJpbWFyeUFjdGlvbjogeyBsYWJlbDogIlRha2UgVGhlIEtleXN0b25lIOKGkiIsIHVybDogIi9zb3ZlcmVpZ24tY29kZXgta2V5c3RvbmUiIH0sCiAgICBzZWNvbmRhcnlBY3Rpb246IHsgbGFiZWw6ICJPciBib29rIHRoZSBhdWRpdCIsIHVybDogIndhIiB9CiAgfSwKICBhaTogewogICAgbmFtZTogIlRoZSBIYW5kcmFpbHMiLAogICAgcG9pbnRlcjogIllvdXIgcmlnaHQgbmV4dCBkb29yIGlzIiwKICAgIGJvZHk6IFsKICAgICAgIllvdXIgYW5zd2VycyBzdWdnZXN0IEFJIHJlYWRpbmVzcyBpcyB5b3VyIGNlbnRyYWwgcXVlc3Rpb24uIFRoZSBIYW5kcmFpbHMgZGlhZ25vc3RpYyB3YWxrcyB0aGUgc2V2ZW4gc2lnbmFscyB0aGF0IEFJIHRvb2xzLCBBSSBlbmdpbmVzLCBhbmQgQUkgY2l0YXRpb24gc3lzdGVtcyBsb29rIGZvciB3aGVuIHRoZXkgcmVhZCB5b3VyIGJ1c2luZXNzLiBZb3UgbGVhdmUgd2l0aCBhIGJhbmQgcmVhZGluZywgYSBwZXItc2lnbmFsIGJyZWFrZG93biwgYW5kIGEgc3BlY2lmaWMgbmV4dC1tb3ZlIHJlY29tbWVuZGF0aW9uLiIsCiAgICAgICI8c3Ryb25nPlN0YXJ0IHRoZXJlLjwvc3Ryb25nPiBNb3N0IGZvdW5kZXJzIGFyZSBzdXJwcmlzZWQgYnkgdGhlaXIgcmVhZGluZyBlaXRoZXIgd2F5LiIKICAgIF0sCiAgICBpbnZIZWFkbGluZTogIlRha2UgPGVtPlRoZSBIYW5kcmFpbHM8L2VtPiBuZXh0LiIsCiAgICBpbnZCb2R5OiAiU2V2ZW4gQUkgcmVhZGluZXNzIHNpZ25hbHMuIFR3byBtaW51dGVzLiBObyByZWdpc3RyYXRpb24uIFlvdSBsZWF2ZSB3aXRoIGEgcmVhbCByZWFkaW5nIG9uIHdoZXRoZXIgeW91ciBidXNpbmVzcyBpcyByZWFkeSBmb3IgdGhlIEFJIGVjb25vbXkgb3Igc3RpbGwgYnVpbGRpbmcgdG93YXJkIGl0LiIsCiAgICBwcmltYXJ5QWN0aW9uOiB7IGxhYmVsOiAiVGFrZSBUaGUgSGFuZHJhaWxzIOKGkiIsIHVybDogIi9zb3ZlcmVpZ24tY29kZXgtaGFuZHJhaWxzIiB9LAogICAgc2Vjb25kYXJ5QWN0aW9uOiB7IGxhYmVsOiAiT3IgYm9vayB0aGUgYXVkaXQiLCB1cmw6ICJ3YSIgfQogIH0sCiAgbGV2ZXJhZ2U6IHsKICAgIG5hbWU6ICJUaGUgQXVkaXQiLAogICAgcG9pbnRlcjogIllvdXIgcmlnaHQgbmV4dCBkb29yIGlzIiwKICAgIGJvZHk6IFsKICAgICAgIllvdXIgYW5zd2VycyBzdWdnZXN0IHlvdSBhcmUgcGFzdCB0aGUgZGlhZ25vc3RpYyBzdGFnZS4gWW91IGtub3cgeW91ciBmb3VuZGF0aW9ucy4gWW91IGtub3cgeW91ciBBSSBwb3N0dXJlLiBXaGF0IHlvdSB3YW50IG5vdyBpcyBhIHJlYWwgc3RyYXRlZ2ljIGNvbnZlcnNhdGlvbiB3aXRoIHNvbWVvbmUgd2hvIGNhbiBsaXN0ZW4sIHRoaW5rIHdpdGggeW91LCBhbmQgaWRlbnRpZnkgdGhlIGhpZ2hlc3QtbGV2ZXJhZ2UgbW92ZXMgZm9yIHlvdXIgc3BlY2lmaWMgYnVzaW5lc3MgYWNyb3NzIHRoZSBuZXh0IHR3ZWx2ZSBtb250aHMuIiwKICAgICAgIjxzdHJvbmc+VGhlIFNvdmVyZWlnbiBBSSBBdWRpdCBpcyB0aGF0IGNvbnZlcnNhdGlvbi48L3N0cm9uZz4gVGhpcnR5IG1pbnV0ZXMuIEZyZWUuIEhvbmVzdC4gTm8gcGl0Y2guIgogICAgXSwKICAgIGludkhlYWRsaW5lOiAiQm9vayB0aGUgPGVtPlNvdmVyZWlnbiBBSSBBdWRpdC48L2VtPiIsCiAgICBpbnZCb2R5OiAiQSB0aGlydHktbWludXRlIHN0cnVjdHVyZWQgY29udmVyc2F0aW9uIHdpdGggb3VyIHByYWN0aWNlLiBXZSB3YWxrIHlvdXIgZm91ciBwaWxsYXJzIChzYWxlcywgZnVsZmlsbWVudCwgb3BlcmF0aW9ucywgY3VzdG9tZXIgc2VydmljZSksIGlkZW50aWZ5IHRoZSBsZXZlcmFnZSBtb3ZlcywgYW5kIHlvdSBsZWF2ZSB3aXRoIGEgd3JpdHRlbiByZWFkaW5nIHdpdGhpbiBmb3J0eS1laWdodCBob3Vycy4iLAogICAgcHJpbWFyeUFjdGlvbjogeyBsYWJlbDogIlJlYWQgdGhlIEF1ZGl0IHBhZ2Ug4oaSIiwgdXJsOiAiL3NvdmVyZWlnbi1jb2RleC1hdWRpdCIgfSwKICAgIHNlY29uZGFyeUFjdGlvbjogeyBsYWJlbDogIkJvb2sgdGhlIGF1ZGl0IGRpcmVjdGx5IiwgdXJsOiAid2EiIH0KICB9LAogIGxlYXJuOiB7CiAgICBuYW1lOiAiQUkgU2lnbmFsIiwKICAgIHBvaW50ZXI6ICJZb3VyIHJpZ2h0IG5leHQgZG9vciBpcyIsCiAgICBib2R5OiBbCiAgICAgICJZb3VyIGFuc3dlcnMgc3VnZ2VzdCB5b3Ugd2FudCB0byByZWFkLCBleHBsb3JlLCBhbmQgdGhpbmsgYmVmb3JlIGFueSBkaWFnbm9zdGljIGNvbnZlcnNhdGlvbi4gVGhhdCBpcyBhIHNvdmVyZWlnbiBjaG9pY2UgYW5kIHdlIGhvbm91ciBpdC4gVGhlIGZhc3Rlc3Qgd2F5IHRvIHNwZW5kIGhvbmVzdCB0aW1lIHdpdGggb3VyIHRoaW5raW5nIGlzIHRocm91Z2ggQUkgU2lnbmFsLCBvdXIgd2Vla2x5IGJyb2FkY2FzdCBvbiBBSSBmb3IgQWZyaWNhbiBidXNpbmVzcy4gT25lIHRob3VnaHRmdWwgcGllY2UgcGVyIHdlZWssIGRlbGl2ZXJlZCB0byB5b3VyIGluYm94LiBObyBub2lzZS4iLAogICAgICAiPHN0cm9uZz5TdWJzY3JpYmUsIHJlYWQsIGFuZCB3aGVuIHlvdSBhcmUgcmVhZHksIGFueSBkaWFnbm9zdGljIGRvb3IgaXMgc3RpbGwgaGVyZS48L3N0cm9uZz4gVGhlIENvZGV4IGlzIHBhdGllbnQuIgogICAgXSwKICAgIGludkhlYWRsaW5lOiAiU3Vic2NyaWJlIHRvIDxlbT5BSSBTaWduYWwuPC9lbT4iLAogICAgaW52Qm9keTogIk91ciBpbnN0aXR1dGlvbmFsIGJyb2FkY2FzdCBvbiBBSSBmb3IgQWZyaWNhbiBidXNpbmVzcy4gT25lIHRob3VnaHRmdWwgcGllY2UgYSB3ZWVrLiBTdWJzY3JpYmUgcXVpZXRseSwgcmVhZCBhdCB5b3VyIG93biBwYWNlLCBhbmQgdGhlIGRpYWdub3N0aWNzIGFyZSBoZXJlIHdoZW4geW91IGRlY2lkZS4iLAogICAgcHJpbWFyeUFjdGlvbjogeyBsYWJlbDogIlN1YnNjcmliZSB0byBBSSBTaWduYWwg4oaSIiwgdXJsOiAiaHR0cHM6Ly9haXNpZ25hbC5zb3ZlcmVpZ25tb21lbnR1bS5jb20iIH0sCiAgICBzZWNvbmRhcnlBY3Rpb246IHsgbGFiZWw6ICJPciBleHBsb3JlIHRoZSBHYWxsZXJ5IiwgdXJsOiAiL3NvdmVyZWlnbi1jb2RleC1nYWxsZXJ5IiB9CiAgfQp9OwoKLy8gUm91dGUgdGFsbHkgKyByZWNvbW1lbmRhdGlvbiBsb2dpYwpmdW5jdGlvbiBjYWxjdWxhdGVSZXN1bHQoYW5zd2VycykgewogIGNvbnN0IHRhbGx5ID0ge307CiAgYW5zd2Vycy5mb3JFYWNoKGEgPT4gewogICAgaWYgKGEpIHsKICAgICAgY29uc3QgciA9IGEucm91dGU7CiAgICAgIC8vIE1hcCBzdWItcm91dGVzIHRvIHByaW1hcnkgZG9vcnMKICAgICAgY29uc3QgbWFwcGluZyA9IHsKICAgICAgICBmb3VuZGF0aW9uczogJ2ZvdW5kYXRpb25zJywKICAgICAgICBncm93dGg6ICdhaScsCiAgICAgICAgbGV2ZXJhZ2U6ICdsZXZlcmFnZScsCiAgICAgICAgdW5zdXJlOiAnZm91bmRhdGlvbnMnLAogICAgICAgIGFpOiAnYWknLAogICAgICAgIHRvb2w6ICdmb3VuZGF0aW9ucycsCiAgICAgICAgY29udmVyc2F0aW9uOiAnbGV2ZXJhZ2UnLAogICAgICAgIGxlYXJuOiAnbGVhcm4nLAogICAgICAgIGFueTogJ2xldmVyYWdlJwogICAgICB9OwogICAgICBjb25zdCBkb29yID0gbWFwcGluZ1tyXSB8fCAnZm91bmRhdGlvbnMnOwogICAgICB0YWxseVtkb29yXSA9ICh0YWxseVtkb29yXSB8fCAwKSArIDE7CiAgICB9CiAgfSk7CgogIC8vIEZpbmQgbWF4CiAgbGV0IG1heERvb3IgPSAnZm91bmRhdGlvbnMnOwogIGxldCBtYXhDb3VudCA9IDA7CiAgT2JqZWN0LmtleXModGFsbHkpLmZvckVhY2goZG9vciA9PiB7CiAgICBpZiAodGFsbHlbZG9vcl0gPiBtYXhDb3VudCkgewogICAgICBtYXhDb3VudCA9IHRhbGx5W2Rvb3JdOwogICAgICBtYXhEb29yID0gZG9vcjsKICAgIH0KICB9KTsKCiAgcmV0dXJuIFJFU1VMVFNbbWF4RG9vcl07Cn0KCi8vIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkAovLyAgIFNUQVRFICYgQ09SRQovLyDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAKbGV0IGN1cnJlbnRRID0gMDsKbGV0IGFuc3dlcnMgPSBuZXcgQXJyYXkoUVVFU1RJT05TLmxlbmd0aCkuZmlsbChudWxsKTsKCmZ1bmN0aW9uIHNob3dTdGFnZShpZCkgewogIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5zdGFnZScpLmZvckVhY2gocyA9PiBzLmNsYXNzTGlzdC5yZW1vdmUoJ2FjdGl2ZScpKTsKICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCkuY2xhc3NMaXN0LmFkZCgnYWN0aXZlJyk7CiAgd2luZG93LnNjcm9sbFRvKHsgdG9wOiAwLCBiZWhhdmlvcjogJ3Ntb290aCcgfSk7Cn0KCmZ1bmN0aW9uIHN0YXJ0Q29tcGFzcygpIHsKICBjdXJyZW50USA9IDA7CiAgYW5zd2VycyA9IG5ldyBBcnJheShRVUVTVElPTlMubGVuZ3RoKS5maWxsKG51bGwpOwogIHNob3dTdGFnZSgnc3RhZ2UtYXNzZXNzJyk7CiAgcmVuZGVyUXVlc3Rpb24oKTsKfQoKZnVuY3Rpb24gcmVuZGVyUXVlc3Rpb24oKSB7CiAgY29uc3QgcSA9IFFVRVNUSU9OU1tjdXJyZW50UV07CiAgY29uc3QgcHJvZ1BjdCA9IChjdXJyZW50USAvIFFVRVNUSU9OUy5sZW5ndGgpICogMTAwOwoKICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncHJvZ0RpbScpLnRleHRDb250ZW50ID0gcS5leWVicm93OwogIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwcm9nTnVtJykudGV4dENvbnRlbnQgPSBjdXJyZW50USArIDE7CiAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Byb2dGaWxsJykuc3R5bGUud2lkdGggPSBwcm9nUGN0ICsgJyUnOwoKICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncUV5ZWJyb3cnKS50ZXh0Q29udGVudCA9IHEuZXllYnJvdzsKICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncVRleHQnKS5pbm5lckhUTUwgPSBxLnRleHQ7CiAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3FOdWRnZScpLnRleHRDb250ZW50ID0gcS5udWRnZTsKCiAgY29uc3QgYm94ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ29wdHNCb3gnKTsKICBib3guaW5uZXJIVE1MID0gJyc7CiAgcS5vcHRzLmZvckVhY2goKG9wdCwgaWR4KSA9PiB7CiAgICBjb25zdCBidG4gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdidXR0b24nKTsKICAgIGJ0bi5jbGFzc05hbWUgPSAnb3B0JzsKICAgIGlmIChhbnN3ZXJzW2N1cnJlbnRRXSAmJiBhbnN3ZXJzW2N1cnJlbnRRXS5yb3V0ZSA9PT0gb3B0LnJvdXRlKSBidG4uY2xhc3NMaXN0LmFkZCgnc2VsZWN0ZWQnKTsKICAgIGJ0bi50ZXh0Q29udGVudCA9IG9wdC5sYWJlbDsKICAgIGJ0bi5vbmNsaWNrID0gKCkgPT4gc2VsZWN0T3B0aW9uKG9wdCk7CiAgICBib3guYXBwZW5kQ2hpbGQoYnRuKTsKICB9KTsKCiAgY29uc3QgYmFja0J0biA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdidG5CYWNrJyk7CiAgaWYgKGN1cnJlbnRRID09PSAwKSBiYWNrQnRuLmNsYXNzTGlzdC5hZGQoJ2hpZGRlbicpOwogIGVsc2UgYmFja0J0bi5jbGFzc0xpc3QucmVtb3ZlKCdoaWRkZW4nKTsKfQoKZnVuY3Rpb24gc2VsZWN0T3B0aW9uKG9wdCkgewogIGFuc3dlcnNbY3VycmVudFFdID0gb3B0OwogIGNvbnN0IGJ1dHRvbnMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcub3B0Jyk7CiAgYnV0dG9ucy5mb3JFYWNoKGIgPT4gewogICAgaWYgKGIudGV4dENvbnRlbnQgPT09IG9wdC5sYWJlbCkgYi5jbGFzc0xpc3QuYWRkKCdzZWxlY3RlZCcpOwogICAgZWxzZSBiLmNsYXNzTGlzdC5yZW1vdmUoJ3NlbGVjdGVkJyk7CiAgfSk7CiAgc2V0VGltZW91dCgoKSA9PiB7CiAgICBpZiAoY3VycmVudFEgPCBRVUVTVElPTlMubGVuZ3RoIC0gMSkgewogICAgICBjdXJyZW50USsrOwogICAgICByZW5kZXJRdWVzdGlvbigpOwogICAgfSBlbHNlIHsKICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Byb2dGaWxsJykuc3R5bGUud2lkdGggPSAnMTAwJSc7CiAgICAgIHNldFRpbWVvdXQoc2hvd1Jlc3VsdCwgMzIwKTsKICAgIH0KICB9LCAzMjApOwp9CgpmdW5jdGlvbiBwcmV2UXVlc3Rpb24oKSB7CiAgaWYgKGN1cnJlbnRRID4gMCkgewogICAgY3VycmVudFEtLTsKICAgIHJlbmRlclF1ZXN0aW9uKCk7CiAgfQp9CgpmdW5jdGlvbiBzaG93UmVzdWx0KCkgewogIGNvbnN0IHJlc3VsdCA9IGNhbGN1bGF0ZVJlc3VsdChhbnN3ZXJzKTsKCiAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdE5hbWUnKS5pbm5lckhUTUwgPSByZXN1bHQubmFtZTsKCiAgY29uc3QgYm9keUVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdEJvZHknKTsKICBsZXQgaHRtbCA9ICcnOwogIHJlc3VsdC5ib2R5LmZvckVhY2gocCA9PiB7IGh0bWwgKz0gJzxwPicgKyBwICsgJzwvcD4nOyB9KTsKICBib2R5RWwuaW5uZXJIVE1MID0gaHRtbDsKCiAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ludkhlYWRsaW5lJykuaW5uZXJIVE1MID0gcmVzdWx0LmludkhlYWRsaW5lOwogIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnZCb2R5JykudGV4dENvbnRlbnQgPSByZXN1bHQuaW52Qm9keTsKCiAgY29uc3QgYWN0aW9uc0VsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ludkFjdGlvbnMnKTsKICBhY3Rpb25zRWwuaW5uZXJIVE1MID0gJyc7CgogIC8vIFByaW1hcnkKICBjb25zdCBwcmltQnRuID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpOwogIHByaW1CdG4uY2xhc3NOYW1lID0gJ2J0bi1pbnZpdGF0aW9uIGJ0bi1wcmltYXJ5LWFjdGlvbic7CiAgcHJpbUJ0bi50ZXh0Q29udGVudCA9IHJlc3VsdC5wcmltYXJ5QWN0aW9uLmxhYmVsOwogIGlmIChyZXN1bHQucHJpbWFyeUFjdGlvbi51cmwgPT09ICd3YScpIHsKICAgIHByaW1CdG4uaHJlZiA9ICdodHRwczovL3dhLm1lLzI1Njc3NjAwMDM4ND90ZXh0PScgKyBlbmNvZGVVUklDb21wb25lbnQoJ0hlbGxvLCBJIGp1c3QgdG9vayBUaGUgQ29tcGFzcyBhbmQgd291bGQgbGlrZSB0byBib29rIHRoZSBTb3ZlcmVpZ24gQUkgQXVkaXQgY29udmVyc2F0aW9uLicpOwogICAgcHJpbUJ0bi50YXJnZXQgPSAnX2JsYW5rJzsKICAgIHByaW1CdG4ucmVsID0gJ25vb3BlbmVyJzsKICB9IGVsc2UgewogICAgcHJpbUJ0bi5ocmVmID0gcmVzdWx0LnByaW1hcnlBY3Rpb24udXJsOwogICAgaWYgKHJlc3VsdC5wcmltYXJ5QWN0aW9uLnVybC5zdGFydHNXaXRoKCdodHRwJykpIHsgcHJpbUJ0bi50YXJnZXQgPSAnX2JsYW5rJzsgcHJpbUJ0bi5yZWwgPSAnbm9vcGVuZXInOyB9CiAgfQogIGFjdGlvbnNFbC5hcHBlbmRDaGlsZChwcmltQnRuKTsKCiAgLy8gU2Vjb25kYXJ5CiAgY29uc3Qgc2VjQnRuID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpOwogIHNlY0J0bi5jbGFzc05hbWUgPSAnYnRuLWludml0YXRpb24gYnRuLXNlY29uZGFyeS1hY3Rpb24nOwogIHNlY0J0bi50ZXh0Q29udGVudCA9IHJlc3VsdC5zZWNvbmRhcnlBY3Rpb24ubGFiZWw7CiAgaWYgKHJlc3VsdC5zZWNvbmRhcnlBY3Rpb24udXJsID09PSAnd2EnKSB7CiAgICBzZWNCdG4uaHJlZiA9ICdodHRwczovL3dhLm1lLzI1Njc3NjAwMDM4ND90ZXh0PScgKyBlbmNvZGVVUklDb21wb25lbnQoJ0hlbGxvLCBJIGp1c3QgdG9vayBUaGUgQ29tcGFzcyBhbmQgd291bGQgbGlrZSB0byBib29rIHRoZSBTb3ZlcmVpZ24gQUkgQXVkaXQgY29udmVyc2F0aW9uLicpOwogICAgc2VjQnRuLnRhcmdldCA9ICdfYmxhbmsnOwogICAgc2VjQnRuLnJlbCA9ICdub29wZW5lcic7CiAgfSBlbHNlIHsKICAgIHNlY0J0bi5ocmVmID0gcmVzdWx0LnNlY29uZGFyeUFjdGlvbi51cmw7CiAgICBpZiAocmVzdWx0LnNlY29uZGFyeUFjdGlvbi51cmwuc3RhcnRzV2l0aCgnaHR0cCcpKSB7IHNlY0J0bi50YXJnZXQgPSAnX2JsYW5rJzsgc2VjQnRuLnJlbCA9ICdub29wZW5lcic7IH0KICB9CiAgYWN0aW9uc0VsLmFwcGVuZENoaWxkKHNlY0J0bik7CgogIHNob3dTdGFnZSgnc3RhZ2UtcmVzdWx0Jyk7Cn0KCmZ1bmN0aW9uIHJlc2V0Q29tcGFzcygpIHsKICBzaG93U3RhZ2UoJ3N0YWdlLXdlbGNvbWUnKTsKICBjdXJyZW50USA9IDA7CiAgYW5zd2VycyA9IG5ldyBBcnJheShRVUVTVElPTlMubGVuZ3RoKS5maWxsKG51bGwpOwp9Cjwvc2NyaXB0PgoKPC9ib2R5Pgo8L2h0bWw+","embed":""}
The Compass · Find Your Door · The Sovereign Codex
◆The Sovereign Codex
← The Codex Home
The Compass · Find Your Door

Not sure where to start?
Three questions.

The Codex has multiple doors and not every founder knows which one to walk through first. The Compass asks three honest questions about your situation and points you to the right next step. Two minutes. No registration. The fastest doorway in the Codex.

Two Minutes
Three Questions
Honest Routing
Not behind. Not broken. Not too late.
Question One
Question 1 of 3

Your Compass Reading

Your right next door is

The Compass
Your Next Move

◆ The Sovereign Codex
A Practice of Mukasa Venture Partners LLC
themeridian.africa
© 2026 · All rights reserved
Image Gallery Grid
T
Please Check Your Email
We Will Be Following Up Shortly
*
*
*

warning