IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojCQkJCQkJCQkJIwojIFJlZ3VsYXIgTWFpbnRhaW5lcnMgZm9yIFUtQm9vdCBib2FyZCBzdXBwb3J0OgkJCQkjCiMJCQkJCQkJCQkjCiMgRm9yIGFueSBib2FyZCB3aXRob3V0IHBlcm1hbmVudCBtYWludGFpbmVyLCBwbGVhc2UgY29udGFjdAkJIwojCVdvbGZnYW5nIERlbmsgPHdkQGRlbnguZGU+CQkJCQkjCiMgYW5kIENjOiB0aGUgPFUtQm9vdC1Vc2Vyc0BsaXN0cy5zb3VyY2Vmb3JnZS5uZXQ+IG1haWxpbmcgbGlzdHMuCSMKIwkJCQkJCQkJCSMKIyBOb3RlOiBsaXN0cyBzb3J0ZWQgYnkgTWFpbnRhaW5lciBOYW1lCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgUG93ZXJQQyBTeXN0ZW1zOgkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCQlDUFUJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKR3JlZyBBbGxlbiA8Z2FsbGVuQGFybHV0LnV0ZXhhcy5lZHU+CgoJVVRYODI0NQkJCU1QQzgyNDUKClBhbnRlbGlzIEFudG9uaW91IDxwYW50b0BpbnRyYWNvbS5ncj4KCglORVRWSUEJCQlNUEM4eHgKClJlaW5oYXJkIEFybHQgPHJlaW5oYXJkLmFybHRAZXNkLWVsZWN0cm9uaWNzLmNvbT4KCgljcGNpNTIwMAkJTVBDNTIwMAoJbWVjcDUyMDAJCU1QQzUyMDAKCXBmNTIwMAkJCU1QQzUyMDAKCglDUENJNzUwCQkJUFBDNzUwRlgvR1gKCll1bGkgQmFyY29oZW4gPHl1bGlAYXJhYmVsbGFzdy5jb20+CgoJQWRkZXIJCQlNUEM4N3gvTVBDODUyVAoJZXA4MjQ4CQkJTVBDODI0OAoJSVNQQU4JCQlNUEM4MjYwCglNUEM4MjYwQURTCQlNUEM4MjZ4L01QQzgyN3gvTVBDODI4MAoJUmF0dGxlcgkJCU1QQzgyNDgKCVpQQzE5MDAJCQlNUEM4MjY1CgpNaWNoYWVsIEJhcmtvd3NraSA8bWljaGFlbC5iYXJrb3dza2lAZnJlZXNjYWxlLmNvbT4KCglNUEM4MzIzRVJEQgkJTVBDODMyMwoKSmVycnkgVmFuIEJhcmVuIDxnZXJhbGQudmFuYmFyZW5Ac21pdGhzLWFlcm9zcGFjZS5jb20+CgoJc2Fjc25nCQkJTVBDODI2MAoKT2xpdmVyIEJyb3duIDxvYnJvd25AYWR2ZW50bmV0d29ya3MuY29tPgoKCWd3ODI2MAkJCU1QQzgyNjAKCkNvbm4gQ2xhcmsgPGNsYXJrQGVzdGVlbS5jb20+CgoJRVNURUVNMTkyRQkJTVBDOHh4CgpKb2UgRCdBYmJyYWNjaW8gPGxqZDAxNUBmcmVlc2NhbGUuY29tPgoKCU1QQzgzN3hFUkRCCQlNUEM4Mzd4CgpL4XJpIERhdu3wc3NvbiA8a2RAZmxhZ2EuaXM+CgoJRkxBR0FETQkJCU1QQzgyMwoKVG9yc3RlbiBEZW1rZSA8dG9yc3Rlbi5kZW1rZUBmY2kuY29tPgoKCWVYYWxpb24JCQlNUEM4MjR4CgpXb2xmZ2FuZyBEZW5rIDx3ZEBkZW54LmRlPgoKCUljZUN1YmVfNTEwMAkJTUdUNTEwMAoJSWNlQ3ViZV81MjAwCQlNUEM1MjAwCgoJQU1YODYwCQkJTVBDODYwCglFVFgwOTQJCQlNUEM4NTAKCUZQUzg1MEwJCQlNUEM4NTAKCUZQUzg2MEwJCQlNUEM4NjAKCUlDVTg2MgkJCU1QQzg2MgoJSVA4NjAJCQlNUEM4NjAKCUlWTUwyNAkJCU1QQzg2MAoJSVZNTDI0XzEyOAkJTVBDODYwCglJVk1MMjRfMjU2CQlNUEM4NjAKCUlWTVM4CQkJTVBDODYwCglJVk1TOF8xMjgJCU1QQzg2MAoJSVZNUzhfMjU2CQlNUEM4NjAKCUxBTlRFQwkJCU1QQzg1MAoJTFdNT04JCQlNUEM4MjMKCU5DNjUwCQkJTVBDODUyCglSMzYwTVBJCQkJTVBDODIzCglSTVUJCQlNUEM4NTAKCVJSdmlzaW9uCQlNUEM4MjMKCVNNODUwCQkJTVBDODUwCglTUEQ4MjNUUwkJTVBDODIzCglUUU04MjNMCQkJTVBDODIzCglUUU04MjNMX0xDRAkJTVBDODIzCglUUU04NTBMCQkJTVBDODUwCglUUU04NTVMCQkJTVBDODU1CglUUU04NjBMCQkJTVBDODYwCglUUU04NjBMX0ZFQwkJTVBDODYwCgljMm1vbgkJCU1QQzg1NQoJaGVybWVzCQkJTVBDODYwCglsd21vbgkJCU1QQzgyMwoJcGN1X2UJCQlNUEM4NTUKCglDVTgyNAkJCU1QQzgyNDAKCVNhbmRwb2ludDgyNDAJCU1QQzgyNDAKCVNMODI0NQkJCU1QQzgyNDUKCglBVEMJCQlNUEM4MjUwCglQTTgyNQkJCU1QQzgyNTAKCglUUU04MjU1CQkJTVBDODI1NQoKCUNQVTg2CQkJTVBDODI2MAoJUE04MjYJCQlNUEM4MjYwCglUUU04MjYwCQkJTVBDODI2MAoKCVAzRzQJCQlNUEM3NDEwCgoJUENJUFBDMgkJCU1QQzc1MAoJUENJUFBDNgkJCU1QQzc1MAoKCUVYQklUR0VOCQlQUEM0MDVHUAoKSm9uIERpZWtlbWEgPGpvbi5kaWVrZW1hQHNtaXRocy1hZXJvc3BhY2UuY29tPgoKCXNiYzgyNjAJCQlNUEM4MjYwCgpEYXZlIEVsbGlzIDxER0VAc2l4bmV0aW8uY29tPgoKCVNYTkk4NTVUCQlNUEM4eHgKClRob21hcyBGcmllZGVuIDxUaG9tYXNGQGh5cGVyaW9uLWVudGVydGFpbm1lbnQuY29tPgoKCUFtaWdhT25lRzNTRQkJTVBDN3h4CgpNYXR0aGlhcyBGdWNocyA8bWF0dGhpYXMuZnVjaHNAZXNkLWVsZWN0cm9uaWNzLmNvbT4KCglBRENJT1AJCQlJT1A0ODAgKFBQQzQwMSkKCUFQQzQwNQkJCVBQQzQwNUdQCglBUjQwNQkJCVBQQzQwNUdQCglBU0g0MDUJCQlQUEM0MDVFUAoJQ0FOQlQJCQlQUEM0MDVDUgoJQ1BDSTJEUAkJCVBQQzQwNUdQCglDUENJNDA1CQkJUFBDNDA1R1AKCUNQQ0k0MDUyCQlQUEM0MDVHUAoJQ1BDSTQwNUFCCQlQUEM0MDVHUAoJQ1BDSTQwNURUCQlQUEM0MDVHUAoJQ1BDSUlTRVI0CQlQUEM0MDVHUAoJREFTQV9TSU0JCUlPUDQ4MCAoUFBDNDAxKQoJRFA0MDUJCQlQUEM0MDVFUAoJRFU0MDUJCQlQUEM0MDVHUAoJRFU0NDAJCQlQUEM0NDBFUHgKCUcyMDAwCQkJUFBDNDA1RVAKCUhINDA1CQkJUFBDNDA1RVAKCUhVQjQwNQkJCVBQQzQwNUVQCglPQ1JUQwkJCVBQQzQwNUdQCglPUlNHCQkJUFBDNDA1R1AKCVBDSTQwNQkJCVBQQzQwNUdQCglQTFU0MDUJCQlQUEM0MDVFUAoJUE1DNDA1CQkJUFBDNDA1R1AKCVBNQzQ0MAkJCVBQQzQ0MEVQeAoJVk9INDA1CQkJUFBDNDA1RVAKCVZPTTQwNQkJCVBQQzQwNUVQCglXVUg0MDUJCQlQUEM0MDVFUAoJQ01TNzAwCQkJUFBDNDA1RVAKCk5pa2xhdXMgR2lnZXIgPG5pa2xhdXMuZ2lnZXJAbmV0c3RhbC5jb20+CgoJSENVNAkJCVBQQzQwNUdQcgoJTUNVMjUJCQlQUEM0MDVHUHIKCUhDVTUJCQlQUEM0NDBFUHgKCkZyYW5rIEdvdHRzY2hsaW5nIDxmZ290dHNjaGxpbmdAZWx0ZWMuZGU+CgoJTUhQQwkJCU1QQzh4eAoKCUJBQjd4eAkJCU1QQzc0MC9NUEM3NTAKCldvbGZnYW5nIEdyYW5kZWdnZXIgPHdnQGRlbnguZGU+CgoJQ0NNCQkJTVBDODU1CgoJUE42MgkJCU1QQzgyNDAKCglJUEhBU0U0NTM5CQlNUEM4MjYwCglTQ00JCQlNUEM4MjYwCgpIb3dhcmQgR3JheSA8bXZzZW5zb3JAbWF0cml4LXZpc2lvbi5kZT4KCglNVlMxCQkJTVBDODIzCgpKb2UgSGFtbWFuIDxqb2UuaGFtbWFuQGVtYmVkZGVkc3BlY2lhbHRpZXMuY29tPgoKCXNiYzg1NDgJCQlNUEM4NTQ4CglzYmM4NjQxZAkJTVBDODY0MUQKCktsYXVzIEhleWRlY2sgPGhleWRlY2tAa2llYmFjay1wZXRlci5kZT4KCglLVVA0SwkJCU1QQzg1NQoJS1VQNFgJCQlNUEM4NTkKCkdhcnkgSmVubmVqb2huIDxnYXJ5akBkZW54LmRlPgoKCXF1YWQxMDBoZAkJUFBDNDA1RVAKCk11cnJheSBKZW5zZW4gPE11cnJheS5KZW5zZW5AY3Npcm8uYXU+CgoJY29nZW50X21wYzh4eAkJTVBDOHh4CgoJY29nZW50X21wYzgyNjAJCU1QQzgyNjAKCWh5bW9kCQkJTVBDODI2MAoKTGFycnkgSm9obnNvbiA8bHJqQGFjbS5vcmc+CgoJa29yYXQJCQlQUEM0NDBFUHgKCkJyYWQgS2VtcCA8QnJhZC5LZW1wQHNlcmFub2EuY29tPgoKCXBwbWM4MjYwCQlNUEM4MjYwCgpTYW5nbW9vbiBLaW0gPGRvZ29pbEBldGluc3lzLmNvbT4KCglkZWJyaXMJCQlNUEM4MjQ1CglLVk1FMDgwCQkJTVBDODI0NQoKVGhvbWFzIExhbmdlIDx0aG9tYXNAY29yZWxhdHVzLnNlPgoKCUdUSAkJCU1QQzg2MAoKUm9iZXJ0IExhemFyc2tpIDxyb2JlcnRsYXphcnNraUBnbWFpbC5jb20+CgoJQVRVTTg1NDgJCU1QQzg1NDgKClRoZSBMRU9YIHRlYW0gPHRlYW1AbGVveC5vcmc+CgoJRUxQVDg2MAkJCU1QQzg2MFQKCkRhdmUgTGl1IDxkYXZlbGl1QGZyZWVzY2FsZS5jb20+CgoJTVBDODMxNUVSREIJCU1QQzgzMTUKCU1QQzgzMlhFTURTCQlNUEM4MzJ4CglNUEM4MzYwRU1EUwkJTVBDODM2MAoJTVBDODM3WEVNRFMJCU1QQzgzN3gKCk55ZSBMaXUgPG55ZXRAenVtYW5ldHdvcmtzLmNvbT4KCglaVU1BCQkJTVBDN3h4Xzc0eHgKCkpvbiBMb2VsaWdlciA8amRsQGZyZWVzY2FsZS5jb20+CgoJTVBDODU0MEFEUwkJTVBDODU0MAoJTVBDODU2MEFEUwkJTVBDODU2MAoJTVBDODU0MUNEUwkJTVBDODU0MQoJTVBDODU1NUNEUwkJTVBDODU1NQoKCU1QQzg2NDFIUENOCQlNUEM4NjQxRAoKRGFuIE1hbGVrIDxkYW5AZW1iZWRkZWRhbGxleS5jb20+CgoJc3R4Z3AzCQkJTVBDODV4eAoJc3R4c3NhCQkJTVBDODV4eAoJc3R4eHRjCQkJTVBDOHh4CgpFcmFuIE1hbiA8ZXJhbkBuYmFzZS5jby5pbD4KCglFVkI2NDI2MF83NTBDWAkJTVBDNzUwQ1gKCkFuZHJlYSAibGxhbmRyZSIgTWFyc29uIDxhbmRyZWEubWFyc29uQGRhdmUtdGVjaC5pdD4KCglQUENoYW1lbGVvbkVWQglQUEM0MDVFUAoKUmVpbmhhcmQgTWV5ZXIgPHIubWV5ZXJAZW1rLWVsZWt0cm9uaWsuZGU+CgoJVE9QODYwCQkJTVBDODYwVAoJVE9QNTIwMAkJCU1QQzUyMDAKClRvbHVuYXkgT3JrdW4gPHRvcmt1bkBuZXh0aW8uY29tPgoKCWNzYjI3MgkJCVBQQzQwNUdQCgljc2I0NzIJCQlQUEM0MDVHUAoKSm9obiBPdGtlbiA8am90a2VuQHNvZnRhZHZhbmNlcy5jb20+CgoJbHVhbgkJCVBQQzQ0MFNQCgl0YWlodQkJCVBQQzQwNUVQCgpLZWl0aCBPdXR3YXRlciA8S2VpdGhfT3V0d2F0ZXJAbXZpcy5jb20+CgoJR0VOODYwVAkJCU1QQzg2MFQKCUdFTjg2MFRfU0MJCU1QQzg2MFQKCkZyYW5rIFBhbm5vIDxmcGFubm9AZGVscGhpbnRlY2guY29tPgoKCWVwODI2MAkJCU1QQzgyNjAKCkRlbmlzIFBldGVyIDxkLnBldGVyQG1wbC5jaD4KCglNSVA0MDUJCQlQUEM0eHgKCVBJUDQwNQkJCVBQQzR4eAoKS2ltIFBoaWxsaXBzIDxraW0ucGhpbGxpcHNAZnJlZXNjYWxlLmNvbT4KCglNUEM4MzQ5RU1EUwkJTVBDODM0OQoKRGFuaWVsIFBvaXJvdCA8ZGFuLnBvaXJvdEB3aW5kcml2ZXIuY29tPgoKCXNiYzgyNDAJCQlNUEM4MjQwCglzYmM0MDUJCQlQUEM0MDVHUAoKU3RlZmFuIFJvZXNlIDxzckBkZW54LmRlPgoKCVAzTTc0NDgJCQlNUEM3NDQ4CgoJdWMxMDAJCQlNUEM4NTcKCglUUU04NXh4CQkJTVBDODU0MC84NTQxLzg1NTUvODU2MAoKCWFjYWRpYQkJCVBQQzQwNUVaCglhbHByCQkJUFBDNDQwR1gKCWJhbWJvbwkJCVBQQzQ0MEVQCglidW5iaW5nYQkJUFBDNDA1RVAKCWNhbnlvbmxhbmRzCQlQUEM0NjBFWAoJZWJvbnkJCQlQUEM0NDBHUAoJZ2xhY2llcgkJCVBQQzQ2MEdUCgloYWxlYWthbGEJCVBQQzQwNUVYcgoJa2F0bWFpCQkJUFBDNDQwU1BlCglraWxhdWVhCQkJUFBDNDA1RVgKCWx3bW9uNQkJCVBQQzQ0MEVQeAoJbWFrYWx1CQkJUFBDNDA1RVgKCW9jb3RlYQkJCVBQQzQ0MEdYCglwM3A0NDAJCQlQUEM0NDBHUAoJcGNzNDQwZXAJCVBQQzQ0MEVQCglyYWluaWVyCQkJUFBDNDQwR1J4CglzZXF1b2lhCQkJUFBDNDQwRVB4CglzeWNhbW9yZQkJUFBDNDA1R1ByCgl0YWlzaGFuCQkJUFBDNDQwR1gKCXdhbG51dAkJCVBQQzQwNUdQCgl5ZWxsb3dzdG9uZQkJUFBDNDQwR1IKCXlvc2VtaXRlCQlQUEM0NDBFUAoJemV1cwkJCVBQQzQwNUVQCgoJUDNNNzUwCQkJUFBDNzUwRlgvR1gvR0wKCll1c2RpIFNhbnRvc28gPHl1c2RpX3NhbnRvc29AYWRhcHRlYy5jb20+CgoJSElEREVOX0RSQUdPTglNUEM4MjQxL01QQzgyNDUKClRyYXZpcyBTYXd5ZXIgKHRyYXZpcy5zYXd5ZXJAc2FuZGJ1cnN0LmNvbT4KCglLQVJFRgkJCVBQQzQ0MEdYCglNRVRST0JPWAkJUFBDNDQwR1gKCVhQRURJVEUxSwkJUFBDNDQwR1gKCkhlaWtvIFNjaG9jaGVyIDxoc0BkZW54LmRlPgoKCWlkczgyNDcJCQlNUEM4MjQ3CglqdXBpdGVyCQkJTVBDNTIwMAoJbWdjb2dlCQkJTVBDODI0NwoJbWdzdXZkCQkJTVBDODUyCgltdW5pY3NlCQkJTVBDNTIwMAoJc2MzCQkJUFBDNDA1R1AKCXVjMTAxCQkJTVBDNTIwMAoKClBldGVyIERlIFNjaHJpanZlciA8cDJAbWluZC5iZT4KCglNTDIJCQlQUEM0eHgKClRpbXVyIFRhYmkgPHRpbXVyQGZyZWVzY2FsZS5jb20+CgoJTVBDODM0OUUtbUlUWAkJTVBDODM0OQoJTVBDODM0OUUtbUlUWC1HUAlNUEM4MzQ5CgpFcmlrIFRoZWlzZW4gPGV0aGVpc2VuQG1pbmRzcHJpbmcuY29tPgoKCVc3T0xNQwkJCVBQQzR4eAoJVzdPTE1HCQkJUFBDNHh4CgpKaW0gVGhvbXBzb24gPGppbUBtdXNlbmtpLmNvbT4KCglNVVNFTktJCQkJTVBDODI0NS84MjQxCglTYW5kcG9pbnQ4MjQ1CQlNUEM4MjQ1CgpSdW5lIFRvcmdlcnNlbiA8cnVuZXRAaW5ub3ZzeXMuY29tPgoKCU1QQzgyNjZBRFMJCU1QQzgyNjYKCgpEYXZpZCBVcGRlZ3JhZmYgPGRhdmVAY3JheS5jb20+CgoJQ1JBWUwxCQkJUFBDNHh4CgpBbnRvbiBWb3JvbnRzb3YgPGF2b3JvbnRzb3ZAcnUubXZpc3RhLmNvbT4KCglNUEM4MzYwRVJESwkJTVBDODM2MAoKSm9zZWYgV2FnbmVyIDxXYWduZXJATWljcm9zeXMuZGU+CgoJQ1BDNDUJCQlNUEM4MjQ1CglQTTUyMAkJCU1QQzUyMDAKClN0ZXBoZW4gV2lsbGlhbXMgPHN0ZXZlQGljYXJ1cy5jb20+CgoJSlNFCQkJUFBDNDA1R1ByCgpKb2huIFpoYW4gPHpoYW56QHNpbm92ZWUuY29tPgoKCXN2bV9zYzh4eAkJTVBDOHh4CgpHdWVubmFkaSBMaWFraG92ZXRza2kgPGcubGlha2hvdmV0c2tpQGdteC5kZT4KCglsaW5rc3RhdGlvbgkJTVBDODI0MQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKVW5rbm93biAvIG9ycGhhbmVkIGJvYXJkczoKCglBRFM4NjAJCQlNUEM4eHgKCUZBRFM4MjMJCQlNUEM4eHgKCUZBRFM4NTBTQVIJCU1QQzh4eAoJRkFEUzg2MFQJCU1QQzh4eAoJR0VOSUVUVgkJCU1QQzh4eAoJSUFEMjEwCQkJTVBDOHh4CglNQlgJCQlNUEM4eHgKCU1CWDg2MFQJCQlNUEM4eHgKCU5YODIzCQkJTVBDOHh4CglSUFhDbGFzc2ljCQlNUEM4eHgKCVJQWGxpdGUJCQlNUEM4eHgKCglFUklDCQkJUFBDNHh4CgoJTU9VU1NFCQkJTVBDODI0eAoKCVJQWHN1cGVyCQlNUEM4MjYwCglyc2Rwcm90bwkJTVBDODI2MAoKCUVWQjY0MjYwCQlNUEM3eHhfNzR4eAoKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBBUk0gU3lzdGVtczoJCQkJCQkJCSMKIwkJCQkJCQkJCSMKIyBNYWludGFpbmVyIE5hbWUsIEVtYWlsIEFkZHJlc3MJCQkJCSMKIwlCb2FyZAkJCUNQVQkJCQkJIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgpSb3dlbCBBdGllbnphIDxyb3dlbEBkaXdhbGFicy5jb20+CgoJYXJtYWRpbGxvCQlBUk03MjBUCgpSaXNoaSBCaGF0dGFjaGFyeWEgPHJpc2hpQHRpLmNvbT4KCglvbWFwNTkxMm9zawkJQVJNOTI2RUpTCgpDbGlmZiBCcmFrZSA8Y2xpZmYuYnJha2VAZ21haWwuY29tPgoKCXB4YTI1NV9pZHAJCXhzY2FsZQoKUmljayBCcm9uc29uIDxyaWNrQGVmbi5vcmc+CgoJQVQ5MVJNOTIwMERLCQlhdDkxcm05MjAwCgpHZW9yZ2UgRy4gRGF2aXMgPGdkYXZpc0BtdmlzdGEuY29tPgoKCWFzc2FiZXQJCQlTQTExMDAKCWdjcGx1cwkJCVNBMTEwMAoKVGhvbWFzIEVsc3RlIDxpbmZvQGVsc3RlLm9yZz4KCgltb2RuZXQ1MAkJQVJNNzIwVCAoTkVUKzUwKQoKUGV0ZXIgRmlndWxpIDxwZXBvc2hAZXRjLnNrPgoKCXdlcGVwMjUwCQl4c2NhbGUKCk1hcml1cyBHcvZnZXIgPG1hZ0BzeXNnby5kZT4KCglpbXBhNwkJCUFSTTcyMFQgKEVQNzIxMSkKCWVwNzMxMgkJCUFSTTcyMFQgKEVQNzMxMikKCktzaGl0aWogR3VwdGEgPGtzaGl0aWpAdGkuY29tPgoKCW9tYXAxNTEwaW5uCQlBUk05MjVUCglvbWFwMTYxMGlubgkJQVJNOTI2RUpTCgpLeWxlIEhhcnJpcyA8a2hhcnJpc0BuZXh1cy10ZWNoLm5ldD4KCglsdWJib2NrCQkJeHNjYWxlCgljcmFkbGUJCQl4c2NhbGUKCWl4ZHA0MjUJCQl4c2NhbGUKCkdhcnkgSmVubmVqb2huIDxnakBkZW54LmRlPgoKCXNtZGsyNDAwCQlBUk05MjBUCgl0cmFiCQkJQVJNOTIwVAoKS29uc3RhbnRpbiBLbGV0c2Noa2UgPGtsZXRzY2hrZUBzeW5lcnRyb25peHguZGU+CglzY2I5MzI4CQkJQVJNOTIwVAoKTmlzaGFudCBLYW1hdCA8bnNrYW1hdEB0aS5jb20+CgoJb21hcDE2MTBoMgkJQVJNOTI2RUpTCgpTZXJnZXkgS3VidXNoeW4gPGtzaUBrb2k4Lm5ldD4KCglEVi1FVk0JCQlBUk05MjZFSlMKCVNPTkFUQQkJCUFSTTkyNkVKUwoJU0NITU9PR0lFCQlBUk05MjZFSlMKClByYWthc2ggS3VtYXIgPHByYWthc2hAZW1iZWR4LmNvbT4KCgljZXJmMjUwCQkJeHNjYWxlCgpEYXZpZCBN/GxsZXIgPGQubXVlbGxlckBlbHNvZnQuY2g+CgoJc21kazI0MTAJCUFSTTkyMFQKCVZDTUE5CQkJQVJNOTIwVAoKUm9sZiBPZmZlcm1hbm5zIDxyb2ZAc3lzZ28uZGU+CgoJc2hhbm5vbgkJCVNBMTEwMAoKUGV0ZXIgUGVhcnNlIDxwZXRlci5wZWFyc2VAYXJtLmNvbT4KCWludGVncmF0b3JjcAkJQWxsIGN1cnJlbnQgQVJNIHN1cHBsaWVkICYKCQkJCXN1cHBvcnRlZCBjb3JlIG1vZHVsZXMKCQkJCS1zZWUgaHR0cDovL3d3dy5hcm0uY29tCgkJCQkvcHJvZHVjdHMvRGV2VG9vbHMKCQkJCS9IYXJkd2FyZV9QbGF0Zm9ybXMuaHRtbAoJdmVyc2F0aWxlCQlBUk05MjZFSi1TCgl2ZXJzYXRpbGUJCUFSTTkyNkVKLVMKCkRhdmUgUGV2ZXJsZXkgPGRwZXZlcmxleUBtcGMtZGF0YS5jby51az4KCglvbWFwNzMwcDIJCUFSTTkyNkVKUwoKU3RlbGlhbiBQb3AgPHN0ZWxpYW4ucG9wQGxlYWR0ZWNoZGVzaWduLmNvbT4KCglhdDkxY2FwOWFkawkJQVJNOTI2RUpTIChBVDkxQ0FQOSBTb0MpCglhdDkxc2FtOTI2MGVrCQlBUk05MjZFSlMgKEFUOTFTQU05MjYwIFNvQykKClN0ZWZhbiBSb2VzZSA8c3JAZGVueC5kZT4KCglpeGRwZzQyNQkJeHNjYWxlCglwZG5iMwkJCXhzY2FsZQoJc2NwdQkJCXhzY2FsZQoKUm9iZXJ0IFNjaHdlYmVsIDxyLnNjaHdlYmVsQHBlbmd1dHJvbml4LmRlPgoKCWNzYjIyNgkJCXhzY2FsZQoJaW5ub2tvbQkJCXhzY2FsZQoKQW5kcmVhIFNjaWFuIDxhbmRyZWEuc2NpYW5AZGF2ZS10ZWNoLml0PgoKCUIyCQkJQVJNN1RETUkgKFMzQzQ0QjBYKQoKR3JlZyBVbmdlcmVyIDxncmVnLnVuZ2VyZXJAb3BlbmdlYXIuY29tPgoKCWNtNDAwOAkJCWtzODY5NXAKCWNtNDExNgkJCWtzODY5NXAKCWNtNDE0OAkJCWtzODY5NXAKClJpY2hhcmQgV29vZHJ1ZmYgPHItd29vZHJ1ZmYyQHRpLmNvbT4KCglvbWFwMjQyMGg0CQlBUk0xMTM2RUpTCgpLeXVuZ21pbiBQYXJrIDxreXVuZ21pbi5wYXJrQHNhbXN1bmcuY29tPgoKCWFwb2xsb24JCQlBUk0xMTM2RUpTCgpBbGV4IFr8cGtlIDxhenVAc3lzZ28uZGU+CgoJbGFydAkJCVNBMTEwMAoJZG5wMTExMAkJCVNBMTExMAoKTWljaGFlbCBTY2h3aW5nZW4gPG1pY2hhZWxAc2Nod2luZ2VuLm9yZz4KCglhY3R1eDEJCQl4c2NhbGUKCWFjdHV4MgkJCXhzY2FsZQoJYWN0dXgzCQkJeHNjYWxlCglhY3R1eDQJCQl4c2NhbGUKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyB4ODYgU3lzdGVtczoJCQkJCQkJCSMKIwkJCQkJCQkJCSMKIyBNYWludGFpbmVyIE5hbWUsIEVtYWlsIEFkZHJlc3MJCQkJCSMKIwlCb2FyZAkJCUNQVQkJCQkJIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgpEYW5pZWwgRW5nc3Ry9m0gPGRhbmllbEBvbWljcm9uLnNlPgoKCXNjNTIwX2NkcAkJeDg2CgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgTUlQUyBTeXN0ZW1zOgkJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQkJQ1BVCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCldvbGZnYW5nIERlbmsgPHdkQGRlbnguZGU+CgoJaW5jYWlwCQkJTUlQUzMyIDRLYwoJcHVycGxlCQkJTUlQUzY0IDVLYwoKVGhvbWFzIExhbmdlIDx0aG9tYXNAY29yZWxhdHVzLnNlPgoJZGJhdTF4MDAJCU1JUFMzMiBBdTEwMDAKCWd0aDIJCQlNSVBTMzIgQXUxMDAwCgpWbGFkIEx1bmd1IDx2bGFkLmx1bmd1QHdpbmRyaXZlci5jb20+CglxZW11X21pcHMJCU1JUFMzMgoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIE5pb3MtMzIgU3lzdGVtczoJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQkJQ1BVCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKClN0ZXBoYW4gTGlueiA8bGluekBsaS1wcm8ubmV0PgoKCURLMVMxMAkJCU5pb3MtMzIKCUFETlBFU0MxCQlOaW9zLTMyCgpTY290dCBNY051dHQgPHNtY251dHRAcHN5ZW50LmNvbT4KCglESzFDMjAJCQlOaW9zLTMyCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgTmlvcy1JSSBTeXN0ZW1zOgkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCQlDUFUJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKU2NvdHQgTWNOdXR0IDxzbWNudXR0QHBzeWVudC5jb20+CgoJUENJNTQ0MQkJCU5pb3MtSUkKCVBLMUMyMAkJCU5pb3MtSUkKCUVQMUMyMAkJCU5pb3MtSUkKCUVQMVMxMAkJCU5pb3MtSUkKCUVQMVM0MAkJCU5pb3MtSUkKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBNaWNyb0JsYXplIFN5c3RlbXM6CQkJCQkJCSMKIwkJCQkJCQkJCSMKIyBNYWludGFpbmVyIE5hbWUsIEVtYWlsIEFkZHJlc3MJCQkJCSMKIwlCb2FyZAkJCUNQVQkJCQkJIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgpZYXN1c2hpIFNob2ppIDx5YXNoaUBhdG1hcmstdGVjaG5vLmNvbT4KCglTVVpBS1UJCQlNaWNyb0JsYXplCgpNaWNoYWwgU2ltZWsgPG1vbnN0ckBtb25zdHIuZXU+CgoJTUw0MDEJCQlNaWNyb0JsYXplCglYVVBWMlAJCQlNaWNyb0JsYXplCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgQ29sZGZpcmUgU3lzdGVtczoJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQkJQ1BVCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCk1hdHRoaWFzIEZ1Y2hzIDxtYXR0aGlhcy5mdWNoc0Blc2QtZWxlY3Ryb25pY3MuY29tPgoKCVRBU1JFRwkJCU1DRjUyNDkKClRzaUNodW5nIExpZXcgPFRzaS1DaHVuZy5MaWV3QGZyZWVzY2FsZS5jb20+CgoJTTUyMjc3RVZCCQltY2Y1MjI3eAoJTTUyMzVFVkIJCW1jZjUyeDIKCU01MzI5RVZCCQltY2Y1MzJ4CglNNTM3M0VWQgkJbWNmNTMyeAoJTTU0NDU1RVZCCQltY2Y1NDQ1eAoJTTU0NzVFVkIJCW1jZjU0N3hfOHgKCU01NDg1RVZCCQltY2Y1NDd4Xzh4CgpIYXlkZW4gRnJhc2VyIDxIYXlkZW4uRnJhc2VyQGZyZWVzY2FsZS5jb20+CgoJTTUyNTNFVkJFCQltY2Y1MngyCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgQVZSMzIgU3lzdGVtczoJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQkJQ1BVCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCkhhYXZhcmQgU2tpbm5lbW9lbiA8aHNraW5uZW1vZW5AYXRtZWwuY29tPgoKCUFUU1RLMTAwMAkJQVQzMkFQN3h4eAoJQVRTVEsxMDAyCQlBVDMyQVA3MDAwCglBVFNUSzEwMDMJCUFUMzJBUDcwMDEKCUFUU1RLMTAwNAkJQVQzMkFQNzAwMgoJQVROR1cxMDAJCUFUMzJBUDcwMDAKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBTdXBlckggU3lzdGVtczoJCQkJCQkJIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQkJQ1BVCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCk5vYnVoaXJvIEl3YW1hdHN1IDxpd2FtYXRzdUBuaWdhdXJpLm9yZz4KCglNUzc3NTBTRQkJU0g3NzUwCglNUzc3MjJTRQkJU0g3NzIyCglSNzc4ME1QCQkJU0g3NzgwCglSMkRQbHVzCQkJU0g3NzUxUgoKTWFyayBKb25hcyA8bWFyay5qb25hc0BkZS5ib3NjaC5jb20+CgoJbXByMgkJCVNINzcyMAoKWW9zaGloaXJvIFNoaW1vZGEgPHNoaW1vZGEueW9zaGloaXJvQHJlbmVzYXMuY29tPgoKCU1TNzcyMFNFCQlTSDc3MjAKCll1c3VrZSBHb2RhIDxnb2RhLnl1c3VrZUByZW5lc2FzLmNvbT4KCglNSUdPLVIJCQlTSDc3MjIKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBCbGFja2ZpbiBTeXN0ZW1zOgkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCQlDUFUJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKTWlrZSBGcnlzaW5nZXIgPHZhcGllckBnZW50b28ub3JnPgpCbGFja2ZpbiBUZWFtIDx1LWJvb3QtZGV2ZWxAYmxhY2tmaW4udWNsaW51eC5vcmc+CgoJQkY1MzMtRVpLSVQJCUJGNTMzCglCRjUzMy1TVEFNUAkJQkY1MzMKCUJGNTM3LVNUQU1QCQlCRjUzNwoJQkY1NjEtRVpLSVQJCUJGNTYxCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgRW5kIG9mIE1BSU5UQUlORVJTIGxpc3QJCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK