From owner-freebsd-ports-bugs@FreeBSD.ORG Wed Mar 13 08:20:01 2013 Return-Path: Delivered-To: freebsd-ports-bugs@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 51A07B1C for ; Wed, 13 Mar 2013 08:20:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 358B3B54 for ; Wed, 13 Mar 2013 08:20:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.6/8.14.6) with ESMTP id r2D8K1rC043723 for ; Wed, 13 Mar 2013 08:20:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.6/8.14.6/Submit) id r2D8K1sF043718; Wed, 13 Mar 2013 08:20:01 GMT (envelope-from gnats) Date: Wed, 13 Mar 2013 08:20:01 GMT Message-Id: <201303130820.r2D8K1sF043718@freefall.freebsd.org> To: freebsd-ports-bugs@FreeBSD.org Cc: From: Luca Pizzamiglio Subject: Re: ports/176103: [MAINTAINER] devel/gdb: Adding an option to disable TUI and correctly enabling all targets X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: Luca Pizzamiglio List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Mar 2013 08:20:01 -0000 The following reply was made to PR ports/176103; it has been noted by GNATS. From: Luca Pizzamiglio To: bug-followup@freebsd.org, luca.pizzamiglio@gmail.com Cc: Subject: Re: ports/176103: [MAINTAINER] devel/gdb: Adding an option to disable TUI and correctly enabling all targets Date: Wed, 13 Mar 2013 09:18:25 +0100 --14dae93407190eec2d04d7ca0ed3 Content-Type: text/plain; charset=ISO-8859-1 The patch! --14dae93407190eec2d04d7ca0ed3 Content-Type: text/plain; name="patch-gdb.txt" Content-Disposition: attachment; filename="patch-gdb.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_he87v8ln0 ZGlmZiAtTnJ1IGRldmVsL2dkYi5vcmlnL01ha2VmaWxlIGRldmVsL2dkYi9NYWtlZmlsZQotLS0g ZGV2ZWwvZ2RiLm9yaWcvTWFrZWZpbGUJMjAxMi0xMi0xNiAxNzo1MDo1Mi4wMDAwMDAwMDAgKzAx MDAKKysrIGRldmVsL2dkYi9NYWtlZmlsZQkyMDEzLTAzLTExIDE0OjU1OjM4LjAwMDAwMDAwMCAr MDEwMApAQCAtMSw1ICsxLDUgQEAKICMgQ3JlYXRlZCBieTogU3RldmVuIEtyZXV6ZXIgPHNrcmV1 emVyQEZyZWVCU0Qub3JnPgotIyAkRnJlZUJTRDogcG9ydHMvZGV2ZWwvZ2RiL01ha2VmaWxlLHYg MS4yOCAyMDEyLzEyLzE2IDE2OjUwOjUyIHN2bmV4cCBFeHAgJAorIyAkRnJlZUJTRCQKIAogUE9S VE5BTUU9CWdkYgogUE9SVFZFUlNJT049CTcuNS4xCkBAIC0yMCw4ICsyMCw3IEBACiAJCS0td2l0 aC1nZGItZGF0YWRpcj0ke1BSRUZJWH0vc2hhcmUvZ2RiJHtQT1JUVkVSU0lPTjpTLy4vL2d9IFwK IAkJLS13aXRoLWxpYmljb252LXByZWZpeD0ke0xPQ0FMQkFTRX0gXAogCQktLXdpdGhvdXQtbGli dW53aW5kLWlhNjQgXAotCQktLWVuYWJsZS10YXJnZXQ9YWxsIFwKLQkJLS1lbmFibGUtdHVpCisJ CS0tZW5hYmxlLXRhcmdldHM9YWxsCiBDRkxBR1M6PQkke0NGTEFHUzpDLyArJC8vfQkjIGJsYW5r cyBhdCBFT0wgY3JlZXAgaW4gc29tZXRpbWVzCiBDRkxBR1MrPQktRFJMX05PX0NPTVBBVAogRVhD TFVERT0JZGVqYWdudSBleHBlY3Qgc2ltIHRleGluZm8gaW50bApAQCAtMzMsMTQgKzMyLDE1IEBA CiAKIE9OTFlfRk9SX0FSQ0hTPQlpMzg2IGFtZDY0CSMgdW50ZXN0ZWQgZWxzZXdoZXJlLCBtaWdo dCB3b3JrCiAKLU9QVElPTlNfREVGSU5FPQlERUJVRyBFWFBBVCBQWVRIT04gVEhSRUFEUyBHREJf TElOSworT1BUSU9OU19ERUZJTkU9CURFQlVHIEVYUEFUIFBZVEhPTiBUSFJFQURTIFRVSSBHREJf TElOSwogT1BUSU9OU19TSU5HTEVfUkVBRExJTkU9CUJBU0VfUkVBRExJTkUgQlVORExFRF9SRUFE TElORSBQT1JUX1JFQURMSU5FCiBPUFRJT05TX1NJTkdMRT0JUkVBRExJTkUKLUJBU0VfUkVBRExJ TkVfREVTQz0JZnJvbSBiYXNlIHN5c3RlbSAoRVhQRVJJTUVOVEFMKQorQkFTRV9SRUFETElORV9E RVNDPQlmcm9tIGJhc2Ugc3lzdGVtKEVYUEVSSU1FTlRBTCkKIEJVTkRMRURfUkVBRExJTkVfREVT Qz0JZnJvbSBnZGIgZGlzdGZpbGUKIFBPUlRfUkVBRExJTkVfREVTQz0JZnJvbSBkZXZlbC9yZWFk bGluZSBwb3J0CiBHREJfTElOS19ERVNDPQlDcmVhdGUgdGhlIGdkYiBsaW5rCi1PUFRJT05TX0RF RkFVTFQ9CVRIUkVBRFMgR0RCX0xJTksgUE9SVF9SRUFETElORQorVFVJX0RFU0M9CVRleHQgVXNl ciBJbnRlcmZhY2UgZW5hYmxlZAorT1BUSU9OU19ERUZBVUxUPQlUSFJFQURTIFRVSSBHREJfTElO SyBQT1JUX1JFQURMSU5FCiAKIC5pbmNsdWRlIDxic2QucG9ydC5vcHRpb25zLm1rPgogCkBAIC01 MCw4ICs1MCwxMiBAQAogUExJU1RfU1VCKz0JR0RCX0xJTks9IkBjb21tZW50ICIKIC5lbmRpZgog Ci0uaWYgJHtQT1JUX09QVElPTlM6TVBZVEhPTn0KLVVTRV9QWVRIT049CTIuNS0yLjcKKy5pZiAk e1BPUlRfT1BUSU9OUzpNVFVJfQorQ09ORklHVVJFX0FSR1MrPQktLWVuYWJsZS10dWkKK1BMSVNU X1NVQis9CVRVSV9MSU5LPSIiCisuZWxzZQorQ09ORklHVVJFX0FSR1MrPQktLWRpc2FibGUtdHVp CitQTElTVF9TVUIrPQlUVUlfTElOSz0iQGNvbW1lbnQgIgogLmVuZGlmCiAKIC5pZiBlbXB0eShQ T1JUX09QVElPTlM6TUJVTkRMRURfUkVBRExJTkUpCkBAIC02Nyw2ICs3MSwxNiBAQAogLmlmICR7 UE9SVF9PUFRJT05TOk1QT1JUX1JFQURMSU5FfQogVVNFX1JFQURMSU5FPQlwb3J0CiAuZW5kaWYK KworLmlmICR7UE9SVF9PUFRJT05TOk1QWVRIT059CitVU0VfUFlUSE9OPQkyLjUtMi43CitDT05G SUdVUkVfQVJHUys9CS0td2l0aC1weXRob249JHtQWVRIT05fQ01EfQorUExJU1RfU1VCKz0JCVBZ VEhPTj0iIgorLmVsc2UKK0NPTkZJR1VSRV9BUkdTKz0JLS13aXRob3V0LXB5dGhvbgorUExJU1Rf U1VCKz0JCVBZVEhPTj0iQGNvbW1lbnQgIgorLmVuZGlmCisKIC5pbmNsdWRlIDxic2QucG9ydC5w cmUubWs+CiAKIC5pZiAke1BPUlRfT1BUSU9OUzpNVEhSRUFEU30KQEAgLTg0LDE0ICs5OCw2IEBA CiBDT05GSUdVUkVfQVJHUys9CS0td2l0aG91dC1leHBhdAogLmVuZGlmCiAKLS5pZiAke1BPUlRf T1BUSU9OUzpNUFlUSE9OfQotQ09ORklHVVJFX0FSR1MrPQktLXdpdGgtcHl0aG9uPSR7UFlUSE9O X0NNRH0KLVBMSVNUX1NVQis9CQlQWVRIT049IiIKLS5lbHNlCi1DT05GSUdVUkVfQVJHUys9CS0t d2l0aG91dC1weXRob24KLVBMSVNUX1NVQis9CQlQWVRIT049IkBjb21tZW50ICIKLS5lbmRpZgot CiAuaWYgJHtBUkNIfSA9PSAiYW1kNjQiCiBDT05GSUdVUkVfVEFSR0VUPQl4ODZfNjQtcG9ydGJs ZC1mcmVlYnNkJHtPU1JFTH0KIC5lbmRpZgpAQCAtMTA1LDggKzExMSwxMCBAQAogCiBkby1pbnN0 YWxsOgogCSR7SU5TVEFMTF9QUk9HUkFNfSAke1dSS1NSQ30vZ2RiL2dkYiAke1BSRUZJWH0vYmlu L2dkYiR7VkVSfQotCSR7TE59IC1zZiAke1BSRUZJWH0vYmluL2dkYiR7VkVSfSAke1BSRUZJWH0v YmluL2dkYnR1aSR7VkVSfQogCSR7SU5TVEFMTF9NQU59ICR7V1JLU1JDfS9nZGIvZ2RiLjEgJHtN QU4xUFJFRklYfS9tYW4vbWFuMS9nZGIke1ZFUn0uMQorLmlmICR7UE9SVF9PUFRJT05TOk1UVUl9 CisJJHtMTn0gLXNmICR7UFJFRklYfS9iaW4vZ2RiJHtWRVJ9ICR7UFJFRklYfS9iaW4vZ2RidHVp JHtWRVJ9CisuZW5kaWYKIC5pZiAke1BPUlRfT1BUSU9OUzpNR0RCX0xJTkt9CiAJJHtMTn0gLXNm IGdkYiR7VkVSfSAke1BSRUZJWH0vYmluL2dkYgogLmVuZGlmCmRpZmYgLU5ydSBkZXZlbC9nZGIu b3JpZy9maWxlcy9leHRyYXBhdGNoLWdkYi1NYWtlZmlsZS5pbiBkZXZlbC9nZGIvZmlsZXMvZXh0 cmFwYXRjaC1nZGItTWFrZWZpbGUuaW4KLS0tIGRldmVsL2dkYi5vcmlnL2ZpbGVzL2V4dHJhcGF0 Y2gtZ2RiLU1ha2VmaWxlLmluCTIwMTItMDgtMjcgMTg6MTA6NTQuMDAwMDAwMDAwICswMjAwCisr KyBkZXZlbC9nZGIvZmlsZXMvZXh0cmFwYXRjaC1nZGItTWFrZWZpbGUuaW4JMjAxMy0wMy0xMSAx NDo1Nzo0MC4wMDAwMDAwMDAgKzAxMDAKQEAgLTEsMjMgKzEsMTMgQEAKIC0tLSBnZGIvTWFrZWZp bGUuaW4ub3JpZwkyMDEyLTA3LTAyIDE3OjI5OjMzLjAwMDAwMDAwMCArMDIwMAogKysrIGdkYi9N YWtlZmlsZS5pbgkyMDEyLTA4LTI2IDIxOjAxOjQ1LjU4OTA1Mjk5NyArMDIwMAotQEAgLTU3Miw3 ICs1NzIsNyBAQAotIAl4c3Rvcm15MTYtdGRlcC5vIFwKK0BAIC01NzMsNiArNTczLDcgQEAKICAJ eHRlbnNhLWNvbmZpZy5vIHh0ZW5zYS10ZGVwLm8geHRlbnNhLWxpbnV4LXRkZXAubyBcCiAgCWds aWJjLXRkZXAubyBcCi0tCWJzZC11dGhyZWFkLm8gXAorCWJzZC11dGhyZWFkLm8gXAogKwlmYnNk LXRocmVhZHMubyBcCiAgCW5ic2QtdGRlcC5vIG9ic2QtdGRlcC5vIFwKICAJc29sMi10ZGVwLm8g XAogIAlzb2xpYi1mcnYubyBzb2xpYi1pcml4Lm8gc29saWItc3ZyNC5vIFwKLUBAIC03NzksNyAr Nzc5LDcgQEAKLSBnbnVsaWIvaW1wb3J0L3N0ZGludC5pbi5oIHJlbW90ZS5oIGdkYi5oIHNwYXJj LW5hdC5oIFwKLSBnZGJ0aHJlYWQuaCBkd2FyZjItZnJhbWUuaCBkd2FyZjItZnJhbWUtdGFpbGNh bGwuaCBuYnNkLW5hdC5oIGRjYWNoZS5oIFwKLSBhbWQ2NC1uYXQuaCBzMzkwLXRkZXAuaCBhcm0t bGludXgtdGRlcC5oIGV4Y2VwdGlvbnMuaCBtYWNyb3Njb3BlLmggXAotLWdkYmFyY2guaCBic2Qt dXRocmVhZC5oIGdkYl9zdGF0LmggbWVtb3J5LW1hcC5oCW1lbXJhbmdlLmggXAotK2dkYmFyY2gu aCBnZGJfc3RhdC5oIG1lbW9yeS1tYXAuaAltZW1yYW5nZS5oIFwKLSBtZGVidWdyZWFkLmggbTg4 ay10ZGVwLmggc3RhYnNyZWFkLmggaHBwYS1saW51eC1vZmZzZXRzLmggbGludXgtZm9yay5oIFwK LSBzZXItdW5peC5oIGluZi1wdHJhY2UuaCB0ZXJtaW5hbC5oIHVpLW91dC5oIGZyYW1lLWJhc2Uu aCBcCi0gZi1sYW5nLmggZHdhcmYybG9jLmggdmFsdWUuaCBzcGFyYy10ZGVwLmggZGVmcy5oIHRh cmdldC1kZXNjcmlwdGlvbnMuaCBcCiBAQCAtMTE2NCw3ICsxMTY0LDcgQEAKICAjIFJlbW92aW5n IHRoZSBvbGQgZ2RiIGZpcnN0IHdvcmtzIGJldHRlciBpZiBpdCBpcyBydW5uaW5nLCBhdCBsZWFz dCBvbiBTdW5PUy4KICBnZGIkKEVYRUVYVCk6IGdkYi5vICQoTElCR0RCX09CUykgJChBRERfREVQ UykgJChDREVQUykgJChUREVQTElCUykKQEAgLTMyLDcgKzIyLDcgQEAKICAJYXZyLXRkZXAuYyBc CiAgCWJmaW4tbGludXgtdGRlcC5jIGJmaW4tdGRlcC5jIFwKIC0JYnNkLXV0aHJlYWQuYyBic2Qt a3ZtLmMgXAotKwlmYnNkLXRocmVhZHMuYyBic2Qta3ZtLmMgXAorKwlic2QtdXRocmVhZC5jIGZi c2QtdGhyZWFkcy5jIGJzZC1rdm0uYyBcCiAgCWNvcmUtcmVnc2V0LmMgXAogIAlkY2FjaGUuYyBk aWNvcy10ZGVwLmMgZGFyd2luLW5hdC5jIFwKICAJZXhlYy5jIFwKZGlmZiAtTnJ1IGRldmVsL2dk Yi5vcmlnL2ZpbGVzL2Zic2QtdGhyZWFkcy5jIGRldmVsL2dkYi9maWxlcy9mYnNkLXRocmVhZHMu YwotLS0gZGV2ZWwvZ2RiLm9yaWcvZmlsZXMvZmJzZC10aHJlYWRzLmMJMjAxMi0xMS0xNyAwNjo1 NTo0NC4wMDAwMDAwMDAgKzAxMDAKKysrIGRldmVsL2dkYi9maWxlcy9mYnNkLXRocmVhZHMuYwky MDEzLTAzLTExIDE0OjU3OjQwLjAwMDAwMDAwMCArMDEwMApAQCAtMSw0ICsxLDQgQEAKLS8qICRG cmVlQlNEOiBwb3J0cy9kZXZlbC9nZGIvZmlsZXMvZmJzZC10aHJlYWRzLmMsdiAxLjggMjAxMi8x MS8xNyAwNTo1NTo0NCBzdm5leHAgRXhwICQgKi8KKy8qICRGcmVlQlNEJCAqLwogLyogRnJlZUJT RCBsaWJ0aHJlYWRfZGIgYXNzaXN0ZWQgZGVidWdnaW5nIHN1cHBvcnQuCiAgICBDb3B5cmlnaHQg MTk5OSwgMjAwMCwgMjAwMSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIApkaWZmIC1O cnUgZGV2ZWwvZ2RiLm9yaWcvZmlsZXMvcGF0Y2gtYmZkLWVjb2ZmLmMgZGV2ZWwvZ2RiL2ZpbGVz L3BhdGNoLWJmZC1lY29mZi5jCi0tLSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1iZmQtZWNv ZmYuYwkxOTcwLTAxLTAxIDAxOjAwOjAwLjAwMDAwMDAwMCArMDEwMAorKysgZGV2ZWwvZ2RiL2Zp bGVzL3BhdGNoLWJmZC1lY29mZi5jCTIwMTMtMDMtMTEgMTQ6NTc6NDAuMDAwMDAwMDAwICswMTAw CkBAIC0wLDAgKzEsMTEgQEAKKy0tLSBiZmQvZWNvZmYuYy5vcmlnCTIwMTMtMDMtMTEgMTI6NDI6 MDMuMDAwMDAwMDAwICswMTAwCisrKysgYmZkL2Vjb2ZmLmMJMjAxMy0wMy0xMSAxMjo0NDoyOS4w MDAwMDAwMDAgKzAxMDAKK0BAIC0xODg4LDcgKzE4ODgsNyBAQAorICAgcmV0ID0gKGJmZF9jb2Zm X2ZpbGhzeiAoYWJmZCkKKyAJICsgYmZkX2NvZmZfYW91dHN6IChhYmZkKQorIAkgKyBjICogYmZk X2NvZmZfc2NuaHN6IChhYmZkKSk7CistICByZXR1cm4gQkZEX0FMSUdOIChyZXQsIDE2KTsKKysg IHJldHVybiAoaW50KUJGRF9BTElHTiAocmV0LCAxNik7CisgfQorIAorIC8qIEdldCB0aGUgY29u dGVudHMgb2YgYSBzZWN0aW9uLiAgKi8KZGlmZiAtTnJ1IGRldmVsL2dkYi5vcmlnL2ZpbGVzL3Bh dGNoLWJmZC1lbGYzMi1ocHBhLmMgZGV2ZWwvZ2RiL2ZpbGVzL3BhdGNoLWJmZC1lbGYzMi1ocHBh LmMKLS0tIGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLWJmZC1lbGYzMi1ocHBhLmMJMTk3MC0w MS0wMSAwMTowMDowMC4wMDAwMDAwMDAgKzAxMDAKKysrIGRldmVsL2dkYi9maWxlcy9wYXRjaC1i ZmQtZWxmMzItaHBwYS5jCTIwMTMtMDMtMTEgMTQ6NTc6NDAuMDAwMDAwMDAwICswMTAwCkBAIC0w LDAgKzEsMTEgQEAKKy0tLSBiZmQvZWxmMzItaHBwYS5jLm9yaWcJMjAxMy0wMy0wNyAwOTo1Njo0 MC4wMDAwMDAwMDAgKzAxMDAKKysrKyBiZmQvZWxmMzItaHBwYS5jCTIwMTMtMDMtMDcgMDk6NTc6 MDcuMDAwMDAwMDAwICswMTAwCitAQCAtMjM4NCw3ICsyMzg0LDcgQEAKKyAJICAgICAgYmZkX3Np emVfdHlwZSBtYXNrOworIAorIAkgICAgICBpZiAoZ290YWxpZ24gPiBwbHRhbGlnbikKKy0JCWJm ZF9zZXRfc2VjdGlvbl9hbGlnbm1lbnQgKGR5bm9iaiwgc2VjLCBnb3RhbGlnbik7CisrCQkodm9p ZCliZmRfc2V0X3NlY3Rpb25fYWxpZ25tZW50IChkeW5vYmosIHNlYywgZ290YWxpZ24pOworIAkg ICAgICBtYXNrID0gKChiZmRfc2l6ZV90eXBlKSAxIDw8IGdvdGFsaWduKSAtIDE7CisgCSAgICAg IHNlYy0+c2l6ZSA9IChzZWMtPnNpemUgKyBzaXplb2YgKHBsdF9zdHViKSArIG1hc2spICYgfm1h c2s7CisgCSAgICB9CmRpZmYgLU5ydSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1iZmQtZWxm MzItbTMyci5jIGRldmVsL2dkYi9maWxlcy9wYXRjaC1iZmQtZWxmMzItbTMyci5jCi0tLSBkZXZl bC9nZGIub3JpZy9maWxlcy9wYXRjaC1iZmQtZWxmMzItbTMyci5jCTE5NzAtMDEtMDEgMDE6MDA6 MDAuMDAwMDAwMDAwICswMTAwCisrKyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gtYmZkLWVsZjMyLW0z MnIuYwkyMDEzLTAzLTExIDE0OjU3OjQwLjAwMDAwMDAwMCArMDEwMApAQCAtMCwwICsxLDExIEBA CistLS0gYmZkL2VsZjMyLW0zMnIuYy5vcmlnCTIwMTMtMDMtMDcgMDk6NTc6MzAuMDAwMDAwMDAw ICswMTAwCisrKysgYmZkL2VsZjMyLW0zMnIuYwkyMDEzLTAzLTA3IDA5OjU3OjUzLjAwMDAwMDAw MCArMDEwMAorQEAgLTEzOTAsNyArMTM5MCw3IEBACisgCQkJCQkJICBmbGFncyk7CisgCSAgaWYg KHMgPT0gTlVMTCkKKyAJICAgIHJldHVybiBGQUxTRTsKKy0JICBiZmRfc2V0X3NlY3Rpb25fYWxp Z25tZW50IChhYmZkLCBzLCAyKTsKKysJICAodm9pZCliZmRfc2V0X3NlY3Rpb25fYWxpZ25tZW50 IChhYmZkLCBzLCAyKTsKKyAJfQorIAorICAgICAgIGJoID0gYmZkX2xpbmtfaGFzaF9sb29rdXAg KGluZm8tPmhhc2gsICJfU0RBX0JBU0VfIiwKZGlmZiAtTnJ1IGRldmVsL2dkYi5vcmlnL2ZpbGVz L3BhdGNoLWJmZC1lbGYzMi1taWNyb2JsYXplLmMgZGV2ZWwvZ2RiL2ZpbGVzL3BhdGNoLWJmZC1l bGYzMi1taWNyb2JsYXplLmMKLS0tIGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLWJmZC1lbGYz Mi1taWNyb2JsYXplLmMJMTk3MC0wMS0wMSAwMTowMDowMC4wMDAwMDAwMDAgKzAxMDAKKysrIGRl dmVsL2dkYi9maWxlcy9wYXRjaC1iZmQtZWxmMzItbWljcm9ibGF6ZS5jCTIwMTMtMDMtMTEgMTQ6 NTc6NDAuMDAwMDAwMDAwICswMTAwCkBAIC0wLDAgKzEsMTEgQEAKKy0tLSBiZmQvZWxmMzItbWlj cm9ibGF6ZS5jLm9yaWcJMjAxMy0wMy0wNyAxMDowMTo0Ny4wMDAwMDAwMDAgKzAxMDAKKysrKyBi ZmQvZWxmMzItbWljcm9ibGF6ZS5jCTIwMTMtMDMtMDcgMTA6MDI6NTQuMDAwMDAwMDAwICswMTAw CitAQCAtMTc0MSw3ICsxNzQxLDcgQEAKKyAgICAgICBmb3IgKGlzeW0gPSBpc3ltYnVmOyBpc3lt IDwgaXN5bWVuZDsgaXN5bSsrKQorICAgICAgICAgeworICAgICAgICAgICBpZiAoaXN5bS0+c3Rf c2huZHggPT0gc2huZHgpCistCSAgICBpc3ltLT5zdF92YWx1ZSA9LSBjYWxjX2ZpeHVwIChpc3lt LT5zdF92YWx1ZSwgc2VjKTsKKysJICAgIGlzeW0tPnN0X3ZhbHVlID0gLWNhbGNfZml4dXAgKGlz eW0tPnN0X3ZhbHVlLCBzZWMpOworICAgICAgICAgfQorIAorICAgICAgIC8qIE5vdyBhZGp1c3Qg dGhlIGdsb2JhbCBzeW1ib2xzIGRlZmluZWQgaW4gdGhpcyBzZWN0aW9uLiAgKi8KZGlmZiAtTnJ1 IGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLWJmZC1lbGYzMi10aWM2eC5jIGRldmVsL2dkYi9m aWxlcy9wYXRjaC1iZmQtZWxmMzItdGljNnguYwotLS0gZGV2ZWwvZ2RiLm9yaWcvZmlsZXMvcGF0 Y2gtYmZkLWVsZjMyLXRpYzZ4LmMJMTk3MC0wMS0wMSAwMTowMDowMC4wMDAwMDAwMDAgKzAxMDAK KysrIGRldmVsL2dkYi9maWxlcy9wYXRjaC1iZmQtZWxmMzItdGljNnguYwkyMDEzLTAzLTExIDE0 OjU3OjQwLjAwMDAwMDAwMCArMDEwMApAQCAtMCwwICsxLDMwIEBACistLS0gYmZkL2VsZjMyLXRp YzZ4LmMub3JpZwkyMDEzLTAzLTA3IDEwOjAzOjI4LjAwMDAwMDAwMCArMDEwMAorKysrIGJmZC9l bGYzMi10aWM2eC5jCTIwMTMtMDMtMDcgMTA6MDg6MTkuMDAwMDAwMDAwICswMTAwCitAQCAtMzA0 Myw3ICszMDQzLDcgQEAKKyAgICAgICAqc2VjcCA9IGJmZF9tYWtlX3NlY3Rpb25fb2xkX3dheSAo YWJmZCwgIi5zY29tbW9uIik7CisgICAgICAgKCpzZWNwKS0+ZmxhZ3MgfD0gU0VDX0lTX0NPTU1P TjsKKyAgICAgICAqdmFscCA9IHN5bS0+c3Rfc2l6ZTsKKy0gICAgICBiZmRfc2V0X3NlY3Rpb25f YWxpZ25tZW50IChhYmZkLCAqc2VjcCwgYmZkX2xvZzIgKHN5bS0+c3RfdmFsdWUpKTsKKysgICAg ICAodm9pZCliZmRfc2V0X3NlY3Rpb25fYWxpZ25tZW50IChhYmZkLCAqc2VjcCwgYmZkX2xvZzIg KHN5bS0+c3RfdmFsdWUpKTsKKyAgICAgICBicmVhazsKKyAgICAgfQorIAorQEAgLTMzMTksOCAr MzMxOSw2IEBACisgICAgIHsKKyAgICAgICBiZmRfc2lnbmVkX3ZtYSAqbG9jYWxfZ290OworICAg ICAgIGJmZF9zaWduZWRfdm1hICplbmRfbG9jYWxfZ290OworLSAgICAgIGNoYXIgKmxvY2FsX3Rs c190eXBlOworLSAgICAgIGJmZF92bWEgKmxvY2FsX3Rsc2Rlc2NfZ290ZW50OworICAgICAgIGJm ZF9zaXplX3R5cGUgbG9jc3ltY291bnQ7CisgICAgICAgRWxmX0ludGVybmFsX1NoZHIgKnN5bXRh Yl9oZHI7CisgICAgICAgYXNlY3Rpb24gKnNyZWw7CitAQCAtMzM2MSw4ICszMzU5LDcgQEAKKyAg ICAgICBlbmRfbG9jYWxfZ290ID0gbG9jYWxfZ290ICsgbG9jc3ltY291bnQ7CisgICAgICAgcyA9 IGh0YWItPmVsZi5zZ290OworICAgICAgIHNyZWwgPSBodGFiLT5lbGYuc3JlbGdvdDsKKy0gICAg ICBmb3IgKDsgbG9jYWxfZ290IDwgZW5kX2xvY2FsX2dvdDsKKy0JICAgKytsb2NhbF9nb3QsICsr bG9jYWxfdGxzX3R5cGUsICsrbG9jYWxfdGxzZGVzY19nb3RlbnQpCisrICAgICAgZm9yICg7IGxv Y2FsX2dvdCA8IGVuZF9sb2NhbF9nb3Q7ICsrbG9jYWxfZ290KQorIAl7CisgCSAgaWYgKCpsb2Nh bF9nb3QgPiAwKQorIAkgICAgewpkaWZmIC1OcnUgZGV2ZWwvZ2RiLm9yaWcvZmlsZXMvcGF0Y2gt YmZkLWVsZjMyLXY4NTAuYyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gtYmZkLWVsZjMyLXY4NTAuYwot LS0gZGV2ZWwvZ2RiLm9yaWcvZmlsZXMvcGF0Y2gtYmZkLWVsZjMyLXY4NTAuYwkxOTcwLTAxLTAx IDAxOjAwOjAwLjAwMDAwMDAwMCArMDEwMAorKysgZGV2ZWwvZ2RiL2ZpbGVzL3BhdGNoLWJmZC1l bGYzMi12ODUwLmMJMjAxMy0wMy0xMSAxNDo1Nzo0MC4wMDAwMDAwMDAgKzAxMDAKQEAgLTAsMCAr MSwxMSBAQAorLS0tIGJmZC9lbGYzMi12ODUwLmMub3JpZwkyMDEzLTAzLTExIDEyOjU1OjQ4LjAw MDAwMDAwMCArMDEwMAorKysrIGJmZC9lbGYzMi12ODUwLmMJMjAxMy0wMy0xMSAxMjo1Nzo0NS4w MDAwMDAwMDAgKzAxMDAKK0BAIC0yOTMzLDcgKzI5MzMsNyBAQAorIAorIAkgIGlmIChhbGlnbm1v dmV0byA8IGFsaWdudG8pCisgCSAgICB7CistCSAgICAgIHVuc2lnbmVkIGludCBpOworKwkgICAg ICBiZmRfdm1hIGk7CisgCisgCSAgICAgIGFsaWduX3BhZF9zaXplID0gYWxpZ250byAtIGFsaWdu bW92ZXRvOworICNpZmRlZiBERUJVR19SRUxBWApkaWZmIC1OcnUgZGV2ZWwvZ2RiLm9yaWcvZmls ZXMvcGF0Y2gtYmZkLWVsZjMyLXh0ZW5zYS5jIGRldmVsL2dkYi9maWxlcy9wYXRjaC1iZmQtZWxm MzIteHRlbnNhLmMKLS0tIGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLWJmZC1lbGYzMi14dGVu c2EuYwkxOTcwLTAxLTAxIDAxOjAwOjAwLjAwMDAwMDAwMCArMDEwMAorKysgZGV2ZWwvZ2RiL2Zp bGVzL3BhdGNoLWJmZC1lbGYzMi14dGVuc2EuYwkyMDEzLTAzLTExIDE0OjU3OjQwLjAwMDAwMDAw MCArMDEwMApAQCAtMCwwICsxLDIwIEBACistLS0gYmZkL2VsZjMyLXh0ZW5zYS5jLm9yaWcJMjAx My0wMy0wNyAxMDowODo1OC4wMDAwMDAwMDAgKzAxMDAKKysrKyBiZmQvZWxmMzIteHRlbnNhLmMJ MjAxMy0wMy0wNyAxMDoxMTo0MC4wMDAwMDAwMDAgKzAxMDAKK0BAIC02MDc1LDcgKzYwNzUsNyBA QAorICAgICAgIHJlbGVhc2VfaW50ZXJuYWxfcmVsb2NzIChzZWNfY2FjaGUtPnNlYywgc2VjX2Nh Y2hlLT5yZWxvY3MpOworICAgICAgIGlmIChzZWNfY2FjaGUtPnB0YmwpCisgCWZyZWUgKHNlY19j YWNoZS0+cHRibCk7CistICAgICAgbWVtc2V0IChzZWNfY2FjaGUsIDAsIHNpemVvZiAoc2VjX2Nh Y2hlKSk7CisrICAgICAgbWVtc2V0IChzZWNfY2FjaGUsIDAsIHNpemVvZiAoKnNlY19jYWNoZSkp OworICAgICB9CisgfQorIAorQEAgLTYxMTcsNyArNjExNyw3IEBACisgCisgICAvKiBGaWxsIGlu IHRoZSBuZXcgc2VjdGlvbiBjYWNoZS4gICovCisgICBjbGVhcl9zZWN0aW9uX2NhY2hlIChzZWNf Y2FjaGUpOworLSAgbWVtc2V0IChzZWNfY2FjaGUsIDAsIHNpemVvZiAoc2VjX2NhY2hlKSk7Cisr ICBtZW1zZXQgKHNlY19jYWNoZSwgMCwgc2l6ZW9mICgqc2VjX2NhY2hlKSk7CisgCisgICBzZWNf Y2FjaGUtPnNlYyA9IHNlYzsKKyAgIHNlY19jYWNoZS0+Y29udGVudHMgPSBjb250ZW50czsKZGlm ZiAtTnJ1IGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLWJmZC1lbGY2NC1hbHBoYS5jIGRldmVs L2dkYi9maWxlcy9wYXRjaC1iZmQtZWxmNjQtYWxwaGEuYwotLS0gZGV2ZWwvZ2RiLm9yaWcvZmls ZXMvcGF0Y2gtYmZkLWVsZjY0LWFscGhhLmMJMTk3MC0wMS0wMSAwMTowMDowMC4wMDAwMDAwMDAg KzAxMDAKKysrIGRldmVsL2dkYi9maWxlcy9wYXRjaC1iZmQtZWxmNjQtYWxwaGEuYwkyMDEzLTAz LTExIDE0OjU3OjQwLjAwMDAwMDAwMCArMDEwMApAQCAtMCwwICsxLDYzIEBACistLS0gYmZkL2Vs ZjY0LWFscGhhLmMub3JpZwkyMDEzLTAzLTExIDEwOjUyOjU4LjAwMDAwMDAwMCArMDEwMAorKysr IGJmZC9lbGY2NC1hbHBoYS5jCTIwMTMtMDMtMTEgMTE6NTA6MjQuMDAwMDAwMDAwICswMTAwCitA QCAtMzU4NSw5ICszNTg1LDkgQEAKKyAgIHVzZV9nb3R0cHJlbCA9IEZBTFNFOworICAgbmV3X3N5 bW5keCA9IGlzX2dkID8gRUxGNjRfUl9TWU0gKGlyZWwtPnJfaW5mbykgOiBTVE5fVU5ERUY7Cisg CistICBzd2l0Y2ggKCFkeW5hbWljICYmICFpbmZvLT5saW5rX2luZm8tPnNoYXJlZCkKKy0gICAg eworLSAgICBjYXNlIDE6CisrICB7CisrICAgIGludCBza2lwX2RlZmF1bHQgPSAwOworKyAgICBp ZiAoIWR5bmFtaWMgJiYgIWluZm8tPmxpbmtfaW5mby0+c2hhcmVkKQorICAgICAgIHsKKyAJYmZk X3ZtYSB0cF9iYXNlOworIAliZmRfc2lnbmVkX3ZtYSBkaXNwOworQEAgLTM2MDUsNyArMzYwNSw3 IEBACisgCSAgICBpcmVsWzBdLnJfb2Zmc2V0ID0gcG9zWzBdIC0gaW5mby0+Y29udGVudHM7Cisg CSAgICBpcmVsWzBdLnJfaW5mbyA9IEVMRjY0X1JfSU5GTyAobmV3X3N5bW5keCwgUl9BTFBIQV9U UFJFTDE2KTsKKyAJICAgIGlyZWxbMV0ucl9pbmZvID0gRUxGNjRfUl9JTkZPICgwLCBSX0FMUEhB X05PTkUpOworLQkgICAgYnJlYWs7CisrCSAgICBza2lwX2RlZmF1bHQgPSAxOworIAkgIH0KKyAJ ZWxzZSBpZiAoZGlzcCA+PSAtKGJmZF9zaWduZWRfdm1hKSAweDgwMDAwMDAwCisgCQkgJiYgZGlz cCA8IChiZmRfc2lnbmVkX3ZtYSkgMHg3ZmZmODAwMAorQEAgLTM2MjAsMjQgKzM2MjAsMjMgQEAK KyAJICAgIGlyZWxbMF0ucl9pbmZvID0gRUxGNjRfUl9JTkZPIChuZXdfc3ltbmR4LCBSX0FMUEhB X1RQUkVMSEkpOworIAkgICAgaXJlbFsxXS5yX29mZnNldCA9IHBvc1sxXSAtIGluZm8tPmNvbnRl bnRzOworIAkgICAgaXJlbFsxXS5yX2luZm8gPSBFTEY2NF9SX0lORk8gKG5ld19zeW1uZHgsIFJf QUxQSEFfVFBSRUxMTyk7CistCSAgICBicmVhazsKKysJICAgIHNraXBfZGVmYXVsdCA9IDE7Cisg CSAgfQorICAgICAgIH0KKy0gICAgICAvKiBGQUxMVEhSVSAqLworLQorLSAgICBkZWZhdWx0Ogor LSAgICAgIHVzZV9nb3R0cHJlbCA9IFRSVUU7CistCistICAgICAgaW5zbiA9IChPUF9MRFEgPDwg MjYpIHwgKHRsc2dkX3JlZyA8PCAyMSkgfCAoMjkgPDwgMTYpOworLSAgICAgIGJmZF9wdXRfMzIg KGluZm8tPmFiZmQsIChiZmRfdm1hKSBpbnNuLCBwb3NbMF0pOworLSAgICAgIGJmZF9wdXRfMzIg KGluZm8tPmFiZmQsIChiZmRfdm1hKSBJTlNOX1VOT1AsIHBvc1sxXSk7CistCistICAgICAgaXJl bFswXS5yX29mZnNldCA9IHBvc1swXSAtIGluZm8tPmNvbnRlbnRzOworLSAgICAgIGlyZWxbMF0u cl9pbmZvID0gRUxGNjRfUl9JTkZPIChuZXdfc3ltbmR4LCBSX0FMUEhBX0dPVFRQUkVMKTsKKy0g ICAgICBpcmVsWzFdLnJfaW5mbyA9IEVMRjY0X1JfSU5GTyAoMCwgUl9BTFBIQV9OT05FKTsKKy0g ICAgICBicmVhazsKKy0gICAgfQorKyAgICAgIC8qIEZBTExUSFJVIChkZWZhdWx0KSAqLworKyAg ICBpZiAoc2tpcF9kZWZhdWx0ICE9IDEgKQorKyAgICAgIHsKKysgICAgICAgIHVzZV9nb3R0cHJl bCA9IFRSVUU7CisgCisrICAgICAgICBpbnNuID0gKE9QX0xEUSA8PCAyNikgfCAodGxzZ2RfcmVn IDw8IDIxKSB8ICgyOSA8PCAxNik7CisrICAgICAgICBiZmRfcHV0XzMyIChpbmZvLT5hYmZkLCAo YmZkX3ZtYSkgaW5zbiwgcG9zWzBdKTsKKysgICAgICAgIGJmZF9wdXRfMzIgKGluZm8tPmFiZmQs IChiZmRfdm1hKSBJTlNOX1VOT1AsIHBvc1sxXSk7CisrCisrICAgICAgICBpcmVsWzBdLnJfb2Zm c2V0ID0gcG9zWzBdIC0gaW5mby0+Y29udGVudHM7CisrICAgICAgICBpcmVsWzBdLnJfaW5mbyA9 IEVMRjY0X1JfSU5GTyAobmV3X3N5bW5keCwgUl9BTFBIQV9HT1RUUFJFTCk7CisrICAgICAgICBp cmVsWzFdLnJfaW5mbyA9IEVMRjY0X1JfSU5GTyAoMCwgUl9BTFBIQV9OT05FKTsKKysgICAgICB9 CisrICB9CisgICBiZmRfcHV0XzMyIChpbmZvLT5hYmZkLCAoYmZkX3ZtYSkgSU5TTl9SRFVOSVEs IHBvc1syXSk7CisgCisgICBpbnNuID0gSU5TTl9BRERRIHwgKDE2IDw8IDIxKSB8ICgwIDw8IDE2 KSB8ICgwIDw8IDApOwpkaWZmIC1OcnUgZGV2ZWwvZ2RiLm9yaWcvZmlsZXMvcGF0Y2gtYmZkLWVs Zm5uLWlhNjQuYyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gtYmZkLWVsZm5uLWlhNjQuYwotLS0gZGV2 ZWwvZ2RiLm9yaWcvZmlsZXMvcGF0Y2gtYmZkLWVsZm5uLWlhNjQuYwkxOTcwLTAxLTAxIDAxOjAw OjAwLjAwMDAwMDAwMCArMDEwMAorKysgZGV2ZWwvZ2RiL2ZpbGVzL3BhdGNoLWJmZC1lbGZubi1p YTY0LmMJMjAxMy0wMy0xMSAxNDo1Nzo0MC4wMDAwMDAwMDAgKzAxMDAKQEAgLTAsMCArMSwxMSBA QAorLS0tIGJmZC9lbGZubi1pYTY0LmMub3JpZwkyMDEzLTAzLTExIDEwOjIxOjE5LjAwMDAwMDAw MCArMDEwMAorKysrIGJmZC9lbGZubi1pYTY0LmMJMjAxMy0wMy0xMSAxMDoyMTo0My4wMDAwMDAw MDAgKzAxMDAKK0BAIC0xNTQ2LDcgKzE1NDYsNyBAQAorICAgICBiZmRfc2V0X3NlY3Rpb25fZmxh Z3MgKGFiZmQsIGlhNjRfaW5mby0+cm9vdC5zZ290LAorIAkJCSAgIFNFQ19TTUFMTF9EQVRBIHwg ZmxhZ3MpOworICAgICAvKiBUaGUgLmdvdCBzZWN0aW9uIGlzIGFsd2F5cyBhbGlnbmVkIGF0IDgg Ynl0ZXMuICAqLworLSAgICBiZmRfc2V0X3NlY3Rpb25fYWxpZ25tZW50IChhYmZkLCBpYTY0X2lu Zm8tPnJvb3Quc2dvdCwgMyk7CisrICAgICh2b2lkKWJmZF9zZXRfc2VjdGlvbl9hbGlnbm1lbnQg KGFiZmQsIGlhNjRfaW5mby0+cm9vdC5zZ290LCAzKTsKKyAgIH0KKyAKKyAgIGlmICghZ2V0X3Bs dG9mZiAoYWJmZCwgaW5mbywgaWE2NF9pbmZvKSkKZGlmZiAtTnJ1IGRldmVsL2dkYi5vcmlnL2Zp bGVzL3BhdGNoLWJmZC1lbGZ4eC1taXBzLmMgZGV2ZWwvZ2RiL2ZpbGVzL3BhdGNoLWJmZC1lbGZ4 eC1taXBzLmMKLS0tIGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLWJmZC1lbGZ4eC1taXBzLmMJ MTk3MC0wMS0wMSAwMTowMDowMC4wMDAwMDAwMDAgKzAxMDAKKysrIGRldmVsL2dkYi9maWxlcy9w YXRjaC1iZmQtZWxmeHgtbWlwcy5jCTIwMTMtMDMtMTEgMTQ6NTc6NDAuMDAwMDAwMDAwICswMTAw CkBAIC0wLDAgKzEsMjggQEAKKy0tLSBiZmQvZWxmeHgtbWlwcy5jLm9yaWcJMjAxMy0wMy0wNyAx MDoxMjowNi4wMDAwMDAwMDAgKzAxMDAKKysrKyBiZmQvZWxmeHgtbWlwcy5jCTIwMTMtMDMtMDcg MTA6MTM6MzAuMDAwMDAwMDAwICswMTAwCitAQCAtNzI5MiwyMCArNzI5MiwyMCBAQAorICAgICAg IC8qIENoYW5nZSBhbGlnbm1lbnRzIG9mIHNvbWUgc2VjdGlvbnMuICAqLworICAgICAgIHMgPSBi ZmRfZ2V0X2xpbmtlcl9zZWN0aW9uIChhYmZkLCAiLmhhc2giKTsKKyAgICAgICBpZiAocyAhPSBO VUxMKQorLQliZmRfc2V0X3NlY3Rpb25fYWxpZ25tZW50IChhYmZkLCBzLCBNSVBTX0VMRl9MT0df RklMRV9BTElHTiAoYWJmZCkpOworKwkodm9pZCliZmRfc2V0X3NlY3Rpb25fYWxpZ25tZW50IChh YmZkLCBzLCBNSVBTX0VMRl9MT0dfRklMRV9BTElHTiAoYWJmZCkpOworICAgICAgIHMgPSBiZmRf Z2V0X2xpbmtlcl9zZWN0aW9uIChhYmZkLCAiLmR5bnN5bSIpOworICAgICAgIGlmIChzICE9IE5V TEwpCistCWJmZF9zZXRfc2VjdGlvbl9hbGlnbm1lbnQgKGFiZmQsIHMsIE1JUFNfRUxGX0xPR19G SUxFX0FMSUdOIChhYmZkKSk7CisrCSh2b2lkKWJmZF9zZXRfc2VjdGlvbl9hbGlnbm1lbnQgKGFi ZmQsIHMsIE1JUFNfRUxGX0xPR19GSUxFX0FMSUdOIChhYmZkKSk7CisgICAgICAgcyA9IGJmZF9n ZXRfbGlua2VyX3NlY3Rpb24gKGFiZmQsICIuZHluc3RyIik7CisgICAgICAgaWYgKHMgIT0gTlVM TCkKKy0JYmZkX3NldF9zZWN0aW9uX2FsaWdubWVudCAoYWJmZCwgcywgTUlQU19FTEZfTE9HX0ZJ TEVfQUxJR04gKGFiZmQpKTsKKysJKHZvaWQpYmZkX3NldF9zZWN0aW9uX2FsaWdubWVudCAoYWJm ZCwgcywgTUlQU19FTEZfTE9HX0ZJTEVfQUxJR04gKGFiZmQpKTsKKyAgICAgICAvKiA/Pz8gKi8K KyAgICAgICBzID0gYmZkX2dldF9zZWN0aW9uX2J5X25hbWUgKGFiZmQsICIucmVnaW5mbyIpOwor ICAgICAgIGlmIChzICE9IE5VTEwpCistCWJmZF9zZXRfc2VjdGlvbl9hbGlnbm1lbnQgKGFiZmQs IHMsIE1JUFNfRUxGX0xPR19GSUxFX0FMSUdOIChhYmZkKSk7CisrCSh2b2lkKWJmZF9zZXRfc2Vj dGlvbl9hbGlnbm1lbnQgKGFiZmQsIHMsIE1JUFNfRUxGX0xPR19GSUxFX0FMSUdOIChhYmZkKSk7 CisgICAgICAgcyA9IGJmZF9nZXRfbGlua2VyX3NlY3Rpb24gKGFiZmQsICIuZHluYW1pYyIpOwor ICAgICAgIGlmIChzICE9IE5VTEwpCistCWJmZF9zZXRfc2VjdGlvbl9hbGlnbm1lbnQgKGFiZmQs IHMsIE1JUFNfRUxGX0xPR19GSUxFX0FMSUdOIChhYmZkKSk7CisrCSh2b2lkKWJmZF9zZXRfc2Vj dGlvbl9hbGlnbm1lbnQgKGFiZmQsIHMsIE1JUFNfRUxGX0xPR19GSUxFX0FMSUdOIChhYmZkKSk7 CisgICAgIH0KKyAKKyAgIGlmICghaW5mby0+c2hhcmVkKQpkaWZmIC1OcnUgZGV2ZWwvZ2RiLm9y aWcvZmlsZXMvcGF0Y2gtYmZkLWVsZnh4LXRpbGVneC5jIGRldmVsL2dkYi9maWxlcy9wYXRjaC1i ZmQtZWxmeHgtdGlsZWd4LmMKLS0tIGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLWJmZC1lbGZ4 eC10aWxlZ3guYwkxOTcwLTAxLTAxIDAxOjAwOjAwLjAwMDAwMDAwMCArMDEwMAorKysgZGV2ZWwv Z2RiL2ZpbGVzL3BhdGNoLWJmZC1lbGZ4eC10aWxlZ3guYwkyMDEzLTAzLTExIDE0OjU3OjQwLjAw MDAwMDAwMCArMDEwMApAQCAtMCwwICsxLDIwIEBACistLS0gYmZkL2VsZnh4LXRpbGVneC5jLm9y aWcJMjAxMy0wMy0wNyAxMDoxNDozNC4wMDAwMDAwMDAgKzAxMDAKKysrKyBiZmQvZWxmeHgtdGls ZWd4LmMJMjAxMy0wMy0wNyAxMDoxNTozMS4wMDAwMDAwMDAgKzAxMDAKK0BAIC0xMjA1LDcgKzEy MDUsNyBAQAorIH07CisgCisgLyogUmV1c2UgYW4gZXhpc3RpbmcgaW5mbyAxMCBidW5kbGUuICAq LworLXN0YXRpYyBjb25zdCBiZmRfYnl0ZSBjb25zdCAqdGlsZWd4NjRfcGx0X3RhaWxfZW50cnkg PQorK3N0YXRpYyBjb25zdCBiZmRfYnl0ZSAqdGlsZWd4NjRfcGx0X3RhaWxfZW50cnkgPQorICAg JnRpbGVneDY0X3Nob3J0X3BsdF9lbnRyeVs0ICogVElMRUdYX0JVTkRMRV9TSVpFX0lOX0JZVEVT XTsKKyAKKyBzdGF0aWMgY29uc3QgYmZkX2J5dGUKK0BAIC0xMjUwLDcgKzEyNTAsNyBAQAorIH07 CisgCisgLyogUmV1c2UgYW4gZXhpc3RpbmcgaW5mbyAxMCBidW5kbGUuICAqLworLXN0YXRpYyBj b25zdCBiZmRfYnl0ZSBjb25zdCAqdGlsZWd4MzJfcGx0X3RhaWxfZW50cnkgPQorK3N0YXRpYyBj b25zdCBiZmRfYnl0ZSAqdGlsZWd4MzJfcGx0X3RhaWxfZW50cnkgPQorICAgJnRpbGVneDY0X3No b3J0X3BsdF9lbnRyeVs0ICogVElMRUdYX0JVTkRMRV9TSVpFX0lOX0JZVEVTXTsKKyAKKyBzdGF0 aWMgaW50CmRpZmYgLU5ydSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1iZmQtbWFjaC1vLmMg ZGV2ZWwvZ2RiL2ZpbGVzL3BhdGNoLWJmZC1tYWNoLW8uYwotLS0gZGV2ZWwvZ2RiLm9yaWcvZmls ZXMvcGF0Y2gtYmZkLW1hY2gtby5jCTE5NzAtMDEtMDEgMDE6MDA6MDAuMDAwMDAwMDAwICswMTAw CisrKyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gtYmZkLW1hY2gtby5jCTIwMTMtMDMtMTEgMTQ6NTc6 NDAuMDAwMDAwMDAwICswMTAwCkBAIC0wLDAgKzEsMTEgQEAKKy0tLSBiZmQvbWFjaC1vLmMub3Jp ZwkyMDEzLTAzLTA3IDEwOjE1OjU1LjAwMDAwMDAwMCArMDEwMAorKysrIGJmZC9tYWNoLW8uYwky MDEzLTAzLTA3IDEwOjE2OjA5LjAwMDAwMDAwMCArMDEwMAorQEAgLTI2ODMsNyArMjY4Myw3IEBA CisgCSAgcy0+ZmxhZ3MgPSB4bGF0LT5tYWNob19zZWN0eXBlIHwgeGxhdC0+bWFjaG9fc2VjYXR0 cjsKKyAJICBzLT5hbGlnbiA9IHhsYXQtPnNlY3RhbGlnbiA+IGJmZGFsaWduID8geGxhdC0+c2Vj dGFsaWduIAorIAkJCQkJCTogYmZkYWxpZ247CistCSAgYmZkX3NldF9zZWN0aW9uX2FsaWdubWVu dCAoYWJmZCwgc2VjLCBzLT5hbGlnbik7CisrCSAgKHZvaWQpYmZkX3NldF9zZWN0aW9uX2FsaWdu bWVudCAoYWJmZCwgc2VjLCBzLT5hbGlnbik7CisgCSAgYmZkX2ZsYWdzID0gYmZkX2dldF9zZWN0 aW9uX2ZsYWdzIChhYmZkLCBzZWMpOworIAkgIGlmIChiZmRfZmxhZ3MgPT0gU0VDX05PX0ZMQUdT KQorIAkgICAgYmZkX3NldF9zZWN0aW9uX2ZsYWdzIChhYmZkLCBzZWMsIHhsYXQtPmJmZF9mbGFn cyk7CmRpZmYgLU5ydSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1iZmQtbW1vLmMgZGV2ZWwv Z2RiL2ZpbGVzL3BhdGNoLWJmZC1tbW8uYwotLS0gZGV2ZWwvZ2RiLm9yaWcvZmlsZXMvcGF0Y2gt YmZkLW1tby5jCTE5NzAtMDEtMDEgMDE6MDA6MDAuMDAwMDAwMDAwICswMTAwCisrKyBkZXZlbC9n ZGIvZmlsZXMvcGF0Y2gtYmZkLW1tby5jCTIwMTMtMDMtMTEgMTQ6NTc6NDAuMDAwMDAwMDAwICsw MTAwCkBAIC0wLDAgKzEsMjkgQEAKKy0tLSBiZmQvbW1vLmMub3JpZwkyMDEzLTAzLTExIDEyOjE3 OjU3LjAwMDAwMDAwMCArMDEwMAorKysrIGJmZC9tbW8uYwkyMDEzLTAzLTExIDEyOjE3OjIxLjAw MDAwMDAwMCArMDEwMAorQEAgLTY2Myw3ICs2NjMsNyBAQAorIAlyZXR1cm4gTlVMTDsKKyAKKyAg ICAgICBpZiAoISBzZWMtPnVzZXJfc2V0X3ZtYSkKKy0JYmZkX3NldF9zZWN0aW9uX3ZtYSAoYWJm ZCwgc2VjLCB2bWEpOworKwkodm9pZCliZmRfc2V0X3NlY3Rpb25fdm1hIChhYmZkLCBzZWMsIHZt YSk7CisgICAgICAgaWYgKCEgYmZkX3NldF9zZWN0aW9uX2ZsYWdzIChhYmZkLCBzZWMsCisgCQkJ CSAgIGJmZF9nZXRfc2VjdGlvbl9mbGFncyAoYWJmZCwgc2VjKQorIAkJCQkgICB8IFNFQ19DT0RF IHwgU0VDX0xPQUQgfCBTRUNfQUxMT0MpKQorQEAgLTY3Nyw3ICs2NzcsNyBAQAorIAlyZXR1cm4g TlVMTDsKKyAKKyAgICAgICBpZiAoISBzZWMtPnVzZXJfc2V0X3ZtYSkKKy0JYmZkX3NldF9zZWN0 aW9uX3ZtYSAoYWJmZCwgc2VjLCB2bWEpOworKwkodm9pZCliZmRfc2V0X3NlY3Rpb25fdm1hIChh YmZkLCBzZWMsIHZtYSk7CisgICAgICAgaWYgKCEgYmZkX3NldF9zZWN0aW9uX2ZsYWdzIChhYmZk LCBzZWMsCisgCQkJCSAgIGJmZF9nZXRfc2VjdGlvbl9mbGFncyAoYWJmZCwgc2VjKQorIAkJCQkg ICB8IFNFQ19MT0FEIHwgU0VDX0FMTE9DKSkKK0BAIC02OTMsNyArNjkzLDcgQEAKKyAgIHNwcmlu dGYgKHNlY19uYW1lLCAiLk1NSVguc2VjLiVkIiwgYWJmZC0+dGRhdGEubW1vX2RhdGEtPnNlY19u bysrKTsKKyAgIHNlYyA9IG1tb19tYWtlX3NlY3Rpb24gKGFiZmQsIHNlY19uYW1lKTsKKyAgIGlm ICghIHNlYy0+dXNlcl9zZXRfdm1hKQorLSAgICBiZmRfc2V0X3NlY3Rpb25fdm1hIChhYmZkLCBz ZWMsIHZtYSk7CisrICAgICh2b2lkKWJmZF9zZXRfc2VjdGlvbl92bWEgKGFiZmQsIHNlYywgdm1h KTsKKyAKKyAgIGlmICghIGJmZF9zZXRfc2VjdGlvbl9mbGFncyAoYWJmZCwgc2VjLAorIAkJCSAg ICAgICBiZmRfZ2V0X3NlY3Rpb25fZmxhZ3MgKGFiZmQsIHNlYykKZGlmZiAtTnJ1IGRldmVsL2dk Yi5vcmlnL2ZpbGVzL3BhdGNoLWJmZC12bXMtYWxwaGEuYyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gt YmZkLXZtcy1hbHBoYS5jCi0tLSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1iZmQtdm1zLWFs cGhhLmMJMTk3MC0wMS0wMSAwMTowMDowMC4wMDAwMDAwMDAgKzAxMDAKKysrIGRldmVsL2dkYi9m aWxlcy9wYXRjaC1iZmQtdm1zLWFscGhhLmMJMjAxMy0wMy0xMSAxNDo1Nzo0MC4wMDAwMDAwMDAg KzAxMDAKQEAgLTAsMCArMSwyMCBAQAorLS0tIGJmZC92bXMtYWxwaGEuYy5vcmlnCTIwMTMtMDMt MTEgMTA6NDA6MzkuMDAwMDAwMDAwICswMTAwCisrKysgYmZkL3Ztcy1hbHBoYS5jCTIwMTMtMDMt MTEgMTI6MzE6MTIuMDAwMDAwMDAwICswMTAwCitAQCAtNjA0NCw3ICs2MDQ0LDcgQEAKKyAgICAg ICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpyZWMsIHVuc2lnbmVkIGludCByZWNfbGVu KQorIHsKKyAgIHVuc2lnbmVkIGludCBvZmYgPSBzaXplb2YgKHN0cnVjdCB2bXNfZWdzZCk7Cist ICB1bnNpZ25lZCBpbnQgc2VjX2xlbjsKKysgIHVuc2lnbmVkIGludCBzZWNfbGVuID0gMDsKKyAK KyAgIGZwcmludGYgKGZpbGUsIF8oIiAgJXMgKGxlbj0ldSsldSk6XG4iKSwgbmFtZSwKKyAgICAg ICAgICAgICh1bnNpZ25lZCkocmVjX2xlbiAtIHNpemVvZiAoc3RydWN0IHZtc19lb2JqcmVjKSks CitAQCAtOTExOCw3ICs5MTE4LDcgQEAKKyAgIHZtc19kZWJ1ZzIgKCgxLCAidm1zX25ld19zZWN0 aW9uX2hvb2sgKCVwLCBbJWRdJXMpXG4iLAorICAgICAgICAgICAgICAgIGFiZmQsIHNlY3Rpb24t PmluZGV4LCBzZWN0aW9uLT5uYW1lKSk7CisgCistICBiZmRfc2V0X3NlY3Rpb25fYWxpZ25tZW50 IChhYmZkLCBzZWN0aW9uLCAwKTsKKysgICh2b2lkKWJmZF9zZXRfc2VjdGlvbl9hbGlnbm1lbnQg KGFiZmQsIHNlY3Rpb24sIDApOworIAorICAgdm1zX2RlYnVnMiAoKDcsICIlZDogJXNcbiIsIHNl Y3Rpb24tPmluZGV4LCBzZWN0aW9uLT5uYW1lKSk7CisgCmRpZmYgLU5ydSBkZXZlbC9nZGIub3Jp Zy9maWxlcy9wYXRjaC1iZmQteGNvZmZsaW5rLmMgZGV2ZWwvZ2RiL2ZpbGVzL3BhdGNoLWJmZC14 Y29mZmxpbmsuYwotLS0gZGV2ZWwvZ2RiLm9yaWcvZmlsZXMvcGF0Y2gtYmZkLXhjb2ZmbGluay5j CTE5NzAtMDEtMDEgMDE6MDA6MDAuMDAwMDAwMDAwICswMTAwCisrKyBkZXZlbC9nZGIvZmlsZXMv cGF0Y2gtYmZkLXhjb2ZmbGluay5jCTIwMTMtMDMtMTEgMTQ6NTc6NDAuMDAwMDAwMDAwICswMTAw CkBAIC0wLDAgKzEsMTEgQEAKKy0tLSBiZmQveGNvZmZsaW5rLmMub3JpZwkyMDEzLTAzLTA3IDEw OjE2OjQ1LjAwMDAwMDAwMCArMDEwMAorKysrIGJmZC94Y29mZmxpbmsuYwkyMDEzLTAzLTA3IDEw OjE5OjUwLjAwMDAwMDAwMCArMDEwMAorQEAgLTYyNzMsNyArNjI3Myw3IEBACisgICAgICAgaXJl bCA9IGZsaW5mby5zZWN0aW9uX2luZm9bby0+dGFyZ2V0X2luZGV4XS5yZWxvY3M7CisgICAgICAg aXJlbGVuZCA9IGlyZWwgKyBvLT5yZWxvY19jb3VudDsKKyAgICAgICByZWxfaGFzaCA9IGZsaW5m by5zZWN0aW9uX2luZm9bby0+dGFyZ2V0X2luZGV4XS5yZWxfaGFzaGVzOworLSAgICAgIGZvciAo OyBpcmVsIDwgaXJlbGVuZDsgaXJlbCsrLCByZWxfaGFzaCsrLCBlcmVsICs9IHJlbHN6KQorKyAg ICAgIGZvciAoOyBpcmVsIDwgaXJlbGVuZDsgaXJlbCsrLCByZWxfaGFzaCsrKQorIAl7CisgCSAg aWYgKCpyZWxfaGFzaCAhPSBOVUxMKQorIAkgICAgewpkaWZmIC1OcnUgZGV2ZWwvZ2RiLm9yaWcv ZmlsZXMvcGF0Y2gtaW5jbHVkZS1jZ2VuLWJhc2ljLW9wcy5oIGRldmVsL2dkYi9maWxlcy9wYXRj aC1pbmNsdWRlLWNnZW4tYmFzaWMtb3BzLmgKLS0tIGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNo LWluY2x1ZGUtY2dlbi1iYXNpYy1vcHMuaAkxOTcwLTAxLTAxIDAxOjAwOjAwLjAwMDAwMDAwMCAr MDEwMAorKysgZGV2ZWwvZ2RiL2ZpbGVzL3BhdGNoLWluY2x1ZGUtY2dlbi1iYXNpYy1vcHMuaAky MDEzLTAzLTExIDE0OjU3OjQwLjAwMDAwMDAwMCArMDEwMApAQCAtMCwwICsxLDQzIEBACistLS0g aW5jbHVkZS9jZ2VuL2Jhc2ljLW9wcy5oLm9yaWcJMjAxMy0wMy0wNyAxNzozMToyMS4wMDAwMDAw MDAgKzAxMDAKKysrKyBpbmNsdWRlL2NnZW4vYmFzaWMtb3BzLmgJMjAxMy0wMy0wNyAxNzozMToy OC4wMDAwMDAwMDAgKzAxMDAKK0BAIC0yNCwxMSArMjQsMTYgQEAKKyAKKyAjaW5jbHVkZSA8YXNz ZXJ0Lmg+CisgCistI2lmIGRlZmluZWQgKF9fR05VQ19fKSAmJiAhIGRlZmluZWQgKFNFTU9QU19E RUZJTkVfSU5MSU5FKQorKyNpZiBkZWZpbmVkIChfX0dOVUNfXykgJiYgISBkZWZpbmVkIChTRU1P UFNfREVGSU5FX0lOTElORSkgJiYgISBkZWZpbmVkIChfX2NsYW5nX18pCisgI2RlZmluZSBTRU1P UFNfREVGSU5FX0lOTElORQorICNkZWZpbmUgU0VNT1BTX0lOTElORSBleHRlcm4gaW5saW5lCisg I2Vsc2UKKy0jZGVmaW5lIFNFTU9QU19JTkxJTkUKKysjIGlmIGRlZmluZWQgKF9fY2xhbmdfXykg JiYgISBkZWZpbmVkIChTRU1PUFNfREVGSU5FX0lOTElORSkKKysjICBkZWZpbmUgU0VNT1BTX0RF RklORV9JTkxJTkUKKysjICBkZWZpbmUgU0VNT1BTX0lOTElORSBzdGF0aWMgaW5saW5lCisrIyBl bHNlCisrIyAgZGVmaW5lIFNFTU9QU19JTkxJTkUKKysjIGVuZGlmCisgI2VuZGlmCisgCisgLyog VGhlc2UgZG9uJ3QgcmVhbGx5IGhhdmUgYSBtb2RlLiAgKi8KK0BAIC0yOTUsMTEgKzMwMCwxNiBA QAorICAgIHNpZ25pZmljYW50IGFuZCB3b3JkIG51bWJlciAwIGlzIHRoZSBtb3N0IHNpZ25pZmlj YW50IHdvcmQuCisgICAgPz8/IE1heSBhbHNvIHdpc2ggYW4gZW5kaWFuLWRlcGVuZGVudCB2ZXJz aW9uLiAgTGF0ZXIuICAqLworIAorLVFJIFNVQldPUkRTSVFJIChTSSwgaW50KTsKKy1ISSBTVUJX T1JEU0lISSAoU0ksIGludCk7CistUUkgU1VCV09SRERJUUkgKERJLCBpbnQpOworLUhJIFNVQldP UkRESUhJIChESSwgaW50KTsKKy1TSSBTVUJXT1JERElTSSAoREksIGludCk7CisrI2lmIGRlZmlu ZWQgKF9fY2xhbmdfXykgJiYgZGVmaW5lZCAoU0VNT1BTX0RFRklORV9JTkxJTkUpCisrI2RlZmlu ZSBTRU1PUFNfU1RBVElDIHN0YXRpYworKyNlbHNlCisrI2RlZmluZSBTRU1PUFNfU1RBVElDCisr I2VuZGlmCisrU0VNT1BTX1NUQVRJQyBRSSBTVUJXT1JEU0lRSSAoU0ksIGludCk7CisrU0VNT1BT X1NUQVRJQyBISSBTVUJXT1JEU0lISSAoU0ksIGludCk7CisrU0VNT1BTX1NUQVRJQyBRSSBTVUJX T1JERElRSSAoREksIGludCk7CisrU0VNT1BTX1NUQVRJQyBISSBTVUJXT1JERElISSAoREksIGlu dCk7CisrU0VNT1BTX1NUQVRJQyBTSSBTVUJXT1JERElTSSAoREksIGludCk7CisgCisgI2lmZGVm IFNFTU9QU19ERUZJTkVfSU5MSU5FCisgCmRpZmYgLU5ydSBkZXZlbC9nZGIub3JpZy9maWxlcy9w YXRjaC1vcGNvZGVzLWNyMTYtb3BjLmMgZGV2ZWwvZ2RiL2ZpbGVzL3BhdGNoLW9wY29kZXMtY3Ix Ni1vcGMuYwotLS0gZGV2ZWwvZ2RiLm9yaWcvZmlsZXMvcGF0Y2gtb3Bjb2Rlcy1jcjE2LW9wYy5j CTE5NzAtMDEtMDEgMDE6MDA6MDAuMDAwMDAwMDAwICswMTAwCisrKyBkZXZlbC9nZGIvZmlsZXMv cGF0Y2gtb3Bjb2Rlcy1jcjE2LW9wYy5jCTIwMTMtMDMtMTEgMTQ6NTc6NDAuMDAwMDAwMDAwICsw MTAwCkBAIC0wLDAgKzEsNjUgQEAKKy0tLSBvcGNvZGVzL2NyMTYtb3BjLmMub3JpZwkyMDEzLTAz LTA3IDEwOjM0OjQ4LjAwMDAwMDAwMCArMDEwMAorKysrIG9wY29kZXMvY3IxNi1vcGMuYwkyMDEz LTAzLTA3IDEwOjMzOjQ5LjAwMDAwMDAwMCArMDEwMAorQEAgLTUwMiwzNiArNTAyLDM2IEBACisg Y29uc3QgcmVnX2VudHJ5IGNyMTZfcHJlZ3RhYltdID0KKyB7CisgLyogQnVpbGQgYSBwcm9jZXNz b3IgcmVnaXN0ZXIuICAqLworLSAgUkVHKGRicywgICAweDAsIENSMTZfUF9SRUdUWVBFKSwKKy0g IFJFRyhkc3IsICAgMHgxLCBDUjE2X1BfUkVHVFlQRSksCistICBSRUcoZGNybCwgIDB4MiwgQ1Ix Nl9QX1JFR1RZUEUpLAorLSAgUkVHKGRjcmgsICAweDMsIENSMTZfUF9SRUdUWVBFKSwKKy0gIFJF RyhjYXIwbCwgMHg0LCBDUjE2X1BfUkVHVFlQRSksCistICBSRUcoY2FyMGgsIDB4NSwgQ1IxNl9Q X1JFR1RZUEUpLAorLSAgUkVHKGNhcjFsLCAweDYsIENSMTZfUF9SRUdUWVBFKSwKKy0gIFJFRyhj YXIxaCwgMHg3LCBDUjE2X1BfUkVHVFlQRSksCistICBSRUcoY2ZnLCAgIDB4OCwgQ1IxNl9QX1JF R1RZUEUpLAorLSAgUkVHKHBzciwgICAweDksIENSMTZfUF9SRUdUWVBFKSwKKy0gIFJFRyhpbnRi YXNlbCwgMHhhLCBDUjE2X1BfUkVHVFlQRSksCistICBSRUcoaW50YmFzZWgsIDB4YiwgQ1IxNl9Q X1JFR1RZUEUpLAorLSAgUkVHKGlzcGwsICAweGMsIENSMTZfUF9SRUdUWVBFKSwKKy0gIFJFRyhp c3BoLCAgMHhkLCBDUjE2X1BfUkVHVFlQRSksCistICBSRUcodXNwbCwgIDB4ZSwgQ1IxNl9QX1JF R1RZUEUpLAorLSAgUkVHKHVzcGgsICAweGYsIENSMTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVn KWRicywgICAweDAsIENSMTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVnKWRzciwgICAweDEsIENS MTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVnKWRjcmwsICAweDIsIENSMTZfUF9SRUdUWVBFKSwK KysgIFJFRygocmVnKWRjcmgsICAweDMsIENSMTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVnKWNh cjBsLCAweDQsIENSMTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVnKWNhcjBoLCAweDUsIENSMTZf UF9SRUdUWVBFKSwKKysgIFJFRygocmVnKWNhcjFsLCAweDYsIENSMTZfUF9SRUdUWVBFKSwKKysg IFJFRygocmVnKWNhcjFoLCAweDcsIENSMTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVnKWNmZywg ICAweDgsIENSMTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVnKXBzciwgICAweDksIENSMTZfUF9S RUdUWVBFKSwKKysgIFJFRygocmVnKWludGJhc2VsLCAweGEsIENSMTZfUF9SRUdUWVBFKSwKKysg IFJFRygocmVnKWludGJhc2VoLCAweGIsIENSMTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVnKWlz cGwsICAweGMsIENSMTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVnKWlzcGgsICAweGQsIENSMTZf UF9SRUdUWVBFKSwKKysgIFJFRygocmVnKXVzcGwsICAweGUsIENSMTZfUF9SRUdUWVBFKSwKKysg IFJFRygocmVnKXVzcGgsICAweGYsIENSMTZfUF9SRUdUWVBFKSwKKyB9OworIAorIGNvbnN0IHJl Z19lbnRyeSBjcjE2X3ByZWdwdGFiW10gPQorIHsKKy0gIFJFRyhkYnMsICAgMCwgQ1IxNl9QX1JF R1RZUEUpLAorLSAgUkVHKGRzciwgICAxLCBDUjE2X1BfUkVHVFlQRSksCistICBSRUcoZGNyLCAg IDIsIENSMTZfUF9SRUdUWVBFKSwKKy0gIFJFRyhjYXIwLCAgNCwgQ1IxNl9QX1JFR1RZUEUpLAor LSAgUkVHKGNhcjEsICA2LCBDUjE2X1BfUkVHVFlQRSksCistICBSRUcoY2ZnLCAgIDgsIENSMTZf UF9SRUdUWVBFKSwKKy0gIFJFRyhwc3IsICAgOSwgQ1IxNl9QX1JFR1RZUEUpLAorLSAgUkVHKGlu dGJhc2UsIDEwLCBDUjE2X1BfUkVHVFlQRSksCistICBSRUcoaXNwLCAgIDEyLCBDUjE2X1BfUkVH VFlQRSksCistICBSRUcodXNwLCAgIDE0LCBDUjE2X1BfUkVHVFlQRSksCisrICBSRUcoKHJlZylk YnMsICAgMCwgQ1IxNl9QX1JFR1RZUEUpLAorKyAgUkVHKChyZWcpZHNyLCAgIDEsIENSMTZfUF9S RUdUWVBFKSwKKysgIFJFRygocmVnKWRjciwgICAyLCBDUjE2X1BfUkVHVFlQRSksCisrICBSRUco KHJlZyljYXIwLCAgNCwgQ1IxNl9QX1JFR1RZUEUpLAorKyAgUkVHKChyZWcpY2FyMSwgIDYsIENS MTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVnKWNmZywgICA4LCBDUjE2X1BfUkVHVFlQRSksCisr ICBSRUcoKHJlZylwc3IsICAgOSwgQ1IxNl9QX1JFR1RZUEUpLAorKyAgUkVHKChyZWcpaW50YmFz ZSwgMTAsIENSMTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVnKWlzcCwgICAxMiwgQ1IxNl9QX1JF R1RZUEUpLAorKyAgUkVHKChyZWcpdXNwLCAgIDE0LCBDUjE2X1BfUkVHVFlQRSksCisgfTsKKyAK KyBjb25zdCB1bnNpZ25lZCBpbnQgY3IxNl9udW1fcHJlZ3MgPSAgQVJSQVlfU0laRSAoY3IxNl9w cmVndGFiKTsKZGlmZiAtTnJ1IGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLW9wY29kZXMtY3J4 LW9wYy5jIGRldmVsL2dkYi9maWxlcy9wYXRjaC1vcGNvZGVzLWNyeC1vcGMuYwotLS0gZGV2ZWwv Z2RiLm9yaWcvZmlsZXMvcGF0Y2gtb3Bjb2Rlcy1jcngtb3BjLmMJMTk3MC0wMS0wMSAwMTowMDow MC4wMDAwMDAwMDAgKzAxMDAKKysrIGRldmVsL2dkYi9maWxlcy9wYXRjaC1vcGNvZGVzLWNyeC1v cGMuYwkyMDEzLTAzLTExIDE0OjU3OjQwLjAwMDAwMDAwMCArMDEwMApAQCAtMCwwICsxLDIwIEBA CistLS0gb3Bjb2Rlcy9jcngtb3BjLmMub3JpZwkyMDEzLTAzLTA3IDEwOjM1OjA2LjAwMDAwMDAw MCArMDEwMAorKysrIG9wY29kZXMvY3J4LW9wYy5jCTIwMTMtMDMtMDcgMTA6NDA6MzEuMDAwMDAw MDAwICswMTAwCitAQCAtNjMyLDcgKzYzMiw3IEBACisgY29uc3QgcmVnX2VudHJ5IGNyeF9jb3By ZWd0YWJbXSA9CisgeworIC8qIEJ1aWxkIGEgQ29wcm9jZXNzb3IgcmVnaXN0ZXIgYzxOPi4gICov CistI2RlZmluZSBSRUdfQyhOKSAgICBSRUcoQ09OQ0FUMihjLE4pLCBOLCBDUlhfQ19SRUdUWVBF KQorKyNkZWZpbmUgUkVHX0MoTikgICAgUkVHKChyZWcpQ09OQ0FUMihjLE4pLCBOLCBDUlhfQ19S RUdUWVBFKQorIAorICAgUkVHX0MoMCksICBSRUdfQygxKSwJUkVHX0MoMiksICBSRUdfQygzKSwK KyAgIFJFR19DKDQpLCAgUkVHX0MoNSksCVJFR19DKDYpLCAgUkVHX0MoNyksCitAQCAtNjQwLDcg KzY0MCw3IEBACisgICBSRUdfQygxMiksIFJFR19DKDEzKSwgUkVHX0MoMTQpLCBSRUdfQygxNSks CisgCisgLyogQnVpbGQgYSBDb3Byb2Nlc3NvciBTcGVjaWFsIHJlZ2lzdGVyIGNzPE4+LiAgKi8K Ky0jZGVmaW5lIFJFR19DUyhOKSAgICBSRUcoQ09OQ0FUMihjcyxOKSwgTiwgQ1JYX0NTX1JFR1RZ UEUpCisrI2RlZmluZSBSRUdfQ1MoTikgICAgUkVHKChyZWcpQ09OQ0FUMihjcyxOKSwgTiwgQ1JY X0NTX1JFR1RZUEUpCisgCisgICBSRUdfQ1MoMCksICBSRUdfQ1MoMSksICBSRUdfQ1MoMiksICBS RUdfQ1MoMyksCisgICBSRUdfQ1MoNCksICBSRUdfQ1MoNSksICBSRUdfQ1MoNiksICBSRUdfQ1Mo NyksCmRpZmYgLU5ydSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1vcGNvZGVzLWkzODYtZGlz LmMgZGV2ZWwvZ2RiL2ZpbGVzL3BhdGNoLW9wY29kZXMtaTM4Ni1kaXMuYwotLS0gZGV2ZWwvZ2Ri Lm9yaWcvZmlsZXMvcGF0Y2gtb3Bjb2Rlcy1pMzg2LWRpcy5jCTIwMTItMTItMjQgMjM6NDE6MTku MDAwMDAwMDAwICswMTAwCisrKyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gtb3Bjb2Rlcy1pMzg2LWRp cy5jCTIwMTMtMDMtMTEgMTQ6NTc6NDAuMDAwMDAwMDAwICswMTAwCkBAIC01NiwzICs1Niw0IEBA CiArICBvYXBwZW5kICgmIiVlczoiWyhzaG9ydClpbnRlbF9zeW50YXhdKTsKICAgIHB0cl9yZWcg KGNvZGUsIHNpemVmbGFnKTsKICB9CisgCmRpZmYgLU5ydSBkZXZlbC9nZGIub3JpZy9maWxlcy9w YXRjaC1vcGNvZGVzLWlhNjQtYXNtdGFiLmMgZGV2ZWwvZ2RiL2ZpbGVzL3BhdGNoLW9wY29kZXMt aWE2NC1hc210YWIuYwotLS0gZGV2ZWwvZ2RiLm9yaWcvZmlsZXMvcGF0Y2gtb3Bjb2Rlcy1pYTY0 LWFzbXRhYi5jCTE5NzAtMDEtMDEgMDE6MDA6MDAuMDAwMDAwMDAwICswMTAwCisrKyBkZXZlbC9n ZGIvZmlsZXMvcGF0Y2gtb3Bjb2Rlcy1pYTY0LWFzbXRhYi5jCTIwMTMtMDMtMTEgMTQ6NTc6NDAu MDAwMDAwMDAwICswMTAwCkBAIC0wLDAgKzEsMzcgQEAKKy0tLSBvcGNvZGVzL2lhNjQtYXNtdGFi LmMub3JpZwkyMDEzLTAzLTA3IDEwOjQxOjQ5LjAwMDAwMDAwMCArMDEwMAorKysrIG9wY29kZXMv aWE2NC1hc210YWIuYwkyMDEzLTAzLTA3IDEwOjQ1OjQ5LjAwMDAwMDAwMCArMDEwMAorQEAgLTEw MSw3ICsxMDEsNyBAQAorICAgeyAiQ1BVSUQjIiwgNywgMCwgNSwgLTEsIE5VTEwsIH0sCisgICB7 ICJDUltDTUNWXSIsIDI4LCAwLCAzLCA3NCwgTlVMTCwgfSwKKyAgIHsgIkNSW0RDUl0iLCAyOCwg MCwgMywgMCwgTlVMTCwgfSwKKy0gIHsgIkNSW0VPSV0iLCAyOCwgMCwgNywgNjcsICJTQyBTZWN0 aW9uIDUuOC4zLjQsIFwiRW5kIG9mIEV4dGVybmFsIEludGVycnVwdCBSZWdpc3RlciAoRU9JINAg Q1I2NylcIiBvbiBwYWdlIDI6MTE5IiwgfSwKKysgIHsgIkNSW0VPSV0iLCAyOCwgMCwgNywgNjcs ICJTQyBTZWN0aW9uIDUuOC4zLjQsIFwiRW5kIG9mIEV4dGVybmFsIEludGVycnVwdCBSZWdpc3Rl ciAoRU9JIENSNjcpXCIgb24gcGFnZSAyOjExOSIsIH0sCisgICB7ICJDUltHUFRBXSIsIDI4LCAw LCAzLCA5LCBOVUxMLCB9LAorICAgeyAiQ1JbSUZBXSIsIDI4LCAwLCAxLCAyMCwgTlVMTCwgfSwK KyAgIHsgIkNSW0lGQV0iLCAyOCwgMCwgMywgMjAsIE5VTEwsIH0sCitAQCAtMTIzLDEzICsxMjMs MTMgQEAKKyAgIHsgIkNSW0lUTV0iLCAyOCwgMCwgMywgMSwgTlVMTCwgfSwKKyAgIHsgIkNSW0lU Vl0iLCAyOCwgMCwgMywgNzIsIE5VTEwsIH0sCisgICB7ICJDUltJVkFdIiwgMjgsIDAsIDQsIDIs IE5VTEwsIH0sCistICB7ICJDUltJVlJdIiwgMjgsIDAsIDcsIDY1LCAiU0MgU2VjdGlvbiA1Ljgu My4yLCBcIkV4dGVybmFsIEludGVycnVwdCBWZWN0b3IgUmVnaXN0ZXIgKElWUiDQIENSNjUpXCIg b24gcGFnZSAyOjExOCIsIH0sCistICB7ICJDUltMSURdIiwgMjgsIDAsIDcsIDY0LCAiU0MgU2Vj dGlvbiA1LjguMy4xLCBcIkxvY2FsIElEIChMSUQg0CBDUjY0KVwiIG9uIHBhZ2UgMjoxMTciLCB9 LAorKyAgeyAiQ1JbSVZSXSIsIDI4LCAwLCA3LCA2NSwgIlNDIFNlY3Rpb24gNS44LjMuMiwgXCJF eHRlcm5hbCBJbnRlcnJ1cHQgVmVjdG9yIFJlZ2lzdGVyIChJVlIgIENSNjUpXCIgb24gcGFnZSAy OjExOCIsIH0sCisrICB7ICJDUltMSURdIiwgMjgsIDAsIDcsIDY0LCAiU0MgU2VjdGlvbiA1Ljgu My4xLCBcIkxvY2FsIElEIChMSUQgIENSNjQpXCIgb24gcGFnZSAyOjExNyIsIH0sCisgICB7ICJD UltMUlIlXSwgJSBpbiAwIC0gMSIsIDEwLCAwLCAzLCAtMSwgTlVMTCwgfSwKKyAgIHsgIkNSW1BN Vl0iLCAyOCwgMCwgMywgNzMsIE5VTEwsIH0sCisgICB7ICJDUltQVEFdIiwgMjgsIDAsIDMsIDgs IE5VTEwsIH0sCisgICB7ICJDUltUUFJdIiwgMjgsIDAsIDMsIDY2LCBOVUxMLCB9LAorLSAgeyAi Q1JbVFBSXSIsIDI4LCAwLCA3LCA2NiwgIlNDIFNlY3Rpb24gNS44LjMuMywgXCJUYXNrIFByaW9y aXR5IFJlZ2lzdGVyIChUUFIg0CBDUjY2KVwiIG9uIHBhZ2UgMjoxMTkiLCB9LAorKyAgeyAiQ1Jb VFBSXSIsIDI4LCAwLCA3LCA2NiwgIlNDIFNlY3Rpb24gNS44LjMuMywgXCJUYXNrIFByaW9yaXR5 IFJlZ2lzdGVyIChUUFIgIENSNjYpXCIgb24gcGFnZSAyOjExOSIsIH0sCisgICB7ICJDUltUUFJd IiwgMjgsIDAsIDEsIDY2LCBOVUxMLCB9LAorICAgeyAiQ1IlLCAlIGluIDMtNywgMTAtMTUsIDE4 LCAyOC02MywgNzUtNzksIDgyLTEyNyIsIDExLCAwLCAwLCAtMSwgTlVMTCwgfSwKKyAgIHsgIkRC UiMiLCAxMiwgMCwgMiwgLTEsIE5VTEwsIH0sCitAQCAtMzAzLDcgKzMwMyw3IEBACisgICB7ICJD UFVJRCMiLCA3LCAxLCAwLCAtMSwgTlVMTCwgfSwKKyAgIHsgIkNSW0NNQ1ZdIiwgMjgsIDEsIDIs IDc0LCBOVUxMLCB9LAorICAgeyAiQ1JbRENSXSIsIDI4LCAxLCAyLCAwLCBOVUxMLCB9LAorLSAg eyAiQ1JbRU9JXSIsIDI4LCAxLCA3LCA2NywgIlNDIFNlY3Rpb24gNS44LjMuNCwgXCJFbmQgb2Yg RXh0ZXJuYWwgSW50ZXJydXB0IFJlZ2lzdGVyIChFT0kg0CBDUjY3KVwiIG9uIHBhZ2UgMjoxMTki LCB9LAorKyAgeyAiQ1JbRU9JXSIsIDI4LCAxLCA3LCA2NywgIlNDIFNlY3Rpb24gNS44LjMuNCwg XCJFbmQgb2YgRXh0ZXJuYWwgSW50ZXJydXB0IFJlZ2lzdGVyIChFT0kgIENSNjcpXCIgb24gcGFn ZSAyOjExOSIsIH0sCisgICB7ICJDUltHUFRBXSIsIDI4LCAxLCAyLCA5LCBOVUxMLCB9LAorICAg eyAiQ1JbSUZBXSIsIDI4LCAxLCAyLCAyMCwgTlVMTCwgfSwKKyAgIHsgIkNSW0lGU10iLCAyOCwg MSwgMiwgMjMsIE5VTEwsIH0sCmRpZmYgLU5ydSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1v cGNvZGVzLXRpYzU0eC1kaXMuYyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gtb3Bjb2Rlcy10aWM1NHgt ZGlzLmMKLS0tIGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLW9wY29kZXMtdGljNTR4LWRpcy5j CTE5NzAtMDEtMDEgMDE6MDA6MDAuMDAwMDAwMDAwICswMTAwCisrKyBkZXZlbC9nZGIvZmlsZXMv cGF0Y2gtb3Bjb2Rlcy10aWM1NHgtZGlzLmMJMjAxMy0wMy0xMSAxNDo1Nzo0MC4wMDAwMDAwMDAg KzAxMDAKQEAgLTAsMCArMSwxMDUgQEAKKy0tLSBvcGNvZGVzL3RpYzU0eC1kaXMuYy5vcmlnCTIw MTMtMDMtMDcgMTA6NDY6NTIuMDAwMDAwMDAwICswMTAwCisrKysgb3Bjb2Rlcy90aWM1NHgtZGlz LmMJMjAxMy0wMy0wNyAxMjowNToxOS4wMDAwMDAwMDAgKzAxMDAKK0BAIC0xNjgsMTQgKzE2OCw5 IEBACisgfQorIAorIGludAorLXByaW50X2luc3RydWN0aW9uIChpbmZvLCBtZW1hZGRyLCBvcGNv ZGUsIHRtX25hbWUsIHRtX29wZXJhbmRzLCBzaXplLCBleHQpCistICBkaXNhc3NlbWJsZV9pbmZv ICppbmZvOworLSAgYmZkX3ZtYSBtZW1hZGRyOworLSAgdW5zaWduZWQgc2hvcnQgb3Bjb2RlOwor LSAgY29uc3QgY2hhciAqdG1fbmFtZTsKKy0gIGNvbnN0IGVudW0gb3B0eXBlIHRtX29wZXJhbmRz W107CistICBpbnQgc2l6ZTsKKy0gIGludCBleHQ7CisrcHJpbnRfaW5zdHJ1Y3Rpb24gKGRpc2Fz c2VtYmxlX2luZm8gKiBpbmZvLCBiZmRfdm1hIG1lbWFkZHIsCisrICB1bnNpZ25lZCBzaG9ydCBv cGNvZGUsIGNvbnN0IGNoYXIgKnRtX25hbWUsCisrICBjb25zdCBlbnVtIG9wdHlwZSB0bV9vcGVy YW5kc1tdLCBpbnQgc2l6ZSwgaW50IGV4dCkKKyB7CisgICBzdGF0aWMgaW50IG47CisgICAvKiBz dHJpbmcgc3RvcmFnZSBmb3IgbXVsdGlwbGUgb3BlcmFuZHMgKi8KK0BAIC00NjgsNiArNDYzLDcg QEAKKyAgIHJldHVybiAxOworIH0KKyAKKysvKgorIHN0YXRpYyBpbnQKKyBwcmludF9wYXJhbGxl bF9pbnN0cnVjdGlvbiAoaW5mbywgbWVtYWRkciwgb3Bjb2RlLCBwdG0sIHNpemUpCisgICBkaXNh c3NlbWJsZV9pbmZvICppbmZvOworQEAgLTQ3NSw2ICs0NzEsMTEgQEAKKyAgIHVuc2lnbmVkIHNo b3J0IG9wY29kZTsKKyAgIGNvbnN0IGluc25fdGVtcGxhdGUgKnB0bTsKKyAgIGludCBzaXplOwor KyovCisrc3RhdGljIGludAorK3ByaW50X3BhcmFsbGVsX2luc3RydWN0aW9uIChkaXNhc3NlbWJs ZV9pbmZvICppbmZvLAorKyAgYmZkX3ZtYSBtZW1hZGRyLCB1bnNpZ25lZCBzaG9ydCBvcGNvZGUs IAorKyAgY29uc3QgaW5zbl90ZW1wbGF0ZSAqIHB0bSwgaW50IHNpemUpCisgeworICAgcHJpbnRf aW5zdHJ1Y3Rpb24gKGluZm8sIG1lbWFkZHIsIG9wY29kZSwKKyAgICAgICAgICAgICAgICAgICAg ICBwdG0tPm5hbWUsIHB0bS0+b3BlcmFuZF90eXBlcywgc2l6ZSwgMCk7CitAQCAtNDg0LDEwICs0 ODUsOCBAQAorIH0KKyAKKyBzdGF0aWMgaW50Cistc3ByaW50X2R1YWxfYWRkcmVzcyAoaW5mbywg YnVmLCBjb2RlKQorLSAgZGlzYXNzZW1ibGVfaW5mbyAqaW5mbyBBVFRSSUJVVEVfVU5VU0VEOwor LSAgY2hhciBidWZbXTsKKy0gIHVuc2lnbmVkIHNob3J0IGNvZGU7Cisrc3ByaW50X2R1YWxfYWRk cmVzcyAoIGRpc2Fzc2VtYmxlX2luZm8gKmluZm8gQVRUUklCVVRFX1VOVVNFRCwKKysgIGNoYXIg YnVmW10sIHVuc2lnbmVkIHNob3J0IGNvZGUpCisgeworICAgY29uc3QgY2hhciAqZm9ybWF0c1td ID0geworICAgICAiKmFyJWQiLAorQEAgLTQ5OSwxMCArNDk4LDggQEAKKyB9CisgCisgc3RhdGlj IGludAorLXNwcmludF9pbmRpcmVjdF9hZGRyZXNzIChpbmZvLCBidWYsIG9wY29kZSkKKy0gIGRp c2Fzc2VtYmxlX2luZm8gKmluZm8gQVRUUklCVVRFX1VOVVNFRDsKKy0gIGNoYXIgYnVmW107Cist ICB1bnNpZ25lZCBzaG9ydCBvcGNvZGU7Cisrc3ByaW50X2luZGlyZWN0X2FkZHJlc3MgKGRpc2Fz c2VtYmxlX2luZm8gKiBpbmZvIEFUVFJJQlVURV9VTlVTRUQsCisrICBjaGFyIGJ1ZltdLCB1bnNp Z25lZCBzaG9ydCBvcGNvZGUpCisgeworICAgY29uc3QgY2hhciAqZm9ybWF0c1tdID0geworICAg ICAiKmFyJWQiLAorQEAgLTUyMiwxMCArNTE5LDggQEAKKyB9CisgCisgc3RhdGljIGludAorLXNw cmludF9kaXJlY3RfYWRkcmVzcyAoaW5mbywgYnVmLCBvcGNvZGUpCistICBkaXNhc3NlbWJsZV9p bmZvICppbmZvIEFUVFJJQlVURV9VTlVTRUQ7CistICBjaGFyIGJ1ZltdOworLSAgdW5zaWduZWQg c2hvcnQgb3Bjb2RlOworK3NwcmludF9kaXJlY3RfYWRkcmVzcyAoIGRpc2Fzc2VtYmxlX2luZm8g KmluZm8gQVRUUklCVVRFX1VOVVNFRCwKKysgIGNoYXIgYnVmW10sIHVuc2lnbmVkIHNob3J0IG9w Y29kZSkKKyB7CisgICAvKiBGSVhNRSAtLSBsb29rIHVwIHJlbG9jYXRpb24gaWYgYXZhaWxhYmxl ICovCisgICByZXR1cm4gc3ByaW50ZiAoYnVmLCAiRFArMHglMDJ4IiwgKGludCkgKG9wY29kZSAm IDB4N0YpKTsKK0BAIC01NTIsMTAgKzU0Nyw4IEBACisgfQorIAorIHN0YXRpYyBpbnQKKy1zcHJp bnRfY2MyIChpbmZvLCBidWYsIG9wY29kZSkKKy0gIGRpc2Fzc2VtYmxlX2luZm8gKmluZm8gQVRU UklCVVRFX1VOVVNFRDsKKy0gIGNoYXIgKmJ1ZjsKKy0gIHVuc2lnbmVkIHNob3J0IG9wY29kZTsK KytzcHJpbnRfY2MyIChkaXNhc3NlbWJsZV9pbmZvICppbmZvIEFUVFJJQlVURV9VTlVTRUQsCisr ICBjaGFyICpidWYsIHVuc2lnbmVkIHNob3J0IG9wY29kZSkKKyB7CisgICBjb25zdCBjaGFyICpj YzJbXSA9IHsKKyAgICAgIj8/IiwgIj8/IiwgImFnZXEiLCAiYWx0IiwgImFuZXEiLCAiYWVxIiwg ImFndCIsICJhbGVxIiwKK0BAIC01NjUsMTAgKzU1OCw4IEBACisgfQorIAorIHN0YXRpYyBpbnQK Ky1zcHJpbnRfY29uZGl0aW9uIChpbmZvLCBidWYsIG9wY29kZSkKKy0gIGRpc2Fzc2VtYmxlX2lu Zm8gKmluZm8gQVRUUklCVVRFX1VOVVNFRDsKKy0gIGNoYXIgKmJ1ZjsKKy0gIHVuc2lnbmVkIHNo b3J0IG9wY29kZTsKKytzcHJpbnRfY29uZGl0aW9uIChkaXNhc3NlbWJsZV9pbmZvICppbmZvIEFU VFJJQlVURV9VTlVTRUQsCisrICBjaGFyICpidWYsIHVuc2lnbmVkIHNob3J0IG9wY29kZSkKKyB7 CisgICBjaGFyICpzdGFydCA9IGJ1ZjsKKyAgIGNvbnN0IGNoYXIgKmNtcFtdID0gewpkaWZmIC1O cnUgZGV2ZWwvZ2RiLm9yaWcvcGtnLWRlc2NyIGRldmVsL2dkYi9wa2ctZGVzY3IKLS0tIGRldmVs L2dkYi5vcmlnL3BrZy1kZXNjcgkyMDEwLTExLTE2IDIxOjM5OjQ3LjAwMDAwMDAwMCArMDEwMAor KysgZGV2ZWwvZ2RiL3BrZy1kZXNjcgkyMDEzLTAzLTExIDE0OjU1OjUzLjAwMDAwMDAwMCArMDEw MApAQCAtMyw0ICszLDQgQEAKIG1vcmUgdGhhbiBhIGRvemVuIGRpZmZlcmVudCBwcm9jZXNzb3Ig YXJjaGl0ZWN0dXJlcywgYW5kIEdEQiBpdHNlbGYgY2FuCiBydW4gb24gbW9zdCBwb3B1bGFyIEdO VS9MaW51eCwgVW5peCBhbmQgTWljcm9zb2Z0IFdpbmRvd3MgdmFyaWFudHMuCiAKLVdXVzoJaHR0 cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2dkYi8KK1dXVzogaHR0cDovL3d3dy5nbnUub3JnL3Nv ZnR3YXJlL2dkYi8KZGlmZiAtTnJ1IGRldmVsL2dkYi5vcmlnL3BrZy1wbGlzdCBkZXZlbC9nZGIv cGtnLXBsaXN0Ci0tLSBkZXZlbC9nZGIub3JpZy9wa2ctcGxpc3QJMjAxMi0wOC0yNCAwNDo1NDo1 MC4wMDAwMDAwMDAgKzAyMDAKKysrIGRldmVsL2dkYi9wa2ctcGxpc3QJMjAxMy0wMy0wOCAxNjow MDo0NC4wMDAwMDAwMDAgKzAxMDAKQEAgLTEsNiArMSw2IEBACiAlJUdEQl9MSU5LJSViaW4vZ2Ri CiBiaW4vZ2RiJSVWRVIlJQotYmluL2dkYnR1aSUlVkVSJSUKKyUlVFVJX0xJTkslJWJpbi9nZGJ0 dWklJVZFUiUlCiAlJVBZVEhPTiUlc2hhcmUvZ2RiJSVWRVIlJS9weXRob24vZ2RiL19faW5pdF9f LnB5CiAlJVBZVEhPTiUlc2hhcmUvZ2RiJSVWRVIlJS9weXRob24vZ2RiL3R5cGVzLnB5CiAlJVBZ VEhPTiUlc2hhcmUvZ2RiJSVWRVIlJS9weXRob24vZ2RiL3ByaW50aW5nLnB5Cg== --14dae93407190eec2d04d7ca0ed3--