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.94.2) (envelope-from ) id 1rGImQ-00EbXU-Kl for pgsql-hackers@arkaria.postgresql.org; Thu, 21 Dec 2023 13:08:03 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1rGImO-008qoI-W4 for pgsql-hackers@arkaria.postgresql.org; Thu, 21 Dec 2023 13:08:00 +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.94.2) (envelope-from ) id 1rGImO-008qo9-Bx for pgsql-hackers@lists.postgresql.org; Thu, 21 Dec 2023 13:08:00 +0000 Received: from esa2.fujitsucc.c3s2.iphmx.com ([68.232.152.246]) by makus.postgresql.org with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rGImL-00BVD0-0o for pgsql-hackers@postgresql.org; Thu, 21 Dec 2023 13:07:59 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=fujitsu.com; i=@fujitsu.com; q=dns/txt; s=fj1; t=1703164077; x=1734700077; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=oeg2UODTud/zaUv27FYS6HgRmqYUZ4A81DgASEMwu4k=; b=omyfHr7jdt/UtUrsDnHtEDHjkVvQBhEQ3OmAsjfs5srkWyBcuvGQ+1rr jhOKLH/0k2oRGarFg344qFpRp6MUvvAZrxrhT1C9ZKqxFENUdmtKqRzxy YAzLGZ1k17eeTKvWpvyFVmImB6hY3XerV/4DJKV1xPQfAD5VwHsN0f4gP 6eiG76SxLzedtQetdg2nn12t6lsRQ33BT0c82JrmUTiY47SfwgZLWBKbz VNlXZ9pbRAqaIOXt3IEzuXN9r64/Oocheku8bodQyq/5ImY28Y5I14Xu4 6cBpo/B3+4AbydPyEjcIA1KmuFKqLOZty3VWDvsgccl6IYEtvlzjS8gg8 Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10930"; a="17374730" X-IronPort-AV: E=Sophos;i="6.04,293,1695654000"; d="scan'208";a="17374730" Received: from mail-os0jpn01lp2104.outbound.protection.outlook.com (HELO JPN01-OS0-obe.outbound.protection.outlook.com) ([104.47.23.104]) by ob1.fujitsucc.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Dec 2023 22:07:51 +0900 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UD8xAQmUnlJI4GS5M0ACnMeLaKQRc36mQPTe5kpNqCVc47l0qoFMIUy/6ut/RLoIutwTQdYNgJ1yukOxcbsqkbFN4bMoEfTrztSTKKelQW61Mz8R8H9TI7IJZawPNmdk4X2AWCAl9q+Ld1BxTkpsAz3TTcjeeON7VScy8F458oCsQjBmb+Oz64yE422IbcYyg8rPWkYAvHGzkRCfiuw88VA0iG8L/6+qkJAGZuSHk2fD/AgYN9iSqC7XL1/QPfWEc7wHU8iG7MVcp/bcWA7Fpkcx48qaB2wQyYTr06J9DdzWGWZq3hlBD0D3xzzC67LdxOZ1P4Z69oA0HbmTvEbWlg== 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=oeg2UODTud/zaUv27FYS6HgRmqYUZ4A81DgASEMwu4k=; b=haaNTfS9Pux3xyQWPhjhtjhpaAjDDnkakx6pv0DypY1ZiD3f6hipa2mlhVP4OeQqQP52KHRnmkS2X/ucW4qqAOdJGaokTn27F7XY3ohwBLdoDT1ZogIKkVUU3ukJKapYXYDRXFeX1m4W7C7gPeF20Mzd01z96UNBl08gvudTOjJC/Q3fY7deKVZrts42478DExSJHEd2LT4tzoJVoN0MdPu8hpgauoJwoho0Qyq1XzlMDB4WSFl28Bwuiq00e7Jty4+62Tv13/5NhJw2jZqK1R3HURfHzN0MOKVJ8jrWOonBdLfb7B6iBEyCyralEy/FeNnrM5rjCghaWtEvxTu+Qg== 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 TY3PR01MB9889.jpnprd01.prod.outlook.com (2603:1096:400:22b::13) by TYWPR01MB10602.jpnprd01.prod.outlook.com (2603:1096:400:2fd::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7135.8; Thu, 21 Dec 2023 13:07:46 +0000 Received: from TY3PR01MB9889.jpnprd01.prod.outlook.com ([fe80::cd87:60f9:f281:5d81]) by TY3PR01MB9889.jpnprd01.prod.outlook.com ([fe80::cd87:60f9:f281:5d81%5]) with mapi id 15.20.7135.008; Thu, 21 Dec 2023 13:07:46 +0000 From: "Hayato Kuroda (Fujitsu)" To: 'shveta malik' , "Zhijie Hou (Fujitsu)" , Amit Kapila CC: Peter Smith , "Drouvot, Bertrand" , Nisha Moond , Bharath Rupireddy , Peter Eisentraut , Bruce Momjian , Ashutosh Sharma , Andres Freund , pgsql-hackers , Ajin Cherian , Alvaro Herrera Subject: RE: Synchronizing slots from primary to standby Thread-Topic: Synchronizing slots from primary to standby Thread-Index: AQHaJE9sdyz+GBN7BECXJc8P8BBYurCYl8uAgAC/xgCAANHogIAAa3WAgAArgoCAAQCOgIAADoeAgAA1dgCAABjKgIAABtwAgAL+XYCABKJcAIAAQJWAgAK2zQCAABFoAIAAWssAgADokgCAAKIxAIABM9iAgAAAU4CABeEogIAAcXmAgABdWYCAABcvoIABGd+AgAAF5DCAAGyTAIABBzSAgAAapACAADtEgIAAO+KQ Date: Thu, 21 Dec 2023 13:07:46 +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?NTBfQWN0aW9uSWQ9YWNkN2RmZWYtOTU5Yy00NGE2LWI5MDItZjYxNThkYjMw?= =?utf-8?B?ZmNkO01TSVBfTGFiZWxfYTcyOTVjYzEtZDI3OS00MmFjLWFiNGQtM2IwZjRm?= =?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?ZXREYXRlPTIwMjMtMTItMjFUMTM6MDY6MjBaO01TSVBfTGFiZWxfYTcyOTVj?= =?utf-8?B?YzEtZDI3OS00MmFjLWFiNGQtM2IwZjRmZWNlMDUwX1NpdGVJZD1hMTlmMTIx?= =?utf-8?Q?d-81e1-4858-a9d8-736e267fd4c7;?= 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: TY3PR01MB9889:EE_|TYWPR01MB10602:EE_ x-ms-office365-filtering-correlation-id: d979c27b-fada-4e4c-caaf-08dc0225d381 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 6baa7ICtiGYSexYeqejuWPmjR05YoyOM5RWWNrlUskdQnLjkS7N6EcDBhmNJStNoMlUtA/sToz4AcPqLPlrzOkXGZumhCYDp0wL64WNGkGFU6wJB2nBbB6mX825PGYye4DFfmIaxYPAuSjqPTMTYYKi7ycwtwOj0qPz5jfz8SE79XoYDLnaqP3cVRVsoU8v5GTr4XrZxTCaBiwN8ZmNjURr6X3kzmxqZYv+hZyQlZy+j9GaxbLCl2Nixbz/AMEyv9578P8yuwCrEjNjXprg7EXnq55mHo9TJe8bb2Q4hlAdB/ty5WaFtmlyBSm1sjG6G8KOdc3cnnPiDnmHqnMktaNA8KsuEgoW8LrLwRTlDGCmK1IR02h1qzoZewvb4cfYPZeXrPEtoSbeP4n4kGCmVHFBmLXdOn+CeoW7JPILJAofFKNf+QntAoYwrDC2EvcEqwsNwHSaYbxPAe/8GH/r2Dc0rMpgithI1LvqrBvYCj8/yJaoSAcGdRB5aYm5C4dYut776Qqz7h4giMPOVUzGxIqd5w6lJWK/C587ccZYrU8CxBuPsW7yoEfW2i357IV/5eUkzx707pFgZlzCCdAysDalj19HdjYzucRaOTAoGiNL7fq5Pf2WnANGlB5v7Ud3nlFwU8IbgXg1KiJz4NC1oteiudQ/A3ebrXEK00vT65grbws/C46Nsq0TztrYoNdhGNNGzEN4kIp4m0LA6fyloPQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TY3PR01MB9889.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(376002)(366004)(39860400002)(346002)(230922051799003)(230173577357003)(230273577357003)(1590799021)(451199024)(64100799003)(186009)(1800799012)(38100700002)(82960400001)(6506007)(2906002)(9686003)(5660300002)(7416002)(8936002)(26005)(76116006)(8676002)(66946007)(7696005)(54906003)(1580799018)(71200400001)(110136005)(66446008)(64756008)(66476007)(66556008)(316002)(41300700001)(4326008)(52536014)(122000001)(83380400001)(478600001)(55016003)(33656002)(38070700009)(85182001)(86362001)(21314003);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dXAwa1drampRa1p2bTVBNzhudkZMWnRQNloyQVFkb0E0bGNoaW83Ukl4Q2Yx?= =?utf-8?B?bFFicFk5RGsyVmltdGpBeTVKNGJsdEhsdFB3UUxVaGhPUHZ4WnpDbW9lT1BO?= =?utf-8?B?bDdkNXVmb29oOWdhWml1MUJleHdIdHhqZXpZWFRvS1RPNHhaMFFpcUdPWW1X?= =?utf-8?B?dzhzR0dBYTVKNm1zWFZ2RjV0R1JMQXl2ekxadG5QeEtET2NzYitpY1F0SzJp?= =?utf-8?B?Q0JWdVlnOTBmZThnM3ZORmJDczdUVmNna2lUemlaQmIrUnZISVdrZ29Tc0RL?= =?utf-8?B?YVdtZ1puVXVjNTRSbjROUzlKSzVoaTZ4ZlM0KzJCbGhkZlJtdzZISVM5NTli?= =?utf-8?B?TDlrSWZ4SHlYd1k4U0lZbE55RnY2QUlkVWo3RGVSaGtUY29PM0ROWXZBa0U1?= =?utf-8?B?WXBrQWg3NzhING9wdGhwVFJhYmRiYXFEVzVwT092SnRtYWd0TUQvbXRQSUFE?= =?utf-8?B?aWtaYVc4VmFvcDZaZUhleXdlbm4wWjNBWFRHcFZXUDN4cjk3MmhnYmdjODNP?= =?utf-8?B?V3luanRlMlYvMkg0Y2JEQkI5Q29CdC9oa1NrVmQzRmdzcXhZTTJsNnNWN21o?= =?utf-8?B?VERyMTFiYSswMmpZSHB4SjlGcUV1eFFOaVdpQmNvUEVzRGtaWjRGcWVwNTc5?= =?utf-8?B?K1VtZmIwZUR2M1RQN3BEbFA3dTFKRlBMZWNyd3JJUGtGd2lIUHppOXZLLzBL?= =?utf-8?B?YjFyMlVOVHRXU1E2dFJmU3RaUFRldFVjdnRYa2VVdFVzbUZvT1VPZWt1R0xh?= =?utf-8?B?ZEtDVW1xMENweFNnaDlLbUszaXZkcmNwQXM2azJ6cVkrTVJFN0lsaERBc3Zl?= =?utf-8?B?OWdQZlc4V21NVVM3MUdjZUNEbm9JZkdRYlBQVXZmSWE4YzExWkJYTDBuaGZI?= =?utf-8?B?WVZRUVNOaWU3a3dpMmNNSlVmS1doYm5HZnMxNThBbXJrL0tNMDhXcFpDeFdo?= =?utf-8?B?VmwreUhzL3ZXM3VkczBrM2lRcTJPSUdNejBFeTA2Z2xacFhUdU1vTVFVWlZU?= =?utf-8?B?WGhzdkpkSUNCMnNBWXdYL0t3S0ZDOUVOZG1JdDNpeUVRWVpsM3RBRFpMTGo1?= =?utf-8?B?d2diMFA2SGgwclg2MExDR2V2enduT3M5OFdjeVl6UjFsM0FwNTJEUjFVQ09t?= =?utf-8?B?M3oweGhkdi9UMDBUbHZzM2I4dDZ4QTUzNWNjSi90QzlzaTh0c1c5aGU1NVRY?= =?utf-8?B?UkxaWHY4eHZ3Umk3VDgvVWorUVhOUGFEV2d0M3hnUGhKNHpYN2FBMExLWE9P?= =?utf-8?B?Wm5NWHdIdGxFVEdXdjBTUGJXYmF6aTR1alFvbVcwQ2lNaURPTENCbjhiUVRQ?= =?utf-8?B?OU9SY0RWVFBYMEQ5K2xLY2dDK2dieVg5N0NYNVNnMXFtU053VzhMa24xYlBz?= =?utf-8?B?UjdKV0hiaEczZGVFWGgxK2NMRDdEdzBpa3RzZnJla0w3bmp2Q2E0RTl6bGxE?= =?utf-8?B?UW9HSy80T1FpaW5BaWVRZHIxdEo2aHB0ZS9haWFheml6Q01nRHE3eU0zWE5Y?= =?utf-8?B?VVFnVzd6TWoySWJmNWlrQlFGNlpKdFVqRVJrSjRPZExXNVkybGQzek00K1VB?= =?utf-8?B?SC9mWlY3V0lqN1lDVGR6RzhPYXRGZ0JxRnZHMThidW1VMnRpZEJmcDZQaHRR?= =?utf-8?B?WEI5QklFcm9KVEc0T21Mck5UeXJORmpEN1U1SGhCVUhlSU9MblNLWDhzNFRO?= =?utf-8?B?SHVyL2xnTmpUOU1oN2FmN2s3OVpxaktKV1cwaUtUYVJ2K24xam5LUHVXWEVJ?= =?utf-8?B?Umh3TkRKU3NVY1B2anZScDlqVmk5alQ0NjVSRHBzZEJmNmlHZ3dwNURSd250?= =?utf-8?B?YWFMWTN1Y0JvQkNpWDhySS9FYWtBUUZCMUVhMUxmTThndG54cUVnNDR5ZXJm?= =?utf-8?B?Rng5b3k1bnZNRVkwTmw4V3JFcDE2ZzY3VzJBUEYxd1JNVS95MWgyZGFEZlV5?= =?utf-8?B?Z0x6aVM1aEU5WmE3MTRyVE00OTMzOE9nUTkxNHF4UmE2Y0NYQ3dHWjkxYXBY?= =?utf-8?B?eVZkcDV0ZUE5bUhZekhsa1V6M3IvRGtncVgyVzhnbkFIREk3Z2laTVNVR3pK?= =?utf-8?B?ZitvNDczT1BIdnBhUEgvK0lybXpuQ2p2LzdZeE4yREV6UUQ1U2NzbzQvV20x?= =?utf-8?Q?8EGwby+ylHVZd1NJ24x+pPRaI?= 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: wLfr2unBM3pnAuKGESGxIAtEPjuMIy9MEuuP4m567g9hv+ZkkjX+s2M21PEBFVtetqjXAqcaZ5RsU5ssienAopaELm8sQVx8O5sLs8G0NK8VXcb9hWBU4hvVd4GWvRVxlsSBqvuxtY63zKatOHQAFewIS6WUtXpnU5O2N9dQWFSVviKJZxcvAWLq7lhqNrT1cpPX3/Q6FKbGOHM5K3MnbKgKe9WAF7QRff3XnGPYrMbFwmjyF8ntWGfiDAgYFroSgXg7e3KpJUiel1hbaFEUzEVCXlyuhu5LAd8LFtyyn3YuoOl1Uqsq2c1pmRU+Nz7LeI7Si0Oynk7hMhW6hPe5MpWmIkC6HXY5KZIF5089+7H+n66n1ndwipzhMbOqEkJyRZ9ApcMWFF73ylYe/Qnd3kqQhcmM5MQutAeqXSfbaKvQP7EG6t5wwe1roPFU1QEhDT/Ys3HF+tkQAAEOiR9hqs70jHz0UdHfdEAMbajSRRRoapdujZBNwkoBdRO0rYHst7ygLbjGicXdxiK5JXTOHU2g8Kc5m+eWbtO3SHDfmHJOHsS+elhyfFz2RAAo3UWUozCqxG1nbHo5vTnQkxC7DNKz/VZAHQewUM0XUbEOuz07l28CkdR+ujeb357YMNrk X-OriginatorOrg: fujitsu.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TY3PR01MB9889.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d979c27b-fada-4e4c-caaf-08dc0225d381 X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Dec 2023 13:07:46.5169 (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: 20ElaPKRCsp36NhD4GN0tpjSsdl8x0PeDqyaR3s0g9VAKDOPQkh58VeTyFGgyZNf4hLehy4t9wbgcdx7/1AMNhfZIeuU84QUUOA/58FMvb0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYWPR01MB10602 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk RGVhciBTaHZldGEsDQoNClRoYW5rcyBmb3IgdXBkYXRpbmcgdGhlIHBhdGNoISBIZXJlIGlzIG15 IGNvbW1lbnRzIGZvciB2NTItMDAwMi4NCg0Kfn5+fn4NCnN5c3RlbS12aWV3cy5zZ21sDQoNCjAx LiANCg0KYGBgDQorDQorICAgICA8cm93Pg0KKyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3Rh YmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+DQorICAgICAgIDxzdHJ1 Y3RmaWVsZD5zeW5jX3N0YXRlPC9zdHJ1Y3RmaWVsZD4gPHR5cGU+Y2hhcjwvdHlwZT4NCisgICAg ICA8L3BhcmE+DQorICAgICAgPHBhcmE+DQorICAgICAgRGVmaW5lcyBzbG90IHN5bmNocm9uaXph dGlvbiBzdGF0ZS4gVGhpcyBpcyBtZWFuaW5nZnVsIG9uIHRoZSBwaHlzaWNhbA0KKyAgICAgIHN0 YW5kYnkgd2hpY2ggaGFzIGNvbmZpZ3VyZWQgPHhyZWYgbGlua2VuZD0iZ3VjLWVuYWJsZS1zeW5j c2xvdCIvPiA9IHRydWUuDQorICAgICAgUG9zc2libGUgdmFsdWVzIGFyZToNCisgICAgICAgPGl0 ZW1pemVkbGlzdD4NCisgICAgICAgIDxsaXN0aXRlbT4NCisgICAgICAgICA8cGFyYT48bGl0ZXJh bD5uPC9saXRlcmFsPiA9IG5vbmUgZm9yIHVzZXIgY3JlYXRlZCBzbG90cywNCi4uLg0KYGBgDQoN CkhtbS4gSSdtIG5vdCBzdXJlIHdoeSB3ZSBtdXN0IHNob3cgYSBzaW5nbGUgY2hhcmFjdGVyIHRv IGEgdXNlci4gSSdtIE9LIGZvcg0KcGdfc3Vic2NyaXB0aW9uLnNyc3Vic3RhdGUgYmVjYXVzZSBp dCBpcyBhICJjYXRhbG9nIiAtIHRoZSBhY3R1YWwgdmFsdWUgd291bGQgYmUNCnJlY29yZGVkIGlu IHRoZSBoZWFwLiBCdXQgcGdfcmVwbGljYXRpb25fc2xvdCBpcyBqdXN0IGEgdmlldyBzbyB0aGF0 IHdlIGNhbiByZXBsYWNlDQppbnRlcm5hbCByZXByZXNlbnRhdGlvbnMgdG8gb3RoZXIgc3RyaW5n cy4gRS5nLiwgcGdfcmVwbGljYXRpb25fc2xvdHMud2FsX3N0YXR1cy4NCkhvdyBhYm91dCB1c2lu ZyB7bm9uZSwgaW5pdGlhbGl6ZWQsIHJlYWR5fSBvciBzb21ldGhpbmc/DQoNCn5+fn5+DQpwb3N0 bWFzdGVyLmMNCg0KMDIuIGJnd29ya2VyX3Nob3VsZF9zdGFydF9ub3cNCg0KYGBgDQorICAgICAg ICAgICAgaWYgKHN0YXJ0X3RpbWUgPT0gQmdXb3JrZXJTdGFydF9Db25zaXN0ZW50U3RhdGVfSG90 U3RhbmRieSAmJg0KKyAgICAgICAgICAgICAgICAgICAgIHBtU3RhdGUgIT0gUE1fUlVOKQ0KKyAg ICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsNCmBgYA0KDQpJJ20gbm90IHN1cmUgdGhlIHNlY29u ZCBjb25kaXRpb24gaXMgcmVhbGx5IG5lZWRlZC4gVGhlIGxpbmUgd2lsbCBiZSBleGVjdXRlZCB3 aGVuDQpwbVN0YXRlIGlzIFBNX0hPVF9TVEFOREJZLiBJcyB0aGVyZSBhIHBvc3NpYmlsaXR5IHRo YXQgcG1TdGF0ZSBpcyBjaGFuZ2VkIGFyb3VuZCBoZXJlPw0KDQp+fn5+fg0KbGlicHF3YWxyZWNl aXZlci5jDQoNCjAzLiBQUVdhbFJlY2VpdmVyRnVuY3Rpb25zDQoNCmBgYA0KKyAgICAud2FscmN2 X2dldF9kYm5hbWVfZnJvbV9jb25uaW5mbyA9IGxpYnBxcmN2X2dldF9kYm5hbWVfZnJvbV9jb25u aW5mbywNCmBgYA0KDQpKdXN0IHRvIGNvbmZpcm0gLSBpcyB0aGVyZSBhIHJ1bGUgZm9yIG9yZGVy aW5nPw0KDQp+fn5+fg0Kc2xvdHN5bmMuYw0KDQowNC4gU2xvdFN5bmNXb3JrZXJDdHgNCg0KYGBg DQp0eXBlZGVmIHN0cnVjdCBTbG90U3luY1dvcmtlckN0eA0Kew0KCXBpZF90CQlwaWQ7DQoJc2xv Y2tfdAkJbXV0ZXg7DQp9IFNsb3RTeW5jV29ya2VyQ3R4Ow0KDQpTbG90U3luY1dvcmtlckN0eCAq U2xvdFN5bmNXb3JrZXIgPSBOVUxMOw0KYGBgDQoNClBlciBvdGhlciBmaWxlcyBsaWtlIGxhdW5j aGVyLmMsIHNob3VsZCB3ZSB1c2UgYSBuYW1lIGxpa2UgIlNsb3RTeW5jV29ya2VyQ3R4U3RydWN0 Ij8NCg0KMDUuIFNsb3RTeW5jV29ya2VyUmVnaXN0ZXIoKQ0KDQpZb3VyIGNvZGluZyB3aWxsIHdv cmsgd2VsbCwgYnV0IHRoZXJlIGlzIGFub3RoZXIgYXBwcm9hY2ggd2hpY2ggdmFsaWRhdGVzDQpz bG90c3luYyBwYXJhbWV0ZXJzIGhlcmUuIEluIHRoaXMgY2FzZSwgdGhlIHBvc3RtYXN0ZXIgc2hv dWxkIGV4aXQgQVNBUC4gVGhpcyBjYW4NCm5vdGlmeSB0aGF0IHRoZXJlIGFyZSBzb21lIHdyb25n IHNldHRpbmdzIHRvIHVzZXJzIGVhcmxpZXIuIFRob3VnaHQ/DQoNCjA2LiB3YWl0X2Zvcl9wcmlt YXJ5X3Nsb3RfY2F0Y2h1cA0KDQpgYGANCisgICAgICAgIENIRUNLX0ZPUl9JTlRFUlJVUFRTKCk7 DQorDQorICAgICAgICAvKiBIYW5kbGUgYW55IHRlcm1pbmF0aW9uIHJlcXVlc3QgaWYgYW55ICov DQorICAgICAgICBQcm9jZXNzU2xvdFN5bmNJbnRlcnJ1cHRzKHdyY29ubik7DQpgYGANCg0KUHJv Y2Vzc1Nsb3RTeW5jSW50ZXJydXB0cygpIGFsc28gaGFzIENIRUNLX0ZPUl9JTlRFUlJVUFRTKCks IHNvIG5vIG5lZWQgdG8gY2FsbC4NCg0KMDcuIHdhaXRfZm9yX3ByaW1hcnlfc2xvdF9jYXRjaHVw DQoNCmBgYA0KKyAgICAgICAgLyoNCisgICAgICAgICAqIFhYWDogSXMgd2FpdGluZyBmb3IgMiBz ZWNvbmRzIGJlZm9yZSByZXRyeWluZyBlbm91Z2ggb3IgbW9yZSBvcg0KKyAgICAgICAgICogbGVz cz8NCisgICAgICAgICAqLw0KKyAgICAgICAgcmMgPSBXYWl0TGF0Y2goTXlMYXRjaCwNCisgICAg ICAgICAgICAgICAgICAgICAgIFdMX0xBVENIX1NFVCB8IFdMX1RJTUVPVVQgfCBXTF9QT1NUTUFT VEVSX0RFQVRILA0KKyAgICAgICAgICAgICAgICAgICAgICAgMjAwMEwsDQorICAgICAgICAgICAg ICAgICAgICAgICBXQUlUX0VWRU5UX1JFUExfU0xPVFNZTkNfUFJJTUFSWV9DQVRDSFVQKTsNCisN CisgICAgICAgIFJlc2V0TGF0Y2goTXlMYXRjaCk7DQorDQorICAgICAgICAvKiBFbWVyZ2VuY3kg YmFpbG91dCBpZiBwb3N0bWFzdGVyIGhhcyBkaWVkICovDQorICAgICAgICBpZiAocmMgJiBXTF9Q T1NUTUFTVEVSX0RFQVRIKQ0KKyAgICAgICAgICAgIHByb2NfZXhpdCgxKTsNCmBgYA0KDQpJcyB0 aGVyZSBhbnkgcmVhc29ucyBub3QgdG8gdXNlIFdMX0VYSVRfT05fUE1fREVBVEggZXZlbnQ/IElm IG5vdCwgeW91IGNhbiB1c2UuDQoNCjA4LiBzeW5jaHJvbml6ZV9zbG90cw0KDQpgYGANCisgICAg U3BpbkxvY2tBY3F1aXJlKCZXYWxSY3YtPm11dGV4KTsNCisgICAgaWYgKCFXYWxSY3YgfHwNCisg ICAgICAgIChXYWxSY3YtPnNsb3RuYW1lWzBdID09ICdcMCcpIHx8DQorICAgICAgICBYTG9nUmVj UHRySXNJbnZhbGlkKFdhbFJjdi0+bGF0ZXN0V2FsRW5kKSkNCisgICAgew0KLi4uDQpgYGANCg0K QXNzdW1pbmcgdGhhdCBXYWxSY3YgaXMgc3RpbGwgTlVMTC4gSW4gdGhpcyBjYXNlLCBkb2VzIHRo ZSBmaXJzdCBTcGluTG9ja0FjcXVpcmUoKQ0KbGVhZCBhIHNlZ21lbnRhdGlvbiBmYXVsdD8NCg0K MDkuIHN5bmNocm9uaXplX3Nsb3RzDQoNCmBgYA0KKyAgICBlbG9nKERFQlVHMiwgInNsb3Qgc3lu YyB3b3JrZXIncyBxdWVyeTolcyBcbiIsIHMuZGF0YSk7DQpgYGANCg0KVGhlIHF1ZXJ5IGlzIG5v dCBkeW5hbWljYWwgb25lLCBzbyBJIHRoaW5rIG5vIG5lZWQgdG8gcHJpbnQgZXZlbiBpZiB0aGUg ZGVidWcNCm1vZGUuDQoNCjEwLiBzeW5jaHJvbml6ZV9vbmVfc2xvdA0KDQpJSVVDLCB0aGlzIGZ1 bmN0aW9uIGNhbiBzeW5jaHJvbml6ZSBzbG90cyBldmVuIGlmIHRoZSB1c2VkIHBsdWdpbiBvbiBw cmltYXJ5IGlzDQpub3QgaW5zdGFsbGVkIG9uIHRoZSBzZWNvbmRhcnkgc2VydmVyLiBJZiB0aGUg c2xvdCBpcyBjcmVhdGVkIGJ5IHRoZSBzbG90c3luYw0Kd29ya2VyLCB1c2VycyB3aWxsIHJlY29n bml6ZSBpdCBhZnRlciB0aGUgc2VydmVyIGlzIHByb21vdGVkIGFuZCB0aGUgZGVjb2RlIGlzDQpz dGFydGluZy4gSSBmZWx0IGl0IGlzIG5vdCBnb29kIHNwZWNpZmljYXRpb24uIENhbiB3ZSBkZXRl Y3QgaW4gdGhlIHZhbGlkYXRpb24NCnBoYXNlPw0KDQp+fn5+fg0Kbm90IHRoZSBzb3VyY2UgY29k ZQ0KDQoxMS4gDQoNCkkgdGVzdGVkIHRoZSB0eXBpY2FsIGNhc2UgLSBwcm9tb3RpbmcgYSBwdWJs aXNoZXIgZnJvbSBhIGJlbG93IGRpYWdyYW0uDQpBIHBoeXNpY2FsIHJlcGxpY2F0aW9uIHNsb3Qg InBoeXNpY2FsIiB3YXMgc3BlY2lmaWVkIGFzIHN0YW5kYnlfc2xvdF9uYW1lcy4NCg0KYGBgDQpu b2RlIEEgKHByaW1hcnkpIC0tPiBub2RlIEIgKHNlY29uZGFyeSkNCnwNCnwNCm5vZGUgQyAoc3Vi c2NyaWJlcikNCmBgYA0KDQpBbmQgYWZ0ZXIgdGhlIHByb21vdGluZywgYmVsb3cgbGluZXMgd2Vy ZSBwZXJpb2RpY2FsbHkgb3V0cHV0IG9uIGxvZ2ZpbGVzIGZvcg0Kbm9kZSBCIGFuZCBDLg0KDQpg YGANCldBUk5JTkc6ICByZXBsaWNhdGlvbiBzbG90ICJwaHlzaWNhbCIgc3BlY2lmaWVkIGluIHBh cmFtZXRlciAic3RhbmRieV9zbG90X25hbWVzIiBkb2VzIG5vdCBleGlzdCwgaWdub3JpbmcNCmBg YA0KDQpEbyB5b3UgaGF2ZSBpZGVhIHRvIHN1cHByZXNzIHRoZSB3YXJuaW5nPyBJSVVDIGl0IGlz IGEgbm9ybWFsIGJlaGF2aW9yIG9mIHRoZQ0Kd2Fsc2VuZGVyIHNvIHRoYXQgd2UgY2Fubm90IGF2 b2lkIHRoZSBwZXJpb2RpY2FsIG91dHB1dHMuDQoNClRoZSBzdGVwcyBvZiB0aGUgdGVzdCB3YXMg YXMgZm9sbG93czoNCg0KMS4gc3RvcCB0aGUgbm9kZSBBIHZpYSBwZ19jdGwgc3RvcA0KMi4gcHJv bW90YSB0aGUgbm9kZSBCIHZpYSBwZ19jdGwgcHJvbW90ZQ0KMy4gY2hhbmdlIHRoZSBjb25uZWN0 aW9uIHN0cmluZyBvZiB0aGUgc3Vic2NyaXB0aW9uIHZpYSBBTFRFUiBTVUJTQ1JJUFRJT04gLi4u IENPTk5FQ1RJT04gLi4uDQoNCkJlc3QgUmVnYXJkcywNCkhheWF0byBLdXJvZGENCkZVSklUU1Ug TElNSVRFRA0KDQo=