From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 5A7B7A0547; Thu, 28 Oct 2021 15:14:52 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 252EC41140; Thu, 28 Oct 2021 15:14:52 +0200 (CEST) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by mails.dpdk.org (Postfix) with ESMTP id 65E2D40DF4 for ; Thu, 28 Oct 2021 15:14:50 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10150"; a="217314714" X-IronPort-AV: E=Sophos;i="5.87,189,1631602800"; d="scan'208";a="217314714" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Oct 2021 06:14:49 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,189,1631602800"; d="scan'208";a="495327590" Received: from orsmsx604.amr.corp.intel.com ([10.22.229.17]) by fmsmga007.fm.intel.com with ESMTP; 28 Oct 2021 06:14:49 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) 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.2242.12; Thu, 28 Oct 2021 06:14:48 -0700 Received: from orsmsx605.amr.corp.intel.com (10.22.229.18) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Thu, 28 Oct 2021 06:14:48 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Thu, 28 Oct 2021 06:14:48 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.168) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Thu, 28 Oct 2021 06:14:48 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PW0Dr61P7FLBjN66geelHQATkftqyUZMMter+5rfmGE2rGyw7fgo0DkK4kzL8GS7hVep7AZTR2PNQuK9lzYJpUC8bkuaih7hhLjGVrdrgACQmpHJDFZQ8ldiXZFG6gztiTHpZOkUUVh7m6eHcUPTdfp/dr0jpmzla+ESBKxISUPDutZf4o4TIx3F7xY217MosEyjfF87ASLLhLZ+8uYkDX7c2jKdEwWZ8rR8pn4G32GFZsbvgKH56scn9tPGZgKLP8fli3ADOAUrlRKMsQOxf3FUM9gWC2TOcHaF00wCHkGNzci2gqHKxm97pbWkOlfL3/P6AGb8WfBuYQ/MB9Ttmg== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=84BRA8u+RiUdo2ho+M3PBX368QQNqhj/P9r98bns+z4=; b=Q2vQD6swHayFVt/SqYCKWrDGLSjvogmlZh2cfKUjkZ2GGy4fKI6QItXW0Y7Syh8i8L/OPMMt7n9J+4nZiq6RrYSsdKs+yEYASABsW8jCJ68l2VxyAEgcI7NyKH5todu5n+ghcuZjWU2h+VjrdGi/rlB/2rv3JGkJLpHRgd88Ntztv0Ll2SECcR/NB5vHRfsQQyofxKLk5AhB9hXjT7jjJ++udyJmpdPgCIaKlIFcdkTf8q13T2eNuA8TGQBbgHeoKnQhOTUjGsMAyZ0iVAeYh9zvEDuopNLAmqQ72pLc07+LEil68JO0Ee5zGSp2usbjZqtoz5mN8pHtLG/r16sh7g== 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=84BRA8u+RiUdo2ho+M3PBX368QQNqhj/P9r98bns+z4=; b=DhxEgZ3nXqByQsYSJkeONf9KmPmNw0UQlhBDg2PyZ753PagfyOxyGUOMdJklq4SvWycXRG8+URgAHweJZBttlWXKx1rbHlvH+hsJ+DoLqiSLE9NTvgTxpzvCMoimGiHAxR25o68AY5KIEYSt/vQiL9WpS1n39PEGzLOsW2bRBXI= Received: from DM6PR11MB4491.namprd11.prod.outlook.com (2603:10b6:5:204::19) by DM6PR11MB3386.namprd11.prod.outlook.com (2603:10b6:5:5c::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4628.20; Thu, 28 Oct 2021 13:14:41 +0000 Received: from DM6PR11MB4491.namprd11.prod.outlook.com ([fe80::2c0c:5383:f814:3b4e]) by DM6PR11MB4491.namprd11.prod.outlook.com ([fe80::2c0c:5383:f814:3b4e%6]) with mapi id 15.20.4649.015; Thu, 28 Oct 2021 13:14:41 +0000 From: "Ananyev, Konstantin" To: Feifei Wang , Ruifeng Wang CC: "dev@dpdk.org" , "nd@arm.com" , "jerinjacobk@gmail.com" , "stephen@networkplumber.org" , "david.marchand@redhat.com" , "thomas@monjalon.net" , mattias.ronnblom Thread-Topic: [PATCH v7 1/5] eal: add new definitions for wait scheme Thread-Index: AQHXy8kJVLO1k1vSeEC4q5ENrGQD2avoY2mw Date: Thu, 28 Oct 2021 13:14:41 +0000 Message-ID: References: <20210902053253.3017858-1-feifei.wang2@arm.com> <20211028065640.139655-1-feifei.wang2@arm.com> <20211028065640.139655-2-feifei.wang2@arm.com> In-Reply-To: <20211028065640.139655-2-feifei.wang2@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.200.16 authentication-results: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 73c917a4-7c46-4879-73e8-08d99a14e6df x-ms-traffictypediagnostic: DM6PR11MB3386: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: LsXnu/UxbnRmX+N/hDII2WD9vZSvNJpKe4hKqWQtG6xdN+WneYsoNWRBRObsiC8yWlbY4Ol72Jzm+uqoqzug68UUbyKG7EKbnLDUo5qyNAXeOdYdlfcDcDHT6GeGinAgcmLOnj+z077/04lSVosK9cSShDHe0Esxc+bnn/4YwJh5KpaPPgnceoUPU+BhJJbRbPMVYy1O1F3wNnjrvawo827U6CwRAEUqiNoIlCtYPY7ESIV/6WlaQZOleAbRSdFvqtCQm/YlW6NjFDmDcF/8XJStxdVuc1WxkSAhxqpilJUDyHw1vwIsA8t9/yqXJY3Tw9sCDF2W0klCQs6UpbiOzJQLHtfCPVM9Oehqjdiviugj0fVXMEQrgorPLJMAGRU+2RQa6FXMX4xzwUmbXfjXVoDhkjjG0P529v1pEy2IglxlTsTglk8WmbHblGu3CwDGfUvCXBFNYkbxB1JXeJFIyomfCEeJnnBLMrLXH0RRkeyHOn0LiQp5phBs8Rik6KkgbD3l1J/NciIuYWMrFX+OSWimw5fl0EIeRJQEs0zAiZ1fJWPp2++CNXY2Tkef5aeAm6xyMKr9Bti2pVb4/OpywhtF2j8kUfIP96BcVqaBKnRPzgT4xmUooXvAUGZLNZRmexvnbeG7jHzrpsO82W8ZGnHzFMLsRnvBcrHF7SzybsVyAc4dtW5ZCs8ImmtLVFzwix98s62/HSujzoE/+ynX9w== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR11MB4491.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(8676002)(186003)(9686003)(71200400001)(66476007)(33656002)(8936002)(122000001)(54906003)(110136005)(5660300002)(55016002)(66446008)(508600001)(66946007)(52536014)(38070700005)(4326008)(316002)(26005)(76116006)(86362001)(66556008)(7696005)(82960400001)(2906002)(55236004)(6506007)(83380400001)(64756008)(38100700002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UHlOWUtjTGVYQng0b1V2U2FHZHVtNEdrczFqYlVQbzBZZlZPamVNRzhQcjRZ?= =?utf-8?B?QWJWSTFpVmY3ZTV4cExid0JDZk9kaHg4SVhneWN3Y1BueWtyZkVJWi9mN1J1?= =?utf-8?B?ZFJlWGlxU2VvZ2p6Sm1QRGc0Yzd6enpFYkJjVG5OZG50OW5GYkkzbTY3NkZJ?= =?utf-8?B?VzArTDBsUTNuZ080SS84Wnp2Mzh2eFVkNDRmcSsrcFRKdXZXM2ZETk9wVWhw?= =?utf-8?B?b0JaTEhROFRCbGlTMVZyVWtIN3FmZlVJYk9XM3oxUGN1ZGljOFJIUDBwanE0?= =?utf-8?B?SlhwR3Z2RGc5YzQySEowcEdTZzlxY21HM3lqZ2JFaE83ZktXbXJFaTUrZ28z?= =?utf-8?B?Sk5IZWF0SFEwYWlYQUhmNjVNK0tvRlhycjRER0R2dzJnUHQrSTlVR0dwVHBV?= =?utf-8?B?TTJoUUhiT2RuZThVSUliTEJoTGlrOSs0K0s1Q1ZRMERxRmQybmp3b2FpS2Y3?= =?utf-8?B?Y0t2ZmV2VjFnaklISUswc2ZaRmo1U1lKRzBGS1VkeHVONTFxY2NlUWhqeVJs?= =?utf-8?B?RlBvRHVhaTJ3YXJRdU03cysrNGZnWXVCZ2c1cENHZmZ5L2pSQnplRGNFQW5u?= =?utf-8?B?Nk5STXN1WFoxNXBoVVdYMnF6VzdFem9yL3Z1b2doTXhtWnYyYjBMVVNyRWNt?= =?utf-8?B?MGthWHhjRWt4N0RDbC9uNmtIYS92WnVhdDNYYXU3dmxweE53WG8vUzUwbzJ5?= =?utf-8?B?emtXWlhza3Uwa2Z2T2NnZmM3RGRUcEFNTUg5Yi91RkFpVDJMRVdobmxLL2Jv?= =?utf-8?B?WWV0dWNZdEcvazd1aUU4TGEzR0wzdHFhUjJ3Zm9qajhua2NKOUVYRmRvUE5G?= =?utf-8?B?UGo4enA5UkcwVGJ3azNvUHUweHNTbm1FTnpGQ3hPb2dQbG5rbXZ6bTlFaU9Q?= =?utf-8?B?VEMxUjJjRjBOek1wVmZjM2o1U1A5T0NzZW9rV0tIaTJyVEZVQ2dBU2J2U3Zy?= =?utf-8?B?c1lmamszc1MyZEQ2TjJLaVUvQjY4aVdJdzk0c2h2N3VZMkMzL0MwWXIxQ2VZ?= =?utf-8?B?RFB2dVBsNjhtT0srTWJUVzVsdi8vSmRzZ3JQaWtCTmlDUkt5MGZnKzdmZ1d6?= =?utf-8?B?UU9VSzRWU1VXcmVOaDlkWGJ1Y2V6VjBXV0diaVM5M3U4UWdadzJhaFlZemo2?= =?utf-8?B?K2tFaHZTdHY2K09tZWxDVkVRUU5aelEwZmphWEdWazByMXo1SzdPQ05iQ05j?= =?utf-8?B?VXhBbVpLQTJhYWhnelp4dGxVWHY0aWplTUc4Y3BPcUZHWEZXdHdxQXFJREVE?= =?utf-8?B?L3VnRWZxMGlFQWpsSDVpbEJSVzZuZzNCQklWekFCNEdwditGL1NDOTloKzgz?= =?utf-8?B?VjQ4UUdNZE9ESFBnUlYxdm8yZmI3VWZlRWxuc2Q0U1lPQTZQdUVsbndXVSt2?= =?utf-8?B?a3QyNWpVVXRIdFUvVXNHMlREZW0zQ05uWDJzbTh2NGlITU5ZWXh5SzdxK0RH?= =?utf-8?B?VlFBN1AzSXJLZkUrangrNytQUW9Pekp2VE5Mak9yQjR6UVpTd2k0aHRnU2p6?= =?utf-8?B?eHBrRUxpMHB0UkxRZDlyQmNhL2RXemZGTXJZOXYxcUlyY3hkS3ArQm5PcnAr?= =?utf-8?B?SVNkQkdPNS9hOUlFU1REWkZaOFFpNmRhYWpJdXNlM1RvSnRsOERNdWI0YUxV?= =?utf-8?B?bE1IVW9NNjRodytGNW5UenQrcDVIczVTMVVLTlpBRXFJbzExMGtIZ2hxbXpU?= =?utf-8?B?TGRnWHJSNTRkTnBwUUdPVis4QVhYL3VVWVE1OUJvU3VUVE1JTzdJYnNOQlFR?= =?utf-8?B?TGJTVjVqL3VyeFgxdUhvWks2SnlwRkNaQ1ZJYWRaM1pkblNUTG1CQS9EVnpx?= =?utf-8?B?aENrK0wzVklPNE1VMjZzYkF5MTV0NDdpK1ZYWkVjc3ZZc251cFZzVGh1U3M1?= =?utf-8?B?NUtLMDMrV05Pa3RuTUVIYmhhbDB5Ry8zK3A5aEFsNEdhZnZSVnpQeXE4V2sy?= =?utf-8?B?YXU4TUJRNEd0TFpkSUxRZlV3SzZjTElDK3c0bnpzT1MwUXZQWndLSk11WVZL?= =?utf-8?B?UjliQldWcE03UEU5SDVWeDlKQWlSNlM0S0pMUVZ4eHA5b1Voclh1R3lJMDIv?= =?utf-8?B?ZFFTQ1grVEMxUFQzUlNCTHZnWkFrZHBhVEttRk95SmlKL2NvZ2I1MmVaOWhE?= =?utf-8?B?RDNyRmRpZHdScFo1MnUybTl0UmhFdlRuMW5ESHl5bFBoQ0xLNmVyaG5KV0ZX?= =?utf-8?B?c0dVMGhHamQwYnpHR1R1WW1IdmNhVXpwSEh2Y1BPUWFFS1FTNmw1L1RLenZ1?= =?utf-8?B?MG4yRjhLN2tQeWdEMEZqYWpEVmlnPT0=?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR11MB4491.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 73c917a4-7c46-4879-73e8-08d99a14e6df X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Oct 2021 13:14:41.2263 (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: hQ3UjojccqAvbFdUdPh0Z0kR0ElE4/4qKmf9w0yLP4IW/+lgMgIb2Un2X32/96rHGfACQEUTqkV5sR5CUFL5P4I98WSB67KbH7ncrETpiOA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR11MB3386 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v7 1/5] eal: add new definitions for wait scheme X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" PiANCj4gZGlmZiAtLWdpdCBhL2xpYi9lYWwvaW5jbHVkZS9nZW5lcmljL3J0ZV9wYXVzZS5oIGIv bGliL2VhbC9pbmNsdWRlL2dlbmVyaWMvcnRlX3BhdXNlLmgNCj4gaW5kZXggNjY4ZWU0YTE4NC4u ZDBjNWI1YTQxNSAxMDA2NDQNCj4gLS0tIGEvbGliL2VhbC9pbmNsdWRlL2dlbmVyaWMvcnRlX3Bh dXNlLmgNCj4gKysrIGIvbGliL2VhbC9pbmNsdWRlL2dlbmVyaWMvcnRlX3BhdXNlLmgNCj4gQEAg LTExMSw2ICsxMTEsMzQgQEAgcnRlX3dhaXRfdW50aWxfZXF1YWxfNjQodm9sYXRpbGUgdWludDY0 X3QgKmFkZHIsIHVpbnQ2NF90IGV4cGVjdGVkLA0KPiAgCXdoaWxlIChfX2F0b21pY19sb2FkX24o YWRkciwgbWVtb3JkZXIpICE9IGV4cGVjdGVkKQ0KPiAgCQlydGVfcGF1c2UoKTsNCj4gIH0NCj4g Kw0KPiArLyoNCj4gKyAqIFdhaXQgdW50aWwgKmFkZHIgYnJlYWtzIHRoZSBjb25kaXRpb24sIHdp dGggYSByZWxheGVkIG1lbW9yeQ0KPiArICogb3JkZXJpbmcgbW9kZWwgbWVhbmluZyB0aGUgbG9h ZHMgYXJvdW5kIHRoaXMgQVBJIGNhbiBiZSByZW9yZGVyZWQuDQo+ICsgKg0KPiArICogQHBhcmFt IGFkZHINCj4gKyAqICBBIHBvaW50ZXIgdG8gdGhlIG1lbW9yeSBsb2NhdGlvbi4NCj4gKyAqIEBw YXJhbSBtYXNrDQo+ICsgKiAgQSBtYXNrIG9mIHZhbHVlIGJpdHMgaW4gaW50ZXJlc3QuDQo+ICsg KiBAcGFyYW0gY29uZA0KPiArICogIEEgc3ltYm9sIHJlcHJlc2VudGluZyB0aGUgY29uZGl0aW9u Lg0KPiArICogQHBhcmFtIGV4cGVjdGVkDQo+ICsgKiAgQW4gZXhwZWN0ZWQgdmFsdWUgdG8gYmUg aW4gdGhlIG1lbW9yeSBsb2NhdGlvbi4NCj4gKyAqIEBwYXJhbSBtZW1vcmRlcg0KPiArICogIFR3 byBkaWZmZXJlbnQgbWVtb3J5IG9yZGVycyB0aGF0IGNhbiBiZSBzcGVjaWZpZWQ6DQo+ICsgKiAg X19BVE9NSUNfQUNRVUlSRSBhbmQgX19BVE9NSUNfUkVMQVhFRC4gVGhlc2UgbWFwIHRvDQo+ICsg KiAgQysrMTEgbWVtb3J5IG9yZGVycyB3aXRoIHRoZSBzYW1lIG5hbWVzLCBzZWUgdGhlIEMrKzEx IHN0YW5kYXJkIG9yDQo+ICsgKiAgdGhlIEdDQyB3aWtpIG9uIGF0b21pYyBzeW5jaHJvbml6YXRp b24gZm9yIGRldGFpbGVkIGRlZmluaXRpb24uDQo+ICsgKi8NCj4gKyNkZWZpbmUgcnRlX3dhaXRf ZXZlbnQoYWRkciwgbWFzaywgY29uZCwgZXhwZWN0ZWQsIG1lbW9yZGVyKSAgICAgICAgICAgICAg ICAgICAgICAgXA0KPiArZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ICsJUlRFX0JVSUxE X0JVR19PTighX19idWlsdGluX2NvbnN0YW50X3AobWVtb3JkZXIpKTsgICAgICAgICAgICAgICAg ICAgICAgICAgXA0KPiArCVJURV9CVUlMRF9CVUdfT04obWVtb3JkZXIgIT0gX19BVE9NSUNfQUNR VUlSRSAmJiAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gKwkJCQltZW1vcmRlciAhPSBf X0FUT01JQ19SRUxBWEVEKTsgICAgICAgICAgICAgICAgICAgICBcDQo+ICsJdHlwZW9mKCooYWRk cikpIGV4cGVjdGVkX3ZhbHVlID0gKGV4cGVjdGVkKTsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXA0KPiArCXdoaWxlICgoX19hdG9taWNfbG9hZF9uKChhZGRyKSwgKG1lbW9yZGVyKSkg JiAobWFzaykpIGNvbmQgZXhwZWN0ZWRfdmFsdWUpIFwNCj4gKwkJcnRlX3BhdXNlKCk7ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gK30g d2hpbGUgKDApDQo+ICAjZW5kaWYNCj4gDQo+ICAjZW5kaWYgLyogX1JURV9QQVVTRV9IXyAqLw0K PiAtLQ0KDQpGcm9tIGdlbmVyaWMveDg2IHBlcnNwZWN0aXZlOg0KQWNrZWQtYnk6IEtvbnN0YW50 aW4gQW5hbnlldiA8a29uc3RhbnRpbi5hbmFueWV2QGludGVsLmNvbT4NCg0KPiAyLjI1LjENCg0K