From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <pbs-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 13AEA1FF15C
	for <inbox@lore.proxmox.com>; Wed, 30 Oct 2024 14:48:19 +0100 (CET)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id 6C07E1A059;
	Wed, 30 Oct 2024 14:48:22 +0100 (CET)
Message-ID: <17c389cd-d725-463b-aed6-a27c2b14e0c4@proxmox.com>
Date: Wed, 30 Oct 2024 14:48:18 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
To: Proxmox Backup Server development discussion <pbs-devel@lists.proxmox.com>,
 =?UTF-8?Q?Fabian_Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
References: <20241018084242.144010-1-c.ebner@proxmox.com>
 <20241018084242.144010-11-c.ebner@proxmox.com>
 <1729855597.mezzpyn5wy.astroid@yuna.none>
Content-Language: en-US, de-DE
From: Christian Ebner <c.ebner@proxmox.com>
In-Reply-To: <1729855597.mezzpyn5wy.astroid@yuna.none>
X-SPAM-LEVEL: Spam detection results:  0
 AWL -0.373 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_ASCII_DIVIDERS 0.8 Email that uses ascii formatting dividers and possible
 spam tricks
 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: [pbs-devel] [PATCH v5 proxmox-backup 10/31] api: push:
 implement endpoint for sync in push direction
X-BeenThere: pbs-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Proxmox Backup Server development discussion
 <pbs-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pbs-devel>, 
 <mailto:pbs-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pbs-devel/>
List-Post: <mailto:pbs-devel@lists.proxmox.com>
List-Help: <mailto:pbs-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel>, 
 <mailto:pbs-devel-request@lists.proxmox.com?subject=subscribe>
Reply-To: Proxmox Backup Server development discussion
 <pbs-devel@lists.proxmox.com>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: pbs-devel-bounces@lists.proxmox.com
Sender: "pbs-devel" <pbs-devel-bounces@lists.proxmox.com>

