From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <pve-devel-bounces@lists.proxmox.com>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9])
	by lore.proxmox.com (Postfix) with ESMTPS id AEFD31FF165
	for <inbox@lore.proxmox.com>; Thu,  8 May 2025 11:14:31 +0200 (CEST)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id E1424B3A6;
	Thu,  8 May 2025 11:14:46 +0200 (CEST)
Date: Thu, 08 May 2025 11:14:38 +0200
From: Fabian =?iso-8859-1?q?Gr=FCnbichler?= <f.gruenbichler@proxmox.com>
To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>
References: <20250506090926.71508-1-l.leahu-vladucu@proxmox.com>
In-Reply-To: <20250506090926.71508-1-l.leahu-vladucu@proxmox.com>
MIME-Version: 1.0
User-Agent: astroid/0.16.0 (https://github.com/astroidmail/astroid)
Message-Id: <1746694526.an3gyo9wbw.astroid@yuna.none>
X-SPAM-LEVEL: Spam detection results:  0
 AWL 0.044 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
Subject: Re: [pve-devel] [PATCH proxmox-offline-mirror] Add possibility to
 create named snapshots
X-BeenThere: pve-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Proxmox VE development discussion <pve-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pve-devel/>
List-Post: <mailto:pve-devel@lists.proxmox.com>
List-Help: <mailto:pve-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=subscribe>
Reply-To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: pve-devel-bounces@lists.proxmox.com
Sender: "pve-devel" <pve-devel-bounces@lists.proxmox.com>

T24gTWF5IDYsIDIwMjUgMTE6MDkgYW0sIExhdXJlbsibaXUgTGVhaHUtVmzEg2R1Y3Ugd3JvdGU6
Cj4gSW4gYWRkaXRpb24gdG8gdGhlIGV4aXN0aW5nIHRpbWVkIHNuYXBzaG90cywgaXQgaXMgbm93
IHBvc3NpYmxlIHRvCj4gY3JlYXRlIG5hbWVkIHNuYXBzaG90cy4gRm9yIHNvbWUgdXNlIGNhc2Vz
LCBpdCBtYWtlcyBzZW5zZSB0byBnaXZlCj4gc25hcHNob3RzIGEgc3BlY2lmaWMgbmFtZSwgZS5n
LiB0byBzcGVjaWZ5IHRoZSBwdXJwb3NlIG9mIHRoZSBzbmFwc2hvdAo+IChpbnN0ZWFkIG9mIGEg
dGltZXN0YW1wKS4gVGhpcyBjYW4gYmUgdXNlZnVsIHdoZW4gZGVwbG95aW5nIHNuYXBzaG90cwo+
IGNyZWF0ZWQgZm9yIGEgY2VydGFpbiBwdXJwb3NlIChmb3IgZXhhbXBsZSwgZnVydGhlciB0ZXN0
aW5nKS4KPiAKPiBQYXJ0aWFsbHkgZml4ZXMgIzYyNTIKPiAKPiBTaWduZWQtb2ZmLWJ5OiBMYXVy
ZW7Im2l1IExlYWh1LVZsxINkdWN1IDxsLmxlYWh1LXZsYWR1Y3VAcHJveG1veC5jb20+Cj4gLS0t
Cj4gIHNyYy9iaW4vcHJveG1veC1vZmZsaW5lLW1pcnJvci1oZWxwZXIucnMgICAgICB8ICA2ICst
Cj4gIHNyYy9iaW4vcHJveG1veF9vZmZsaW5lX21pcnJvcl9jbWRzL21pcnJvci5ycyB8IDMyICsr
KysrKysrLS0tCj4gIHNyYy9tZWRpdW0ucnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8ICA0ICstCj4gIHNyYy9taXJyb3IucnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB8IDU2ICsrKysrKysrKysrKysrKy0tLS0KPiAgc3JjL3R5cGVzLnJzICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgNTIgKysrKysrKysrKysrKy0tLS0KPiAgNSBmaWxlcyBjaGFu
Z2VkLCAxMTcgaW5zZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBh
L3NyYy9iaW4vcHJveG1veC1vZmZsaW5lLW1pcnJvci1oZWxwZXIucnMgYi9zcmMvYmluL3Byb3ht
b3gtb2ZmbGluZS1taXJyb3ItaGVscGVyLnJzCj4gaW5kZXggNzkxMWQ1Mi4uYTAwZDI2ZCAxMDA2
NDQKPiAtLS0gYS9zcmMvYmluL3Byb3htb3gtb2ZmbGluZS1taXJyb3ItaGVscGVyLnJzCj4gKysr
IGIvc3JjL2Jpbi9wcm94bW94LW9mZmxpbmUtbWlycm9yLWhlbHBlci5ycwo+IEBAIC0xNTEsOCAr
MTUxLDggQEAgYXN5bmMgZm4gc2V0dXAoX3BhcmFtOiBWYWx1ZSkgLT4gUmVzdWx0PCgpLCBFcnJv
cj4gewo+ICAgICAgICAgICAgICAgICAgbGV0IHNlbGVjdGVkX21pcnJvciA9IHJlYWRfc2VsZWN0
aW9uX2Zyb21fdHR5KCJTZWxlY3QgbWlycm9yIiwgJm1pcnJvcnMsIE5vbmUpPzsKPiAgICAgICAg
ICAgICAgICAgIGxldCBzbmFwc2hvdHM6IFZlYzwoU25hcHNob3QsIFN0cmluZyk+ID0KPiAgICAg
ICAgICAgICAgICAgICAgICBtZWRpdW06Omxpc3Rfc25hcHNob3RzKG1vdW50cG9pbnQsIHNlbGVj
dGVkX21pcnJvcik/Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgIC5pbnRvX2l0ZXIoKQo+IC0g
ICAgICAgICAgICAgICAgICAgICAgICAubWFwKHxzfCAocywgcy50b19zdHJpbmcoKSkpCj4gKyAg
ICAgICAgICAgICAgICAgICAgICAgIC5pdGVyKCkKPiArICAgICAgICAgICAgICAgICAgICAgICAg
Lm1hcCh8c3wgKHMuY2xvbmUoKSwgcy50b19zdHJpbmcoKSkpCgpkb2Vzbid0IGh1cnQgdG9vIG11
Y2gsIGJ1dCBjb3VsZCBzdGlsbCBiZSBhdm9pZGVkIGJ5IGRvaW5nIHRvX3N0cmluZygpCmZpcnN0
Li4KCj4gICAgICAgICAgICAgICAgICAgICAgICAgIC5jb2xsZWN0KCk7Cj4gICAgICAgICAgICAg
ICAgICBpZiBzbmFwc2hvdHMuaXNfZW1wdHkoKSB7Cj4gICAgICAgICAgICAgICAgICAgICAgcHJp
bnRsbiEoIk1pcnJvciBkb2Vzbid0IGhhdmUgYW55IHN5bmNlZCBzbmFwc2hvdHMuIik7Cj4gQEAg
LTE3Myw3ICsxNzMsNyBAQCBhc3luYyBmbiBzZXR1cChfcGFyYW06IFZhbHVlKSAtPiBSZXN1bHQ8
KCksIEVycm9yPiB7Cj4gICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRfbWlycm9yLnRvX3N0
cmluZygpLAo+ICAgICAgICAgICAgICAgICAgICAgICgKPiAgICAgICAgICAgICAgICAgICAgICAg
ICAgc3RhdGUubWlycm9ycy5nZXQoKnNlbGVjdGVkX21pcnJvcikudW53cmFwKCksCj4gLSAgICAg
ICAgICAgICAgICAgICAgICAgICoqc2VsZWN0ZWRfc25hcHNob3QsCj4gKyAgICAgICAgICAgICAg
ICAgICAgICAgICgqKnNlbGVjdGVkX3NuYXBzaG90KS5jbG9uZSgpLAo+ICAgICAgICAgICAgICAg
ICAgICAgICksCj4gICAgICAgICAgICAgICAgICApOwo+ICAgICAgICAgICAgICB9Cj4gZGlmZiAt
LWdpdCBhL3NyYy9iaW4vcHJveG1veF9vZmZsaW5lX21pcnJvcl9jbWRzL21pcnJvci5ycyBiL3Ny
Yy9iaW4vcHJveG1veF9vZmZsaW5lX21pcnJvcl9jbWRzL21pcnJvci5ycwo+IGluZGV4IDMxYTU2
NWUuLjdlYmEwNGQgMTAwNjQ0Cj4gLS0tIGEvc3JjL2Jpbi9wcm94bW94X29mZmxpbmVfbWlycm9y
X2NtZHMvbWlycm9yLnJzCj4gKysrIGIvc3JjL2Jpbi9wcm94bW94X29mZmxpbmVfbWlycm9yX2Nt
ZHMvbWlycm9yLnJzCj4gQEAgLTE3LDcgKzE3LDcgQEAgdXNlIHByb3htb3hfc2NoZW1hOjphcGk7
Cj4gIHVzZSBwcm94bW94X29mZmxpbmVfbWlycm9yOjp7Cj4gICAgICBjb25maWc6OntNaXJyb3JD
b25maWcsIFN1YnNjcmlwdGlvbktleX0sCj4gICAgICBtaXJyb3IsCj4gLSAgICB0eXBlczo6e01J
UlJPUl9JRF9TQ0hFTUEsIFNuYXBzaG90fSwKPiArICAgIHR5cGVzOjp7TUlSUk9SX0lEX1NDSEVN
QSwgTkFNRURfU05BUFNIT1RfU0NIRU1BLCBTbmFwc2hvdH0sCj4gIH07Cj4gIAo+ICB1c2Ugc3Vw
ZXI6OmdldF9jb25maWdfcGF0aDsKPiBAQCAtNjAsNiArNjAsMTAgQEAgZm4gZ2V0X3N1YnNjcmlw
dGlvbl9rZXkoCj4gICAgICAgICAgICAgIGlkOiB7Cj4gICAgICAgICAgICAgICAgICBzY2hlbWE6
IE1JUlJPUl9JRF9TQ0hFTUEsCj4gICAgICAgICAgICAgIH0sCj4gKyAgICAgICAgICAgIG5hbWU6
IHsKPiArICAgICAgICAgICAgICAgIHNjaGVtYTogTkFNRURfU05BUFNIT1RfU0NIRU1BLAo+ICsg
ICAgICAgICAgICAgICAgb3B0aW9uYWw6IHRydWUsCj4gKyAgICAgICAgICAgIH0sCj4gICAgICAg
ICAgICAgICJkcnktcnVuIjogewo+ICAgICAgICAgICAgICAgICAgdHlwZTogYm9vbCwKPiAgICAg
ICAgICAgICAgICAgIG9wdGlvbmFsOiB0cnVlLAo+IEBAIC03Myw2ICs3Nyw3IEBAIGZuIGdldF9z
dWJzY3JpcHRpb25fa2V5KAo+ICBhc3luYyBmbiBjcmVhdGVfc25hcHNob3QoCj4gICAgICBjb25m
aWc6IE9wdGlvbjxTdHJpbmc+LAo+ICAgICAgaWQ6IFN0cmluZywKPiArICAgIG5hbWU6IE9wdGlv
bjxTdHJpbmc+LAo+ICAgICAgZHJ5X3J1bjogYm9vbCwKPiAgICAgIF9wYXJhbTogVmFsdWUsCj4g
ICkgLT4gUmVzdWx0PCgpLCBFcnJvcj4gewo+IEBAIC04MywxMiArODgsMTIgQEAgYXN5bmMgZm4g
Y3JlYXRlX3NuYXBzaG90KAo+ICAKPiAgICAgIGxldCBzdWJzY3JpcHRpb24gPSBnZXRfc3Vic2Ny
aXB0aW9uX2tleSgmc2VjdGlvbl9jb25maWcsICZjb25maWcpPzsKPiAgCj4gLSAgICBwcm94bW94
X29mZmxpbmVfbWlycm9yOjptaXJyb3I6OmNyZWF0ZV9zbmFwc2hvdCgKPiAtICAgICAgICBjb25m
aWcsCj4gLSAgICAgICAgJlNuYXBzaG90Ojpub3coKSwKPiAtICAgICAgICBzdWJzY3JpcHRpb24s
Cj4gLSAgICAgICAgZHJ5X3J1biwKPiAtICAgICk/Owo+ICsgICAgbGV0IHNuYXBzaG90ID0gbWF0
Y2ggJm5hbWUgewo+ICsgICAgICAgIFNvbWUobmFtZSkgPT4gU25hcHNob3Q6OndpdGhfbmFtZSgm
bmFtZSksCj4gKyAgICAgICAgTm9uZSA9PiBTbmFwc2hvdDo6bm93KCksCj4gKyAgICB9Owo+ICsK
PiArICAgIHByb3htb3hfb2ZmbGluZV9taXJyb3I6Om1pcnJvcjo6Y3JlYXRlX3NuYXBzaG90KGNv
bmZpZywgJnNuYXBzaG90LCBzdWJzY3JpcHRpb24sIGRyeV9ydW4pPzsKCkkgdGhpbmsgaXQgd291
bGQgbWFrZSBtb3JlIHNlbnNlIHRvIHRyZWF0IHRoZSBuYW1lIGFzIGFuIGV4dHJhICJsYWJlbCIs
CnJhdGhlciB0aGFuIGFzIGEgcmVwbGFjZW1lbnQgZm9yIHRoZSB0aW1lc3RhbXAuLgoKYmVjYXVz
ZSB3aXRoIHRoZSBjdXJyZW50IGFwcHJvYWNoOgotIHdlIGxvc2UgdGhlIGluZm9ybWF0aW9uIHdo
ZW4gYSBzbmFwc2hvdCB3YXMgY3JlYXRlZCwgd2hpY2ggaXMKICBpbXBvcnRhbnQgZm9yIG9yZGVy
aW5nCi0gKmFueXRoaW5nKiB0aGF0IG1hdGNoZXMgdGhlIHJlbGF4ZWQgc2NoZW1hIGlzIG5vdyB0
cmVhdGVkIGFzIHNuYXBzaG90LAogIGluY2x1ZGluZyB0ZW1wb3JhcnkgZGlycyBmb3IgbmFtZWQg
c25hcHNob3RzCgppZiB3ZSBhdHRhY2ggdGhlIGxhYmVsICphZnRlciogY3JlYXRpbmcgdGhlIHNu
YXBzaG90IChlLmcuLCBhcyBhIHN5bWxpbmsKcG9pbnRpbmcgYXQgYSBzbmFwc2hvdCBkaXI/KSwg
d2UgYXZvaWQgdGhvc2UgaXNzdWVzIChhbmQgZXZlbiBnZXQKYWRkaXRpb25hbCBiZW5lZml0cywg
bGlrZSBtb3ZpbmcgYSBsYWJlbCBmb3J3YXJkLCBoYXZpbmcgbXVsdGlwbGUgbGFiZWxzCmZvciBh
IHNpbmdsZSBzbmFwc2hvdCwgLi4pLgoKb2YgY291cnNlLCB0aGF0IG1lYW5zIGhhbmRsaW5nIGRh
bmdsaW5nIHN5bWxpbmtzLCBhbmQgaGFuZGxpbmcgb2YgdGhvc2UKc3ltbGlua3MgaW4gZ2VuZXJh
bCBpbiBzb21lIHBhcnRzLi4KCj4gIAo+ICAgICAgT2soKCkpCj4gIH0KPiBAQCAtMTAxLDYgKzEw
NiwxMCBAQCBhc3luYyBmbiBjcmVhdGVfc25hcHNob3QoCj4gICAgICAgICAgICAgICAgICBvcHRp
b25hbDogdHJ1ZSwKPiAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAiUGF0aCB0byBtaXJy
b3JpbmcgY29uZmlnIGZpbGUuIiwKPiAgICAgICAgICAgICAgfSwKPiArICAgICAgICAgICAgbmFt
ZTogewo+ICsgICAgICAgICAgICAgICAgc2NoZW1hOiBOQU1FRF9TTkFQU0hPVF9TQ0hFTUEsCj4g
KyAgICAgICAgICAgICAgICBvcHRpb25hbDogdHJ1ZSwKPiArICAgICAgICAgICAgfSwKPiAgICAg
ICAgICAgICAgImRyeS1ydW4iOiB7Cj4gICAgICAgICAgICAgICAgICB0eXBlOiBib29sLAo+ICAg
ICAgICAgICAgICAgICAgb3B0aW9uYWw6IHRydWUsCj4gQEAgLTExNCw2ICsxMjMsNyBAQCBhc3lu
YyBmbiBjcmVhdGVfc25hcHNob3QoCj4gIC8vLyBmcm9tIG9yaWdpbmFsIHJlcG9zaXRvcnkuCj4g
IGFzeW5jIGZuIGNyZWF0ZV9zbmFwc2hvdHMoCj4gICAgICBjb25maWc6IE9wdGlvbjxTdHJpbmc+
LAo+ICsgICAgbmFtZTogT3B0aW9uPFN0cmluZz4sCj4gICAgICBkcnlfcnVuOiBib29sLAo+ICAg
ICAgX3BhcmFtOiBWYWx1ZSwKPiAgKSAtPiBSZXN1bHQ8KCksIEVycm9yPiB7Cj4gQEAgLTEzNSw5
ICsxNDUsMTUgQEAgYXN5bmMgZm4gY3JlYXRlX3NuYXBzaG90cygKPiAgICAgICAgICAgICAgICAg
IGNvbnRpbnVlOwo+ICAgICAgICAgICAgICB9Cj4gICAgICAgICAgfTsKPiArCj4gKyAgICAgICAg
bGV0IHNuYXBzaG90ID0gbWF0Y2ggJm5hbWUgewo+ICsgICAgICAgICAgICBTb21lKG5hbWUpID0+
IFNuYXBzaG90Ojp3aXRoX25hbWUoJm5hbWUpLAo+ICsgICAgICAgICAgICBOb25lID0+IFNuYXBz
aG90Ojpub3coKSwKPiArICAgICAgICB9Owo+ICsKPiAgICAgICAgICBsZXQgcmVzID0gcHJveG1v
eF9vZmZsaW5lX21pcnJvcjo6bWlycm9yOjpjcmVhdGVfc25hcHNob3QoCj4gICAgICAgICAgICAg
IG1pcnJvciwKPiAtICAgICAgICAgICAgJlNuYXBzaG90Ojpub3coKSwKPiArICAgICAgICAgICAg
JnNuYXBzaG90LAo+ICAgICAgICAgICAgICBzdWJzY3JpcHRpb24sCj4gICAgICAgICAgICAgIGRy
eV9ydW4sCgp0aGlzIG1lYW5zIHRoYXQgb25lIG9mIHRoZSBtYWluIHB1cnBvc2VzIG9mIHRoaXMg
Im5hbWluZyIgZ2V0cyBxdWl0ZQpicml0dGxlIC0gaWYgYSBzaW5nbGUgbWlycm9yIGZhaWxzIHRv
IGJlIG1pcnJvcmVkLCB0aGUgb3RoZXJzIHdpbGwgaGF2ZQp0aGF0IG5hbWUgYXR0YWNoZWQgYW5k
IGl0J3MgdGh1cyAidXNlZCI/CgppZiB3ZSB1c2UgdGhlIHN5bWxpbmsgYXBwcm9hY2gsIHdlIGFs
c28gYXZvaWQgdGhpcyBwcm9ibGVtIC0+IHNpbXBseQpzbmFwc2hvdCBhbGwgbWlycm9ycywgYW5k
IGF0dGFjaCB0aGUgbGFiZWwgYXQgdGhlIGVuZCBpZiBzdWNjZXNzZnVsIChvcgptYWtlIHRoZSBi
ZWhhdmlvdXIgY29uZmlndXJhYmxlLCBkZXBlbmRpbmcgb24gdXNlIGNhc2UpCgo+ICAgICAgICAg
ICk7Cj4gZGlmZiAtLWdpdCBhL3NyYy9tZWRpdW0ucnMgYi9zcmMvbWVkaXVtLnJzCj4gaW5kZXgg
YmVmNmNjNy4uYTJlMmVlNCAxMDA2NDQKPiAtLS0gYS9zcmMvbWVkaXVtLnJzCj4gKysrIGIvc3Jj
L21lZGl1bS5ycwo+IEBAIC0xOCw3ICsxOCw3IEBAIHVzZSBjcmF0ZTo6ewo+ICAgICAgZ2VuZXJh
dGVfcmVwb19maWxlX2xpbmUsCj4gICAgICBtaXJyb3I6OnBvb2wsCj4gICAgICBwb29sOjpQb29s
LAo+IC0gICAgdHlwZXM6OntEaWZmLCBTTkFQU0hPVF9SRUdFWCwgU25hcHNob3R9LAo+ICsgICAg
dHlwZXM6OntDT01CSU5FRF9TTkFQU0hPVF9SRUdFWCwgRGlmZiwgU25hcHNob3R9LAo+ICB9Owo+
ICAjW2Rlcml2ZShDbG9uZSwgRGVidWcsIFNlcmlhbGl6ZSwgRGVzZXJpYWxpemUpXQo+ICAjW3Nl
cmRlKHJlbmFtZV9hbGwgPSAia2ViYWItY2FzZSIpXQo+IEBAIC0xNjIsNyArMTYyLDcgQEAgcHVi
IGZuIGxpc3Rfc25hcHNob3RzKG1lZGl1bV9iYXNlOiAmUGF0aCwgbWlycm9yOiAmc3RyKSAtPiBS
ZXN1bHQ8VmVjPFNuYXBzaG90PiwKPiAgICAgIHByb3htb3hfc3lzOjpmczo6c2NhbmRpcigKPiAg
ICAgICAgICBsaWJjOjpBVF9GRENXRCwKPiAgICAgICAgICAmbWlycm9yX2Jhc2UsCj4gLSAgICAg
ICAgJlNOQVBTSE9UX1JFR0VYLAo+ICsgICAgICAgICZDT01CSU5FRF9TTkFQU0hPVF9SRUdFWCwK
PiAgICAgICAgICB8X2wyX2ZkLCBzbmFwc2hvdCwgZmlsZV90eXBlfCB7Cj4gICAgICAgICAgICAg
IGlmIGZpbGVfdHlwZSAhPSBuaXg6OmRpcjo6VHlwZTo6RGlyZWN0b3J5IHsKPiAgICAgICAgICAg
ICAgICAgIHJldHVybiBPaygoKSk7Cj4gZGlmZiAtLWdpdCBhL3NyYy9taXJyb3IucnMgYi9zcmMv
bWlycm9yLnJzCj4gaW5kZXggYzg4ZjgxZC4uMmFlZjY5MSAxMDA2NDQKPiAtLS0gYS9zcmMvbWly
cm9yLnJzCj4gKysrIGIvc3JjL21pcnJvci5ycwo+IEBAIC0xMSwxNCArMTEsMTQgQEAgdXNlIGds
b2JzZXQ6OntHbG9iLCBHbG9iU2V0LCBHbG9iU2V0QnVpbGRlcn07Cj4gIHVzZSBuaXg6OmxpYmM7
Cj4gIHVzZSBwcm94bW94X2h0dHA6OntIdHRwQ2xpZW50LCBIdHRwT3B0aW9ucywgUHJveHlDb25m
aWcsIGNsaWVudDo6c3luYzo6Q2xpZW50fTsKPiAgdXNlIHByb3htb3hfc2NoZW1hOjp7QXBpVHlw
ZSwgU2NoZW1hfTsKPiAtdXNlIHByb3htb3hfc3lzOjpmczo6ZmlsZV9nZXRfY29udGVudHM7Cj4g
K3VzZSBwcm94bW94X3N5czo6ZnM6OntDcmVhdGVPcHRpb25zLCBmaWxlX2dldF9jb250ZW50c307
Cj4gIAo+ICB1c2UgY3JhdGU6OnsKPiAgICAgIEZldGNoUmVzdWx0LCBQcm9ncmVzcywKPiAgICAg
IGNvbmZpZzo6e01pcnJvckNvbmZpZywgU2tpcENvbmZpZywgU3Vic2NyaXB0aW9uS2V5LCBXZWFr
Q3J5cHRvQ29uZmlnfSwKPiAgICAgIGNvbnZlcnRfcmVwb19saW5lLAo+ICAgICAgcG9vbDo6UG9v
bCwKPiAtICAgIHR5cGVzOjp7RGlmZiwgU05BUFNIT1RfUkVHRVgsIFNuYXBzaG90fSwKPiArICAg
IHR5cGVzOjp7Q09NQklORURfU05BUFNIT1RfUkVHRVgsIERpZmYsIFNuYXBzaG90fSwKPiAgfTsK
PiAgCj4gIHVzZSBwcm94bW94X2FwdDo6ZGViODIyOjp7Cj4gQEAgLTQ3Niw3ICs0NzYsNyBAQCBw
dWIgZm4gbGlzdF9zbmFwc2hvdHMoY29uZmlnOiAmTWlycm9yQ29uZmlnKSAtPiBSZXN1bHQ8VmVj
PFNuYXBzaG90PiwgRXJyb3I+IHsKPiAgICAgIHByb3htb3hfc3lzOjpmczo6c2NhbmRpcigKPiAg
ICAgICAgICBsaWJjOjpBVF9GRENXRCwKPiAgICAgICAgICAmcGF0aCwKPiAtICAgICAgICAmU05B
UFNIT1RfUkVHRVgsCj4gKyAgICAgICAgJkNPTUJJTkVEX1NOQVBTSE9UX1JFR0VYLAo+ICAgICAg
ICAgIHxfbDJfZmQsIHNuYXBzaG90LCBmaWxlX3R5cGV8IHsKPiAgICAgICAgICAgICAgaWYgZmls
ZV90eXBlICE9IG5peDo6ZGlyOjpUeXBlOjpEaXJlY3Rvcnkgewo+ICAgICAgICAgICAgICAgICAg
cmV0dXJuIE9rKCgpKTsKPiBAQCAtNzkzLDEyICs3OTMsNiBAQCBwdWIgZm4gY3JlYXRlX3NuYXBz
aG90KAo+ICAgICAgICAgIE5vbmUKPiAgICAgIH07Cj4gIAo+IC0gICAgbGV0IG11dCBjb25maWc6
IFBhcnNlZE1pcnJvckNvbmZpZyA9IGNvbmZpZy50cnlfaW50bygpPzsKPiAtICAgIGNvbmZpZy5h
dXRoID0gYXV0aDsKCnRoaXMgaXMgdW5yZWxhdGVkPwoKPiAtCj4gLSAgICBsZXQgcHJlZml4ID0g
Zm9ybWF0ISgie3NuYXBzaG90fS50bXAiKTsKPiAtICAgIGxldCBwcmVmaXggPSBQYXRoOjpuZXco
JnByZWZpeCk7Cj4gLQo+ICAgICAgbGV0IG11dCBwcm9ncmVzcyA9IE1pcnJvclByb2dyZXNzIHsK
PiAgICAgICAgICB3YXJuaW5nczogVmVjOjpuZXcoKSwKPiAgICAgICAgICBza2lwX2NvdW50OiAw
LAo+IEBAIC04MDcsNiArODAxLDQyIEBAIHB1YiBmbiBjcmVhdGVfc25hcHNob3QoCj4gICAgICAg
ICAgdG90YWw6IFByb2dyZXNzOjpuZXcoKSwKPiAgICAgIH07Cj4gIAo+ICsgICAgbGV0IG11dCBj
b25maWc6IFBhcnNlZE1pcnJvckNvbmZpZyA9IGNvbmZpZy50cnlfaW50bygpPzsKPiArICAgIGNv
bmZpZy5hdXRoID0gYXV0aDsKPiArCj4gKyAgICBsZXQgc25hcHNob3RfcmVsYXRpdmVfcGF0aCA9
IHNuYXBzaG90LnRvX3N0cmluZygpOwo+ICsgICAgbGV0IHNuYXBzaG90X3JlbGF0aXZlX3BhdGgg
PSBQYXRoOjpuZXcoJnNuYXBzaG90X3JlbGF0aXZlX3BhdGgpOwo+ICsgICAgbGV0IHNuYXBzaG90
X2Fic29sdXRlX3BhdGggPSBjb25maWcucG9vbC5nZXRfcGF0aChzbmFwc2hvdF9yZWxhdGl2ZV9w
YXRoKTsKPiArCj4gKyAgICBpZiBzbmFwc2hvdF9hYnNvbHV0ZV9wYXRoLmlzX29rX2FuZCh8cGF0
aHwgcGF0aC5leGlzdHMoKSkgewo+ICsgICAgICAgIGlmIGRyeV9ydW4gewo+ICsgICAgICAgICAg
ICBsZXQgbXNnID0gIldBUk5JTkc6IHNuYXBzaG90IHtzbmFwc2hvdH0gYWxyZWFkeSBleGlzdHMh
IENvbnRpbnVpbmcgZHVlIHRvIGRyeSBydW4uLi4iOwo+ICsgICAgICAgICAgICBlcHJpbnRsbiEo
Inttc2d9Iik7Cj4gKyAgICAgICAgICAgIHByb2dyZXNzLndhcm5pbmdzLnB1c2gobXNnLmludG8o
KSk7Cj4gKyAgICAgICAgfSBlbHNlIHsKPiArICAgICAgICAgICAgYmFpbCEoIlNuYXBzaG90IHtz
bmFwc2hvdH0gYWxyZWFkeSBleGlzdHMhIik7Cj4gKyAgICAgICAgfQo+ICsgICAgfQo+ICsKPiAr
ICAgIGxldCBsb2NrZmlsZV9wYXRoID0gY29uZmlnCj4gKyAgICAgICAgLnBvb2wKPiArICAgICAg
ICAuZ2V0X3BhdGgoUGF0aDo6bmV3KCZmb3JtYXQhKCIue3NuYXBzaG90fS5sb2NrIikpKTsKCndo
YXQgZG9lcyB0aGlzIG5ldyBsb2NrIHByb3RlY3QgYWdhaW5zdD8gd2hhdCBpcyBpdHMgc2NvcGU/
IG5vdGUgdGhhdCBhCnBvb2wgY2FuIGJlIHNoYXJlZCBiZXR3ZWVuIG1pcnJvcnMuLgoKPiArCj4g
KyAgICBpZiBsZXQgRXJyKGxvY2tmaWxlX2VycikgPSBsb2NrZmlsZV9wYXRoIHsKPiArICAgICAg
ICBiYWlsISgiY2Fubm90IGNyZWF0ZSBsb2NrZmlsZSBmb3Igc25hcHNob3Qge3NuYXBzaG90fTog
e2xvY2tmaWxlX2Vycn0iKTsKPiArICAgIH0KPiArICAgIGxldCBsb2NrZmlsZV9wYXRoID0gbG9j
a2ZpbGVfcGF0aC51bndyYXAoKTsKPiArCj4gKyAgICBsZXQgX3NuYXBzaG90X2xvY2sgPSBwcm94
bW94X3N5czo6ZnM6Om9wZW5fZmlsZV9sb2NrZWQoCj4gKyAgICAgICAgJmxvY2tmaWxlX3BhdGgs
Cj4gKyAgICAgICAgc3RkOjp0aW1lOjpEdXJhdGlvbjo6bmV3KDEwLCAwKSwKPiArICAgICAgICB0
cnVlLAo+ICsgICAgICAgIENyZWF0ZU9wdGlvbnM6OmRlZmF1bHQoKSwKPiArICAgICk/Owo+ICsK
PiArICAgIGxldCBwcmVmaXggPSBmb3JtYXQhKCJ7c25hcHNob3R9LnRtcCIpOwo+ICsgICAgbGV0
IHByZWZpeCA9IFBhdGg6Om5ldygmcHJlZml4KTsKCnRoaXMgbWlnaHQgYWxzbyBhbHJlYWR5IGV4
aXN0IGFuZCBzaG91bGQgYmUgY2hlY2tlZC4uCgo+ICsKPiAgICAgIGxldCBwYXJzZV9yZWxlYXNl
ID0gfHJlczogRmV0Y2hSZXN1bHQsIG5hbWU6ICZzdHJ8IC0+IFJlc3VsdDxSZWxlYXNlRmlsZSwg
RXJyb3I+IHsKPiAgICAgICAgICBwcmludGxuISgiUGFyc2luZyB7bmFtZX0uLiIpOwo+ICAgICAg
ICAgIGxldCBwYXJzZWQ6IFJlbGVhc2VGaWxlID0gcmVzLmRhdGFbLi5dLnRyeV9pbnRvKCk/Owo+
IEBAIC0xMDc4LDkgKzExMDgsMTUgQEAgcHViIGZuIGNyZWF0ZV9zbmFwc2hvdCgKPiAgICAgIGlm
ICFkcnlfcnVuIHsKPiAgICAgICAgICBwcmludGxuISgiXG5Sb3RhdGluZyB0ZW1wLiBzbmFwc2hv
dCBpbi1wbGFjZToge3ByZWZpeDo/fSAtPiBcIntzbmFwc2hvdH1cIiIpOwo+ICAgICAgICAgIGxl
dCBsb2NrZWQgPSBjb25maWcucG9vbC5sb2NrKCk/Owo+IC0gICAgICAgIGxvY2tlZC5yZW5hbWUo
cHJlZml4LCBQYXRoOjpuZXcoJmZvcm1hdCEoIntzbmFwc2hvdH0iKSkpPzsKPiArCj4gKyAgICAg
ICAgaWYgc25hcHNob3RfcmVsYXRpdmVfcGF0aC5leGlzdHMoKSB7Cj4gKyAgICAgICAgICAgIGJh
aWwhKCJTbmFwc2hvdCB7c25hcHNob3R9IGFscmVhZHkgZXhpc3RzISIpOwo+ICsgICAgICAgIH0K
CnRoaXMgY2hlY2sgaXMgd3JvbmcsIGJlY2F1c2UgaXQgZG9lc24ndCBhY2NvdW50IGZvciB0aGUg
Y3VycmVudCB3b3JraW5nCmRpcmVjdG9yeSBhbmQgdGhlIHBhdGggYmVpbmcgcmVsYXRpdmUuLgoK
PiArICAgICAgICBsb2NrZWQucmVuYW1lKHByZWZpeCwgc25hcHNob3RfcmVsYXRpdmVfcGF0aCk/
Owo+ICAgICAgfQo+ICAKPiArICAgIHN0ZDo6ZnM6OnJlbW92ZV9maWxlKGxvY2tmaWxlX3BhdGgp
PzsKPiArCj4gICAgICBPaygoKSkKPiAgfQo+ICAKPiBkaWZmIC0tZ2l0IGEvc3JjL3R5cGVzLnJz
IGIvc3JjL3R5cGVzLnJzCj4gaW5kZXggMTBkZGU2NS4uNDlkYzM3NCAxMDA2NDQKPiAtLS0gYS9z
cmMvdHlwZXMucnMKPiArKysgYi9zcmMvdHlwZXMucnMKPiBAQCAtMSw2ICsxLDYgQEAKPiAgdXNl
IHN0ZDo6e2ZtdDo6RGlzcGxheSwgcGF0aDo6UGF0aEJ1Ziwgc3RyOjpGcm9tU3RyfTsKPiAgCj4g
LXVzZSBhbnlob3c6OkVycm9yOwo+ICt1c2UgYW55aG93Ojp7RXJyb3IsIGJhaWx9Owo+ICB1c2Ug
cHJveG1veF9zY2hlbWE6OntBcGlTdHJpbmdGb3JtYXQsIFNjaGVtYSwgU3RyaW5nU2NoZW1hLCBh
cGksIGNvbnN0X3JlZ2V4fTsKPiAgdXNlIHByb3htb3hfc2VyZGU6Ontmb3J3YXJkX2Rlc2VyaWFs
aXplX3RvX2Zyb21fc3RyLCBmb3J3YXJkX3NlcmlhbGl6ZV90b19kaXNwbGF5fTsKPiAgdXNlIHBy
b3htb3hfdGltZTo6e2Vwb2NoX2k2NCwgZXBvY2hfdG9fcmZjMzMzOV91dGMsIHBhcnNlX3JmYzMz
Mzl9Owo+IEBAIC0zMiw2ICszMiwxMyBAQCBwdWIgY29uc3QgTUVESUFfSURfU0NIRU1BOiBTY2hl
bWEgPSBTdHJpbmdTY2hlbWE6Om5ldygiTWVkaXVtIG5hbWUuIikKPiAgICAgIC5tYXhfbGVuZ3Ro
KDMyKQo+ICAgICAgLnNjaGVtYSgpOwo+ICAKPiArLy8vIFNjaGVtYSBmb3IgbmFtZWQgc25hcHNo
b3RzCj4gK3B1YiBjb25zdCBOQU1FRF9TTkFQU0hPVF9TQ0hFTUE6IFNjaGVtYSA9IFN0cmluZ1Nj
aGVtYTo6bmV3KCJDdXN0b20gbmFtZSBmb3Igc25hcHNob3QuIikKPiArICAgIC5mb3JtYXQoJlBS
T1hNT1hfU0FGRV9JRF9GT1JNQVQpCj4gKyAgICAubWluX2xlbmd0aCgzKQo+ICsgICAgLm1heF9s
ZW5ndGgoMzIpCj4gKyAgICAuc2NoZW1hKCk7Cj4gKwo+ICAjW3J1c3RmbXQ6OnNraXBdCj4gICNb
bWFjcm9fZXhwb3J0XQo+ICBtYWNyb19ydWxlcyEgUFJPWE1PWF9TVUJTQ1JJUFRJT05fS0VZX1JF
R0VYX1NUUiB7ICgpID0+IHsgciIoPzpwb20tfHB2ZVxkK1thLXpdLXxwYnNbYS16XS18cG1nW2Et
el0tKS4qIiB9OyB9Cj4gQEAgLTYyLDMyICs2OSw1MSBAQCBwdWIgY29uc3QgUFJPWE1PWF9TRVJW
RVJfSURfU0NIRU1BOiBTY2hlbWEgPSBTdHJpbmdTY2hlbWE6Om5ldygiU2VydmVyIElELiIpCj4g
IAo+ICAjW3J1c3RmbXQ6OnNraXBdCj4gICNbbWFjcm9fZXhwb3J0XQo+IC1tYWNyb19ydWxlcyEg
U05BUFNIT1RfUkUgeyAoKSA9PiAociJbMC05XXs0fS1bMC05XXsyfS1bMC05XXsyfVRbMC05XXsy
fTpbMC05XXsyfTpbMC05XXsyfVoiKSB9Cj4gK21hY3JvX3J1bGVzISBUSU1FRF9TTkFQU0hPVF9S
RSB7ICgpID0+IChyIlswLTldezR9LVswLTldezJ9LVswLTldezJ9VFswLTldezJ9OlswLTldezJ9
OlswLTldezJ9WiIpIH0KPiAgY29uc3RfcmVnZXghIHsKPiAtICAgIHB1YihjcmF0ZSkgU05BUFNI
T1RfUkVHRVggPSBjb25jYXQhKHIiXiIsIFNOQVBTSE9UX1JFISgpICxyIiQiKTsKPiArICAgIHB1
YihjcmF0ZSkgVElNRURfU05BUFNIT1RfUkVHRVggPSBjb25jYXQhKHIiXiIsIFRJTUVEX1NOQVBT
SE9UX1JFISgpICxyIiQiKTsKPiArfQo+ICsKPiArI1tydXN0Zm10Ojpza2lwXQo+ICtjb25zdF9y
ZWdleCEgewo+ICsgICAgcHViKGNyYXRlKSBDT01CSU5FRF9TTkFQU0hPVF9SRUdFWCA9IGNvbmNh
dCEociJeKCgiLCBUSU1FRF9TTkFQU0hPVF9SRSEoKSAsciIpfCIsIFBST1hNT1hfU0FGRV9JRF9S
RUdFWF9TVFIhKCksICIpJCIpOwo+ICt9Cj4gKwo+ICsjW2Rlcml2ZShEZWJ1ZywgQ2xvbmUsIFBh
cnRpYWxFcSwgUGFydGlhbE9yZCwgRXEsIE9yZCldCj4gK2VudW0gU25hcHNob3RUeXBlIHsKPiAr
ICAgIFRpbWVkU25hcHNob3QoaTY0KSwKPiArICAgIE5hbWVkU25hcHNob3QoU3RyaW5nKSwKPiAg
fQo+ICAKPiAgI1thcGkoCj4gICAgICB0eXBlOiBTdHJpbmcsCj4gLSAgICBmb3JtYXQ6ICZBcGlT
dHJpbmdGb3JtYXQ6OlBhdHRlcm4oJlNOQVBTSE9UX1JFR0VYKSwKPiAgKV0KPiAtI1tkZXJpdmUo
RGVidWcsIENsb25lLCBDb3B5LCBQYXJ0aWFsRXEsIFBhcnRpYWxPcmQsIEVxLCBPcmQpXQo+ICsj
W2Rlcml2ZShEZWJ1ZywgQ2xvbmUsIFBhcnRpYWxFcSwgUGFydGlhbE9yZCwgRXEsIE9yZCldCj4g
IC8vLyBNaXJyb3Igc25hcHNob3QKPiAtcHViIHN0cnVjdCBTbmFwc2hvdChpNjQpOwo+ICtwdWIg
c3RydWN0IFNuYXBzaG90KFNuYXBzaG90VHlwZSk7Cj4gIAo+ICBmb3J3YXJkX3NlcmlhbGl6ZV90
b19kaXNwbGF5IShTbmFwc2hvdCk7Cj4gIGZvcndhcmRfZGVzZXJpYWxpemVfdG9fZnJvbV9zdHIh
KFNuYXBzaG90KTsKPiAgCj4gIGltcGwgU25hcHNob3Qgewo+ICAgICAgcHViIGZuIG5vdygpIC0+
IFNlbGYgewo+IC0gICAgICAgIFNlbGYoZXBvY2hfaTY0KCkpCj4gKyAgICAgICAgU2VsZihTbmFw
c2hvdFR5cGU6OlRpbWVkU25hcHNob3QoZXBvY2hfaTY0KCkpKQo+ICsgICAgfQo+ICsKPiArICAg
IHB1YiBmbiB3aXRoX25hbWUobmFtZTogJnN0cikgLT4gU2VsZiB7Cj4gKyAgICAgICAgU2VsZihT
bmFwc2hvdFR5cGU6Ok5hbWVkU25hcHNob3QobmFtZS5pbnRvKCkpKQo+ICAgICAgfQo+ICB9Cj4g
IAo+ICBpbXBsIERpc3BsYXkgZm9yIFNuYXBzaG90IHsKPiAgICAgIGZuIGZtdCgmc2VsZiwgZjog
Jm11dCBzdGQ6OmZtdDo6Rm9ybWF0dGVyPCdfPikgLT4gc3RkOjpmbXQ6OlJlc3VsdCB7Cj4gLSAg
ICAgICAgbGV0IGZvcm1hdHRlZCA9IGVwb2NoX3RvX3JmYzMzMzlfdXRjKHNlbGYuMCkubWFwX2Vy
cih8X3wgc3RkOjpmbXQ6OkVycm9yKT87Cj4gLSAgICAgICAgZi53cml0ZV9zdHIoJmZvcm1hdHRl
ZCkKPiArICAgICAgICBtYXRjaCAmc2VsZi4wIHsKPiArICAgICAgICAgICAgU25hcHNob3RUeXBl
OjpUaW1lZFNuYXBzaG90KHRpbWUpID0+IHsKPiArICAgICAgICAgICAgICAgIGxldCBmb3JtYXR0
ZWQgPSBlcG9jaF90b19yZmMzMzM5X3V0YygqdGltZSkubWFwX2Vycih8X3wgc3RkOjpmbXQ6OkVy
cm9yKT87Cj4gKyAgICAgICAgICAgICAgICBmLndyaXRlX3N0cigmZm9ybWF0dGVkKQo+ICsgICAg
ICAgICAgICB9Cj4gKyAgICAgICAgICAgIFNuYXBzaG90VHlwZTo6TmFtZWRTbmFwc2hvdChuYW1l
KSA9PiBmLndyaXRlX3N0cigmbmFtZSksCj4gKyAgICAgICAgfQo+ICAgICAgfQo+ICB9Cj4gIAo+
IEBAIC05NSw3ICsxMjEsMTMgQEAgaW1wbCBGcm9tU3RyIGZvciBTbmFwc2hvdCB7Cj4gICAgICB0
eXBlIEVyciA9IEVycm9yOwo+ICAKPiAgICAgIGZuIGZyb21fc3RyKHM6ICZzdHIpIC0+IFJlc3Vs
dDxTZWxmLCBTZWxmOjpFcnI+IHsKPiAtICAgICAgICBPayhTZWxmKHBhcnNlX3JmYzMzMzkocyk/
KSkKPiArICAgICAgICBpZiBUSU1FRF9TTkFQU0hPVF9SRUdFWC5pc19tYXRjaChzKSB7Cj4gKyAg
ICAgICAgICAgIE9rKFNlbGYoU25hcHNob3RUeXBlOjpUaW1lZFNuYXBzaG90KHBhcnNlX3JmYzMz
Mzkocyk/KSkpCj4gKyAgICAgICAgfSBlbHNlIGlmIFBST1hNT1hfU0FGRV9JRF9SRUdFWC5pc19t
YXRjaChzKSB7Cj4gKyAgICAgICAgICAgIE9rKFNlbGYoU25hcHNob3RUeXBlOjpOYW1lZFNuYXBz
aG90KHMuaW50bygpKSkpCj4gKyAgICAgICAgfSBlbHNlIHsKPiArICAgICAgICAgICAgYmFpbCEo
ImludmFsaWQgc25hcHNob3QgbmFtZSIpCj4gKyAgICAgICAgfQo+ICAgICAgfQo+ICB9Cj4gIAo+
IC0tIAo+IDIuMzkuNQo+IAo+IAo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fCj4gcHZlLWRldmVsIG1haWxpbmcgbGlzdAo+IHB2ZS1kZXZlbEBsaXN0
cy5wcm94bW94LmNvbQo+IGh0dHBzOi8vbGlzdHMucHJveG1veC5jb20vY2dpLWJpbi9tYWlsbWFu
L2xpc3RpbmZvL3B2ZS1kZXZlbAo+IAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fCnB2ZS1kZXZlbCBtYWlsaW5nIGxpc3QKcHZlLWRldmVsQGxpc3RzLnBy
b3htb3guY29tCmh0dHBzOi8vbGlzdHMucHJveG1veC5jb20vY2dpLWJpbi9tYWlsbWFuL2xpc3Rp
bmZvL3B2ZS1kZXZlbAo=