From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mx.groups.io with SMTP id smtpd.web11.7269.1662555859707365274 for ; Wed, 07 Sep 2022 06:04:19 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=e2An9Nn2; spf=permerror, err=too many SPF records (domain: intel.com, ip: 134.134.136.100, mailfrom: bob.c.feng@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1662555859; x=1694091859; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=DvVi3eTl2PZGNe1SVGYI+YvPngY0F5V/wjX2BLDQn2g=; b=e2An9Nn2N6b5SKVsO1SwAAQ6QcL20R+GAMqA97wFizNs62a/6gaHuNQ2 iIhRWykSbimrd+R1JP9Mk5WYdASUn0EyuHJXP9qx4/NUoCgWI4apxx68K F/WKrB5epYafPimcKuRJmK149pOtyHiHUSPFkEroH/5fkVgpXxkqPPgiY 0NCQlXTOJCsw8+/F4i/OHPS4MMXdaMLa7kfv/u49hp79/fCYpdWVib8Rk yaga1ITOLaH8juTEzlEpFnbBKYEROjAk1IIKul4RuW0eqIDDsUdm8hRX+ AkznxWNI9QBt7IEAS7BB6bal0D3ksGNsjG0Fr3G1Zj3pp+Eh4FL80lxPC g==; X-IronPort-AV: E=McAfee;i="6500,9779,10462"; a="360808578" X-IronPort-AV: E=Sophos;i="5.93,296,1654585200"; d="scan'208";a="360808578" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Sep 2022 06:04:19 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.93,296,1654585200"; d="scan'208";a="859625221" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga006.fm.intel.com with ESMTP; 07 Sep 2022 06:04:18 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) 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.2375.31; Wed, 7 Sep 2022 06:04:18 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Wed, 7 Sep 2022 06:04:18 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) 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.2375.31 via Frontend Transport; Wed, 7 Sep 2022 06:04:18 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.172) 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.2375.31; Wed, 7 Sep 2022 06:04:17 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UE/eLJrcCOZdJ1ptbQCGb6iHf7D6D+q/Bxk6gunJPfZdF7tyTbdb4a7CsRoKVwbE/T536NjIM8NnPAomXsJkUQk/5UoxoAUyhjzAl8Ox/Wv1+A6CI+VyA9zjix+VL/nWw/05h7vaXRNNb/y4FxQ05pwmtp+v2EofomWNDnPGzeGphQM/iCh5q2xQf8fdD3VO+9ZFG1cs5GvQ8Q1syR+LdCsU1grUO9i1V5qhQZxlQSphVcOejmPi6tt42YooZxmuGAtVtYeqcANXq8dZjdBIA3Sd5angNtZ6IpQ1EKUsSPH6O5WGLsxOkCddShkr6is0iVYgGkaT0XBC2O1hrW3AHA== 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=DvVi3eTl2PZGNe1SVGYI+YvPngY0F5V/wjX2BLDQn2g=; b=e8J1Kbp+FNFOxl9rSUGPTk8Du4ooj5mRRV4zQoAk0A5FAQCJmbI/QNFXWjtpyoxnKEcDXFwlCxjlsk5PkUITVHCzM2FP5CJx0hlMFe/Q68OK8vrfuEBl326UR86Kv6cZx3p677FXtAMyXJXYA7vRii0tIcq628RMwM7JfhbbbEhOkLt8hjvJPgeB0lFzOJS2Qiw9sUJNeEmXhGFeCKQSOZkgJcCNfIKSz3EFsWNJChU2WkT5k5h1PlBxyMekFCRJktLqPX4DHFVmQiZCmYOaBWD8cCbdWlJbV3y7abvmkgF2UtqLMja1rXj3QO3khajj9hTN+9fgFf/g4fspxYFMmA== 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 PH7PR11MB5863.namprd11.prod.outlook.com (2603:10b6:510:135::11) by CH2PR11MB4374.namprd11.prod.outlook.com (2603:10b6:610:41::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5588.16; Wed, 7 Sep 2022 13:04:15 +0000 Received: from PH7PR11MB5863.namprd11.prod.outlook.com ([fe80::84cc:ca11:bb33:5aaa]) by PH7PR11MB5863.namprd11.prod.outlook.com ([fe80::84cc:ca11:bb33:5aaa%4]) with mapi id 15.20.5588.018; Wed, 7 Sep 2022 13:04:15 +0000 From: "Bob Feng" To: Leif Lindholm , Ard Biesheuvel , Rebecca Cran CC: "devel@edk2.groups.io" , "Gao, Liming" , "Kinney, Michael D" Subject: Re: [edk2-devel] [PATCH] BaseTools/GenFw AARCH64: Convert more types of explicit GOT references Thread-Topic: [edk2-devel] [PATCH] BaseTools/GenFw AARCH64: Convert more types of explicit GOT references Thread-Index: AQHYtWi4sUSKY9iFe0SK5fpE5OLEZ625awQAgBjhnQCAABc1AIABpdhw Date: Wed, 7 Sep 2022 13:04:15 +0000 Message-ID: References: <20220821141637.2531871-1-ardb@kernel.org> <23dfba3f-62d0-f443-9de0-4e1339280528@bsdio.com> <2d307167-a475-8f75-e897-bd0a99f43c29@quicinc.com> In-Reply-To: <2d307167-a475-8f75-e897-bd0a99f43c29@quicinc.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.6.500.17 dlp-product: dlpe-windows dlp-reaction: no-action authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 6dab7309-3168-45da-d3ea-08da90d17771 x-ms-traffictypediagnostic: CH2PR11MB4374:EE_ 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: ZwM5/4HYBM/87srwTPxfPnlGmbDrdUKVvZq6B7WFIecpbf/NhL4IvuIvUFYelvhexFFrJaWJA9m0I3kF5w5YtpL3gL91k8tCkkD0nsp8AlUlV/gNoA3DR3+K7XWy1RlhdZc8d8Ym/cajV2TTYUdW9kOnueDvdotOvx1TeD1AjUfqRLRHzed/NDsvo6l3HYUnox7t0EGO4FunyMjpmsisDfsxF0A27v1xdqEjfRO8c4y1WaMBHE+kKGaXllWGG0Ud7RWNvENnRbuxe8LHFTspyw9K+JEUrHL9OgLlmB47FtApLfrpXmwaaqxZbTGVUMR7ra/UAavy4O1d/kkFoME3+3Pl/WJZAvIiJ/8Dpn1P8I0PQyZS2a6BkXhwmX7eu+BPoA3h1cg7M3oJgzalhVJ8DSPUNWFsf/iQ7gJ6VPHYwfN0ZlEY/rOYqjSTUkJ6Q2fo/nCxy8SLJqRz58/XKaTXu18baN23FzQA+XOzTWiRL6ea9V0WAk0b21JLCcAtbdtdf5sHMFIEyEeXXZh+6oItSC3g1OGt/a73S0QYDyJGG8MJVm7goKV2d+rPIGAB7CO7tBqdSKCMySZa6+ctM62fPKMHD6pWbl5i8WJZRHvThitPnDJ77H+9EOr6uyytH96i5hBLWXCmPe1pqLsehwvPE3TH5czTcQChPLq9WKv8x8HjoV591wpA/3l4vi99tTNaZHDFWRLyypc83cZJ0iMclBwvivTDXrgdMu6rb0M82BIgN3wrDDCzAKUD+C4/UHNzzqOVR/26SBvtvwGm3DFCNw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH7PR11MB5863.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(366004)(376002)(396003)(346002)(39860400002)(136003)(9686003)(19627235002)(107886003)(8936002)(86362001)(33656002)(6506007)(52536014)(53546011)(7696005)(26005)(186003)(71200400001)(82960400001)(41300700001)(478600001)(38070700005)(83380400001)(38100700002)(122000001)(54906003)(316002)(55016003)(66946007)(2906002)(5660300002)(4326008)(66556008)(110136005)(66476007)(76116006)(64756008)(8676002)(66446008);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?elZrMDhDblJ4aFpGV2x0VzhXSzJkc01xT2hvaTUrY1BibmZWblFvSTFaYWht?= =?utf-8?B?ZFZrYXZLbHNrR2NRRy8rZ0pxa3lYa2RFb3JXeDJaVktqWitDNER2TmEvbUJz?= =?utf-8?B?a05pRkJjUGl6cnBCTUlzZ0QxQmN6REZYOTJ0Tm9TNlFoTG5UbWJwMzRXMmpL?= =?utf-8?B?TjRrbHlkU0lKaDBzdzRrbEpMQW5VKzc5QmpvQTQ4dHhybGVmcjZiVkFSaGVK?= =?utf-8?B?Rm9SUjRHcExmN0wvdStNZ1NQQ1dFYm82SGNsaXlDSnc5SGc5NVRVVmV4NU0r?= =?utf-8?B?OXZMMm4xUWhEeDJmcDFyWmg0d3k2M2wycG5WbS9QV2xWYWR4Y3VnQU1JK1Ar?= =?utf-8?B?SEx6cUUwU2tmdGFKb2l0WGdxQWhVcndKT25Pc3dMMlhZU21kRVJPaUlGREhp?= =?utf-8?B?M1ZwTUN5N2Jzc2RZV256UlRjU04wOHpmWkN1bGdlRGF2emd0TTIrWG1NdVhG?= =?utf-8?B?QjJ0RzYrMjA0b2FidmVVY294Rks2OHBoR3pYOVdES0ZHSENFRXp2bWJxTHRo?= =?utf-8?B?SUZnQkRCR2lzc3BlZEpOK3c0UlhHZ1NqZzJoVVlwZDQzQ0lhS3l1MU5SdnhG?= =?utf-8?B?bm1pTU10ZjZLRkV1Y05YcjFGNXpCdGQxRVlPeEhUUFpDTTE3UGZDMEZiRk81?= =?utf-8?B?N3VlWWFBdHp2ZTUwNUI3MGFLOVMyajIxWFl6UnVQSjBVVU1KOHR5TXhYRTlU?= =?utf-8?B?anRWbW1mNDRyWVFnUzFONUhZTTkvUEU2VkU3VUtDdFpIdVpRWHYzUVJwRnNQ?= =?utf-8?B?ZFRGK3I5K3Y2SjNGNG5iZVp5VWt4L043YThoR0VmYTdqUjN3eXhCM2FTTjR0?= =?utf-8?B?bmVqdm5CdUowdU5GSkNkWHZEWmVhbjdHTlB6dXJIc0U4UEhBZWV6UTFaVHNS?= =?utf-8?B?MFpUUWhjTFIwMEpielp2eTRFVjhsdTVGR1JRem4ySlZvaVpUV202UGtqTUx2?= =?utf-8?B?czhlRUdPTHRCc3R0ejJsNzhQM3BwWlQyVDArMnhmUlNQc3hPQTE1aVptN2tG?= =?utf-8?B?bEx5aVpHWDBpemlBZFF4U3NJdlQyZVordkJqUVd2RWpNOURMTXN0UTJsb2M1?= =?utf-8?B?OWZSQ2VXOUM5RkFsajdqMXQ4TUVGRmdOQXV3MThGQ0s5UW9ZNEg2MC9CWUpy?= =?utf-8?B?N0ZNV3JhcW5KM2JGQ2dSZnpGQ0Q1V0JRdWluL2dkS252ZW93bUQ2THk2NlZ4?= =?utf-8?B?UzR3L05qT3RjZEU1eEkzZmdmUUNqTU1CQXQ2Rkt5blFZV0RLZ1VOdVFBVE5u?= =?utf-8?B?UVcrbURUR0l3SnlaQWNmNXdzVHlZRmRsbzMyTmpCWEZLKzdyYVZZNGhrL0JM?= =?utf-8?B?cnBrM0hGeDMybEJWNTJjaVpoc2hTL29BeDYrMU9wVDdKN2VITkd0dlovQUFV?= =?utf-8?B?TnlrYUptRXQ5Y09zQjVpbTlDOEEzTWMxSndIWWxHbFFqVE5jR0R5RVh0c0Mz?= =?utf-8?B?QTZvWGJMd1dOUmtTSFNOZnhRMWxDRU85emhaVFFVOWhpejAzVVNRejZydk1B?= =?utf-8?B?bGZkTjlyK3RtQVpGaEI2S1JVOFpFWCs1b2FxQUcrTVdyYW83NHpkN2VueWdp?= =?utf-8?B?b1AvS3ZuOUtyVWZXUHc4ck81WFR4OGZ6S0RjVWJYNGRiMUhaZStkSzR2b1dS?= =?utf-8?B?aGxvZFNEaDJ2VlZuZ1I4cVhoTFVvdGgzblBHbjNFYUZWUStYbU9semJkQlVB?= =?utf-8?B?cFlHTXowZ21VVnYyTm1zMVRSYjJob2VYUTcxSDUxeWdXbXVKWDBPZzdKL2l0?= =?utf-8?B?Z1BidUxoUkpBWmZTRTVXSXpNZngyMzZRWFFaYmFPZFEwekNiMGEzdjNnbGVJ?= =?utf-8?B?VHlQRGZNek9wamcxTmh1S1MvZ2I2OUY4TlNScXI3UU9heXlXSzU5OEV3dGsz?= =?utf-8?B?dG1Rcjl0VTh3aE4vaHdpT0FPaVJCRjNXQ0lBaTVOc0drYVFMdFd6bitLWmpJ?= =?utf-8?B?TGhqT3NrSTBTcG5DRFNXZThJV2FQOHpyNVdFUHBKVWE5dG1RRkZNSk1yWEds?= =?utf-8?B?NDZXa2xTcDN5OGU2NEp0cDN3ai9FTDZNRmZxaEsvMjI3L0FUUWl4NEFiNXpU?= =?utf-8?B?WFpYeDhhZHVSU1d0ZnAveHVYbUsxSEptbzMwbmNDTG04bkZYVG1Kd2dFNTI4?= =?utf-8?Q?G6QsXsnWNSQ+Sp5P6NrLiqQW+?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH7PR11MB5863.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6dab7309-3168-45da-d3ea-08da90d17771 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Sep 2022 13:04:15.2234 (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: f5maogvFHaNuPGkbRJsI3MqJS+D95LzdtsNNvQY7NYQBH9mrqYmWIt+DXrYFu3IaP8p0tvDrMdRFNobg7SvIog== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR11MB4374 Return-Path: bob.c.feng@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 QWNrZWQtYnk6IEJvYiBGZW5nIDxib2IuYy5mZW5nQGludGVsLmNvbT4NCg0KLS0tLS1PcmlnaW5h bCBNZXNzYWdlLS0tLS0NCkZyb206IExlaWYgTGluZGhvbG0gPHF1aWNfbGxpbmRob2xAcXVpY2lu Yy5jb20+IA0KU2VudDogVHVlc2RheSwgU2VwdGVtYmVyIDYsIDIwMjIgNzo1NCBQTQ0KVG86IEFy ZCBCaWVzaGV1dmVsIDxhcmRiQGtlcm5lbC5vcmc+OyBSZWJlY2NhIENyYW4gPHJlYmVjY2FAYnNk aW8uY29tPg0KQ2M6IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBGZW5nLCBCb2IgQyA8Ym9iLmMuZmVu Z0BpbnRlbC5jb20+OyBHYW8sIExpbWluZyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsgS2lu bmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KU3ViamVjdDogUmU6 IFtlZGsyLWRldmVsXSBbUEFUQ0hdIEJhc2VUb29scy9HZW5GdyBBQVJDSDY0OiBDb252ZXJ0IG1v cmUgdHlwZXMgb2YgZXhwbGljaXQgR09UIHJlZmVyZW5jZXMNCg0KT24gMjAyMi0wOS0wNiAxMToz MCwgQXJkIEJpZXNoZXV2ZWwgd3JvdGU6DQo+IEJvYiwgTGltaW5nLCBMZWlmOiBhbnkgdGhvdWdo dHM/DQoNCkknbSBoYXBweSB3aXRoIHRoaXMuDQooU3BvdHRlZCBvbmUgdHlwbyAtICJvZnNldCIu KQ0KDQpBY2tlZC1ieTogTGVpZiBMaW5kaG9sbSA8cXVpY19sbGluZGhvbEBxdWljaW5jLmNvbT4N Cg0KPiBPbiBTdW4sIDIxIEF1ZyAyMDIyIGF0IDE2OjMzLCBSZWJlY2NhIENyYW4gPHJlYmVjY2FA YnNkaW8uY29tPiB3cm90ZToNCj4+DQo+PiBUZXN0ZWQtYnk6IFJlYmVjY2EgQ3JhbiA8cmViZWNj YUBic2Rpby5jb20+DQo+Pg0KPj4NCj4+IE9uIDgvMjEvMjIgMDg6MTYsIEFyZCBCaWVzaGV1dmVs IHdyb3RlOg0KPj4+IFJlYmVjY2EgcmVwb3J0cyB0aGF0IGJ1aWxkcyBvZiBBQXJjaDY0IERTQ3Mg dGhhdCBpbnZvbHZlIFBJRSBsaW5raW5nIA0KPj4+IHdoZW4gdXNpbmcgRUxGIGJhc2VkIHRvb2xj aGFpbnMgYXJlIGZhaWxpbmcgaW4gc29tZSBjYXNlcywgcmVzdWx0aW5nIA0KPj4+IGluIGFuIGVy cm9yIG1lc3NhZ2UgbGlrZQ0KPj4+DQo+Pj4gICAgIGJhZCBkZWZpbml0aW9uIGZvciBzeW1ib2wg J19HTE9CQUxfT0ZGU0VUX1RBQkxFXydAMHg3MmQ4IG9yDQo+Pj4gICAgIHVuc3VwcG9ydGVkIHN5 bWJvbCB0eXBlLiAgRm9yIGV4YW1wbGUsIGFic29sdXRlIGFuZCB1bmRlZmluZWQgc3ltYm9scw0K Pj4+ICAgICBhcmUgbm90IHN1cHBvcnRlZC4NCj4+Pg0KPj4+IFRoZSByZWFzb24gdHVybnMgb3V0 IHRvIGJlIHRoYXQsIHdoaWxlIEdlbkZ3IGRvZXMgY2Fycnkgc29tZSBsb2dpYyANCj4+PiB0byBj b252ZXJ0IEdPVCBiYXNlZCBzeW1ib2wgcmVmZXJlbmNlcyBpbnRvIGRpcmVjdCBvbmVzICh3aGlj aCBpcyANCj4+PiBhbHdheXMgcG9zc2libGUgZ2l2ZW4gdGhhdCBvdXIgRUxGIHRvIFBFL0NPRkYg Y29udmVyc2lvbiBvbmx5IA0KPj4+IHN1cHBvcnRzIGZ1bGx5IGxpbmtlZCBleGVjdXRhYmxlcyks IGl0IGRvZXMgbm90IHN1cHBvcnQgYWxsIHBvc3NpYmxlIA0KPj4+IGNvbWJpbmF0aW9ucyBvZiBy ZWxvY2F0aW9ucyB0aGF0IHRoZSBsaW5rZXIgbWF5IGVtaXQgdG8gbG9hZCBzeW1ib2wgDQo+Pj4g YWRkcmVzc2VzIGZyb20gdGhlIEdPVC4NCj4+Pg0KPj4+IEluIHBhcnRpY3VsYXIsIHdoZW4gcGVy Zm9ybWluZyBhIG5vbi1MVE8gbGluayBvbiBvYmplY3QgY29kZSBidWlsdCANCj4+PiB3aXRoIEdD QyB1c2luZyAtZnBpZSwgd2UgbWF5IGVuZCB1cCB3aXRoIEdPVCBiYXNlZCByZWZlcmVuY2VzIHN1 Y2ggDQo+Pj4gYXMgdGhlIG9uZSBiZWxvdywgd2hlcmUgdGhlIGFkZHJlc3Mgb2YgdGhlIEdPVCBp dHNlbGYgaXMgdGFrZW4sIGFuZCANCj4+PiB0aGUgb2ZzZXQgb2YgdGhlIHN5bWJvbCBpbiB0aGUg R09UIGlzIHJlZmxlY3RlZCBpbiB0aGUgaW1tZWRpYXRlIA0KPj4+IG9mZnNldCBvZiB0aGUgc3Vi c2VxdWVudCBMRFIgaW5zdHJ1Y3Rpb24uDQo+Pj4NCj4+PiAgICAgODM4OiAgIGFkcnAgICAgeDAs IDE2MDAwDQo+Pj4gICAgIDgzODogUl9BQVJDSDY0X0FEUl9QUkVMX1BHX0hJMjEgX0dMT0JBTF9P RkZTRVRfVEFCTEVfDQo+Pj4gICAgIDgzYzogICBsZHIgICAgIHgwLCBbeDAsICMyNTM2XQ0KPj4+ ICAgICA4M2M6IFJfQUFSQ0g2NF9MRDY0X0dPVFBBR0VfTE8xNSAgICAgICAgX2dQY2RfQmluYXJ5 UGF0Y2hfUGNkRmRCYXNlQWRkcmVzcw0KPj4+DQo+Pj4gVGhlIHJlYXNvbiB0aGF0IHdlIG9taXQg R09UIGJhc2VkIHN5bWJvbCByZWZlcmVuY2VzIHdoZW4gcGVyZm9ybWluZyANCj4+PiBFTEYgdG8g UEUvQ09GRiBjb252ZXJzaW9uIGlzIHRoYXQgdGhlIEdPVCBpcyBub3QgZGVzY3JpYmVkIGJ5IHN0 YXRpYyANCj4+PiBFTEYgcmVsb2NhdGlvbnMsIHdoaWNoIG1lYW5zIHRoYXQgdGhlIEVMRiBmaWxl IGxhY2tzIHRoZSBtZXRhZGF0YSB0byANCj4+PiBnZW5lcmF0ZSB0aGUgUEUvQ09GRiByZWxvY2F0 aW9ucyBjb3ZlcmluZyB0aGUgR09UIHRhYmxlIGluIHRoZSANCj4+PiBQRS9DT0ZGIGV4ZWN1dGFi bGUuIEdpdmVuIHRoYXQgbm9uZSBvZiB0aGUgdXN1YWwgbW90aXZhdGlvbnMgZm9yIA0KPj4+IHVz aW5nIGEgR09UIChjb3B5IG9uIHdyaXRlIGZvb3RwcmludCwgc2hhcmVkIGxpYnJhcmllcykgYXBw bHkgdG8gRUZJIA0KPj4+IGV4ZWN1dGFibGVzIGluIHRoZSBmaXJzdCBwbGFjZSwgdGhlIGVhc2ll c3Qgd2F5IGFyb3VuZCB0aGlzIGlzIHRvIA0KPj4+IGNvbnZlcnQgYWxsIEdPVCBiYXNlZCBzeW1i b2wgYWRkcmVzcyBsb2FkcyB0byBQQyByZWxhdGl2ZSBBRFIvQURSUCBpbnN0cnVjdGlvbnMuDQo+ Pj4NCj4+PiBTbyBpbXBsZW1lbnQgdGhpcyBoYW5kbGluZyBmb3IgUl9BQVJDSDY0X0xENjRfR09U UEFHRV9MTzE1IGFuZA0KPj4+IFJfQUFSQ0g2NF9MRDY0X0dPVE9GRl9MTzE1IHJlbG9jYXRpb25z IGFzIHdlbGwsIGFuZCB0dXJuIHRoZSBMRFIgDQo+Pj4gaW5zdHJ1Y3Rpb25zIGluIHF1ZXN0aW9u IGludG8gQURSIGluc3RydWN0aW9ucyB0aGF0IGdlbmVyYXRlIHRoZSANCj4+PiBhZGRyZXNzIGlt bWVkaWF0ZWx5Lg0KPj4+DQo+Pj4gVGhpcyBsZWF2ZXMgdGhlIHJlZmVyZW5jZSB0byBfR0xPQkFM X09GRlNFVF9UQUJMRV8gaXRzZWxmLCB3aGljaCBpcyANCj4+PiB3aGF0IGdlbmVyYXRlZCB0aGUg ZXJyb3IgdG8gYmVnaW4gd2l0aC4gQ29uc2lkZXJpbmcgdGhhdCB0aGlzIHN5bWJvbCANCj4+PiBp cyBuZXZlciByZWZlcmVuY2VkIChpLmUuLCBpdCBkb2Vzbid0IGFwcGVhciBhbnl3aGVyZSBpbiB0 aGUgY29kZSkgDQo+Pj4gYW5kIGlzIG9ubHkgbWVhbmluZ2Z1bCBpbiBjb21iaW5hdGlvbiB3aXRo IFJfKl9HT1RfKiBiYXNlZCANCj4+PiByZWxvY2F0aW9ucyB0aGF0IGZvbGxvdyBpdCwgd2UgY2Fu IGp1c3QgZGlzcmVnYXJkIGFueSByZWZlcmVuY2VzIHRvIA0KPj4+IGl0IGVudGlyZWx5LCBnaXZl biB0aGF0IHdlIGNvbnZlcnQgYWxsIG9mIHRob3NlIGZvbGxvd3VwIHJlbG9jYXRpb25zIGludG8g ZGlyZWN0IHJlZmVyZW5jZXMuDQo+Pj4NCj4+PiBDYzogUmViZWNjYSBDcmFuIDxyZWJlY2NhQGJz ZGlvLmNvbT4NCj4+PiBDYzogQm9iIEZlbmcgPGJvYi5jLmZlbmdAaW50ZWwuY29tPg0KPj4+IENj OiBMaW1pbmcgR2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+DQo+Pj4gQ2M6ICJLaW5uZXks IE1pY2hhZWwgRCIgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPj4+IENjOiBMZWlmIExp bmRob2xtIDxxdWljX2xsaW5kaG9sQHF1aWNpbmMuY29tPg0KPj4+IFNpZ25lZC1vZmYtYnk6IEFy ZCBCaWVzaGV1dmVsIDxhcmRiQGtlcm5lbC5vcmc+DQo+Pj4gLS0tDQo+Pj4NCj4+PiBUaGlzIHBh dGNoIGNhbiBiZSB0ZXN0ZWQgdXNpbmcgdGhlIGZvbGxvd2luZyBtZXRob2Q6DQo+Pj4NCj4+PiAt IGFkZCB0aGUgZm9sbG93aW5nIGxpbmVzIHRvIA0KPj4+IEFybVZpcnRQa2cvUHJlUGkvQXJtVmly dFByZVBpVW5pQ29yZVJlbG9jYXRhYmxlLmluZg0KPj4+DQo+Pj4gW0J1aWxkT3B0aW9uc10NCj4+ PiAgICAgR0NDOipfKl9BQVJDSDY0X0NDX0ZMQUdTID0gLWZwaWUNCj4+PiAgICAgR0NDOipfKl9B QVJDSDY0X0RMSU5LX0ZMQUdTID0gLVdsLC1Cc3ltYm9saWMsLXBpZQ0KPj4+DQo+Pj4gLSBidWls ZCBBcm1WaXJ0UGtnL0FybVZpcnRRZW11S2VybmVsLmRzYyBpbiBERUJVRyBtb2RlIHVzaW5nIEdD QzQ5DQo+Pj4gICAgIChvdGhlciBjb21ib3MgbWlnaHQgd29yayBhcyB3ZWxsKSBhbmQgb2JzZXJ2 ZSB0aGUgYnVpbGQgZmFpbHVyZQ0KPj4+DQo+Pj4gLSBhcHBseSB0aGlzIHBhdGNoIGFuZCBvYnNl cnZlIHRoYXQgdGhlIGJ1aWxkIGZhaWx1cmUgaXMgZ29uZQ0KPj4+DQo+Pj4gLSBib290IHRoZSBy ZXN1bHRpbmcgaW1hZ2UgaW4gUUVNVSB1c2luZyB0aGUgLWtlcm5lbCAuLi9RRU1VX0VGSS5mZA0K Pj4+ICAgICBjb21tYW5kIGxpbmUgb3B0aW9uIGFuZCBvYnNlcnZlIHRoYXQgdGhlIGltYWdlIGJv b3RzIGFzIHVzdWFsDQo+Pj4NCj4+PiAgICBCYXNlVG9vbHMvU291cmNlL0MvR2VuRncvRWxmNjRD b252ZXJ0LmMgfCAzNSArKysrKysrKysrKysrKysrKysrKw0KPj4+ICAgIDEgZmlsZSBjaGFuZ2Vk LCAzNSBpbnNlcnRpb25zKCspDQo+Pj4NCj4+PiBkaWZmIC0tZ2l0IGEvQmFzZVRvb2xzL1NvdXJj ZS9DL0dlbkZ3L0VsZjY0Q29udmVydC5jIA0KPj4+IGIvQmFzZVRvb2xzL1NvdXJjZS9DL0dlbkZ3 L0VsZjY0Q29udmVydC5jDQo+Pj4gaW5kZXggMzVlOTZkZDA1YmMyLi4zMTczY2E5MjgwZjQgMTAw NjQ0DQo+Pj4gLS0tIGEvQmFzZVRvb2xzL1NvdXJjZS9DL0dlbkZ3L0VsZjY0Q29udmVydC5jDQo+ Pj4gKysrIGIvQmFzZVRvb2xzL1NvdXJjZS9DL0dlbkZ3L0VsZjY0Q29udmVydC5jDQo+Pj4gQEAg LTEzMDUsNiArMTMwNSwyMiBAQCBXcml0ZVNlY3Rpb25zNjQgKA0KPj4+ICAgICAgICAgICAgRWxm X1NoZHIgKlN5bVNoZHI7DQo+Pj4gICAgICAgICAgICBVSU5UOCAgICAqVGFyZzsNCj4+Pg0KPj4+ ICsgICAgICAgIC8vDQo+Pj4gKyAgICAgICAgLy8gVGhlIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXyBz eW1ib2wgaXMgbm90IGFjdHVhbGx5IGFuIGFic29sdXRlIHN5bWJvbCwNCj4+PiArICAgICAgICAv LyBidXQgY2FycmllcyB0aGUgU0hOX0FCUyBzZWN0aW9uIGluZGV4IGZvciBoaXN0b3JpY2FsIHJl YXNvbnMuDQo+Pj4gKyAgICAgICAgLy8gSXQgbXVzdCBiZSBhY2NvbXBhbmllZCBieSBhIFJfKl9H T1RfKiB0eXBlIHJlbG9jYXRpb24gb24gYQ0KPj4+ICsgICAgICAgIC8vIHN1YnNlcXVlbnQgaW5z dHJ1Y3Rpb24sIHdoaWNoIHdlIGhhbmRsZSBiZWxvdywgc3BlY2lmaWNhbGx5IHRvIGF2b2lkDQo+ Pj4gKyAgICAgICAgLy8gdGhlIEdPVCBpbmRpcmVjdGlvbiwgYW5kIHRvIHJlZmVyIHRvIHRoZSBz eW1ib2wgZGlyZWN0bHkuIFRoaXMgbWVhbnMNCj4+PiArICAgICAgICAvLyB3ZSBjYW4gc2ltcGx5 IGRpc3JlZ2FyZCBkaXJlY3QgcmVmZXJlbmNlcyB0byB0aGUgR09UIHN5bWJvbCBpdHNlbGYsDQo+ Pj4gKyAgICAgICAgLy8gYXMgdGhlIHJlc3VsdGluZyB2YWx1ZSB3aWxsIG5ldmVyIGJlIHVzZWQu DQo+Pj4gKyAgICAgICAgLy8NCj4+PiArICAgICAgICBpZiAoU3ltLT5zdF9zaG5keCA9PSBTSE5f QUJTKSB7DQo+Pj4gKyAgICAgICAgICBjb25zdCBVSU5UOCAqU3ltTmFtZSA9IEdldFN5bU5hbWUg KFN5bSk7DQo+Pj4gKyAgICAgICAgICBpZiAoc3RyY21wICgoQ0hBUjggKilTeW1OYW1lLCAiX0dM T0JBTF9PRkZTRVRfVEFCTEVfIikgPT0gMCkgew0KPj4+ICsgICAgICAgICAgICBjb250aW51ZTsN Cj4+PiArICAgICAgICAgIH0NCj4+PiArICAgICAgICB9DQo+Pj4gKw0KPj4+ICAgICAgICAgICAg Ly8NCj4+PiAgICAgICAgICAgIC8vIENoZWNrIHNlY3Rpb24gaGVhZGVyIGluZGV4IGZvdW5kIGlu IHN5bWJvbCB0YWJsZSBhbmQgZ2V0IHRoZSBzZWN0aW9uDQo+Pj4gICAgICAgICAgICAvLyBoZWFk ZXIgbG9jYXRpb24uDQo+Pj4gQEAgLTE0NDgsNiArMTQ2NCwyMyBAQCBXcml0ZVNlY3Rpb25zNjQg KA0KPj4+ICAgICAgICAgICAgICBzd2l0Y2ggKEVMRl9SX1RZUEUoUmVsLT5yX2luZm8pKSB7DQo+ Pj4gICAgICAgICAgICAgICAgSU5UNjQgT2Zmc2V0Ow0KPj4+DQo+Pj4gKyAgICAgICAgICBjYXNl IFJfQUFSQ0g2NF9MRDY0X0dPVE9GRl9MTzE1Og0KPj4+ICsgICAgICAgICAgY2FzZSBSX0FBUkNI NjRfTEQ2NF9HT1RQQUdFX0xPMTU6DQo+Pj4gKyAgICAgICAgICAgIC8vDQo+Pj4gKyAgICAgICAg ICAgIC8vIENvbnZlcnQgaW50byBhbiBBRFIgaW5zdHJ1Y3Rpb24gdGhhdCByZWZlcnMgdG8gdGhl IHN5bWJvbCBkaXJlY3RseS4NCj4+PiArICAgICAgICAgICAgLy8NCj4+PiArICAgICAgICAgICAg T2Zmc2V0ID0gU3ltLT5zdF92YWx1ZSAtIFJlbC0+cl9vZmZzZXQ7DQo+Pj4gKw0KPj4+ICsgICAg ICAgICAgICAqKFVJTlQzMiAqKVRhcmcgJj0gMHgxMDAwMDAxZjsNCj4+PiArICAgICAgICAgICAg KihVSU5UMzIgKilUYXJnIHw9ICgoT2Zmc2V0ICYgMHgxZmZmZmMpIDw8ICg1IC0gMikpIHwgDQo+ Pj4gKyAoKE9mZnNldCAmIDB4MykgPDwgMjkpOw0KPj4+ICsNCj4+PiArICAgICAgICAgICAgaWYg KE9mZnNldCA8IC0weDEwMDAwMCB8fCBPZmZzZXQgPiAweGZmZmZmKSB7DQo+Pj4gKyAgICAgICAg ICAgICAgRXJyb3IgKE5VTEwsIDAsIDMwMDAsICJJbnZhbGlkIiwgIldyaXRlU2VjdGlvbnM2NCgp OiAlcyBmYWlsZWQgdG8gcmVsYXggR09UIGJhc2VkIHN5bWJvbCByZWZlcmVuY2UgLSBpbWFnZSBp cyB0b28gYmlnICg+MSBNaUIpLiIsDQo+Pj4gKyAgICAgICAgICAgICAgICBtSW5JbWFnZU5hbWUp Ow0KPj4+ICsgICAgICAgICAgICAgIGJyZWFrOw0KPj4+ICsgICAgICAgICAgICB9DQo+Pj4gKyAg ICAgICAgICAgIGJyZWFrOw0KPj4+ICsNCj4+PiAgICAgICAgICAgICAgY2FzZSBSX0FBUkNINjRf TEQ2NF9HT1RfTE8xMl9OQzoNCj4+PiAgICAgICAgICAgICAgICAvLw0KPj4+ICAgICAgICAgICAg ICAgIC8vIENvbnZlcnQgaW50byBhbiBBREQgaW5zdHJ1Y3Rpb24gLSBzZWUgUl9BQVJDSDY0X0FE Ul9HT1RfUEFHRSBiZWxvdy4NCj4+PiBAQCAtMTY4Niw2ICsxNzE5LDggQEAgV3JpdGVSZWxvY2F0 aW9uczY0ICgNCj4+PiAgICAgICAgICAgICAgICBjYXNlIFJfQUFSQ0g2NF9MRFNUMTI4X0FCU19M TzEyX05DOg0KPj4+ICAgICAgICAgICAgICAgIGNhc2UgUl9BQVJDSDY0X0FEUl9HT1RfUEFHRToN Cj4+PiAgICAgICAgICAgICAgICBjYXNlIFJfQUFSQ0g2NF9MRDY0X0dPVF9MTzEyX05DOg0KPj4+ ICsgICAgICAgICAgICBjYXNlIFJfQUFSQ0g2NF9MRDY0X0dPVE9GRl9MTzE1Og0KPj4+ICsgICAg ICAgICAgICBjYXNlIFJfQUFSQ0g2NF9MRDY0X0dPVFBBR0VfTE8xNToNCj4+PiAgICAgICAgICAg ICAgICAgIC8vDQo+Pj4gICAgICAgICAgICAgICAgICAvLyBObyBmaXh1cHMgYXJlIHJlcXVpcmVk IGZvciByZWxhdGl2ZSByZWxvY2F0aW9ucywgcHJvdmlkZWQgdGhhdA0KPj4+ICAgICAgICAgICAg ICAgICAgLy8gdGhlIHJlbGF0aXZlIG9mZnNldHMgYmV0d2VlbiBzZWN0aW9ucyBoYXZlIGJlZW4g DQo+Pj4gcHJlc2VydmVkIGluDQoNCg==