From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mx.groups.io with SMTP id smtpd.web10.38674.1591022116590063340 for ; Mon, 01 Jun 2020 07:35:16 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=OoTJXIyn; spf=pass (domain: intel.com, ip: 192.55.52.88, mailfrom: liming.gao@intel.com) IronPort-SDR: slREzO5jUjQ5iVHB4iK+M7NLWFIIx+ETnsDDT8zMnaseBtTZjEKQY90v6j57UWKQ26hYfZFWRK aQ7l4Yakg2Cg== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2020 07:35:15 -0700 IronPort-SDR: 8WeJdT3PtMaUj0HkLRGAV4QPPml72XRQGCL+Mgo1JimehJ8VHRwjCSQoWyEOVkKC7kVoviPXI8 GX9bdNFUzklA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,461,1583222400"; d="scan'208";a="272015608" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by orsmga006.jf.intel.com with ESMTP; 01 Jun 2020 07:35:15 -0700 Received: from fmsmsx121.amr.corp.intel.com (10.18.125.36) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.439.0; Mon, 1 Jun 2020 07:35:14 -0700 Received: from FMSEDG001.ED.cps.intel.com (10.1.192.133) by fmsmsx121.amr.corp.intel.com (10.18.125.36) with Microsoft SMTP Server (TLS) id 14.3.439.0; Mon, 1 Jun 2020 07:35:14 -0700 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.173) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (TLS) id 14.3.439.0; Mon, 1 Jun 2020 07:35:14 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DD8vrm4fWg8Bif5pJGSeHRHCEtAgHPACT/aIWLwGu6zsZwB/QfPj+pJpuKZjY7CVQT59dCUZ3Fj0Bss+ZpKr2WuwdAIYPpheE4QTCPtvCF1sUbwnsLCHynvw7TeKzxmKw+WyyB0YIWb1CB7R4HSbnc5iZwTlBQMWxy9sHFWMEjPmtVfVSgXn46d2sgNxxKnqOZpamaS+BtdD1TfdX6awuFzx3rloauj9JZrdm48KuD4GV/vKavgY0ZVdQuzaJ5Lv2eZBVELo/BFvOUAVl+EN76munF/S3/WGiK58sQjBZbSBabBohi5DGzI7IUtyM/mRq9tNAeGLXREjYKUpDLzlBQ== 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=g0yE7/KPi3LyUKhlmaBlX1QfRvOPY1ybUoUa7VbrLK8=; b=mOaorkxXFA6sbLTrf3lVNehfs1MhA+AWAzHtGOAy/h00ox+lxLaze3AbEcl09PajLDJwbfE79xh6i2rzzAR2M/CT2yooXta7Vzbk2zrBFa8LgJbN8YoQRZd9JLRKCPH2lUyv+nSyN3o95RdaD5JIo2pzOV2Q8QhhTv5qc/Qrk4TdUwUP/WLynrlmCBJbPFdGqqSEwrH1eRz50wgZyT+tA32fJofHACuI7IgHb00DaOL7J9s7jP45xffLI36GqQsLbk+ClKJRo+BgdTTnd5SgZjmmOj0s0dWnNAMg1cvELRHrIRSIr9Tj7+bZgyr5bgqSOUVffMRL7KLyZMnDDGtyeg== 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=g0yE7/KPi3LyUKhlmaBlX1QfRvOPY1ybUoUa7VbrLK8=; b=OoTJXIynEsAkSnowdz5uxPZTYzxFRlwkqvyxmkErRNRE9XGlQ8RACiVNA3MNE32R9a6RTLBEN9vMSB4E0XCG2xXuXXmii4UBWU6dhFQ/q7c2YsJ/mu6wja4P9jlxvpJ7bwo6LV9v/9SEHrU6DIBrZvZ8li46eP/JANP1uAQPCL8= Received: from MWHPR11MB1630.namprd11.prod.outlook.com (2603:10b6:301:e::7) by MWHPR11MB1293.namprd11.prod.outlook.com (2603:10b6:300:1e::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3045.21; Mon, 1 Jun 2020 14:35:12 +0000 Received: from MWHPR11MB1630.namprd11.prod.outlook.com ([fe80::50fb:d63c:5958:a67e]) by MWHPR11MB1630.namprd11.prod.outlook.com ([fe80::50fb:d63c:5958:a67e%7]) with mapi id 15.20.3045.022; Mon, 1 Jun 2020 14:35:12 +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" , "Gao, Liming" 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+eAgAAinwCABcrqgIABN4WAgAGhGoCAAKcGgIAAdcDQgAAtSACAABHmUIAAp+AAgAF0GiCAAtjbgIAAQQZA Date: Mon, 1 Jun 2020 14:35:12 +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> <51509986-4950-30b9-73af-874bb991e355@arm.com> <8ab83dc3-45dd-4645-5531-824c13c8b82d@arm.com> In-Reply-To: <8ab83dc3-45dd-4645-5531-824c13c8b82d@arm.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.214] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 41164be7-18b7-4cb5-78d7-08d80638fe10 x-ms-traffictypediagnostic: MWHPR11MB1293: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-forefront-prvs: 0421BF7135 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: pSnKzL4/HviyVbYgG+ZqEB4y515CvqSAGAWQ1NBYmjoviFtD+N3sv6+qxP/Dk4QbUvZGuNikQlZ4vVG7d317yHi7ZIlx52zzILNdGOeGK6yMCUsVYdtotom2dIcNvPNhRE1QcJufNmr+zZwxhNZ5L/ySw+ePLRzCftUA9oCYpUUedUcMmcqfjgJJWPBYG9N6rn3msiPC4zGO8fBIgUWjKYQi57a9z2sQgShWY9cj1brY5cveAZswW/0tF9NcMfBiA6+JqiCbhdC0/tONd35CBGsehvKcC+yxiB7KM+DXdQh2NgNRqXmPKtodo0sZymsgNyklZeUt+8u09j3DBuCIdSjr64E70SYxXlDxTo9XrDbPTc4lA8/t34oJaUCdvJ8KoX/EstR/QNdP6A7OmWxERA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1630.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(39860400002)(396003)(366004)(346002)(376002)(136003)(7696005)(52536014)(53546011)(71200400001)(64756008)(66946007)(66556008)(55016002)(5660300002)(26005)(66446008)(66476007)(76116006)(8936002)(966005)(186003)(107886003)(9686003)(6506007)(33656002)(478600001)(4326008)(8676002)(316002)(54906003)(83380400001)(110136005)(2906002)(86362001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: 94HBEpiE3SKIRoLpIwWayZ7Mr7H7rSaIkkO5QgfGCwDarFFYU2aXu0AqtNvcTSmjTw0cQOCBGWK+9uyaTsKbokD1E4c6BWmgwdMvlUPnW2fVuguI4sOmRjCXMfaYHZVfWb1ZY410s+SVeEb6V/AKzUdpR3laQO3rH6urwAaThBAlE1tYnuxWK/17AOSYSvltMF6viFf7rg51uC9Z6W+8Pm23cuz6XEeuqhKzJeyJX+LZ8bp0M+U+Ao3PeTrq1YadUTynp2VNPUqiDNgtaSzZs56t2d7x/GdcPvywJ3lp3Q+U3VC84X4okPo8vONUoeHUacY1IOzRbICzuDfT+2BhrQVqVcJoILI1pmNvdgKnxuX/lbcp9Ok9ku+b8neOixY6+ehxET3ehdzmZQqW99uESsrRgksNOORX08LCbrTK63CuQPD3EDiphzBbJe9mDf5yixmpgRaDBHdakEUtZ0JZ1J0Hu9FPlczN8jNOGcipf4iR2jEw9nw/VYz6ilFDSxrm MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 41164be7-18b7-4cb5-78d7-08d80638fe10 X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Jun 2020 14:35:12.1413 (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: WgybL14ZQ5WPU4WDXrTP8zmOdBj8oUDIh9tM+scIxB7fS3tuRRzSauJRc3ZTv/HA7CUdsieIBO14C4/Wc4QDQw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1293 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 QXJkOg0KICBGaXJzdCwgTGVmaSBoYXMgY2xhcmlmaWVkIHRoZSByZXF1ZXN0LiBUaGlzIHBhdGNo IGRvZXNuJ3QgbmVlZCB0byBjYXRjaCB0aGUgc3RhYmxlIHRhZy4gDQoNCiAgU2Vjb25kLCBJIHBs YW4gdG8gd2FpdCAxfjIgZGF5cyB0byBjb2xsZWN0IHRoZSBmZWVkYmFjaywgdGhlIG1lcmdlIHRo ZSBjaGFuZ2VzLiBJIHdhbnQgdG8gYXZvaWQgcmV2ZXJ0IGNoYW5nZS4gDQogIEkgZG9uJ3QgbWVh biB0byBtZXJnZSB0aGVtLCB0aGVuIGltbWVkaWF0ZWx5IGNyZWF0ZSB0aGUgc3RhYmxlIHRhZy4g U29ycnkgaWYgSSBicmluZyBjb25mdXNlIHRvIHlvdS4gDQoNCiAgTGFzdCwgb24gY3VycmVudCBw bGFuIGh0dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC9tZXNzYWdlLzYwNDc0LCBJIHdpbGwg bWVyZ2UgdHdvIHBhdGNoZXMgdG9tb3Jyb3cgKDA2LTAyKSwgdGhlbiBjcmVhdGUgdGhlIHN0YWJs ZSB0YWcgKDA2LTAzKS4NCg0KVGhhbmtzDQpMaW1pbmcNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdl LS0tLS0NCj4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlv PiBPbiBCZWhhbGYgT2YgQXJkIEJpZXNoZXV2ZWwNCj4gU2VudDogTW9uZGF5LCBKdW5lIDEsIDIw MjAgNjozMiBQTQ0KPiBUbzogR2FvLCBMaW1pbmcgPGxpbWluZy5nYW9AaW50ZWwuY29tPjsgZGV2 ZWxAZWRrMi5ncm91cHMuaW87IGxlcnNla0ByZWRoYXQuY29tOyBMZWlmIExpbmRob2xtIDxsZWlm QG51dmlhaW5jLmNvbT4NCj4gQ2M6IHBoaWxtZEByZWRoYXQuY29tOyBtbGlza2FAc3VzZS5jejsg S2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsgYWZpc2hAYXBw bGUuY29tDQo+IFN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIXSBNZGVQa2cvSW5jbHVk ZTogQUFSQ0g2NDogZGlzYWJsZSBvdXRsaW5lIGF0b21pY3Mgb24gR0NDIDEwLjIrDQo+IA0KPiBP biA1LzMwLzIwIDU6MTAgUE0sIEdhbywgTGltaW5nIHdyb3RlOg0KPiA+IEFyZDoNCj4gPiAgICBM ZWZpIHJlcXVlc3RzIHRvIGNhdGNoIHRoaXMgY2hhbmdlIGludG8gMjAyMDA1IHN0YWJsZSB0YWcu IEkgYWxzbyBoaWdobGlnaHQgdGhpcyByZXF1ZXN0IGluIGhhcmQgZmVhdHVyZSBmcmVlemUgbm90 aWNlIG1haWwNCj4gaHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVsL21lc3NhZ2UvNjA0MjEu DQo+ID4NCj4gPiAgICBJZiBubyBvYmplY3Rpb24gYmVmb3JlIHRoZSBtaWRkbGUgb2YgbmV4dCB3 ZWVrICgyMDIwLTA2LTAzKSwgdGhpcyBwYXRjaCBjYW4gYmUgbWVyZ2VkIHdpdGggdGhlIHVwZGF0 ZWQgY29tbWVudHMuDQo+ID4NCj4gDQo+IElmIHRoZSBpbnRlbnQgaXMgdG8gYWxsb3cgdGhpbmdz IHRvIHN0YWJpbGl6ZSBhIGJpdCB3aXRoIHRoaXMgcGF0Y2gNCj4gYXBwbGllZCwgYmVmb3JlIGNy ZWF0aW5nIHRoZSB0YWcsIHRoZW4gdGhlIHBhdGNoIHNob3VsZCBiZSBwdXNoZWQNCj4gZWFybGll ciwgbm8/DQo+IA0KPiBUaGVuLCB3ZSBnaXZlIGl0IGEgZmV3IGRheXMgc28gdGhhdCB3ZSBjYW4g cmV2ZXJ0IGl0IGFnYWluIGlmIGFueW9uZQ0KPiBmaW5kcyBhbnkgaXNzdWVzIHdpdGggaXQuDQo+ IA0KPiBQdXNoaW5nIGl0IHJpZ2h0IGJlZm9yZSBjcmVhdGluZyB0aGUgdGFnIGRvZXMgbm90IHNv dW5kIHRvIG1lIGxpa2UgdGhlDQo+IGNvcnJlY3Qgd2F5IHRvIGFwcHJvYWNoIHRoaXMuDQo+IA0K PiANCj4gDQo+ID4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+IEZyb206IGRldmVs QGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mIEFyZCBC aWVzaGV1dmVsDQo+ID4+IFNlbnQ6IFNhdHVyZGF5LCBNYXkgMzAsIDIwMjAgMTI6NTEgQU0NCj4g Pj4gVG86IEdhbywgTGltaW5nIDxsaW1pbmcuZ2FvQGludGVsLmNvbT47IGRldmVsQGVkazIuZ3Jv dXBzLmlvOyBsZXJzZWtAcmVkaGF0LmNvbTsgTGVpZiBMaW5kaG9sbSA8bGVpZkBudXZpYWluYy5j b20+DQo+ID4+IENjOiBwaGlsbWRAcmVkaGF0LmNvbTsgbWxpc2thQHN1c2UuY3o7IEtpbm5leSwg TWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47IGFmaXNoQGFwcGxlLmNvbQ0K PiA+PiBTdWJqZWN0OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSF0gTWRlUGtnL0luY2x1ZGU6IEFB UkNINjQ6IGRpc2FibGUgb3V0bGluZSBhdG9taWNzIG9uIEdDQyAxMC4yKw0KPiA+Pg0KPiA+PiBP biA1LzI5LzIwIDQ6MjkgUE0sIEdhbywgTGltaW5nIHdyb3RlOg0KPiA+Pj4gQXJkOg0KPiA+Pj4N Cj4gPj4+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+Pj4+IEZyb206IGRldmVsQGVk azIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mIEFyZCBCaWVz aGV1dmVsDQo+ID4+Pj4gU2VudDogRnJpZGF5LCBNYXkgMjksIDIwMjAgMTo0NyBQTQ0KPiA+Pj4+ IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgR2FvLCBMaW1pbmcgPGxpbWluZy5nYW9AaW50ZWwu Y29tPjsgbGVyc2VrQHJlZGhhdC5jb207IExlaWYgTGluZGhvbG0gPGxlaWZAbnV2aWFpbmMuY29t Pg0KPiA+Pj4+IENjOiBwaGlsbWRAcmVkaGF0LmNvbTsgbWxpc2thQHN1c2UuY3oNCj4gPj4+PiBT dWJqZWN0OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSF0gTWRlUGtnL0luY2x1ZGU6IEFBUkNINjQ6 IGRpc2FibGUgb3V0bGluZSBhdG9taWNzIG9uIEdDQyAxMC4yKw0KPiA+Pj4+DQo+ID4+Pj4gT24g NS8yOS8yMCA1OjE4IEFNLCBMaW1pbmcgR2FvIHZpYSBncm91cHMuaW8gd3JvdGU6DQo+ID4+Pj4+ IExlaWY6DQo+ID4+Pj4+ICAgICBJIGdldCB0aGUgcG9pbnQgdGhhdCB0aGUgbGludXggZGlzdHJp YnV0aW9uIGRlZmF1bHQgR0NDIHZlcnNpb24gbWF5IGJlIDEwIG9yIGFib3ZlLiBXaXRob3V0IHRo aXMgZml4LCB0aG9zZSBkZXZlbG9wZXJzIGNhbuKAmXQNCj4gcGFzcw0KPiA+Pj4+IGJ1aWxkIGVk azItc3RhYmxlMjAyMDA1LiBTbywgeW91IHRoaW5rIHRoaXMgaXMgYSBjcml0aWNhbCBpc3N1ZSB0 byBjYXRjaCBzdGFibGUgdGFnIDIwMjAwNS4NCj4gPj4+Pj4NCj4gPj4+Pj4gQXJkOg0KPiA+Pj4+ PiAgICAgIEZvciB0aGlzIHBhdGNoLCBJIGhhdmUgdHdvIG1pbm9yIGNvbW1lbnRzLg0KPiA+Pj4+ PiAxKSBJIHN1Z2dlc3QgdG8gcmVtb3ZlIExpbms6IGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3Jl Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjcyMyBmcm9tIGNvbW1lbnRzLCBiZWNhdXNlIHRoaXMgaW5m b3JtYXRpb24gaGFzDQo+ID4+Pj4gYmVlbiBpbiB0aGUgY29tbWl0IG1lc3NhZ2UuDQo+ID4+Pj4N Cj4gPj4+PiBJIHRoaW5rIGl0IHdvdWxkIGJlIGhlbHBmdWwgdG8ga2VlcCBpdCBidXQgSSB3b24n dCBpbnNpc3QuDQo+ID4+Pj4NCj4gPj4+DQo+ID4+PiBJIGFncmVlIHRoaXMgaXMgdXNlZnVsLiBC dXQsIHdlIHJlY29yZCBpdCBpbiB0aGUgY29tbWl0IG1lc3NhZ2UuIEkgcHJlZmVyIHRvIHJlbW92 ZSB0aGlzIGxpbmsgZnJvbSBzb3VyY2UgY29kZS4NCj4gPj4+IFdpdGggdGhpcyBjaGFuZ2UsIFJl dmlld2VkLWJ5OiBMaW1pbmcgR2FvIDxsaW1pbmcuZ2FvQGludGVsLmNvbT4NCj4gPj4+DQo+ID4+ DQo+ID4+DQo+ID4+IFdvcmtzIGZvciBtZS4NCj4gPj4NCj4gPj4gSSB3aWxsIHNlbmQgYSB2MiBh ZnRlciB0aGUgc3RhYmxlIHRhZyBpcyByZWxlYXNlZC4NCj4gPj4NCj4gPj4NCj4gPj4+Pj4gMikg Q2FuIHdlIHRoaW5rIF9fR05VQ19NSU5PUl9fIGlzIGFsd2F5cyBkZWZpbmVkPyBEbyB3ZSBuZWVk IHRvIGNoZWNrIGl0cyB2YWx1ZSBhZnRlciBjaGVjayB3aGV0aGVyIGl0IGlzIGRlZmluZWQgb3Ig bm90Pw0KPiA+Pj4+Pg0KPiA+Pj4+DQo+ID4+Pj4gWWVzIF9fR05VQ19NSU5PUl9fIGlzIGFsd2F5 cyBkZWZpbmVkLg0KPiA+Pj4+DQo+ID4+Pj4NCj4gPj4+Pg0KPiA+Pj4+PiAtLS0tLU9yaWdpbmFs IE1lc3NhZ2UtLS0tLQ0KPiA+Pj4+PiBGcm9tOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxA ZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZiBMYXN6bG8gRXJzZWsNCj4gPj4+Pj4gU2VudDog MjAyMOW5tDXmnIgyOeaXpSA0OjAzDQo+ID4+Pj4+IFRvOiBMZWlmIExpbmRob2xtIDxsZWlmQG51 dmlhaW5jLmNvbT4NCj4gPj4+Pj4gQ2M6IEFyZCBCaWVzaGV1dmVsIDxhcmQuYmllc2hldXZlbEBh cm0uY29tPjsgZGV2ZWxAZWRrMi5ncm91cHMuaW87IEdhbywgTGltaW5nIDxsaW1pbmcuZ2FvQGlu dGVsLmNvbT47DQo+IHBoaWxtZEByZWRoYXQuY29tOw0KPiA+Pj4+IG1saXNrYUBzdXNlLmN6DQo+ ID4+Pj4+IFN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIXSBNZGVQa2cvSW5jbHVkZTog QUFSQ0g2NDogZGlzYWJsZSBvdXRsaW5lIGF0b21pY3Mgb24gR0NDIDEwLjIrDQo+ID4+Pj4+DQo+ ID4+Pj4+IE9uIDA1LzI4LzIwIDEyOjA1LCBMZWlmIExpbmRob2xtIHdyb3RlOg0KPiA+Pj4+Pj4g T24gV2VkLCBNYXkgMjcsIDIwMjAgYXQgMTE6MTI6MjMgKzAyMDAsIExhc3psbyBFcnNlayB3cm90 ZToNCj4gPj4+Pj4+Pj4+PiBPaCBhbmQgSSB0aGluayBib3RoIHRoaXMgcGF0Y2ggYW5kIHRoZSBh c3NlbWJseSBsYW5ndWFnZQ0KPiA+Pj4+Pj4+Pj4+IGltcGxlbWVudGF0aW9uIGZvciB0aGUgYXRv bWljcyBzaG91bGQgYmUgZGVsYXllZCBhZnRlciB0aGUgc3RhYmxlDQo+ID4+Pj4+Pj4+Pj4gdGFn LiBnY2MtMTAgaXMgYSBuZXcgdG9vbGNoYWluOyBzbyBldmVuIGlmIHdlIGRvbid0IGludHJvZHVj ZSBhDQo+ID4+Pj4+Pj4+Pj4gbmV3IHRvb2xjaGFpbiB0YWcgc3VjaCBhcw0KPiA+Pj4+Pj4+Pj4+ IEdDQzEwIGZvciBpdCwgd2hhdGV2ZXIgd2UgZG8gaW4gb3JkZXIgdG8gbWFrZSBpdCB3b3JrLCB0 aGF0J3MNCj4gPj4+Pj4+Pj4+PiBmZWF0dXJlIGVuYWJsZW1lbnQgaW4gbXkgYm9vay4NCj4gPj4+ Pj4+Pj4+DQo+ID4+Pj4+Pj4+PiBXb3JrcyBmb3IgbWUuIEJ5IHRoZSB0aW1lIHRoZSBuZXh0IHN0 YWJsZSB0YWcgY29tZXMgYXJvdW5kLCBlYXJseQ0KPiA+Pj4+Pj4+Pj4gYWRvcHRlcnMgdGhhdCBh cmUgbm93IG9uIEdDQyAxMC4xIHdpbGwgbGlrZWx5IGhhdmUgbW92ZWQgdG8gMTAuMiBieQ0KPiA+ Pj4+Pj4+Pj4gdGhhdCB0aW1lLCBhbmQgc28gd2UgbWF5IG5vdCBuZWVkIHRoZSBhc3NlbWJseSBw YXRjaCBhdCBhbGwuDQo+ID4+Pj4+Pj4+DQo+ID4+Pj4+Pj4+IEknbSBub3QgZWNzdGF0aWMgdGhh dCB3ZSdsbCBiZSByZWxlYXNpbmcgdGhlIGZpcnN0IHN0YWJsZSB0YWcga25vd24NCj4gPj4+Pj4+ Pj4gdG8gYnJlYWsgd2l0aCBjdXJyZW50IHRvb2xjaGFpbnMuDQo+ID4+Pj4+Pj4NCj4gPj4+Pj4+ PiBJZiB0aGlzIGJyZWFrYWdlIGFmZmVjdHMgImN1cnJlbnQgdG9vbGNoYWlucyIsIHRoZW4gd2h5 IHdhcw0KPiA+Pj4+Pj4+IDxodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcu Y2dpP2lkPTI3MjM+IG9ubHkgcmVwb3J0ZWQNCj4gPj4+Pj4+PiBvbiAyMDIwLU1heS0xOSwgZm91 ciBkYXlzIGludG8gdGhlIHNvZnQgZmVhdHVyZSBmcmVlemU/DQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4g SSBhZ3JlZSB0aGUgdGltaW5nIGlzIGNyYXAuDQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4+PiBUaGlzIGlz bid0IGp1c3QgYWZmZWN0aW5nIHJhbmRvbSBjcmF6aWVzIHB1bGxpbmcgbGF0ZXN0IHRvb2xjaGFp bnMNCj4gPj4+Pj4+Pj4gZG93biwgYnV0IHBlb3BsZSB1c2luZyB0aGVpciBkaXN0cm8gZGVmYXVs dHMgKG5hdGl2ZSBvciBjcm9zcykuDQo+ID4+Pj4+Pj4NCj4gPj4+Pj4+PiAuLi4gInBlb3BsZSB1 c2luZyB0aGVpciBkaXN0cm8gZGVmYXVsdHMiIHRvICpub3QqIGJ1aWxkIHVwc3RyZWFtIGVkazIN Cj4gPj4+Pj4+PiB1bnRpbCAyMDIwLU1heS0xOSwgYXBwYXJlbnRseS4NCj4gPj4+Pj4+DQo+ID4+ Pj4+PiBPciBkaXN0cm8gZGVmYXVsdHMgY2hhbmdpbmcgaW4gYmV0d2Vlbi4gSSBtZWFuLCB3ZSBj b3VsZCBzYXkgIkFyY2ggaXMNCj4gPj4+Pj4+IHRoZSBzYW1lIGFzIGFueSBvdGhlciBkaXN0cm8n cyB1bnN0YWJsZSIsIGJ1dCBJIHdvdWxkbid0IHdhbnQgdG8gZ28NCj4gPj4+Pj4+IGRvd24gdGhh dCByb3V0ZSAtIEkga25vdyBwZW9wbGUgd2hvIHVzZSBpdCBmb3IgZGV2ZWxvcGluZyBhbHNvIGZv cg0KPiA+Pj4+Pj4gcWVtdSBhbmQgbGludXguDQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4gQXJnaCwgSSBh bHNvIGp1c3QgcmVhbGlzZWQgdGhlIGVycm9yIHJlcG9ydCBJIHNhdyB0d28gZGF5cyBhZnRlciBB cmQncw0KPiA+Pj4+Pj4gaW50cmluc2ljcyBwYXRjaCBoaXQgdGhlIGxpc3Qgd2FzIG5vdCBhIHB1 YmxpYyByZXBvcnQuIFllcywgaWYgdGhpcw0KPiA+Pj4+Pj4gaGFkIGFmZmVjdGVkIG9ubHkgaW4t ZGV2ZWxvcG1lbnQvdW5zdGFibGUgZGlzdHJpYnV0aW9ucywgSSBhZ3JlZSB0aGlzDQo+ID4+Pj4+ PiBpc24ndCBzb21ldGhpbmcgd2Ugc2hvdWxkIHRyeSB0byBkZWFsIHdpdGggdXBzdHJlYW0uDQo+ ID4+Pj4+Pg0KPiA+Pj4+Pj4+PiBJIGRvbid0IHJlY2FsbCBpZiAxMC4xIGVuZGVkIHVwIGJlaW5n IGRlZmF1bHQgaW4gRjMyLCBidXQgaXQgd2FzDQo+ID4+Pj4+Pj4+IGRlZmluaXRlbHkgaW5jbHVk ZWQuIEluIEFyY2gsIGl0IGRvZXMgYXBwZWFyIGRlZmF1bHQuDQo+ID4+Pj4+Pj4+DQo+ID4+Pj4+ Pj4+IERlYmlhbi9VYnVudHUgYXJlIHVuYWZmZWN0ZWQgaW4gdGhlaXIgc3RhYmxlIHJlbGVhc2Vz Lg0KPiA+Pj4+Pj4+Pg0KPiA+Pj4+Pj4+PiBJIGFncmVlIGl0J3MgYSB0cmFuc2l0aW9uYWwgaXNz dWUsIGJ1dCBJIHdvdWxkIHJlYWxseSBwcmVmZXIgdG8gaGF2ZQ0KPiA+Pj4+Pj4+PiB0aGUgaW50 cmluc2ljcyBpbmNsdWRlZCBpbiB0aGUgcmVsZWFzZS4NCj4gPj4+Pj4+Pg0KPiA+Pj4+Pj4+IE9L LCBsZXQncyBkZWxheSB0aGUgcmVsZWFzZSB0aGVuLCBieSBhIGZldyBkYXlzLiBJIGFncmVlIHRo ZSBwcmVzZW50DQo+ID4+Pj4+Pj4gcGF0Y2ggbWF5IHF1YWxpZnkgYXMgYSBidWdmaXgsIGJ1dCB0 aGUgb3RoZXIgcGF0Y2ggd2l0aCB0aGUgYXNzZW1ibHkNCj4gPj4+Pj4+PiBsYW5ndWFnZSBpbnRy aW5zaWNzIGRvZXNuJ3QuIElmIGl0J3MgcmVhbGx5IHRoYXQgaW1wb3J0YW50IHRvIGhhdmUgaW4N Cj4gPj4+Pj4+PiB0aGUgdXBjb21pbmcgc3RhYmxlIHRhZywgdGhlbiBpdCdzIHdvcnRoIGRlbGF5 aW5nIHRoZSB0YWcgZm9yLiBJJ20NCj4gPj4+Pj4+PiBmaW5lIGRlbGF5aW5nIHRoZSByZWxlYXNl IGZvciBpdDsgaXQgd291bGRuJ3QgYmUgd2l0aG91dCBwcmVjZWRlbnQuDQo+ID4+Pj4+Pg0KPiA+ Pj4+Pj4gSSB3b3VsZCBhcmd1ZSBpdCAqaXMqIGEgYnVnZml4LCBzaW5jZSBpdCBvbmx5IGhhcyBh biBlZmZlY3Qgb24gYnVpbGRzDQo+ID4+Pj4+PiB0aGF0IHdvdWxkIG90aGVyd2lzZSBmYWlsLg0K PiA+Pj4+Pg0KPiA+Pj4+PiBPSy4gVGhhdCdzIGEgZ29vZCBhcmd1bWVudC4gRnJvbSBteSBQT1Ys IGZlZWwgZnJlZSB0byBtZXJnZSAoYm90aCBwYXRjaGVzKS4NCj4gPj4+Pj4NCj4gPj4+Pj4gVGhh bmtzDQo+ID4+Pj4+IExhc3psbw0KPiA+Pj4+Pg0KPiA+Pj4+Pj4gQnV0IEkgYWxzbyBkbyB0aGlu ayBpdCBpcyBpbXBvcnRhbnQgZW5vdWdoIHRvIGRlbGF5IHRoZSByZWxlYXNlIGlmIHdlDQo+ID4+ Pj4+PiBmZWVsIHRoYXQgaXMgbmVjZXNzYXJ5Lg0KPiA+Pj4+Pj4NCj4gPj4+Pj4+IC8NCj4gPj4+ Pj4+ICAgICAgICBMZWlmDQo+ID4+Pj4+Pg0KPiA+Pj4+Pj4+IEFsc28sIEkgdGhpbmsgQXJkJ3Mg YXNzZW1ibHkgbGFuZ3VhZ2UgcGF0Y2ggbmVlZHMgYSBUZXN0ZWQtYnkgZnJvbQ0KPiA+Pj4+Pj4+ IEdhcnkgYXQgdGhlIGxlYXN0IChyZXBvcnRlciBvZiBUaWFub0NvcmUjMjcyMykuIFBsZWFzZSBy ZWFjaCBvdXQgdG8NCj4gPj4+Pj4+PiBoaW0gaW4gdGhhdCB0aHJlYWQuDQo+ID4+Pj4+Pj4NCj4g Pj4+Pj4+PiAuLi4gTW9yZSBwcmVjaXNlbHksIHBsZWFzZSAqcGluZyogR2FyeSBmb3IgYSBUZXN0 ZWQtYnkgaW4gdGhhdA0KPiA+Pj4+Pj4+IHRocmVhZCwgYmVjYXVzZSBBcmQgQ0MnZCBoaW0gZnJv bSB0aGUgc3RhcnQsIGFuZCBldmVuIGNyZWRpdGVkIEdhcnkNCj4gPj4+Pj4+PiBpbiB0aGUgY29t bWl0IG1lc3NhZ2UuDQo+ID4+Pj4+Pj4NCj4gPj4+Pj4+PiBUaGFua3MsDQo+ID4+Pj4+Pj4gTGFz emxvDQo+ID4+Pj4+Pj4NCj4gPj4+Pj4+DQo+ID4+Pj4+DQo+ID4+Pj4+DQo+ID4+Pj4+DQo+ID4+ Pj4+DQo+ID4+Pj4+DQo+ID4+Pj4+DQo+ID4+Pj4+DQo+ID4+Pj4NCj4gPj4+Pg0KPiA+Pj4+DQo+ ID4+Pg0KPiA+Pg0KPiA+Pg0KPiA+Pg0KPiA+DQo+IA0KPiANCj4gDQoNCg==