IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojCQkJCQkJCQkJIwojIFJlZ3VsYXIgTWFpbnRhaW5lcnMgZm9yIFUtQm9vdCBib2FyZCBzdXBwb3J0OgkJCQkjCiMJCQkJCQkJCQkjCiMgRm9yIGFueSBib2FyZCB3aXRob3V0IHBlcm1hbmVudCBtYWludGFpbmVyLCBwbGVhc2UgY29udGFjdAkJIwojICAgIGZvciBQb3dlclBDIHN5c3RlbXM6CQkJCQkJIwojCVdvbGZnYW5nIERlbmsgPHdkQGRlbnguZGU+CQkJCQkjCiMgICAgZm9yIEFSTSBzeXN0ZW1zOgkJCQkJCQkjCiMJTWFyaXVzIEdy9mdlciA8bWFnQHN5c2dvLmRlPgkJCQkJIwojIGFuZCBDYzogdGhlIDxVLUJvb3QtVXNlcnNAbGlzdHMuc291cmNlZm9yZ2UubmV0PiBtYWlsaW5nIGxpc3RzLgkjCiMJCQkJCQkJCQkjCiMgTm90ZTogbGlzdHMgc29ydGVkIGJ5IE1haW50YWluZXIgTmFtZQkJCQkJIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojCQkJCQkJCQkJIwojIE1haW50YWluZXIgTmFtZSwgRW1haWwgQWRkcmVzcwkJCQkJIwojCUJvYXJkCQkJQ1BVCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCkdyZWcgQWxsZW4gPGdhbGxlbkBhcmx1dC51dGV4YXMuZWR1PgoKCVVUWDgyNDUJCQlNUEM4MjQ1CgpQYW50ZWxpcyBBbnRvbmlvdSA8cGFudG9AaW50cmFjb20uZ3I+CgoJTkVUVklBCQkJTVBDOHh4CgpKZXJyeSBWYW4gQmFyZW4gPHZhbmJhcmVuX2dlcmFsZEBzaS5jb20+CgoJc2Fjc25nCQkJTVBDODI2MAoKT2xpdmVyIEJyb3duIDxvYnJvd25AYWR2ZW50bmV0d29ya3MuY29tPgoKCWd3ODI2MAkJCU1QQzgyNjAKCkNvbm4gQ2xhcmsgPGNsYXJrQGVzdGVlbS5jb20+CgoJRVNURUVNMTkyRQkJTVBDOHh4CgpL4XJpIERhdu3wc3NvbiA8a2RAZmxhZ2EuaXM+CgoJRkxBR0FETQkJCU1QQzgyMwoKV29sZmdhbmcgRGVuayA8d2RAZGVueC5kZT4KCglBTVg4NjAJCQlNUEM4NjAKCUVUWDA5NAkJCU1QQzg1MAoJRlBTODUwTAkJCU1QQzg1MAoJRlBTODYwTAkJCU1QQzg2MAoJSUNVODYyCQkJTVBDODYyCglJUDg2MAkJCU1QQzg2MAoJSVZNTDI0CQkJTVBDODYwCglJVk1MMjRfMTI4CQlNUEM4NjAKCUlWTUwyNF8yNTYJCU1QQzg2MAoJSVZNUzgJCQlNUEM4NjAKCUlWTVM4XzEyOAkJTVBDODYwCglJVk1TOF8yNTYJCU1QQzg2MAoJTEFOVEVDCQkJTVBDODUwCglSUnZpc2lvbgkJTVBDODIzCglTTTg1MAkJCU1QQzg1MAoJU1BEODIzVFMJCU1QQzgyMwoJVFFNODIzTAkJCU1QQzgyMwoJVFFNODIzTF9MQ0QJCU1QQzgyMwoJVFFNODUwTAkJCU1QQzg1MAoJVFFNODU1TAkJCU1QQzg1NQoJVFFNODYwTAkJCU1QQzg2MAoJVFFNODYwTF9GRUMJCU1QQzg2MAoJYzJtb24JCQlNUEM4NTUKCWhlcm1lcwkJCU1QQzg2MAoJbHdtb24JCQlNUEM4MjMKCXBjdV9lCQkJTVBDODU1CgoJQ1U4MjQJCQlNUEM4MjQwCglTYW5kcG9pbnQ4MjQwCQlNUEM4MjQwCgoJQ1BVODYJCQlNUEM4MjYwCglQTTgyNgkJCU1QQzgyNjAKCVRRTTgyNjAJCQlNUEM4MjYwCgoJUENJUFBDMgkJCU1QQzc1MAoJUENJUFBDNgkJCU1QQzc1MAoKSm9uIERpZWtlbWEgPGRpZWtlbWFfam9uQHNpLmNvbT4KCglzYmM4MjYwCQkJTVBDODI2MAoKRGF2ZSBFbGxpcyA8REdFQHNpeG5ldGlvLmNvbT4KCglTWE5JODU1VAkJTVBDOHh4CgpUaG9tYXMgRnJpZWRlbiA8VGhvbWFzRkBoeXBlcmlvbi1lbnRlcnRhaW5tZW50LmNvbT4KCglBbWlnYU9uZUczU0UJCU1QQzd4eAoKRnJhbmsgR290dHNjaGxpbmcgPGZnb3R0c2NobGluZ0BlbHRlYy5kZT4KCglNSFBDCQkJTVBDOHh4CgoJQkFCN3h4CQkJTVBDNzQwL01QQzc1MAoKV29sZmdhbmcgR3JhbmRlZ2dlciA8d2dAZGVueC5kZT4KCglDQ00JCQlNUEM4NTUKCglQTjYyCQkJTVBDODI0MAoKCUlQSEFTRTQ1MzkJCU1QQzgyNjAKCVNDTQkJCU1QQzgyNjAKCkhvd2FyZCBHcmF5IDxtdnNlbnNvckBtYXRyaXgtdmlzaW9uLmRlPgoKCU1WUzEJCQlNUEM4MjMKCktsYXVzIEhleWRlY2sgPGhleWRlY2tAa2llYmFjay1wZXRlci5kZT4KCglLVVA0SwkJCU1QQzg1NQoKTXVycmF5IEplbnNlbiA8TXVycmF5LkplbnNlbkBjbXN0LmNzaXJvLmF1PgoKCWNvZ2VudF9tcGM4eHgJCU1QQzh4eAoKCWNvZ2VudF9tcGM4MjYwCQlNUEM4MjYwCgloeW1vZAkJCU1QQzgyNjAKCkJyYWQgS2VtcCA8QnJhZC5LZW1wQHNlcmFub2EuY29tPgoKCXBwbWM4MjYwCQlNUEM4MjYwCgpOeWUgTGl1IDxueWV0QHp1bWFuZXR3b3Jrcy5jb20+CgoJWlVNQQkJCU1QQzd4eF83NHh4CgpUaG9tYXMgTGFuZ2UgPHRob21hc0Bjb3JlbGF0dXMuY29tPgoKCUdUSAkJCU1QQzg2MAoKRXJhbiBNYW4gPGVyYW5AbmJhc2UuY28uaWw+CgoJRVZCNjQyNjBfNzUwQ1gJCU1QQzc1MENYCgpTY290dCBNY051dHQgPHNtY251dHRAYXJ0ZXN5bmNwLmNvbT4KCglFQk9OWQkJCVBQQzQ0MEdQCgpLZWl0aCBPdXR3YXRlciA8S2VpdGhfT3V0d2F0ZXJAbXZpcy5jb20+CgoJR0VOODYwVAkJCU1QQzg2MFQKCkZyYW5rIFBhbm5vIDxmcGFubm9AZGVscGhpbnRlY2guY29tPgoKCWVwODI2MAkJCU1QQzgyNjAKCkRlbmlzIFBldGVyIDxkLnBldGVyQG1wbC5jaD4KCglNSVA0MDUJCQlQUEM0eHgKCVBJUDQwNQkJCVBQQzR4eAoKU3RlZmFuIFJvZXNlIDxzdGVmYW4ucm9lc2VAZXNkLWVsZWN0cm9uaWNzLmNvbT4KCglBRENJT1AJCQlJT1A0ODAgKFBQQzQwMSkKCUFSNDA1CQkJUFBDNDA1R1AKCUNBTkJUCQkJUFBDNDA1Q1IKCUNQQ0k0MDUJCQlQUEM0MDVHUAoJQ1BDSTQ0MAkJCVBQQzQ0MEdQCglDUENJSVNFUjQJCVBQQzQwNUdQCglEQVNBX1NJTQkJSU9QNDgwIChQUEM0MDEpCglEVTQwNQkJCVBQQzQwNUdQCglPQ1JUQwkJCVBQQzQwNUdQCglPUlNHCQkJUFBDNDA1R1AKClBldGVyIERlIFNjaHJpanZlciA8cDJAbWluZC5iZT4KCglNTDIJCQlQUEM0eHgKCkVyaWsgVGhlaXNlbiA8ZXRoZWlzZW5AbWluZHNwcmluZy5jb20+CgoJVzdPTE1DCQkJUFBDNHh4CglXN09MTUcJCQlQUEM0eHgKCkppbSBUaG9tcHNvbiA8amltQG11c2Vua2kuY29tPgoKCU1VU0VOS0kJCQlNUEM4MjQ1LzgyNDEKCVNhbmRwb2ludDgyNDUJCU1QQzgyNDUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KClVua25vd24gLyBvcnBoYW5lZCBib2FyZHM6CgoJQURTODYwCQkJTVBDOHh4CglGQURTODIzCQkJTVBDOHh4CglGQURTODUwU0FSCQlNUEM4eHgKCUZBRFM4NjBUCQlNUEM4eHgKCUdFTklFVFYJCQlNUEM4eHgKCUlBRDIxMAkJCU1QQzh4eAoJTUJYCQkJTVBDOHh4CglNQlg4NjBUCQkJTVBDOHh4CglOWDgyMwkJCU1QQzh4eAoJUlBYQ2xhc3NpYwkJTVBDOHh4CglSUFhsaXRlCQkJTVBDOHh4CgoJQ1JBWUwxCQkJUFBDNHh4CglFUklDCQkJUFBDNHh4CglXQUxOVVQ0MDUJCVBQQzR4eAoKCU1PVVNTRQkJCU1QQzgyNHgKCglNUEM4MjYwQURTCQlNUEM4MjYwCglSUFhzdXBlcgkJTVBDODI2MAoJcnNkcHJvdG8JCU1QQzgyNjAKCglFVkI2NDI2MAkJTVBDN3h4Xzc0eHgKCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgQVJNIFN5c3RlbXM6CQkJCQkJCQkjCiMJCQkJCQkJCQkjCiMgTWFpbnRhaW5lciBOYW1lLCBFbWFpbCBBZGRyZXNzCQkJCQkjCiMJQm9hcmQJCQlDUFUJCQkJCSMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKTWFyaXVzIEdy9mdlciA8bWFnQHN5c2dvLmRlPgoKCWltcGE3CQkJQVJNNzIwVCAoRVA3MjExKQoJZXA3MzEyCQkJQVJNNzIwVCAoRVA3MzEyKQoKS3lsZSBIYXJyaXMgPGtoYXJyaXNAbmV4dXMtdGVjaC5uZXQ+CgoJbHViYm9jawkJCXhzY2FsZQoJY3JhZGxlCQkJeHNjYWxlCgpHYXJ5IEplbm5lam9obiA8Z2pAZGVueC5kZT4KCglzbWRrMjQwMAkJQVJNOTIwVAoJdHJhYgkJCUFSTTkyMFQKCkRhdmlkIE38bGxlciA8ZC5tdWVsbGVyQGVsc29mdC5jaD4KCglzbWRrMjQxMAkJQVJNOTIwVAoKUm9sZiBPZmZlcm1hbm5zIDxyb2ZAc3lzZ28uZGU+CgoJc2hhbm5vbgkJCVNBMTEwMAoKUm9iZXJ0IFNjaHdlYmVsIDxyLnNjaHdlYmVsQHBlbmd1dHJvbml4LmRlPgoKCWNzYjIyNgkJCXhzY2FsZQoKQWxleCBa/HBrZSA8YXp1QHN5c2dvLmRlPgoKCWxhcnQJCQlTQTExMDAKCWRucDExMTAJCQlTQTExMTAKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyB4ODYgU3lzdGVtczoJCQkJCQkJCSMKIwkJCQkJCQkJCSMKIyBNYWludGFpbmVyIE5hbWUsIEVtYWlsIEFkZHJlc3MJCQkJCSMKIwlCb2FyZAkJCUNQVQkJCQkJIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgpEYW5pZWwgRW5nc3Ry9m0gPGRhbmllbEBvbWljcm9uLnNlPgoKCXNjNTIwX2NkcAkJeDg2CgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgRW5kIG9mIE1BSU5UQUlORVJTIGxpc3QJCQkJCQkjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK