IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojCQkJCQkJCQkJIwojIFJlZ3VsYXIgTWFpbnRhaW5lcnMgZm9yIFUtQm9vdCBib2FyZCBzdXBwb3J0OgkJCQkjCiMJCQkJCQkJCQkjCiMgRm9yIGFueSBib2FyZCB3aXRob3V0IHBlcm1hbmVudCBtYWludGFpbmVyLCBwbGVhc2UgY29udGFjdAkJIwojCVdvbGZnYW5nIERlbmsgPHdkQGRlbnguZGU+CQkJCQkjCiMgYW5kIENjOiB0aGUgPHUtYm9vdEBsaXN0cy5kZW54LmRlPiBtYWlsaW5nIGxpc3QuCQkJIwojCQkJCQkJCQkJIwojIE5vdGU6IGxpc3RzIHNvcnRlZCBieSBNYWludGFpbmVyIE5hbWUJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBQb3dlclBDIFN5c3RlbXM6CQkJCQkJCSMKIwkJCQkJCQkJCSMKIyBNYWludGFpbmVyIE5hbWUsIEVtYWlsIEFkZHJlc3MJCQkJCSMKIwlCb2FyZAkJQ1BVCQkJCQkJIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgpQb29uYW0gQWdncndhbCA8cG9vbmFtLmFnZ3J3YWxAZnJlZXNjYWxlLmNvbT4KCglQMjAyMFJEQglQMjAyMAoKR3JlZyBBbGxlbiA8Z2FsbGVuQGFybHV0LnV0ZXhhcy5lZHU+CgoJVVRYODI0NQkJTVBDODI0NQoKUGFudGVsaXMgQW50b25pb3UgPHBhbnRvQGludHJhY29tLmdyPgoKCU5FVFZJQQkJTVBDOHh4CgpSZWluaGFyZCBBcmx0IDxyZWluaGFyZC5hcmx0QGVzZC1lbGVjdHJvbmljcy5jb20+CgoJY3BjaTUyMDAJTVBDNTIwMAoJbWVjcDUxMjMJTVBDNTEyMQoJbWVjcDUyMDAJTVBDNTIwMAoJcGY1MjAwCQlNUEM1MjAwCgoJY2FkZHkyCQlNUEM4MzQ5Cgl2bWU4MzQ5CQlNUEM4MzQ5CgoJQ1BDSTc1MAkJUFBDNzUwRlgvR1gKCll1bGkgQmFyY29oZW4gPHl1bGlAYXJhYmVsbGFzdy5jb20+CgoJQWRkZXIJCU1QQzg3eC9NUEM4NTJUCgllcDgyNDgJCU1QQzgyNDgKCUlTUEFOCQlNUEM4MjYwCglNUEM4MjYwQURTCU1QQzgyNngvTVBDODI3eC9NUEM4MjgwCglSYXR0bGVyCQlNUEM4MjQ4CglaUEMxOTAwCQlNUEM4MjY1CgpNaWNoYWVsIEJhcmtvd3NraSA8bWljaGFlbC5iYXJrb3dza2lAZnJlZXNjYWxlLmNvbT4KCglNUEM4MzIzRVJEQglNUEM4MzIzCgpKZXJyeSBWYW4gQmFyZW4gPGdlcmFsZC52YW5iYXJlbkBzbWl0aHMtYWVyb3NwYWNlLmNvbT4KCglzYWNzbmcJCU1QQzgyNjAKCk9saXZlciBCcm93biA8b2Jyb3duQGFkdmVudG5ldHdvcmtzLmNvbT4KCglndzgyNjAJCU1QQzgyNjAKCkNvbm4gQ2xhcmsgPGNsYXJrQGVzdGVlbS5jb20+CgoJRVNURUVNMTkyRQlNUEM4eHgKCkpvZSBEJ0FiYnJhY2NpbyA8bGpkMDE1QGZyZWVzY2FsZS5jb20+CgoJTVBDODM3eEVSREIJTVBDODM3eAoKS+FyaSBEYXbt8HNzb24gPGtkQGZsYWdhLmlzPgoKCUZMQUdBRE0JCU1QQzgyMwoKVG9yc3RlbiBEZW1rZSA8dG9yc3Rlbi5kZW1rZUBmY2kuY29tPgoKCWVYYWxpb24JCU1QQzgyNHgKCldvbGZnYW5nIERlbmsgPHdkQGRlbnguZGU+CgoJSWNlQ3ViZV81MTAwCU1HVDUxMDAKCUljZUN1YmVfNTIwMAlNUEM1MjAwCgoJQVJJQQkJTVBDNTEyMWUKCglBTVg4NjAJCU1QQzg2MAoJRVRYMDk0CQlNUEM4NTAKCUZQUzg1MEwJCU1QQzg1MAoJRlBTODYwTAkJTVBDODYwCglJQ1U4NjIJCU1QQzg2MgoJSVA4NjAJCU1QQzg2MAoJSVZNTDI0CQlNUEM4NjAKCUlWTUwyNF8xMjgJTVBDODYwCglJVk1MMjRfMjU2CU1QQzg2MAoJSVZNUzgJCU1QQzg2MAoJSVZNUzhfMTI4CU1QQzg2MAoJSVZNUzhfMjU2CU1QQzg2MAoJTEFOVEVDCQlNUEM4NTAKCUxXTU9OCQlNUEM4MjMKCU5DNjUwCQlNUEM4NTIKCVIzNjBNUEkJCU1QQzgyMwoJUk1VCQlNUEM4NTAKCVJSdmlzaW9uCU1QQzgyMwoJU004NTAJCU1QQzg1MAoJU1BEODIzVFMJTVBDODIzCglUUU04MjNMCQlNUEM4MjMKCVRRTTgyM0xfTENECU1QQzgyMwoJVFFNODUwTAkJTVBDODUwCglUUU04NTVMCQlNUEM4NTUKCVRRTTg2MEwJCU1QQzg2MAoJVFFNODYwTF9GRUMJTVBDODYwCgljMm1vbgkJTVBDODU1CgloZXJtZXMJCU1QQzg2MAoJbHdtb24JCU1QQzgyMwoJcGN1X2UJCU1QQzg1NQoKCUNVODI0CQlNUEM4MjQwCglTYW5kcG9pbnQ4MjQwCU1QQzgyNDAKCVNMODI0NQkJTVBDODI0NQoKCUFUQwkJTVBDODI1MAoJUE04MjUJCU1QQzgyNTAKCglUUU04MjU1CQlNUEM4MjU1CgoJQ1BVODYJCU1QQzgyNjAKCVBNODI2CQlNUEM4MjYwCglUUU04MjYwCQlNUEM4MjYwCgoJUDNHNAkJTVBDNzQxMAoKCVBDSVBQQzIJCU1QQzc1MAoJUENJUFBDNgkJTVBDNzUwCgoJRVhCSVRHRU4JUFBDNDA1R1AKCkpvbiBEaWVrZW1hIDxqb24uZGlla2VtYUBzbWl0aHMtYWVyb3NwYWNlLmNvbT4KCglzYmM4MjYwCQlNUEM4MjYwCgpEaXJrIEVpYmFjaCA8ZWliYWNoQGdkc3lzLmRlPgoKCWRldmNvbmNlbnRlcglQUEM0NjBFWAoJZGx2aXNpb24gICAgICAgIFBQQzQwNUVQCglnZHBwYzQ0MGV0eAlQUEM0NDBFUC9HUgoJaW50aXAJCVBQQzQ2MEVYCgluZW8JCVBQQzQwNUVQCgpEYXZlIEVsbGlzIDxER0VAc2l4bmV0aW8uY29tPgoKCVNYTkk4NTVUCU1QQzh4eAoKVGhvbWFzIEZyaWVkZW4gPFRob21hc0ZAaHlwZXJpb24tZW50ZXJ0YWlubWVudC5jb20+CgoJQW1pZ2FPbmVHM1NFCU1QQzd4eAoKTWF0dGhpYXMgRnVjaHMgPG1hdHRoaWFzLmZ1Y2hzQGVzZC1lbGVjdHJvbmljcy5jb20+CgoJQURDSU9QCQlJT1A0ODAgKFBQQzQwMSkKCUFQQzQwNQkJUFBDNDA1R1AKCUFSNDA1CQlQUEM0MDVHUAoJQVNINDA1CQlQUEM0MDVFUAoJQ0FOQlQJCVBQQzQwNUNSCglDUENJMkRQCQlQUEM0MDVHUAoJQ1BDSTQwNQkJUFBDNDA1R1AKCUNQQ0k0MDUyCVBQQzQwNUdQCglDUENJNDA1QUIJUFBDNDA1R1AKCUNQQ0k0MDVEVAlQUEM0MDVHUAoJQ1BDSUlTRVI0CVBQQzQwNUdQCglEQVNBX1NJTQlJT1A0ODAgKFBQQzQwMSkKCURQNDA1CQlQUEM0MDVFUAoJRFU0MDUJCVBQQzQwNUdQCglEVTQ0MAkJUFBDNDQwRVB4CglHMjAwMAkJUFBDNDA1RVAKCUhINDA1CQlQUEM0MDVFUAoJSFVCNDA1CQlQUEM0MDVFUAoJT0NSVEMJCVBQQzQwNUdQCglPUlNHCQlQUEM0MDVHUAoJUENJNDA1CQlQUEM0MDVHUAoJUExVNDA1CQlQUEM0MDVFUAoJUE1DNDA1CQlQUEM0MDVHUAoJUE1DNDA1REUJUFBDNDA1RVAKCVBNQzQ0MAkJUFBDNDQwRVB4CglWT0g0MDUJCVBQQzQwNUVQCglWT000MDUJCVBQQzQwNUVQCglXVUg0MDUJCVBQQzQwNUVQCglDTVM3MDAJCVBQQzQwNUVQCgpOaWtsYXVzIEdpZ2VyIDxuaWtsYXVzLmdpZ2VyQG5ldHN0YWwuY29tPgoKCUhDVTQJCVBQQzQwNUdQcgoJTUNVMjUJCVBQQzQwNUdQcgoJSENVNQkJUFBDNDQwRVB4CgpGcmFuayBHb3R0c2NobGluZyA8ZmdvdHRzY2hsaW5nQGVsdGVjLmRlPgoKCU1IUEMJCU1QQzh4eAoKCUJBQjd4eAkJTVBDNzQwL01QQzc1MAoKV29sZmdhbmcgR3JhbmRlZ2dlciA8d2dAZGVueC5kZT4KCglpcGVrMDEJCU1QQzUyMDAKCglDQ00JCU1QQzg1NQoKCVBONjIJCU1QQzgyNDAKCUlQSEFTRTQ1MzkJTVBDODI2MAoJU0NNCQlNUEM4MjYwCgpKb2UgSGFtbWFuIDxqb2UuaGFtbWFuQGVtYmVkZGVkc3BlY2lhbHRpZXMuY29tPgoKCXNiYzg1NDgJCU1QQzg1NDgKCXNiYzg2NDFkCU1QQzg2NDFECgpLbGF1cyBIZXlkZWNrIDxoZXlkZWNrQGtpZWJhY2stcGV0ZXIuZGU+CgoJS1VQNEsJCU1QQzg1NQoJS1VQNFgJCU1QQzg1OQoKSWxrbyBJbGlldiA8aWxpZXZAcm9uZXRpeC5hdD4KCglQTTkyNjEJCUFUOTFTQU05MjYxCglQTTkyNjMJCUFUOTFTQU05MjYzCgpHYXJ5IEplbm5lam9obiA8Z2FyeWpAZGVueC5kZT4KCglxdWFkMTAwaGQJUFBDNDA1RVAKCk11cnJheSBKZW5zZW4gPE11cnJheS5KZW5zZW5AY3Npcm8uYXU+CgoJY29nZW50X21wYzh4eAlNUEM4eHgKCgljb2dlbnRfbXBjODI2MAlNUEM4MjYwCgloeW1vZAkJTVBDODI2MAoKTGFycnkgSm9obnNvbiA8bHJqQGFjbS5vcmc+CgoJa29yYXQJCVBQQzQ0MEVQeAoKRmVuZyBLYW4gPGZrYW5AYW1jYy5jb20+CgoJcmVkd29vZAkJCVBQQzR4eAoKQnJhZCBLZW1wIDxCcmFkLktlbXBAc2VyYW5vYS5jb20+CgoJcHBtYzgyNjAJTVBDODI2MAoKU2FuZ21vb24gS2ltIDxkb2dvaWxAZXRpbnN5cy5jb20+CgoJZGVicmlzCQlNUEM4MjQ1CglLVk1FMDgwCQlNUEM4MjQ1CgpUaG9tYXMgTGFuZ2UgPHRob21hc0Bjb3JlbGF0dXMuc2U+CgoJR1RICQlNUEM4NjAKClJvYmVydCBMYXphcnNraSA8cm9iZXJ0bGF6YXJza2lAZ21haWwuY29tPgoKCUFUVU04NTQ4CU1QQzg1NDgKClRoZSBMRU9YIHRlYW0gPHRlYW1AbGVveC5vcmc+CgoJRUxQVDg2MAkJTVBDODYwVAoKR3Vlbm5hZGkgTGlha2hvdmV0c2tpIDxnLmxpYWtob3ZldHNraUBnbXguZGU+CgoJbGlua3N0YXRpb24JTVBDODI0MQoKRGF2ZSBMaXUgPGRhdmVsaXVAZnJlZXNjYWxlLmNvbT4KCglNUEM4MzE1RVJEQglNUEM4MzE1CglNUEM4MzJYRU1EUwlNUEM4MzJ4CglNUEM4MzYwRU1EUwlNUEM4MzYwCglNUEM4MzdYRU1EUwlNUEM4Mzd4CgpOeWUgTGl1IDxueWV0QHp1bWFuZXR3b3Jrcy5jb20+CgoJWlVNQQkJTVBDN3h4Xzc0eHgKCkt1bWFyIEdhbGEgPGt1bWFyLmdhbGFAZnJlZXNjYWxlLmNvbT4KCglNUEM4NTQwQURTCU1QQzg1NDAKCU1QQzg1NjBBRFMJTVBDODU2MAoJTVBDODU0MUNEUwlNUEM4NTQxCglNUEM4NTU1Q0RTCU1QQzg1NTUKCglNUEM4NjQxSFBDTglNUEM4NjQxRAoKUm9uIE1hZHJpZCA8aW5mb0BzaGVsZG9uaW5zdC5jb20+CgoJU0lNUEM4MzEzCU1QQzgzMTMKCkRhbiBNYWxlayA8ZGFuQGVtYmVkZGVkYWxsZXkuY29tPgoKCXN0eGdwMwkJTVBDODV4eAoJc3R4c3NhCQlNUEM4NXh4CglzdHh4dGMJCU1QQzh4eAoKRXJhbiBNYW4gPGVyYW5AbmJhc2UuY28uaWw+CgoJRVZCNjQyNjBfNzUwQ1gJTVBDNzUwQ1gKCkFuZHJlYSAibGxhbmRyZSIgTWFyc29uIDxhbmRyZWEubWFyc29uQGRhdmUtdGVjaC5pdD4KCglQUENoYW1lbGVvbkVWQglQUEM0MDVFUAoKUmVpbmhhcmQgTWV5ZXIgPHIubWV5ZXJAZW1rLWVsZWt0cm9uaWsuZGU+CgoJVE9QODYwCQlNUEM4NjBUCglUT1A1MjAwCQlNUEM1MjAwCgpUb2x1bmF5IE9ya3VuIDx0b3JrdW5AbmV4dGlvLmNvbT4KCgljc2IyNzIJCVBQQzQwNUdQCgljc2I0NzIJCVBQQzQwNUdQCgpKb2huIE90a2VuIDxqb3RrZW5Ac29mdGFkdmFuY2VzLmNvbT4KCglsdWFuCQlQUEM0NDBTUAoJdGFpaHUJCVBQQzQwNUVQCgpLZWl0aCBPdXR3YXRlciA8S2VpdGhfT3V0d2F0ZXJAbXZpcy5jb20+CgoJR0VOODYwVAkJTVBDODYwVAoJR0VOODYwVF9TQwlNUEM4NjBUCgpGcmFuayBQYW5ubyA8ZnBhbm5vQGRlbHBoaW50ZWNoLmNvbT4KCgllcDgyNjAJCU1QQzgyNjAKCkRlbmlzIFBldGVyIDxkLnBldGVyQG1wbC5jaD4KCglNSVA0MDUJCVBQQzR4eAoJUElQNDA1CQlQUEM0eHgKCktpbSBQaGlsbGlwcyA8a2ltLnBoaWxsaXBzQGZyZWVzY2FsZS5jb20+CgoJTVBDODM0OUVNRFMJTVBDODM0OQoKRGFuaWVsIFBvaXJvdCA8ZGFuLnBvaXJvdEB3aW5kcml2ZXIuY29tPgoKCXNiYzgyNDAJCU1QQzgyNDAKCXNiYzQwNQkJUFBDNDA1R1AKClJpY2FyZG8gUmliYWxkYSA8cmljYXJkby5yaWJhbGRhQHVhbS5lcz4KCgltbDUwNyAJCVBQQzQ0MHg1Cgl2NWZ4MzB0ZXZhbAlQUEM0NDB4NQoJeGlsaW54LXBwYzQwNS1nZW5lcmljCVBQQzQwNQoJeGlsaW54LXBwYzQ0MC1nZW5lcmljCVBQQzQ0MHg1CgpTdGVmYW4gUm9lc2UgPHNyQGRlbnguZGU+CgoJUDNNNzQ0OAkJTVBDNzQ0OAoKCXVjMTAwCQlNUEM4NTcKCglUUU04NXh4CQlNUEM4NTQwLzg1NDEvODU1NS84NTYwCgoJYWNhZGlhCQlQUEM0MDVFWgoJYWxwcgkJUFBDNDQwR1gKCWJhbWJvbwkJUFBDNDQwRVAKCWJ1bmJpbmdhCVBQQzQwNUVQCgljYW55b25sYW5kcwlQUEM0NjBFWAoJZWJvbnkJCVBQQzQ0MEdQCglnbGFjaWVyCQlQUEM0NjBHVAoJaGFsZWFrYWxhCVBQQzQwNUVYcgoJa2F0bWFpCQlQUEM0NDBTUGUKCWtpbGF1ZWEJCVBQQzQwNUVYCglsd21vbjUJCVBQQzQ0MEVQeAoJbWFrYWx1CQlQUEM0MDVFWAoJb2NvdGVhCQlQUEM0NDBHWAoJcDNwNDQwCQlQUEM0NDBHUAoJcGNzNDQwZXAJUFBDNDQwRVAKCXJhaW5pZXIJCVBQQzQ0MEdSeAoJc2VxdW9pYQkJUFBDNDQwRVB4CglzeWNhbW9yZQlQUEM0MDVHUHIKCXRhaXNoYW4JCVBQQzQ0MEdYCgl3YWxudXQJCVBQQzQwNUdQCgl5ZWxsb3dzdG9uZQlQUEM0NDBHUgoJeW9zZW1pdGUJUFBDNDQwRVAKCXpldXMJCVBQQzQwNUVQCgoJUDNNNzUwCQlQUEM3NTBGWC9HWC9HTAoKWXVzZGkgU2FudG9zbyA8eXVzZGlfc2FudG9zb0BhZGFwdGVjLmNvbT4KCglISURERU5fRFJBR09OCU1QQzgyNDEvTVBDODI0NQoKVHJhdmlzIFNhd3llciAodHJhdmlzLnNhd3llckBzYW5kYnVyc3QuY29tPgoKCUtBUkVGCQlQUEM0NDBHWAoJTUVUUk9CT1gJUFBDNDQwR1gKCkdlb3JnIFNjaGFyZHQgPHNjaGFyZHRAdGVhbS1jdGVjaC5kZT4KCglmeDEybW0JCVBQQzQwNQoKSGVpa28gU2Nob2NoZXIgPGhzQGRlbnguZGU+CgoJaWRzODI0NwkJTVBDODI0NwoJanVwaXRlcgkJTVBDNTIwMAoJa21ldGVyMQkJTVBDODM2MAoJa21zdXB4NAkJTVBDODUyVAoJbWdjb2dlCQlNUEM4MjQ3CgltZ3N1dmQJCU1QQzg1MgoJbXVjbWM1MgkJTVBDNTIwMAoJbXVhczMwMDEJTVBDODI3MAoJbXVuaWNzZQkJTVBDNTIwMAoJc2MzCQlQUEM0MDVHUAoJdWMxMDEJCU1QQzUyMDAKCgpQZXRlciBEZSBTY2hyaWp2ZXIgPHAyQG1pbmQuYmU+CgoJTUwyCQlQUEM0eHgKCkFuZHJlIFNjaHdhcnogPGFuZHJlLnNjaHdhcnpAbWF0cml4LXZpc2lvbi5kZT4KCgltdmJjX3AJCU1QQzUyMDAKCW12YmxtNwkJTVBDODM0MwoKSm9uIFNtaXJsIDxqb25zbWlybEBnbWFpbC5jb20+CgoJcGNtMDMwCQlNUEM1MjAwCgpUaW11ciBUYWJpIDx0aW11ckBmcmVlc2NhbGUuY29tPgoKCU1QQzgzNDlFLW1JVFgJTVBDODM0OQoJTVBDODM0OUUtbUlUWC1HUCBNUEM4MzQ5CgpFcmlrIFRoZWlzZW4gPGV0aGVpc2VuQG1pbmRzcHJpbmcuY29tPgoKCVc3T0xNQwkJUFBDNHh4CglXN09MTUcJCVBQQzR4eAoKSmltIFRob21wc29uIDxqaW1AbXVzZW5raS5jb20+CgoJTVVTRU5LSQkJTVBDODI0NS84MjQxCglTYW5kcG9pbnQ4MjQ1CU1QQzgyNDUKClJ1bmUgVG9yZ2Vyc2VuIDxydW5ldEBpbm5vdnN5cy5jb20+CgoJTVBDODI2NkFEUwlNUEM4MjY2CgpQZXRlciBUeXNlciA8cHR5c2VyQHhlcy1pbmMuY29tPgoKCVhQRURJVEUxMDAwCVBQQzQ0MEdYCglYUEVESVRFNTE3MAlNUEM4NjQwCglYUEVESVRFNTIwMAlNUEM4NTQ4CglYUEVESVRFNTM3MAlNUEM4NTcyCgpEYXZpZCBVcGRlZ3JhZmYgPGRhdmVAY3JheS5jb20+CgoJQ1JBWUwxCQlQUEM0eHgKCkFudG9uIFZvcm9udHNvdiA8YXZvcm9udHNvdkBydS5tdmlzdGEuY29tPgoKCU1QQzgzNjBFUkRLCU1QQzgzNjAKCkpvc2VmIFdhZ25lciA8V2FnbmVyQE1pY3Jvc3lzLmRlPgoKCUNQQzQ1CQlNUEM4MjQ1CglQTTUyMAkJTVBDNTIwMAoKU3RlcGhlbiBXaWxsaWFtcyA8c3RldmVAaWNhcnVzLmNvbT4KCglKU0UJCVBQQzQwNUdQcgoKUm95IFphbmcgPHRpZS1mZWkuemFuZ0BmcmVlc2NhbGUuY29tPgoKCW1wYzc0NDhocGMyCU1QQzc0NDgKCkpvaG4gWmhhbiA8emhhbnpAc2lub3ZlZS5jb20+CgoJc3ZtX3NjOHh4CU1QQzh4eAoKRGV0bGV2IFp1bmRlbCA8ZHp1QGRlbnguZGU+CgoJaW5rYTR4MAkJTVBDNTIwMAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKVW5rbm93biAvIG9ycGhhbmVkIGJvYXJkczoKCglBRFM4NjAJCU1QQzh4eAoJRkFEUzgyMwkJTVBDOHh4CglGQURTODUwU0FSCU1QQzh4eAoJRkFEUzg2MFQJTVBDOHh4CglHRU5JRVRWCQlNUEM4eHgKCUlBRDIxMAkJTVBDOHh4CglNQlgJCU1QQzh4eAoJTUJYODYwVAkJTVBDOHh4CglOWDgyMwkJTVBDOHh4CglSUFhDbGFzc2ljCU1QQzh4eAoJUlBYbGl0ZQkJTVBDOHh4CgoJRVJJQwkJUFBDNHh4CgoJTU9VU1NFCQlNUEM4MjR4CgoJUlBYc3VwZXIJTVBDODI2MAoJcnNkcHJvdG8JTVBDODI2MAoKCUVWQjY0MjYwCU1QQzd4eF83NHh4CgoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIEFSTSBTeXN0ZW1zOgkJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQlDUFUJCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKClJvd2VsIEF0aWVuemEgPHJvd2VsQGRpd2FsYWJzLmNvbT4KCglhcm1hZGlsbG8JQVJNNzIwVAoKU3RlZmFubyBCYWJpYyA8c2JhYmljQGRlbnguZGU+CgoJcG9sYXJpcwkJeHNjYWxlCgl0cml6ZXBzaXYJeHNjYWxlCgpEaXJrIEJlaG1lIDxkaXJrLmJlaG1lQGdtYWlsLmNvbT4KCglvbWFwM19iZWFnbGUJQVJNIENPUlRFWC1BOCAoT01BUDM1MzAgU29DKQoKRXJpYyBCZW5hcmQgPGVyaWNAZXVrcmVhLmNvbT4KCgljcHVhdDkxCQlBUk05MjBUCgljcHU5MjYwCQlBUk05MjZFSlMgKEFUOTFTQU05MjYwIFNvQykKCWNwdTlHMjAJCUFSTTkyNkVKUyAoQVQ5MVNBTTlHMjAgU29DKQoKUmlzaGkgQmhhdHRhY2hhcnlhIDxyaXNoaUB0aS5jb20+CgoJb21hcDU5MTJvc2sJQVJNOTI2RUpTCgpDbGlmZiBCcmFrZSA8Y2xpZmYuYnJha2VAZ21haWwuY29tPgoKCXB4YTI1NV9pZHAJeHNjYWxlCgpSaWNrIEJyb25zb24gPHJpY2tAZWZuLm9yZz4KCglBVDkxUk05MjAwREsJYXQ5MXJtOTIwMAoKUG8tWXUgQ2h1YW5nIDxyYXRiZXJ0QGZhcmFkYXktdGVjaC5jb20+CgoJYTMyMGV2YgkJRkE1MjYgKEFSTTkyMFQtbGlrZSkgKGEzMjAgU29DKQoKR2VvcmdlIEcuIERhdmlzIDxnZGF2aXNAbXZpc3RhLmNvbT4KCglhc3NhYmV0CQlTQTExMDAKCWdjcGx1cwkJU0ExMTAwCgpXb2xmZ2FuZyBEZW5rIDx3ZEBkZW54LmRlPgoJaW14MjdsaXRlCWkuTVgyNwoJcW9uZwkJaS5NWDMxCgpUaG9tYXMgRWxzdGUgPGluZm9AZWxzdGUub3JnPgoKCW1vZG5ldDUwCUFSTTcyMFQgKE5FVCs1MCkKCkZhYmlvIEVzdGV2YW0gPEZhYmlvLkVzdGV2YW1AZnJlZXNjYWxlLmNvbT4KCglteDMxcGRrCQlpLk1YMzEKClBldGVyIEZpZ3VsaSA8cGVwb3NoQGV0Yy5zaz4KCgl3ZXBlcDI1MAl4c2NhbGUKCkRhbmllbCBHb3JzdWxvd3NraSA8ZGFuaWVsLmdvcnN1bG93c2tpQGVzZC5ldT4KCgltZWVzYwkJQVJNOTI2RUpTIChBVDkxU0FNOTI2MyBTb0MpCgpTZWRqaSBHYW91YW91PHNlZGppLmdhb3Vhb3VAYXRtZWwuY29tPgoJYXQ5MXNhbTlnMTBlawkJQVJNOTI2RUpTIChBVDkxU0FNOUcxMCBTb0MpCglhdDkxc2FtOW0xMGc0NWVrCUFSTTkyNkVKUyAoQVQ5MVNBTTlHNDUgU29DKQoKTWFyaXVzIEdy9mdlciA8bWFnQHN5c2dvLmRlPgoKCWltcGE3CQlBUk03MjBUIChFUDcyMTEpCgllcDczMTIJCUFSTTcyMFQgKEVQNzMxMikKCktzaGl0aWogR3VwdGEgPGtzaGl0aWpAdGkuY29tPgoKCW9tYXAxNTEwaW5uCUFSTTkyNVQKCW9tYXAxNjEwaW5uCUFSTTkyNkVKUwoKR3JhenZ5ZGFzIElnbm90YXMgPG5vdGFzYXNAZ21haWwuY29tPgoKCW9tYXAzX3BhbmRvcmEJQVJNIENPUlRFWC1BOCAoT01BUDN4eCBTb0MpCgpHYXJ5IEplbm5lam9obiA8Z2FyeWpAZGVueC5kZT4KCglzbWRrMjQwMAlBUk05MjBUCgl0cmFiCQlBUk05MjBUCgpLb25zdGFudGluIEtsZXRzY2hrZSA8a2xldHNjaGtlQHN5bmVydHJvbml4eC5kZT4KCXNjYjkzMjgJCUFSTTkyMFQKClNpbW9uIEthZ3N0cm9tIDxzaW1vbi5rYWdzdHJvbUBuZXRpbnNpZ2h0Lm5ldD4KCiAgICAgICBvcGVucmRfYmFzZSAgICAgQVJNOTI2RUpTIChLaXJrd29vZCBTb0MpCgpOaXNoYW50IEthbWF0IDxuc2thbWF0QHRpLmNvbT4KCglvbWFwMTYxMGgyCUFSTTkyNkVKUwoKRnJlZGVyaWsgS3JpZXdpdHogPGZyZWRlcmlrQGtyaWV3aXR6LmV1PgoKCWRldmtpdDgwMDAJQVJNIENPUlRFWC1BOCAoT01BUDM1MzAgU29DKQoKU2VyZ2V5IEt1YnVzaHluIDxrc2lAa29pOC5uZXQ+CgoJRFYtRVZNCQlBUk05MjZFSlMKCVNPTkFUQQkJQVJNOTI2RUpTCglTQ0hNT09HSUUJQVJNOTI2RUpTCgpTYW5kZWVwIFBhdWxyYWogPHMtcGF1bHJhakB0aS5jb20+CgoJZGF2aW5jaV9kbTM1NWV2bQlBUk05MjZFSlMKCWRhdmluY2lfZG0zNTVsZW9wYXJkCUFSTTkyNkVKUwoJZGF2aW5jaV9kbTM2NWV2bQlBUk05MjZFSlMKCWRhdmluY2lfZG02NDY3ZXZtCUFSTTkyNkVKUwoKUHJha2FzaCBLdW1hciA8cHJha2FzaEBlbWJlZHguY29tPgoKCWNlcmYyNTAJCXhzY2FsZQoKU2VyZ2V5IExhcGluIDxzbGFwaW5Ab3NzZmFucy5vcmc+CgoJYWZlYjkyNjAJQVJNOTI2RUpTIChBVDkxU0FNOTI2MCBTb0MpCgpHdWVubmFkaSBMaWFraG92ZXRza2kgPGcubGlha2hvdmV0c2tpQGdteC5kZT4KCglpbXgzMV9waHljb3JlX2VldAlpLk1YMzEKCW14MzFhZHMJCQlpLk1YMzEKCVNNREs2NDAwCQlTM0M2NDAwCgpOaXNoYW50aCBNZW5vbiA8bm1AdGkuY29tPgoKCW9tYXAzX3NkcDM0MzAJQVJNIENPUlRFWC1BOCAoT01BUDN4eCBTb0MpCglvbWFwM196b29tMQlBUk0gQ09SVEVYLUE4IChPTUFQM3h4IFNvQykKCkRhdmlkIE38bGxlciA8ZC5tdWVsbGVyQGVsc29mdC5jaD4KCglzbWRrMjQxMAlBUk05MjBUCglWQ01BOQkJQVJNOTIwVAoKRXJpYyBNaWxsYnJhbmR0IDxlbWlsbGJyYW5kdEBkZWthcmVzZWFyY2guY29tPgoKCWdhbGF4eTUyMDAJbXBjNTIwMAoKUm9sZiBPZmZlcm1hbm5zIDxyb2ZAc3lzZ28uZGU+CgoJc2hhbm5vbgkJU0ExMTAwCgpLeXVuZ21pbiBQYXJrIDxreXVuZ21pbi5wYXJrQHNhbXN1bmcuY29tPgoKCWFwb2xsb24JCUFSTTExMzZFSlMKClBldGVyIFBlYXJzZSA8cGV0ZXIucGVhcnNlQGFybS5jb20+CglpbnRlZ3JhdG9yY3AJQWxsIGN1cnJlbnQgQVJNIHN1cHBsaWVkICYgc3VwcG9ydGVkIGNvcmUgbW9kdWxlcwoJCQktc2VlIGh0dHA6Ly93d3cuYXJtLmNvbS9wcm9kdWN0cy9EZXZUb29scy9IYXJkd2FyZV9QbGF0Zm9ybXMuaHRtbAoJdmVyc2F0aWxlCUFSTTkyNkVKLVMKCXZlcnNhdGlsZQlBUk05MjZFSi1TCgpEYXZlIFBldmVybGV5IDxkcGV2ZXJsZXlAbXBjLWRhdGEuY28udWs+CgoJb21hcDczMHAyCUFSTTkyNkVKUwoKTWFuaWthbmRhbiBQaWxsYWkgPG1hbmkucGlsbGFpQHRpLmNvbT4KCglvbWFwM19ldm0JQVJNIENPUlRFWC1BOCAoT01BUDN4eCBTb0MpCgpTdGVsaWFuIFBvcCA8c3RlbGlhbi5wb3BAbGVhZHRlY2hkZXNpZ24uY29tPgoKCWF0OTFjYXA5YWRrCUFSTTkyNkVKUyAoQVQ5MUNBUDkgU29DKQoJYXQ5MXNhbTkyNjBlawlBUk05MjZFSlMgKEFUOTFTQU05MjYwIFNvQykKCWF0OTFzYW05MjYxZWsJQVJNOTI2RUpTIChBVDkxU0FNOTI2MSBTb0MpCglhdDkxc2FtOTI2M2VrCUFSTTkyNkVKUyAoQVQ5MVNBTTkyNjMgU29DKQoJYXQ5MXNhbTlybGVrCUFSTTkyNkVKUyAoQVQ5MVNBTTlSTCBTb0MpCgpUb20gUml4IDxUb20uUml4QHdpbmRyaXZlci5jb20+CgoJb21hcDNfem9vbTIJQVJNIENPUlRFWC1BOCAoT01BUDN4eCBTb0MpCgpTdGVmYW4gUm9lc2UgPHNyQGRlbnguZGU+CgoJaXhkcGc0MjUJeHNjYWxlCglwZG5iMwkJeHNjYWxlCglzY3B1CQl4c2NhbGUKCkFsZXNzYW5kcm8gUnViaW5pIDxydWJpbmlAdW5pcHYuaXQ+Ck5vbWFkaWsgTGludXggVGVhbSA8U1ROX1dNTV9ub21hZGlrX2xpbnV4QGxpc3Quc3QuY29tPgoKCW5tZGs4ODE1CUFSTTkyNkVKUyAoTm9tYWRpayA4ODE1IFNvYykKClN0ZXZlIFNha29tYW4gPHNha29tYW5AZ21haWwuY29tPgoKCW9tYXAzX292ZXJvCUFSTSBDT1JURVgtQTggKE9NQVAzeHggU29DKQoKUm9iZXJ0IFNjaHdlYmVsIDxyLnNjaHdlYmVsQHBlbmd1dHJvbml4LmRlPgoKCWNzYjIyNgkJeHNjYWxlCglpbm5va29tCQl4c2NhbGUKCk1pY2hhZWwgU2Nod2luZ2VuIDxtaWNoYWVsQHNjaHdpbmdlbi5vcmc+CgoJYWN0dXgxCQl4c2NhbGUKCWFjdHV4MgkJeHNjYWxlCglhY3R1eDMJCXhzY2FsZQoJYWN0dXg0CQl4c2NhbGUKCkFuZHJlYSBTY2lhbiA8YW5kcmVhLnNjaWFuQGRhdmUtdGVjaC5pdD4KCglCMgkJQVJNN1RETUkgKFMzQzQ0QjBYKQoKTmljayBUaG9tcHNvbiA8bmljay50aG9tcHNvbkBnZWZhbnVjLmNvbT4KCglkYTgzMGV2bQlBUk05MjZFSlMgKERBODMwL09NQVAtTDEzNykKCkFsYmluIFRvbm5lcnJlIDxhbGJpbi50b25uZXJyZUBmcmVlLWVsZWN0cm9ucy5jb20+CgoJc2JjMzVfYTlnMjAJQVJNOTI2RUpTIChBVDkxU0FNOUcyMCBTb0MpCgl0bnlfYTkyNjAJQVJNOTI2RUpTIChBVDkxU0FNOTI2MCBTb0MpCgl0bnlfYTlnMjAJQVJNOTI2RUpTIChBVDkxU0FNOUcyMCBTb0MpCgpHcmVnIFVuZ2VyZXIgPGdyZWcudW5nZXJlckBvcGVuZ2Vhci5jb20+CgoJY200MDA4CQlrczg2OTVwCgljbTQxMTYJCWtzODY5NXAKCWNtNDE0OAkJa3M4Njk1cAoKSHVnbyBWaWxsZW5ldXZlIDxodWdvLnZpbGxlbmV1dmVAbHlydGVjaC5jb20+CgoJU0ZGU0RSCQlBUk05MjZFSlMKClByYWZ1bGxhIFdhZGFza2FyIDxwcmFmdWxsYUBtYXJ2ZWxsLmNvbT4KCgltdjg4ZjYyODFndHdfZ2UJQVJNOTI2RUpTIChLaXJrd29vZCBTb0MpCglyZDYyODFhCQlBUk05MjZFSlMgKEtpcmt3b29kIFNvQykKCXNoZWV2YXBsdWcJQVJNOTI2RUpTIChLaXJrd29vZCBTb0MpCgpSaWNoYXJkIFdvb2RydWZmIDxyLXdvb2RydWZmMkB0aS5jb20+CgoJb21hcDI0MjBoNAlBUk0xMTM2RUpTCgpBbGV4IFr8cGtlIDxhenVAc3lzZ28uZGU+CgoJbGFydAkJU0ExMTAwCglkbnAxMTEwCQlTQTExMTAKCk1pbmt5dSBLYW5nIDxtazcua2FuZ0BzYW1zdW5nLmNvbT4KCglTTURLQzEwMAlBUk0gQ09SVEVYLUE4IChTNVBDMTAwIFNvQykKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KClVua25vd24gLyBvcnBoYW5lZCBib2FyZHM6CiAJQm9hcmQJCUNQVQlMYXN0IGtub3duIG1haW50YWluZXIgLyBDb21tZW50Ci4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4KCWNyYWRsZQkJeHNjYWxlCUt5bGUgSGFycmlzIDxraGFycmlzQG5leHVzLXRlY2gubmV0PiAvIGRlYWQgYWRkcmVzcwoJaXhkcDQyNQkJeHNjYWxlCUt5bGUgSGFycmlzIDxraGFycmlzQG5leHVzLXRlY2gubmV0PiAvIGRlYWQgYWRkcmVzcwoJbHViYm9jawkJeHNjYWxlCUt5bGUgSGFycmlzIDxraGFycmlzQG5leHVzLXRlY2gubmV0PiAvIGRlYWQgYWRkcmVzcwoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIHg4NiBTeXN0ZW1zOgkJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQlDUFUJCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCkRhbmllbCBFbmdzdHL2bSA8ZGFuaWVsQG9taWNyb24uc2U+CgoJc2M1MjBfY2RwCXg4NgoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIE1JUFMgU3lzdGVtczoJCQkJCQkJCSMKIwkJCQkJCQkJCSMKIyBNYWludGFpbmVyIE5hbWUsIEVtYWlsIEFkZHJlc3MJCQkJCSMKIwlCb2FyZAkJQ1BVCQkJCQkJIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgpXb2xmZ2FuZyBEZW5rIDx3ZEBkZW54LmRlPgoKCWluY2FpcAkJTUlQUzMyIDRLYwoJcHVycGxlCQlNSVBTNjQgNUtjCgpUaG9tYXMgTGFuZ2UgPHRob21hc0Bjb3JlbGF0dXMuc2U+CglkYmF1MXgwMAlNSVBTMzIgQXUxMDAwCglndGgyCQlNSVBTMzIgQXUxMDAwCgpWbGFkIEx1bmd1IDx2bGFkLmx1bmd1QHdpbmRyaXZlci5jb20+CglxZW11X21pcHMJTUlQUzMyCgpTdGVmYW4gUm9lc2UgPHNyQGRlbnguZGU+CgoJdmN0X3h4eAkJTUlQUzMyIDRLYwoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIE5pb3MtMzIgU3lzdGVtczoJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQlDUFUJCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKClN0ZXBoYW4gTGlueiA8bGluekBsaS1wcm8ubmV0PgoKCURLMVMxMAkJTmlvcy0zMgoJQUROUEVTQzEJTmlvcy0zMgoKU2NvdHQgTWNOdXR0IDxzbWNudXR0QHBzeWVudC5jb20+CgoJREsxQzIwCQlOaW9zLTMyCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgTmlvcy1JSSBTeXN0ZW1zOgkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCUNQVQkJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKU2NvdHQgTWNOdXR0IDxzbWNudXR0QHBzeWVudC5jb20+CgoJUENJNTQ0MQkJTmlvcy1JSQoJUEsxQzIwCQlOaW9zLUlJCglFUDFDMjAJCU5pb3MtSUkKCUVQMVMxMAkJTmlvcy1JSQoJRVAxUzQwCQlOaW9zLUlJCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgTWljcm9CbGF6ZSBTeXN0ZW1zOgkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCUNQVQkJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKTWljaGFsIFNpbWVrIDxtb25zdHJAbW9uc3RyLmV1PgoKCW1pY3JvYmxhemUtZ2VuZXJpYwlNaWNyb0JsYXplCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgQ29sZGZpcmUgU3lzdGVtczoJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQlDUFUJCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCkhheWRlbiBGcmFzZXIgPEhheWRlbi5GcmFzZXJAZnJlZXNjYWxlLmNvbT4KCglNNTI1M0VWQkUJbWNmNTJ4MgoKTWF0dGhpYXMgRnVjaHMgPG1hdHRoaWFzLmZ1Y2hzQGVzZC1lbGVjdHJvbmljcy5jb20+CgoJVEFTUkVHCQlNQ0Y1MjQ5CgpUc2lDaHVuZyBMaWV3IDxUc2ktQ2h1bmcuTGlld0BmcmVlc2NhbGUuY29tPgoKCU01MjI3N0VWQgltY2Y1MjI3eAoJTTUyMzVFVkIJbWNmNTJ4MgoJTTUyNTNERU1PCW1jZjUyeDIKCU01MzAxN0VWQgltY2Y1MzJ4CglNNTMyOUVWQgltY2Y1MzJ4CglNNTM3M0VWQgltY2Y1MzJ4CglNNTQ0NTVFVkIJbWNmNTQ0NXgKCU01NDc1RVZCCW1jZjU0N3hfOHgKCU01NDg1RVZCCW1jZjU0N3hfOHgKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBBVlIzMiBTeXN0ZW1zOgkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCUNQVQkJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKSGFucy1DaHJpc3RpYW4gRWd0dmVkdCA8aGFucy1jaHJpc3RpYW4uZWd0dmVkdEBhdG1lbC5jb20+CgoJRkFWUi0zMi1FWktJVAkJQVQzMkFQNzAwMAoKTWFyayBKYWNrc29uIDxtcGZqQG1pbWMuY28udWs+CgoJTUlNQzIwMAkJCUFUMzJBUDcwMDAKCkFsZXggUmFpbW9uZGkgPGFsZXgucmFpbW9uZGlAbWlyb21pY28uY2g+Ckp1bGllbiBNYXkgPGp1bGllbi5tYXlAbWlyb21pY28uY2g+CgoJSEFNTUVSSEVBRAkJQVQzMkFQNzAwMAoKSGFhdmFyZCBTa2lubmVtb2VuIDxoYWF2YXJkLnNraW5uZW1vZW5AYXRtZWwuY29tPgoKCUFUU1RLMTAwMAlBVDMyQVA3eHh4CglBVFNUSzEwMDIJQVQzMkFQNzAwMAoJQVRTVEsxMDAzCUFUMzJBUDcwMDEKCUFUU1RLMTAwNAlBVDMyQVA3MDAyCglBVFNUSzEwMDYJQVQzMkFQNzAwMAoJQVROR1cxMDAJQVQzMkFQNzAwMAoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIFN1cGVySCBTeXN0ZW1zOgkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCUNQVQkJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKWXVzdWtlIEdvZGEgPGdvZGEueXVzdWtlQHJlbmVzYXMuY29tPgoKCU1JR08tUgkJU0g3NzIyCgpOb2J1aGlybyBJd2FtYXRzdSA8aXdhbWF0c3VAbmlnYXVyaS5vcmc+CgkJICA8aXdhbWF0c3Uubm9idWhpcm9AcmVuZXNhcy5jb20+CgoJTVM3NzUwU0UJU0g3NzUwCglNUzc3MjJTRQlTSDc3MjIKCVI3NzgwTVAJCVNINzc4MAoJUjJEUGx1cwkJU0g3NzUxUgoJU0g3NzYzUkRQCVNINzc2MwoJUlNLNzIwMwkJU0g3MjAzCglBUDMyNVJYQQlTSDc3MjMKCk1hcmsgSm9uYXMgPG1hcmsuam9uYXNAZGUuYm9zY2guY29tPgoKCW1wcjIJCVNINzcyMAoKWW9zaGloaXJvIFNoaW1vZGEgPHNoaW1vZGEueW9zaGloaXJvQHJlbmVzYXMuY29tPgoKCU1TNzcyMFNFCVNINzcyMAoJUjBQNzc4NTAwMTFSTAlTSDc3ODUKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBCbGFja2ZpbiBTeXN0ZW1zOgkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCUNQVQkJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKTWlrZSBGcnlzaW5nZXIgPHZhcGllckBnZW50b28ub3JnPgpCbGFja2ZpbiBUZWFtIDx1LWJvb3QtZGV2ZWxAYmxhY2tmaW4udWNsaW51eC5vcmc+CgoJQkY1MThGLUVaQlJECUJGNTE4CglCRjUyNi1FWkJSRAlCRjUyNgoJQkY1MjctRVpLSVQJQkY1MjcKCUJGNTMzLUVaS0lUCUJGNTMzCglCRjUzMy1TVEFNUAlCRjUzMwoJQkY1MzctUE5BVglCRjUzNwoJQkY1MzctU1RBTVAJQkY1MzcKCUJGNTM4Ri1FWktJVAlCRjUzOAoJQkY1NDgtRVpLSVQJQkY1NDgKCUJGNTYxLUVaS0lUCUJGNTYxCgpCbHVldGVjaG5peCBUaW55Ym9hcmRzIDxibHVldGVjaG5peEBibGFja2Zpbi51Y2xpbnV4Lm9yZz4KQmxhY2tmaW4gVGVhbSA8dS1ib290LWRldmVsQGJsYWNrZmluLnVjbGludXgub3JnPgoKCUNNLUJGNTI3CUJGNTI3CglDTS1CRjUzMwlCRjUzMwoJQ00tQkY1MzdFCUJGNTM3CglDTS1CRjUzN1UJQkY1MzcKCUNNLUJGNTQ4CUJGNTQ4CglDTS1CRjU2MQlCRjU2MQoJVENNLUJGNTM3CUJGNTM3CgpNYXJ0aW4gU3RydWJlbCA8c3RydWJlbEBzZWN0aW9uNS5jaD4KQmxhY2tmaW4gVGVhbSA8dS1ib290LWRldmVsQGJsYWNrZmluLnVjbGludXgub3JnPgoKCUJGNTM3LW1pbm90YXVyCUJGNTM3CglCRjUzNy1zcnYxCUJGNTM3CgpXb2p0ZWsgU2t1bHNraSA8c2t1bHNraUBwYXMucm9jaGVzdGVyLmVkdT4KQmVuamFtaW4gTWF0dGhld3MgPG1iZW4xMkBnbWFpbC5jb20+CgoJQkxBQ0tTVEFNUAlCRjUzMgoKSS1TWVNUIE1pY3JvbW9kdWxlIDxzdXBwb3J0QGktc3lzdC5jb20+CkJsYWNrZmluIFRlYW0gPHUtYm9vdC1kZXZlbEBibGFja2Zpbi51Y2xpbnV4Lm9yZz4KCglJQkYtRFNQNTYxCUJGNTYxCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgRW5kIG9mIE1BSU5UQUlORVJTIGxpc3QJCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK