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 1mmYHX-0007xl-Nr for pgsql-hackers@arkaria.postgresql.org; Mon, 15 Nov 2021 09:28:08 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1mmYHW-00082I-O0 for pgsql-hackers@arkaria.postgresql.org; Mon, 15 Nov 2021 09:28:06 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mmYHV-0007wN-UG for pgsql-hackers@lists.postgresql.org; Mon, 15 Nov 2021 09:28:06 +0000 Received: from esa16.fujitsucc.c3s2.iphmx.com ([216.71.158.33]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mmYHR-0002mx-1F for pgsql-hackers@lists.postgresql.org; Mon, 15 Nov 2021 09:28:05 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=fujitsu.com; i=@fujitsu.com; q=dns/txt; s=fj1; t=1636968482; x=1668504482; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=ysv6EjykJNUof3dsmWK3u+O1RXttbpf+MOoPnjxM1EM=; b=MG1j3nmm35UhIq/l2XFnsC9FN6iYU86VbCozI9x5xVD8mG3Q3DiThqt/ l2nKRJ0i0m9F1bLDE7zMSiWgpOo9bmRLVBXw5RWx/U31asmIocKu/ubjL ykRIzCBr2U2LItS/DqP2I5lhhsEZaFIkYnHKYBXUL0uLuQU26sdMukS26 HgnqPfHsd0mdSVK2jYOCWr9kAVWga14/QWOAWi7oaVn/g9WHlPyUHby+A woLDmCY9Nw5Nd95JZMZwCNXxXIUqEsVS5rqGgq2MJ8CNeCTdNsI543lKm KU+PV08NMAskhBxh603iv3Idqdt7K4xPoExPtv2rLyLOU00VAUfDrFq14 g==; X-IronPort-AV: E=McAfee;i="6200,9189,10168"; a="43584954" X-IronPort-AV: E=Sophos;i="5.87,236,1631545200"; d="scan'208,223";a="43584954" Received: from mail-ty1jpn01lp2055.outbound.protection.outlook.com (HELO JPN01-TY1-obe.outbound.protection.outlook.com) ([104.47.93.55]) by ob1.fujitsucc.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Nov 2021 18:27:55 +0900 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Hv7wv3xiU998cKgq1tEys7Ou+kr5dPncfhXo82r/PvkwDxjZ6Ys8Zk8KoL964zjJjzYNb0BxhuuNJnL418rf5W/mb72ofF5Vhde+QlY3kHBn7DXw+8yVa8khQgdsVxtp6UOT7SlLo+JOFKThWAxZ7v8jM79BgemnXKC6Dgse6+yNaxkapxpTtef4aSh9pTSw4sluhbLnmEreJGIoZSKagddtfumxORHNLxWC5kiKhiLLp/6CvPck5egIdnQeH2R7d2TUZbnL3G2sK3Qj0qUKiyRJ0TOZhl0MFweeqligtB4/+yABO2axhno3fI4tVU3V3y0xg/loFFgN17Z6bhViJw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=sFqpe33xcjxaCXrdM6XWn3T3S8bQJxrz8jHvsQ+8CAA=; b=iN9E5FLSaXfeO9anw5SddbmMNxi54+UkQgjJAyf0UBNONNLnNOim9TDNuTQRylMgEwhe32gEktXK6Izju/Sy4vfyCwBo6VF0pKxxob1cJEVAxbHsm139FN9xoieWGXy0J9i3klQUaFjeGjMsIZChjRng3LwWkELbtYFZ7298nabbs2ghgLoyvC17/0YAFuadPRm7KfdAyK55l43DeSdOwMlQJGdFbzqlJ+lCv4D+W/EJ/lIA1E1klNegEB86HXeNko/kiHzZWEVJU+tm0+zeuGo8dYJemQlVJpp65iBGp42Fs4CdZ5AIR7N4i2EXmuMPCl58t9j6SvDoSkcpShUhaQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=fujitsu.com; dmarc=pass action=none header.from=fujitsu.com; dkim=pass header.d=fujitsu.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fujitsu.onmicrosoft.com; s=selector2-fujitsu-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sFqpe33xcjxaCXrdM6XWn3T3S8bQJxrz8jHvsQ+8CAA=; b=jcfODYL6qecNNgrT6nvP4lpSIs96mzl0Bxs9yUHp1lio/iahZ2d7NOzVNQtSk33C4Qe3ixwegMGVQfguutOl1opJybW+v9XHwjH5JR+g08wlrQv5CV1fgSVK7Xlxea61/r2HfWrBuXe5XdKmqkuDCb0djdYwNUDVMHGWLtCXHH8= Received: from TYCPR01MB8373.jpnprd01.prod.outlook.com (2603:1096:400:15f::9) by TYYPR01MB7949.jpnprd01.prod.outlook.com (2603:1096:400:112::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4669.13; Mon, 15 Nov 2021 09:27:51 +0000 Received: from TYCPR01MB8373.jpnprd01.prod.outlook.com ([fe80::adb3:be1d:5bb2:45f5]) by TYCPR01MB8373.jpnprd01.prod.outlook.com ([fe80::adb3:be1d:5bb2:45f5%8]) with mapi id 15.20.4690.027; Mon, 15 Nov 2021 09:27:51 +0000 From: "osumi.takamichi@fujitsu.com" To: 'vignesh C' CC: Greg Nancarrow , Masahiko Sawada , Amit Kapila , "houzj.fnst@fujitsu.com" , "pgsql-hackers@lists.postgresql.org" Subject: RE: Failed transaction statistics to measure the logical replication progress Thread-Topic: Failed transaction statistics to measure the logical replication progress Thread-Index: AddzxbV4E8towJomTkm1trqmHwIwlgQVlICAANF/lUAAA/6ZgAAn+wOAAAWfTgAAB8XmAAAgvB4AAAU0KgAAB+7hgAAMXNsABZwy4NABa8QD4ADxViZAAZV2mrAA+6DXgAAsU7aAAAZiVQAAAnmZAAAIXu+AAFRfhZAAA/2jgAK/RTlAANYpygAAhIjngAF7IiwAAMcV0oAAfP65gABBZ2kgAL69AQAAEaPLYAAvgi4AADeqboAAwid+sA== Date: Mon, 15 Nov 2021 09:27:51 +0000 Message-ID: References: In-Reply-To: Accept-Language: ja-JP, en-US Content-Language: ja-JP X-MS-Has-Attach: yes X-MS-TNEF-Correlator: msip_labels: =?utf-8?B?TVNJUF9MYWJlbF9hNzI5NWNjMS1kMjc5LTQyYWMtYWI0ZC0zYjBmNGZlY2Uw?= =?utf-8?B?NTBfRW5hYmxlZD10cnVlOyBNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJh?= =?utf-8?B?Yy1hYjRkLTNiMGY0ZmVjZTA1MF9TZXREYXRlPTIwMjEtMTEtMTVUMDk6Mjc6?= =?utf-8?B?NDlaOyBNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJhYy1hYjRkLTNiMGY0?= =?utf-8?B?ZmVjZTA1MF9NZXRob2Q9U3RhbmRhcmQ7IE1TSVBfTGFiZWxfYTcyOTVjYzEt?= =?utf-8?B?ZDI3OS00MmFjLWFiNGQtM2IwZjRmZWNlMDUwX05hbWU9RlVKSVRTVS1SRVNU?= =?utf-8?B?UklDVEVE4oCLOyBNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJhYy1hYjRk?= =?utf-8?B?LTNiMGY0ZmVjZTA1MF9TaXRlSWQ9YTE5ZjEyMWQtODFlMS00ODU4LWE5ZDgt?= =?utf-8?B?NzM2ZTI2N2ZkNGM3OyBNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJhYy1h?= =?utf-8?B?YjRkLTNiMGY0ZmVjZTA1MF9BY3Rpb25JZD0zMmQwMjQ4MS0zZmEzLTQxZDIt?= =?utf-8?B?YTQ4Yy0xOGYzOWE1YWE2ODA7IE1TSVBfTGFiZWxfYTcyOTVjYzEtZDI3OS00?= =?utf-8?B?MmFjLWFiNGQtM2IwZjRmZWNlMDUwX0NvbnRlbnRCaXRzPTA=?= authentication-results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=fujitsu.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 49fd22b3-7983-41a0-d479-08d9a81a3267 x-ms-traffictypediagnostic: TYYPR01MB7949: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:2399; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Bq6zbDycAmPL0HTRnRZh7zCXpSZFkAb7bEhQkiP6GNDIzk5FMNxqXI8RKIElHc/e19BoV0HZGaKiFI7SZuyGPdWOBx6J/iEcN6e7uWVyDYSwWkzEqaTVVaTe7Fb4xm/zclUWz57OzBMdoh0GsjF8HsubJfs/oNrJ//UF0IIKjpn2lrpnmn6isjlHgTXlC65nmsGZLHnGQY6QjIKRKsHqDG3xb8LatSAARyWYNPDw9/denvwBR4Mz6HysK0mm5WPyebJ52VjFZrfUbybXaHs1Af7Kau9Ocbcnl1PV89F3nwvzNcw0zprMG0o097WUZ0wwqyUDx1Qz9U9Q5srJDOdAGPb9E3uo7sucFKLLqywEr3CZTRP3lj92CRbaZcdDkazXZ5Jfmbfw/JknhKFGrIjDFhtf+TSqKGyWTKVYdskM30x5cLgCihw+Itblweuk6Wxc9MT6msf1KUPal0SbgnfCce72oaejy0EAalvgnTOd+e7puhe2r2sHFGUPcZxNV55VQmrJEtqE6FHGQEasjk9eNzI9US34cT07uB7PpQMfLi/3wzW81AvG7wotidzljwuLouIDqMFGvAx462kJYqixCdMKX3aAL2usHJ2AlaJQW0BVTfiwtwJVQPXZzl0pZb0keZ2IOiePWasMpOWLb6esr1jA6lxcZ0H8EhCbE06gRrcx5yTj6eR4mDWg0Klqr+o8ZlqU6cIBdVjyQ3F8rbl6L49t8n152jFupg9av5ZsE36obDeo1PNWNyibHxi+otUCnT/Vq+EeqJ1j4gFIZH6VboK8n/D0AAx0Sf7k57iTXds= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TYCPR01MB8373.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(66946007)(8936002)(38100700002)(86362001)(8676002)(38070700005)(508600001)(54906003)(6916009)(76116006)(52536014)(66556008)(64756008)(186003)(26005)(316002)(6506007)(53546011)(66476007)(66446008)(83380400001)(5660300002)(85182001)(2906002)(7696005)(122000001)(99936003)(71200400001)(966005)(82960400001)(9686003)(33656002)(4326008)(55016002);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dm9kdlE1SENxdy9vTGl4dStlY21SVnpmVE03dEgrelFVUHI1TENZMXpTQ2hu?= =?utf-8?B?ejRVYTNINGJLMkFKUk5UZTUrUTI3b3NWZ2c5ZGRTN0dianROSERuajQ5QUxr?= =?utf-8?B?Rjg1VzAzMEtDZzRuUWVGQmgyVjRpTDV4YnVsYlN2SW1mTnVSbTNrM3dtZUdp?= =?utf-8?B?WVVvSkhkdmptOXk0QjdBZCt5ME5XdnFWSFE2b1cvZk4vODAzd3BzVDFxRUhz?= =?utf-8?B?QnhpNDRDc0VTVU9YR3pqcCtvK2xBQ0hybmdHbmtGRGpHemUvR1dSMUR1ejhS?= =?utf-8?B?Zkg1dWtZMXkxMjFPRTE5aGdWSElqczA1TnUzTXQxZmhZdTlOb2F2S0oxcTJT?= =?utf-8?B?MnlMT1NldS8wU1F6RkN0ZnNiaHhKcGkwTW0zRVNGby9aK2JIRU1ob3MvWDJT?= =?utf-8?B?aEFNTnV4RkxuSHJEOUhQMzNKNlNaZE5hSDRLcWJmcFJsbTlCRk9CZmRLd1Yr?= =?utf-8?B?K1h2WStnQzJubUFqdHZSZ0c0aW1YMnhJZHZ4R0ZQbC9zUVhzclVZVjJMOWpn?= =?utf-8?B?UEY2KzFpRkJhMHJkQnkyS2ZEUlB2U25GZFNjNHg5T0oveFR3MURlMVREckU5?= =?utf-8?B?VC9wSTNEWGQvNmdsU0hmWG1XMVlsdXVxVkVMcnFTeEVhWUFrN2s2SklZUGhX?= =?utf-8?B?TzlTclZQVEZ4aGxQL0pHVGs0RU03V0tJSDZVOG5oUFJ4NUJTNURYeWJFbjhN?= =?utf-8?B?aUt4WmtUd2lKbUpIZm1ZdGxtT3hLS2tET1ZJajJCQVBJMDFtTEVST2N0TXRR?= =?utf-8?B?RFozTEtpZjlhMW53QmlKTWNJb1ZXTnJicnV2WkNzZXJZeGJUcFY4Z2lUdGVu?= =?utf-8?B?ZFBEbVdaM0Vaa2ZaTlY3a1RBMlV4WmtCdVM4TGZHN3F2M1hRSytzTHJuNFRw?= =?utf-8?B?QmZYUDZhRCtVMlR6RWZOblN4S0t5dndUbTIzMUxSTk1YaXZPQUF0QW1qWGtH?= =?utf-8?B?bGFvK2hnb2d1SnBLS244ekNGVTNlbC9Xa0FLanoxd1hoU1hWQlRKVWpGNFNw?= =?utf-8?B?TU5jUUdxVzdVYUlPMzYvRjI4VnZSVGs3dm9mQkpqUnBwdGJBaTJOdWJ3YXRh?= =?utf-8?B?RXdqOVZEMVoxMDZEanUvOGJtdHQ2U3g2Q1IvbDRYSE5GZWxvdk5yMGxtMk41?= =?utf-8?B?WXVibzM1a0p2MzNSMUR0L1d0RlM5Q2QwbVhZVWx2THJDNkdYU01GYnNpMUVD?= =?utf-8?B?YVJmblRORlFUNEtaZU9wVitzK2RQV1gzVHVObkFCMlJtV1h0a3M4S0NmaXdT?= =?utf-8?B?TUpRdFlEWGl4SndDbDh2VVkwaW1ZZ3N3V2JwOTVNdzlkL01udXJKa080WWJW?= =?utf-8?B?M2dwVEczZzBQeXRJL2UyT1ZPU1FhNDNsaE9MWXRtWmlVK2xnYitqSzA5SUNN?= =?utf-8?B?OHc0SnZNdFlIcjdsU0NaZTJqMlYzMEtQdG9QeW9BamhDYzNqZm5sUktkN3c0?= =?utf-8?B?ci90U2FoRHBGNHp5NVdXM2tMME5JS1hxZUpabFUzaDdtemY3WVphTUJTM2hE?= =?utf-8?B?QU9IS25HUU5HekFyeHBJQ2J2NFAyWm9zZDZCZlZSQTgvd0VHdnJqbGlNcll1?= =?utf-8?B?UnFqRHUrU2NOZk1BQ1l2SU5BRFdNTkR0VlBhUGg5NTN4Ly9VUStoQTFuY2FR?= =?utf-8?B?TllaT1lPeHZUTXRRb2F6VTBlWHFBb2lNdTN3NDJoTUNUQ3hXM2xKVlVvMWM4?= =?utf-8?B?NlNoSlZ6ckoySFM3Rk16amhBVVhmT3ZwQVR2RW5hV0FnZXZhNVlLTTdvdUlN?= =?utf-8?B?U2Y2TE14YjNvT3NRWjNWNCs1T0w1SmovTE1CS3ZQdTlVUnRBVVJWMjgwcDRB?= =?utf-8?B?MmdyR2lSV0U0aTd1WTVScnR4enMxbTVLSG9kcHNEVVhwZEs2KytlWmJHYVF2?= =?utf-8?B?MkcrNEFaTzRSQzAwckUwZGlvdGxPYk9wQ1JHbDFSRVRKZGNEMEJtdVZRaVMy?= =?utf-8?B?cnpZSnlhNklIc0FEYlR3Rm1rL0l6RnZ2QjhlSWVxV2ZrWVN1ZzhQTWVTWE5q?= =?utf-8?B?Nm85TFBlWW0xTlViSnU5ZWJKN3V6Q3RSU01uUmtkMlNOVjVCT3hhaU1lMWhv?= =?utf-8?B?OXZNZWdoSUpNYko0VnorQnpQWkczb0VaOVVqUVFLODRZcXZvMWRqb2YvaUFL?= =?utf-8?B?TmNBbXpDVlRwRE50TmRvSkplZTZsdlpscnFDOXhWQVRvaU9HMnRWUDZuRmFC?= =?utf-8?B?bElGemFJLzQ5TmVBUUU3dzV4cWRnblJ5elRIVnFPUThweUV0MVZuMFpoc2xy?= =?utf-8?B?Q05Cc2lVdCttWjNaOXRnN3ViNnNRPT0=?= Content-Type: multipart/mixed; boundary="_003_TYCPR01MB8373FEB287F733C81C1E4D42ED989TYCPR01MB8373jpnp_" MIME-Version: 1.0 X-OriginatorOrg: fujitsu.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYCPR01MB8373.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 49fd22b3-7983-41a0-d479-08d9a81a3267 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Nov 2021 09:27:51.7399 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a19f121d-81e1-4858-a9d8-736e267fd4c7 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ArARn6TiGNeE+ivZsB0fFH753lJH7Lr7QgB24hMomTD3EvL7KItQ94VgLQ6b6exxhwzg1omlBIq/tR5ksUfaBPoK+GspEdmBugYCoQwClfI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYYPR01MB7949 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_003_TYCPR01MB8373FEB287F733C81C1E4D42ED989TYCPR01MB8373jpnp_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 T24gVGh1cnNkYXksIE5vdmVtYmVyIDExLCAyMDIxIDk6NDcgUE0gdmlnbmVzaCBDIDx2aWduZXNo MjFAZ21haWwuY29tPiB3cm90ZToNCj4gRmV3IG1vcmUgY29tbWVudHM6DQo+IDEpIEhlcmUgdGhl IHR1cGxlIGxlbmd0aCBpcyBub3QgY29uc2lkZXJlZCBpbiB0aGUgY2FsY3VsYXRpb24sIGVsc2Ug aXQgd2lsbCBhbHdheXMNCj4gc2hvdyB0aGUgZml4ZWQgc2l6ZSBmb3IgYW55IHNpemUgdHVwbGUu IEV4IHZhcmNoYXIgaW5zZXJ0IHdpdGggMSBieXRlIG9yIHZhcmNoYXINCj4gaW5zZXJ0IHdpdGgg MTAwJ3Mgb2YgYnl0ZXMuIFNvIEkgZmVlbCB3ZSBzaG91bGQgaW5jbHVkZSB0aGUgdHVwbGUgbGVu Z3RoIGluIHRoZQ0KPiBjYWxjdWxhdGlvbi4NCj4gKyAgICAgICAgICAgICAgIGNhc2UgTE9HSUNB TF9SRVBfTVNHX0lOU0VSVDoNCj4gKyAgICAgICAgICAgICAgIGNhc2UgTE9HSUNBTF9SRVBfTVNH X1VQREFURToNCj4gKyAgICAgICAgICAgICAgIGNhc2UgTE9HSUNBTF9SRVBfTVNHX0RFTEVURToN Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgQXNzZXJ0KGV4dHJhX2RhdGEgIT0gTlVMTCk7DQo+ ICsNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgLyoNCj4gKyAgICAgICAgICAgICAgICAgICAg ICAgICogQ29tcHV0ZSBzaXplIGJhc2VkIG9uIEFwcGx5RXhlY3V0aW9uRGF0YS4NCj4gKyAgICAg ICAgICAgICAgICAgICAgICAgICogVGhlIHNpemUgb2YgTG9naWNhbFJlcFJlbE1hcEVudHJ5IGNh biBiZQ0KPiBza2lwcGVkIGJlY2F1c2UNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICogaXQg aXMgb2J0YWluZWQgZnJvbSBoYXNoX3NlYXJjaCBpbg0KPiBsb2dpY2FscmVwX3JlbF9vcGVuLg0K PiArICAgICAgICAgICAgICAgICAgICAgICAgKi8NCj4gKyAgICAgICAgICAgICAgICAgICAgICAg c2l6ZSArPSBzaXplb2YoQXBwbHlFeGVjdXRpb25EYXRhKSArIHNpemVvZihFU3RhdGUpDQo+ICsN Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YoUmVzdWx0UmVsSW5mbykg Kw0KPiArIHNpemVvZihSZXN1bHRSZWxJbmZvKTsNCj4gKw0KPiArICAgICAgICAgICAgICAgICAg ICAgICAvKg0KPiArICAgICAgICAgICAgICAgICAgICAgICAgKiBBZGQgc29tZSBleHRyYSBzaXpl IGlmIHRoZSB0YXJnZXQgcmVsYXRpb24NCj4gaXMgcGFydGl0aW9uZWQuDQo+ICsgICAgICAgICAg ICAgICAgICAgICAgICAqIFBhcnRpdGlvblR1cGxlUm91dGluZyBpc24ndCBleHBvcnRlZC4NCj4g VGhlcmVmb3JlLCBjYWxsIHRoZQ0KPiArICAgICAgICAgICAgICAgICAgICAgICAgKiBmdW5jdGlv biB0aGF0IHJldHVybnMgaXRzIHNpemUgaW5zdGVhZC4NCj4gKyAgICAgICAgICAgICAgICAgICAg ICAgICovDQo+ICsgICAgICAgICAgICAgICAgICAgICAgIGlmDQo+IChleHRyYV9kYXRhLT5yZWxt YXBlbnRyeS0+bG9jYWxyZWwtPnJkX3JlbC0+cmVsa2luZCA9PQ0KPiBSRUxLSU5EX1BBUlRJVElP TkVEX1RBQkxFKQ0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgKz0gc2l6 ZW9mKE1vZGlmeVRhYmxlU3RhdGUpICsNCj4gUGFydGl0aW9uVHVwbGVSb3V0aW5nU2l6ZSgpOw0K PiArICAgICAgICAgICAgICAgICAgICAgICBicmVhazsNClRoYW5rcyBhIGxvdCAhIEZpeGVkLg0K DQoNCj4gMikgQ2FuIHRoaXMgYmUgcGFydCBvZiBQZ1N0YXRfU3RhdERCRW50cnksIHNpbWlsYXIg dG8gdGFibGVzLCBmdW5jdGlvbnMgYW5kDQo+IHN1YndvcmtlcnMuIEl0IG1pZ2h0IGJlIG1vcmUg YXBwcm9wcmlhdGUgdG8gaGF2ZSBpdCB0aGVyZSBpbnN0ZWFkIG9mIGhhdmluZw0KPiBhbm90aGVy IGdsb2JhbCB2YXJpYWJsZS4NCj4gKyAqIFN0YXRzIG9mIHByZXBhcmVkIHRyYW5zYWN0aW9ucyBz aG91bGQgYmUgZGlzcGxheWVkDQo+ICsgKiBhdCBlaXRoZXIgY29tbWl0IHByZXBhcmVkIG9yIHJv bGxiYWNrIHByZXBhcmVkIHRpbWUsIGV2ZW4gd2hlbiBpdCdzDQo+ICsgKiBhZnRlciB0aGUgc2Vy dmVyIHJlc3RhcnQuIFdlIGhhdmUgdGhlIGFwcGx5IHdvcmtlciBzZW5kIHRob3NlDQo+ICtzdGF0 aXN0aWNzDQo+ICsgKiB0byB0aGUgc3RhdHMgY29sbGVjdG9yIGF0IHByZXBhcmUgdGltZSBhbmQg dGhlIHN0YXJ0dXAgcHJvY2Vzcw0KPiArcmVzdG9yZQ0KPiArICogdGhvc2UgYXQgcmVzdGFydCBp ZiBuZWNlc3NhcnkuDQo+ICsgKi8NCj4gK3N0YXRpYyBIVEFCICpzdWJXb3JrZXJQcmVwYXJlZFhh Y3RTaXplSGFzaCA9IE5VTEw7DQo+ICsNCj4gKy8qDQpGaXhlZC4gQWxzbywgaXRzIG5hbWUgd2Fz IHRvbyBsb25nDQp3aGVuIGFsaWduZWQgd2l0aCBvdGhlciBQZ1N0YXRfU3RhdERCRW50cnkgbWVt ZWJlcnMuDQpUaHVzIEkgcmVuYW1lZCBpdCBhcyBzdWJ3b3JrZXJzX3ByZXBhcmVkc2l6ZXMuDQoN ClRoaXMgZGVwZW5kcyBvbiB2MjEgaW4gWzFdDQoNClsxXSAtIGh0dHBzOi8vd3d3LnBvc3RncmVz cWwub3JnL21lc3NhZ2UtaWQvQ0FEMjFBb0FrZDRZU29RVVVGZnBjcllPdGtQUmJuaW5hdzNzRDBx Yzc3bkxXNlE4OWdnJTQwbWFpbC5nbWFpbC5jb20NCg0KQmVzdCBSZWdhcmRzLA0KCVRha2FtaWNo aSBPc3VtaQ0KDQo= --_003_TYCPR01MB8373FEB287F733C81C1E4D42ED989TYCPR01MB8373jpnp_ Content-Type: application/octet-stream; name="v10-0001-Rename-existing-columns-of-pg_stat_subscription_.patch" Content-Description: v10-0001-Rename-existing-columns-of-pg_stat_subscription_.patch Content-Disposition: attachment; filename="v10-0001-Rename-existing-columns-of-pg_stat_subscription_.patch"; size=15734; creation-date="Mon, 15 Nov 2021 09:27:04 GMT"; modification-date="Mon, 15 Nov 2021 09:27:04 GMT" Content-Transfer-Encoding: base64 RnJvbSA2YjMyOTMwOGQ4MWZmYzcxNDBkNTFjMjcwOWY1OWQxZGQ1N2YzMWU1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBPc3VtaSBUYWthbWljaGkgPG9zdW1pLnRha2FtaWNoaUBmdWpp dHN1LmNvbT4KRGF0ZTogTW9uLCAxNSBOb3YgMjAyMSAwODo0NTo1NSArMDAwMApTdWJqZWN0OiBb UEFUQ0ggdjEwIDEvMl0gUmVuYW1lIGV4aXN0aW5nIGNvbHVtbnMgb2YKIHBnX3N0YXRfc3Vic2Ny aXB0aW9uX3dvcmtlcnMgYW5kIGV4cG9ydCBQYXJ0aXRpb25UdXBsZVJvdXRpbmcKCi0tLQogZG9j L3NyYy9zZ21sL21vbml0b3Jpbmcuc2dtbCAgICAgICAgICAgICAgICB8IDI0ICsrKysrLS0tLS0K IHNyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbCAgICAgICAgfCAxMCArKy0tLQog c3JjL2JhY2tlbmQvZXhlY3V0b3IvZXhlY1BhcnRpdGlvbi5jICAgICAgICB8IDcwIC0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBzcmMvYmFja2VuZC91dGlscy9hZHQvcGdzdGF0ZnVuY3Mu YyAgICAgICAgIHwgMjAgKysrKy0tLS0tCiBzcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0 ICAgICAgICAgICAgIHwgIDIgKy0KIHNyYy9pbmNsdWRlL2V4ZWN1dG9yL2V4ZWNQYXJ0aXRpb24u aCAgICAgICAgfCA2OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBzcmMvdGVzdC9yZWdy ZXNzL2V4cGVjdGVkL3J1bGVzLm91dCAgICAgICAgIHwgMTIgKystLS0KIHNyYy90ZXN0L3N1YnNj cmlwdGlvbi90LzAyNl9lcnJvcl9yZXBvcnQucGwgfCAgOCArKy0tCiA4IGZpbGVzIGNoYW5nZWQs IDEwNyBpbnNlcnRpb25zKCspLCAxMDggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL3Ny Yy9zZ21sL21vbml0b3Jpbmcuc2dtbCBiL2RvYy9zcmMvc2dtbC9tb25pdG9yaW5nLnNnbWwKaW5k ZXggNGVlOTdkYi4uOGI3OTIwYyAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL21vbml0b3Jpbmcu c2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvbW9uaXRvcmluZy5zZ21sCkBAIC0zMTAzLDMxICszMTAz LDMxIEBAIFNFTEVDVCBwaWQsIHdhaXRfZXZlbnRfdHlwZSwgd2FpdF9ldmVudCBGUk9NIHBnX3N0 YXRfYWN0aXZpdHkgV0hFUkUgd2FpdF9ldmVudCBpCiAKICAgICAgPHJvdz4KICAgICAgIDxlbnRy eSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVmaW5pdGlv biI+Ci0gICAgICAgPHN0cnVjdGZpZWxkPnJlbGlkPC9zdHJ1Y3RmaWVsZD4gPHR5cGU+b2lkPC90 eXBlPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5sYXN0X2Vycm9yX3JlbGlkPC9zdHJ1Y3RmaWVsZD4g PHR5cGU+b2lkPC90eXBlPgogICAgICAgPC9wYXJhPgogICAgICAgPHBhcmE+CiAgICAgICAgT0lE IG9mIHRoZSByZWxhdGlvbiB0aGF0IHRoZSB3b3JrZXIgd2FzIHByb2Nlc3Npbmcgd2hlbiB0aGUK LSAgICAgICBlcnJvciBvY2N1cnJlZAorICAgICAgIGxhc3QgZXJyb3Igb2NjdXJyZWQKICAgICAg IDwvcGFyYT48L2VudHJ5PgogICAgICA8L3Jvdz4KIAogICAgICA8cm93PgogICAgICAgPGVudHJ5 IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9u Ij4KLSAgICAgICA8c3RydWN0ZmllbGQ+Y29tbWFuZDwvc3RydWN0ZmllbGQ+IDx0eXBlPnRleHQ8 L3R5cGU+CisgICAgICAgPHN0cnVjdGZpZWxkPmxhc3RfZXJyb3JfY29tbWFuZDwvc3RydWN0Zmll bGQ+IDx0eXBlPnRleHQ8L3R5cGU+CiAgICAgICA8L3BhcmE+CiAgICAgICA8cGFyYT4KLSAgICAg ICBOYW1lIG9mIGNvbW1hbmQgYmVpbmcgYXBwbGllZCB3aGVuIHRoZSBlcnJvciBvY2N1cnJlZC4g IFRoaXMgZmllbGQKLSAgICAgICBpcyBhbHdheXMgTlVMTCBpZiB0aGUgZXJyb3Igd2FzIHJlcG9y dGVkIGR1cmluZyB0aGUgaW5pdGlhbCBkYXRhCi0gICAgICAgY29weS4KKyAgICAgICBOYW1lIG9m IHRoZSBsYXN0IGNvbW1hbmQgYmVpbmcgYXBwbGllZCB3aGVuIHRoZSBlcnJvciBvY2N1cnJlZC4K KyAgICAgICBUaGlzIGZpZWxkIGlzIGFsd2F5cyBOVUxMIGlmIHRoZSBlcnJvciB3YXMgcmVwb3J0 ZWQgZHVyaW5nIHRoZQorICAgICAgIGluaXRpYWwgZGF0YSBjb3B5LgogICAgICAgPC9wYXJhPjwv ZW50cnk+CiAgICAgIDwvcm93PgogCiAgICAgIDxyb3c+CiAgICAgICA8ZW50cnkgcm9sZT0iY2F0 YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgotICAgICAg IDxzdHJ1Y3RmaWVsZD54aWQ8L3N0cnVjdGZpZWxkPiA8dHlwZT54aWQ8L3R5cGU+CisgICAgICAg PHN0cnVjdGZpZWxkPmxhc3RfZXJyb3JfeGlkPC9zdHJ1Y3RmaWVsZD4gPHR5cGU+eGlkPC90eXBl PgogICAgICAgPC9wYXJhPgogICAgICAgPHBhcmE+Ci0gICAgICAgVHJhbnNhY3Rpb24gSUQgb2Yg dGhlIHB1Ymxpc2hlciBub2RlIGJlaW5nIGFwcGxpZWQgd2hlbiB0aGUgZXJyb3IKKyAgICAgICBU cmFuc2FjdGlvbiBJRCBvZiB0aGUgcHVibGlzaGVyIG5vZGUgYmVpbmcgYXBwbGllZCB3aGVuIHRo ZSBsYXN0IGVycm9yCiAgICAgICAgb2NjdXJyZWQuICBUaGlzIGZpZWxkIGlzIGFsd2F5cyBOVUxM IGlmIHRoZSBlcnJvciB3YXMgcmVwb3J0ZWQKICAgICAgICBkdXJpbmcgdGhlIGluaXRpYWwgZGF0 YSBjb3B5LgogICAgICAgPC9wYXJhPjwvZW50cnk+CkBAIC0zMTM1LDE5ICszMTM1LDE5IEBAIFNF TEVDVCBwaWQsIHdhaXRfZXZlbnRfdHlwZSwgd2FpdF9ldmVudCBGUk9NIHBnX3N0YXRfYWN0aXZp dHkgV0hFUkUgd2FpdF9ldmVudCBpCiAKICAgICAgPHJvdz4KICAgICAgIDxlbnRyeSByb2xlPSJj YXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+Ci0gICAg ICAgPHN0cnVjdGZpZWxkPmVycm9yX2NvdW50PC9zdHJ1Y3RmaWVsZD4gPHR5cGU+dWludDg8L3R5 cGU+CisgICAgICAgPHN0cnVjdGZpZWxkPmxhc3RfZXJyb3JfY291bnQ8L3N0cnVjdGZpZWxkPiA8 dHlwZT51aW50ODwvdHlwZT4KICAgICAgIDwvcGFyYT4KICAgICAgIDxwYXJhPgotICAgICAgIE51 bWJlciBvZiBjb25zZWN1dGl2ZSB0aW1lcyB0aGUgZXJyb3Igb2NjdXJyZWQKKyAgICAgICBOdW1i ZXIgb2YgY29uc2VjdXRpdmUgdGltZXMgdGhlIGxhc3QgZXJyb3Igb2NjdXJyZWQKICAgICAgIDwv cGFyYT48L2VudHJ5PgogICAgICA8L3Jvdz4KIAogICAgICA8cm93PgogICAgICAgPGVudHJ5IHJv bGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4K LSAgICAgICA8c3RydWN0ZmllbGQ+ZXJyb3JfbWVzc2FnZTwvc3RydWN0ZmllbGQ+IDx0eXBlPnRl eHQ8L3R5cGU+CisgICAgICAgPHN0cnVjdGZpZWxkPmxhc3RfZXJyb3JfbWVzc2FnZTwvc3RydWN0 ZmllbGQ+IDx0eXBlPnRleHQ8L3R5cGU+CiAgICAgICA8L3BhcmE+CiAgICAgICA8cGFyYT4KLSAg ICAgICBUaGUgZXJyb3IgbWVzc2FnZQorICAgICAgIFRoZSBsYXN0IGVycm9yIG1lc3NhZ2UKICAg ICAgIDwvcGFyYT48L2VudHJ5PgogICAgICA8L3Jvdz4KIApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tl bmQvY2F0YWxvZy9zeXN0ZW1fdmlld3Muc3FsIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1f dmlld3Muc3FsCmluZGV4IGNiMmY3N2MuLmVjZjFhMGIgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5k L2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbAorKysgYi9zcmMvYmFja2VuZC9jYXRhbG9nL3N5c3Rl bV92aWV3cy5zcWwKQEAgLTEyNjcsMTEgKzEyNjcsMTEgQEAgQ1JFQVRFIFZJRVcgcGdfc3RhdF9z dWJzY3JpcHRpb25fd29ya2VycyBBUwogICAgICAgICB3LnN1YmlkLAogICAgICAgICBzLnN1Ym5h bWUsCiAgICAgICAgIHcuc3VicmVsaWQsCi0gICAgICAgIHcucmVsaWQsCi0gICAgICAgIHcuY29t bWFuZCwKLSAgICAgICAgdy54aWQsCi0gICAgICAgIHcuZXJyb3JfY291bnQsCi0gICAgICAgIHcu ZXJyb3JfbWVzc2FnZSwKKyAgICAgICAgdy5sYXN0X2Vycm9yX3JlbGlkLAorICAgICAgICB3Lmxh c3RfZXJyb3JfY29tbWFuZCwKKyAgICAgICAgdy5sYXN0X2Vycm9yX3hpZCwKKyAgICAgICAgdy5s YXN0X2Vycm9yX2NvdW50LAorICAgICAgICB3Lmxhc3RfZXJyb3JfbWVzc2FnZSwKICAgICAgICAg dy5maXJzdF9lcnJvcl90aW1lLAogICAgICAgICB3Lmxhc3RfZXJyb3JfdGltZQogICAgIEZST00g KFNFTEVDVApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvZXhlY3V0b3IvZXhlY1BhcnRpdGlvbi5j IGIvc3JjL2JhY2tlbmQvZXhlY3V0b3IvZXhlY1BhcnRpdGlvbi5jCmluZGV4IDVjNzIzYmMuLjI0 NjdmNGMgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL2V4ZWNQYXJ0aXRpb24uYwor KysgYi9zcmMvYmFja2VuZC9leGVjdXRvci9leGVjUGFydGl0aW9uLmMKQEAgLTM0LDc2ICszNCw2 IEBACiAjaW5jbHVkZSAidXRpbHMvcmxzLmgiCiAjaW5jbHVkZSAidXRpbHMvcnVsZXV0aWxzLmgi CiAKLQotLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotICogUGFydGl0aW9uVHVwbGVSb3V0aW5n IC0gRW5jYXBzdWxhdGVzIGFsbCBpbmZvcm1hdGlvbiByZXF1aXJlZCB0bwotICogcm91dGUgYSB0 dXBsZSBpbnNlcnRlZCBpbnRvIGEgcGFydGl0aW9uZWQgdGFibGUgdG8gb25lIG9mIGl0cyBsZWFm Ci0gKiBwYXJ0aXRpb25zLgotICoKLSAqIHBhcnRpdGlvbl9yb290Ci0gKgkJVGhlIHBhcnRpdGlv bmVkIHRhYmxlIHRoYXQncyB0aGUgdGFyZ2V0IG9mIHRoZSBjb21tYW5kLgotICoKLSAqIHBhcnRp dGlvbl9kaXNwYXRjaF9pbmZvCi0gKgkJQXJyYXkgb2YgJ21heF9kaXNwYXRjaCcgZWxlbWVudHMg Y29udGFpbmluZyBhIHBvaW50ZXIgdG8gYQotICoJCVBhcnRpdGlvbkRpc3BhdGNoIG9iamVjdCBm b3IgZXZlcnkgcGFydGl0aW9uZWQgdGFibGUgdG91Y2hlZCBieSB0dXBsZQotICoJCXJvdXRpbmcu ICBUaGUgZW50cnkgZm9yIHRoZSB0YXJnZXQgcGFydGl0aW9uZWQgdGFibGUgaXMgKmFsd2F5cyoK LSAqCQlwcmVzZW50IGluIHRoZSAwdGggZWxlbWVudCBvZiB0aGlzIGFycmF5LiAgU2VlIGNvbW1l bnQgZm9yCi0gKgkJUGFydGl0aW9uRGlzcGF0Y2hEYXRhLT5pbmRleGVzIGZvciBkZXRhaWxzIG9u IGhvdyB0aGlzIGFycmF5IGlzCi0gKgkJaW5kZXhlZC4KLSAqCi0gKiBub25sZWFmX3BhcnRpdGlv bnMKLSAqCQlBcnJheSBvZiAnbWF4X2Rpc3BhdGNoJyBlbGVtZW50cyBjb250YWluaW5nIHBvaW50 ZXJzIHRvIGZha2UKLSAqCQlSZXN1bHRSZWxJbmZvIG9iamVjdHMgZm9yIG5vbmxlYWYgcGFydGl0 aW9ucywgdXNlZnVsIGZvciBjaGVja2luZwotICoJCXRoZSBwYXJ0aXRpb24gY29uc3RyYWludC4K LSAqCi0gKiBudW1fZGlzcGF0Y2gKLSAqCQlUaGUgY3VycmVudCBudW1iZXIgb2YgaXRlbXMgc3Rv cmVkIGluIHRoZSAncGFydGl0aW9uX2Rpc3BhdGNoX2luZm8nCi0gKgkJYXJyYXkuICBBbHNvIHNl cnZlcyBhcyB0aGUgaW5kZXggb2YgdGhlIG5leHQgZnJlZSBhcnJheSBlbGVtZW50IGZvcgotICoJ CW5ldyBQYXJ0aXRpb25EaXNwYXRjaCBvYmplY3RzIHRoYXQgbmVlZCB0byBiZSBzdG9yZWQuCi0g KgotICogbWF4X2Rpc3BhdGNoCi0gKgkJVGhlIGN1cnJlbnQgYWxsb2NhdGVkIHNpemUgb2YgdGhl ICdwYXJ0aXRpb25fZGlzcGF0Y2hfaW5mbycgYXJyYXkuCi0gKgotICogcGFydGl0aW9ucwotICoJ CUFycmF5IG9mICdtYXhfcGFydGl0aW9ucycgZWxlbWVudHMgY29udGFpbmluZyBhIHBvaW50ZXIg dG8gYQotICoJCVJlc3VsdFJlbEluZm8gZm9yIGV2ZXJ5IGxlYWYgcGFydGl0aW9uIHRvdWNoZWQg YnkgdHVwbGUgcm91dGluZy4KLSAqCQlTb21lIG9mIHRoZXNlIGFyZSBwb2ludGVycyB0byBSZXN1 bHRSZWxJbmZvcyB3aGljaCBhcmUgYm9ycm93ZWQgb3V0IG9mCi0gKgkJdGhlIG93bmluZyBNb2Rp ZnlUYWJsZVN0YXRlIG5vZGUuICBUaGUgcmVtYWluZGVyIGhhdmUgYmVlbiBidWlsdAotICoJCWVz cGVjaWFsbHkgZm9yIHR1cGxlIHJvdXRpbmcuICBTZWUgY29tbWVudCBmb3IKLSAqCQlQYXJ0aXRp b25EaXNwYXRjaERhdGEtPmluZGV4ZXMgZm9yIGRldGFpbHMgb24gaG93IHRoaXMgYXJyYXkgaXMK LSAqCQlpbmRleGVkLgotICoKLSAqIGlzX2JvcnJvd2VkX3JlbAotICoJCUFycmF5IG9mICdtYXhf cGFydGl0aW9ucycgYm9vbGVhbnMgcmVjb3JkaW5nIHdoZXRoZXIgYSBnaXZlbiBlbnRyeQotICoJ CWluICdwYXJ0aXRpb25zJyBpcyBhIFJlc3VsdFJlbEluZm8gcG9pbnRlciBib3Jyb3dlZCBmcm9t IHRoZSBvd25pbmcKLSAqCQlNb2RpZnlUYWJsZVN0YXRlIG5vZGUsIHJhdGhlciB0aGFuIGJlaW5n IGJ1aWx0IGhlcmUuCi0gKgotICogbnVtX3BhcnRpdGlvbnMKLSAqCQlUaGUgY3VycmVudCBudW1i ZXIgb2YgaXRlbXMgc3RvcmVkIGluIHRoZSAncGFydGl0aW9ucycgYXJyYXkuICBBbHNvCi0gKgkJ c2VydmVzIGFzIHRoZSBpbmRleCBvZiB0aGUgbmV4dCBmcmVlIGFycmF5IGVsZW1lbnQgZm9yIG5l dwotICoJCVJlc3VsdFJlbEluZm8gb2JqZWN0cyB0aGF0IG5lZWQgdG8gYmUgc3RvcmVkLgotICoK LSAqIG1heF9wYXJ0aXRpb25zCi0gKgkJVGhlIGN1cnJlbnQgYWxsb2NhdGVkIHNpemUgb2YgdGhl ICdwYXJ0aXRpb25zJyBhcnJheS4KLSAqCi0gKiBtZW1jeHQKLSAqCQlNZW1vcnkgY29udGV4dCB1 c2VkIHRvIGFsbG9jYXRlIHN1YnNpZGlhcnkgc3RydWN0cy4KLSAqLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KLSAqLwotc3RydWN0IFBhcnRpdGlvblR1cGxlUm91dGluZwotewotCVJlbGF0aW9uCXBh cnRpdGlvbl9yb290OwotCVBhcnRpdGlvbkRpc3BhdGNoICpwYXJ0aXRpb25fZGlzcGF0Y2hfaW5m bzsKLQlSZXN1bHRSZWxJbmZvICoqbm9ubGVhZl9wYXJ0aXRpb25zOwotCWludAkJCW51bV9kaXNw YXRjaDsKLQlpbnQJCQltYXhfZGlzcGF0Y2g7Ci0JUmVzdWx0UmVsSW5mbyAqKnBhcnRpdGlvbnM7 Ci0JYm9vbAkgICAqaXNfYm9ycm93ZWRfcmVsOwotCWludAkJCW51bV9wYXJ0aXRpb25zOwotCWlu dAkJCW1heF9wYXJ0aXRpb25zOwotCU1lbW9yeUNvbnRleHQgbWVtY3h0OwotfTsKLQogLyotLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQogICogUGFydGl0aW9uRGlzcGF0Y2ggLSBpbmZvcm1hdGlvbiBh Ym91dCBvbmUgcGFydGl0aW9uZWQgdGFibGUgaW4gYSBwYXJ0aXRpb24KICAqIGhpZXJhcmNoeSBy ZXF1aXJlZCB0byByb3V0ZSBhIHR1cGxlIHRvIGFueSBvZiBpdHMgcGFydGl0aW9ucy4gIEEKZGlm ZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9wZ3N0YXRmdW5jcy5jIGIvc3JjL2JhY2tl bmQvdXRpbHMvYWR0L3Bnc3RhdGZ1bmNzLmMKaW5kZXggNGUxYmJjYy4uZTdmZjRlZiAxMDA2NDQK LS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3Bnc3RhdGZ1bmNzLmMKKysrIGIvc3JjL2JhY2tl bmQvdXRpbHMvYWR0L3Bnc3RhdGZ1bmNzLmMKQEAgLTI0NDEsMTUgKzI0NDEsMTUgQEAgcGdfc3Rh dF9nZXRfc3Vic2NyaXB0aW9uX3dvcmtlcihQR19GVU5DVElPTl9BUkdTKQogCQkJCQkgICBPSURP SUQsIC0xLCAwKTsKIAlUdXBsZURlc2NJbml0RW50cnkodHVwZGVzYywgKEF0dHJOdW1iZXIpIDIs ICJzdWJyZWxpZCIsCiAJCQkJCSAgIE9JRE9JRCwgLTEsIDApOwotCVR1cGxlRGVzY0luaXRFbnRy eSh0dXBkZXNjLCAoQXR0ck51bWJlcikgMywgInJlbGlkIiwKKwlUdXBsZURlc2NJbml0RW50cnko dHVwZGVzYywgKEF0dHJOdW1iZXIpIDMsICJsYXN0X2Vycm9yX3JlbGlkIiwKIAkJCQkJICAgT0lE T0lELCAtMSwgMCk7Ci0JVHVwbGVEZXNjSW5pdEVudHJ5KHR1cGRlc2MsIChBdHRyTnVtYmVyKSA0 LCAiY29tbWFuZCIsCisJVHVwbGVEZXNjSW5pdEVudHJ5KHR1cGRlc2MsIChBdHRyTnVtYmVyKSA0 LCAibGFzdF9lcnJvcl9jb21tYW5kIiwKIAkJCQkJICAgVEVYVE9JRCwgLTEsIDApOwotCVR1cGxl RGVzY0luaXRFbnRyeSh0dXBkZXNjLCAoQXR0ck51bWJlcikgNSwgInhpZCIsCisJVHVwbGVEZXNj SW5pdEVudHJ5KHR1cGRlc2MsIChBdHRyTnVtYmVyKSA1LCAibGFzdF9lcnJvcl94aWQiLAogCQkJ CQkgICBYSURPSUQsIC0xLCAwKTsKLQlUdXBsZURlc2NJbml0RW50cnkodHVwZGVzYywgKEF0dHJO dW1iZXIpIDYsICJlcnJvcl9jb3VudCIsCisJVHVwbGVEZXNjSW5pdEVudHJ5KHR1cGRlc2MsIChB dHRyTnVtYmVyKSA2LCAibGFzdF9lcnJvcl9jb3VudCIsCiAJCQkJCSAgIElOVDhPSUQsIC0xLCAw KTsKLQlUdXBsZURlc2NJbml0RW50cnkodHVwZGVzYywgKEF0dHJOdW1iZXIpIDcsICJlcnJvcl9t ZXNzYWdlIiwKKwlUdXBsZURlc2NJbml0RW50cnkodHVwZGVzYywgKEF0dHJOdW1iZXIpIDcsICJs YXN0X2Vycm9yX21lc3NhZ2UiLAogCQkJCQkgICBURVhUT0lELCAtMSwgMCk7CiAJVHVwbGVEZXNj SW5pdEVudHJ5KHR1cGRlc2MsIChBdHRyTnVtYmVyKSA4LCAiZmlyc3RfZXJyb3JfdGltZSIsCiAJ CQkJCSAgIFRJTUVTVEFNUFRaT0lELCAtMSwgMCk7CkBAIC0yNDcxLDI4ICsyNDcxLDI4IEBAIHBn X3N0YXRfZ2V0X3N1YnNjcmlwdGlvbl93b3JrZXIoUEdfRlVOQ1RJT05fQVJHUykKIAllbHNlCiAJ CW51bGxzW2krK10gPSB0cnVlOwogCi0JLyogcmVsaWQgKi8KKwkvKiBsYXN0X2Vycm9yX3JlbGlk ICovCiAJaWYgKE9pZElzVmFsaWQod2VudHJ5LT5yZWxpZCkpCiAJCXZhbHVlc1tpKytdID0gT2Jq ZWN0SWRHZXREYXR1bSh3ZW50cnktPnJlbGlkKTsKIAllbHNlCiAJCW51bGxzW2krK10gPSB0cnVl OwogCi0JLyogY29tbWFuZCAqLworCS8qIGxhc3RfZXJyb3JfY29tbWFuZCAqLwogCWlmICh3ZW50 cnktPmNvbW1hbmQgIT0gMCkKIAkJdmFsdWVzW2krK10gPSBDU3RyaW5nR2V0VGV4dERhdHVtKGxv Z2ljYWxyZXBfbWVzc2FnZV90eXBlKHdlbnRyeS0+Y29tbWFuZCkpOwogCWVsc2UKIAkJbnVsbHNb aSsrXSA9IHRydWU7CiAKLQkvKiB4aWQgKi8KKwkvKiBsYXN0X2Vycm9yX3hpZCAqLwogCWlmIChU cmFuc2FjdGlvbklkSXNWYWxpZCh3ZW50cnktPnhpZCkpCiAJCXZhbHVlc1tpKytdID0gVHJhbnNh Y3Rpb25JZEdldERhdHVtKHdlbnRyeS0+eGlkKTsKIAllbHNlCiAJCW51bGxzW2krK10gPSB0cnVl OwogCi0JLyogZXJyb3JfY291bnQgKi8KKwkvKiBsYXN0X2Vycm9yX2NvdW50ICovCiAJdmFsdWVz W2krK10gPSBJbnQ2NEdldERhdHVtKHdlbnRyeS0+ZXJyb3JfY291bnQpOwogCi0JLyogZXJyb3Jf bWVzc2FnZSAqLworCS8qIGxhc3RfZXJyb3JfbWVzc2FnZSAqLwogCXZhbHVlc1tpKytdID0gQ1N0 cmluZ0dldFRleHREYXR1bSh3ZW50cnktPmVycm9yX21lc3NhZ2UpOwogCiAJLyogZmlyc3RfZXJy b3JfdGltZSAqLwpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdCBi L3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQKaW5kZXggNTBlMWM3Yi4uMjVmNjg1ZiAx MDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdAorKysgYi9zcmMvaW5j bHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CkBAIC01MzkxLDcgKzUzOTEsNyBAQAogICBwcm9yZXR0 eXBlID0+ICdyZWNvcmQnLCBwcm9hcmd0eXBlcyA9PiAnb2lkIG9pZCcsCiAgIHByb2FsbGFyZ3R5 cGVzID0+ICd7b2lkLG9pZCxvaWQsb2lkLG9pZCx0ZXh0LHhpZCxpbnQ4LHRleHQsdGltZXN0YW1w dHosdGltZXN0YW1wdHp9JywKICAgcHJvYXJnbW9kZXMgPT4gJ3tpLGksbyxvLG8sbyxvLG8sbyxv LG99JywKLSAgcHJvYXJnbmFtZXMgPT4gJ3tzdWJpZCxzdWJyZWxpZCxzdWJpZCxzdWJyZWxpZCxy ZWxpZCxjb21tYW5kLHhpZCxlcnJvcl9jb3VudCxlcnJvcl9tZXNzYWdlLGZpcnN0X2Vycm9yX3Rp bWUsbGFzdF9lcnJvcl90aW1lfScsCisgIHByb2FyZ25hbWVzID0+ICd7c3ViaWQsc3VicmVsaWQs c3ViaWQsc3VicmVsaWQsbGFzdF9lcnJvcl9yZWxpZCxsYXN0X2Vycm9yX2NvbW1hbmQsbGFzdF9l cnJvcl94aWQsbGFzdF9lcnJvcl9jb3VudCxsYXN0X2Vycm9yX21lc3NhZ2UsZmlyc3RfZXJyb3Jf dGltZSxsYXN0X2Vycm9yX3RpbWV9JywKICAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF9zdWJzY3Jp cHRpb25fd29ya2VyJyB9LAogeyBvaWQgPT4gJzYxMTgnLCBkZXNjciA9PiAnc3RhdGlzdGljczog aW5mb3JtYXRpb24gYWJvdXQgc3Vic2NyaXB0aW9uJywKICAgcHJvbmFtZSA9PiAncGdfc3RhdF9n ZXRfc3Vic2NyaXB0aW9uJywgcHJvcm93cyA9PiAnMTAnLCBwcm9pc3N0cmljdCA9PiAnZicsCmRp ZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9leGVjdXRvci9leGVjUGFydGl0aW9uLmggYi9zcmMvaW5j bHVkZS9leGVjdXRvci9leGVjUGFydGl0aW9uLmgKaW5kZXggNjk0ZTM4Yi4uNGM3OTZhYiAxMDA2 NDQKLS0tIGEvc3JjL2luY2x1ZGUvZXhlY3V0b3IvZXhlY1BhcnRpdGlvbi5oCisrKyBiL3NyYy9p bmNsdWRlL2V4ZWN1dG9yL2V4ZWNQYXJ0aXRpb24uaApAQCAtMTEwLDYgKzExMCw3NSBAQCB0eXBl ZGVmIHN0cnVjdCBQYXJ0aXRpb25QcnVuZVN0YXRlCiAJUGFydGl0aW9uUHJ1bmluZ0RhdGEgKnBh cnRwcnVuZWRhdGFbRkxFWElCTEVfQVJSQVlfTUVNQkVSXTsKIH0gUGFydGl0aW9uUHJ1bmVTdGF0 ZTsKIAorLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICogUGFydGl0aW9uVHVwbGVSb3V0aW5n IC0gRW5jYXBzdWxhdGVzIGFsbCBpbmZvcm1hdGlvbiByZXF1aXJlZCB0bworICogcm91dGUgYSB0 dXBsZSBpbnNlcnRlZCBpbnRvIGEgcGFydGl0aW9uZWQgdGFibGUgdG8gb25lIG9mIGl0cyBsZWFm CisgKiBwYXJ0aXRpb25zLgorICoKKyAqIHBhcnRpdGlvbl9yb290CisgKgkJVGhlIHBhcnRpdGlv bmVkIHRhYmxlIHRoYXQncyB0aGUgdGFyZ2V0IG9mIHRoZSBjb21tYW5kLgorICoKKyAqIHBhcnRp dGlvbl9kaXNwYXRjaF9pbmZvCisgKgkJQXJyYXkgb2YgJ21heF9kaXNwYXRjaCcgZWxlbWVudHMg Y29udGFpbmluZyBhIHBvaW50ZXIgdG8gYQorICoJCVBhcnRpdGlvbkRpc3BhdGNoIG9iamVjdCBm b3IgZXZlcnkgcGFydGl0aW9uZWQgdGFibGUgdG91Y2hlZCBieSB0dXBsZQorICoJCXJvdXRpbmcu ICBUaGUgZW50cnkgZm9yIHRoZSB0YXJnZXQgcGFydGl0aW9uZWQgdGFibGUgaXMgKmFsd2F5cyoK KyAqCQlwcmVzZW50IGluIHRoZSAwdGggZWxlbWVudCBvZiB0aGlzIGFycmF5LiAgU2VlIGNvbW1l bnQgZm9yCisgKgkJUGFydGl0aW9uRGlzcGF0Y2hEYXRhLT5pbmRleGVzIGZvciBkZXRhaWxzIG9u IGhvdyB0aGlzIGFycmF5IGlzCisgKgkJaW5kZXhlZC4KKyAqCisgKiBub25sZWFmX3BhcnRpdGlv bnMKKyAqCQlBcnJheSBvZiAnbWF4X2Rpc3BhdGNoJyBlbGVtZW50cyBjb250YWluaW5nIHBvaW50 ZXJzIHRvIGZha2UKKyAqCQlSZXN1bHRSZWxJbmZvIG9iamVjdHMgZm9yIG5vbmxlYWYgcGFydGl0 aW9ucywgdXNlZnVsIGZvciBjaGVja2luZworICoJCXRoZSBwYXJ0aXRpb24gY29uc3RyYWludC4K KyAqCisgKiBudW1fZGlzcGF0Y2gKKyAqCQlUaGUgY3VycmVudCBudW1iZXIgb2YgaXRlbXMgc3Rv cmVkIGluIHRoZSAncGFydGl0aW9uX2Rpc3BhdGNoX2luZm8nCisgKgkJYXJyYXkuICBBbHNvIHNl cnZlcyBhcyB0aGUgaW5kZXggb2YgdGhlIG5leHQgZnJlZSBhcnJheSBlbGVtZW50IGZvcgorICoJ CW5ldyBQYXJ0aXRpb25EaXNwYXRjaCBvYmplY3RzIHRoYXQgbmVlZCB0byBiZSBzdG9yZWQuCisg KgorICogbWF4X2Rpc3BhdGNoCisgKgkJVGhlIGN1cnJlbnQgYWxsb2NhdGVkIHNpemUgb2YgdGhl ICdwYXJ0aXRpb25fZGlzcGF0Y2hfaW5mbycgYXJyYXkuCisgKgorICogcGFydGl0aW9ucworICoJ CUFycmF5IG9mICdtYXhfcGFydGl0aW9ucycgZWxlbWVudHMgY29udGFpbmluZyBhIHBvaW50ZXIg dG8gYQorICoJCVJlc3VsdFJlbEluZm8gZm9yIGV2ZXJ5IGxlYWYgcGFydGl0aW9uIHRvdWNoZWQg YnkgdHVwbGUgcm91dGluZy4KKyAqCQlTb21lIG9mIHRoZXNlIGFyZSBwb2ludGVycyB0byBSZXN1 bHRSZWxJbmZvcyB3aGljaCBhcmUgYm9ycm93ZWQgb3V0IG9mCisgKgkJdGhlIG93bmluZyBNb2Rp ZnlUYWJsZVN0YXRlIG5vZGUuICBUaGUgcmVtYWluZGVyIGhhdmUgYmVlbiBidWlsdAorICoJCWVz cGVjaWFsbHkgZm9yIHR1cGxlIHJvdXRpbmcuICBTZWUgY29tbWVudCBmb3IKKyAqCQlQYXJ0aXRp b25EaXNwYXRjaERhdGEtPmluZGV4ZXMgZm9yIGRldGFpbHMgb24gaG93IHRoaXMgYXJyYXkgaXMK KyAqCQlpbmRleGVkLgorICoKKyAqIGlzX2JvcnJvd2VkX3JlbAorICoJCUFycmF5IG9mICdtYXhf cGFydGl0aW9ucycgYm9vbGVhbnMgcmVjb3JkaW5nIHdoZXRoZXIgYSBnaXZlbiBlbnRyeQorICoJ CWluICdwYXJ0aXRpb25zJyBpcyBhIFJlc3VsdFJlbEluZm8gcG9pbnRlciBib3Jyb3dlZCBmcm9t IHRoZSBvd25pbmcKKyAqCQlNb2RpZnlUYWJsZVN0YXRlIG5vZGUsIHJhdGhlciB0aGFuIGJlaW5n IGJ1aWx0IGhlcmUuCisgKgorICogbnVtX3BhcnRpdGlvbnMKKyAqCQlUaGUgY3VycmVudCBudW1i ZXIgb2YgaXRlbXMgc3RvcmVkIGluIHRoZSAncGFydGl0aW9ucycgYXJyYXkuICBBbHNvCisgKgkJ c2VydmVzIGFzIHRoZSBpbmRleCBvZiB0aGUgbmV4dCBmcmVlIGFycmF5IGVsZW1lbnQgZm9yIG5l dworICoJCVJlc3VsdFJlbEluZm8gb2JqZWN0cyB0aGF0IG5lZWQgdG8gYmUgc3RvcmVkLgorICoK KyAqIG1heF9wYXJ0aXRpb25zCisgKgkJVGhlIGN1cnJlbnQgYWxsb2NhdGVkIHNpemUgb2YgdGhl ICdwYXJ0aXRpb25zJyBhcnJheS4KKyAqCisgKiBtZW1jeHQKKyAqCQlNZW1vcnkgY29udGV4dCB1 c2VkIHRvIGFsbG9jYXRlIHN1YnNpZGlhcnkgc3RydWN0cy4KKyAqLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KKyAqLworc3RydWN0IFBhcnRpdGlvblR1cGxlUm91dGluZworeworCVJlbGF0aW9uCXBh cnRpdGlvbl9yb290OworCVBhcnRpdGlvbkRpc3BhdGNoICpwYXJ0aXRpb25fZGlzcGF0Y2hfaW5m bzsKKwlSZXN1bHRSZWxJbmZvICoqbm9ubGVhZl9wYXJ0aXRpb25zOworCWludAkJCW51bV9kaXNw YXRjaDsKKwlpbnQJCQltYXhfZGlzcGF0Y2g7CisJUmVzdWx0UmVsSW5mbyAqKnBhcnRpdGlvbnM7 CisJYm9vbAkgICAqaXNfYm9ycm93ZWRfcmVsOworCWludAkJCW51bV9wYXJ0aXRpb25zOworCWlu dAkJCW1heF9wYXJ0aXRpb25zOworCU1lbW9yeUNvbnRleHQgbWVtY3h0OworfTsKKwogZXh0ZXJu IFBhcnRpdGlvblR1cGxlUm91dGluZyAqRXhlY1NldHVwUGFydGl0aW9uVHVwbGVSb3V0aW5nKEVT dGF0ZSAqZXN0YXRlLAogCQkJCQkJCQkJCQkJCQkJIFJlbGF0aW9uIHJlbCk7CiBleHRlcm4gUmVz dWx0UmVsSW5mbyAqRXhlY0ZpbmRQYXJ0aXRpb24oTW9kaWZ5VGFibGVTdGF0ZSAqbXRzdGF0ZSwK ZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcnVsZXMub3V0IGIvc3JjL3Rl c3QvcmVncmVzcy9leHBlY3RlZC9ydWxlcy5vdXQKaW5kZXggY2I2ZGEyYy4uZDYwYzVhNSAxMDA2 NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ydWxlcy5vdXQKKysrIGIvc3JjL3Rl c3QvcmVncmVzcy9leHBlY3RlZC9ydWxlcy5vdXQKQEAgLTIwOTcsMTEgKzIwOTcsMTEgQEAgcGdf c3RhdF9zdWJzY3JpcHRpb258IFNFTEVDVCBzdS5vaWQgQVMgc3ViaWQsCiBwZ19zdGF0X3N1YnNj cmlwdGlvbl93b3JrZXJzfCBTRUxFQ1Qgdy5zdWJpZCwKICAgICBzLnN1Ym5hbWUsCiAgICAgdy5z dWJyZWxpZCwKLSAgICB3LnJlbGlkLAotICAgIHcuY29tbWFuZCwKLSAgICB3LnhpZCwKLSAgICB3 LmVycm9yX2NvdW50LAotICAgIHcuZXJyb3JfbWVzc2FnZSwKKyAgICB3Lmxhc3RfZXJyb3JfcmVs aWQsCisgICAgdy5sYXN0X2Vycm9yX2NvbW1hbmQsCisgICAgdy5sYXN0X2Vycm9yX3hpZCwKKyAg ICB3Lmxhc3RfZXJyb3JfY291bnQsCisgICAgdy5sYXN0X2Vycm9yX21lc3NhZ2UsCiAgICAgdy5m aXJzdF9lcnJvcl90aW1lLAogICAgIHcubGFzdF9lcnJvcl90aW1lCiAgICBGUk9NICggU0VMRUNU IHBnX3N1YnNjcmlwdGlvbi5vaWQgQVMgc3ViaWQsCkBAIC0yMTEyLDcgKzIxMTIsNyBAQCBwZ19z dGF0X3N1YnNjcmlwdGlvbl93b3JrZXJzfCBTRUxFQ1Qgdy5zdWJpZCwKICAgICAgICAgICAgIHBn X3N1YnNjcmlwdGlvbl9yZWwuc3JyZWxpZCBBUyByZWxpZAogICAgICAgICAgICBGUk9NIHBnX3N1 YnNjcmlwdGlvbl9yZWwKICAgICAgICAgICBXSEVSRSAocGdfc3Vic2NyaXB0aW9uX3JlbC5zcnN1 YnN0YXRlIDw+ICdyJzo6ImNoYXIiKSkgc3IsCi0gICAgKExBVEVSQUwgcGdfc3RhdF9nZXRfc3Vi c2NyaXB0aW9uX3dvcmtlcihzci5zdWJpZCwgc3IucmVsaWQpIHcoc3ViaWQsIHN1YnJlbGlkLCBy ZWxpZCwgY29tbWFuZCwgeGlkLCBlcnJvcl9jb3VudCwgZXJyb3JfbWVzc2FnZSwgZmlyc3RfZXJy b3JfdGltZSwgbGFzdF9lcnJvcl90aW1lKQorICAgIChMQVRFUkFMIHBnX3N0YXRfZ2V0X3N1YnNj cmlwdGlvbl93b3JrZXIoc3Iuc3ViaWQsIHNyLnJlbGlkKSB3KHN1YmlkLCBzdWJyZWxpZCwgbGFz dF9lcnJvcl9yZWxpZCwgbGFzdF9lcnJvcl9jb21tYW5kLCBsYXN0X2Vycm9yX3hpZCwgbGFzdF9l cnJvcl9jb3VudCwgbGFzdF9lcnJvcl9tZXNzYWdlLCBmaXJzdF9lcnJvcl90aW1lLCBsYXN0X2Vy cm9yX3RpbWUpCiAgICAgIEpPSU4gcGdfc3Vic2NyaXB0aW9uIHMgT04gKCh3LnN1YmlkID0gcy5v aWQpKSk7CiBwZ19zdGF0X3N5c19pbmRleGVzfCBTRUxFQ1QgcGdfc3RhdF9hbGxfaW5kZXhlcy5y ZWxpZCwKICAgICBwZ19zdGF0X2FsbF9pbmRleGVzLmluZGV4cmVsaWQsCmRpZmYgLS1naXQgYS9z cmMvdGVzdC9zdWJzY3JpcHRpb24vdC8wMjZfZXJyb3JfcmVwb3J0LnBsIGIvc3JjL3Rlc3Qvc3Vi c2NyaXB0aW9uL3QvMDI2X2Vycm9yX3JlcG9ydC5wbAppbmRleCAxMjI3NjU0Li5jYTMwYWIyIDEw MDY0NAotLS0gYS9zcmMvdGVzdC9zdWJzY3JpcHRpb24vdC8wMjZfZXJyb3JfcmVwb3J0LnBsCisr KyBiL3NyYy90ZXN0L3N1YnNjcmlwdGlvbi90LzAyNl9lcnJvcl9yZXBvcnQucGwKQEAgLTE1LDgg KzE1LDggQEAgc3ViIHRlc3Rfc3Vic2NyaXB0aW9uX2Vycm9yCiAKICAgICBteSAkY2hlY2tfc3Fs ID0gcXFbCiBTRUxFQ1QgY291bnQoMSkgPiAwIEZST00gcGdfc3RhdF9zdWJzY3JpcHRpb25fd29y a2VycwotV0hFUkUgcmVsaWQgPSAnJHJlbG5hbWUnOjpyZWdjbGFzc107Ci0gICAgJGNoZWNrX3Nx bCAuPSAiIEFORCB4aWQgPSAnJHhpZCc6OnhpZDsiIGlmICR4aWQgbmUgJyc7CitXSEVSRSBsYXN0 X2Vycm9yX3JlbGlkID0gJyRyZWxuYW1lJzo6cmVnY2xhc3NdOworICAgICRjaGVja19zcWwgLj0g IiBBTkQgbGFzdF9lcnJvcl94aWQgPSAnJHhpZCc6OnhpZDsiIGlmICR4aWQgbmUgJyc7CiAKICAg ICAjIFdhaXQgZm9yIHRoZSBlcnJvciBzdGF0aXN0aWNzIHRvIGJlIHVwZGF0ZWQuCiAgICAgJG5v ZGUtPnBvbGxfcXVlcnlfdW50aWwoCkBAIC0yNiw5ICsyNiw5IEBAIFdIRVJFIHJlbGlkID0gJyRy ZWxuYW1lJzo6cmVnY2xhc3NdOwogICAgIG15ICRyZXN1bHQgPSAkbm9kZS0+c2FmZV9wc3FsKAog CSdwb3N0Z3JlcycsCiAJcXFbCi1TRUxFQ1Qgc3VibmFtZSwgY29tbWFuZCwgcmVsaWQ6OnJlZ2Ns YXNzLCBlcnJvcl9jb3VudCA+IDAKK1NFTEVDVCBzdWJuYW1lLCBsYXN0X2Vycm9yX2NvbW1hbmQs IGxhc3RfZXJyb3JfcmVsaWQ6OnJlZ2NsYXNzLCBsYXN0X2Vycm9yX2NvdW50ID4gMAogRlJPTSBw Z19zdGF0X3N1YnNjcmlwdGlvbl93b3JrZXJzCi1XSEVSRSByZWxpZCA9ICckcmVsbmFtZSc6OnJl Z2NsYXNzOworV0hFUkUgbGFzdF9lcnJvcl9yZWxpZCA9ICckcmVsbmFtZSc6OnJlZ2NsYXNzOwog XSk7CiAgICAgaXMoJHJlc3VsdCwgJGV4cGVjdGVkX2Vycm9yLCAkbXNnKTsKIH0KLS0gCjIuMi4w Cgo= --_003_TYCPR01MB8373FEB287F733C81C1E4D42ED989TYCPR01MB8373jpnp_ Content-Type: application/octet-stream; name="v10-0002-Extend-pg_stat_subscription_workers-to-include-g.patch" Content-Description: v10-0002-Extend-pg_stat_subscription_workers-to-include-g.patch Content-Disposition: attachment; filename="v10-0002-Extend-pg_stat_subscription_workers-to-include-g.patch"; size=54518; creation-date="Mon, 15 Nov 2021 09:27:07 GMT"; modification-date="Mon, 15 Nov 2021 09:27:07 GMT" Content-Transfer-Encoding: base64 RnJvbSBmZTI1NTRlYzdmNjY3Y2MyOGE0MTI1YWE0OGZiNzRkOTA0ZTUyZGEwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBPc3VtaSBUYWthbWljaGkgPG9zdW1pLnRha2FtaWNoaUBmdWpp dHN1LmNvbT4KRGF0ZTogTW9uLCAxNSBOb3YgMjAyMSAwODo0NzowNCArMDAwMApTdWJqZWN0OiBb UEFUQ0ggdjEwIDIvMl0gRXh0ZW5kIHBnX3N0YXRfc3Vic2NyaXB0aW9uX3dvcmtlcnMgdG8gaW5j bHVkZQogZ2VuZXJhbCB0cmFuc2FjdGlvbiBzdGF0aXN0aWNzCgpDYXRlZ29yaXplIHRyYW5zYWN0 aW9ucyBvZiBsb2dpY2FsIHJlcGxpY2F0aW9uIHN1YnNjcmliZXIKaW50byB0aHJlZSB0eXBlcyAo Y29tbWl0LCBlcnJvciwgYWJvcnQpIGFuZCBpbnRyb2R1Y2UKY3VtdWxhdGl2ZSBjb2x1bW5zIG9m IHRob3NlIG51bWJlcnMgYW5kIGFtb3VudHMgb2YKY29uc3VtZWQgZGF0YSBkdXJpbmcgbWVzc2Fn ZSBhcHBseSByZXNwZWN0aXZlbHkuCgpUaGUgY2FsY3VsYXRpb24gb2YgY29uc3VtZWQgcmVzb3Vy Y2VzIGJ5IHN1YnNjcmliZXIncyBhcHBseQppcyBjb21wdXRlZCBiYXNlZCBvbiB0aGUgZGF0YSBz dHJ1Y3R1cmUgZm9yIG1lc3NhZ2UgYXBwbHkKYW5kIGV4dHJhIGRhdGEsIHdoaWNoIGlzIGRpZmZl cmVudCBmcm9tIHRoYXQgb2YgcHVibGlzaGVyJ3MKZGVjb2RpbmcgcHJvY2Vzc2luZy4gQXQgcHJl c2VudCwgdGhlcmUncyBubyBzcGVjaWFsIGNvbnNpZGVyYXRpb24KdG8gc3Bvb2wgZmlsZSBzdGF0 aXN0aWNzIHN1Y2ggYXMgYW1vdW50IG9mIGRhdGEgc3Bvb2xlZCB0byBkaXNrIG9yCml0cyBjb3Vu dC4gQnV0LCB0aGlzIGNhbiBiZSBhZGRlZCBsYXRlci4KClRoZSBhbW91bnQgb2YgZGF0YSB1c2Vk IGJ5IGFwcGx5IGZvciBTVFJFQU0gQ09NTUlUIGFuZApTVFJFQU0gUFJFUEFSRSBpcyB0cmFuc2Fj dGlvbiBkYXRhIGNvbnN1bXB0aW9uIGFuZCBjYW4gYmUKcmVnYXJkZWQgYXMgZGF0YSB0aGF0IHNo b3VsZCBiZSBhZGRlZCB0byBjb2x1bW4gb2YgdGhpcyBjb21taXQuClRoaXMgc2l6ZSBvZiBwcmVw YXJlZCB0cmFuc2FjdGlvbiBiZWNvbWVzIHBlcnNpc3RlbnQgdG8gY29uY2x1ZGUKdGhlIGFwcHJv cHJpYXRlIGNhdGVnb3J5IGZvciB0aGUgdHJhbnNhY3Rpb24gYXQgZWl0aGVyIGNvbW1pdApwcmVw YXJlZCBvciByb2xsYmFjayBwcmVwYXJlZCB0aW1lLgoKQXV0aG9yOiBUYWthbWljaGkgT3N1bWkK RGlzY3Vzc2VkICYgUmV2aWV3ZWQtYnk6IEFtaXQgS2FwaWxhLCBNYXNhaGlrbyBTYXdhZGEsIEhv dSBaaGlqaWUsIEdyZWcgTmFuY2Fycm93LCBWaWduZXNoIEMsIEFqaW4gQ2hlcmlhbgpEaXNjdXNz aW9uOiBodHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9tZXNzYWdlLWlkL09TQlBSMDFNQjQ4ODg3 Q0E4RjQwQzhEOTg0QTZEQzAwQ0VEMTk5JTQwT1NCUFIwMU1CNDg4OC5qcG5wcmQwMS5wcm9kLm91 dGxvb2suY29tCi0tLQogZG9jL3NyYy9zZ21sL21vbml0b3Jpbmcuc2dtbCAgICAgICAgICAgICAg ICAgICAgIHwgIDcxICsrKystCiBzcmMvYmFja2VuZC9jYXRhbG9nL3N5c3RlbV92aWV3cy5zcWwg ICAgICAgICAgICAgfCAgIDYgKwogc3JjL2JhY2tlbmQvcG9zdG1hc3Rlci9wZ3N0YXQuYyAgICAg ICAgICAgICAgICAgIHwgMzI0ICsrKysrKysrKysrKysrKysrKysrKystCiBzcmMvYmFja2VuZC9y ZXBsaWNhdGlvbi9sb2dpY2FsL3Byb3RvLmMgICAgICAgICAgfCAgMTIgKwogc3JjL2JhY2tlbmQv cmVwbGljYXRpb24vbG9naWNhbC90YWJsZXN5bmMuYyAgICAgIHwgICA2ICsKIHNyYy9iYWNrZW5k L3JlcGxpY2F0aW9uL2xvZ2ljYWwvd29ya2VyLmMgICAgICAgICB8IDE2OSArKysrKysrKysrKy0K IHNyYy9iYWNrZW5kL3V0aWxzL2FkdC9wZ3N0YXRmdW5jcy5jICAgICAgICAgICAgICB8ICAzNiAr Ky0KIHNyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQgICAgICAgICAgICAgICAgICB8ICAg NiArLQogc3JjL2luY2x1ZGUvcGdzdGF0LmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg MTA1ICsrKysrKystCiBzcmMvaW5jbHVkZS9yZXBsaWNhdGlvbi9sb2dpY2Fsd29ya2VyLmggICAg ICAgICAgfCAgIDUgKwogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ydWxlcy5vdXQgICAgICAg ICAgICAgIHwgICA4ICstCiBzcmMvdGVzdC9zdWJzY3JpcHRpb24vdC8wMjdfd29ya2VyX3hhY3Rf c3RhdHMucGwgfCAxNDYgKysrKysrKysrKwogc3JjL3Rvb2xzL3BnaW5kZW50L3R5cGVkZWZzLmxp c3QgICAgICAgICAgICAgICAgIHwgICA0ICsKIDEzIGZpbGVzIGNoYW5nZWQsIDg3NSBpbnNlcnRp b25zKCspLCAyMyBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmMvdGVzdC9zdWJz Y3JpcHRpb24vdC8wMjdfd29ya2VyX3hhY3Rfc3RhdHMucGwKCmRpZmYgLS1naXQgYS9kb2Mvc3Jj L3NnbWwvbW9uaXRvcmluZy5zZ21sIGIvZG9jL3NyYy9zZ21sL21vbml0b3Jpbmcuc2dtbAppbmRl eCA4Yjc5MjBjLi5mMGI5ZjM1IDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvbW9uaXRvcmluZy5z Z21sCisrKyBiL2RvYy9zcmMvc2dtbC9tb25pdG9yaW5nLnNnbWwKQEAgLTYyOSw4ICs2MjksOCBA QCBwb3N0Z3JlcyAgIDI3MDkzICAwLjAgIDAuMCAgMzAwOTYgIDI3NTIgPyAgICAgICAgU3MgICAx MTozNCAgIDA6MDAgcG9zdGdyZXM6IHNlcgogCiAgICAgIDxyb3c+CiAgICAgICA8ZW50cnk+PHN0 cnVjdG5hbWU+cGdfc3RhdF9zdWJzY3JpcHRpb25fd29ya2Vyczwvc3RydWN0bmFtZT48aW5kZXh0 ZXJtPjxwcmltYXJ5PnBnX3N0YXRfc3Vic2NyaXB0aW9uX3dvcmtlcnM8L3ByaW1hcnk+PC9pbmRl eHRlcm0+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5PbmUgcm93IHBlciBzdWJzY3JpcHRpb24gd29y a2VyLCBzaG93aW5nIHN0YXRpc3RpY3MgYWJvdXQgZXJyb3JzCi0gICAgICB0aGF0IG9jY3VycmVk IG9uIHRoYXQgc3Vic2NyaXB0aW9uIHdvcmtlci4KKyAgICAgIDxlbnRyeT5PbmUgcm93IHBlciBz dWJzY3JpcHRpb24gd29ya2VyLCBzaG93aW5nIHRyYW5zYWN0aW9uIHN0YXRpc3RpY3MKKyAgICAg IGFuZCBpbmZvcm1hdGlvbiBhYm91dCBlcnJvcnMgdGhhdCBvY2N1cnJlZCBvbiB0aGF0IHN1YnNj cmlwdGlvbiB3b3JrZXIuCiAgICAgICBTZWUgPGxpbmsgbGlua2VuZD0ibW9uaXRvcmluZy1wZy1z dGF0LXN1YnNjcmlwdGlvbi13b3JrZXJzIj4KICAgICAgIDxzdHJ1Y3RuYW1lPnBnX3N0YXRfc3Vi c2NyaXB0aW9uX3dvcmtlcnM8L3N0cnVjdG5hbWU+PC9saW5rPiBmb3IgZGV0YWlscy4KICAgICAg IDwvZW50cnk+CkBAIC0zMDUyLDEwICszMDUyLDEyIEBAIFNFTEVDVCBwaWQsIHdhaXRfZXZlbnRf dHlwZSwgd2FpdF9ldmVudCBGUk9NIHBnX3N0YXRfYWN0aXZpdHkgV0hFUkUgd2FpdF9ldmVudCBp CiAKICAgPHBhcmE+CiAgICBUaGUgPHN0cnVjdG5hbWU+cGdfc3RhdF9zdWJzY3JpcHRpb25fd29y a2Vyczwvc3RydWN0bmFtZT4gdmlldyB3aWxsIGNvbnRhaW4KLSAgIG9uZSByb3cgcGVyIHN1YnNj cmlwdGlvbiBlcnJvciByZXBvcnRlZCBieSB3b3JrZXJzIGFwcGx5aW5nIGxvZ2ljYWwKKyAgIG9u ZSByb3cgcGVyIHN1YnNjcmlwdGlvbiwgc2hvd2luZyBjb3JyZXNwb25kaW5nIHRyYW5zYWN0aW9u IHN0YXRpc3RpY3MgYW5kCisgICBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZXJyb3IgcmVwb3J0ZWQg Ynkgd29ya2VycyBhcHBseWluZyBsb2dpY2FsCiAgICByZXBsaWNhdGlvbiBjaGFuZ2VzIGFuZCB3 b3JrZXJzIGhhbmRsaW5nIHRoZSBpbml0aWFsIGRhdGEgY29weSBvZiB0aGUKICAgIHN1YnNjcmli ZWQgdGFibGVzLiAgVGhlIHN0YXRpc3RpY3MgZW50cnkgaXMgcmVtb3ZlZCB3aGVuIHRoZSBzdWJz Y3JpcHRpb24KLSAgIHRoZSB3b3JrZXIgaXMgcnVubmluZyBvbiBpcyByZW1vdmVkLgorICAgdGhl IHdvcmtlciBpcyBydW5uaW5nIG9uIGlzIHJlbW92ZWQuIFRoZSBzdGF0aXN0aWNzIG9mIHRyYW5z YWN0aW9uIHNpemUgaXMKKyAgIHV0aWxpemVkIG9ubHkgYnkgdGhlIGFwcGx5IHdvcmtlci4KICAg PC9wYXJhPgogCiAgIDx0YWJsZSBpZD0icGctc3RhdC1zdWJzY3JpcHRpb24td29ya2VycyIgeHJl ZmxhYmVsPSJwZ19zdGF0X3N1YnNjcmlwdGlvbl93b3JrZXJzIj4KQEAgLTMxMDMsNiArMzEwNSw2 NyBAQCBTRUxFQ1QgcGlkLCB3YWl0X2V2ZW50X3R5cGUsIHdhaXRfZXZlbnQgRlJPTSBwZ19zdGF0 X2FjdGl2aXR5IFdIRVJFIHdhaXRfZXZlbnQgaQogCiAgICAgIDxyb3c+CiAgICAgICA8ZW50cnkg cm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24i PgorICAgICAgIDxzdHJ1Y3RmaWVsZD5jb21taXRfY291bnQ8L3N0cnVjdGZpZWxkPiA8dHlwZT5i aWdpbnQ8L3R5cGU+CisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAgICBOdW1iZXIg b2YgdHJhbnNhY3Rpb25zIHN1Y2Nlc3NmdWxseSBhcHBsaWVkIGluIHRoaXMgc3Vic2NyaXB0aW9u LgorICAgICAgIENPTU1JVCwgQ09NTUlUIG9mIHN0cmVhbWluZyB0cmFuc2FjdGlvbiBhbmQgQ09N TUlUIFBSRVBBUkVEIGluY3JlbWVudHMKKyAgICAgICB0aGlzIGNvdW50ZXIuCisgICAgICA8L3Bh cmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisKKyAgICAgPHJvdz4KKyAgICAgIDxlbnRyeSByb2xl PSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+Cisg ICAgICAgPHN0cnVjdGZpZWxkPmNvbW1pdF9ieXRlczwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2lu dDwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIEFtb3VudCBvZiBk YXRhIChpbiBieXRlcykgc3VjY2Vzc2Z1bGx5IGFwcGxpZWQgaW4gdGhpcyBzdWJzY3JpcHRpb24s CisgICAgICAgYWNyb3NzIDxsaXRlcmFsPmNvbW1pdF9jb3VudDwvbGl0ZXJhbD4gdHJhbnNhY3Rp b25zLgorICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAgIDwvcm93PgorCisgICAgIDxyb3c+Cisg ICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1u X2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5lcnJvcl9jb3VudDwvc3RydWN0Zmll bGQ+IDx0eXBlPmJpZ2ludDwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAg ICAgIE51bWJlciBvZiB0cmFuc2FjdGlvbnMgdGhhdCBmYWlsZWQgdG8gYmUgYXBwbGllZCBieSB0 aGUgdGFibGUKKyAgICAgICBzeW5jIHdvcmtlciBvciBtYWluIGFwcGx5IHdvcmtlciBpbiB0aGlz IHN1YnNjcmlwdGlvbi4KKyAgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisKKyAg ICAgPHJvdz4KKyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSBy b2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPmVycm9yX2J5dGVz PC9zdHJ1Y3RmaWVsZD4gPHR5cGU+YmlnaW50PC90eXBlPgorICAgICAgPC9wYXJhPgorICAgICAg PHBhcmE+CisgICAgICAgQW1vdW50IG9mIGRhdGEgKGluIGJ5dGVzKSB1bnN1Y2Nlc3NmdWxseSBh cHBsaWVkIGluIHRoaXMgc3Vic2NyaXB0aW9uLAorICAgICAgIGFjcm9zcyA8bGl0ZXJhbD5lcnJv cl9jb3VudDwvbGl0ZXJhbD4gdHJhbnNhY3Rpb25zLgorICAgICAgPC9wYXJhPjwvZW50cnk+Cisg ICAgIDwvcm93PgorCisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJs ZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3Rm aWVsZD5hYm9ydF9jb3VudDwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2ludDwvdHlwZT4KKyAgICAg IDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE51bWJlciBvZiB0cmFuc2FjdGlvbnMgYWJv cnRlZCBpbiB0aGlzIHN1YnNjcmlwdGlvbi4KKyAgICAgICBST0xMQkFDSyBQUkVQQVJFRCBpbmNy ZW1lbnRzIHRoaXMgY291bnRlci4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4K KworICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxw YXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAgICA8c3RydWN0ZmllbGQ+YWJvcnRf Ynl0ZXM8L3N0cnVjdGZpZWxkPiA8dHlwZT5iaWdpbnQ8L3R5cGU+CisgICAgICA8L3BhcmE+Cisg ICAgICA8cGFyYT4KKyAgICAgICBBbW91bnQgb2YgZGF0YSAoaW4gYnl0ZXMpIGFib3J0ZWQgaW4g dGhpcyBzdWJzY3JpcHRpb24sCisgICAgICAgYWNyb3NzIDxsaXRlcmFsPmFib3J0X2NvdW50PC9s aXRlcmFsPiB0cmFuc2FjdGlvbnMuCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+ CisKKyAgICAgPHJvdz4KKyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48 cGFyYSByb2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+CiAgICAgICAgPHN0cnVjdGZpZWxkPmxhc3Rf ZXJyb3JfcmVsaWQ8L3N0cnVjdGZpZWxkPiA8dHlwZT5vaWQ8L3R5cGU+CiAgICAgICA8L3BhcmE+ CiAgICAgICA8cGFyYT4KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3Zp ZXdzLnNxbCBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbAppbmRleCBlY2Yx YTBiLi5hODg4MGU4IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9nL3N5c3RlbV92aWV3 cy5zcWwKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fdmlld3Muc3FsCkBAIC0xMjY3 LDYgKzEyNjcsMTIgQEAgQ1JFQVRFIFZJRVcgcGdfc3RhdF9zdWJzY3JpcHRpb25fd29ya2VycyBB UwogICAgICAgICB3LnN1YmlkLAogICAgICAgICBzLnN1Ym5hbWUsCiAgICAgICAgIHcuc3VicmVs aWQsCisgICAgICAgIHcuY29tbWl0X2NvdW50LAorICAgICAgICB3LmNvbW1pdF9ieXRlcywKKyAg ICAgICAgdy5lcnJvcl9jb3VudCwKKyAgICAgICAgdy5lcnJvcl9ieXRlcywKKyAgICAgICAgdy5h Ym9ydF9jb3VudCwKKyAgICAgICAgdy5hYm9ydF9ieXRlcywKICAgICAgICAgdy5sYXN0X2Vycm9y X3JlbGlkLAogICAgICAgICB3Lmxhc3RfZXJyb3JfY29tbWFuZCwKICAgICAgICAgdy5sYXN0X2Vy cm9yX3hpZCwKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3Bvc3RtYXN0ZXIvcGdzdGF0LmMgYi9z cmMvYmFja2VuZC9wb3N0bWFzdGVyL3Bnc3RhdC5jCmluZGV4IGE2MjAzNzkuLmM0ZGYwMTAgMTAw NjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3Bvc3RtYXN0ZXIvcGdzdGF0LmMKKysrIGIvc3JjL2JhY2tl bmQvcG9zdG1hc3Rlci9wZ3N0YXQuYwpAQCAtNTMsNiArNTMsNyBAQAogI2luY2x1ZGUgInBvc3Rt YXN0ZXIvZm9ya19wcm9jZXNzLmgiCiAjaW5jbHVkZSAicG9zdG1hc3Rlci9pbnRlcnJ1cHQuaCIK ICNpbmNsdWRlICJwb3N0bWFzdGVyL3Bvc3RtYXN0ZXIuaCIKKyNpbmNsdWRlICJyZXBsaWNhdGlv bi9sb2dpY2Fsd29ya2VyLmgiCiAjaW5jbHVkZSAicmVwbGljYXRpb24vc2xvdC5oIgogI2luY2x1 ZGUgInJlcGxpY2F0aW9uL3dhbHNlbmRlci5oIgogI2luY2x1ZGUgInN0b3JhZ2UvYmFja2VuZGlk LmgiCkBAIC0zMjUsMTEgKzMyNiwxNCBAQCBzdGF0aWMgUGdTdGF0X1N0YXRUYWJFbnRyeSAqcGdz dGF0X2dldF90YWJfZW50cnkoUGdTdGF0X1N0YXREQkVudHJ5ICpkYmVudHJ5LAogc3RhdGljIFBn U3RhdF9TdGF0U3ViV29ya2VyRW50cnkgKnBnc3RhdF9nZXRfc3Vid29ya2VyX2VudHJ5KFBnU3Rh dF9TdGF0REJFbnRyeSAqZGJlbnRyeSwKIAkJCQkJCQkJCQkJCQkJCSBPaWQgc3ViaWQsIE9pZCBz dWJyZWxpZCwKIAkJCQkJCQkJCQkJCQkJCSBib29sIGNyZWF0ZSk7CitzdGF0aWMgUGdTdGF0X1NX X1ByZXBhcmVkWGFjdEVudHJ5ICpwZ3N0YXRfZ2V0X3N1Yndvcmtlcl9wcmVwYXJlZF90eG4oT2lk IGRhdGFiYXNlaWQsIE9pZCBzdWJpZCwKKwkJCQkJCQkJCQkJCQkJCQkJICBjaGFyICpnaWQsIGJv b2wgY3JlYXRlKTsKKwogc3RhdGljIHZvaWQgcGdzdGF0X3dyaXRlX3N0YXRzZmlsZXMoYm9vbCBw ZXJtYW5lbnQsIGJvb2wgYWxsRGJzKTsKIHN0YXRpYyB2b2lkIHBnc3RhdF93cml0ZV9kYl9zdGF0 c2ZpbGUoUGdTdGF0X1N0YXREQkVudHJ5ICpkYmVudHJ5LCBib29sIHBlcm1hbmVudCk7CiBzdGF0 aWMgSFRBQiAqcGdzdGF0X3JlYWRfc3RhdHNmaWxlcyhPaWQgb25seWRiLCBib29sIHBlcm1hbmVu dCwgYm9vbCBkZWVwKTsKIHN0YXRpYyB2b2lkIHBnc3RhdF9yZWFkX2RiX3N0YXRzZmlsZShPaWQg ZGF0YWJhc2VpZCwgSFRBQiAqdGFiaGFzaCwgSFRBQiAqZnVuY2hhc2gsCi0JCQkJCQkJCQkgSFRB QiAqc3Vid29ya2VyaGFzaCwgYm9vbCBwZXJtYW5lbnQpOworCQkJCQkJCQkJIEhUQUIgKnN1Yndv cmtlcmhhc2gsIEhUQUIgKnByZXBhcmVkdHhuaGFzaCwgYm9vbCBwZXJtYW5lbnQpOwogc3RhdGlj IHZvaWQgYmFja2VuZF9yZWFkX3N0YXRzZmlsZSh2b2lkKTsKIAogc3RhdGljIGJvb2wgcGdzdGF0 X3dyaXRlX3N0YXRzZmlsZV9uZWVkZWQodm9pZCk7CkBAIC0zODIsNiArMzg2LDkgQEAgc3RhdGlj IHZvaWQgcGdzdGF0X3JlY3ZfcmVwbHNsb3QoUGdTdGF0X01zZ1JlcGxTbG90ICptc2csIGludCBs ZW4pOwogc3RhdGljIHZvaWQgcGdzdGF0X3JlY3ZfdGVtcGZpbGUoUGdTdGF0X01zZ1RlbXBGaWxl ICptc2csIGludCBsZW4pOwogc3RhdGljIHZvaWQgcGdzdGF0X3JlY3Zfc3Vic2NyaXB0aW9uX3B1 cmdlKFBnU3RhdF9Nc2dTdWJzY3JpcHRpb25QdXJnZSAqbXNnLCBpbnQgbGVuKTsKIHN0YXRpYyB2 b2lkIHBnc3RhdF9yZWN2X3N1Yndvcmtlcl9lcnJvcihQZ1N0YXRfTXNnU3ViV29ya2VyRXJyb3Ig Km1zZywgaW50IGxlbik7CitzdGF0aWMgdm9pZCBwZ3N0YXRfcmVjdl9zdWJ3b3JrZXJfeGFjdF9l bmQoUGdTdGF0X01zZ1N1YldvcmtlclhhY3RFbmQgKm1zZywgaW50IGxlbik7CitzdGF0aWMgdm9p ZCBwZ3N0YXRfcmVjdl9zdWJ3b3JrZXJfdHdvcGhhc2VfeGFjdChQZ1N0YXRfTXNnU3ViV29ya2Vy VHdvcGhhc2VYYWN0ICptc2csIGludCBsZW4pOworCiAKIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICogUHVibGljIGZ1bmN0 aW9ucyBjYWxsZWQgZnJvbSBwb3N0bWFzdGVyIGZvbGxvdwpAQCAtMTkzMCw2ICsxOTM3LDYxIEBA IHBnc3RhdF9yZXBvcnRfcmVwbHNsb3RfZHJvcChjb25zdCBjaGFyICpzbG90bmFtZSkKIH0KIAog LyogLS0tLS0tLS0tLQorICogcGdzdGF0X3JlcG9ydF9zdWJ3b3JrZXJfeGFjdF9lbmQoKSAtCisg KgorICogIFRlbGwgdGhlIGNvbGxlY3RvciB0aGF0IHdvcmtlciB0cmFuc2FjdGlvbiBoYXMgc3Vj Y2Vzc2Z1bGx5IGNvbXBsZXRlZC4KKyAqIC0tLS0tLS0tLS0KKyAqLwordm9pZAorcGdzdGF0X3Jl cG9ydF9zdWJ3b3JrZXJfeGFjdF9lbmQoT2lkIHN1YmlkLCBPaWQgc3VicmVsLAorCQkJCQkJCQkg TG9naWNhbFJlcE1zZ1R5cGUgY29tbWFuZCwgUGdTdGF0X0NvdW50ZXIgeGFjdF9zaXplKQorewor CVBnU3RhdF9Nc2dTdWJXb3JrZXJYYWN0RW5kIG1zZzsKKworCUFzc2VydChjb21tYW5kID09IDAg LyogdGFibGUgc3luYyB3b3JrZXIgKi8gfHwKKwkJICAgY29tbWFuZCA9PSBMT0dJQ0FMX1JFUF9N U0dfQ09NTUlUIHx8CisJCSAgIGNvbW1hbmQgPT0gTE9HSUNBTF9SRVBfTVNHX1NUUkVBTV9DT01N SVQpOworCisJcGdzdGF0X3NldGhlYWRlcigmbXNnLm1faGRyLCBQR1NUQVRfTVRZUEVfU1VCV09S S0VSWEFDVEVORCk7CisJbXNnLm1fZGF0YWJhc2VpZCA9IE15RGF0YWJhc2VJZDsKKwltc2cubV9z dWJpZCA9IHN1YmlkOworCW1zZy5tX3N1YnJlbGlkID0gc3VicmVsOworCW1zZy5tX2NvbW1hbmQg PSBjb21tYW5kOworCW1zZy5tX3hhY3RfYnl0ZXMgPSB4YWN0X3NpemU7CisJcGdzdGF0X3NlbmQo Jm1zZywgc2l6ZW9mKFBnU3RhdF9Nc2dTdWJXb3JrZXJYYWN0RW5kKSk7CisKKwlyZXNldF9hcHBs eV9lcnJvcl9jb250ZXh0X3hhY3Rfc2l6ZSgpOworfQorCisvKiAtLS0tLS0tLS0tCisgKiBwZ3N0 YXRfcmVwb3J0X3N1Yndvcmtlcl90d29waGFzZV94YWN0KCkgLQorICoKKyAqICBUZWxsIHRoZSBj b2xsZWN0b3IgdGhhdCB3b3JrZXIgdHJhbnNhY3Rpb24gaGFzIGRvbmUgMlBDIHJlbGF0ZWQgb3Bl cmF0aW9uLgorICogLS0tLS0tLS0tLQorICovCit2b2lkCitwZ3N0YXRfcmVwb3J0X3N1Yndvcmtl cl90d29waGFzZV94YWN0KE9pZCBzdWJpZCwgTG9naWNhbFJlcE1zZ1R5cGUgY29tbWFuZCwKKwkJ CQkJCQkJCSAgUGdTdGF0X0NvdW50ZXIgeGFjdF9zaXplLCBjaGFyICpnaWQpCit7CisJUGdTdGF0 X01zZ1N1YldvcmtlclR3b3BoYXNlWGFjdCBtc2c7CisKKwlBc3NlcnQoY29tbWFuZCA9PSBMT0dJ Q0FMX1JFUF9NU0dfUFJFUEFSRSB8fAorCQkgICBjb21tYW5kID09IExPR0lDQUxfUkVQX01TR19T VFJFQU1fUFJFUEFSRSB8fAorCQkgICBjb21tYW5kID09IExPR0lDQUxfUkVQX01TR19DT01NSVRf UFJFUEFSRUQgfHwKKwkJICAgY29tbWFuZCA9PSBMT0dJQ0FMX1JFUF9NU0dfUk9MTEJBQ0tfUFJF UEFSRUQpOworCisJLyogc2V0dXAgdGhlIG1lc3NhZ2UgKi8KKwlwZ3N0YXRfc2V0aGVhZGVyKCZt c2cubV9oZHIsIFBHU1RBVF9NVFlQRV9TVUJXT1JLRVJUV09QSEFTRVhBQ1QpOworCW1zZy5tX2Rh dGFiYXNlaWQgPSBNeURhdGFiYXNlSWQ7CisJbXNnLm1fc3ViaWQgPSBzdWJpZDsKKwltc2cubV9j b21tYW5kID0gY29tbWFuZDsKKwlzdHJsY3B5KG1zZy5tX2dpZCwgZ2lkLCBzaXplb2YobXNnLm1f Z2lkKSk7CisJbXNnLm1feGFjdF9ieXRlcyA9IHhhY3Rfc2l6ZTsKKwlwZ3N0YXRfc2VuZCgmbXNn LCBzaXplb2YoUGdTdGF0X01zZ1N1YldvcmtlclR3b3BoYXNlWGFjdCkpOworCXJlc2V0X2FwcGx5 X2Vycm9yX2NvbnRleHRfeGFjdF9zaXplKCk7Cit9CisKKy8qIC0tLS0tLS0tLS0KICAqIHBnc3Rh dF9yZXBvcnRfc3Vid29ya2VyX2Vycm9yKCkgLQogICoKICAqCVRlbGwgdGhlIGNvbGxlY3RvciBh Ym91dCB0aGUgc3Vic2NyaXB0aW9uIHdvcmtlciBlcnJvci4KQEAgLTE5NTAsNiArMjAxMiw3IEBA IHBnc3RhdF9yZXBvcnRfc3Vid29ya2VyX2Vycm9yKE9pZCBzdWJpZCwgT2lkIHN1YnJlbGlkLCBP aWQgcmVsaWQsCiAJbXNnLm1fZGF0YWJhc2VpZCA9IE15RGF0YWJhc2VJZDsKIAltc2cubV9zdWJp ZCA9IHN1YmlkOwogCW1zZy5tX3N1YnJlbGlkID0gc3VicmVsaWQ7CisJbXNnLm1feGFjdF9lcnJv cl9ieXRlcyA9IGdldF9hcHBseV9lcnJvcl9jb250ZXh0X3hhY3Rfc2l6ZSgpOwogCW1zZy5tX3Jl bGlkID0gcmVsaWQ7CiAJbXNnLm1fY29tbWFuZCA9IGNvbW1hbmQ7CiAJbXNnLm1feGlkID0geGlk OwpAQCAtMTk1Nyw2ICsyMDIwLDggQEAgcGdzdGF0X3JlcG9ydF9zdWJ3b3JrZXJfZXJyb3IoT2lk IHN1YmlkLCBPaWQgc3VicmVsaWQsIE9pZCByZWxpZCwKIAlzdHJsY3B5KG1zZy5tX21lc3NhZ2Us IGVycm1zZywgUEdTVEFUX1NVQldPUktFUkVSUk9SX01TR0xFTik7CiAKIAlwZ3N0YXRfc2VuZCgm bXNnLCBsZW4pOworCisJcmVzZXRfYXBwbHlfZXJyb3JfY29udGV4dF94YWN0X3NpemUoKTsKIH0K IAogLyogLS0tLS0tLS0tLQpAQCAtMzcyNyw2ICszNzkyLDE0IEBAIFBnc3RhdENvbGxlY3Rvck1h aW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKIAkJCQkJcGdzdGF0X3JlY3Zfc3Vid29ya2VyX2Vy cm9yKCZtc2cubXNnX3N1YndvcmtlcmVycm9yLCBsZW4pOwogCQkJCQlicmVhazsKIAorCQkJCWNh c2UgUEdTVEFUX01UWVBFX1NVQldPUktFUlhBQ1RFTkQ6CisJCQkJCXBnc3RhdF9yZWN2X3N1Yndv cmtlcl94YWN0X2VuZCgmbXNnLm1zZ19zdWJ3b3JrZXJ4YWN0ZW5kLCBsZW4pOworCQkJCQlicmVh azsKKworCQkJCWNhc2UgUEdTVEFUX01UWVBFX1NVQldPUktFUlRXT1BIQVNFWEFDVDoKKwkJCQkJ cGdzdGF0X3JlY3Zfc3Vid29ya2VyX3R3b3BoYXNlX3hhY3QoJm1zZy5tc2dfc3Vid29ya2VydHdv cGhhc2V4YWN0LCBsZW4pOworCQkJCQlicmVhazsKKwogCQkJCWRlZmF1bHQ6CiAJCQkJCWJyZWFr OwogCQkJfQpAQCAtMzgzMyw2ICszOTA2LDE0IEBAIHJlc2V0X2RiZW50cnlfY291bnRlcnMoUGdT dGF0X1N0YXREQkVudHJ5ICpkYmVudHJ5KQogCQkJCQkJCQkJICBQR1NUQVRfU1VCV09SS0VSX0hB U0hfU0laRSwKIAkJCQkJCQkJCSAgJmhhc2hfY3RsLAogCQkJCQkJCQkJICBIQVNIX0VMRU0gfCBI QVNIX0JMT0JTKTsKKworCWhhc2hfY3RsLmtleXNpemUgPSBzaXplb2YoUGdTdGF0X1NXX1ByZXBh cmVkWGFjdEtleSk7CisJaGFzaF9jdGwuZW50cnlzaXplID0gc2l6ZW9mKFBnU3RhdF9TV19QcmVw YXJlZFhhY3RFbnRyeSk7CisJaGFzaF9jdGwuaGN4dCA9IHBnU3RhdExvY2FsQ29udGV4dDsKKwlk YmVudHJ5LT5zdWJ3b3JrZXJzX3ByZXBhcmVkc2l6ZXMgPSBoYXNoX2NyZWF0ZSgiU3Vic2NyaXB0 aW9uIHdvcmtlciBzdGF0cyBvZiBwcmVwYXJlZCB0eG4iLAorCQkJCQkJCQkJCQkJCVBHU1RBVF9T VUJXT1JLRVJfSEFTSF9TSVpFLAorCQkJCQkJCQkJCQkJCSZoYXNoX2N0bCwKKwkJCQkJCQkJCQkJ CQlIQVNIX0VMRU0gfCBIQVNIX1NUUklOR1MgfCBIQVNIX0NPTlRFWFQpOwogfQogCiAvKgpAQCAt Mzk0Myw2ICs0MDI0LDEyIEBAIHBnc3RhdF9nZXRfc3Vid29ya2VyX2VudHJ5KFBnU3RhdF9TdGF0 REJFbnRyeSAqZGJlbnRyeSwgT2lkIHN1YmlkLCBPaWQgc3VicmVsaWQsCiAJLyogSWYgbm90IGZv dW5kLCBpbml0aWFsaXplIHRoZSBuZXcgb25lICovCiAJaWYgKGNyZWF0ZSAmJiAhZm91bmQpCiAJ eworCQlzdWJ3ZW50cnktPnhhY3RfY29tbWl0X2NvdW50ID0gMDsKKwkJc3Vid2VudHJ5LT54YWN0 X2NvbW1pdF9ieXRlcyA9IDA7CisJCXN1YndlbnRyeS0+eGFjdF9lcnJvcl9jb3VudCA9IDA7CisJ CXN1YndlbnRyeS0+eGFjdF9lcnJvcl9ieXRlcyA9IDA7CisJCXN1YndlbnRyeS0+eGFjdF9hYm9y dF9jb3VudCA9IDA7CisJCXN1YndlbnRyeS0+eGFjdF9hYm9ydF9ieXRlcyA9IDA7CiAJCXN1Yndl bnRyeS0+cmVsaWQgPSBJbnZhbGlkT2lkOwogCQlzdWJ3ZW50cnktPmNvbW1hbmQgPSAwOwogCQlz dWJ3ZW50cnktPnhpZCA9IEludmFsaWRUcmFuc2FjdGlvbklkOwpAQCAtNDE1NCw5ICs0MjQxLDEx IEBAIHBnc3RhdF93cml0ZV9kYl9zdGF0c2ZpbGUoUGdTdGF0X1N0YXREQkVudHJ5ICpkYmVudHJ5 LCBib29sIHBlcm1hbmVudCkKIAlIQVNIX1NFUV9TVEFUVVMgdHN0YXQ7CiAJSEFTSF9TRVFfU1RB VFVTIGZzdGF0OwogCUhBU0hfU0VRX1NUQVRVUyBzc3RhdDsKKwlIQVNIX1NFUV9TVEFUVVMgcHN0 YXQ7CiAJUGdTdGF0X1N0YXRUYWJFbnRyeSAqdGFiZW50cnk7CiAJUGdTdGF0X1N0YXRGdW5jRW50 cnkgKmZ1bmNlbnRyeTsKIAlQZ1N0YXRfU3RhdFN1YldvcmtlckVudHJ5ICpzdWJ3ZW50cnk7CisJ UGdTdGF0X1NXX1ByZXBhcmVkWGFjdEVudHJ5ICpwZW50cnk7CiAJRklMRQkgICAqZnBvdXQ7CiAJ aW50MzIJCWZvcm1hdF9pZDsKIAlPaWQJCQlkYmlkID0gZGJlbnRyeS0+ZGF0YWJhc2VpZDsKQEAg LTQyMjMsNiArNDMxMiwxNyBAQCBwZ3N0YXRfd3JpdGVfZGJfc3RhdHNmaWxlKFBnU3RhdF9TdGF0 REJFbnRyeSAqZGJlbnRyeSwgYm9vbCBwZXJtYW5lbnQpCiAJfQogCiAJLyoKKwkgKiBXcml0ZSBz dWJzY3JpcHRpb24gd29ya2VyJ3MgcHJlcGFyZWQgdHJhbnNhY3Rpb24gc3RydWN0CisJICovCisJ aGFzaF9zZXFfaW5pdCgmcHN0YXQsIGRiZW50cnktPnN1YndvcmtlcnNfcHJlcGFyZWRzaXplcyk7 CisJd2hpbGUgKChwZW50cnkgPSAoUGdTdGF0X1NXX1ByZXBhcmVkWGFjdEVudHJ5ICopIGhhc2hf c2VxX3NlYXJjaCgmcHN0YXQpKSAhPSBOVUxMKQorCXsKKwkJZnB1dGMoJ1AnLCBmcG91dCk7CisJ CXJjID0gZndyaXRlKHBlbnRyeSwgc2l6ZW9mKFBnU3RhdF9TV19QcmVwYXJlZFhhY3RFbnRyeSks IDEsIGZwb3V0KTsKKwkJKHZvaWQpIHJjOwkJCQkvKiB3ZSdsbCBjaGVjayBmb3IgZXJyb3Igd2l0 aCBmZXJyb3IgKi8KKwl9CisKKwkvKgogCSAqIE5vIG1vcmUgb3V0cHV0IHRvIGJlIGRvbmUuIENs b3NlIHRoZSB0ZW1wIGZpbGUgYW5kIHJlcGxhY2UgdGhlIG9sZAogCSAqIHBnc3RhdC5zdGF0IHdp dGggaXQuICBUaGUgZmVycm9yKCkgY2hlY2sgcmVwbGFjZXMgdGVzdGluZyBmb3IgZXJyb3IKIAkg KiBhZnRlciBlYWNoIGluZGl2aWR1YWwgZnB1dGMgb3IgZndyaXRlIGFib3ZlLgpAQCAtNDQ2MSw2 ICs0NTYxLDcgQEAgcGdzdGF0X3JlYWRfc3RhdHNmaWxlcyhPaWQgb25seWRiLCBib29sIHBlcm1h bmVudCwgYm9vbCBkZWVwKQogCQkJCWRiZW50cnktPnRhYmxlcyA9IE5VTEw7CiAJCQkJZGJlbnRy eS0+ZnVuY3Rpb25zID0gTlVMTDsKIAkJCQlkYmVudHJ5LT5zdWJ3b3JrZXJzID0gTlVMTDsKKwkJ CQlkYmVudHJ5LT5zdWJ3b3JrZXJzX3ByZXBhcmVkc2l6ZXMgPSBOVUxMOwogCiAJCQkJLyoKIAkJ CQkgKiBJbiB0aGUgY29sbGVjdG9yLCBkaXNyZWdhcmQgdGhlIHRpbWVzdGFtcCB3ZSByZWFkIGZy b20gdGhlCkBAIC00NTA2LDYgKzQ2MDcsMTQgQEAgcGdzdGF0X3JlYWRfc3RhdHNmaWxlcyhPaWQg b25seWRiLCBib29sIHBlcm1hbmVudCwgYm9vbCBkZWVwKQogCQkJCQkJCQkJCQkJICAmaGFzaF9j dGwsCiAJCQkJCQkJCQkJCQkgIEhBU0hfRUxFTSB8IEhBU0hfQkxPQlMgfCBIQVNIX0NPTlRFWFQp OwogCisJCQkJaGFzaF9jdGwua2V5c2l6ZSA9IHNpemVvZihQZ1N0YXRfU1dfUHJlcGFyZWRYYWN0 S2V5KTsKKwkJCQloYXNoX2N0bC5lbnRyeXNpemUgPSBzaXplb2YoUGdTdGF0X1NXX1ByZXBhcmVk WGFjdEVudHJ5KTsKKwkJCQloYXNoX2N0bC5oY3h0ID0gcGdTdGF0TG9jYWxDb250ZXh0OworCQkJ CWRiZW50cnktPnN1YndvcmtlcnNfcHJlcGFyZWRzaXplcyA9IGhhc2hfY3JlYXRlKCJTdWJzY3Jp cHRpb24gd29ya2VyIHN0YXRzIG9mIHByZXBhcmVkIHR4biIsCisJCQkJCQkJCQkJCQkJCQkJUEdT VEFUX1NVQldPUktFUl9IQVNIX1NJWkUsCisJCQkJCQkJCQkJCQkJCQkJJmhhc2hfY3RsLAorCQkJ CQkJCQkJCQkJCQkJCUhBU0hfRUxFTSB8IEhBU0hfU1RSSU5HUyB8IEhBU0hfQ09OVEVYVCk7CisK IAkJCQkvKgogCQkJCSAqIElmIHJlcXVlc3RlZCwgcmVhZCB0aGUgZGF0YSBmcm9tIHRoZSBkYXRh YmFzZS1zcGVjaWZpYwogCQkJCSAqIGZpbGUuICBPdGhlcndpc2Ugd2UganVzdCBsZWF2ZSB0aGUg aGFzaHRhYmxlcyBlbXB0eS4KQEAgLTQ1MTUsNiArNDYyNCw3IEBAIHBnc3RhdF9yZWFkX3N0YXRz ZmlsZXMoT2lkIG9ubHlkYiwgYm9vbCBwZXJtYW5lbnQsIGJvb2wgZGVlcCkKIAkJCQkJCQkJCQkJ IGRiZW50cnktPnRhYmxlcywKIAkJCQkJCQkJCQkJIGRiZW50cnktPmZ1bmN0aW9ucywKIAkJCQkJ CQkJCQkJIGRiZW50cnktPnN1YndvcmtlcnMsCisJCQkJCQkJCQkJCSBkYmVudHJ5LT5zdWJ3b3Jr ZXJzX3ByZXBhcmVkc2l6ZXMsCiAJCQkJCQkJCQkJCSBwZXJtYW5lbnQpOwogCiAJCQkJYnJlYWs7 CkBAIC00NTk5LDcgKzQ3MDksNyBAQCBkb25lOgogICovCiBzdGF0aWMgdm9pZAogcGdzdGF0X3Jl YWRfZGJfc3RhdHNmaWxlKE9pZCBkYXRhYmFzZWlkLCBIVEFCICp0YWJoYXNoLCBIVEFCICpmdW5j aGFzaCwKLQkJCQkJCSBIVEFCICpzdWJ3b3JrZXJoYXNoLCBib29sIHBlcm1hbmVudCkKKwkJCQkJ CSBIVEFCICpzdWJ3b3JrZXJoYXNoLCBIVEFCICpwcmVwYXJlZHR4bmhhc2gsIGJvb2wgcGVybWFu ZW50KQogewogCVBnU3RhdF9TdGF0VGFiRW50cnkgKnRhYmVudHJ5OwogCVBnU3RhdF9TdGF0VGFi RW50cnkgdGFiYnVmOwpAQCAtNDc1NSw2ICs0ODY1LDMyIEBAIHBnc3RhdF9yZWFkX2RiX3N0YXRz ZmlsZShPaWQgZGF0YWJhc2VpZCwgSFRBQiAqdGFiaGFzaCwgSFRBQiAqZnVuY2hhc2gsCiAJCQkJ bWVtY3B5KHN1YndlbnRyeSwgJnN1YndidWYsIHNpemVvZihzdWJ3YnVmKSk7CiAJCQkJYnJlYWs7 CiAKKwkJCWNhc2UgJ1AnOgorCQkJCXsKKwkJCQkJUGdTdGF0X1NXX1ByZXBhcmVkWGFjdEVudHJ5 IGJ1ZmY7CisJCQkJCVBnU3RhdF9TV19QcmVwYXJlZFhhY3RFbnRyeSAqcHJlcGFyZWRfeGFjdF9l bnRyeTsKKworCQkJCQlpZiAoZnJlYWQoJmJ1ZmYsIDEsIHNpemVvZihQZ1N0YXRfU1dfUHJlcGFy ZWRYYWN0RW50cnkpLAorCQkJCQkJCSAgZnBpbikgIT0gc2l6ZW9mKFBnU3RhdF9TV19QcmVwYXJl ZFhhY3RFbnRyeSkpCisJCQkJCXsKKwkJCQkJCWVyZXBvcnQocGdTdGF0UnVubmluZ0luQ29sbGVj dG9yID8gTE9HIDogV0FSTklORywKKwkJCQkJCQkJKGVycm1zZygiY29ycnVwdGVkIHN0YXRpc3Rp Y3MgZmlsZSBcIiVzXCIiLAorCQkJCQkJCQkJCXN0YXRmaWxlKSkpOworCQkJCQkJZ290byBkb25l OworCQkJCQl9CisKKwkJCQkJaWYgKHByZXBhcmVkdHhuaGFzaCA9PSBOVUxMKQorCQkJCQkJYnJl YWs7CisKKwkJCQkJcHJlcGFyZWRfeGFjdF9lbnRyeSA9CisJCQkJCQkoUGdTdGF0X1NXX1ByZXBh cmVkWGFjdEVudHJ5ICopIGhhc2hfc2VhcmNoKHByZXBhcmVkdHhuaGFzaCwKKwkJCQkJCQkJCQkJ CQkJCQkJKHZvaWQgKikgJmJ1ZmYua2V5LAorCQkJCQkJCQkJCQkJCQkJCQlIQVNIX0VOVEVSLCBO VUxMKTsKKworCQkJCQltZW1jcHkocHJlcGFyZWRfeGFjdF9lbnRyeSwgJmJ1ZmYsIHNpemVvZihQ Z1N0YXRfU1dfUHJlcGFyZWRYYWN0RW50cnkpKTsKKwkJCQkJYnJlYWs7CisJCQkJfQorCiAJCQkJ LyoKIAkJCQkgKiAnRScJVGhlIEVPRiBtYXJrZXIgb2YgYSBjb21wbGV0ZSBzdGF0cyBmaWxlLgog CQkJCSAqLwpAQCAtNTQzMCw2ICs1NTY2LDggQEAgcGdzdGF0X3JlY3ZfZHJvcGRiKFBnU3RhdF9N c2dEcm9wZGIgKm1zZywgaW50IGxlbikKIAkJCWhhc2hfZGVzdHJveShkYmVudHJ5LT5mdW5jdGlv bnMpOwogCQlpZiAoZGJlbnRyeS0+c3Vid29ya2VycyAhPSBOVUxMKQogCQkJaGFzaF9kZXN0cm95 KGRiZW50cnktPnN1YndvcmtlcnMpOworCQlpZiAoZGJlbnRyeS0+c3Vid29ya2Vyc19wcmVwYXJl ZHNpemVzICE9IE5VTEwpCisJCQloYXNoX2Rlc3Ryb3koZGJlbnRyeS0+c3Vid29ya2Vyc19wcmVw YXJlZHNpemVzKTsKIAogCQlpZiAoaGFzaF9zZWFyY2gocGdTdGF0REJIYXNoLAogCQkJCQkJKHZv aWQgKikgJmRiaWQsCkBAIC01NDY5LDEwICs1NjA3LDEzIEBAIHBnc3RhdF9yZWN2X3Jlc2V0Y291 bnRlcihQZ1N0YXRfTXNnUmVzZXRjb3VudGVyICptc2csIGludCBsZW4pCiAJCWhhc2hfZGVzdHJv eShkYmVudHJ5LT5mdW5jdGlvbnMpOwogCWlmIChkYmVudHJ5LT5zdWJ3b3JrZXJzICE9IE5VTEwp CiAJCWhhc2hfZGVzdHJveShkYmVudHJ5LT5zdWJ3b3JrZXJzKTsKKwlpZiAoZGJlbnRyeS0+c3Vi d29ya2Vyc19wcmVwYXJlZHNpemVzICE9IE5VTEwpCisJCWhhc2hfZGVzdHJveShkYmVudHJ5LT5z dWJ3b3JrZXJzX3ByZXBhcmVkc2l6ZXMpOwogCiAJZGJlbnRyeS0+dGFibGVzID0gTlVMTDsKIAlk YmVudHJ5LT5mdW5jdGlvbnMgPSBOVUxMOwogCWRiZW50cnktPnN1YndvcmtlcnMgPSBOVUxMOwor CWRiZW50cnktPnN1YndvcmtlcnNfcHJlcGFyZWRzaXplcyA9IE5VTEw7CiAKIAkvKgogCSAqIFJl c2V0IGRhdGFiYXNlLWxldmVsIHN0YXRzLCB0b28uICBUaGlzIGNyZWF0ZXMgZW1wdHkgaGFzaCB0 YWJsZXMgZm9yCkBAIC01NTQ4LDEwICs1Njg5LDI4IEBAIHBnc3RhdF9yZWN2X3Jlc2V0c2luZ2xl Y291bnRlcihQZ1N0YXRfTXNnUmVzZXRzaW5nbGVjb3VudGVyICptc2csIGludCBsZW4pCiAJZWxz ZSBpZiAobXNnLT5tX3Jlc2V0dHlwZSA9PSBSRVNFVF9TVUJXT1JLRVIpCiAJewogCQlQZ1N0YXRf U3RhdFN1YldvcmtlcktleSBrZXk7CisJCVBnU3RhdF9TV19QcmVwYXJlZFhhY3RLZXkgcGtleTsK IAogCQlrZXkuc3ViaWQgPSBtc2ctPm1fb2JqZWN0aWQ7CiAJCWtleS5zdWJyZWxpZCA9IG1zZy0+ bV9zdWJvYmplY3RpZDsKIAkJKHZvaWQpIGhhc2hfc2VhcmNoKGRiZW50cnktPnN1YndvcmtlcnMs ICh2b2lkICopICZrZXksIEhBU0hfUkVNT1ZFLCBOVUxMKTsKKworCQkvKgorCQkgKiBDbGVhbiB1 cCBlbnRyeSBvZiBwcmVwYXJlZCBzaXplIGhhc2ggYXMgd2VsbC4KKwkJICoKKwkJICogVGhlcmUn cyBubyBnaWQgaW5wdXQgaGVyZSBhcyBhIHBhcnQgb2Yga2V5IGZvcgorCQkgKiBQZ1N0YXRfU1df UHJlcGFyZWRYYWN0RW50cnkuIEFsc28gYW55IHZhbGlkICdyZWxpZCcgaW5kaWNhdGVzIHRoZQor CQkgKiBlbnRyeSBpcyBjcmVhdGVkIGJ5IHRhYmxlIHN5bmMgYnV0IGl0IGhhcyBub3RoaW5nIHRv IGRvIHdpdGggdGhlCisJCSAqIHR3byBwaGFzZSBvcGVyYXRpb24gb2YgYXBwbHkuIFByb2NlZWQg d2l0aCB0aGlzIHJlbW92YWwgb25seSB3aGVuCisJCSAqIHRoZSBzcGVjaWZpZWQgc3VicmVsaWQg aXNuJ3QgaW52YWxpZC4KKwkJICovCisJCWlmIChtc2ctPm1fc3Vib2JqZWN0aWQgPT0gSW52YWxp ZE9pZCkKKwkJeworCQkJcGtleS5zdWJpZCA9IG1zZy0+bV9vYmplY3RpZDsKKwkJCSh2b2lkKSBo YXNoX3NlYXJjaChkYmVudHJ5LT5zdWJ3b3JrZXJzX3ByZXBhcmVkc2l6ZXMsCisJCQkJCQkJICAg KHZvaWQgKikgJnBrZXksIEhBU0hfUkVNT1ZFLCBOVUxMKTsKKwkJfQorCiAJfQogfQogCkBAIC02 MTA3LDYgKzYyNjYsNyBAQCBwZ3N0YXRfcmVjdl9zdWJzY3JpcHRpb25fcHVyZ2UoUGdTdGF0X01z Z1N1YnNjcmlwdGlvblB1cmdlICptc2csIGludCBsZW4pCiAJSEFTSF9TRVFfU1RBVFVTIGhzdGF0 OwogCVBnU3RhdF9TdGF0REJFbnRyeSAqZGJlbnRyeTsKIAlQZ1N0YXRfU3RhdFN1YldvcmtlckVu dHJ5ICpzdWJ3ZW50cnk7CisJUGdTdGF0X1NXX1ByZXBhcmVkWGFjdEVudHJ5ICpwcmVwYXJlZF90 eG5fZW50cnk7CiAKIAlkYmVudHJ5ID0gcGdzdGF0X2dldF9kYl9lbnRyeShtc2ctPm1fZGF0YWJh c2VpZCwgZmFsc2UpOwogCkBAIC02MTI4LDYgKzYyODgsMTI3IEBAIHBnc3RhdF9yZWN2X3N1YnNj cmlwdGlvbl9wdXJnZShQZ1N0YXRfTXNnU3Vic2NyaXB0aW9uUHVyZ2UgKm1zZywgaW50IGxlbikK IAkJCX0KIAkJfQogCX0KKworCS8qIFJlbW92ZSBhc3NvY2lhdGVkIHByZXBhcmVkIHRyYW5zYWN0 aW9uIHN0YXRzICovCisJaWYgKCFkYmVudHJ5LT5zdWJ3b3JrZXJzX3ByZXBhcmVkc2l6ZXMpCisJ eworCQloYXNoX3NlcV9pbml0KCZoc3RhdCwgZGJlbnRyeS0+c3Vid29ya2Vyc19wcmVwYXJlZHNp emVzKTsKKwkJd2hpbGUgKChwcmVwYXJlZF90eG5fZW50cnkgPSAoUGdTdGF0X1NXX1ByZXBhcmVk WGFjdEVudHJ5ICopIGhhc2hfc2VxX3NlYXJjaCgmaHN0YXQpKSAhPSBOVUxMKQorCQl7CisJCQlm b3IgKGludCBpID0gMDsgaSA8IG1zZy0+bV9uZW50cmllczsgaSsrKQorCQkJeworCQkJCWlmIChw cmVwYXJlZF90eG5fZW50cnktPmtleS5zdWJpZCA9PSBtc2ctPm1fc3ViaWRzW2ldKQorCQkJCQko dm9pZCkgaGFzaF9zZWFyY2goZGJlbnRyeS0+c3Vid29ya2Vyc19wcmVwYXJlZHNpemVzLAorCQkJ CQkJCQkJICAgKHZvaWQgKikgJihwcmVwYXJlZF90eG5fZW50cnktPmtleSksCisJCQkJCQkJCQkg ICBIQVNIX1JFTU9WRSwgTlVMTCk7CisJCQkJYnJlYWs7CisJCQl9CisJCX0KKwl9Cit9CisKKy8q IC0tLS0tLS0tLS0KKyAqIHBnc3RhdF9yZWN2X3N1Yndvcmtlcl94YWN0X2VuZCgpIC0KKyAqCisg KglQcm9jZXNzIGEgU1VCV09SS0VSWEFDVEVORCBtZXNzYWdlLgorICogLS0tLS0tLS0tLQorICov CitzdGF0aWMgdm9pZAorcGdzdGF0X3JlY3Zfc3Vid29ya2VyX3hhY3RfZW5kKFBnU3RhdF9Nc2dT dWJXb3JrZXJYYWN0RW5kICptc2csIGludCBsZW4pCit7CisJUGdTdGF0X1N0YXREQkVudHJ5ICpk YmVudHJ5OworCVBnU3RhdF9TdGF0U3ViV29ya2VyRW50cnkgKndlbnRyeTsKKworCWRiZW50cnkg PSBwZ3N0YXRfZ2V0X2RiX2VudHJ5KG1zZy0+bV9kYXRhYmFzZWlkLCB0cnVlKTsKKwl3ZW50cnkg PSBwZ3N0YXRfZ2V0X3N1Yndvcmtlcl9lbnRyeShkYmVudHJ5LCBtc2ctPm1fc3ViaWQsCisJCQkJ CQkJCQkJbXNnLT5tX3N1YnJlbGlkLCB0cnVlKTsKKwlBc3NlcnQod2VudHJ5KTsKKworCS8qIHRh YmxlIHN5bmMgd29ya2VyICovCisJaWYgKG1zZy0+bV9jb21tYW5kID09IDApCisJCXdlbnRyeS0+ eGFjdF9jb21taXRfY291bnQrKzsKKwllbHNlCisJeworCQkvKiBhcHBseSB3b3JrZXIgKi8KKwkJ c3dpdGNoIChtc2ctPm1fY29tbWFuZCkKKwkJeworCQkJY2FzZSBMT0dJQ0FMX1JFUF9NU0dfQ09N TUlUOgorCQkJY2FzZSBMT0dJQ0FMX1JFUF9NU0dfU1RSRUFNX0NPTU1JVDoKKwkJCQl3ZW50cnkt PnhhY3RfY29tbWl0X2NvdW50Kys7CisJCQkJd2VudHJ5LT54YWN0X2NvbW1pdF9ieXRlcyArPSBt c2ctPm1feGFjdF9ieXRlczsKKwkJCQlicmVhazsKKwkJCWRlZmF1bHQ6CisJCQkJZWxvZyhFUlJP UiwgInVuZXhwZWN0ZWQgbG9naWNhbCBtZXNzYWdlIHR5cGUgYXMgbm9ybWFsIGFwcGx5IGVuZCIp OworCQkJCWJyZWFrOworCQl9CisJfQorfQorCisvKiAtLS0tLS0tLS0tCisgKiBwZ3N0YXRfcmVj dl9zdWJ3b3JrZXJfdHdvcGhhc2VfeGFjdCgpIC0KKyAqCisgKglQcm9jZXNzIGEgU1VCV09SS0VS VFdPUEhBU0VYQUNUIG1lc3NhZ2UuCisgKiAtLS0tLS0tLS0tCisgKi8KK3N0YXRpYyB2b2lkCitw Z3N0YXRfcmVjdl9zdWJ3b3JrZXJfdHdvcGhhc2VfeGFjdChQZ1N0YXRfTXNnU3ViV29ya2VyVHdv cGhhc2VYYWN0ICptc2csIGludCBsZW4pCit7CisJUGdTdGF0X1N0YXREQkVudHJ5ICpkYmVudHJ5 OworCVBnU3RhdF9TV19QcmVwYXJlZFhhY3RFbnRyeSAqcGVudHJ5OworCVBnU3RhdF9TdGF0U3Vi V29ya2VyRW50cnkgKndlbnRyeTsKKwlQZ1N0YXRfU1dfUHJlcGFyZWRYYWN0S2V5IGtleTsKKwor CXBlbnRyeSA9IHBnc3RhdF9nZXRfc3Vid29ya2VyX3ByZXBhcmVkX3R4bihtc2ctPm1fZGF0YWJh c2VpZCwKKwkJCQkJCQkJCQkJICAgbXNnLT5tX3N1YmlkLAorCQkJCQkJCQkJCQkgICBtc2ctPm1f Z2lkLCB0cnVlKTsKKwlBc3NlcnQocGVudHJ5KTsKKwlzd2l0Y2ggKG1zZy0+bV9jb21tYW5kKQor CXsKKwkJY2FzZSBMT0dJQ0FMX1JFUF9NU0dfUFJFUEFSRToKKwkJY2FzZSBMT0dJQ0FMX1JFUF9N U0dfU1RSRUFNX1BSRVBBUkU6CisKKwkJCS8qCisJCQkgKiBNYWtlIGVhY2ggc2l6ZSBvZiBwcmVw YXJlZCB0cmFuc2FjdGlvbiBwZXJzaXN0ZW50IHNvIHRoYXQgd2UKKwkJCSAqIGNhbiB1cGRhdGUg c3RhdHMgb3ZlciB0aGUgc2VydmVyIHJlc3RhcnQgYW5kIG1ha2UgcHJlcGFyZWQKKwkJCSAqIHN0 YXRzIHVwZGF0ZWQgd2hlbiBjb21taXQgcHJlcGFyZWQgb3Igcm9sbGJhY2sgcHJlcGFyZWQKKwkJ CSAqIGFycml2ZXMuCisJCQkgKi8KKwkJCXBlbnRyeS0+c3ViaWQgPSBtc2ctPm1fc3ViaWQ7CisJ CQlzdHJsY3B5KHBlbnRyeS0+Z2lkLCBtc2ctPm1fZ2lkLCBzaXplb2YocGVudHJ5LT5naWQpKTsK KwkJCXBlbnRyeS0+eGFjdF9zaXplID0gbXNnLT5tX3hhY3RfYnl0ZXM7CisJCQlicmVhazsKKwor CQljYXNlIExPR0lDQUxfUkVQX01TR19DT01NSVRfUFJFUEFSRUQ6CisJCWNhc2UgTE9HSUNBTF9S RVBfTVNHX1JPTExCQUNLX1BSRVBBUkVEOgorCQkJLyogVXBkYXRlIGV4cG9ydGVkIHhhY3Qgc3Rh dHMgbm93ICovCisJCQlkYmVudHJ5ID0gcGdzdGF0X2dldF9kYl9lbnRyeShtc2ctPm1fZGF0YWJh c2VpZCwgdHJ1ZSk7CisJCQl3ZW50cnkgPSBwZ3N0YXRfZ2V0X3N1Yndvcmtlcl9lbnRyeShkYmVu dHJ5LAorCQkJCQkJCQkJCQkJbXNnLT5tX3N1YmlkLAorCQkJCQkJCQkJCQkJSW52YWxpZE9pZCAv KiBhcHBseSB3b3JrZXIgKi8gLAorCQkJCQkJCQkJCQkJdHJ1ZSk7CisJCQlBc3NlcnQod2VudHJ5 KTsKKwkJCWlmIChtc2ctPm1fY29tbWFuZCA9PSBMT0dJQ0FMX1JFUF9NU0dfQ09NTUlUX1BSRVBB UkVEKQorCQkJeworCQkJCXdlbnRyeS0+eGFjdF9jb21taXRfY291bnQrKzsKKwkJCQl3ZW50cnkt PnhhY3RfY29tbWl0X2J5dGVzICs9IHBlbnRyeS0+eGFjdF9zaXplOworCQkJfQorCQkJZWxzZQor CQkJeworCQkJCXdlbnRyeS0+eGFjdF9hYm9ydF9jb3VudCsrOworCQkJCXdlbnRyeS0+eGFjdF9h Ym9ydF9ieXRlcyArPSBwZW50cnktPnhhY3Rfc2l6ZTsKKwkJCX0KKworCQkJLyogQ2xlYW4gdXAg dGhpcyBnaWQgZnJvbSB0cmFuc2FjdGlvbiBzaXplIGhhc2ggKi8KKwkJCWtleS5zdWJpZCA9IHBl bnRyeS0+c3ViaWQ7CisJCQlzdHJsY3B5KGtleS5naWQsIG1zZy0+bV9naWQsIHNpemVvZihrZXku Z2lkKSk7CisJCQkodm9pZCkgaGFzaF9zZWFyY2goZGJlbnRyeS0+c3Vid29ya2Vyc19wcmVwYXJl ZHNpemVzLAorCQkJCQkJCSAgICh2b2lkICopICZrZXksIEhBU0hfUkVNT1ZFLCBOVUxMKTsKKwkJ CWJyZWFrOworCisJCWRlZmF1bHQ6CisJCQllbG9nKEVSUk9SLCAidW5leHBlY3RlZCBsb2dpY2Fs IG1lc3NhZ2UgdHlwZSBhcyBwcmVwYXJlIHRyYW5zYWN0aW9uIik7CisJCQlicmVhazsKKwl9CiB9 CiAKIC8qIC0tLS0tLS0tLS0KQEAgLTYxNDksNiArNjQzMCwxMCBAQCBwZ3N0YXRfcmVjdl9zdWJ3 b3JrZXJfZXJyb3IoUGdTdGF0X01zZ1N1YldvcmtlckVycm9yICptc2csIGludCBsZW4pCiAJCQkJ CQkJCQkJICAgbXNnLT5tX3N1YnJlbGlkLCB0cnVlKTsKIAlBc3NlcnQoc3Vid2VudHJ5KTsKIAor CS8qIGdlbmVyYWwgdHJhbnNhY3Rpb24gc3RhdHMgZm9yIGVycm9yICovCisJc3Vid2VudHJ5LT54 YWN0X2Vycm9yX2NvdW50Kys7CisJc3Vid2VudHJ5LT54YWN0X2Vycm9yX2J5dGVzICs9IG1zZy0+ bV94YWN0X2Vycm9yX2J5dGVzOworCiAJLyoKIAkgKiBVcGRhdGUgb25seSB0aGUgY291bnRlciBh bmQgbGFzdCBlcnJvciB0aW1lc3RhbXAgaWYgd2UgcmVjZWl2ZWQKIAkgKiB0aGUgc2FtZSBlcnJv ciBhZ2FpbgpAQCAtNjM5NiwzICs2NjgxLDM4IEBAIHBnc3RhdF9jb3VudF9zbHJ1X3RydW5jYXRl KGludCBzbHJ1X2lkeCkKIHsKIAlzbHJ1X2VudHJ5KHNscnVfaWR4KS0+bV90cnVuY2F0ZSArPSAx OwogfQorCisgLyogLS0tLS0tLS0tLQorICogcGdzdGF0X2dldF9zdWJ3b3JrZXJfcHJlcGFyZWRf dHhuCisgKgorICogUmV0dXJuIHN1YnNjcmlwdGlvbiB3b3JrZXIgZW50cnkgd2l0aCB0aGUgZ2l2 ZW4gc3Vic2NyaXB0aW9uIE9JRCBhbmQKKyAqIGdpZC4KKyAqIC0tLS0tLS0tLS0KKyAqLworc3Rh dGljIFBnU3RhdF9TV19QcmVwYXJlZFhhY3RFbnRyeSAqCitwZ3N0YXRfZ2V0X3N1Yndvcmtlcl9w cmVwYXJlZF90eG4oT2lkIGRhdGFiYXNlaWQsIE9pZCBzdWJpZCwKKwkJCQkJCQkJICBjaGFyICpn aWQsIGJvb2wgY3JlYXRlKQoreworCVBnU3RhdF9TdGF0REJFbnRyeSAqZGJlbnRyeTsKKwlQZ1N0 YXRfU1dfUHJlcGFyZWRYYWN0S2V5IGtleTsKKwlQZ1N0YXRfU1dfUHJlcGFyZWRYYWN0RW50cnkg KnBlbnRyeTsKKwlIQVNIQUNUSU9OCWFjdGlvbjsKKwlib29sCQlmb3VuZDsKKworCWRiZW50cnkg PSBwZ3N0YXRfZ2V0X2RiX2VudHJ5KGRhdGFiYXNlaWQsIHRydWUpOworCWtleS5zdWJpZCA9IHN1 YmlkOworCXN0cmxjcHkoa2V5LmdpZCwgZ2lkLCBzaXplb2Yoa2V5LmdpZCkpOworCWFjdGlvbiA9 IChjcmVhdGUgPyBIQVNIX0VOVEVSIDogSEFTSF9GSU5EKTsKKwlwZW50cnkgPSAoUGdTdGF0X1NX X1ByZXBhcmVkWGFjdEVudHJ5ICopIGhhc2hfc2VhcmNoKGRiZW50cnktPnN1YndvcmtlcnNfcHJl cGFyZWRzaXplcywKKwkJCQkJCQkJCQkJCQkJICh2b2lkICopICZrZXksCisJCQkJCQkJCQkJCQkJ CSBhY3Rpb24sICZmb3VuZCk7CisKKwlpZiAoY3JlYXRlICYmICFmb3VuZCkKKwl7CisJCXBlbnRy eS0+c3ViaWQgPSAwOworCQlwZW50cnktPmdpZFswXSA9ICdcMCc7CisJCXBlbnRyeS0+eGFjdF9z aXplID0gMDsKKwl9CisKKwlyZXR1cm4gcGVudHJ5OworfQpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tl bmQvcmVwbGljYXRpb24vbG9naWNhbC9wcm90by5jIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24v bG9naWNhbC9wcm90by5jCmluZGV4IDlmNWJmNGIuLjNjZDkzM2EgMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvcHJvdG8uYworKysgYi9zcmMvYmFja2VuZC9yZXBs aWNhdGlvbi9sb2dpY2FsL3Byb3RvLmMKQEAgLTE3LDYgKzE3LDcgQEAKICNpbmNsdWRlICJjYXRh bG9nL3BnX3R5cGUuaCIKICNpbmNsdWRlICJsaWJwcS9wcWZvcm1hdC5oIgogI2luY2x1ZGUgInJl cGxpY2F0aW9uL2xvZ2ljYWxwcm90by5oIgorI2luY2x1ZGUgInJlcGxpY2F0aW9uL2xvZ2ljYWx3 b3JrZXIuaCIKICNpbmNsdWRlICJ1dGlscy9sc3lzY2FjaGUuaCIKICNpbmNsdWRlICJ1dGlscy9z eXNjYWNoZS5oIgogCkBAIC04NDIsNiArODQzLDcgQEAgbG9naWNhbHJlcF9yZWFkX3R1cGxlKFN0 cmluZ0luZm8gaW4sIExvZ2ljYWxSZXBUdXBsZURhdGEgKnR1cGxlKQogewogCWludAkJCWk7CiAJ aW50CQkJbmF0dHM7CisJU2l6ZQkJdG90YWxfc2l6ZTsKIAogCS8qIEdldCBudW1iZXIgb2YgYXR0 cmlidXRlcyAqLwogCW5hdHRzID0gcHFfZ2V0bXNnaW50KGluLCAyKTsKQEAgLTg1MCw2ICs4NTIs NyBAQCBsb2dpY2FscmVwX3JlYWRfdHVwbGUoU3RyaW5nSW5mbyBpbiwgTG9naWNhbFJlcFR1cGxl RGF0YSAqdHVwbGUpCiAJdHVwbGUtPmNvbHZhbHVlcyA9IChTdHJpbmdJbmZvRGF0YSAqKSBwYWxs b2MwKG5hdHRzICogc2l6ZW9mKFN0cmluZ0luZm9EYXRhKSk7CiAJdHVwbGUtPmNvbHN0YXR1cyA9 IChjaGFyICopIHBhbGxvYyhuYXR0cyAqIHNpemVvZihjaGFyKSk7CiAJdHVwbGUtPm5jb2xzID0g bmF0dHM7CisJdG90YWxfc2l6ZSA9IG5hdHRzICogKHNpemVvZihjaGFyKSArIHNpemVvZihTdHJp bmdJbmZvRGF0YSkpOwogCiAJLyogUmVhZCB0aGUgZGF0YSAqLwogCWZvciAoaSA9IDA7IGkgPCBu YXR0czsgaSsrKQpAQCAtODgwLDYgKzg4Myw5IEBAIGxvZ2ljYWxyZXBfcmVhZF90dXBsZShTdHJp bmdJbmZvIGluLCBMb2dpY2FsUmVwVHVwbGVEYXRhICp0dXBsZSkKIAkJCQl2YWx1ZS0+bGVuID0g bGVuOwogCQkJCXZhbHVlLT5jdXJzb3IgPSAwOwogCQkJCXZhbHVlLT5tYXhsZW4gPSBsZW47CisK KwkJCQkvKiBtZW1vcnkgZm9yIHR1cGxlICovCisJCQkJdG90YWxfc2l6ZSArPSBsZW4gKyAxOwog CQkJCWJyZWFrOwogCQkJY2FzZSBMT0dJQ0FMUkVQX0NPTFVNTl9CSU5BUlk6CiAJCQkJbGVuID0g cHFfZ2V0bXNnaW50KGluLCA0KTsJLyogcmVhZCBsZW5ndGggKi8KQEAgLTg5MywxMSArODk5LDE3 IEBAIGxvZ2ljYWxyZXBfcmVhZF90dXBsZShTdHJpbmdJbmZvIGluLCBMb2dpY2FsUmVwVHVwbGVE YXRhICp0dXBsZSkKIAkJCQl2YWx1ZS0+bGVuID0gbGVuOwogCQkJCXZhbHVlLT5jdXJzb3IgPSAw OwogCQkJCXZhbHVlLT5tYXhsZW4gPSBsZW47CisKKwkJCQkvKiBtZW1vcnkgZm9yIHR1cGxlICov CisJCQkJdG90YWxfc2l6ZSArPSBsZW4gKyAxOwogCQkJCWJyZWFrOwogCQkJZGVmYXVsdDoKIAkJ CQllbG9nKEVSUk9SLCAidW5yZWNvZ25pemVkIGRhdGEgcmVwcmVzZW50YXRpb24gdHlwZSAnJWMn Iiwga2luZCk7CiAJCX0KIAl9CisKKwkvKiBSZWNvcmQgbWVtb3J5IGNvbnN1bXB0aW9uIGZvciB0 dXBsZSAqLworCWFkZF9hcHBseV9lcnJvcl9jb250ZXh0X3hhY3Rfc2l6ZSh0b3RhbF9zaXplKTsK IH0KIAogLyoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvdGFi bGVzeW5jLmMgYi9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9sb2dpY2FsL3RhYmxlc3luYy5jCmlu ZGV4IGYwNzk4M2EuLjViYjFkNjMgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9u L2xvZ2ljYWwvdGFibGVzeW5jLmMKKysrIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNh bC90YWJsZXN5bmMuYwpAQCAtMTE0OSw2ICsxMTQ5LDEyIEBAIGNvcHlfdGFibGVfZG9uZToKIAlN eUxvZ2ljYWxSZXBXb3JrZXItPnJlbHN0YXRlX2xzbiA9ICpvcmlnaW5fc3RhcnRwb3M7CiAJU3Bp bkxvY2tSZWxlYXNlKCZNeUxvZ2ljYWxSZXBXb3JrZXItPnJlbG11dGV4KTsKIAorCS8qIFJlcG9y dCB0aGUgc3VjY2VzcyBvZiB0YWJsZSBzeW5jLiAqLworCXBnc3RhdF9yZXBvcnRfc3Vid29ya2Vy X3hhY3RfZW5kKE15TG9naWNhbFJlcFdvcmtlci0+c3ViaWQsCisJCQkJCQkJCQkgTXlMb2dpY2Fs UmVwV29ya2VyLT5yZWxpZCwKKwkJCQkJCQkJCSAwIC8qIG5vIGxvZ2ljYWwgbWVzc2FnZSB0eXBl ICovICwKKwkJCQkJCQkJCSAwIC8qIHhhY3Qgc2l6ZSAqLyApOworCiAJLyoKIAkgKiBGaW5hbGx5 LCB3YWl0IHVudGlsIHRoZSBtYWluIGFwcGx5IHdvcmtlciB0ZWxscyB1cyB0byBjYXRjaCB1cCBh bmQgdGhlbgogCSAqIHJldHVybiB0byBsZXQgTG9naWNhbFJlcEFwcGx5TG9vcCBkbyBpdC4KZGlm ZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvd29ya2VyLmMgYi9zcmMv YmFja2VuZC9yZXBsaWNhdGlvbi9sb2dpY2FsL3dvcmtlci5jCmluZGV4IDJlNzkzMDIuLjY2MTc0 MzcgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvd29ya2VyLmMK KysrIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNhbC93b3JrZXIuYwpAQCAtMjIxLDYg KzIyMSwxOCBAQCB0eXBlZGVmIHN0cnVjdCBBcHBseUVycm9yQ2FsbGJhY2tBcmcKIAlMb2dpY2Fs UmVwTXNnVHlwZSBjb21tYW5kOwkvKiAwIGlmIGludmFsaWQgKi8KIAlMb2dpY2FsUmVwUmVsTWFw RW50cnkgKnJlbDsKIAorCS8qCisJICogU3RvcmUgZGF0YSBzaXplIG9mIHRoaXMgdHJhbnNhY3Rp b24uCisJICoKKwkgKiBUaGUgYnl0ZSBzaXplIG9mIHRyYW5zYWN0aW9uIG9uIHRoZSBwdWJsaXNo ZXIgaXMgY2FsY3VsYXRlZCBieQorCSAqIFJlb3JkZXJCdWZmZXJDaGFuZ2VTaXplKCkgYmFzZWQg b24gdGhlIFJlb3JkZXJCdWZmZXJDaGFuZ2Ugc3RydWN0dXJlLgorCSAqIEJ1dCBvbiB0aGUgc3Vi c2NyaWJlciwgY29uc3VtZWQgcmVzb3VyY2VzIGFyZSBub3Qgc2FtZSBhcyB0aGUKKwkgKiBwdWJs aXNoZXIncyBkZWNvZGluZyBwcm9jZXNzc2luZyBhbmQgcmVxdWlyZWQgdG8gYmUgY29tcHV0ZWQg aW4KKwkgKiBkaWZmZXJlbnQgd2F5LiBUaGVyZWZvcmUsIHRoZSBleGFjdCBzYW1lIGJ5dGUgc2l6 ZSBpcyBub3QgcmVzdG9yZWQgb24KKwkgKiB0aGUgc3Vic2NyaWJlciB1c3VhbGx5LgorCSAqLwor CVBnU3RhdF9Db3VudGVyIGJ5dGVzOworCiAJLyogUmVtb3RlIG5vZGUgaW5mb3JtYXRpb24gKi8K IAlpbnQJCQlyZW1vdGVfYXR0bnVtOwkvKiAtMSBpZiBpbnZhbGlkICovCiAJVHJhbnNhY3Rpb25J ZCByZW1vdGVfeGlkOwpAQCAtMjMxLDYgKzI0Myw3IEBAIHN0YXRpYyBBcHBseUVycm9yQ2FsbGJh Y2tBcmcgYXBwbHlfZXJyb3JfY2FsbGJhY2tfYXJnID0KIHsKIAkuY29tbWFuZCA9IDAsCiAJLnJl bCA9IE5VTEwsCisJLmJ5dGVzID0gMCwKIAkucmVtb3RlX2F0dG51bSA9IC0xLAogCS5yZW1vdGVf eGlkID0gSW52YWxpZFRyYW5zYWN0aW9uSWQsCiAJLnRzID0gMCwKQEAgLTI5Myw2ICszMDYsNyBA QCBzdGF0aWMgaW5saW5lIHZvaWQgY2xlYW51cF9zdWJ4YWN0X2luZm8odm9pZCk7CiBzdGF0aWMg dm9pZCBzdHJlYW1fY2xlYW51cF9maWxlcyhPaWQgc3ViaWQsIFRyYW5zYWN0aW9uSWQgeGlkKTsK IHN0YXRpYyB2b2lkIHN0cmVhbV9vcGVuX2ZpbGUoT2lkIHN1YmlkLCBUcmFuc2FjdGlvbklkIHhp ZCwgYm9vbCBmaXJzdCk7CiBzdGF0aWMgdm9pZCBzdHJlYW1fd3JpdGVfY2hhbmdlKGNoYXIgYWN0 aW9uLCBTdHJpbmdJbmZvIHMpOworCiBzdGF0aWMgdm9pZCBzdHJlYW1fY2xvc2VfZmlsZSh2b2lk KTsKIAogc3RhdGljIHZvaWQgc2VuZF9mZWVkYmFjayhYTG9nUmVjUHRyIHJlY3Zwb3MsIGJvb2wg Zm9yY2UsIGJvb2wgcmVxdWVzdFJlcGx5KTsKQEAgLTMwNCw2ICszMTgsOSBAQCBzdGF0aWMgdm9p ZCBtYXliZV9yZXJlYWRfc3Vic2NyaXB0aW9uKHZvaWQpOwogLyogcHJvdG90eXBlIG5lZWRlZCBi ZWNhdXNlIG9mIHN0cmVhbV9jb21taXQgKi8KIHN0YXRpYyB2b2lkIGFwcGx5X2Rpc3BhdGNoKFN0 cmluZ0luZm8gcyk7CiAKK3N0YXRpYyB2b2lkIHVwZGF0ZV9hcHBseV9jaGFuZ2Vfc2l6ZShMb2dp Y2FsUmVwTXNnVHlwZSBhY3Rpb24sCisJCQkJCQkJCQkgYm9vbCBpc19wYXJ0aXRpb25lZCk7CisK IHN0YXRpYyB2b2lkIGFwcGx5X2hhbmRsZV9jb21taXRfaW50ZXJuYWwoTG9naWNhbFJlcENvbW1p dERhdGEgKmNvbW1pdF9kYXRhKTsKIHN0YXRpYyB2b2lkIGFwcGx5X2hhbmRsZV9pbnNlcnRfaW50 ZXJuYWwoQXBwbHlFeGVjdXRpb25EYXRhICplZGF0YSwKIAkJCQkJCQkJCQkgUmVzdWx0UmVsSW5m byAqcmVsaW5mbywKQEAgLTgxOCw2ICs4MzUsMTEgQEAgYXBwbHlfaGFuZGxlX2NvbW1pdChTdHJp bmdJbmZvIHMpCiAJLyogUHJvY2VzcyBhbnkgdGFibGVzIHRoYXQgYXJlIGJlaW5nIHN5bmNocm9u aXplZCBpbiBwYXJhbGxlbC4gKi8KIAlwcm9jZXNzX3N5bmNpbmdfdGFibGVzKGNvbW1pdF9kYXRh LmVuZF9sc24pOwogCisJcGdzdGF0X3JlcG9ydF9zdWJ3b3JrZXJfeGFjdF9lbmQoTXlMb2dpY2Fs UmVwV29ya2VyLT5zdWJpZCwKKwkJCQkJCQkJCSBJbnZhbGlkT2lkLAorCQkJCQkJCQkJIExPR0lD QUxfUkVQX01TR19DT01NSVQsCisJCQkJCQkJCQkgZ2V0X2FwcGx5X2Vycm9yX2NvbnRleHRfeGFj dF9zaXplKCkpOworCiAJcGdzdGF0X3JlcG9ydF9hY3Rpdml0eShTVEFURV9JRExFLCBOVUxMKTsK IAlyZXNldF9hcHBseV9lcnJvcl9jb250ZXh0X2luZm8oKTsKIH0KQEAgLTkyMiw2ICs5NDQsMTMg QEAgYXBwbHlfaGFuZGxlX3ByZXBhcmUoU3RyaW5nSW5mbyBzKQogCS8qIFByb2Nlc3MgYW55IHRh YmxlcyB0aGF0IGFyZSBiZWluZyBzeW5jaHJvbml6ZWQgaW4gcGFyYWxsZWwuICovCiAJcHJvY2Vz c19zeW5jaW5nX3RhYmxlcyhwcmVwYXJlX2RhdGEuZW5kX2xzbik7CiAKKwkvKiBVcGRhdGUgdGhl IG1lbW9yeSBjb25zdW1wdGlvbiBvZiBwcmVwYXJlIGFuZCByZXBvcnQgKi8KKwl1cGRhdGVfYXBw bHlfY2hhbmdlX3NpemUoTE9HSUNBTF9SRVBfTVNHX1BSRVBBUkUsIGZhbHNlKTsKKwlwZ3N0YXRf cmVwb3J0X3N1Yndvcmtlcl90d29waGFzZV94YWN0KE15TG9naWNhbFJlcFdvcmtlci0+c3ViaWQs CisJCQkJCQkJCQkJICBMT0dJQ0FMX1JFUF9NU0dfUFJFUEFSRSwKKwkJCQkJCQkJCQkgIGdldF9h cHBseV9lcnJvcl9jb250ZXh0X3hhY3Rfc2l6ZSgpLAorCQkJCQkJCQkJCSAgcHJlcGFyZV9kYXRh LmdpZCk7CisKIAlwZ3N0YXRfcmVwb3J0X2FjdGl2aXR5KFNUQVRFX0lETEUsIE5VTEwpOwogCXJl c2V0X2FwcGx5X2Vycm9yX2NvbnRleHRfaW5mbygpOwogfQpAQCAtOTYzLDYgKzk5MiwxMyBAQCBh cHBseV9oYW5kbGVfY29tbWl0X3ByZXBhcmVkKFN0cmluZ0luZm8gcykKIAkvKiBQcm9jZXNzIGFu eSB0YWJsZXMgdGhhdCBhcmUgYmVpbmcgc3luY2hyb25pemVkIGluIHBhcmFsbGVsLiAqLwogCXBy b2Nlc3Nfc3luY2luZ190YWJsZXMocHJlcGFyZV9kYXRhLmVuZF9sc24pOwogCisJLyogVXBkYXRl IHRoZSB0cmFuc2FjdGlvbiBzaXplIGFuZCByZXBvcnQgKi8KKwl1cGRhdGVfYXBwbHlfY2hhbmdl X3NpemUoTE9HSUNBTF9SRVBfTVNHX0NPTU1JVF9QUkVQQVJFRCwgZmFsc2UpOworCXBnc3RhdF9y ZXBvcnRfc3Vid29ya2VyX3R3b3BoYXNlX3hhY3QoTXlMb2dpY2FsUmVwV29ya2VyLT5zdWJpZCwK KwkJCQkJCQkJCQkgIExPR0lDQUxfUkVQX01TR19DT01NSVRfUFJFUEFSRUQsCisJCQkJCQkJCQkJ ICBnZXRfYXBwbHlfZXJyb3JfY29udGV4dF94YWN0X3NpemUoKSwKKwkJCQkJCQkJCQkgIHByZXBh cmVfZGF0YS5naWQpOworCiAJcGdzdGF0X3JlcG9ydF9hY3Rpdml0eShTVEFURV9JRExFLCBOVUxM KTsKIAlyZXNldF9hcHBseV9lcnJvcl9jb250ZXh0X2luZm8oKTsKIH0KQEAgLTEwMTQsNiArMTA1 MCwxMyBAQCBhcHBseV9oYW5kbGVfcm9sbGJhY2tfcHJlcGFyZWQoU3RyaW5nSW5mbyBzKQogCS8q IFByb2Nlc3MgYW55IHRhYmxlcyB0aGF0IGFyZSBiZWluZyBzeW5jaHJvbml6ZWQgaW4gcGFyYWxs ZWwuICovCiAJcHJvY2Vzc19zeW5jaW5nX3RhYmxlcyhyb2xsYmFja19kYXRhLnJvbGxiYWNrX2Vu ZF9sc24pOwogCisJLyogVXBkYXRlIHRoZSB0cmFuc2FjdGlvbiBzaXplIGFuZCByZXBvcnQgKi8K Kwl1cGRhdGVfYXBwbHlfY2hhbmdlX3NpemUoTE9HSUNBTF9SRVBfTVNHX1JPTExCQUNLX1BSRVBB UkVELCBmYWxzZSk7CisJcGdzdGF0X3JlcG9ydF9zdWJ3b3JrZXJfdHdvcGhhc2VfeGFjdChNeUxv Z2ljYWxSZXBXb3JrZXItPnN1YmlkLAorCQkJCQkJCQkJCSAgTE9HSUNBTF9SRVBfTVNHX1JPTExC QUNLX1BSRVBBUkVELAorCQkJCQkJCQkJCSAgZ2V0X2FwcGx5X2Vycm9yX2NvbnRleHRfeGFjdF9z aXplKCksCisJCQkJCQkJCQkJICByb2xsYmFja19kYXRhLmdpZCk7CisKIAlwZ3N0YXRfcmVwb3J0 X2FjdGl2aXR5KFNUQVRFX0lETEUsIE5VTEwpOwogCXJlc2V0X2FwcGx5X2Vycm9yX2NvbnRleHRf aW5mbygpOwogfQpAQCAtMTA2Niw2ICsxMTA5LDE1IEBAIGFwcGx5X2hhbmRsZV9zdHJlYW1fcHJl cGFyZShTdHJpbmdJbmZvIHMpCiAJLyogUHJvY2VzcyBhbnkgdGFibGVzIHRoYXQgYXJlIGJlaW5n IHN5bmNocm9uaXplZCBpbiBwYXJhbGxlbC4gKi8KIAlwcm9jZXNzX3N5bmNpbmdfdGFibGVzKHBy ZXBhcmVfZGF0YS5lbmRfbHNuKTsKIAorCS8qCisJICogUmVwb3J0IHRoZSBwcmVwYXJlZCBzdHJl YW1pbmcgeGFjdCBzaXplIHRvIHRoZSBzdGF0cyBjb2xsZWN0b3IgaW4gYQorCSAqIHByZXBhcmVk IHhhY3QgbWFubmVyIHRvIG1ha2UgaXQgc3Vydml2ZSBvdmVyIHRoZSByZXN0YXJ0LgorCSAqLwor CXBnc3RhdF9yZXBvcnRfc3Vid29ya2VyX3R3b3BoYXNlX3hhY3QoTXlMb2dpY2FsUmVwV29ya2Vy LT5zdWJpZCwKKwkJCQkJCQkJCQkgIExPR0lDQUxfUkVQX01TR19TVFJFQU1fUFJFUEFSRSwKKwkJ CQkJCQkJCQkgIGdldF9hcHBseV9lcnJvcl9jb250ZXh0X3hhY3Rfc2l6ZSgpLAorCQkJCQkJCQkJ CSAgcHJlcGFyZV9kYXRhLmdpZCk7CisKIAlwZ3N0YXRfcmVwb3J0X2FjdGl2aXR5KFNUQVRFX0lE TEUsIE5VTEwpOwogCiAJcmVzZXRfYXBwbHlfZXJyb3JfY29udGV4dF9pbmZvKCk7CkBAIC0xNDM4 LDYgKzE0OTAsMTIgQEAgYXBwbHlfaGFuZGxlX3N0cmVhbV9jb21taXQoU3RyaW5nSW5mbyBzKQog CS8qIFByb2Nlc3MgYW55IHRhYmxlcyB0aGF0IGFyZSBiZWluZyBzeW5jaHJvbml6ZWQgaW4gcGFy YWxsZWwuICovCiAJcHJvY2Vzc19zeW5jaW5nX3RhYmxlcyhjb21taXRfZGF0YS5lbmRfbHNuKTsK IAorCS8qIFJlcG9ydCBhbmQgY2xlYW4gdXAgdGhlIHhpZCAqLworCXBnc3RhdF9yZXBvcnRfc3Vi d29ya2VyX3hhY3RfZW5kKE15TG9naWNhbFJlcFdvcmtlci0+c3ViaWQsCisJCQkJCQkJCQkgSW52 YWxpZE9pZCwKKwkJCQkJCQkJCSBMT0dJQ0FMX1JFUF9NU0dfU1RSRUFNX0NPTU1JVCwKKwkJCQkJ CQkJCSBnZXRfYXBwbHlfZXJyb3JfY29udGV4dF94YWN0X3NpemUoKSk7CisKIAlwZ3N0YXRfcmVw b3J0X2FjdGl2aXR5KFNUQVRFX0lETEUsIE5VTEwpOwogCiAJcmVzZXRfYXBwbHlfZXJyb3JfY29u dGV4dF9pbmZvKCk7CkBAIC0xNTc5LDYgKzE2MzcsMTAgQEAgYXBwbHlfaGFuZGxlX2luc2VydChT dHJpbmdJbmZvIHMpCiAJc2xvdF9maWxsX2RlZmF1bHRzKHJlbCwgZXN0YXRlLCByZW1vdGVzbG90 KTsKIAlNZW1vcnlDb250ZXh0U3dpdGNoVG8ob2xkY3R4KTsKIAorCS8qIFVwZGF0ZSB0cmFuc2Fj dGlvbiBzaXplICovCisJdXBkYXRlX2FwcGx5X2NoYW5nZV9zaXplKExPR0lDQUxfUkVQX01TR19J TlNFUlQsCisJCQkJCQkJIHJlbC0+bG9jYWxyZWwtPnJkX3JlbC0+cmVsa2luZCA9PSBSRUxLSU5E X1BBUlRJVElPTkVEX1RBQkxFKTsKKwogCS8qIEZvciBhIHBhcnRpdGlvbmVkIHRhYmxlLCBpbnNl cnQgdGhlIHR1cGxlIGludG8gYSBwYXJ0aXRpb24uICovCiAJaWYgKHJlbC0+bG9jYWxyZWwtPnJk X3JlbC0+cmVsa2luZCA9PSBSRUxLSU5EX1BBUlRJVElPTkVEX1RBQkxFKQogCQlhcHBseV9oYW5k bGVfdHVwbGVfcm91dGluZyhlZGF0YSwKQEAgLTE3MzYsNyArMTc5OCwxMSBAQCBhcHBseV9oYW5k bGVfdXBkYXRlKFN0cmluZ0luZm8gcykKIAkJCQkJaGFzX29sZHR1cCA/ICZvbGR0dXAgOiAmbmV3 dHVwKTsKIAlNZW1vcnlDb250ZXh0U3dpdGNoVG8ob2xkY3R4KTsKIAotCS8qIEZvciBhIHBhcnRp dGlvbmVkIHRhYmxlLCBhcHBseSB1cGRhdGUgdG8gY29ycmVjdCBwYXJ0aXRpb24uICovCisJLyog VXBkYXRlIHRyYW5zYWN0aW9uIHNpemUgKi8KKwl1cGRhdGVfYXBwbHlfY2hhbmdlX3NpemUoTE9H SUNBTF9SRVBfTVNHX1VQREFURSwKKwkJCQkJCQkgcmVsLT5sb2NhbHJlbC0+cmRfcmVsLT5yZWxr aW5kID09IFJFTEtJTkRfUEFSVElUSU9ORURfVEFCTEUpOworCisJLyogRm9yIGEgcGFydGl0aW9u ZWQgdGFibGUsIGFwcGx5IHVwZGF0ZSB0byBjb3JlY3QgcGFydGl0aW9uLiAqLwogCWlmIChyZWwt PmxvY2FscmVsLT5yZF9yZWwtPnJlbGtpbmQgPT0gUkVMS0lORF9QQVJUSVRJT05FRF9UQUJMRSkK IAkJYXBwbHlfaGFuZGxlX3R1cGxlX3JvdXRpbmcoZWRhdGEsCiAJCQkJCQkJCSAgIHJlbW90ZXNs b3QsICZuZXd0dXAsIENNRF9VUERBVEUpOwpAQCAtMTg3MCw2ICsxOTM2LDEwIEBAIGFwcGx5X2hh bmRsZV9kZWxldGUoU3RyaW5nSW5mbyBzKQogCXNsb3Rfc3RvcmVfZGF0YShyZW1vdGVzbG90LCBy ZWwsICZvbGR0dXApOwogCU1lbW9yeUNvbnRleHRTd2l0Y2hUbyhvbGRjdHgpOwogCisJLyogVXBk YXRlIHRyYW5zYWN0aW9uIHNpemUgKi8KKwl1cGRhdGVfYXBwbHlfY2hhbmdlX3NpemUoTE9HSUNB TF9SRVBfTVNHX0RFTEVURSwKKwkJCQkJCQkgcmVsLT5sb2NhbHJlbC0+cmRfcmVsLT5yZWxraW5k ID09IFJFTEtJTkRfUEFSVElUSU9ORURfVEFCTEUpOworCiAJLyogRm9yIGEgcGFydGl0aW9uZWQg dGFibGUsIGFwcGx5IGRlbGV0ZSB0byBjb3JyZWN0IHBhcnRpdGlvbi4gKi8KIAlpZiAocmVsLT5s b2NhbHJlbC0+cmRfcmVsLT5yZWxraW5kID09IFJFTEtJTkRfUEFSVElUSU9ORURfVEFCTEUpCiAJ CWFwcGx5X2hhbmRsZV90dXBsZV9yb3V0aW5nKGVkYXRhLApAQCAtMjQyMSw2ICsyNDkxLDgxIEBA IGFwcGx5X2Rpc3BhdGNoKFN0cmluZ0luZm8gcykKIH0KIAogLyoKKyAqIFN1YnNjcmliZXIgc2lk ZSBpbXBsZW1lbnRhdGlvbiBlcXVpdmFsZW50IHRvIFJlb3JkZXJCdWZmZXJDaGFuZ2VTaXplCisg KiBvZiB0aGUgcHVibGlzaGVyLgorICoKKyAqIEFjY29yZGluZyB0byB0aGUgbG9naWNhbCByZXBs aWNhdGlvbiBtZXNzYWdlIHR5cGUsIHJlY29yZCBtYWpvcgorICogcmVzb3VyY2UgY29uc3VtcHRp b25zIG9mIHRoaXMgc3Vic2NyaXB0aW9uIGZvciBlYWNoIG1lc3NhZ2UuCisgKiBBdCBwcmVzZW50 LCBkbyBub3QgY29sbGVjdCBkYXRhIGZyb20gZ2VuZXJpYyBmdW5jdGlvbnMgdG8ga2VlcAorICog Y29kZSBzaW1wbGljaXR5IGV4Y2VwdCBmb3IgdHVwbGUgbGVuZ3RoLCBzaW5jZSB0aGUgaW1wbGVt ZW50YXRpb24KKyAqIGNvbXBsZXhpdHkgdmVyc3VzIGJlbmVmaXQgdHJhZGVvZmYgc2hvdWxkIG5v dCBiZSBnb29kLgorICogSW4gdGVybXMgb2YgdHVwbGUgbGVuZ3RoIGNvbnN1bXB0aW9uLCBzZWUg bG9naWNhbHJlcF9yZWFkX3R1cGxlLgorICoKKyAqIEFsc28sIGFkZCBtdWx0aXBsZSB2YWx1ZXMg YXQgb25jZSBpbiBvcmRlciB0byByZWR1Y2UgdGhlIG51bWJlcgorICogb2YgY2FsbHMgdG8gdGhp cyBmdW5jdGlvbiwgYWx0aG91Z2ggdGhlIGRpc2FkdmFudGFnZSBvZiB0aGlzIHdheQorICogaXMg d2UgY2Fubm90IGdldCBjb3JyZWN0IHRyYW5zYWN0aW9uIHNpemUgd2hlbiB3ZSBnZXQgYW4gZXJy b3IuCisgKgorICogJ2lzX3BhcnRpdGlvbmVkJyBpcyB1c2VkIHRvIGFkZCBzb21lIGV4dHJhIHNp emUuCisgKi8KK3N0YXRpYyB2b2lkCit1cGRhdGVfYXBwbHlfY2hhbmdlX3NpemUoTG9naWNhbFJl cE1zZ1R5cGUgYWN0aW9uLCBib29sIGlzX3BhcnRpdGlvbmVkKQoreworCWludDY0CQlzaXplID0g MDsKKworCXN3aXRjaCAoYWN0aW9uKQorCXsKKwkJCS8qIE5vIHNwZWNpYWwgbWVtb3J5IGNvbnN1 bXB0aW9uICovCisJCWNhc2UgTE9HSUNBTF9SRVBfTVNHX0JFR0lOOgorCQljYXNlIExPR0lDQUxf UkVQX01TR19DT01NSVQ6CisJCWNhc2UgTE9HSUNBTF9SRVBfTVNHX1RSVU5DQVRFOgorCQljYXNl IExPR0lDQUxfUkVQX01TR19UWVBFOgorCQljYXNlIExPR0lDQUxfUkVQX01TR19PUklHSU46CisJ CWNhc2UgTE9HSUNBTF9SRVBfTVNHX01FU1NBR0U6CisJCWNhc2UgTE9HSUNBTF9SRVBfTVNHX0JF R0lOX1BSRVBBUkU6CisJCWNhc2UgTE9HSUNBTF9SRVBfTVNHX1JFTEFUSU9OOgorCQkJYnJlYWs7 CisKKwkJY2FzZSBMT0dJQ0FMX1JFUF9NU0dfSU5TRVJUOgorCQljYXNlIExPR0lDQUxfUkVQX01T R19VUERBVEU6CisJCWNhc2UgTE9HSUNBTF9SRVBfTVNHX0RFTEVURToKKwkJCUFzc2VydCghaW5f c3RyZWFtZWRfdHJhbnNhY3Rpb24pOworCisJCQkvKgorCQkJICogQ29tcHV0ZSBzaXplIGJhc2Vk IG9uIEFwcGx5RXhlY3V0aW9uRGF0YS4gVGhlIHNpemUgb2YKKwkJCSAqIExvZ2ljYWxSZXBSZWxN YXBFbnRyeSBjYW4gYmUgc2tpcHBlZCBiZWNhdXNlIGl0IGlzIG9idGFpbmVkCisJCQkgKiBmcm9t IGhhc2hfc2VhcmNoIGluIGxvZ2ljYWxyZXBfcmVsX29wZW4uCisJCQkgKi8KKwkJCXNpemUgKz0g c2l6ZW9mKEFwcGx5RXhlY3V0aW9uRGF0YSkgKyBzaXplb2YoRVN0YXRlKSArCisJCQkJc2l6ZW9m KFJlc3VsdFJlbEluZm8pICsgc2l6ZW9mKFJlc3VsdFJlbEluZm8pOworCisJCQkvKiBBZGQgc29t ZSBleHRyYSBzaXplIGlmIHRoZSB0YXJnZXQgcmVsYXRpb24gaXMgcGFydGl0aW9uZWQuICovCisJ CQlpZiAoaXNfcGFydGl0aW9uZWQpCisJCQkJc2l6ZSArPSBzaXplb2YoTW9kaWZ5VGFibGVTdGF0 ZSkgKyBzaXplb2YoUGFydGl0aW9uVHVwbGVSb3V0aW5nKTsKKwkJCWJyZWFrOworCisJCWNhc2Ug TE9HSUNBTF9SRVBfTVNHX1BSRVBBUkU6CisJCWNhc2UgTE9HSUNBTF9SRVBfTVNHX0NPTU1JVF9Q UkVQQVJFRDoKKwkJY2FzZSBMT0dJQ0FMX1JFUF9NU0dfUk9MTEJBQ0tfUFJFUEFSRUQ6CisJCQlz aXplICs9IHNpemVvZihGbHVzaFBvc2l0aW9uKTsKKwkJCWJyZWFrOworCisJCWNhc2UgTE9HSUNB TF9SRVBfTVNHX1NUUkVBTV9TVEFSVDoKKwkJY2FzZSBMT0dJQ0FMX1JFUF9NU0dfU1RSRUFNX1NU T1A6CisJCWNhc2UgTE9HSUNBTF9SRVBfTVNHX1NUUkVBTV9DT01NSVQ6CisJCWNhc2UgTE9HSUNB TF9SRVBfTVNHX1NUUkVBTV9QUkVQQVJFOgorCQljYXNlIExPR0lDQUxfUkVQX01TR19TVFJFQU1f QUJPUlQ6CisJCWRlZmF1bHQ6CisJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkoZXJyY29kZShFUlJD T0RFX1BST1RPQ09MX1ZJT0xBVElPTiksCisJCQkJCSBlcnJtc2coImludmFsaWQgbG9naWNhbCBy ZXBsaWNhdGlvbiBtZXNzYWdlIHR5cGUgXCIlY1wiIiwgYWN0aW9uKSkpOworCX0KKworCS8qIFVw ZGF0ZSB0aGUgdG90YWwgc2l6ZSBvZiBjb25zdW1wdGlvbiB3aGVuIG5lY2Vzc2FyeSAqLworCWlm IChzaXplICE9IDApCisJCWFkZF9hcHBseV9lcnJvcl9jb250ZXh0X3hhY3Rfc2l6ZShzaXplKTsK K30KKworLyoKICAqIEZpZ3VyZSBvdXQgd2hpY2ggd3JpdGUvZmx1c2ggcG9zaXRpb25zIHRvIHJl cG9ydCB0byB0aGUgd2Fsc2VuZGVyIHByb2Nlc3MuCiAgKgogICogV2UgY2FuJ3Qgc2ltcGx5IHJl cG9ydCBiYWNrIHRoZSBsYXN0IExTTiB0aGUgd2Fsc2VuZGVyIHNlbnQgdXMgYmVjYXVzZSB0aGUK QEAgLTMyOTQsNiArMzQzOSw3IEBAIHN0cmVhbV93cml0ZV9jaGFuZ2UoY2hhciBhY3Rpb24sIFN0 cmluZ0luZm8gcykKIAlCdWZGaWxlV3JpdGUoc3RyZWFtX2ZkLCAmcy0+ZGF0YVtzLT5jdXJzb3Jd LCBsZW4pOwogfQogCisKIC8qCiAgKiBDbGVhbnVwIHRoZSBtZW1vcnkgZm9yIHN1YnhhY3RzIGFu ZCByZXNldCB0aGUgcmVsYXRlZCB2YXJpYWJsZXMuCiAgKi8KQEAgLTM2MDQsNiArMzc1MCwyNyBA QCBBcHBseVdvcmtlck1haW4oRGF0dW0gbWFpbl9hcmcpCiAJcHJvY19leGl0KDApOwogfQogCisv KiBFeHBvcnRlZCBzbyB0aGF0IHN0YXRzIGNvbGxlY3RvciBjYW4gdXRpbGl6ZSB0aGlzIHZhbHVl ICovCitpbnQ2NAorZ2V0X2FwcGx5X2Vycm9yX2NvbnRleHRfeGFjdF9zaXplKHZvaWQpCit7CisJ cmV0dXJuIGFwcGx5X2Vycm9yX2NhbGxiYWNrX2FyZy5ieXRlczsKK30KKworLyogQWRkIHNpemUg dG8gYXBwbHkgZXJyb3IgYnl0ZXMgKi8KK3ZvaWQKK2FkZF9hcHBseV9lcnJvcl9jb250ZXh0X3hh Y3Rfc2l6ZShpbnQ2NCBzaXplKQoreworCWFwcGx5X2Vycm9yX2NhbGxiYWNrX2FyZy5ieXRlcyAr PSBzaXplOworfQorCisvKiBSZXNldCBpbmZvcm1hdGlvbiBvZiBhcHBseSBlcnJvciBjYWxsYmFj ayAqLwordm9pZAorcmVzZXRfYXBwbHlfZXJyb3JfY29udGV4dF94YWN0X3NpemUodm9pZCkKK3sK KwlhcHBseV9lcnJvcl9jYWxsYmFja19hcmcuYnl0ZXMgPSAwOworfQorCiAvKgogICogSXMgY3Vy cmVudCBwcm9jZXNzIGEgbG9naWNhbCByZXBsaWNhdGlvbiB3b3JrZXI/CiAgKi8KZGlmZiAtLWdp dCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9wZ3N0YXRmdW5jcy5jIGIvc3JjL2JhY2tlbmQvdXRp bHMvYWR0L3Bnc3RhdGZ1bmNzLmMKaW5kZXggZTdmZjRlZi4uMjY4MjMxNiAxMDA2NDQKLS0tIGEv c3JjL2JhY2tlbmQvdXRpbHMvYWR0L3Bnc3RhdGZ1bmNzLmMKKysrIGIvc3JjL2JhY2tlbmQvdXRp bHMvYWR0L3Bnc3RhdGZ1bmNzLmMKQEAgLTI0MTQsNyArMjQxNCw3IEBAIHBnX3N0YXRfZ2V0X3Jl cGxpY2F0aW9uX3Nsb3QoUEdfRlVOQ1RJT05fQVJHUykKIERhdHVtCiBwZ19zdGF0X2dldF9zdWJz Y3JpcHRpb25fd29ya2VyKFBHX0ZVTkNUSU9OX0FSR1MpCiB7Ci0jZGVmaW5lIFBHX1NUQVRfR0VU X1NVQlNDUklQVElPTl9XT1JLRVJfQ09MUwk5CisjZGVmaW5lIFBHX1NUQVRfR0VUX1NVQlNDUklQ VElPTl9XT1JLRVJfQ09MUwkxNQogCU9pZAkJCXN1YmlkID0gUEdfR0VUQVJHX09JRCgwKTsKIAlP aWQJCQlzdWJyZWxpZDsKIAlUdXBsZURlc2MJdHVwZGVzYzsKQEAgLTI0NDEsMTkgKzI0NDEsMzEg QEAgcGdfc3RhdF9nZXRfc3Vic2NyaXB0aW9uX3dvcmtlcihQR19GVU5DVElPTl9BUkdTKQogCQkJ CQkgICBPSURPSUQsIC0xLCAwKTsKIAlUdXBsZURlc2NJbml0RW50cnkodHVwZGVzYywgKEF0dHJO dW1iZXIpIDIsICJzdWJyZWxpZCIsCiAJCQkJCSAgIE9JRE9JRCwgLTEsIDApOwotCVR1cGxlRGVz Y0luaXRFbnRyeSh0dXBkZXNjLCAoQXR0ck51bWJlcikgMywgImxhc3RfZXJyb3JfcmVsaWQiLAor CVR1cGxlRGVzY0luaXRFbnRyeSh0dXBkZXNjLCAoQXR0ck51bWJlcikgMywgImNvbW1pdF9jb3Vu dCIsCisJCQkJCSAgIElOVDhPSUQsIC0xLCAwKTsKKwlUdXBsZURlc2NJbml0RW50cnkodHVwZGVz YywgKEF0dHJOdW1iZXIpIDQsICJjb21taXRfYnl0ZXMiLAorCQkJCQkgICBJTlQ4T0lELCAtMSwg MCk7CisJVHVwbGVEZXNjSW5pdEVudHJ5KHR1cGRlc2MsIChBdHRyTnVtYmVyKSA1LCAiZXJyb3Jf Y291bnQiLAorCQkJCQkgICBJTlQ4T0lELCAtMSwgMCk7CisJVHVwbGVEZXNjSW5pdEVudHJ5KHR1 cGRlc2MsIChBdHRyTnVtYmVyKSA2LCAiZXJyb3JfYnl0ZXMiLAorCQkJCQkgICBJTlQ4T0lELCAt MSwgMCk7CisJVHVwbGVEZXNjSW5pdEVudHJ5KHR1cGRlc2MsIChBdHRyTnVtYmVyKSA3LCAiYWJv cnRfY291bnQiLAorCQkJCQkgICBJTlQ4T0lELCAtMSwgMCk7CisJVHVwbGVEZXNjSW5pdEVudHJ5 KHR1cGRlc2MsIChBdHRyTnVtYmVyKSA4LCAiYWJvcnRfYnl0ZXMiLAorCQkJCQkgICBJTlQ4T0lE LCAtMSwgMCk7CisJVHVwbGVEZXNjSW5pdEVudHJ5KHR1cGRlc2MsIChBdHRyTnVtYmVyKSA5LCAi bGFzdF9lcnJvcl9yZWxpZCIsCiAJCQkJCSAgIE9JRE9JRCwgLTEsIDApOwotCVR1cGxlRGVzY0lu aXRFbnRyeSh0dXBkZXNjLCAoQXR0ck51bWJlcikgNCwgImxhc3RfZXJyb3JfY29tbWFuZCIsCisJ VHVwbGVEZXNjSW5pdEVudHJ5KHR1cGRlc2MsIChBdHRyTnVtYmVyKSAxMCwgImxhc3RfZXJyb3Jf Y29tbWFuZCIsCiAJCQkJCSAgIFRFWFRPSUQsIC0xLCAwKTsKLQlUdXBsZURlc2NJbml0RW50cnko dHVwZGVzYywgKEF0dHJOdW1iZXIpIDUsICJsYXN0X2Vycm9yX3hpZCIsCisJVHVwbGVEZXNjSW5p dEVudHJ5KHR1cGRlc2MsIChBdHRyTnVtYmVyKSAxMSwgImxhc3RfZXJyb3JfeGlkIiwKIAkJCQkJ ICAgWElET0lELCAtMSwgMCk7Ci0JVHVwbGVEZXNjSW5pdEVudHJ5KHR1cGRlc2MsIChBdHRyTnVt YmVyKSA2LCAibGFzdF9lcnJvcl9jb3VudCIsCisJVHVwbGVEZXNjSW5pdEVudHJ5KHR1cGRlc2Ms IChBdHRyTnVtYmVyKSAxMiwgImxhc3RfZXJyb3JfY291bnQiLAogCQkJCQkgICBJTlQ4T0lELCAt MSwgMCk7Ci0JVHVwbGVEZXNjSW5pdEVudHJ5KHR1cGRlc2MsIChBdHRyTnVtYmVyKSA3LCAibGFz dF9lcnJvcl9tZXNzYWdlIiwKKwlUdXBsZURlc2NJbml0RW50cnkodHVwZGVzYywgKEF0dHJOdW1i ZXIpIDEzLCAibGFzdF9lcnJvcl9tZXNzYWdlIiwKIAkJCQkJICAgVEVYVE9JRCwgLTEsIDApOwot CVR1cGxlRGVzY0luaXRFbnRyeSh0dXBkZXNjLCAoQXR0ck51bWJlcikgOCwgImZpcnN0X2Vycm9y X3RpbWUiLAorCVR1cGxlRGVzY0luaXRFbnRyeSh0dXBkZXNjLCAoQXR0ck51bWJlcikgMTQsICJm aXJzdF9lcnJvcl90aW1lIiwKIAkJCQkJICAgVElNRVNUQU1QVFpPSUQsIC0xLCAwKTsKLQlUdXBs ZURlc2NJbml0RW50cnkodHVwZGVzYywgKEF0dHJOdW1iZXIpIDksICJsYXN0X2Vycm9yX3RpbWUi LAorCVR1cGxlRGVzY0luaXRFbnRyeSh0dXBkZXNjLCAoQXR0ck51bWJlcikgMTUsICJsYXN0X2Vy cm9yX3RpbWUiLAogCQkJCQkgICBUSU1FU1RBTVBUWk9JRCwgLTEsIDApOwogCUJsZXNzVHVwbGVE ZXNjKHR1cGRlc2MpOwogCkBAIC0yNDcxLDYgKzI0ODMsMTQgQEAgcGdfc3RhdF9nZXRfc3Vic2Ny aXB0aW9uX3dvcmtlcihQR19GVU5DVElPTl9BUkdTKQogCWVsc2UKIAkJbnVsbHNbaSsrXSA9IHRy dWU7CiAKKwkvKiB0cmFuc2FjdGlvbiBzdGF0cyAqLworCXZhbHVlc1tpKytdID0gSW50NjRHZXRE YXR1bSh3ZW50cnktPnhhY3RfY29tbWl0X2NvdW50KTsKKwl2YWx1ZXNbaSsrXSA9IEludDY0R2V0 RGF0dW0od2VudHJ5LT54YWN0X2NvbW1pdF9ieXRlcyk7CisJdmFsdWVzW2krK10gPSBJbnQ2NEdl dERhdHVtKHdlbnRyeS0+eGFjdF9lcnJvcl9jb3VudCk7CisJdmFsdWVzW2krK10gPSBJbnQ2NEdl dERhdHVtKHdlbnRyeS0+eGFjdF9lcnJvcl9ieXRlcyk7CisJdmFsdWVzW2krK10gPSBJbnQ2NEdl dERhdHVtKHdlbnRyeS0+eGFjdF9hYm9ydF9jb3VudCk7CisJdmFsdWVzW2krK10gPSBJbnQ2NEdl dERhdHVtKHdlbnRyeS0+eGFjdF9hYm9ydF9ieXRlcyk7CisKIAkvKiBsYXN0X2Vycm9yX3JlbGlk ICovCiAJaWYgKE9pZElzVmFsaWQod2VudHJ5LT5yZWxpZCkpCiAJCXZhbHVlc1tpKytdID0gT2Jq ZWN0SWRHZXREYXR1bSh3ZW50cnktPnJlbGlkKTsKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2Nh dGFsb2cvcGdfcHJvYy5kYXQgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CmluZGV4 IDI1ZjY4NWYuLmZjNjU0YjQgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJv Yy5kYXQKKysrIGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdApAQCAtNTM4OSw5ICs1 Mzg5LDkgQEAKICAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfc3Vic2NyaXB0aW9uX3dvcmtlcics IHByb3Jvd3MgPT4gJzEnLCBwcm9pc3N0cmljdCA9PiAnZicsCiAgIHByb3JldHNldCA9PiAndCcs IHByb3ZvbGF0aWxlID0+ICdzJywgcHJvcGFyYWxsZWwgPT4gJ3InLAogICBwcm9yZXR0eXBlID0+ ICdyZWNvcmQnLCBwcm9hcmd0eXBlcyA9PiAnb2lkIG9pZCcsCi0gIHByb2FsbGFyZ3R5cGVzID0+ ICd7b2lkLG9pZCxvaWQsb2lkLG9pZCx0ZXh0LHhpZCxpbnQ4LHRleHQsdGltZXN0YW1wdHosdGlt ZXN0YW1wdHp9JywKLSAgcHJvYXJnbW9kZXMgPT4gJ3tpLGksbyxvLG8sbyxvLG8sbyxvLG99JywK LSAgcHJvYXJnbmFtZXMgPT4gJ3tzdWJpZCxzdWJyZWxpZCxzdWJpZCxzdWJyZWxpZCxsYXN0X2Vy cm9yX3JlbGlkLGxhc3RfZXJyb3JfY29tbWFuZCxsYXN0X2Vycm9yX3hpZCxsYXN0X2Vycm9yX2Nv dW50LGxhc3RfZXJyb3JfbWVzc2FnZSxmaXJzdF9lcnJvcl90aW1lLGxhc3RfZXJyb3JfdGltZX0n LAorICBwcm9hbGxhcmd0eXBlcyA9PiAne29pZCxvaWQsb2lkLG9pZCxpbnQ4LGludDgsaW50OCxp bnQ4LGludDgsaW50OCxvaWQsdGV4dCx4aWQsaW50OCx0ZXh0LHRpbWVzdGFtcHR6LHRpbWVzdGFt cHR6fScsCisgIHByb2FyZ21vZGVzID0+ICd7aSxpLG8sbyxvLG8sbyxvLG8sbyxvLG8sbyxvLG8s byxvfScsCisgIHByb2FyZ25hbWVzID0+ICd7c3ViaWQsc3VicmVsaWQsc3ViaWQsc3VicmVsaWQs Y29tbWl0X2NvdW50LGNvbW1pdF9ieXRlcyxlcnJvcl9jb3VudCxlcnJvcl9ieXRlcyxhYm9ydF9j b3VudCxhYm9ydF9ieXRlcyxsYXN0X2Vycm9yX3JlbGlkLGxhc3RfZXJyb3JfY29tbWFuZCxsYXN0 X2Vycm9yX3hpZCxsYXN0X2Vycm9yX2NvdW50LGxhc3RfZXJyb3JfbWVzc2FnZSxmaXJzdF9lcnJv cl90aW1lLGxhc3RfZXJyb3JfdGltZX0nLAogICBwcm9zcmMgPT4gJ3BnX3N0YXRfZ2V0X3N1YnNj cmlwdGlvbl93b3JrZXInIH0sCiB7IG9pZCA9PiAnNjExOCcsIGRlc2NyID0+ICdzdGF0aXN0aWNz OiBpbmZvcm1hdGlvbiBhYm91dCBzdWJzY3JpcHRpb24nLAogICBwcm9uYW1lID0+ICdwZ19zdGF0 X2dldF9zdWJzY3JpcHRpb24nLCBwcm9yb3dzID0+ICcxMCcsIHByb2lzc3RyaWN0ID0+ICdmJywK ZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3Bnc3RhdC5oIGIvc3JjL2luY2x1ZGUvcGdzdGF0LmgK aW5kZXggNjY0MzkzOC4uZjAxZTM3NCAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvcGdzdGF0LmgK KysrIGIvc3JjL2luY2x1ZGUvcGdzdGF0LmgKQEAgLTg2LDYgKzg2LDggQEAgdHlwZWRlZiBlbnVt IFN0YXRNc2dUeXBlCiAJUEdTVEFUX01UWVBFX0RJU0NPTk5FQ1QsCiAJUEdTVEFUX01UWVBFX1NV QlNDUklQVElPTlBVUkdFLAogCVBHU1RBVF9NVFlQRV9TVUJXT1JLRVJFUlJPUiwKKwlQR1NUQVRf TVRZUEVfU1VCV09SS0VSWEFDVEVORCwKKwlQR1NUQVRfTVRZUEVfU1VCV09SS0VSVFdPUEhBU0VY QUNULAogfSBTdGF0TXNnVHlwZTsKIAogLyogLS0tLS0tLS0tLQpAQCAtNTU4LDYgKzU2MCw1NiBA QCB0eXBlZGVmIHN0cnVjdCBQZ1N0YXRfTXNnU3Vic2NyaXB0aW9uUHVyZ2UKIH0gUGdTdGF0X01z Z1N1YnNjcmlwdGlvblB1cmdlOwogCiAvKiAtLS0tLS0tLS0tCisgKiBQZ1N0YXRfTXNnU3Vic2Ny aXB0aW9uWGFjdEVuZAlTZW50IGJ5IHRoZSBhcHBseSB3b3JrZXIgb3IgdGhlIHRhYmxlIHN5bmMg d29ya2VyCisgKgkJCQkJCQkJCXRvIHJlcG9ydCBzdWNjZXNzZnVsIHRyYW5zYWN0aW9uIGVuZHMu CisgKiAtLS0tLS0tLS0tCisgKi8KK3R5cGVkZWYgc3RydWN0IFBnU3RhdF9Nc2dTdWJXb3JrZXJY YWN0RW5kCit7CisJUGdTdGF0X01zZ0hkciBtX2hkcjsKKworCS8qIGRldGVybWluZSB0aGUgd29y a2VyIGVudHJ5ICovCisJT2lkCQkJbV9kYXRhYmFzZWlkOworCU9pZAkJCW1fc3ViaWQ7CisJT2lk CQkJbV9zdWJyZWxpZDsKKworCS8qCisJICogZGlzdGluZ3Vpc2ggYmV0d2VlbiB0cmFuc2FjdGlv biBjb21taXRzIGFuZCBzdHJlYW1pbmcgdHJhbnNhY3Rpb24KKwkgKiBhYm9ydHMgdGhhdCBhcmUg aGFuZGxlZCB3aXRob3V0IGVycm9yLgorCSAqLworCUxvZ2ljYWxSZXBNc2dUeXBlIG1fY29tbWFu ZDsKKworCS8qIG1lbW9yeSBjb25zdW1wdGlvbiB1c2VkIGJ5IHRyYW5zYWN0aW9uICovCisJUGdT dGF0X0NvdW50ZXIgbV94YWN0X2J5dGVzOworCit9IFBnU3RhdF9Nc2dTdWJXb3JrZXJYYWN0RW5k OworCisvKiAtLS0tLS0tLS0tCisgKiBQZ1N0YXRfTXNnU3ViV29ya2VyVHdvcGhhc2VYYWN0CVNl bnQgYnkgdGhlIGFwcGx5IHdvcmtlciB0byBtYWtlIHNpemUgb2YgcHJlcGFyZWQKKyAqCQkJCQkJ CQkJdHhuIHBlcnNpc3RlbnQgb3ZlciB0aGUgc2VydmVyIHJlc3RhcnQgYW5kIG1ha2UgaXQKKyAq CQkJCQkJCQkJdmlzaWJsZSBhZnRlciBjb21taXQgcHJlcGFyZSBvciByb2xsYmFjayBwcmVwYXJl ZC4KKyAqCQkJCQkJCQkJVGhpcyBpcyBzZXBhcmF0ZWQgZnJvbSBQZ1N0YXRfTXNnU3ViV29ya2Vy WGFjdEVuZAorICoJCQkJCQkJCQlzbyB0aGF0IHdlIGNhbiByZWR1Y2UgbWVzc2FnZSBzaXplIG9m IGdpZCBmb3Igb3RoZXIKKyAqCQkJCQkJCQkJb3BlcmF0aW9ucyAoZS5nLiBub3JtYWwgQ09NTUlU KSB0aGF0IHNob3VsZCBoYXBwZW4gbW9yZQorICoJCQkJCQkJCQlmcmVxdWVudGx5IHRoYW4gcHJl cGFyZSBvcGVyYXRpb24gdXN1YWxseS4KKyAqIC0tLS0tLS0tLS0KKyAqLwordHlwZWRlZiBzdHJ1 Y3QgUGdTdGF0X01zZ1N1YldvcmtlclR3b3BoYXNlWGFjdAoreworCVBnU3RhdF9Nc2dIZHIgbV9o ZHI7CisKKwkvKiBkZXRlcm1pbmUgdGhlIHN1YnNjcmlwdGlvbiAqLworCU9pZAkJCW1fZGF0YWJh c2VpZDsKKwlPaWQJCQltX3N1YmlkOworCisJTG9naWNhbFJlcE1zZ1R5cGUgbV9jb21tYW5kOwor CWNoYXIJCW1fZ2lkW0dJRFNJWkVdOworCWludAkJCWdpZF9sZW47CisJUGdTdGF0X0NvdW50ZXIg bV94YWN0X2J5dGVzOworCit9IFBnU3RhdF9Nc2dTdWJXb3JrZXJUd29waGFzZVhhY3Q7CisKKy8q IC0tLS0tLS0tLS0KICAqIFBnU3RhdF9Nc2dTdWJXb3JrZXJFcnJvcgkJU2VudCBieSB0aGUgYXBw bHkgd29ya2VyIG9yIHRoZSB0YWJsZSBzeW5jIHdvcmtlciB0bwogICoJCQkJCQkJCXJlcG9ydCB0 aGUgZXJyb3Igb2NjdXJyZWQgZHVyaW5nIGxvZ2ljYWwgcmVwbGljYXRpb24uCiAgKiAtLS0tLS0t LS0tCkBAIC01NzcsNiArNjI5LDEyIEBAIHR5cGVkZWYgc3RydWN0IFBnU3RhdF9Nc2dTdWJXb3Jr ZXJFcnJvcgogCU9pZAkJCW1fc3VicmVsaWQ7CiAKIAkvKgorCSAqIFRyYW5zYWN0aW9uIHN0YXRz IG9mIHN1YnNjcmlwdGlvbiBuZWVkcyB0byBiZSB1cGRhdGVkIHdoZW4gYW4gZXJyb3IKKwkgKiBv Y2N1cnMuCisJICovCisJUGdTdGF0X0NvdW50ZXIgbV94YWN0X2Vycm9yX2J5dGVzOworCisJLyoK IAkgKiBPaWRzIG9mIHRoZSBkYXRhYmFzZSBhbmQgdGhlIHRhYmxlIHRoYXQgdGhlIHJlcG9ydGVy IHdhcyBhY3R1YWxseQogCSAqIHByb2Nlc3NpbmcuIG1fcmVsaWQgY2FuIGJlIEludmFsaWRPaWQg aWYgYW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nCiAJICogd29ya2VyIGFwcGx5aW5nIGEgbm9uLWRh dGEtbW9kaWZpY2F0aW9uIG1lc3NhZ2Ugc3VjaCBhcyBSRUxBVElPTi4KQEAgLTc2OCw2ICs4MjYs OCBAQCB0eXBlZGVmIHVuaW9uIFBnU3RhdF9Nc2cKIAlQZ1N0YXRfTXNnRGlzY29ubmVjdCBtc2df ZGlzY29ubmVjdDsKIAlQZ1N0YXRfTXNnU3Vic2NyaXB0aW9uUHVyZ2UgbXNnX3N1YnNjcmlwdGlv bnB1cmdlOwogCVBnU3RhdF9Nc2dTdWJXb3JrZXJFcnJvciBtc2dfc3Vid29ya2VyZXJyb3I7CisJ UGdTdGF0X01zZ1N1YldvcmtlclhhY3RFbmQgbXNnX3N1YndvcmtlcnhhY3RlbmQ7CisJUGdTdGF0 X01zZ1N1YldvcmtlclR3b3BoYXNlWGFjdCBtc2dfc3Vid29ya2VydHdvcGhhc2V4YWN0OwogfSBQ Z1N0YXRfTXNnOwogCiAKQEAgLTgyMiwxNiArODgyLDIzIEBAIHR5cGVkZWYgc3RydWN0IFBnU3Rh dF9TdGF0REJFbnRyeQogCVRpbWVzdGFtcFR6IHN0YXRzX3RpbWVzdGFtcDsJLyogdGltZSBvZiBk YiBzdGF0cyBmaWxlIHVwZGF0ZSAqLwogCiAJLyoKLQkgKiB0YWJsZXMsIGZ1bmN0aW9ucywgYW5k IHN1YnNjcmlwdGlvbiB3b3JrZXJzIG11c3QgYmUgbGFzdCBpbiB0aGUgc3RydWN0LAotCSAqIGJl Y2F1c2Ugd2UgZG9uJ3Qgd3JpdGUgdGhlIHBvaW50ZXJzIG91dCB0byB0aGUgc3RhdHMgZmlsZS4K KwkgKiB0YWJsZXMsIGZ1bmN0aW9ucywgc3Vic2NyaXB0aW9uIHdvcmtlcnMgYW5kIGl0cyBwcmVw YXJlZCB0cmFuc2FjdGlvbgorCSAqIHN0YXRzIG11c3QgYmUgbGFzdCBpbiB0aGUgc3RydWN0LCBi ZWNhdXNlIHdlIGRvbid0IHdyaXRlIHRoZSBwb2ludGVycworCSAqIG91dCB0byB0aGUgc3RhdHMg ZmlsZS4KIAkgKgogCSAqIHN1YndvcmtlciBpcyB0aGUgaGFzaCB0YWJsZSBvZiBQZ1N0YXRfU3Rh dFN1YldvcmtlckVudHJ5IHdoaWNoIHN0b3JlcwotCSAqIHN0YXRpc3RpY3Mgb2YgbG9naWNhbCBy ZXBsaWNhdGlvbiB3b3JrZXJzOiBhcHBseSB3b3JrZXIKLQkgKiBhbmQgdGFibGUgc3luYyB3b3Jr ZXIuCisJICogc3RhdGlzdGljcyBvZiBsb2dpY2FsIHJlcGxpY2F0aW9uIHdvcmtlcnM6IGFwcGx5 IHdvcmtlciBhbmQgdGFibGUgc3luYworCSAqIHdvcmtlci4KKwkgKgorCSAqIHN1YndvcmtlcnNf cHJlcGFyZWRzaXplcyBzaG91bGQgZ2l2ZSBhcHByb3ByaWF0ZSB0cmFuc2FjdGlvbiBzaXplcyBh dAorCSAqIGVpdGhlciBjb21taXQgcHJlcGFyZWQgb3Igcm9sbGJhY2sgcHJlcGFyZWQgdGltZSwg ZXZlbiB3aGVuIGl0J3MgYWZ0ZXIKKwkgKiB0aGUgc2VydmVyIHJlc3RhcnQuIFdlIGhhdmUgdGhl IGFwcGx5IHdvcmtlciBzZW5kIHRob3NlIHN0YXRpc3RpY3MgdG8KKwkgKiB0aGUgc3RhdHMgY29s bGVjdG9yIGF0IHByZXBhcmUgdGltZS4KIAkgKi8KIAlIVEFCCSAgICp0YWJsZXM7CiAJSFRBQgkg ICAqZnVuY3Rpb25zOwogCUhUQUIJICAgKnN1YndvcmtlcnM7CisJSFRBQgkgICAqc3Vid29ya2Vy c19wcmVwYXJlZHNpemVzOwogfSBQZ1N0YXRfU3RhdERCRW50cnk7CiAKIApAQCAtMTAwNSw2ICsx MDcyLDE2IEBAIHR5cGVkZWYgc3RydWN0IFBnU3RhdF9TdGF0U3ViV29ya2VyRW50cnkKIAlQZ1N0 YXRfU3RhdFN1YldvcmtlcktleSBrZXk7CS8qIGhhc2gga2V5IChtdXN0IGJlIGZpcnN0KSAqLwog CiAJLyoKKwkgKiBDdW11bGF0aXZlIHRyYW5zYWN0aW9uIHN0YXRpc3RpY3Mgb2Ygc3Vic2NyaXB0 aW9uIHdvcmtlcgorCSAqLworCVBnU3RhdF9Db3VudGVyIHhhY3RfY29tbWl0X2NvdW50OworCVBn U3RhdF9Db3VudGVyIHhhY3RfY29tbWl0X2J5dGVzOworCVBnU3RhdF9Db3VudGVyIHhhY3RfZXJy b3JfY291bnQ7CisJUGdTdGF0X0NvdW50ZXIgeGFjdF9lcnJvcl9ieXRlczsKKwlQZ1N0YXRfQ291 bnRlciB4YWN0X2Fib3J0X2NvdW50OworCVBnU3RhdF9Db3VudGVyIHhhY3RfYWJvcnRfYnl0ZXM7 CisKKwkvKgogCSAqIFN1YnNjcmlwdGlvbiB3b3JrZXIgZXJyb3Igc3RhdGlzdGljcyByZXByZXNl bnRpbmcgYW4gZXJyb3IgdGhhdAogCSAqIG9jY3VycmVkIGR1cmluZyBhcHBsaWNhdGlvbiBvZiBs b2dpY2FsIHJlcGxpY2F0aW9uIG9yIHRoZSBpbml0aWFsIHRhYmxlCiAJICogc3luY2hyb25pemF0 aW9uLgpAQCAtMTAxOSw2ICsxMDk2LDIyIEBAIHR5cGVkZWYgc3RydWN0IFBnU3RhdF9TdGF0U3Vi V29ya2VyRW50cnkKIAljaGFyCQllcnJvcl9tZXNzYWdlW1BHU1RBVF9TVUJXT1JLRVJFUlJPUl9N U0dMRU5dOwogfSBQZ1N0YXRfU3RhdFN1YldvcmtlckVudHJ5OwogCisvKiBwcmVwYXJlZCB0cmFu c2FjdGlvbiAqLwordHlwZWRlZiBzdHJ1Y3QgUGdTdGF0X1NXX1ByZXBhcmVkWGFjdEtleQorewor CU9pZAkJCXN1YmlkOworCWNoYXIJCWdpZFtHSURTSVpFXTsKK30gUGdTdGF0X1NXX1ByZXBhcmVk WGFjdEtleTsKKwordHlwZWRlZiBzdHJ1Y3QgUGdTdGF0X1NXX1ByZXBhcmVkWGFjdEVudHJ5Cit7 CisJUGdTdGF0X1NXX1ByZXBhcmVkWGFjdEtleSBrZXk7CS8qIGhhc2gga2V5ICovCisKKwlPaWQJ CQlzdWJpZDsKKwljaGFyCQlnaWRbR0lEU0laRV07CisJUGdTdGF0X0NvdW50ZXIgeGFjdF9zaXpl OworfSBQZ1N0YXRfU1dfUHJlcGFyZWRYYWN0RW50cnk7CisKIC8qCiAgKiBXb3JraW5nIHN0YXRl IG5lZWRlZCB0byBhY2N1bXVsYXRlIHBlci1mdW5jdGlvbi1jYWxsIHRpbWluZyBzdGF0aXN0aWNz LgogICovCkBAIC0xMTI5LDYgKzEyMjIsMTAgQEAgZXh0ZXJuIHZvaWQgcGdzdGF0X3JlcG9ydF9j aGVja3N1bV9mYWlsdXJlKHZvaWQpOwogZXh0ZXJuIHZvaWQgcGdzdGF0X3JlcG9ydF9yZXBsc2xv dChjb25zdCBQZ1N0YXRfU3RhdFJlcGxTbG90RW50cnkgKnJlcFNsb3RTdGF0KTsKIGV4dGVybiB2 b2lkIHBnc3RhdF9yZXBvcnRfcmVwbHNsb3RfY3JlYXRlKGNvbnN0IGNoYXIgKnNsb3RuYW1lKTsK IGV4dGVybiB2b2lkIHBnc3RhdF9yZXBvcnRfcmVwbHNsb3RfZHJvcChjb25zdCBjaGFyICpzbG90 bmFtZSk7CitleHRlcm4gdm9pZCBwZ3N0YXRfcmVwb3J0X3N1Yndvcmtlcl94YWN0X2VuZChPaWQg c3ViaWQsIE9pZCBzdWJyZWwsCisJCQkJCQkJCQkJCSBMb2dpY2FsUmVwTXNnVHlwZSBjb21tYW5k LCBQZ1N0YXRfQ291bnRlciB4YWN0X3NpemUpOworZXh0ZXJuIHZvaWQgcGdzdGF0X3JlcG9ydF9z dWJ3b3JrZXJfdHdvcGhhc2VfeGFjdChPaWQgc3ViaWQsIExvZ2ljYWxSZXBNc2dUeXBlIGNvbW1h bmQsCisJCQkJCQkJCQkJCQkgIFBnU3RhdF9Db3VudGVyIHhhY3Rfc2l6ZSwgY2hhciAqZ2lkKTsK IGV4dGVybiB2b2lkIHBnc3RhdF9yZXBvcnRfc3Vid29ya2VyX2Vycm9yKE9pZCBzdWJpZCwgT2lk IHN1YnJlbGlkLCBPaWQgcmVsaWQsCiAJCQkJCQkJCQkJICBMb2dpY2FsUmVwTXNnVHlwZSBjb21t YW5kLAogCQkJCQkJCQkJCSAgVHJhbnNhY3Rpb25JZCB4aWQsIGNvbnN0IGNoYXIgKmVycm1zZyk7 CmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9yZXBsaWNhdGlvbi9sb2dpY2Fsd29ya2VyLmggYi9z cmMvaW5jbHVkZS9yZXBsaWNhdGlvbi9sb2dpY2Fsd29ya2VyLmgKaW5kZXggMmFkNjFhMC4uOWE4 NDQ3YiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvcmVwbGljYXRpb24vbG9naWNhbHdvcmtlci5o CisrKyBiL3NyYy9pbmNsdWRlL3JlcGxpY2F0aW9uL2xvZ2ljYWx3b3JrZXIuaApAQCAtMTYsNCAr MTYsOSBAQCBleHRlcm4gdm9pZCBBcHBseVdvcmtlck1haW4oRGF0dW0gbWFpbl9hcmcpOwogCiBl eHRlcm4gYm9vbCBJc0xvZ2ljYWxXb3JrZXIodm9pZCk7CiAKKy8qIGZvciB0cmFuc2FjdGlvbiBz dGF0cyAqLworZXh0ZXJuIGludDY0IGdldF9hcHBseV9lcnJvcl9jb250ZXh0X3hhY3Rfc2l6ZSh2 b2lkKTsKK2V4dGVybiB2b2lkIGFkZF9hcHBseV9lcnJvcl9jb250ZXh0X3hhY3Rfc2l6ZShpbnQ2 NCBzaXplKTsKK2V4dGVybiB2b2lkIHJlc2V0X2FwcGx5X2Vycm9yX2NvbnRleHRfeGFjdF9zaXpl KHZvaWQpOworCiAjZW5kaWYJCQkJCQkJLyogTE9HSUNBTFdPUktFUl9IICovCmRpZmYgLS1naXQg YS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3J1bGVzLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQvcnVsZXMub3V0CmluZGV4IGQ2MGM1YTUuLmJkM2UyMjEgMTAwNjQ0Ci0tLSBhL3Ny Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcnVsZXMub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQvcnVsZXMub3V0CkBAIC0yMDk3LDYgKzIwOTcsMTIgQEAgcGdfc3RhdF9zdWJzY3Jp cHRpb258IFNFTEVDVCBzdS5vaWQgQVMgc3ViaWQsCiBwZ19zdGF0X3N1YnNjcmlwdGlvbl93b3Jr ZXJzfCBTRUxFQ1Qgdy5zdWJpZCwKICAgICBzLnN1Ym5hbWUsCiAgICAgdy5zdWJyZWxpZCwKKyAg ICB3LmNvbW1pdF9jb3VudCwKKyAgICB3LmNvbW1pdF9ieXRlcywKKyAgICB3LmVycm9yX2NvdW50 LAorICAgIHcuZXJyb3JfYnl0ZXMsCisgICAgdy5hYm9ydF9jb3VudCwKKyAgICB3LmFib3J0X2J5 dGVzLAogICAgIHcubGFzdF9lcnJvcl9yZWxpZCwKICAgICB3Lmxhc3RfZXJyb3JfY29tbWFuZCwK ICAgICB3Lmxhc3RfZXJyb3JfeGlkLApAQCAtMjExMiw3ICsyMTE4LDcgQEAgcGdfc3RhdF9zdWJz Y3JpcHRpb25fd29ya2Vyc3wgU0VMRUNUIHcuc3ViaWQsCiAgICAgICAgICAgICBwZ19zdWJzY3Jp cHRpb25fcmVsLnNycmVsaWQgQVMgcmVsaWQKICAgICAgICAgICAgRlJPTSBwZ19zdWJzY3JpcHRp b25fcmVsCiAgICAgICAgICAgV0hFUkUgKHBnX3N1YnNjcmlwdGlvbl9yZWwuc3JzdWJzdGF0ZSA8 PiAncic6OiJjaGFyIikpIHNyLAotICAgIChMQVRFUkFMIHBnX3N0YXRfZ2V0X3N1YnNjcmlwdGlv bl93b3JrZXIoc3Iuc3ViaWQsIHNyLnJlbGlkKSB3KHN1YmlkLCBzdWJyZWxpZCwgbGFzdF9lcnJv cl9yZWxpZCwgbGFzdF9lcnJvcl9jb21tYW5kLCBsYXN0X2Vycm9yX3hpZCwgbGFzdF9lcnJvcl9j b3VudCwgbGFzdF9lcnJvcl9tZXNzYWdlLCBmaXJzdF9lcnJvcl90aW1lLCBsYXN0X2Vycm9yX3Rp bWUpCisgICAgKExBVEVSQUwgcGdfc3RhdF9nZXRfc3Vic2NyaXB0aW9uX3dvcmtlcihzci5zdWJp ZCwgc3IucmVsaWQpIHcoc3ViaWQsIHN1YnJlbGlkLCBjb21taXRfY291bnQsIGNvbW1pdF9ieXRl cywgZXJyb3JfY291bnQsIGVycm9yX2J5dGVzLCBhYm9ydF9jb3VudCwgYWJvcnRfYnl0ZXMsIGxh c3RfZXJyb3JfcmVsaWQsIGxhc3RfZXJyb3JfY29tbWFuZCwgbGFzdF9lcnJvcl94aWQsIGxhc3Rf ZXJyb3JfY291bnQsIGxhc3RfZXJyb3JfbWVzc2FnZSwgZmlyc3RfZXJyb3JfdGltZSwgbGFzdF9l cnJvcl90aW1lKQogICAgICBKT0lOIHBnX3N1YnNjcmlwdGlvbiBzIE9OICgody5zdWJpZCA9IHMu b2lkKSkpOwogcGdfc3RhdF9zeXNfaW5kZXhlc3wgU0VMRUNUIHBnX3N0YXRfYWxsX2luZGV4ZXMu cmVsaWQsCiAgICAgcGdfc3RhdF9hbGxfaW5kZXhlcy5pbmRleHJlbGlkLApkaWZmIC0tZ2l0IGEv c3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL3QvMDI3X3dvcmtlcl94YWN0X3N0YXRzLnBsIGIvc3JjL3Rl c3Qvc3Vic2NyaXB0aW9uL3QvMDI3X3dvcmtlcl94YWN0X3N0YXRzLnBsCm5ldyBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUwOWJlNDIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMvdGVz dC9zdWJzY3JpcHRpb24vdC8wMjdfd29ya2VyX3hhY3Rfc3RhdHMucGwKQEAgLTAsMCArMSwxNDYg QEAKKworIyBDb3B5cmlnaHQgKGMpIDIwMjEsIFBvc3RncmVTUUwgR2xvYmFsIERldmVsb3BtZW50 IEdyb3VwCisKKyMgVGVzdHMgZm9yIHN1YnNjcmlwdGlvbiB3b3JrZXIgc3RhdGlzdGljcyBkdXJp bmcgYXBwbHkuCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOwordXNlIFBvc3RncmVTUUw6OlRl c3Q6OkNsdXN0ZXI7Cit1c2UgUG9zdGdyZVNRTDo6VGVzdDo6VXRpbHM7Cit1c2UgVGVzdDo6TW9y ZSB0ZXN0cyA9PiAyOworCisjIENyZWF0ZSBwdWJsaXNoZXIgbm9kZQorbXkgJG5vZGVfcHVibGlz aGVyID0gUG9zdGdyZVNRTDo6VGVzdDo6Q2x1c3Rlci0+bmV3KCdwdWJsaXNoZXInKTsKKyRub2Rl X3B1Ymxpc2hlci0+aW5pdChhbGxvd3Nfc3RyZWFtaW5nID0+ICdsb2dpY2FsJyk7Ciskbm9kZV9w dWJsaXNoZXItPmFwcGVuZF9jb25mKAorCSdwb3N0Z3Jlc3FsLmNvbmYnLCBxcVsKK2xvZ2ljYWxf ZGVjb2Rpbmdfd29ya19tZW0gPSA2NGtCCittYXhfcHJlcGFyZWRfdHJhbnNhY3Rpb25zID0gMTAK K21heF93YWxfc2VuZGVycyA9IDEwCit3YWxfc2VuZGVyX3RpbWVvdXQgPSAwCitdKTsKKyRub2Rl X3B1Ymxpc2hlci0+c3RhcnQ7CisKKyMgQ3JlYXRlIHN1YnNjcmliZXIgbm9kZQorbXkgJG5vZGVf c3Vic2NyaWJlciA9IFBvc3RncmVTUUw6OlRlc3Q6OkNsdXN0ZXItPm5ldygnc3Vic2NyaWJlcicp OworJG5vZGVfc3Vic2NyaWJlci0+aW5pdChhbGxvd3Nfc3RyZWFtaW5nID0+ICdsb2dpY2FsJyk7 Ciskbm9kZV9zdWJzY3JpYmVyLT5hcHBlbmRfY29uZigKKwkncG9zdGdyZXNxbC5jb25mJywgcXFb CittYXhfcHJlcGFyZWRfdHJhbnNhY3Rpb25zID0gMTAKK2xvZ19taW5fbWVzc2FnZXMgPSBERUJV RzEKK10pOworJG5vZGVfc3Vic2NyaWJlci0+c3RhcnQ7CisKKyMgU2V0dXAgc3RydWN0dXJlcyBv biB0aGUgcHVibGlzaGVyIGFuZCB0aGUgc3Vic2NyaWJlcgorJG5vZGVfcHVibGlzaGVyLT5zYWZl X3BzcWwoJ3Bvc3RncmVzJywgIkNSRUFURSBUQUJMRSB0ZXN0X3RhYiAoYSBpbnQpIik7Ciskbm9k ZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiQ1JFQVRFIFRBQkxFIHRlc3Rf dGFiIChhIGludCBwcmltYXJ5IGtleSk7Iik7CisKKyMgU2V0dXAgbG9naWNhbCByZXBsaWNhdGlv bgorbXkgJHB1Ymxpc2hlcl9jb25uc3RyID0gJG5vZGVfcHVibGlzaGVyLT5jb25uc3RyIC4gJyBk Ym5hbWU9cG9zdGdyZXMnOworJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywK KwkiQ1JFQVRFIFBVQkxJQ0FUSU9OIHRhcF9wdWIgRk9SIFRBQkxFIHRlc3RfdGFiIik7CisKK215 ICRhcHBuYW1lID0gJ3RhcF9zdWInOworbXkgJHN1Ym9wdHMgPSAnc3RyZWFtaW5nID0gb24sIHR3 b19waGFzZSA9IG9uLCBjb3B5X2RhdGEgPSBmYWxzZSc7Ciskbm9kZV9zdWJzY3JpYmVyLT5zYWZl X3BzcWwoCisJJ3Bvc3RncmVzJywgcXFbCitDUkVBVEUgU1VCU0NSSVBUSU9OIHRhcF9zdWIKK0NP Tk5FQ1RJT04gJyRwdWJsaXNoZXJfY29ubnN0ciBhcHBsaWNhdGlvbl9uYW1lPSRhcHBuYW1lJwor UFVCTElDQVRJT04gdGFwX3B1YiBXSVRIICgkc3Vib3B0cyk7CitdKTsKKworJG5vZGVfcHVibGlz aGVyLT53YWl0X2Zvcl9jYXRjaHVwKCRhcHBuYW1lKTsKKworIyBUaGVyZSdzIG5vIGVudHJ5IGF0 IHRoZSBiZWdpbm5pbmcKK215ICRyZXN1bHQgPSAkbm9kZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwo J3Bvc3RncmVzJywKKwkiU0VMRUNUIGNvdW50KCopIEZST00gcGdfc3RhdF9zdWJzY3JpcHRpb25f d29ya2VyczsiKTsKK2lzKCRyZXN1bHQsIHEoMCksICdubyBlbnRyeSBmb3IgdHJhbnNhY3Rpb24g c3RhdHMgeWV0Jyk7CisKKyMgQ09NTUlUCiskbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9z dGdyZXMnLAorCSJCRUdJTjsgSU5TRVJUIElOVE8gdGVzdF90YWIgVkFMVUVTICgxKTsgQ09NTUlU OyIpOworCiskbm9kZV9zdWJzY3JpYmVyLT5wb2xsX3F1ZXJ5X3VudGlsKCdwb3N0Z3JlcycsCisJ IlNFTEVDVCBjb3VudCgxKSA9IDEgRlJPTSBwZ19zdGF0X3N1YnNjcmlwdGlvbl93b3JrZXJzIHdo ZXJlIGNvbW1pdF9jb3VudCA9IDE7IgorKSBvciBkaWUgImRpZG4ndCBnZXQgdXBkYXRlcyBvZiB4 YWN0IHN0YXRzIGJ5IGNvbW1pdCI7CisKKyMgTm93LCBzdGF0cyBjb2xsZWN0b3IgbWFrZSB0aGUg Ynl0ZXMgdXBkYXRlZCBhbHNvLgorJHJlc3VsdCA9ICRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNx bCgncG9zdGdyZXMnLAorCSJTRUxFQ1QgY29tbWl0X2J5dGVzID4gMCBGUk9NIHBnX3N0YXRfc3Vi c2NyaXB0aW9uX3dvcmtlcnM7Iik7CitpcygkcmVzdWx0LCBxKHQpLCAnZ290IGNvbnN1bWVkIGJ5 dGVzJyk7CisKKyMgU1RSRUFNIENPTU1JVAorJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bv c3RncmVzJywKKwkiQkVHSU47IElOU0VSVCBJTlRPIHRlc3RfdGFiIFZBTFVFUyhnZW5lcmF0ZV9z ZXJpZXMoMTAwMSwgMjAwMCkpOyBDT01NSVQ7IgorKTsKKyRub2RlX3N1YnNjcmliZXItPnBvbGxf cXVlcnlfdW50aWwoJ3Bvc3RncmVzJywKKwkiU0VMRUNUIGNvdW50KDEpID0gMSBGUk9NIHBnX3N0 YXRfc3Vic2NyaXB0aW9uX3dvcmtlcnMgd2hlcmUgY29tbWl0X2NvdW50ID0gMjsiCispIG9yIGRp ZSAiZGlkbid0IGdldCB1cGRhdGVzIG9mIHhhY3Qgc3RhdHMgYnkgc3RyZWFtIGNvbW1pdCI7CisK KyMgU1RSRUFNIFBSRVBBUkUgJiBDT01NSVQgUFJFUEFSRUQKKyMgVGhpcyBzaG91bGQgcmVzdG9y ZSB0aGUgeGFjdCBzaXplIGJlZm9yZSB0aGUgc2h1dGRvd24uCiskbm9kZV9wdWJsaXNoZXItPnNh ZmVfcHNxbCgKKwkncG9zdGdyZXMnLCBxWworQkVHSU47CitJTlNFUlQgSU5UTyB0ZXN0X3RhYiBW QUxVRVMoZ2VuZXJhdGVfc2VyaWVzKDIwMDEsIDMwMDApKTsKK1BSRVBBUkUgVFJBTlNBQ1RJT04g J2dpZDEnOworXSk7CisKKyMgVGhpcyBzdHJlYW1lZCBwcmVwYXJlIGlzIG5vdCBkaXNwbGF5ZWQg dW50aWwgdGhlIGNvbW1pdCBwcmVwYXJlZAorIyBvciByb2xsYmFjayBwcmVwYXJlZC4gSGVuY2Us IHRoZXJlJ3Mgbm8gd2F5IHRvIGNvbmZpcm0gdGhhdAorIyBzdGF0cyBjb2xsZWN0b3IgaGFzIHJl Y2VpdmVkIHRoZSBieXRlcyBvZiBwcmVwYXJlZCB0cmFuc2FjdGlvbi4KKyMgU28sIGluc3RlYWQg b2YgY2hlY2tpbmcgdGhlIHZpZXcsIGlzc3VlIG9uZSBtb3JlIGNvbW1pdHRlZCB0cmFuc2FjdGlv bgorIyBhZnRlciB0aGUgcHJlcGFyZSBhbmQgbWFrZSBzdXJlIHRoYXQgdGhpcyBjb21taXQncyB1 cGRhdGUgaXMgZG9uZSwKKyMgd2hpY2ggc2hvdWxkIG1lYW4gdGhlIHByZXZpb3VzIHN0cmVhbWVk IHByZXBhcmUgaXMgYWxyZWFkeSBwcm9jZXNzZWQKKyMgYnkgdGhlIHN0YXRzIGNvbGxlY3RvciBh cyB3ZWxsLgorJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiQkVHSU47 IElOU0VSVCBJTlRPIHRlc3RfdGFiIFZBTFVFUyAoMik7IENPTU1JVDsiKTsKKyRub2RlX3N1YnNj cmliZXItPnBvbGxfcXVlcnlfdW50aWwoJ3Bvc3RncmVzJywKKwkiU0VMRUNUIGNvdW50KDEpID0g MSBGUk9NIHBnX3N0YXRfc3Vic2NyaXB0aW9uX3dvcmtlcnMgd2hlcmUgY29tbWl0X2NvdW50ID0g MzsiCispIG9yIGRpZSAiZGlkbid0IHByb2Nlc3MgdGhlIHVwZGF0ZXMgb2YgY29tbWl0dGVkIHRy YW5zYWN0aW9uIjsKKworJG5vZGVfc3Vic2NyaWJlci0+cmVzdGFydDsKKworIyBHZXQgY29tbWl0 X2J5dGVzIGJlZm9yZSBjb21taXQgcHJlcGFyZWQuCitteSAkdG1wID0gJG5vZGVfc3Vic2NyaWJl ci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCisJIlNFTEVDVCBjb21taXRfYnl0ZXMgRlJPTSBwZ19z dGF0X3N1YnNjcmlwdGlvbl93b3JrZXJzIHdoZXJlIGNvbW1pdF9jb3VudCA9IDM7IgorKTsKKwor IyBDb21taXQgcHJlcGFyZWQgaW5jcmVtZW50cyB0aGUgY29tbWl0X2NvdW50LgorJG5vZGVfcHVi bGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywgIkNPTU1JVCBQUkVQQVJFRCAnZ2lkMSciKTsK KyRub2RlX3N1YnNjcmliZXItPnBvbGxfcXVlcnlfdW50aWwoJ3Bvc3RncmVzJywKKwkiU0VMRUNU IGNvdW50KDEpID0gMSBGUk9NIHBnX3N0YXRfc3Vic2NyaXB0aW9uX3dvcmtlcnMgd2hlcmUgY29t bWl0X2NvdW50ID0gNDsiCisgICkKKyAgb3IgZGllCisgICJkaWRuJ3QgZ2V0IHVwZGF0ZXMgb2Yg eGFjdCBzdGF0cyBieSBzdHJlYW0gcHJlcGFyZSBhbmQgY29tbWl0IHByZXBhcmVkIjsKKworJG5v ZGVfc3Vic2NyaWJlci0+cG9sbF9xdWVyeV91bnRpbCgncG9zdGdyZXMnLAorCSJTRUxFQ1QgY29t bWl0X2J5dGVzID4gJHRtcCBGUk9NIHBnX3N0YXRfc3Vic2NyaXB0aW9uX3dvcmtlcnMgd2hlcmUg Y29tbWl0X2NvdW50ID0gNDsiCispOworCisjIFJPTExCQUNLIFBSRVBBUkVECiskbm9kZV9wdWJs aXNoZXItPnNhZmVfcHNxbCgKKwkncG9zdGdyZXMnLCBxWworQkVHSU47CitJTlNFUlQgSU5UTyB0 ZXN0X3RhYiBWQUxVRVMgKDMpOworUFJFUEFSRSBUUkFOU0FDVElPTiAnZ2lkMic7CitdKTsKKyRu b2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsICJST0xMQkFDSyBQUkVQQVJFRCAn Z2lkMiciKTsKKyRub2RlX3N1YnNjcmliZXItPnBvbGxfcXVlcnlfdW50aWwoJ3Bvc3RncmVzJywK KwkiU0VMRUNUIGNvdW50KDEpID0gMSBGUk9NIHBnX3N0YXRfc3Vic2NyaXB0aW9uX3dvcmtlcnMg d2hlcmUgYWJvcnRfY291bnQgPSAxOyIKKykgb3IgZGllICJkaWRuJ3QgZ2V0IHVwZGF0ZXMgb2Yg eGFjdCBzdGF0cyBieSByb2xsYmFjayBwcmVwYXJlZCI7CisKKyMgZXJyb3Igc3RhdHMgKGJ5IGR1 cGxpY2F0aW9uIGVycm9yKQorJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoCisJJ3Bvc3RncmVz JywgcVsKK0JFR0lOOworSU5TRVJUIElOVE8gdGVzdF90YWIgVkFMVUVTICgxKTsKK0NPTU1JVDsK K10pOworCiskbm9kZV9zdWJzY3JpYmVyLT5wb2xsX3F1ZXJ5X3VudGlsKCdwb3N0Z3JlcycsCisJ IlNFTEVDVCBjb3VudCgxKSA9IDEgRlJPTSBwZ19zdGF0X3N1YnNjcmlwdGlvbl93b3JrZXJzIHdo ZXJlIGVycm9yX2NvdW50ID4gMDsiCispIG9yIGRpZSAiZGlkbid0IGdldCB1cGRhdGVzIG9mIHhh Y3Qgc3RhdHMgYnkgZXJyb3IiOworCiskbm9kZV9zdWJzY3JpYmVyLT5zdG9wKCdmYXN0Jyk7Cisk bm9kZV9wdWJsaXNoZXItPnN0b3AoJ2Zhc3QnKTsKZGlmZiAtLWdpdCBhL3NyYy90b29scy9wZ2lu ZGVudC90eXBlZGVmcy5saXN0IGIvc3JjL3Rvb2xzL3BnaW5kZW50L3R5cGVkZWZzLmxpc3QKaW5k ZXggZjQxZWYwZC4uMzQwMzY2NyAxMDA2NDQKLS0tIGEvc3JjL3Rvb2xzL3BnaW5kZW50L3R5cGVk ZWZzLmxpc3QKKysrIGIvc3JjL3Rvb2xzL3BnaW5kZW50L3R5cGVkZWZzLmxpc3QKQEAgLTE5NDUs NiArMTk0NSw4IEBAIFBnU3RhdF9Nc2dSZXNldHNscnVjb3VudGVyCiBQZ1N0YXRfTXNnU0xSVQog UGdTdGF0X01zZ1N1YnNjcmlwdGlvblB1cmdlCiBQZ1N0YXRfTXNnU3ViV29ya2VyRXJyb3IKK1Bn U3RhdF9Nc2dTdWJXb3JrZXJUd29waGFzZVhhY3QKK1BnU3RhdF9Nc2dTdWJXb3JrZXJYYWN0RW5k CiBQZ1N0YXRfTXNnVGFicHVyZ2UKIFBnU3RhdF9Nc2dUYWJzdGF0CiBQZ1N0YXRfTXNnVGVtcEZp bGUKQEAgLTE5NTgsNiArMTk2MCw4IEBAIFBnU3RhdF9TdGF0RnVuY0VudHJ5CiBQZ1N0YXRfU3Rh dFJlcGxTbG90RW50cnkKIFBnU3RhdF9TdGF0U3ViV29ya2VyRW50cnkKIFBnU3RhdF9TdGF0U3Vi V29ya2VyS2V5CitQZ1N0YXRfU1dfUHJlcGFyZWRYYWN0S2V5CitQZ1N0YXRfU1dfUHJlcGFyZWRY YWN0RW50cnkKIFBnU3RhdF9TdGF0VGFiRW50cnkKIFBnU3RhdF9TdWJYYWN0U3RhdHVzCiBQZ1N0 YXRfVGFibGVDb3VudHMKLS0gCjIuMi4wCgo= --_003_TYCPR01MB8373FEB287F733C81C1E4D42ED989TYCPR01MB8373jpnp_--