IyAgQ29weXJpZ2h0IChjKSAyMDExLDIwMTIgTWlhLVNvZnR3YXJlLg0KIyAgDQojICBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzDQojICBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYyLjANCiMgIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0DQojICBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MjAuaHRtbA0KIyAgDQojICBDb250cmlidXRvcnM6DQojICAgICBHcmVnb2lyZSBEdXBlIChNaWEtU29mdHdhcmUpIC0gRGVzaWduDQojICAgICBOaWNvbGFzIEd1eW9tYXIgKE1pYS1Tb2Z0d2FyZSkgLSBJbXBsZW1lbnRhdGlvbg0KIyAgICAgRW1tYW51ZWxsZSBSb3VpbGzpIChNaWEtU29mdHdhcmUpIC0gQnVnIDM1MjYxOCAtIFRvIGJlIGFibGUgdG8gdXNlIG5vbi1kZXJpdmVkIGZhY2V0IHN0cnVjdHVyYWwgZmVhdHVyZXMgYW5kIHNhdmUgdGhlaXIgdmFsdWVzLg0KIyAgICAgTmljb2xhcyBCcm9zIChNaWEtU29mdHdhcmUpIC0gQnVnIDM3MDExMCAtIFJlbmFtZSBlZmFjZXRjYXRhbG9nMi5lY29yZQ0KIyAgICAgR3LpZ29pcmUgRHVw6SAoTWlhLVNvZnR3YXJlKSAtIEJ1ZyAzNjE4MTcgLSBbUmVzdHJ1Y3R1cmluZ10gRHluYW1pYyBsb2FkIHRvIHRoZSBmYWNldCBjYXRhbG9nDQojIA0KDQpwbHVnaW5OYW1lID0gRWZhY2V0Y2F0YWxvZyBNb2RlbA0KcHJvdmlkZXJOYW1lID0gd3d3LmV4YW1wbGUub3JnDQo=