IyEgL2Jpbi9zaAouICIke3NyY2Rpcj0ufS9pbml0LnNoIjsgcGF0aF9wcmVwZW5kXyAuIC4uL3NyYwoKIyBUZXN0IHRoYXQgYmluZF90ZXh0ZG9tYWluX2NvZGVzZXQoKSB3b3Jrcy4KCnRlc3QgLWQgaW4tMy0xIHx8IG1rZGlyIGluLTMtMQp0ZXN0IC1kIGluLTMtMS9mciB8fCBta2RpciBpbi0zLTEvZnIKdGVzdCAtZCBpbi0zLTEvZnIvTENfTUVTU0FHRVMgfHwgbWtkaXIgaW4tMy0xL2ZyL0xDX01FU1NBR0VTCgo6ICR7TVNHRk1UPW1zZ2ZtdH0KJHtNU0dGTVR9IC1vIGluLTMtMS9mci9MQ19NRVNTQUdFUy90c3Rwcm9nLm1vICIkd2Fic19zcmNkaXIiL2ludGwtMi0xLnBvCgp0ZXN0IC1kIGluLTMtMiB8fCBta2RpciBpbi0zLTIKdGVzdCAtZCBpbi0zLTIvZnIgfHwgbWtkaXIgaW4tMy0yL2ZyCnRlc3QgLWQgaW4tMy0yL2ZyL0xDX01FU1NBR0VTIHx8IG1rZGlyIGluLTMtMi9mci9MQ19NRVNTQUdFUwoKOiAke01TR0ZNVD1tc2dmbXR9CiR7TVNHRk1UfSAtbyBpbi0zLTIvZnIvTENfTUVTU0FHRVMvdHN0cHJvZy5tbyAiJHdhYnNfc3JjZGlyIi9pbnRsLTItMi5wbwoKOiAke0RJRkY9ZGlmZn0KY2F0IDw8RU9GID4gaW4tMy0xLm9rCkvkc2UKRU9GCmNhdCA8PEVPRiA+IGluLTMtMi5vawpLw6RzZQpFT0YKCjogJHtMT0NBTEVfRlI9ZnJfRlJ9CjogJHtMT0NBTEVfRlJfVVRGOD1mcl9GUi5VVEYtOH0KaWYgdGVzdCAkTE9DQUxFX0ZSICE9IG5vbmU7IHRoZW4KICBwcmVwYXJlX2xvY2FsZV8gaW4tMy0xL2ZyIGluLTMtMS8kTE9DQUxFX0ZSCiAgcHJlcGFyZV9sb2NhbGVfIGluLTMtMi9mciBpbi0zLTIvJExPQ0FMRV9GUgogIC4uL2ludGwtMy1wcmcgaW4tMy0xICRMT0NBTEVfRlIgSVNPLTg4NTktMSA+IGluLTMudG1wIHx8IEV4aXQgMQogIExDX0FMTD1DIHRyIC1kICdccicgPCBpbi0zLnRtcCA+IGluLTMub3V0IHx8IEV4aXQgMQogICR7RElGRn0gaW4tMy0xLm9rIGluLTMub3V0IHx8IEV4aXQgMQogIC4uL2ludGwtMy1wcmcgaW4tMy0yICRMT0NBTEVfRlIgSVNPLTg4NTktMSA+IGluLTMudG1wIHx8IEV4aXQgMQogIExDX0FMTD1DIHRyIC1kICdccicgPCBpbi0zLnRtcCA+IGluLTMub3V0IHx8IEV4aXQgMQogICR7RElGRn0gaW4tMy0xLm9rIGluLTMub3V0IHx8IEV4aXQgMQogIC4uL2ludGwtMy1wcmcgaW4tMy0xICRMT0NBTEVfRlIgVVRGLTggPiBpbi0zLnRtcCB8fCBFeGl0IDEKICBMQ19BTEw9QyB0ciAtZCAnXHInIDwgaW4tMy50bXAgPiBpbi0zLm91dCB8fCBFeGl0IDEKICAke0RJRkZ9IGluLTMtMi5vayBpbi0zLm91dCB8fCBFeGl0IDEKICAuLi9pbnRsLTMtcHJnIGluLTMtMiAkTE9DQUxFX0ZSIFVURi04ID4gaW4tMy50bXAgfHwgRXhpdCAxCiAgTENfQUxMPUMgdHIgLWQgJ1xyJyA8IGluLTMudG1wID4gaW4tMy5vdXQgfHwgRXhpdCAxCiAgJHtESUZGfSBpbi0zLTIub2sgaW4tMy5vdXQgfHwgRXhpdCAxCmZpCmlmIHRlc3QgJExPQ0FMRV9GUl9VVEY4ICE9IG5vbmU7IHRoZW4KICBwcmVwYXJlX2xvY2FsZV8gaW4tMy0xL2ZyIGluLTMtMS8kTE9DQUxFX0ZSX1VURjgKICBwcmVwYXJlX2xvY2FsZV8gaW4tMy0yL2ZyIGluLTMtMi8kTE9DQUxFX0ZSX1VURjgKICAuLi9pbnRsLTMtcHJnIGluLTMtMSAkTE9DQUxFX0ZSX1VURjggSVNPLTg4NTktMSA+IGluLTMudG1wIHx8IEV4aXQgMQogIExDX0FMTD1DIHRyIC1kICdccicgPCBpbi0zLnRtcCA+IGluLTMub3V0IHx8IEV4aXQgMQogICR7RElGRn0gaW4tMy0xLm9rIGluLTMub3V0IHx8IEV4aXQgMQogIC4uL2ludGwtMy1wcmcgaW4tMy0yICRMT0NBTEVfRlJfVVRGOCBJU08tODg1OS0xID4gaW4tMy50bXAgfHwgRXhpdCAxCiAgTENfQUxMPUMgdHIgLWQgJ1xyJyA8IGluLTMudG1wID4gaW4tMy5vdXQgfHwgRXhpdCAxCiAgJHtESUZGfSBpbi0zLTEub2sgaW4tMy5vdXQgfHwgRXhpdCAxCiAgLi4vaW50bC0zLXByZyBpbi0zLTEgJExPQ0FMRV9GUl9VVEY4IFVURi04ID4gaW4tMy50bXAgfHwgRXhpdCAxCiAgTENfQUxMPUMgdHIgLWQgJ1xyJyA8IGluLTMudG1wID4gaW4tMy5vdXQgfHwgRXhpdCAxCiAgJHtESUZGfSBpbi0zLTIub2sgaW4tMy5vdXQgfHwgRXhpdCAxCiAgLi4vaW50bC0zLXByZyBpbi0zLTIgJExPQ0FMRV9GUl9VVEY4IFVURi04ID4gaW4tMy50bXAgfHwgRXhpdCAxCiAgTENfQUxMPUMgdHIgLWQgJ1xyJyA8IGluLTMudG1wID4gaW4tMy5vdXQgfHwgRXhpdCAxCiAgJHtESUZGfSBpbi0zLTIub2sgaW4tMy5vdXQgfHwgRXhpdCAxCmZpCmlmIHRlc3QgJExPQ0FMRV9GUiA9IG5vbmUgJiYgdGVzdCAkTE9DQUxFX0ZSX1VURjggPSBub25lOyB0aGVuCiAgaWYgdGVzdCAtZiAvdXNyL2Jpbi9sb2NhbGVkZWY7IHRoZW4KICAgIGVjaG8gIlNraXBwaW5nIHRlc3Q6IG5vIGZyZW5jaCBsb2NhbGUgaXMgaW5zdGFsbGVkIgogIGVsc2UKICAgIGVjaG8gIlNraXBwaW5nIHRlc3Q6IG5vIGZyZW5jaCBsb2NhbGUgaXMgc3VwcG9ydGVkIgogIGZpCiAgRXhpdCA3NwpmaQoKRXhpdCAwCg==