From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id C6D861B009 for ; Tue, 10 Jul 2018 15:27:43 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 10 Jul 2018 06:27:42 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.51,334,1526367600"; d="scan'208";a="70168651" Received: from irsmsx105.ger.corp.intel.com ([163.33.3.28]) by fmsmga004.fm.intel.com with ESMTP; 10 Jul 2018 06:27:41 -0700 Received: from irsmsx107.ger.corp.intel.com ([169.254.10.193]) by irsmsx105.ger.corp.intel.com ([169.254.7.26]) with mapi id 14.03.0319.002; Tue, 10 Jul 2018 14:27:40 +0100 From: "De Lara Guarch, Pablo" To: Anoob Joseph , "Doherty, Declan" CC: Akhil Goyal , Ankur Dwivedi , Jerin Jacob , Narayana Prasad , "dev@dpdk.org" Thread-Topic: [PATCH v1 2/3] app/crypto-perf: honour cryptodev's min headroom/tailroom Thread-Index: AQHUE57gR2CTqXqjzUiLE2ic2yfLyqSISvLwgAAKoDCAAAlxwP//+pgAgAAgqRA= Date: Tue, 10 Jul 2018 13:27:39 +0000 Message-ID: References: <1529389574-6643-1-git-send-email-anoob.joseph@caviumnetworks.com> <1530712550-18099-1-git-send-email-anoob.joseph@caviumnetworks.com> <1530712550-18099-3-git-send-email-anoob.joseph@caviumnetworks.com> <38fdd0af-1d77-a648-3bd3-ef7ab2899c40@caviumnetworks.com> In-Reply-To: <38fdd0af-1d77-a648-3bd3-ef7ab2899c40@caviumnetworks.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiN2Q5ZWUwOWUtOTUzNS00MjlmLTg5MDItNTE1NjRhOTUyM2NhIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiUGhuTXpFNXJlWk52d3BtbEtSMEszK2NiejRjNVdxVG95Z0lPRU5tWTVMSnRCUUFtRmFPMzBqWGdWZ1cyKzhaeCJ9 x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.200.100 dlp-reaction: no-action x-originating-ip: [163.33.239.182] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v1 2/3] app/crypto-perf: honour cryptodev's min headroom/tailroom X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 Jul 2018 13:27:44 -0000 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogQW5vb2IgSm9zZXBoIFtt YWlsdG86YW5vb2Iuam9zZXBoQGNhdml1bW5ldHdvcmtzLmNvbV0NCj4gU2VudDogVHVlc2RheSwg SnVseSAxMCwgMjAxOCAxOjIzIFBNDQo+IFRvOiBEZSBMYXJhIEd1YXJjaCwgUGFibG8gPHBhYmxv LmRlLmxhcmEuZ3VhcmNoQGludGVsLmNvbT47IERvaGVydHksIERlY2xhbg0KPiA8ZGVjbGFuLmRv aGVydHlAaW50ZWwuY29tPg0KPiBDYzogQWtoaWwgR295YWwgPGFraGlsLmdveWFsQG54cC5jb20+ OyBBbmt1ciBEd2l2ZWRpDQo+IDxhbmt1ci5kd2l2ZWRpQGNhdml1bW5ldHdvcmtzLmNvbT47IEpl cmluIEphY29iDQo+IDxqZXJpbi5qYWNvYkBjYXZpdW1uZXR3b3Jrcy5jb20+OyBOYXJheWFuYSBQ cmFzYWQNCj4gPG5hcmF5YW5hcHJhc2FkLmF0aHJleWFAY2F2aXVtbmV0d29ya3MuY29tPjsgZGV2 QGRwZGsub3JnDQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjEgMi8zXSBhcHAvY3J5cHRvLXBlcmY6 IGhvbm91ciBjcnlwdG9kZXYncyBtaW4NCj4gaGVhZHJvb20vdGFpbHJvb20NCj4gDQo+IEhpIFBh YmxvLA0KPiANCj4gUGxlYXNlIHNlZSBpbmxpbmUuDQo+IA0KPiBUaGFua3MsDQo+IEFub29iDQo+ IE9uIDEwLTA3LTIwMTggMTc6MTgsIERlIExhcmEgR3VhcmNoLCBQYWJsbyB3cm90ZToNCj4gPiBF eHRlcm5hbCBFbWFpbA0KPiA+DQo+ID4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+ IEZyb206IERlIExhcmEgR3VhcmNoLCBQYWJsbw0KPiA+PiBTZW50OiBUdWVzZGF5LCBKdWx5IDEw LCAyMDE4IDEyOjE3IFBNDQo+ID4+IFRvOiAnQW5vb2IgSm9zZXBoJyA8YW5vb2Iuam9zZXBoQGNh dml1bW5ldHdvcmtzLmNvbT47IERvaGVydHksIERlY2xhbg0KPiA+PiA8ZGVjbGFuLmRvaGVydHlA aW50ZWwuY29tPg0KPiA+PiBDYzogJ0FraGlsIEdveWFsJyA8YWtoaWwuZ295YWxAbnhwLmNvbT47 ICdBbmt1ciBEd2l2ZWRpJw0KPiA+PiA8YW5rdXIuZHdpdmVkaUBjYXZpdW1uZXR3b3Jrcy5jb20+ OyAnSmVyaW4gSmFjb2InDQo+ID4+IDxqZXJpbi5qYWNvYkBjYXZpdW1uZXR3b3Jrcy5jb20+OyAn TmFyYXlhbmEgUHJhc2FkJw0KPiA+PiA8bmFyYXlhbmFwcmFzYWQuYXRocmV5YUBjYXZpdW1uZXR3 b3Jrcy5jb20+OyAnZGV2QGRwZGsub3JnJw0KPiA+PiA8ZGV2QGRwZGsub3JnPg0KPiA+PiBTdWJq ZWN0OiBSRTogW1BBVENIIHYxIDIvM10gYXBwL2NyeXB0by1wZXJmOiBob25vdXIgY3J5cHRvZGV2 J3MgbWluDQo+ID4+IGhlYWRyb29tL3RhaWxyb29tDQo+ID4+DQo+ID4+DQo+ID4+DQo+ID4+PiAt LS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+Pj4gRnJvbTogRGUgTGFyYSBHdWFyY2gsIFBh YmxvDQo+ID4+PiBTZW50OiBUdWVzZGF5LCBKdWx5IDEwLCAyMDE4IDEyOjA4IFBNDQo+ID4+PiBU bzogJ0Fub29iIEpvc2VwaCcgPGFub29iLmpvc2VwaEBjYXZpdW1uZXR3b3Jrcy5jb20+OyBEb2hl cnR5LA0KPiA+Pj4gRGVjbGFuIDxkZWNsYW4uZG9oZXJ0eUBpbnRlbC5jb20+DQo+ID4+PiBDYzog QWtoaWwgR295YWwgPGFraGlsLmdveWFsQG54cC5jb20+OyBBbmt1ciBEd2l2ZWRpDQo+ID4+PiA8 YW5rdXIuZHdpdmVkaUBjYXZpdW1uZXR3b3Jrcy5jb20+OyBKZXJpbiBKYWNvYg0KPiA+Pj4gPGpl cmluLmphY29iQGNhdml1bW5ldHdvcmtzLmNvbT47IE5hcmF5YW5hIFByYXNhZA0KPiA+Pj4gPG5h cmF5YW5hcHJhc2FkLmF0aHJleWFAY2F2aXVtbmV0d29ya3MuY29tPjsgZGV2QGRwZGsub3JnDQo+ ID4+PiBTdWJqZWN0OiBSRTogW1BBVENIIHYxIDIvM10gYXBwL2NyeXB0by1wZXJmOiBob25vdXIg Y3J5cHRvZGV2J3MgbWluDQo+ID4+PiBoZWFkcm9vbS90YWlscm9vbQ0KPiA+Pj4NCj4gPj4+DQo+ ID4+Pg0KPiA+Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+Pj4gRnJvbTogQW5v b2IgSm9zZXBoIFttYWlsdG86YW5vb2Iuam9zZXBoQGNhdml1bW5ldHdvcmtzLmNvbV0NCj4gPj4+ PiBTZW50OiBXZWRuZXNkYXksIEp1bHkgNCwgMjAxOCAyOjU2IFBNDQo+ID4+Pj4gVG86IERvaGVy dHksIERlY2xhbiA8ZGVjbGFuLmRvaGVydHlAaW50ZWwuY29tPjsgRGUgTGFyYSBHdWFyY2gsDQo+ ID4+Pj4gUGFibG8gPHBhYmxvLmRlLmxhcmEuZ3VhcmNoQGludGVsLmNvbT4NCj4gPj4+PiBDYzog QW5vb2IgSm9zZXBoIDxhbm9vYi5qb3NlcGhAY2F2aXVtbmV0d29ya3MuY29tPjsgQWtoaWwgR295 YWwNCj4gPj4+PiA8YWtoaWwuZ295YWxAbnhwLmNvbT47IEFua3VyIER3aXZlZGkNCj4gPj4+PiA8 YW5rdXIuZHdpdmVkaUBjYXZpdW1uZXR3b3Jrcy5jb20+OyBKZXJpbiBKYWNvYg0KPiA+Pj4+IDxq ZXJpbi5qYWNvYkBjYXZpdW1uZXR3b3Jrcy5jb20+OyBOYXJheWFuYSBQcmFzYWQNCj4gPj4+PiA8 bmFyYXlhbmFwcmFzYWQuYXRocmV5YUBjYXZpdW1uZXR3b3Jrcy5jb20+OyBkZXZAZHBkay5vcmcN Cj4gPj4+PiBTdWJqZWN0OiBbUEFUQ0ggdjEgMi8zXSBhcHAvY3J5cHRvLXBlcmY6IGhvbm91ciBj cnlwdG9kZXYncyBtaW4NCj4gPj4+PiBoZWFkcm9vbS90YWlscm9vbQ0KPiA+Pj4+DQo+ID4+Pj4g Q3J5cHRvIGRldiB3b3VsZCBzcGVjaWZ5IGl0cyBoZWFkcm9vbSBhbmQgdGFpbHJvb20gcmVxdWly ZW1lbnQgYW5kDQo+ID4+Pj4gdGhlIGFwcGxpY2F0aW9uIGlzIGV4cGVjdGVkIHRvIGhvbm91ciB0 aGlzIHdoaWxlIGNyZWF0aW5nIGJ1ZmZlcnMuDQo+ID4+Pj4NCj4gPj4+PiBTaWduZWQtb2ZmLWJ5 OiBBbm9vYiBKb3NlcGggPGFub29iLmpvc2VwaEBjYXZpdW1uZXR3b3Jrcy5jb20+DQo+ID4+PiAu Li4NCj4gPj4+DQo+ID4+Pj4gLS0tIGEvYXBwL3Rlc3QtY3J5cHRvLXBlcmYvY3BlcmZfdGVzdF9j b21tb24uYw0KPiA+Pj4+ICsrKyBiL2FwcC90ZXN0LWNyeXB0by1wZXJmL2NwZXJmX3Rlc3RfY29t bW9uLmMNCj4gPj4+IC4uLg0KPiA+Pj4NCj4gPj4+PiBmaWxsX211bHRpX3NlZ19tYnVmKHN0cnVj dCBydGVfbWJ1ZiAqbSwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCwNCj4gPj4+PiAgICAgICAgICAg IG0tPmJ1Zl9pb3ZhID0gbmV4dF9zZWdfcGh5c19hZGRyOw0KPiA+Pj4+ICAgICAgICAgICAgbmV4 dF9zZWdfcGh5c19hZGRyICs9IG1idWZfaGRyX3NpemUgKyBzZWdtZW50X3N6Ow0KPiA+Pj4+ICAg ICAgICAgICAgbS0+YnVmX2xlbiA9IHNlZ21lbnRfc3o7DQo+ID4+Pj4gLSAgICAgICAgIG0tPmRh dGFfbGVuID0gc2VnbWVudF9zejsNCj4gPj4+PiArICAgICAgICAgbS0+ZGF0YV9sZW4gPSBkYXRh X2xlbjsNCj4gPj4+Pg0KPiA+Pj4+IC0gICAgICAgICAvKiBObyBoZWFkcm9vbSBuZWVkZWQgZm9y IHRoZSBidWZmZXIgKi8NCj4gPj4+PiAtICAgICAgICAgbS0+ZGF0YV9vZmYgPSAwOw0KPiA+Pj4+ ICsgICAgICAgICAvKiBVc2UgaGVhZHJvb20gc3BlY2lmaWVkIGZvciB0aGUgYnVmZmVyICovDQo+ ID4+Pj4gKyAgICAgICAgIG0tPmRhdGFfb2ZmID0gaGVhZHJvb207DQo+ID4+PiBIZWFkcm9vbSBp cyBvbmx5IGFwcGxpY2FibGUgZm9yIHRoZSBmaXJzdCBzZWdtZW50L3MuDQo+ID4+PiBUaGlzIGlz IGFkZGluZyBoZWFkcm9vbSBpbiBhbGwgdGhlIHNlZ21lbnRzLCB3aGljaCBsb29rcyB3cm9uZy4N Cj4gPj4+DQo+ID4+IEkgdGhpbmsgIm1heF9zaXplIiBuZWVkcyB0byBiZSByZWNhbGN1bGF0ZWQg aW4NCj4gPj4gImNwZXJmX2FsbG9jX2NvbW1vbl9tZW1vcnkiLCBhZGRpbmcgaGVhZHJvb20gYW5k IHRhaWxyb29tIHNpemUsIHdoaWNoDQo+ID4+IHdpbGwgcG90ZW50aWFsbHkgaW5jcmVhc2UgdGhl IG51bWJlciBvZiBzZWdtZW50cyByZXF1aXJlZC4NCj4gPj4gVGhlbiwgaGVhZHJvb20gc2l6ZSBu ZWVkcyB0byBiZSBjaGVja2VkIGluIGNhc2UgaXQgaXMgYmlnZ2VyIHRoYW4NCj4gPj4gc2VnbWVu dCBzaXplLCBzbyBkYXRhIG1pZ2h0IG5lZWQgdG8gc3RhcnQgaW4gdGhlIG5leHQgc2VnbWVudC4N Cj4gPj4gU2ltaWxhciB0aGluZyBmb3IgdGFpbHJvb20uDQo+ID4gQWN0dWFsbHksIGZvcmdldCBh Ym91dCB0aGlzLiBJIGhhdmUgYmVlbiB0aGlua2luZyBhYm91dCBpdCwgYW5kIGl0IGxvb2tzIGFy dGlmaWNpYWwNCj4gdG8gZG8gdGhpcy4NCj4gPiBHZW5lcmFsbHksIGluIGEgbWJ1ZiBwb29sLCBo ZWFkcm9vbSBpcyB0aGUgc2FtZSBmb3IgYWxsIG1idWZzL3NlZ21lbnRzLg0KPiBEbyBJIG5lZWQg dG8gcmV2aXNpdCB0aGlzIHBhdGNoPyBPciBpcyB0aGlzIGZpbmU/DQoNCkknZCBzYXkgaXQgaXMg b2sgdGhlbi4gSSBtaWdodCByZXdvcmsgdGhlIGFwcCBpbiB0aGUgZnV0dXJlLCB0byBkZWFsIGJl dHRlciB3aXRoIHRoZSBwb29sIGNyZWF0aW9uDQood2l0aG91dCBuZWVkaW5nIHRvIHNldCB0aGUg bWJ1ZiBwYXJhbWV0ZXJzIG1hbnVhbGx5KS4NCg0KPiA+DQo+ID4gSW4gYW55IGNhc2UsIEkgaGF2 ZSBhIGNvbmNlcm4gdGhvdWdoIGFib3V0IHRoaXMuIEhlYWRyb29tIHNpemUgaXMgZ290IGZyb20g YQ0KPiBjb21waWxlIHRpbWUgb3B0aW9uOg0KPiA+IENPTkZJR19SVEVfUEtUTUJVRl9IRUFEUk9P TT0xMjguIFBNRHMgZ2VuZXJhbGx5IHVzZSB0aGlzIHZhbHVlIHRvDQo+IHNldA0KPiA+ICJkYXRh X29mZiIsIGJ1dCB0aGV5IGNvdWxkIHVzZSBhbm90aGVyIGRpZmZlcmVudCB2YWx1ZS4NCj4gPiBT byB3aGF0IGhhcHBlbnMgaWYgbWluX21idWZfaGVhZHJvb20gaXMgbW9yZSB0aGFuIHRoaXMgdmFs dWU/DQo+ID4gc2luY2UgdGhpcyBpcyBub3QgY29uZmlndXJhYmxlLCB0aGlzIHdvbid0IHdvcmsu DQo+IFNpbmNlIHRoaXMgaXMgYSBQTUQgc3BlY2lmaWMgaXNzdWUsIHdlIGNhbiBoYXZlIGFuIGV4 dHJhIGNoZWNrIGluIHRoZSBkcml2ZXIgdG8NCj4gbWFrZSBzdXJlICJDT05GSUdfUlRFX1BLVE1C VUZfSEVBRFJPT00iPj0gbWluX21idWZfaGVhZHJvb20gZm9yDQo+IHRoZSBQTUQuIElmIHRoaXMg Y2hlY2sgaXNuJ3Qgc2F0aXNmaWVkLCB0aGUgZHJpdmVyIHByb2JlIHdvdWxkIGZhaWwuDQo+IElz IHRoaXMgYXBwcm9hY2ggZmluZT8NCg0KUHJvYmFibHkgb2ssIGFsdGhvdWdoIGV2ZW50dWFsbHks IGEgY2hlY2sgaW4gdGhlIGFjdHVhbCBoZWFkcm9vbSwgcGVyIG9wZXJhdGlvbiwgd2lsbCBiZSBy ZXF1aXJlZC4NCg0KPiANCj4gSWYgYXBwbGljYXRpb24gY2hvb3NlcyB0byBpZ25vcmUgQ09ORklH X1JURV9QS1RNQlVGX0hFQURST09NDQo+IGFsdG9nZXRoZXIsIHRoZW4gaXQgd2lsbCBiZSBhIHBy b2JsZW0gZm9yIG1vc3QgUE1Ecy4gV2l0aCBwcm90b2NvbCBvZmZsb2FkcyBldGMsDQo+IGhlYWRy b29tIHdvdWxkIGJlIHVzZWQgaW50ZXJuYWxseSwgcmlnaHQ/DQoNCkkgYW0gbm90IHN1cmUgd2hh dCBjYW4gYmUgZG9uZSBoZXJlLiBIZWFkcm9vbSBhdmFpbGFiaWxpdHkgZGVwZW5kcyBvbiB0aGUg bmV0d29yayBkcml2ZXIsDQpidXQgdGhlbiB0aGUgYXBwbGljYXRpb24gY2FuIHByZXBlbmQgZGF0 YSBhbmQgbWFrZSB0aGUgaGVhZHJvb20gc21hbGxlci4NCg0KPiA+IEFsc28sIGdlbmVyYWxseSwg aGVhZHJvb20gYW5kIHRhaWxyb29tIGFyZSB1c2VkIGZvciBlbmNhcHN1bGF0aW9uLCBzbyBJIGFt DQo+IG5vdCBzdXJlIGlmIHRoaXMgaXMgdGhlIGJlc3QgcGxhY2UuDQo+IElzIHlvdXIgY29uY2Vy biBhYm91dCB3aGV0aGVyIHRoZXJlIGlzIGVub3VnaCBzcGFjZSBpbiBoZWFkcm9vbSBmb3INCj4g ZW5jYXBzdWxhdGlvbiAmIFBNRCdzIHVzYWdlPyBBcHBsaWNhdGlvbiBjYW4gcHJvYmUgdGhlIGlu ZGl2aWR1YWwgdmFsdWVzIGFuZA0KPiBzZWUgaWYgdGhlcmUgaXMgZW5vdWdoIHNwYWNlLCByaWdo dD8gSW4gb3VyIHVzZSBjYXNlLCB0aGUgaGVhZHJvb20gcmVxdWlyZW1lbnQgaXMNCj4gMjQgYnl0 ZXMgJiB0YWlscm9vbSByZXF1aXJlbWVudCBpcyA4IGJ5dGVzLg0KDQpSaWdodCwgYWx0aG91Z2gg dGhpcyB3aWxsIGhhdmUgdG8gYmUgZG9uZSBpbiBkYXRhIHBhdGgsIHJpZ2h0Pw0KSGVhZHJvb20g YW5kIHRhaWxyb29tIGNhbiBvbmx5IGJlIGtub3duIG9uY2UgcGFja2V0cyBhcmUgcmVjZWl2ZWQu DQoNCj4gPiBXaGF0IGFib3V0IHVzaW5nIHRoZSBwcml2YXRlIHNpemUgb2YgdGhlIG1idWY/IFRo YXQgaXMgYWN0dWFsbHkNCj4gPiBjb25maWd1cmFibGUsIGV2ZW4gdGhvdWdoIHRoYXQgZGF0YSBp cyBub3QgbmVjZXNzYXJpbHkgY29udGlndW91cyB0byB0aGUgbWJ1Zg0KPiBkYXRhLg0KPiBUaGF0 IG1lbW9yeSBiZWluZyBub24gY29udGlndW91cyBpcyB0aGUgcHJvYmxlbS4gV2UgdXNlIHRoZSBo ZWFkcm9vbSB0bw0KPiBzcGVjaWZ5IHRoZSBjb21tYW5kIHNvIHRoYXQgb25lIHNpbmdsZSBidWZm ZXIgY2FuIGJlIHNlbnQgdG8gdGhlIGgvdyBmb3INCj4gcHJvY2Vzc2luZy4gSWYgdGhlcmUgaXMg YSBnYXAgb2YgMTI4IGJ5dGVzIChoZWFkcm9vbSB3aGljaCBsaWVzIGluIGJldHdlZW4NCj4gcHJp dmF0ZSBzcGFjZSAmIGRhdGEpLCBpdCB3aWxsIG5vdCB3b3JrLg0KDQpPaywgSSB1bmRlcnN0YW5k LiBUaGVuIEknZCBzYXkgdGhpcyBpcyB0aGUgb25seSB3YXkgdG8gZG8gaXQuDQoNCj4gPg0KPiA+ IFNvcnJ5IGZvciB0aGUgY29uZnVzaW9uIGFuZCB0aGlzIGxhc3QgbWludXRlIGNvbmNlcm4uDQo+ ID4NCj4gPiBUaGFua3MsDQo+ID4gUGFibG8NCj4gPg0KPiA+DQo+ID4+IFRoYW5rcywNCj4gPj4g UGFibG8NCj4gPj4NCj4gPj4NCg0K