IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojCQkJCQkJCQkJIwojIFJlZ3VsYXIgTWFpbnRhaW5lcnMgZm9yIFUtQm9vdCBib2FyZCBzdXBwb3J0OgkJCQkjCiMJCQkJCQkJCQkjCiMgRm9yIGFueSBib2FyZCB3aXRob3V0IHBlcm1hbmVudCBtYWludGFpbmVyLCBwbGVhc2UgY29udGFjdAkJIwojCVdvbGZnYW5nIERlbmsgPHdkQGRlbnguZGU+CQkJCQkjCiMgYW5kIENjOiB0aGUgPFUtQm9vdC1Vc2Vyc0BsaXN0cy5zb3VyY2Vmb3JnZS5uZXQ+IG1haWxpbmcgbGlzdHMuCSMKIwkJCQkJCQkJCSMKIyBOb3RlOiBsaXN0cyBzb3J0ZWQgYnkgTWFpbnRhaW5lciBOYW1lCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgUG93ZXJQQyBTeXN0ZW1zOgkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCQlDUFUJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKR3JlZyBBbGxlbiA8Z2FsbGVuQGFybHV0LnV0ZXhhcy5lZHU+CgoJVVRYODI0NQkJCU1QQzgyNDUKClBhbnRlbGlzIEFudG9uaW91IDxwYW50b0BpbnRyYWNvbS5ncj4KCglORVRWSUEJCQlNUEM4eHgKClJlaW5oYXJkIEFybHQgPHJlaW5oYXJkLmFybHRAZXNkLWVsZWN0cm9uaWNzLmNvbT4KCgljcGNpNTIwMAkJTVBDNTIwMAoJbWVjcDUyMDAJCU1QQzUyMDAKCXBmNTIwMAkJCU1QQzUyMDAKCglDUENJNzUwCQkJUFBDNzUwRlgvR1gKCll1bGkgQmFyY29oZW4gPHl1bGlAYXJhYmVsbGFzdy5jb20+CgoJQWRkZXIJCQlNUEM4N3gvTVBDODUyVAoJZXA4MjQ4CQkJTVBDODI0OAoJSVNQQU4JCQlNUEM4MjYwCglNUEM4MjYwQURTCQlNUEM4MjZ4L01QQzgyN3gvTVBDODI4MAoJUmF0dGxlcgkJCU1QQzgyNDgKCVpQQzE5MDAJCQlNUEM4MjY1CgpKZXJyeSBWYW4gQmFyZW4gPGdlcmFsZC52YW5iYXJlbkBzbWl0aHMtYWVyb3NwYWNlLmNvbT4KCglzYWNzbmcJCQlNUEM4MjYwCgpPbGl2ZXIgQnJvd24gPG9icm93bkBhZHZlbnRuZXR3b3Jrcy5jb20+CgoJZ3c4MjYwCQkJTVBDODI2MAoKQ29ubiBDbGFyayA8Y2xhcmtAZXN0ZWVtLmNvbT4KCglFU1RFRU0xOTJFCQlNUEM4eHgKCkvhcmkgRGF27fBzc29uIDxrZEBmbGFnYS5pcz4KCglGTEFHQURNCQkJTVBDODIzCgpUb3JzdGVuIERlbWtlIDx0b3JzdGVuLmRlbWtlQGZjaS5jb20+CgoJZVhhbGlvbgkJCU1QQzgyNHgKCldvbGZnYW5nIERlbmsgPHdkQGRlbnguZGU+CgoJSWNlQ3ViZV81MTAwCQlNR1Q1MTAwCglJY2VDdWJlXzUyMDAJCU1QQzUyMDAKCglBTVg4NjAJCQlNUEM4NjAKCUVUWDA5NAkJCU1QQzg1MAoJRlBTODUwTAkJCU1QQzg1MAoJRlBTODYwTAkJCU1QQzg2MAoJSUNVODYyCQkJTVBDODYyCglJUDg2MAkJCU1QQzg2MAoJSVZNTDI0CQkJTVBDODYwCglJVk1MMjRfMTI4CQlNUEM4NjAKCUlWTUwyNF8yNTYJCU1QQzg2MAoJSVZNUzgJCQlNUEM4NjAKCUlWTVM4XzEyOAkJTVBDODYwCglJVk1TOF8yNTYJCU1QQzg2MAoJTEFOVEVDCQkJTVBDODUwCglMV01PTgkJCU1QQzgyMwoJTkM2NTAJCQlNUEM4NTIKCVIzNjBNUEkJCQlNUEM4MjMKCVJNVQkJCU1QQzg1MAoJUlJ2aXNpb24JCU1QQzgyMwoJU004NTAJCQlNUEM4NTAKCVNQRDgyM1RTCQlNUEM4MjMKCVRRTTgyM0wJCQlNUEM4MjMKCVRRTTgyM0xfTENECQlNUEM4MjMKCVRRTTg1MEwJCQlNUEM4NTAKCVRRTTg1NUwJCQlNUEM4NTUKCVRRTTg2MEwJCQlNUEM4NjAKCVRRTTg2MExfRkVDCQlNUEM4NjAKCWMybW9uCQkJTVBDODU1CgloZXJtZXMJCQlNUEM4NjAKCWx3bW9uCQkJTVBDODIzCglwY3VfZQkJCU1QQzg1NQoKCUNVODI0CQkJTVBDODI0MAoJU2FuZHBvaW50ODI0MAkJTVBDODI0MAoJU0w4MjQ1CQkJTVBDODI0NQoKCUFUQwkJCU1QQzgyNTAKCVBNODI1CQkJTVBDODI1MAoKCVRRTTgyNTUJCQlNUEM4MjU1CgoJQ1BVODYJCQlNUEM4MjYwCglQTTgyNgkJCU1QQzgyNjAKCVRRTTgyNjAJCQlNUEM4MjYwCgoJUDNHNAkJCU1QQzc0MTAKCglQQ0lQUEMyCQkJTVBDNzUwCglQQ0lQUEM2CQkJTVBDNzUwCgoJRVhCSVRHRU4JCVBQQzQwNUdQCgpKb24gRGlla2VtYSA8am9uLmRpZWtlbWFAc21pdGhzLWFlcm9zcGFjZS5jb20+CgoJc2JjODI2MAkJCU1QQzgyNjAKCkRhdmUgRWxsaXMgPERHRUBzaXhuZXRpby5jb20+CgoJU1hOSTg1NVQJCU1QQzh4eAoKVGhvbWFzIEZyaWVkZW4gPFRob21hc0ZAaHlwZXJpb24tZW50ZXJ0YWlubWVudC5jb20+CgoJQW1pZ2FPbmVHM1NFCQlNUEM3eHgKCk1hdHRoaWFzIEZ1Y2hzIDxtYXR0aGlhcy5mdWNoc0Blc2QtZWxlY3Ryb25pY3MuY29tPgoKCUFEQ0lPUAkJCUlPUDQ4MCAoUFBDNDAxKQoJQVBDNDA1CQkJUFBDNDA1R1AKCUFSNDA1CQkJUFBDNDA1R1AKCUFTSDQwNQkJCVBQQzQwNUVQCglDQU5CVAkJCVBQQzQwNUNSCglDUENJMkRQCQkJUFBDNDA1R1AKCUNQQ0k0MDUJCQlQUEM0MDVHUAoJQ1BDSTQwNTIJCVBQQzQwNUdQCglDUENJNDA1QUIJCVBQQzQwNUdQCglDUENJNDA1RFQJCVBQQzQwNUdQCglDUENJNDQwCQkJUFBDNDQwR1AKCUNQQ0lJU0VSNAkJUFBDNDA1R1AKCURBU0FfU0lNCQlJT1A0ODAgKFBQQzQwMSkKCURQNDA1CQkJUFBDNDA1RVAKCURVNDA1CQkJUFBDNDA1R1AKCUcyMDAwCQkJUFBDNDA1RVAKCUhINDA1CQkJUFBDNDA1RVAKCUhVQjQwNQkJCVBQQzQwNUVQCglPQ1JUQwkJCVBQQzQwNUdQCglPUlNHCQkJUFBDNDA1R1AKCVBDSTQwNQkJCVBQQzQwNUdQCglQTFU0MDUJCQlQUEM0MDVFUAoJUE1DNDA1CQkJUFBDNDA1R1AKCVZPSDQwNQkJCVBQQzQwNUVQCglWT000MDUJCQlQUEM0MDVFUAoJV1VINDA1CQkJUFBDNDA1RVAKCUNNUzcwMCAgICAgICAgICAgICAgICAgIFBQQzQwNUVQCgpGcmFuayBHb3R0c2NobGluZyA8ZmdvdHRzY2hsaW5nQGVsdGVjLmRlPgoKCU1IUEMJCQlNUEM4eHgKCglCQUI3eHgJCQlNUEM3NDAvTVBDNzUwCgpXb2xmZ2FuZyBHcmFuZGVnZ2VyIDx3Z0BkZW54LmRlPgoKCUNDTQkJCU1QQzg1NQoKCVBONjIJCQlNUEM4MjQwCgoJSVBIQVNFNDUzOQkJTVBDODI2MAoJU0NNCQkJTVBDODI2MAoKSG93YXJkIEdyYXkgPG12c2Vuc29yQG1hdHJpeC12aXNpb24uZGU+CgoJTVZTMQkJCU1QQzgyMwoKS2xhdXMgSGV5ZGVjayA8aGV5ZGVja0BraWViYWNrLXBldGVyLmRlPgoKCUtVUDRLCQkJTVBDODU1CglLVVA0WAkJCU1QQzg1OQoKTXVycmF5IEplbnNlbiA8TXVycmF5LkplbnNlbkBjc2lyby5hdT4KCgljb2dlbnRfbXBjOHh4CQlNUEM4eHgKCgljb2dlbnRfbXBjODI2MAkJTVBDODI2MAoJaHltb2QJCQlNUEM4MjYwCgpCcmFkIEtlbXAgPEJyYWQuS2VtcEBzZXJhbm9hLmNvbT4KCglwcG1jODI2MAkJTVBDODI2MAoKU2FuZ21vb24gS2ltIDxkb2dvaWxAZXRpbnN5cy5jb20+CgoJZGVicmlzCQkJTVBDODI0NQoJS1ZNRTA4MAkJCU1QQzgyNDUKClRob21hcyBMYW5nZSA8dGhvbWFzQGNvcmVsYXR1cy5zZT4KCglHVEgJCQlNUEM4NjAKClRoZSBMRU9YIHRlYW0gPHRlYW1AbGVveC5vcmc+CgoJRUxQVDg2MAkJCU1QQzg2MFQKCk55ZSBMaXUgPG55ZXRAenVtYW5ldHdvcmtzLmNvbT4KCglaVU1BCQkJTVBDN3h4Xzc0eHgKCkpvbiBMb2VsaWdlciA8amRsQGZyZWVzY2FsZS5jb20+CgoJTVBDODU0MEFEUwkJTVBDODU0MAoJTVBDODU2MEFEUwkJTVBDODU2MAoJTVBDODU0MUNEUwkJTVBDODU0MQoJTVBDODU1NUNEUwkJTVBDODU1NQoKCU1QQzg2NDFIUENOCQlNUEM4NjQxRAoKRGFuIE1hbGVrIDxkYW5AZW1iZWRkZWRlZGdlLmNvbT4KCglTVHhHUDMJCQlNUEM4NXh4CglTVHhYVGMJCQlNUEM4eHgKCkVyYW4gTWFuIDxlcmFuQG5iYXNlLmNvLmlsPgoKCUVWQjY0MjYwXzc1MENYCQlNUEM3NTBDWAoKQW5kcmVhICJsbGFuZHJlIiBNYXJzb24gPGFuZHJlYS5tYXJzb25AZGF2ZS10ZWNoLml0PgoKCVBQQ2hhbWVsZW9uRVZCCVBQQzQwNUVQCgpSZWluaGFyZCBNZXllciA8ci5tZXllckBlbWstZWxla3Ryb25pay5kZT4KCglUT1A4NjAJCQlNUEM4NjBUCglUT1A1MjAwCQkJTVBDNTIwMAoKVG9sdW5heSBPcmt1biA8dG9ya3VuQG5leHRpby5jb20+CgoJY3NiMjcyCQkJUFBDNDA1R1AKCWNzYjQ3MgkJCVBQQzQwNUdQCgpKb2huIE90a2VuIDxqb3RrZW5Ac29mdGFkdmFuY2VzLmNvbT4KCglsdWFuCQkJUFBDNDQwU1AKCktlaXRoIE91dHdhdGVyIDxLZWl0aF9PdXR3YXRlckBtdmlzLmNvbT4KCglHRU44NjBUCQkJTVBDODYwVAoJR0VOODYwVF9TQwkJTVBDODYwVAoKRnJhbmsgUGFubm8gPGZwYW5ub0BkZWxwaGludGVjaC5jb20+CgoJZXA4MjYwCQkJTVBDODI2MAoKUGV0ZXIgUGVhcnNlIDxwZXRlci5wZWFyc2VAYXJtLmNvbT4KCWludGVncmF0b3JjcAkJQWxsIGN1cnJlbnQgQVJNIHN1cHBsaWVkICYKCQkJCXN1cHBvcnRlZCBjb3JlIG1vZHVsZXMKCQkJCS0gc2VlIGh0dHA6Ly93d3cuYXJtLmNvbQoJCQkJL3Byb2R1Y3RzL0RldlRvb2xzCgkJCQkvSGFyZHdhcmVfUGxhdGZvcm1zLmh0bWwKCXZlcnNhdGlsZQkJQVJNOTI2RUotUwoJdmVyc2F0aWxlCQlBUk05MjZFSi1TCgpEZW5pcyBQZXRlciA8ZC5wZXRlckBtcGwuY2g+CgoJTUlQNDA1CQkJUFBDNHh4CglQSVA0MDUJCQlQUEM0eHgKCkRhbmllbCBQb2lyb3QgPGRhbi5wb2lyb3RAd2luZHJpdmVyLmNvbT4KCglzYmM4MjQwCQkJTVBDODI0MAoJc2JjNDA1CQkJUFBDNDA1R1AKClN0ZWZhbiBSb2VzZSA8c3JAZGVueC5kZT4KCglQM003NDQ4CQkJTVBDNzQ0OAoKCXVjMTAwCQkJTVBDODU3CgoJVFFNODV4eAkJCU1QQzg1NDAvODU0MS84NTU1Lzg1NjAKCglhY2FkaWEJCQlQUEM0MDVFWgoJYWxwcgkJCVBQQzQ0MEdYCgliYW1ib28JCQlQUEM0NDBFUAoJYnVuYmluZ2EJCVBQQzQwNUVQCgllYm9ueQkJCVBQQzQ0MEdQCglrYXRtYWkJCQlQUEM0NDBTUGUKCW9jb3RlYQkJCVBQQzQ0MEdYCglwM3A0NDAJCQlQUEM0NDBHUAoJcGNzNDQwZXAJCVBQQzQ0MEVQCglzZXF1b2lhCQkJUFBDNDQwRVB4CglzeWNhbW9yZQkJUFBDNDA1R1ByCgl0YWlzaGFuCQkJUFBDNDQwR1gKCXdhbG51dAkJCVBQQzQwNUdQCgl5ZWxsb3dzdG9uZQkJUFBDNDQwR1IKCXlvc2VtaXRlCQlQUEM0NDBFUAoKCVAzTTc1MAkJCVBQQzc1MEZYL0dYL0dMCgpZdXNkaSBTYW50b3NvIDx5dXNkaV9zYW50b3NvQGFkYXB0ZWMuY29tPgoKCUhJRERFTl9EUkFHT04JTVBDODI0MS9NUEM4MjQ1CgpUcmF2aXMgU2F3eWVyICh0cmF2aXMuc2F3eWVyQHNhbmRidXJzdC5jb20+CgoJS0FSRUYJCQlQUEM0NDBHWAoJTUVUUk9CT1gJCVBQQzQ0MEdYCglYUEVESVRFMUsJCVBQQzQ0MEdYCgpQZXRlciBEZSBTY2hyaWp2ZXIgPHAyQG1pbmQuYmU+CgoJTUwyCQkJUFBDNHh4CgpFcmlrIFRoZWlzZW4gPGV0aGVpc2VuQG1pbmRzcHJpbmcuY29tPgoKCVc3T0xNQwkJCVBQQzR4eAoJVzdPTE1HCQkJUFBDNHh4CgpKaW0gVGhvbXBzb24gPGppbUBtdXNlbmtpLmNvbT4KCglNVVNFTktJCQkJTVBDODI0NS84MjQxCglTYW5kcG9pbnQ4MjQ1CQlNUEM4MjQ1CgpSdW5lIFRvcmdlcnNlbiA8cnVuZXRAaW5ub3ZzeXMuY29tPgoKCU1QQzgyNjZBRFMJCU1QQzgyNjYKCgpEYXZpZCBVcGRlZ3JhZmYgPGRhdmVAY3JheS5jb20+CgoJQ1JBWUwxCQkJUFBDNHh4CgpKb3NlZiBXYWduZXIgPFdhZ25lckBNaWNyb3N5cy5kZT4KCglDUEM0NQkJCU1QQzgyNDUKCVBNNTIwCQkJTVBDNTIwMAoKU3RlcGhlbiBXaWxsaWFtcyA8c3RldmVAaWNhcnVzLmNvbT4KCglKU0UJCQlQUEM0MDVHUHIKCkpvaG4gWmhhbiA8emhhbnpAc2lub3ZlZS5jb20+CgoJc3ZtX3NjOHh4CQlNUEM4eHgKClRpbXVyIFRhYmkgPHRpbXVyQGZyZWVzY2FsZS5jb20+CgoJTVBDODM0OUUtbUlUWAkJTVBDODM0OQoJTVBDODM0OUUtbUlUWC1HUAlNUEM4MzQ5CgpLaW0gUGhpbGxpcHMgPGtpbS5waGlsbGlwc0BmcmVlc2NhbGUuY29tPgoKCU1QQzgzNDlFTURTCQlNUEM4MzQ5CgpEYXZlIExpdSA8ZGF2ZWxpdUBmcmVlc2NhbGUuY29tPgoKCU1QQzgzNjBFTURTCQlNUEM4MzYwCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpVbmtub3duIC8gb3JwaGFuZWQgYm9hcmRzOgoKCUFEUzg2MAkJCU1QQzh4eAoJRkFEUzgyMwkJCU1QQzh4eAoJRkFEUzg1MFNBUgkJTVBDOHh4CglGQURTODYwVAkJTVBDOHh4CglHRU5JRVRWCQkJTVBDOHh4CglJQUQyMTAJCQlNUEM4eHgKCU1CWAkJCU1QQzh4eAoJTUJYODYwVAkJCU1QQzh4eAoJTlg4MjMJCQlNUEM4eHgKCVJQWENsYXNzaWMJCU1QQzh4eAoJUlBYbGl0ZQkJCU1QQzh4eAoKCUVSSUMJCQlQUEM0eHgKCglNT1VTU0UJCQlNUEM4MjR4CgoJUlBYc3VwZXIJCU1QQzgyNjAKCXJzZHByb3RvCQlNUEM4MjYwCgoJRVZCNjQyNjAJCU1QQzd4eF83NHh4CgoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIEFSTSBTeXN0ZW1zOgkJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQkJQ1BVCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKClJvd2VsIEF0aWVuemEgPHJvd2VsQGRpd2FsYWJzLmNvbT4KCglhcm1hZGlsbG8JCUFSTTcyMFQKClJpc2hpIEJoYXR0YWNoYXJ5YSA8cmlzaGlAdGkuY29tPgoKCW9tYXA1OTEyb3NrCQlBUk05MjZFSlMKCkNsaWZmIEJyYWtlIDxjbGlmZi5icmFrZUBnbWFpbC5jb20+CgoJcHhhMjU1X2lkcAkJeHNjYWxlCgpSaWNrIEJyb25zb24gPHJpY2tAZWZuLm9yZz4KCglBVDkxUk05MjAwREsJCWF0OTFybTkyMDAKCkdlb3JnZSBHLiBEYXZpcyA8Z2RhdmlzQG12aXN0YS5jb20+CgoJYXNzYWJldAkJCVNBMTEwMAoJZ2NwbHVzCQkJU0ExMTAwCgpUaG9tYXMgRWxzdGUgPGluZm9AZWxzdGUub3JnPgoKCW1vZG5ldDUwCQlBUk03MjBUIChORVQrNTApCgpQZXRlciBGaWd1bGkgPHBlcG9zaEBldGMuc2s+CgoJd2VwZXAyNTAJCXhzY2FsZQoKTWFyaXVzIEdy9mdlciA8bWFnQHN5c2dvLmRlPgoKCWltcGE3CQkJQVJNNzIwVCAoRVA3MjExKQoJZXA3MzEyCQkJQVJNNzIwVCAoRVA3MzEyKQoKS3NoaXRpaiBHdXB0YSA8a3NoaXRpakB0aS5jb20+CgoJb21hcDE1MTBpbm4JCUFSTTkyNVQKCW9tYXAxNjEwaW5uCQlBUk05MjZFSlMKCkt5bGUgSGFycmlzIDxraGFycmlzQG5leHVzLXRlY2gubmV0PgoKCWx1YmJvY2sJCQl4c2NhbGUKCWNyYWRsZQkJCXhzY2FsZQoJaXhkcDQyNQkJCXhzY2FsZQoKR2FyeSBKZW5uZWpvaG4gPGdqQGRlbnguZGU+CgoJc21kazI0MDAJCUFSTTkyMFQKCXRyYWIJCQlBUk05MjBUCgpOaXNoYW50IEthbWF0IDxuc2thbWF0QHRpLmNvbT4KCglvbWFwMTYxMGgyCQlBUk05MjZFSlMKClByYWthc2ggS3VtYXIgPHByYWthc2hAZW1iZWR4LmNvbT4KCgljZXJmMjUwCQkJeHNjYWxlCgpEYXZpZCBN/GxsZXIgPGQubXVlbGxlckBlbHNvZnQuY2g+CgoJc21kazI0MTAJCUFSTTkyMFQKCVZDTUE5CQkJQVJNOTIwVAoKUm9sZiBPZmZlcm1hbm5zIDxyb2ZAc3lzZ28uZGU+CgoJc2hhbm5vbgkJCVNBMTEwMAoKRGF2ZSBQZXZlcmxleSA8ZHBldmVybGV5QG1wYy1kYXRhLmNvLnVrPgoKCW9tYXA3MzBwMgkJQVJNOTI2RUpTCgpTdGVmYW4gUm9lc2UgPHNyQGRlbnguZGU+CgoJaXhkcGc0MjUJCXhzY2FsZQoJcGRuYjMJCQl4c2NhbGUKCXNjcHUJCQl4c2NhbGUKClJvYmVydCBTY2h3ZWJlbCA8ci5zY2h3ZWJlbEBwZW5ndXRyb25peC5kZT4KCgljc2IyMjYJCQl4c2NhbGUKCWlubm9rb20JCQl4c2NhbGUKCkFuZHJlYSBTY2lhbiA8YW5kcmVhLnNjaWFuQGRhdmUtdGVjaC5pdD4KCglCMgkJCUFSTTdURE1JIChTM0M0NEIwWCkKCkdyZWcgVW5nZXJlciA8Z3JlZy51bmdlcmVyQG9wZW5nZWFyLmNvbT4KCgljbTQwMDgJCQlrczg2OTVwCgljbTQxMTYJCQlrczg2OTVwCgljbTQxNDgJCQlrczg2OTVwCgpSaWNoYXJkIFdvb2RydWZmIDxyLXdvb2RydWZmMkB0aS5jb20+CgoJb21hcDI0MjBoNAkJQVJNMTEzNkVKUwoKQWxleCBa/HBrZSA8YXp1QHN5c2dvLmRlPgoKCWxhcnQJCQlTQTExMDAKCWRucDExMTAJCQlTQTExMTAKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyB4ODYgU3lzdGVtczoJCQkJCQkJCSMKIwkJCQkJCQkJCSMKIyBNYWludGFpbmVyIE5hbWUsIEVtYWlsIEFkZHJlc3MJCQkJCSMKIwlCb2FyZAkJCUNQVQkJCQkJIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgpEYW5pZWwgRW5nc3Ry9m0gPGRhbmllbEBvbWljcm9uLnNlPgoKCXNjNTIwX2NkcAkJeDg2CgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgTUlQUyBTeXN0ZW1zOgkJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQkJQ1BVCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCldvbGZnYW5nIERlbmsgPHdkQGRlbnguZGU+CgoJaW5jYWlwCQkJTUlQUzMyIDRLYwoJcHVycGxlCQkJTUlQUzY0IDVLYwoKVGhvbWFzIExhbmdlIDx0aG9tYXNAY29yZWxhdHVzLnNlPgoJZGJhdTF4MDAJCU1JUFMzMiBBdTEwMDAKCWd0aDIJCQlNSVBTMzIgQXUxMDAwCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgTmlvcy0zMiBTeXN0ZW1zOgkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCQlDUFUJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKU3RlcGhhbiBMaW56IDxsaW56QGxpLXByby5uZXQ+CgoJREsxUzEwCQkJTmlvcy0zMgoJQUROUEVTQzEJCU5pb3MtMzIKClNjb3R0IE1jTnV0dCA8c21jbnV0dEBwc3llbnQuY29tPgoKCURLMUMyMAkJCU5pb3MtMzIKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBOaW9zLUlJIFN5c3RlbXM6CQkJCQkJCSMKIwkJCQkJCQkJCSMKIyBNYWludGFpbmVyIE5hbWUsIEVtYWlsIEFkZHJlc3MJCQkJCSMKIwlCb2FyZAkJCUNQVQkJCQkJIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgpTY290dCBNY051dHQgPHNtY251dHRAcHN5ZW50LmNvbT4KCglQQ0k1NDQxCQkJTmlvcy1JSQoJUEsxQzIwCQkJTmlvcy1JSQoJRVAxQzIwCQkJTmlvcy1JSQoJRVAxUzEwCQkJTmlvcy1JSQoJRVAxUzQwCQkJTmlvcy1JSQoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIE1pY3JvQmxhemUgU3lzdGVtczoJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQkJQ1BVCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCllhc3VzaGkgU2hvamkgPHlhc2hpQGF0bWFyay10ZWNobm8uY29tPgoKCVNVWkFLVQkJCU1pY3JvQmxhemUKCk1pY2hhbCBTaW1layA8bW9uc3RyQG1vbnN0ci5ldT4KCglNTDQwMQkJCU1pY3JvQmxhemUKCVhVUFYyUAkJCU1pY3JvQmxhemUKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBDb2xkZmlyZSBTeXN0ZW1zOgkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCQlDUFUJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKTWF0dGhpYXMgRnVjaHMgPG1hdHRoaWFzLmZ1Y2hzQGVzZC1lbGVjdHJvbmljcy5jb20+CgoJVEFTUkVHCQkJTUNGNTI0OQoKWmFjaGFyeSBQLiBMYW5kYXUgPHphY2hhcnkubGFuZGF1QGxhYnh0ZWNobm9sb2dpZXMuY29tPgoKCXI1MjAwCQkJbWNmNTJ4MgoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIEFWUjMyIFN5c3RlbXM6CQkJCQkJCSMKIwkJCQkJCQkJCSMKIyBNYWludGFpbmVyIE5hbWUsIEVtYWlsIEFkZHJlc3MJCQkJCSMKIwlCb2FyZAkJCUNQVQkJCQkJIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgpIYWF2YXJkIFNraW5uZW1vZW4gPGhza2lubmVtb2VuQGF0bWVsLmNvbT4KCglBVFNUSzEwMDAJCUFUMzJBUDcwMDAKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBFbmQgb2YgTUFJTlRBSU5FUlMgbGlzdAkJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwo=