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 1ogPip-0006Ot-5F for pgsql-hackers@arkaria.postgresql.org; Thu, 06 Oct 2022 12:11:27 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1ogPin-0007uy-KX for pgsql-hackers@arkaria.postgresql.org; Thu, 06 Oct 2022 12:11:25 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ogPin-0007up-6z for pgsql-hackers@lists.postgresql.org; Thu, 06 Oct 2022 12:11:25 +0000 Received: from esa3.fujitsucc.c3s2.iphmx.com ([68.232.151.212]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ogPik-000202-Gd for pgsql-hackers@lists.postgresql.org; Thu, 06 Oct 2022 12:11:24 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=fujitsu.com; i=@fujitsu.com; q=dns/txt; s=fj1; t=1665058282; x=1696594282; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=jc9H7eQ0R6sX0CVf0LA0FuBvUbny9MFHuJwvSzI01hA=; b=lMaTLEPWbpbL/46gW7K5qmO6vC5liN1lii78saMSeJW/GsjE9VfChxTw 0F0bs3/DOuPnr4gK8sSN5XF7Emr81uQWojiF5QBarLZvnjzAqm+lJJFLP BsB8yXNPiGvnhHuEevjdUwss9d3gTctyxEfSJZVXXX/cLwf66Jh+0qDfq UpGkLLQj+8wUMcGuyWRGzvg4W9dzuSB2DGBEidcYWV90pigEKAEBYhrML tKw9ugzW19VaZ5DKaoC/2KJI1iH0yKU2jW7ISmKoszbc7xbbSdPa4D71X JyhCdZfDhuOivlVMLwz5OWXjKy+cV1EAkooAvQj42KfALY2E08Aa/ddZG w==; X-IronPort-AV: E=McAfee;i="6500,9779,10491"; a="75014973" X-IronPort-AV: E=Sophos;i="5.95,163,1661785200"; d="scan'208";a="75014973" Received: from mail-os0jpn01lp2106.outbound.protection.outlook.com (HELO JPN01-OS0-obe.outbound.protection.outlook.com) ([104.47.23.106]) by ob1.fujitsucc.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Oct 2022 21:11:18 +0900 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FD1uockw84plSsbw2mh68cEBwNCi5jsc1s7z91ynNVfvjuhpy7b81JMDgN3q2/6a9qKXZQuxR+F6byxKb+jWU+QiQV6gbPtrzG1HUpf98I1yLEube9f20evqMIst9ymKCXzUDmIR3ziqOqbBi+jh7h27QBc/9iEDZYXg/ttvoJbDnXao1Sit6eJbk51Gl6UJQaZ+96TYEW2NNzGFemjplWpufYhD0EcFIFPkVaBdnqKfEscnA2K2UDxSKcIEBkREqyEV+RFcvbwgBbelkpHmw3MxPrEd+LjEUG14LPj+OVRKAzTagX25XFfP8Dm1Z0jABwVDEO1u3F8Flby9hODWhw== 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=jc9H7eQ0R6sX0CVf0LA0FuBvUbny9MFHuJwvSzI01hA=; b=IFMXQmGOAYZG8WbtC74qkQz/N1AUCHceQTdXtotphx/0hbz3hbxxg1E+M4uBhZa547G3xBTGdz+H1BdhivRORpBtQjyqH9k9iJI1URsbBCSjRqk7O4+GXIwZ7QM3Udt6Edr9vcbV98KsZP30zMgWYL1TmhZHJT1kMONgVfUsWFMfm3Art7eYELLYswE6x0kU1S9PsFYLTNecGfn2ITl6Zz42bJ761wut3UxtYULNUn6xH7lJ/1xBHletXbnwC93yRVvPWUx/8ZqPefLkaEY6fTp2LUnu55+FooKAUVFivx0ZWmkDOcp6fxIODrvKgsUpeHyKN8ZYeWjNlNEr6X1ZDQ== 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 Received: from OS0PR01MB5716.jpnprd01.prod.outlook.com (2603:1096:604:bb::12) by TYWPR01MB9986.jpnprd01.prod.outlook.com (2603:1096:400:1e2::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5676.31; Thu, 6 Oct 2022 12:11:15 +0000 Received: from OS0PR01MB5716.jpnprd01.prod.outlook.com ([fe80::95b6:444f:6cec:9b22]) by OS0PR01MB5716.jpnprd01.prod.outlook.com ([fe80::95b6:444f:6cec:9b22%6]) with mapi id 15.20.5676.032; Thu, 6 Oct 2022 12:11:15 +0000 From: "houzj.fnst@fujitsu.com" To: "kuroda.hayato@fujitsu.com" CC: Dilip Kumar , Masahiko Sawada , "shiy.fnst@fujitsu.com" , Peter Smith , PostgreSQL Hackers , "wangw.fnst@fujitsu.com" , 'Amit Kapila' Subject: RE: Perform streaming logical transactions by background workers and parallel apply Thread-Topic: Perform streaming logical transactions by background workers and parallel apply Thread-Index: AQHYSXX5ZKpBKXxeUU2FhEhnmXQum6zlu9SQgAkSooCACBQ0gIABsTcwgAA1vECAAqHFgIAE/jVwgAXct9CAADkRgIALO/aAgAsRZICAB606AIAS+CyAgAAufICAAWQLgIABHxKAgAA3o4CAAeE3gIAJPr0AgAkxzACAAiJoAIAC0hUAgARvDICABQA2gIAAFvcAgAeBmICABO9ggIAJO+YAgABu1YCACQzpAIAJSy6AgAS+zICABq7mgIABSJUAgAAOtoCAACghoIAB8TqAgAqL+oCADJWRgIAGVm0AgAGAQICAAerMgIABYRWAgAgnZ+CAAXRdgIAGBUSQgAGFeoCAAFYagIABb5aggAGsWiCAATu3gIAEyyEAgABeLHCABFBngIAK5WIAgABrY4CABb89gIADiS0AgAEu2oCAAE3XgIAF9hiAgABY2YCAAXIBgIAAY19AgAL4j4CACwfFgIAACoiAgAATsuA= Date: Thu, 6 Oct 2022 12:11:15 +0000 Message-ID: References: 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?NTBfRW5hYmxlZD10cnVlOyBNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJh?= =?utf-8?B?Yy1hYjRkLTNiMGY0ZmVjZTA1MF9TZXREYXRlPTIwMjItMTAtMDZUMTA6NDY6?= =?utf-8?B?MDlaOyBNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJhYy1hYjRkLTNiMGY0?= =?utf-8?B?ZmVjZTA1MF9NZXRob2Q9U3RhbmRhcmQ7IE1TSVBfTGFiZWxfYTcyOTVjYzEt?= =?utf-8?B?ZDI3OS00MmFjLWFiNGQtM2IwZjRmZWNlMDUwX05hbWU9RlVKSVRTVS1SRVNU?= =?utf-8?B?UklDVEVE4oCLOyBNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJhYy1hYjRk?= =?utf-8?B?LTNiMGY0ZmVjZTA1MF9TaXRlSWQ9YTE5ZjEyMWQtODFlMS00ODU4LWE5ZDgt?= =?utf-8?B?NzM2ZTI2N2ZkNGM3OyBNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJhYy1h?= =?utf-8?B?YjRkLTNiMGY0ZmVjZTA1MF9BY3Rpb25JZD0xZTI4Mzc0OC0yYTJiLTQyMzct?= =?utf-8?B?OWZkMi1iNmM3MjcyNTc2NzM7IE1TSVBfTGFiZWxfYTcyOTVjYzEtZDI3OS00?= =?utf-8?B?MmFjLWFiNGQtM2IwZjRmZWNlMDUwX0NvbnRlbnRCaXRzPTA=?= 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: OS0PR01MB5716:EE_|TYWPR01MB9986:EE_ x-ms-office365-filtering-correlation-id: a750c5d3-baaa-4845-edaf-08daa793de27 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: pki2/KE83KBiCu6KUhGftwKqL/n6TvVH7o3iQIaidi1HN1an0NRDpRSywXpHKOjXM16em5LmNhs40jQR1fXommWKcU2PYvfgkvqIAw2TpbN55pwqw6ASMcd/LX8De6bzxxjpXCiP4PDQm83tXU4YOYCdE3FSh8ElUBFOMz2iHiyMJY1uo5y3ixjXRzXnA/ddXq0j+IDvEzsz74YqTaBbzq/O+hib3FQwGyRgH0xoiaozeBLX3uaIBxM/fIRxWWVsi2AXNH+IrE0p0OIskutjwgRP6P8R9jqOxc4q8uqxDc+sY880mlh55ZWArY+Xs5tVm8GPyHX0/rzX7PMvJHkVdXhiGYAyvKRRGDZGMy901pOiMnPviGp5EienMO300RBy0PoYSSNXqO0i7q/Av7QzI5x/5PogF63rW4yVj92a4GJDlEIPnCQPYZrJsK9/6Rq3BVfwZ6MTWYFByABOyZX65R7TNu07/Pa4q2RJUM4C7oEQ6VdPKmxLY0jgZnVlxpPFBq2ft9ZtY+Zzs2wU5JCtBatjc3iApO0vCdCn7xI+JLibN1XCeEau9fUrDfObA3s3q/pmq5seCj0cBpvdA1vlTj9pmqfLiLu0+T2uHVQ5aO+XfFbwttF6Ib50ylA8Wa8vNALZQLaAQtbJXvFF2ZtgWBnrCqhv2IMo7ga+GjcKxSVL8KR9z8Ok8rDA7mFcp4ERGEdyjUa/HxHkBlk7uiKTads2dNM17czCDZ5eoJaPrtl6tD1lt7JOwAhVusyd+ODlDGSkJfbbqHAr7opjL9eXzpPH7gE3cYzYwrEy4HmCbPQ= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:OS0PR01MB5716.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(376002)(39860400002)(396003)(366004)(346002)(136003)(1590799012)(451199015)(64756008)(66556008)(8676002)(41300700001)(66446008)(478600001)(66476007)(316002)(8936002)(4326008)(52536014)(66946007)(76116006)(6862004)(55016003)(83380400001)(86362001)(54906003)(6636002)(6506007)(7696005)(85182001)(9686003)(26005)(33656002)(5660300002)(53546011)(71200400001)(82960400001)(2906002)(38100700002)(186003)(38070700005)(1580799009)(122000001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Q2dqbTlJRUFmdFpUVFJFb1JnK2d1YmkwQVhSSU5hN1JoeE9tVWUvRk9VSlFw?= =?utf-8?B?KzVFVGt0d2NmS2hSM1JhZHZwU3c1ZW5BU05ud3FzMm4vOVA1UE5iV2VTOFN5?= =?utf-8?B?TUJMSVBTWGZ5d2dxY05DOWZNelBBb05hYTNNRVlYMEtXNHAyOS9wSzc3aHM3?= =?utf-8?B?K3IyK1dnbFIzU3lQVTc2c2dhaFJtRU5QQ0NhNm13UFYwaUhjWTNDL1Ntd2Ix?= =?utf-8?B?MVZlaUNjcnlqbUZlaVFEYTVSeG9hRm9pMDE4aW5Kb1pjYkhMNkRKdVN4dE13?= =?utf-8?B?SWlmVEZ5UkdOc2ZqWDZTVUdNWFYvWUpiT3ZoTDhUa3RXdHJjWENUN1JYSjVY?= =?utf-8?B?VzhaMHlxb0txRjJMaHJHNk5jL2F5dTdSdFpSSDVaUGxIWFFTWVZsL1h5d2Fi?= =?utf-8?B?emlWVWRvT3M4THNvZ0oySDVmbnRqQkg1VTFXRjJPbm8wcitFbEJWZnkva084?= =?utf-8?B?eHJhM29GUTNseWhIQkI2VUtDY1didHl0NDZBY2ZFeDhYbmhtOUpxS3luU0Nw?= =?utf-8?B?WnptdjM4cEo2M0srdmRQMitYUGRKWTVEdVNLR01yajJjMGd0anVZZnNUOVJU?= =?utf-8?B?R1c1dFQyZnNWU1pxR1Boa2I5SzJEUUdVUHFLMk5zT2creXJhRy9ldWMvOVhL?= =?utf-8?B?ODlEMEFpbnhvSnVEUnFpOFNhekREWTNySmtrVnpUMUZjTGVxOUJSQTdzUDNC?= =?utf-8?B?bGIzN0Jqak10RXNkQlJOMTE3VGpSQjRSdjhWWHZrUmN6emhoaDN1cjBrVVFt?= =?utf-8?B?MHRqU3kwYkpkdjBFM2xBNGgxdXVxODUreHNJUmlHekhSQkpmUGc0eVk5c3lM?= =?utf-8?B?clpEKzdCUmlxaHNpYkRRSkJuek4rcFkyZUhnM2E4eEM2SXNhN1ZuazZqZExw?= =?utf-8?B?QlR2Sy9DKzgrRnN2ZWo4VFVaYkdaSWJYOUFySGFVNUl2TmsyQkdrZE4rNUNt?= =?utf-8?B?ODhtQnZSMUg0dEZSN3hiZ2J4eVNxK0o3WjBVWTkrQlN4b0thR0hrOTlMUENt?= =?utf-8?B?ODNXVzBBSDdXdUpKNEpNVW52dnorOTlEaDNDYXdoZU85RVNpc0dnQUJpU3ds?= =?utf-8?B?OVY2WjJjZ2tqOTNHM2lpeFU4V2U0OHBleGpwemNyelhOb2pYT3pabVVwT3d5?= =?utf-8?B?N1U3cjNZUzQxQmV4NXc2MVl4eS96UEk4OGRPRW1XajJLRnRPY250am5IT2g3?= =?utf-8?B?TEFuNTNzajFnWGJUb1BnTGJGbEhRa0N5L0RLZ2lhQXQzVlVzRGhUY2VCdUZZ?= =?utf-8?B?UG4yM3YvL3pBR0E3V3FVOXlRajJYWEhjTzBmd2pta3o3NXFpYUNKeXByZTQ5?= =?utf-8?B?Rk1vcktKS1R5QU11Nno5SDVPTlFTd1hQOXhWVVdybVAvQmpYdTNheTJ6NFpm?= =?utf-8?B?clowWjl5SkYzZDlHN3R2TEtCZXZNUkoxc1owVUloZ0FmOVhscVNYZkd5VUp0?= =?utf-8?B?RDg2dkw1b1dYY0FHTnZnSXRaTmNqdlE4QTZqR0c4Sm9DZmxJV0EzU3VrNlVC?= =?utf-8?B?S0lYYit0UnloLzVKRWl2b1FKWGIzZUhMUDdPQmhtTTYxdzJJcnBhL29OTm1D?= =?utf-8?B?bWQ3V3ZMZFkyRnQyMGc1eVF6eEdsSk1XRTByZ1pBZDAxdXFaWlhOUlArdTht?= =?utf-8?B?L2UvVTRIekx5QU1MTWlmSCs5Mm0yUWFGTUQ5T0ZhL2dQK0cvTXllTjczUXFT?= =?utf-8?B?ZlpiYkFxcFlQN09EaTZDMFR5MTRhcWc2SmxXTEoxTTBGSHdkcmxIeVEzQVlx?= =?utf-8?B?a2tyWWx5aWNkd3hBd3Y5UHhvMit3bE9MVmxReUM4UFZNR0VoMGZoY29yTGdI?= =?utf-8?B?L3dBcVlFT2tzQmZ1WTZIc05GTHF6YlF6MERCei9Lb0pJSmRDTEFBY1gwUTgy?= =?utf-8?B?T2NnbFVFU2tXL0s4TEUwaExKTW14RHc4ZHVtQTNXdlZ1dnhjdHFzQVJ4NlVv?= =?utf-8?B?L2lQRkMrVVorSW1wR0JzazFQYjEweWluZlptVGhsL215MEVnajY0amZmcXg4?= =?utf-8?B?QmVhMkdQWjdwbk1qZG10Ym0wZG1sSlBIVlRSR2d6TFNNU0R3VHBpdFVJZW9L?= =?utf-8?B?ejZ3d09xc01QUFpSVVIwOXhtRTJ2T1p1M3lGbkgybzZib0J1VHo4NkR5ZHNM?= =?utf-8?Q?ymmHC+JOeRBU9oYcyK1pVtJDi?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: F1lx1C5FUtCF7kPSvptBbDVXYnEpKEJhnhQOVUDvUGRd5FWZu8DWaPMeaWfOVAa0CWSeowMFqR10vRU11gDkUFSPO7DtIvoI6qoY7/DZ9LOz0jPHVzmGWGObkoMGbd+gtaH+Yd1ylBg94AmanVuF6dbtcRbCNWzs0o9gMLQ8qISosVPaGoNBkxr7/iK5AICZnXo8dldS78BHNm3IC8GWaifHxudptidnXlzhyaHWBPvytye09SpG9Owq/0IZSTGRMlfosgRSOQ/quRMD+SF7Fk3Vzfy2S3kOs0wSM6o6yduxzQPF0XIVuDtd0VZtfQVlP8i9GvVBUtYTElOSDLD6VHWVAurhIEAxF+zOx7FOnB1hTuOuWwRg2elR+EXs48/UaMLYUBeBnI6iacrXevcHdssmV7bu113EB6AJ87BVqBeF4QwceP5TjqeBPpWiySohmmMvxt1L3qUleo0tkswZGdpn8vO7qiByNcMEr0AjZ251/yqkjIxXxmd+4DA6v8KRY6cGf5+Kssp+VlUWXiNL02QpujgeTibs6p/vCfSzYRNWU3HYFyEvZmvey0iRGeC1GxDNqH1YE/To90FwITdqW/fV+sPeNlfzhhQ8ssLmeCJ6N9xi3Q5n2+UVyPIHmRFxtU/JaAsk30+n2xqQ9NFLJDhkUsmW9Uvo/XfKhJ2XVFL4sozKbZVyvlzObyyE8hQeiegWZFFfMbRVO1oDLBkbogFP+bVICbcCHW/eliRfjP6fw0iZxBu/x+nMGWt97kYfkXAmz+BpBppbvyvKxuXmEbw5xuqkLpDhXLb2wsqDEHmJNhepssYaORurA/otWzbDCSa7a/ChPY8xuCgQD1fsOE5oI5OWu/GTPSVMP6ahax1rDTYrNYSji6ekXOx7PxV6pJaB4eVWeLNEie6MfF4tTg== X-OriginatorOrg: fujitsu.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: OS0PR01MB5716.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a750c5d3-baaa-4845-edaf-08daa793de27 X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Oct 2022 12:11:15.5067 (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: UvItPUjT1qIvP6Io6VV7nXI1UCPveEj9K/OwABaIRJr77lXXtv8C/vMMIAsCduMVx+Yh8XnafIMyfvYbMyS/Bg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYWPR01MB9986 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk T24gVGh1cnNkYXksIE9jdG9iZXIgNiwgMjAyMiA2OjU0IFBNIEt1cm9kYSwgSGF5YXRvL+m7kueU sCDpmrzkurogPGt1cm9kYS5oYXlhdG9AZnVqaXRzdS5jb20+IHdyb3RlOg0KPiANCj4gRGVhciBB bWl0LA0KPiANCj4gPiBDYW4ndCB3ZSB1c2UgV2FpdExhdGNoIGluIHRoZSBjYXNlIG9mIFNITV9N UV9XT1VMRF9CTE9DSyBhcyB3ZSBhcmUNCj4gPiB1c2luZyBpdCBmb3IgdGhlIHNhbWUgY2FzZSBh dCBzb21lIG90aGVyIHBsYWNlIGluIHRoZSBjb2RlPyBXZSBjYW4gdXNlDQo+ID4gdGhlIHNhbWUg bmFwIHRpbWUgYXMgd2UgYXJlIHVzaW5nIGluIHRoZSBsZWFkZXIgYXBwbHkgd29ya2VyLg0KPiAN Cj4gSSdtIG5vdCBzdXJlIHdoZXRoZXIgc3VjaCBhIHNob3J0IG5hcCB0aW1lIGlzIG5lZWRlZCBv ciBub3QuDQo+IEJlY2F1c2UgdW5saWtlIGxlYWRlciBhcHBseSB3b3JrZXIsIHBhcmFsbGVsIGFw cGx5IHdvcmtlcnMgZG8gbm90IGhhdmUgdGltZW91dA0KPiBsaWtlIHdhbF9yZWNlaXZlcl90aW1l b3V0LCBzbyB0aGV5IGRvIG5vdCBoYXZlIHRvIGNoZWNrIHNvIGZyZXF1ZW50bHkgYW5kIHNlbmQN Cj4gZmVlZGJhY2sgdG8gcHVibGlzaGVyLg0KPiBCdXQgYmFzaWNhbGx5IEkgYWdyZWUgdGhhdCB3 ZSBjYW4gdXNlIHNhbWUgbG9naWMgYXMgbGVhZGVyLg0KDQpUaGFua3MgZm9yIHRoZSBzdWdnZXN0 aW9uLg0KDQpJIHRyaWVkIHRvIGFkZCBhIFdhaXRMYXRjaCwgYnV0IGl0IHNlZW1zIGFmZmVjdCB0 aGUgcGVyZm9ybWFuY2UNCmJlY2F1c2UgdGhlIExhdGNoIG1pZ2h0IG5vdCBiZSBzZXQgd2hlbiBs ZWFkZXIgc2VuZCBzb21lDQptZXNzYWdlIHRvIHBhcmFsbGVsIGFwcGx5IHdvcmtlciB3aGljaCBt ZWFucyBpdCB3aWxsIHdhaXQgdW50aWwNCnRpbWVvdXQuDQoNCkkgZmVlbCB3ZSdkIGJldHRlciBj aGFuZ2UgaXQgYmFjayB0byBzeW5jIG1vZGUgYW5kIGRvIHRoZSBQcm9jZXNzQ29uZmlnRmlsZSgp DQphZnRlciByZWNlaXZpbmcgdGhlIG1lc3NhZ2UgYW5kIGJlZm9yZSBhcHBseWluZyB0aGUgY2hh bmdlIHdoaWNoIHNlZW1zIGFsc28NCmFkZHJlc3MgdGhlIHByb2JsZW0uDQoNCkJlc3QgcmVnYXJk cywNCkhvdSB6ag0K