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 7473F3858D39 for ; Wed, 8 Feb 2023 15:06:58 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7473F3858D39 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=oracle.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 318DU34B019295; Wed, 8 Feb 2023 15:06:55 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-2022-7-12; bh=vfYJMPYfUJmKc1ZVsLDtZ/1gF1AtqR6kA3pYje5iK4Q=; b=0WYPQ6WWEhBuUZGJNdkj4toOq6ntrOVT82nDXLOV0wN2ZYTEmEArm9q7ENeJkhFfwfrR eUkZRag33j8rLEdy2iNj4ZDEcn+rGtuysmgkA+iBPlkH3MN+mLFysNnYQdUJxZyMrORV CTo32J/r0xwWsoLzB5cvUvDJSnL3WINO3SOR60ZxWtjVNtLV1rPGQfta683p+E2/6wSl wgg0tVRWd/JRwVT2vy31itL40mqvnNlRxv1+iNNoG+u91uIEhEipmzCgrRlgVWUnkjCr dNguDFzPHcxE4ekpUnjpNH+/185AV4lhPOMy7fsuKrsW15xM0T/62ZwvmtvIEIPsOXnQ 6Q== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3nhfwu8a30-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 08 Feb 2023 15:06:54 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 318F5SfZ021285; Wed, 8 Feb 2023 15:06:54 GMT Received: from nam10-mw2-obe.outbound.protection.outlook.com (mail-mw2nam10lp2107.outbound.protection.outlook.com [104.47.55.107]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3nhdt79p1n-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 08 Feb 2023 15:06:54 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KWJCNifxVxWt/CshtHuJ7wrAMmVRGjIm4Xi5T8FcNHXxhU9kc7qHqFgawje4pcbFHC0XvJry7qAwD/cJ0ZnU2vYklx4fSyT/ixpjFYOTOrA37Bbps2Bq4mzouR3OmGl6BPg6Uo2pnNr4EPttn6jnwcjPBn7Ebu7+oBg920EeHSr+XYczJk1wXL0QCyQwwfgsWZ9w3Q4PhyFmwrq+iyk6fX4OGzLxfi1YXHbKNBbxhea9X6/DdHUL6ZeIV4Hr3r7+zI7vmopMW6ksKQ5xT8UOkkGXXsAQwFp7Dxpd2VRIHdVMcw0dYB7qJjA2pOz6t3QbF9aT9lu51kVsgbSg1K+Vow== 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=vfYJMPYfUJmKc1ZVsLDtZ/1gF1AtqR6kA3pYje5iK4Q=; b=eYK/Qbc+E9EDvl0ntfXCJD4vMmT+mbf9uSPQzxfYY3QImPaGvBY5Q3XWegZWZFBB4poIcnGNGznwmREBL5CgDLQwMZHf8WGhJUKlIMe3Fn3IVuKl4saJebhkF74m1amCQ/DW+9FIP927hHH57X0VATqt3ohqOAZtSBNK+WAzPksptEQWIXLyP+tHWo7eEYix/joRMvGQWXqcZzueuNLttFE8REdkIwTy/XpTbGIzjXVaHB/ZFdRp6lWEzkDvChSHPjHD7jCeFc2z+ulFHNxEFBfeKujvPynrjyAJ3eB9g7y5FTbymbo3QnutuYJcN0NKFM5/ctJZPO2kC/N0TdyIWw== 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=vfYJMPYfUJmKc1ZVsLDtZ/1gF1AtqR6kA3pYje5iK4Q=; b=e/+hYK51QFknGZ+v6ImJtXfYXom+dN6jsntZU8BXavEPgxMNo6w8K6Ea49S3H1cMLHVwqZ23zmCRGrfYQpK/OIQXmGbAgVHgCx3fmplk9XlnpgTkRSCV8vB715p1E/djuHB52UMiBRXq9+2vIoP8cFS86yExSt8tH+oBGAh+X8E= Received: from CH2PR10MB4344.namprd10.prod.outlook.com (2603:10b6:610:af::19) by PH7PR10MB5877.namprd10.prod.outlook.com (2603:10b6:510:126::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6086.10; Wed, 8 Feb 2023 15:06:49 +0000 Received: from CH2PR10MB4344.namprd10.prod.outlook.com ([fe80::7030:ed2e:20d0:cd5b]) by CH2PR10MB4344.namprd10.prod.outlook.com ([fe80::7030:ed2e:20d0:cd5b%5]) with mapi id 15.20.6086.017; Wed, 8 Feb 2023 15:06:48 +0000 From: Qing Zhao To: Joseph Myers , richard Biener CC: "gcc-patches@gcc.gnu.org" , "siddhesh@gotplt.org" , "keescook@chromium.org" Subject: Re: [PATCH 1/2] Handle component_ref to a structre/union field including flexible array member [PR101832] Thread-Topic: [PATCH 1/2] Handle component_ref to a structre/union field including flexible array member [PR101832] Thread-Index: AQHZNX31Ed6QQ1+7j0WzPTRpR3Dia665+UIAgAAsBICAASqFgIAAYHEAgAAAkICAAAwiAIABIE0AgABbkICABHfFAIAAVduAgACQPICAAQZgAIAASaCAgAALK4CAAD1ggIABA7+A Date: Wed, 8 Feb 2023 15:06:48 +0000 Message-ID: <2AB95191-B5D9-41AC-916A-C57ED20DF55E@oracle.com> References: <20230131141140.3610133-1-qing.zhao@oracle.com> <20230131141140.3610133-2-qing.zhao@oracle.com> <812910BC-870E-4432-870D-538024F1A510@oracle.com> <3B30CFBF-5004-41A4-940D-1F23C010403B@oracle.com> <4E515AA5-2069-497E-A301-EC8ED744E780@oracle.com> <367EBE15-1675-4D29-A9C2-A4A57FA4DB62@oracle.com> <2184ee29-9a36-e85-11c5-81c47aa22055@codesourcery.com> <91678405-D50E-405A-98FB-F3BA6888577E@oracle.com> In-Reply-To: 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.1) x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CH2PR10MB4344:EE_|PH7PR10MB5877:EE_ x-ms-office365-filtering-correlation-id: 48a6988d-b39c-476f-3b81-08db09e619ea x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: QhLnsioA14dP+q/hFqLEPRZi58NHbrXSwTf2JsXD255gPLBhhQE2Z+osFnMW+XOmwXI2bMkh+DMIiQKmjJmd9hB8LJSqF0NJ9XZX/PRJHlhi393plg3qnGucDsqrsjML25w+ItTywLs5Ody/w/rRvCMljpTgLP+cId3upqFIifQZbVgsugJ1pGJZPHKNC0IOIDFm87F9kzsAvw7zpIVFwnC6S5+kZOBbIIqDPWtgDJtv0f5QxN4psMSAs9qf5AV2YhRidQWcKfKe1i4YYCLyOwACC9/HBySx2+GYforVfh7x7S11Sl1RliaCpKUC7U0c9ruLVnLjzvKd6PCOpJYlk4W5VmsxAaJKLhFSuuBsxOZbDQSMldkekpyyD6/FWwTU8Hb+WWu7WaGQkYaPmCggwbkBPmIgJ80PyG/FCHe5xCX7FaxOA4w/hAZWb5Fn3LnfJYH1OX2WFmmrRrqvz7OaExm9iQwwKDidZU9PlgmEDFl3bQsVkBkle2C8C4S9j1fWugH7E+rDu/MRKv9t4rYrxPQXCBPCLW5FM2E0/jaTMvbS0B9EJbmfTrbRHGHVumgOVTCGPlUkSe+pGqDpCUaIWNlWVbuxFr79kGEPevFor6HA4v+J3mt+7vo/0u8XUphBYsByFt0G3dpt4VXri35yrwXVB15MBpP5MPwvov0UGBjgKVBfUH1CI2BBqaur8m69BXANYkAobkaYngt+eSpFtbD0Z4Y8ebM3tO++0rTRQUE= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH2PR10MB4344.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(396003)(366004)(376002)(39860400002)(346002)(136003)(451199018)(110136005)(54906003)(86362001)(2616005)(316002)(5660300002)(6512007)(186003)(26005)(53546011)(71200400001)(36756003)(478600001)(44832011)(6506007)(6486002)(33656002)(2906002)(38070700005)(38100700002)(122000001)(41300700001)(66946007)(66556008)(66446008)(76116006)(66476007)(8676002)(64756008)(4326008)(91956017)(83380400001)(8936002)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?ZE1qMFlMTEZUWWI3RFZHZ0EvVkkxb0k2alpMRGFTM3dESXR2NytIcXJKMXdn?= =?utf-8?B?RVNIdmhFQWVhN0tqV3FKTDZxUHo2cVpGU3BmdnV4WjRQVVVvcmFwVWthTG9Z?= =?utf-8?B?V2tCSmdCd2NNS3RYMVlPNjB4dWdpQXRDRFBkVWVLSVVJMEJrb1l2czl3cmJK?= =?utf-8?B?dFlPaDhJRnd6emlBNFpvNjRGQ2J5aWZBeXNBTVhMbVpKdWt4dHUxalhNaGYv?= =?utf-8?B?a1IyVVdDaFQ5TUJpOVo2R1F3NXdpUERYZ3A3elM5WjUzdi9wVGI4VFExb1Qy?= =?utf-8?B?aVhBdFNBUlYvRXk2dkhIcGRZODduTWdzc1pHei9NaFhobHJ5TUVkTGpPVllN?= =?utf-8?B?TVI5a0ZRWng0VC9FMElwQWg3RzhXNnJYZHRveGFZcnF4ZUExTDRrK2JsQ215?= =?utf-8?B?VTJ1Ni9HSFhZV1laOWovZDZOaDliRnBrdlloWmVIWEMvdFNnR3d1bVJyb2c1?= =?utf-8?B?NU5LU0N3MnBMRjlqZTM2T3JVRW0rb0VZVWJJWnV1QXFHUWJkVFZVLzExL0hP?= =?utf-8?B?d0NpZjdKZGRVdlZxbUwzUVVvQndnenBjL1hvc2drN21xU1d6SEZUQkgxVW1j?= =?utf-8?B?cW9EWXEwaE1LcDBmdysvWjIzektIVFNsNFowb2JmU2xvWlN0NkQ2TGlDa2N5?= =?utf-8?B?cnRpbWFqaXBDbHRDT1FDb2FOV0hhbEQxaWpaS3lUaHVCTzIyc0trOGNoaXFK?= =?utf-8?B?cXVNSVhXVnFOSmVkdk0xUnl6VmxoTGViRklEVFBSUUJmYkNNZE8zUWVEdVFq?= =?utf-8?B?ZXE0ZEJEVFc2UEJWbVpXdC90alNPTE1pdG5PZGJBc1haLzZ2NllHVTJ4bGIz?= =?utf-8?B?ZTg5c2ovS1VHbm1iNTBPRmhFVnlRbXIxS0t5TFYyWHRBaitnTnN3NTdYa1R0?= =?utf-8?B?bExIcFBPbHNWK0ROM3RmcE9ISmNEa0N0Wm1uTmoxajV0eW16Vm8vZVY1L0g3?= =?utf-8?B?dzZJN0pacnBCeDdpMmRoZnZmVE5vdGFMZDEzeTh2aDg0Q0pNRm04SjlFUjFM?= =?utf-8?B?WlNXQjMzU28zYllpNEQ2eFg0S011VVJvS1dkN3RsTlNoQ255N3cyaHlycVRV?= =?utf-8?B?bHlaeVdqd0cwSUsrRXBDblZjejh6NlFSYXNjZ3lCbTkvUXdNRHlCTkRXVDF5?= =?utf-8?B?ejRwenR3Q0J5S0tjVklFQlgra0VVTmEyY2Q2aFBFZ25mS1dFbi9ORkE1REtO?= =?utf-8?B?UGo1dVZwSFlFTjFyaytxei93RGJxa3BRY2Z0a0lvWnFTTW9OSU16ZE1OeVl1?= =?utf-8?B?WTJKemFkRE1FMEw0UFV0aldaZThEdkpUUHFFUFFpWm15WTJGdmNDOXVzNzBR?= =?utf-8?B?Ym5HTlNQcmMyZUtoRmtlNWI0TjgrUHFjN1g0VTFGNUN5a0k3SFVaWEw4cllw?= =?utf-8?B?UUMvTG0vQjJ2eGZOc016TXQxQ0Zid3N5YlV6SlRmaG4vL0huU2ZjOFJKN3E3?= =?utf-8?B?eFFJc2ZRRlIyYTF3TnVWSmhURkhHNGo2WHJHLzFqSWZ5ZHAyVXdHUjVMMHVm?= =?utf-8?B?VWVyYThpUVhDanc1M2xXelVTWUxUTUFEcWNQL2ZHREtHNWtka2c2RHVBY29w?= =?utf-8?B?OTdkM1RaQmg4bWoweUtmeDRLekQ2SVVCeDlFbVpvemFaVWNIZnhwemNYeGhF?= =?utf-8?B?WXNYYmwwR3VPbU1GYk1iWTEzc3ZUYWJ6ZVptSlplZ2o4UU8zcFZUc2hkWTdn?= =?utf-8?B?RlVGdzdkbXEvSUp2ZGxQTFZMeDlGZmRDbVBGSktCZE5WMkpoWE1BY0Nyd3FX?= =?utf-8?B?N3lyQVQ5aGoxNnhVWDdqTGJ0Y2lpTWJ2UmNvKy9uRHRFZWhTQXg4a0Z6REJR?= =?utf-8?B?L2hMdnVWNTVWYzRYSUhlLytYMHpZd0h6WHJPR1F5NENkcUlEL1dVU0NybnNq?= =?utf-8?B?b0dLbE56cjFxTWF5dFFCWWM2Z1M4UzltWXNZckplV1pSUkhmUkRrNTVPaEFy?= =?utf-8?B?dmR6bVYwNDFZWFRlUDBwN0FJMC9lTnFTbjFnTGpTNWs4Q0xDczhOM2JDMzFO?= =?utf-8?B?ZUNmSlJ2WnhxSGNDZVVScEYvbTFJZnBnTWZmVFlxM2RuZW1heUFFMEJnUnBx?= =?utf-8?B?T1JvK1Frelc0Z0hKUHhkeGFJYmVUZ0I0SHQzNHJBcXZadmFnY1FRMmVoVG1T?= =?utf-8?B?Vm15SXJBdEhPSGEwd3pnaklCOXREc2plSFllZTdWMEFIMkh1dUp6V3NQQXRo?= =?utf-8?B?aHc9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: <0CBDA4F6087FFF41908D57DFAB46F7D2@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: 4zjd5ZwEZHGMSVnwnLtmEYK8rHpEowtNKqtZ5QiksfhxJ2l9Q6TAPh2sxk5T/H3umnAM54eqFbWz5LE91ILoL29nWnh3xoMW1akelMC1ivl0bkS2CqheAboINjHl58wCzI/fG2HvOBHLlR3h+TNn4ff+xf/4XXY26yBECo5Qom58LkzQ1+x66fMhhbbHWI+FCAFq8z38L132Gu6ieAi+67v5is6BF0jQg5wFYYss9DpA6JQZYLV0/EpqKgq781lrYi9c/Ei9HZspBdrAjppfyt5VU59Sn2a38qjQmHGvjwH95PqZzmb7IvoJ/n8plu5Zzb9cZQUzrQmlpDtICVbAaFaNl8dg2JBMh54h4VP3HmMRw+d4d59ZUVBmuLcHSANYrJKtgVSNEQpdWAWWvRgxRTw280O46t0JUIBnEprnBaa6Hxchu6b5J/03AOL8cEpLNXv/Hqq+AI5tbLKY9tAnRiI+rRer287ZQ98yCwS19rDdyurvMPAV8gDCHb9N+DMMw7AY4DT6YBDJcdgd9bYD7bEXGtnhX4Y4U8wwcw4JQ4ubFavxUe0INKMoNw/Onuwn2/MT5oVryZ1lCEtpk9dHfeSZfkA4t9vWGfbofTneJvSwsnEfkTG6+Zg2fMnzZtfXww9AHgDi0Ulp3OKHjleD7iZUto+wNPB/OVsLCtZH4MfwXRn4aLoRoj3u/yYzw/CB++OHTO6JNV0HdK9PNThLDNAexgtidB6bDBxxsMmjSV6YFnESZYRvDkxqJmx+Cx+3CdW9Cpr8BNNejH8vWk5C8o/uLpuR2VmEjH4syYoe980gx4/+srIEG4fQEitGVr0+BZ7AaSLO9bmnMdQOA0uO75R29i+FqDhdjD2fQMfkia4QlpixCcBiaSgp516yfd2d X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH2PR10MB4344.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 48a6988d-b39c-476f-3b81-08db09e619ea X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Feb 2023 15:06:48.4653 (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: MKoEaKBWGrJ5AUvwet6UEX8fEZIWW44wzL2n/c+8VatYJ0ZjXXQx1FdwK71HIKNCFkBBkOFag0E+Dj9Voz//Mw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR10MB5877 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.219,Aquarius:18.0.930,Hydra:6.0.562,FMLib:17.11.122.1 definitions=2023-02-08_06,2023-02-08_02,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 bulkscore=0 malwarescore=0 mlxscore=0 mlxlogscore=999 adultscore=0 spamscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2302080134 X-Proofpoint-GUID: SyfwkYdiPhiY4bqIlvP0YjipNqXqDvs_ X-Proofpoint-ORIG-GUID: SyfwkYdiPhiY4bqIlvP0YjipNqXqDvs_ X-Spam-Status: No, score=-5.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H2,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: DQoNCj4gT24gRmViIDcsIDIwMjMsIGF0IDY6MzcgUE0sIEpvc2VwaCBNeWVycyA8am9zZXBoQGNv ZGVzb3VyY2VyeS5jb20+IHdyb3RlOg0KPiANCj4gT24gVHVlLCA3IEZlYiAyMDIzLCBRaW5nIFpo YW8gdmlhIEdjYy1wYXRjaGVzIHdyb3RlOg0KPiANCj4+IFRoZW4sIHRoaXMgcm91dGluZSAoZmxl eGlibGVfYXJyYXlfdHlwZV9wKSBpcyBtYWlubHkgZm9yIGRpYWdub3N0aWMgcHVycG9zZS4NCj4+ IEl0IGNhbm5vdCBiZSB1c2VkIHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSBzdHJ1Y3R1cmUvdW5p b24gdHlwZSByZWN1cnNpdmVseQ0KPj4gaW5jbHVkZSBhIGZsZXhpYmxlIGFycmF5IG1lbWJlciBh dCB0aGUgZW5kLg0KPj4gDQo+PiBJcyBteSB1bmRlcnN0YW5kaW5nIGNvcnJlY3Q/DQo+IA0KPiBN eSBjb21tZW50cyB3ZXJlIGFib3V0IGJhc2ljIHByaW5jaXBsZXMgb2Ygd2hhdCBnZXRzIGRpYWdu b3NlZCwgYW5kIHRoZSANCj4gbmVlZCBmb3IgZGlmZmVyZW50IHByZWRpY2F0ZXMgaW4gZGlmZmVy ZW50IGNvbnRleHRzOyBJIHdhc24ndCB0cnlpbmcgdG8gDQo+IGFzc2VydCBhbnl0aGluZyBhYm91 dCBob3cgdGhhdCBtYXBzIG9udG8gd2hhdCBmdW5jdGlvbnMgc2hvdWxkIGJlIHVzZWQgaW4gDQo+ IHdoYXQgY29udGV4dHMuDQpPa2F5LiANCg0KQnV0IEkgbm90aWNlZCB0aGF0IOKAnGZsZXhpYmxl X2FycmF5X3R5cGVfcOKAnSBsYXRlciB3YXMgbW92ZWQgZnJvbSBGRSB0bw0KIG1pZGRsZS1lbmQg YW5kIHB1dCBpbnRvIHRyZWUuY2MsIHRyZWUuaCBhcyBhIGdlbmVyYWwgdXRpbGl0eSByb3V0aW5l LCBhbmQgdG8gDQoNCi8qIERldGVybWluZSB3aGV0aGVyIFRZUEUgaXMgYSBzdHJ1Y3R1cmUgd2l0 aCBhIGZsZXhpYmxlIGFycmF5IG1lbWJlciwNCiAgIG9yIGEgdW5pb24gY29udGFpbmluZyBzdWNo IGEgc3RydWN0dXJlIChwb3NzaWJseSByZWN1cnNpdmVseSkuICAqLw0KDQpIb3dldmVyLCBzaW5j ZSB0aGlzIHJvdXRpbmUgZG9lcyBub3QgY292ZXIgdGhlIGNhc2VzIHdoZW4gdGhlIHN0cnVjdHVy ZSANCndpdGggZmxleGlibGUgYXJyYXkgbWVtYmVyIHdhcyByZWN1cnNpdmVseSBlbWJlZGRlZCBp bnRvIHN0cnVjdHVyZXMsICh3aGljaCB3ZSANCmFncmVlZCB0aGF0IGl0IHNob3VsZCBiZSBjb25z aWRlcmVkIGFzIGEgZmxleGlibGUgc2l6ZWQgdHlwZSkuIA0KDQpUaGVyZWZvcmUsIEkgZmVlbCB0 aGF0IEl0IG1pZ2h0IG5vdCBiZSBwcm9wZXIgdG8gaW5jbHVkZSB0aGlzIHJvdXRpbmUgaW4gbWlk ZGxlIGVuZCANCihhbmQgYWN0dWFsbHkgbm8gb3RoZXIgcGxhY2VzIEluIG1pZGRsZSBlbmQgdXNl IHRoaXMgcm91dGluZSBzbyBmYXIpLg0KDQpUaGF04oCZcyB0aGUgcmVhc29uIEkgYXNrZWQgdGhl IHByZXZpb3VzIHF1ZXN0aW9uLiANCg0KSXQgbWlnaHQgYmUgYmV0dGVyIHRvIG1vdmUgdGhlIHJv dXRpbmUg4oCcZmxleGlibGVfYXJyYXlfdHlwZV9w4oCdIGJhY2sgZnJvbSBtaWRkbGUtZW5kIHRv DQpGRSBmb3IgdGhlIGRpYWdub3NpcyBwdXJwb3NlIG9ubHkuIA0KDQoNCj4gDQo+Pj4+IDIuIE9u bHkgQzk5IHN0YW5kYXJkIGZsZXhpYmxlIGFycmF5IG1lbWJlciBiZSBpbmNsdWRlZCwgWzBdIGFu ZCBbMV0gYXJlIA0KPj4+PiBub3QgaW5jbHVkZWQsIGZvciBleGFtcGxlOg0KPj4+IA0KPj4+IE9i dmlvdXNseSB3ZSBjYW4ndCBkaWFnbm9zZSB1c2Ugb2Ygc3RydWN0dXJlcyB3aXRoIFsxXSB0cmFp bGluZyBtZW1iZXJzLCANCj4+PiBiZWNhdXNlIGl0J3MgcGVyZmVjdGx5IHZhbGlkIHRvIGVtYmVk IHRob3NlIHN0cnVjdHVyZXMgYXQgYW55IHBvc2l0aW9uIA0KPj4+IGluc2lkZSBvdGhlciBzdHJ1 Y3R1cmVzLiAgQW5kIHRoZSBzYW1lIGlzIHRoZSBjYXNlIGZvciB0aGUgWzBdIGV4dGVuc2lvbiAN Cj4+PiB3aGVuIGl0J3MgdXNlZCB0byBtZWFuICJlbXB0eSBhcnJheSIgcmF0aGVyIHRoYW4gImZs ZXhpYmxlIGFycmF5Ii4NCj4+IA0KPj4gV2l0aCB0aGUgLWZzdHJpY3QtZmxleC1hcnJheXMgYXZh aWxhYmxlLCB3ZSBzaG91bGQgYmUgYWJsZSB0byBkaWFnbm9zZQ0KPj4gdGhlIGZsZXhpYmxlIGFy cmF5IG1lbWJlciBwZXIgZ251IGV4dGVuc2lvbiAoaS5lIFswXSBvciBbMV0pIHRoZSBzYW1lIGFz IFtdLiANCj4gDQo+IFRoZXJlIGFyZSBkaWZmZXJlbnQgc29ydHMgb2YgZGlhZ25vc3RpYyB0aGF0 IG1pZ2h0IGJlIGludm9sdmVkLg0KPiANCj4gKiBTaW1wbHkgaGF2aW5nIFswXSBvciBbMV0gYXQg dGhlIGVuZCBvZiBhIHN0cnVjdHVyZSBlbWJlZGRlZCBpbiBhbm90aGVyIA0KPiBzdHJ1Y3R1cmUg aXNuJ3QgYXBwcm9wcmlhdGUgdG8gZGlhZ25vc2UsIGJlY2F1c2UgWzBdIGFuZCBbMV0gaGF2ZSAN Cj4gcGVyZmVjdGx5IGdvb2QgbWVhbmluZ3MgaW4gc3VjaCBhIGNvbnRleHQgdGhhdCBhcmVuJ3Qg dHJ5aW5nIHRvIGJlIA0KPiBmbGV4aWJsZSBhcnJheSBtZW1iZXJzIGF0IGFsbC4gIFswXSBtaWdo dCBiZSBhbiBlbXB0eSB0eXBlIChwb3NzaWJseSBvbmUgDQo+IHRoYXQgd291bGRuJ3QgYmUgZW1w dHkgd2hlbiBidWlsdCB3aXRoIGEgZGlmZmVyZW50IGNvbmZpZ3VyYXRpb24pLiAgWzFdIA0KPiBt aWdodCBiZSB0aGUgdXNlIG9mIGFycmF5cyBpbiBDIHRvIHByb2R1Y2UgYSBwYXNzZWQtYnktcmVm ZXJlbmNlIHR5cGUuDQoNCg0KU28sIHlvdSBtZWFuLCBieSBkZWZhdWx0LCBPbmx5IGhhdmluZyBb XSBhdCB0aGUgZW5kIG9mIGEgc3RydWN0dXJlIGVtYmVkZGVkDQogaW4gYW5vdGhlciBzdHJ1Y3R1 cmUgaXMgY29uc2lkZXJlZCB0byBiZSBmbGV4aWJsZSBzaXplZCB0eXBlPw0KDQppLmUuDQpzdHJ1 Y3QgZmxleCB7IGludCBuOyBpbnQgZGF0YVsgXTsgfTsNCnN0cnVjdCBvdXRfZmxleF9lbmQgeyBp bnQgbTsgc3RydWN0IGZsZXgwIGZsZXhfZGF0YTsgfTsgDQpzdHJ1Y3Qgb3V0ZXJfZmxleF9lbmR7 IGludCBwOyBzdHJ1Y3Qgb3V0X2ZsZXhfZW5kMCBvdXRfZmxleF9kYXRhOyB9OyANCg0KSW4gdGhl IGFib3ZlLCBhbGwg4oCcZmxleOKAnSwg4oCcb3V0X2ZsZXhfZW5k4oCdIGFuZCDigJxvdXRlcl9m bGV4X2VuZOKAnSBhcmUgZmxleGlibGUgc2l6ZWQgdHlwZS4NCg0KQnV0Og0KDQpzdHJ1Y3QgZmxl eDAgeyBpbnQgbjsgaW50IGRhdGFbMF07IH07DQpzdHJ1Y3Qgb3V0X2ZsZXhfZW5kMCB7IGludCBt OyBzdHJ1Y3QgZmxleDAgZmxleF9kYXRhOyB9OyANCnN0cnVjdCBvdXRlcl9mbGV4X2VuZDAgeyBp bnQgcDsgc3RydWN0IG91dF9mbGV4X2VuZDAgb3V0X2ZsZXhfZGF0YTsgfTsgDQoNCkluIHRoZSBh Ym92ZSwgb25seSDigJxmbGV4MOKAnSBpcyBmbGV4aWJsZSBzaXplZCB0eXBlIGJ5IGRlZmF1bHQu IA0KQnV0IOKAnG91dF9mbGV4X2VuZDDigJ0gYW5kIOKAnG91dF9mbGV4X2VuZDDigJ0gYXJlIE5v dCBjb25zaWRlcmVkIGFzIGZsZXhpYmxlIHNpemVkIHR5cGUgYnkgZGVmYXVsdD8gDQoNCj4gDQo+ ICogVHJ5aW5nIHRvIHVzZSBzdWNoIGFuIGVtYmVkZGVkIFswXSBvciBbMV0gYXJyYXkgYXMgaWYg aXQgd2VyZSBhIGZsZXhpYmxlIA0KPiBhcnJheSBtZW1iZXIgLSBpLmUuIGFjY2Vzc2luZyBhbnkg bWVtYmVyIG9mIHRoZSBbMF0gYXJyYXksIG9yIGFueSBtZW1iZXIgDQo+IG90aGVyIHRoYW4gdGhl IFswXSBtZW1iZXIgb2YgdGhlIFsxXSBhcnJheSAtICppcyogYSBzaWduIG9mIHRoZSANCj4gcHJv YmxlbWF0aWMgdXNlIGFzIGEgZmxleGlibGUgYXJyYXkgbWVtYmVyLCB0aGF0IG1pZ2h0IGJlIGFw cHJvcHJpYXRlIHRvIA0KPiBkaWFnbm9zZS4NCg0KWWVzLCB0aGlzIHdhcyBkaWFnbm9zZWQgd2l0 aCAtV3N0cmljdC1mbGV4LWFycmF5cyArIC1mc3RyaWN0LWZsZXgtYXJyYXlzPW4uDQoNCnRoYW5r cy4NCg0KUWluZw0KDQo+ICAoQWN0dWFsbHkgSSdkIGd1ZXNzIHRoZSBhcnJheSBpbmRleCB0ZW5k cyB0byBiZSBub24tY29uc3RhbnQgaW4gDQo+IGFjY2Vzc2VzLCBhbmQgaXQgd291bGQgYmUgb2Rk IHRvIHVzZSBhIG5vbi1jb25zdGFudCBpbmRleCB3aGVuIHlvdSBtZWFuIA0KPiB0aGF0IGNvbnN0 YW50IGFsd2F5cyB0byBiZSAwLCB3aGljaCBpdCB3b3VsZCBuZWVkIHRvIGJlIGluIHRoZSANCj4g bm9uLWZsZXhpYmxlIGNhc2UuKQ0KPiANCj4gLS0gDQo+IEpvc2VwaCBTLiBNeWVycw0KPiBqb3Nl cGhAY29kZXNvdXJjZXJ5LmNvbQ0KDQo=