Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w7XR9-005QEF-2s for pgsql-hackers@arkaria.postgresql.org; Tue, 31 Mar 2026 11:39:12 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w7XR8-009vn9-0n for pgsql-hackers@arkaria.postgresql.org; Tue, 31 Mar 2026 11:39:10 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w7XR7-009vn1-28 for pgsql-hackers@lists.postgresql.org; Tue, 31 Mar 2026 11:39:10 +0000 Received: from mail-japanwestazlp170100003.outbound.protection.outlook.com ([2a01:111:f403:c407::3] helo=OS0P286CU011.outbound.protection.outlook.com) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1w7XR6-00000001xbR-0Lr1 for pgsql-hackers@lists.postgresql.org; Tue, 31 Mar 2026 11:39:09 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=s+l1PjZErE+qRLpBUFI8eNn8DddRqZwG0NXKnC8DNGH1JeUzGgeI5xmGUqT81Dhptz8Wrjd0RX2G8VMz48rgJb0nryobBBa9bqczamrqLFmnxd2nnReMdhFyD6lfoh3tngR+oF9RiGLuAsqGmcJ3ujCXkKW0cLxWFKoZwTzEDj7UGofheVYQGZQuNS402rmWspNt0/HbXbJQcWm8aO5FZqz5jEqTCxR4GpQz4c0Kc0xmMisOJDDAQkwMcCjmNiplbPLONhY8jloIajXVn04B+olbmmd0zGPTc82kQxanUnVrj7/CJHiHN8rBozuvCZt1NZ5aU69eSJnEK+mNaofE3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=e3m68JwQehPQpo28OMTuwpv3PrgoDWkA/kqA2vpIfDw=; b=t3HYqpjnjTs3Vb15IBSl87ab1Dkxfw5N1Y/Y7AGzWJ9AK1ho8qEni+IzTeRvDVA4K0OfToYyvMjE10uJBXhiM/B0Et17fzvaT0nPLXILjPrp3Z96XOFr3nsrq0Ujc3FZa+YHBobVsiT5JhTaH93l+yJOnZOyeiz3O7AUOkHrhdaki39ODWTO/1Shcu5egF9QVRC7Auk/8byWwYnbKbVwghxw2iIIcf57psr1Hv/FGRWSIxI2fkW/g8od9FkALxJlAIOFimuh9D/q1R1KCXZ6a3Qm+kXvFLOAkjTfJE0hz6NgWIiLsRoLFPq4FvAQ5KEC+lK5F9VmhGy9THcgYh3Qbw== 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.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=e3m68JwQehPQpo28OMTuwpv3PrgoDWkA/kqA2vpIfDw=; b=iQp/lccsJq0qJ5RkHOoiq/u5BhtnrQngJXcwtbfWhjTBlYGhHipaWYHvUw2koA+fp3T8rEpaMhVLASItfKI2SQ0lD3iUfGikkS0I2GFjQFrs+Nr0dR8WwBUfOTQ1UrXm3pxTJiT2tEFW3v1u7PP+Q+ZMd9f686oPFOYB2CXBnpqcrybPRnlo7ArNGvnRLIwT45liASzRgaL+ftq6hAbhcMeCrEBgm8tljfkhxXhbWKIxmKcD8n+dXfxXDdL9V+xZ1LAX6M/MLqLCW+XiJTT1wSyObAYXqjMHtzmbgfUTcW69puzOUGKSPvkHRIredpbi1DvimhOoyUb+DRVl8+omdw== Received: from OS9PR01MB12149.jpnprd01.prod.outlook.com (2603:1096:604:2e5::8) by OSCPR01MB14548.jpnprd01.prod.outlook.com (2603:1096:604:3a7::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.28; Tue, 31 Mar 2026 11:39:02 +0000 Received: from OS9PR01MB12149.jpnprd01.prod.outlook.com ([fe80::8943:2365:dd16:e893]) by OS9PR01MB12149.jpnprd01.prod.outlook.com ([fe80::8943:2365:dd16:e893%5]) with mapi id 15.20.9745.027; Tue, 31 Mar 2026 11:39:01 +0000 From: "Hayato Kuroda (Fujitsu)" To: 'Masahiko Sawada' , "Zhijie Hou (Fujitsu)" CC: Amit Kapila , Jan Wieck , "pgsql-hackers@lists.postgresql.org" Subject: RE: Initial COPY of Logical Replication is too slow Thread-Topic: Initial COPY of Logical Replication is too slow Thread-Index: AQHcZqqSU4dRo4LUx0GK65NhMesVCLUp2xSAgDAuDwCACy6hgIAvDagAgAN0IYCABWhkgIAKM5EAgA2bGwCAAC8cAIAAOcIAgAAnEYCAABAqAIAImQ6AgACJHwCAAKosAIAB8HgAgADcAACAADfO4IAAC1wAgAApfYCABMbOgIABXdkAgAB9nKA= Date: Tue, 31 Mar 2026 11:39:01 +0000 Message-ID: References: <0c28fbd1-3320-4e9b-815c-6d62753aa063@wi3ck.info> In-Reply-To: Accept-Language: ja-JP, en-US Content-Language: ja-JP X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: =?utf-8?B?TVNJUF9MYWJlbF9hNzI5NWNjMS1kMjc5LTQyYWMtYWI0ZC0zYjBmNGZlY2Uw?= =?utf-8?B?NTBfQWN0aW9uSWQ9NjA1MjEyMmEtNjNiZS00Njc4LWE0ZTQtMzY0MmIyMjQ1?= =?utf-8?B?MzM3O01TSVBfTGFiZWxfYTcyOTVjYzEtZDI3OS00MmFjLWFiNGQtM2IwZjRm?= =?utf-8?B?ZWNlMDUwX0NvbnRlbnRCaXRzPTA7TVNJUF9MYWJlbF9hNzI5NWNjMS1kMjc5?= =?utf-8?B?LTQyYWMtYWI0ZC0zYjBmNGZlY2UwNTBfRW5hYmxlZD10cnVlO01TSVBfTGFi?= =?utf-8?B?ZWxfYTcyOTVjYzEtZDI3OS00MmFjLWFiNGQtM2IwZjRmZWNlMDUwX01ldGhv?= =?utf-8?B?ZD1TdGFuZGFyZDtNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJhYy1hYjRk?= =?utf-8?B?LTNiMGY0ZmVjZTA1MF9OYW1lPUZVSklUU1UtUkVTVFJJQ1RFROKAiztNU0lQ?= =?utf-8?B?X0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJhYy1hYjRkLTNiMGY0ZmVjZTA1MF9T?= =?utf-8?B?ZXREYXRlPTIwMjYtMDMtMzFUMTE6Mzg6MjZaO01TSVBfTGFiZWxfYTcyOTVj?= =?utf-8?B?YzEtZDI3OS00MmFjLWFiNGQtM2IwZjRmZWNlMDUwX1NpdGVJZD1hMTlmMTIx?= =?utf-8?B?ZC04MWUxLTQ4NTgtYTlkOC03MzZlMjY3ZmQ0Yzc7TVNJUF9MYWJlbF9hNzI5?= =?utf-8?B?NWNjMS1kMjc5LTQyYWMtYWI0ZC0zYjBmNGZlY2UwNTBfVGFnPTEwLCAzLCAw?= =?utf-8?Q?,_1;?= authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=fujitsu.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: OS9PR01MB12149:EE_|OSCPR01MB14548:EE_ x-ms-office365-filtering-correlation-id: aa233b4f-c614-46ea-b5d5-08de8f1a1b0b x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|1800799024|376014|366016|56012099003|18002099003|22082099003|38070700021|1580799027; x-microsoft-antispam-message-info: 0Y/DEBa39/QczxT44HauAr6ZpbTdz8Bu7BUCVmTTx874LjCA3FNC3qQe90x/Mdl3W+QI1F7Y1dBoZCsa2HBCmqW+rzWd55BrRRmM2vGgo1gQ/FD/NXZe3BqBRN1yv6igqbsAWo7JgqlYjbyNqCnu7wzdDFovKm735IavA/G9/CarL6jOWDF92Sxq/BgfPBVBs9HEwqmXZOt7rN/P628ReR4akkh8lRe1ifmuEpYm34oHnqgmGO3NyA/Rz/+5NbK5tXbGOWJzSEWtDo3Rpz8lXwfqmlB2bgxCjxnriHc9OvGpWXH1jFkNu6lK7APsj7WsQuseYONVB6NN6lKpC8dtLIncl7w2yEnpiYoRqldbujJCJ7iuLCRlEi31e4myTLSX4PscYYfaBjkkIdMmOzteIOCgm8g+jXx/SXdnC3oRKTJmvc2dogUtnHnerzJGcIjtsvvlJ/1maWc08WFwF/35btT+66g5+GvA1GkqJ/zbrLARMJIhgB/mKHxYkK4QRvS5JGKetmsGr+f4thdlNzwQQ7eAnD/aYUwA9LvFK/FYveB4KBkhDHWWFHUfJqw1qhjXbvUivEgFtFP9WMyDbR1+dUk+JOjqsvjxqt5nSNHXUg3UcymNccJ7JzM9U5o3MV459GAOrEKhKJVGVbwodBsgRFHI2zx2R2hBBMFNPlWKb6JXpDymRkH0RBv3c7weLMmjyoZL8NjInidWpYepuTx2k8DVpRssNNNGktTQXwx7ZJH9cOr6Px8eQqI+y8y5r5vjLewwrt1NYDvcmIQWhlEP2vh8u0I4FcuFeCoYiUjqNxZl+GHIvv42UtWIeyR57Ryn x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:ja;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:OS9PR01MB12149.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016)(56012099003)(18002099003)(22082099003)(38070700021)(1580799027);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NnRVRTFZelRleWJ5S04vK0xvNlYzZ21PU0RYK0xWSkh6SXA4RGlUc3B5MlA5?= =?utf-8?B?RUp4V3E1TjRiK3F2eklBQlI5NS92azJjaWp2T0dGcFJqeVRHdWVIcUVhbjBN?= =?utf-8?B?VUpCajNlNXNITkxDZzBTMHZIZ3FDajBMV0pMQm1LRHE1U0loN2ZYNlVtdEtF?= =?utf-8?B?N1NmdktkWGkvWGE3TDM4YzRKblp3V2dHczNwQVZma002V3dPWk1pR0pheWpU?= =?utf-8?B?V1A5UnUrVXhQSEo1Vk5NTm9NaU5zNXdlU0VxSTFNb3lXN0dGN0x6Q2h4N2w3?= =?utf-8?B?NFRKY253cEZPb1dCSmV5MFYrQ2hQbXl3SUNRTnFabjFZOXE5Vjg5NXAwNUlX?= =?utf-8?B?Z0I0eTlJek5hVEVDMzUvVENZRCtvUnhYR2p2bTRPdDVzYjNGcHQvd2xFbkJ3?= =?utf-8?B?SEI1eEFVK093V1Y5U0FxNkM3MjREZTdzb2xjRitZeWVkSXFUeHl1eWJ0cy8y?= =?utf-8?B?ZHQzc0h1aHB5Qmp4MlA2b20wZk5oOTcxcnFzUmgvcWxLVUljYzh0L0xyMTlr?= =?utf-8?B?bzk3bjVHeXg2QkFJc2pIWFUwQTBDZ05HcS9lTFEvamxobHlRcmYzZTZqSUQ1?= =?utf-8?B?d3kxd0dLWWdoaXYwdVNQR1QvYWVvREZmWWROTCs2ekRLMDJ0ZExvQnB0TVEr?= =?utf-8?B?K0o2djdNRCtGemliRGxMcFJDTHVpNlNSQ2IrQkVCakpNZ29GOE5vVVFxZWlm?= =?utf-8?B?RHFtS3hMOHdRMG9IVEh1elNROVJNd0Y0aml1TThDT09SR0F3dFowbk9RZGF0?= =?utf-8?B?Z01ralF6ZnBHSitxWTUreFFUK3NZT3FUQ01OUWVsRTk0NlVLeTRzMGduWUdz?= =?utf-8?B?ci9yTGl0NkFuTWxtY0xaTzNFaC9jbVpERjNXRmtSRGplblg2bk0zdlBQSWNM?= =?utf-8?B?YjFaVytIS2g0eFh1eTBUQzlZaXE2WE4yakhZTnZBTmdzdUJST0ZYdy9NS1pm?= =?utf-8?B?ZU9kT3VlQ3BFOVBuN2tSOGxsSlo5NVlnQ2ZYL3daK3YwV0VycS8zM1N4MWt3?= =?utf-8?B?M3pOOW5KVnJaUW5sanJzUlFqSlNwemg2Nk8wMVJJVXpaNWhudVR0aVQ4bUgy?= =?utf-8?B?c1BCZzRLNXlhdmh0SFowM2ZuanB3NDNqa2Jham1uaEFKUEt6RFYxM0xqSmhx?= =?utf-8?B?ZmUzVXhoQVlCalQzdEd6ZGZGZXZoVEJTL1RDUGh3TWpSNTB6V0o1S2dLRjQ3?= =?utf-8?B?TGowM1FQRDJQOE1GWnA0MWh0YlVlSnJ3RjZacFdBNDhUVVhBc2JyQ0pEWVFy?= =?utf-8?B?ZjdXdVhzQWd4b0pZSUVQL2pUVWRsT2NETmZVdTh5bUtVMVBwZTRGYWxSRWgx?= =?utf-8?B?djNvR01kVHZXekgwVDYwdVRoMGV5MjBGV3hnQm56c1ZESGhnNkFQUGh0SUEx?= =?utf-8?B?N25QNXk0UXVQRFAveFVsVGVrditYTTZtNmhFZW9Xem9hanp2eGRWUldnQklw?= =?utf-8?B?L3lJeG9WbkY0aDRCWWMxTUM3L0haVXRuNzEvRjlENWlzZlNxWWR5dGxYcmta?= =?utf-8?B?UVJUcm0zU1JXUXZ1RFYzMkRyblRmWFFZanVyd3d5SExZZG1YUWxmN3Y0eWtn?= =?utf-8?B?VEhQZW9Fa0RablVwYzJaSDVjVGV6YnJzaTJhMlkrdEh4S0txMVJSYk9ST0hj?= =?utf-8?B?anRNNko4aXpZQmFpeXFPUDM3OVZjWVdNM0VwNk5oQU9OaGFaNElXRThGVjBI?= =?utf-8?B?R05xNmhEUHE3SEpkQnZibGF5dW9kTHNWRkZjL08zZkpIQ21wdDQvdGRHWHA5?= =?utf-8?B?Zlh3VzVCSWxCWDZjRHlBNnp2YVNtRWF0TGZ2aWdHbS9qRTQzd2tTRkt3aU13?= =?utf-8?B?UzB3MWRPSlhPQzZEVkIrT2hMUFhhQ2pncE1QRjJYNmlzeWcrSHhqdEdmQWdy?= =?utf-8?B?S0xJalVKSGJKbzV6V0JXVU1JWjluTWowWThheDFjeHhaVFhzckdWNkI0Q2s4?= =?utf-8?B?bXAyOE5vWlp3Qms1dy85T2NremNiMUwxOWZDYWlIT1NOWmMwczRFZWdpMDlJ?= =?utf-8?B?TG9FUGJDemdQb1FKbnN3eVVEUkpGY3RSM2tTY1hBbUUwcit0RGFmVG9WYkho?= =?utf-8?B?TG5wN2R4QzlGZ0FZbENCWURVVzFwemV2dHExNjBBMVc3T2ZoUHRCbUJwaFVi?= =?utf-8?B?czlKdmpEOTVlaDQwZmRCY21RT25IZVowekx2K1N3QVhwTUt4eG84aCtpdURI?= =?utf-8?B?blUwNit3cVZ6ampMUHdsMWdKWW4yYUNMNG9WVlorRXNXRlNZSlJZNHo0ZnhY?= =?utf-8?B?UlZCWWRnZk9lQWUvUzlUR0crbUNQdFdSb0t1MGkxWnh3Uk1TVXgyQ281M3M1?= =?utf-8?B?WlR1VXVISmxSZEtVYnd0ZWt2NmFqbHhhWkJ0aWluRVNEdjY1MTY1Y254MG9I?= =?utf-8?Q?2GPVVPa3NAKrsarE=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-Exchange-RoutingPolicyChecked: uJsi/Gu9vsW6zFDAtfnUXRBfzAU2LaKBpVXf3YJ5mEP8hoLXL0U1mWLVUFQ37idtmkhnYWqDyt7fR8A7RPScfOf7qs0T1kgT6i5zW5+eAuCWNKDKHHP/uueMBfSQwCc2SUe+Iyyy8oefx0TUK9Pd+nnZeBtimEOXgZTCn3vOiNtqUHs7mLblAXwTPtImpMRVROhFB05v++ycP/Z7iRZCIURhzmyxg+z4acbJa2wlLeRG0g5JbHWJgKdc0B6HSqJgd/b4/PoBHVxWlFbfgkGsr1JCH/AvBx5bkjbMSYKL4lgJ8y6iwPHlUWTL92DYFQ20s8SGCngOeXjrPts7TkInaA== X-OriginatorOrg: fujitsu.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: OS9PR01MB12149.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: aa233b4f-c614-46ea-b5d5-08de8f1a1b0b X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Mar 2026 11:39:01.8585 (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: W+wJUBJygqNhaMeIdywZxl//dAtBROu9IV+1CAoL3xYyT49qBLjcOwcIBef8KtTknV7wEXj6KA7L1gnPUlUW3pJLPlwXZw7mxkDMKfoShl4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: OSCPR01MB14548 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk RGVhciBTYXdhZGEtc2FuLA0KDQpUaGFua3MgZm9yIHVwZGF0aW5nIHRoZSBwYXRjaCEgRmV3IGNv bW1lbnRzLg0KDQowMS4NCmBgYA0KKy8qDQorICogU2ltaWxhciB0byBpc19wdWJsaXNoYWJsZV9j YWxzcygpIGJ1dCBjaGVja3Mgd2hldGhlciB0aGUgZ2l2ZW4gT0lEDQorICogaXMgYSBwdWJsaXNo YWJsZSAidGFibGUiIG9yIG5vdC4NCisgKi8NCitzdGF0aWMgYm9vbA0KK2lzX3B1Ymxpc2hhYmxl X3RhYmxlKE9pZCB0YWJsZW9pZCkNCmBgYA0KDQpzL2lzX3B1Ymxpc2hhYmxlX2NhbHNzL2lzX3B1 Ymxpc2hhYmxlX2NsYXNzLy4NCg0KMDIuDQpgYGANCisgICAgICAgUmVsZWFzZVN5c0NhY2hlKHR1 cGxlKTsNCisgICAgICAgcmV0dXJuIHRydWU7DQpgYGANCg0KSXMgaXQgY29ycmVjdD8gSSBleHBl Y3RlZCB0byByZXR1cm4gZmFsc2UgaGVyZS4NCg0KMDMuDQpgYGANCisgICAgICAgICAgICAgICAv Kg0KKyAgICAgICAgICAgICAgICAqIFByZWxpbWluYXJ5IGNoZWNrIGlmIHRoZSBzcGVjaWZpZWQg dGFibGUgY2FuIGJlIHB1Ymxpc2hlZCBpbiB0aGUNCisgICAgICAgICAgICAgICAgKiBmaXJzdCBw bGFjZS4gSWYgbm90LCB3ZSBjYW4gcmV0dXJuIGVhcmx5IHdpdGhvdXQgY2hlY2tpbmcgdGhlIGdp dmVuDQorICAgICAgICAgICAgICAgICogcHVibGljYXRpb25zIGFuZCB0aGUgdGFibGUuDQorICAg ICAgICAgICAgICAgICovDQorICAgICAgICAgICAgICAgaWYgKGZpbHRlcl9ieV9yZWxpZCAmJiAh aXNfcHVibGlzaGFibGVfdGFibGUodGFyZ2V0X3JlbGlkKSkNCisgICAgICAgICAgICAgICAgICAg ICAgIFNSRl9SRVRVUk5fRE9ORShmdW5jY3R4KTsNCmBgYA0KDQpJIHRoaW5rIHdlIG11c3Qgc3dp dGNoIHRvIHRoZSBvbGQgY29udGV4dC4NCg0KMDQuDQpgYGANCitDUkVBVEUgUFVCTElDQVRJT04g cHViX2FsbF9leGNlcHQgRk9SIEFMTCBUQUJMRVMgRVhDRVBUIFRBQkxFICh0YmxfcGFyZW50LCBn cHRfdGVzdF9zY2gudGJsX3NjaCkgV0lUSCAocHVibGlzaF92aWFfcGFydGl0aW9uX3Jvb3QgPSBm YWxzZSk7DQorQ1JFQVRFIFBVQkxJQ0FUSU9OIHB1Yl9hbGxfZXhjZXB0X25vX3ZpYXJvb3QgRk9S IEFMTCBUQUJMRVMgRVhDRVBUIFRBQkxFICh0YmxfcGFyZW50LCBncHRfdGVzdF9zY2gudGJsX3Nj aCkgV0lUSCAocHVibGlzaF92aWFfcGFydGl0aW9uX3Jvb3QgPSB0cnVlKTsNCmBgYA0KDQpJdCBu ZWVkcyB0byBiZSByZWJhc2VkIGR1ZSB0byA1OTg0ZWE4Ni4NCg0KMDUuDQpgYGANCkNSRUFURSBW SUVXIHBnX3B1YmxpY2F0aW9uX3RhYmxlcyBBUw0KICAgIFNFTEVDVA0KICAgICAgICBQLnB1Ym5h bWUgQVMgcHVibmFtZSwNCiAgICAgICAgTi5uc3BuYW1lIEFTIHNjaGVtYW5hbWUsDQogICAgICAg IEMucmVsbmFtZSBBUyB0YWJsZW5hbWUsDQogICAgICAgICggU0VMRUNUIGFycmF5X2FnZyhhLmF0 dG5hbWUgT1JERVIgQlkgYS5hdHRudW0pDQogICAgICAgICAgRlJPTSBwZ19hdHRyaWJ1dGUgYQ0K ICAgICAgICAgIFdIRVJFIGEuYXR0cmVsaWQgPSBHUFQucmVsaWQgQU5EDQogICAgICAgICAgICAg ICAgYS5hdHRudW0gPSBBTlkoR1BULmF0dHJzKQ0KICAgICAgICApIEFTIGF0dG5hbWVzLA0KICAg ICAgICBwZ19nZXRfZXhwcihHUFQucXVhbCwgR1BULnJlbGlkKSBBUyByb3dmaWx0ZXINCiAgICAg RlJPTSBwZ19wdWJsaWNhdGlvbiBQLA0KICAgICAgICAgIExBVEVSQUwgcGdfZ2V0X3B1YmxpY2F0 aW9uX3RhYmxlcyhQLnB1Ym5hbWUpIEdQVCwNCiAgICAgICAgICBwZ19jbGFzcyBDIEpPSU4gcGdf bmFtZXNwYWNlIE4gT04gKE4ub2lkID0gQy5yZWxuYW1lc3BhY2UpDQogICAgIFdIRVJFIEMub2lk ID0gR1BULnJlbGlkOw0KYGBgDQoNCkNhbiB3ZSB1c2UgdGhlIG5ldyBBUEkgb2YgcGdfZ2V0X3B1 YmxpY2F0aW9uX3RhYmxlcygpIGhlcmU/IEJlbG93IGNoYW5nZSBjYW4gcGFzcw0KdGVzdHMgb24g bXkgZW52Lg0KDQpgYGANCi0gICAgICAgICBMQVRFUkFMIHBnX2dldF9wdWJsaWNhdGlvbl90YWJs ZXMoUC5wdWJuYW1lKSBHUFQsDQotICAgICAgICAgcGdfY2xhc3MgQyBKT0lOIHBnX25hbWVzcGFj ZSBOIE9OIChOLm9pZCA9IEMucmVsbmFtZXNwYWNlKQ0KLSAgICBXSEVSRSBDLm9pZCA9IEdQVC5y ZWxpZDsNCisgICAgICAgICBwZ19jbGFzcyBDIEpPSU4gcGdfbmFtZXNwYWNlIE4gT04gKE4ub2lk ID0gQy5yZWxuYW1lc3BhY2UpLA0KKyAgICAgICAgIExBVEVSQUwgcGdfZ2V0X3B1YmxpY2F0aW9u X3RhYmxlcyhBUlJBWVtQLnB1Ym5hbWVdLCBDLm9pZCkgR1BUOw0KYGBgDQoNCkJlc3QgcmVnYXJk cywNCkhheWF0byBLdXJvZGENCkZVSklUU1UgTElNSVRFRA0KDQo=