From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mx.groups.io with SMTP id smtpd.web10.27907.1590722291857069867 for ; Thu, 28 May 2020 20:18:12 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=qd1WBIEF; spf=pass (domain: intel.com, ip: 134.134.136.65, mailfrom: liming.gao@intel.com) IronPort-SDR: 228wz9PgGESgowE4LQtjGfeVzE0mZVkNNkfknRIoeFL5yPRQdDaEJIGmN0XWDI7dHgv8yZ9ovp mWbn0Lzwdxjg== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 May 2020 20:18:11 -0700 IronPort-SDR: RUPxegICUnA8+w7VCgHqmaZ/5OLYq8z9068DoTR9r5fnoJ6CYwDN/WjB57p+0RQqSRfqQuRA2Q opJKW608Y8jg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,447,1583222400"; d="scan'208";a="376582459" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by fmsmga001.fm.intel.com with ESMTP; 28 May 2020 20:18:10 -0700 Received: from FMSMSX109.amr.corp.intel.com (10.18.116.9) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 28 May 2020 20:18:10 -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; Thu, 28 May 2020 20:18:10 -0700 Received: from NAM02-BL2-obe.outbound.protection.outlook.com (104.47.38.55) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 28 May 2020 20:18:10 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Cq3hE9EmpFb70NnHdq+yGR+iYvGk6V/hpgF5PIY1kfDJOhnu8jGJtN+LjzEqbdhtsiEkrp//bqoxJBr6pNGlRf7/JCpimpdoxyGZGzBB8K6mtw/L120ljje7YSc185hS/YoGB7Ahi3lTXDqJ6vNsqLkHoW1Ra2m4ttujCHBEN2qQjsQYySidtEK709j6ll9Jiaz141Ct4mQ2boTQjGGTimvD2EYQPRfz7DHjNztpZdK2Qphmsc2ZyO5k/VmTKf+6qIUQi4OtDg/4EQZJTHoKbB3hgLvVePBf2/rHC7fwqxlfOySHeQzqUJNRB3zMDpimQOEOLtubqiKQL8gLTPrfkg== 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=0rGlZUVeQe2NF8GMavAx25XfjC0u6hlHdmXhcL+Rkgc=; b=hLvJqGsNSJCGa0PjYTh4aRCfqcVL/ls1+S+f1fnqaY9nWU6R416Xp/yMBoBxMmLien8CjItoNUUxm/fp0DZOe6lS7w6l9huSSQh0RaTE+Axm5SjRzvhJzqxhSR5FXpgZvq0A9nfEw5yotYJ6Z3Z6EWBwIY2DSEkBPER5CDqAEOFqP7IevpndAzFGvy/VKFzckQNNHiH2D9sokrd1pxCQTC0/qreUk2W+pB+RS9xj1kEapje8Zm2OjJjSPD33+5vvKG9kq1xGTfG3huFWWuH/3zurzFNp2vFtQuO5mUdqH/GI0FC5wuzIGH0unE4ai0IYCPYOAoOIcyacPj4H8THuQA== 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=0rGlZUVeQe2NF8GMavAx25XfjC0u6hlHdmXhcL+Rkgc=; b=qd1WBIEFrUTy6wzf5h7paVQC5gu8IIWIWGEfSU+wsBHqLW2608Th3nZnnfhbQNieC47bal0F0k0vrPqRUyIKNYRy9RNApMBjz5WHxyi1WQ0tGatP+TIcMydLA27QYRKL9vnSxq0AW40szlQqhpnzbBANubq4LzBLpHXCszZOyq0= Received: from SN6PR11MB3197.namprd11.prod.outlook.com (2603:10b6:805:c5::23) by SN6PR11MB3485.namprd11.prod.outlook.com (2603:10b6:805:b7::13) 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 03:18:08 +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 03:18:08 +0000 From: "Liming Gao" To: "devel@edk2.groups.io" , "lersek@redhat.com" , Leif Lindholm CC: Ard Biesheuvel , "philmd@redhat.com" , "mliska@suse.cz" 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+eAgAAinwCABcrqgIABN4WAgAGhGoCAAKcGgIAAdcDQ Date: Fri, 29 May 2020 03:18:08 +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: <6d6e3bb8-647c-42c4-5143-f64f5e6ba81b@redhat.com> 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.217] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 612a2e74-9bdf-462f-05dc-08d8037ee911 x-ms-traffictypediagnostic: SN6PR11MB3485: 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: jUJBLjPNDMrYQwCmh3D85BurpExLG393itjKpDQRUJGbHyY+uOAI1e0fzXQR+re31Zzh+3qBH50kEf64Aq1N6DCPbrD0eXraIJeF3C+krGPckvfXr3ryNKCySUHkwo/Em4wK3WiT5ziqNlmMEk3PkgC6xzos3FJ8po3vWFHDIZD78TZt1/z87gjluiEdTxJ95Te/0pNMRvfYDJBHWituE76Bupw0z91+HK47j5xkKRIKr2ze3RMbbuYGX0inlOdNNoW4DR+bmI/dSgOsY+7zGZaF3Cxm5HeeCbU8d/CS0zhDyIzi5hjagmdeDgluoWPyQcl+kqoUVwZNjp0mj7upjbxsBF27JCxrsXMWpp+8tXJdurVb1bObZY/zgXTLhkhNELPv6M2uaMnLlg6ZkfMViA== 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:(136003)(376002)(366004)(346002)(396003)(39860400002)(86362001)(71200400001)(76116006)(33656002)(9686003)(478600001)(6506007)(186003)(53546011)(966005)(83380400001)(4326008)(7696005)(26005)(5660300002)(52536014)(316002)(8676002)(2906002)(66556008)(55016002)(110136005)(66946007)(64756008)(66446008)(66476007)(8936002)(54906003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: NBQSpt0zV03hHmH9AM2OmK7VuZPfrDOLN7MQarEMppJ7bsWji28cUUgMFRgmxqhm6DLapUzlwzhYpLcl/ZvTURy855DlqYT0BdqwDXyiFSL2H+LGyTsFXGcFt5mtK5kyJiLoSfPRcVuEEe+81X3XJPSdR67Zn7zHRxgOH1k61RLvaGaYN3LEnfbKOv2JNk4HugTb+K0ai3Kv6lvEAjo2dO76tFKRu8uCTu+an0rPFkOK6+E474ilhB0KHTEFrNTtZ9c6VHQsMsHXnxVryWSI/guyaA4kAoo90s6IPuB1gHE4gQSXZKdq2dvTuwHK7gVro+BZHBFa0Zg00gDMh32SoXl5eX6rG3BCQWLuJMGEV3mKHHUcFqRNA8G88vO8iJ6+vZSTFPVbmuGwZq6ceksPgDY3Js6Owvjng62GTdV3wbS8K6sQ6J1/IZDbeEixv9Q/cB5hcAaOTAikdnesIGGwlRVEQy3WatJKAOgxYDFjLrztFUQOpCiL8RQP/paZZDIR x-ms-exchange-transport-forked: True MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 612a2e74-9bdf-462f-05dc-08d8037ee911 X-MS-Exchange-CrossTenant-originalarrivaltime: 29 May 2020 03:18:08.2335 (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: NPVXXBOxOMfdnLzZpvQ5mEzSQk4KLwZfaUgkwBDKvckkbU7o/ChJh1JUlHeSOE/pQmaNFbFcPJDUEphrcYh78Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR11MB3485 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 TGVpZjoNCiBJIGdldCB0aGUgcG9pbnQgdGhhdCB0aGUgbGludXggZGlzdHJpYnV0aW9uIGRlZmF1 bHQgR0NDIHZlcnNpb24gbWF5IGJlIDEwIG9yIGFib3ZlLiBXaXRob3V0IHRoaXMgZml4LCB0aG9z ZSBkZXZlbG9wZXJzIGNhbuKAmXQgcGFzcyBidWlsZCBlZGsyLXN0YWJsZTIwMjAwNS4gU28sIHlv dSB0aGluayB0aGlzIGlzIGEgY3JpdGljYWwgaXNzdWUgdG8gY2F0Y2ggc3RhYmxlIHRhZyAyMDIw MDUuIA0KDQpBcmQ6DQogIEZvciB0aGlzIHBhdGNoLCBJIGhhdmUgdHdvIG1pbm9yIGNvbW1lbnRz Lg0KMSkgSSBzdWdnZXN0IHRvIHJlbW92ZSBMaW5rOiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29y ZS5vcmcvc2hvd19idWcuY2dpP2lkPTI3MjMgZnJvbSBjb21tZW50cywgYmVjYXVzZSB0aGlzIGlu Zm9ybWF0aW9uIGhhcyBiZWVuIGluIHRoZSBjb21taXQgbWVzc2FnZS4gDQoyKSBDYW4gd2UgdGhp bmsgX19HTlVDX01JTk9SX18gaXMgYWx3YXlzIGRlZmluZWQ/IERvIHdlIG5lZWQgdG8gY2hlY2sg aXRzIHZhbHVlIGFmdGVyIGNoZWNrIHdoZXRoZXIgaXQgaXMgZGVmaW5lZCBvciBub3Q/DQoNClRo YW5rcw0KTGltaW5nDQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTogZGV2ZWxAZWRr Mi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YgTGFzemxvIEVy c2VrDQpTZW50OiAyMDIw5bm0NeaciDI55pelIDQ6MDMNClRvOiBMZWlmIExpbmRob2xtIDxsZWlm QG51dmlhaW5jLmNvbT4NCkNjOiBBcmQgQmllc2hldXZlbCA8YXJkLmJpZXNoZXV2ZWxAYXJtLmNv bT47IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBHYW8sIExpbWluZyA8bGltaW5nLmdhb0BpbnRlbC5j b20+OyBwaGlsbWRAcmVkaGF0LmNvbTsgbWxpc2thQHN1c2UuY3oNClN1YmplY3Q6IFJlOiBbZWRr Mi1kZXZlbF0gW1BBVENIXSBNZGVQa2cvSW5jbHVkZTogQUFSQ0g2NDogZGlzYWJsZSBvdXRsaW5l IGF0b21pY3Mgb24gR0NDIDEwLjIrDQoNCk9uIDA1LzI4LzIwIDEyOjA1LCBMZWlmIExpbmRob2xt IHdyb3RlOg0KPiBPbiBXZWQsIE1heSAyNywgMjAyMCBhdCAxMToxMjoyMyArMDIwMCwgTGFzemxv IEVyc2VrIHdyb3RlOg0KPj4+Pj4gT2ggYW5kIEkgdGhpbmsgYm90aCB0aGlzIHBhdGNoIGFuZCB0 aGUgYXNzZW1ibHkgbGFuZ3VhZ2UgDQo+Pj4+PiBpbXBsZW1lbnRhdGlvbiBmb3IgdGhlIGF0b21p Y3Mgc2hvdWxkIGJlIGRlbGF5ZWQgYWZ0ZXIgdGhlIHN0YWJsZSANCj4+Pj4+IHRhZy4gZ2NjLTEw IGlzIGEgbmV3IHRvb2xjaGFpbjsgc28gZXZlbiBpZiB3ZSBkb24ndCBpbnRyb2R1Y2UgYSANCj4+ Pj4+IG5ldyB0b29sY2hhaW4gdGFnIHN1Y2ggYXMNCj4+Pj4+IEdDQzEwIGZvciBpdCwgd2hhdGV2 ZXIgd2UgZG8gaW4gb3JkZXIgdG8gbWFrZSBpdCB3b3JrLCB0aGF0J3MgDQo+Pj4+PiBmZWF0dXJl IGVuYWJsZW1lbnQgaW4gbXkgYm9vay4NCj4+Pj4NCj4+Pj4gV29ya3MgZm9yIG1lLiBCeSB0aGUg dGltZSB0aGUgbmV4dCBzdGFibGUgdGFnIGNvbWVzIGFyb3VuZCwgZWFybHkgDQo+Pj4+IGFkb3B0 ZXJzIHRoYXQgYXJlIG5vdyBvbiBHQ0MgMTAuMSB3aWxsIGxpa2VseSBoYXZlIG1vdmVkIHRvIDEw LjIgYnkgDQo+Pj4+IHRoYXQgdGltZSwgYW5kIHNvIHdlIG1heSBub3QgbmVlZCB0aGUgYXNzZW1i bHkgcGF0Y2ggYXQgYWxsLg0KPj4+DQo+Pj4gSSdtIG5vdCBlY3N0YXRpYyB0aGF0IHdlJ2xsIGJl IHJlbGVhc2luZyB0aGUgZmlyc3Qgc3RhYmxlIHRhZyBrbm93biANCj4+PiB0byBicmVhayB3aXRo IGN1cnJlbnQgdG9vbGNoYWlucy4NCj4+DQo+PiBJZiB0aGlzIGJyZWFrYWdlIGFmZmVjdHMgImN1 cnJlbnQgdG9vbGNoYWlucyIsIHRoZW4gd2h5IHdhcyANCj4+IDxodHRwczovL2J1Z3ppbGxhLnRp YW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTI3MjM+IG9ubHkgcmVwb3J0ZWQgDQo+PiBvbiAy MDIwLU1heS0xOSwgZm91ciBkYXlzIGludG8gdGhlIHNvZnQgZmVhdHVyZSBmcmVlemU/DQo+IA0K PiBJIGFncmVlIHRoZSB0aW1pbmcgaXMgY3JhcC4NCj4gDQo+Pj4gVGhpcyBpc24ndCBqdXN0IGFm ZmVjdGluZyByYW5kb20gY3JhemllcyBwdWxsaW5nIGxhdGVzdCB0b29sY2hhaW5zIA0KPj4+IGRv d24sIGJ1dCBwZW9wbGUgdXNpbmcgdGhlaXIgZGlzdHJvIGRlZmF1bHRzIChuYXRpdmUgb3IgY3Jv c3MpLg0KPj4NCj4+IC4uLiAicGVvcGxlIHVzaW5nIHRoZWlyIGRpc3RybyBkZWZhdWx0cyIgdG8g Km5vdCogYnVpbGQgdXBzdHJlYW0gZWRrMiANCj4+IHVudGlsIDIwMjAtTWF5LTE5LCBhcHBhcmVu dGx5Lg0KPiANCj4gT3IgZGlzdHJvIGRlZmF1bHRzIGNoYW5naW5nIGluIGJldHdlZW4uIEkgbWVh biwgd2UgY291bGQgc2F5ICJBcmNoIGlzIA0KPiB0aGUgc2FtZSBhcyBhbnkgb3RoZXIgZGlzdHJv J3MgdW5zdGFibGUiLCBidXQgSSB3b3VsZG4ndCB3YW50IHRvIGdvIA0KPiBkb3duIHRoYXQgcm91 dGUgLSBJIGtub3cgcGVvcGxlIHdobyB1c2UgaXQgZm9yIGRldmVsb3BpbmcgYWxzbyBmb3IgDQo+ IHFlbXUgYW5kIGxpbnV4Lg0KPiANCj4gQXJnaCwgSSBhbHNvIGp1c3QgcmVhbGlzZWQgdGhlIGVy cm9yIHJlcG9ydCBJIHNhdyB0d28gZGF5cyBhZnRlciBBcmQncyANCj4gaW50cmluc2ljcyBwYXRj aCBoaXQgdGhlIGxpc3Qgd2FzIG5vdCBhIHB1YmxpYyByZXBvcnQuIFllcywgaWYgdGhpcyANCj4g aGFkIGFmZmVjdGVkIG9ubHkgaW4tZGV2ZWxvcG1lbnQvdW5zdGFibGUgZGlzdHJpYnV0aW9ucywg SSBhZ3JlZSB0aGlzIA0KPiBpc24ndCBzb21ldGhpbmcgd2Ugc2hvdWxkIHRyeSB0byBkZWFsIHdp dGggdXBzdHJlYW0uDQo+IA0KPj4+IEkgZG9uJ3QgcmVjYWxsIGlmIDEwLjEgZW5kZWQgdXAgYmVp bmcgZGVmYXVsdCBpbiBGMzIsIGJ1dCBpdCB3YXMgDQo+Pj4gZGVmaW5pdGVseSBpbmNsdWRlZC4g SW4gQXJjaCwgaXQgZG9lcyBhcHBlYXIgZGVmYXVsdC4NCj4+Pg0KPj4+IERlYmlhbi9VYnVudHUg YXJlIHVuYWZmZWN0ZWQgaW4gdGhlaXIgc3RhYmxlIHJlbGVhc2VzLg0KPj4+DQo+Pj4gSSBhZ3Jl ZSBpdCdzIGEgdHJhbnNpdGlvbmFsIGlzc3VlLCBidXQgSSB3b3VsZCByZWFsbHkgcHJlZmVyIHRv IGhhdmUgDQo+Pj4gdGhlIGludHJpbnNpY3MgaW5jbHVkZWQgaW4gdGhlIHJlbGVhc2UuDQo+Pg0K Pj4gT0ssIGxldCdzIGRlbGF5IHRoZSByZWxlYXNlIHRoZW4sIGJ5IGEgZmV3IGRheXMuIEkgYWdy ZWUgdGhlIHByZXNlbnQgDQo+PiBwYXRjaCBtYXkgcXVhbGlmeSBhcyBhIGJ1Z2ZpeCwgYnV0IHRo ZSBvdGhlciBwYXRjaCB3aXRoIHRoZSBhc3NlbWJseSANCj4+IGxhbmd1YWdlIGludHJpbnNpY3Mg ZG9lc24ndC4gSWYgaXQncyByZWFsbHkgdGhhdCBpbXBvcnRhbnQgdG8gaGF2ZSBpbiANCj4+IHRo ZSB1cGNvbWluZyBzdGFibGUgdGFnLCB0aGVuIGl0J3Mgd29ydGggZGVsYXlpbmcgdGhlIHRhZyBm b3IuIEknbSANCj4+IGZpbmUgZGVsYXlpbmcgdGhlIHJlbGVhc2UgZm9yIGl0OyBpdCB3b3VsZG4n dCBiZSB3aXRob3V0IHByZWNlZGVudC4NCj4gDQo+IEkgd291bGQgYXJndWUgaXQgKmlzKiBhIGJ1 Z2ZpeCwgc2luY2UgaXQgb25seSBoYXMgYW4gZWZmZWN0IG9uIGJ1aWxkcyANCj4gdGhhdCB3b3Vs ZCBvdGhlcndpc2UgZmFpbC4NCg0KT0suIFRoYXQncyBhIGdvb2QgYXJndW1lbnQuIEZyb20gbXkg UE9WLCBmZWVsIGZyZWUgdG8gbWVyZ2UgKGJvdGggcGF0Y2hlcykuDQoNClRoYW5rcw0KTGFzemxv DQoNCj4gQnV0IEkgYWxzbyBkbyB0aGluayBpdCBpcyBpbXBvcnRhbnQgZW5vdWdoIHRvIGRlbGF5 IHRoZSByZWxlYXNlIGlmIHdlIA0KPiBmZWVsIHRoYXQgaXMgbmVjZXNzYXJ5Lg0KPiANCj4gLw0K PiAgICAgTGVpZg0KPiANCj4+IEFsc28sIEkgdGhpbmsgQXJkJ3MgYXNzZW1ibHkgbGFuZ3VhZ2Ug cGF0Y2ggbmVlZHMgYSBUZXN0ZWQtYnkgZnJvbSANCj4+IEdhcnkgYXQgdGhlIGxlYXN0IChyZXBv cnRlciBvZiBUaWFub0NvcmUjMjcyMykuIFBsZWFzZSByZWFjaCBvdXQgdG8gDQo+PiBoaW0gaW4g dGhhdCB0aHJlYWQuDQo+Pg0KPj4gLi4uIE1vcmUgcHJlY2lzZWx5LCBwbGVhc2UgKnBpbmcqIEdh cnkgZm9yIGEgVGVzdGVkLWJ5IGluIHRoYXQgDQo+PiB0aHJlYWQsIGJlY2F1c2UgQXJkIENDJ2Qg aGltIGZyb20gdGhlIHN0YXJ0LCBhbmQgZXZlbiBjcmVkaXRlZCBHYXJ5IA0KPj4gaW4gdGhlIGNv bW1pdCBtZXNzYWdlLg0KPj4NCj4+IFRoYW5rcywNCj4+IExhc3psbw0KPj4NCj4gDQoNCg0KDQoN Cg==