From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) by lore.proxmox.com (Postfix) with ESMTPS id 772C81FF183 for ; Wed, 17 Dec 2025 10:36:27 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 7D2DF239C7; Wed, 17 Dec 2025 10:37:12 +0100 (CET) Date: Wed, 17 Dec 2025 10:36:34 +0100 From: Fabian =?iso-8859-1?q?Gr=FCnbichler?= To: Proxmox VE development discussion References: <20251128103639.446372-1-f.gruenbichler@proxmox.com> In-Reply-To: <20251128103639.446372-1-f.gruenbichler@proxmox.com> MIME-Version: 1.0 User-Agent: astroid/0.17.0 (https://github.com/astroidmail/astroid) Message-Id: <1765964137.srayifogt6.astroid@yuna.none> X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1765964188449 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.045 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 RCVD_IN_VALIDITY_CERTIFIED_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_RPBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_SAFE_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [qemuserver.pm, proxmox.com] Subject: Re: [pve-devel] [PATCH qemu-server] fix #6935: vmstatus: use CGroup for host memory usage X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" cGluZyAtIHdlIGdldCBzZW1pLXJlZ3VsYXIgcmVwb3J0cyBvZiBwZW9wbGUgcnVubmluZyBpbnRv IHRoaXMgc2luY2UKdXBncmFkaW5nLi4KCk9uIE5vdmVtYmVyIDI4LCAyMDI1IDExOjM2IGFtLCBG YWJpYW4gR3LDvG5iaWNobGVyIHdyb3RlOgo+IGFmdGVyIGEgY2VydGFpbiBhbW91bnQgb2YgS1NN IHNoYXJpbmcsIFBTUyBsb29rdXBzIGJlY29tZSBwcm9oaWJpdGl2ZWx5Cj4gZXhwZW5zaXZlLiBp bnN0ZWFkIG9mIHJldmVydGluZyB0byB0aGUgb2xkIGJyb2tlbiBtZXRob2QsIHNpbXBseSB1c2Ug dGhlCj4gY2dyb3VwJ3MgbWVtb3J5IHVzYWdlIGFzIGBtZW1ob3N0YCB2YWx1ZS4KPiAKPiB0aGlz IGRvZXMgbm90IGFjY291bnQgZm9yIG1lcmdlZCBwYWdlcyBiZWNhdXNlIG9mIEtTTSBhbnltb3Jl Lgo+IAo+IEkgYmVuY2htYXJrZWQgdGhpcyB3aXRoIDQgVk1zIHJ1bm5pbmcgd2l0aCBkaWZmZXJl bnQgbGV2ZWxzIG9mIEtTTSBzaGFyaW5nLiBpbgo+IHRoZSBvdXRwdXQgYmVsb3csICJtZXJnZWQg cGFnZXMiIHJlZmVycyB0byB0aGUgY29udGVudHMgb2YKPiAvcHJvYy8kcGlkL2tzbV9tZXJnaW5n X3BhZ2VzLCB0aGUgZXh0cmFjdF8qIGJlbmNobWFyayBydW5zIHJlZmVyIHRvIGZvdXIKPiBkaWZm ZXJlbnQgdmFyaWFudHMgb2YgZXh0cmFjdGluZyBtZW1vcnkgdXNhZ2UsIHdpdGggdGhlIGFjdHVh bCBleHRyYWN0aW9uIHBhcnQKPiBydW5uaW5nIDEwMDB4IGluIGEgbG9vcCBmb3IgZWFjaCBydW4g dG8gYW1vcnRpemUgcGVybC9wcm9jZXNzIHNldHVwIGNvc3RzLAo+IHFtX3N0YXR1c19zdG9jayBp cyBgcW0gc3RhdHVzICR2bWlkIC0tdmVyYm9zZWAsIGFuZCBxbV9zdGF0dXNfcGF0ZWNoZWQgaXMg YHBlcmwKPiAtSS4vc3JjL1BWRSAuL3NyYy9iaW4vcW0gc3RhdHVzICR2bWlkIC0tdmVyYm9zZWAg d2l0aCB0aGlzIHBhdGNoIGFwcGxpZWQuCj4gCj4gdGhlIHZhcmlhbnRzOgo+IC0gZXh0cmFjdF9w c3M6IHN0YXR1cyBiZWZvcmUgdGhpcyBwYXRjaCwgcXVlcnkgc21hcHNfcm9sbHVwIGZvciBlYWNo IHByb2Nlc3MKPiAgIHRoYXQgaXMgcGFydCBvZiB0aGUgcWVtdS5zbGljZSBvZiB0aGUgVk0KPiAt IGV4dHJhY3RfcnNzOiBleHRyYWN0IFZtUlNTIGZyb20gdGhlIGAvcHJvYy8kcGlkL3N0YXR1c2Ag ZmlsZSBvZiB0aGUgbWFpbgo+ICAgcHJvY2Vzcwo+IC0gZXh0cmFjdF9yc3NfY2dyb3VwOiBsaWtl IF9yc3MsIGJ1dCBmb3IgZWFjaCBwcm9jZXNzIG9mIHRoZSBzbGljZQo+IC0gZXh0cmFjdF9jZ3Jv dXA6IHVzZSBQVkU6OlFlbXVTZXJ2ZXI6OkNHcm91cCBnZXRfbWVtb3J5X3N0YXQgKHRoaXMgcGF0 Y2gpCj4gCj4gZmlyc3QsIHdpdGggbm8gS1NNIGFjdGl2ZQo+IAo+IFZNSUQ6IDExMwo+IAo+IHBz czogICAgICAgIDcyNDk3MTUyMAo+IHJzczogICAgICAgIDczMzI4MjMwNAo+IGNncm91cDogICAg IDcyNzYxNzUzNgo+IHJzc19jZ3JvdXA6IDczMzI4MjMwNAo+IAo+IEJlbmNobWFyayAxOiBleHRy YWN0X3BzcyAgICAgICAgMjcxLjIgbXMgwrEgICA2LjAgbXMgICAgW1VzZXI6IDIyNi4zIG1zLCBT eXN0ZW06IDQ0LjcgbXNdCj4gQmVuY2htYXJrIDI6IGV4dHJhY3RfcnNzICAgICAgICAyNjcuOCBt cyDCsSAgIDMuNiBtcyAgICBbVXNlcjogMjIzLjkgbXMsIFN5c3RlbTogNDMuNyBtc10KPiBCZW5j aG1hcmsgMzogZXh0cmFjdF9jZ3JvdXAgICAgIDI3My41IG1zIMKxICAgNi4yIG1zICAgIFtVc2Vy OiAyMjcuMiBtcywgU3lzdGVtOiA0Ni4yIG1zXQo+IEJlbmNobWFyayA0OiBleHRyYWN0X3Jzc19j Z3JvdXAgMjcwLjUgbXMgwrEgICAzLjcgbXMgICAgW1VzZXI6IDIyNS4wIG1zLCBTeXN0ZW06IDQ1 LjMgbXNdCj4gCj4gYm90aCByZXBvcnRlZCB1c2FnZSBhbmQgcnVudGltZSBpbiB0aGUgc2FtZSBi YWxscGFyawo+IAo+IFZNSUQ6IDgzODM4MyAod2l0aCA0OEcgb2YgbWVtb3J5KToKPiAKPiBwc3M6 ICAgICAgICA0MDU2MTU2NDY3Mgo+IHJzczogICAgICAgIDQwNTY2MTA4MTYwCj4gY2dyb3VwOiAg ICAgNDA5NjEzMzkzOTIKPiByc3MtY2dyb3VwOiA0MDU3MjE0MTU2OAo+IAo+IHVzYWdlIGluIHRo ZSBzYW1lIGJhbGxwYXJrCj4gCj4gQmVuY2htYXJrIDE6IGV4dHJhY3RfcHNzICAgICAgICA3MzIu MCBtcyDCsSAgIDQuNCBtcyAgICBbVXNlcjogMjI0LjggbXMsIFN5c3RlbTogNTA2LjggbXNdCj4g QmVuY2htYXJrIDI6IGV4dHJhY3RfcnNzICAgICAgICAyNzIuMSBtcyDCsSAgIDUuMiBtcyAgICBb VXNlcjogMjI3LjggbXMsIFN5c3RlbTogNDQuMCBtc10KPiBCZW5jaG1hcmsgMzogZXh0cmFjdF9j Z3JvdXAgICAgIDI3NC4yIG1zIMKxICAgMi4yIG1zICAgIFtVc2VyOiAyMjcuOCBtcywgU3lzdGVt OiA0Ni4yIG1zXQo+IEJlbmNobWFyayA0OiBleHRyYWN0X3Jzc19jZ3JvdXAgMjcwLjkgbXMgwrEg ICAzLjkgbXMgICAgW1VzZXI6IDIyNC45IG1zLCBTeXN0ZW06IDQ1LjggbXNdCj4gCj4gYnV0IFBT UyBhbHJlYWR5IGEgbG90IHNsb3dlci4uCj4gCj4gQmVuY2htYXJrIDE6IHFtX3N0YXR1c19zdG9j ayAgIDgyMC45IG1zIMKxICAgNy41IG1zICAgIFtVc2VyOiAyOTMuMSBtcywgU3lzdGVtOiA1MjMu MyBtc10KPiBCZW5jaG1hcmsgMjogcW1fc3RhdHVzX3BhdGNoZWQgMzU2LjIgbXMgwrEgICA1LjYg bXMgICAgW1VzZXI6IDI5MC4yIG1zLCBTeXN0ZW06IDYxLjUgbXNdCj4gCj4gd2hpY2ggaXMgYWxz byB2aXNpYmxlIGluIHRoZSBiZWZvcmUgYW5kIGFmdGVyCj4gCj4gdGhlIG90aGVyIHR3byBWTXMg YmVoYXZlZCBhcyAxMTMKPiAKPiBhbmQgbm93IHdpdGggS1NNIGFjdGl2ZQo+IAo+IFZNSUQ6IDEx Mwo+IG1lcmdlZCBwYWdlczogMTA3NDcgKHZlcnkgbGl0dGxlKQo+IAo+IHBzczogICAgICAgIDU1 OTgxNTY4MAo+IHJzczogICAgICAgIDU5NDg1Mzg4OAo+IGNncm91cDogICAgIDU2ODE5NzEyMAo+ IHJzcy1jZ3JvdXA6IDU5NDg1Mzg4OAo+IAo+IEJlbmNobWFyayAxOiBleHRyYWN0X3BzcyAgICAg ICAgMjgwLjAgbXMgwrEgICAyLjQgbXMgICAgW1VzZXI6IDIyOS41IG1zLCBTeXN0ZW06IDUwLjIg bXNdCj4gQmVuY2htYXJrIDI6IGV4dHJhY3RfcnNzICAgICAgICAyNzQuOCBtcyDCsSAgIDMuNyBt cyAgICBbVXNlcjogMjI1LjkgbXMsIFN5c3RlbTogNDguNyBtc10KPiBCZW5jaG1hcmsgMzogZXh0 cmFjdF9jZ3JvdXAgICAgIDI3OS4wIG1zIMKxICAgNC42IG1zICAgIFtVc2VyOiAyMjguMCBtcywg U3lzdGVtOiA1MC43IG1zXQo+IEJlbmNobWFyayA0OiBleHRyYWN0X3Jzc19jZ3JvdXAgMjc0Ljcg bXMgwrEgICA2LjcgbXMgICAgW1VzZXI6IDIyOC4wIG1zLCBTeXN0ZW06IDQ2LjQgbXNdCj4gCj4g c3RpbGwgc2FtZSBiYWxsIHBhcmsKPiAKPiBWTUlEOiA4MzgzODMgKHdpdGggNDhHIG9mIG1lbW9y eSkKPiBtZXJnZWQgcGFnZXM6IDY2OTY0MzQgKGEgbG90IC0gdGhpcyBpcyAyNUcgd29ydGggb2Yg cGFnZXMhKQo+IAo+IHBzczogICAgICAgIDEyNDExMTY5NzkyCj4gcnNzOiAgICAgICAgMzg3NzIx MTc1MDQKPiBjZ3JvdXA6ICAgICAxMjc5OTA2MjAxNgo+IHJzcy1jZ3JvdXA6IDM4Nzc4MTUwOTEy Cj4gCj4gUlNTIGJhc2VkIGFyZSByb3VnaGx5IHRoZSBzYW1lLCBidXQgY2dyb3VwIGdpdmVzIHVz IGFsbW9zdCB0aGUgc2FtZSBudW1iZXJzIGFzCj4gUFNTIGRlc3BpdGUgS1NNIGJlaW5nIGFjdGl2 ZSEKPiAKPiBCZW5jaG1hcmsgMTogZXh0cmFjdF9wc3MgICAgICAgIDY5MS43IG1zIMKxICAgMy40 IG1zICAgIFtVc2VyOiAyMjUuNSBtcywgU3lzdGVtOiA0NjUuOCBtc10KPiBCZW5jaG1hcmsgMjog ZXh0cmFjdF9yc3MgICAgICAgIDI3Ni4zIG1zIMKxICAgNy4xIG1zICAgIFtVc2VyOiAyMjcuNCBt cywgU3lzdGVtOiA0OC42IG1zXQo+IEJlbmNobWFyayAzOiBleHRyYWN0X2Nncm91cCAgICAgMjc3 LjggbXMgwrEgICA0LjQgbXMgICAgW1VzZXI6IDIyOC41IG1zLCBTeXN0ZW06IDQ5LjEgbXNdCj4g QmVuY2htYXJrIDQ6IGV4dHJhY3RfcnNzX2Nncm91cCAyNzQuNyBtcyDCsSAgIDMuNSBtcyAgICBb VXNlcjogMjI2LjYgbXMsIFN5c3RlbTogNDcuOCBtc10KPiAKPiBidXQgaXQgaXMgc3RpbGwgZmFz dCEKPiAKPiBCZW5jaG1hcmsgMTogcW1fc3RhdHVzX3N0b2NrICAgNzcxLjggbXMgwrEgICA3LjIg bXMgICAgW1VzZXI6IDI5Ni4wIG1zLCBTeXN0ZW06IDQ3MS4wIG1zXQo+IEJlbmNobWFyayAyOiBx bV9zdGF0dXNfcGF0Y2hlZCAzNjAuMiBtcyDCsSAgIDUuMSBtcyAgICBbVXNlcjogMjg3LjEgbXMs IFN5c3RlbTogNjguNSBtc10KPiAKPiBjb25maXJtZWQgYnkgYHFtIHN0YXR1c2AgYXMgd2VsbAo+ IAo+IFZNSUQ6IDgzODM4NAo+IG1lcmdlZCBwYWdlczogMTY1NTQwIChsaXR0bGUsIHRoaXMgaXMg YWJvdXQgNjQ1TUIgd29ydGggb2YgcGFnZXMpCj4gCj4gcHNzOiAgICAgICAgMjUyMjUyNzc0NAo+ IHJzczogICAgICAgIDI5MjcwNTg5NDQKPiBjZ3JvdXA6ICAgICAyNTAwMzI5NDcyCj4gcnNzLWNn cm91cDogMjkzMjk0NDg5Ngo+IAo+IEJlbmNobWFyayAxOiBleHRyYWN0X3BzcyAgICAgICAgMzE4 LjQgbXMgwrEgICAzLjYgbXMgICAgW1VzZXI6IDIyNy4zIG1zLCBTeXN0ZW06IDkwLjggbXNdCj4g QmVuY2htYXJrIDI6IGV4dHJhY3RfcnNzICAgICAgICAyNzMuOSBtcyDCsSAgIDUuOCBtcyAgICBb VXNlcjogMjI2LjUgbXMsIFN5c3RlbTogNDcuMiBtc10KPiBCZW5jaG1hcmsgMzogZXh0cmFjdF9j Z3JvdXAgICAgIDI3Ni4zIG1zIMKxICAgNC4xIG1zICAgIFtVc2VyOiAyMjUuNCBtcywgU3lzdGVt OiA1MC43IG1zXQo+IEJlbmNobWFyayA0OiBleHRyYWN0X3Jzc19jZ3JvdXAgMjc2LjUgbXMgwrEg ICA4LjYgbXMgICAgW1VzZXI6IDIyNi4xIG1zLCBTeXN0ZW06IDUwLjEgbXNdCj4gCj4gQmVuY2ht YXJrIDE6IHFtX3N0YXR1c19zdG9jayAgIDQwMC4yIG1zIMKxICAgNi42IG1zICAgIFtVc2VyOiAy OTIuMSBtcywgU3lzdGVtOiAxMDMuNSBtc10KPiBCZW5jaG1hcmsgMjogcW1fc3RhdHVzX3BhdGNo ZWQgMzU3LjAgbXMgwrEgICA0LjEgbXMgICAgW1VzZXI6IDI4OC43IG1zLCBTeXN0ZW06IDYzLjcg bXNdCj4gCj4gcmVzdWx0cyBtYXRjaCB0aG9zZSBvZiA4MzgzODMsIGp1c3Qgd2l0aCBsZXNzIGVm ZmVjdAo+IAo+IHRoZSBmb3VydGggVk0gbWF0Y2hlcyB0aGlzIGFzIHdlbGwuCj4gCj4gRml4ZXMv UmV2ZXJ0czogZDQyNmRlNmM3ZDgxYTRkMDQ5NTBmMmVhYTlhZmU5Njg0NWQ3M2Y3ZSAoInZtc3Rh dHVzOiBhZGQgbWVtaG9zdCBmb3IgaG9zdCB2aWV3IG9mIHZtIG1lbSBjb25zdW1wdGlvbiIpCj4g Cj4gU2lnbmVkLW9mZi1ieTogRmFiaWFuIEdyw7xuYmljaGxlciA8Zi5ncnVlbmJpY2hsZXJAcHJv eG1veC5jb20+Cj4gLS0tCj4gCj4gTm90ZXM6Cj4gICAgIGdpdmVuIHRoZSBudW1iZXJzLCBnb2lu ZyB3aXRoIHRoZSBDR3JvdXAtYmFzZWQgYXBwcm9hY2ggc2VlbXMgYmVzdCAtIGl0IGdpdmVzCj4g ICAgIHVzIGFjY3VyYXRlIG51bWJlcnMgd2l0aG91dCB0aGUgc2xvd2Rvd24sIGFuZCBnaXZlcyB1 c2VycyBhbiBpbnNpZ2h0IGludG8gaG93Cj4gICAgIEtTTSBhZmZlY3RzIHRoZWlyIGd1ZXN0cyBo b3N0IG1lbW9yeSB1c2FnZSB3aXRob3V0IGZsaXAtZmxvcHBpbmcuCj4gCj4gIHNyYy9QVkUvUWVt dVNlcnZlci5wbSB8IDM1ICsrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gIDEg ZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDMxIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYg LS1naXQgYS9zcmMvUFZFL1FlbXVTZXJ2ZXIucG0gYi9zcmMvUFZFL1FlbXVTZXJ2ZXIucG0KPiBp bmRleCBhN2ZiZWMxNC4uNjJkODM1YTUgMTAwNjQ0Cj4gLS0tIGEvc3JjL1BWRS9RZW11U2VydmVy LnBtCj4gKysrIGIvc3JjL1BWRS9RZW11U2VydmVyLnBtCj4gQEAgLTIzMjQsMzUgKzIzMjQsNiBA QCBzdWIgdnpsaXN0IHsKPiAgICAgIHJldHVybiAkdnpsaXN0Owo+ICB9Cj4gIAo+IC0jIEl0ZXJh dGUgb3ZlciBhbGwgUElEcyBpbnNpZGUgYSBWTUlEJ3MgY2dyb3VwIHNsaWNlIGFuZCBhY2N1bXVs YXRlIHRoZWlyIFBTUyAocHJvcG9ydGlvbmFsIHNldAo+IC0jIHNpemUpIHRvIGdldCBhIHJlbGF0 aXZlbHkgdGVsbGluZyBlZmZlY3RpdmUgbWVtb3J5IHVzYWdlIG9mIGFsbCBwcm9jZXNzZXMgaW52 b2x2ZWQgd2l0aCBhIFZNLgo+IC1teSBzdWIgZ2V0X3ZtaWRfdG90YWxfY2dyb3VwX21lbW9yeV91 c2FnZSB7Cj4gLSAgICBteSAoJHZtaWQpID0gQF87Cj4gLQo+IC0gICAgbXkgJG1lbW9yeV91c2Fn ZSA9IDA7Cj4gLSAgICBpZiAobXkgJHByb2NzX2ZoID0gSU86OkZpbGUtPm5ldygiL3N5cy9mcy9j Z3JvdXAvcWVtdS5zbGljZS8ke3ZtaWR9LnNjb3BlL2Nncm91cC5wcm9jcyIsICJyIikpIHsKPiAt ICAgICAgICB3aGlsZSAobXkgJHBpZCA9IDwkcHJvY3NfZmg+KSB7Cj4gLSAgICAgICAgICAgIGNo b21wKCRwaWQpOwo+IC0KPiAtICAgICAgICAgICAgb3BlbihteSAkc21hcHNfZmgsICc8JywgIi9w cm9jLyR7cGlkfS9zbWFwc19yb2xsdXAiKQo+IC0gICAgICAgICAgICAgICAgb3IgJCF7RU5PRU5U fQo+IC0gICAgICAgICAgICAgICAgb3IgZGllICJmYWlsZWQgdG8gb3BlbiBQU1MgbWVtb3J5LXN0 YXQgZnJvbSBwcm9jZXNzIC0gJCFcbiI7Cj4gLSAgICAgICAgICAgIG5leHQgaWYgIWRlZmluZWQo JHNtYXBzX2ZoKTsKPiAtCj4gLSAgICAgICAgICAgIHdoaWxlIChteSAkbGluZSA9IDwkc21hcHNf Zmg+KSB7Cj4gLSAgICAgICAgICAgICAgICBpZiAoJGxpbmUgPX4gbS9eUHNzOlxzKyhbMC05XSsp IGtCJC8pIHsKPiAtICAgICAgICAgICAgICAgICAgICAkbWVtb3J5X3VzYWdlICs9IGludCgkMSkg KiAxMDI0Owo+IC0gICAgICAgICAgICAgICAgICAgIGxhc3Q7ICMgZW5kIGlubmVyIHdoaWxlIGxv b3AsIGdvIHRvIG5leHQgJHBpZAo+IC0gICAgICAgICAgICAgICAgfQo+IC0gICAgICAgICAgICB9 Cj4gLSAgICAgICAgICAgIGNsb3NlICRzbWFwc19maDsKPiAtICAgICAgICB9Cj4gLSAgICAgICAg Y2xvc2UoJHByb2NzX2ZoKTsKPiAtICAgIH0KPiAtCj4gLSAgICByZXR1cm4gJG1lbW9yeV91c2Fn ZTsKPiAtfQo+IC0KPiAgb3VyICR2bXN0YXR1c19yZXR1cm5fcHJvcGVydGllcyA9IHsKPiAgICAg IHZtaWQgPT4gZ2V0X3N0YW5kYXJkX29wdGlvbigncHZlLXZtaWQnKSwKPiAgICAgIHN0YXR1cyA9 PiB7Cj4gQEAgLTI2MTQsOSArMjU4NSwxMSBAQCBzdWIgdm1zdGF0dXMgewo+ICAKPiAgICAgICAg ICAkZC0+e3VwdGltZX0gPSBpbnQoKCR1cHRpbWUgLSAkcHN0YXQtPntzdGFydHRpbWV9KSAvICRj cHVpbmZvLT57dXNlcl9oen0pOwo+ICAKPiAtICAgICAgICAkZC0+e21lbWhvc3R9ID0gZ2V0X3Zt aWRfdG90YWxfY2dyb3VwX21lbW9yeV91c2FnZSgkdm1pZCk7Cj4gKyAgICAgICAgbXkgJGNncm91 cCA9IFBWRTo6UWVtdVNlcnZlcjo6Q0dyb3VwLT5uZXcoJHZtaWQpOwo+ICsgICAgICAgIG15ICRj Z3JvdXBfbWVtID0gJGNncm91cC0+Z2V0X21lbW9yeV9zdGF0KCk7Cj4gKyAgICAgICAgJGQtPntt ZW1ob3N0fSA9ICRjZ3JvdXBfbWVtLT57bWVtfSAvLyAwOwo+ICAKPiAtICAgICAgICAkZC0+e21l bX0gPSAkZC0+e21lbWhvc3R9OyAjIGRlZmF1bHQgdG8gY2dyb3VwIFBTUyBzdW0sIGJhbGxvb24g aW5mbyBjYW4gb3ZlcnJpZGUgdGhpcyBiZWxvdwo+ICsgICAgICAgICRkLT57bWVtfSA9ICRkLT57 bWVtaG9zdH07ICMgZGVmYXVsdCB0byBjZ3JvdXAsIGJhbGxvb24gaW5mbyBjYW4gb3ZlcnJpZGUg dGhpcyBiZWxvdwo+ICAKPiAgICAgICAgICBteSAkcHJlc3N1cmVzID0gUFZFOjpQcm9jRlNUb29s czo6cmVhZF9jZ3JvdXBfcHJlc3N1cmUoInFlbXUuc2xpY2UvJHt2bWlkfS5zY29wZSIpOwo+ICAg ICAgICAgICRkLT57cHJlc3N1cmVjcHVzb21lfSA9ICRwcmVzc3VyZXMtPntjcHV9LT57c29tZX0t PnthdmcxMH0gKiAxOwo+IC0tIAo+IDIuNDcuMwo+IAo+IAo+IAo+IF9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gcHZlLWRldmVsIG1haWxpbmcgbGlzdAo+ IHB2ZS1kZXZlbEBsaXN0cy5wcm94bW94LmNvbQo+IGh0dHBzOi8vbGlzdHMucHJveG1veC5jb20v Y2dpLWJpbi9tYWlsbWFuL2xpc3RpbmZvL3B2ZS1kZXZlbAo+IAoKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCnB2ZS1kZXZlbCBtYWlsaW5nIGxpc3QKcHZl LWRldmVsQGxpc3RzLnByb3htb3guY29tCmh0dHBzOi8vbGlzdHMucHJveG1veC5jb20vY2dpLWJp bi9tYWlsbWFuL2xpc3RpbmZvL3B2ZS1kZXZlbAo=