From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mx.groups.io with SMTP id smtpd.web08.11438.1612545087812271088 for ; Fri, 05 Feb 2021 09:11:27 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=dKeac1nf; spf=pass (domain: intel.com, ip: 134.134.136.31, mailfrom: michael.d.kinney@intel.com) IronPort-SDR: XhogbdIYr7wLMHDEqsx77VvmwbY/v/lDVpbIjX33URv0GK9FpOIiU5Knr0nBZRpqdXLXLkTwLE U/SkDFLxgOhA== X-IronPort-AV: E=McAfee;i="6000,8403,9885"; a="242963353" X-IronPort-AV: E=Sophos;i="5.81,155,1610438400"; d="scan'208";a="242963353" Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Feb 2021 09:11:23 -0800 IronPort-SDR: aiWHz6PsyBAN6KyrPIFbSbJ8YfxXnKBDqrH+8IPSpIlteZD/c5Mhthy/weNVmsKwCVLV00VOIT 7TzmhzmTnAJQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,155,1610438400"; d="scan'208";a="409005944" Received: from fmsmsx605.amr.corp.intel.com ([10.18.126.85]) by fmsmga004.fm.intel.com with ESMTP; 05 Feb 2021 09:11:23 -0800 Received: from fmsmsx607.amr.corp.intel.com (10.18.126.87) by fmsmsx605.amr.corp.intel.com (10.18.126.85) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Fri, 5 Feb 2021 09:11:22 -0800 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by fmsmsx607.amr.corp.intel.com (10.18.126.87) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Fri, 5 Feb 2021 09:11:22 -0800 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2 via Frontend Transport; Fri, 5 Feb 2021 09:11:22 -0800 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.172) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Fri, 5 Feb 2021 09:11:20 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Klutc3IqgsiZq9+0ZDoyArnkF1ake3dBQSzy2uvceIaJf++JDKqKCfsC46jFB5UNDTwa5ztzAZi1pE5AsFeqNM/zAYMV+zIumhiL8q1nW4eFf+0xvJ6FwW+XrhVXajNlbq09F3ZVF+U+LANzlHJNzE2BD+jzM9l06zU6YCzCbfvhehEohRNg61qdICzvTKksEj0ouK9swUlPIIlUtv57U+hBstjnw3vhtAzdqYoPCZrb6Ujt8HOsW1lMricUWHO8n02PYVBWQzFUn7eeBxDCh3lPl7oKxx2Lo8XrFoFpPMgwz6bQGfCWxWDMlQzmtT1hUJRjaZUPHmHxVEkRiBQiGA== 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=Dz0nKYFp2E3CPuNrSUEWxz77FoM2pfHOw2jtCPH3CN0=; b=PDNjCM2a1CKzupzfurxgRE/ttx05KRtPuD4N5Q0RI/BY3vAeplBvS/MsAgGdWXJ1LReOn1KiwEdrerGmCjakd1ir4bzxR+T6bOcXKsVTi660fctnDG1fUms8naxv/L0tWipPCwjH6EPDCZTi827kfGCqhcLP7H+yti/zLAW29ZPbpWYU4wWyCdDmuJ+JkektyPD1OdO2ZSGIIKzOD2fGCQQYKKmC7RCrsTY91KNkt0Iaui7YUZzPM9wK1jvDHNDAbc0fHlD5aFTNzgzemWslJV0Town+QVqnjdhBqUarD915lafMdD9Ikda0/+UeGOQHiuk/h2t83cloXcQyXtnB8A== 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=Dz0nKYFp2E3CPuNrSUEWxz77FoM2pfHOw2jtCPH3CN0=; b=dKeac1nfEbih73wHE8J7XtIUA0QmA57TTlFdxAhTSK/35Bh02IFvMAWXaWnW3iqKIadFVjbyk/UWMF140wGRNcp8sxrS2PlK4276m2/xA8sBcg2Qt1zQEQDWA8ZS8FVxLy9vJAWcti6DlDqqGoPFEDnS3qkORt3oayHhXoWaP60= Received: from CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by CO1PR11MB4866.namprd11.prod.outlook.com (2603:10b6:303:91::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3825.20; Fri, 5 Feb 2021 17:11:19 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::ddb6:ec7f:2548:efdc]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::ddb6:ec7f:2548:efdc%4]) with mapi id 15.20.3825.024; Fri, 5 Feb 2021 17:11:19 +0000 From: "Michael D Kinney" To: "devel@edk2.groups.io" , "Ni, Ray" , "Kinney, Michael D" Subject: Re: [edk2-devel] [PATCH v2 0/3] Use XADD to avoid lock acquire/release Thread-Topic: [edk2-devel] [PATCH v2 0/3] Use XADD to avoid lock acquire/release Thread-Index: AQHW+5S28cUnsp5iuUGOYa61LJJ2+qpJypdQ Date: Fri, 5 Feb 2021 17:11:19 +0000 Message-ID: References: <20210205075810.981-1-ray.ni@intel.com> In-Reply-To: <20210205075810.981-1-ray.ni@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.5.1.3 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: [24.19.191.44] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 5641028c-6205-4b5f-4623-08d8c9f90e2c x-ms-traffictypediagnostic: CO1PR11MB4866: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: GwLCtegQnPeLBy8cAGvZxVySHN1jQ5IJ5tw0+1tcq0ecyETP/PHVaisw9tyBSNPb+lP17PZFRm85s/FfictFjaoeznWEtIj12OSafStsfte/0+BlmzNFovMA4ggdcrlggtLENu9Qcv5pXl6LA0hBHhoqvv3GNRNb2BN+yoZFBbcjffLwBF68fedOsOPHcFs8qjHSPRhSOJsJIZijGF9h9wr2m00LNQ24KirOtXEJD0Hb2GU0skMIdkKMcg7moAREjtFYQEomQoYH1T/mmM5wIm2OrGuCPJwz4pjlCski142oZwwrRfNzRxNSwePIAarwoHaFi3Z2F61/u0G/eHPfX7W8YNlukTgKs6oT4I6i41Mbx/kYFQ5EB6nzIDj9nJ9sYOxXErJvpH93/dlyn4JQL0w9X5AILKEAFHL3XrhTWFDyWIi/XXaa/9POnBfg49nwxcUgtoNelcbR3Qch6rt2rXpf9smCz2zJAKfMtZYulr7Loy1xsdMFetcduOF4xwtWL/qFjmrEWjX41X4ae4xomJhQ8jV91edwBiVv33CuFkEd0F5Ey5XT9RyQ1SSoDp8ACealnNNN/H03ZF1S2QFmDtWbRdyObBQHbaGjKNiJ2tw= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR11MB4929.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(396003)(39860400002)(136003)(346002)(376002)(366004)(55016002)(33656002)(478600001)(8936002)(5660300002)(53546011)(66556008)(8676002)(76116006)(7696005)(66946007)(66476007)(52536014)(110136005)(6506007)(71200400001)(9686003)(26005)(186003)(316002)(19627235002)(2906002)(66446008)(64756008)(86362001)(83380400001)(966005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?TmlBTjhnanBIR0tHZWtGbDNrRTE4bTNmRGpkaTNMVTRKVkRaWVZyaWRLOHNx?= =?utf-8?B?UytTNmVWUEZudFVtWUI4d1Y4QjZVcjVBMXYvMldzVW9nTWd0NTNNN2E4eHNw?= =?utf-8?B?QTUyNmNPNDJaQlpIdEFiM3BPU0xPUTZkd0NxUSs3Zm9Ham5zRjR1NXhNSFF4?= =?utf-8?B?N01VQVduUVdTSnFDZlhhVm1mRlArYVNtQk1nTDBnZEx4TzRrcEJaSUxoMHlB?= =?utf-8?B?cUcwOFZYdmhGOXUxaCs0TVY1S1pwK3lZWGh6VXR2aUt0TUxwM0JDVndOa2xC?= =?utf-8?B?Q0ZKMU0yQ2hxZ3oxOFBGU295M0NnMUIrQjEvZ3hFUDVtcVAwdGRGckxxUkx3?= =?utf-8?B?cFM2REhDYmRnQ0pCdWlFeThvOVY0QjIxTnNjZ3k1dXZIN0NORlVJOHJOYnJx?= =?utf-8?B?Y0E3NkRCVDFtLzJZRW5nSmxuVlVtek5pZ3JoYWpwU2czSGp5YlR1VkhEVHcv?= =?utf-8?B?WXR2Qk1tK0lpYUVGVkpKYzVhSUVuWWNrRTdUSHBXZnVoem9xTWpMNGlhRXNW?= =?utf-8?B?TUs4UEJNWWRpYzhzWlM2M1ViSk80NEdsd3NwZXpzTkhjbkJuZFMxbEd6R2E2?= =?utf-8?B?NDlGTzB0LzZVQVFrbTV6cWhxeXJEN1UycTJpMkpZNWMra0tYODVKTUlwbkRL?= =?utf-8?B?OHNkYzRqN0wxRnhLcEJDWTNZZ0FMVFRRSDdQU25pYWdTSDZ5OHQ0bmFyMmxB?= =?utf-8?B?akZkWWxuN2lpUUVrOUxCcWkxaEdZTm1hazVTdWlucW1QUDBwR1ordGhJWkVk?= =?utf-8?B?aEFGM1Z4ZU1IKytDRDZVRTFCUm1DMHZ6bWs1RjV5QUo0T2NIbHlNamRWbStK?= =?utf-8?B?ZHAvUHdPeWdvL0Qvamg5ME5waHhaTEhtb0ZUZUZoNm81RnIrUjJOUjNFUnBD?= =?utf-8?B?MHF2a3VwaTc4WmZWNDJlekVza0hjY0l1dUNJYkt4dVl0L2ZRVjhveGJta3l1?= =?utf-8?B?ZUNpQzBQYnlPbGtkck9aM2ErOCtRd0NxUXBYSDFKNDdyR0JBSzk4WXkxbzEw?= =?utf-8?B?djRsQkVDQUdleFh4VXZxbVR3dDdlY1NHekVFMHI5d2tUWXlNRTNST3MzYlc2?= =?utf-8?B?SkQyQ1hUNnZDVENHa0ZxV0dIOGd6WXBxaHR6RlBFSVVJbWY1RlZnODZkV3Fk?= =?utf-8?B?a0plQzBzTDYyZDV0Zks3dVV2MmtRcW96dXFoTlpSN05RaFMrVTFIWkJhZ1ZS?= =?utf-8?B?SUFMQ2NPd1YwaGNnbnRWUHZjNkNMWnhvN1ZVMk1RNEJpVzkrNXRsWEdnejlZ?= =?utf-8?B?cWhtdHc5RjJSc2pMQkV4YmcwSW11cXFQMmlmWkpkNGpUTDNkaTFvZ3g5Tk9I?= =?utf-8?B?NXROYXlxelJRUUJYbytXK0V3MlJHeXFFOFYzc0FPK1Vua3FxdlJoRUxuRXVP?= =?utf-8?B?SmUrNmYwVzdOMkRHSHFFTnhVVWFvbGY2RCtQTW9jajVMdmpJWnppM3VqK09V?= =?utf-8?B?RTgwWWI3ZXJNdjY2U3F6Z2gvUnFuT3VPTkNtYjB5MnQ5UVF3WXpFbm5FTzU1?= =?utf-8?B?UUg3RzVtL0ZIMTNkQnNtQVRQcFBNMk5zcUNZUjB6NmtvRC9vbUFWOU9ROVY4?= =?utf-8?B?ZGRkdFpWNGhEQSt1MXVzbUF5bUkwVWhPZlFEQmlnL0huREpRT0VRRmQ4QmJ4?= =?utf-8?B?SzlpS1hYVll5UEJZQ3BvODdEZmdqSG44SUR0ZXM1enJ6UjVWeWFPUFVoTEJR?= =?utf-8?B?Y3NXQUlNeTlaYWxmMllJYUNGMmVISEc3NkhLSytRRTJHUmxSREp4T1ExMnBP?= =?utf-8?Q?ssXaqswIaWnokfBRDfnFd4yQLOicug4cVJmVvob?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4929.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5641028c-6205-4b5f-4623-08d8c9f90e2c X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Feb 2021 17:11:19.3702 (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: S8qzJ+TdoUpRFlSRcXvJbnedhbJSncEfNjOqOqDtaYwl9/ve52pW2es85hr3GLXvE0JnTroKEj+YkSy4AXYH4pU3whJ0Q8YorASFgdYpu5w= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB4866 Return-Path: michael.d.kinney@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgUmF5LA0KDQpJIHJlYWxseSBsaWtlIHRoZSBjbGVhbnVwIHRvIHJlbW92ZSBoYXJkIGNvZGVk IG9mZnNldHMsIGJ1dCBJIHRoaW5rIHRoYXQgY2hhbmdlIHNob3VsZCBiZSBpdHMgb3duIHBhdGNo IHNlcmllcy4NCg0KQ2FuIHdlIG1ha2UgdGhlIGZ1bmN0aW9uYWwgY2hhbmdlIHRvIHVzZSBYQURE IGFzIGl0cyBvd24gcGF0Y2ggc2VyaWVzIGJlZm9yZSB0aGUgY2hhbmdlIHRvIHJlbW92ZSBoYXJk IGNvZGVkIG9mZnNldHMgYW5kIHVzZSBzdHJ1Y3Q/DQoNClRoZW4gaGF2ZSBhIDJuZCBwYXRjaCBz ZXJpZXMgdGhhdCBpcyBhIG5vbi1mdW5jdGlvbmFsIGNoYW5nZSB0byByZW1vdmUgaGFyZCBjb2Rl ZCBvZmZzZXRzIGFuZCB1c2Ugc3RydWN0IGFuZCByZW1vdmUgdGhlIHVudXNlZCBMb2NrIGZpZWxk Pw0KDQpUaGFua3MsDQoNCk1pa2UNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBG cm9tOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFs ZiBPZiBOaSwgUmF5DQo+IFNlbnQ6IFRodXJzZGF5LCBGZWJydWFyeSA0LCAyMDIxIDExOjU4IFBN DQo+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiBTdWJqZWN0OiBbZWRrMi1kZXZlbF0gW1BB VENIIHYyIDAvM10gVXNlIFhBREQgdG8gYXZvaWQgbG9jayBhY3F1aXJlL3JlbGVhc2UNCj4gDQo+ IFBhdGNoICMxIGZvbGxvd3MgTGFzemxvJ3Mgc3VnZ2VzdGlvbiB0byBhZGQgZ2xvYmFsIE5BU00g bWFjcm9zDQo+IA0KPiAgIGZvciBOQVNNIHN0cnVjIHVzYWdlLg0KPiANCj4gUGF0Y2ggIzIgY2hh bmdlcyBhbGwgaGFyZGNvZGUgb2Zmc2V0IHRvIHVzZSBzdHJ1Yy4NCj4gDQo+IFBhdGNoICMzIGRv ZXNuJ3QgaGF2ZSBhbnkgY2hhbmdlIGNvbXBhcmluZyB0byBWMSBleGNlcHQNCj4gDQo+ICAgMSku IGR3b3JkL3F3b3JkIHByZWZpeCBpcyBhZGRlZC4NCj4gDQo+ICAgMikuIHRoZSBjb21tZW50cyAi cHJvZ3JhbSBBUCBzdGFjayIgaXMgcmVtb3ZlZC4NCj4gDQo+IFJheSBOaSAoMyk6DQo+ICAgTWRl UGtnL05hc20uaW5jOiBhZGQgbWFjcm9zIGZvciBDIHR5cGVzIHVzZWQgaW4gc3RydWN0dXJlIGRl ZmluaXRpb24NCj4gICBVZWZpQ3B1UGtnL01wSW5pdExpYjogVXNlIE5BU00gc3RydWMgdG8gYXZv aWQgaGFyZGNvZGUgb2Zmc2V0DQo+ICAgVWVmaUNwdVBrZy9NcEluaXRMaWI6IFVzZSBYQUREIHRv IGF2b2lkIGxvY2sgYWNxdWlyZS9yZWxlYXNlDQo+IA0KPiAgTWRlUGtnL0luY2x1ZGUvSWEzMi9O YXNtLmluYyAgICAgICAgICAgICAgICAgIHwgIDM4ICsrKysrKw0KPiAgTWRlUGtnL0luY2x1ZGUv WDY0L05hc20uaW5jICAgICAgICAgICAgICAgICAgIHwgIDM4ICsrKysrKw0KPiAgVWVmaUNwdVBr Zy9MaWJyYXJ5L01wSW5pdExpYi9EeGVNcEluaXRMaWIuaW5mIHwgICA1ICstDQo+ICBVZWZpQ3B1 UGtnL0xpYnJhcnkvTXBJbml0TGliL0lhMzIvTXBFcXUuaW5jICAgfCAgNDMgLS0tLS0tLQ0KPiAg Li4uL0xpYnJhcnkvTXBJbml0TGliL0lhMzIvTXBGdW5jcy5uYXNtICAgICAgIHwgIDk4ICsrKysr KystLS0tLS0tLS0NCj4gIFVlZmlDcHVQa2cvTGlicmFyeS9NcEluaXRMaWIvTXBFcXUuaW5jICAg ICAgICB8ICA5OSArKysrKysrKysrKysrKysrDQo+ICBVZWZpQ3B1UGtnL0xpYnJhcnkvTXBJbml0 TGliL01wTGliLmMgICAgICAgICAgfCAgIDEgLQ0KPiAgVWVmaUNwdVBrZy9MaWJyYXJ5L01wSW5p dExpYi9NcExpYi5oICAgICAgICAgIHwgICAzICstDQo+ICBVZWZpQ3B1UGtnL0xpYnJhcnkvTXBJ bml0TGliL1BlaU1wSW5pdExpYi5pbmYgfCAgIDUgKy0NCj4gIFVlZmlDcHVQa2cvTGlicmFyeS9N cEluaXRMaWIvWDY0L01wRXF1LmluYyAgICB8ICA0NSAtLS0tLS0tLQ0KPiAgVWVmaUNwdVBrZy9M aWJyYXJ5L01wSW5pdExpYi9YNjQvTXBGdW5jcy5uYXNtIHwgMTA4ICsrKysrKysrLS0tLS0tLS0t LQ0KPiAgMTEgZmlsZXMgY2hhbmdlZCwgMjcyIGluc2VydGlvbnMoKyksIDIxMSBkZWxldGlvbnMo LSkNCj4gIGRlbGV0ZSBtb2RlIDEwMDY0NCBVZWZpQ3B1UGtnL0xpYnJhcnkvTXBJbml0TGliL0lh MzIvTXBFcXUuaW5jDQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgVWVmaUNwdVBrZy9MaWJyYXJ5L01w SW5pdExpYi9NcEVxdS5pbmMNCj4gIGRlbGV0ZSBtb2RlIDEwMDY0NCBVZWZpQ3B1UGtnL0xpYnJh cnkvTXBJbml0TGliL1g2NC9NcEVxdS5pbmMNCj4gDQo+IC0tDQo+IDIuMjcuMC53aW5kb3dzLjEN Cj4gDQo+IA0KPiANCj4gLT0tPS09LT0tPS09DQo+IEdyb3Vwcy5pbyBMaW5rczogWW91IHJlY2Vp dmUgYWxsIG1lc3NhZ2VzIHNlbnQgdG8gdGhpcyBncm91cC4NCj4gVmlldy9SZXBseSBPbmxpbmUg KCM3MTM0NCk6IGh0dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC9tZXNzYWdlLzcxMzQ0DQo+ IE11dGUgVGhpcyBUb3BpYzogaHR0cHM6Ly9ncm91cHMuaW8vbXQvODA0MDEyOTAvMTY0MzQ5Ng0K PiBHcm91cCBPd25lcjogZGV2ZWwrb3duZXJAZWRrMi5ncm91cHMuaW8NCj4gVW5zdWJzY3JpYmU6 IGh0dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC91bnN1YiBbbWljaGFlbC5kLmtpbm5leUBp bnRlbC5jb21dDQo+IC09LT0tPS09LT0tPQ0KPiANCg0K