From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mx.groups.io with SMTP id smtpd.web10.6982.1614225893514222958 for ; Wed, 24 Feb 2021 20:04:53 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=jnPH39nb; spf=pass (domain: intel.com, ip: 134.134.136.20, mailfrom: ray.ni@intel.com) IronPort-SDR: SMw92XB1VYcgWXqnb5iaX8JPBY9dYByBNMwQ3eslwyK24GUNYuCGjZ3u4lBzQrkP6iXTy85KuW Pdc9my7aG7mg== X-IronPort-AV: E=McAfee;i="6000,8403,9905"; a="172532737" X-IronPort-AV: E=Sophos;i="5.81,203,1610438400"; d="scan'208";a="172532737" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Feb 2021 20:04:52 -0800 IronPort-SDR: 9hGLSnHXJ39a7MsfPOTkkhd2e9u2r1bg34DtWGag9el+zzFmOEH/YUgeocvWEl2SYihr7a9az1 IxZxHjh7UcKQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,203,1610438400"; d="scan'208";a="381336134" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by orsmga002.jf.intel.com with ESMTP; 24 Feb 2021 20:04:52 -0800 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.2106.2; Wed, 24 Feb 2021 20:04:52 -0800 Received: from orsmsx604.amr.corp.intel.com (10.22.229.17) 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.2106.2; Wed, 24 Feb 2021 20:04:51 -0800 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2 via Frontend Transport; Wed, 24 Feb 2021 20:04:51 -0800 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.102) 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.2106.2; Wed, 24 Feb 2021 20:04:49 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EleXwBNPVb1H/xjMweGoGBDCDjoI1Y/2Ge1ZuUyCqXZ6W1qQ+LfjD5UdGbYQAL3AtlLTrqJj5gTNval/V4H/iSp6MH2uVsRqcGddzAN8QZ7oPTmjdg9PKZ3xVT87YDlgjk8/2M2P4/dNxPYf3q7zspxAzx3O/WselZ6jHu1yLtliF7XRYUBHIpqEaZYgpNxUUR9sSDM/6ZLJ/Kjn+LPVM+m27naW859lTWPOxg0OU7tCZUS1f5qYYqYp/jPc+T7prFrDSmelbRgXk3CAOmbjTVNNI1c4wAZ5sxpZDtNAD25zV9AEePGiwKAMTlIer1Y2GEaT6gCwfMhnbZwFdqIceA== 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=RkUt8tnAOtoYAV72DS2GbQs0xeYabmxsUzVmZgLoUQA=; b=h7DJcH/SdTOamyNn60G8b6eTg9s9dGu8us2TnAmYvJkTe5bJA3Ycqxexl9JkvNBJC6ewPYHhwptMplXa65USNg6ZR8ZKdEgyltfOBI1GPH3TQv+0rhAhgRVjkL7UF/YJZxmtl7wVnDIYNqeHHBepH7P5q29c4O7Ky31zMxAO8xB4SEP+DiTYzx3ABIgkNL2OcAspDpJk25oYdV4tyH3k0VpFWay8YjClzqj739sAP2Q7iZM3MypVXeziPOow7w3W2UkdwiWlvh1cT5C9q+9pnkR7uDbVKHq4pG6RGVWigPlaSKXjg2gT+kt3PHyuunbGKqvWoirmEmyCg2jW8VH18w== 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=RkUt8tnAOtoYAV72DS2GbQs0xeYabmxsUzVmZgLoUQA=; b=jnPH39nbZJK1Mo8hxbMG4MSxgNJLHqy9K56r7zty2ucVbhDr6k2lKe4qh9a1IgrNAKDHHvLdnxS3udQ64Dz8hO0+fn7heJtD9crHv9Wqf8aoisujsvqo5lHO8/LwDfqKPM9WMHVi1ihNby3/Mfx/XdTDlh/EDOKCQAdrY8muRY0= Received: from CO1PR11MB4930.namprd11.prod.outlook.com (2603:10b6:303:9b::11) by MWHPR11MB2016.namprd11.prod.outlook.com (2603:10b6:300:26::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3846.25; Thu, 25 Feb 2021 04:04:48 +0000 Received: from CO1PR11MB4930.namprd11.prod.outlook.com ([fe80::8d64:91ed:c259:e95]) by CO1PR11MB4930.namprd11.prod.outlook.com ([fe80::8d64:91ed:c259:e95%7]) with mapi id 15.20.3868.033; Thu, 25 Feb 2021 04:04:48 +0000 From: "Ni, Ray" To: "devel@edk2.groups.io" , Laszlo Ersek CC: "Dong, Eric" , "Kumar, Rahul1" , "Kinney, Michael D" Subject: Re: [edk2-devel] [PATCH v3 1/4] UefiCpuPkg/MpInitLib: Use XADD to avoid lock acquire/release Thread-Topic: [edk2-devel] [PATCH v3 1/4] UefiCpuPkg/MpInitLib: Use XADD to avoid lock acquire/release Thread-Index: AQHXCg9Tfc83lOVJ3keYCCywvP7L2qpoQkLg Date: Thu, 25 Feb 2021 04:04:48 +0000 Message-ID: References: <20210209141634.1999-1-ray.ni@intel.com> <20210209141634.1999-2-ray.ni@intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: 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.198.147.194] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: fe09e8f8-f260-4130-0f28-08d8d9427e98 x-ms-traffictypediagnostic: MWHPR11MB2016: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7219; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 1Pls6ikAKxc5eSE5warus2LULgiRuhFJ90/whP3SodHeq8KsEckY5x52D0o/wbQWY9slxGwg550CGSTkO/T4wT9P2S+lu4zO3XNTu17ktB0qhK7gIbl7pmO7UxfHk+l8jJkOru/EoXIwAx/crcc3DfU8H2cuLil1v7rPy+M79sjZ4+xuEr9VwrQjWpopn7XmAlBdFrcVgEXSiiyjW4TbuQo3NQDpwp6rzgnRX6Ii4EbOJeNiSrPn3TArHeceIhptF4e39pzvhmVl5YJrDItIjxzVpWZuwyx7MYrSnPlsjRPCSJK0KmCF5u6+OhES/waEQXEi1kiSdc2sW11xbg8SQg0MJC4l72UeWZAuXkdeT4HBUEmRLb+O2sijbHqZC617otDB5y3SvK7Nd6+MtRacz2FdqiiUslxuoS5VgGMkmEebSu9qBGKAuQDuu3ZRxiIXDYjrZ0VDnGqL5BUqXBs7gHuyla70AJbBDZeNYc+shnvdjMwYIAc5y4W2kVF4i6Wn0GrVt8CXRLo9wYaZVLU5Rjdzzey39ddnHIdee19BwYvY6Hr9sf6nx16n6E1KiL/qXZb88n4oEFRLTqnS91Hlw/4oektn9XsfXCInkNtkWCQ= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR11MB4930.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(6029001)(346002)(366004)(376002)(39860400002)(396003)(136003)(8936002)(966005)(478600001)(71200400001)(8676002)(83380400001)(4326008)(33656002)(53546011)(6506007)(9686003)(7696005)(55016002)(52536014)(186003)(26005)(107886003)(66946007)(66476007)(66556008)(64756008)(66446008)(76116006)(316002)(54906003)(110136005)(86362001)(5660300002)(2906002)(19627235002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?M0ZVUTJCTHdrV09NY3dXYUkyczkvL0VhUGgwVGMxL0Q5MTRyYUhVM2xBeHUv?= =?utf-8?B?SnlEbmhFenJqUVN5K2diUkE3dnYwQUpENjN2dTZtRXdQN29WMFlzM0UySXU5?= =?utf-8?B?Wis5Nk12UGNvOHZtdStmbE0zYjE1L1RST3IvV0ppODhyaVh6cm1uRUN2S1Bu?= =?utf-8?B?K2czSWdEaTBMc2JXbXlVRjBxQzh2NSszYkRVZkNnbzh2RENncC9EVWV3MXhl?= =?utf-8?B?QWNDT2JOK0pMbDlOY1pyWHJqNFFOOHFVRE5MSGNkRmtwQTFNbmZUSTFEWjA3?= =?utf-8?B?UW5vQzJsVlZjYnlXcGpucmczWWlQaWV2eWlMeWxJUlY2UXV0a1d3R3BKQTZs?= =?utf-8?B?dVUzMUcvb1RmQTBNTkthOXhqS2xrYzRPSzZwdG9NVFJlbnBVODM2Y1JpTkY2?= =?utf-8?B?ajZMS0xuemtGOWRrN3NsSHpEelpkOXNXby9KbHMxbEJtWGx3dmo1NWJ2OVll?= =?utf-8?B?SXZ6UUJqRjJERlhLdkJBWHBNZklBK0RrcTN6bkordFlhWWJGVDdUcEtYNkkz?= =?utf-8?B?MXgyaHdsNXFsVlZpRURqaDJaVWF6QUZ2N0RGNVI4TGt3T011a1ZHR212Zm5y?= =?utf-8?B?cGFpRDZTR1NFdWpiVERsQ1ZTS1NjVXc4cm9GcUJvVENDL2pNVzRITmVacjMy?= =?utf-8?B?ZTdYZFZPbmtxYUhTMlNMS29EanQzaVl6aEV1eWNFZnQwSjlGUmwrMVhEbERq?= =?utf-8?B?cXQzTW1ESTlORXZmRGhIaWlTcEpFc1cvMzZYR1F6c0RtZjlUOW10ajczN1N1?= =?utf-8?B?NzR5NlhjUi9lc1BsZ3RndEFXTUFyM093MG45RUdMQnVCL0Z1RS9IQWQ3OENX?= =?utf-8?B?b0xBWlA4MzIxVVVTZTZ0V0s3WXVYMG5Hdm5MM2pZSU1OR2RYNUg3QWFMZ1RU?= =?utf-8?B?cU00eEErdnc5K0JTY2RISFZSVjEyaWJ1aEdxVHN6dXVUeExQcnI1bnN0NGpR?= =?utf-8?B?OGh0NDBCa2hGaDhEbUErSGhpSmR6bmRhMitrRG5ZVE9OY3pWQndjWkZ3RzJG?= =?utf-8?B?WnhPdnNXYXVKSWkzS083Mm9EY0xrVzk5c0hWMVhsbllWSFlLazAvbWVmbEkz?= =?utf-8?B?OWtBNVRMUWlLRUc1MTdWdjFDUWcvNkpBUVR2YWNWakZuZ3RKcEs3ellNdU5w?= =?utf-8?B?ekhuazVxL2txWm5KV0RuSzZPZ1VrWkphckVXSTBvK1duckYyOFJ1bGhvdnRZ?= =?utf-8?B?MkEzd2lJMThhdXdJbGd0bUNzTFJkYlhTOWtCR3ZCNExNaVA3V3F5Z1RwS3F4?= =?utf-8?B?aENOQ1FRTGFlK1FGZGdXUzcvRHR3QWZKdlJTSnZLZ0JUd2JDMW1MTkdiak4w?= =?utf-8?B?SFhvZXR2K2UySGZYM3Z1NHlxdGtCcWhINEE1YnlJWnBXN2djZjJlQzk4NDZh?= =?utf-8?B?ejVUa2JHaXYvWnd6ZURzb1hSQlp2ZmVHVEUwRENrblRsS3R1MlFRUGJsUDdu?= =?utf-8?B?VDhPVE9FdFRUejNFSDFySXFzUk5Fa0hmclMybkpha1B6QW9SUmlUSFMwdDRw?= =?utf-8?B?MDJBNHRUZUsvdG91ZEZFZWJieitzVThIRU0vZUhQQ3NOZEhlZFBBRWp2cVVm?= =?utf-8?B?YWtMU1FPU2owVXNjMzBiWHQvc3NKMVZSNURpaDZFNzg5ZDIxMm9lMUVFZDIr?= =?utf-8?B?Nmtsc1JJOWdSa1F6d2FLelRpSWViQUZ0S0lNZW9PbnE4SFlZU2JHUEp1SmJD?= =?utf-8?B?RFNCb1Eza2E1bEpoZU8xRDQ2cERid0ZZNFFOaTIxRnNOY1pDUFlrTk9VSld2?= =?utf-8?Q?i6hyV/O8nTj/Xkr8gWPzgGuOgPxhJ0jeuRBsm0U?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4930.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: fe09e8f8-f260-4130-0f28-08d8d9427e98 X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Feb 2021 04:04:48.6843 (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: qj/vn8gSHgrWZNgCWrWgFkh7swR88UYTT6lwSa1JwXHxe73QSfDkIj/nHQJ0BMy+Q+y65Gcol/pYGX5k9Z7rMg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB2016 Return-Path: ray.ni@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 TGFzemxvLA0KRG8geW91IHRoaW5rIHRoYXQgTWlrZSdzIFItYiB0byB0aGUgZmlyc3QgcGF0Y2gg Y2FuIGJlIGFuIGFjayB0byB0aGUgVjMgcGF0Y2ggc2V0Pw0KDQpDYW4geW91IHBsZWFzZSByZXZp ZXcgYW5kIHByb3ZpZGUgY29tbWVudHM/DQoNClRoYW5rcywNClJheQ0KDQoNCj4gLS0tLS1Pcmln aW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5r aW5uZXlAaW50ZWwuY29tPg0KPiBTZW50OiBXZWRuZXNkYXksIEZlYnJ1YXJ5IDI0LCAyMDIxIDI6 MTIgQU0NCj4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBOaSwgUmF5IDxyYXkubmlAaW50ZWwu Y29tPjsgS2lubmV5LCBNaWNoYWVsIEQNCj4gPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0K PiBDYzogRG9uZywgRXJpYyA8ZXJpYy5kb25nQGludGVsLmNvbT47IExhc3psbyBFcnNlayA8bGVy c2VrQHJlZGhhdC5jb20+Ow0KPiBLdW1hciwgUmFodWwxIDxyYWh1bDEua3VtYXJAaW50ZWwuY29t Pg0KPiBTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSCB2MyAxLzRdIFVlZmlDcHVQa2cv TXBJbml0TGliOiBVc2UgWEFERA0KPiB0byBhdm9pZCBsb2NrIGFjcXVpcmUvcmVsZWFzZQ0KPiAN Cj4gUmV2aWV3ZWQtYnk6IE1pY2hhZWwgRCBLaW5uZXkgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwu Y29tPg0KPiANCj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IGRldmVs QGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mIE5pLA0K PiBSYXkNCj4gPiBTZW50OiBUdWVzZGF5LCBGZWJydWFyeSA5LCAyMDIxIDY6MTcgQU0NCj4gPiBU bzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gPiBDYzogRG9uZywgRXJpYyA8ZXJpYy5kb25nQGlu dGVsLmNvbT47IExhc3psbyBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+Ow0KPiBLdW1hciwgUmFo dWwxIDxyYWh1bDEua3VtYXJAaW50ZWwuY29tPg0KPiA+IFN1YmplY3Q6IFtlZGsyLWRldmVsXSBb UEFUQ0ggdjMgMS80XSBVZWZpQ3B1UGtnL01wSW5pdExpYjogVXNlIFhBREQgdG8NCj4gYXZvaWQg bG9jayBhY3F1aXJlL3JlbGVhc2UNCj4gPg0KPiA+IFdoZW4gQVAgZmlyc3RseSB3YWtlcyB1cCwg TXBGdW5jcy5uYXNtIGNvbnRhaW5zIGJlbG93IGxvZ2ljIHRvIGFzc2lnbg0KPiA+IGFuIHVuaXF1 ZSBBcEluZGV4IHRvIGVhY2ggQVAgYWNjb3JkaW5nIHRvIHdobyBjb21lcyBmaXJzdDoNCj4gPiAt LS1BU00tLS0NCj4gPiBUZXN0TG9jazoNCj4gPiAgICAgeGNoZyAgICAgICBbZWRpXSwgZWF4DQo+ ID4gICAgIGNtcCAgICAgICAgZWF4LCBOb3RWYWNhbnRGbGFnDQo+ID4gICAgIGp6ICAgICAgICAg VGVzdExvY2sNCj4gPg0KPiA+ICAgICBtb3YgICAgICAgIGVjeCwgZXNpDQo+ID4gICAgIGFkZCAg ICAgICAgZWN4LCBBcEluZGV4TG9jYXRpb24NCj4gPiAgICAgaW5jICAgICAgICBkd29yZCBbZWN4 XQ0KPiA+ICAgICBtb3YgICAgICAgIGVieCwgW2VjeF0NCj4gPg0KPiA+IFJlbGVhc2Vsb2NrOg0K PiA+ICAgICBtb3YgICAgICAgIGVheCwgVmFjYW50RmxhZw0KPiA+ICAgICB4Y2hnICAgICAgIFtl ZGldLCBlYXgNCj4gPiAtLS1BU00gRU5ELS0tDQo+ID4NCj4gPiAibG9jayBpbmMiIGNhbm5vdCBi ZSB1c2VkIHRvIGluY3JlYXNlIEFwSW5kZXggYmVjYXVzZSBub3Qgb25seSB0aGUNCj4gPiBnbG9i YWwgQXBJbmRleCBzaG91bGQgYmUgaW5jcmVhc2VkLCBidXQgYWxzbyB0aGUgcmVzdWx0IHNob3Vs ZCBiZQ0KPiA+IHN0b3JlZCB0byBhIGxvY2FsIGdlbmVyYWwgcHVycG9zZSByZWdpc3RlciBFQlgu DQo+ID4NCj4gPiBUaGlzIHBhdGNoIGxlYXJucyBmcm9tIHRoZSBOQVNNIGltcGxlbWVudGF0aW9u IG9mDQo+ID4gSW50ZXJuYWxTeW5jSW5jcmVtZW50KCkgdG8gdXNlICJYQUREIiBpbnN0cnVjdGlv biB3aGljaCBjYW4gaW5jcmVhc2UNCj4gPiB0aGUgZ2xvYmFsIEFwSW5kZXggYW5kIHN0b3JlIHRo ZSBvcmlnaW5hbCBBcEluZGV4IHRvIEVCWCBpbiBvbmUNCj4gPiBpbnN0cnVjdGlvbi4NCj4gPg0K PiA+IFdpdGggdGhpcyBwYXRjaCwgT1ZNRiB3aGVuIHJ1bm5pbmcgaW4gYSAyNTUgdGhyZWFkcyBR RU1VIHNwZW5kcyBhYm91dA0KPiA+IG9uZSBzZWNvbmQgdG8gd2FrZXVwIGFsbCBBUHMuIE9yaWdp bmFsIGltcGxlbWVudGF0aW9uIG5lZWRzIG1vcmUgdGhhbg0KPiA+IDEwIHNlY29uZHMuDQo+ID4N Cj4gPiBTaWduZWQtb2ZmLWJ5OiBSYXkgTmkgPHJheS5uaUBpbnRlbC5jb20+DQo+ID4gQ2M6IEVy aWMgRG9uZyA8ZXJpYy5kb25nQGludGVsLmNvbT4NCj4gPiBDYzogTGFzemxvIEVyc2VrIDxsZXJz ZWtAcmVkaGF0LmNvbT4NCj4gPiBDYzogUmFodWwgS3VtYXIgPHJhaHVsMS5rdW1hckBpbnRlbC5j b20+DQo+ID4gLS0tDQo+ID4gIC4uLi9MaWJyYXJ5L01wSW5pdExpYi9JYTMyL01wRnVuY3MubmFz bSAgICAgICB8IDIwICsrKysrKy0tLS0tLS0tLS0tLS0NCj4gPiAgVWVmaUNwdVBrZy9MaWJyYXJ5 L01wSW5pdExpYi9YNjQvTXBGdW5jcy5uYXNtIHwgMTggKysrKysrLS0tLS0tLS0tLS0NCj4gPiAg MiBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAyNiBkZWxldGlvbnMoLSkNCj4gPg0K PiA+IGRpZmYgLS1naXQgYS9VZWZpQ3B1UGtnL0xpYnJhcnkvTXBJbml0TGliL0lhMzIvTXBGdW5j cy5uYXNtDQo+IGIvVWVmaUNwdVBrZy9MaWJyYXJ5L01wSW5pdExpYi9JYTMyL01wRnVuY3MubmFz bQ0KPiA+IGluZGV4IDdlODFkMjRhYTYuLjJlYWRkYzkzYmMgMTAwNjQ0DQo+ID4gLS0tIGEvVWVm aUNwdVBrZy9MaWJyYXJ5L01wSW5pdExpYi9JYTMyL01wRnVuY3MubmFzbQ0KPiA+ICsrKyBiL1Vl ZmlDcHVQa2cvTGlicmFyeS9NcEluaXRMaWIvSWEzMi9NcEZ1bmNzLm5hc20NCj4gPiBAQCAtMSw1 ICsxLDUgQEANCj4gPiAgOy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSA7DQo+ID4NCj4gPiAtOyBDb3B5 cmlnaHQgKGMpIDIwMTUgLSAyMDE5LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNl cnZlZC48QlI+DQo+ID4NCj4gPiArOyBDb3B5cmlnaHQgKGMpIDIwMTUgLSAyMDIxLCBJbnRlbCBD b3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ID4NCj4gPiAgOyBTUERYLUxp Y2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0KPiA+DQo+ID4gIDsNCj4gPg0K PiA+ICA7IE1vZHVsZSBOYW1lOg0KPiA+DQo+ID4gQEAgLTEyNSwxOSArMTI1LDExIEBAIFNraXBF bmFibGVFeGVjdXRlRGlzYWJsZToNCj4gPiAgICAgIGFkZCAgICAgICAgZWRpLCBMb2NrTG9jYXRp b24NCj4gPg0KPiA+ICAgICAgbW92ICAgICAgICBlYXgsIE5vdFZhY2FudEZsYWcNCj4gPg0KPiA+ DQo+ID4NCj4gPiAtVGVzdExvY2s6DQo+ID4NCj4gPiAtICAgIHhjaGcgICAgICAgW2VkaV0sIGVh eA0KPiA+DQo+ID4gLSAgICBjbXAgICAgICAgIGVheCwgTm90VmFjYW50RmxhZw0KPiA+DQo+ID4g LSAgICBqeiAgICAgICAgIFRlc3RMb2NrDQo+ID4NCj4gPiAtDQo+ID4NCj4gPiAtICAgIG1vdiAg ICAgICAgZWN4LCBlc2kNCj4gPg0KPiA+IC0gICAgYWRkICAgICAgICBlY3gsIEFwSW5kZXhMb2Nh dGlvbg0KPiA+DQo+ID4gLSAgICBpbmMgICAgICAgIGR3b3JkIFtlY3hdDQo+ID4NCj4gPiAtICAg IG1vdiAgICAgICAgZWJ4LCBbZWN4XQ0KPiA+DQo+ID4gLQ0KPiA+DQo+ID4gLVJlbGVhc2Vsb2Nr Og0KPiA+DQo+ID4gLSAgICBtb3YgICAgICAgIGVheCwgVmFjYW50RmxhZw0KPiA+DQo+ID4gLSAg ICB4Y2hnICAgICAgIFtlZGldLCBlYXgNCj4gPg0KPiA+ICsgICAgbW92ICAgICAgICBlZGksIGVz aQ0KPiA+DQo+ID4gKyAgICBhZGQgICAgICAgIGVkaSwgQXBJbmRleExvY2F0aW9uDQo+ID4NCj4g PiArICAgIG1vdiAgICAgICAgZWJ4LCAxDQo+ID4NCj4gPiArICAgIGxvY2sgeGFkZCAgZHdvcmQg W2VkaV0sIGVieCAgICAgICAgICAgICAgICAgOyBFQlggPSBBcEluZGV4KysNCj4gPg0KPiA+ICsg ICAgaW5jICAgICAgICBlYnggICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IEVCWCBpcyBD cHVOdW1iZXINCj4gPg0KPiA+DQo+ID4NCj4gPiAgICAgIG1vdiAgICAgICAgZWRpLCBlc2kNCj4g Pg0KPiA+ICAgICAgYWRkICAgICAgICBlZGksIFN0YWNrU2l6ZUxvY2F0aW9uDQo+ID4NCj4gPiBk aWZmIC0tZ2l0IGEvVWVmaUNwdVBrZy9MaWJyYXJ5L01wSW5pdExpYi9YNjQvTXBGdW5jcy5uYXNt DQo+IGIvVWVmaUNwdVBrZy9MaWJyYXJ5L01wSW5pdExpYi9YNjQvTXBGdW5jcy5uYXNtDQo+ID4g aW5kZXggYWVjZmQwN2JjMC4uNWI1ODhmMmRjYiAxMDA2NDQNCj4gPiAtLS0gYS9VZWZpQ3B1UGtn L0xpYnJhcnkvTXBJbml0TGliL1g2NC9NcEZ1bmNzLm5hc20NCj4gPiArKysgYi9VZWZpQ3B1UGtn L0xpYnJhcnkvTXBJbml0TGliL1g2NC9NcEZ1bmNzLm5hc20NCj4gPiBAQCAtMSw1ICsxLDUgQEAN Cj4gPiAgOy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSA7DQo+ID4NCj4gPiAtOyBDb3B5cmlnaHQgKGMp IDIwMTUgLSAyMDE5LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+ DQo+ID4NCj4gPiArOyBDb3B5cmlnaHQgKGMpIDIwMTUgLSAyMDIxLCBJbnRlbCBDb3Jwb3JhdGlv bi4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ID4NCj4gPiAgOyBTUERYLUxpY2Vuc2UtSWRl bnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0KPiA+DQo+ID4gIDsNCj4gPg0KPiA+ICA7IE1v ZHVsZSBOYW1lOg0KPiA+DQo+ID4gQEAgLTE2MSwxOCArMTYxLDEyIEBAIExvbmdNb2RlU3RhcnQ6 DQo+ID4gICAgICBhZGQgICAgICAgIGVkaSwgTG9ja0xvY2F0aW9uDQo+ID4NCj4gPiAgICAgIG1v diAgICAgICAgcmF4LCBOb3RWYWNhbnRGbGFnDQo+ID4NCj4gPg0KPiA+DQo+ID4gLVRlc3RMb2Nr Og0KPiA+DQo+ID4gLSAgICB4Y2hnICAgICAgIHF3b3JkIFtlZGldLCByYXgNCj4gPg0KPiA+IC0g ICAgY21wICAgICAgICByYXgsIE5vdFZhY2FudEZsYWcNCj4gPg0KPiA+IC0gICAganogICAgICAg ICBUZXN0TG9jaw0KPiA+DQo+ID4gLQ0KPiA+DQo+ID4gLSAgICBsZWEgICAgICAgIGVjeCwgW2Vz aSArIEFwSW5kZXhMb2NhdGlvbl0NCj4gPg0KPiA+IC0gICAgaW5jICAgICAgICBkd29yZCBbZWN4 XQ0KPiA+DQo+ID4gLSAgICBtb3YgICAgICAgIGVieCwgW2VjeF0NCj4gPg0KPiA+ICsgICAgbW92 ICAgICAgICBlZGksIGVzaQ0KPiA+DQo+ID4gKyAgICBhZGQgICAgICAgIGVkaSwgQXBJbmRleExv Y2F0aW9uDQo+ID4NCj4gPiArICAgIG1vdiAgICAgICAgZWJ4LCAxDQo+ID4NCj4gPiArICAgIGxv Y2sgeGFkZCAgZHdvcmQgW2VkaV0sIGVieCAgICAgICAgICAgICAgICAgOyBFQlggPSBBcEluZGV4 KysNCj4gPg0KPiA+ICsgICAgaW5jICAgICAgICBlYnggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICA7IEVCWCBpcyBDcHVOdW1iZXINCj4gPg0KPiA+DQo+ID4NCj4gPiAtUmVsZWFzZWxvY2s6 DQo+ID4NCj4gPiAtICAgIG1vdiAgICAgICAgcmF4LCBWYWNhbnRGbGFnDQo+ID4NCj4gPiAtICAg IHhjaGcgICAgICAgcXdvcmQgW2VkaV0sIHJheA0KPiA+DQo+ID4gICAgICA7IHByb2dyYW0gc3Rh Y2sNCj4gPg0KPiA+ICAgICAgbW92ICAgICAgICBlZGksIGVzaQ0KPiA+DQo+ID4gICAgICBhZGQg ICAgICAgIGVkaSwgU3RhY2tTaXplTG9jYXRpb24NCj4gPg0KPiA+IC0tDQo+ID4gMi4yNy4wLndp bmRvd3MuMQ0KPiA+DQo+ID4NCj4gPg0KPiA+IC09LT0tPS09LT0tPQ0KPiA+IEdyb3Vwcy5pbyBM aW5rczogWW91IHJlY2VpdmUgYWxsIG1lc3NhZ2VzIHNlbnQgdG8gdGhpcyBncm91cC4NCj4gPiBW aWV3L1JlcGx5IE9ubGluZSAoIzcxNTE3KToNCj4gaHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2Rl dmVsL21lc3NhZ2UvNzE1MTcNCj4gPiBNdXRlIFRoaXMgVG9waWM6IGh0dHBzOi8vZ3JvdXBzLmlv L210LzgwNTA0OTM2LzE2NDM0OTYNCj4gPiBHcm91cCBPd25lcjogZGV2ZWwrb3duZXJAZWRrMi5n cm91cHMuaW8NCj4gPiBVbnN1YnNjcmliZTogaHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVs L3Vuc3ViDQo+IFttaWNoYWVsLmQua2lubmV5QGludGVsLmNvbV0NCj4gPiAtPS09LT0tPS09LT0N Cj4gPg0KDQo=