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 656563858C5F for ; Fri, 10 Feb 2023 15:25:41 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 656563858C5F 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 (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 31AFMYEb015359; Fri, 10 Feb 2023 15:25:38 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=CkxMzffA33ErS51xjDT2o3FJKcH8THnFuPd0XJ79SfU=; b=qTR3Wl7J5H/SxyV9RjoWs0vl8V0hVPJ4p01Rvo3VUXc0I1QeaW1nmVtzuqu6N5qkIu8q JkuMoHCjWP6bbqDtVvqX8iSL4un4gsBFI4mspnB1qVgr7X10rYmqBXli9kx7aDxyFvUe ty2RkzkXDWbpeKYdgQgT0nIxF1FGGeOrCaqIAFE9Z1aRQ2Oi8q8VDUWU32u/ZMueymch ebSoeQX32y9ifBn1sryvivngE90fNKI4pe1bEuC9R80rSu16QKAvNgh1e/1ngW6mLii+ Q77BmP7xm8PUQKOSzsLFa6rRu9NEoZiu1j7VkHQVCBEk1uJkJdq3Qs4sjrYxelVyWk5J rA== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3nhfdcnjwf-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 10 Feb 2023 15:25:38 +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 31AEbke1013754; Fri, 10 Feb 2023 15:25:37 GMT Received: from nam12-dm6-obe.outbound.protection.outlook.com (mail-dm6nam12lp2168.outbound.protection.outlook.com [104.47.59.168]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3nhdtacmmx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 10 Feb 2023 15:25:37 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NfcU5orUUNP4A+MptyVPl3sp3x8E76Q2pqJPvWfOg+JsyKoVfqVA8ctrJ3GPfHv4+28O7Snyha0UNz+Aw9Ns+W3ozQxTzzymWqfmvQMIh4g3vtujMGKDnD4z/PPoBPISzGqHIej55i9KzrJama8YNE35sPHoN4SjBdRGnckFjjM2fwf16CoMjnGMDdTu1OxL7mtq3PQorPwI/2RZFZoc3ro4mJykKRmO02XHYr8W00AZ06fRaYaOq5shffEwyYJHj1o3A6KsBi8abT0CC+FLEX8q0Jp5623ut6gRPTVwTPrxW2YcVWEkqjajHECSP0rSLbRxIN5xGGzRvvq24PyaRw== 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=CkxMzffA33ErS51xjDT2o3FJKcH8THnFuPd0XJ79SfU=; b=MT2hYS8iLBcHNbvZzM3VadMS559YOREhNllzFMz3Dp6CfY1KO7Q3b11Vu3T3dk4zI5DySTGz4gTR2JpUJITsEwJotkjqSx1L+UMWydBLsQ/W/E8bu36gHDGXqkdYSQluXM7Rj5cHOanMreShwknuz9fjubqptdiU0c75ClaVyOXemIha2wwpDZ3cjZGfdm7MXBxG8eiqnuXNK4Gq6xvd44UW4LG4Vj62VhTfOOTh2ka5evllRIIeYjUfsEQrRllNJ60LQNz31yjA+u8uwttSJGdrA2IJZp6rwPP0C2bo3Y7eAYv+Un1xKzIo1PMVu/1pRLRkdInOkekIBbfLU+5sJQ== 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=CkxMzffA33ErS51xjDT2o3FJKcH8THnFuPd0XJ79SfU=; b=gPujKNi49mIoZCMwxTfOrsrVZcIddVXgEvjTVfQ0WH4ZRgZFe8ADGVd7hgxNebr2mM9+JLKI5QwBu8Yk0/Dwiosae90nfFdqaACUih3KqQ2ELrfEghgZeKO6qe+IJjSOcVIA5Wt+++S8gl1PxD6udV9vnADbp+LfSCJWwq529lM= Received: from CH2PR10MB4344.namprd10.prod.outlook.com (2603:10b6:610:af::19) by IA1PR10MB7446.namprd10.prod.outlook.com (2603:10b6:208:447::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6111.6; Fri, 10 Feb 2023 15:25:35 +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.6111.007; Fri, 10 Feb 2023 15:25:35 +0000 From: Qing Zhao To: Kees Cook , Richard Biener , Joseph Myers CC: "gcc-patches@gcc.gnu.org" , "siddhesh@gotplt.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+AgABDzYCAAEVvAIABAd6AgAAjB4CAAXvIAA== Date: Fri, 10 Feb 2023 15:25:34 +0000 Message-ID: <5B29C0C1-F003-4905-9260-851810F91EC5@oracle.com> References: <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> <2AB95191-B5D9-41AC-916A-C57ED20DF55E@oracle.com> <17bc7992-23b6-63dc-3a3a-1be016d3bbb@codesourcery.com> <50AC7191-4B2D-4BAE-8DEA-DE9CC21C4787@oracle.com> <63e52359.a70a0220.11fe3.2e86@mx.google.com> In-Reply-To: <63e52359.a70a0220.11fe3.2e86@mx.google.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.1) x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CH2PR10MB4344:EE_|IA1PR10MB7446:EE_ x-ms-office365-filtering-correlation-id: f2587e78-7301-4709-f6c5-08db0b7b0e2a x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: FVjTHRbz4FjfmXI11+YrH57G/5Ae4EusMfjNayDQK9aOIFeWtnclGwsCy+BiRr6nOg26ceCs9gHhKeuZT7VD2VxsHChiVykB+2p8Tp30dG2Ns9sNOxwa5l5htusjuJyDhrA7/UIY3kJueDA424pqUi1Ex7zwTapVBFCv6yCZLUyWKk7H5bQhVhTKunJWuN8aKbmpwEnvM2KVk7SIFIR9AzQYhWVXxzhU4aTbHEH9m58aTNaMs2ewIg/qeJ7VTmXMrUwmlWyFDgzAsrYS9UzwpbmM1Vbra4nU78/ohUeFaxCMmAkbKMxA4CU5+8LdU9d/4iDl9PeFP2ynXJ9MYNqKCxZVxO3aahxY4KhtylBZR6oZHbqzgYArjeEceSOnuJ998ObBp3rnTbqtrA6rKXcGULUK+Qu7bGKa98Oo1YJnXY8j43MHRzYk4fwApI1NDg9U054b12A+BS7YvjsnUAs1zxEXUajVsATXP4EOqUUV+Pifl6YHnrLSh/N43DyedcfPfWhR5eqs13hU8Hee0maafwfHiMWt5cAKHuk9qbgvnVWdt9/tuIDP8SbCrqXnUwFBFbu2HxtPkb7hheQo3zBZAB+rkfvmhw3rbS6sTtDjfKZ+PnSvp3ZyUzq1m/qzLXzOrfO4iRx7pZz2440IeTWNQjIWnmnefLWy7ew4F8ZIVm76C8hz58rM3wfMi7Neq1mbl2f1MRjbbhu84afuWhJNZDe8wBdz0sxFxsXLhmtqLw8aXMA+4K/E8hPY8+N0VtQPwYgLqcC1VXlbRE0UVdniodzgooWGxaZBaQVREti/FdfHRP0ZD8cvQXdXu/xY75e+ 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)(366004)(346002)(376002)(39860400002)(396003)(136003)(451199018)(26005)(8676002)(66556008)(91956017)(8936002)(66446008)(66476007)(6512007)(66946007)(64756008)(76116006)(6506007)(4326008)(186003)(33656002)(36756003)(86362001)(38070700005)(38100700002)(122000001)(2616005)(53546011)(2906002)(6486002)(316002)(966005)(71200400001)(54906003)(41300700001)(5660300002)(44832011)(478600001)(83380400001)(110136005)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?RzgxUnpuQjZEUTRjLzFraFB5OFFDdUhmZ2RzOUdJZ3dZTjNxeGpPR3FDVkVv?= =?utf-8?B?d0VzaHNZVEN5cGlaaWtUSEhkaXd5L0NreWx2YUk5bE5lcmxYL3BUcFBHNjdS?= =?utf-8?B?SitmZ1o2VGN1eUprYXQreEdPeTlYS0paM1FjVVdqVk00YmF5dWFLbkdQV2xU?= =?utf-8?B?Qjl2cDZiY0xtZEtLcmVhNUMxT3FYTlJCWmpWNkVtREROTEV2QzM3Q3B4SnIx?= =?utf-8?B?NU9FcGtHM0YzUDR6SW9LSmRzVjZYVStkYk5Rb1k1WXFRSVJTdnBCejF3OUtZ?= =?utf-8?B?QVV4VXgrVkNYSThZSW83M0F2TmVvNVltRlE5Y2t6MWtwd2VSMkxjOXVEbDR1?= =?utf-8?B?QVY4TzZkVVRWajBxSnU2NHlFTFM5b2twY1BJSTZVNkxxWkU3OGNqbi9DNDEz?= =?utf-8?B?eHNIQStPakR6SWNTcDlIK2pDb3UxOFhXNnNMdXQ5VENJZFpKTElVN0g4NlBR?= =?utf-8?B?cmlGZEZHOFVseXJLNGJaRzJvamRHdG5BV1FWRUlGSjBlOUFpeThNTTduZU9r?= =?utf-8?B?WUI1QUZVOWVnRTRLeUhWQUFBaksrUmtOSURibFoyWnBPWlZnKzVVSEhWSGF4?= =?utf-8?B?QUNPT3ppQlJ0ckJ0dUtwRFV6ajdVNW9DK3UxV3poOUlTcVFuclhXS0xhWkxR?= =?utf-8?B?ZHhFU25YaWJJV0o4NGFhQ2h4Ry9BWHh5L0MrWERGUnVYMDVuSzJ0NjU5bDd6?= =?utf-8?B?L2tyMkJyMERlTUdZWmNlcXhoaS9DVkpVcFpvU01IWithNWhBMkRTK2VJajJS?= =?utf-8?B?NGk4LzJ6SVVUL0N5UlEzU1dVM0t2UElyNUFmTWtLK29IeFVSQkg0WFdTZW85?= =?utf-8?B?UWlCK3FSTEljRStjbGdZWUdKQ0t1MHVZTHB2RkRkd0I5SXBKQVU5K0NLRVg4?= =?utf-8?B?aGVYeE02a29hMGhSR1pJTnQzcGszSkNaMHdmYjlxYjByeUVlTmhTeXd6T3Fu?= =?utf-8?B?aGErRThUQjN2V2VZdy9XOVVjWkpnQnl3V2RqNXZlYUJiRW1ZNnJOdjQrUGZi?= =?utf-8?B?bTRtWW5RTXhKRlB2KzdiaDJVWllkMlRjeSthY2c3ckJxTmJYcTJWZCs0Njgx?= =?utf-8?B?UndoQ2VVbWxsQnhUMk5DVlRDTnFmY212YmhBSktINVI2c25aTzRNbTh6bzg2?= =?utf-8?B?THJxVzBGbEQwcXY2Z2FXeng3SFhGdUdLWlkrRmMra1F0NGV4dTRqMU5malBs?= =?utf-8?B?MEpkRXlnQWZEdFZjaXhTOGgvY0Z2SGViNWs0UFdpMStsTVZqZ242WVlnOTVM?= =?utf-8?B?aXdxVjczMzExWWdYbTQyNmZaZ2ZZSHV3MnVBRXc4NGV1cHlqNnR4eS9Ua3Fl?= =?utf-8?B?Q2RMRS9UbGQrelVRTms2YmpKL0FTNHQ2cm14a1ZVcGZxSWVJZmhNdDkxc0Jr?= =?utf-8?B?QWkxNklLZml4S3BvKzl6NERNQkR2YnRTU3FKOWZISTBmeHpUbmx0bHI5a2xL?= =?utf-8?B?YlMxZlhjWXJzZE9CZUM0ZFRkeFpSUXFwQVFxa21BaWJXNGRBb3QvcVJGaHRo?= =?utf-8?B?bU8va0lyYlVDK2FCcnVlcm1pV2RXYmlyWTRKU0tPclRMQklhemRtTEdQVXRM?= =?utf-8?B?NjVJR3dma0UvZmNaalBKMno5a3I2elJoUk5nMlpoWmsrWlVTeHR3VmVjWElk?= =?utf-8?B?UTZndjBlZnZGd1JTR3BjUW1ZSk1SR3NkTjlRNWhVOGVQdUpjNFFUU0NQYXh0?= =?utf-8?B?aEdOSmgvbi9EWHlzWTRMTG5vaHlYNG1heElOcHVLRmtwdGd0QXF6ZW5ubWph?= =?utf-8?B?MGpLZ210OWduVUtadUxobXBrVGJEcWJoaDAxY0JiWittMCtIS3JjVHV5bW5w?= =?utf-8?B?WnhMSWV6VVg2TmNDazljK1ZkNWdrelduT2I1cHdrSXFBMVNtaFo0QXpMc3Zq?= =?utf-8?B?Z1NqWlYrSTRIRnAyYlg0aysyWjRpU2Y2dmdaZWlTT1VWVlZERk5BamY0MGNl?= =?utf-8?B?aWtVeFlYZkRFWTFJWHVTaGJSL3RWNDRiKzVqYm5WOFNORVdDTEZWL1NnS2Q5?= =?utf-8?B?dVJmTTR3U3FPNk90NXlvUVVyTnYwOFdEUy91N1lDSWtmdjZmWmNTVWY4YUNk?= =?utf-8?B?NVBHd1VyektjNWVQUzVEeTVtajV1aDBlNFdrZWFmK09jZUJmdHZ2azZDUnJi?= =?utf-8?B?WDRTSHl4L2ZGeGxadVpHQU9VbjE5NDlMRHVjTzEwSDlLQ1NSSUZ6NFIrQXVl?= =?utf-8?B?SFE9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: <575D2A443E33A745B4F9D54116F88461@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: +Oog8D//NhzQ/1PEotPfCBcoFI6dpJ7kn1xgOZj8bUTFkzoHY7KfV/Xa80laUDQ2v2uG0cD5ruILtvfFReW/5kVVolF8S/7DH8cSADRoPsyXasNjx6bs1z1awuHGLdT4x8MP41gY/Fk9pmdARK3hDo0xXZX+bzgJsJhkGH+gjxcGYCZZrxzGSe0PZ5SZJJb8BIWNGQZ4bSggzvF9yYVAgjemsMmDkJZ2yOC2xvuIGHSkIPIOkb5riaV5OB/3IMUuY/2/C5FGgeVoYy/VziHACJcieRtcFA4AgYvPH2pcMuHEoaF/W1VRn2KLJM9gbrJtXiK26ZhcQUNrO3oLOe1W6Iv36u6TWPzaidolGdIM57vs7Z864xa1+rqF6Km1ZVFRRm1cS5pnOpMBNT1nrQhj59l7IQPwVYZgbXcHvRdgQ9Fkz2c6X2ZZnUr1pLquBEH2zKEkYGqftjBSVyJ0hAH6upoKkIBwSKRnc0xetEKb3yVkc3TGlCSwbMc8ZlpSCZciUQsMn/vS7b2zPXPj5yQEVUK4Fo/jikf7/rWbcgkfu+R/6CG32r4qFZmCjvBLrlhSc/tk2oN0ElyJ/Kzpu1Z2le71oJEcf173IcOYGqfIanT+I4ctwl4vhOzf2rcHEX7vhT/KvjT6GgUIfCijEJyZZtfrf73/gPEEB+Z3Gj49Dkn2E42kSrodOmx5c2IL/smBSOHphfBETLXq5K4CuM+0+U077dc/KGzQPTEiUQ1CL8Tc0pNOztgWI6id3jLPfBdFkvrbYNcg2O5q4EIJc6DABIosQNbMZTlKiD7m7Qt2sUabbKEooJE8uWA8+AnCnKfjGP3ZsN3AQdReMmDIgP0w3X15KXVn+a4jZa0LV4V++dftqvTl8gmJYGQCUl25unBn 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: f2587e78-7301-4709-f6c5-08db0b7b0e2a X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Feb 2023 15:25:34.9319 (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: LRE42/1XDasEExKZfaAGQsyT8WqLEZBRtAuxR5qZ4tf6jJaCbK5Ezb48EtrFeM+K4c+LtdazdCb6fLEAw2RbyA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR10MB7446 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.219,Aquarius:18.0.930,Hydra:6.0.562,FMLib:17.11.170.22 definitions=2023-02-10_10,2023-02-09_03,2023-02-09_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-2302100128 X-Proofpoint-GUID: RN_q6OBtyzd-gpGALWGpbdBzzaUAexCd X-Proofpoint-ORIG-GUID: RN_q6OBtyzd-gpGALWGpbdBzzaUAexCd X-Spam-Status: No, score=-5.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,KAM_SHORT,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: VGhhbmtzLCBLZWVzLg0KDQpJZiB0aGVyZSBpcyBubyBvYmplY3Rpb24sIEkgd2lsbCB1cGRhdGUg bXkgcGF0Y2hlcyB3aXRoIHRoaXMuIEFuZCBzZW5kIHRoZSB1cGRhdGVkIHBhdGNoZXMgc29vbi4N Cg0KUWluZw0KDQo+IE9uIEZlYiA5LCAyMDIzLCBhdCAxMTo0NiBBTSwgS2VlcyBDb29rIDxrZWVz Y29va0BjaHJvbWl1bS5vcmc+IHdyb3RlOg0KPiANCj4gT24gVGh1LCBGZWIgMDksIDIwMjMgYXQg MDI6NDA6NTdQTSArMDAwMCwgUWluZyBaaGFvIHdyb3RlOg0KPj4gU28sIHRoZSBtYWpvciBxdWVz dGlvbiBoZXJlIGlzOg0KPj4gDQo+PiBpbiBhZGRpdGlvbiB0byB0aGUgQzk5IHN0YW5kYXJkIGZs ZXhpYmxlIGFycmF5IG1lbWJlciBbIF0sIHNoYWxsIHdlIGluY2x1ZGUgWzBdLCBbMV0gb3IgZXZl biBbNF0gaW50byB0aGlzIGV4dGVuc2lvbiwgYW5kIHRyZWF0IHRoZSBzdHJ1Y3R1cmUgd2l0aCBh IHRyYWlsaW5nIFswXSwgWzFdLCBvciBbNF0gZW1iZWRkZWQgaW50byBhbm90aGVyIHN0cnVjdHVy ZS91bmlvbiBzdGlsbCBhcyBmbGV4aWJsZS1zaXplZD8NCj4+IA0KPj4gSSB0aGluayB0aGF0IHdl IG1pZ2h0IG5lZWQgdG8gbGltaXQgdGhpcyBleHRlbnNpb24gT05MWSB0byBDOTkgc3RhbmRhcmQg RkFNIFsgXS4gIEFsbCBvdGhlciBbMF0sIFsxXSwgb3IgWzRdIHNob3VsZCBiZSBleGNsdWRlZCBm cm9tIHRoaXMgZXh0ZW5zaW9uLiBUaGUgcmVhc29ucyBhcmU6DQo+PiANCj4+IDEuIFRoZSByZWFs IHVzYWdlcyBvZiBzdWNoIEdDQyBleHRlbnNpb24gKGVtYmVkZGluZyBzdHJ1Y3R1cmUgd2l0aCBG QU0gaW50byBhbm90aGVyIHN0cnVjdHVyZS91bmlvbiksIGFzIG15IHVuZGVyc3RhbmRpbmcsIHRo ZSBvbGQgZ2xpYmPigJlzIDxfR19jb25maWcuaD4gKGh0dHBzOi8vZ2NjLmdudS5vcmcvbGVnYWN5 LW1sL2djYy1wYXRjaGVzLzIwMDItMDgvbXNnMDExNDkuaHRtbCksIGFuZCB0aGUgYnVnIGh0dHBz Oi8vZ2NjLmdudS5vcmcvYnVnemlsbGEvc2hvd19idWcuY2dpP2lkPTEwMTgzMiwgT05MWSBpbnZv bHZlZCBDOTkgc3RhbmRhcmQgRkFNOw0KPj4gDQo+PiAyLiBFbWJlZGRpbmcgYSBzdHJ1Y3R1cmUg d2l0aCBDOTkgRkFNIFtdIGludG8gdGhlIGVuZCBvZiBhbm90aGVyIHN0cnVjdHVyZSwgYW5kIHN0 aWxsIHRyZWF0IGl0IGZsZXhpYmxlIHNpemVkIG1pZ2h0IGhhdmUgbW9yZSB1c2FnZXMsIGFuZCBh cyBkaXNjdXNzZWQgd2l0aCBLZWVzLCBpdCBtaWdodCBiZSByZWFzb25hYmxlIHRvIHByb21vdGUg dGhpcyBpbnRvIGEgIEMgc3RhbmRhcmQgbGF0ZXIgaWYgbmVlZGVkLg0KPj4gDQo+PiBTbywgYmFz ZWQgb24gdGhpcyBjb25zaWRlcmF0aW9uLCBJIHRoaW5rIEkgc2hvdWxkIG9ubHkgZG9jdW1lbnQg dGhlIGZvbGxvd2luZyBhcyBHQ0MgZXh0ZW5zaW9uOg0KPj4gDQo+PiBzdHJ1Y3QgZmxleCAgeyBp bnQgbGVuZ3RoOyBjaGFyIGRhdGFbIF07IH07DQo+PiBzdHJ1Y3Qgb3V0X2ZsZXggeyBpbnQgbTsg c3RydWN0IGZsZXggZmxleF9kYXRhOyB9Ow0KPj4gDQo+PiBJc3N1ZSB3YXJuaW5ncyBmb3IgdGhl IGZvbGxvd2luZzogKHdoZW4gdGhlIHN0cnVjdHVyZSBpcyBub3QgYXQgdGhlIGVuZCkNCj4+IA0K Pj4gc3RydWN0IG91dF9mbGV4X21pZCAgeyAgc3RydWN0IGZsZXggZmxleF9kYXRhOyBpbnQgbX07 DQo+PiANCj4+IA0KPj4gSG93ZXZlciwgZm9yIHRoZSB0cmFpbGluZyBbMF0sIFsxXSwgb3IgWzRd LCB3aGVuIHN1Y2ggc3RydWN0dXJlIGVtYmVkZGVkIGludG8gdGhlIGVuZCBvZiBhbm90aGVyIHN0 cnVjdHVyZSwgV2Ugc2hvdWxkIE5PVCB0cmVhdCB0aGUgb3V0ZXIgc3RydWN0dXJlIGFzIGZsZXhp YmxlIHNpemVkLiANCj4+IExvZ2ljYWxseSwgd2Ugd2lsbCBOT1QgaXNzdWUgd2FybmluZ3Mgd2hl biBzdWNoIHN0cnVjdHVyZSBpcyBub3QgYXQgdGhlIGVuZC4gDQo+PiANCj4+IExldCBtZSBrbm93 IGlmIHlvdSBoYXZlIGFueSBjb21tZW50IG9yIHN1Z2dlc3Rpb25zLg0KPiANCj4gRldJVyB0aGlz IGFsbCBzb3VuZHMgY29ycmVjdCB0byBtZS4NCj4gDQo+IC0tIA0KPiBLZWVzIENvb2sNCg0K