From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mx.groups.io with SMTP id smtpd.web12.35829.1590762556667805449 for ; Fri, 29 May 2020 07:29:16 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=XgY7U+a5; spf=pass (domain: intel.com, ip: 192.55.52.120, mailfrom: liming.gao@intel.com) IronPort-SDR: NYNcACcnWLonh9O2XYkzoL5qtD6YoqZWWm1NdxLnZera4G4ZgcFa/Es7Zlx9JYtpXBL60rPy4k BGwAQjXtGiwQ== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 May 2020 07:29:15 -0700 IronPort-SDR: OyrxBzM9r+mm2cDuJtWP6q/PNFYTytgJgFK9jW/3nH/iZvVZiRcyxntMONRHopwOA+mXwinuFh rYANDMC8Rm6w== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,448,1583222400"; d="scan'208";a="303141287" Received: from fmsmsx105.amr.corp.intel.com ([10.18.124.203]) by orsmga008.jf.intel.com with ESMTP; 29 May 2020 07:29:15 -0700 Received: from FMSMSX109.amr.corp.intel.com (10.18.116.9) by FMSMSX105.amr.corp.intel.com (10.18.124.203) with Microsoft SMTP Server (TLS) id 14.3.439.0; Fri, 29 May 2020 07:29:14 -0700 Received: from FMSEDG001.ED.cps.intel.com (10.1.192.133) by fmsmsx109.amr.corp.intel.com (10.18.116.9) with Microsoft SMTP Server (TLS) id 14.3.439.0; Fri, 29 May 2020 07:29:14 -0700 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (104.47.36.54) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (TLS) id 14.3.439.0; Fri, 29 May 2020 07:29:14 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VVTEZAAIY1TdRjuzX9BBLSKx3Ey32T1QMUgD8BUuTTZ+okfrbtCmkhWrAWlkF4devi7VlxXs7z2S+rvfrP4HES3j2CkHMpSimM2bAWjQWEJoeClzUR7KprW9M/EnPqfugUSXoOF/o0rA0YqJbrSVwHT8ldftby5kUT1wCq6KoSg6xC+mXY8ngSVSra0zyzCgXV3I3L1Miyixn17QHH3W+Rc/NaAnbYws1X1DsibNSbWTAnpCA5hsEBDIf1XJT54/dHJDBmL7n4EE61xuY071MSFjM+kg8RRh6zmf6u600Jyuk7kKpBNasd+wWg8Clk65VrdTFBLIrBqYclUd9X65LQ== 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-SenderADCheck; bh=jZ3djZzR5BC9qt7C+R3ZFQ5ngtLZu5mkwNtdOXc6A/Y=; b=Ly1Gu/BTwOblDNQOstAEbPftX22VYqFHiN6dIo20C82k90S4XGQsmcWIADwjSUP5OK4YYpHFGu998T6A6edHPg7ow8Qv05vPWILCIf9YV/2a+SIX0lOzfTBPw3ziterd+aUbeH13gb+PaikcDXX5+6sJxUWpJFvngoMhvf4iXbMTQqbt7rzrzAgfBtaqvdP+9P3EdFacF2XOEGWPfGK4SCTN8gHHhz7vKBO8AFAcz4t+pfNeEQd9jkp5LLMw3CctCLyPtgNLOneR/vcwzriTfRiOnZRDlZ4jgektQNr9600YywgAtq4TWdcFTJamFGF/9Y65JcCRM6pcdipPI4YsBw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jZ3djZzR5BC9qt7C+R3ZFQ5ngtLZu5mkwNtdOXc6A/Y=; b=XgY7U+a5xn+ZqrxszIdGbMeKTcqAF0mb0+QrIa0zGM6iqDcjZJHLko6XU3KnclP7UKeHDudvyk91lc58utx8H1hDDr6eH7Rho9XIU6MID9ZNJS3yRUEh6rLspb98Q50bbHt4W5mcBu91AJytyqfqHDroYDrmy1h6MmvhgRcjVlY= Received: from SN6PR11MB3197.namprd11.prod.outlook.com (2603:10b6:805:c5::23) by SN6PR11MB2880.namprd11.prod.outlook.com (2603:10b6:805:58::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3045.19; Fri, 29 May 2020 14:29:13 +0000 Received: from SN6PR11MB3197.namprd11.prod.outlook.com ([fe80::a551:8867:924a:7217]) by SN6PR11MB3197.namprd11.prod.outlook.com ([fe80::a551:8867:924a:7217%5]) with mapi id 15.20.3045.018; Fri, 29 May 2020 14:29:13 +0000 From: "Liming Gao" To: "devel@edk2.groups.io" , "ard.biesheuvel@arm.com" , "lersek@redhat.com" , "Leif Lindholm" CC: "philmd@redhat.com" , "mliska@suse.cz" , "Kinney, Michael D" , "afish@apple.com" Subject: Re: [edk2-devel] [PATCH] MdePkg/Include: AARCH64: disable outline atomics on GCC 10.2+ Thread-Topic: [edk2-devel] [PATCH] MdePkg/Include: AARCH64: disable outline atomics on GCC 10.2+ Thread-Index: AQHWMHPrG43EhRnR3kWLO/+sxUzYiqi0h+eAgAAinwCABcrqgIABN4WAgAGhGoCAAKcGgIAAdcDQgAAtSACAABHmUA== Date: Fri, 29 May 2020 14:29:13 +0000 Message-ID: References: <20200522101202.15016-1-ard.biesheuvel@arm.com> <36effdcd-91a7-da00-855d-570e64d650b8@redhat.com> <5587f0f0-9f30-62ce-9d07-5eed4ac6daa7@arm.com> <20200526143725.GM1923@vanye> <0f2f90b9-e2fe-5658-e507-299a387e0ce5@redhat.com> <20200528100515.GC1923@vanye> <6d6e3bb8-647c-42c4-5143-f64f5e6ba81b@redhat.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.2.0.6 dlp-product: dlpe-windows dlp-reaction: no-action authentication-results: edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.55.52.212] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 255ed355-a33d-4566-7489-08d803dca8d1 x-ms-traffictypediagnostic: SN6PR11MB2880: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 04180B6720 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: WKUHfXIgCNwYODILjWW8ntLRRAhxafsqYUZhIZQmVcF01iWg/+hxUsL8i/vIjyAzjUvpMnyr1m6dXhZvYiY5xcgRmJZcME7c6wfyGSHVGDvdFl4jMgmiihMA3G90dzbPu7d2YZwkVdcUaRMoj1p1UUCXykGuJuZJA/d1utUjupKCzYPqa/7NZL0N30iPLczzvPkF2UKHzI5Y5anxeXF0PtfWhKnQYCoXmSHw9OOvxk9IW92uXMVhLaKyuXkzkU8s/IADKFt5cvaGOf5/8PIJ7yAcsIUDuWzCWyJugn3CM56vO2QSBuqdHz2m0skurrmGzL1fhHiX+KIjMQcggVtC6JpTaL4ic72yhZad4a9cwEWH45TgZyh6Zi/x0zLR+Jzyntg8i8Esn72BhJQRXjOAxA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR11MB3197.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(346002)(396003)(136003)(366004)(39860400002)(376002)(66556008)(4326008)(110136005)(33656002)(54906003)(76116006)(316002)(66446008)(6506007)(8936002)(9686003)(64756008)(8676002)(83380400001)(52536014)(186003)(966005)(66946007)(66476007)(55016002)(2906002)(478600001)(26005)(53546011)(7696005)(86362001)(5660300002)(71200400001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: 12HZx/afWEjCPx8pQAMEiQMVc5NaWdPWh/Yruzprjw0ehVw0AG4kQzGIxtoNDR9j7w3STGNy+RkHFjIGU7biMSp7UHYP945tYQD93SQIoIBlFuy9VQim48cLX9wAofZbmjjKOOj7La3ARHYRc/z9NgBq+2re+aD2yFC1BnouopuNY5xCRdEmUYciIhO0JOZI8rtIdiEmCeS+bJwUZvWxqXwPGxNkJl8KbVdiuPrJZqOO2lYYaAbcCQLUl5P3gcqYt//ojZsZvsNRyztDxMjTDnru7MqP2OSDX4Nw5Ius2cgya5lhLnrvX5nqVo6eDfne8l95xby5SSYEDRXo1MX1KR/TfWj8OK4dKghs3HI1xv7kL12snnEyaf+cVVul9Cwscolui7o4hzSGFONm4DPv1GLzttvZ3WVuDFVs/R6lFR5yc2pr5+H2m0j1x8BdzI3CrqJ7M+ZGCOJGTECIJr8HqPWk4V04wA8NrXRMye+yctHN4O8ACwvLeydk7SdxUmTY MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 255ed355-a33d-4566-7489-08d803dca8d1 X-MS-Exchange-CrossTenant-originalarrivaltime: 29 May 2020 14:29:13.1403 (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: eKuFlvouIAQLhOHGeIptrWr5smuWFeEk2uGZiK1YHXRpcnwsjr9VTJc3gHAVNnXbV/A/HQgAM4jcUXRu/gh6Ew== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR11MB2880 Return-Path: liming.gao@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 QXJkOg0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IGRldmVsQGVkazIu Z3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mIEFyZCBCaWVzaGV1 dmVsDQo+IFNlbnQ6IEZyaWRheSwgTWF5IDI5LCAyMDIwIDE6NDcgUE0NCj4gVG86IGRldmVsQGVk azIuZ3JvdXBzLmlvOyBHYW8sIExpbWluZyA8bGltaW5nLmdhb0BpbnRlbC5jb20+OyBsZXJzZWtA cmVkaGF0LmNvbTsgTGVpZiBMaW5kaG9sbSA8bGVpZkBudXZpYWluYy5jb20+DQo+IENjOiBwaGls bWRAcmVkaGF0LmNvbTsgbWxpc2thQHN1c2UuY3oNCj4gU3ViamVjdDogUmU6IFtlZGsyLWRldmVs XSBbUEFUQ0hdIE1kZVBrZy9JbmNsdWRlOiBBQVJDSDY0OiBkaXNhYmxlIG91dGxpbmUgYXRvbWlj cyBvbiBHQ0MgMTAuMisNCj4gDQo+IE9uIDUvMjkvMjAgNToxOCBBTSwgTGltaW5nIEdhbyB2aWEg Z3JvdXBzLmlvIHdyb3RlOg0KPiA+IExlaWY6DQo+ID4gICBJIGdldCB0aGUgcG9pbnQgdGhhdCB0 aGUgbGludXggZGlzdHJpYnV0aW9uIGRlZmF1bHQgR0NDIHZlcnNpb24gbWF5IGJlIDEwIG9yIGFi b3ZlLiBXaXRob3V0IHRoaXMgZml4LCB0aG9zZSBkZXZlbG9wZXJzIGNhbuKAmXQgcGFzcw0KPiBi dWlsZCBlZGsyLXN0YWJsZTIwMjAwNS4gU28sIHlvdSB0aGluayB0aGlzIGlzIGEgY3JpdGljYWwg aXNzdWUgdG8gY2F0Y2ggc3RhYmxlIHRhZyAyMDIwMDUuDQo+ID4NCj4gPiBBcmQ6DQo+ID4gICAg Rm9yIHRoaXMgcGF0Y2gsIEkgaGF2ZSB0d28gbWlub3IgY29tbWVudHMuDQo+ID4gMSkgSSBzdWdn ZXN0IHRvIHJlbW92ZSBMaW5rOiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19i dWcuY2dpP2lkPTI3MjMgZnJvbSBjb21tZW50cywgYmVjYXVzZSB0aGlzIGluZm9ybWF0aW9uIGhh cw0KPiBiZWVuIGluIHRoZSBjb21taXQgbWVzc2FnZS4NCj4gDQo+IEkgdGhpbmsgaXQgd291bGQg YmUgaGVscGZ1bCB0byBrZWVwIGl0IGJ1dCBJIHdvbid0IGluc2lzdC4NCj4gDQoNCkkgYWdyZWUg dGhpcyBpcyB1c2VmdWwuIEJ1dCwgd2UgcmVjb3JkIGl0IGluIHRoZSBjb21taXQgbWVzc2FnZS4g SSBwcmVmZXIgdG8gcmVtb3ZlIHRoaXMgbGluayBmcm9tIHNvdXJjZSBjb2RlLg0KV2l0aCB0aGlz IGNoYW5nZSwgUmV2aWV3ZWQtYnk6IExpbWluZyBHYW8gPGxpbWluZy5nYW9AaW50ZWwuY29tPg0K DQpUaGFua3MNCkxpbWluZw0KPiA+IDIpIENhbiB3ZSB0aGluayBfX0dOVUNfTUlOT1JfXyBpcyBh bHdheXMgZGVmaW5lZD8gRG8gd2UgbmVlZCB0byBjaGVjayBpdHMgdmFsdWUgYWZ0ZXIgY2hlY2sg d2hldGhlciBpdCBpcyBkZWZpbmVkIG9yIG5vdD8NCj4gPg0KPiANCj4gWWVzIF9fR05VQ19NSU5P Ul9fIGlzIGFsd2F5cyBkZWZpbmVkLg0KPiANCj4gDQo+IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVz c2FnZS0tLS0tDQo+ID4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3Jv dXBzLmlvPiBPbiBCZWhhbGYgT2YgTGFzemxvIEVyc2VrDQo+ID4gU2VudDogMjAyMOW5tDXmnIgy OeaXpSA0OjAzDQo+ID4gVG86IExlaWYgTGluZGhvbG0gPGxlaWZAbnV2aWFpbmMuY29tPg0KPiA+ IENjOiBBcmQgQmllc2hldXZlbCA8YXJkLmJpZXNoZXV2ZWxAYXJtLmNvbT47IGRldmVsQGVkazIu Z3JvdXBzLmlvOyBHYW8sIExpbWluZyA8bGltaW5nLmdhb0BpbnRlbC5jb20+OyBwaGlsbWRAcmVk aGF0LmNvbTsNCj4gbWxpc2thQHN1c2UuY3oNCj4gPiBTdWJqZWN0OiBSZTogW2VkazItZGV2ZWxd IFtQQVRDSF0gTWRlUGtnL0luY2x1ZGU6IEFBUkNINjQ6IGRpc2FibGUgb3V0bGluZSBhdG9taWNz IG9uIEdDQyAxMC4yKw0KPiA+DQo+ID4gT24gMDUvMjgvMjAgMTI6MDUsIExlaWYgTGluZGhvbG0g d3JvdGU6DQo+ID4+IE9uIFdlZCwgTWF5IDI3LCAyMDIwIGF0IDExOjEyOjIzICswMjAwLCBMYXN6 bG8gRXJzZWsgd3JvdGU6DQo+ID4+Pj4+PiBPaCBhbmQgSSB0aGluayBib3RoIHRoaXMgcGF0Y2gg YW5kIHRoZSBhc3NlbWJseSBsYW5ndWFnZQ0KPiA+Pj4+Pj4gaW1wbGVtZW50YXRpb24gZm9yIHRo ZSBhdG9taWNzIHNob3VsZCBiZSBkZWxheWVkIGFmdGVyIHRoZSBzdGFibGUNCj4gPj4+Pj4+IHRh Zy4gZ2NjLTEwIGlzIGEgbmV3IHRvb2xjaGFpbjsgc28gZXZlbiBpZiB3ZSBkb24ndCBpbnRyb2R1 Y2UgYQ0KPiA+Pj4+Pj4gbmV3IHRvb2xjaGFpbiB0YWcgc3VjaCBhcw0KPiA+Pj4+Pj4gR0NDMTAg Zm9yIGl0LCB3aGF0ZXZlciB3ZSBkbyBpbiBvcmRlciB0byBtYWtlIGl0IHdvcmssIHRoYXQncw0K PiA+Pj4+Pj4gZmVhdHVyZSBlbmFibGVtZW50IGluIG15IGJvb2suDQo+ID4+Pj4+DQo+ID4+Pj4+ IFdvcmtzIGZvciBtZS4gQnkgdGhlIHRpbWUgdGhlIG5leHQgc3RhYmxlIHRhZyBjb21lcyBhcm91 bmQsIGVhcmx5DQo+ID4+Pj4+IGFkb3B0ZXJzIHRoYXQgYXJlIG5vdyBvbiBHQ0MgMTAuMSB3aWxs IGxpa2VseSBoYXZlIG1vdmVkIHRvIDEwLjIgYnkNCj4gPj4+Pj4gdGhhdCB0aW1lLCBhbmQgc28g d2UgbWF5IG5vdCBuZWVkIHRoZSBhc3NlbWJseSBwYXRjaCBhdCBhbGwuDQo+ID4+Pj4NCj4gPj4+ PiBJJ20gbm90IGVjc3RhdGljIHRoYXQgd2UnbGwgYmUgcmVsZWFzaW5nIHRoZSBmaXJzdCBzdGFi bGUgdGFnIGtub3duDQo+ID4+Pj4gdG8gYnJlYWsgd2l0aCBjdXJyZW50IHRvb2xjaGFpbnMuDQo+ ID4+Pg0KPiA+Pj4gSWYgdGhpcyBicmVha2FnZSBhZmZlY3RzICJjdXJyZW50IHRvb2xjaGFpbnMi LCB0aGVuIHdoeSB3YXMNCj4gPj4+IDxodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hv d19idWcuY2dpP2lkPTI3MjM+IG9ubHkgcmVwb3J0ZWQNCj4gPj4+IG9uIDIwMjAtTWF5LTE5LCBm b3VyIGRheXMgaW50byB0aGUgc29mdCBmZWF0dXJlIGZyZWV6ZT8NCj4gPj4NCj4gPj4gSSBhZ3Jl ZSB0aGUgdGltaW5nIGlzIGNyYXAuDQo+ID4+DQo+ID4+Pj4gVGhpcyBpc24ndCBqdXN0IGFmZmVj dGluZyByYW5kb20gY3JhemllcyBwdWxsaW5nIGxhdGVzdCB0b29sY2hhaW5zDQo+ID4+Pj4gZG93 biwgYnV0IHBlb3BsZSB1c2luZyB0aGVpciBkaXN0cm8gZGVmYXVsdHMgKG5hdGl2ZSBvciBjcm9z cykuDQo+ID4+Pg0KPiA+Pj4gLi4uICJwZW9wbGUgdXNpbmcgdGhlaXIgZGlzdHJvIGRlZmF1bHRz IiB0byAqbm90KiBidWlsZCB1cHN0cmVhbSBlZGsyDQo+ID4+PiB1bnRpbCAyMDIwLU1heS0xOSwg YXBwYXJlbnRseS4NCj4gPj4NCj4gPj4gT3IgZGlzdHJvIGRlZmF1bHRzIGNoYW5naW5nIGluIGJl dHdlZW4uIEkgbWVhbiwgd2UgY291bGQgc2F5ICJBcmNoIGlzDQo+ID4+IHRoZSBzYW1lIGFzIGFu eSBvdGhlciBkaXN0cm8ncyB1bnN0YWJsZSIsIGJ1dCBJIHdvdWxkbid0IHdhbnQgdG8gZ28NCj4g Pj4gZG93biB0aGF0IHJvdXRlIC0gSSBrbm93IHBlb3BsZSB3aG8gdXNlIGl0IGZvciBkZXZlbG9w aW5nIGFsc28gZm9yDQo+ID4+IHFlbXUgYW5kIGxpbnV4Lg0KPiA+Pg0KPiA+PiBBcmdoLCBJIGFs c28ganVzdCByZWFsaXNlZCB0aGUgZXJyb3IgcmVwb3J0IEkgc2F3IHR3byBkYXlzIGFmdGVyIEFy ZCdzDQo+ID4+IGludHJpbnNpY3MgcGF0Y2ggaGl0IHRoZSBsaXN0IHdhcyBub3QgYSBwdWJsaWMg cmVwb3J0LiBZZXMsIGlmIHRoaXMNCj4gPj4gaGFkIGFmZmVjdGVkIG9ubHkgaW4tZGV2ZWxvcG1l bnQvdW5zdGFibGUgZGlzdHJpYnV0aW9ucywgSSBhZ3JlZSB0aGlzDQo+ID4+IGlzbid0IHNvbWV0 aGluZyB3ZSBzaG91bGQgdHJ5IHRvIGRlYWwgd2l0aCB1cHN0cmVhbS4NCj4gPj4NCj4gPj4+PiBJ IGRvbid0IHJlY2FsbCBpZiAxMC4xIGVuZGVkIHVwIGJlaW5nIGRlZmF1bHQgaW4gRjMyLCBidXQg aXQgd2FzDQo+ID4+Pj4gZGVmaW5pdGVseSBpbmNsdWRlZC4gSW4gQXJjaCwgaXQgZG9lcyBhcHBl YXIgZGVmYXVsdC4NCj4gPj4+Pg0KPiA+Pj4+IERlYmlhbi9VYnVudHUgYXJlIHVuYWZmZWN0ZWQg aW4gdGhlaXIgc3RhYmxlIHJlbGVhc2VzLg0KPiA+Pj4+DQo+ID4+Pj4gSSBhZ3JlZSBpdCdzIGEg dHJhbnNpdGlvbmFsIGlzc3VlLCBidXQgSSB3b3VsZCByZWFsbHkgcHJlZmVyIHRvIGhhdmUNCj4g Pj4+PiB0aGUgaW50cmluc2ljcyBpbmNsdWRlZCBpbiB0aGUgcmVsZWFzZS4NCj4gPj4+DQo+ID4+ PiBPSywgbGV0J3MgZGVsYXkgdGhlIHJlbGVhc2UgdGhlbiwgYnkgYSBmZXcgZGF5cy4gSSBhZ3Jl ZSB0aGUgcHJlc2VudA0KPiA+Pj4gcGF0Y2ggbWF5IHF1YWxpZnkgYXMgYSBidWdmaXgsIGJ1dCB0 aGUgb3RoZXIgcGF0Y2ggd2l0aCB0aGUgYXNzZW1ibHkNCj4gPj4+IGxhbmd1YWdlIGludHJpbnNp Y3MgZG9lc24ndC4gSWYgaXQncyByZWFsbHkgdGhhdCBpbXBvcnRhbnQgdG8gaGF2ZSBpbg0KPiA+ Pj4gdGhlIHVwY29taW5nIHN0YWJsZSB0YWcsIHRoZW4gaXQncyB3b3J0aCBkZWxheWluZyB0aGUg dGFnIGZvci4gSSdtDQo+ID4+PiBmaW5lIGRlbGF5aW5nIHRoZSByZWxlYXNlIGZvciBpdDsgaXQg d291bGRuJ3QgYmUgd2l0aG91dCBwcmVjZWRlbnQuDQo+ID4+DQo+ID4+IEkgd291bGQgYXJndWUg aXQgKmlzKiBhIGJ1Z2ZpeCwgc2luY2UgaXQgb25seSBoYXMgYW4gZWZmZWN0IG9uIGJ1aWxkcw0K PiA+PiB0aGF0IHdvdWxkIG90aGVyd2lzZSBmYWlsLg0KPiA+DQo+ID4gT0suIFRoYXQncyBhIGdv b2QgYXJndW1lbnQuIEZyb20gbXkgUE9WLCBmZWVsIGZyZWUgdG8gbWVyZ2UgKGJvdGggcGF0Y2hl cykuDQo+ID4NCj4gPiBUaGFua3MNCj4gPiBMYXN6bG8NCj4gPg0KPiA+PiBCdXQgSSBhbHNvIGRv IHRoaW5rIGl0IGlzIGltcG9ydGFudCBlbm91Z2ggdG8gZGVsYXkgdGhlIHJlbGVhc2UgaWYgd2UN Cj4gPj4gZmVlbCB0aGF0IGlzIG5lY2Vzc2FyeS4NCj4gPj4NCj4gPj4gLw0KPiA+PiAgICAgIExl aWYNCj4gPj4NCj4gPj4+IEFsc28sIEkgdGhpbmsgQXJkJ3MgYXNzZW1ibHkgbGFuZ3VhZ2UgcGF0 Y2ggbmVlZHMgYSBUZXN0ZWQtYnkgZnJvbQ0KPiA+Pj4gR2FyeSBhdCB0aGUgbGVhc3QgKHJlcG9y dGVyIG9mIFRpYW5vQ29yZSMyNzIzKS4gUGxlYXNlIHJlYWNoIG91dCB0bw0KPiA+Pj4gaGltIGlu IHRoYXQgdGhyZWFkLg0KPiA+Pj4NCj4gPj4+IC4uLiBNb3JlIHByZWNpc2VseSwgcGxlYXNlICpw aW5nKiBHYXJ5IGZvciBhIFRlc3RlZC1ieSBpbiB0aGF0DQo+ID4+PiB0aHJlYWQsIGJlY2F1c2Ug QXJkIENDJ2QgaGltIGZyb20gdGhlIHN0YXJ0LCBhbmQgZXZlbiBjcmVkaXRlZCBHYXJ5DQo+ID4+ PiBpbiB0aGUgY29tbWl0IG1lc3NhZ2UuDQo+ID4+Pg0KPiA+Pj4gVGhhbmtzLA0KPiA+Pj4gTGFz emxvDQo+ID4+Pg0KPiA+Pg0KPiA+DQo+ID4NCj4gPg0KPiA+DQo+ID4NCj4gPg0KPiA+DQo+IA0K PiANCj4gDQoNCg==