From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.88]) by sourceware.org (Postfix) with ESMTPS id A28C83858CDB for ; Wed, 18 Oct 2023 10:44:21 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org A28C83858CDB 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 A28C83858CDB Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=192.55.52.88 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1697625864; cv=pass; b=D3bbqRG6dNoKzQYnRxaTj7lP6ZKub7o0WTsUQW7vp3nHCZ9wJc/Q29+knVVuHMJwd/FQLWMBpvGmFUV5rTn9/cjEWO4ViLiATKRoo2HaTZ8/F/fhj8SyWDe4YtSr48l5/Rs+vHsS2ycHi8e4Xy8N+5QdBGlKtelIYtO9T41XDhs= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1697625864; c=relaxed/simple; bh=jBwoy0H98nMpxFuKiZHMBA/wFCVgrJS4Jo1IUHJOa/w=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=IG5YtN6AFVoud5vWdDp2T+mYUY++eVM2TtuWLszbe6OxW7ygNR0vRlJ0693V1uvngjiL7j4yo6kM3Ji+eFa2hwKeFynoQTesDQrJFZZ7FGt/3aMM5QSn189SmqR2nmNshoOf6qS9slKS56MYRGqHqWOuLHngEmMHbSwmg32teU8= 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=1697625861; x=1729161861; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=jBwoy0H98nMpxFuKiZHMBA/wFCVgrJS4Jo1IUHJOa/w=; b=YEiPI0rShz3bQF0ePCWMK/xhxLRkSLPau/J0LGYxaCXcb9LnnMVP/QMz jVAxKbLnTWDRNfuZlxsNZ5mCbtfN+edZBiY8irYu5S3bHlV9hQ/zhfhFc c4JyecCn+PAsFtSkXq0V4fDLxaC/gI0bAGRG2qxboB5Xvjogy1PjJy/yA 7OXB4gspS50KiTUNxJcXHtL+GHxvwLieP2uTC0DfcwUY2YT8wJgsi3XZk L/XzNtJYHam/lDAE/9b0UpTZxuu6WYw755QbTMDdY5NCLAFcS7Joaipxr E2ojjJNL6iy0tQh+MAhRDF74SiSjjAqCpMeHOaKoEwwD3Zs4uL2mDXolj w==; X-IronPort-AV: E=McAfee;i="6600,9927,10866"; a="417101677" X-IronPort-AV: E=Sophos;i="6.03,234,1694761200"; d="scan'208";a="417101677" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Oct 2023 03:44:20 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10866"; a="872980583" X-IronPort-AV: E=Sophos;i="6.03,234,1694761200"; d="scan'208";a="872980583" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga002.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 18 Oct 2023 03:44:20 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) 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.32; Wed, 18 Oct 2023 03:44:19 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.32 via Frontend Transport; Wed, 18 Oct 2023 03:44:19 -0700 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.101) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.32; Wed, 18 Oct 2023 03:44:19 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FuDWF3FQ6HHEPBkgxWHeRu4p+HzGJdecjjnz+xrefJBtkb6XWyysJTBVbEoqPtT4mh+wFqoNXYhF9+pLL3TN8a1DGwUiucB7dkd5jyTNgzoaBbfLvoIzle9UKqLbUVApw37eRPKcnktRAEczjfitda2m1emKTJiBm/mcTXALFO/AmU2++4//OlFlkYNG1b5JN1U2H0YHeH/HC6njE5tYeihNye0Zo8z0mBUtR6gKvyQhG5TGnvzD84n0MhkME+Xo6/nukX7+r+PQoo4Ensw+mqyAO31zeCesOQGhNdZuLmEJ+VkRSUw4VKTsLryArCyfIIEPfmD/OoTtDaEn98dI+w== 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=jBwoy0H98nMpxFuKiZHMBA/wFCVgrJS4Jo1IUHJOa/w=; b=lIWkDiXyCvgofKs7DakLHA5lsFLvEDbFr8DZ2UJNBYejQEpDVvkbkXpXMXor3ifwH2cvusVwq63PyhxlMaeXDOQ4086wIWBdklxTPNidig/u/t/zLvNzmZwlv+tk0NqrpdUZdsdDGM1BLJ8r7tTktEemooWJS/xj6l4Nao59y8+Y1S8lar9U9Xe2NEki1XZQO9EoOOqQlAh46YcN6p1D9hctjFfQ1gnXuf9Rd4DP5X2+DCttvY1QQFjqe5Pe4GvpjEFmmb2NQr6TI//fPHJ/vEhkoF13153eJX9ROuOt2yFcjeYMNFsWSxIwEZBOLkEx3xMBdkLiXd0FlYxthLk4UQ== 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 SA1PR11MB6941.namprd11.prod.outlook.com (2603:10b6:806:2bd::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Wed, 18 Oct 2023 10:44:11 +0000 Received: from SJ0PR11MB5600.namprd11.prod.outlook.com ([fe80::1e00:3b04:bfe7:41f7]) by SJ0PR11MB5600.namprd11.prod.outlook.com ([fe80::1e00:3b04:bfe7:41f7%3]) with mapi id 15.20.6886.034; Wed, 18 Oct 2023 10:44:11 +0000 From: "Cui, Lili" To: "Beulich, Jan" CC: "Lu, Hongjiu" , "binutils@sourceware.org" Subject: RE: [PATCH 2/8] Support APX GPR32 with extend evex prefix Thread-Topic: [PATCH 2/8] Support APX GPR32 with extend evex prefix Thread-Index: AQHZ6w3MWKsf5i0yDkqFor4PT/spz7AmpGmAgBkSn6CAD47wgIAAHNXQ Date: Wed, 18 Oct 2023 10:44:10 +0000 Message-ID: References: <20230919152527.497773-1-lili.cui@intel.com> <20230919152527.497773-3-lili.cui@intel.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_|SA1PR11MB6941:EE_ x-ms-office365-filtering-correlation-id: a380c159-79fa-4f4c-5125-08dbcfc729d2 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: AWNuQ+fyVy6nKnZBZx60lumwUv2+3KVM2y8lCJIljhiKl3YWfN60fTLJXfdpLwJjcNwGBI850Al8gMIU2yOJMsq0DB/F1FkyFxiNK3PbWBD+3s7LJcw6Ty6/EjGOFpZ9qtfpY6Elk40IJxJ+NUr9aT9pMYqusfB+iDkeTxda3Ygt9hzONuo7k0cmi6lMw+crPniSDes4tdq//+YhNz41Y7+a8mMEtaXwkR/wFyiz97dC6n3WmezMGGAugmjcVL3BFGArL0rPQXT5466J/jqNwa3ditGaOlnEFSqnUgJ7arlvGXNwp4/Y51YB9zIC/5ISaFvwJ/oPdO37gTUAH4TF48PbJSMqgCEwmXIEdjWLLGriC8Dom63u5BNRGrNLvLowmt/P8OxzvhWqXpMelBmRV+nv1js0FulfUcCHs5UkcGC/v628JUF+PZFWYZSTvr3Oqhk7AQDUFhUTERkDizqDrbzzSg9JEh6vmQJMZH1zpAE93cDYHG6BE+GXNcsEj3GKcVVYRLrS7kjNQis8QB08QAJDJ0PfgDYzzU8dDCzTzIbs3hZ33giRmlDolTMvwwCujfpa99pm6YdVFdLLNMJy/KP8PPeQL5p24BFlqW6GDAZukSMCtv8M9YCpwoXcjNUN 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)(39860400002)(396003)(136003)(376002)(346002)(366004)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(9686003)(55016003)(38100700002)(38070700005)(82960400001)(122000001)(33656002)(86362001)(52536014)(478600001)(4326008)(8936002)(2906002)(54906003)(66946007)(316002)(66556008)(6916009)(5660300002)(64756008)(66446008)(66476007)(41300700001)(76116006)(8676002)(71200400001)(7696005)(6506007)(83380400001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WHRBRWtUK3B1YnZ2bHM1Q0NLOW9mTXdPdTJlYWI5QTlwWFFRWGh0QmM3V01O?= =?utf-8?B?QXV3SmhpTElZUjE5dWVXOVN4SVhiRnllSldtWHJ4TDUxV0ZtajMvRTVHRkF2?= =?utf-8?B?YnBIeC9vUGxscGdpNTM1VEsreTlReUtoR2pGYm5jdlQwZldqeXlLNHRlQ2hj?= =?utf-8?B?akUxN3F4Si8zbllLZUkvMzBJdHZHdzFmNU15RTdNSEtlWTNaZDRWcHFSMEVa?= =?utf-8?B?eUdTK2hwRnFRSldCSXNNWERqTDZrdkQwNTRLb1NBTC82Q0cxc2lXTWQvZEQ4?= =?utf-8?B?OExYZ1YvS0YyTzB6UEgvcFg0eVNwcWloKzFhTDh1UWt4UkNXYWlWT214ZHU5?= =?utf-8?B?cFc1a0wrNjFlUm9RL1I3dTdpT3RnZ1lReFlrZXE4V0tyYW1TQjNiTTFwVnF0?= =?utf-8?B?YWFtNzZ3ejFNaTZpdzBXMHlWajNvYXh3REFEc0lQSHdZa29SS1NaaUNYRkVu?= =?utf-8?B?RWhoRzF5RUZYQ2EzNGUzOGJITkxUN210d1ZZanp5ZFp6QzgyUkd5YjZ4aHJh?= =?utf-8?B?TWJjdDlRME5CL1Y1dFp5TDRCSjNJWHZ1eWIvL1NPWU1kL29hbTlHYUU4WDdz?= =?utf-8?B?bDFuUitaekZjeDVSQmxRQmlSQkc0V3hnKzZFWXpONDh2TDNzYlE2WXJrMGdt?= =?utf-8?B?cE9NVlNrTHMya1l3L0tWcUpDNzdVK3FSYS9qSEZkMU9hU2w2OVE1QytVaEtH?= =?utf-8?B?ckFhVWZtYTY2RVRaanZHYXRVM2R3Y0psOGs2QzhiSXJHR3ovN2dzUWFrTjRa?= =?utf-8?B?cWEraVdsUUE1dVlNTmV5dDRtYmY1TFNjUG9BUyt3eVNnZndvYTR0ZGErN0ty?= =?utf-8?B?Z3lFbWEvNmhMaEVsOU80MVYyb25IWWlrb3VRT0F0djFiTHk3SnJFeVNmZzVC?= =?utf-8?B?M25CdFVBbDd5TEZ6RS8zaUdTcHpaeElHUXZuSE9ObWFCekpHTEtVUXRNcUNr?= =?utf-8?B?RFh6dXRwQmV3RHdjRzRUa0pUazBUNXV5YXhvSDlCVWdMV0dodGVwbUplRUxq?= =?utf-8?B?K1E3SzE3a3YvS2RtU3lPaFZqT3dTYkJydk13NE5GZFBtOE4zVTJUYjlaVTBY?= =?utf-8?B?a3Y0cSsyV0NWUFUyckNibDRJaCsva1FPZmpoWnI0RHlGK0ZVa2Z4emZFMndK?= =?utf-8?B?QlZ3d1dsVDZoL1QySllBaDhZcWNramxqTE9jaWlDSHhzdTFQUkhjREZUbmpV?= =?utf-8?B?a2dVTkxwYmRYdFdqbTlGdHVhUGt4UFdaalhkVkJaN0JaUCthcEFqV2J1NFlK?= =?utf-8?B?SFhyaXNWSmN5ZVc0VmxHK0xVVHJBemE1WUZ3TUJ3RE9XR1RFT0pyTXhnNEdB?= =?utf-8?B?ekc0V1RHcVo5TDNYMkdtaHpGcEN1M3VONUs2eEtEWU5aVjRyRFZDYmFwQW8v?= =?utf-8?B?S1RxSHZTK1ZseDFSYWhrSFZlOFcreXh5Y0xLSTB2ZHJER3ZMbG1hK3RpakYz?= =?utf-8?B?enJxcXp5bWgvWkFPR2FHRHJNVW9SWTloNXhyMXFZSzFzdUNYbUd5VW9CalZm?= =?utf-8?B?bUFOUmpCc2p0dkZyZzUwdFRKRnZCbUFpKzRDazFhcm1lS0xCUmRTSmRsYUdT?= =?utf-8?B?RGFlMGJzdjRxSVRURXpPVmZOZ2FYTDVIQTRlLzlBdzBreFJJZUZrQjJBNW5B?= =?utf-8?B?cTJqU3JrR29WYXJMMW5LR1Npay9xNHpDMXdLcFptdEFac1ptS2Q3Tmc4UXBZ?= =?utf-8?B?SHcra29aOCsweU5MbjBZRW03VFBCOElxSURoWm1xdGU5RS9PeS8vcGpTWVZy?= =?utf-8?B?ZGVPVjNONVRxWkEwcW1QOXBDMFdueEJydXM2Mkd0T3M4enJ1Rk00RHV3ejhE?= =?utf-8?B?eWRuR201L25mODlhRXUzemdEQXgxVmh1R3czWWdVb2hmUDh6T0hvY0ZhWVJJ?= =?utf-8?B?VUU3Q1VUM3BySEdvMi9TazlwSFFKTndDcU1nL05STG44amQ2RHBIbzdHeWNU?= =?utf-8?B?ZWk0d29XQ0I3cmUxWWtCM2RjMzhFZEt5VE8xckhka2lCTitKaGxsampDaGJK?= =?utf-8?B?Snd3UWxXbldzWDl3ZXRwWkpOb1pEMkNVQjdHdy9DQVovbHhUek9BWHJSaHBo?= =?utf-8?B?VGpOMzVwT2hPUVRjTVBhckMyOW5nZVN6WHRVN1lkMzRzenhEVFJ4RFdGV3Mr?= =?utf-8?B?bUNRaTh5RlJiRFFzMGt3MXJhd2pqb2gvRGhVYVRpa2FNdWdGZWVmVTBkYkRp?= =?utf-8?Q?PXsUfVtmW5aJ+6jelVJsB+NyBR83QNfxJTHUlbKbvdgc?= 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: a380c159-79fa-4f4c-5125-08dbcfc729d2 X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Oct 2023 10:44:11.0112 (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: kAeo35/a2SA+eelWYP3FN9CjFimTYAtS+U4VoyEouM7aZJFe3WvPHIB14qUcM3hg/M6x1lHSawKwr8tt2OqP4A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR11MB6941 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-5.5 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H3,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: PiBXaXRob3V0IHNlZWluZyBob3cgdGhpcyBpcyB1c2VkIEkgY2FuJ3QgY29tbWVudCBvbiBpdC4g SXQgZmVlbHMgdGhvdWdoIGFzIGlmIHlvdQ0KPiBtYXkgbm90IGhhdmUgZnVsbHkgdW5kZXJzdG9v ZCBteSBlYXJsaWVyIHJlcGx5OiBFdmVuIHByaW9yIHRvIEFQWCB3ZSBhbHJlYWR5DQo+IGhhdmUg Y2FzZXMgd2hlcmUgb25lIENQVSBzcGVjaWZpZXIgaW4gdGhlIG9wY29kZSB0YWJsZSB1c2luZyB8 IG1lYW5zICJib3RoIg0KPiBhbmQgYW5vdGhlciBtZWFucyAiZWl0aGVyIi4gSSB0aGluayB3ZSB3 YW50IHRvIHNwbGl0IHRoYXQsIGFuZCB0aHVzIHNpbXBsaWZ5DQo+IHRoZSBsb2dpYyBpbiBjcHVf ZmxhZ3NfbWF0Y2goKS4gVGhhdCdzIHNlcGFyYXRlIHByZXJlcSB3b3JrLCBvZiBjb3Vyc2UuDQo+ IA0KPiBUaGluZyBpcyB0aGF0IHByaW9yIHRvIDczNGRmZDFjYzk2NiB0aGlzIHdvdWxkIGhhdmUg YmVlbiBwcm9oaWJpdGl2ZWx5DQo+IGV4cGVuc2l2ZSBpbiB0ZXJtcyBvZiB0YWJsZSBzaXplIGdy b3d0aC4gQnV0IG5vdyB3ZSBjYW4gYWZmb3JkIGhhdmluZyB0d28NCj4gaTM4Nl9jcHVfYXR0ciBm aWVsZHMsIG9uZSBtZWFuaW5nICJhbGwgb2YgdGhlc2UiLCB0aGUgb3RoZXIgbWVhbmluZyAiYW55 IG9mDQo+IHRoZXNlIi4gVG8gbGltaXQgY2h1cm4gaW4gdGhlIG9wY29kZSB0YWJsZSwgSSdkIGJl IGluY2xpbmVkIHRvIGNvbnRpbnVlIHRvDQo+IGV4cHJlc3MgQ1BVIHJlcXVpcmVtZW50cyBpbiBh IHNpbmdsZSBmaWVsZCB0aGVyZSwgdXNpbmcgZS5nLg0KPiAoQ3B1QXxDcHVCKSZDcHVDJkNwdUQg KENwdSBwcmVmaXhlcyByZS1hZGRlZCBoZXJlIGZvciBjbGFyaXR5LCBldmVuIGlmDQo+IHRoZXkg YXJlbid0IHByZXNlbnQgaW4gdGhlIG9wY29kZSB0YWJsZSBhbnltb3JlKS4NCj4gDQo+IEknZCBi ZSBoYXBweSB0byBkbyB0aGF0IHByZXJlcSB3b3JrIChpZiB3ZSBjYW4gYWdyZWUgb24gdGhlIGFw cHJvYWNoKSwgYnV0IGl0DQo+IG1heSBtZWFuIGEgbGl0dGxlIGJpdCBvZiBkZWxheSwgYXMgYWZ0 ZXIgbXkgdmFjYXRpb24gSSBuZWVkIHRvIGNhdGNoIHVwIHdpdGggYQ0KPiBmZXcgb3RoZXIgdGhp bmdocyBmaXJzdC4NCj4gDQoNCkl0IHdvdWxkIGJlIGdyZWF0IGlmIHlvdSBjb3VsZCBkbyB0aGlz IChhZ3JlZSB3aXRoIHRoZSBhcHByb2FjaCksIGl0IGlzIG5vdCBodXJyeSwgaXQgbWF5IHRha2Ug YSBsb25nIHRpbWUgdG8gY29tbWl0IHRoZSBBUFggIHRvIHRoZSBtYXN0ZXIuDQoNCj4gPj4+ICsg IGlmIChpLnByZWZpeFtEQVRBX1BSRUZJWF0gIT0gMCkNCj4gPg0KPiA+Pj4gKyAgICB7DQo+ID4N Cj4gPj4+ICsgICAgICBpLnRtLm9wY29kZV9tb2RpZmllci5vcGNvZGVwcmVmaXggPSBQUkVGSVhf MFg2NjsNCj4gPg0KPiA+Pj4gKyAgICAgIGkucHJlZml4W0RBVEFfUFJFRklYXSA9IDA7DQo+ID4N Cj4gPj4+ICsgICAgfQ0KPiA+DQo+ID4+DQo+ID4NCj4gPj4gV2hpbGUgdGhpcyBsb29rcyB0byBi ZSBjb3JyZWN0IGZvciB0aGUgY2FzZSB3aGVuIHRoZSBwcmVmaXggd2FzDQo+ID4+IGRlcml2ZWQg ZnJvbSBhbg0KPiA+DQo+ID4+IGluc24gdGVtcGxhdGUgYW5kIHRoZSB1c2Ugb2YgMTYtYml0IG9w ZXJhbmRzLCBJIGRvbid0IHRoaW5rIGl0IGlzDQo+ID4+IHVuaWZvcm1seQ0KPiA+DQo+ID4+IGNv cnJlY3Qgd2hlbiAiZGF0YTE2IiB3YXMgdXNlZCBhcyBhIHByZWZpeCBleHBsaWNpdGx5LiBJbiBz dWNoIGEgY2FzZQ0KPiA+PiBlaXRoZXINCj4gPg0KPiA+PiBSRVgyIGVuY29kaW5nIG5lZWRzIHRv IGJlIHVzZWQsIG9yIGFuIGVycm9yIG5lZWRzIGVtaXR0aW5nLg0KPiA+DQo+ID4+DQo+ID4NCj4g Pj4gWW91IG1heSBmdXJ0aGVyIHdhbnQgdG8gYXNzZXJ0IHRoYXQgaS50bS5vcGNvZGVfbW9kaWZp ZXIub3Bjb2RlcHJlZml4DQo+ID4+IGlzIHN0aWxsDQo+ID4NCj4gPj4gemVybyBhaGVhZCBvZiB0 aGUgYXNzaWdubWVudC4NCj4gPg0KPiA+Pg0KPiA+DQo+ID4NCj4gPg0KPiA+IEZvciBSRVgyIGVu Y29kaW5nLCB3ZSBhZGQgbm8gc3BlY2lhbCBoYW5kbGluZywganVzdCBmb2xsb3cgUkVYLg0KPiA+ DQo+ID4gRm9yIEVWRVgtcHJvbW90ZWQgZW5jb2RpbmcsIHN1Y2ggYXMg4oCcZGF0YTE2DQo+IGFh bmQgICAlcjI1ZCwweDEyMyglcjMxLCVyYXgsNCnigJ0sIHRoZSBmb2xsb3dpbmcgZXhpc3Rpbmcg Y29kZSB3aWxsIHJlcG9ydCBhbg0KPiBlcnJvci4NCj4gPg0KPiA+DQo+ID4NCj4gPiAgIGlmIChp c19hbnlfdmV4X2VuY29kaW5nICgmaS50bSkNCj4gPg0KPiA+ICAgICAgIHx8IGkudG0ub3BlcmFu ZF90eXBlc1tpLmltbV9vcGVyYW5kc10uYml0ZmllbGQuY2xhc3MgPj0gUmVnTU1YDQo+ID4NCj4g PiAgICAgICB8fCBpLnRtLm9wZXJhbmRfdHlwZXNbaS5pbW1fb3BlcmFuZHMgKyAxXS5iaXRmaWVs ZC5jbGFzcyA+PQ0KPiA+IFJlZ01NWCkNCj4gPg0KPiA+ICAgICB7DQo+ID4NCj4gPiAgICAgICAv KiBDaGVjayBmb3IgZGF0YSBzaXplIHByZWZpeCBvbiBWRVgvWE9QL0VWRVggZW5jb2RlZCBhbmQg U0lNRA0KPiA+IGluc25zLiAgKi8NCj4gPg0KPiA+ICAgICAgIGlmIChpLnByZWZpeFtEQVRBX1BS RUZJWF0pDQo+ID4NCj4gPiAgICAgICAgIHsNCj4gPg0KPiA+ICAgICAgICAgICBhc19iYWQgKF8o ImRhdGEgc2l6ZSBwcmVmaXggaW52YWxpZCB3aXRoIGAlcyciKSwgaW5zbl9uYW1lDQo+ID4gKCZp LnRtKSk7DQo+ID4NCj4gPiAgICAgICAgICAgcmV0dXJuOw0KPiA+DQo+ID4gICAgICAgICB9DQo+ IA0KPiBUaGlua2luZyBvZiBpdCwgSSBtYXkgbmVlZCB0byByZXZpc2UgbXkgZWFybGllciBjb21t ZW50IHNvbWU6IFJBTy1JTlQgaW5zbnMNCj4gYXJlIGEgYmFkIGV4YW1wbGUgaGVyZSwgc2luY2Ug ZGVzcGl0ZSBiZWluZyBsZWdhY3ktZW5jb2RlZCB0aGV5IGRvbid0IHBlcm1pdA0KPiBhIGRhdGEx NiBwcmVmaXggdG8gc3BlY2lmeSAxNi1iaXQgb3BlcmFuZCBzaXplLiBDb25zaWRlciB0aGUgc2Ft ZSBmb3IgZS5nLg0KPiBBTkQuIFRoZSBsZWdhY3kgZm9ybSBwZXJtaXRzIHVzZSBvZiBkYXRhMTYg KGxlYXZpbmcgYXNpZGUgdGhhdCBpdCdzIGJldHRlciAvDQo+IGNsZWFyZXIgdG8gc2ltcGx5IHVz ZSAxNi1iaXQgcmVnaXN0ZXIgbmFtZXMpLCBzbyB0aGUgcHJvbW90ZWQgZm9ybXMgbGlrZWx5DQo+ IG91Z2h0IHRvIHBlcm1pdCBzdWNoIGFzIHdlbGwuIElPVyBwZXJoYXBzIHRoZSBjb2RlIHlvdSBo YXZlIGlzIGNvcnJlY3QsIGJ1dA0KPiB0aGUgY2hlY2sgeW91IHF1b3RlIG1heSBuZWVkIGFkanVz dGluZy4NCj4gDQoNCkkgbGlzdGVkIDUgaW5zdHJ1Y3Rpb25zIHRvIGNoZWNrIHRoZSBkYXRhMTYg cHJlZml4LCBpcyB0aGUgbGFzdCBvbmUgd2hhdCB5b3Ugd2FudD8NCg0KJCBjYXQgYWRkLnMNCg0K YW5kICVlYngsICVlYXgNCmRhdGExNiBhbmQgJWVieCwgJWVheA0KYW5kICVlYngsICVyMTZkDQpk YXRhMTYgYW5kICVlYngsICVyMTZkDQp7ZXZleH0gZGF0YTE2IGFuZCAlZWJ4LCAlcjE2ZA0KDQok IG9iamR1bXAgLWR3ICBhbmQubw0KDQogICAwOiAgIDIxIGQ4ICAgICAgICAgICAgICAgICAgIGFu ZCAgICAlZWJ4LCVlYXgNCiAgIDI6ICAgNjYgMjEgZDggICAgICAgICAgICAgICAgYW5kICAgICVi eCwlYXgNCiAgIDU6ICAgZDUgMTAgMjEgZDggICAgICAgICAgICAgYW5kICAgICVlYngsJXIxNmQN CiAgIDk6ICAgNjYgZDUgMTAgMjEgZDggICAgICAgICAgYW5kICAgICVieCwlcjE2dw0KICAgRXJy b3I6IGRhdGEgc2l6ZSBwcmVmaXggaW52YWxpZCB3aXRoIGBhbmQnDQoNCj4gPg0KPiA+IEkgcmVi YXNlZCBtYXN0ZXIgYW5kIGFzIHlvdSBwcmVkaWN0ZWQgdGhpcyBkb2Vzbid0IHdvcmssIG9uZSBl bnRyeQ0KPiA+IGNvbnRhaW5zIGJvdGggVkVYIGFuZCBFVkVYLCBWRVggcmVxdWlyZXMgTm9fZWdw cj0xIGFuZCBFVkVYIHJlcXVpcmVzDQo+ID4gTm9fZWdwcj0wLA0KPiA+DQo+ID4gRmluYWxseSBJ IGNob3NlIHRvIGFkZCAiTm9fZWdwcj0xIiBmb3IgaXQuIEFuZCBhZGRlZCB0aGUgZm9sbG93aW5n IGp1ZGdtZW50DQo+IGluIGNoZWNrX0VncHJPcGVyYW5kcy4NCj4gPg0KPiA+DQo+ID4NCj4gPiBj aGVja19FZ3ByT3BlcmFuZHMgKGNvbnN0IGluc25fdGVtcGxhdGUgKnQpDQo+ID4NCj4gPiB7DQo+ ID4NCj4gPiAtICBpZiAodC0+b3Bjb2RlX21vZGlmaWVyLm5vZWdwcikNCj4gPg0KPiA+IGlmICh0 LT5vcGNvZGVfbW9kaWZpZXIubm9lZ3ByICYmICFuZWVkX2V2ZXhfZW5jb2RpbmcoKSkNCj4gDQo+ IEknbGwgbmVlZCB0byBsb29rIGF0IHRoaXMgaW4gY29udGV4dCwgc28gSSBjYW4ndCBjb21tZW50 IHJpZ2h0IGhlcmUuDQo+IA0KPiBBbHNvLCBqdXN0IHRvIG1lbnRpb24gaXQ6IFNvbWV0aGluZydz IHdyb25nIHdpdGggeW91ciByZXBseSAoYWxzbyB2aXNpYmxlIGluIHRoZQ0KPiBsaXN0IGFyY2hp dmUgY29weSksIGhhcm1pbmcgcmVhZGFiaWxpdHkgcXVpdGUgYSBiaXQuIFRoZXJlIGFyZSBleHRy YSBibGFuayBsaW5lcw0KPiBiZXR3ZWVuIGFueSB0d28gcmVhbCBvbmVzLg0KPiANCk9oLCBzb3Jy eSwgSSB0cmllZCBpbnNlcnRpbmcgYSB0YWJsZSBpbnRvIHRoZSBlbWFpbCBhbmQgY2hhbmdlZCBp dCB0byBIVE1MIGZvcm1hdCwgYnV0IGZvcmdvdCB0byBjaGFuZ2UgaXQgYmFjay4NCg0KVGhhbmtz LA0KTGlsaS4NCg==