From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by sourceware.org (Postfix) with ESMTPS id 8E4643858D3C for ; Thu, 9 Nov 2023 15:49:55 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8E4643858D3C Authentication-Results: sourceware.org; dmarc=pass (p=none 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 8E4643858D3C Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1699544998; cv=pass; b=CM5Be9pj14vh/0w6WqoKc0rSzzgV7kHT51T39/K6wuhyrAoO7tMGeh9I7pgu4nxTZTaVGiUq+0ophkvvfwTEs3ChmzNCw6E1ff0uGkD6bbFZqMwl1NQJSGUhHDTTWpID6wDdnjJAW+uA31xypOvhOhGw1BfHCs0ZXcuLEGJxUnA= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1699544998; c=relaxed/simple; bh=Dhlg1qCdZGOgNy4qUJoMOt//ODKVozlWhG9756RblI0=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=Fn1Nk3+I9Xlla1SwlR4OPKOdh4xlFE32N4/wTazobJZsnQz+Cm/TwitxIy4mJ7C5EWaZQAiP/BgXLgqxHS4nJLDVEFPZBkRDPL7Zl11EDzqTsDjZpUpxMB0U+gp+d+J5qE4eTu7k/dH865cm2LDQOP1oxEWHm5R6PaytCiJxdJI= ARC-Authentication-Results: i=2; server2.sourceware.org Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3A9E5Jg7001275; Thu, 9 Nov 2023 15:49:53 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-03-30; bh=Dhlg1qCdZGOgNy4qUJoMOt//ODKVozlWhG9756RblI0=; b=AYCfI3+AlA0dSeQg4VCqp0TifVumGfAEa8D57/azC4RhGzPXXH8/OI2BgagVXA1W3Q2k veCuy+8trmKibVdXu4IcanDSn3QlOwVSwTFDm/Ekl+2Qev65iLXsqo2F/t2ta/y1khy0 sluYUvzeVq/6gGVFmOTwy4kAZumkF+HdYuCOio/1PifE/9dY1aX1xURdfmJc/2Wo/M/B 3mid7C1w9QWpvm7eEyqUNV0kACHm2cqZU6RxTC0QO0MECR4KdTN5utWkvzQ2Sc8MQgFD iO5n2xYCwYJgBmMZotYRiVxViCEYVTflHbDK5njhTJDPo7ed5sR8y6+hOc8NfE7yIk1U Wg== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3u7w22m69b-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 09 Nov 2023 15:49:52 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 3A9F9qSx017643; Thu, 9 Nov 2023 15:49:52 GMT Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2168.outbound.protection.outlook.com [104.47.55.168]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3u8c00jgqa-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 09 Nov 2023 15:49:52 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LsRgCbuUvD4Dy2ZrVHj0dDWOZd0fDPMv/VlDZvE5OSAHgW4AWO9EvaNBcO9c//aotopQJMZA3OhlwHtEXhx6Fn/S3y7VZ+YRbICF1jm7fp/09cC4/wWNpbxVJ1qeDPbhnvtbNMjWXradYVJ1XkQrlkKoNwhdAyFGMHTCB4c0Amua2n9ef838eAR94ocbretHrJix70eS+1287dea6dg7K/du9Hm1B+BD41ScQeLP/Eq9TIJRLNZKquxffDORLg5rwgbvRaFLYnXXSnE4KE3RNA20gIN2hIffxm0WlnsaElkUjXqq3p73BMdXYXjDIrDvcPBmcH2llUMdcosfAxr/fw== 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=Dhlg1qCdZGOgNy4qUJoMOt//ODKVozlWhG9756RblI0=; b=BmsqkYrc3qGrxbB0EKyUYIq1FZW4T2YqTyAfvGZYOEySE8Bqy9EQxu/EnpjY946FWfT5XLTQqEal1Zwmbm/L7uCT/SLuwUkOBAG6N+zOr3BH0uzqhwAAJ3LpyxGm40curS0iqytMdDYT7LLHJEQoP6SkyzmWnZCdwQ9n8RmF0aRzR8eDAFSTPZ/I7YEPe5Kr0O2wAcbDUSyGOIN5yu0T0ATgqZgd+T3gv4D7jdONPl0mbwflhrVy68HLaXPZdiHztbCFMwLmFTGdys0NbtLTTzytXi0Q6UkXbO7MXmI2euv07NYu8BtKsRmiUNQIzQR4Ib5qNnfI7YL9GBJNJBLWTA== 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=Dhlg1qCdZGOgNy4qUJoMOt//ODKVozlWhG9756RblI0=; b=FebeRmfqMFViQYgiv8Ns6q+qatgkEqL31G52HdPGMvKJTY9WwuVuk+aoeNe8sVpNdaSgIM4En89UpWuyq9Qlvt8FfzLJuEhbmc/5YbkShIFoOJZCrM9WBiYyo8oG88U5mSkvWWdGi7pyVP72l9YrBzz370Y04pbUho4KoyqP37Y= Received: from CH3PR10MB7957.namprd10.prod.outlook.com (2603:10b6:610:1bf::19) by DS7PR10MB5231.namprd10.prod.outlook.com (2603:10b6:5:3b1::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6977.19; Thu, 9 Nov 2023 15:49:50 +0000 Received: from CH3PR10MB7957.namprd10.prod.outlook.com ([fe80::29d4:5162:bc59:fe8]) by CH3PR10MB7957.namprd10.prod.outlook.com ([fe80::29d4:5162:bc59:fe8%3]) with mapi id 15.20.6977.019; Thu, 9 Nov 2023 15:49:50 +0000 From: Qing Zhao To: richard Biener , Joseph Myers , Siddhesh Poyarekar , Martin Uecker , Jakub Jelinek CC: Kees Cook , "isanbard@gmail.com" , GCC Patches Subject: Re: RFC (V2) the proposal to resolve the missing dependency issue for counted_by attribute Thread-Topic: RFC (V2) the proposal to resolve the missing dependency issue for counted_by attribute Thread-Index: AQHaEQ8KsqM+kPJMkkC5HVZQmLbLcbByJp4A Date: Thu, 9 Nov 2023 15:49:49 +0000 Message-ID: <2D704EB7-B3FE-4280-ACC0-AA0C4236E39F@oracle.com> References: <5B561B7B-ACD9-4378-A771-F1479A87382D@oracle.com> In-Reply-To: <5B561B7B-ACD9-4378-A771-F1479A87382D@oracle.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3696.120.41.1.4) x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CH3PR10MB7957:EE_|DS7PR10MB5231:EE_ x-ms-office365-filtering-correlation-id: 9e158c0c-af47-4b4f-45c2-08dbe13b8185 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: lN4RhjMPMve0kgU7pTXfwhcyxb1XE2DmAyH3XwLfNPijCmgr17stEr44YqBztNUd6MS0dEe/rs9j20jtsGxSqqJCD2ymTsYC2UD1my7BM6O2GixGYgAvw8lsRBHYa/Ujh7Jri/62/yxtCTxYMZ/e7ygvipujYLgHVuS+k+DCmUL0MqhQxgdWrcl9C6TgIk574l54Y0LMgs9Updj91llwdjA7O7i5nkq5fC7D/Q2z4MYnBaDkOfbZBLR2Yp/CX2UKsW5e/zZj/RWZi918G7qsWjVn+S+FY4c9+33MyprmNP3h47RVuzeWXH1O5G4uVqyvgUYnowyXRf/jQgnY4vxBxh3WZngJaVHf98qIbNJ8Fu8Ql2B0cahwfoDXoBuYZSXA2wBQ+LDQYeWhsw+AzjEbDY1TIfHWrdCcLDgyvwKy4V9abU1301b196aD1SnYupzVw98z7EDmTSZHCZyqboeI8vJTpIxOO2W3v5cvtZE0KmPRoA2Qp9Pp2LAwhu8nOpbGFoWwoIGFMqshg3QIA2pBxFMHNo7cmikdRzZ+X9HXcz/FJuImP5K0/Mj++B9ulroi88xPVnPGyM0lKPp8vpZoHx9Gmw5oo9sZLJz74a+HhByHN20S6i+xpBX7ZhAWPC1iCJijF1j6AGeaNbpv5QCR81SbJT7dkvkzA/rYJXn0IHiTxlP0e0LvZE5ihFBY9oO8RcpxZkFGpAwMsbAn6l+/+l2KwOKFV7TQTlqXaxVnAatf3ef1kpkqS31pI9RppWSY x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH3PR10MB7957.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(136003)(366004)(39860400002)(346002)(230173577357003)(230273577357003)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(33656002)(36756003)(38070700009)(3613699003)(4743002)(83380400001)(8936002)(316002)(110136005)(91956017)(64756008)(66446008)(66476007)(66556008)(54906003)(66946007)(76116006)(2906002)(30864003)(4326008)(5660300002)(8676002)(44832011)(478600001)(53546011)(6486002)(966005)(71200400001)(6506007)(2616005)(6512007)(86362001)(38100700002)(122000001)(41300700001)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?SW1YQWN0SU5rYmdqeDJBK2lpMThYS1VRNnQyWGtJcWcwZW9UVXg5SmwzdnlW?= =?utf-8?B?Yk9Cb3U3eHVIVXpLYnhUODNhc1hZWGU2WThkcWtJZVpydC9OZUdnRGxaN2Ja?= =?utf-8?B?UUo0QzNETzZ2WkdSU2dLYk9lNHg3V3M3VVg5WnpPU3ZsUWp4ajZtS1hRVEMr?= =?utf-8?B?ZzRrVEJpK2E1WG5PaUl4QnVxYnFnRVRRMlR4UTZWdFhxQkswOElVekJrQkY3?= =?utf-8?B?OThvdmNoNENhdC9rVEdQd3pYUmhyVHlIS05mT0hlMGZ4SS9oVjduS1ZoZFpJ?= =?utf-8?B?NjVFem9vdTYyOEdnN3VxbGcvL2JpdGtldFZXcVI0WFYxTTdyZTBNV1lhUGVp?= =?utf-8?B?d2wray9aU3d4SVZ4MDU3bmNFbnZPT2lZS2RKcG1iRGR5WkZxeFJtc1JmVVo5?= =?utf-8?B?TGtPTjVEYy9IRml0eWVRNlBsNFg1ZGVFU3BwWVBaTHBoK0dmSDl1eUMzTGl4?= =?utf-8?B?QXh2RHZlZjV2aWJOcUE2TkhEdXYwM3h0anZXK1ZDMXYwOVVCbHpDZVdSZStT?= =?utf-8?B?MlJ6TmJZQ0Vxb29wNk1pVVFiWm1Kcks2cDZqS2M2WFNQaWI2RVdyRTYxWnFG?= =?utf-8?B?RTNRQ2pCNVhtMGVRTUNNcndkQm5oMnpzd1hXR05XWFRlMzYzTVFPdnRiTkFl?= =?utf-8?B?NnZndmR5WVk5c0Z2M1hJYTNRbW43ck5Vd0lDbVdEODdkZG5MOTlLN0QxS3Iz?= =?utf-8?B?UVJmNXl5N0RWbmxMR1hiV2c5cXJyQ1lGUVhtNkloUkFNSHJyM0M0dXJmNnpK?= =?utf-8?B?TEo4U09teDZ5MWNUM1Uxc2VvbFhzWTkyS003ZVJmZHV6R1ZMUHZ2NDZqTHBM?= =?utf-8?B?ckZLcU82Q0VDSFNFMUhTUUFKZVFCNUVpdVZXdkJOQ0FTMFg1ajIzeGNITkZW?= =?utf-8?B?TE5NbG9NZWdaU0ROOGZzTVowYno1RXB3c01OWXNrNzM0WXMvT214Yk94YVNR?= =?utf-8?B?YmNoWWU4bE9NNGgxRzZhUlNKMEpQdXI0TktBejJRL2NBODZQM01PK2M1RTlO?= =?utf-8?B?YkpGY0JSYzFySHhyN2dMV3hkT1k1dDJsSmJGZVhjNDM3eEorVUxHTkc0aDdE?= =?utf-8?B?NEhOckFNdzhNS0JkUk4zamxuTXNtMXAvWXdmcWdjY1U5YjNFNzcxQVRhNEJa?= =?utf-8?B?aTdXRWVmS0pRUUNyU3g2NjBoNTcxajJsdTVzeHg2MGdVMUg0ZUw2ekpwNGlX?= =?utf-8?B?YXk4a0tKR0FOckNHOHZxU1hxNVpuUnpyZXEzUVJpeHZWMTNaT2J0bCtQRHhj?= =?utf-8?B?TXJvakhoUWpmSGtMRjVuY0RHVGJzV0hlN24za1daUFhnVGorQVNmMnV5ZmtY?= =?utf-8?B?UDlacXN1TjE5VC9pUkdIMTRWWm5FQ0VnUWpiamQ5T0QxdlBnYlZLUmY1ZHRG?= =?utf-8?B?MEVXZHV3TXVDTGFBRVd1QUp4ekFEL0JmOFM1Q0FzSkQyWGpCU2Z4ajFVeExP?= =?utf-8?B?bkx6SC9OR2c2M2FjYWw1Zlk2Q3ZGY3lvdDhiOUJvbjJCSjAzUEJUMld5c1h1?= =?utf-8?B?RE1FN0RNUUNtR0paZ2dZRWQvN0pPTlB5bVU1OHgzdytyUEgyRXB3V3ltc1I1?= =?utf-8?B?eHlmSHFSZFA4M2dOd3RGOE9uMlhRVEdNLytLNUtKT2lvVkVLTFkxOGY3WXJT?= =?utf-8?B?c2FTMWtFdjBUYUJpVDdHek1mWTF3MHN4eHdFS00yUWVMZi9IYkdwbUJYc0sw?= =?utf-8?B?SHdrYlA5L3EwNFZ3ajZNYUNiUGtZVHVWTzVyRklvQ3pqV3RSbkxwN3pVQVUw?= =?utf-8?B?ZFlDTjRINlY4QXRYaWtvcjNmaEJrVVh4ZHJOaklWbGZNWHM2SVA2TEFZUzl5?= =?utf-8?B?eHBaMm5RcWdwTm1lbGFWUUFoVnVoWkxNb1pUZVgyVUtQU0M1bmNZK3RUMWJP?= =?utf-8?B?TWprOVoxK0kzU1orV0VLRCtKWlhIYUpscS9lOVR6TzUwdldFaVh5STVEQjYv?= =?utf-8?B?MDFFaWJhdFZtbnlvNlJ1UDJObVVwU0xadFdYQkxucFBUbm5TdWd2eWEyVGlL?= =?utf-8?B?TWdlYzYzNXdQcWk3VkZQaDlPSHhDSTYwOUJQdjdnTllPUUFYdVpMY3F2WFBG?= =?utf-8?B?ZThzZTdyVG40ZUZBSUdab2dXcFRmeklUUGIza1I3Q2VsaHRWTzFzcEFuNUhN?= =?utf-8?B?em85NTlzSy9ZblhnSzhpSzd4NHFFbkl2Q2dLU1NKV2xNdlBDc1JNWGtjbkM0?= =?utf-8?Q?qPvrIu7sL6aTpqcMpJuvL5A=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?B?bEh1TllSRElhWC93NEZ4SGlhNENXNjR5N2UxblhqcDJpVzVTWkpLZjRnWjZz?= =?utf-8?B?ZGNYU2ZDaytkWnh1eFZrb056VDlmWC9FandqQUtMM0dnSE9sSU4zbXNkejE1?= =?utf-8?B?SmJKcWdENzNQMW1kbjVqVGxvV3J3V3Z3SkpwNThINjgxRWx3M0YyWEN4bEY3?= =?utf-8?B?UkY3bnZ5SWRKZk81WkVJWUVKeDVhSG9STmc3cklWOWtQQkgrRmZiZVNWekZI?= =?utf-8?B?OEk4WnRsbXl2eE1YNHM3N2JyNGVQYVVzT25nNGtXNFBBTUNlWGR2REM5T3JR?= =?utf-8?B?enFPa3gzVkdYWWZzNW5PNTV5YUxoazBPaVpDMGFoYXY0US9ITW1UTThIWGxI?= =?utf-8?B?VHM0WlhxSlRKSS9xQk9CRWl1Y3NaTFM0M041NzVQQkNHT2VFV3dtUFI4Q0ND?= =?utf-8?B?RnNpNmxvV3dDNXBqVndOelRzNmhPM2l5L2QrcE0vR2NiQWl2cUlzK0JsRjlk?= =?utf-8?B?bGtoRWcyLy9yRHN3UmtRQU1mVjJ3VUVIZzR0QzJ2NjJWaEpPbm5wT1c0ZkNI?= =?utf-8?B?cUhDZUxDSzJiKy8zbTR0MHo2TWM3RjEvR3RUaEFhQkRwdjVPM2w2SUtXLzEy?= =?utf-8?B?ZEFjb21ZQ0ordFd5VjZRcjZRaHVaNHF5eUhsL0dEc0JidFM1K2Q0UnJNKzlv?= =?utf-8?B?Ylk0Tzg2NjBkOWpoOGRyWklxdFpzSUkwSDJIQ0ZyaEtXNHpoS3NHWWlqcllZ?= =?utf-8?B?OWhvNHZNWUtPYlBPZ0kwOE01MFo1cUZwZUVDME5EZTJMenRxRjhFVmp2RnFY?= =?utf-8?B?STF0SDNIVGZNN0NEbEhkS09KOTZ6V0p1YmQ3bk5ublhmTm85UXFGOC8rdk9L?= =?utf-8?B?N1dHZmtsVDNkY3RaUnNwVG9PZGNjZUxxRGExZUtFbStUZm1DTWxUM2RkM3d0?= =?utf-8?B?QVJnL3djN0w0WUtSN0VCakVrYm1mcnFjQnRNcDRiRGlxTU5hMnc3RnhEOGsv?= =?utf-8?B?MkY1dFQ0QVRRVTliSGpoUDNFN3hqbXRYY1lmMjU1KzNpNW1IZGZnTWhTSHdM?= =?utf-8?B?SWRLeWJ3TEJ6Y1BGZnRUeTcydnA5M0hKRVg0dGFoS1JUMUV4TSs3K0dGbG45?= =?utf-8?B?aThxZmR6U1gyVEc3bDMvSTV6a1pJVGphYjVkdEwwWjcvbHJYbjFQblp2ZUk2?= =?utf-8?B?RmZJc3drSjZYc2hKekYvbEpKS2h5US9kR1pNWFhBRzFORVJlTVFSaStnZVdQ?= =?utf-8?B?R2ExT3NYU1VJQSsreUpWU1dIb2xtN0xCcWZsRzQ2cFE5bmFVSndrd2gxOWZp?= =?utf-8?Q?aO9MX6nf8+QFqon?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH3PR10MB7957.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9e158c0c-af47-4b4f-45c2-08dbe13b8185 X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Nov 2023 15:49:49.4779 (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: hqXYt5V2Unu7lGQ7IR3JQxndFifs2wgheAOHnte8fqBelIVP5lvzZSCDWfwuYlC4BKjHg1gXORoZpnA6hvLW4A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB5231 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.987,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-11-09_13,2023-11-09_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 phishscore=0 spamscore=0 suspectscore=0 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311060000 definitions=main-2311090119 X-Proofpoint-ORIG-GUID: QTVepe3iogSfL_nFVxFkM14y4v7dUQnC X-Proofpoint-GUID: QTVepe3iogSfL_nFVxFkM14y4v7dUQnC X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,KAM_ASCII_DIVIDERS,KAM_SHORT,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE 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: SXMgaXQgcmVhc29uYWJsZSB0byBhZGQgb25lIG9wdGlvbiB0byBkaXNhYmxlIHRoZSDigJxjb3Vu dGVkX2J54oCdIGF0dHJpYnV0ZT8NCih0aGVuIG5vIGluc2VydGlvbiBvZiB0aGUgbmV3IC5BQ0NF U1NfV0lUSF9TSVpFIGludG8gSUwpLiAgDQoNClRoZSBtYWpvciByZWFzb24gaXM6IHNvbWUgdXNl cnMgbWlnaHQgd2FudCB0byBpZ25vcmUgYWxsIHRoZSDigJxjb3VudGVkX2J54oCdIGF0dHJpYnV0 ZSBhZGRlZCBpbiB0aGUgc291cmNlIGNvZGUsDQpXZSBuZWVkIHRvIHByb3ZpZGUgdGhlbSBhIHdh eSB0byBkaXNhYmxlIHRoaXMgZmVhdHVyZS4NCg0KdGhhbmtzLg0KDQpRaW5nDQoNCj4gT24gTm92 IDYsIDIwMjMsIGF0IDc6MTIgUE0sIFFpbmcgWmhhbyA8cWluZy56aGFvQG9yYWNsZS5jb20+IHdy b3RlOg0KPiANCj4gSGksDQo+IA0KPiBBdHRhY2hlZCBpcyB0aGUgMm5kIHZlcnNpb24gb2YgdGhl IHByb3Bvc2FsIGJhc2VkIG9uIGFsbCB0aGUgZGlzY3Vzc2lvbiBzbyBmYXIuDQo+IA0KPiBMZXQg bWUga25vdyBpZiB5b3UgaGF2ZSBtb3JlIGNvbW1lbnQgYW5kIHN1Z2dlc3Rpb24uDQo+IA0KPiBU aGFua3MgYSBsb3QgZm9yIGFsbCB0aGUgaGVscC4NCj4gDQo+IFFpbmcNCj4gPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KPiBSZXByZXNlbnQgdGhlIG1pc3Npbmcg ZGVwZW5kZW5jZSBmb3IgdGhlICJjb3VudGVkX2J5IiBhdHRyaWJ1dGUgYW5kIGl0cyBjb25zdW1l cnMgDQo+IA0KPiBRaW5nIFpoYW8NCj4gDQo+IDExLzA2LzIwMjMNCj4gPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KPiANCj4gVGhlIHdob2xlIGRpc2N1c3Np b24gaXMgYXQ6DQo+IGh0dHBzOi8vZ2NjLmdudS5vcmcvcGlwZXJtYWlsL2djYy1wYXRjaGVzLzIw MjMtT2N0b2Jlci82MzM3ODMuaHRtbA0KPiBodHRwczovL2djYy5nbnUub3JnL3BpcGVybWFpbC9n Y2MtcGF0Y2hlcy8yMDIzLU9jdG9iZXIvNjM0ODQ0Lmh0bWwNCj4gDQo+IDEuIFRoZSBwcm9ibGVt DQo+IA0KPiBUaGVyZSBpcyBhIGRhdGEgZGVwZW5kZW5jeSBiZXR3ZWVuIHRoZSBzaXplIGFzc2ln bm1lbnQgYW5kIHRoZSBpbXBsaWNpdCB1c2Ugb2YgdGhlIHNpemUgaW5mb3JtYXRpb24gaW4gdGhl IF9fYnVpbHRpbl9keW5hbWljX29iamVjdF9zaXplIHRoYXQgaXMgbWlzc2luZyBpbiB0aGUgSUwg KGxpbmUgMTEgYW5kIGxpbmUgMTMgaW4gdGhlIGJlbG93IGV4YW1wbGUpLiBTdWNoIGluZm9ybWF0 aW9uIG1pc3Npbmcgd2lsbCByZXN1bHQgaW5jb3JyZWN0IGNvZGUgcmVvcmRlcmluZyBhbmQgb3Ro ZXIgY29kZSB0cmFuc2Zvcm1hdGlvbnMuIA0KPiANCj4gIDEgc3RydWN0IEENCj4gIDIgew0KPiAg MyAgc2l6ZV90IHNpemU7DQo+ICA0ICBjaGFyIGJ1ZltdIF9fYXR0cmlidXRlX18oKGNvdW50ZWRf Ynkoc2l6ZSkpKTsNCj4gIDUgfTsNCj4gIDYgDQo+ICA3IHNpemVfdCANCj4gIDggZm9vIChzaXpl X3Qgc3opDQo+ICA5IHsNCj4gMTAgIHN0cnVjdCBBICpvYmogPSBfX2J1aWx0aW5fbWFsbG9jIChz aXplb2Yoc3RydWN0IEEpICsgc3ogKiBzaXplb2YoY2hhcikpOw0KPiAxMSAgb2JqLT5zaXplID0g c3o7DQo+IDEyICBvYmotPmJ1ZlswXSA9IDI7DQo+IDEzICByZXR1cm4gX19idWlsdGluX2R5bmFt aWNfb2JqZWN0X3NpemUgKG9iai0+YnVmLCAxKTsNCj4gMTQgfQ0KPiANCj4gUGxlYXNlIHNlZSBh IG1vcmUgY29tcGxpY2F0ZSBleGFtcGxlIGluIHRoZSBBcHBlbmRleCAxLg0KPiANCj4gV2UgbmVl ZCB0byByZXByZXNlbnQgc3VjaCBkYXRhIGRlcGVuZGVuY3kgY29ycmVjdGx5IGluIHRoZSBJTC4g DQo+IA0KPiAyLiBUaGUgc29sdXRpb246DQo+IA0KPiAyLjEgU3VtbWFyeQ0KPiANCj4gKiBBZGQg YSBuZXcgaW50ZXJuYWwgZnVuY3Rpb24gIi5BQ0NFU1NfV0lUSF9TSVpFIiB0byBjYXJyeSB0aGUg c2l6ZSBpbmZvcm1hdGlvbiBmb3IgZXZlcnkgcmVmZXJlbmNlIHRvIGEgRkFNIGZpZWxkOw0KPiAq IEluIEMgRkUsIFJlcGxhY2UgZXZlcnkgcmVmZXJlbmNlIHRvIGEgRkFNIGZpZWxkIHdob3NlIFRZ UEUgaGFzIHRoZSAiY291bnRlZF9ieSIgYXR0cmlidXRlIHdpdGggdGhlIG5ldyBpbnRlcm5hbCBm dW5jdGlvbiAiLkFDQ0VTU19XSVRIX1NJWkUiOw0KPiAqIEluIGV2ZXJ5IGNvbnN1bWVyIG9mIHRo ZSBzaXplIGluZm9ybWF0aW9uLCBmb3IgZXhhbXBsZSwgQkRPUyBvciBhcnJheSBib3VuZCBzYW5p dGl6ZXIsIHF1ZXJ5IHRoZSBzaXplIGluZm9ybWF0aW9uIG9yIEFDQ0VTU19NT0RFIGluZm9ybWF0 aW9uIGZyb20gdGhlIG5ldyBpbnRlcm5hbCBmdW5jdGlvbjsNCj4gKiBXaGVuIHRoZSBzaXplIGlu Zm9ybWF0aW9uIGFuZCB0aGUgIkFDQ0VTU19NT0RFIiBpbmZvcm1hdGlvbiBhcmUgbm90IHVzZWQg YW55bW9yZSwgcG9zc2libHkgYXQgdGhlIDJuZCBvYmplY3Qgc2l6ZSBwaGFzZSwgcmVwbGFjZSB0 aGUgaW50ZXJuYWwgZnVuY3Rpb24gd2l0aCB0aGUgYWN0dWFsIHJlZmVyZW5jZSB0byB0aGUgRkFN IGZpZWxkOyANCj4gKiBTb21lIGFkanVzdG1lbnQgdG8gaW5saW5pbmcgaGV1cmlzdGljLCBpcGEg YWxpYXMgYW5hbHlzaXMsIGFuZCBvdGhlciBTU0EgcGFzc2VzIHRvIG1pdGlnYXRlIHRoZSBpbXBh Y3QgdG8gdGhlIG9wdGltaXplciBhbmQgY29kZSBnZW5lcmF0aW9uLiANCj4gDQo+IDIuMiBUaGUg bmV3IGludGVybmFsIGZ1bmN0aW9uIA0KPiANCj4gIC5BQ0NFU1NfV0lUSF9TSVpFIChSRUZfVE9f T0JKLCBSRUZfVE9fU0laRSwgQ0xBU1NfT0ZfU0laRSwgU0laRV9PRl9TSVpFLCBBQ0NFU1NfTU9E RSkNCj4gDQo+IElOVEVSTkFMX0ZOIChBQ0NFU1NfV0lUSF9TSVpFLCBFQ0ZfTEVBRiB8IEVDRl9O T1RIUk9XLCBOVUxMKQ0KPiANCj4gd2hpY2ggcmV0dXJucyB0aGUgIlJFRl9UT19PQkoiIHNhbWUg YXMgdGhlIDFzdCBhcmd1bWVudDsNCj4gDQo+IDFzdCBhcmd1bWVudCAiUkVGX1RPX09CSiI6IFRo ZSByZWZlcmVuY2UgdG8gdGhlIG9iamVjdDsNCj4gMm5kIGFyZ3VtZW50ICJSRUZfVE9fU0laRSI6 IFRoZSByZWZlcmVuY2UgdG8gdGhlIHNpemUgb2YgdGhlIG9iamVjdCwgDQo+IDNyZCBhcmd1bWVu dCAiQ0xBU1NfT0ZfU0laRSI6IFRoZSBzaXplIHJlZmVyZW5jZWQgYnkgdGhlIFJFRl9UT19TSVpF IHJlcHJlc2VudHMgDQo+ICAgMDogdW5rbm93bjsNCj4gICAxOiB0aGUgbnVtYmVyIG9mIHRoZSBl bGVtZW50cyBvZiB0aGUgb2JqZWN0IHR5cGU7DQo+ICAgMjogdGhlIG51bWJlciBvZiBieXRlczsg DQo+IDR0aCBhcmd1bWVudCAiU0laRV9PRl9TSVpFIjogaG93IG1hbnkgYnl0ZXMgaXMgdGhlIG9i amVjdCB0aGF0IFJFRl9UT19TSVpFIHBvaW50czsNCj4gNXRoIGFyZ3VtZW50ICJBQ0NFU1NfTU9E RSI6IA0KPiAgLTE6IFVua25vd24gYWNjZXNzIHNlbWFudGljcw0KPiAgIDA6IG5vbmUNCj4gICAx OiByZWFkX29ubHkNCj4gICAyOiB3cml0ZV9vbmx5DQo+ICAgMzogcmVhZF93cml0ZQ0KPiANCj4g Tk9URXMsIA0KPiAgQS4gVGhpcyBuZXcgaW50ZXJuYWwgZnVuY3Rpb24gaXMgaW50ZW5kZWQgZm9y IGEgbW9yZSBnZW5lcmFsIHVzZSBmcm9tIGFsbCB0aGUgMyBhdHRyaWJ1dGVzLCAiYWNjZXNzIiwg ImFsbG9jX3NpemUiLCBhbmQgdGhlIG5ldyAiY291bnRlZF9ieSIsIHRvIGVuY29kZSB0aGUgInNp emUiIGFuZCAiYWNjZXNzX21vZGUiIGluZm9ybWF0aW9uIHRvIHRoZSBjb3JyZXNwb25kaW5nIHBv aW50ZXIuIChpbiBvcmRlciB0byByZXNvbHZlIFBSOTY1MDMsIGV0Yy4gaHR0cHM6Ly9nY2MuZ251 Lm9yZy9idWd6aWxsYS9zaG93X2J1Zy5jZ2k/aWQ9OTY1MDMpOw0KPiAgQi4gRm9yICJjb3VudGVk X2J5IiB0aGUgM3JkIGFyZ3VtZW50IHdpbGwgYmUgMTsNCj4gIEMuIEZvciAiY291bnRlZF9ieSIg YW5kICJhbGxvY19zaXplIiBhdHRyaWJ1dGVzLCB0aGUgNXRoIGFyZ3VtZW50IHdpbGwgYmUgLTE7 ICAgDQo+ICBELiBJbiB0aGlzIHdyaWV1cCwgd2UgZm9jdXMgb24gdGhlIGltcGxlbWVudGF0aW9u IGRldGFpbHMgZm9yIHRoZSAiY291bnRlZF9ieSIgYXR0cmlidXRlLiBIb3dldmVyLCB0aGlzIGZ1 bmN0aW9uIHNob3VsZCBiZSByZWFkeSB0byBiZSB1c2VkIGJ5ICJhY2Nlc3MiIGFuZCAiYWxsb2Nf c2l6ZSIgd2l0aG91dCBpc3N1ZS4gDQo+IA0KPiAyLjMgQSBuZXcgc2VtYW50aWMgcmVxdWlyZW1l bnQgaW4gdGhlIHVzZXIgZG9jdW1lbnRhdGlvbiBvZiAiY291bnRlZF9ieSINCj4gDQo+IEZvciB0 aGUgZm9sbG93aW5nIHN0cnVjdHVyZSBpbmNsdWRpbmcgYSBGQU0gd2l0aCBhIGNvdW50ZWRfYnkg YXR0cmlidXRlOg0KPiANCj4gIHN0cnVjdCBBDQo+ICB7DQo+ICAgc2l6ZV90IHNpemU7DQo+ICAg Y2hhciBidWZbXSBfX2F0dHJpYnV0ZV9fKChjb3VudGVkX2J5KHNpemUpKSk7DQo+ICB9Ow0KPiAN Cj4gZm9yIGFueSBvYmplY3Qgd2l0aCBzdWNoIHR5cGU6DQo+IA0KPiAgc3RydWN0IEEgKm9iaiA9 IF9fYnVpbHRpbl9tYWxsb2MgKHNpemVvZihzdHJ1Y3QgQSkgKyBzeiAqIHNpemVvZihjaGFyKSk7 DQo+IA0KPiBUaGUgaW5pdGlhbGl6YXRpb24gdG8gdGhlIHNpemUgZmllbGQgc2hvdWxkIGJlIGRv bmUgYmVmb3JlIHRoZSBmaXJzdCByZWZlcmVuY2UgdG8gdGhlIEZBTSBmaWVsZCwNCj4gT3RoZXJ3 aXNlLCB0aGUgYmVoYXZpb3IgaXMgdW5kZWZpbmVkLg0KPiBTdWNoIGFkZGl0aW9uYWwgcmVxdWly ZW1lbnQgdG8gdGhlIHVzZXIgd2lsbCBndWFyYW50ZWUgdGhhdCB0aGUgZmlyc3QgcmVmZXJlbmNl IHRvIHRoZSBGQU0ga25vd3MgdGhlIHNpemUgb2YgdGhlIEZBTS4gIA0KPiANCj4gQW5vdGhlciB0 aGluZyB0aGF0IG5lZWQgdG8gYmUgY2xhcmlmaWVkIGlzOg0KPiBBIGxhdGVyIHJlZmVyZW5jZSB0 byB0aGUgRkFNIGZpZWxkIHdpbGwgdXNlIHRoZSBsYXRlc3QgdmFsdWUgYXNzaWduZWQgdG8gdGhl IHNpemUgZmllbGQgYmVmb3JlIHRoYXQgcmVmZXJlbmNlLiBGb3IgZXhhbXBsZSwgDQo+IG9iai0+ c2l6ZSA9IHZhbDE7DQo+IHJlZjEgKG9iai0+YnVmKTsNCj4gb2JqLT5zaXplID0gdmFsMjsNCj4g cmVmMiAob2JqLT5idWYpOw0KPiBpbiB0aGUgYWJvdmUsICJyZWYxIiB3aWxsIHVzZSB2YWwxIGFu ZCAicmVmMiIgd2lsbCB1c2UgdmFsMi4gDQo+IFRoaXMgY2xhcmlmaWNhdGlvbiB3aWxsIGluZm9y bSB1c2VyIHRoYXQgdGhlIGR5bmFtaWMgYXJyYXkgZmVhdHVyZSBpcyBmdWxseSBzdXBwb3J0ZWQu DQo+IA0KPiBXZSBuZWVkIHRvIGFkZCB0aGUgYWJvdmUgYWRkaXRpb25hbCByZXF1aXJlbWVudCBh bmQgY2xhcmlmaWNhdGlvbiB0byB0aGUgdXNlciBkb2N1bWVudGF0aW9uLg0KPiBUaGUgY29tcGxl dGUgdXNlciBkb2N1bWVudGF0aW9uIGlzIGluIEFwcGVuZGl4IDIuIA0KPiANCj4gMi40IFJlcGxh Y2UgdGhlIHJlZmVyZW5jZSB0byBhIEZBTSBmaWVsZCB3aXRoIHRoZSBuZXcgZnVuY3Rpb24gLkFD Q0VTU19XSVRIX1NJWkUNCj4gDQo+IEluIEMgRkU6DQo+IA0KPiBmb3IgZXZlcnkgcmVmZXJlbmNl IHRvIGEgRkFNLCBmb3IgZXhhbXBsZSwgIm9iai0+YnVmIiBpbiB0aGUgc21hbGwgZXhhbXBsZSwN Cj4gIGNoZWNrIHdoZXRoZXIgdGhlIGNvcnJlc3BvbmRpbmcgRklFTERfREVDTCBoYXMgYSAiY291 bnRlZF9ieSIgYXR0cmlidXRlPw0KPiAgaWYgWUVTLCByZXBsYWNlIHRoZSByZWZlcmVuY2UgdG8g Im9iai0+YnVmIiB3aXRoIGEgY2FsbCB0bw0KPiAgICAgIC5BQ0NFU1NfV0lUSF9TSVpFIChvYmot PmJ1ZiwgJm9iai0+c2l6ZSwgMSwgc2l6ZW9mKG9iai0+c2l6ZSksIC0xKTsgDQo+IA0KPiBUaGlz IGluY2x1ZGVzIHRoZSBjYXNlIHdoZW4gdGhlIG9iamVjdCBpcyBzdGF0aWNhbGx5IGFsbG9jYXRl ZCBhbmQgaW5pdGlhbGl6ZWQgYXMgZm9sbG93aW5nIGV4YW1wbGU6DQo+IA0KPiBzdGF0aWMgc3Ry dWN0IEEgeCA9IHsgc2l6ZW9mICJoZWxsbyIsICJoZWxsbyIgfTsNCj4gc3RhdGljIGNoYXIgKnkg PSAmeC5idWY7DQo+IA0KPiBUaGUgcmVmZXJlbmNlIHRvIHguYnVmIHNob3VsZCBiZSByZXBsYWNl ZCBieSB0aGUgLkFDQ0VTU19XSVRIX1NJWkUgKCZ4LmJ1ZiwgJnguc2l6ZSwgMSwgc2l6ZW9mKHgu c2l6ZSksIC0xKS4NCj4gDQo+IA0KPiAyLjUgUXVlcnkgdGhlIHNpemUgaW5mbyANCj4gDQo+IFRo ZXJlIGFyZSBtdWx0aXBsZSBjb25zdW1lcnMgb2YgdGhlIHNpemUgaW5mbyAoYW5kIEFDQ0VTU19N T0RFIGluZm8pOg0KPiANCj4gICogX19idWlsdGluX2R5bmFtaWNfb2JqZWN0X3NpemU7DQo+ICAq IGFycmF5IGJvdW5kIHNhbml0aXplcjsNCj4gDQo+IGluIHRoZXNlIGNvbnN1bWVycywgZ2V0IHRo ZSBzaXplIGluZm8gZnJvbSB0aGUgMm5kLCAzcmQsIGFuZCA0dGggYXJndW1lbnRzIG9mIHRoZSBj YWxsIHRvDQo+IEFDQ0VTU19XSVRIX1NJWkUgKFJFRl9UT19PQkosIFJFRl9UT19TSVpFLCAxLCBz aXplb2YoU0laRSksIC0xKQ0KPiANCj4gMi42IEVsaW1pbmF0ZSB0aGUgaW50ZXJuYWwgZnVuY3Rp b24gd2hlbiBub3QgdXNlZnVsIGFueW1vcmUNCj4gDQo+IEFmdGVyIHRoZSBsYXN0IGNvbnN1bWVy IG9mIHRoZSBzaXplIGluZm9ybWF0aW9uIGluIHRoZSBBQ0NFU1NfV0lUSF9TSVpFLCBXZSBzaG91 bGQgcmVwbGFjZSB0aGUgaW50ZXJuYWwgY2FsbCB3aXRoIGl0cyBmaXJzdCBhcmd1bWVudC4NCj4g DQo+IERvIGl0IGluIHRoZSAybmQgb2JqZWN0IHNpemUgcGhhc2UuIA0KPiANCj4gMi43IEFkanVz dG1lbnQgdG8gaW5saW5pbmcgaGV1cmlzdGljLCBJUEEgYWxpYXMgYW5hbHlzaXMgYW5kIG90aGVy IElQQSBhbmFseXNpcw0KPiANCj4gdGhlIEZFIGNoYW5nZXM6DQo+IA0KPiBvYmotPmJ1Zg0KPiAN Cj4gdG8NCj4gDQo+IF8xID0gb2JqLT5idWY7DQo+IF8yID0gJihvYmotPnNpemUpOw0KPiAuQUND RVNTX1dJVEhfU0laRSAoXzEsIF8yLCAxLCBzaXplb2YgKG9iai0+c2l6ZSksIC0xKQ0KPiANCj4g dGhlcmUgYXJlIG1ham9yIHR3byBjaGFuZ2VzOg0KPiANCj4gIEEuIHRoZSAjIG9mIEluc25zIG9m IHRoZSByb3V0aW5lIHdpbGwgYmUgaW5jcmVhc2VkLA0KPiAgQi4gYWRkaXRpb25hbCBjYWxscyB0 byBhbiBub24tcHVyZSBpbnRlcm5hbCByb3V0aW5lcy4NCj4gDQo+IEluIG9yZGVyIHRvIG1pbmlt aXplIHRoZSBpbXBhY3Qgb24gY29kZSBnZW5lcmF0aW9uIGFuZCBvcHRpbWl6YWl0b25zLCBXZSBt aWdodCBuZWVkIHRvDQo+IA0KPiAgKiBBZGp1c3QgSW5saW5pbmcgZGVjaXNpb24gdG8gaWdub3Jl IHRoZSBhZGRpdGlvbmFsIGluc25zIGFuZCBjYWxsczsNCj4gICogQWRqdXN0IHRoZSByb3V0aW5l ICJjYWxsX21heV9jbG9iYmVyX3JlZl9wXzEiIGluIHRyZWUtc3NhLWFsaWFzLmNjIHRvIGV4Y2x1 ZGUgdGhlIG5ldyBpbnRlcm5hbCAuQUNDRVNTX1dJVEhfU0laRSBmcm9tIGNsb2JiZXJpbmcgYW55 dGhpbmcuIA0KPiANCj4gDQo+IDMuIFRoZSBwYXRjaCBzZXRzOg0KPiANCj4gV2Ugd2lsbCBwcm92 aWRlIHRoZSBmb2xsb3dpbmcgcGF0Y2hlczoNCj4gDQo+ICAzLjEgUHJvdmlkZSBjb3VudGVkX2J5 IGF0dHJpYnV0ZSB0byBmbGV4aWJsZSBhcnJheSBtZW1iZXIgZmllbGQ7DQo+ICAgICAgd2hpY2gg aW5jbHVkZXM6DQo+ICAgICAgKiAiY291bnRlZF9ieSIgYXR0cmlidXRlIGRvY3VtZW50YXRpb247 ICANCj4gICAgICAqIEMgRkUgaGFuZGxpbmcgb2YgdGhlIG5ldyBhdHRyaWJ1dGU7IA0KPiAgICAg ICAgc3ludGF4IGNoZWNraW5nLCBlcnJvciByZXBvcnRpbmc7DQo+ICAgICAgKiB0ZXN0aW5nIGNh c2VzOyAoYWRpdGlvbmFsIHRlc3RpbmcgY2FzZXMgZm9yIHN0YXRpY2x5IGluaXRpYWxpemVkIG9i amVjdCkNCj4gDQo+ICAzLjIgQ29udmVydCAiY291bnRlZF9ieSIgYXR0cmlidXRlIHRvL2Zyb20g LkFDQ0VTU19XSVRIX1NJWkUuICANCj4gICAgICB3aGljaCBpbmNsdWRlczoNCj4gICAgICAqIFRo ZSBkZWZpbml0aW9uIG9mIHRoZSBuZXcgaW50ZXJuYWwgZnVuY3Rpb24gLkFDQ0VTU19XSVRIX1NJ WkUgaW4gaW50ZXJuYWwtZm4uZGVmLiANCj4gICAgICAqIEMgRkUgY29udmVydHMgZXZlcnkgcmVm ZXJlbmNlIHRvIGEgRkFNIHdpdGggImNvdW50ZWRfYnkiIGF0dHJpYnV0ZSB0byBhIGNhbGwgdG8g dGhlIGludGVybmFsIGZ1bmN0aW9uIC5BQ0NFU1NfV0lUSF9TSVpFLg0KPiAgICAgICAgKGJ1aWxk X2NvbXBvbmVudF9yZWYgaW4gY190eXBlY2suY2MpDQo+ICAgICAgKiBDb252ZXJ0IGV2ZXJ5IGNh bGwgdG8gLkFDQ0VTU19XSVRIX1NJWkUgdG8gaXRzIGZpcnN0IGFyZ3VtZW50Lg0KPiAgICAgICAg KEFmdGVyIHRoZSBzaXplIGFuZCBhY2Nlc3NfbW9kZSBpbmZvcm1hdGlvbiBhcmUgdXNlZCBpbiB0 aGUgMm5kIG9iamVjdCBzaXplIHBoYXNlLCB3ZSBuZWVkIHRvIGNvbnZlcnQgLkFDQ0VTU19XSVRI X1NJWkUgYmFjayB0byBpdHMgZmlyc3QgYXJndW1lbnQgYXMgc29vbiBhcyBwb3NzaWJsZSBpbiBv cmRlciB0byBtaW5pbWl6ZSB0aGUgaW1wYWN0IHRvIG90aGVyIHBoYXNlcyBhZnRlciBvYmplY3Qg c2l6ZSBwaGFzZS4gU28sIGRvIHRoaXMgaW4gdGhlIGVuZCBvZiB0aGUgMm5kIG9iamVjdCBzaXpl IHBoYXNlKQ0KPiAgICAgICogYWRqdXN0IGlubGluaW5nIGhldXJpc3RpYyBmb3IgdGhlIGFkZGl0 aW9uYWwgY2FsbC4gDQo+ICAgICAgKiBhZGp1c3QgYWxpYXMgYW5hbHlzaXMgdG8gZXhjbHVkZSB0 aGUgbmV3IGludGVybmFsIGZyb20gY2xvYmJlcmluZyBhbnl0aGluZy4NCj4gICAgICAgIChjYWxs X21heV9jbG9iYmVyX3JlZl9wXzEgaW4gdHJlZS1zc2EtYWxpYXMuY2MpDQo+ICAgICAgKiB2ZXJp ZnkgYSBjYWxsIHRvIC5BQ0NFU1NfV0lUSF9TSVpFIGluIHRyZWUtY2ZnLmNjLg0KPiAgICAgICog cHJvdmlkZSB1dGlsaXR5IHJvdXRpbmVzIHRvIGdldCB0aGUgc2l6ZSBvciBBQ0NFU1NfTU9ERSBm cm9tIHRoZSBjYWxsIHRvIC5BQ0NFU1NfV0lUSF9TSVpFLiANCj4gDQo+ICAzLjMgVXNlIHRoZSAu QUNDRVNTX1dJVEhfU0laRSBpbiBidWlsdGluIG9iamVjdCBzaXplIChzdWItb2JqZWN0IG9ubHkp DQo+ICAgICAgd2hpY2ggaW5jbHVkZXM6IA0KPiAgICAgICogdXNlIHRoZSBzaXplIGluZm8gb2Yg dGhlIC5BQ0NFU1NfV0lUSF9TSVpFIGZvciBzdWItb2JqZWN0Lg0KPiAgICAgICogdGVzdGluZyBj YXNlcy4gKGFkZGl0aW9uYWwgdGVzdGluZyBjYXNlcyBmb3IgZHluYW1pYyBhcnJheSBzdXBwb3J0 KQ0KPiANCj4gIDMuNCBVc2UgdGhlIC5BQ0NFU1NfV0lUSF9TSVpFIGluIGJvdW5kIHNhbml0aXpl cg0KPiAgICAgIHdoaWNoIGluY2x1ZGVzOg0KPiAgICAgICogdXNlIHRoZSBzaXplIGluZm8gb2Yg dGhlIC5BQ0NFU1NfV0lUSF9TSVpFIGZvciBib3VuZCBzYW5pdGl6ZXIuDQo+ICAgICAgKiB0ZXN0 aW5nIGNhc2VzLiAoYWRkaXRpb25hbCB0ZXN0aW5nIGNhc2VzIGZvciBkeW5hbWljIGFycmF5IHN1 cHBvcnQpDQo+IA0KPiAgMy41IEltcHJvdmUgX19iZG9zIHRvIHVzZSB0aGUgY291bnRlZF9ieSBp bmZvIGluIHdob2xlLW9iamVjdCBzaXplIGZvciB0aGUgc3RydWN0dXJlIHdpdGggRkFNLiANCj4g IDMuNiBFbWl0IHdhcm5pbmdzIHdoZW4gdGhlIHVzZXIgYnJlYWtzIHRoZSByZXF1aXJtZW50cyBm b3IgdGhlIG5ldyBjb3VudGVkX2J5IGF0dHJpYnV0ZQ0KPiAgICAgIGNvbXBpbGF0aW9uIHRpbWU6 IC1XY291bnRlZC1ieQ0KPiAgICAgIHJ1biB0aW1lOiAtZnNhbml0aXplcj1jb3VudGVkLWJ5DQo+ IA0KPiAgICAgICogVGhlIGluaXRpYWxpemF0aW9uIHRvIHRoZSBzaXplIGZpZWxkIHNob3VsZCBi ZSBkb25lIGJlZm9yZSB0aGUgZmlyc3QgcmVmZXJlbmNlIHRvIHRoZSBGQU0gZmllbGQuIA0KPiAg ICAgICogdGhlIGFycmF5IGhhcyBhdCBsZWFzdCAjIG9mIGVsZW1lbnRzIHNwZWNpZmllZCBieSB0 aGUgc2l6ZSBmaWVsZCBhbGwgdGhlIHRpbWUgZHVyaW5nIHRoZSBwcm9ncmFtLiAgDQo+IA0KPiAN Cj4gNC4gRnV0dXJlIHdvcmsNCj4gDQo+ICA0LjEgVXNlIHRoZSBuZXcgLkFDQ0VTU19XSVRIX1NJ WkUgZm9yIG90aGVyIHJlbGF0aXZlIGF0dHJpYnV0ZXMsIGZvciBleGFtcGxlLCAiYWNjZXNzIiBh bmQgImFsbG9jX3NpemUiLCB0byByZXNvbHZlIHRoZSBrbm93biBpc3N1ZXMgZm9yIHRoZW06DQo+ IA0KPiBodHRwczovL2djYy5nbnUub3JnL2J1Z3ppbGxhL3Nob3dfYnVnLmNnaT9pZD05NjUwMw0K PiANCj4gIDQuMiBBZGQgImNvdW50ZWRfYnkiIGF0dHJpYnV0ZSB0byBnZW5lcmFsIHBvaW50ZXJz IGFzIHByb3Bvc2VkIGJ5IHRoZSAtZmJvdW5kcy1zYWZldHkgcHJvcG9zYWwgdG8gTExWTSBmcm9t IEFwcGxlIChodHRwczovL2Rpc2NvdXJzZS5sbHZtLm9yZy90L3JmYy1lbmZvcmNpbmctYm91bmRz LXNhZmV0eS1pbi1jLWZib3VuZHMtc2FmZXR5LzcwODU0KS4gIA0KPiANCj4gdGhlIC5BQ0NFU1Nf V0lUSF9TSVpFIGFwcHJvYWNoIHNob3VsZCBiZSBhZG9wdGVkIG5hdHVyYWxseS4gDQo+IA0KPiAN Cj4gQXBwZW5kZXggMS4gQSBtb3JlIGNvbXBsaWNhdGVkIGV4YW1wbGU6IA0KPiANCj4gIDEgI2lu Y2x1ZGUgPG1hbGxvYy5oPg0KPiAgMiBzdHJ1Y3QgQQ0KPiAgMyB7DQo+ICA0ICBzaXplX3Qgc2l6 ZTsNCj4gIDUgIGNoYXIgYnVmW10gX19hdHRyaWJ1dGVfXygoY291bnRlZF9ieShzaXplKSkpOw0K PiAgNiB9Ow0KPiAgNyANCj4gIDggc3RhdGljIHNpemVfdA0KPiAgOSBnZXRfc2l6ZV9mcm9tICh2 b2lkICpwdHIpDQo+IDEwIHsNCj4gMTEgIHJldHVybiBfX2J1aWx0aW5fZHluYW1pY19vYmplY3Rf c2l6ZSAocHRyLCAxKTsNCj4gMTIgfQ0KPiAxMyANCj4gMTQgdm9pZA0KPiAxNSBmb28gKHNpemVf dCBzeikNCj4gMTYgew0KPiAxNyAgc3RydWN0IEEgKm9iaiA9IF9fYnVpbHRpbl9tYWxsb2MgKHNp emVvZihzdHJ1Y3QgQSkgKyBzeiAqIHNpemVvZihjaGFyKSk7DQo+IDE4ICBvYmotPnNpemUgPSBz ejsNCj4gMTkgIG9iai0+YnVmWzBdID0gMjsNCj4gMjAgIF9fYnVpbHRpbl9wcmludGYgKOKAnCVk XG4iLCBnZXRfc2l6ZV9mcm9tIChvYmotPmJ1ZikpOw0KPiAyMSAgcmV0dXJuOw0KPiAyMiB9DQo+ IDIzIA0KPiAyNCBpbnQgbWFpbiAoKQ0KPiAyNSB7DQo+IDI2ICBmb28gKDIwKTsNCj4gMjcgIHJl dHVybiAwOw0KPiAyOCB9DQo+IA0KPiBJbiB0aGlzIGV4YW1wbGUsIHRoZSBpbnN0YW50aWF0aW9u IG9mIHRoZSBvYmplY3QgYXQgbGluZSAxNyBpcyBub3QgaW4gdGhlIHNhbWUgcm91dGluZSBhcyB0 aGUgX0JET1MgY2FsbCBhdCBsaW5lIDExLiANCj4gDQo+IEFwcGVuZGV4IDIuIFRoZSB1c2VyIGRv Y3VtZW50YXRpb246DQo+IA0KPiAnY291bnRlZF9ieSAoQ09VTlQpJw0KPiAgICAgVGhlICdjb3Vu dGVkX2J5JyBhdHRyaWJ1dGUgbWF5IGJlIGF0dGFjaGVkIHRvIHRoZSBmbGV4aWJsZSBhcnJheQ0K PiAgICAgbWVtYmVyIG9mIGEgc3RydWN0dXJlLiAgSXQgaW5kaWNhdGVzIHRoYXQgdGhlIG51bWJl ciBvZiB0aGUNCj4gICAgIGVsZW1lbnRzIG9mIHRoZSBhcnJheSBpcyBnaXZlbiBieSB0aGUgZmll bGQgbmFtZWQgIkNPVU5UIiBpbiB0aGUNCj4gICAgIHNhbWUgc3RydWN0dXJlIGFzIHRoZSBmbGV4 aWJsZSBhcnJheSBtZW1iZXIuICBHQ0MgdXNlcyB0aGlzDQo+ICAgICBpbmZvcm1hdGlvbiB0byBp bXByb3ZlIHRoZSByZXN1bHRzIG9mIHRoZSBhcnJheSBib3VuZCBzYW5pdGl6ZXIgYW5kDQo+ICAg ICB0aGUgJ19fYnVpbHRpbl9keW5hbWljX29iamVjdF9zaXplJy4NCj4gDQo+ICAgICBGb3IgaW5z dGFuY2UsIHRoZSBmb2xsb3dpbmcgY29kZToNCj4gDQo+ICAgICAgICAgIHN0cnVjdCBQIHsNCj4g ICAgICAgICAgICBzaXplX3QgY291bnQ7DQo+ICAgICAgICAgICAgY2hhciBvdGhlcjsNCj4gICAg ICAgICAgICBjaGFyIGFycmF5W10gX19hdHRyaWJ1dGVfXyAoKGNvdW50ZWRfYnkgKGNvdW50KSkp Ow0KPiAgICAgICAgICB9ICpwOw0KPiANCj4gICAgIHNwZWNpZmllcyB0aGF0IHRoZSAnYXJyYXkn IGlzIGEgZmxleGlibGUgYXJyYXkgbWVtYmVyIHdob3NlIG51bWJlcg0KPiAgICAgb2YgZWxlbWVu dHMgaXMgZ2l2ZW4gYnkgdGhlIGZpZWxkICdjb3VudCcgaW4gdGhlIHNhbWUgc3RydWN0dXJlLg0K PiANCj4gICAgIFRoZSBmaWVsZCB0aGF0IHJlcHJlc2VudHMgdGhlIG51bWJlciBvZiB0aGUgZWxl bWVudHMgc2hvdWxkIGhhdmUgYW4NCj4gICAgIGludGVnZXIgdHlwZS4gT3RoZXJ3aXNlLCB0aGUg Y29tcGlsZXIgd2lsbCByZXBvcnQgYSB3YXJuaW5nIGFuZCBpZ25vcmUgDQo+ICAgICB0aGUgYXR0 cmlidXRlLg0KPiANCj4gICAgIEFuIGV4cGxpY2l0ICdjb3VudGVkX2J5JyBhbm5vdGF0aW9uIGRl ZmluZXMgYSByZWxhdGlvbnNoaXAgYmV0d2Vlbg0KPiAgICAgdHdvIG9iamVjdHMsICdwLT5hcnJh eScgYW5kICdwLT5jb3VudCcsIGFuZCB0aGVyZSBhcmUgdGhlIGZvbGxvd2luZw0KPiAgICAgcmVx dWlyZW1lbnR0aGF0IG9uIHRoZSByZWxhdGlvbnNoaXAgYmV0d2VlbiB0aGlzIHBhaXI6DQo+IA0K PiAgICAgQS4gJ3AtPmNvdW50JyBzaG91bGQgYmUgaW5pdGlhbGl6ZWQgYmVmb3JlIHRoZSBmaXJz dCByZWZlcmVuY2UgdG8gDQo+ICAgICAgICAncC0+YXJyYXknLg0KPiAgICAgQi4gInAtPmFycmF5 JyBoYXMgX2F0IGxlYXN0XyAncC0+Y291bnQnIG51bWJlciBvZiBlbGVtZW50cyBhdmFpbGFibGUN Cj4gICAgICAgIGFsbCB0aGUgdGltZS4NCj4gICAgICAgIFRoaXMgcmVxdWlyZW1lbnQgbXVzdCBo b2xkIGV2ZW4gYWZ0ZXIgYW55IG9mIHRoZXNlIHJlbGF0ZWQgb2JqZWN0cw0KPiAgICAgICAgYXJl IHVwZGF0ZWQgZHVyaW5nIHRoZSBwcm9ncmFtLg0KPiANCj4gICAgIEl0J3MgdGhlIHVzZXIncyBy ZXNwb25zaWJpbGl0eSB0byBtYWtlIHN1cmUgdGhlIGFib3ZlIHJlcXVpcm1lbnRzIHRvIA0KPiAg ICAgYmUga2VwdCBhbGwgdGhlIHRpbWUuICBPdGhlcndpc2UgdGhlIGNvbXBpbGVyIHdpbGwgcmVw b3J0IHdhcm5pbmdzLCANCj4gICAgIGF0IHRoZSBzYW1lIHRpbWUsIHRoZSByZXN1bHRzIG9mIHRo ZSBhcnJheSBib3VuZCBzYW5pdGl6ZXIgYW5kIHRoZQ0KPiAgICAgJ19fYnVpbHRpbl9keW5hbWlj X29iamVjdF9zaXplJyBpcyB1bmRlZmluZWQuIA0KPiANCj4gICAgIE9uZSBpbXBvcnRhbnQgZmVh dHVyZSBvZiB0aGUgYXR0cmlidXRlIGlzLCBBIHJlZmVyZW5jZSB0byB0aGUgZmxleGlibGUNCj4g ICAgIGFycmF5IG1lbWJlciBmaWVsZCB3aWxsIHVzZSB0aGUgbGF0ZXN0IHZhbHVlIGFzc2lnbmVk IHRvIHRoZSBmaWVsZCB0aGF0DQo+ICAgICByZXByZXNlbnQgdGhlIG51bWJlciBvZiB0aGUgZWxl bWVudHMgYmVmb3JlIHRoYXQgcmVmZXJlbmNlLiBGb3IgZXhhbXBsZSwNCj4gICAgICAgcC0+Y291 bnQgPSB2YWwxOw0KPiAgICAgICByZWYxIChwLT5hcnJheSk7DQo+ICAgICAgIHAtPmNvdW50ID0g dmFsMjsNCj4gICAgICAgcmVmMiAocC0+YXJyYXkpOw0KPiAgICAgaW4gdGhlIGFib3ZlLCAncmVm MScgd2lsbCB1c2UgJ3ZhbDEnIGFzIHRoZSBudW1iZXIgb2YgdGhlIGVsZW1lbnRzIGluDQo+ICAg ICAncC0+YXJyYXknLCBhbmQgInJlZjIiIHdpbGwgdXNlICd2YWwyJyBhcyB0aGUgbnVtYmVyIG9m IGVsZW1lbnRzIGluDQo+ICAgICAncC0+YXJyYXknLg0KPiANCj4gDQo+IEFwcGVuZGV4IDMuIE90 aGVyIGFwcHJvYWNoZXMgdGhhdCBoYXZlIGJlZW4gZGlzY3Vzc2VkOg0KPiANCj4gQS4gIEFkZCBh biBhZGRpdGlvbmFsIGFyZ3VtZW50LCB0aGUgc2l6ZSBwYXJhbWV0ZXIsIHRvIHRoZSBjYWxsIHRv IF9fYmRvcywgDQo+ICAgICAgQS4xLCBkdXJpbmcgRkU7DQo+ICAgICAgQS4yLCBkdXJpbmcgZ2lt cGxpZmljYXRpb24gcGhhc2U7DQo+IEIuICBFbmNvZGUgdGhlIGltcGxpY2l0IFVTRSBpbiB0aGUg dHlwZSBvZiBzaXplLCB0byBtYWtlIHRoZSBzaXplIGFzIOKAnHZvbGF0aWxl4oCdOw0KPiBDLiAg RW5jb2RlIHRoZSBpbXBsaWNpdCBVU0UgaW4gdGhlIHR5cGUgb2YgYnVmLCB0aGVuIHVwZGF0ZSB0 aGUgb3B0aW1pemF0aW9uIHBhc3NlcyB0byB1c2UgdGhpcyBpbXBsaWNpdCBVU0UgZW5jb2RlZCBp biB0aGUgdHlwZSBvZiBidWYuDQo+IA0KPiAqKiBBcHByb2FjaCBBIChib3RoIEEuMSBhbmQgQS4y KSB3aWxsIG5vdCB3b3JrIGlmIHRoZSBvYmplY3QgaW5zdGFudGlhdGlvbiBpcyBub3QgaW4gdGhl IHNhbWUgcm91dGluZSBhcyB0aGUgX19iZG9zIGNhbGwgYXMgc2hvd24gaW4gdGhlIGFib3ZlIGV4 YW1wbGU7DQo+ICoqIEFwcHJvYWNoIEIgd2lsbCBoYXZlIGEgYmlnZ2VyIHBlcmZvcm1hbmNlIGlt cGFjdCBkdWUgdG8gdGhlICJ2b2xhdGlsZSIgd2lsbCBpbmhpYml0IGEgbG90IG9mIG9wdGltaXph dGlvbnM7IA0KPiAqKiBBcHByb2FjaCBDIHdpbGwgaW52b2x2ZSBhIGxvdCBvZiBjaGFuZ2VzIGlu IEdDQywgYW5kIGFsc28gbm90IHZlcnkgbmVjZXNzYXJ5IHNpbmNlIHRoZSBPTkxZIGltcGxpY2l0 IHVzZSBvZiB0aGUgc2l6ZSBwYXJhbWV0ZXIgaXMgaW4gdGhlIF9fYmRvcyBjYWxsIHdoZW4gX19i ZG9zIGNhbiBzZWUgdGhlIHJlYWwgb2JqZWN0Lg0KDQo=