From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 1C408388D712 for ; Wed, 10 Apr 2024 19:21:53 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 1C408388D712 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=oracle.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 1C408388D712 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1712776924; cv=pass; b=v/CbwW5dwle8DhbPEiBBmz4YlxnIquHZ/vMzLBavViGb+yoW09jQDiMrOCtoY+xoZPlUYAGIaWfYBjxk+LLiUwMOIZPkhfdiqUX3s5adU7kqzTtwg9ZPtK5r1FjzCFBBUX0LeooknnMICQTnmf4FxBCb4IhwaxiU2y0yHJzOP3I= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1712776924; c=relaxed/simple; bh=yms7yyGbXeB6Fyxps9mugmGuEbm8QL2k0JIUE1vazsY=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=XFYdGYe1mVzjdO3MpSV0IZAIlZ03QC0D1YD/fyRQLq6Ichb0FvG88K2v8vqVunX96C1mp5pplCXyzxm2hbCz3zpB2pKmCxneQxz7wwMAVzT2fZe/hez2jv0u7B9sdHzdB/iM5DwpNLhi43+9KdiQuPd61L73pgRU/7EArxybxm4= ARC-Authentication-Results: i=2; server2.sourceware.org Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 43AIlurE002431; Wed, 10 Apr 2024 19:21:52 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=corp-2023-11-20; bh=yms7yyGbXeB6Fyxps9mugmGuEbm8QL2k0JIUE1vazsY=; b=ox4Ji16xvD74R8OrMTZLpazrCNaDsMffA9j3djeEktTMQ5MeYZp/ceaoMY6v6yvkV+Ta raR1uKaz31Ls+NBd9ryO0OA0zjHESTAkaUahgGMpkwMAkgwDHNP3K7FdXWdawpHtg0A5 l4IDrTeOt8aUEsuZ4WWzWV4jBxySditafx/vgvil9jfMo5PDgYyNfLdUxTdFR7OxJAoE z2n3LcnCB+xptguY7Q579r7mtNppCWCwpzhc3I94JLf74Lldn+n1WRvi0bfNiVkcSS1E qLmnljh3j2gL9068uwWAwfVsbQJJxdTY2csl3efUq1qraHDI9EoMm5KEGSGaw4GJV/sC CQ== Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3xax9b83b5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 10 Apr 2024 19:21:51 +0000 Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 43AHea3E039993; Wed, 10 Apr 2024 19:21:50 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2040.outbound.protection.outlook.com [104.47.56.40]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3xavuevrqw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 10 Apr 2024 19:21:50 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JCKhMfU0QoeRIQtyYNGhHO0giLpaQQM+/fBgZDI4tS+ZtDQ+qvcyqCPiWKM/k4GXadEaD4bbYtnSt0S0U7t5DemUlpA1Hnu6iPLuuMavZNdD/JCQ2biLb5tWiqGKPuth1Vl8iJrG7UDoE8jqIMhWS5rKFDEv0jJYE7x6xAjmjhi9TOYoLA4x/vEsvXcLZRpB8ducbJRZtTws2Mt78ZsgK2ndeEoJo1CneQ7DewXcPytEp6YApHkrls3/ZcV+LJU639Gf7gyomRLKPiLNUKe0P578DE7i04USxZPsVEi850qvDYG3dYFBXQcx723hwchU9ex51zoXEpLNcy4gBTnP2A== 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=yms7yyGbXeB6Fyxps9mugmGuEbm8QL2k0JIUE1vazsY=; b=JDmhZQjFJA0q84/fad88gbKrNGAlh1L9TkN0f7ystzPCvKA5Ha5wYj2l/0gI/h7F0qZngLqN8Ii3Kvf4GwfuZrSgSoTkNqOwwVrKoey/KAELV7dAXaWlV4LNu6PzYhi/bAgqeriwH/KrG1R5PPiISZ17vKLWi6FNizJbJ8XwN7TAx9E0HJuYWTwacCAbjv9gkDv36XPro9kdIFavG9RRLffIK9pyLbDpyic3cdvTJ5y8L7SnuQlOZYZOAu24bel5gr2qIVb9tuPQqOzMTisufaMElz0znzfyzziSpeNk1N0lTs4yIMuxEKISBmaD8lUDqg/MONLyCALaowAN5fVY7Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yms7yyGbXeB6Fyxps9mugmGuEbm8QL2k0JIUE1vazsY=; b=PPMUTkCJJG1qv8CChjgtnYC5m1P/hy+HCyFxnCtNjqvpCeR9mQ3fvvoDxdilwGYeA9FgwppAKUjF8Svz+vtIorWwNL+kMpf/TWz63nDXvZNKv6OZz/MlJFmibhyifsx58Hy0YvXGuo/OkbJCDvtNvIPhQ0LnrnqDWHwqtEqNh+0= Received: from CY8PR10MB6538.namprd10.prod.outlook.com (2603:10b6:930:5a::17) by CH0PR10MB4985.namprd10.prod.outlook.com (2603:10b6:610:de::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7409.46; Wed, 10 Apr 2024 19:21:48 +0000 Received: from CY8PR10MB6538.namprd10.prod.outlook.com ([fe80::2dae:7852:9563:b4bc]) by CY8PR10MB6538.namprd10.prod.outlook.com ([fe80::2dae:7852:9563:b4bc%6]) with mapi id 15.20.7409.042; Wed, 10 Apr 2024 19:21:48 +0000 From: Qing Zhao To: Joseph Myers CC: "uecker@tugraz.at" , Richard Biener , Siddhesh Poyarekar , Kees Cook , "isanbard@gmail.com" , "gcc-patches@gcc.gnu.org" Subject: Re: [PATCH v8 1/5] Provide counted_by attribute to flexible array member field (PR108896) Thread-Topic: [PATCH v8 1/5] Provide counted_by attribute to flexible array member field (PR108896) Thread-Index: AQHagfMoTvsykZNFLkqLHn8p+Gr+abFh1xSAgAAITICAAArbAIAACnuA Date: Wed, 10 Apr 2024 19:21:48 +0000 Message-ID: <554BC0FC-2DAD-4FE8-939B-4D1510D4F2F0@oracle.com> References: <20240329160703.4012941-1-qing.zhao@oracle.com> <20240329160703.4012941-2-qing.zhao@oracle.com> <7CF58725-81D3-4A6B-BC9C-C828155FA399@oracle.com> <96f7663d-8475-6b5a-dc46-3483dc3079a2@redhat.com> In-Reply-To: <96f7663d-8475-6b5a-dc46-3483dc3079a2@redhat.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3774.500.171.1.1) x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CY8PR10MB6538:EE_|CH0PR10MB4985:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: gRewKCN7wIT03h5yH4nSXr4XPzGNViQt+oJEDpBtXNwQep6dk72ERjnerzNg/vZbruWRjUekCkUCasAu+ItFX4JbpP8NUSEyZbpBZbiYA8WpHxeebYIrmorGPP9RYdd/9+nw6ZzG/KaUYZxeTBLdIdg8bDv/AlUQGk0EVtqrN1OMORULXnAaIDoU9QaNAYnzILPtOZlmx3nElUwCAwkUk2t/KGBc69mkCnGnhmAl7KMGdMISz1fIZCaqoGV0hPB/PcpIpWq0kWkEEdNyl4Ww33iR3/SKQH5WibbyWdoEqJ1Bug7VgtkbRR5u0sC/BKhyQMzs/o64B15yiHQvMwRRS18Yni7SpzTNQaCrDdOl63gkoRclVr2kXvt1pBuRnRIMxaLND1MhryXnbsNtwedgTtlrpzQqaNpn8y8XtJAKLqyPOuSSBrU8YSDcvUmc4OlLNw6C9NgrQrPQSf/3psofMqfz7J2vFrbOPaGEbUK13w545t4I8WhSNAn5Jo+Iy9Mjr6Rtl4C8wY+Hi0FEgYFWuSGvoISlYDJKxlxqEy5ZgKKnWYz7xUzQjQdM9GmkrHnWpIYw0IZUXx4MHFXLaEz6eSJPLg48fZHIQNum1+s9FkjKVkjhneeb24+xRxK4XNgwwt8v4SKwSqpMUQlNlTeYSlUWBVAl3Hb+MgsUbkAgQ+k= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CY8PR10MB6538.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366007)(1800799015)(376005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?eGM5S05oSTFzK3ZnNXR5R3M5SmZySE52ZVMzSXA0eUorcUFFcVFSWnZVSzBs?= =?utf-8?B?YUMrTEU0NkFVK1lPUXJMK1dpL0ppMUlVSEQyVWlTNUF5WU00WGtLaHYzb2hC?= =?utf-8?B?ZVluaVk1Y3pvNEQzV2NJK3FVWElTbTNMdzliZlpmd1hwUTJNNXZRRGZEbHJn?= =?utf-8?B?OUxVRDRoMGd6eWNNcXBHcHFRaWRDbWJGTWZtdUpnc3BoQ0lJMHQwSitnS0JY?= =?utf-8?B?d0dDSzJLLzFyS29vcitZTjJBZ2U5dXV1N0F2NlRQZUN3M0JMUUN2QTF2UG5w?= =?utf-8?B?cEVaMVZKcFZEdDhBTUppOHk4S1d3WW1mc0lXSjhGcGNFNndQb01ndThrRXZq?= =?utf-8?B?YnpZdWx0dkM4SVBTcEg5WUdQdnZ3TitZVEdCejZ4S2puQnZtY3dpdkFMcU9D?= =?utf-8?B?Ukk0QWNrakJ1NDY5OUVla1BYV2Q5cENiRXo2TGRybGtvWjZoM3AySForMEo0?= =?utf-8?B?aWkxMmladFlzcm45R0lsMUl1Vy9HSEZ4b212MkcyMFdHRmczTlJNRjRWSytO?= =?utf-8?B?cnkzbmh0WVJ1VWNQTk9sclVEWHYzNFFpSHR3RWt4RlhaUVFWRUtIQ3lyTE9I?= =?utf-8?B?bmgzUUw3SzJ5MGRabEdRV09idTlWWlVJMlJUOHJtWUZYNjA1aW16S1hLaHVI?= =?utf-8?B?ZlhlVTE2T1k3V1RyM3RJUi9qTUpYOVpIU1NvdGY3MnNRMTlyUGwwZWdKYmVa?= =?utf-8?B?WGVlYkM0R3c1VXgxUXozSWxVRGFscTJOY1hNUTZiQkY3aGo5RXBERTMrcytO?= =?utf-8?B?N053YTRmU29nMTYwL0RCN25BVW5VQ2lTSUozeTl2NTJQcVMyTEdCRkQvbWRY?= =?utf-8?B?Q1Uya3FrVmNQdHQ0MlV0QjU0M1ZlMUhtSE1IMml0aHNnNVhaRy93dytTaDlE?= =?utf-8?B?RHhjeWRDc3pRWHdmYXl0TFNyc3k2YnpXWGVWYmNEVHZBdGRJZ3drc1JJK2Rj?= =?utf-8?B?Z25sWkZCU0dDSUVNR1lyMU1xTGVlMGtyVlU3TG4wdjB4K3hVdVovUGVYYTF1?= =?utf-8?B?TUVLSTF5cmN3dDNsc1RFTFQ4ZlNtc0F3YVVuMmZWd1NFbVJEQ3J1bElsL0V4?= =?utf-8?B?U2lSSHo1RytHOUg1UXA3Ky9lbnJSSFdHNHdwRUYwdEhSM25wV2xQTGptNG9H?= =?utf-8?B?SUh6NTl1dVkvSUZpZUQyd0RlQTBBOWdiYW16TGVjeHNpZzg4M0hxS0pORFI0?= =?utf-8?B?UXdnN1pWaWNkcE4zZWtuYUJDYkE2VVB6OFkwU2dlRXhvbitJM1FndzZNTDNs?= =?utf-8?B?ZnBEZGt0bW5ZUmlqQlg0cWI2NWV1YzVDTC9TdVZQWERkU20yL1poL0ZWdG1v?= =?utf-8?B?R1pzU09kU21lajJxUVlpR2dLUUlZVkJ0N29oYUhkRmNVTTIrTStMLzE1QzRU?= =?utf-8?B?OHYzQnd2SjJBR2h4ZHF3NXBGdzYxcmwzK1pHM3ZwNXM4RDU4cUtaMCtQdTls?= =?utf-8?B?M1RsL21JT0Fld2tmbjFJRVY2a3BVdnRSTHE0VjBpbGljRWkvK05xVmVzcEtu?= =?utf-8?B?SjdFR3VJTzgzYjdDZW5pRGlDZko0eHNqeUg5NmhsSGpRSktHRkcyYXFVd0Zy?= =?utf-8?B?a3dNMGx4OWJNNzY4cUhJTE5udlFlajZBSFJVTDl6emdtUzNGVC9GTTBZV2po?= =?utf-8?B?SUd4cllUREFhVEZVVlhNbEgvZFNwUlRjS1NOVytmbFkvOU1YM2tBRmNlVUNJ?= =?utf-8?B?ajFEL1JtOTVISWtvb2U0b0MrVm5ZcjJOdk14dVNoQTZkQW5oVEFKUXFGUXpZ?= =?utf-8?B?M2dGNVVNNFk0M1pFRlZ2bU5mQVpBeGYyZ09FZ3lZYXpUbFpNOXRvZWh2V2lS?= =?utf-8?B?YXBRTFhHbHJISTVhNGRRWnFML2hDZHp0SzRqSFhoWGI0cThodEtnUXI2TGVI?= =?utf-8?B?Q3hINklTdG1IN3FzMU02dURxZjhLVzl1R29VY1hMUUxoRUEvTUdaR2RZQWZu?= =?utf-8?B?ZHJwbUZ6TEpjUUtKMHMxcHR1dWtuaHAzM3Z3UElSeXZqQXFxS0tQaXBCMVFF?= =?utf-8?B?ajY5b2lwcVFGUFMydkc5NVZxQXBnQ2ZETmdMdHFZL2tJZXZFNGk3dHp6TlZo?= =?utf-8?B?aC93b1ZEVE5jbzlVNEh3RXpCS1g5TXVMSUZNeENtNndDUk16TzhUbU9xdmdl?= =?utf-8?B?TU9sZWJ3UWx4Nk5WTVhZTWNpUS9hSXFvbTB6ckNMT3BHNng4REk3YnpsMTVC?= =?utf-8?Q?yzHPbsXW9mQRm+LoVhAOnrA=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: <36C6C2B83A88E845AA1428409D5A40D0@namprd10.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: BTe4jmVDnZv77EWIaJRo9nZs1xEK/f8tqLsD6qJls+WP7tV0WTGRVWhQkYUZuvW9IeRTCpNTTIMXcgoOR10g1HD2FBoZy1t++pll6+BBktY5D1xEsngqWignB4c3V7mVygSZI7SYLC40BAer9qvBA95gh5pvmRuZGtZImC1WKuewC7TY0el3Ft3s+Huv/9+4seJNRkik0kR6lyIO5sGkGrn7he4lS8LNQUjacqfz4vKBMm8tWAY8mOT0AJNC9Kefrz1nNspvnA8ho2AcZxB9IuyrJRP/mCLnv1G2fHyfOtPb3reIFm07k7SqBaHwZYD2FyNZZGVGcKPXcKEhLRLmTu4oovhfdnKTCGJxR9T32WPXgf8AxY2RFDnDOVVZlF3SqPam6IGKB/ZHUEgwlyeCG/XHlySK+fPMPQcItF/VlTf0ubbX+YfB3fdIcdhh65jBye/cPDkcW7EIe1oY/xVa4HIWGXsI3eaNVcp9UhhUz9CyTFQT2vWdtaZVgZsERfpw1jsnY5dfwvJaiwoSCUZOsCgyHaLhXwUhcRg1cWL+7dbvPl8dQ3r4LdscnURrC4GnGYP8cSinSxxLieOVUavLPxnogJ4YNCDUyfQXMT2pqDE= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CY8PR10MB6538.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4170cfa3-6da1-433e-603c-08dc599377c5 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Apr 2024 19:21:48.4052 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: bHmSgUsnJz7W55DRkYdlKfzD2iJ0EX5upLaJz+E2lFxxp0yB+8CZpbFExcz6+kLxae6wDXIRyOYeabyly0YRKA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR10MB4985 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-04-10_04,2024-04-09_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 mlxscore=0 mlxlogscore=999 bulkscore=0 suspectscore=0 adultscore=0 spamscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2404010000 definitions=main-2404100142 X-Proofpoint-GUID: uYTGun8-ufwTeHyetqyBrlpRka4J0DQh X-Proofpoint-ORIG-GUID: uYTGun8-ufwTeHyetqyBrlpRka4J0DQh X-Spam-Status: No, score=-5.2 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: DQoNCj4gT24gQXByIDEwLCAyMDI0LCBhdCAxNDo0NCwgSm9zZXBoIE15ZXJzIDxqb3NteWVyc0By ZWRoYXQuY29tPiB3cm90ZToNCj4gDQo+IE9uIFdlZCwgMTAgQXByIDIwMjQsIFFpbmcgWmhhbyB3 cm90ZToNCj4gDQo+PiBBIHN0dXBpZCBxdWVzdGlvbiBmaXJzdCwgdGhlIHNhbWUgc2NvcGUgbWVh bnMgdGhlIHNhbWUgZmlsZT8gKE9yIHNhbWUgZnVuY3Rpb24pDQo+IA0KPiBzdHJ1Y3QgWCB7IGlu dCBhOyB9Ow0KPiBzdHJ1Y3QgWCB7IGludCBhOyB9Ow0KPiANCj4gaXMgYW4gZXhhbXBsZSBvZiB0 aGUgc2FtZSBzY29wZSAoZmlsZSBzY29wZSwgaW4gdGhpcyBjYXNlKS4gIFRoZSANCj4gc3RydWN0 dXJlcyBtdXN0IGhhdmUgdGhlIHNhbWUgY29udGVudHMgKGluIGFuIGFwcHJvcHJpYXRlIHNlbnNl KSBhbmQgYXJlIA0KPiB0aGVuIGNvbnNpZGVyZWQgdGhlIHNhbWUgdHlwZS4NCj4gDQo+IHN0cnVj dCBYIHsgaW50IGE7IH07DQo+IHZvaWQgZigpIHsgc3RydWN0IFggeyBpbnQgYTsgfTsgfQ0KPiAN Cj4gaXMgbm90IHRoZSBzYW1lIHNjb3BlIC0gYnV0IEMyMyBtYWtlcyB0aGUgdHlwZXMgY29tcGF0 aWJsZSAobm90IHRoZSBzYW1lKS4gIA0KPiBJdCdzIE9LIHRvIGhhdmUgaW5jb21wYXRpYmxlIHR5 cGVzIHdpdGggdGhlIHNhbWUgdGFnIGluIGRpZmZlcmVudCBzY29wZXMgDQo+IGFzIHdlbGwNCj4g DQo+IHN0cnVjdCBYIHsgaW50IGE7IH07DQo+IHZvaWQgZigpIHsgc3RydWN0IFggeyBsb25nIGI7 IH07IH0NCj4gDQo+IGJ1dCBpZiB5b3UgdXNlIHRoZW0gaW4gYSB3YXkgcmVxdWlyaW5nIGNvbXBh dGliaWxpdHksIHRoZW4gdGhlIGNvbnRlbnRzIA0KPiBtdXN0IGJlIGNvbXBhdGlibGUNCj4gDQo+ IHN0cnVjdCBYIHsgaW50IGE7IH0gdjsNCj4gdm9pZCBmKCkgeyBzdHJ1Y3QgWCB7IGludCBhOyB9 ICpwID0gJnY7IH0NCg0KT2theSwgdGhlIGFib3ZlIGlzIHZlcnkgY2xlYXIsIHRoYW5rcyBhIGxv dCBmb3IgdGhlIGV4cGxhbmF0aW9uLg0KU28sIGJhc2ljYWxseSwgZm9yIOKAnGNvdW50ZWQtYnni gJ0gYXR0cmlidXRlOg0KKipUaGUgZm9sbG93aW5nIGlzIGdvb2Q6DQpzdHJ1Y3QgZiB7IA0KICBp bnQgYjsNCiAgaW50IGM7DQogIGludCBhW10gIF9fYXR0cmlidXRlX18gKChjb3VudGVkX2J5IChi KSkpIH07DQpzdHJ1Y3QgZiB7DQogIGludCBiOw0KICBpbnQgYzsNCiAgaW50IGFbXSBfX2F0dHJp YnV0ZV9fICgoY291bnRlZF9ieSAoYikpKSB9Ow0KDQoqKlRoZSBmb2xsb3dpbmcgc2hvdWxkIGVy cm9yOg0KDQpzdHJ1Y3QgZiB7IA0KICBpbnQgYjsNCiAgaW50IGM7DQogIGludCBhW10gIF9fYXR0 cmlidXRlX18gKChjb3VudGVkX2J5IChiKSkpIH07DQpzdHJ1Y3QgZiB7DQogIGludCBiOw0KICBp bnQgYzsNCiAgaW50IGFbXSBfX2F0dHJpYnV0ZV9fICgoY291bnRlZF9ieSAoYykpKSB9OyAgLyog ZXJyb3IgaGVyZSAqLw0KDQpGb3IgdGhlIHNhbWUgdGFnIGluIGRpZmZlcmVudCBzY29wZXMgY2Fz ZToNCg0Kc3RydWN0IGYgeyANCiAgaW50IGI7DQogIGludCBjOw0KICBpbnQgYVtdICBfX2F0dHJp YnV0ZV9fICgoY291bnRlZF9ieSAoYikpKSB9ICB5MDsNCg0Kdm9pZCB0ZXN0MSh2b2lkKSANCnsg ICANCnN0cnVjdCBmIHsNCiAgaW50IGI7DQogIGludCBjOw0KICBpbnQgYVtdIF9fYXR0cmlidXRl X18gKChjb3VudGVkX2J5IChjKSkpIH0geDsNCg0KICB5MCA9IHg7ICAvKiB3aWxsIHJlcG9ydCBp bmNvbXBhdGlibGUgdHlwZSBlcnJvciBoZXJlICovDQp9DQoNCkFyZSB0aGUgYWJvdmUgY29tcGxl dGU/DQoNCj4gDQo+PiBJcyB0aGVyZSBhIHRlc3RpbmcgY2FzZSBmb3IgdGhpcyBmZWF0dXJlIGlu IGN1cnJlbnQgR0NDIHNvdXJjZSB0cmVlIEkgY2FuIHRha2UgYSBsb29rPyAoYW5kDQo+PiBUaGVu IEkgY2FuIHVzZSBpdCB0byBjb25zdHJ1Y3QgdGhlIG5ldyB0ZXN0aW5nIGNhc2UgZm9yIHRoZSBj b3VudGVkLWJ5IGF0dHJpYnV0ZSkuDQo+IA0KPiBTZWUgZ2NjLmRnL2MyMy10YWctKi5jIGZvciBt YW55IHRlc3RzIG9mIGRpZmZlcmVudCBjYXNlcyBpbnZvbHZpbmcgdGhlIHRhZyANCj4gY29tcGF0 aWJpbGl0eSBydWxlcyAoYW5kIGdjYy5kZy9nbnUyMy10YWctKiB3aGVyZSBHTlUgZXh0ZW5zaW9u cyBhcmUgDQo+IGludm9sdmVkKS4NCg0KR290IGl0LiBXaWxsIHRha2UgYSBsb29rIG9uIHRoZW0u DQoNCnRoYW5rcy4NCg0KUWluZw0KDQo+IA0KPiAtLSANCj4gSm9zZXBoIFMuIE15ZXJzDQo+IGpv c215ZXJzQHJlZGhhdC5jb20NCj4gDQoNCg==