From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id C1F4B1FF38C for ; Thu, 2 May 2024 14:23:13 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id A0C571593B; Thu, 2 May 2024 14:23:13 +0200 (CEST) Message-ID: <61aae3bc-fe47-4e5b-a411-9c5e08fec901@proxmox.com> Date: Thu, 2 May 2024 14:22:39 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Beta To: Proxmox Backup Server development discussion , Dominik Csapak References: <20240430093939.1318786-1-d.csapak@proxmox.com> Content-Language: en-GB From: Thomas Lamprecht In-Reply-To: <20240430093939.1318786-1-d.csapak@proxmox.com> X-SPAM-LEVEL: Spam detection results: 0 AWL -0.053 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: Re: [pbs-devel] [PATCH proxmox-backup 1/2] datastore: add tuning options for the number of reading threads X-BeenThere: pbs-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox Backup Server development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox Backup Server development discussion Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: pbs-devel-bounces@lists.proxmox.com Sender: "pbs-devel" c3ViamVjdCBzaG91bGQgaGF2ZSBzL3JlYWRpbmcvdmVyaWZpY2F0aW9uIHJlYWQvIGFuZCBpdCdz IG9uZSBvcHRpb24Kc28gc2luZ3VsYXIgcGxlYXNlLgoKT24gMzAvMDQvMjAyNCAxMTozOSwgRG9t aW5payBDc2FwYWsgd3JvdGU6Cj4gYWRkcyBhIG5ldyAncmVhZC10aHJlYWRzJyB0dW5pbmcgb3B0 aW9ucyB0byBkYXRhc3RvcmVzIHRoYXQgY29udHJvbAo+IGhvdyBtYW55IHRocmVhZHMgYXJlIHVz ZWQgZm9yIHZlcmlmaWNhdGlvbiBvcGVyYXRpb25zCj4gCj4gZGVwZW5kaW5nIG9uIHRoZSB1bmRl cmx5aW5nIHN0b3JhZ2UgYW5kIHRoZSB1c2VkIGNwdSwgdGhpcyBjYW4gbWFrZSBhCj4gYmlnIGRp ZmZlcmVuY2UgaW4gdmVyaWZpY2F0aW9uIHRpbWUuCgpOb3QgdGhhdCBJIGRvbid0IGJlbGlldmUg eW91LCBidXQgYWN0dWFsIG51bWJlcnMgd291bGQgYmUgbmljZSB0byBoYXZlCmhlcmUgOy0pCgo+ IAo+IHRoZSBkZWZhdWx0IHJlbWFpbnMgYXQgdGhlIGN1cnJlbnQgNCB0aHJlYWRzLgo+IAo+IFNp Z25lZC1vZmYtYnk6IERvbWluaWsgQ3NhcGFrIDxkLmNzYXBha0Bwcm94bW94LmNvbT4KPiAtLS0K PiAgcGJzLWFwaS10eXBlcy9zcmMvZGF0YXN0b3JlLnJzIHwgIDkgKysrKysrKysrCj4gIHBicy1k YXRhc3RvcmUvc3JjL2RhdGFzdG9yZS5ycyB8IDE0ICsrKysrKysrKysrKysrCj4gIHNyYy9iYWNr dXAvdmVyaWZ5LnJzICAgICAgICAgICB8ICAyICstCj4gIHd3dy9VdGlscy5qcyAgICAgICAgICAg ICAgICAgICB8ICA1ICsrKysrCj4gIHd3dy9kYXRhc3RvcmUvT3B0aW9uVmlldy5qcyAgICB8ICA4 ICsrKysrKysrCj4gIDUgZmlsZXMgY2hhbmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlv bigtKQo+IAo+IGRpZmYgLS1naXQgYS9wYnMtYXBpLXR5cGVzL3NyYy9kYXRhc3RvcmUucnMgYi9w YnMtYXBpLXR5cGVzL3NyYy9kYXRhc3RvcmUucnMKPiBpbmRleCAzMTc2NzQxN2EuLjJhZDJhZTA2 MyAxMDA2NDQKPiAtLS0gYS9wYnMtYXBpLXR5cGVzL3NyYy9kYXRhc3RvcmUucnMKPiArKysgYi9w YnMtYXBpLXR5cGVzL3NyYy9kYXRhc3RvcmUucnMKPiBAQCAtMjA5LDYgKzIwOSwxMyBAQCBwdWIg ZW51bSBEYXRhc3RvcmVGU3luY0xldmVsIHsKPiAgICAgICAgICAgICAgdHlwZTogQ2h1bmtPcmRl ciwKPiAgICAgICAgICAgICAgb3B0aW9uYWw6IHRydWUsCj4gICAgICAgICAgfSwKPiArICAgICAg ICAicmVhZC10aHJlYWRzIjogewoKdGhlIG5hbWUgaXMgY29uZnVzaW5nIGZvciB1c2VycyByZWFk aW5nIGNvbmZpZ3MgYW5kIGRldnMgcmVhZGluZyB0aGUgY29kZQp1c2luZyB0aGlzLCBhcyBvbmUg d291bGQgZXhwZWN0IHRoYXQgdGhpcyBpcyBmb3IgYWxsIHJlYWQgb3BlcmF0aW9ucywgZS5nLiwK YmFja3VwIHJlc3RvcmUgb3IgZXZlbiBHQy4gQSBBUEkgZGVzY3JpcHRpb24gY2FuIGJlIGdyZWF0 IHRvIGNsZWFyIHVwIHN1YnRsZQp0aGluZ3MsIGJ1dCBpdCBzaG91bGQgbm90IGJlIHJlcXVpcmVk IHRvIGdldCB0aGUgdmVyeSBiYXNpYyB1bmRlcnN0YW5kaW5nCm9uIHdoYXQgdGhpcyBpcyB1c2Vk IGZvci4KCkknZCByYXRoZXIgaGF2ZSB0d28gZGlmZmVyZW50IHNldHRpbmdzIGZvciB0aGlzIGFu ZCB0aGUgdGFwZSBvbmUsIGUuZy4KYHZlcmlmaWNhdGlvbi1yZWFkLXRocmVhZHNgIGFuZCBgdGFw ZS1iYWNrdXAtcmVhZC10aHJlYWRzYAoKV2hhdCBJJ2QgZXZlbiBwcmVmZXIgbW9yZSBpcyBub3Qg aGF2aW5nIHRoaXMgYXQgYWxsLCBidXQgcmF0aGVyIGF1dG8tZGV0ZXJtaW5lCml0IGZyb20gdGhl IGFtb3VudCBvZiBjb3JlcyBhbmQgdGhlIGRpc2sgdHlwZXMgKGFuZCBwb3NzaWJseSBpdHMgYnVz KSwgZS5nLjoKCi0gaWYgaGRkICgvc3lzL2Jsb2NrL3NkYS9xdWV1ZS9yb3RhdGlvbmFsIGlzIDEp IHRoZW4gYWx3YXlzIHVzZSBvbmUgdGhyZWFkCi0gaWYgc2RkIHRoZW4gZGVwZW5kaW5nIG9uIHRo cmVhZCBjb3VudCB1c2UgMiB0byA0IOKAkyBmb3IgZXhhbXBsZSwgYXMgcHNldWRvCiAgY29kZSBj YWxjdWxhdGUgaXQgdGhyb3VnaCAjdGhyZWFkcy80Lm1heCg0KS5taW4oMSkKCkNvdWxkIGJlIGV2 ZW4gYmV0dGVyIHRvIGhhdmUgYSBwb29sIHBlciBiYWNraW5nIHN0b3JhZ2UgdG8gcmVzZXJ2ZSB0 aHJlYWRzCmZyb20sIHdoaWNoIGlzIG5hdHVyYWxseSBtb3JlIGNvbXBsZXggYnV0IHRoZSBkZWZh dWx0IGJlaGF2aW91ciBzaG91bGQKaWRlYWxseSBiZSBPSyBmb3IgbW9zdCB1c2Vycywgc28gSU1P IGF0IGxlYXN0IHdvcnRoIGEgZ29vZCBhbW91bnQgb2YKY29uc2lkZXJhdGlvbiBpbiBob3cgdG8g bWFrZXMgdGhpcyBzbWFydGVyIHBlciBkZWZhdWx0IOKAkyBJIGNvdWxkIGltYWdpbmUKdGhhdCBv bmUgbWlnaHQgZXZlbiBnZXQgc29tZSBoaW50cyBmcm9tIHRoZSBrZXJuZWwgKElPKSBzY2hlZHVs ZXIuCgo+ICsgICAgICAgICAgICBkZXNjcmlwdGlvbjogIkNvbnRyb2xzIGhvdyBtYW55IHRocmVh ZHMgYXJlIHVzZWQgZm9yIHJlYWRpbmcgZnJvbSB0aGUgZGF0YXN0b3JlIGZvciB2ZXJpZmljYXRp b24uIiwKPiArICAgICAgICAgICAgdHlwZTogdXNpemUsCj4gKyAgICAgICAgICAgIG9wdGlvbmFs OiB0cnVlLAo+ICsgICAgICAgICAgICBtaW5pbXVtOiAxLAo+ICsgICAgICAgICAgICBkZWZhdWx0 OiA0LAo+ICsgICAgICAgIH0sCj4gICAgICB9LAo+ICApXQo+ICAjW2Rlcml2ZShTZXJpYWxpemUs IERlc2VyaWFsaXplLCBEZWZhdWx0KV0KPiBAQCAtMjIwLDYgKzIyNyw4IEBAIHB1YiBzdHJ1Y3Qg RGF0YXN0b3JlVHVuaW5nIHsKPiAgICAgIHB1YiBjaHVua19vcmRlcjogT3B0aW9uPENodW5rT3Jk ZXI+LAo+ICAgICAgI1tzZXJkZShza2lwX3NlcmlhbGl6aW5nX2lmID0gIk9wdGlvbjo6aXNfbm9u ZSIpXQo+ICAgICAgcHViIHN5bmNfbGV2ZWw6IE9wdGlvbjxEYXRhc3RvcmVGU3luY0xldmVsPiwK PiArICAgICNbc2VyZGUoc2tpcF9zZXJpYWxpemluZ19pZiA9ICJPcHRpb246OmlzX25vbmUiKV0K PiArICAgIHB1YiByZWFkX3RocmVhZHM6IE9wdGlvbjx1c2l6ZT4sCj4gIH0KPiAgCj4gIHB1YiBj b25zdCBEQVRBU1RPUkVfVFVOSU5HX1NUUklOR19TQ0hFTUE6IFNjaGVtYSA9IFN0cmluZ1NjaGVt YTo6bmV3KCJEYXRhc3RvcmUgdHVuaW5nIG9wdGlvbnMiKQo+IGRpZmYgLS1naXQgYS9wYnMtZGF0 YXN0b3JlL3NyYy9kYXRhc3RvcmUucnMgYi9wYnMtZGF0YXN0b3JlL3NyYy9kYXRhc3RvcmUucnMK PiBpbmRleCBmOTVkYTc2MTUuLjJjMjNiZDFmMSAxMDA2NDQKPiAtLS0gYS9wYnMtZGF0YXN0b3Jl L3NyYy9kYXRhc3RvcmUucnMKPiArKysgYi9wYnMtZGF0YXN0b3JlL3NyYy9kYXRhc3RvcmUucnMK PiBAQCAtMTQsNiArMTQsNyBAQCB1c2UgcHJveG1veF9zY2hlbWE6OkFwaVR5cGU7Cj4gIHVzZSBw cm94bW94X3N5czo6ZXJyb3I6OlN5c0Vycm9yOwo+ICB1c2UgcHJveG1veF9zeXM6OmZzOjp7Zmls ZV9yZWFkX29wdGlvbmFsX3N0cmluZywgcmVwbGFjZV9maWxlLCBDcmVhdGVPcHRpb25zfTsKPiAg dXNlIHByb3htb3hfc3lzOjpmczo6e2xvY2tfZGlyX25vYmxvY2ssIERpckxvY2tHdWFyZH07Cj4g K3VzZSBwcm94bW94X3N5czo6bGludXg6OnByb2Nmczo6cmVhZF9wcm9jX3N0YXQ7Cj4gIHVzZSBw cm94bW94X3N5czo6cHJvY2Vzc19sb2NrZXI6OlByb2Nlc3NMb2NrU2hhcmVkR3VhcmQ7Cj4gIHVz ZSBwcm94bW94X3N5czo6V29ya2VyVGFza0NvbnRleHQ7Cj4gIHVzZSBwcm94bW94X3N5czo6e3Rh c2tfbG9nLCB0YXNrX3dhcm59Owo+IEBAIC02MSw2ICs2Miw3IEBAIHB1YiBzdHJ1Y3QgRGF0YVN0 b3JlSW1wbCB7Cj4gICAgICBjaHVua19vcmRlcjogQ2h1bmtPcmRlciwKPiAgICAgIGxhc3RfZGln ZXN0OiBPcHRpb248W3U4OyAzMl0+LAo+ICAgICAgc3luY19sZXZlbDogRGF0YXN0b3JlRlN5bmNM ZXZlbCwKPiArICAgIHJlYWRfdGhyZWFkczogdXNpemUsCgppZiB3ZSByZWFsbHkgYWRkIHRoaXMg SSdkIGRvIHNvIHRocm91Z2ggYSBzdHJ1Y3QgdGhhdCBpbXBscyBkZWZhdWx0IGFuZCBhZGRlZAph cyBzb21ldGhpbmcgJ3RocmVhZF9saW1pdHMnIGhlcmUsIGhhdmluZyBhIGB2ZXJpZmljYXRpb25g LCBgdGFwZV9yZWFkYCwgLi4uCm1lbWJlcnMuCgo+ICB9Cj4gIAo+ICBpbXBsIERhdGFTdG9yZUlt cGwgewo+IEBAIC03NSw2ICs3Nyw3IEBAIGltcGwgRGF0YVN0b3JlSW1wbCB7Cj4gICAgICAgICAg ICAgIGNodW5rX29yZGVyOiBEZWZhdWx0OjpkZWZhdWx0KCksCj4gICAgICAgICAgICAgIGxhc3Rf ZGlnZXN0OiBOb25lLAo+ICAgICAgICAgICAgICBzeW5jX2xldmVsOiBEZWZhdWx0OjpkZWZhdWx0 KCksCj4gKyAgICAgICAgICAgIHJlYWRfdGhyZWFkczogMCwKPiAgICAgICAgICB9KQo+ICAgICAg fQo+ICB9Cj4gQEAgLTMxMyw2ICszMTYsNyBAQCBpbXBsIERhdGFTdG9yZSB7Cj4gICAgICAgICAg ICAgIGNodW5rX29yZGVyOiB0dW5pbmcuY2h1bmtfb3JkZXIudW53cmFwX29yX2RlZmF1bHQoKSwK PiAgICAgICAgICAgICAgbGFzdF9kaWdlc3QsCj4gICAgICAgICAgICAgIHN5bmNfbGV2ZWw6IHR1 bmluZy5zeW5jX2xldmVsLnVud3JhcF9vcl9kZWZhdWx0KCksCj4gKyAgICAgICAgICAgIHJlYWRf dGhyZWFkczogdHVuaW5nLnJlYWRfdGhyZWFkcy51bndyYXBfb3IoNCksCj4gICAgICAgICAgfSkK PiAgICAgIH0KPiAgCj4gQEAgLTEzNzcsNiArMTM4MSwxNiBAQCBpbXBsIERhdGFTdG9yZSB7Cj4g ICAgICAgICAgT2soKCkpCj4gICAgICB9Cj4gIAo+ICsgICAgLy8vIHJldHVybnMgdGhlIG51bWJl ciBvZiByZWFkIHRocmVhZCB0aGF0IHNob3VsZCBiZSB1c2VkIGZvciBvcGVyYXRpb25zCj4gKyAg ICAvLy8gbGltaXRzIHRvIHRoZSBudW1iZXIgb2YgYXZhaWxhYmxlIGNvcmVzIChpZiByZWFkaW5n IGZyb20gL3Byb2Mvc3RhdCBzdWNjZWVkcykKPiArICAgIHB1YiBmbiBnZXRfcmVhZF90aHJlYWRz KCZzZWxmKSAtPiB1c2l6ZSB7Cj4gKyAgICAgICAgLy8gaWYgd2UgY2Fubm90IGdldCB0aGUgcmVh bCBjcHUgY291bnQsIGRvbid0IGxpbWl0IHVzCj4gKyAgICAgICAgbGV0IGNvcmVfY291bnQgPSBy ZWFkX3Byb2Nfc3RhdCgpCj4gKyAgICAgICAgICAgIC5tYXAofHByb2N8IHByb2MuY3B1X2NvdW50 IGFzIHVzaXplKQo+ICsgICAgICAgICAgICAudW53cmFwX29yKHVzaXplOjptYXhfdmFsdWUoKSk7 Cj4gKyAgICAgICAgc2VsZi5pbm5lci5yZWFkX3RocmVhZHMuY2xhbXAoMSwgY29yZV9jb3VudCkK PiArICAgIH0KPiArCj4gICAgICAvLy8gRGVzdHJveSBhIGRhdGFzdG9yZS4gVGhpcyByZXF1aXJl cyB0aGF0IHRoZXJlIGFyZSBubyBhY3RpdmUgb3BlcmF0aW9ucyBvbiB0aGUgZGF0YXN0b3JlLgo+ ICAgICAgLy8vCj4gICAgICAvLy8gVGhpcyBpcyBhIHN5bmNocm9ub3VzIG9wZXJhdGlvbiBhbmQg c2hvdWxkIGJlIHJ1biBpbiBhIHdvcmtlci10aHJlYWQuCj4gZGlmZiAtLWdpdCBhL3NyYy9iYWNr dXAvdmVyaWZ5LnJzIGIvc3JjL2JhY2t1cC92ZXJpZnkucnMKPiBpbmRleCBjOTcyZTUzMjguLjQ1 MzdkYmRjOSAxMDA2NDQKPiAtLS0gYS9zcmMvYmFja3VwL3ZlcmlmeS5ycwo+ICsrKyBiL3NyYy9i YWNrdXAvdmVyaWZ5LnJzCj4gQEAgLTEyNSw3ICsxMjUsNyBAQCBmbiB2ZXJpZnlfaW5kZXhfY2h1 bmtzKAo+ICAKPiAgICAgIGxldCBkZWNvZGVyX3Bvb2wgPSBQYXJhbGxlbEhhbmRsZXI6Om5ldygK PiAgICAgICAgICAidmVyaWZ5IGNodW5rIGRlY29kZXIiLAo+IC0gICAgICAgIDQsCj4gKyAgICAg ICAgZGF0YXN0b3JlMi5nZXRfcmVhZF90aHJlYWRzKCksCj4gICAgICAgICAgbW92ZSB8KGNodW5r LCBkaWdlc3QsIHNpemUpOiAoRGF0YUJsb2IsIFt1ODsgMzJdLCB1NjQpfCB7Cj4gICAgICAgICAg ICAgIGxldCBjaHVua19jcnlwdF9tb2RlID0gbWF0Y2ggY2h1bmsuY3J5cHRfbW9kZSgpIHsKPiAg ICAgICAgICAgICAgICAgIEVycihlcnIpID0+IHsKPiBkaWZmIC0tZ2l0IGEvd3d3L1V0aWxzLmpz IGIvd3d3L1V0aWxzLmpzCj4gaW5kZXggMWQ3MzUxYTMyLi44ZmQxMDI0ODYgMTAwNjQ0Cj4gLS0t IGEvd3d3L1V0aWxzLmpzCj4gKysrIGIvd3d3L1V0aWxzLmpzCj4gQEAgLTc5MCw2ICs3OTAsMTEg QEAgRXh0LmRlZmluZSgnUEJTLlV0aWxzJywgewo+ICAJc3luYyA9IFBCUy5VdGlscy50dW5pbmdP cHRpb25zWydzeW5jLWxldmVsJ11bc3luYyA/PyAnX19kZWZhdWx0X18nXTsKPiAgCW9wdGlvbnMu cHVzaChgJHtnZXR0ZXh0KCdTeW5jIExldmVsJyl9OiAke3N5bmN9YCk7Cj4gIAo+ICsJbGV0IHJl YWRUaHJlYWRzID0gdHVuaW5nWydyZWFkLXRocmVhZHMnXTsKPiArCWRlbGV0ZSB0dW5pbmdbJ3Jl YWQtdGhyZWFkcyddOwo+ICsJcmVhZFRocmVhZHMgPz89IFByb3htb3guVXRpbHMuZGVmYXVsdFRl eHQgKyBgICg0KWA7Cj4gKwlvcHRpb25zLnB1c2goYCR7Z2V0dGV4dCgnUmVhZCBUaHJlYWRzJyl9 OiAke3JlYWRUaHJlYWRzfWApOwo+ICsKPiAgCWZvciAoY29uc3QgW2ssIHZdIG9mIE9iamVjdC5l bnRyaWVzKHR1bmluZykpIHsKPiAgCSAgICBvcHRpb25zLnB1c2goYCR7a306ICR7dn1gKTsKPiAg CX0KPiBkaWZmIC0tZ2l0IGEvd3d3L2RhdGFzdG9yZS9PcHRpb25WaWV3LmpzIGIvd3d3L2RhdGFz dG9yZS9PcHRpb25WaWV3LmpzCj4gaW5kZXggZTFmMzhhZjZmLi5lZTkwZjFkY2EgMTAwNjQ0Cj4g LS0tIGEvd3d3L2RhdGFzdG9yZS9PcHRpb25WaWV3LmpzCj4gKysrIGIvd3d3L2RhdGFzdG9yZS9P cHRpb25WaWV3LmpzCj4gQEAgLTI3MSw2ICsyNzEsMTQgQEAgRXh0LmRlZmluZSgnUEJTLkRhdGFz dG9yZS5PcHRpb25zJywgewo+ICAJCQkgICAgZGVsZXRlRW1wdHk6IHRydWUsCj4gIAkJCSAgICB2 YWx1ZTogJ19fZGVmYXVsdF9fJywKPiAgCQkJfSwKPiArCQkJewo+ICsJCQkgICAgeHR5cGU6ICdw cm94bW94aW50ZWdlcmZpZWxkJywKPiArCQkJICAgIG5hbWU6ICdyZWFkLXRocmVhZHMnLAo+ICsJ CQkgICAgZmllbGRMYWJlbDogZ2V0dGV4dCgnUmVhZCBUaHJlYWRzJyksCgp3aXRob3V0IGFueSBo aW50IG9yIHRvb2x0aXAgdGhpcyBpcyBqdXN0IGEgY29tcGxldGVseSBjb25mdXNpbmdseQpvcHRp b24uLiBJZiBpdCB3b3VsZCBiZSBzcGVjaWFsaXplZCBmb3IgdGhlIGFjdHVhbCBkaWZmZXJlbnQK b3BlcmF0aW9ucyAobm93IGFuZCBmdXR1cmUgb25lKQoKPiArCQkJICAgIG1pbjogMCwKPiArCQkJ ICAgIGVtcHR5VGV4dDogJzQnLAo+ICsJCQkgICAgZGVsZXRlRW1wdHk6IHRydWUsCj4gKwkJCX0s Cj4gIAkJICAgIF0sCj4gIAkJfSwKPiAgCSAgICB9LAoKCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpwYnMtZGV2ZWwgbWFpbGluZyBsaXN0CnBicy1kZXZl bEBsaXN0cy5wcm94bW94LmNvbQpodHRwczovL2xpc3RzLnByb3htb3guY29tL2NnaS1iaW4vbWFp bG1hbi9saXN0aW5mby9wYnMtZGV2ZWwK