Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nCKYy-0007kh-UV for pgsql-hackers@arkaria.postgresql.org; Tue, 25 Jan 2022 12:04:41 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nCKYx-0006Nm-A0 for pgsql-hackers@arkaria.postgresql.org; Tue, 25 Jan 2022 12:04:39 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nCKYw-0006Nd-MS for pgsql-hackers@lists.postgresql.org; Tue, 25 Jan 2022 12:04:39 +0000 Received: from mail.postgrespro.ru ([93.174.131.139]) by makus.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nCKYn-0000Cr-Rz for pgsql-hackers@lists.postgresql.org; Tue, 25 Jan 2022 12:04:37 +0000 Received: from f325.i.mail.ru (f325.i.mail.ru [45.84.128.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mail.postgrespro.ru (Postfix) with ESMTPSA id 5AF0921C8B23 for ; Tue, 25 Jan 2022 15:04:27 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=postgrespro.ru; s=mail; t=1643112267; bh=qBoNpVfmVJk4AR8XC0ETfy5lcaJc19tKl3ImABk++fw=; h=From:To:Subject:Date:Reply-To; b=UCf4XoGCsHNssAC2s+R/8X7Y0+TUuKQRuosajKQ4hUFhr2U6Q2axfIxOXoWXfj1PV j6OZXaoRhDmMKvoKMpTKffyVABbvXy9Pa/mVX9RVbueA3QEvQMMGLipqyGDYcYu4BQ BdZufUb9KKGsol5O0nKfUGnBuxu0bXFagzoWFG+M= X-Mailru-Internal-From: s.kopikova@postgrespro.ru From: =?UTF-8?B?U29maWEgS29waWtvdmE=?= To: pgsql-hackers@lists.postgresql.org Subject: =?UTF-8?B?W1BBVENIXSBBZGQgVE9BU1Qgc3VwcG9ydCBmb3Igc2V2ZXJhbCBzeXN0ZW0g?= =?UTF-8?B?dGFibGVz?= MIME-Version: 1.0 X-Mailer: Mail.Ru Mailer 1.0 X-SenderField-Remind: 0 Date: Tue, 25 Jan 2022 15:04:24 +0300 X-Letter-Fingerprint: wwBGWqApSdgfIy5D9xeK30P76kbgt277 Reply-To: =?UTF-8?B?U29maWEgS29waWtvdmE=?= X-Priority: 3 (Normal) Message-ID: <1643112264.186902312@f325.i.mail.ru> Content-Type: multipart/mixed; boundary="----89aBa15cF95192083a1dBdC55411086a-uAatOi0XxDKZBIgS-1643112264" Authentication-Results: f325.i.mail.ru; auth=pass smtp.auth=s.kopikova@postgrespro.ru smtp.mailfrom=s.kopikova@postgrespro.ru X-7564579A: 646B95376F6C166E X-77F55803: 119C1F4DF6A9251C9CA05215EDC89597EB47800E4247544DB7204C50C68C64278FD872164937FA4C0CB8C996FB80C78C47FA4F0741137250C7876B3664222E79AEFF3AC8484C4FF7 X-7FA49CB5: 70AAF3C13DB7016878DA827A17800CE7921AF51C57DFBE82D82A6BABE6F325AC08BE7437D75B48FABCF491FFA38154B613377AFFFEAFD269176DF2183F8FC7C06D34FAA3D8B31588C2099A533E45F2D0395957E7521B51C2CFCAF695D4D8E9FCEA1F7E6F0F101C6778DA827A17800CE723A0121E4B9CF535EA1F7E6F0F101C6723150C8DA25C47586E58E00D9D99D84E1BDDB23E98D2D38BEBC5CAB6D411FFA6452B7AFC50813E2F7DE895E6CCC56AFE20879F7C8C5043D14489FFFB0AA5F4BF176DF2183F8FC7C091DAD9F922AA71188941B15DA834481FA18204E546F3947CEDCF5861DED71B2F389733CBF5DBD5E9C8A9BA7A39EFB766F5D81C698A659EA7CC7F00164DA146DA9985D098DBDEAEC817119E5299B287EEF6B57BC7E6449061A352F6E88A58FB86F5D81C698A659EA7E827F84554CEF5019E625A9149C048EE9ECD01F8117BC8BEE2021AF6380DFAD18AA50765F790063735872C767BF85DA227C277FBC8AE2E8B2A3F9088B840B5BE75ECD9A6C639B01B4E70A05D1297E1BBCB5012B2E24CD356 X-C1DE0DAB: 0D63561A33F958A5B60AAD016E39FB5041074D4E643F86DD0808362704FE3FCABDC6A1CF3F042BAD6DF99611D93F60EF3A74CE74F45F2162699F904B3F4130E343918A1A30D5E7FCCB5012B2E24CD356 X-C8649E89: 4E36BF7865823D7055A7F0CF078B5EC49A30900B95165D348F1757F8DFBC5C3318250EB2BAB71915FC7E2CBA8B64880404C7E17F54AA2AE4B2D5F8A6C49A6F7E1D7E09C32AA3244CAEB5E356A3612C740E38732B4369092E51E887DA02A9F7BF3EB3F6AD6EA9203E X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5+wYjsrrSY/u8Y3PrTqANeitKFiSd6Yd7yPpbiiZ/d5BsxIjK0jGQgCHUM3Ry2Lt2G3MDkMauH3h0dBdQGj+BB/iPzQYh7XS3xyn40EmMxrmzGyQ9/nTnF1q+zAWw5EEw7RFuIOw5Q1i X-Mailru-Internal-Auth: pass X-Mailru-MI: 800 X-Mailru-Sender: C10344ED1A7CE1C12DEB9E13603FD1B65D3074182E31D76FF83CCC4E7324507980094D25C48D85F74C2055DE88899B8229380EAE0A631D0E2075A85926AFA6F0A6D800AB1D0580731E60DA90B68B1748C77752E0C033A69E3453F38A29522196 X-Mras: Ok X-Spam: undefined List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk ------89aBa15cF95192083a1dBdC55411086a-uAatOi0XxDKZBIgS-1643112264 Content-Type: multipart/alternative; boundary="--ALT--89aBa15cF95192083a1dBdC55411086a1643112264" ----ALT--89aBa15cF95192083a1dBdC55411086a1643112264 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 CkhpLCBoYWNrZXJzCgpBQ0wgbGlzdHMgaW4gdGFibGVzIG1heSBwb3RlbnRpYWxseSBiZSBsYXJn ZSBpbiBzaXplLiBJIHN1Z2dlc3QgYWRkaW5nIFRPQVNUIHN1cHBvcnQgZm9yIHN5c3RlbSB0YWJs ZXMsIG5hbWVseSBwZ19jbGFzcywgcGdfYXR0cmlidXRlIGFuZCBwZ19sYXJnZW9iamVjdF9tZXRh ZGF0YSwgZm9yIHRoZXkgaW5jbHVkZSBBQ0wgY29sdW1ucy4KCkluIGNvbW1pdCA5NmNkZWFlMCB0 aGVzZSB0YWJsZXMgd2VyZSBtaXNzZWQgYmVjYXVzZSBvZiBwb3NzaWJsZSBjb25mbGljdHMgd2l0 aCBWQUNVVU0gRlVMTCBhbmQgcHJvYmxlbSB3aXRoIHNlZWluZyBhIG5vbi1lbXB0eSBuZXcgY2x1 c3RlciBieSBwZ191cGdyYWRlLiBHaXZlbiBwYXRjaCBmaXhlcyBib3RoIGV4cGVjdGVkIGJ1Z3Mu IEFsc28gcGF0Y2ggYWRkcyBhIG5ldyByZWdyZXNzIHRlc3QgZm9yIGNoZWNraW5nIFRPQVNUIHBy b3Blcmx5IHdvcmtpbmcgd2l0aCBBQ0wgYXR0cmlidXRlcy4gU3VnZ2VzdGVkIGZlYXR1cmUgaGFz IGJlZW4gdXNlZCBpbiBQb3N0Z3JlcyBQcm8gRW50ZXJwcmlzZSBmb3IgYSBsb25nIHRpbWUsIGFu ZCBpdCBoZWxwcyB3aXRoIGxhcmdlIEFDTCdzLgrCoApUaGUgVkFDVVVNIEZVTEwgYnVnIGlzIGRl dGFpbGVkIGhlcmU6CsKgCmh0dHA6Ly9wb3N0Z3IuZXMvbS9DQVBwSGZkdTNQSlV6SHBRcnZKNVJD OWJFWF9iWjZMd1g1MmtCcGIwRWlEXzllM05wNWclNDBtYWlsLmdtYWlsLmNvbQrCoApMb29raW5n IGZvcndhcmQgdG8geW91ciBjb21tZW50cwrCoAotLQpTb2ZpYSBLb3Bpa292YQpQb3N0Z3JlcyBQ cm9mZXNzaW9uYWw6ICBodHRwOi8vd3d3LnBvc3RncmVzcHJvLmNvbQpUaGUgUnVzc2lhbiBQb3N0 Z3JlcyBDb21wYW55 ----ALT--89aBa15cF95192083a1dBdC55411086a1643112264 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXYgY2xhc3M9ImpzLWhlbHBlciBqcy1yZWFkbXNnLW1zZyI+PGRpdiBp ZD0ic3R5bGVfMTY0MzEwMzU1MzA1NDkyMzIyOTIiPjxkaXYgaWQ9InN0eWxlXzE2NDMxMDM1NTMw NTQ5MjMyMjkyX0JPRFkiPjxkaXYgY2xhc3M9ImNsXzExNzA0OSI+PGRpdiBjbGFzcz0ianMtaGVs cGVyX21yX2Nzc19hdHRyIGpzLXJlYWRtc2ctbXNnX21yX2Nzc19hdHRyIj48ZGl2IGlkPSJzdHls ZV8xNjQzMDk3NDk2MTAwNTM3NjQ0NF9tcl9jc3NfYXR0ciI+PGRpdiBpZD0ic3R5bGVfMTY0MzA5 NzQ5NjEwMDUzNzY0NDRfQk9EWV9tcl9jc3NfYXR0ciI+PGRpdiBjbGFzcz0iY2xfMTExMDc5X21y X2Nzc19hdHRyIj48ZGl2PkhpLCBoYWNrZXJzPC9kaXY+PGRpdj48YnI+QUNMIGxpc3RzIGluIHRh YmxlcyBtYXkgcG90ZW50aWFsbHkgYmUgbGFyZ2UgaW4gc2l6ZS4gSSBzdWdnZXN0IGFkZGluZyBU T0FTVCBzdXBwb3J0IGZvciBzeXN0ZW0gdGFibGVzLCBuYW1lbHkgcGdfY2xhc3MsIHBnX2F0dHJp YnV0ZSBhbmQgcGdfbGFyZ2VvYmplY3RfbWV0YWRhdGEsIGZvciB0aGV5IGluY2x1ZGUgQUNMIGNv bHVtbnMuPGJyPjxicj5JbiBjb21taXQgOTZjZGVhZTAgdGhlc2UgdGFibGVzIHdlcmUgbWlzc2Vk IGJlY2F1c2Ugb2YgcG9zc2libGUgY29uZmxpY3RzIHdpdGggVkFDVVVNIEZVTEwgYW5kIHByb2Js ZW0gd2l0aCBzZWVpbmcgYSBub24tZW1wdHkgbmV3IGNsdXN0ZXIgYnkgcGdfdXBncmFkZS4gR2l2 ZW4gcGF0Y2ggZml4ZXMgYm90aCBleHBlY3RlZCBidWdzLiBBbHNvIHBhdGNoIGFkZHMgYSBuZXcg cmVncmVzcyB0ZXN0IGZvciBjaGVja2luZyBUT0FTVCBwcm9wZXJseSB3b3JraW5nIHdpdGggQUNM IGF0dHJpYnV0ZXMuIFN1Z2dlc3RlZCBmZWF0dXJlIGhhcyBiZWVuIHVzZWQgaW4gUG9zdGdyZXMg UHJvIEVudGVycHJpc2UgZm9yIGEgbG9uZyB0aW1lLCBhbmQgaXQgaGVscHMgd2l0aCBsYXJnZSBB Q0wncy48L2Rpdj48ZGl2PjxkaXY+PGRpdj4mbmJzcDs8L2Rpdj48ZGl2PjxkaXY+VGhlIFZBQ1VV TSBGVUxMIGJ1ZyBpcyBkZXRhaWxlZCBoZXJlOjwvZGl2PjxkaXY+Jm5ic3A7PC9kaXY+PGRpdj48 YSBocmVmPSJodHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9tZXNzYWdlLWlkL2ZsYXQvQ0FQcEhm ZHUzUEpVekhwUXJ2SjVSQzliRVhfYlo2THdYNTJrQnBiMEVpRF85ZTNOcDVnJTQwbWFpbC5nbWFp bC5jb20iIHRhcmdldD0iX2JsYW5rIj5odHRwOi8vcG9zdGdyLmVzL20vQ0FQcEhmZHUzUEpVekhw UXJ2SjVSQzliRVhfYlo2THdYNTJrQnBiMEVpRF85ZTNOcDVnJTQwbWFpbC5nbWFpbC5jb208L2E+ PC9kaXY+PC9kaXY+PGRpdj4mbmJzcDs8L2Rpdj48ZGl2Pkxvb2tpbmcgZm9yd2FyZCB0byB5b3Vy IGNvbW1lbnRzPC9kaXY+PC9kaXY+PC9kaXY+PGRpdj4mbmJzcDs8L2Rpdj48ZGl2IGRhdGEtc2ln bmF0dXJlLXdpZGdldD0iY29udGFpbmVyIj48ZGl2IGRhdGEtc2lnbmF0dXJlLXdpZGdldD0iY29u dGVudCI+PGRpdj4tLTxicj5Tb2ZpYSBLb3Bpa292YTxicj5Qb3N0Z3JlcyBQcm9mZXNzaW9uYWw6 IDxhIGhyZWY9Imh0dHA6Ly93d3cucG9zdGdyZXNwcm8uY29tIiB0YXJnZXQ9Il9ibGFuayI+aHR0 cDovL3d3dy5wb3N0Z3Jlc3Byby5jb208L2E+PGJyPlRoZSBSdXNzaWFuIFBvc3RncmVzIENvbXBh bnk8L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48 L2Rpdj48L2Rpdj48L0JPRFk+PC9IVE1MPgo= ----ALT--89aBa15cF95192083a1dBdC55411086a1643112264-- ------89aBa15cF95192083a1dBdC55411086a-uAatOi0XxDKZBIgS-1643112264 Content-Type: text/x-diff; name="=?UTF-8?B?MDAwMS1BZGQtVE9BU1Qtc3VwcG9ydC1mb3Itc2V2ZXJhbC1zeXN0ZW0tdGFi?= =?UTF-8?B?bGVzLnBhdGNo?=" Content-Disposition: attachment; filename="=?UTF-8?B?MDAwMS1BZGQtVE9BU1Qtc3VwcG9ydC1mb3Itc2V2ZXJhbC1zeXN0ZW0tdGFi?= =?UTF-8?B?bGVzLnBhdGNo?=" Content-Transfer-Encoding: base64 RnJvbSAwYTk5ZDk0YTFlYzgzZDA2MjFiYjk4MDVlODdkODk1M2EwYmE0MDAwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTb2ZpYSBLb3Bpa292YSA8cy5rb3Bpa292YUBwb3N0Z3Jlc3By by5ydT4KRGF0ZTogVHVlLCAyNSBKYW4gMjAyMiAxNDo0NDoxNCArMDMwMApTdWJqZWN0OiBbUEFU Q0hdIEFkZCBUT0FTVCBzdXBwb3J0IGZvciBzZXZlcmFsIHN5c3RlbSB0YWJsZXMKCkFDTCBsaXN0 cyBtYXkgaGF2ZSBsYXJnZSBzaXplLiBVc2luZyBUT0FTVCBmb3Igc3lzdGVtIHRhYmxlcyBwZ19j bGFzcywKcGdfYXR0cmlidXRlIGFuZCBwZ19sYXJnZW9iamVjdF9tZXRhZGF0YSB3aXRoIEFDTCBj b2x1bW5zLgoKQnVncyB3aXRoIGNvbmZsaWN0aW5nIFZBQ1VVTSBGVUxMIGFuZCBUT0FTVCBhbmQg cGdfdXBncmFkZSBzZWVpbmcKYSBub24tZW1wdHkgbmV3IGNsdXN0ZXIgYXJlIGZpeGVkLgotLS0K IHNyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL2hlYXBhbS5jICAgICAgICAgICAgICB8IDY3ICsrKysr KysrKysrKysrKysrLS0KIHNyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3BydW5laGVhcC5jICAgICAg ICAgICB8ICA0ICsrCiBzcmMvYmFja2VuZC9jYXRhbG9nL2NhdGFsb2cuYyAgICAgICAgICAgICAg ICAgfCAgMiArCiBzcmMvYmFja2VuZC9jb21tYW5kcy9jbHVzdGVyLmMgICAgICAgICAgICAgICAg fCA2NiArKysrKysrKysrKy0tLS0tLS0KIHNyYy9iaW4vcGdfdXBncmFkZS9jaGVjay5jICAgICAg ICAgICAgICAgICAgICB8ICAzICstCiBzcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2F0dHJpYnV0ZS5o ICAgICAgICAgICAgfCAgMiArCiBzcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2NsYXNzLmggICAgICAg ICAgICAgICAgfCAgMiArCiBzcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2xhcmdlb2JqZWN0X21ldGFk YXRhLmggfCAgMiArCiBzcmMvaW5jbHVkZS9jb21tYW5kcy9jbHVzdGVyLmggICAgICAgICAgICAg ICAgfCAgMSArCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL21pc2Nfc2FuaXR5Lm91dCAgICAg fCAyNyArKystLS0tLQogLi4uL3JlZ3Jlc3MvZXhwZWN0ZWQvcGdfY2F0YWxvZ190b2FzdDEub3V0 ICAgIHwgMjUgKysrKysrKwogc3JjL3Rlc3QvcmVncmVzcy9wYXJhbGxlbF9zY2hlZHVsZSAgICAg ICAgICAgIHwgIDMgKwogc3JjL3Rlc3QvcmVncmVzcy9zcWwvbWlzY19zYW5pdHkuc3FsICAgICAg ICAgIHwgIDcgKy0KIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3BnX2NhdGFsb2dfdG9hc3QxLnNxbCAg ICB8IDIwICsrKysrKwogMTQgZmlsZXMgY2hhbmdlZCwgMTc4IGluc2VydGlvbnMoKyksIDUzIGRl bGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQv cGdfY2F0YWxvZ190b2FzdDEub3V0CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjL3Rlc3QvcmVncmVz cy9zcWwvcGdfY2F0YWxvZ190b2FzdDEuc3FsCgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNj ZXNzL2hlYXAvaGVhcGFtLmMgYi9zcmMvYmFja2VuZC9hY2Nlc3MvaGVhcC9oZWFwYW0uYwppbmRl eCA2ZWM1N2YzZDhiMi4uZTQ5YmYzZmNiNTMgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2FjY2Vz cy9oZWFwL2hlYXBhbS5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL2hlYXBhbS5jCkBA IC01OTU4LDYgKzU5NTgsNTMgQEAgaGVhcF9hYm9ydF9zcGVjdWxhdGl2ZShSZWxhdGlvbiByZWxh dGlvbiwgSXRlbVBvaW50ZXIgdGlkKQogCXBnc3RhdF9jb3VudF9oZWFwX2RlbGV0ZShyZWxhdGlv bik7CiB9CiAKKy8qCisgKiBQcmVwYXJlIHR1cGxlIGZvciBpbnBsYWNlIHVwZGF0ZS4gIFRPQVNU ZWQgYXR0cmlidXRlcyBjYW4ndCBiZSBtb2RpZmllZAorICogYnkgaW4tcGxhY2UgdXBncmFkZS4g IFNpbXVsdGFuZW91c2x5LCBuZXcgdHVwbGUgaXMgZmxhdHRlbi4gIFNvLCB3ZSBqdXN0CisgKiBy ZXBsYWNlIFRPQVNUZWQgYXR0cmlidXRlcyB3aXRoIHRoZWlyIHZhbHVlcyBvZiBvbGQgdHVwbGUu CisgKi8KK3N0YXRpYyBIZWFwVHVwbGUKK2hlYXBfaW5wbGFjZV91cGRhdGVfcHJlcGFyZV90dXBs ZShSZWxhdGlvbiByZWxhdGlvbiwKKwkJCQkJCQkJICBIZWFwVHVwbGUgb2xkdHVwLAorCQkJCQkJ CQkgIEhlYXBUdXBsZSBuZXd0dXApCit7CisJVHVwbGVEZXNjCWRlc2MgPSByZWxhdGlvbi0+cmRf YXR0OworCUhlYXBUdXBsZQlyZXN1bHQ7CisJRGF0dW0JICAgKm9sZHZhbHMsCisJCQkgICAqbmV3 dmFsczsKKwlib29sCSAgICpvbGRudWxscywKKwkJCSAgICpuZXdudWxsczsKKwlpbnQJCQlpLAor CQkJCW5hdHRzID0gZGVzYy0+bmF0dHM7CisKKwlvbGR2YWxzID0gKERhdHVtICopIHBhbGxvYyhz aXplb2YoRGF0dW0pICogbmF0dHMpOworCW5ld3ZhbHMgPSAoRGF0dW0gKikgcGFsbG9jKHNpemVv ZihEYXR1bSkgKiBuYXR0cyk7CisJb2xkbnVsbHMgPSAoYm9vbCAqKSBwYWxsb2Moc2l6ZW9mKGJv b2wpICogbmF0dHMpOworCW5ld251bGxzID0gKGJvb2wgKikgcGFsbG9jKHNpemVvZihib29sKSAq IG5hdHRzKTsKKworCWhlYXBfZGVmb3JtX3R1cGxlKG9sZHR1cCwgZGVzYywgb2xkdmFscywgb2xk bnVsbHMpOworCWhlYXBfZGVmb3JtX3R1cGxlKG5ld3R1cCwgZGVzYywgbmV3dmFscywgbmV3bnVs bHMpOworCisJZm9yIChpID0gMDsgaSA8IG5hdHRzOyBpKyspCisJeworCQlGb3JtX3BnX2F0dHJp YnV0ZSBhdHQgPSAmZGVzYy0+YXR0cnNbaV07CisKKwkJaWYgKGF0dC0+YXR0bGVuID09IC0xICYm CisJCQkhb2xkbnVsbHNbaV0gJiYKKwkJCVZBUkFUVF9JU19FWFRFTkRFRChvbGR2YWxzW2ldKSkK KwkJeworCQkJQXNzZXJ0KCFuZXdudWxsc1tpXSk7CisJCQluZXd2YWxzW2ldID0gb2xkdmFsc1tp XTsKKwkJfQorCX0KKworCXJlc3VsdCA9IGhlYXBfZm9ybV90dXBsZShkZXNjLCBuZXd2YWxzLCBu ZXdudWxscyk7CisKKwlyZXN1bHQtPnRfc2VsZiA9IG5ld3R1cC0+dF9zZWxmOworCisJcmV0dXJu IHJlc3VsdDsKK30KKwogLyoKICAqIGhlYXBfaW5wbGFjZV91cGRhdGUgLSB1cGRhdGUgYSB0dXBs ZSAiaW4gcGxhY2UiIChpZSwgb3ZlcndyaXRlIGl0KQogICoKQEAgLTU5ODcsNiArNjAzNCw4IEBA IGhlYXBfaW5wbGFjZV91cGRhdGUoUmVsYXRpb24gcmVsYXRpb24sIEhlYXBUdXBsZSB0dXBsZSkK IAlIZWFwVHVwbGVIZWFkZXIgaHR1cDsKIAl1aW50MzIJCW9sZGxlbjsKIAl1aW50MzIJCW5ld2xl bjsKKwlIZWFwVHVwbGVEYXRhIG9sZHR1cDsKKwlIZWFwVHVwbGUJbmV3dHVwOwogCiAJLyoKIAkg KiBGb3Igbm93LCB3ZSBkb24ndCBhbGxvdyBwYXJhbGxlbCB1cGRhdGVzLiAgVW5saWtlIGEgcmVn dWxhciB1cGRhdGUsCkBAIC02MDEyLDE2ICs2MDYxLDI2IEBAIGhlYXBfaW5wbGFjZV91cGRhdGUo UmVsYXRpb24gcmVsYXRpb24sIEhlYXBUdXBsZSB0dXBsZSkKIAogCWh0dXAgPSAoSGVhcFR1cGxl SGVhZGVyKSBQYWdlR2V0SXRlbShwYWdlLCBscCk7CiAKKwlvbGR0dXAudF90YWJsZU9pZCA9IFJl bGF0aW9uR2V0UmVsaWQocmVsYXRpb24pOworCW9sZHR1cC50X2RhdGEgPSBodHVwOworCW9sZHR1 cC50X2xlbiA9IEl0ZW1JZEdldExlbmd0aChscCk7CisJb2xkdHVwLnRfc2VsZiA9IHR1cGxlLT50 X3NlbGY7CisjaWZkZWYgWElEX0lTXzY0QklUCisJSGVhcFR1cGxlQ29weUJhc2VGcm9tUGFnZSgm b2xkdHVwLCBwYWdlKTsKKyNlbmRpZgorCisJbmV3dHVwID0gaGVhcF9pbnBsYWNlX3VwZGF0ZV9w cmVwYXJlX3R1cGxlKHJlbGF0aW9uLCAmb2xkdHVwLCB0dXBsZSk7CisKIAlvbGRsZW4gPSBJdGVt SWRHZXRMZW5ndGgobHApIC0gaHR1cC0+dF9ob2ZmOwotCW5ld2xlbiA9IHR1cGxlLT50X2xlbiAt IHR1cGxlLT50X2RhdGEtPnRfaG9mZjsKLQlpZiAob2xkbGVuICE9IG5ld2xlbiB8fCBodHVwLT50 X2hvZmYgIT0gdHVwbGUtPnRfZGF0YS0+dF9ob2ZmKQorCW5ld2xlbiA9IG5ld3R1cC0+dF9sZW4g LSBuZXd0dXAtPnRfZGF0YS0+dF9ob2ZmOworCWlmIChvbGRsZW4gIT0gbmV3bGVuIHx8IGh0dXAt PnRfaG9mZiAhPSBuZXd0dXAtPnRfZGF0YS0+dF9ob2ZmKQogCQllbG9nKEVSUk9SLCAid3Jvbmcg dHVwbGUgbGVuZ3RoIik7CiAKIAkvKiBOTyBFUkVQT1JUKEVSUk9SKSBmcm9tIGhlcmUgdGlsbCBj aGFuZ2VzIGFyZSBsb2dnZWQgKi8KIAlTVEFSVF9DUklUX1NFQ1RJT04oKTsKIAogCW1lbWNweSgo Y2hhciAqKSBodHVwICsgaHR1cC0+dF9ob2ZmLAotCQkgICAoY2hhciAqKSB0dXBsZS0+dF9kYXRh ICsgdHVwbGUtPnRfZGF0YS0+dF9ob2ZmLAorCQkgICAoY2hhciAqKSBuZXd0dXAtPnRfZGF0YSAr IG5ld3R1cC0+dF9kYXRhLT50X2hvZmYsCiAJCSAgIG5ld2xlbik7CiAKIAlNYXJrQnVmZmVyRGly dHkoYnVmZmVyKTsKQEAgLTYwMzIsNyArNjA5MSw3IEBAIGhlYXBfaW5wbGFjZV91cGRhdGUoUmVs YXRpb24gcmVsYXRpb24sIEhlYXBUdXBsZSB0dXBsZSkKIAkJeGxfaGVhcF9pbnBsYWNlIHhscmVj OwogCQlYTG9nUmVjUHRyCXJlY3B0cjsKIAotCQl4bHJlYy5vZmZudW0gPSBJdGVtUG9pbnRlckdl dE9mZnNldE51bWJlcigmdHVwbGUtPnRfc2VsZik7CisJCXhscmVjLm9mZm51bSA9IEl0ZW1Qb2lu dGVyR2V0T2Zmc2V0TnVtYmVyKCZuZXd0dXAtPnRfc2VsZik7CiAKIAkJWExvZ0JlZ2luSW5zZXJ0 KCk7CiAJCVhMb2dSZWdpc3RlckRhdGEoKGNoYXIgKikgJnhscmVjLCBTaXplT2ZIZWFwSW5wbGFj ZSk7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9hY2Nlc3MvaGVhcC9wcnVuZWhlYXAuYyBiL3Ny Yy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3BydW5laGVhcC5jCmluZGV4IGIzZTJlZWM1MmZhLi5iZDE1 YjAzZTk3YSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvcHJ1bmVoZWFwLmMK KysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvcHJ1bmVoZWFwLmMKQEAgLTIwLDYgKzIwLDcg QEAKICNpbmNsdWRlICJhY2Nlc3MvdHJhbnNhbS5oIgogI2luY2x1ZGUgImFjY2Vzcy94bG9nLmgi CiAjaW5jbHVkZSAiY2F0YWxvZy9jYXRhbG9nLmgiCisjaW5jbHVkZSAiY29tbWFuZHMvY2x1c3Rl ci5oIgogI2luY2x1ZGUgIm1pc2NhZG1pbi5oIgogI2luY2x1ZGUgInBnc3RhdC5oIgogI2luY2x1 ZGUgInN0b3JhZ2UvYnVmbWdyLmgiCkBAIC0xMjEsNiArMTIyLDkgQEAgaGVhcF9wYWdlX3BydW5l X29wdChSZWxhdGlvbiByZWxhdGlvbiwgQnVmZmVyIGJ1ZmZlcikKIAlpZiAoUmVjb3ZlcnlJblBy b2dyZXNzKCkpCiAJCXJldHVybjsKIAorCWlmIChpc19pbnNpZGVfcmVidWlsZF9yZWxhdGlvbigp KQorCQlyZXR1cm47CisKIAkvKgogCSAqIFhYWDogTWFnaWMgdG8ga2VlcCBvbGRfc25hcHNob3Rf dGhyZXNob2xkIHRlc3RzIGFwcGVhciAid29ya2luZyIuIFRoZXkKIAkgKiBjdXJyZW50bHkgYXJl IGJyb2tlbiwgYW5kIGRpc2N1c3Npb24gb2Ygd2hhdCB0byBkbyBhYm91dCB0aGVtIGlzCmRpZmYg LS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL2NhdGFsb2cuYyBiL3NyYy9iYWNrZW5kL2NhdGFs b2cvY2F0YWxvZy5jCmluZGV4IGRmZDVmYjY2OWVlLi5lYjg4YjA0ZWJjNiAxMDA2NDQKLS0tIGEv c3JjL2JhY2tlbmQvY2F0YWxvZy9jYXRhbG9nLmMKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9j YXRhbG9nLmMKQEAgLTI4OSw2ICsyODksOCBAQCBJc1NoYXJlZFJlbGF0aW9uKE9pZCByZWxhdGlv bklkKQogCQlyZWxhdGlvbklkID09IFBnU2hzZWNsYWJlbFRvYXN0SW5kZXggfHwKIAkJcmVsYXRp b25JZCA9PSBQZ1N1YnNjcmlwdGlvblRvYXN0VGFibGUgfHwKIAkJcmVsYXRpb25JZCA9PSBQZ1N1 YnNjcmlwdGlvblRvYXN0SW5kZXggfHwKKwkJcmVsYXRpb25JZCA9PSBQZ0RhdGFiYXNlVG9hc3RU YWJsZSB8fAorCQlyZWxhdGlvbklkID09IFBnRGF0YWJhc2VUb2FzdEluZGV4IHx8CiAJCXJlbGF0 aW9uSWQgPT0gUGdUYWJsZXNwYWNlVG9hc3RUYWJsZSB8fAogCQlyZWxhdGlvbklkID09IFBnVGFi bGVzcGFjZVRvYXN0SW5kZXgpCiAJCXJldHVybiB0cnVlOwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tl bmQvY29tbWFuZHMvY2x1c3Rlci5jIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvY2x1c3Rlci5jCmlu ZGV4IDYxODUzZTZkZWM0Li45MGJiZTcxYzlkYiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY29t bWFuZHMvY2x1c3Rlci5jCisrKyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2NsdXN0ZXIuYwpAQCAt NTY0LDYgKzU2NCw4IEBAIG1hcmtfaW5kZXhfY2x1c3RlcmVkKFJlbGF0aW9uIHJlbCwgT2lkIGlu ZGV4T2lkLCBib29sIGlzX2ludGVybmFsKQogCXRhYmxlX2Nsb3NlKHBnX2luZGV4LCBSb3dFeGNs dXNpdmVMb2NrKTsKIH0KIAorYm9vbCBpbnNpZGVfcmVidWlsZF9yZWxhdGlvbiA9IGZhbHNlOwor CiAvKgogICogcmVidWlsZF9yZWxhdGlvbjogcmVidWlsZCBhbiBleGlzdGluZyByZWxhdGlvbiBp biBpbmRleCBvciBwaHlzaWNhbCBvcmRlcgogICoKQEAgLTU4NSwzNyArNTg3LDUzIEBAIHJlYnVp bGRfcmVsYXRpb24oUmVsYXRpb24gT2xkSGVhcCwgT2lkIGluZGV4T2lkLCBib29sIHZlcmJvc2Up CiAJVHJhbnNhY3Rpb25JZCBmcm96ZW5YaWQ7CiAJTXVsdGlYYWN0SWQgY3V0b2ZmTXVsdGk7CiAK LQkvKiBNYXJrIHRoZSBjb3JyZWN0IGluZGV4IGFzIGNsdXN0ZXJlZCAqLwotCWlmIChPaWRJc1Zh bGlkKGluZGV4T2lkKSkKLQkJbWFya19pbmRleF9jbHVzdGVyZWQoT2xkSGVhcCwgaW5kZXhPaWQs IHRydWUpOworCVBHX1RSWSgpOworCXsKKwkJaW5zaWRlX3JlYnVpbGRfcmVsYXRpb24gPSB0cnVl OworCisJCS8qIE1hcmsgdGhlIGNvcnJlY3QgaW5kZXggYXMgY2x1c3RlcmVkICovCisJCWlmIChP aWRJc1ZhbGlkKGluZGV4T2lkKSkKKwkJCW1hcmtfaW5kZXhfY2x1c3RlcmVkKE9sZEhlYXAsIGlu ZGV4T2lkLCB0cnVlKTsKIAotCS8qIFJlbWVtYmVyIGluZm8gYWJvdXQgcmVsIGJlZm9yZSBjbG9z aW5nIE9sZEhlYXAgKi8KLQlyZWxwZXJzaXN0ZW5jZSA9IE9sZEhlYXAtPnJkX3JlbC0+cmVscGVy c2lzdGVuY2U7Ci0JaXNfc3lzdGVtX2NhdGFsb2cgPSBJc1N5c3RlbVJlbGF0aW9uKE9sZEhlYXAp OworCQkvKiBSZW1lbWJlciBpbmZvIGFib3V0IHJlbCBiZWZvcmUgY2xvc2luZyBPbGRIZWFwICov CisJCXJlbHBlcnNpc3RlbmNlID0gT2xkSGVhcC0+cmRfcmVsLT5yZWxwZXJzaXN0ZW5jZTsKKwkJ aXNfc3lzdGVtX2NhdGFsb2cgPSBJc1N5c3RlbVJlbGF0aW9uKE9sZEhlYXApOwogCi0JLyogQ2xv c2UgcmVsY2FjaGUgZW50cnksIGJ1dCBrZWVwIGxvY2sgdW50aWwgdHJhbnNhY3Rpb24gY29tbWl0 ICovCi0JdGFibGVfY2xvc2UoT2xkSGVhcCwgTm9Mb2NrKTsKKwkJLyogQ2xvc2UgcmVsY2FjaGUg ZW50cnksIGJ1dCBrZWVwIGxvY2sgdW50aWwgdHJhbnNhY3Rpb24gY29tbWl0ICovCisJCXRhYmxl X2Nsb3NlKE9sZEhlYXAsIE5vTG9jayk7CiAKLQkvKiBDcmVhdGUgdGhlIHRyYW5zaWVudCB0YWJs ZSB0aGF0IHdpbGwgcmVjZWl2ZSB0aGUgcmUtb3JkZXJlZCBkYXRhICovCi0JT0lETmV3SGVhcCA9 IG1ha2VfbmV3X2hlYXAodGFibGVPaWQsIHRhYmxlU3BhY2UsCi0JCQkJCQkJICAgYWNjZXNzTWV0 aG9kLAotCQkJCQkJCSAgIHJlbHBlcnNpc3RlbmNlLAotCQkJCQkJCSAgIEFjY2Vzc0V4Y2x1c2l2 ZUxvY2spOworCQkvKiBDcmVhdGUgdGhlIHRyYW5zaWVudCB0YWJsZSB0aGF0IHdpbGwgcmVjZWl2 ZSB0aGUgcmUtb3JkZXJlZCBkYXRhICovCisJCU9JRE5ld0hlYXAgPSBtYWtlX25ld19oZWFwKHRh YmxlT2lkLCB0YWJsZVNwYWNlLAorCQkJCQkJCQkgICBhY2Nlc3NNZXRob2QsCisJCQkJCQkJCSAg IHJlbHBlcnNpc3RlbmNlLAorCQkJCQkJCQkgICBBY2Nlc3NFeGNsdXNpdmVMb2NrKTsKIAotCS8q IENvcHkgdGhlIGhlYXAgZGF0YSBpbnRvIHRoZSBuZXcgdGFibGUgaW4gdGhlIGRlc2lyZWQgb3Jk ZXIgKi8KLQljb3B5X3RhYmxlX2RhdGEoT0lETmV3SGVhcCwgdGFibGVPaWQsIGluZGV4T2lkLCB2 ZXJib3NlLAotCQkJCQkmc3dhcF90b2FzdF9ieV9jb250ZW50LCAmZnJvemVuWGlkLCAmY3V0b2Zm TXVsdGkpOworCQkvKiBDb3B5IHRoZSBoZWFwIGRhdGEgaW50byB0aGUgbmV3IHRhYmxlIGluIHRo ZSBkZXNpcmVkIG9yZGVyICovCisJCWNvcHlfdGFibGVfZGF0YShPSUROZXdIZWFwLCB0YWJsZU9p ZCwgaW5kZXhPaWQsIHZlcmJvc2UsCisJCQkJCQkmc3dhcF90b2FzdF9ieV9jb250ZW50LCAmZnJv emVuWGlkLCAmY3V0b2ZmTXVsdGkpOwogCi0JLyoKLQkgKiBTd2FwIHRoZSBwaHlzaWNhbCBmaWxl cyBvZiB0aGUgdGFyZ2V0IGFuZCB0cmFuc2llbnQgdGFibGVzLCB0aGVuCi0JICogcmVidWlsZCB0 aGUgdGFyZ2V0J3MgaW5kZXhlcyBhbmQgdGhyb3cgYXdheSB0aGUgdHJhbnNpZW50IHRhYmxlLgot CSAqLwotCWZpbmlzaF9oZWFwX3N3YXAodGFibGVPaWQsIE9JRE5ld0hlYXAsIGlzX3N5c3RlbV9j YXRhbG9nLAotCQkJCQkgc3dhcF90b2FzdF9ieV9jb250ZW50LCBmYWxzZSwgdHJ1ZSwKLQkJCQkJ IGZyb3plblhpZCwgY3V0b2ZmTXVsdGksCi0JCQkJCSByZWxwZXJzaXN0ZW5jZSk7CisJCS8qCisJ CSAqIFN3YXAgdGhlIHBoeXNpY2FsIGZpbGVzIG9mIHRoZSB0YXJnZXQgYW5kIHRyYW5zaWVudCB0 YWJsZXMsIHRoZW4KKwkJICogcmVidWlsZCB0aGUgdGFyZ2V0J3MgaW5kZXhlcyBhbmQgdGhyb3cg YXdheSB0aGUgdHJhbnNpZW50IHRhYmxlLgorCQkgKi8KKwkJZmluaXNoX2hlYXBfc3dhcCh0YWJs ZU9pZCwgT0lETmV3SGVhcCwgaXNfc3lzdGVtX2NhdGFsb2csCisJCQkJCQkgc3dhcF90b2FzdF9i eV9jb250ZW50LCBmYWxzZSwgdHJ1ZSwKKwkJCQkJCSBmcm96ZW5YaWQsIGN1dG9mZk11bHRpLAor CQkJCQkJIHJlbHBlcnNpc3RlbmNlKTsKKwl9CisJUEdfQ0FUQ0goKTsKKwl7CisJCWluc2lkZV9y ZWJ1aWxkX3JlbGF0aW9uID0gZmFsc2U7CisJCVBHX1JFX1RIUk9XKCk7CisJfQorCVBHX0VORF9U UlkoKTsKIH0KIAorYm9vbAoraXNfaW5zaWRlX3JlYnVpbGRfcmVsYXRpb24oKQoreworCXJldHVy biBpbnNpZGVfcmVidWlsZF9yZWxhdGlvbjsKK30KIAogLyoKICAqIENyZWF0ZSB0aGUgdHJhbnNp ZW50IHRhYmxlIHRoYXQgd2lsbCBiZSBmaWxsZWQgd2l0aCBuZXcgZGF0YSBkdXJpbmcKZGlmZiAt LWdpdCBhL3NyYy9iaW4vcGdfdXBncmFkZS9jaGVjay5jIGIvc3JjL2Jpbi9wZ191cGdyYWRlL2No ZWNrLmMKaW5kZXggM2QyMThjMmFkMjQuLjFhOWYxOTc4MTk1IDEwMDY0NAotLS0gYS9zcmMvYmlu L3BnX3VwZ3JhZGUvY2hlY2suYworKysgYi9zcmMvYmluL3BnX3VwZ3JhZGUvY2hlY2suYwpAQCAt NDE5LDcgKzQxOSw4IEBAIGNoZWNrX25ld19jbHVzdGVyX2lzX2VtcHR5KHZvaWQpCiAJCQkgcmVs bnVtKyspCiAJCXsKIAkJCS8qIHBnX2xhcmdlb2JqZWN0IGFuZCBpdHMgaW5kZXggc2hvdWxkIGJl IHNraXBwZWQgKi8KLQkJCWlmIChzdHJjbXAocmVsX2Fyci0+cmVsc1tyZWxudW1dLm5zcG5hbWUs ICJwZ19jYXRhbG9nIikgIT0gMCkKKwkJCWlmIChzdHJjbXAocmVsX2Fyci0+cmVsc1tyZWxudW1d Lm5zcG5hbWUsICJwZ19jYXRhbG9nIikgIT0gMCAmJgorCQkJCXN0cmNtcChyZWxfYXJyLT5yZWxz W3JlbG51bV0ubnNwbmFtZSwgInBnX3RvYXN0IikgIT0gMCkKIAkJCQlwZ19mYXRhbCgiTmV3IGNs dXN0ZXIgZGF0YWJhc2UgXCIlc1wiIGlzIG5vdCBlbXB0eTogZm91bmQgcmVsYXRpb24gXCIlcy4l c1wiXG4iLAogCQkJCQkJIG5ld19jbHVzdGVyLmRiYXJyLmRic1tkYm51bV0uZGJfbmFtZSwKIAkJ CQkJCSByZWxfYXJyLT5yZWxzW3JlbG51bV0ubnNwbmFtZSwKZGlmZiAtLWdpdCBhL3NyYy9pbmNs dWRlL2NhdGFsb2cvcGdfYXR0cmlidXRlLmggYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2F0dHJp YnV0ZS5oCmluZGV4IDA1MzI5NGM5OWYzLi5iNGQ3MTk2ZDkxYSAxMDA2NDQKLS0tIGEvc3JjL2lu Y2x1ZGUvY2F0YWxvZy9wZ19hdHRyaWJ1dGUuaAorKysgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3Bn X2F0dHJpYnV0ZS5oCkBAIC0yMDYsNiArMjA2LDggQEAgQ0FUQUxPRyhwZ19hdHRyaWJ1dGUsMTI0 OSxBdHRyaWJ1dGVSZWxhdGlvbklkKSBCS0lfQk9PVFNUUkFQIEJLSV9ST1dUWVBFX09JRCg3NSwK ICAqLwogdHlwZWRlZiBGb3JtRGF0YV9wZ19hdHRyaWJ1dGUgKkZvcm1fcGdfYXR0cmlidXRlOwog CitERUNMQVJFX1RPQVNUKHBnX2F0dHJpYnV0ZSwgOTAwMSwgOTAwMik7CisKIERFQ0xBUkVfVU5J UVVFX0lOREVYKHBnX2F0dHJpYnV0ZV9yZWxpZF9hdHRuYW1faW5kZXgsIDI2NTgsIEF0dHJpYnV0 ZVJlbGlkTmFtZUluZGV4SWQsIG9uIHBnX2F0dHJpYnV0ZSB1c2luZyBidHJlZShhdHRyZWxpZCBv aWRfb3BzLCBhdHRuYW1lIG5hbWVfb3BzKSk7CiBERUNMQVJFX1VOSVFVRV9JTkRFWF9QS0VZKHBn X2F0dHJpYnV0ZV9yZWxpZF9hdHRudW1faW5kZXgsIDI2NTksIEF0dHJpYnV0ZVJlbGlkTnVtSW5k ZXhJZCwgb24gcGdfYXR0cmlidXRlIHVzaW5nIGJ0cmVlKGF0dHJlbGlkIG9pZF9vcHMsIGF0dG51 bSBpbnQyX29wcykpOwogCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2NsYXNz LmggYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2NsYXNzLmgKaW5kZXggMzA0ZThjMThkNTIuLmI4 MmM5M2FhNjgxIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2NsYXNzLmgKKysr IGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19jbGFzcy5oCkBAIC0xNTIsNiArMTUyLDggQEAgQ0FU QUxPRyhwZ19jbGFzcywxMjU5LFJlbGF0aW9uUmVsYXRpb25JZCkgQktJX0JPT1RTVFJBUCBCS0lf Uk9XVFlQRV9PSUQoODMsUmVsYXQKICAqLwogdHlwZWRlZiBGb3JtRGF0YV9wZ19jbGFzcyAqRm9y bV9wZ19jbGFzczsKIAorREVDTEFSRV9UT0FTVChwZ19jbGFzcywgOTAwMywgOTAwNCk7CisKIERF Q0xBUkVfVU5JUVVFX0lOREVYX1BLRVkocGdfY2xhc3Nfb2lkX2luZGV4LCAyNjYyLCBDbGFzc09p ZEluZGV4SWQsIG9uIHBnX2NsYXNzIHVzaW5nIGJ0cmVlKG9pZCBvaWRfb3BzKSk7CiBERUNMQVJF X1VOSVFVRV9JTkRFWChwZ19jbGFzc19yZWxuYW1lX25zcF9pbmRleCwgMjY2MywgQ2xhc3NOYW1l TnNwSW5kZXhJZCwgb24gcGdfY2xhc3MgdXNpbmcgYnRyZWUocmVsbmFtZSBuYW1lX29wcywgcmVs bmFtZXNwYWNlIG9pZF9vcHMpKTsKIERFQ0xBUkVfSU5ERVgocGdfY2xhc3NfdGJsc3BjX3JlbGZp bGVub2RlX2luZGV4LCAzNDU1LCBDbGFzc1RibHNwY1JlbGZpbGVub2RlSW5kZXhJZCwgb24gcGdf Y2xhc3MgdXNpbmcgYnRyZWUocmVsdGFibGVzcGFjZSBvaWRfb3BzLCByZWxmaWxlbm9kZSBvaWRf b3BzKSk7CmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2xhcmdlb2JqZWN0X21l dGFkYXRhLmggYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2xhcmdlb2JqZWN0X21ldGFkYXRhLmgK aW5kZXggZWMxYzNiZjc1NTIuLjFkYjM5Mzc3OTI5IDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9j YXRhbG9nL3BnX2xhcmdlb2JqZWN0X21ldGFkYXRhLmgKKysrIGIvc3JjL2luY2x1ZGUvY2F0YWxv Zy9wZ19sYXJnZW9iamVjdF9tZXRhZGF0YS5oCkBAIC00Niw2ICs0Niw4IEBAIENBVEFMT0cocGdf bGFyZ2VvYmplY3RfbWV0YWRhdGEsMjk5NSxMYXJnZU9iamVjdE1ldGFkYXRhUmVsYXRpb25JZCkK ICAqLwogdHlwZWRlZiBGb3JtRGF0YV9wZ19sYXJnZW9iamVjdF9tZXRhZGF0YSAqRm9ybV9wZ19s YXJnZW9iamVjdF9tZXRhZGF0YTsKIAorREVDTEFSRV9UT0FTVChwZ19sYXJnZW9iamVjdF9tZXRh ZGF0YSwgOTAxNywgOTAxOCk7CisKIERFQ0xBUkVfVU5JUVVFX0lOREVYX1BLRVkocGdfbGFyZ2Vv YmplY3RfbWV0YWRhdGFfb2lkX2luZGV4LCAyOTk2LCBMYXJnZU9iamVjdE1ldGFkYXRhT2lkSW5k ZXhJZCwgb24gcGdfbGFyZ2VvYmplY3RfbWV0YWRhdGEgdXNpbmcgYnRyZWUob2lkIG9pZF9vcHMp KTsKIAogI2VuZGlmCQkJCQkJCS8qIFBHX0xBUkdFT0JKRUNUX01FVEFEQVRBX0ggKi8KZGlmZiAt LWdpdCBhL3NyYy9pbmNsdWRlL2NvbW1hbmRzL2NsdXN0ZXIuaCBiL3NyYy9pbmNsdWRlL2NvbW1h bmRzL2NsdXN0ZXIuaAppbmRleCAzZGIzNzVkN2NjNy4uOTA5NTE0MzFmNGQgMTAwNjQ0Ci0tLSBh L3NyYy9pbmNsdWRlL2NvbW1hbmRzL2NsdXN0ZXIuaAorKysgYi9zcmMvaW5jbHVkZS9jb21tYW5k cy9jbHVzdGVyLmgKQEAgLTQ1LDUgKzQ1LDYgQEAgZXh0ZXJuIHZvaWQgZmluaXNoX2hlYXBfc3dh cChPaWQgT0lET2xkSGVhcCwgT2lkIE9JRE5ld0hlYXAsCiAJCQkJCQkJIFRyYW5zYWN0aW9uSWQg ZnJvemVuWGlkLAogCQkJCQkJCSBNdWx0aVhhY3RJZCBtaW5NdWx0aSwKIAkJCQkJCQkgY2hhciBu ZXdyZWxwZXJzaXN0ZW5jZSk7CitleHRlcm4gYm9vbCBpc19pbnNpZGVfcmVidWlsZF9yZWxhdGlv bih2b2lkKTsKIAogI2VuZGlmCQkJCQkJCS8qIENMVVNURVJfSCAqLwpkaWZmIC0tZ2l0IGEvc3Jj L3Rlc3QvcmVncmVzcy9leHBlY3RlZC9taXNjX3Nhbml0eS5vdXQgYi9zcmMvdGVzdC9yZWdyZXNz L2V4cGVjdGVkL21pc2Nfc2FuaXR5Lm91dAppbmRleCBhNTdmZDE0MmE5NC4uODA1MzY2OWVlZmUg MTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvbWlzY19zYW5pdHkub3V0Cisr KyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvbWlzY19zYW5pdHkub3V0CkBAIC0zNSwxMSAr MzUsOCBAQCBXSEVSRSByZWZjbGFzc2lkID0gMCBPUiByZWZvYmppZCA9IDAgT1IKIC0tIExvb2sg Zm9yIHN5c3RlbSB0YWJsZXMgd2l0aCB2YXJsZW5hIGNvbHVtbnMgYnV0IG5vIHRvYXN0IHRhYmxl LiBBbGwKIC0tIHN5c3RlbSB0YWJsZXMgd2l0aCB0b2FzdGFibGUgY29sdW1ucyBzaG91bGQgaGF2 ZSB0b2FzdCB0YWJsZXMsIHdpdGgKIC0tIHRoZSBmb2xsb3dpbmcgZXhjZXB0aW9uczoKLS0tIDEu IHBnX2NsYXNzLCBwZ19hdHRyaWJ1dGUsIGFuZCBwZ19pbmRleCwgZHVlIHRvIGZlYXIgb2YgcmVj dXJzaXZlCi0tLSBkZXBlbmRlbmNpZXMgYXMgdG9hc3QgdGFibGVzIGRlcGVuZCBvbiB0aGVtLgot LS0gMi4gcGdfbGFyZ2VvYmplY3QgYW5kIHBnX2xhcmdlb2JqZWN0X21ldGFkYXRhLiAgTGFyZ2Ug b2JqZWN0IGNhdGFsb2dzCi0tLSBhbmQgdG9hc3QgdGFibGVzIGFyZSBtdXR1YWxseSBleGNsdXNp dmUgYW5kIGxhcmdlIG9iamVjdCBkYXRhIGlzIGhhbmRsZWQKLS0tIGFzIHVzZXIgZGF0YSBieSBw Z191cGdyYWRlLCB3aGljaCB3b3VsZCBjYXVzZSBmYWlsdXJlcy4KKy0tIDEuIHBnX2luZGV4Lgor LS0gMi4gcGdfbGFyZ2VvYmplY3QuCiBTRUxFQ1QgcmVsbmFtZSwgYXR0bmFtZSwgYXR0dHlwaWQ6 OnJlZ3R5cGUKIEZST00gcGdfY2xhc3MgYyBKT0lOIHBnX2F0dHJpYnV0ZSBhIE9OIGMub2lkID0g YXR0cmVsaWQKIFdIRVJFIGMub2lkIDwgMTYzODQgQU5ECkBAIC00NywyMCArNDQsMTIgQEAgV0hF UkUgYy5vaWQgPCAxNjM4NCBBTkQKICAgICAgIHJlbGtpbmQgPSAncicgQU5ECiAgICAgICBhdHRz dG9yYWdlICE9ICdwJwogT1JERVIgQlkgMSwgMjsKLSAgICAgICAgIHJlbG5hbWUgICAgICAgICB8 ICAgIGF0dG5hbWUgICAgfCAgIGF0dHR5cGlkICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLQotIHBnX2F0dHJpYnV0ZSAgICAgICAgICAg IHwgYXR0YWNsICAgICAgICB8IGFjbGl0ZW1bXQotIHBnX2F0dHJpYnV0ZSAgICAgICAgICAgIHwg YXR0ZmR3b3B0aW9ucyB8IHRleHRbXQotIHBnX2F0dHJpYnV0ZSAgICAgICAgICAgIHwgYXR0bWlz c2luZ3ZhbCB8IGFueWFycmF5Ci0gcGdfYXR0cmlidXRlICAgICAgICAgICAgfCBhdHRvcHRpb25z ICAgIHwgdGV4dFtdCi0gcGdfY2xhc3MgICAgICAgICAgICAgICAgfCByZWxhY2wgICAgICAgIHwg YWNsaXRlbVtdCi0gcGdfY2xhc3MgICAgICAgICAgICAgICAgfCByZWxvcHRpb25zICAgIHwgdGV4 dFtdCi0gcGdfY2xhc3MgICAgICAgICAgICAgICAgfCByZWxwYXJ0Ym91bmQgIHwgcGdfbm9kZV90 cmVlCi0gcGdfaW5kZXggICAgICAgICAgICAgICAgfCBpbmRleHBycyAgICAgIHwgcGdfbm9kZV90 cmVlCi0gcGdfaW5kZXggICAgICAgICAgICAgICAgfCBpbmRwcmVkICAgICAgIHwgcGdfbm9kZV90 cmVlCi0gcGdfbGFyZ2VvYmplY3QgICAgICAgICAgfCBkYXRhICAgICAgICAgIHwgYnl0ZWEKLSBw Z19sYXJnZW9iamVjdF9tZXRhZGF0YSB8IGxvbWFjbCAgICAgICAgfCBhY2xpdGVtW10KLSgxMSBy b3dzKQorICAgIHJlbG5hbWUgICAgIHwgYXR0bmFtZSAgfCAgIGF0dHR5cGlkICAgCistLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0KKyBwZ19pbmRleCAgICAgICB8IGlu ZGV4cHJzIHwgcGdfbm9kZV90cmVlCisgcGdfaW5kZXggICAgICAgfCBpbmRwcmVkICB8IHBnX25v ZGVfdHJlZQorIHBnX2xhcmdlb2JqZWN0IHwgZGF0YSAgICAgfCBieXRlYQorKDMgcm93cykKIAog LS0gc3lzdGVtIGNhdGFsb2dzIHdpdGhvdXQgcHJpbWFyeSBrZXlzCiAtLQpkaWZmIC0tZ2l0IGEv c3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9wZ19jYXRhbG9nX3RvYXN0MS5vdXQgYi9zcmMvdGVz dC9yZWdyZXNzL2V4cGVjdGVkL3BnX2NhdGFsb2dfdG9hc3QxLm91dApuZXcgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMTkxODM1MWZlZGUKLS0tIC9kZXYvbnVsbAorKysgYi9z cmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3BnX2NhdGFsb2dfdG9hc3QxLm91dApAQCAtMCwwICsx LDI1IEBACitDUkVBVEUgT1IgUkVQTEFDRSBGVU5DVElPTiB0b2FzdF9hY2woKQorUkVUVVJOUyBC T09MRUFOIEFTICQkCitERUNMQVJFCisJSSBJTlRFR0VSIDo9MDsKK0JFR0lOCisJU0VUIExPQ0FM IENMSUVOVF9NSU5fTUVTU0FHRVM9V0FSTklORzsKKwlFWEVDVVRFICdEUk9QIFRBQkxFIElGIEVY SVNUUyB0ZXN0MjUxMCc7CisJRVhFQ1VURSAnQ1JFQVRFIFRBQkxFIHRlc3QyNTEwIChhIElOVCkn OworCUZPUiBJIElOIDEuLjQwOTYgTE9PUAorCQlFWEVDVVRFICdEUk9QIFJPTEUgSUYgRVhJU1RT IHJvbGUnIHx8IEk7CisJCUVYRUNVVEUgJ0NSRUFURSBST0xFIHJvbGUnIHx8IEk7CisJCUVYRUNV VEUgJ0dSQU5UIEFMTCBPTiB0ZXN0MjUxMCBUTyByb2xlJyB8fCBJOworCUVORCBMT09QOworCVJF U0VUIENMSUVOVF9NSU5fTUVTU0FHRVM7CisJUkVUVVJOIFRSVUU7CitFTkQ7CiskJAorTEFOR1VB R0UgUExQR1NRTDsKK1NFTEVDVCB0b2FzdF9hY2woKTsKKyB0b2FzdF9hY2wgCistLS0tLS0tLS0t LQorIHQKKygxIHJvdykKKworQ1JFQVRFIElOREVYIE9OIHRlc3QyNTEwIFVTSU5HIEJUUkVFKGEp OwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9wYXJhbGxlbF9zY2hlZHVsZSBiL3NyYy90 ZXN0L3JlZ3Jlc3MvcGFyYWxsZWxfc2NoZWR1bGUKaW5kZXggNWIwYzczZDdlMzcuLjI3MGRhMmVj ZmE5IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3BhcmFsbGVsX3NjaGVkdWxlCisrKyBi L3NyYy90ZXN0L3JlZ3Jlc3MvcGFyYWxsZWxfc2NoZWR1bGUKQEAgLTEzNCwzICsxMzQsNiBAQCB0 ZXN0OiBmYXN0X2RlZmF1bHQKIAogIyBydW4gc3RhdHMgYnkgaXRzZWxmIGJlY2F1c2UgaXRzIGRl bGF5IG1heSBiZSBpbnN1ZmZpY2llbnQgdW5kZXIgaGVhdnkgbG9hZAogdGVzdDogc3RhdHMKKwor I2NoZWNrIGZvciAiaW52YWxpZyB0dXBwbGUgbGVuZ3RoIiBlcnJvciB3aGVuIGNyZWF0aW5nIGlu ZGV4IHdpdGggdG9hc3RlZCBwZ19jbGFzcwordGVzdDogcGdfY2F0YWxvZ190b2FzdDEKZGlmZiAt LWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL21pc2Nfc2FuaXR5LnNxbCBiL3NyYy90ZXN0L3Jl Z3Jlc3Mvc3FsL21pc2Nfc2FuaXR5LnNxbAppbmRleCAyYzBmODdhNjUxZi4uZjFmZWI3YTc3ZTYg MTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL21pc2Nfc2FuaXR5LnNxbAorKysgYi9z cmMvdGVzdC9yZWdyZXNzL3NxbC9taXNjX3Nhbml0eS5zcWwKQEAgLTM4LDExICszOCw4IEBAIFdI RVJFIHJlZmNsYXNzaWQgPSAwIE9SIHJlZm9iamlkID0gMCBPUgogLS0gTG9vayBmb3Igc3lzdGVt IHRhYmxlcyB3aXRoIHZhcmxlbmEgY29sdW1ucyBidXQgbm8gdG9hc3QgdGFibGUuIEFsbAogLS0g c3lzdGVtIHRhYmxlcyB3aXRoIHRvYXN0YWJsZSBjb2x1bW5zIHNob3VsZCBoYXZlIHRvYXN0IHRh Ymxlcywgd2l0aAogLS0gdGhlIGZvbGxvd2luZyBleGNlcHRpb25zOgotLS0gMS4gcGdfY2xhc3Ms IHBnX2F0dHJpYnV0ZSwgYW5kIHBnX2luZGV4LCBkdWUgdG8gZmVhciBvZiByZWN1cnNpdmUKLS0t IGRlcGVuZGVuY2llcyBhcyB0b2FzdCB0YWJsZXMgZGVwZW5kIG9uIHRoZW0uCi0tLSAyLiBwZ19s YXJnZW9iamVjdCBhbmQgcGdfbGFyZ2VvYmplY3RfbWV0YWRhdGEuICBMYXJnZSBvYmplY3QgY2F0 YWxvZ3MKLS0tIGFuZCB0b2FzdCB0YWJsZXMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSBhbmQgbGFy Z2Ugb2JqZWN0IGRhdGEgaXMgaGFuZGxlZAotLS0gYXMgdXNlciBkYXRhIGJ5IHBnX3VwZ3JhZGUs IHdoaWNoIHdvdWxkIGNhdXNlIGZhaWx1cmVzLgorLS0gMS4gcGdfaW5kZXguCistLSAyLiBwZ19s YXJnZW9iamVjdC4KIAogU0VMRUNUIHJlbG5hbWUsIGF0dG5hbWUsIGF0dHR5cGlkOjpyZWd0eXBl CiBGUk9NIHBnX2NsYXNzIGMgSk9JTiBwZ19hdHRyaWJ1dGUgYSBPTiBjLm9pZCA9IGF0dHJlbGlk CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9wZ19jYXRhbG9nX3RvYXN0MS5zcWwg Yi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9wZ19jYXRhbG9nX3RvYXN0MS5zcWwKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmQzMzEyMjIxNGZlCi0tLSAvZGV2L251bGwKKysr IGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvcGdfY2F0YWxvZ190b2FzdDEuc3FsCkBAIC0wLDAgKzEs MjAgQEAKK0NSRUFURSBPUiBSRVBMQUNFIEZVTkNUSU9OIHRvYXN0X2FjbCgpCitSRVRVUk5TIEJP T0xFQU4gQVMgJCQKK0RFQ0xBUkUKKwlJIElOVEVHRVIgOj0wOworQkVHSU4KKwlTRVQgTE9DQUwg Q0xJRU5UX01JTl9NRVNTQUdFUz1XQVJOSU5HOworCUVYRUNVVEUgJ0RST1AgVEFCTEUgSUYgRVhJ U1RTIHRlc3QyNTEwJzsKKwlFWEVDVVRFICdDUkVBVEUgVEFCTEUgdGVzdDI1MTAgKGEgSU5UKSc7 CisJRk9SIEkgSU4gMS4uNDA5NiBMT09QCisJCUVYRUNVVEUgJ0RST1AgUk9MRSBJRiBFWElTVFMg cm9sZScgfHwgSTsKKwkJRVhFQ1VURSAnQ1JFQVRFIFJPTEUgcm9sZScgfHwgSTsKKwkJRVhFQ1VU RSAnR1JBTlQgQUxMIE9OIHRlc3QyNTEwIFRPIHJvbGUnIHx8IEk7CisJRU5EIExPT1A7CisJUkVT RVQgQ0xJRU5UX01JTl9NRVNTQUdFUzsKKwlSRVRVUk4gVFJVRTsKK0VORDsKKyQkCitMQU5HVUFH RSBQTFBHU1FMOworU0VMRUNUIHRvYXN0X2FjbCgpOworQ1JFQVRFIElOREVYIE9OIHRlc3QyNTEw IFVTSU5HIEJUUkVFKGEpOwotLSAKMi4yMC4xCgo= ------89aBa15cF95192083a1dBdC55411086a-uAatOi0XxDKZBIgS-1643112264--