From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.31]) by sourceware.org (Postfix) with ESMTPS id BC55738582A2 for ; Wed, 13 Dec 2023 08:36:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org BC55738582A2 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org BC55738582A2 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=134.134.136.31 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1702456566; cv=pass; b=WJRyFKDT/yQT4QqcW2kKgcIbpboQ5WqZ/zm5hj859GUaqhaP7r6dxw+onjTTyzC5u8PWhwbi0cZk37639520d9UoDpLrTYIr2g/CtsBq61wgfmC1tp58FgLBvDhx+w9Z1YajOOIOzaf5sBrfV2M5o9fC3PiW0+M2ldYseqv1DEI= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1702456566; c=relaxed/simple; bh=J2bxChdl2mWSnRTpBBwRs6fJZuvHABYvV9bn9JvfVMM=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=I6igE4PACmOpJL03Y/HGArhI29wnwJo/RMEmlTkN+zWYd8FqSFHKUci27xP0gqPLzYTMd7pqIAeHVCd2pORGZ1xYCC4kuR90x9bvG2OB/1K2po1pl03w1uy+lbMk8WOMKAiyGmcxkhRM4QP1cmF+b4/Fyz4t43dyZBtLdp9G0KA= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1702456562; x=1733992562; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=J2bxChdl2mWSnRTpBBwRs6fJZuvHABYvV9bn9JvfVMM=; b=QAPXfzqY0QBBAdDy74jy59gKnc7tFXVPaQgD05O1i/dpKzmsPYwKLbDc yUkoIymXlQxTumn6/lDYeRgw4oYKelFXxFjpTgVECAU8ZW3zIAQRMf+v3 R0FUOKSDOTrVEga0gGHhS5yI2ygd6AHK66Bx1z6sKJ5xT9JOyDpuLPbDN JjPjtF+JNWng+O1Hxp/kDT+xCKf43y8AIe8S6TCSWe1XCoUsvGbKyAfPb 2jxdhEV7BfVC6HMdh5y0gzjxTcZKRkpKppw/IASP6czyAWJSgt4PY9TxE fscp6C2CtXmOVKPM6LndU4e/+zng4rK62Eaytg2lbKvGP7a4ELSxaVF0n Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10922"; a="459252384" X-IronPort-AV: E=Sophos;i="6.04,272,1695711600"; d="scan'208";a="459252384" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Dec 2023 00:36:00 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10922"; a="802806437" X-IronPort-AV: E=Sophos;i="6.04,272,1695711600"; d="scan'208";a="802806437" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by orsmga008.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 13 Dec 2023 00:36:00 -0800 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Wed, 13 Dec 2023 00:36:00 -0800 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Wed, 13 Dec 2023 00:36:00 -0800 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.169) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Wed, 13 Dec 2023 00:35:59 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lpSYr1TuplIjSUBy1M0jWWpASkxdLxdCK9Hn7sFTFkp0qc8PnKOb//a0I0hNZj/Dm9htJa+t3ByrGR0un2IeGM1QS8rws9U31b0kwxlM6tBGUqdarkF1lTAuAKM16/y29bFTeg4WPBA4dyFhKJ3vYt3QEVGFE6nW6IG94/2WnOSjfTbjykrj+HqL6x9P6GqRG202o4PSd5EJ6C926H7enuu4oJeNB5sh9ZbCBLkeYYqQOsUD9l0hmb2Ta87oV879QsR7EkcPcarmAzXgad6s+QBOwd4Pv00zT8CGoN/uGHD1p0stDLuR2E1NXedDKzLZuaRzzdQNE+H39+c+fDNd3g== 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=J2bxChdl2mWSnRTpBBwRs6fJZuvHABYvV9bn9JvfVMM=; b=n5mr8Wy/3nCAe/lEiitEOJKI9nqPnrm64V+CvH+XOs9M6NxBjs4w+zV+InRhIFmwfPGT4NBPaVj7OkhO+7dxtI4sGnKZ+i5f1yBy9zuY7EcwCZ0Bv0ehT2Br8xKcVeMMjHbENHQ5FO5XxCLbVuxra2xBl7F1V3AxmX23aIcUboconEp++A2Q1P4rRWqKfPxQ/13YjnZ4mkKBNv9U9qgB2AWXAlgnNdO6J2GTOIKiTpj7jBfaXh3ErNapjMpqCmYYrF2CgKiwQXh49EF0i5Ay0J9mtVyflzh0FrS17roXikhZZN5xYhTolhlqDk3B//XnMTqVTFUTLxmTCG/Jl2UMcQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from SJ0PR11MB5600.namprd11.prod.outlook.com (2603:10b6:a03:3ab::16) by PH0PR11MB5016.namprd11.prod.outlook.com (2603:10b6:510:32::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7091.26; Wed, 13 Dec 2023 08:35:50 +0000 Received: from SJ0PR11MB5600.namprd11.prod.outlook.com ([fe80::f925:7c4b:8747:4549]) by SJ0PR11MB5600.namprd11.prod.outlook.com ([fe80::f925:7c4b:8747:4549%3]) with mapi id 15.20.7091.022; Wed, 13 Dec 2023 08:35:50 +0000 From: "Cui, Lili" To: "Beulich, Jan" CC: "Lu, Hongjiu" , "binutils@sourceware.org" Subject: RE: [PATCH v3 4/9] Support APX GPR32 with extend evex prefix Thread-Topic: [PATCH v3 4/9] Support APX GPR32 with extend evex prefix Thread-Index: AQHaHqSBoOJdrIV6akyqA3/eSh9S+7Cd12QAgAEdKVCABOfkAIABttZAgAA3wYCAATA8gA== Date: Wed, 13 Dec 2023 08:35:50 +0000 Message-ID: References: <20231124070213.3886483-1-lili.cui@intel.com> <20231124070213.3886483-4-lili.cui@intel.com> <546c8890-0526-49a3-8310-319358bf55c2@suse.com> <0bb5fbcd-f58e-48ad-a5ee-3413b026f903@suse.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ0PR11MB5600:EE_|PH0PR11MB5016:EE_ x-ms-office365-filtering-correlation-id: f5a99431-5d1f-4a3d-b99f-08dbfbb68305 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Tm0K+d+zsQunmbRx1zuSz03JF7o0fW9CfsVG2L0J1jCye9ATfHVAYHHDKyNybZqBe4qQXlrW5NYdZnCQ43sI0Q6xknyTXAPT20yZItJR85gIyuoC1aJuNVKuppZSgiRHD63hmgUuQDGk8TvQcJPZRv2v8skm6cwJp2PcxEkBX3C3A3tXeBdDoGz9MBbNcKgxM46yHpQTUpa2oBFwbBMm+VVDaiFIIQStMo1Abit9VU06nflqm5u69iD9SGbK+J7DCaz1LEuVIKkdyO1J9fX9UpmgIm5dFtWRqBpLBsHSPclkVT+1b0zggKmhCa2czVmralbCa8Z6H8eAi5nggqs2S/AOvC5dTRGm82NoQsFUMn6F80e6WEWBqPUqa/RdS2L4n2C4Ou5VvrHQ5aAi5oNz2axYSEbk/mkWjXpp67uPggt++pw5lCpyVrQcVk2QWwyNy3U4OXGXpYQGAxEXHgbJN2+4Yz4lbnI5Bqtph5rfSBINLh8btWNTffMaSUjE2ja3KbMfYAW1TZBNKKyk/xEnIHVgXd3LF6oJNPKGszqNtkZxCwQcyP6jLVp3U16Qka2UFl9P8YAz6aKMDQvRAC/sWaI6JfAAKDjpRJR1aAarr8onJzGw2nLsCQzngzs2Rky2 x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR11MB5600.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(376002)(136003)(346002)(366004)(39860400002)(230922051799003)(451199024)(1800799012)(186009)(64100799003)(316002)(54906003)(6916009)(6506007)(66476007)(64756008)(66946007)(66556008)(66446008)(76116006)(9686003)(71200400001)(26005)(38070700009)(122000001)(7696005)(86362001)(82960400001)(38100700002)(33656002)(41300700001)(478600001)(66899024)(52536014)(2906002)(55016003)(5660300002)(4326008)(8936002)(8676002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?aFlXVkNwUEplWjd6SDBxZXkxMzdvL2lheldYU01IaWdpZFd5MmF4S2xoZSs1?= =?utf-8?B?VXBIanlSRHZ5T0piZVJFcmtIYzRMTTM5N20vTlRWaXF6YVROa1VmaFlqSjAx?= =?utf-8?B?MU1PVituWFFRcEJGVmJnSnZYMTJCaXdzdHIxeFByY1hpMWIxSTdEZy96NXVQ?= =?utf-8?B?c1B1VXRKYitBK256SXBVZmJVajlqYmFWUHI4ei9DdU9YOG5jQktHUzVoTElZ?= =?utf-8?B?bGxONGJLSURJRVlBMW1xUVpJcWh1ZmtQSnF2UGxydEdRdVZKSHppSHR0T3Rs?= =?utf-8?B?SnZGWnFRK3Y1ejd2N0Z6Z09SK0lmQXZYM0ticENFOFF2eUkyVzRLd1NZb1hL?= =?utf-8?B?R28wQ2pyY3FNT254d282UmJvekNocFR4ZTBnSk9sbnY0aUFVTXQwNFJuemFV?= =?utf-8?B?OGJPTEFhWVRDQkxDTStTN0NnSzN3YUVZRjllQ0JIb2dFcjBMU2lyazZlaUp0?= =?utf-8?B?UG1IWnpnOEozaU5jTktOUjFBa1hhcHRrdGhuRkJ5bDE1MkdrcTNmZWU5R2xI?= =?utf-8?B?QkthY1Q2VW1yZGNwcVBsRnR6Q2Nld1o0Qit0czdQWHJJQzNPd2dMeGF0d05y?= =?utf-8?B?VENOR1BhSVRucHFjblpPMmw1bDBqOUJZR3RoTEhKcklQZHNJb1FkMVdvZENH?= =?utf-8?B?aHU3bDR2V3dsM1pKK2sxMWxyRzhjWFRLOWZIMDZta3hOR0Q1RE1Xa1lGdEUw?= =?utf-8?B?Z0pIMVB4OXIwY0FMR3haYXFucmlodXp0dTJUUjJRQnhBZVFYdGV1OWRJam9s?= =?utf-8?B?d0IvTXJGdlpQZDNVY0xnVWRTUDkrVUVTWGlzOE1pWkQrcFhEUWoxNGg5c0Uy?= =?utf-8?B?a2JLRm5XY2R3bGdLTzE1WVJ2T09NcytpdWI4a1NockhGVTlOUDBNOTRhTk80?= =?utf-8?B?WGlEVi9NVUdvM25SMmF0NmVkQWduL3FGYWhyRUVIM2NxSVdVK3NqdkRyOVln?= =?utf-8?B?aVBxcHY4TXBPQWE5dndHaFBvbG00QkQ5ajg1Uks1ZDIrN3hNekV5OXZTa3Vi?= =?utf-8?B?bHYwMGZCNHBCajI3YWkvd21xOEdFb1IwVzNxU24wbzdGenFReWNZckMvWERu?= =?utf-8?B?eUJGdkFLY21jSHRYNTVOWEVFemhIQnJOQzh1eHM3RG4vclh6b0JHdmE2WXdM?= =?utf-8?B?enpQVXBjeCtwejBuN1pnQ3lMQ3FBQWgxYWpUYUZqSFlQWGRLODdjM2RsU2lR?= =?utf-8?B?L0RLb3gyTlRrcjJId21pcmZxTFNnVkZaNzFFZlNQQjRBTjlGUnV2RDdGY1Bw?= =?utf-8?B?alJPdC9hTVRCT2R4OTBwTXphR0kyS2o4aG1ReHdCcjZEc2JQYklyRFkxM0tH?= =?utf-8?B?S1lIYzRYcVdwMldaV0t3K0hIKzc3RUw1d1lNeXJYUjExVmhhYkNhUzI0SVNM?= =?utf-8?B?bzNRZ1FuRlpMU1RDQlNacnd2QWVSeElsd09UU2ZYQkpNb3JuR1Jvak5BZmRx?= =?utf-8?B?NTFkbmplU1dybklhd3c3dGR3RU5XVmo1UDU3VlBTR2ZoQnVSYU5nRUtwSXBH?= =?utf-8?B?c2lsMXcwSFJRWTBrTkJkYlhURktjYWVQeUxRbzhBL1k0c1BBR1JUMzBCZ1NI?= =?utf-8?B?R1Z0ZXJCWURONnZmV2JIWjJVTVBsKzlWWlk1dEh1MDlnWTRMLzFGcWN5SWtv?= =?utf-8?B?QXBPVFV4QXpQSTNsUDVWSU9DcXRJR3hNUXlXck9yVUFYL0UwbU5IcU9KejFC?= =?utf-8?B?K3IvZjl6aG55dXpRZzUwUXY3cEhqUm9UMTNzTmFzK3RFOVBHOFBUMFZKU3g1?= =?utf-8?B?QzRZZmY4WldaaE9ZRzJrbHlLVDdaV2JJS1hHRW1OcjdJeFd2YllzSlJTNG9W?= =?utf-8?B?QUJuYmxuRnc1Ly8wT1A4T3ZoT3NDclJ2RUpBV2ZhelQvL3NzaUYzblkzbVNB?= =?utf-8?B?RituSG5zdDk2cFBaaDZTNmlaTlhldmRWWnhtTUpsd1lKSHRncTJmbjZkbFdm?= =?utf-8?B?czBqbTBYaVRzYjI3am1MeU95TGs2V1YrbkprbUU3bnJYTDQvTEN2UGRRMTB2?= =?utf-8?B?U2tkRXkyZ1dscUVIZlpIQ0VEcStqZkRmMHVuRzE2bGdIRllsa1dROUliMDBJ?= =?utf-8?B?NzNlNngxZnovby9FaDlkYUtwUHh6aWlOL1ExNjBiNXlVTVFhMFdHaFhKc2Rp?= =?utf-8?Q?/oeM=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SJ0PR11MB5600.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f5a99431-5d1f-4a3d-b99f-08dbfbb68305 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Dec 2023 08:35:50.3367 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: p2/fUu25XpUicKIs3lACUoG5BeXMIbAmQYyUe+eA1F0hLd81eiD2S4YM4akTI2IVxbIG8ag8LnOYD2EaI4PwCg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5016 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-4.5 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,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: PiA+Pj4+PiBAQCAtMTQyMzMsNiArMTQyNzYsMTIgQEAgc3RhdGljIGJvb2wgY2hlY2tfcmVnaXN0 ZXIgKGNvbnN0DQo+ID4+Pj4+IHJlZ19lbnRyeQ0KPiA+Pj4+ICpyKQ0KPiA+Pj4+PiAgICAgICAg aWYgKCFjcHVfYXJjaF9mbGFncy5iaXRmaWVsZC5jcHVhcHhfZg0KPiA+Pj4+PiAgCSAgfHwgZmxh Z19jb2RlICE9IENPREVfNjRCSVQpDQo+ID4+Pj4+ICAJcmV0dXJuIGZhbHNlOw0KPiA+Pj4+PiAr DQo+ID4+Pj4+ICsgICAgICAvKiBXaGVuIHVzaW5nIFJlZ1JleDIsIGR1YWwgVkVYL0VWRVggdGVt cGxhdGVzIG5lZWQgdG8gYmUNCj4gPj4+Pj4gKyBtYXJrZWQgYXMNCj4gPj4+PiBFVkVYLg0KPiA+ Pj4+PiArCSBGb3IgdGhlIGxhdGVyIGluc3RhbGxfdGVtcGxhdGUgZnVuY3Rpb24uICAqLw0KPiA+ Pj4+PiArICAgICAgaWYgKGN1cnJlbnRfdGVtcGxhdGVzLT5zdGFydC0+b3Bjb2RlX21vZGlmaWVy LnZleA0KPiA+Pj4+PiArCSAgJiYgY3VycmVudF90ZW1wbGF0ZXMtPnN0YXJ0LT5vcGNvZGVfbW9k aWZpZXIuZXZleCkNCj4gPj4+Pj4gKwlpLnZlY19lbmNvZGluZyA9IHZleF9lbmNvZGluZ19ldmV4 Ow0KPiA+Pj4+DQo+ID4+Pj4gSSdtIGFmcmFpZCBJIGRvbid0IHVuZGVyc3RhbmQgdGhlIDJuZCBz ZW50ZW5jZSBvZiB0aGUgY29tbWVudC4gVGhpcw0KPiA+Pj4+IG1heSBiZSByZWxhdGVkIHRvIG15 IHF1ZXN0aW9uIHJlZ2FyZGluZyBjcHVfZmxhZ3NfbWF0Y2goKSBmdXJ0aGVyIHVwLg0KPiA+Pj4+ DQo+ID4+Pj4gVGhlIGZpcnN0IHNlbnRlbmNlIGlzbid0IHF1aXRlIGNvcnJlY3QgZWl0aGVyIC0g eW91IGRvbid0IG1hcmsgYW55DQo+ID4+Pj4gdGVtcGxhdGUgaGVyZSAoYW5kIHlvdSBjYW4ndCwg YmVjYXVzZSB3ZSBkb24ndCBldmVuIGtub3cgeWV0IHdoaWNoDQo+ID4+Pj4gdGVtcGxhdGUgd2Un cmUgZ29pbmcgdG8gdXNlKS4NCj4gPj4+Pg0KPiA+Pj4+IEZpbmFsbHkgLSBkbyB5b3UgcmVhbGx5 IG5lZWQgdGhlIC5ldmV4IGNoZWNrIGhlcmU/IChJIHdvbid0IGV4Y2x1ZGUNCj4gPj4+PiB0aGF0 IHRoaXMgeWllbGRzIGEgYmV0dGVyIGRpYWdub3N0aWMgaW4gY2VydGFpbiBjYXNlcywgYnV0IHRo aXMNCj4gPj4+PiB3YW50cyBjbGFyaWZ5aW5nIGlmIHNvLikNCj4gPj4+Pg0KPiA+Pj4NCj4gPj4+ IElmIHlvdSBsb29rIGF0IGluc3RhbGxfdGVtcGxhdGUoKSwgeW91J2xsIHNlZSB0aGF0IGJlZm9y ZSB0aGlzDQo+ID4+PiBmdW5jdGlvbiB3ZQ0KPiA+PiBuZWVkIHRvIGtub3cgaWYgdGhlIGN1cnJl bnQgZW5jb2RpbmcgaXMgZXZleC4NCj4gPj4NCj4gPj4gIlRoaXMgZnVuY3Rpb24iIGJlaW5nIGNo ZWNrX3JlZ2lzdGVyKCk/IElmIHNvLCB0aGVuIG5vLCB3ZSBjYW4ndCBrbm93DQo+ID4+IHVwIGZy b250IHdoZXRoZXIgRVZFWCBlbmNvZGluZyBpcyBnb2luZyB0byBiZSBuZWVkZWQsIGFzIG9wZXJh bmQNCj4gPj4gcGFyc2luZyBoYXBwZW5zIGFoZWFkIG9mIHRlbXBsYXRlIHNlbGVjdGlvbi4gSWYg aW5zdGVhZCB5b3UgbWVhbg0KPiA+PiAidGhhdCBmdW5jdGlvbiIgYW5kIGhlbmNlIGluc3RhbGxf dGVtcGxhdGUoKSwgdGhlbiB5ZXMsIHdlIG5lZWQgdG8ga25vdw0KPiB3aGV0aGVyIHRvIHVzZSBF VkVYIHRoZXJlLg0KPiA+PiBZZXQgaG93IGRvZXMgdGhhdCByZXN1bHQgaW4gYSBuZWVkIGZvciB0 aGUgLmV2ZXggY2hlY2sgaGVyZT8gKE9yDQo+ID4+IG1heWJlIHlvdXIgcmVwbHkgd2FzIHJlYWxs eSB0byB0aGUgZmlyc3Qgb2YgdGhlIHRocmVlIHBhcnRzIG9mIG15DQo+ID4+IGVhcmxpZXIgb25l PykNCj4gPj4NCj4gPg0KPiA+IEFncmVlIHdpdGggeW91LCBwdXQgdGhlbSBoZXJlIGlzIHVucmVh c29uYWJsZS4NCj4gPg0KPiA+IEZvciBleGFtcGxlDQo+ID4NCj4gPiB2dGVzdHBzICglcjI3KSwl eW1tNg0KPiA+DQo+ID4gd2Ugc2hvdWxkIHJlcG9ydCB1bnN1cHBvcnRlZCAgRWdwci4gQnV0IHdp dGhvdXQgLmV2ZXggY2hlY2ssIGl0IHdpbGwgcmVwb3J0DQo+ICJFcnJvcjogbm8gRVZFWCBlbmNv ZGluZyBmb3IgYHZ0ZXN0cHMnIg0KPiA+DQo+ID4+IEJ1dCBhbnl3YXkgLSBhcyBzYWlkIGVhcmxp ZXIgb24sIHVzaW5nIGN1cnJlbnRfdGVtcGxhdGVzIGhlcmUgbG9va3MNCj4gPj4gd3JvbmcgaW4g dGhlIGZpcnN0IHBsYWNlLiBjaGVja19yZWdpc3RlcigpIGRlYWxzIHdpdGggb25seSBhDQo+ID4+ IHJlZ2lzdGVyLCB3aXRob3V0IHJlZ2FyZCB0byB0aGUgY29udGV4dCBpdCBpcyB1c2VkIGluICh3 aXRoIHRoZSBzb2xlIGV4Y2VwdGlvbg0KPiBvZiBhbGxvd19wc2V1ZG9fcmVnKS4NCj4gPj4gTWF5 IEkgcmVtaW5kIHlvdSB0aGF0IGVhcmxpZXIgb24gSSBhbHJlYWR5IGluZGljYXRlZCB0aGF0IEkg c3VzcGVjdA0KPiA+PiB5b3UnbGwgbmVlZCBhIG5ldyBlbnVtZXJhdG9yIHRvIHB1dCBpbiBpLnZl Y19lbmNvZGluZyBmb3IgdGhpcyBuZXcNCj4gcHVycG9zZT8NCj4gPj4NCj4gPg0KPiA+IElmIHdl IGRvbid0IHB1dCBpdCBpbiBjaGVja19yZWdpc3RlcigpLCB3ZSBuZWVkIHRvIGFkZCBhIGZvciBs b29wIGF0IHRoZQ0KPiBiZWdpbm5pbmcgb2YgdGhlIGluc3RhbGxfdGVtcGxhdGUoKSB0byBjaGVj ayBSZWdSZXgyLiBEbyB5b3UgdGhpbmsgaXQgaXMgb2theT8NCj4gT3IgY3JlYXRlIGEgZnVuY3Rp b24gZm9yIGl0Lg0KPiA+DQo+ID4gZm9yICh1bnNpZ25lZCBpbnQgb3AgPSAwOyBvcCA8IGkub3Bl cmFuZHM7IG9wKyspDQo+ID4gICAgIHsNCj4gPiAgICAgICBpZiAoaS50eXBlc1tvcF0uYml0Zmll bGQuY2xhc3MgIT0gUmVnKQ0KPiA+ICAgICAgICAgY29udGludWU7DQo+ID4NCj4gPiAgICAgICBp ZiAoaS5vcFtvcF0ucmVncy0+cmVnX2ZsYWdzICYgUmVnUmV4MikNCj4gPiAgICAgICAgIGkudmVj X2VuY29kaW5nID0gdmV4X2VuY29kaW5nX2V2ZXg7DQo+ID4gICAgIH0NCj4gPg0KPiA+ICAgaWYg KChpLmluZGV4X3JlZyAmJiAoaS5pbmRleF9yZWctPnJlZ19mbGFncyAmIFJlZ1JleDIpKQ0KPiA+ ICAgICAgIHx8IChpLmJhc2VfcmVnICYmIChpLmJhc2VfcmVnLT5yZWdfZmxhZ3MgJiBSZWdSZXgy KSkpDQo+ID4gICAgIGkudmVjX2VuY29kaW5nID0gdmV4X2VuY29kaW5nX2V2ZXg7DQo+IA0KPiBB cyBhIGxhc3QgcmVzb3J0IHRoaXMgbWF5IGJlIGFuIG9wdGlvbi4gQnV0IHVudGlsIG15IHN1Z2dl c3Rpb24gd2Fzbid0IGF0IGxlYXN0DQo+IHRyaWVkIG9yIGRlbW9uc3RyYXRlZCB0byBiZSB3b3Jz ZSwgSSBkb24ndCB0aGluayB0aGUgYWJvdmUgd291bGQgYmUNCj4gYWNjZXB0YWJsZS4NCj4gDQoN Cj4gPj4gTWF5IEkgcmVtaW5kIHlvdSB0aGF0IGVhcmxpZXIgb24gSSBhbHJlYWR5IGluZGljYXRl ZCB0aGF0IEkgc3VzcGVjdA0KPiA+PiB5b3UnbGwgbmVlZCBhIG5ldyBlbnVtZXJhdG9yIHRvIHB1 dCBpbiBpLnZlY19lbmNvZGluZyBmb3IgdGhpcyBuZXcNCj4gcHVycG9zZT8NCg0KSmFuLCBJIGRp ZG4ndCBnZXQgeW91ciBwb2ludCwgSSB0aGluayB0aGUgZW51bWVyYXRvciB2ZXhfZW5jb2Rpbmdf ZXZleCB3b3JrcyB3ZWxsLCB0aGUgcXVlc3Rpb24gaXMgaG93IHRvIGZpbHRlciBpZiBFZ3ByIGlz IHVzZWQgaW4gdGhlIGN1cnJlbnQgaW5zdHJ1Y3Rpb24sIHdlIHNob3VsZCBtYWtlIGEgY2hvaWNl IGJlZm9yZSBpbnN0YWxsX3RlbXBsYXRlLCB3aGV0aGVyIGl0J3MgYW4gZXZleCB0ZW1wbGF0ZSBv ciBhIHZleCB0ZW1wbGF0ZS4NCg0KVGhhbmtzLA0KTGlsaQ0KDQoNCg==