T24gMTAvMjUvMjQgMTM6NDUsIEZhYmlhbiBHcsO8bmJpY2hsZXIgd3JvdGU6Cj4gT24gT2N0b2Jl
ciAxOCwgMjAyNCAxMDo0MiBhbSwgQ2hyaXN0aWFuIEVibmVyIHdyb3RlOgo+PiBFeHBvc2UgdGhl
IHN5bmMgam9iIGluIHB1c2ggZGlyZWN0aW9uIHZpYSBhIGRlZGljYXRlZCBBUEkgZW5kcG9pbnQs
Cj4+IGFuYWxvZ291cyB0byB0aGUgcHVsbCBkaXJlY3Rpb24uCj4+Cj4+IFNpZ25lZC1vZmYtYnk6
IENocmlzdGlhbiBFYm5lciA8Yy5lYm5lckBwcm94bW94LmNvbT4KPj4gLS0tCj4+IGNoYW5nZXMg
c2luY2UgdmVyc2lvbiA0Ogo+PiAtIG5vIGNoYW5nZXMKPj4KPj4gY2hhbmdlcyBzaW5jZSB2ZXJz
aW9uIDM6Cj4+IC0gaW5jbHVkZSBuYW1lc3BhY2UgaW4gcmVtb3RlIGFjbCBwYXRoCj4+IC0gQWxs
b3cgdG8gcnVuIHdpdGggUFJJVl9SRU1PVEVfREFUQVNUT1JFX0JBQ0tVUAo+Pgo+PiAgIHNyYy9h
cGkyL21vZC5ycyAgfCAgIDIgKwo+PiAgIHNyYy9hcGkyL3B1c2gucnMgfCAyMjIgKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPj4gICAyIGZpbGVzIGNoYW5n
ZWQsIDIyNCBpbnNlcnRpb25zKCspCj4+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy9hcGkyL3B1
c2gucnMKPj4KPj4gZGlmZiAtLWdpdCBhL3NyYy9hcGkyL21vZC5ycyBiL3NyYy9hcGkyL21vZC5y
cwo+PiBpbmRleCBhODNlNGMyMDUuLjAzNTk2MzI2YiAxMDA2NDQKPj4gLS0tIGEvc3JjL2FwaTIv
bW9kLnJzCj4+ICsrKyBiL3NyYy9hcGkyL21vZC5ycwo+PiBAQCAtMTIsNiArMTIsNyBAQCBwdWIg
bW9kIGhlbHBlcnM7Cj4+ICAgcHViIG1vZCBub2RlOwo+PiAgIHB1YiBtb2QgcGluZzsKPj4gICBw
dWIgbW9kIHB1bGw7Cj4+ICtwdWIgbW9kIHB1c2g7Cj4+ICAgcHViIG1vZCByZWFkZXI7Cj4+ICAg
cHViIG1vZCBzdGF0dXM7Cj4+ICAgcHViIG1vZCB0YXBlOwo+PiBAQCAtMjksNiArMzAsNyBAQCBj
b25zdCBTVUJESVJTOiBTdWJkaXJNYXAgPSAmc29ydGVkIShbCj4+ICAgICAgICgibm9kZXMiLCAm
bm9kZTo6Uk9VVEVSKSwKPj4gICAgICAgKCJwaW5nIiwgJnBpbmc6OlJPVVRFUiksCj4+ICAgICAg
ICgicHVsbCIsICZwdWxsOjpST1VURVIpLAo+PiArICAgICgicHVzaCIsICZwdXNoOjpST1VURVIp
LAo+PiAgICAgICAoInJlYWRlciIsICZyZWFkZXI6OlJPVVRFUiksCj4+ICAgICAgICgic3RhdHVz
IiwgJnN0YXR1czo6Uk9VVEVSKSwKPj4gICAgICAgKCJ0YXBlIiwgJnRhcGU6OlJPVVRFUiksCj4+
IGRpZmYgLS1naXQgYS9zcmMvYXBpMi9wdXNoLnJzIGIvc3JjL2FwaTIvcHVzaC5ycwo+PiBuZXcg
ZmlsZSBtb2RlIDEwMDY0NAo+PiBpbmRleCAwMDAwMDAwMDAuLmVhZDJiZjJlMAo+PiAtLS0gL2Rl
di9udWxsCj4+ICsrKyBiL3NyYy9hcGkyL3B1c2gucnMKPj4gQEAgLTAsMCArMSwyMjIgQEAKPj4g
K3VzZSBhbnlob3c6Ontmb3JtYXRfZXJyLCBDb250ZXh0LCBFcnJvcn07Cj4+ICt1c2UgZnV0dXJl
czo6e2Z1dHVyZTo6RnV0dXJlRXh0LCBzZWxlY3R9Owo+PiArdXNlIHRyYWNpbmc6OmluZm87Cj4+
ICsKPj4gK3VzZSBwYnNfYXBpX3R5cGVzOjp7Cj4+ICsgICAgQXV0aGlkLCBCYWNrdXBOYW1lc3Bh
Y2UsIEdyb3VwRmlsdGVyLCBSYXRlTGltaXRDb25maWcsIFN5bmNKb2JDb25maWcsIERBVEFTVE9S
RV9TQ0hFTUEsCj4+ICsgICAgR1JPVVBfRklMVEVSX0xJU1RfU0NIRU1BLCBOU19NQVhfREVQVEhf
UkVEVUNFRF9TQ0hFTUEsIFBSSVZfREFUQVNUT1JFX1JFQUQsCj4+ICsgICAgUFJJVl9SRU1PVEVf
REFUQVNUT1JFX0JBQ0tVUCwgUFJJVl9SRU1PVEVfREFUQVNUT1JFX1BSVU5FLCBSRU1PVEVfSURf
U0NIRU1BLAo+PiArICAgIFJFTU9WRV9WQU5JU0hFRF9CQUNLVVBTX1NDSEVNQSwgVFJBTlNGRVJf
TEFTVF9TQ0hFTUEsCj4+ICt9Owo+PiArdXNlIHByb3htb3hfcmVzdF9zZXJ2ZXI6OldvcmtlclRh
c2s7Cj4+ICt1c2UgcHJveG1veF9yb3V0ZXI6OntQZXJtaXNzaW9uLCBSb3V0ZXIsIFJwY0Vudmly
b25tZW50fTsKPj4gK3VzZSBwcm94bW94X3NjaGVtYTo6YXBpOwo+PiArCj4+ICt1c2UgcGJzX2Nv
bmZpZzo6Q2FjaGVkVXNlckluZm87Cj4+ICsKPj4gK3VzZSBjcmF0ZTo6c2VydmVyOjpwdXNoOjp7
cHVzaF9zdG9yZSwgUHVzaFBhcmFtZXRlcnN9Owo+PiArCj4+ICsvLy8gQ2hlY2sgaWYgdGhlIHBy
b3ZpZGVkIHVzZXIgaXMgYWxsb3dlZCB0byByZWFkIGZyb20gdGhlIGxvY2FsIHNvdXJjZSBhbmQg
YWN0IG9uIHRoZSByZW1vdGUKPj4gKy8vLyB0YXJnZXQgZm9yIHB1c2hpbmcgY29udGVudAo+PiAr
cHViIGZuIGNoZWNrX3B1c2hfcHJpdnMoCj4+ICsgICAgYXV0aF9pZDogJkF1dGhpZCwKPj4gKyAg
ICBzdG9yZTogJnN0ciwKPj4gKyAgICBuYW1lc3BhY2U6IE9wdGlvbjwmc3RyPiwKPiAKPiB3ZSBh
bHJlYWR5IGhhZCB0aGlzIGFzIEJhY2t1cE5hbWVzcGFjZSBiZWxvdwo+IAo+PiArICAgIHJlbW90
ZTogJnN0ciwKPj4gKyAgICByZW1vdGVfc3RvcmU6ICZzdHIsCj4+ICsgICAgcmVtb3RlX25zOiBP
cHRpb248JnN0cj4sCj4gCj4gc2FtZSBoZXJlIC0gd291bGQgaXQgbWFrZSBzZW5zZSB0byBub3Qg
c2VyaWFsaXplIGl0IGJhY2sgZm9yIGNhbGxpbmcKPiB0aGlzIGhlbHBlcj8KClBhc3NpbmcgaW4g
dGhlIGBCYWNrdXBOYW1lc3BhY2VgIG5vdyBmb3Igc291cmNlIGFuZCB0YXJnZXQgbmFtZXNwYWNl
cyAKaGVyZSBhbmQgdXNlIHRoZSBCYWNrdXBOYW1lc3BhY2U6OmFjbF9wYXRoIGFuZCB0aGUgbmV3
bHkgYWRkZWQgCkJhY2t1cE5hbWVzcGFjZTo6cmVtb3RlX2FjbF9wYXRoIGhlbHBlciBmb3IgdGhp
cy4KPiAKPj4gKyAgICBkZWxldGU6IGJvb2wsCj4+ICspIC0+IFJlc3VsdDwoKSwgRXJyb3I+IHsK
Pj4gKyAgICBsZXQgdXNlcl9pbmZvID0gQ2FjaGVkVXNlckluZm86Om5ldygpPzsKPj4gKwo+PiAr
ICAgIGxldCB0YXJnZXRfYWNsX3BhdGggPSBtYXRjaCByZW1vdGVfbnMgewo+PiArICAgICAgICBT
b21lKG5zKSA9PiB2ZWMhWyJyZW1vdGUiLCByZW1vdGUsIHJlbW90ZV9zdG9yZSwgbnNdLAo+PiAr
ICAgICAgICBOb25lID0+IHZlYyFbInJlbW90ZSIsIHJlbW90ZSwgcmVtb3RlX3N0b3JlXSwKPj4g
KyAgICB9Owo+PiArCj4gCj4gdGhlcmUncyBCYWNrdXBOYW1lc3BhY2U6OmFjbF9wYXRoKCkgLi4g
YnV0IG1heWJlIGl0IHdvdWxkIGFsc28gbWFrZQo+IHNlbnNlIHRvIGhhdmUgYSBjb21tb24gaGVs
cGVyIGZvciB0aGlzIGFuZCB0aGUgU3luY0pvYkNvbmZpZyB2YXJpYW50CnNlZSBhYm92ZQoKPiAK
Pj4gKyAgICAvLyBDaGVjayB1c2VyIGlzIGFsbG93ZWQgdG8gYmFja3VwIHRvIHJlbW90ZS88cmVt
b3RlPi88ZGF0YXN0b3JlPi88bmFtZXNwYWNlPgo+PiArICAgIHVzZXJfaW5mby5jaGVja19wcml2
cygKPj4gKyAgICAgICAgYXV0aF9pZCwKPj4gKyAgICAgICAgJnRhcmdldF9hY2xfcGF0aCwKPj4g
KyAgICAgICAgUFJJVl9SRU1PVEVfREFUQVNUT1JFX0JBQ0tVUCwKPj4gKyAgICAgICAgZmFsc2Us
Cj4+ICsgICAgKT87Cj4+ICsKPj4gKyAgICBpZiBkZWxldGUgewo+PiArICAgICAgICAvLyBDaGVj
ayB1c2VyIGlzIGFsbG93ZWQgdG8gcHJ1bmUgcmVtb3RlIGRhdGFzdG9yZQo+PiArICAgICAgICB1
c2VyX2luZm8uY2hlY2tfcHJpdnMoCj4+ICsgICAgICAgICAgICBhdXRoX2lkLAo+PiArICAgICAg
ICAgICAgJnRhcmdldF9hY2xfcGF0aCwKPj4gKyAgICAgICAgICAgIFBSSVZfUkVNT1RFX0RBVEFT
VE9SRV9QUlVORSwKPj4gKyAgICAgICAgICAgIGZhbHNlLAo+PiArICAgICAgICApPzsKPj4gKyAg
ICB9Cj4+ICsKPj4gKyAgICBsZXQgbG9jYWxfYWNsX3BhdGggPSBtYXRjaCBuYW1lc3BhY2Ugewo+
PiArICAgICAgICBTb21lKG5zKSA9PiB2ZWMhWyJkYXRhc3RvcmUiLCBzdG9yZSwgbnNdLAo+PiAr
ICAgICAgICBOb25lID0+IHZlYyFbImRhdGFzdG9yZSIsIHN0b3JlXSwKPj4gKyAgICB9Owo+PiAr
Cj4+ICsgICAgLy8gQ2hlY2sgdXNlciBpcyBhbGxvd2VkIHRvIHJlYWQgc291cmNlIGRhdGFzdG9y
ZQo+PiArICAgIHVzZXJfaW5mby5jaGVja19wcml2cyhhdXRoX2lkLCAmbG9jYWxfYWNsX3BhdGgs
IFBSSVZfREFUQVNUT1JFX1JFQUQsIGZhbHNlKT87Cj4+ICsKPj4gKyAgICBPaygoKSkKPj4gK30K
Pj4gKwo+PiAraW1wbCBUcnlGcm9tPCZTeW5jSm9iQ29uZmlnPiBmb3IgUHVzaFBhcmFtZXRlcnMg
ewo+PiArICAgIHR5cGUgRXJyb3IgPSBFcnJvcjsKPj4gKwo+PiArICAgIGZuIHRyeV9mcm9tKHN5
bmNfam9iOiAmU3luY0pvYkNvbmZpZykgLT4gUmVzdWx0PFNlbGYsIFNlbGY6OkVycm9yPiB7Cj4+
ICsgICAgICAgIFB1c2hQYXJhbWV0ZXJzOjpuZXcoCj4+ICsgICAgICAgICAgICAmc3luY19qb2Iu
c3RvcmUsCj4+ICsgICAgICAgICAgICBzeW5jX2pvYi5ucy5jbG9uZSgpLnVud3JhcF9vcl9kZWZh
dWx0KCksCj4+ICsgICAgICAgICAgICBzeW5jX2pvYgo+PiArICAgICAgICAgICAgICAgIC5yZW1v
dGUKPj4gKyAgICAgICAgICAgICAgICAuYXNfZGVyZWYoKQo+PiArICAgICAgICAgICAgICAgIC5j
b250ZXh0KCJtaXNzaW5nIHJlcXVpcmVkIHJlbW90ZSIpPywKPj4gKyAgICAgICAgICAgICZzeW5j
X2pvYi5yZW1vdGVfc3RvcmUsCj4+ICsgICAgICAgICAgICBzeW5jX2pvYi5yZW1vdGVfbnMuY2xv
bmUoKS51bndyYXBfb3JfZGVmYXVsdCgpLAo+PiArICAgICAgICAgICAgc3luY19qb2IKPj4gKyAg
ICAgICAgICAgICAgICAub3duZXIKPj4gKyAgICAgICAgICAgICAgICAuYXNfcmVmKCkKPj4gKyAg
ICAgICAgICAgICAgICAudW53cmFwX29yX2Vsc2UofHwgQXV0aGlkOjpyb290X2F1dGhfaWQoKSkK
Pj4gKyAgICAgICAgICAgICAgICAuY2xvbmUoKSwKPj4gKyAgICAgICAgICAgIHN5bmNfam9iLnJl
bW92ZV92YW5pc2hlZCwKPj4gKyAgICAgICAgICAgIHN5bmNfam9iLm1heF9kZXB0aCwKPj4gKyAg
ICAgICAgICAgIHN5bmNfam9iLmdyb3VwX2ZpbHRlci5jbG9uZSgpLAo+PiArICAgICAgICAgICAg
c3luY19qb2IubGltaXQuY2xvbmUoKSwKPj4gKyAgICAgICAgICAgIHN5bmNfam9iLnRyYW5zZmVy
X2xhc3QsCj4+ICsgICAgICAgICkKPj4gKyAgICB9Cj4+ICt9Cj4+ICsKPj4gKyNbYXBpKAo+PiAr
ICAgIGlucHV0OiB7Cj4+ICsgICAgICAgIHByb3BlcnRpZXM6IHsKPj4gKyAgICAgICAgICAgIHN0
b3JlOiB7Cj4+ICsgICAgICAgICAgICAgICAgc2NoZW1hOiBEQVRBU1RPUkVfU0NIRU1BLAo+PiAr
ICAgICAgICAgICAgfSwKPj4gKyAgICAgICAgICAgIG5zOiB7Cj4+ICsgICAgICAgICAgICAgICAg
dHlwZTogQmFja3VwTmFtZXNwYWNlLAo+PiArICAgICAgICAgICAgICAgIG9wdGlvbmFsOiB0cnVl
LAo+PiArICAgICAgICAgICAgfSwKPj4gKyAgICAgICAgICAgIHJlbW90ZTogewo+PiArICAgICAg
ICAgICAgICAgIHNjaGVtYTogUkVNT1RFX0lEX1NDSEVNQSwKPj4gKyAgICAgICAgICAgIH0sCj4+
ICsgICAgICAgICAgICAicmVtb3RlLXN0b3JlIjogewo+PiArICAgICAgICAgICAgICAgIHNjaGVt
YTogREFUQVNUT1JFX1NDSEVNQSwKPj4gKyAgICAgICAgICAgIH0sCj4+ICsgICAgICAgICAgICAi
cmVtb3RlLW5zIjogewo+PiArICAgICAgICAgICAgICAgIHR5cGU6IEJhY2t1cE5hbWVzcGFjZSwK
Pj4gKyAgICAgICAgICAgICAgICBvcHRpb25hbDogdHJ1ZSwKPj4gKyAgICAgICAgICAgIH0sCj4+
ICsgICAgICAgICAgICAicmVtb3ZlLXZhbmlzaGVkIjogewo+PiArICAgICAgICAgICAgICAgIHNj
aGVtYTogUkVNT1ZFX1ZBTklTSEVEX0JBQ0tVUFNfU0NIRU1BLAo+PiArICAgICAgICAgICAgICAg
IG9wdGlvbmFsOiB0cnVlLAo+PiArICAgICAgICAgICAgfSwKPj4gKyAgICAgICAgICAgICJtYXgt
ZGVwdGgiOiB7Cj4+ICsgICAgICAgICAgICAgICAgc2NoZW1hOiBOU19NQVhfREVQVEhfUkVEVUNF
RF9TQ0hFTUEsCj4+ICsgICAgICAgICAgICAgICAgb3B0aW9uYWw6IHRydWUsCj4+ICsgICAgICAg
ICAgICB9LAo+PiArICAgICAgICAgICAgImdyb3VwLWZpbHRlciI6IHsKPj4gKyAgICAgICAgICAg
ICAgICBzY2hlbWE6IEdST1VQX0ZJTFRFUl9MSVNUX1NDSEVNQSwKPj4gKyAgICAgICAgICAgICAg
ICBvcHRpb25hbDogdHJ1ZSwKPj4gKyAgICAgICAgICAgIH0sCj4+ICsgICAgICAgICAgICBsaW1p
dDogewo+PiArICAgICAgICAgICAgICAgIHR5cGU6IFJhdGVMaW1pdENvbmZpZywKPj4gKyAgICAg
ICAgICAgICAgICBmbGF0dGVuOiB0cnVlLAo+PiArICAgICAgICAgICAgfSwKPj4gKyAgICAgICAg
ICAgICJ0cmFuc2Zlci1sYXN0Ijogewo+PiArICAgICAgICAgICAgICAgIHNjaGVtYTogVFJBTlNG
RVJfTEFTVF9TQ0hFTUEsCj4+ICsgICAgICAgICAgICAgICAgb3B0aW9uYWw6IHRydWUsCj4+ICsg
ICAgICAgICAgICB9LAo+PiArICAgICAgICB9LAo+PiArICAgIH0sCj4+ICsgICAgYWNjZXNzOiB7
Cj4+ICsgICAgICAgIGRlc2NyaXB0aW9uOiByIyMjIlRoZSB1c2VyIG5lZWRzIFJlbW90ZS5CYWNr
dXAgcHJpdmlsZWdlIG9uICcvcmVtb3RlL3tyZW1vdGV9L3tyZW1vdGUtc3RvcmV9Jwo+PiArYW5k
IG5lZWRzIHRvIG93biB0aGUgYmFja3VwIGdyb3VwLiBEYXRhc3RvcmUuUmVhZCBpcyByZXF1aXJl
ZCBvbiAnL2RhdGFzdG9yZS97c3RvcmV9Jy4KPj4gK1RoZSBkZWxldGUgZmxhZyBhZGRpdGlvbmFs
bHkgcmVxdWlyZXMgdGhlIFJlbW90ZS5QcnVuZSBwcml2aWxlZ2Ugb24gJy9yZW1vdGUve3JlbW90
ZX0ve3JlbW90ZS1zdG9yZX0nLgo+PiArIiMjIywKPj4gKyAgICAgICAgcGVybWlzc2lvbjogJlBl
cm1pc3Npb246OkFueWJvZHksCj4+ICsgICAgfSwKPj4gKyldCj4+ICsvLy8gUHVzaCBzdG9yZSB0
byBvdGhlciByZXBvc2l0b3J5Cj4+ICsjW2FsbG93KGNsaXBweTo6dG9vX21hbnlfYXJndW1lbnRz
KV0KPj4gK2FzeW5jIGZuIHB1c2goCj4+ICsgICAgc3RvcmU6IFN0cmluZywKPj4gKyAgICBuczog
T3B0aW9uPEJhY2t1cE5hbWVzcGFjZT4sCj4+ICsgICAgcmVtb3RlOiBTdHJpbmcsCj4+ICsgICAg
cmVtb3RlX3N0b3JlOiBTdHJpbmcsCj4+ICsgICAgcmVtb3RlX25zOiBPcHRpb248QmFja3VwTmFt
ZXNwYWNlPiwKPj4gKyAgICByZW1vdmVfdmFuaXNoZWQ6IE9wdGlvbjxib29sPiwKPj4gKyAgICBt
YXhfZGVwdGg6IE9wdGlvbjx1c2l6ZT4sCj4+ICsgICAgZ3JvdXBfZmlsdGVyOiBPcHRpb248VmVj
PEdyb3VwRmlsdGVyPj4sCj4+ICsgICAgbGltaXQ6IFJhdGVMaW1pdENvbmZpZywKPj4gKyAgICB0
cmFuc2Zlcl9sYXN0OiBPcHRpb248dXNpemU+LAo+PiArICAgIHJwY2VudjogJm11dCBkeW4gUnBj
RW52aXJvbm1lbnQsCj4+ICspIC0+IFJlc3VsdDxTdHJpbmcsIEVycm9yPiB7Cj4+ICsgICAgbGV0
IGF1dGhfaWQ6IEF1dGhpZCA9IHJwY2Vudi5nZXRfYXV0aF9pZCgpLnVud3JhcCgpLnBhcnNlKCk/
Owo+PiArICAgIGxldCBkZWxldGUgPSByZW1vdmVfdmFuaXNoZWQudW53cmFwX29yKGZhbHNlKTsK
Pj4gKwo+PiArICAgIGxldCBucyA9IG5zLnVud3JhcF9vcl9kZWZhdWx0KCk7Cj4+ICsgICAgbGV0
IHNvdXJjZV9uYW1lc3BhY2UgPSBpZiAhbnMuaXNfcm9vdCgpIHsKPj4gKyAgICAgICAgU29tZShu
cy50b19zdHJpbmcoKSkKPj4gKyAgICB9IGVsc2Ugewo+PiArICAgICAgICBOb25lCj4+ICsgICAg
fTsKPiAKPiB3ZSdkIHNhdmUgb3Vyc2VsdmVzIHRoaXMKPiAKPj4gKwo+PiArICAgIGxldCByZW1v
dGVfbnMgPSByZW1vdGVfbnMudW53cmFwX29yX2RlZmF1bHQoKTsKPj4gKyAgICBsZXQgcmVtb3Rl
X25hbWVzcGFjZSA9IGlmICFyZW1vdGVfbnMuaXNfcm9vdCgpIHsKPj4gKyAgICAgICAgU29tZShu
cy50b19zdHJpbmcoKSkKPj4gKyAgICB9IGVsc2Ugewo+PiArICAgICAgICBOb25lCj4+ICsgICAg
fTsKPiAKPiBhbmQgdGhpcwo+IAo+PiArCj4+ICsgICAgY2hlY2tfcHVzaF9wcml2cygKPj4gKyAg
ICAgICAgJmF1dGhfaWQsCj4+ICsgICAgICAgICZzdG9yZSwKPj4gKyAgICAgICAgc291cmNlX25h
bWVzcGFjZS5hc19kZXJlZigpLAo+PiArICAgICAgICAmcmVtb3RlLAo+PiArICAgICAgICAmcmVt
b3RlX3N0b3JlLAo+PiArICAgICAgICByZW1vdGVfbmFtZXNwYWNlLmFzX2RlcmVmKCksCj4+ICsg
ICAgICAgIGRlbGV0ZSwKPj4gKyAgICApPzsKPj4gKwo+PiArICAgIGxldCBwdXNoX3BhcmFtcyA9
IFB1c2hQYXJhbWV0ZXJzOjpuZXcoCj4+ICsgICAgICAgICZzdG9yZSwKPj4gKyAgICAgICAgbnMs
Cj4+ICsgICAgICAgICZyZW1vdGUsCj4+ICsgICAgICAgICZyZW1vdGVfc3RvcmUsCj4+ICsgICAg
ICAgIHJlbW90ZV9ucywKPj4gKyAgICAgICAgYXV0aF9pZC5jbG9uZSgpLAo+PiArICAgICAgICBy
ZW1vdmVfdmFuaXNoZWQsCj4+ICsgICAgICAgIG1heF9kZXB0aCwKPj4gKyAgICAgICAgZ3JvdXBf
ZmlsdGVyLAo+PiArICAgICAgICBsaW1pdCwKPj4gKyAgICAgICAgdHJhbnNmZXJfbGFzdCwKPj4g
KyAgICApPzsKPj4gKwo+PiArICAgIGxldCB1cGlkX3N0ciA9IFdvcmtlclRhc2s6OnNwYXduKAo+
PiArICAgICAgICAic3luYyIsCj4+ICsgICAgICAgIFNvbWUoc3RvcmUuY2xvbmUoKSksCj4+ICsg
ICAgICAgIGF1dGhfaWQudG9fc3RyaW5nKCksCj4+ICsgICAgICAgIHRydWUsCj4+ICsgICAgICAg
IG1vdmUgfHdvcmtlcnwgYXN5bmMgbW92ZSB7Cj4+ICsgICAgICAgICAgICBpbmZvISgicHVzaCBk
YXRhc3RvcmUgJ3tzdG9yZX0nIHRvICd7cmVtb3RlfS97cmVtb3RlX3N0b3JlfSciKTsKPj4gKwo+
PiArICAgICAgICAgICAgbGV0IHB1c2hfZnV0dXJlID0gcHVzaF9zdG9yZShwdXNoX3BhcmFtcyk7
Cj4+ICsgICAgICAgICAgICAoc2VsZWN0ISB7Cj4+ICsgICAgICAgICAgICAgICAgc3VjY2VzcyA9
IHB1c2hfZnV0dXJlLmZ1c2UoKSA9PiBzdWNjZXNzLAo+PiArICAgICAgICAgICAgICAgIGFib3J0
ID0gd29ya2VyLmFib3J0X2Z1dHVyZSgpLm1hcCh8X3wgRXJyKGZvcm1hdF9lcnIhKCJwdXNoIGFi
b3J0ZWQiKSkpID0+IGFib3J0LAo+PiArICAgICAgICAgICAgfSk/Owo+PiArCj4+ICsgICAgICAg
ICAgICBpbmZvISgicHVzaCBkYXRhc3RvcmUgJ3tzdG9yZX0nIGVuZCIpOwo+PiArCj4+ICsgICAg
ICAgICAgICBPaygoKSkKPj4gKyAgICAgICAgfSwKPj4gKyAgICApPzsKPj4gKwo+PiArICAgIE9r
KHVwaWRfc3RyKQo+PiArfQo+PiArCj4+ICtwdWIgY29uc3QgUk9VVEVSOiBSb3V0ZXIgPSBSb3V0
ZXI6Om5ldygpLnBvc3QoJkFQSV9NRVRIT0RfUFVTSCk7Cj4+IC0tIAo+PiAyLjM5LjUKPj4KPj4K
Pj4KPj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPj4g
cGJzLWRldmVsIG1haWxpbmcgbGlzdAo+PiBwYnMtZGV2ZWxAbGlzdHMucHJveG1veC5jb20KPj4g
aHR0cHM6Ly9saXN0cy5wcm94bW94LmNvbS9jZ2ktYmluL21haWxtYW4vbGlzdGluZm8vcGJzLWRl
dmVsCj4+Cj4+Cj4+Cj4gCj4gCj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX18KPiBwYnMtZGV2ZWwgbWFpbGluZyBsaXN0Cj4gcGJzLWRldmVsQGxpc3RzLnBy
b3htb3guY29tCj4gaHR0cHM6Ly9saXN0cy5wcm94bW94LmNvbS9jZ2ktYmluL21haWxtYW4vbGlz
dGluZm8vcGJzLWRldmVsCj4gCj4gCgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fCnBicy1kZXZlbCBtYWlsaW5nIGxpc3QKcGJzLWRldmVsQGxpc3RzLnBy
b3htb3guY29tCmh0dHBzOi8vbGlzdHMucHJveG1veC5jb20vY2dpLWJpbi9tYWlsbWFuL2xpc3Rp
bmZvL3Bicy1kZXZlbAo=