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 41A6C1FF183 for ; Wed, 3 Dec 2025 11:22:08 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 0CA3965E9; Wed, 3 Dec 2025 11:22:33 +0100 (CET) From: Samuel Rufinatscha To: pbs-devel@lists.proxmox.com Date: Wed, 3 Dec 2025 11:22:09 +0100 Message-ID: <20251203102217.59923-1-s.rufinatscha@proxmox.com> X-Mailer: git-send-email 2.47.3 MIME-Version: 1.0 X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1764757300191 X-SPAM-LEVEL: Spam detection results: 0 AWL -1.340 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_BADIPHTTP 2 Due to the Storm Bot Network, IPs in emails is bad KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment NUMERIC_HTTP_ADDR 1.242 Uses a numeric IP address in URL SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record WEIRD_PORT 0.001 Uses non-standard port number for HTTP Subject: [pbs-devel] [PATCH proxmox{-backup, } v4 0/8] fix #6939: acme: support servers returning 204 for nonce requests 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" SGksCgp0aGlzIHNlcmllcyBmaXhlcyBhY2NvdW50IHJlZ2lzdHJhdGlvbiBmb3IgQUNNRSBwcm92 aWRlcnMgdGhhdCByZXR1cm4KSFRUUCAyMDQgTm8gQ29udGVudCB0byB0aGUgbmV3Tm9uY2UgcmVx dWVzdC4gQ3VycmVudGx5LCBib3RoIHRoZSBQQlMKQUNNRSBjbGllbnQgYW5kIHRoZSBzaGFyZWQg QUNNRSBjbGllbnQgaW4gcHJveG1veC1hY21lIG9ubHkgYWNjZXB0CkhUVFAgMjAwIE9LIGZvciB0 aGlzIHJlcXVlc3QuIFRoZSBpc3N1ZSB3YXMgb2JzZXJ2ZWQgaW4gUEJTIGFnYWluc3QgYQpjdXN0 b20gQUNNRSBkZXBsb3ltZW50IGFuZCByZXBvcnRlZCBhcyBidWcgIzY5MzkgWzFdLgoKIyMgUHJv YmxlbQoKRHVyaW5nIEFDTUUgYWNjb3VudCByZWdpc3RyYXRpb24sIFBCUyBmaXJzdCBmZXRjaGVz IGFuIGFudGktcmVwbGF5Cm5vbmNlIGJ5IHNlbmRpbmcgYSBIRUFEIHJlcXVlc3QgdG8gdGhlIENB 4oCZcyBuZXdOb25jZSBVUkwuClJGQyA4NTU1IMKnNy4yIFsyXSBzdGF0ZXMgdGhhdDoKCiogdGhl IHNlcnZlciBNVVNUIGluY2x1ZGUgYSBSZXBsYXktTm9uY2UgaGVhZGVyIHdpdGggYSBmcmVzaCBu b25jZSwKKiB0aGUgc2VydmVyIFNIT1VMRCB1c2Ugc3RhdHVzIDIwMCBPSyBmb3IgdGhlIEhFQUQg cmVxdWVzdCwKKiB0aGUgc2VydmVyIE1VU1QgYWxzbyBoYW5kbGUgR0VUIG9uIHRoZSBzYW1lIHJl c291cmNlIGFuZCBtYXkgcmV0dXJuCiAgMjA0IE5vIENvbnRlbnQgd2l0aCBhbiBlbXB0eSBib2R5 LgoKVGhlIHJlcG9ydGVyIG9ic2VydmVkIHRoZSBmb2xsb3dpbmcgZXJyb3IgbWVzc2FnZToKCiAg KkFDTUUgc2VydmVyIHJlc3BvbmRlZCB3aXRoIHVuZXhwZWN0ZWQgc3RhdHVzIGNvZGU6IDIwNCoK CmFuZCBtZW50aW9uZWQgdGhhdCB0aGUgaXNzdWUgZGlkIG5vdCBhcHBlYXIgd2l0aCBQVkUgOSBb MV0uIExvb2tpbmcgYXQKUFZF4oCZcyBQZXJsIEFDTUUgY2xpZW50IFszXSwgaXQgdXNlcyBhIEdF VCByZXF1ZXN0IGluc3RlYWQgb2YgSEVBRCBhbmQKYWNjZXB0cyBhbnkgMnh4IHN1Y2Nlc3MgY29k ZSB3aGVuIHJldHJpZXZpbmcgdGhlIG5vbmNlLiBUaGlzIGRpZmZlcmVuY2UKaW4gYmVoYXZpb3Ig ZG9lcyBub3QgYWZmZWN0IGZ1bmN0aW9uYWxpdHkgYnV0IGlzIHdvcnRoIG5vdGluZyBmb3IKY29u c2lzdGVuY3kgYWNyb3NzIGltcGxlbWVudGF0aW9ucy4KCiMjIEFwcHJvYWNoCgpUbyBzdXBwb3J0 IEFDTUUgcHJvdmlkZXJzIHdoaWNoIHJldHVybiAyMDQgTm8gQ29udGVudCwgdGhlIFJ1c3QgQUNN RQpjbGllbnRzIGluIHByb3htb3gtYmFja3VwIGFuZCBwcm94bW94IG5lZWQgdG8gdHJlYXQgYm90 aCAyMDAgT0sgYW5kIDIwNApObyBDb250ZW50IGFzIHZhbGlkIHJlc3BvbnNlcyBmb3IgdGhlIG5v bmNlIHJlcXVlc3QsIGFzIGxvbmcgYXMgYQpSZXBsYXktTm9uY2UgaGVhZGVyIGlzIHByZXNlbnQu CgpUaGlzIHNlcmllcyBjaGFuZ2VzIHRoZSBleHBlY3RlZCBmaWVsZCBvZiB0aGUgaW50ZXJuYWwg UmVxdWVzdCB0eXBlCmZyb20gYSBzaW5nbGUgdTE2IHRvIGEgbGlzdCBvZiBhbGxvd2VkIHN0YXR1 cyBjb2RlcwooZS5nLiAmJ3N0YXRpYyBbdTE2XSksIHNvIG9uZSByZXF1ZXN0IGNhbiBleHBsaWNp dGx5IGFjY2VwdCBtdWx0aXBsZQpzdWNjZXNzIGNvZGVzLgoKVG8gYXZvaWQgZml4aW5nIHRoZSBp c3N1ZSB0d2ljZSAob25jZSBpbiBQQlPigJkgb3duIEFDTUUgY2xpZW50IGFuZCBvbmNlCmluIHRo ZSBzaGFyZWQgUnVzdCBjbGllbnQpLCB0aGlzIHNlcmllcyBmaXJzdCByZWZhY3RvcnMgUEJTIHRv IHVzZSB0aGUKc2hhcmVkIEFjbWVDbGllbnQgZnJvbSBwcm94bW94LWFjbWUgLyBwcm94bW94LWFj bWUtYXBpLCBzaW1pbGFyIHRvIFBETSwKYW5kIHRoZW4gYXBwbGllcyB0aGUgYnVnIGZpeCBpbiB0 aGF0IHNoYXJlZCBpbXBsZW1lbnRhdGlvbiBzbyB0aGF0IGFsbApjb25zdW1lcnMgYmVuZWZpdCBm cm9tIHRoZSBtb3JlIHRvbGVyYW50IGJlaGF2aW9yLgoKIyMgVGVzdGluZwoKKlRlc3RpbmcgdGhl IHJlZmFjdG9yKgoKVG8gdGVzdCB0aGUgcmVmYWN0b3IsIEkKKDEpIGluc3RhbGxlZCBsYXRlc3Qg c3RhYmxlIFBCUyBvbiBhIFZNCigyKSBjcmVhdGVkIC5kZWIgcGFja2FnZSBmcm9tIGxhdGVzdCBQ QlMgKG1hc3RlciksIGNvbnRhaW5pbmcgdGhlCiByZWZhY3RvcgooMykgaW5zdGFsbGVkIGNyZWF0 ZWQgLmRlYiBwYWNrYWdlCig0KSBpbnN0YWxsZWQgUGViYmxlIGZyb20gTGV0J3MgRW5jcnlwdCBb NV0gb24gdGhlIHNhbWUgVk0KKDUpIGNyZWF0ZWQgYW4gQUNNRSBhY2NvdW50IGFuZCBvcmRlcmVk IHRoZSBuZXcgY2VydGlmaWNhdGUgZm9yIHRoZQogaG9zdCBkb21haW4uCgpTdGVwcyB0byByZXBy b2R1Y2U6CgooMSkgaW5zdGFsbCBsYXRlc3Qgc3RhYmxlIFBCUyBvbiBhIFZNLCBjcmVhdGUgLmRl YiBwYWNrYWdlIGZyb20gbGF0ZXN0CiBQQlMgKG1hc3RlcikgY29udGFpbmluZyB0aGUgcmVmYWN0 b3IsIGluc3RhbGwgY3JlYXRlZCAuZGViIHBhY2thZ2UKKDIpIGluc3RhbGwgUGViYmxlIGZyb20g TGV0J3MgRW5jcnlwdCBbNV0gb24gdGhlIHNhbWUgVk06CgogICAgY2QKICAgIGFwdCB1cGRhdGUK ICAgIGFwdCBpbnN0YWxsIC15IGdvbGFuZyBnaXQKICAgIGdpdCBjbG9uZSBodHRwczovL2dpdGh1 Yi5jb20vbGV0c2VuY3J5cHQvcGViYmxlCiAgICBjZCBwZWJibGUKICAgIGdvIGJ1aWxkIC4vY21k L3BlYmJsZQoKdGhlbiwgZG93bmxvYWQgYW5kIHRydXN0IHRoZSBQZWJibGUgY2VydDoKCiAgICB3 Z2V0IGh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9sZXRzZW5jcnlwdC9wZWJibGUv bWFpbi90ZXN0L2NlcnRzL3BlYmJsZS5taW5pY2EucGVtCiAgICBjcCBwZWJibGUubWluaWNhLnBl bSAvdXNyL2xvY2FsL3NoYXJlL2NhLWNlcnRpZmljYXRlcy9wZWJibGUubWluaWNhLmNydAogICAg dXBkYXRlLWNhLWNlcnRpZmljYXRlcwoKV2Ugd2FudCBQZWJibGUgdG8gcGVyZm9ybSBIVFRQLTAx IHZhbGlkYXRpb24gYWdhaW5zdCBwb3J0IDgwLCBiZWNhdXNlClBCU+KAmXMgc3RhbmRhbG9uZSBw bHVnaW4gd2lsbCBiaW5kIHBvcnQgODAuIFNldCBodHRwUG9ydCB0byA4MC4KCiAgICBuYW5vIC4v dGVzdC9jb25maWcvcGViYmxlLWNvbmZpZy5qc29uCgpTdGFydCB0aGUgUGViYmxlIHNlcnZlciBp biB0aGUgYmFja2dyb3VuZDoKCiAgICAuL3BlYmJsZSAtY29uZmlnIC4vdGVzdC9jb25maWcvcGVi YmxlLWNvbmZpZy5qc29uICYKCkNyZWF0ZSBhIFBlYmJsZSBBQ01FIGFjY291bnQ6CgogICAgcHJv eG1veC1iYWNrdXAtbWFuYWdlciBhY21lIGFjY291bnQgcmVnaXN0ZXIgZGVmYXVsdCBhZG1pbkBl eGFtcGxlLmNvbSAtLWRpcmVjdG9yeSAnaHR0cHM6Ly8xMjcuMC4wLjE6MTQwMDAvZGlyJwoKVG8g dmVyaWZ5IHBlcnNpc3RlbmNlIG9mIHRoZSBhY2NvdW50IEkgY2hlY2tlZAoKICAgIGxzIC9ldGMv cHJveG1veC1iYWNrdXAvYWNtZS9hY2NvdW50cwoKVmVyaWZpZWQgaWYgdXBkYXRlLWFjY291bnQg d29ya3MKCiAgICBwcm94bW94LWJhY2t1cC1tYW5hZ2VyIGFjbWUgYWNjb3VudCB1cGRhdGUgZGVm YXVsdCAtLWNvbnRhY3QgImFAZXhhbXBsZS5jb20sYkBleGFtcGxlLmNvbSIKICAgIHByb3htb3gt YmFja3VwLW1hbmFnZXIgYWNtZSBhY2NvdW50IGluZm8gZGVmYXVsdAoKSW4gdGhlIFBCUyBHVUks IHlvdSBjYW4gY3JlYXRlIGEgbmV3IGRvbWFpbi4gWW91IGNhbiB1c2UgeW91ciBob3N0CmRvbWFp biBuYW1lIChzZWUgL2V0Yy9ob3N0cykuIFNlbGVjdCB0aGUgY3JlYXRlZCBhY2NvdW50IGFuZCBv cmRlciB0aGUKY2VydGlmaWNhdGUuCgpBZnRlciBhIHBhZ2UgcmVsb2FkLCB5b3UgbWlnaHQgbmVl ZCB0byBhY2NlcHQgdGhlIG5ldyBjZXJ0aWZpY2F0ZSBpbiB0aGUgYnJvd3Nlci4KSW4gdGhlIFBC UyBkYXNoYm9hcmQsIHlvdSBzaG91bGQgc2VlIHRoZSBuZXcgUGViYmxlIGNlcnRpZmljYXRlLgoK Kk5vdGU6IG9uIHJlYm9vdCwgdGhlIGNyZWF0ZWQgUGViYmxlIEFDTUUgYWNjb3VudCB3aWxsIGJl IGdvbmUgYW5kIHlvdQp3aWxsIG5lZWQgdG8gY3JlYXRlIGEgbmV3IG9uZS4gUGViYmxlIGRvZXMg bm90IHBlcnNpc3QgYWNjb3VudCBpbmZvLgpJbiB0aGF0IGNhc2UgcmVtb3ZlIHRoZSBwcmV2aW91 c2x5IGNyZWF0ZWQgYWNjb3VudCBpbgovZXRjL3Byb3htb3gtYmFja3VwL2FjbWUvYWNjb3VudHMu CgoqVGVzdGluZyB0aGUgbmV3Tm9uY2UgZml4KgoKVG8gcHJvdmUgdGhlIEFDTUUgbmV3Tm9uY2Ug Zml4LCBJIHB1dCBuZ2lueCBpbiBmcm9udCBvZiBQZWJibGUsIHRvCmludGVyY2VwdCB0aGUgbmV3 Tm9uY2UgcmVxdWVzdCBpbiBvcmRlciB0byByZXR1cm4gMjA0IE5vIENvbnRlbnQKaW5zdGVhZCBv ZiAyMDAgT0ssIGFsbCBvdGhlciByZXF1ZXN0cyBhcmUgdW5jaGFuZ2VkIGFuZCBmb3J3YXJkZWQg dG8KUGViYmxlLiBSZXF1aXJlcyB0cnVzdGluZyB0aGUgbmdpbnggQ0FzIHZpYQovdXNyL2xvY2Fs L3NoYXJlL2NhLWNlcnRpZmljYXRlcyArIHVwZGF0ZS1jYS1jZXJ0aWZpY2F0ZXMgb24gdGhlIFZN LgoKVGhlbiBJIHJhbiBmb2xsb3dpbmcgY29tbWFuZCBhZ2FpbnN0IG5naW54OgoKcHJveG1veC1i YWNrdXAtbWFuYWdlciBhY21lIGFjY291bnQgcmVnaXN0ZXIgcHJveHl0ZXN0IHJvb3RAYmFja3Vw LmxvY2FsIC0tZGlyZWN0b3J5ICdodHRwczovL25naW54LWFkZHJlc3MvZGlyCgpUaGUgYWNjb3Vu dCBjb3VsZCBiZSBjcmVhdGVkIHN1Y2Nlc3NmdWxseS4gV2hlbiBhZGp1c3RpbmcgdGhlIG5naW54 CmNvbmZpZ3VyYXRpb24gdG8gcmV0dXJuIGFueSBvdGhlciBub24tZXhwZWN0ZWQgc3VjY2VzcyBz dGF0dXMgY29kZSwKUEJTIHJlamVjdHMgYXMgZXhwZWN0ZWQuCgojIyBQYXRjaCBzdW1tYXJ5Cgow MDAxIOKAkyBhY21lOiBpbmNsdWRlIHByb3htb3gtYWNtZS1hcGkgZGVwZW5kZW5jeQogQWRkcyBw cm94bW94LWFjbWUtYXBpIGFzIGEgbmV3IGRlcGVuZGVuY3kgZm9yIHRoZSBBQ01FIGNvZGUuIFRo aXMKIHByZXBhcmVzIHRoZSBjb2RlYmFzZSB0byB1c2UgdGhlIHNoYXJlZCBBQ01FIEFQSSBpbnN0 ZWFkIG9mIGxvY2FsCiBpbXBsZW1lbnRhdGlvbnMuCgowMDAyIOKAkyBhY21lOiBkcm9wIGxvY2Fs IEFjbWVDbGllbnQKIFJlbW92ZXMgdGhlIGxvY2FsIEFjbWVDbGllbnQgaW1wbGVtZW50YXRpb24u IE1pbmltYWwgY2hhbmdlcwogcmVxdWlyZWQgdG8gc3VwcG9ydCB0aGUgcmVtb3ZhbC4KCjAwMDMg 4oCTIGFjbWU6IGNoYW5nZSBBUEkgaW1wbHMgdG8gdXNlIHByb3htb3gtYWNtZS1hcGkgaGFuZGxl cgogVXBkYXRlcyBleGlzdGluZyBBQ01FIEFQSSBpbXBsZW1lbnRhdGlvbnMgdG8gdXNlIHRoZSBo YW5kbGVycyBwcm92aWRlZAogYnkgcHJveG1veC1hY21lLWFwaS4KCjAwMDQg4oCTIGFjbWU6IGNl cnRpZmljYXRlIG9yZGVyaW5nIHRocm91Z2ggcHJveG1veC1hY21lLWFwaQogUGVyZm9ybSBjZXJ0 aWZpY2F0ZSBvcmRlcmluZyB0aHJvdWdoIHByb3htb3gtYWNtZS1hcGkgaW5zdGVhZCBvZiBsb2Nh bAogbG9naWMuCgowMDA1IOKAkyBhY21lIGFwaTogYWRkIGhlbHBlciB0byBsb2FkIGNsaWVudCBm b3IgYW4gYWNjb3VudAogSW50cm9kdWNlcyBhIGhlbHBlciBmdW5jdGlvbiB0byBsb2FkIGFuIEFD TUUgY2xpZW50IGluc3RhbmNlIGZvciBhCiBnaXZlbiBhY2NvdW50LiBSZXF1aXJlZCBmb3IgdGhl IFBCUyByZWZhY3Rvci4KCjAwMDYg4oCTIGFjbWU6IHJlZHVjZSB2aXNpYmlsaXR5IG9mIFJlcXVl c3QgdHlwZQogUmVzdHJpY3RzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBpbnRlcm5hbCBSZXF1ZXN0 IHR5cGUuCgowMDA3IOKAkyBhY21lOiBpbnRyb2R1Y2UgaHR0cF9zdGF0dXMgbW9kdWxlCiBBZGRz IGEgZGVkaWNhdGVkIGh0dHBfc3RhdHVzIG1vZHVsZSBmb3IgaGFuZGxpbmcgY29tbW9uIEhUVFAg c3RhdHVzCiBjb2Rlcy4KCjAwMDgg4oCTIGZpeCAjNjkzOTogYWNtZTogc3VwcG9ydCBzZXJ2ZXJz IHJldHVybmluZyAyMDQgZm9yIG5vbmNlCiBBZGp1c3RzIG5vbmNlIGhhbmRsaW5nIHRvIHN1cHBv cnQgQUNNRSBzZXJ2ZXJzIHRoYXQgcmV0dXJuIEhUVFAgMjA0CiAoTm8gQ29udGVudCkgZm9yIG5l dy1ub25jZSByZXF1ZXN0cy4KClRoYW5rcyBmb3IgY29uc2lkZXJpbmcgdGhpcyBwYXRjaCBzZXJp ZXMsIEkgbG9vayBmb3J3YXJkIHRvIHlvdXIKZmVlZGJhY2suCgpCZXN0LApTYW11ZWwgUnVmaW5h dHNjaGEKCiMjIENoYW5nZWxvZwoKQ2hhbmdlcyBmcm9tIHYzIHRvIHY0OgoKUmVtb3ZlZDogW1BB VENIIHByb3htb3gtYmFja3VwIHYzIDEvMV0uCgpBZGRlZDoKCltQQVRDSCBwcm94bW94LWJhY2t1 cCB2NCAxLzRdIGFjbWU6IGluY2x1ZGUgcHJveG1veC1hY21lLWFwaSBkZXBlbmRlbmN5CiAgICAq IE5ldzogYWRkIHByb3htb3gtYWNtZS1hcGkgYXMgYSBkZXBlbmRlbmN5IGFuZCBpbml0aWFsaXpl IGl0IGluCiAgICAgIFBCUyBzbyBQQlMgY2FuIHVzZSB0aGUgc2hhcmVkIEFDTUUgQVBJIGluc3Rl YWQuCgpbUEFUQ0ggcHJveG1veC1iYWNrdXAgdjQgMi80XSBhY21lOiBkcm9wIGxvY2FsIEFjbWVD bGllbnQKICAgICogTmV3OiByZW1vdmUgdGhlIFBCUy1sb2NhbCBBY21lQ2xpZW50IGltcGxlbWVu dGF0aW9uIGFuZCBzd2l0Y2ggUEJTCiAgICAgIG92ZXIgdG8gdGhlIHNoYXJlZCBwcm94bW94LWFj bWUgYXN5bmMgY2xpZW50LgoKW1BBVENIIHByb3htb3gtYmFja3VwIHY0IDMvNF0gYWNtZTogY2hh bmdlIEFQSSBpbXBscyB0byB1c2UgcHJveG1veC1hY21lLWFwaQpoYW5kbGVycwogICAgKiBOZXc6 IHJld29yayBQQlPigJkgQUNNRSBBUEkgZW5kcG9pbnRzIHRvIGRlbGVnYXRlIHRvCiAgICAgIHBy b3htb3gtYWNtZS1hcGkgaGFuZGxlcnMgaW5zdGVhZCBvZiBkdXBsaWNhdGluZyBsb2dpYyBsb2Nh bGx5LgoKW1BBVENIIHByb3htb3gtYmFja3VwIHY0IDQvNF0gYWNtZTogY2VydGlmaWNhdGUgb3Jk ZXJpbmcgdGhyb3VnaApwcm94bW94LWFjbWUtYXBpCiAgICAqIE5ldzogbW92ZSBQQlPigJkgQUNN RSBjZXJ0aWZpY2F0ZSBvcmRlcmluZyBsb2dpYyBvdmVyIHRvCiAgICAgIHByb3htb3gtYWNtZS1h cGksIGtlZXBpbmcgb25seSBjZXJ0aWZpY2F0ZSBpbnN0YWxsYXRpb24vcmVsb2FkIGluCiAgICAg IFBCUy4KCltQQVRDSCBwcm94bW94IHY0IDEvNF0gYWNtZS1hcGk6IGFkZCBoZWxwZXIgdG8gbG9h ZCBjbGllbnQgZm9yIGFuIGFjY291bnQKICAgICogTmV3OiBhZGQgYSBsb2FkX2NsaWVudF93aXRo X2FjY291bnQgaGVscGVyIGluIHByb3htb3gtYWNtZS1hcGkgc28KICAgICAgUEJTIChhbmQgb3Ro ZXJzKSBjYW4gY29uc3RydWN0IGFuIEFjbWVDbGllbnQgZm9yIGEgY29uZmlndXJlZCBhY2NvdW50 CiAgICAgIHdpdGhvdXQgZHVwbGljYXRpbmcgYm9pbGVycGxhdGUuCgpbUEFUQ0ggcHJveG1veCB2 NCAyLzRdIGFjbWU6IHJlZHVjZSB2aXNpYmlsaXR5IG9mIFJlcXVlc3QgdHlwZQogICAgKiBOZXc6 IGhpZGUgdGhlIGxvdy1sZXZlbCBSZXF1ZXN0IHR5cGUgYW5kIGl0cyBmaWVsZHMgYmVoaW5kCiAg ICAgIGNvbnN0cnVjdG9ycyAvIHJlZHVjZWQgdmlzaWJpbGl0eSBzbyBjaGFuZ2VzIHRvIOKAnGV4 cGVjdGVk4oCdIG5vIGxvbmdlcgogICAgICBhZmZlY3QgdGhlIHB1YmxpYyBBUEkgYXMgdGhleSBk aWQgaW4gdjMuCgpbUEFUQ0ggcHJveG1veCB2NCAzLzRdIGFjbWU6IGludHJvZHVjZSBodHRwX3N0 YXR1cyBtb2R1bGUKICAgICogTmV3OiBzcGxpdCBvdXQgdGhlIEhUVFAgc3RhdHVzIGNvbnN0YW50 cyBpbnRvIGFuIGludGVybmFsCiAgICAgIGh0dHBfc3RhdHVzIG1vZHVsZSBhcyBhIHNlcGFyYXRl IHByZXBhcmF0b3J5IGNsZWFudXAgYmVmb3JlIHRoZSBidWcKICAgICAgZml4LCBpbnN0ZWFkIG9m IGRvaW5nIHRoaXMgaW5saW5lIGxpa2UgaW4gdjMuCgpDaGFuZ2VkOgoKW1BBVENIIHByb3htb3gg djMgMS8xXSAtPiBbUEFUQ0ggcHJveG1veCB2NCA0LzRdCmZpeCAjNjkzOTogYWNtZTogc3VwcG9y dCBzZXJ2ZXIgcmV0dXJuaW5nIDIwNCBmb3Igbm9uY2UgcmVxdWVzdHMKICAgICogUmViYXNlZCBv biB0b3Agb2YgdGhlIHJlZmFjdG9yOiBrZWVwIHRoZSBzYW1lIGJlaGF2aW91cmFsIGZpeCBhcyBp biB2MwogICAgICAoYWNjZXB0IDIwNCBmb3IgbmV3Tm9uY2Ugd2l0aCBSZXBsYXktTm9uY2UgcHJl c2VudCksIGJ1dCBpbXBsZW1lbnQgaXQKICAgICAgb24gdG9wIG9mIHRoZSBodHRwX3N0YXR1cyBt b2R1bGUgdGhhdCBpcyBwYXJ0IG9mIHRoZSByZWZhY3Rvci4KCkNoYW5nZXMgZnJvbSB2MiB0byB2 MzoKCltQQVRDSCBwcm94bW94IHYzIDEvMV0gZml4ICM2OTM5OiBzdXBwb3J0IHByb3ZpZGVycyBy ZXR1cm5pbmcgMjA0IGZvciBub25jZQpyZXF1ZXN0cwogICAgKiBSZW5hbWUgYGh0dHBfc3VjY2Vz c2AgbW9kdWxlIHRvIGBodHRwX3N0YXR1c2AKCltQQVRDSCBwcm94bW94LWJhY2t1cCB2MyAxLzFd IGFjbWU6IGFjY2VwdCBIVFRQIDIwNCBmcm9tIG5ld05vbmNlIGVuZHBvaW50CiAgICAqIFJlcGxh Y2UgYGh0dHBfc3VjY2Vzc2AgdXNhZ2UKCkNoYW5nZXMgZnJvbSB2MSB0byB2MjoKCltQQVRDSCBw cm94bW94IHYyIDEvMV0gZml4ICM2OTM5OiBzdXBwb3J0IHByb3ZpZGVycyByZXR1cm5pbmcgMjA0 IGZvciBub25jZQpyZXF1ZXN0cwogICAgKiBJbnRyb2R1Y2VkIGBodHRwX3N1Y2Nlc3NgIG1vZHVs ZSB0byBjb250YWluIHRoZSBodHRwIHN1Y2Nlc3MgY29kZXMKICAgICogUmVwbGFjZWQgYFZlYzx1 MTY+YCB3aXRoIGAmW3UxNl1gIGZvciBleHBlY3RlZCBjb2RlcyB0byBhdm9pZAogICAgICBhbGxv Y2F0aW9ucy4KICAgICogQ2xhcmlmaWVkIHRoZSBQVkVzIFBlcmwgQUNNRSBjbGllbnQgYmVoYXZp b3VyIGluIHRoZSBjb21taXQgbWVzc2FnZS4KCltQQVRDSCBwcm94bW94LWJhY2t1cCB2MiAxLzFd IGFjbWU6IGFjY2VwdCBIVFRQIDIwNCBmcm9tIG5ld05vbmNlIGVuZHBvaW50CiAgICAqIEludGVn cmF0ZWQgdGhlIGBodHRwX3N1Y2Nlc3NgIG1vZHVsZSwgcmVwbGFjaW5nIGBWZWM8dTE2PmAgd2l0 aCBgJlt1MTZdYAogICAgKiBDbGFyaWZpZWQgdGhlIFBWRXMgUGVybCBBQ01FIGNsaWVudCBiZWhh dmlvdXIgaW4gdGhlIGNvbW1pdCBtZXNzYWdlLgoKWzFdIEJ1Z3ppbGxhIHJlcG9ydCAjNjkzOToK W2h0dHBzOi8vYnVnemlsbGEucHJveG1veC5jb20vc2hvd19idWcuY2dpP2lkPTY5MzldKGh0dHBz Oi8vYnVnemlsbGEucHJveG1veC5jb20vc2hvd19idWcuY2dpP2lkPTY5MzkpClsyXSBSRkMgODU1 NSAoQUNNRSk6CltodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL3JmYzg1NTUv I3NlY3Rpb24tNy4yXShodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL3JmYzg1 NTUvI3NlY3Rpb24tNy4yKQpbM10gUFZF4oCZcyBQZXJsIEFDTUUgY2xpZW50IChhbGxvdyAyeHgg Y29kZXMgZm9yIG5vbmNlIHJlcXVlc3RzKToKW2h0dHBzOi8vZ2l0LnByb3htb3guY29tLz9wPXBy b3htb3gtYWNtZS5naXQ7YT1ibG9iO2Y9c3JjL1BWRS9BQ01FLnBtO2g9ZjFlOWJiN2QzMTZlM2Nl YTFlMzc2YzYxMGIwNDc5MTE5MjE3YWVjYztoYj1IRUFEI2w1OTddKGh0dHBzOi8vZ2l0LnByb3ht b3guY29tLz9wPXByb3htb3gtYWNtZS5naXQ7YT1ibG9iO2Y9c3JjL1BWRS9BQ01FLnBtO2g9ZjFl OWJiN2QzMTZlM2NlYTFlMzc2YzYxMGIwNDc5MTE5MjE3YWVjYztoYj1IRUFEI2w1OTcpCls0XSBQ ZWJibGUgQUNNRSBzZXJ2ZXI6CltodHRwczovL2dpdGh1Yi5jb20vbGV0c2VuY3J5cHQvcGViYmxl XShodHRwczovL2dpdGh1Yi5jb20vbGV0c2VuY3J5cHQvcGViYmxlKQpbNV0gUGViYmxlIEFDTUUg c2VydmVyIChwZXJmb3JtIEdFVCByZXF1ZXN0OgpbaHR0cHM6Ly9naXQucHJveG1veC5jb20vP3A9 cHJveG1veC1hY21lLmdpdDthPWJsb2I7Zj1zcmMvUFZFL0FDTUUucG07aD1mMWU5YmI3ZDMxNmUz Y2VhMWUzNzZjNjEwYjA0NzkxMTkyMTdhZWNjO2hiPUhFQUQjbDIxOV0oaHR0cHM6Ly9naXQucHJv eG1veC5jb20vP3A9cHJveG1veC1hY21lLmdpdDthPWJsb2I7Zj1zcmMvUFZFL0FDTUUucG07aD1m MWU5YmI3ZDMxNmUzY2VhMWUzNzZjNjEwYjA0NzkxMTkyMTdhZWNjO2hiPUhFQUQjbDIxOSkKCnBy b3htb3gtYmFja3VwOgoKU2FtdWVsIFJ1ZmluYXRzY2hhICg0KToKICBhY21lOiBpbmNsdWRlIHBy b3htb3gtYWNtZS1hcGkgZGVwZW5kZW5jeQogIGFjbWU6IGRyb3AgbG9jYWwgQWNtZUNsaWVudAog IGFjbWU6IGNoYW5nZSBBUEkgaW1wbHMgdG8gdXNlIHByb3htb3gtYWNtZS1hcGkgaGFuZGxlcnMK ICBhY21lOiBjZXJ0aWZpY2F0ZSBvcmRlcmluZyB0aHJvdWdoIHByb3htb3gtYWNtZS1hcGkKCiBD YXJnby50b21sICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMyArCiBzcmMvYWNtZS9j bGllbnQucnMgICAgICAgICAgICAgICAgICAgICB8IDY5MSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCiBzcmMvYWNtZS9tb2QucnMgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNSAtCiBzcmMv YWNtZS9wbHVnaW4ucnMgICAgICAgICAgICAgICAgICAgICB8IDMzNiAtLS0tLS0tLS0tLS0KIHNy Yy9hcGkyL2NvbmZpZy9hY21lLnJzICAgICAgICAgICAgICAgIHwgNDA3ICsrLS0tLS0tLS0tLS0t LQogc3JjL2FwaTIvbm9kZS9jZXJ0aWZpY2F0ZXMucnMgICAgICAgICAgfCAyNDAgKystLS0tLS0t CiBzcmMvYXBpMi90eXBlcy9hY21lLnJzICAgICAgICAgICAgICAgICB8ICA5OCAtLS0tCiBzcmMv YXBpMi90eXBlcy9tb2QucnMgICAgICAgICAgICAgICAgICB8ICAgMyAtCiBzcmMvYmluL3Byb3ht b3gtYmFja3VwLWFwaS5ycyAgICAgICAgICB8ICAgMiArCiBzcmMvYmluL3Byb3htb3gtYmFja3Vw LW1hbmFnZXIucnMgICAgICB8ICAgMiArCiBzcmMvYmluL3Byb3htb3gtYmFja3VwLXByb3h5LnJz ICAgICAgICB8ICAgMSArCiBzcmMvYmluL3Byb3htb3hfYmFja3VwX21hbmFnZXIvYWNtZS5ycyB8 ICAyMSArLQogc3JjL2NvbmZpZy9hY21lL21vZC5ycyAgICAgICAgICAgICAgICAgfCAgNTEgKy0K IHNyYy9jb25maWcvYWNtZS9wbHVnaW4ucnMgICAgICAgICAgICAgIHwgIDk5ICstLS0KIHNyYy9j b25maWcvbm9kZS5ycyAgICAgICAgICAgICAgICAgICAgIHwgIDI5ICstCiBzcmMvbGliLnJzICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiAtCiAxNiBmaWxlcyBjaGFuZ2VkLCAxMDMg aW5zZXJ0aW9ucygrKSwgMTg4NyBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmMv YWNtZS9jbGllbnQucnMKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmMvYWNtZS9tb2QucnMKIGRlbGV0 ZSBtb2RlIDEwMDY0NCBzcmMvYWNtZS9wbHVnaW4ucnMKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmMv YXBpMi90eXBlcy9hY21lLnJzCgoKcHJveG1veDoKClNhbXVlbCBSdWZpbmF0c2NoYSAoNCk6CiAg YWNtZS1hcGk6IGFkZCBoZWxwZXIgdG8gbG9hZCBjbGllbnQgZm9yIGFuIGFjY291bnQKICBhY21l OiByZWR1Y2UgdmlzaWJpbGl0eSBvZiBSZXF1ZXN0IHR5cGUKICBhY21lOiBpbnRyb2R1Y2UgaHR0 cF9zdGF0dXMgbW9kdWxlCiAgZml4ICM2OTM5OiBhY21lOiBzdXBwb3J0IHNlcnZlcnMgcmV0dXJu aW5nIDIwNCBmb3Igbm9uY2UgcmVxdWVzdHMKCiBwcm94bW94LWFjbWUtYXBpL3NyYy9hY2NvdW50 X2FwaV9pbXBsLnJzIHwgIDUgKysrKysKIHByb3htb3gtYWNtZS1hcGkvc3JjL2xpYi5ycyAgICAg ICAgICAgICAgfCAgMyArKy0KIHByb3htb3gtYWNtZS9zcmMvYWNjb3VudC5ycyAgICAgICAgICAg ICAgfCAyNyArKysrKysrKysrKysrLS0tLS0tLS0tLS0KIHByb3htb3gtYWNtZS9zcmMvYXN5bmNf Y2xpZW50LnJzICAgICAgICAgfCAgOCArKystLS0tCiBwcm94bW94LWFjbWUvc3JjL2F1dGhvcml6 YXRpb24ucnMgICAgICAgIHwgIDIgKy0KIHByb3htb3gtYWNtZS9zcmMvY2xpZW50LnJzICAgICAg ICAgICAgICAgfCAgOCArKystLS0tCiBwcm94bW94LWFjbWUvc3JjL2xpYi5ycyAgICAgICAgICAg ICAgICAgIHwgIDYgKystLS0tCiBwcm94bW94LWFjbWUvc3JjL29yZGVyLnJzICAgICAgICAgICAg ICAgIHwgIDIgKy0KIHByb3htb3gtYWNtZS9zcmMvcmVxdWVzdC5ycyAgICAgICAgICAgICAgfCAy NSArKysrKysrKysrKysrKystLS0tLS0tCiA5IGZpbGVzIGNoYW5nZWQsIDUxIGluc2VydGlvbnMo KyksIDM1IGRlbGV0aW9ucygtKQoKClN1bW1hcnkgb3ZlciBhbGwgcmVwb3NpdG9yaWVzOgogIDI1 IGZpbGVzIGNoYW5nZWQsIDE1NCBpbnNlcnRpb25zKCspLCAxOTIyIGRlbGV0aW9ucygtKQoKLS0g CkdlbmVyYXRlZCBieSBnaXQtbXVycHAgMC44LjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpwYnMtZGV2ZWwgbWFpbGluZyBsaXN0CnBicy1kZXZlbEBs aXN0cy5wcm94bW94LmNvbQpodHRwczovL2xpc3RzLnByb3htb3guY29tL2NnaS1iaW4vbWFpbG1h bi9saXN0aW5mby9wYnMtZGV2ZWwK