[From nobody Tue Oct  6 15:41:09 2026
Received: (at submit) by bugs.debian.org; 15 Sep 2026 16:42:14 +0000
X-Spam-Checker-Version: SpamAssassin 4.0.1-bugs.debian.org_2005_01_02
 (2024-03-25) on buxtehude.debian.org
X-Spam-Level: 
X-Spam-Status: No, score=-3.5 required=4.0 tests=BAYES_00,DKIMWL_WL_HIGH,
 DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FOURLA,HTML_MESSAGE,
 RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS
 autolearn=no autolearn_force=no
 version=4.0.1-bugs.debian.org_2005_01_02
X-Spam-Bayes: score:0.0000 Tokens: new, 90; hammy, 150; neutral, 262; spammy,
 0. spammytokens: hammytokens:0.000-+--H*F:D*canonical.com,
 0.000-+--H*rp:D*canonical.com, 0.000-+--UD:ubuntu.com,
 0.000-+--sk:autopkg, 0.000-+--UD:log.gz
Return-path: &lt;max.gilmour@canonical.com&gt;
Received: from smtp-relay-internal-0.canonical.com ([185.125.188.122]:39300)
 by buxtehude.debian.org with esmtps
 (TLS1.3:ECDHE_X25519__RSA_PSS_RSAE_SHA256__AES_256_GCM:256)
 (Exim 4.96) (envelope-from &lt;max.gilmour@canonical.com&gt;)
 id 1x6WEV-007R9I-2j for submit@bugs.debian.org;
 Tue, 15 Sep 2026 16:42:14 +0000
Received: from mail-ed1-f72.google.com (mail-ed1-f72.google.com
 [209.85.208.72])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (No client certificate requested)
 by smtp-relay-internal-0.canonical.com (Postfix) with ESMTPS id B14603F471
 for &lt;submit@bugs.debian.org&gt;; Tue, 15 Sep 2026 16:42:08 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com;
 s=20251003; t=1789490528;
 bh=JvqVwmKP0T0B+jrmozvUvUJuEBEv/yePdkUdHbWNktM=;
 h=MIME-Version:From:Date:Message-ID:Subject:To:Content-Type;
 b=WPZQ9mlPrTE7R0k4Dlpe1qbTjrP8o+dRBPUmDKxeSa7HgxniokZc4pkXcFchjIYnx
 afrjmPZVs9F/x2CN/EKGUjMSzUacKARpXy6uGJTnjmrNZMtxOYrd4UhHtsxjPEMiYm
 VX0fnJVUnMtv1C0atKJUqagB0zg4aDfnBJjQBbZRlEZ+ZmsYDdC7TLGeRSXLewwsmU
 AWpmOLUDIMdj69GxRiNVTXpoOHY5iLFxXZt1yk+oFmXXHv72jaDpsRCBzMFVkIg0E/
 jzyioQ4O6VZ+YRWS3UOCWYOHIKAnPU7hpbilwDhlIN5XZeZyzZGLLqArNlzkGzCQXx
 I2ObfT3LizO6jS80HhtaZ2k+0GItJY63zDoqkTzk7oOSGO/EYZ7jYDTW7L69eIaxKz
 eYAX/kyi/MWPeZqg3mbuQoCOg6alwG/y2ktviHELXZ83pwxl5nUSjc2RvVFNiS7VyI
 xpnlVUR7jZKn/nN/gSyyCAEWAtJLA7xOOtVmAjri5d/O0wku9Hc0+kFe9wZr5uxYwE
 iuauC2p+R2Dw8eItnJk3MdhR6w1e1QHnWoQhOLZpAAjtpxzex4Lgbi5Aa3J/o3mrEn
 lLOWK8p8Cf6/hyhaIQHaHKElXcfpBeF+Tac2aTXBAcVpo2aAI2KfuUPIVq0e/ST3XH
 iBdimILBdixeLhP4OHkP3pnI=
Received: by mail-ed1-f72.google.com with SMTP id
 4fb4d7f45d1cf-6a91d818528so5376238a12.3
 for &lt;submit@bugs.debian.org&gt;; Tue, 15 Sep 2026 09:42:08 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1789490528; cv=none;
 d=google.com; s=arc-20260327;
 b=dDwlUkXF3YIk1jyXt/3wOJ2qqqGjV6vFzaURgxe4B7rOh6LUnH9CJMat8QTcbLM3eC
 KNpfi5/Qy7vi0nVwQJrCrejs0TBP0gjOUVN/n7ldpJLz3afMNP6NfTmr25hvIb9ZiJ6R
 mDBiJ5dPThj7SEbKylPnE9zWlcxsv+SwR6aAP3X/pxYh37WUje7o7W+a4mg2wRpAqlxx
 5sxxV7V8y8MCg1/eal4k9UFCyDCLh1/yPpiCTJUPMVgW4/mUvLyQXueSLzS2dtl7qoYT
 hld2Kmw9jgPkdSULJN3NBoxpCStOVD52jd9bsjUNvv5LhxFD4Mj6pIJSWwLBt4zkk9Tn
 lgYw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;
 s=arc-20260327; 
 h=to:subject:message-id:date:from:mime-version;
 bh=JvqVwmKP0T0B+jrmozvUvUJuEBEv/yePdkUdHbWNktM=;
 fh=lIR/7veID2U00tj1D35G+ANF85YwqTAbTuNH/WGncTs=;
 b=CEL37bqOCFEcBZAl3gFjXrog7uOtYojAbOwFF0bXNMJ5PXVjykZUVXERKdWeC1sbWq
 nLhNrAMBOt4o/PTN3cZ7B1b4rwiYxeBGnIUkN+1yAxAcqSEovM42NeWNEXn6Z4+USP2y
 daIUcHiUvWGGOVjbZ0jXB/J2hgyTa2n9o3t9L946r6jwDz4Ti7TdVCHM/41GvTdl7uc/
 xaM0xyc7W4K+0DiupvqkFGE3Os1hnrKHIO/ZCLMFG4fgJt9EiTEzDs629sF1aAWRr4Fm
 KlZLv8VdeHUoXXpIvycn2GF6Mo/snaKu26q+V05xdeWi3Ft25B4pyf3EobQ9gM9iRjpf
 lfnQ==; darn=bugs.debian.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20260707; t=1789490528; x=1790095328;
 h=content-type:to:subject:message-id:date:from:mime-version:x-gm-gg
 :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to
 :content-type;
 bh=JvqVwmKP0T0B+jrmozvUvUJuEBEv/yePdkUdHbWNktM=;
 b=p4bGJtqFJUaWiIqhcs42P+Bi1QZpjhQvlIP0N0BBEtxSF1No3lAYxnldwGUVuCZXEJ
 qdshnIrGGcEJkbGWVHtTrrCR5lIYxOUPO7Wd8f1jmCH08gxIL1w4Q7j4KIUzp8aijQBv
 Uhe5TuJbiszzbuLTUZRWbqgodzhF8QELA0R5Ih7EADrOjpYJ5jjW8TVTADfQsSsMLGG9
 T87ZgRZAPsXTBlH+lSfLtQleWJuVSKB8YFawnyRx2lcZuKXtiO/9BaazV+sm2QqaZMEj
 6KNN6Zpa8wE1k6oGRH5EEzVmxp21lnnVfs36waXlDwqSx6fQ+BbxS26VGWOtZHyBQz6S
 QoMQ==
X-Gm-Message-State: AFuF++mhnZBwmTk3phQC2YMTq9CQ6nik9dMGMRS4mD/gUCHMI3M+AEcc
 bEG0ZqvvKWDyFVH0bS/P2HrZein9FLQFzQ/up+7CIM0CpT8CN4vIqWfH3g9OOmmmovyl+A4ATru
 fOTZRRnT5imPh9xQm0EZQw6WkQBAiLcuJQdjkmr2P01qmWAdtudjuxBrLvclDTxCg84+/nla7ex
 GYXbH1r8ci/6qJPHC0tMbodJ2WuNATT9RnwlgmQXttaUcAGj26+UwjSWrNyw8=
X-Gm-Gg: AYBFou2bxEfszgPoPB+YfBeB2YX5dF9ISfuxom85zTNQJx6rxK27ynIxvvu2R8pN539
 piKoJJhzGR1C4zWlseVwVqAAtY/I5vAO0rL48jDGchu4GgvJ0aQwjnzaJmj0HgWxGnmFyxImNoM
 FPf4suNYkHtEKkEL9Y/NLu06kCs/NyF6PBptl2OZcJzVTw2YSbU7HLmdw=
X-Received: by 2002:a05:6402:324f:b0:6a9:a0ab:d470 with SMTP id
 4fb4d7f45d1cf-6a9f63d1633mr4354724a12.26.1789490527640; 
 Tue, 15 Sep 2026 09:42:07 -0700 (PDT)
X-Received: by 2002:a05:6402:324f:b0:6a9:a0ab:d470 with SMTP id
 4fb4d7f45d1cf-6a9f63d1633mr4354708a12.26.1789490527231; Tue, 15 Sep 2026
 09:42:07 -0700 (PDT)
MIME-Version: 1.0
From: Max Gilmour &lt;max.gilmour@canonical.com&gt;
Date: Tue, 15 Sep 2026 09:41:55 -0700
X-Gm-Features: AcwNN1UPBus-AUwnfw_bwjjMgbW3VV7nH97dMkKEo_jeu1J4h4eT8_r4158qn6o
Message-ID: &lt;CALYDzCMQVOaNDtyxD=mxDA5YmGupKe9kRhrRPh=_=BHqAd5MKg@mail.gmail.com&gt;
Subject: rust-tracing-core: Niche optimization assumption will fail for newer
 Rust
To: submit@bugs.debian.org
Content-Type: multipart/mixed; boundary=&quot;00000000000034a8f6065b883b5c&quot;
Delivered-To: submit@bugs.debian.org

--00000000000034a8f6065b883b5c
Content-Type: multipart/alternative; boundary=&quot;00000000000034a8f5065b883b5a&quot;

--00000000000034a8f5065b883b5a
Content-Type: text/plain; charset=&quot;UTF-8&quot;

Source: rust-tracing-core
Version: 0.1.36-1
Severity: normal
Tags: patch upstream

Dear rust-tracing-core maintainers,

Currently, rust-tracing-core assumes that Rust niche optimization[1]
remains the
same, even though Rust makes no such guarantee. As of Rust 1.97, this
hardcoded
assumption is no longer true, meaning that the
metadata::tests::level_filter_reprs
test will break[2]:

167s ---- metadata::tests::level_filter_reprs stdout ----
167s
167s thread 'metadata::tests::level_filter_reprs' (5315) panicked at
src/metadata.rs:1119:13:
167s assertion `left == right` failed: repr changed for LevelFilter::OFF
167s left: 5
167s right: 18446744073709551615
167s stack backtrace:
167s 0: __rustc::rust_begin_unwind
167s at /usr/src/rustc-1.97.1/library/std/src/panicking.rs:689:5
167s 1: core::panicking::panic_fmt
167s at /usr/src/rustc-1.97.1/library/core/src/panicking.rs:80:14
167s 2: core::panicking::assert_failed_inner
167s at /usr/src/rustc-1.97.1/library/core/src/panicking.rs:434:23
167s 3: core::panicking::assert_failed::&lt;usize, usize&gt;
167s at /usr/src/rustc-1.97.1/library/core/src/panicking.rs:394:5
167s 4: tracing_core::metadata::tests::level_filter_reprs
167s at ./src/metadata.rs:1119:13
167s 5: tracing_core::metadata::tests::level_filter_reprs::{closure#0}
167s at ./src/metadata.rs:1102:28
167s 6: &lt;tracing_core::metadata::tests::level_filter_reprs::{closure#0} as
core::ops::function::FnOnce&lt;()&gt;&gt;::call_once
167s at /usr/src/rustc-1.97.1/library/core/src/ops/function.rs:250:5
167s 7: &lt;fn() -&gt; core::result::Result&lt;(), alloc::string::String&gt; as
core::ops::function::FnOnce&lt;()&gt;&gt;::call_once
167s at /usr/src/rustc-1.97.1/library/core/src/ops/function.rs:250:5
167s note: Some details are omitted, run with `RUST_BACKTRACE=full` for a
verbose backtrace.

Naturally, this bug will not impact Debian until Rust is updated to 1.97.
However, it is affecting Ubuntu and being tracked as LP: #2167368.

I have attached a patch which cherry-picks the upstream fix[3]. The fix
makes it so the crate works with all Rust versions past the MSRV -- I
successfully ran all tests with both 1.93.1 and 1.97.1, and I verified that
the package builds against Debian unstable.

Please let me know if you need anything else.

Best wishes,

Max

[1]: https://www.0xatticus.com/posts/understanding_rust_niche/
[2]:
https://autopkgtest.ubuntu.com/results/autopkgtest-stonking/stonking/amd64/r/rust-tracing-core/20260912_123714_a8bc3@/log.gz

[3]: https://github.com/tokio-rs/tracing/pull/3537

--00000000000034a8f5065b883b5a
Content-Type: text/html; charset=&quot;UTF-8&quot;
Content-Transfer-Encoding: quoted-printable

&lt;div dir=3D&quot;ltr&quot;&gt;&lt;p&gt;Source: rust-tracing-core&lt;br&gt;Version: 0.1.36-1&lt;br&gt;Sever=
ity: normal&lt;br&gt;Tags: patch upstream&lt;br&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;Dear rust-tracing-core ma=
intainers,&lt;/p&gt;&lt;p&gt;Currently, rust-tracing-core assumes that Rust niche optim=
ization[1] remains the&lt;br&gt;
same, even though Rust makes no such guarantee. As of Rust 1.97, this hardc=
oded&lt;br&gt;
assumption is no longer true, meaning that the metadata::tests::level_filte=
r_reprs&lt;br&gt;
test will break[2]:&lt;/p&gt;
&lt;p&gt;167s ---- metadata::tests::level_filter_reprs stdout ----&lt;br&gt;
167s&lt;br&gt;
167s thread &#39;metadata::tests::level_filter_reprs&#39; (5315) panicked a=
t src/metadata.rs:1119:13:&lt;br&gt;
167s assertion `left =3D=3D right` failed: repr changed for LevelFilter::OF=
F&lt;br&gt;
167s   left: 5&lt;br&gt;
167s  right: 18446744073709551615&lt;br&gt;
167s stack backtrace:&lt;br&gt;
167s    0: __rustc::rust_begin_unwind&lt;br&gt;
167s              at /usr/src/rustc-1.97.1/library/std/src/panicking.rs:689=
:5&lt;br&gt;
167s    1: core::panicking::panic_fmt&lt;br&gt;
167s              at /usr/src/rustc-1.97.1/library/core/src/panicking.rs:80=
:14&lt;br&gt;
167s    2: core::panicking::assert_failed_inner&lt;br&gt;
167s              at /usr/src/rustc-1.97.1/library/core/src/panicking.rs:43=
4:23&lt;br&gt;
167s    3: core::panicking::assert_failed::&lt;usize, usize&gt;&lt;br&gt;
167s              at /usr/src/rustc-1.97.1/library/core/src/panicking.rs:39=
4:5&lt;br&gt;
167s    4: tracing_core::metadata::tests::level_filter_reprs&lt;br&gt;
167s              at ./src/metadata.rs:1119:13&lt;br&gt;
167s    5: tracing_core::metadata::tests::level_filter_reprs::{closure#0}&lt;b=
r&gt;
167s              at ./src/metadata.rs:1102:28&lt;br&gt;
167s    6: &lt;tracing_core::metadata::tests::level_filter_reprs::{closure#=
0} as core::ops::function::FnOnce&lt;()&gt;&gt;::call_once&lt;br&gt;
167s              at /usr/src/rustc-1.97.1/library/core/src/ops/function.rs=
:250:5&lt;br&gt;
167s    7: &lt;fn() -&gt; core::result::Result&lt;(), alloc::string::String=
&gt; as core::ops::function::FnOnce&lt;()&gt;&gt;::call_once&lt;br&gt;
167s              at /usr/src/rustc-1.97.1/library/core/src/ops/function.rs=
:250:5&lt;br&gt;
167s note: Some details are omitted, run with `RUST_BACKTRACE=3Dfull` for a=
 verbose backtrace.&lt;/p&gt;&lt;p&gt;Naturally, this bug will not impact Debian until =
Rust is updated to 1.97. However, it is affecting Ubuntu and being tracked =
as LP: #2167368.&lt;/p&gt;&lt;p&gt;I have attached a patch which cherry-picks the upstr=
eam fix[3]. The fix makes it so the crate works with all Rust versions past=
 the MSRV -- I successfully ran all tests with both 1.93.1 and 1.97.1, and =
I verified that the package builds against Debian unstable.&lt;/p&gt;&lt;p&gt;Please le=
t me know if you need anything else.&lt;/p&gt;&lt;p&gt;Best wishes,&lt;/p&gt;&lt;p&gt;Max&lt;/p&gt;&lt;p&gt;[1]=
: &lt;a rel=3D&quot;nofollow&quot; href=3D&quot;https://www.0xatticus.com/posts/understanding=
_rust_niche/&quot;&gt;https://www.0xatticus.com/posts/understanding_rust_niche/&lt;/a&gt;=
&lt;br&gt;
[2]: &lt;a rel=3D&quot;nofollow&quot; href=3D&quot;https://autopkgtest.ubuntu.com/results/aut=
opkgtest-stonking/stonking/amd64/r/rust-tracing-core/20260912_123714_a8bc3@=
/log.gz&quot;&gt;https://autopkgtest.ubuntu.com/results/autopkgtest-stonking/stonki=
ng/amd64/r/rust-tracing-core/20260912_123714_a8bc3@/log.gz&lt;/a&gt;&lt;/p&gt;&lt;p&gt;[3]:=
=C2=A0&lt;a href=3D&quot;https://github.com/tokio-rs/tracing/pull/3537&quot;&gt;https://git=
hub.com/tokio-rs/tracing/pull/3537&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;

--00000000000034a8f5065b883b5a--

--00000000000034a8f6065b883b5c
Content-Type: text/x-patch; charset=&quot;US-ASCII&quot;; name=&quot;dynamic-niche.patch&quot;
Content-Disposition: attachment; filename=&quot;dynamic-niche.patch&quot;
Content-Transfer-Encoding: base64
Content-ID: &lt;f_mu2wddvz0&gt;
X-Attachment-Id: f_mu2wddvz0

RGVzY3JpcHRpb246IEdldCBMZXZlbEZpbHRlcjo6T0ZGIG5pY2hlIHJlcHJlc2VudGF0aW9uIGR5
bmFtaWNhbGx5CiBEZXRlcm1pbmluZyB0aGUgdmFsdWUgZm9yIGBPcHRpb246Ok5vbmVgIGF0IGNv
bXBpbGUgdGltZSB2aWEgYSB1bmlvbgogdHJhbnNtdXRlIGVuc3VyZXMgdGhhdCB3ZSBhbHdheXMg
bWF0Y2ggdGhlIGV4YWN0IHJlcHJlc2VudGF0aW9uCiBzZWxlY3RlZCBieSB0aGUgY29tcGlsZXIn
cyBuaWNoZSBvcHRpbWl6YXRpb24gZm9yIGBMZXZlbEZpbHRlcmAgb24gYW55CiBSdXN0IHZlcnNp
b24uIFRoZSBuaWNoZSBvcHRpbWl6YXRpb24gY2hhbmdlZCBpbiBSdXN0IDEuOTcuCiAuCiBUaGlz
IHBhdGNoIGhhcyBiZWVuIGNoZXJyeS1waWNrZWQgZnJvbSB1cHN0cmVhbSB0byB1bmJsb2NrIHRo
ZSBSdXN0CiAxLjk3IHRyYW5zaXRpb24uIEl0IGNhbiBiZSBkcm9wcGVkIG9uY2Ugd2UgZ2V0IGFu
IHVwc3RyZWFtIHRyYWNpbmctY29yZQogdmVyc2lvbiB3aGljaCBjb250YWlucyB0aGUgZml4LgpB
dXRob3I6IEF1Z2llIEZhY2tsZXIgPHJhZkBkdXJpbjQyLmNvbT4KT3JpZ2luOiB1cHN0cmVhbSwg
aHR0cHM6Ly9naXRodWIuY29tL3Rva2lvLXJzL3RyYWNpbmcvcHVsbC8zNTM3LmRpZmYKQnVnOiBo
dHRwczovL2dpdGh1Yi5jb20vdG9raW8tcnMvdHJhY2luZy9wdWxsLzM1MzcKQnVnLVVidW50dTog
aHR0cHM6Ly9idWdzLmxhdW5jaHBhZC5uZXQvYnVncy8yMTY3MzY4Ci0tLQotLS0gYS9zcmMvbWV0
YWRhdGEucnMKKysrIGIvc3JjL21ldGFkYXRhLnJzCkBAIC02NzcsMTIgKzY3NywxMyBAQAogICAg
IGNvbnN0IElORk9fVVNJWkU6IHVzaXplID0gTGV2ZWxJbm5lcjo6SW5mbyBhcyB1c2l6ZTsKICAg
ICBjb25zdCBERUJVR19VU0laRTogdXNpemUgPSBMZXZlbElubmVyOjpEZWJ1ZyBhcyB1c2l6ZTsK
ICAgICBjb25zdCBUUkFDRV9VU0laRTogdXNpemUgPSBMZXZlbElubmVyOjpUcmFjZSBhcyB1c2l6
ZTsKLSAgICAvLyBVc2luZyB0aGUgdmFsdWUgb2YgdGhlIGxhc3QgdmFyaWFudCArIDEgZW5zdXJl
cyB0aGF0IHdlIG1hdGNoIHRoZSB2YWx1ZQotICAgIC8vIGZvciBgT3B0aW9uOjpOb25lYCBhcyBz
ZWxlY3RlZCBieSB0aGUgbmljaGUgb3B0aW1pemF0aW9uIGZvcgotICAgIC8vIGBMZXZlbEZpbHRl
cmAuIElmIHRoaXMgaXMgdGhlIGNhc2UsIGNvbnZlcnRpbmcgYSBgdXNpemVgIHZhbHVlIGludG8g
YQotICAgIC8vIGBMZXZlbEZpbHRlcmAgKGluIGBMZXZlbEZpbHRlcjo6Y3VycmVudGApIHdpbGwg
YmUgYW4gaWRlbnRpdHkgY29udmVyc2lvbiwKLSAgICAvLyByYXRoZXIgdGhhbiBnZW5lcmF0aW5n
IGEgbG9va3VwIHRhYmxlLgotICAgIGNvbnN0IE9GRl9VU0laRTogdXNpemUgPSBMZXZlbElubmVy
OjpFcnJvciBhcyB1c2l6ZSArIDE7CisgICAgLy8gRHluYW1pY2FsbHkgZGV0ZXJtaW5pbmcgdGhl
IHZhbHVlIGZvciBgT3B0aW9uOjpOb25lYCBhdCBjb21waWxlIHRpbWUKKyAgICAvLyB2aWEgYGNv
cmU6Om1lbTo6dHJhbnNtdXRlYCBlbnN1cmVzIHRoYXQgd2UgYWx3YXlzIG1hdGNoIHRoZSBleGFj
dCByZXByZXNlbnRhdGlvbgorICAgIC8vIHNlbGVjdGVkIGJ5IHRoZSBjb21waWxlcidzIG5pY2hl
IG9wdGltaXphdGlvbiBmb3IgYExldmVsRmlsdGVyYCBvbiBhbnkKKyAgICAvLyBSdXN0IHZlcnNp
b24uIFRoaXMgZ3VhcmFudGVlcyB0aGF0IGNvbnZlcnRpbmcgYSBgdXNpemVgIHZhbHVlIGludG8g
YQorICAgIC8vIGBMZXZlbEZpbHRlcmAgKGluIGBMZXZlbEZpbHRlcjo6Y3VycmVudGApIGlzIGFs
d2F5cyBhIHplcm8tY29zdCBpZGVudGl0eQorICAgIC8vIGNvbnZlcnNpb24sIHJhdGhlciB0aGFu
IGdlbmVyYXRpbmcgYSBsb29rdXAgdGFibGUuCisgICAgY29uc3QgT0ZGX1VTSVpFOiB1c2l6ZSA9
IHVuc2FmZSB7IGNvcmU6Om1lbTo6dHJhbnNtdXRlKExldmVsRmlsdGVyOjpPRkYpIH07CiAKICAg
ICAvLy8gUmV0dXJucyBhIGBMZXZlbEZpbHRlcmAgdGhhdCBtYXRjaGVzIHRoZSBtb3N0IHZlcmJv
c2UgW2BMZXZlbGBdIHRoYXQgYW55CiAgICAgLy8vIGN1cnJlbnRseSBhY3RpdmUgW2BTdWJzY3Jp
YmVyYF0gd2lsbCBlbmFibGUuCkBAIC04ODYsMTEgKzg4NywxMCBAQAogLy8gICAgYE9wdGlvbjxM
ZXZlbD5gKSBjb21waWxlcyBkb3duIHRvIGEgc2luZ2xlIGludGVnZXIgdmFsdWUuIFRoaXMgaXMK
IC8vICAgIG5lY2Vzc2FyeSBmb3Igc3RvcmluZyB0aGUgZ2xvYmFsIG1heCBpbiBhbiBgQXRvbWlj
VXNpemVgLCBhbmQgZm9yIGVuc3VyaW5nCiAvLyAgICB0aGF0IHdlIHVzZSBmYXN0IGludGVnZXIt
aW50ZWdlciBjb21wYXJpc29ucywgYXMgbWVudGlvbmVkIHByZXZpb3VzbHkuIEluCi0vLyAgICBv
cmRlciB0byBlbnN1cmUgdGhpcywgd2UgZXhwbG9pdCB0aGUgbmljaGUgb3B0aW1pemF0aW9uLiBU
aGUgbmljaGUKLS8vICAgIG9wdGltaXphdGlvbiBmb3IgYE9wdGlvbjx7ZW51bSB3aXRoIGEgbnVt
ZXJpYyByZXByfT5gIHdpbGwgY2hvb3NlCi0vLyAgICBgKEhJR0hFU1RfRElTQ1JJTUlOQU5UX1ZB
TFVFICsgMSlgIGFzIHRoZSByZXByZXNlbnRhdGlvbiBmb3IgYE5vbmVgLgotLy8gICAgVGhlcmVm
b3JlLCB0aGUgaW50ZWdlciByZXByZXNlbnRhdGlvbiBvZiBgTGV2ZWxGaWx0ZXI6Ok9GRmAgKHdo
aWNoIGlzCi0vLyAgICBgTm9uZWApIHdpbGwgYmUgdGhlIG51bWJlciA1LiBgT0ZGYCBtdXN0IGNv
bXBhcmUgaGlnaGVyIHRoYW4gZXZlcnkgb3RoZXIKKy8vICAgIG9yZGVyIHRvIGVuc3VyZSB0aGlz
LCB3ZSBleHBsb2l0IHRoZSBuaWNoZSBvcHRpbWl6YXRpb24uIFRoZSBleGFjdCByYXcKKy8vICAg
IHJlcHJlc2VudGF0aW9uIHNlbGVjdGVkIGJ5IGBydXN0Y2AgZm9yIGBPcHRpb246Ok5vbmVgIG1h
eSB2YXJ5IGFjcm9zcworLy8gICAgY29tcGlsZXIgdmVyc2lvbnMsIHNvIGBMZXZlbEZpbHRlcjo6
T0ZGX1VTSVpFYCBpcyBkZXRlcm1pbmVkIGR5bmFtaWNhbGx5CisvLyAgICB2aWEgYGNvcmU6Om1l
bTo6dHJhbnNtdXRlYC4gYE9GRmAgbXVzdCBjb21wYXJlIGhpZ2hlciB0aGFuIGV2ZXJ5IG90aGVy
CiAvLyAgICBsZXZlbCBpbiBvcmRlciBmb3IgaXQgdG8gZmlsdGVyIGFzIGV4cGVjdGVkLiBTaW5j
ZSB3ZSB3YW50IHRvIHVzZSBhIHNpbmdsZQogLy8gICAgYGNtcGAgaW5zdHJ1Y3Rpb24sIHdlIGNh
bid0IHNwZWNpYWwtY2FzZSB0aGUgaW50ZWdlciB2YWx1ZSBvZiBgT0ZGYCB0bwogLy8gICAgY29t
cGFyZSBoaWdoZXIsIGFzIHRoYXQgd2lsbCBnZW5lcmF0ZSBtb3JlIGNvZGUuIEluc3RlYWQsIHdl
IG5lZWQgaXQgdG8gYmUKQEAgLTkxMSw3ICs5MTEsNyBAQAogaW1wbCBQYXJ0aWFsRXE8TGV2ZWxG
aWx0ZXI+IGZvciBMZXZlbCB7CiAgICAgI1tpbmxpbmUoYWx3YXlzKV0KICAgICBmbiBlcSgmc2Vs
Ziwgb3RoZXI6ICZMZXZlbEZpbHRlcikgLT4gYm9vbCB7Ci0gICAgICAgIHNlbGYuMCBhcyB1c2l6
ZSA9PSBmaWx0ZXJfYXNfdXNpemUoJm90aGVyLjApCisgICAgICAgIHNlbGYuMCBhcyB1c2l6ZSA9
PSBmaWx0ZXJfYXNfdXNpemVfc29ydF9rZXkob3RoZXIuMCkKICAgICB9CiB9CiAKQEAgLTk1Miw0
MiArOTUyLDQ2IEBACiBpbXBsIFBhcnRpYWxPcmQ8TGV2ZWxGaWx0ZXI+IGZvciBMZXZlbCB7CiAg
ICAgI1tpbmxpbmUoYWx3YXlzKV0KICAgICBmbiBwYXJ0aWFsX2NtcCgmc2VsZiwgb3RoZXI6ICZM
ZXZlbEZpbHRlcikgLT4gT3B0aW9uPGNtcDo6T3JkZXJpbmc+IHsKLSAgICAgICAgU29tZShmaWx0
ZXJfYXNfdXNpemUoJm90aGVyLjApLmNtcCgmKHNlbGYuMCBhcyB1c2l6ZSkpKQorICAgICAgICBT
b21lKGZpbHRlcl9hc191c2l6ZV9zb3J0X2tleShvdGhlci4wKS5jbXAoJihzZWxmLjAgYXMgdXNp
emUpKSkKICAgICB9CiAKICAgICAjW2lubGluZShhbHdheXMpXQogICAgIGZuIGx0KCZzZWxmLCBv
dGhlcjogJkxldmVsRmlsdGVyKSAtPiBib29sIHsKLSAgICAgICAgZmlsdGVyX2FzX3VzaXplKCZv
dGhlci4wKSA8IChzZWxmLjAgYXMgdXNpemUpCisgICAgICAgIGZpbHRlcl9hc191c2l6ZV9zb3J0
X2tleShvdGhlci4wKSA8IChzZWxmLjAgYXMgdXNpemUpCiAgICAgfQogCiAgICAgI1tpbmxpbmUo
YWx3YXlzKV0KICAgICBmbiBsZSgmc2VsZiwgb3RoZXI6ICZMZXZlbEZpbHRlcikgLT4gYm9vbCB7
Ci0gICAgICAgIGZpbHRlcl9hc191c2l6ZSgmb3RoZXIuMCkgPD0gKHNlbGYuMCBhcyB1c2l6ZSkK
KyAgICAgICAgZmlsdGVyX2FzX3VzaXplX3NvcnRfa2V5KG90aGVyLjApIDw9IChzZWxmLjAgYXMg
dXNpemUpCiAgICAgfQogCiAgICAgI1tpbmxpbmUoYWx3YXlzKV0KICAgICBmbiBndCgmc2VsZiwg
b3RoZXI6ICZMZXZlbEZpbHRlcikgLT4gYm9vbCB7Ci0gICAgICAgIGZpbHRlcl9hc191c2l6ZSgm
b3RoZXIuMCkgPiAoc2VsZi4wIGFzIHVzaXplKQorICAgICAgICBmaWx0ZXJfYXNfdXNpemVfc29y
dF9rZXkob3RoZXIuMCkgPiAoc2VsZi4wIGFzIHVzaXplKQogICAgIH0KIAogICAgICNbaW5saW5l
KGFsd2F5cyldCiAgICAgZm4gZ2UoJnNlbGYsIG90aGVyOiAmTGV2ZWxGaWx0ZXIpIC0+IGJvb2wg
ewotICAgICAgICBmaWx0ZXJfYXNfdXNpemUoJm90aGVyLjApID49IChzZWxmLjAgYXMgdXNpemUp
CisgICAgICAgIGZpbHRlcl9hc191c2l6ZV9zb3J0X2tleShvdGhlci4wKSA+PSAoc2VsZi4wIGFz
IHVzaXplKQogICAgIH0KIH0KIAorY29uc3QgVVNFX05BVElWRV9TT1JUOiBib29sID0gTGV2ZWxG
aWx0ZXI6Ok9GRl9VU0laRSA+IExldmVsSW5uZXI6OkVycm9yIGFzIHVzaXplOworCiAjW2lubGlu
ZShhbHdheXMpXQotZm4gZmlsdGVyX2FzX3VzaXplKHg6ICZPcHRpb248TGV2ZWw+KSAtPiB1c2l6
ZSB7CitmbiBmaWx0ZXJfYXNfdXNpemVfc29ydF9rZXkoeDogT3B0aW9uPExldmVsPikgLT4gdXNp
emUgewogICAgIG1hdGNoIHggewotICAgICAgICBTb21lKExldmVsKGYpKSA9PiAqZiBhcyB1c2l6
ZSwKLSAgICAgICAgTm9uZSA9PiBMZXZlbEZpbHRlcjo6T0ZGX1VTSVpFLAorICAgICAgICBTb21l
KExldmVsKGYpKSA9PiBmIGFzIHVzaXplLAorICAgICAgICAvLyBUaGUgbmljaGUgb3B0aW1pemF0
aW9uIGZvciBMZXZlbEZpbHRlcjo6T0ZGIGlzbid0IGd1YXJhbnRlZWQKKyAgICAgICAgLy8gdG8g
YmUgdGhlIGxhc3QgdmFyaWFudCArIDEsIHNvIHdlIGV4cGxpY2l0bHkgcmV0dXJuIHRoYXQgZm9y
IHNvcnRpbmcgaGVyZS4KKyAgICAgICAgTm9uZSA9PiBpZiBVU0VfTkFUSVZFX1NPUlQgeyBMZXZl
bEZpbHRlcjo6T0ZGX1VTSVpFIH0gZWxzZSB7IExldmVsSW5uZXI6OkVycm9yIGFzIHVzaXplICsg
MSB9LAogICAgIH0KIH0KIAogaW1wbCBQYXJ0aWFsRXE8TGV2ZWw+IGZvciBMZXZlbEZpbHRlciB7
CiAgICAgI1tpbmxpbmUoYWx3YXlzKV0KICAgICBmbiBlcSgmc2VsZiwgb3RoZXI6ICZMZXZlbCkg
LT4gYm9vbCB7Ci0gICAgICAgIGZpbHRlcl9hc191c2l6ZSgmc2VsZi4wKSA9PSBvdGhlci4wIGFz
IHVzaXplCisgICAgICAgIGZpbHRlcl9hc191c2l6ZV9zb3J0X2tleShzZWxmLjApID09IG90aGVy
LjAgYXMgdXNpemUKICAgICB9CiB9CiAKQEAgLTk5OSw1NiArMTAwMyw1NiBAQAogCiAgICAgI1tp
bmxpbmUoYWx3YXlzKV0KICAgICBmbiBsdCgmc2VsZiwgb3RoZXI6ICZMZXZlbEZpbHRlcikgLT4g
Ym9vbCB7Ci0gICAgICAgIGZpbHRlcl9hc191c2l6ZSgmb3RoZXIuMCkgPCBmaWx0ZXJfYXNfdXNp
emUoJnNlbGYuMCkKKyAgICAgICAgZmlsdGVyX2FzX3VzaXplX3NvcnRfa2V5KG90aGVyLjApIDwg
ZmlsdGVyX2FzX3VzaXplX3NvcnRfa2V5KHNlbGYuMCkKICAgICB9CiAKICAgICAjW2lubGluZShh
bHdheXMpXQogICAgIGZuIGxlKCZzZWxmLCBvdGhlcjogJkxldmVsRmlsdGVyKSAtPiBib29sIHsK
LSAgICAgICAgZmlsdGVyX2FzX3VzaXplKCZvdGhlci4wKSA8PSBmaWx0ZXJfYXNfdXNpemUoJnNl
bGYuMCkKKyAgICAgICAgZmlsdGVyX2FzX3VzaXplX3NvcnRfa2V5KG90aGVyLjApIDw9IGZpbHRl
cl9hc191c2l6ZV9zb3J0X2tleShzZWxmLjApCiAgICAgfQogCiAgICAgI1tpbmxpbmUoYWx3YXlz
KV0KICAgICBmbiBndCgmc2VsZiwgb3RoZXI6ICZMZXZlbEZpbHRlcikgLT4gYm9vbCB7Ci0gICAg
ICAgIGZpbHRlcl9hc191c2l6ZSgmb3RoZXIuMCkgPiBmaWx0ZXJfYXNfdXNpemUoJnNlbGYuMCkK
KyAgICAgICAgZmlsdGVyX2FzX3VzaXplX3NvcnRfa2V5KG90aGVyLjApID4gZmlsdGVyX2FzX3Vz
aXplX3NvcnRfa2V5KHNlbGYuMCkKICAgICB9CiAKICAgICAjW2lubGluZShhbHdheXMpXQogICAg
IGZuIGdlKCZzZWxmLCBvdGhlcjogJkxldmVsRmlsdGVyKSAtPiBib29sIHsKLSAgICAgICAgZmls
dGVyX2FzX3VzaXplKCZvdGhlci4wKSA+PSBmaWx0ZXJfYXNfdXNpemUoJnNlbGYuMCkKKyAgICAg
ICAgZmlsdGVyX2FzX3VzaXplX3NvcnRfa2V5KG90aGVyLjApID49IGZpbHRlcl9hc191c2l6ZV9z
b3J0X2tleShzZWxmLjApCiAgICAgfQogfQogCiBpbXBsIE9yZCBmb3IgTGV2ZWxGaWx0ZXIgewog
ICAgICNbaW5saW5lKGFsd2F5cyldCiAgICAgZm4gY21wKCZzZWxmLCBvdGhlcjogJlNlbGYpIC0+
IGNtcDo6T3JkZXJpbmcgewotICAgICAgICBmaWx0ZXJfYXNfdXNpemUoJm90aGVyLjApLmNtcCgm
ZmlsdGVyX2FzX3VzaXplKCZzZWxmLjApKQorICAgICAgICBmaWx0ZXJfYXNfdXNpemVfc29ydF9r
ZXkob3RoZXIuMCkuY21wKCZmaWx0ZXJfYXNfdXNpemVfc29ydF9rZXkoc2VsZi4wKSkKICAgICB9
CiB9CiAKIGltcGwgUGFydGlhbE9yZDxMZXZlbD4gZm9yIExldmVsRmlsdGVyIHsKICAgICAjW2lu
bGluZShhbHdheXMpXQogICAgIGZuIHBhcnRpYWxfY21wKCZzZWxmLCBvdGhlcjogJkxldmVsKSAt
PiBPcHRpb248Y21wOjpPcmRlcmluZz4gewotICAgICAgICBTb21lKChvdGhlci4wIGFzIHVzaXpl
KS5jbXAoJmZpbHRlcl9hc191c2l6ZSgmc2VsZi4wKSkpCisgICAgICAgIFNvbWUoKG90aGVyLjAg
YXMgdXNpemUpLmNtcCgmZmlsdGVyX2FzX3VzaXplX3NvcnRfa2V5KHNlbGYuMCkpKQogICAgIH0K
IAogICAgICNbaW5saW5lKGFsd2F5cyldCiAgICAgZm4gbHQoJnNlbGYsIG90aGVyOiAmTGV2ZWwp
IC0+IGJvb2wgewotICAgICAgICAob3RoZXIuMCBhcyB1c2l6ZSkgPCBmaWx0ZXJfYXNfdXNpemUo
JnNlbGYuMCkKKyAgICAgICAgKG90aGVyLjAgYXMgdXNpemUpIDwgZmlsdGVyX2FzX3VzaXplX3Nv
cnRfa2V5KHNlbGYuMCkKICAgICB9CiAKICAgICAjW2lubGluZShhbHdheXMpXQogICAgIGZuIGxl
KCZzZWxmLCBvdGhlcjogJkxldmVsKSAtPiBib29sIHsKLSAgICAgICAgKG90aGVyLjAgYXMgdXNp
emUpIDw9IGZpbHRlcl9hc191c2l6ZSgmc2VsZi4wKQorICAgICAgICAob3RoZXIuMCBhcyB1c2l6
ZSkgPD0gZmlsdGVyX2FzX3VzaXplX3NvcnRfa2V5KHNlbGYuMCkKICAgICB9CiAKICAgICAjW2lu
bGluZShhbHdheXMpXQogICAgIGZuIGd0KCZzZWxmLCBvdGhlcjogJkxldmVsKSAtPiBib29sIHsK
LSAgICAgICAgKG90aGVyLjAgYXMgdXNpemUpID4gZmlsdGVyX2FzX3VzaXplKCZzZWxmLjApCisg
ICAgICAgIChvdGhlci4wIGFzIHVzaXplKSA+IGZpbHRlcl9hc191c2l6ZV9zb3J0X2tleShzZWxm
LjApCiAgICAgfQogCiAgICAgI1tpbmxpbmUoYWx3YXlzKV0KICAgICBmbiBnZSgmc2VsZiwgb3Ro
ZXI6ICZMZXZlbCkgLT4gYm9vbCB7Ci0gICAgICAgIChvdGhlci4wIGFzIHVzaXplKSA+PSBmaWx0
ZXJfYXNfdXNpemUoJnNlbGYuMCkKKyAgICAgICAgKG90aGVyLjAgYXMgdXNpemUpID49IGZpbHRl
cl9hc191c2l6ZV9zb3J0X2tleShzZWxmLjApCiAgICAgfQogfQogCkBAIC0xMTAxLDcgKzExMDUs
NyBAQAogICAgICNbdGVzdF0KICAgICBmbiBsZXZlbF9maWx0ZXJfcmVwcnMoKSB7CiAgICAgICAg
IGxldCBtYXBwaW5nID0gWwotICAgICAgICAgICAgKExldmVsRmlsdGVyOjpPRkYsIExldmVsSW5u
ZXI6OkVycm9yIGFzIHVzaXplICsgMSksCisgICAgICAgICAgICAoTGV2ZWxGaWx0ZXI6Ok9GRiwg
TGV2ZWxGaWx0ZXI6Ok9GRl9VU0laRSksCiAgICAgICAgICAgICAoTGV2ZWxGaWx0ZXI6OkVSUk9S
LCBMZXZlbElubmVyOjpFcnJvciBhcyB1c2l6ZSksCiAgICAgICAgICAgICAoTGV2ZWxGaWx0ZXI6
OldBUk4sIExldmVsSW5uZXI6Oldhcm4gYXMgdXNpemUpLAogICAgICAgICAgICAgKExldmVsRmls
dGVyOjpJTkZPLCBMZXZlbElubmVyOjpJbmZvIGFzIHVzaXplKSwKQEAgLTExMTksNCArMTEyMyw0
MSBAQAogICAgICAgICAgICAgYXNzZXJ0X2VxIShleHBlY3RlZCwgcmVwciwgInJlcHIgY2hhbmdl
ZCBmb3Igezo/fSIsIGZpbHRlcikKICAgICAgICAgfQogICAgIH0KKworICAgICNbdGVzdF0KKyAg
ICBmbiBsZXZlbF9maWx0ZXJfb3JkZXJpbmcoKSB7CisgICAgICAgIGFzc2VydCEoTGV2ZWxGaWx0
ZXI6Ok9GRiA8IExldmVsRmlsdGVyOjpFUlJPUik7CisgICAgICAgIGFzc2VydCEoTGV2ZWxGaWx0
ZXI6Ok9GRiA8IExldmVsRmlsdGVyOjpXQVJOKTsKKyAgICAgICAgYXNzZXJ0IShMZXZlbEZpbHRl
cjo6T0ZGIDwgTGV2ZWxGaWx0ZXI6OklORk8pOworICAgICAgICBhc3NlcnQhKExldmVsRmlsdGVy
OjpPRkYgPCBMZXZlbEZpbHRlcjo6REVCVUcpOworICAgICAgICBhc3NlcnQhKExldmVsRmlsdGVy
OjpPRkYgPCBMZXZlbEZpbHRlcjo6VFJBQ0UpOworCisgICAgICAgIGFzc2VydCEoTGV2ZWxGaWx0
ZXI6Ok9GRiA8IExldmVsOjpFUlJPUik7CisgICAgICAgIGFzc2VydCEoTGV2ZWxGaWx0ZXI6Ok9G
RiA8IExldmVsOjpXQVJOKTsKKyAgICAgICAgYXNzZXJ0IShMZXZlbEZpbHRlcjo6T0ZGIDwgTGV2
ZWw6OklORk8pOworICAgICAgICBhc3NlcnQhKExldmVsRmlsdGVyOjpPRkYgPCBMZXZlbDo6REVC
VUcpOworICAgICAgICBhc3NlcnQhKExldmVsRmlsdGVyOjpPRkYgPCBMZXZlbDo6VFJBQ0UpOwor
CisgICAgICAgIGFzc2VydCEoTGV2ZWxGaWx0ZXI6OkVSUk9SIDwgTGV2ZWxGaWx0ZXI6OldBUk4p
OworICAgICAgICBhc3NlcnQhKExldmVsRmlsdGVyOjpXQVJOIDwgTGV2ZWxGaWx0ZXI6OklORk8p
OworICAgICAgICBhc3NlcnQhKExldmVsRmlsdGVyOjpJTkZPIDwgTGV2ZWxGaWx0ZXI6OkRFQlVH
KTsKKyAgICAgICAgYXNzZXJ0IShMZXZlbEZpbHRlcjo6REVCVUcgPCBMZXZlbEZpbHRlcjo6VFJB
Q0UpOworCisgICAgICAgIGFzc2VydCEoTGV2ZWw6OkVSUk9SIDwgTGV2ZWxGaWx0ZXI6OldBUk4p
OworICAgICAgICBhc3NlcnQhKExldmVsOjpXQVJOIDwgTGV2ZWxGaWx0ZXI6OklORk8pOworICAg
ICAgICBhc3NlcnQhKExldmVsOjpJTkZPIDwgTGV2ZWxGaWx0ZXI6OkRFQlVHKTsKKyAgICAgICAg
YXNzZXJ0IShMZXZlbDo6REVCVUcgPCBMZXZlbEZpbHRlcjo6VFJBQ0UpOworCisgICAgICAgIGFz
c2VydCEoTGV2ZWxGaWx0ZXI6OkVSUk9SID4gTGV2ZWxGaWx0ZXI6Ok9GRik7CisgICAgICAgIGFz
c2VydCEoTGV2ZWxGaWx0ZXI6OldBUk4gPiBMZXZlbEZpbHRlcjo6T0ZGKTsKKyAgICAgICAgYXNz
ZXJ0IShMZXZlbEZpbHRlcjo6SU5GTyA+IExldmVsRmlsdGVyOjpPRkYpOworICAgICAgICBhc3Nl
cnQhKExldmVsRmlsdGVyOjpERUJVRyA+IExldmVsRmlsdGVyOjpPRkYpOworICAgICAgICBhc3Nl
cnQhKExldmVsRmlsdGVyOjpUUkFDRSA+IExldmVsRmlsdGVyOjpPRkYpOworCisgICAgICAgIGFz
c2VydCEoTGV2ZWw6OkVSUk9SID4gTGV2ZWxGaWx0ZXI6Ok9GRik7CisgICAgICAgIGFzc2VydCEo
TGV2ZWw6OldBUk4gPiBMZXZlbEZpbHRlcjo6T0ZGKTsKKyAgICAgICAgYXNzZXJ0IShMZXZlbDo6
SU5GTyA+IExldmVsRmlsdGVyOjpPRkYpOworICAgICAgICBhc3NlcnQhKExldmVsOjpERUJVRyA+
IExldmVsRmlsdGVyOjpPRkYpOworICAgICAgICBhc3NlcnQhKExldmVsOjpUUkFDRSA+IExldmVs
RmlsdGVyOjpPRkYpOworICAgIH0KIH0K
--00000000000034a8f6065b883b5c--
]