IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KIyBDb3B5cmlnaHQgKGMpIDIwMTMtMjAyMCBMQUFTLUNOUlMgKHd3dy5sYWFzLmZyKQ0KIyA3IENvbG9uZWwgUm9jaGUgMzEwNzcgVG91bG91c2UgLSBGcmFuY2UNCiMNCiMgQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscw0KIyBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMA0KIyB3aGljaCBhY2NvbXBhbmllcyB0aGlzIGRpc3RyaWJ1dGlvbiwgYW5kIGlzIGF2YWlsYWJsZSBhdA0KIyBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtMi4wLw0KIw0KIyBJbml0aWFsIENvbnRyaWJ1dG9yczoNCiMgICAgIFRoaWVycnkgTW9udGVpbCA6IFByb2plY3QgbWFuYWdlciwgdGVjaG5pY2FsIGNvLW1hbmFnZXINCiMgICAgIE1haGRpIEJlbiBBbGF5YSA6IFRlY2huaWNhbCBjby1tYW5hZ2VyDQojICAgICBTYW1pciBNZWRqaWFoIDogVGVjaG5pY2FsIGNvLW1hbmFnZXINCiMgICAgIEtoYWxpbCBEcmlyYSA6IFN0cmF0ZWd5IGV4cGVydA0KIyAgICAgR3VpbGxhdW1lIEdhcnpvbmUgOiBEZXZlbG9wZXINCiMgICAgIEZyYW7nb2lzIEHvc3Nhb3VpIDogRGV2ZWxvcGVyDQojDQojIE5ldyBjb250cmlidXRvcnMgOg0KIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0Kb3V0cHV0Li4gPSBiaW4vDQpzb3VyY2UuLiA9IHNyYy9tYWluL2phdmENCmJpbi5pbmNsdWRlcyA9IE1FVEEtSU5GLyxcDQoJCQkJLg0K