IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojCQkJCQkJCQkJIwojIFJlZ3VsYXIgTWFpbnRhaW5lcnMgZm9yIFUtQm9vdCBib2FyZCBzdXBwb3J0OgkJCQkjCiMJCQkJCQkJCQkjCiMgRm9yIGFueSBib2FyZCB3aXRob3V0IHBlcm1hbmVudCBtYWludGFpbmVyLCBwbGVhc2UgY29udGFjdAkJIwojCVdvbGZnYW5nIERlbmsgPHdkQGRlbnguZGU+CQkJCQkjCiMgYW5kIENjOiB0aGUgPFUtQm9vdC1Vc2Vyc0BsaXN0cy5zb3VyY2Vmb3JnZS5uZXQ+IG1haWxpbmcgbGlzdHMuCSMKIwkJCQkJCQkJCSMKIyBOb3RlOiBsaXN0cyBzb3J0ZWQgYnkgTWFpbnRhaW5lciBOYW1lCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgUG93ZXJQQyBTeXN0ZW1zOgkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCQlDUFUJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKR3JlZyBBbGxlbiA8Z2FsbGVuQGFybHV0LnV0ZXhhcy5lZHU+CgoJVVRYODI0NQkJCU1QQzgyNDUKClBhbnRlbGlzIEFudG9uaW91IDxwYW50b0BpbnRyYWNvbS5ncj4KCglORVRWSUEJCQlNUEM4eHgKClJlaW5oYXJkIEFybHQgPHJlaW5oYXJkLmFybHRAZXNkLWVsZWN0cm9uaWNzLmNvbT4KCglDUENJNzUwCQkJUFBDNzUwRlgvR1gKCll1bGkgQmFyY29oZW4gPHl1bGlAYXJhYmVsbGFzdy5jb20+CgoJQWRkZXIJCQlNUEM4N3gvTVBDODUyVAoJZXA4MjQ4CQkJTVBDODI0OAoJSVNQQU4JCQlNUEM4MjYwCglNUEM4MjYwQURTCQlNUEM4MjZ4L01QQzgyN3gvTVBDODI4MAoJUmF0dGxlcgkJCU1QQzgyNDgKCVpQQzE5MDAJCQlNUEM4MjY1CgpKZXJyeSBWYW4gQmFyZW4gPGdlcmFsZC52YW5iYXJlbkBzbWl0aHMtYWVyb3NwYWNlLmNvbT4KCglzYWNzbmcJCQlNUEM4MjYwCgpSaWNrIEJyb25zb24gPHJpY2tAZWZuLm9yZz4KCglBVDkxUk05MjAwREsJCWF0OTFybTkyMDAKCk9saXZlciBCcm93biA8b2Jyb3duQGFkdmVudG5ldHdvcmtzLmNvbT4KCglndzgyNjAJCQlNUEM4MjYwCgpDb25uIENsYXJrIDxjbGFya0Blc3RlZW0uY29tPgoKCUVTVEVFTTE5MkUJCU1QQzh4eAoKS+FyaSBEYXbt8HNzb24gPGtkQGZsYWdhLmlzPgoKCUZMQUdBRE0JCQlNUEM4MjMKClRvcnN0ZW4gRGVta2UgPHRvcnN0ZW4uZGVta2VAZmNpLmNvbT4KCgllWGFsaW9uCQkJTVBDODI0eAoKV29sZmdhbmcgRGVuayA8d2RAZGVueC5kZT4KCglJY2VDdWJlXzUxMDAJCU1HVDUxMDAKCUljZUN1YmVfNTIwMAkJTVBDNTIwMAoKCUFNWDg2MAkJCU1QQzg2MAoJRVRYMDk0CQkJTVBDODUwCglGUFM4NTBMCQkJTVBDODUwCglGUFM4NjBMCQkJTVBDODYwCglJQ1U4NjIJCQlNUEM4NjIKCUlQODYwCQkJTVBDODYwCglJVk1MMjQJCQlNUEM4NjAKCUlWTUwyNF8xMjgJCU1QQzg2MAoJSVZNTDI0XzI1NgkJTVBDODYwCglJVk1TOAkJCU1QQzg2MAoJSVZNUzhfMTI4CQlNUEM4NjAKCUlWTVM4XzI1NgkJTVBDODYwCglMQU5URUMJCQlNUEM4NTAKCUxXTU9OCQkJTVBDODIzCglOQzY1MAkJCU1QQzg1MgoJUjM2ME1QSQkJCU1QQzgyMwoJUk1VCQkJTVBDODUwCglSUnZpc2lvbgkJTVBDODIzCglTTTg1MAkJCU1QQzg1MAoJU1BEODIzVFMJCU1QQzgyMwoJVFFNODIzTAkJCU1QQzgyMwoJVFFNODIzTF9MQ0QJCU1QQzgyMwoJVFFNODUwTAkJCU1QQzg1MAoJVFFNODU1TAkJCU1QQzg1NQoJVFFNODYwTAkJCU1QQzg2MAoJVFFNODYwTF9GRUMJCU1QQzg2MAoJYzJtb24JCQlNUEM4NTUKCWhlcm1lcwkJCU1QQzg2MAoJbHdtb24JCQlNUEM4MjMKCXBjdV9lCQkJTVBDODU1CgoJQ1U4MjQJCQlNUEM4MjQwCglTYW5kcG9pbnQ4MjQwCQlNUEM4MjQwCglTTDgyNDUJCQlNUEM4MjQ1CgoJQVRDCQkJTVBDODI1MAoJUE04MjUJCQlNUEM4MjUwCgoJVFFNODI1NQkJCU1QQzgyNTUKCglDUFU4NgkJCU1QQzgyNjAKCVBNODI2CQkJTVBDODI2MAoJVFFNODI2MAkJCU1QQzgyNjAKCglQM0c0CQkJTVBDNzQxMAoKCVBDSVBQQzIJCQlNUEM3NTAKCVBDSVBQQzYJCQlNUEM3NTAKCglFWEJJVEdFTgkJUFBDNDA1R1AKCkpvbiBEaWVrZW1hIDxqb24uZGlla2VtYUBzbWl0aHMtYWVyb3NwYWNlLmNvbT4KCglzYmM4MjYwCQkJTVBDODI2MAoKRGF2ZSBFbGxpcyA8REdFQHNpeG5ldGlvLmNvbT4KCglTWE5JODU1VAkJTVBDOHh4CgpUaG9tYXMgRnJpZWRlbiA8VGhvbWFzRkBoeXBlcmlvbi1lbnRlcnRhaW5tZW50LmNvbT4KCglBbWlnYU9uZUczU0UJCU1QQzd4eAoKTWF0dGhpYXMgRnVjaHMgPG1hdHRoaWFzLmZ1Y2hzQGVzZC1lbGVjdHJvbmljcy5jb20+CgoJQURDSU9QCQkJSU9QNDgwIChQUEM0MDEpCglBUEM0MDUJCQlQUEM0MDVHUAoJQVI0MDUJCQlQUEM0MDVHUAoJQVNINDA1CQkJUFBDNDA1RVAKCUNBTkJUCQkJUFBDNDA1Q1IKCUNQQ0k0MDUJCQlQUEM0MDVHUAoJQ1BDSTQwNTIJCVBQQzQwNUdQCglDUENJNDA1QUIJCVBQQzQwNUdQCglDUENJNDA1RFQJCVBQQzQwNUdQCglDUENJNDQwCQkJUFBDNDQwR1AKCUNQQ0lJU0VSNAkJUFBDNDA1R1AKCURBU0FfU0lNCQlJT1A0ODAgKFBQQzQwMSkKCURQNDA1CQkJUFBDNDA1RVAKCURVNDA1CQkJUFBDNDA1R1AKCUcyMDAwCQkJUFBDNDA1RVAKCUhINDA1CQkJUFBDNDA1RVAKCUhVQjQwNQkJCVBQQzQwNUVQCglPQ1JUQwkJCVBQQzQwNUdQCglPUlNHCQkJUFBDNDA1R1AKCVBDSTQwNQkJCVBQQzQwNUdQCglQTFU0MDUJCQlQUEM0MDVFUAoJUE1DNDA1CQkJUFBDNDA1R1AKCVZPSDQwNQkJCVBQQzQwNUVQCglWT000MDUJCQlQUEM0MDVFUAoJV1VINDA1CQkJUFBDNDA1RVAKCkZyYW5rIEdvdHRzY2hsaW5nIDxmZ290dHNjaGxpbmdAZWx0ZWMuZGU+CgoJTUhQQwkJCU1QQzh4eAoKCUJBQjd4eAkJCU1QQzc0MC9NUEM3NTAKCldvbGZnYW5nIEdyYW5kZWdnZXIgPHdnQGRlbnguZGU+CgoJQ0NNCQkJTVBDODU1CgoJUE42MgkJCU1QQzgyNDAKCglJUEhBU0U0NTM5CQlNUEM4MjYwCglTQ00JCQlNUEM4MjYwCgpIb3dhcmQgR3JheSA8bXZzZW5zb3JAbWF0cml4LXZpc2lvbi5kZT4KCglNVlMxCQkJTVBDODIzCgpLbGF1cyBIZXlkZWNrIDxoZXlkZWNrQGtpZWJhY2stcGV0ZXIuZGU+CgoJS1VQNEsJCQlNUEM4NTUKCUtVUDRYCQkJTVBDODU5CgpNdXJyYXkgSmVuc2VuIDxNdXJyYXkuSmVuc2VuQGNtc3QuY3Npcm8uYXU+CgoJY29nZW50X21wYzh4eAkJTVBDOHh4CgoJY29nZW50X21wYzgyNjAJCU1QQzgyNjAKCWh5bW9kCQkJTVBDODI2MAoKQnJhZCBLZW1wIDxCcmFkLktlbXBAc2VyYW5vYS5jb20+CgoJcHBtYzgyNjAJCU1QQzgyNjAKClNhbmdtb29uIEtpbSA8ZG9nb2lsQGV0aW5zeXMuY29tPgoKCWRlYnJpcwkJCU1QQzgyNDUKClRob21hcyBMYW5nZSA8dGhvbWFzQGNvcmVsYXR1cy5zZT4KCglHVEgJCQlNUEM4NjAKClRoZSBMRU9YIHRlYW0gPHRlYW1AbGVveC5vcmc+CgoJRUxQVDg2MAkJCU1QQzg2MFQKCk55ZSBMaXUgPG55ZXRAenVtYW5ldHdvcmtzLmNvbT4KCglaVU1BCQkJTVBDN3h4Xzc0eHgKCkpvbiBMb2VsaWdlciA8amRsQGZyZWVzY2FsZS5jb20+CgoJTVBDODU0MEFEUwkJTVBDODU0MAoJTVBDODU2MEFEUwkJTVBDODU2MAoJTVBDODU0MUNEUwkJTVBDODU0MQoJTVBDODU1NUNEUwkJTVBDODU1NQoKRGFuIE1hbGVrIDxkYW5AZW1iZWRkZWRlZGdlLmNvbT4KCglTVHhHUDMJCQlNUEM4NXh4CgpFcmFuIE1hbiA8ZXJhbkBuYmFzZS5jby5pbD4KCglFVkI2NDI2MF83NTBDWAkJTVBDNzUwQ1gKCkFuZHJlYSAibGxhbmRyZSIgTWFyc29uIDxhbmRyZWEubWFyc29uQGRhdmUtdGVjaC5pdD4KCglQUENoYW1lbGVvbkVWQglQUEM0MDVFUAoKUmVpbmhhcmQgTWV5ZXIgPHIubWV5ZXJAZW1rLWVsZWt0cm9uaWsuZGU+CgoJVE9QODYwCQkJTVBDODYwVAoJVE9QNTIwMAkJCU1QQzUyMDAKClRvbHVuYXkgT3JrdW4gPHRvcmt1bkBuZXh0aW8uY29tPgoKCWNzYjI3MgkJCVBQQzQwNUdQCgljc2I0NzIJCQlQUEM0MDVHUAoKS2VpdGggT3V0d2F0ZXIgPEtlaXRoX091dHdhdGVyQG12aXMuY29tPgoKCUdFTjg2MFQJCQlNUEM4NjBUCglHRU44NjBUX1NDCQlNUEM4NjBUCgpGcmFuayBQYW5ubyA8ZnBhbm5vQGRlbHBoaW50ZWNoLmNvbT4KCgllcDgyNjAJCQlNUEM4MjYwCgpQZXRlciBQZWFyc2UgPHBldGVyLnBlYXJzZUBhcm0uY29tPgoKCUludGVncmF0b3IvQVAJCUNNIDkyNkVKLVMsIENNN3gwVCwgQ005eDBUCglJbnRlZ3JhdG9yL0NQCQlDTSA5MjZFSi1TICBDTTkyMFQsIENNOTQwVCwgQ005MjJULVhBMTAKCVZlcnNhdGlsZS9BQgkJQVJNOTI2RUotUwoJVmVyc2F0aWxlL1BCCQlBUk05MjZFSi1TCgpEZW5pcyBQZXRlciA8ZC5wZXRlckBtcGwuY2g+CgoJTUlQNDA1CQkJUFBDNHh4CglQSVA0MDUJCQlQUEM0eHgKCkRhbmllbCBQb2lyb3QgPGRhbi5wb2lyb3RAd2luZHJpdmVyLmNvbT4KCglzYmM4MjQwCQkJTVBDODI0MAoJc2JjNDA1CQkJUFBDNDA1R1AKClN0ZWZhbiBSb2VzZSA8c3JAZGVueC5kZT4KCgliYW1ib28JCQlQUEM0NDBFUAoJYnVuYmluZ2EJCVBQQzQwNUVQCgllYm9ueQkJCVBQQzQ0MEdQCglvY290ZWEJCQlQUEM0NDBHWAoJc3ljYW1vcmUJCVBQQzQwNUdQcgoJd2FsbnV0CQkJUFBDNDA1R1AKCXllbGxvd3N0b25lCQlQUEM0NDBHUgoJeW9zZW1pdGUJCVBQQzQ0MEVQCgpZdXNkaSBTYW50b3NvIDx5dXNkaV9zYW50b3NvQGFkYXB0ZWMuY29tPgoKCUhJRERFTl9EUkFHT04JTVBDODI0MS9NUEM4MjQ1CgpUcmF2aXMgU2F3eWVyICh0cmF2aXMuc2F3eWVyQHNhbmRidXJzdC5jb20+CgoJWFBFRElURTFLCQlQUEM0NDBHWAoKUGV0ZXIgRGUgU2NocmlqdmVyIDxwMkBtaW5kLmJlPgoKCU1MMgkJCVBQQzR4eAoKRXJpayBUaGVpc2VuIDxldGhlaXNlbkBtaW5kc3ByaW5nLmNvbT4KCglXN09MTUMJCQlQUEM0eHgKCVc3T0xNRwkJCVBQQzR4eAoKSmltIFRob21wc29uIDxqaW1AbXVzZW5raS5jb20+CgoJTVVTRU5LSQkJCU1QQzgyNDUvODI0MQoJU2FuZHBvaW50ODI0NQkJTVBDODI0NQoKUnVuZSBUb3JnZXJzZW4gPHJ1bmV0QGlubm92c3lzLmNvbT4KCglNUEM4MjY2QURTCQlNUEM4MjY2CgpKb3NlZiBXYWduZXIgPFdhZ25lckBNaWNyb3N5cy5kZT4KCglDUEM0NQkJCU1QQzgyNDUKCVBNNTIwCQkJTVBDNTIwMAoKU3RlcGhlbiBXaWxsaWFtcyA8c3RldmVAaWNhcnVzLmNvbT4KCglKU0UJCQlQUEM0MDVHUHIKCkpvaG4gWmhhbiA8emhhbnpAc2lub3ZlZS5jb20+CgoJc3ZtX3NjOHh4CQlNUEM4eHgKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KClVua25vd24gLyBvcnBoYW5lZCBib2FyZHM6CgoJQURTODYwCQkJTVBDOHh4CglGQURTODIzCQkJTVBDOHh4CglGQURTODUwU0FSCQlNUEM4eHgKCUZBRFM4NjBUCQlNUEM4eHgKCUdFTklFVFYJCQlNUEM4eHgKCUlBRDIxMAkJCU1QQzh4eAoJTUJYCQkJTVBDOHh4CglNQlg4NjBUCQkJTVBDOHh4CglOWDgyMwkJCU1QQzh4eAoJUlBYQ2xhc3NpYwkJTVBDOHh4CglSUFhsaXRlCQkJTVBDOHh4CgoJQ1JBWUwxCQkJUFBDNHh4CglFUklDCQkJUFBDNHh4CgoJTU9VU1NFCQkJTVBDODI0eAoKCVJQWHN1cGVyCQlNUEM4MjYwCglyc2Rwcm90bwkJTVBDODI2MAoKCUVWQjY0MjYwCQlNUEM3eHhfNzR4eAoKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBBUk0gU3lzdGVtczoJCQkJCQkJCSMKIwkJCQkJCQkJCSMKIyBNYWludGFpbmVyIE5hbWUsIEVtYWlsIEFkZHJlc3MJCQkJCSMKIwlCb2FyZAkJCUNQVQkJCQkJIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgpSaXNoaSBCaGF0dGFjaGFyeWEgPHJpc2hpQHRpLmNvbT4KCglvbWFwNTkxMm9zawkJQVJNOTI2RUpTCgpHZW9yZ2UgRy4gRGF2aXMgPGdkYXZpc0BtdmlzdGEuY29tPgoKCWFzc2FiZXQJCQlTQTExMDAKCWdjcGx1cwkJCVNBMTEwMAoKVGhvbWFzIEVsc3RlIDxpbmZvQGVsc3RlLm9yZz4KCgltb2RuZXQ1MAkJQVJNNzIwVCAoTkVUKzUwKQoKUGV0ZXIgRmlndWxpIDxwZXBvc2hAZXRjLnNrPgoKCXdlcGVwMjUwCQl4c2NhbGUKCk1hcml1cyBHcvZnZXIgPG1hZ0BzeXNnby5kZT4KCglpbXBhNwkJCUFSTTcyMFQgKEVQNzIxMSkKCWVwNzMxMgkJCUFSTTcyMFQgKEVQNzMxMikKCktzaGl0aWogR3VwdGEgPGtzaGl0aWpAdGkuY29tPgoKCW9tYXAxNTEwaW5uCQlBUk05MjVUCglvbWFwMTYxMGlubgkJQVJNOTI2RUpTCgpLeWxlIEhhcnJpcyA8a2hhcnJpc0BuZXh1cy10ZWNoLm5ldD4KCglsdWJib2NrCQkJeHNjYWxlCgljcmFkbGUJCQl4c2NhbGUKCWl4ZHA0MjUJCQl4c2NhbGUKCkdhcnkgSmVubmVqb2huIDxnakBkZW54LmRlPgoKCXNtZGsyNDAwCQlBUk05MjBUCgl0cmFiCQkJQVJNOTIwVAoKTmlzaGFudCBLYW1hdCA8bnNrYW1hdEB0aS5jb20+CgoJb21hcDE2MTBoMgkJQVJNOTI2RUpTCgpQcmFrYXNoIEt1bWFyIDxwcmFrYXNoQGVtYmVkeC5jb20+CgoJY2VyZjI1MAkJCXhzY2FsZQoKRGF2aWQgTfxsbGVyIDxkLm11ZWxsZXJAZWxzb2Z0LmNoPgoKCXNtZGsyNDEwCQlBUk05MjBUCglWQ01BOQkJCUFSTTkyMFQKClJvbGYgT2ZmZXJtYW5ucyA8cm9mQHN5c2dvLmRlPgoKCXNoYW5ub24JCQlTQTExMDAKCkRhdmUgUGV2ZXJsZXkgPGRwZXZlcmxleUBtcGMtZGF0YS5jby51az4KCglvbWFwNzMwcDIJCUFSTTkyNkVKUwoKUm9iZXJ0IFNjaHdlYmVsIDxyLnNjaHdlYmVsQHBlbmd1dHJvbml4LmRlPgoKCWNzYjIyNgkJCXhzY2FsZQoJaW5ub2tvbQkJCXhzY2FsZQoKQW5kcmVhIFNjaWFuIDxhbmRyZWEuc2NpYW5AZGF2ZS10ZWNoLml0PgoKCUIyCQkJQVJNN1RETUkgKFMzQzQ0QjBYKQoKR3JlZyBVbmdlcmVyIDxncmVnLnVuZ2VyZXJAb3BlbmdlYXIuY29tPgoKCWNtNDAwOAkJCWtzODY5NXAKCWNtNDExNgkJCWtzODY5NXAKCWNtNDE0OAkJCWtzODY5NXAKClJpY2hhcmQgV29vZHJ1ZmYgPHItd29vZHJ1ZmYyQHRpLmNvbT4KCglvbWFwMjQyMGg0CQlBUk0xMTM2RUpTCgpBbGV4IFr8cGtlIDxhenVAc3lzZ28uZGU+CgoJbGFydAkJCVNBMTEwMAoJZG5wMTExMAkJCVNBMTExMAoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIHg4NiBTeXN0ZW1zOgkJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQkJQ1BVCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCkRhbmllbCBFbmdzdHL2bSA8ZGFuaWVsQG9taWNyb24uc2U+CgoJc2M1MjBfY2RwCQl4ODYKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBNSVBTIFN5c3RlbXM6CQkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCQlDUFUJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKV29sZmdhbmcgRGVuayA8d2RAZGVueC5kZT4KCglpbmNhaXAJCQlNSVBTMzIgNEtjCglwdXJwbGUJCQlNSVBTNjQgNUtjCgpUaG9tYXMgTGFuZ2UgPHRob21hc0Bjb3JlbGF0dXMuc2U+CglkYmF1MXgwMAkJTUlQUzMyIEF1MTAwMAoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIE5pb3MtMzIgU3lzdGVtczoJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQkJQ1BVCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKClN0ZXBoYW4gTGlueiA8bGluekBsaS1wcm8ubmV0PgoKCURLMVMxMAkJCU5pb3MtMzIKCUFETlBFU0MxCQlOaW9zLTMyCgpTY290dCBNY051dHQgPHNtY251dHRAcHN5ZW50LmNvbT4KCglESzFDMjAJCQlOaW9zLTMyCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgTmlvcy1JSSBTeXN0ZW1zOgkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCQlDUFUJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKU2NvdHQgTWNOdXR0IDxzbWNudXR0QHBzeWVudC5jb20+CgoJUENJNTQ0MQkJCU5pb3MtSUkKCVBLMUMyMAkJCU5pb3MtSUkKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBNaWNyb0JsYXplIFN5c3RlbXM6CQkJCQkJCSMKIwkJCQkJCQkJCSMKIyBNYWludGFpbmVyIE5hbWUsIEVtYWlsIEFkZHJlc3MJCQkJCSMKIwlCb2FyZAkJCUNQVQkJCQkJIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgpZYXN1c2hpIFNob2ppIDx5YXNoaUBhdG1hcmstdGVjaG5vLmNvbT4KCglTVVpBS1UJCQlNaWNyb0JsYXplCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgQ29sZGZpcmUgU3lzdGVtczoJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQkJQ1BVCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCk1hdHRoaWFzIEZ1Y2hzIDxtYXR0aGlhcy5mdWNoc0Blc2QtZWxlY3Ryb25pY3MuY29tPgoKCVRBU1JFRwkJCU1DRjUyNDkKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBFbmQgb2YgTUFJTlRBSU5FUlMgbGlzdAkJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwo=