From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: Andrew Burgess To: git-commits@fedoraproject.org Subject: [rpms/gdb] f44: fix rhbz2368350 - out of memory issue with the D demangler Date: Fri, 10 Jul 2026 20:04:25 GMT Message-ID: <178371386539.1.8781096132215793613.rpms-gdb-f0f9daf75851@fedoraproject.org> List-ID: X-Git-Repo: rpms/gdb X-Git-Branch: f44 X-Git-Rev: f0f9daf7585123a22e3768976afd196409c1b8af ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvZ2RiCiAgICAgICAgICAgIEJyYW5jaCA6IGY0NAogICAgICAgICAgICBDb21t aXQgOiBmMGY5ZGFmNzU4NTEyM2EyMmUzNzY4OTc2YWZkMTk2NDA5YzFiOGFmCiAgICAgICAgICAg IEF1dGhvciA6IEFuZHJldyBCdXJnZXNzIDxhYnVyZ2Vzc0ByZWRoYXQuY29tPgogICAgICAgICAg ICBEYXRlICAgOiAyMDI2LTA3LTA4VDIwOjI1OjQwKzAxOjAwCiAgICAgICAgICAgIFN0YXRzICA6 ICs2MzQvLTAgaW4gNCBmaWxlKHMpCiAgICAgICAgICAgIFVSTCAgICA6IGh0dHBzOi8vc3JjLmZl ZG9yYXByb2plY3Qub3JnL3JwbXMvZ2RiL2MvZjBmOWRhZjc1ODUxMjNhMjJlMzc2ODk3NmFmZDE5 NjQwOWMxYjhhZj9icmFuY2g9ZjQ0CgogICAgICAgICAgICBMb2c6CiAgICAgICAgICAgIGZpeCBy aGJ6MjM2ODM1MCAtIG91dCBvZiBtZW1vcnkgaXNzdWUgd2l0aCB0aGUgRCBkZW1hbmdsZXIKCkJh Y2twb3J0IG9mIHVwc3RyZWFtIGNvbW1pdCBiZTNhOTQwNWNlYjRkNmQ2IHRvIGZpeCBSSEJaIDIz NjgzNTAsIGFuCm91dCBvZiBtZW1vcnkgaXNzdWUgd2l0aCB0aGUgRCBkZW1hbmdsZXIuCgpUaGUg Y29tbWl0IGJlaW5nIHB1bGxlZCBpbiBoZXJlIGlzIGEgY29tbWl0IHRoYXQgc3luY3MgbXVsdGlw bGUKY29tbWl0cyB0byBsaWJpYmVydHkgZnJvbSBnY2MgdG8gYmludXRpbHMtZ2RiLiAgTW9zdCBv ZiB0aGVzZSBjb21taXRzCmFyZSBzcGVsbGluZyBhbmQgd2hpdGUgc3BhY2UgZml4ZXMsIHdoaWNo IHNob3VsZCBoYXZlIG5vIHJlYWwgaW1wYWN0LgpUaGUgb25seSBjb21taXQgd2UgYWN0dWFsbHkg Y2FyZSBhYm91dCBpcyBnY2MgY29tbWl0IGJjNGQ5YjZhZWIzLAp3aGljaCBmaXhlcyB0aGUgRCBk ZW1hbmdsZXIgaXNzdWUuCgpUaGlzIGNvbW1pdCB3aWxsIG5vdCBiZSBuZWVkZWQgb25jZSB3ZSBy ZWJhc2UgdG8gR0RCIDE4LgoKSSBkZWxpYmVyYXRlbHkgZG9uJ3QgaW5jcmVtZW50IHRoZSByZWxl YXNlIG51bWJlciBpbiB0aGlzIGNvbW1pdCBhcwp0aGlzIGlzIHRoZSBmaXJzdCBpbiBhIHR3byBw YXRjaCBzZXJpZXMsIHRoZSBzZWNvbmQgcGF0Y2ggd2lsbAppbmNyZW1lbnQgdGhlIHJlbGVhc2Ug bnVtYmVyLgoKLS0tCmRpZmYgLS1naXQgYS9fZ2RiLnNwZWMuUGF0Y2guaW5jbHVkZSBiL19nZGIu c3BlYy5QYXRjaC5pbmNsdWRlCmluZGV4IDMzOWIyMTYuLmJhNzY5MzQgMTAwNjQ0Ci0tLSBhL19n ZGIuc3BlYy5QYXRjaC5pbmNsdWRlCisrKyBiL19nZGIuc3BlYy5QYXRjaC5pbmNsdWRlCkBAIC03 OSwzICs3OSwxNSBAQCBQYXRjaDAxNDogZ2RiLXRjbDktdXRmOC1lbmNvZGluZy1maXgucGF0Y2gK ICMgZ2RiOiBiYWNrcG9ydCBEQVAgY29yZSBmaWxlIHN1cHBvcnQKIFBhdGNoMDE1OiBnZGItYmFj a3BvcnQtZGFwLWNvcmUtZmlsZS1zdXBwb3J0LnBhdGNoCiAKKyMgQmFja3BvcnQgb2YgdXBzdHJl YW0gY29tbWl0IGJlM2E5NDA1Y2ViNGQ2ZDYgdG8gZml4IFJIQlogMjM2ODM1MCwgYW4KKyMgb3V0 IG9mIG1lbW9yeSBpc3N1ZSB3aXRoIHRoZSBEIGRlbWFuZ2xlci4KKyMKKyMgVGhlIGNvbW1pdCBi ZWluZyBwdWxsZWQgaW4gaGVyZSBpcyBhIGNvbW1pdCB0aGF0IHN5bmNzIG11bHRpcGxlCisjIGNv bW1pdHMgdG8gbGliaWJlcnR5IGZyb20gZ2NjIHRvIGJpbnV0aWxzLWdkYi4gIE1vc3Qgb2YgdGhl c2UgY29tbWl0cworIyBhcmUgc3BlbGxpbmcgYW5kIHdoaXRlIHNwYWNlIGZpeGVzLCB3aGljaCBz aG91bGQgaGF2ZSBubyByZWFsIGltcGFjdC4KKyMgVGhlIG9ubHkgY29tbWl0IHdlIGFjdHVhbGx5 IGNhcmUgYWJvdXQgaXMgZ2NjIGNvbW1pdCBiYzRkOWI2YWViMywKKyMgd2hpY2ggZml4ZXMgdGhl IEQgZGVtYW5nbGVyIGlzc3VlLgorIworIyBUaGlzIGNvbW1pdCB3aWxsIG5vdCBiZSBuZWVkZWQg b25jZSB3ZSByZWJhc2UgdG8gR0RCIDE4LgorUGF0Y2gwMTY6IGdkYi1iYWNrcG9ydC1saWJpYmVy dHktc3luYy5wYXRjaAorCgpkaWZmIC0tZ2l0IGEvX3BhdGNoX29yZGVyIGIvX3BhdGNoX29yZGVy CmluZGV4IGNkZGI0MWIuLjcwN2VhYjEgMTAwNjQ0Ci0tLSBhL19wYXRjaF9vcmRlcgorKysgYi9f cGF0Y2hfb3JkZXIKQEAgLTEzLDMgKzEzLDQgQEAgZ2RiLWZpeC10ZXN0c3VpdGUtbmV3ZXItdGNs LnBhdGNoCiBnZGItcmhiejI0NjcyNTEtY29tcHV0ZWQtbG9jYXRpb24tc3ludGhldGljLXBvaW50 ZXJzLnBhdGNoCiBnZGItdGNsOS11dGY4LWVuY29kaW5nLWZpeC5wYXRjaAogZ2RiLWJhY2twb3J0 LWRhcC1jb3JlLWZpbGUtc3VwcG9ydC5wYXRjaAorZ2RiLWJhY2twb3J0LWxpYmliZXJ0eS1zeW5j LnBhdGNoCgpkaWZmIC0tZ2l0IGEvZ2RiLWJhY2twb3J0LWxpYmliZXJ0eS1zeW5jLnBhdGNoIGIv Z2RiLWJhY2twb3J0LWxpYmliZXJ0eS1zeW5jLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAuLmE4NGQ1ZTcKLS0tIC9kZXYvbnVsbAorKysgYi9nZGItYmFja3BvcnQtbGli aWJlcnR5LXN5bmMucGF0Y2gKQEAgLTAsMCArMSw2MTYgQEAKK0Zyb20gRkVET1JBX1BBVENIRVMg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBBbmRyZXcgQnVyZ2VzcyA8YWJ1cmdlc3NA cmVkaGF0LmNvbT4KK0RhdGU6IFRodSwgMTQgTWF5IDIwMjYgMDk6MjI6NDIgKzAwMDAKK1N1Ympl Y3Q6IGdkYi1iYWNrcG9ydC1saWJpYmVydHktc3luYy5wYXRjaAorCis7OyBCYWNrcG9ydCBvZiB1 cHN0cmVhbSBjb21taXQgYmUzYTk0MDVjZWI0ZDZkNiB0byBmaXggUkhCWiAyMzY4MzUwLCBhbgor Ozsgb3V0IG9mIG1lbW9yeSBpc3N1ZSB3aXRoIHRoZSBEIGRlbWFuZ2xlci4KKzs7Cis7OyBUaGUg Y29tbWl0IGJlaW5nIHB1bGxlZCBpbiBoZXJlIGlzIGEgY29tbWl0IHRoYXQgc3luY3MgbXVsdGlw bGUKKzs7IGNvbW1pdHMgdG8gbGliaWJlcnR5IGZyb20gZ2NjIHRvIGJpbnV0aWxzLWdkYi4gIE1v c3Qgb2YgdGhlc2UgY29tbWl0cworOzsgYXJlIHNwZWxsaW5nIGFuZCB3aGl0ZSBzcGFjZSBmaXhl cywgd2hpY2ggc2hvdWxkIGhhdmUgbm8gcmVhbCBpbXBhY3QuCis7OyBUaGUgb25seSBjb21taXQg d2UgYWN0dWFsbHkgY2FyZSBhYm91dCBpcyBnY2MgY29tbWl0IGJjNGQ5YjZhZWIzLAorOzsgd2hp Y2ggZml4ZXMgdGhlIEQgZGVtYW5nbGVyIGlzc3VlLgorOzsKKzs7IFRoaXMgY29tbWl0IHdpbGwg bm90IGJlIG5lZWRlZCBvbmNlIHdlIHJlYmFzZSB0byBHREIgMTguCisKK2xpYmliZXJ0eTogc3lu YyB3aXRoIGdjYyBjb21taXQgZGYzNTEwZjgwZTdjMDJkOQorCitTeW5jIHRoZSBsaWJpYmVydHkv IGRpcmVjdG9yeSB3aXRoIGdjYyBjb21taXQKK2RmMzUxMGY4MGU3YzAyZDljMTlkN2NiMzM3NTlj ZDkyNTg4MGY1M2EuICBUaGlzIHB1bGxzIGluIHRoZSBmb2xsb3dpbmcKK2djYyBjb21taXRzIGFu ZCB0aGUgYXNzb2NpYXRlZCB1cGRhdGVzIHRvICdsaWJpYmVydHkvQ2hhbmdlTG9nJzoKKworICAq IDA2ZmIwMGNiNjZkIGxpYmliZXJ0eTogRml4IHR5cG9zIGluIHZhcmlvdXMgZmlsZXMKKyAgKiBm YmY5MDNlNWI5ZiBSZS1mbG93IGxpbmVzIG1hZGUgbG9uZ2VyIHRoYW4gODAgY2hhcmFjdGVycyBi eSB0eXBvIGZpeGVzCisgICogY2ZiOTQ1OTU3ZWUgUmVnZW5lcmF0ZSBzb21lIGF1dG9jb25mIGNv bmZpZ3VyZSBzY3JpcHRzIGFmdGVyIHJlY2VudCBzcGVsbGluZyBmaXhlcy4KKyAgKiBiYzRkOWI2 YWViMyBsaWJpYmVydHk6IGF2b2lkIGV4cG9uZW50aWFsIGJhY2sgcmVmZXJlbmNlIGlzc3VlIGlu IEQgZGVtYW5nbGVyCisKK0kgaGF2ZSByZXRhaW5lZCB0aGUgY2hhbmdlcyB0aGF0IGFyZSBpbiB0 aGUgZm9sbG93aW5nIGJpbnV0aWxzLWdkYgorY29tbWl0LCB3aGljaCBhcmUgbm90IGluIGdjYzoK KworICBjb21taXQgMjE5ODIyZmQ1ZGI2MzA1NTkyYjQ1Njc3YTNiMzhjMDJiNTIzMzYwZQorICBE YXRlOiAgIFR1ZSBBcHIgOSAwNjozOToyMSAyMDI0IC0wNzAwCisKKyAgICBtbWFwOiBBdm9pZCB0 aGUgc2FuaXRpemVyIGNvbmZpZ3VyZSBjaGVjayBmYWlsdXJlCisKK2RpZmYgLS1naXQgYS9saWJp YmVydHkvQ2hhbmdlTG9nIGIvbGliaWJlcnR5L0NoYW5nZUxvZworLS0tIGEvbGliaWJlcnR5L0No YW5nZUxvZworKysrIGIvbGliaWJlcnR5L0NoYW5nZUxvZworQEAgLTEsMyArMSw2MiBAQAorKzIw MjYtMDYtMDcgIEFuZHJldyBCdXJnZXNzICA8YWJ1cmdlc3NAcmVkaGF0LmNvbT4KKysKKysJKiBk LWRlbWFuZ2xlLmMgKHN0cnVjdCBkbGFuZ19pbmZvOjpvcHRpb25zKTogTmV3IGZpZWxkLAorKwlj YXJyaWVzIG9wdGlvbnMgcGFzc2VkIHRvIHRoZSBkZW1hbmdsZXIuCisrCShzdHJ1Y3QgZGxhbmdf aW5mbzo6bnVtX2JhY2tyZWZzKTogQ291bnQgdG90YWwgbnVtYmVyIG9mIGJhY2sKKysJcmVmZXJl bmNlZCB0eXBlcyB0aGF0IGhhdmUgYmVlbiBwcm9jZXNzZWQuCisrCShzdHJ1Y3QgZGxhbmdfaW5m bzo6YmFja3JlZl9kZXB0aCk6IENvdW50IHRoZSBkZXB0aCBvZgorKwlyZWN1cnNpdmUgYmFjayBy ZWZlcmVuY2VzLgorKwkoZGxhbmdfdHlwZV9iYWNrcmVmKTogVHJhY2sgcmVjdXJzaXZlIGJhY2sg cmVmZXJlbmNlIGRlcHRoLAorKwlhbmQgdGhlIHRvdGFsIG51bWJlciBvZiBiYWNrIHJlZmVyZW5j ZXMgZW5jb3VudGVyZWQuICBCYWlsIG91dAorKwllYXJseSBpZiB0aGUgdG90YWwgbnVtYmVyIGdl dHMgdG9vIGhpZ2guCisrCShkbGFuZ19kZW1hbmdsZV9pbml0X2luZm8pOiBJbml0aWFsaXNlIG5l dyAnc3RydWN0IGRsYW5nX2luZm8nCisrCWZpZWxkcy4KKysJKGRsYW5nX2RlbWFuZ2xlKTogUGFz cyBkZW1hbmdsZXIgb3B0aW9ucyB0bworKwlkbGFuZ19kZW1hbmdsZV9pbml0X2luZm8uCisrCSog dGVzdHN1aXRlL2QtZGVtYW5nbGUtZXhwZWN0ZWQ6IEFkZCBuZXcgdGVzdC4KKysKKysyMDI2LTA2 LTAxICBKYWt1YiBKZWxpbmVrICA8amFrdWJAcmVkaGF0LmNvbT4KKysKKysJKiBjb25maWd1cmU6 IFJlZ2VuZXJhdGUuCisrCisrMjAyNi0wNS0zMCAgRGhydXYgQ2hhd2xhICA8ZGhydXZjQG52aWRp YS5jb20+CisrCisrCSogc2ltcGxlLW9iamVjdC1tYWNoLW8uYyAoc2ltcGxlX29iamVjdF9tYWNo X29fd3JpdGVfc2VnbWVudCk6IFJlZmxvdworKwlsb25nIGxpbmUuCisrCisrMjAyNi0wNS0zMCAg RGhydXYgQ2hhd2xhICA8ZGhydXZjQG52aWRpYS5jb20+CisrCisrCSogYmNvcHkuYzogRml4IHR5 cG9zLgorKwkqIGJzZWFyY2guYzogTGlrZXdpc2UuCisrCSogYnNlYXJjaF9yLmM6IExpa2V3aXNl LgorKwkqIGNvbmZpZ3VyZS5hYzogTGlrZXdpc2UuCisrCSogY3AtZGVtYW5nbGUuYyAoZF9wcmlu dF9jb21wX2lubmVyKTogTGlrZXdpc2UuCisrCShkX3ByaW50X2NvbXApOiBMaWtld2lzZS4KKysJ KiBkLWRlbWFuZ2xlLmMgKGRsYW5nX2lkZW50aWZpZXIpOiBMaWtld2lzZS4KKysJKiBkeW4tc3Ry aW5nLmM6IExpa2V3aXNlLgorKwkqIGxkaXJuYW1lLmM6IExpa2V3aXNlLgorKwkqIG1ha2UtcmVs YXRpdmUtcHJlZml4LmMgKG1ha2VfcmVsYXRpdmVfcHJlZml4XzEpOiBMaWtld2lzZS4KKysJKiBv YnN0YWNrcy50ZXhpOiBMaWtld2lzZS4KKysJKiBwZXgtd2luMzIuYyAoYXJndl90b19jbWRsaW5l KTogTGlrZXdpc2UuCisrCShzcGF3bl9zY3JpcHQpOiBMaWtld2lzZS4KKysJKiByYW5kb20uYyAo cmFuZG9tKTogTGlrZXdpc2UuCisrCShzZXRzdGF0ZSk6IExpa2V3aXNlLgorKwkqIHJlZ2V4LmMg KFdJREVfQ0hBUl9TVVBQT1JUKTogTGlrZXdpc2UuCisrCShjb252ZXJ0X21ic190b193Y3MpOiBM aWtld2lzZS4KKysJKFBSRUZJWCk6IExpa2V3aXNlLgorKwkod2NzX2NvbXBpbGVfcmFuZ2UpOiBM aWtld2lzZS4KKysJKGNvdW50X21ic19sZW5ndGgpOiBMaWtld2lzZS4KKysJKHdjc19yZV9tYXRj aF8yX2ludGVybmFsKTogTGlrZXdpc2UuCisrCShieXRlX3JlX21hdGNoXzJfaW50ZXJuYWwpOiBM aWtld2lzZS4KKysJKiBzaWdzZXRtYXNrLmM6IExpa2V3aXNlLgorKwkqIHNpbXBsZS1vYmplY3Qt ZWxmLmMgKFNIVF9TWU1UQUJfU0hORFgpOiBMaWtld2lzZS4KKysJKFNUVl9ISURERU4pOiBMaWtl d2lzZS4KKysJKHNpbXBsZV9vYmplY3RfZWxmX2NvcHlfbHRvX2RlYnVnX3NlY3Rpb25zKTogTGlr ZXdpc2UuCisrCSogc2ltcGxlLW9iamVjdC1tYWNoLW8uYyAoc3RydWN0IG1hY2hfb19oZWFkZXJf MzIpOiBMaWtld2lzZS4KKysJKHN0cnVjdCBtYWNoX29faGVhZGVyXzY0KTogTGlrZXdpc2UuCisr CShzaW1wbGVfb2JqZWN0X21hY2hfb193cml0ZV9zZWdtZW50KTogTGlrZXdpc2UuCisrCSogc3Ry c2lnbmFsLmMgKGRlZmluZWQpOiBMaWtld2lzZS4KKysKKyAyMDI1LTA4LTA2ICBNYXR0aGlldSBM b25nbyAgPG1hdHRoaWV1LmxvbmdvQGFybS5jb20+CisgCisgCSogdGVzdHN1aXRlL3Rlc3QtZG91 Ymx5LWxpbmtlZC1saXN0LmM6IGRpc2FibGUgZGVidWcgbG9nZ2luZyBvbgorZGlmZiAtLWdpdCBh L2xpYmliZXJ0eS9iY29weS5jIGIvbGliaWJlcnR5L2Jjb3B5LmMKKy0tLSBhL2xpYmliZXJ0eS9i Y29weS5jCisrKysgYi9saWJpYmVydHkvYmNvcHkuYworQEAgLTEsNCArMSw0IEBACistLyogYmNv cHkgLS0gY29weSBtZW1vcnkgcmVnaW9ucyBvZiBhcmJpdGFyeSBsZW5ndGgKKysvKiBiY29weSAt LSBjb3B5IG1lbW9yeSByZWdpb25zIG9mIGFyYml0cmFyeSBsZW5ndGgKKyAKKyBAZGVmdHlwZWZu IFN1cHBsZW1lbnRhbCB2b2lkIGJjb3B5IChjaGFyICpAdmFye2lufSwgY2hhciAqQHZhcntvdXR9 LCBpbnQgQHZhcntsZW5ndGh9KQorIAorZGlmZiAtLWdpdCBhL2xpYmliZXJ0eS9ic2VhcmNoLmMg Yi9saWJpYmVydHkvYnNlYXJjaC5jCistLS0gYS9saWJpYmVydHkvYnNlYXJjaC5jCisrKysgYi9s aWJpYmVydHkvYnNlYXJjaC5jCitAQCAtNjAsNyArNjAsNyBAQCBpcyByZXNwZWN0aXZlbHkgbGVz cyB0aGFuLCBtYXRjaGluZywgb3IgZ3JlYXRlciB0aGFuIHRoZSBhcnJheSBtZW1iZXIuCisgICog aXMgb2RkLCBtb3ZpbmcgbGVmdCBzaW1wbHkgaW52b2x2ZXMgaGFsdmluZyBsaW06IGUuZy4sIHdo ZW4gbGltCisgICogaXMgNSB3ZSBsb29rIGF0IGl0ZW0gMiwgc28gd2UgY2hhbmdlIGxpbSB0byAy IHNvIHRoYXQgd2Ugd2lsbAorICAqIGxvb2sgYXQgaXRlbXMgMCAmIDEuICBJZiBsaW0gaXMgZXZl biwgdGhlIHNhbWUgYXBwbGllcy4gIElmIGxpbQorLSAqIGlzIG9kZCwgbW92aW5nIHJpZ2h0IGFn YWluIGludm9sZXMgaGFsdmluZyBsaW0sIHRoaXMgdGltZSBtb3ZpbmcKKysgKiBpcyBvZGQsIG1v dmluZyByaWdodCBhZ2FpbiBpbnZvbHZlcyBoYWx2aW5nIGxpbSwgdGhpcyB0aW1lIG1vdmluZwor ICAqIHRoZSBiYXNlIHVwIG9uZSBpdGVtIHBhc3QgcDogZS5nLiwgd2hlbiBsaW0gaXMgNSB3ZSBj aGFuZ2UgYmFzZQorICAqIHRvIGl0ZW0gMyBhbmQgbWFrZSBsaW0gMiBzbyB0aGF0IHdlIHdpbGwg bG9vayBhdCBpdGVtcyAzIGFuZCA0LgorICAqIElmIGxpbSBpcyBldmVuLCBob3dldmVyLCB3ZSBo YXZlIHRvIHNocmluayBpdCBieSBvbmUgYmVmb3JlCitkaWZmIC0tZ2l0IGEvbGliaWJlcnR5L2Jz ZWFyY2hfci5jIGIvbGliaWJlcnR5L2JzZWFyY2hfci5jCistLS0gYS9saWJpYmVydHkvYnNlYXJj aF9yLmMKKysrKyBiL2xpYmliZXJ0eS9ic2VhcmNoX3IuYworQEAgLTYxLDcgKzYxLDcgQEAgaXMg cmVzcGVjdGl2ZWx5IGxlc3MgdGhhbiwgbWF0Y2hpbmcsIG9yIGdyZWF0ZXIgdGhhbiB0aGUgYXJy YXkgbWVtYmVyLgorICAqIGlzIG9kZCwgbW92aW5nIGxlZnQgc2ltcGx5IGludm9sdmVzIGhhbHZp bmcgbGltOiBlLmcuLCB3aGVuIGxpbQorICAqIGlzIDUgd2UgbG9vayBhdCBpdGVtIDIsIHNvIHdl IGNoYW5nZSBsaW0gdG8gMiBzbyB0aGF0IHdlIHdpbGwKKyAgKiBsb29rIGF0IGl0ZW1zIDAgJiAx LiAgSWYgbGltIGlzIGV2ZW4sIHRoZSBzYW1lIGFwcGxpZXMuICBJZiBsaW0KKy0gKiBpcyBvZGQs IG1vdmluZyByaWdodCBhZ2FpbiBpbnZvbGVzIGhhbHZpbmcgbGltLCB0aGlzIHRpbWUgbW92aW5n CisrICogaXMgb2RkLCBtb3ZpbmcgcmlnaHQgYWdhaW4gaW52b2x2ZXMgaGFsdmluZyBsaW0sIHRo aXMgdGltZSBtb3ZpbmcKKyAgKiB0aGUgYmFzZSB1cCBvbmUgaXRlbSBwYXN0IHA6IGUuZy4sIHdo ZW4gbGltIGlzIDUgd2UgY2hhbmdlIGJhc2UKKyAgKiB0byBpdGVtIDMgYW5kIG1ha2UgbGltIDIg c28gdGhhdCB3ZSB3aWxsIGxvb2sgYXQgaXRlbXMgMyBhbmQgNC4KKyAgKiBJZiBsaW0gaXMgZXZl biwgaG93ZXZlciwgd2UgaGF2ZSB0byBzaHJpbmsgaXQgYnkgb25lIGJlZm9yZQorZGlmZiAtLWdp dCBhL2xpYmliZXJ0eS9jb25maWd1cmUgYi9saWJpYmVydHkvY29uZmlndXJlCistLS0gYS9saWJp YmVydHkvY29uZmlndXJlCisrKysgYi9saWJpYmVydHkvY29uZmlndXJlCitAQCAtNTk2Nyw3ICs1 OTY3LDcgQEAgX0FDRU9GCisgCisgCisgCistIyBDaGVjayBmb3IgcHJlc2Vuc2Ugb2YgbG9uZyBs b25nCisrIyBDaGVjayBmb3IgcHJlc2VuY2Ugb2YgbG9uZyBsb25nCisgYWNfZm5fY19jaGVja190 eXBlICIkTElORU5PIiAibG9uZyBsb25nIiAiYWNfY3ZfdHlwZV9sb25nX2xvbmciICIkYWNfaW5j bHVkZXNfZGVmYXVsdCIKKyBpZiB0ZXN0ICJ4JGFjX2N2X3R5cGVfbG9uZ19sb25nIiA9IHh5ZXM7 IHRoZW4gOgorIAorZGlmZiAtLWdpdCBhL2xpYmliZXJ0eS9jb25maWd1cmUuYWMgYi9saWJpYmVy dHkvY29uZmlndXJlLmFjCistLS0gYS9saWJpYmVydHkvY29uZmlndXJlLmFjCisrKysgYi9saWJp YmVydHkvY29uZmlndXJlLmFjCitAQCAtMzAyLDcgKzMwMiw3IEBAIEFDX0NIRUNLX1NJWkVPRihb aW50XSkKKyBBQ19DSEVDS19TSVpFT0YoW2xvbmddKQorIEFDX0NIRUNLX1NJWkVPRihbc2l6ZV90 XSkKKyAKKy0jIENoZWNrIGZvciBwcmVzZW5zZSBvZiBsb25nIGxvbmcKKysjIENoZWNrIGZvciBw cmVzZW5jZSBvZiBsb25nIGxvbmcKKyBBQ19DSEVDS19UWVBFKFtsb25nIGxvbmddLAorICAgW0FD X0RFRklORShIQVZFX0xPTkdfTE9ORywgMSwgW0RlZmluZSBpZiB5b3UgaGF2ZSB0aGUgYGxvbmcg bG9uZycgdHlwZS5dKSBBQ19DSEVDS19TSVpFT0YoW2xvbmcgbG9uZ10pXSwKKyAgIFtdKQorZGlm ZiAtLWdpdCBhL2xpYmliZXJ0eS9jcC1kZW1hbmdsZS5jIGIvbGliaWJlcnR5L2NwLWRlbWFuZ2xl LmMKKy0tLSBhL2xpYmliZXJ0eS9jcC1kZW1hbmdsZS5jCisrKysgYi9saWJpYmVydHkvY3AtZGVt YW5nbGUuYworQEAgLTgyLDcgKzgyLDcgQEAKKyAKKyAgICBJTl9HTElCQ1BQX1YzCisgICAgICAg SWYgZGVmaW5lZCwgdGhpcyBmaWxlIGRlZmluZXMgb25seSBfX2N4YV9kZW1hbmdsZSgpIGFuZAor LSAgICAgIF9fZ2NjbGliY3h4X2RlbWFuZ2xlX2NhbGxiYWNrKCksIGFuZCBubyBvdGhlciBwdWJs aWNhbGx5IHZpc2libGUKKysgICAgICBfX2djY2xpYmN4eF9kZW1hbmdsZV9jYWxsYmFjaygpLCBh bmQgbm8gb3RoZXIgcHVibGljbHkgdmlzaWJsZQorICAgICAgIGZ1bmN0aW9ucyBvciB2YXJpYWJs ZXMuCisgCisgICAgU1RBTkRBTE9ORV9ERU1BTkdMRVIKK0BAIC01NTQ5LDcgKzU1NDksNyBAQCBk X3ByaW50X2NvbXBfaW5uZXIgKHN0cnVjdCBkX3ByaW50X2luZm8gKmRwaSwgaW50IG9wdGlvbnMs CisgCQljb25zdCBzdHJ1Y3QgZF9jb21wb25lbnRfc3RhY2sgKmRjc2U7CisgCQlpbnQgZm91bmRf c2VsZl9vcl9wYXJlbnQgPSAwOworIAorLQkJLyogVGhpcyB0cmF2ZXJzYWwgaXMgcmVlbnRlcmlu ZyBTVUIgYXMgYSBzdWJzdGl0aW9uLgorKwkJLyogVGhpcyB0cmF2ZXJzYWwgaXMgcmVlbnRlcmlu ZyBTVUIgYXMgYSBzdWJzdGl0dXRpb24uCisgCQkgICBJZiB3ZSBhcmUgbm90IGJlbmVhdGggU1VC IG9yIERDIGluIHRoZSB0cmVlIHRoZW4gd2UKKyAJCSAgIG5lZWQgdG8gcmVzdG9yZSBTVUIncyB0 ZW1wbGF0ZSBzdGFjayB0ZW1wb3JhcmlseS4gICovCisgCQlmb3IgKGRjc2UgPSBkcGktPmNvbXBv bmVudF9zdGFjazsgZGNzZSAhPSBOVUxMOworQEAgLTYzNDEsNyArNjM0MSw3IEBAIGRfcHJpbnRf Y29tcCAoc3RydWN0IGRfcHJpbnRfaW5mbyAqZHBpLCBpbnQgb3B0aW9ucywKKyAgIGRwaS0+cmVj dXJzaW9uLS07CisgfQorIAorLS8qIFByaW50IGEgSmF2YSBkZW50aWZpZXIuICBGb3IgSmF2YSB3 ZSB0cnkgdG8gaGFuZGxlIGVuY29kZWQgZXh0ZW5kZWQKKysvKiBQcmludCBhIEphdmEgaWRlbnRp Zmllci4gIEZvciBKYXZhIHdlIHRyeSB0byBoYW5kbGUgZW5jb2RlZCBleHRlbmRlZAorICAgIFVu aWNvZGUgY2hhcmFjdGVycy4gIFRoZSBDKysgQUJJIGRvZXNuJ3QgbWVudGlvbiBVbmljb2RlIGVu Y29kaW5nLAorICAgIHNvIHdlIGRvbid0IGl0IGZvciBDKysuICBDaGFyYWN0ZXJzIGFyZSBlbmNv ZGVkIGFzCisgICAgX19VPGhleC1jaGFyPitfLiAgKi8KK2RpZmYgLS1naXQgYS9saWJpYmVydHkv ZC1kZW1hbmdsZS5jIGIvbGliaWJlcnR5L2QtZGVtYW5nbGUuYworLS0tIGEvbGliaWJlcnR5L2Qt ZGVtYW5nbGUuYworKysrIGIvbGliaWJlcnR5L2QtZGVtYW5nbGUuYworQEAgLTE3NSw4ICsxNzUs MzMgQEAgc3RydWN0IGRsYW5nX2luZm8KKyB7CisgICAvKiBUaGUgc3RyaW5nIHdlIGFyZSBkZW1h bmdsaW5nLiAgKi8KKyAgIGNvbnN0IGNoYXIgKnM7CisrCisrICAvKiBUaGUgb3B0aW9ucyBwYXNz ZWQgdG8gdGhlIGRlbWFuZ2xlci4gICovCisrICBpbnQgb3B0aW9uczsKKysKKyAgIC8qIFRoZSBp bmRleCBvZiB0aGUgbGFzdCBiYWNrIHJlZmVyZW5jZS4gICovCisgICBpbnQgbGFzdF9iYWNrcmVm OworKworKyAgLyogVGhlIHRvdGFsIG51bWJlciBvZiBiYWNrIHJlZmVyZW5jZWQgdHlwZXMsIGlu Y2x1ZGluZyBuZXN0ZWQgYmFjaworKyAgICAgcmVmZXJlbmNlZCB0eXBlcy4gIFRoaXMgaXMgcmVz ZXQgdG8gemVybyBlYWNoIHRpbWUgYSBiYWNrCisrICAgICByZWZlcmVuY2UgaXMgcHJvY2Vzc2Vk IGF0IHRoZSAidG9wIGxldmVsIiAoaS5lLiBub3QgYSBuZXN0ZWQgYmFjaworKyAgICAgcmVmZXJl bmNlKS4KKysKKysgICAgIENhc2VzIGhhdmUgYmVlbiBlbmNvdW50ZXJlZCB3aGVyZSBhIGJhY2sg cmVmZXJlbmNlIHR5cGUgaW5jbHVkZXMKKysgICAgIHJlZmVyZW5jZXMgdG8gb3RoZXIgYmFjayBy ZWZlcmVuY2UgdHlwZXMsIHdoaWNoIGluY2x1ZGUgZnVydGhlcgorKyAgICAgYmFjayByZWZlcmVu Y2VzLiAgVGhpcyB3YXMgb2JzZXJ2ZWQgdG8gYSBkZXB0aCBvZiA1Ny4gIElmIGVhY2gKKysgICAg IGxheWVyIG9ubHkgcmVmZXJlbmNlcyB0aGUgbGF5ZXIgYmVmb3JlIHR3aWNlIHRoZW4gdGhlIGlu bmVybW9zdAorKyAgICAgc3RyaW5nIHdpbGwgYmUgZHVwbGljYXRlZCAyXjU3IHRpbWVzIQorKwor KyAgICAgV2UgY291bnQgdGhlIG51bWJlciBvZiBuZXN0ZWQgYmFjayByZWZlcmVuY2VzIGFuZCBj b21wYXJlIHRoaXMgdG8KKysgICAgIHRoZSByZWN1cnNpb24gbGltaXQsIGV2ZW4gdGhvdWdoIHRo aXMgaXNuJ3Qgc3RyaWN0bHkgcmVjdXJzaW9uLiAgKi8KKysgIGludCBudW1fYmFja3JlZnM7Cisr CisrICAvKiBUcmFjayB0aGUgZGVwdGggb2YgYmFjayByZWZlcmVuY2VzLiAgRGVwdGggMCBpcyBj b25zaWRlcmVkIHRoZQorKyAgICAgdG9wIGxldmVsLiAgV2hlbiB3ZSBlbmNvdW50ZXIgYSBiYWNr IHJlZmVyZW5jZSBhdCB0aGlzIGRlcHRoIHRoZQorKyAgICAgTlVNX0JBQ0tSRUZTIGZpZWxkIGlz IHJlc2V0IHRvIDAuICBBdCBncmVhdGVyIGRlcHRocywKKysgICAgIE5VTV9CQUNLUkVGUyB3aWxs IGJlIGluY3JlbWVudGVkLiAgKi8KKysgIGludCBiYWNrcmVmX2RlcHRoOworIH07CisgCisgLyog UGFzcyBhcyB0aGUgTEVOIHRvIGRsYW5nX3BhcnNlX3RlbXBsYXRlIGlmIHN5bWJvbCBsZW5ndGgg aXMgbm90IGtub3duLiAgKi8KK0BAIC00MTEsNiArNDM2LDI0IEBAIGRsYW5nX3R5cGVfYmFja3Jl ZiAoc3RyaW5nICpkZWNsLCBjb25zdCBjaGFyICptYW5nbGVkLCBzdHJ1Y3QgZGxhbmdfaW5mbyAq aW5mbywKKyAgIGlmIChtYW5nbGVkIC0gaW5mby0+cyA+PSBpbmZvLT5sYXN0X2JhY2tyZWYpCisg ICAgIHJldHVybiBOVUxMOworIAorKyAgLyogQSBiYWNrIHJlZmVyZW5jZSBtaWdodCBwb2ludCB0 byBhIHR5cGUgdGhhdCBpdHNlbGYgY29udGFpbnMgYmFjaworKyAgICAgcmVmZXJlbmNlcywgd2hp Y2ggbWlnaHQgdGhlbXNlbHZlcyBjb250YWluIGJhY2sgcmVmZXJlbmNlcy4KKysgICAgIFRoZXJl IG1pZ2h0IG5vdCBiZSByZWN1cnNpb24gZ29pbmcgb24sIGJ1dCB3ZSBjYW4gcnVuIGludG8KKysg ICAgIHByb2JsZW1zIG9mIGV4cG9uZW50aWFsIGdyb3d0aCBjYXVzZWQgYnkgdGhlIGlubmVyIHR5 cGUgYXBwZWFyaW5nCisrICAgICB0byBiZSByZWZlcmVuY2VkIDEwcyBvZiBtaWxsaW9ucyBvZiB0 aW1lcy4gICovCisrICBpZiAoaW5mby0+YmFja3JlZl9kZXB0aCA+IDApCisrICAgIHsKKysgICAg ICBpZiAoKGluZm8tPm9wdGlvbnMgJiBETUdMX05PX1JFQ1VSU0VfTElNSVQpID09IDAKKysJICAm JiBpbmZvLT5udW1fYmFja3JlZnMgPiBERU1BTkdMRV9SRUNVUlNJT05fTElNSVQpCisrCXJldHVy biBOVUxMOworKworKyAgICAgIGluZm8tPm51bV9iYWNrcmVmcysrOworKyAgICB9CisrICBlbHNl CisrICAgIGluZm8tPm51bV9iYWNrcmVmcyA9IDA7CisrCisrICBpbmZvLT5iYWNrcmVmX2RlcHRo Kys7CisrCisgICBpbnQgc2F2ZV9yZWZwb3MgPSBpbmZvLT5sYXN0X2JhY2tyZWY7CisgICBpbmZv LT5sYXN0X2JhY2tyZWYgPSBtYW5nbGVkIC0gaW5mby0+czsKKyAKK0BAIC00MjQsNiArNDY3LDcg QEAgZGxhbmdfdHlwZV9iYWNrcmVmIChzdHJpbmcgKmRlY2wsIGNvbnN0IGNoYXIgKm1hbmdsZWQs IHN0cnVjdCBkbGFuZ19pbmZvICppbmZvLAorICAgICBiYWNrcmVmID0gZGxhbmdfdHlwZSAoZGVj bCwgYmFja3JlZiwgaW5mbyk7CisgCisgICBpbmZvLT5sYXN0X2JhY2tyZWYgPSBzYXZlX3JlZnBv czsKKysgIGluZm8tPmJhY2tyZWZfZGVwdGgtLTsKKyAKKyAgIGlmIChiYWNrcmVmID09IE5VTEwp CisgICAgIHJldHVybiBOVUxMOworQEAgLTEwNjcsNyArMTExMSw3IEBAIGRsYW5nX2lkZW50aWZp ZXIgKHN0cmluZyAqZGVjbCwgY29uc3QgY2hhciAqbWFuZ2xlZCwgc3RydWN0IGRsYW5nX2luZm8g KmluZm8pCisgfQorIAorIC8qIEV4dHJhY3QgdGhlIHBsYWluIGlkZW50aWZpZXIgZnJvbSBNQU5H TEVEIGFuZCBwcmVwZW5kL2FwcGVuZCBpdCB0byBERUNMCistICAgd2l0aCBzcGVjaWFsIHRyZWF0 bWVudCBmb3Igc29tZSBtYWdpYyBjb21waWxlciBnZW5lcnRlZCBzeW1ib2xzLgorKyAgIHdpdGgg c3BlY2lhbCB0cmVhdG1lbnQgZm9yIHNvbWUgbWFnaWMgY29tcGlsZXIgZ2VuZXJhdGVkIHN5bWJv bHMuCisgICAgUmV0dXJuIHRoZSByZW1haW5pbmcgc3RyaW5nIG9uIHN1Y2Nlc3Mgb3IgTlVMTCBv biBmYWlsdXJlLiAgKi8KKyBzdGF0aWMgY29uc3QgY2hhciAqCisgZGxhbmdfbG5hbWUgKHN0cmlu ZyAqZGVjbCwgY29uc3QgY2hhciAqbWFuZ2xlZCwgdW5zaWduZWQgbG9uZyBsZW4pCitAQCAtMTkz MSwxNyArMTk3NSwyMCBAQCBkbGFuZ19wYXJzZV90ZW1wbGF0ZSAoc3RyaW5nICpkZWNsLCBjb25z dCBjaGFyICptYW5nbGVkLAorIC8qIEluaXRpYWxpemUgdGhlIGluZm9ybWF0aW9uIHN0cnVjdHVy ZSB3ZSB1c2UgdG8gcGFzcyBhcm91bmQgaW5mb3JtYXRpb24uICAqLworIHN0YXRpYyB2b2lkCisg ZGxhbmdfZGVtYW5nbGVfaW5pdF9pbmZvIChjb25zdCBjaGFyICptYW5nbGVkLCBpbnQgbGFzdF9i YWNrcmVmLAorLQkJCSAgc3RydWN0IGRsYW5nX2luZm8gKmluZm8pCisrCQkJICBpbnQgb3B0aW9u cywgc3RydWN0IGRsYW5nX2luZm8gKmluZm8pCisgeworICAgaW5mby0+cyA9IG1hbmdsZWQ7Cisr ICBpbmZvLT5vcHRpb25zID0gb3B0aW9uczsKKyAgIGluZm8tPmxhc3RfYmFja3JlZiA9IGxhc3Rf YmFja3JlZjsKKysgIGluZm8tPm51bV9iYWNrcmVmcyA9IDA7CisrICBpbmZvLT5iYWNrcmVmX2Rl cHRoID0gMDsKKyB9CisgCisgLyogRXh0cmFjdCBhbmQgZGVtYW5nbGUgdGhlIHN5bWJvbCBpbiBN QU5HTEVELiAgUmV0dXJucyB0aGUgZGVtYW5nbGVkCisgICAgc2lnbmF0dXJlIG9uIHN1Y2Nlc3Mg b3IgTlVMTCBvbiBmYWlsdXJlLiAgKi8KKyAKKyBjaGFyICoKKy1kbGFuZ19kZW1hbmdsZSAoY29u c3QgY2hhciAqbWFuZ2xlZCwgaW50IG9wdGlvbiBBVFRSSUJVVEVfVU5VU0VEKQorK2RsYW5nX2Rl bWFuZ2xlIChjb25zdCBjaGFyICptYW5nbGVkLCBpbnQgb3B0aW9ucykKKyB7CisgICBzdHJpbmcg ZGVjbDsKKyAgIGNoYXIgKmRlbWFuZ2xlZCA9IE5VTEw7CitAQCAtMTk2Miw3ICsyMDA5LDcgQEAg ZGxhbmdfZGVtYW5nbGUgKGNvbnN0IGNoYXIgKm1hbmdsZWQsIGludCBvcHRpb24gQVRUUklCVVRF X1VOVVNFRCkKKyAgICAgeworICAgICAgIHN0cnVjdCBkbGFuZ19pbmZvIGluZm87CisgCistICAg ICAgZGxhbmdfZGVtYW5nbGVfaW5pdF9pbmZvIChtYW5nbGVkLCBzdHJsZW4gKG1hbmdsZWQpLCAm aW5mbyk7CisrICAgICAgZGxhbmdfZGVtYW5nbGVfaW5pdF9pbmZvIChtYW5nbGVkLCBzdHJsZW4g KG1hbmdsZWQpLCBvcHRpb25zLCAmaW5mbyk7CisgICAgICAgbWFuZ2xlZCA9IGRsYW5nX3BhcnNl X21hbmdsZSAoJmRlY2wsIG1hbmdsZWQsICZpbmZvKTsKKyAKKyAgICAgICAvKiBDaGVjayB0aGF0 IHRoZSBlbnRpcmUgc3ltYm9sIHdhcyBzdWNjZXNzZnVsbHkgZGVtYW5nbGVkLiAgKi8KK2RpZmYg LS1naXQgYS9saWJpYmVydHkvZHluLXN0cmluZy5jIGIvbGliaWJlcnR5L2R5bi1zdHJpbmcuYwor LS0tIGEvbGliaWJlcnR5L2R5bi1zdHJpbmcuYworKysrIGIvbGliaWJlcnR5L2R5bi1zdHJpbmcu YworQEAgLTQ5LDggKzQ5LDggQEAgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuICAqLworICAg IGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHdpdGggYSBkeW5fc3RyaW5nIHN0cnVjdCBvbiB0aGUgc3Rh Y2sgb3IKKyAgICBlbWJlZGRlZCBpbiBhbm90aGVyIG9iamVjdC4gIFRoZSBjb250ZW50cyBvZiB0 aGUgc3RyaW5nIGl0c2VsZgorICAgIGFyZSBzdGlsbCBkeW5hbWljYWxseSBhbGxvY2F0ZWQuICBU aGUgc3RyaW5nIGluaXRpYWxseSBpcyBjYXBhYmxlCistICAgb2YgaG9sZGluZyBhdCBsZWFzdCBT UEFDRSBjaGFyYWNldGVycywgaW5jbHVkaW5nIHRoZSB0ZXJtaW5hdGluZworLSAgIE5VTC4gIElm IFNQQUNFIGlzIDAsIGl0IHdpbGwgc2lsZW50bHkgYmUgaW5jcmVhdGVkIHRvIDEuICAKKysgICBv ZiBob2xkaW5nIGF0IGxlYXN0IFNQQUNFIGNoYXJhY3RlcnMsIGluY2x1ZGluZyB0aGUgdGVybWlu YXRpbmcKKysgICBOVUwuICBJZiBTUEFDRSBpcyAwLCBpdCB3aWxsIHNpbGVudGx5IGJlIGluY3Jl YXNlZCB0byAxLiAgCisgCisgICAgSWYgUkVUVVJOX09OX0FMTE9DQVRJT05fRkFJTFVSRSBpcyBk ZWZpbmVkIGFuZCBtZW1vcnkgYWxsb2NhdGlvbgorICAgIGZhaWxzLCByZXR1cm5zIDAuICBPdGhl cndpc2UgcmV0dXJucyAxLiAgKi8KK2RpZmYgLS1naXQgYS9saWJpYmVydHkvbGRpcm5hbWUuYyBi L2xpYmliZXJ0eS9sZGlybmFtZS5jCistLS0gYS9saWJpYmVydHkvbGRpcm5hbWUuYworKysrIGIv bGliaWJlcnR5L2xkaXJuYW1lLmMKK0BAIC0yNiw3ICsyNiw3IEBAIEdpdmVuIGEgcG9pbnRlciB0 byBhIHN0cmluZyBjb250YWluaW5nIGEgdHlwaWNhbCBwYXRobmFtZQorIChAc2FtcHsvdXNyL3Ny Yy9jbWQvbHMvbHMuY30gZm9yIGV4YW1wbGUpLCByZXR1cm5zIGEgc3RyaW5nIGNvbnRhaW5pbmcg dGhlCisgcGFzc2VkIHN0cmluZyB1cCB0bywgYnV0IG5vdCBpbmNsdWRpbmcsIHRoZSBmaW5hbCBk aXJlY3Rvcnkgc2VwYXJhdG9yLgorIAorLUlmIHRoZSBnaXZlbiBwYXRobmFtZSBkb2Vzbid0IGNv bnRhaW4gYSBkaXJlY3Rvcnkgc2VwYXJhdG9yIHRoZW4gdGhpcyBmdW50aW9uCisrSWYgdGhlIGdp dmVuIHBhdGhuYW1lIGRvZXNuJ3QgY29udGFpbiBhIGRpcmVjdG9yeSBzZXBhcmF0b3IgdGhlbiB0 aGlzIGZ1bmN0aW9uCisgcmV0dXJucyB0aGUgZW1wdHkgc3RyaW5nOyB0aGlzIGluY2x1ZGVzIGFu IGVtcHR5IGdpdmVuIHBhdGhuYW1lLiAgQGNvZGV7TlVMTH0KKyBpcyByZXR1cm5lZCBvbiBtZW1v cnkgYWxsb2NhdGlvbiBlcnJvci4KKyAKK2RpZmYgLS1naXQgYS9saWJpYmVydHkvbWFrZS1yZWxh dGl2ZS1wcmVmaXguYyBiL2xpYmliZXJ0eS9tYWtlLXJlbGF0aXZlLXByZWZpeC5jCistLS0gYS9s aWJpYmVydHkvbWFrZS1yZWxhdGl2ZS1wcmVmaXguYworKysrIGIvbGliaWJlcnR5L21ha2UtcmVs YXRpdmUtcHJlZml4LmMKK0BAIC00MTAsNyArNDEwLDcgQEAgbWFrZV9yZWxhdGl2ZV9wcmVmaXhf MSAoY29uc3QgY2hhciAqcHJvZ25hbWUsIGNvbnN0IGNoYXIgKmJpbl9wcmVmaXgsCisgLyogRG8g dGhlIGZ1bGwgam9iLCBpbmNsdWRpbmcgc3ltbGluayByZXNvbHV0aW9uLgorICAgIFRoaXMgcGF0 aCB3aWxsIGZpbmQgZmlsZXMgaW5zdGFsbGVkIGluIHRoZSBzYW1lIHBsYWNlIGFzIHRoZQorICAg IHByb2dyYW0gZXZlbiB3aGVuIGEgc29mdCBsaW5rIGhhcyBiZWVuIG1hZGUgdG8gdGhlIHByb2dy YW0KKy0gICBmcm9tIHNvbXdoZXJlIGVsc2UuICovCisrICAgZnJvbSBzb21ld2hlcmUgZWxzZS4g Ki8KKyAKKyBjaGFyICoKKyBtYWtlX3JlbGF0aXZlX3ByZWZpeCAoY29uc3QgY2hhciAqcHJvZ25h bWUsIGNvbnN0IGNoYXIgKmJpbl9wcmVmaXgsCitkaWZmIC0tZ2l0IGEvbGliaWJlcnR5L29ic3Rh Y2tzLnRleGkgYi9saWJpYmVydHkvb2JzdGFja3MudGV4aQorLS0tIGEvbGliaWJlcnR5L29ic3Rh Y2tzLnRleGkKKysrKyBiL2xpYmliZXJ0eS9vYnN0YWNrcy50ZXhpCitAQCAtNjk1LDcgKzY5NSw3 IEBAIEluaXRpYWxpemUgdXNlIG9mIGFuIG9ic3RhY2ssIHdpdGggYW4gaW5pdGlhbCBjaHVuayBv ZgorIEB2YXJ7Y2h1bmtfc2l6ZX0gYnl0ZXMuCisgCisgQGl0ZW0gaW50IG9ic3RhY2tfc3BlY2lm eV9hbGxvY2F0aW9uIChzdHJ1Y3Qgb2JzdGFjayAqQHZhcntvYnN0YWNrLXB0cn0sIHNpemVfdCBj aHVua19zaXplLCBzaXplX3QgYWxpZ25tZW50LCB2b2lkICooKmNodW5rZnVuKSAoc2l6ZV90KSwg dm9pZCAoKmZyZWVmdW4pICh2b2lkICopKQorLUluaXRpYWxpemUgdXNlIG9mIGFuIG9ic3RhY2ss IHNwZWNpZnlpbmcgaW50aWFsIGNodW5rIHNpemUsIGNodW5rCisrSW5pdGlhbGl6ZSB1c2Ugb2Yg YW4gb2JzdGFjaywgc3BlY2lmeWluZyBpbml0aWFsIGNodW5rIHNpemUsIGNodW5rCisgYWxpZ25t ZW50LCBhbmQgbWVtb3J5IGFsbG9jYXRpb24gZnVuY3Rpb25zLgorIAorIEBpdGVtIGludCBvYnN0 YWNrX3NwZWNpZnlfYWxsb2NhdGlvbl93aXRoX2FyZyAoc3RydWN0IG9ic3RhY2sgKkB2YXJ7b2Jz dGFjay1wdHJ9LCBzaXplX3QgY2h1bmtfc2l6ZSwgc2l6ZV90IGFsaWdubWVudCwgdm9pZCAqKCpj aHVua2Z1bikgKHZvaWQgKiwgc2l6ZV90KSwgdm9pZCAoKmZyZWVmdW4pICh2b2lkICosIHZvaWQg KiksIHZvaWQgKmFyZykKK2RpZmYgLS1naXQgYS9saWJpYmVydHkvcGV4LXdpbjMyLmMgYi9saWJp YmVydHkvcGV4LXdpbjMyLmMKKy0tLSBhL2xpYmliZXJ0eS9wZXgtd2luMzIuYworKysrIGIvbGli aWJlcnR5L3BleC13aW4zMi5jCitAQCAtMzUwLDcgKzM1MCw3IEBAIGFyZ3ZfdG9fY21kbGluZSAo Y2hhciAqY29uc3QgKmFyZ3YpCisgICAgICAgLyogV2Ugb25seSBxdW90ZSBhcmd1bWVudHMgdGhh dCBjb250YWluIHNwYWNlcywgXHQgb3IgIiBjaGFyYWN0ZXJzIHRvCisgCSBwcmV2ZW50IHdhc3Rp bmcgMiBjaGFycyBwZXIgYXJndW1lbnQgb2YgdGhlIENyZWF0ZVByb2Nlc3MgMzJrIGNoYXIKKyAJ IGxpbWl0LiAgV2UgbmVlZCBvbmx5IGVzY2FwZSBlbWJlZGRlZCBkb3VibGUtcXVvdGVzIGFuZCBp bW1lZGlhdGVseQorLQkgcHJlY2VlZGluZyBiYWNrc2xhc2ggY2hhcmFjdGVycy4gIEEgc2VxdWVu Y2Ugb2YgYmFja3NsYWNoIGNoYXJhY3RlcnMKKysJIHByZWNlZGluZyBiYWNrc2xhc2ggY2hhcmFj dGVycy4gIEEgc2VxdWVuY2Ugb2YgYmFja3NsYWNoIGNoYXJhY3RlcnMKKyAJIHRoYXQgaXMgbm90 IGZvbGxvd2VkIGJ5IGEgZG91YmxlIHF1b3RlIGNoYXJhY3RlciB3aWxsIG5vdCBiZQorIAkgZXNj YXBlZC4gICovCisgICAgICAgbmVlZHNfcXVvdGVzID0gMDsKK0BAIC0zNjMsNyArMzYzLDcgQEAg YXJndl90b19jbWRsaW5lIChjaGFyICpjb25zdCAqYXJndikKKyAKKyAJICBpZiAoYXJndltpXVtq XSA9PSAnIicpCisgCSAgICB7CistCSAgICAgIC8qIEVzY2FwZSBwcmVjZWVkaW5nIGJhY2tzbGFz aGVzLiAgKi8KKysJICAgICAgLyogRXNjYXBlIHByZWNlZGluZyBiYWNrc2xhc2hlcy4gICovCisg CSAgICAgIGZvciAoayA9IGogLSAxOyBrID49IDAgJiYgYXJndltpXVtrXSA9PSAnXFwnOyBrLS0p CisgCQljbWRsaW5lX2xlbisrOworIAkgICAgICAvKiBFc2NhcGUgdGhlIHF1b3RlIGNoYXJhY3Rl ci4gICovCitAQCAtNjk1LDcgKzY5NSw3IEBAIHNwYXduX3NjcmlwdCAoc3RydWN0IHBleF9vYmog Km9iaiwKKyAgIGludCBmZCA9IF9vcGVuIChleGVjdXRhYmxlLCBfT19SRE9OTFkpOworIAorICAg LyogVHJ5IHRvIG9wZW4gc2NyaXB0LCBjaGVjayBoZWFkZXIgZm9ybWF0LCBleHRyYWN0IGludGVy cHJldGVyIHBhdGgsCistICAgICBhbmQgc3Bhd24gc2NyaXB0IHVzaW5nIHRoYXQgaW50ZXJwcmV0 dGVyLiAqLworKyAgICAgYW5kIHNwYXduIHNjcmlwdCB1c2luZyB0aGF0IGludGVycHJldGVyLiAq LworICAgaWYgKGZkID49IDApCisgICAgIHsKKyAgICAgICBjaGFyIGJ1ZltNQVhfUEFUSCArIDVd OworZGlmZiAtLWdpdCBhL2xpYmliZXJ0eS9yYW5kb20uYyBiL2xpYmliZXJ0eS9yYW5kb20uYwor LS0tIGEvbGliaWJlcnR5L3JhbmRvbS5jCisrKysgYi9saWJpYmVydHkvcmFuZG9tLmMKK0BAIC04 OCw3ICs4OCw3IEBAIGxvbmcgaW50IHJhbmRvbSAodm9pZCk7CisgICAgdGhlbiBpbml0aWFsaXpl ZCB0byBjb250YWluIGluZm9ybWF0aW9uIGZvciByYW5kb20gbnVtYmVyIGdlbmVyYXRpb24gd2l0 aAorICAgIHRoYXQgbXVjaCBzdGF0ZSBpbmZvcm1hdGlvbi4gIEdvb2Qgc2l6ZXMgZm9yIHRoZSBh bW91bnQgb2Ygc3RhdGUKKyAgICBpbmZvcm1hdGlvbiBhcmUgMzIsIDY0LCAxMjgsIGFuZCAyNTYg Ynl0ZXMuICBUaGUgc3RhdGUgY2FuIGJlIHN3aXRjaGVkIGJ5CistICAgY2FsbGluZyB0aGUgc2V0 c3RhdGUoKSBmdW5jdGlvbiB3aXRoIHRoZSBzYW1lIGFycmF5IGFzIHdhcyBpbml0aWFsbGl6ZWQK KysgICBjYWxsaW5nIHRoZSBzZXRzdGF0ZSgpIGZ1bmN0aW9uIHdpdGggdGhlIHNhbWUgYXJyYXkg YXMgd2FzIGluaXRpYWxpemVkCisgICAgd2l0aCBpbml0c3RhdGUoKS4gIEJ5IGRlZmF1bHQsIHRo ZSBwYWNrYWdlIHJ1bnMgd2l0aCAxMjggYnl0ZXMgb2Ygc3RhdGUKKyAgICBpbmZvcm1hdGlvbiBh bmQgZ2VuZXJhdGVzIGZhciBiZXR0ZXIgcmFuZG9tIG51bWJlcnMgdGhhbiBhIGxpbmVhcgorICAg IGNvbmdydWVudGlhbCBnZW5lcmF0b3IuICBJZiB0aGUgYW1vdW50IG9mIHN0YXRlIGluZm9ybWF0 aW9uIGlzIGxlc3MgdGhhbgorQEAgLTM2Miw3ICszNjIsNyBAQCBzZXRzdGF0ZSAodm9pZCAqYXJn X3N0YXRlKQorIAwKKyAvKiBJZiB3ZSBhcmUgdXNpbmcgdGhlIHRyaXZpYWwgVFlQRV8wIFIuTi5H LiwganVzdCBkbyB0aGUgb2xkIGxpbmVhcgorICAgIGNvbmdydWVudGlhbCBiaXQuICBPdGhlcndp c2UsIHdlIGRvIG91ciBmYW5jeSB0cmlub21pYWwgc3R1ZmYsIHdoaWNoIGlzIHRoZQorLSAgIHNh bWUgaW4gYWxsIHRoZXIgb3RoZXIgY2FzZXMgZHVlIHRvIGFsbCB0aGUgZ2xvYmFsIHZhcmlhYmxl cyB0aGF0IGhhdmUgYmVlbgorKyAgIHNhbWUgaW4gYWxsIHRoZSBvdGhlciBjYXNlcyBkdWUgdG8g YWxsIHRoZSBnbG9iYWwgdmFyaWFibGVzIHRoYXQgaGF2ZSBiZWVuCisgICAgc2V0IHVwLiAgVGhl IGJhc2ljIG9wZXJhdGlvbiBpcyB0byBhZGQgdGhlIG51bWJlciBhdCB0aGUgcmVhciBwb2ludGVy IGludG8KKyAgICB0aGUgb25lIGF0IHRoZSBmcm9udCBwb2ludGVyLiAgVGhlbiBib3RoIHBvaW50 ZXJzIGFyZSBhZHZhbmNlZCB0byB0aGUgbmV4dAorICAgIGxvY2F0aW9uIGN5Y2xpY2FsbHkgaW4g dGhlIHRhYmxlLiAgVGhlIHZhbHVlIHJldHVybmVkIGlzIHRoZSBzdW0gZ2VuZXJhdGVkLAorZGlm ZiAtLWdpdCBhL2xpYmliZXJ0eS9yZWdleC5jIGIvbGliaWJlcnR5L3JlZ2V4LmMKKy0tLSBhL2xp YmliZXJ0eS9yZWdleC5jCisrKysgYi9saWJpYmVydHkvcmVnZXguYworQEAgLTU4LDcgKzU4LDcg QEAKKyAKKyAjIGRlZmluZSBXSURFX0NIQVJfU1VQUE9SVCAoSEFWRV9XQ1RZUEVfSCAmJiBIQVZF X1dDSEFSX0ggJiYgSEFWRV9CVE9XQykKKyAKKy0vKiBGb3IgcGxhdGZvcm0gd2hpY2ggc3VwcG9y dCB0aGUgSVNPIEMgYW1lbmRlbWVudCAxIGZ1bmN0aW9uYWxpdHkgd2UKKysvKiBGb3IgcGxhdGZv cm0gd2hpY2ggc3VwcG9ydCB0aGUgSVNPIEMgYW1lbmRtZW50IDEgZnVuY3Rpb25hbGl0eSB3ZQor ICAgIHN1cHBvcnQgdXNlciBkZWZpbmVkIGNoYXJhY3RlciBjbGFzc2VzLiAgKi8KKyAjIGlmIGRl ZmluZWQgX0xJQkMgfHwgV0lERV9DSEFSX1NVUFBPUlQKKyAvKiBTb2xhcmlzIDIuNSBoYXMgYSBi dWc6IDx3Y2hhci5oPiBtdXN0IGJlIGluY2x1ZGVkIGJlZm9yZSA8d2N0eXBlLmg+LiAgKi8KK0BA IC0xMjM1LDcgKzEyMzUsNyBAQCBwcmludGNoYXIgKGludCBjKQorIAorICMgaWZkZWYgV0NIQVIK KyAvKiBUaGlzICBjb252ZXJ0IGEgbXVsdGlieXRlIHN0cmluZyB0byBhIHdpZGUgY2hhcmFjdGVy IHN0cmluZy4KKy0gICBBbmQgd3JpdGUgdGhlaXIgY29ycmVzcG9uZGFuY2VzIHRvIG9mZnNldF9i dWZmZXIoc2VlIGJlbG93KQorKyAgIEFuZCB3cml0ZSB0aGVpciBjb3JyZXNwb25kZW5jZXMgdG8g b2Zmc2V0X2J1ZmZlcihzZWUgYmVsb3cpCisgICAgYW5kIHdyaXRlIHdoZXRoZXIgZWFjaCB3Y2hh cl90IGlzIGJpbmFyeSBkYXRhIHRvIGlzX2JpbmFyeS4KKyAgICBUaGlzIGFzc3VtZSBpbnZhbGlk IG11bHRpYnl0ZSBzZXF1ZW5jZXMgYXMgYmluYXJ5IGRhdGEuCisgICAgV2UgYXNzdW1lIG9mZnNl dF9idWZmZXIgYW5kIGlzX2JpbmFyeSBpcyBhbHJlYWR5IGFsbG9jYXRlZAorQEAgLTEyNDcsNyAr MTI0Nyw3IEBAIHN0YXRpYyBzaXplX3QgY29udmVydF9tYnNfdG9fd2NzIChDSEFSX1QgKmRlc3Qs IGNvbnN0IHVuc2lnbmVkIGNoYXIqIHNyYywKKyBzdGF0aWMgc2l6ZV90CisgY29udmVydF9tYnNf dG9fd2NzIChDSEFSX1QgKmRlc3QsIGNvbnN0IHVuc2lnbmVkIGNoYXIqc3JjLCBzaXplX3QgbGVu LAorICAgICAgICAgICAgICAgICAgICAgaW50ICpvZmZzZXRfYnVmZmVyLCBjaGFyICppc19iaW5h cnkpCistICAgICAvKiBJdCBob2xkIGNvcnJlc3BvbmRhbmNlcyBiZXR3ZWVuIHNyYyhjaGFyIHN0 cmluZykgYW5kCisrICAgICAvKiBJdCBob2xkIGNvcnJlc3BvbmRlbmNlcyBiZXR3ZWVuIHNyYyhj aGFyIHN0cmluZykgYW5kCisgCWRlc3Qod2NoYXJfdCBzdHJpbmcpIGZvciBvcHRpbWl6YXRpb24u CisgCWUuZy4gc3JjICA9ICJ4eHh5enoiCisgICAgICAgICAgICAgIGRlc3QgPSB7J1gnLCAnWScs ICdaJ30KK0BAIC0xMjgxLDcgKzEyODEsNyBAQCBjb252ZXJ0X21ic190b193Y3MgKENIQVJfVCAq ZGVzdCwgY29uc3QgdW5zaWduZWQgY2hhcipzcmMsIHNpemVfdCBsZW4sCisgCisgICAgICAgaWYg KGNvbnN1bWVkIDw9IDApCisgCS8qIGZhaWxlZCB0byBjb252ZXJ0LiBtYXliZSBzcmMgY29udGFp bnMgYmluYXJ5IGRhdGEuCistCSAgIFNvIHdlIGNvbnN1bWUgMSBieXRlIG1hbnVhbHkuICAqLwor KwkgICBTbyB3ZSBjb25zdW1lIDEgYnl0ZSBtYW51YWxseS4gICovCisgCXsKKyAJICAqcGRlc3Qg PSAqcHNyYzsKKyAJICBjb25zdW1lZCA9IDE7CitAQCAtMjE3NCw3ICsyMTc0LDcgQEAgdHlwZWRl ZiBzdHJ1Y3QKKyAjIGlmbmRlZiBERUZJTkVEX09OQ0UKKyAjICBpZiBkZWZpbmVkIF9MSUJDIHx8 IFdJREVfQ0hBUl9TVVBQT1JUCisgLyogVGhlIEdOVSBDIGxpYnJhcnkgcHJvdmlkZXMgc3VwcG9y dCBmb3IgdXNlci1kZWZpbmVkIGNoYXJhY3RlciBjbGFzc2VzCistICAgYW5kIHRoZSBmdW5jdGlv bnMgZnJvbSBJU08gQyBhbWVuZGVtZW50IDEuICAqLworKyAgIGFuZCB0aGUgZnVuY3Rpb25zIGZy b20gSVNPIEMgYW1lbmRtZW50IDEuICAqLworICMgICBpZmRlZiBDSEFSQ0xBU1NfTkFNRV9NQVgK KyAjICAgIGRlZmluZSBDSEFSX0NMQVNTX01BWF9MRU5HVEggQ0hBUkNMQVNTX05BTUVfTUFYCisg IyAgIGVsc2UKK0BAIC0zNDE2LDcgKzM0MTYsNyBAQCBQUkVGSVgocmVnZXhfY29tcGlsZSkgKGNv bnN0IGNoYXIgKkFSR19QUkVGSVgocGF0dGVybiksCisgCQkJCSAgaW50MzJfdCBpZHgyID0gdGFi bGVbY2hdOworIAkJCQkgIHNpemVfdCBsZW4gPSB3ZWlnaHRzW2lkeDJdOworIAorLQkJCQkgIC8q IFRlc3Qgd2hldGhlciB0aGUgbGVuZ2h0cyBtYXRjaC4gICovCisrCQkJCSAgLyogVGVzdCB3aGV0 aGVyIHRoZSBsZW5ndGhzIG1hdGNoLiAgKi8KKyAJCQkJICBpZiAod2VpZ2h0c1tpZHhdID09IGxl bikKKyAJCQkJICAgIHsKKyAJCQkJICAgICAgLyogVGhleSBkby4gIE5ldyBjb21wYXJlIHRoZSBi eXRlcyBvZgorQEAgLTQzODksNyArNDM4OSw3IEBAIHdjc19jb21waWxlX3JhbmdlIChDSEFSX1Qg cmFuZ2Vfc3RhcnRfY2hhciwgY29uc3QgQ0hBUl9UICoqcF9wdHIsCisgCXsKKyAJICAvKiByYW5n ZV9zdGFydCBpcyBhIGNvbGxhdGluZyBzeW1ib2wuICAqLworIAkgIGludDMyX3QgKndleHRyYTsK Ky0JICAvKiBSZXRyZWl2ZSB0aGUgaW5kZXggYW5kIGdldCBjb2xsYXRpb24gc2VxdWVuY2UgdmFs dWUuICAqLworKwkgIC8qIFJldHJpZXZlIHRoZSBpbmRleCBhbmQgZ2V0IGNvbGxhdGlvbiBzZXF1 ZW5jZSB2YWx1ZS4gICovCisgCSAgd2V4dHJhID0gKGludDMyX3QqKShleHRyYSArIGNoYXJfc2V0 Wy1yYW5nZV9zdGFydF9jaGFyXSk7CisgCSAgc3RhcnRfdmFsID0gd2V4dHJhWzEgKyAqd2V4dHJh XTsKKyAJfQorQEAgLTU1MDIsNyArNTUwMiw3IEBAIGNvdW50X21ic19sZW5ndGgoaW50ICpvZmZz ZXRfYnVmZmVyLCBpbnQgbGVuZ3RoKQorICAgICByZXR1cm4gMDsKKyAKKyAgIC8qIElmIHRoZXJl IGFyZSBubyBtdWx0aWJ5dGUgY2hhcmFjdGVyLCBvZmZzZXRfYnVmZmVyW2ldID09IGkuCistICAg T3B0bWl6ZSBmb3IgdGhpcyBjYXNlLiAgKi8KKysgICBPcHRpbWl6ZSBmb3IgdGhpcyBjYXNlLiAg Ki8KKyAgIGlmIChvZmZzZXRfYnVmZmVyW2xlbmd0aF0gPT0gbGVuZ3RoKQorICAgICByZXR1cm4g bGVuZ3RoOworIAorQEAgLTU1MzgsNyArNTUzOCw3IEBAIHdjc19yZV9tYXRjaF8yX2ludGVybmFs IChzdHJ1Y3QgcmVfcGF0dGVybl9idWZmZXIgKmJ1ZnAsCisgCQkJIHN0cnVjdCByZV9yZWdpc3Rl cnMgKnJlZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBzdG9wLAorICAgICAgLyog c3RyaW5nMSA9PSBzdHJpbmcyID09IE5VTEwgbWVhbnMgc3RyaW5nMS8yLCBzaXplMS8yIGFuZAor LQltYnNfb2Zmc2V0MS8yIG5lZWQgc2V0aW5nIHVwIGluIHRoaXMgZnVuY3Rpb24uICAqLworKwlt YnNfb2Zmc2V0MS8yIG5lZWQgc2V0dGluZyB1cCBpbiB0aGlzIGZ1bmN0aW9uLiAgKi8KKyAgICAg IC8qIFdlIG5lZWQgd2NoYXJfdCogYnVmZmVycyBjb3JyZXNwb25kIHRvIGNzdHJpbmcxLCBjc3Ry aW5nMi4gICovCisgICAgICAgICAgICAgICAgICAgICAgICAgIHdjaGFyX3QgKnN0cmluZzEsIGlu dCBzaXplMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgd2NoYXJfdCAqc3RyaW5nMiwgaW50 IHNpemUyLAorQEAgLTU3MzksNyArNTczOSw3IEBAIGJ5dGVfcmVfbWF0Y2hfMl9pbnRlcm5hbCAo c3RydWN0IHJlX3BhdHRlcm5fYnVmZmVyICpidWZwLAorICAgICAgZmlsbCB0aGVtIHdpdGggY29u dmVydGVkIHN0cmluZy4gICovCisgICBpZiAoc3RyaW5nMSA9PSBOVUxMICYmIHN0cmluZzIgPT0g TlVMTCkKKyAgICAgeworLSAgICAgIC8qIFdlIG5lZWQgc2V0aW5nIHVwIGJ1ZmZlcnMgaGVyZS4g ICovCisrICAgICAgLyogV2UgbmVlZCBzZXR0aW5nIHVwIGJ1ZmZlcnMgaGVyZS4gICovCisgCisg ICAgICAgLyogV2UgbXVzdCBmcmVlIHdjcyBidWZmZXJzIGluIHRoaXMgZnVuY3Rpb24uICAqLwor ICAgICAgIGNhbnRfZnJlZV93Y3NfYnVmID0gMDsKK2RpZmYgLS1naXQgYS9saWJpYmVydHkvc2ln c2V0bWFzay5jIGIvbGliaWJlcnR5L3NpZ3NldG1hc2suYworLS0tIGEvbGliaWJlcnR5L3NpZ3Nl dG1hc2suYworKysrIGIvbGliaWJlcnR5L3NpZ3NldG1hc2suYworQEAgLTEsNyArMSw3IEBACisg LyogVmVyc2lvbiBvZiBzaWdzZXRtYXNrLmMKKyAgICBXcml0dGVuIGJ5IFN0ZXZlIENoYW1iZXJs YWluIChzYWNAY3lnbnVzLmNvbSkuCisgICAgQ29udHJpYnV0ZWQgYnkgQ3lnbnVzIFN1cHBvcnQu CistICAgVGhpcyBmaWxlIGlzIGluIHRoZSBwdWJsaWMgZG9hbWluLiAqLworKyAgIFRoaXMgZmls ZSBpcyBpbiB0aGUgcHVibGljIGRvbWFpbi4gKi8KKyAKKyAvKgorIAorZGlmZiAtLWdpdCBhL2xp YmliZXJ0eS9zaW1wbGUtb2JqZWN0LWVsZi5jIGIvbGliaWJlcnR5L3NpbXBsZS1vYmplY3QtZWxm LmMKKy0tLSBhL2xpYmliZXJ0eS9zaW1wbGUtb2JqZWN0LWVsZi5jCisrKysgYi9saWJpYmVydHkv c2ltcGxlLW9iamVjdC1lbGYuYworQEAgLTE5OCw3ICsxOTgsNyBAQCB0eXBlZGVmIHN0cnVjdCB7 CisgI2RlZmluZSBTSFRfUkVMQQk0CQkvKiBSZWxvY2F0aW9uIGVudHJpZXMgd2l0aCBhZGRlbmRz ICovCisgI2RlZmluZSBTSFRfUkVMCQk5CQkvKiBSZWxvY2F0aW9uIGVudHJpZXMsIG5vIGFkZGVu ZHMgKi8KKyAjZGVmaW5lIFNIVF9HUk9VUAkxNwkJLyogU2VjdGlvbiBjb250YWlucyBhIHNlY3Rp b24gZ3JvdXAgKi8KKy0jZGVmaW5lIFNIVF9TWU1UQUJfU0hORFggMTgJCS8qIEV4dGVuZGVkIHNl Y3Rpb24gaW5kZWNlcyAqLworKyNkZWZpbmUgU0hUX1NZTVRBQl9TSE5EWCAxOAkJLyogRXh0ZW5k ZWQgc2VjdGlvbiBpbmRpY2VzICovCisgCisgLyogVmFsdWVzIGZvciBzaF9mbGFncyBmaWVsZC4g ICovCisgCitAQCAtMjQ2LDcgKzI0Niw3IEBAIHR5cGVkZWYgc3RydWN0CisgI2RlZmluZSBTVEJf V0VBSwkyCS8qIFdlYWsgZ2xvYmFsICovCisgCisgI2RlZmluZSBTVFZfREVGQVVMVAkwCS8qIFZp c2liaWxpdHkgaXMgc3BlY2lmaWVkIGJ5IGJpbmRpbmcgdHlwZSAqLworLSNkZWZpbmUgU1RWX0hJ RERFTgkyCS8qIENhbiBvbmx5IGJlIHNlZW4gaW5zaWRlIGN1cnJlY3QgY29tcG9uZW50ICovCisr I2RlZmluZSBTVFZfSElEREVOCTIJLyogQ2FuIG9ubHkgYmUgc2VlbiBpbnNpZGUgY3VycmVudCBj b21wb25lbnQgKi8KKyAKKyAvKiBGdW5jdGlvbnMgdG8gZmV0Y2ggYW5kIHN0b3JlIGRpZmZlcmVu dCBFTEYgdHlwZXMsIGRlcGVuZGluZyBvbiB0aGUKKyAgICBlbmRpYW5uZXNzIGFuZCBzaXplLiAg Ki8KK0BAIC0xNTEyLDcgKzE1MTIsNyBAQCBzaW1wbGVfb2JqZWN0X2VsZl9jb3B5X2x0b19kZWJ1 Z19zZWN0aW9ucyAoc2ltcGxlX29iamVjdF9yZWFkICpzb2JqLAorIAkJIG9mIF9fZ251X2x0b19z bGltIHN5bWJvbC4gICovCisgCSAgICAgIGlmIChzdF9zaG5keCA9PSBTSE5fQ09NTU9OKQorIAkJ ZGlzY2FyZCA9IDE7CistCSAgICAgIC8qIFdlIGFsc28gbmVlZCB0byByZW1vdmUgc3ltYm9scyBy ZWZlcmluZyB0byBzZWN0aW9ucworKwkgICAgICAvKiBXZSBhbHNvIG5lZWQgdG8gcmVtb3ZlIHN5 bWJvbHMgcmVmZXJyaW5nIHRvIHNlY3Rpb25zCisgCQkgd2UnbGwgZXZlbnR1YWxseSByZW1vdmUg YXMgd2l0aCBmYXQgTFRPIG9iamVjdHMKKyAJCSB3ZSBvdGhlcndpc2UgZ2V0IGR1cGxpY2F0ZSBz eW1ib2xzIGF0IGZpbmFsIGxpbmsKKyAJCSAod2l0aCBHTlUgbGQsIGdvbGQgaXMgZmluZSBhbmQg aWdub3JlcyBzeW1ib2xzIGluCitkaWZmIC0tZ2l0IGEvbGliaWJlcnR5L3NpbXBsZS1vYmplY3Qt bWFjaC1vLmMgYi9saWJpYmVydHkvc2ltcGxlLW9iamVjdC1tYWNoLW8uYworLS0tIGEvbGliaWJl cnR5L3NpbXBsZS1vYmplY3QtbWFjaC1vLmMKKysrKyBiL2xpYmliZXJ0eS9zaW1wbGUtb2JqZWN0 LW1hY2gtby5jCitAQCAtNTMsNyArNTMsNyBAQCBzdHJ1Y3QgbWFjaF9vX2hlYWRlcl8zMgorICAg dW5zaWduZWQgY2hhciBmaWxldHlwZVs0XTsJLyogVHlwZSBvZiBmaWxlLiAgKi8KKyAgIHVuc2ln bmVkIGNoYXIgbmNtZHNbNF07CS8qIE51bWJlciBvZiBsb2FkIGNvbW1hbmRzLiAgKi8KKyAgIHVu c2lnbmVkIGNoYXIgc2l6ZW9mY21kc1s0XTsJLyogVG90YWwgc2l6ZSBvZiBsb2FkIGNvbW1hbmRz LiAgKi8KKy0gIHVuc2lnbmVkIGNoYXIgZmxhZ3NbNF07CS8qIEZsYWdzIGZvciBzcGVjaWFsIGZl YXR1ZXMuICAqLworKyAgdW5zaWduZWQgY2hhciBmbGFnc1s0XTsJLyogRmxhZ3MgZm9yIHNwZWNp YWwgZmVhdHVyZXMuICAqLworIH07CisgCisgLyogTWFjaC1PIGhlYWRlciAoNjQtYml0IHZlcnNp b24pLiAgKi8KK0BAIC02Niw3ICs2Niw3IEBAIHN0cnVjdCBtYWNoX29faGVhZGVyXzY0CisgICB1 bnNpZ25lZCBjaGFyIGZpbGV0eXBlWzRdOwkvKiBUeXBlIG9mIGZpbGUuICAqLworICAgdW5zaWdu ZWQgY2hhciBuY21kc1s0XTsJLyogTnVtYmVyIG9mIGxvYWQgY29tbWFuZHMuICAqLworICAgdW5z aWduZWQgY2hhciBzaXplb2ZjbWRzWzRdOwkvKiBUb3RhbCBzaXplIG9mIGxvYWQgY29tbWFuZHMu ICAqLworLSAgdW5zaWduZWQgY2hhciBmbGFnc1s0XTsJLyogRmxhZ3MgZm9yIHNwZWNpYWwgZmVh dHVlcy4gICovCisrICB1bnNpZ25lZCBjaGFyIGZsYWdzWzRdOwkvKiBGbGFncyBmb3Igc3BlY2lh bCBmZWF0dXJlcy4gICovCisgICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzRdOwkvKiBSZXNlcnZl ZC4gIER1aC4gICovCisgfTsKKyAKK0BAIC0xMjA0LDggKzEyMDQsOCBAQCBzaW1wbGVfb2JqZWN0 X21hY2hfb193cml0ZV9zZWdtZW50IChzaW1wbGVfb2JqZWN0X3dyaXRlICpzb2JqLCBpbnQgZGVz Y3JpcHRvciwKKyAgICAgICB1bnNpZ25lZCBpbnQgaTsKKyAKKyAgICAgICAvKiBXcml0ZSB0aGUg c2VjdGlvbiBoZWFkZXIgZm9yIHRoZSB3cmFwcGVyLiAgKi8KKy0gICAgICAvKiBBY2NvdW50IGZv ciBhbnkgaW5pdGlhbCBhbGlnbWVudCAtIHdoaWNoIGJlY29tZXMgdGhlIGFsaWdubWVudCBmb3Ig dGhpcworLQkgY3JlYXRlZCBzZWN0aW9uLiAgKi8KKysgICAgICAvKiBBY2NvdW50IGZvciBhbnkg aW5pdGlhbCBhbGlnbm1lbnQgLSB3aGljaCBiZWNvbWVzIHRoZSBhbGlnbm1lbnQgZm9yCisrCSB0 aGlzIGNyZWF0ZWQgc2VjdGlvbi4gICovCisgCisgICAgICAgc2Vjc2l6ZSA9IChvZmZzZXQgLSBp bmRleFswXSk7CisgICAgICAgaWYgKCFzaW1wbGVfb2JqZWN0X21hY2hfb193cml0ZV9zZWN0aW9u X2hlYWRlciAoc29iaiwgZGVzY3JpcHRvciwKK0BAIC0xMjE4LDcgKzEyMTgsNyBAQCBzaW1wbGVf b2JqZWN0X21hY2hfb193cml0ZV9zZWdtZW50IChzaW1wbGVfb2JqZWN0X3dyaXRlICpzb2JqLCBp bnQgZGVzY3JpcHRvciwKKyAJCQkJCQkgICAgICBlcnJtc2csIGVycikpCisgCXJldHVybiAwOwor IAorLSAgICAgIC8qIFN1YnRyYWN0IHRoZSB3cmFwcGVyIHNlY3Rpb24gc3RhcnQgZnJvbSB0aGUg YmVnaW5pbmcgb2YgZWFjaCBzdWIKKysgICAgICAvKiBTdWJ0cmFjdCB0aGUgd3JhcHBlciBzZWN0 aW9uIHN0YXJ0IGZyb20gdGhlIGJlZ2lubmluZyBvZiBlYWNoIHN1YgorIAkgc2VjdGlvbi4gICov CisgCisgICAgICAgZm9yIChpID0gMTsgaSA8IG5zZWN0c19pbjsgKytpKQorZGlmZiAtLWdpdCBh L2xpYmliZXJ0eS9zdHJzaWduYWwuYyBiL2xpYmliZXJ0eS9zdHJzaWduYWwuYworLS0tIGEvbGli aWJlcnR5L3N0cnNpZ25hbC5jCisrKysgYi9saWJpYmVydHkvc3Ryc2lnbmFsLmMKK0BAIC0xNTIs NyArMTUyLDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBzaWduYWxfaW5mbyBzaWduYWxfdGFibGVb XSA9CisgI2VuZGlmCisgI2lmIGRlZmluZWQgKFNJR0lPKQorICAgLyogIkkvTyBwZW5kaW5nIiBo YXMgYWxzbyBiZWVuIHN1Z2dlc3RlZCwgYnV0IGlzIG1pc2xlYWRpbmcgc2luY2UgdGhlCistICAg ICBzaWduYWwgb25seSBoYXBwZW5zIHdoZW4gdGhlIHByb2Nlc3MgaGFzIGFza2VkIGZvciBpdCwg bm90IGV2ZXJ5dGltZQorKyAgICAgc2lnbmFsIG9ubHkgaGFwcGVucyB3aGVuIHRoZSBwcm9jZXNz IGhhcyBhc2tlZCBmb3IgaXQsIG5vdCBldmVyeSB0aW1lCisgICAgICBJL08gaXMgcGVuZGluZy4g Ki8KKyAgIEVOVFJZKFNJR0lPLCAiU0lHSU8iLCAiSS9PIHBvc3NpYmxlIiksCisgI2VuZGlmCitA QCAtMjA4LDcgKzIwOCw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qgc2lnbmFsX2luZm8gc2lnbmFs X3RhYmxlW10gPQorICAgRU5UUlkoU0lHR1JBTlQsICJTSUdHUkFOVCIsICJNb25pdG9yIG1vZGUg Z3JhbnRlZCIpLAorICNlbmRpZgorICNpZiBkZWZpbmVkIChTSUdSRVRSQUNUKQorLSAgRU5UUlko U0lHUkVUUkFDVCwgIlNJR1JFVFJBQ1QiLCAiTmVlZCB0byByZWxpbmd1aXNoIG1vbml0b3IgbW9k ZSIpLAorKyAgRU5UUlkoU0lHUkVUUkFDVCwgIlNJR1JFVFJBQ1QiLCAiTmVlZCB0byByZWxpbnF1 aXNoIG1vbml0b3IgbW9kZSIpLAorICNlbmRpZgorICNpZiBkZWZpbmVkIChTSUdNU0cpCisgICBF TlRSWShTSUdNU0csICJTSUdNU0ciLCAiTW9uaXRvciBtb2RlIGRhdGEgYXZhaWxhYmxlIiksCitk aWZmIC0tZ2l0IGEvbGliaWJlcnR5L3Rlc3RzdWl0ZS9kLWRlbWFuZ2xlLWV4cGVjdGVkIGIvbGli aWJlcnR5L3Rlc3RzdWl0ZS9kLWRlbWFuZ2xlLWV4cGVjdGVkCistLS0gYS9saWJpYmVydHkvdGVz dHN1aXRlL2QtZGVtYW5nbGUtZXhwZWN0ZWQKKysrKyBiL2xpYmliZXJ0eS90ZXN0c3VpdGUvZC1k ZW1hbmdsZS1leHBlY3RlZAorQEAgLTE0NzUsMyArMTQ3NSwxNSBAQCBkZW1hbmdsZS5hbm9ueW1v dXMuZm9vCisgLS1mb3JtYXQ9YXV0bworIF9EOGRlbWFuZ2xlOWFub255bW91czAzZm9vWgorIGRl bWFuZ2xlLmFub255bW91cy5mb28KKysjCisrIyBUaGlzIHN5bWJvbCB3YXMgc2VlbiBpbiB0aGUg d2lsZC4gIEl0IGhhcyBhIHBhdHRlcm4gb2YgYmFjaworKyMgcmVmZXJlbmNlcyB0aGF0IHJlc3Vs dCBpbiBleHBvbmVudGlhbCBncm93dGgsIHdpdGggdGhlIGlubmVybW9zdAorKyMgdHlwZSBiZWlu ZyByZWZlcmVuY2VkIDEwcyBvZiBtaWxsaW9ucyBvZiB0aW1lcy4gIFdlIHVzZSB0aGUKKysjIGRl bWFuZ2xlcidzIHJlY3Vyc2lvbiBsaW1pdCB0byBwbGFjZSBhIGhhcmQgY2FwIG9uIGJhY2sgcmVm ZXJlbmNlCisrIyB1c2FnZSwgd2hpY2ggY2F1c2VzIHRoZSBkZW1hbmdsZXIgdG8gc2FmZWx5IGJh aWwgb3V0IGJlZm9yZQorKyMgY29uc3VtaW5nIGFuIGV4Y2Vzc2l2ZSBhbW91bnQgb2YgbWVtb3J5 LiAgVHJ5aW5nIHRvIGRlbWFuZ2xlIHRoaXMKKysjIHdpdGhvdXQgdGhlIHJlY3Vyc2lvbiBsaW1p dCBpbiBwbGFjZSB3aWxsIGV2ZW50dWFsbHkgY2F1c2UgdGhlIE9PTQorKyMga2lsbGVyIHRvIGtp Y2sgaW4uCisrLS1mb3JtYXQ9ZGxhbmcKKytfRDNzdGQ2Zm9ybWF0NXdyaXRlX19UMTRmb3JtYXR0 ZWRXcml0ZVRERkF4YVp2VGFUUzJhZTV1dGlsczR0ZXh0N2Z1bmN0b3JfX1QxM3N0cmluZ2lmaWFi bGVUU1FCcVFCcVFCaTEwcHJpbWl0aXZlc19fVFFDYVNRQ3NRQ3NRQ2sxMWNvbXBvc2l0aW9uX19U M3NlcVRTUUR4UUR4UURwUUNoX19UUUR5U1FFcVFFcVFFblFFbF9fVDE3Zm9ybWF0dGluZ0Z1bmN0 b3JWQXlhYTJfMjU3M1ZpaTI1MFRRcloxNV9fbGFtYmRhX0w0MF9DM1RRQm1aN0Z1bmN0b3JUU1FI elFIelFIclFHal9fVFFJYVNRSXNRSXNRSXBRSW5fX1RRRWNWUURtYTJfMjU3M1ZpaTI1MFRTUUtk UUtkUUthUUp5X19UUUp0VFNRS3hRS3hRS3BRSmhfX1RRS3lTNGJ0ZHUydWk2Y3Vyc2VzNkN1cnNl czRXYW5kX19UOHdpdGhBdHRyVFNRTmZRTmZRTmNRTmFfX1RRTXZUU1FOelFOelFOclFNal9fVFFP YVNRT3NRT3NRT2tRTWFfX1Q2c2VsZWN0VFNRUHFRUHFRUGlRT2FfX1RRUHJTUVFqUVFqUVFiUU90 X19UMTJ2YWx1ZUZ1bmN0b3JUYlpRckZiWjE3X19sYW1iZGFfTDE0M19DNTdUYlpRTGJUU1FTdlFT dlFTblFSZl9fVFFTd1NRVG9RVG9RVGxRVGpfX1Q1Zm10SWZWUU9sblRiVFBGTmFOYk5pTmZaUVBk VFNRVmhRVmhRVXpRVHJfX1RRVmlTUUtrUUtpN2Jyb3dzZXI3QnJvd3NlcjZ1cGRhdGVNRlpfX1Qx N19fbGFtYmRhX0wxMTg1X0M0VFFTZVRTUVlpUVlpUVlmUVlkX19UUVh5VFNRWmNRWmNRWXVRWG1f X1RRWmRTUVp2UVp2UVpuUVhkX19UUUxkVFFLelRTUUJBdFFCQXVRQkFuUVpnX19UUUJBeFNRQkJx UUJCclFCQnBRQkJvX19UUUlnVlFXb25UYlRTUUJDdlFCQ3dRQkNwUUJCaV9fVFFCRGFTUUJEdFFC RHVRQkRuUUJDZ19fVFFOb1RTUUJFclFCRXNRQkVxUUJFcF9fVFFCRWxUU1FCRnFRQkZyUUJGa1FC RWRfX1RRQkZ2U1FCR29RQkdwUUJHaVFCRHpfX1RRQkRxVFNRQkhuUUJIb1FCSGhRQkdhX19UUUJI c1NRQklsUUJJbVFCSWtRQklqX19UUUJEelZRQkRrYTJfMjU3M1ZpaTI1MFRTUUJLY1FCS2RRQkti UUJLYV9fVFFCSndUU1FCTGJRQkxjUUJLdlFCSm9fX1RRQkxnU1FCQWpRQkFpUUJBalFCQWdRQkFk X19UUUJBY1RRQkhjVFNRQk5oUUJOaVFCTmdRQk5mX19UUUJOYlRTUUJPZ1FCT2hRQk9hUUJNdF9f VFFCT2xTUUJEb1FCRG5RQkRvUUJEbFFCRGlfX1RRQkRoVFFCS2haUUJEck1GRVFCRmNRQkZiUUJG Y1FCRXpRQkV3OUF0dHJpYnV0ZWJLUUJMeloxOV9fbGFtYmRhX0w1MDNfQzIwXzFUUFNRQkhsUUJI a1FCSGxRQkhpUUJIZlRRRGZUYlRTUUJVZFFCVWVRQlVjUUJVYl9fVFFCVHhUU1FCVmNRQlZkUUJV d1FCVHBfX1RRQlZoU1FCV2FRQldiUUJWdVFCVGxfX1RRQlRjVFFCVGNaM2Z1blRRQlRtWlFCUHla UUJXdEZRQ3daMTNTdHJpbmdpZmlhYmxlWlFCUmNaUUJYeEZRS3daUUJlVFFCVGtaUUJNdU1GUUpk YlFCVHpRTXdRQlVnWjE3X19sYW1iZGFfTDUwM19DMjBUUUlmVFFLclRiVFNRQ0JwUUNCcVFDQm9R Q0JuX19UUUNCalRTUUNDb1FDQ3BRQ0NpUUNCYl9fVFFDQ3RTUUNEbVFDRG5RQ0RnUUNBeF9fVFFD QW9UUUNBb1RTUUNFcVFDRXJRQ0VrUUNEZF9fVFFDRXZTUUNGb1FDRnBRQ0ZuUUNGbV9fVFFDQmNW UUNBbmEyXzI1NzNWaWkyNTBUUVR5WjE3X19sYW1iZGFfTDQwX0MzXzFUUVV3WlFDQXJUUUNFcFpR TG5UUUNFeVRRRWtUUUNGaFpRQ0J0WlFDSW9GUUhmWlFMdlpRQ0NsWlFDSmdGUVprWlFNbloxN19f bGFtYmRhX0w0MF9DM18zVFFCQmxaUUNFY1RRQ0lhVFFCRXBaUVBkVFFCRXlUUUNJdFRRQkZpWlFD RmtaUUNNZkZRQkh1WlFQblpRQld1RlFCSmhaMTlfX2xhbWJkYV9MMTQzX0M1N18xVFFCS2laUUNI b1RTUUNQalFDUGtRQ1BkUUNOd19fVFFDUG9TUUNRaFFDUWlRQ1FiUUNPdV9fVFFDQWNUUUJIZVpR Q0FtRlFCSG9aMTlfX2xhbWJkYV9MMTQzX0M1N18yVFFCSXBaUUNMZ1pRQll4Rk5pYlFCUW9RRWVa UVduVFFCUmFaUUNNa1RTUUNVZlFDVWdRQ1R6UUNTc19fVFFDVWtTUUNWZFFDVmVRQ1ZjUUNWYl9f VFFDQnRWUUNRY25UYlRRQlRwVFFIZ1pRQ0NwRk5pYlFCVWdRSHdaUUJBZlRRSWZaUUNRY1pRQkF0 VFFDSW1UUUJYb1RRRWhaUUNSYVpRQ1h2RlFCWnlaUUJCZFpRQ0NhTUZRQ1RxUUNCbWJTUUNPalFD T2lRQ0ViUUNEeDEzU2Nyb2xsQ29udGV4dFBTUUNQcTVwYXRoczExQnJvd3NlclBhdGhaMjBfX2xh bWJkYV9MMTE5NV9DNzZfMVRRQnhaUUNWcVpRQ0poRk5pYlFDSmJRQ0lxWlFCR3lUUUNKcFpRQ1d3 VFNRREVyUURFc1FERWxRRERlX19UUURFd1NRREZwUURGcVFERm9RREZuX19UUUNNZlZRREFvblRi VFFDTWVUUUNMdVpRQ05jRk5pYlFDTXdRQ01sWlFCS3RUUUNNdlpRREFyWlFCTGlUUUNUYlRRQ1Fi VFFFa1pRREJwWlFESWtGUUNWcVpRQkxzWlFDWGVNRlFCVG5iUUNYZloxOV9fbGFtYmRhX0w1MDNf QzIwXzJUUUJTbFRRQlV5VGJUU1FETHhRREx5UURMd1FETHZfX1RRRExyVFNRRE13UURNeFFETXFR RExqX19UUUROYlNRRE51UUROdlFETm9RRExmX19UUURLd1RTUURPdFFET3VRRE9uUUROZ19fVFFE T3lTUURQclFEUHNRRFBxUURQcF9fVFFETGZWUURLcWEyXzI1NzNWaWkyNTBUUURFZFoxN19fbGFt YmRhX0w0MF9DM183VFFERmNaUURLd1pRQlZuVFFFZFpRRExrWlFEU2ZGUUdvWlFCVm1aUURNZFpR RFN5RlFESmdaUUJXZ1oxN19fbGFtYmRhX0w0MF9DM184VFFETGVaUUROd1pRQlluVFFEUnpUUURP Y1pRRE9xWlFEVmxGUURWYVpRQll0WlFEWWJGS1FEWHFNeEFhUURYb1prCisrX0Qzc3RkNmZvcm1h dDV3cml0ZV9fVDE0Zm9ybWF0dGVkV3JpdGVUREZBeGFadlRhVFMyYWU1dXRpbHM0dGV4dDdmdW5j dG9yX19UMTNzdHJpbmdpZmlhYmxlVFNRQnFRQnFRQmkxMHByaW1pdGl2ZXNfX1RRQ2FTUUNzUUNz UUNrMTFjb21wb3NpdGlvbl9fVDNzZXFUU1FEeFFEeFFEcFFDaF9fVFFEeVNRRXFRRXFRRW5RRWxf X1QxN2Zvcm1hdHRpbmdGdW5jdG9yVkF5YWEyXzI1NzNWaWkyNTBUUXJaMTVfX2xhbWJkYV9MNDBf QzNUUUJtWjdGdW5jdG9yVFNRSHpRSHpRSHJRR2pfX1RRSWFTUUlzUUlzUUlwUUluX19UUUVjVlFE bWEyXzI1NzNWaWkyNTBUU1FLZFFLZFFLYVFKeV9fVFFKdFRTUUt4UUt4UUtwUUpoX19UUUt5UzRi dGR1MnVpNmN1cnNlczZDdXJzZXM0V2FuZF9fVDh3aXRoQXR0clRTUU5mUU5mUU5jUU5hX19UUU12 VFNRTnpRTnpRTnJRTWpfX1RRT2FTUU9zUU9zUU9rUU1hX19UNnNlbGVjdFRTUVBxUVBxUVBpUU9h X19UUVByU1FRalFRalFRYlFPdF9fVDEydmFsdWVGdW5jdG9yVGJaUXJGYloxN19fbGFtYmRhX0wx NDNfQzU3VGJaUUxiVFNRU3ZRU3ZRU25RUmZfX1RRU3dTUVRvUVRvUVRsUVRqX19UNWZtdElmVlFP bG5UYlRQRk5hTmJOaU5mWlFQZFRTUVZoUVZoUVV6UVRyX19UUVZpU1FLa1FLaTdicm93c2VyN0Jy b3dzZXI2dXBkYXRlTUZaX19UMTdfX2xhbWJkYV9MMTE4NV9DNFRRU2VUU1FZaVFZaVFZZlFZZF9f VFFYeVRTUVpjUVpjUVl1UVhtX19UUVpkU1FadlFadlFablFYZF9fVFFMZFRRS3pUU1FCQXRRQkF1 UUJBblFaZ19fVFFCQXhTUUJCcVFCQnJRQkJwUUJCb19fVFFJZ1ZRV29uVGJUU1FCQ3ZRQkN3UUJD cFFCQmlfX1RRQkRhU1FCRHRRQkR1UUJEblFCQ2dfX1RRTm9UU1FCRXJRQkVzUUJFcVFCRXBfX1RR QkVsVFNRQkZxUUJGclFCRmtRQkVkX19UUUJGdlNRQkdvUUJHcFFCR2lRQkR6X19UUUJEcVRTUUJI blFCSG9RQkhoUUJHYV9fVFFCSHNTUUJJbFFCSW1RQklrUUJJal9fVFFCRHpWUUJEa2EyXzI1NzNW aWkyNTBUU1FCS2NRQktkUUJLYlFCS2FfX1RRQkp3VFNRQkxiUUJMY1FCS3ZRQkpvX19UUUJMZ1NR QkFqUUJBaVFCQWpRQkFnUUJBZF9fVFFCQWNUUUJIY1RTUUJOaFFCTmlRQk5nUUJOZl9fVFFCTmJU U1FCT2dRQk9oUUJPYVFCTXRfX1RRQk9sU1FCRG9RQkRuUUJEb1FCRGxRQkRpX19UUUJEaFRRQkto WlFCRHJNRkVRQkZjUUJGYlFCRmNRQkV6UUJFdzlBdHRyaWJ1dGViS1FCTHpaMTlfX2xhbWJkYV9M NTAzX0MyMF8xVFBTUUJIbFFCSGtRQkhsUUJIaVFCSGZUUURmVGJUU1FCVWRRQlVlUUJVY1FCVWJf X1RRQlR4VFNRQlZjUUJWZFFCVXdRQlRwX19UUUJWaFNRQldhUUJXYlFCVnVRQlRsX19UUUJUY1RR QlRjWjNmdW5UUUJUbVpRQlB5WlFCV3RGUUN3WjEzU3RyaW5naWZpYWJsZVpRQlJjWlFCWHhGUUt3 WlFCZVRRQlRrWlFCTXVNRlFKZGJRQlR6UU13UUJVZ1oxN19fbGFtYmRhX0w1MDNfQzIwVFFJZlRR S3JUYlRTUUNCcFFDQnFRQ0JvUUNCbl9fVFFDQmpUU1FDQ29RQ0NwUUNDaVFDQmJfX1RRQ0N0U1FD RG1RQ0RuUUNEZ1FDQXhfX1RRQ0FvVFFDQW9UU1FDRXFRQ0VyUUNFa1FDRGRfX1RRQ0V2U1FDRm9R Q0ZwUUNGblFDRm1fX1RRQ0JjVlFDQW5hMl8yNTczVmlpMjUwVFFUeVoxN19fbGFtYmRhX0w0MF9D M18xVFFVd1pRQ0FyVFFDRXBaUUxuVFFDRXlUUUVrVFFDRmhaUUNCdFpRQ0lvRlFIZlpRTHZaUUND bFpRQ0pnRlFaa1pRTW5aMTdfX2xhbWJkYV9MNDBfQzNfM1RRQkJsWlFDRWNUUUNJYVRRQkVwWlFQ ZFRRQkV5VFFDSXRUUUJGaVpRQ0ZrWlFDTWZGUUJIdVpRUG5aUUJXdUZRQkpoWjE5X19sYW1iZGFf TDE0M19DNTdfMVRRQktpWlFDSG9UU1FDUGpRQ1BrUUNQZFFDTndfX1RRQ1BvU1FDUWhRQ1FpUUNR YlFDT3VfX1RRQ0FjVFFCSGVaUUNBbUZRQkhvWjE5X19sYW1iZGFfTDE0M19DNTdfMlRRQklwWlFD TGdaUUJZeEZOaWJRQlFvUUVlWlFXblRRQlJhWlFDTWtUU1FDVWZRQ1VnUUNUelFDU3NfX1RRQ1Vr U1FDVmRRQ1ZlUUNWY1FDVmJfX1RRQ0J0VlFDUWNuVGJUUUJUcFRRSGdaUUNDcEZOaWJRQlVnUUh3 WlFCQWZUUUlmWlFDUWNaUUJBdFRRQ0ltVFFCWG9UUUVoWlFDUmFaUUNYdkZRQlp5WlFCQmRaUUND YU1GUUNUcVFDQm1iU1FDT2pRQ09pUUNFYlFDRHgxM1Njcm9sbENvbnRleHRQU1FDUHE1cGF0aHMx MUJyb3dzZXJQYXRoWjIwX19sYW1iZGFfTDExOTVfQzc2XzFUUUJ4WlFDVnFaUUNKaEZOaWJRQ0pi UUNJcVpRQkd5VFFDSnBaUUNXd1RTUURFclFERXNRREVsUUREZV9fVFFERXdTUURGcFFERnFRREZv UURGbl9fVFFDTWZWUURBb25UYlRRQ01lVFFDTHVaUUNOY0ZOaWJRQ013UUNNbFpRQkt0VFFDTXZa UURBclpRQkxpVFFDVGJUUUNRYlRRRWtaUURCcFpRRElrRlFDVnFaUUJMc1pRQ1hlTUZRQlRuYlFD WGZaMTlfX2xhbWJkYV9MNTAzX0MyMF8yVFFCU2xUUUJVeVRiVFNRREx4UURMeVFETHdRREx2X19U UURMclRTUURNd1FETXhRRE1xUURMal9fVFFETmJTUUROdVFETnZRRE5vUURMZl9fVFFES3dUU1FE T3RRRE91UURPblFETmdfX1RRRE95U1FEUHJRRFBzUURQcVFEUHBfX1RRRExmVlFES3FhMl8yNTcz VmlpMjUwVFFERWRaMTdfX2xhbWJkYV9MNDBfQzNfN1RRREZjWlFES3daUUJWblRRRWRaUURMa1pR RFNmRlFHb1pRQlZtWlFETWRaUURTeUZRREpnWlFCV2daMTdfX2xhbWJkYV9MNDBfQzNfOFRRRExl WlFETndaUUJZblRRRFJ6VFFET2NaUURPcVpRRFZsRlFEVmFaUUJZdFpRRFliRktRRFhxTXhBYVFE WG9aawoKZGlmZiAtLWdpdCBhL2dkYi5zcGVjIGIvZ2RiLnNwZWMKaW5kZXggZjM3YTYxMS4uYmRl ZmFhNSAxMDA2NDQKLS0tIGEvZ2RiLnNwZWMKKysrIGIvZ2RiLnNwZWMKQEAgLTkyNiw2ICs5MjYs MTEgQEAgZmkKIAogJWNoYW5nZWxvZwogKiBXZWQgSnVsIDggMjAyNiBBbmRyZXcgQnVyZ2VzcyA8 YWJ1cmdlc3NAcmVkaGF0LmNvbT4KKy0gQmFja3BvcnQgdXBzdHJlYW0gY29tbWl0IGJlM2E5NDA1 Y2ViNGQ2ZDYgdG8gZml4IGFuZCBpc3N1ZSB3aXRoIHRoZQorICBEIGRlbWFuZ2xlciAoUkhCWiAy MzY4MzUwKS4gIFRoaXMgY29tbWl0IHdpbGwgZHJvcCBvdXQgd2hlbiB3ZQorICByZWJhc2UgdG8g R0RCIDE4LgorCisqIFdlZCBKdWwgOCAyMDI2IEFuZHJldyBCdXJnZXNzIDxhYnVyZ2Vzc0ByZWRo YXQuY29tPgogLSBBZGp1c3QgY29tbWl0IG1lc3NhZ2UgaW4gZ2RiLWJhY2twb3J0LWRhcC1jb3Jl LWZpbGUtc3VwcG9ydC5wYXRjaCB0bwogICByZW1vdmUgJy0tLScgc3RyaW5nIHdoaWNoIGNvbmZ1 c2VzIGdpdC4KIAo=