Re: Troubleshooting ALSA configuration files parsing

Guillaume Khayat <[email protected]> Sat, 15 Apr 2023 23:22:17 +0200
Newsgroups gmane.linux.alsa.user
Message-ID <[email protected]>
RGVhciBmZWxsb3cgcmVhZGVycywKCkkgZm91bmQgdGhlIGN1bHByaXQgZm9yIG15IGlnbm9yZWQg
YXNvdW5kLmNvbmYuCgpUaGUgY2hhbmdlcyB3ZXJlIG5vdCBpZ25vcmVkLCB0aGV5IGp1c3QgZGlk
IG5vdCBzaG93IHVuZGVyIGFwbGF5IC1MLgoKVGhlIHJlYXNvbiB3YXMg4oCcZGVmYXVsdHMubmFt
ZWhpbnQuc2hvd2FsbCIgd2FzIHNldCB0byBvZmYgaW4gL3Vzci9zaGFyZS9hbHNhL2Fsc2EuY29u
Zi4KCkkgaG9wZSB0aGlzIGlzIHVzZWZ1bCB0byBzb21lIG90aGVyIHBvb3Igc2FwIHNvbWUgZGF5
LiBUaGlzIHRvb2sgbWUgZGF5cyB0byBuYWlsIGRvd24uIE1ha2VzIG9uZSB3aXNoIHRoaXMgaGFk
IGJlZW4gZG9jdW1lbnRlZC4KCkJlc3QsCgpHdWlsbGF1bWUKCj4gT24gMjkgTWFyIDIwMjMsIGF0
IDE5OjE0LCBHdWlsbGF1bWUgS2hheWF0IDxndWlsbGF1bWUua2guYWx0QGdtYWlsLmNvbT4gd3Jv
dGU6Cj4gCj4gRGVhciByZWFkZXJzLAo+IAo+IEknbSBydW5uaW5nIG15IG93biBkaXN0cm8gYnVp
bHQgdy8gWW9jdG8gYW5kIG15IC9ldGMvYXNvdW5kLmNvbmYgaXMgc2VlbWluZ2x5IGlnbm9yZWQg
ZW50aXJlbHkuCj4gCj4gSSBoYXZlIGJlZW4gd29ya2luZyBhdCBmaWd1cmluZyBvdXQgd2h5IGZv
ciAzIGRheXMgYWxyZWFkeSBhbmQgYW0gcnVubmluZyBvdXQgb2YgaWRlYXMuIEkgd291bGQgd2Vs
Y29tZSBhbnkgaGVscCB0aGUgcmVhZGVycyBvZiB0aGlzIGxpc3QgY2FuIGtpbmRseSBzcGFyZS4K
PiAKPiBUaGUgaGFyZHdhcmUgcGxhdGZvcm0gaXMgYSBSYXNwYmVycnkgUGkgMyBCKyB3aXRoIGEg
SGlmaWJlcnJyeSBEQUMgY29ubmVjdGVkIG92ZXIgSTJTLgo+IFRoZSBzb2Z0d2FyZSBlbnZpcm9u
bWVudCBpcyBhIGN1c3RvbSBMaW51eCBkaXN0cm8gYnVpbHQgdy8gWW9jdG8uIEtlcm5lbCBpcyA1
LjE1LjM0LiBBTFNBIGlzIDEuMi42LiBObyBvdGhlciBhdWRpbyBiYWNrZW5kIChlLmcuIFBpcGV3
aXJlKSBpcyBpbnN0YWxsZWQuCj4gVGhlIHN5c3RlbSBoYXMgMyB3b3JraW5nIHNvdW5kY2FyZHMg
KHNlZSBhcGxheSAtbCBvdXRwdXQgYmVsb3cpLCB3aXRoIG1hdGNoaW5nIFBDTXMuCj4gCj4gSSBy
ZXByb2R1Y2UgdGhlIGlzc3VlIHdpdGggYSBzbWFsbCBzaW1wbGUgL2V0Yy9hc291bmQuY29uZiBj
b250YWluaW5nIDoKPiBwY20udm9sdW1pb0h3IHsKPiAgICB0eXBlIGh3Cj4gICAgY2FyZCAic25k
cnBpaGlmaWJlcnJ5Igo+IH0KPiAKPiBUaGFuayB5b3UgZm9yIHlvdXIgdGltZSAmIGNvbnNpZGVy
YXRpb24sCj4gCj4gR3VpbGxhdW1lCj4gCj4g4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU
4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCUCj4gCj4gCj4g
SSBoYXZlIHRyaWVkIHF1aXRlIGEgZmV3IHRoaW5ncyBhbHJlYWR5Ogo+IAo+IDEpIHNldHRpbmcg
Q09ORklHX1NORF9ERUJVRz15ICYgQ09ORklHX1NORF9ERUJVR19WRVJCT1NFPXkgYW5kIG1ha2lu
ZyBzdXJlIC9zeXMvbW9kdWxlL3NuZC9wYXJhbWV0ZXJzL2RlYnVnID0gMgo+IOKAlD4gTm90IG11
Y2ggaW4gam91cm5hbGROb3RoaW5nIHJlbGV2YW50IGFzIGZhciBhcyBJIGNhbiB0ZWxsIAo+IAo+
IDIpIGNoZWNraW5nIGlmIHRoZSBzb3VuZGNhcmQncyBrZXJuZWwgbW9kdWxlIGhhcyBhIGRlYnVn
IGZsYWcgd2hpY2ggd2UgY2FuIGVuYWJsZSB3aXRoICJtb2RpbmZvIC1w4oCdCj4g4oCUPiBubyBv
cHRpb24gYXZhaWxhYmxlIGZvciBzbmRfc29jX3JwaV9zaW1wbGVfc291bmRjYXJkCj4gCj4gMykg
Y2hlY2tpbmcgZXZlcnkgcGF0aCBsaXN0ZWQgaW4gL3Vzci9zaGFyZS9hbHNhL2Fsc2EuY29uZiBm
b3IgY29uZmxpY3RpbmcgY29uZiBmaWxlcwo+ICAgICAgICDigKIgL3Zhci9saWIvYWxzYS9jb25m
LmQKPiAgICAgICAg4oCiIC91c3IvZXRjL2Fsc2EvY29uZi5kCj4gICAgICAgIOKAoiAvZXRjL2Fs
c2EvY29uZi5kCj4gICAgICAgIOKAoiAvZXRjL2Fzb3VuZC5jb25mCj4gICAgICAgIOKAoiAvdXNy
L2V0Yy9hc291bmQuY29uZgo+ICAgICAgICDigKIgfi8uYXNvdW5kcmMKPiAgICAgICAg4oCiICRY
REdfQ09ORklHX0hPTUUvYWxzYS9hc291bmRyYwo+IOKAlD4gb25seSBteSAvZXRjL2Fzb3VuZC5j
b25mIGV4aXN0cwo+IAo+IAo+IOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKA
lOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlAo+IAo+IAo+IFRoZXJlIGFy
ZSBhbHNvIHRoaW5ncyBJIEhBVkVO4oCZVCB0cmllZDoKPiAxKSBzdHJhY2luZyB3aGF0ZXZlciBo
YW5kbGVzIGNvbmYgZmlsZXMgcGFyc2luZy4gSSBkb27igJl0IGtub3cgd2hhdCBwcm9jZXNzIHRv
IGFjdHVhbGx5IHN0cmFjZS4KPiAyKSBlbmFibGluZyBrZXJuZWwgZHluYW1pYyBkZWJ1Zy4gSSBk
b27igJl0IGtub3cgd2hhdCBtb2R1bGUgdG8gZW5hYmxlIGRlYnVnIGxvZ3MgZm9yLgo+IAo+IAo+
IAo+IOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKA
lOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlAo+IAo+IAo+IEhlcmUgaXMgdGhlIG91dHB1dCBvZiBh
bHNhLWluZm8uc2ggZm9yIGZ1cnRoZXIgcmVmZXJlbmNlOgo+IAo+IHVwbG9hZD10cnVlJnNjcmlw
dD10cnVlJmNhcmRpbmZvPQo+ICEhIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKPiAh
IUFMU0EgSW5mb3JtYXRpb24gU2NyaXB0IHYgMC41LjEKPiAhISMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjCj4gCj4gISFTY3JpcHQgcmFuIG9uOiBXZWQgTWFyIDI5IDE1OjM2OjIxIFVU
QyAyMDIzCj4gCj4gCj4gISFMaW51eCBEaXN0cmlidXRpb24KPiAhIS0tLS0tLS0tLS0tLS0tLS0t
LQo+IAo+IAo+IAo+IAo+ICEhRE1JIEluZm9ybWF0aW9uCj4gISEtLS0tLS0tLS0tLS0tLS0KPiAK
PiBNYW51ZmFjdHVyZXI6ICAgICAgCj4gUHJvZHVjdCBOYW1lOiAgICAgIAo+IFByb2R1Y3QgVmVy
c2lvbjogICAKPiBGaXJtd2FyZSBWZXJzaW9uOiAgCj4gU3lzdGVtIFNLVTogICAgICAgIAo+IEJv
YXJkIFZlbmRvcjogICAgICAKPiBCb2FyZCBOYW1lOiAgICAgICAgCj4gCj4gCj4gISFBQ1BJIERl
dmljZSBTdGF0dXMgSW5mb3JtYXRpb24KPiAhIS0tLS0tLS0tLS0tLS0tLQo+IAo+IAo+IAo+ICEh
S2VybmVsIEluZm9ybWF0aW9uCj4gISEtLS0tLS0tLS0tLS0tLS0tLS0KPiAKPiBLZXJuZWwgcmVs
ZWFzZTogICAgNS4xNS4zNC12OAo+IE9wZXJhdGluZyBTeXN0ZW06ICBHTlUvTGludXgKPiBBcmNo
aXRlY3R1cmU6ICAgICAgYWFyY2g2NAo+IFByb2Nlc3NvcjogICAgICAgICB1bmtub3duCj4gU01Q
IEVuYWJsZWQ6ICAgICAgIFllcwo+IAo+IAo+ICEhQUxTQSBWZXJzaW9uCj4gISEtLS0tLS0tLS0t
LS0KPiAKPiBEcml2ZXIgdmVyc2lvbjogICAgIGs1LjE1LjM0LXY4Cj4gTGlicmFyeSB2ZXJzaW9u
OiAgICAxLjIuNi4xCj4gVXRpbGl0aWVzIHZlcnNpb246ICAxLjIuNgo+IAo+IAo+ICEhTG9hZGVk
IEFMU0EgbW9kdWxlcwo+ICEhLS0tLS0tLS0tLS0tLS0tLS0tLQo+IAo+IAo+IAo+ICEhU291bmQg
U2VydmVycyBvbiB0aGlzIHN5c3RlbQo+ICEhLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+
IAo+IE5vIHNvdW5kIHNlcnZlcnMgZm91bmQuCj4gCj4gCj4gISFTb3VuZGNhcmRzIHJlY29nbmlz
ZWQgYnkgQUxTQQo+ICEhLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAKPiAwIFtiMSAg
ICAgICAgICAgICBdOiBiY20yODM1X2hkbWkgLSBiY20yODM1IEhETUkgMQo+ICAgICAgICAgICAg
ICAgICAgICAgIGJjbTI4MzUgSERNSSAxCj4gMSBbSGVhZHBob25lcyAgICAgXTogYmNtMjgzNV9o
ZWFkcGhvIC0gYmNtMjgzNSBIZWFkcGhvbmVzCj4gICAgICAgICAgICAgICAgICAgICAgYmNtMjgz
NSBIZWFkcGhvbmVzCj4gMiBbc25kcnBpaGlmaWJlcnJ5XTogUlBpLXNpbXBsZSAtIHNuZF9ycGlf
aGlmaWJlcnJ5X2RhYwo+ICAgICAgICAgICAgICAgICAgICAgIHNuZF9ycGlfaGlmaWJlcnJ5X2Rh
Ywo+IAo+IAo+ICEhTW9kcHJvYmUgb3B0aW9ucyAoU291bmQgcmVsYXRlZCkKPiAhIS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gCj4gc25kX2JjbTI4MzU6IGVuYWJsZV9jb21wYXRf
YWxzYT0wCj4gc25kX2JjbTI4MzU6IGVuYWJsZV9oZG1pPTEKPiAKPiAKPiAhIUxvYWRlZCBzb3Vu
ZCBtb2R1bGUgb3B0aW9ucwo+ICEhLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gCj4gCj4g
ISFTeXNmcyBjYXJkIGluZm8KPiAhIS0tLS0tLS0tLS0tLS0tLQo+IAo+ICEhQ2FyZDogL3N5cy9j
bGFzcy9zb3VuZC9jYXJkMAo+IERyaXZlcjogL3N5cy9idXMvcGxhdGZvcm0vZHJpdmVycy9iY20y
ODM1X2F1ZGlvCj4gVHJlZToKPiAJL3N5cy9jbGFzcy9zb3VuZC9jYXJkMAo+IAl8LS0gY29udHJv
bEMwCj4gCXwgICB8LS0gZGV2Cj4gCXwgICB8LS0gZGV2aWNlIC0+IC4uLy4uL2NhcmQwCj4gCXwg
ICB8LS0gcG93ZXIKPiAJfCAgIHwtLSBzdWJzeXN0ZW0gLT4gLi4vLi4vLi4vLi4vLi4vLi4vLi4v
Li4vY2xhc3Mvc291bmQKPiAJfCAgIGAtLSB1ZXZlbnQKPiAJfC0tIGRldmljZSAtPiAuLi8uLi8u
Li9iY20yODM1X2F1ZGlvCj4gCXwtLSBpZAo+IAl8LS0gbnVtYmVyCj4gCXwtLSBwY21DMEQwcAo+
IAl8ICAgfC0tIGRldgo+IAl8ICAgfC0tIGRldmljZSAtPiAuLi8uLi9jYXJkMAo+IAl8ICAgfC0t
IHBjbV9jbGFzcwo+IAl8ICAgfC0tIHBvd2VyCj4gCXwgICB8LS0gc3Vic3lzdGVtIC0+IC4uLy4u
Ly4uLy4uLy4uLy4uLy4uLy4uL2NsYXNzL3NvdW5kCj4gCXwgICBgLS0gdWV2ZW50Cj4gCXwtLSBw
b3dlcgo+IAl8ICAgfC0tIGF1dG9zdXNwZW5kX2RlbGF5X21zCj4gCXwgICB8LS0gY29udHJvbAo+
IAl8ICAgfC0tIHJ1bnRpbWVfYWN0aXZlX3RpbWUKPiAJfCAgIHwtLSBydW50aW1lX3N0YXR1cwo+
IAl8ICAgYC0tIHJ1bnRpbWVfc3VzcGVuZGVkX3RpbWUKPiAJfC0tIHN1YnN5c3RlbSAtPiAuLi8u
Li8uLi8uLi8uLi8uLi8uLi9jbGFzcy9zb3VuZAo+IAlgLS0gdWV2ZW50Cj4gCj4gISFDYXJkOiAv
c3lzL2NsYXNzL3NvdW5kL2NhcmQxCj4gRHJpdmVyOiAvc3lzL2J1cy9wbGF0Zm9ybS9kcml2ZXJz
L2JjbTI4MzVfYXVkaW8KPiBUcmVlOgo+IAkvc3lzL2NsYXNzL3NvdW5kL2NhcmQxCj4gCXwtLSBj
b250cm9sQzEKPiAJfCAgIHwtLSBkZXYKPiAJfCAgIHwtLSBkZXZpY2UgLT4gLi4vLi4vY2FyZDEK
PiAJfCAgIHwtLSBwb3dlcgo+IAl8ICAgfC0tIHN1YnN5c3RlbSAtPiAuLi8uLi8uLi8uLi8uLi8u
Li8uLi8uLi9jbGFzcy9zb3VuZAo+IAl8ICAgYC0tIHVldmVudAo+IAl8LS0gZGV2aWNlIC0+IC4u
Ly4uLy4uL2JjbTI4MzVfYXVkaW8KPiAJfC0tIGlkCj4gCXwtLSBudW1iZXIKPiAJfC0tIHBjbUMx
RDBwCj4gCXwgICB8LS0gZGV2Cj4gCXwgICB8LS0gZGV2aWNlIC0+IC4uLy4uL2NhcmQxCj4gCXwg
ICB8LS0gcGNtX2NsYXNzCj4gCXwgICB8LS0gcG93ZXIKPiAJfCAgIHwtLSBzdWJzeXN0ZW0gLT4g
Li4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vY2xhc3Mvc291bmQKPiAJfCAgIGAtLSB1ZXZlbnQKPiAJ
fC0tIHBvd2VyCj4gCXwgICB8LS0gYXV0b3N1c3BlbmRfZGVsYXlfbXMKPiAJfCAgIHwtLSBjb250
cm9sCj4gCXwgICB8LS0gcnVudGltZV9hY3RpdmVfdGltZQo+IAl8ICAgfC0tIHJ1bnRpbWVfc3Rh
dHVzCj4gCXwgICBgLS0gcnVudGltZV9zdXNwZW5kZWRfdGltZQo+IAl8LS0gc3Vic3lzdGVtIC0+
IC4uLy4uLy4uLy4uLy4uLy4uLy4uL2NsYXNzL3NvdW5kCj4gCWAtLSB1ZXZlbnQKPiAKPiAhIUNh
cmQ6IC9zeXMvY2xhc3Mvc291bmQvY2FyZDIKPiBEcml2ZXI6IC9zeXMvYnVzL3BsYXRmb3JtL2Ry
aXZlcnMvc25kLXJwaS1zaW1wbGUKPiBUcmVlOgo+IAkvc3lzL2NsYXNzL3NvdW5kL2NhcmQyCj4g
CXwtLSBjb250cm9sQzIKPiAJfCAgIHwtLSBkZXYKPiAJfCAgIHwtLSBkZXZpY2UgLT4gLi4vLi4v
Y2FyZDIKPiAJfCAgIHwtLSBwb3dlcgo+IAl8ICAgfC0tIHN1YnN5c3RlbSAtPiAuLi8uLi8uLi8u
Li8uLi8uLi8uLi9jbGFzcy9zb3VuZAo+IAl8ICAgYC0tIHVldmVudAo+IAl8LS0gZGV2aWNlIC0+
IC4uLy4uLy4uL3NvYzpzb3VuZAo+IAl8LS0gaWQKPiAJfC0tIG51bWJlcgo+IAl8LS0gcGNtQzJE
MHAKPiAJfCAgIHwtLSBkZXYKPiAJfCAgIHwtLSBkZXZpY2UgLT4gLi4vLi4vY2FyZDIKPiAJfCAg
IHwtLSBwY21fY2xhc3MKPiAJfCAgIHwtLSBwb3dlcgo+IAl8ICAgfC0tIHN1YnN5c3RlbSAtPiAu
Li8uLi8uLi8uLi8uLi8uLi8uLi9jbGFzcy9zb3VuZAo+IAl8ICAgYC0tIHVldmVudAo+IAl8LS0g
cG93ZXIKPiAJfCAgIHwtLSBhdXRvc3VzcGVuZF9kZWxheV9tcwo+IAl8ICAgfC0tIGNvbnRyb2wK
PiAJfCAgIHwtLSBydW50aW1lX2FjdGl2ZV90aW1lCj4gCXwgICB8LS0gcnVudGltZV9zdGF0dXMK
PiAJfCAgIGAtLSBydW50aW1lX3N1c3BlbmRlZF90aW1lCj4gCXwtLSBzdWJzeXN0ZW0gLT4gLi4v
Li4vLi4vLi4vLi4vLi4vY2xhc3Mvc291bmQKPiAJYC0tIHVldmVudAo+IAo+IAo+ICEhQUxTQSBE
ZXZpY2Ugbm9kZXMKPiAhIS0tLS0tLS0tLS0tLS0tLS0tCj4gCj4gY3J3LXJ3LS0tLSAgICAxIHJv
b3QgICAgIGF1ZGlvICAgICAxMTYsICAgMCBNYXIgMjkgMTc6MDcgL2Rldi9zbmQvY29udHJvbEMw
Cj4gY3J3LXJ3LS0tLSAgICAxIHJvb3QgICAgIGF1ZGlvICAgICAxMTYsICAzMiBNYXIgMjkgMTc6
MDcgL2Rldi9zbmQvY29udHJvbEMxCj4gY3J3LXJ3LS0tLSAgICAxIHJvb3QgICAgIGF1ZGlvICAg
ICAxMTYsICA2NCBNYXIgMjkgMTc6MDcgL2Rldi9zbmQvY29udHJvbEMyCj4gY3J3LXJ3LS0tLSAg
ICAxIHJvb3QgICAgIGF1ZGlvICAgICAxMTYsICAxNiBNYXIgMjkgMTc6MDcgL2Rldi9zbmQvcGNt
QzBEMHAKPiBjcnctcnctLS0tICAgIDEgcm9vdCAgICAgYXVkaW8gICAgIDExNiwgIDQ4IE1hciAy
OSAxNzowNyAvZGV2L3NuZC9wY21DMUQwcAo+IGNydy1ydy0tLS0gICAgMSByb290ICAgICBhdWRp
byAgICAgMTE2LCAgODAgTWFyIDI5IDE3OjA3IC9kZXYvc25kL3BjbUMyRDBwCj4gY3J3LXJ3LS0t
LSAgICAxIHJvb3QgICAgIGF1ZGlvICAgICAxMTYsICAgMSBNYXIgMjkgMTc6MDcgL2Rldi9zbmQv
c2VxCj4gY3J3LXJ3LS0tLSAgICAxIHJvb3QgICAgIGF1ZGlvICAgICAxMTYsICAzMyBNYXIgMjkg
MTc6MDcgL2Rldi9zbmQvdGltZXIKPiAKPiAvZGV2L3NuZC9ieS1wYXRoOgo+IGRyd3hyLXhyLXgg
ICAgMiByb290ICAgICByb290ICAgICAgICAgICAgODAgTWFyIDI5IDE3OjA3IC4KPiBkcnd4ci14
ci14ICAgIDMgcm9vdCAgICAgcm9vdCAgICAgICAgICAgMjIwIE1hciAyOSAxNzowNyAuLgo+IGxy
d3hyd3hyd3ggICAgMSByb290ICAgICByb290ICAgICAgICAgICAgMTIgTWFyIDI5IDE3OjA3IHBs
YXRmb3JtLWJjbTI4MzVfYXVkaW8gLT4gLi4vY29udHJvbEMxCj4gbHJ3eHJ3eHJ3eCAgICAxIHJv
b3QgICAgIHJvb3QgICAgICAgICAgICAxMiBNYXIgMjkgMTc6MDcgcGxhdGZvcm0tc29jOnNvdW5k
IC0+IC4uL2NvbnRyb2xDMgo+IAo+IAo+ICEhQUxTQSBjb25maWd1cmF0aW9uIGZpbGVzCj4gISEt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAKPiAhIVN5c3RlbSB3aWRlIGNvbmZpZyBmaWxlICgv
ZXRjL2Fzb3VuZC5jb25mKQo+IAo+IHBjbS52b2x1bWlvSHcgewo+ICAgIHR5cGUgaHcKPiAgICBj
YXJkICJzbmRycGloaWZpYmVycnkiCj4gfQo+IAo+IAo+ICEhQXBsYXkvQXJlY29yZCBvdXRwdXQK
PiAhIS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gCj4gQVBMQVkKPiAKPiAqKioqIExpc3Qgb2YgUExB
WUJBQ0sgSGFyZHdhcmUgRGV2aWNlcyAqKioqCj4gY2FyZCAwOiBiMSBbYmNtMjgzNSBIRE1JIDFd
LCBkZXZpY2UgMDogYmNtMjgzNSBIRE1JIDEgW2JjbTI4MzUgSERNSSAxXQo+ICBTdWJkZXZpY2Vz
OiA0LzQKPiAgU3ViZGV2aWNlICMwOiBzdWJkZXZpY2UgIzAKPiAgU3ViZGV2aWNlICMxOiBzdWJk
ZXZpY2UgIzEKPiAgU3ViZGV2aWNlICMyOiBzdWJkZXZpY2UgIzIKPiAgU3ViZGV2aWNlICMzOiBz
dWJkZXZpY2UgIzMKPiBjYXJkIDE6IEhlYWRwaG9uZXMgW2JjbTI4MzUgSGVhZHBob25lc10sIGRl
dmljZSAwOiBiY20yODM1IEhlYWRwaG9uZXMgW2JjbTI4MzUgSGVhZHBob25lc10KPiAgU3ViZGV2
aWNlczogNC80Cj4gIFN1YmRldmljZSAjMDogc3ViZGV2aWNlICMwCj4gIFN1YmRldmljZSAjMTog
c3ViZGV2aWNlICMxCj4gIFN1YmRldmljZSAjMjogc3ViZGV2aWNlICMyCj4gIFN1YmRldmljZSAj
Mzogc3ViZGV2aWNlICMzCj4gY2FyZCAyOiBzbmRycGloaWZpYmVycnkgW3NuZF9ycGlfaGlmaWJl
cnJ5X2RhY10sIGRldmljZSAwOiBIaWZpQmVycnkgREFDIEhpRmkgcGNtNTEwMmEtaGlmaS0wIFtI
aWZpQmVycnkgREFDIEhpRmkgcGNtNTEwMmEtaGlmaS0wXQo+ICBTdWJkZXZpY2VzOiAxLzEKPiAg
U3ViZGV2aWNlICMwOiBzdWJkZXZpY2UgIzAKPiAKPiBBUkVDT1JECj4gCj4gKioqKiBMaXN0IG9m
IENBUFRVUkUgSGFyZHdhcmUgRGV2aWNlcyAqKioqCj4gCj4gISFBbWl4ZXIgb3V0cHV0Cj4gISEt
LS0tLS0tLS0tLS0tCj4gCj4gISEtLS0tLS0tTWl4ZXIgY29udHJvbHMgZm9yIGNhcmQgYjEKPiAK
PiBDYXJkIHN5c2RlZmF1bHQ6MCAnYjEnLydiY20yODM1IEhETUkgMScKPiAgTWl4ZXIgbmFtZQk6
ICdCcm9hZGNvbSBNaXhlcicKPiAgQ29tcG9uZW50cwk6ICcnCj4gIENvbnRyb2xzICAgICAgOiAy
Cj4gIFNpbXBsZSBjdHJscyAgOiAxCj4gU2ltcGxlIG1peGVyIGNvbnRyb2wgJ0hETUknLDAKPiAg
Q2FwYWJpbGl0aWVzOiBwdm9sdW1lIHB2b2x1bWUtam9pbmVkIHBzd2l0Y2ggcHN3aXRjaC1qb2lu
ZWQKPiAgUGxheWJhY2sgY2hhbm5lbHM6IE1vbm8KPiAgTGltaXRzOiBQbGF5YmFjayAtMTAyMzkg
LSA0MDAKPiAgTW9ubzogUGxheWJhY2sgMCBbOTYlXSBbMC4wMGRCXSBbb25dCj4gCj4gISEtLS0t
LS0tTWl4ZXIgY29udHJvbHMgZm9yIGNhcmQgSGVhZHBob25lcwo+IAo+IENhcmQgc3lzZGVmYXVs
dDoxICdIZWFkcGhvbmVzJy8nYmNtMjgzNSBIZWFkcGhvbmVzJwo+ICBNaXhlciBuYW1lCTogJ0Jy
b2FkY29tIE1peGVyJwo+ICBDb21wb25lbnRzCTogJycKPiAgQ29udHJvbHMgICAgICA6IDIKPiAg
U2ltcGxlIGN0cmxzICA6IDEKPiBTaW1wbGUgbWl4ZXIgY29udHJvbCAnSGVhZHBob25lJywwCj4g
IENhcGFiaWxpdGllczogcHZvbHVtZSBwdm9sdW1lLWpvaW5lZCBwc3dpdGNoIHBzd2l0Y2gtam9p
bmVkCj4gIFBsYXliYWNrIGNoYW5uZWxzOiBNb25vCj4gIExpbWl0czogUGxheWJhY2sgLTEwMjM5
IC0gNDAwCj4gIE1vbm86IFBsYXliYWNrIC0yMDAwIFs3NyVdIFstMjAuMDBkQl0gW29uXQo+IAo+
ICEhLS0tLS0tLU1peGVyIGNvbnRyb2xzIGZvciBjYXJkIHNuZHJwaWhpZmliZXJyeQo+IAo+IENh
cmQgc3lzZGVmYXVsdDoyICdzbmRycGloaWZpYmVycnknLydzbmRfcnBpX2hpZmliZXJyeV9kYWMn
Cj4gIE1peGVyIG5hbWUJOiAnJwo+ICBDb21wb25lbnRzCTogJycKPiAgQ29udHJvbHMgICAgICA6
IDAKPiAgU2ltcGxlIGN0cmxzICA6IDAKPiAKPiAKPiAhIUFsc2FjdGwgb3V0cHV0Cj4gISEtLS0t
LS0tLS0tLS0tLQo+IAo+IC0tc3RhcnRjb2xsYXBzZS0tCj4gc3RhdGUuYjEgewo+IAljb250cm9s
LjEgewo+IAkJaWZhY2UgTUlYRVIKPiAJCW5hbWUgJ0hETUkgUGxheWJhY2sgVm9sdW1lJwo+IAkJ
dmFsdWUgMAo+IAkJY29tbWVudCB7Cj4gCQkJYWNjZXNzICdyZWFkIHdyaXRlJwo+IAkJCXR5cGUg
SU5URUdFUgo+IAkJCWNvdW50IDEKPiAJCQlyYW5nZSAnLTEwMjM5IC0gNDAwJwo+IAkJCWRibWlu
IC05OTk5OTk5Cj4gCQkJZGJtYXggNDAwCj4gCQkJZGJ2YWx1ZS4wIDAKPiAJCX0KPiAJfQo+IAlj
b250cm9sLjIgewo+IAkJaWZhY2UgTUlYRVIKPiAJCW5hbWUgJ0hETUkgUGxheWJhY2sgU3dpdGNo
Jwo+IAkJdmFsdWUgdHJ1ZQo+IAkJY29tbWVudCB7Cj4gCQkJYWNjZXNzICdyZWFkIHdyaXRlJwo+
IAkJCXR5cGUgQk9PTEVBTgo+IAkJCWNvdW50IDEKPiAJCX0KPiAJfQo+IH0KPiBzdGF0ZS5IZWFk
cGhvbmVzIHsKPiAJY29udHJvbC4xIHsKPiAJCWlmYWNlIE1JWEVSCj4gCQluYW1lICdIZWFkcGhv
bmUgUGxheWJhY2sgVm9sdW1lJwo+IAkJdmFsdWUgLTIwMDAKPiAJCWNvbW1lbnQgewo+IAkJCWFj
Y2VzcyAncmVhZCB3cml0ZScKPiAJCQl0eXBlIElOVEVHRVIKPiAJCQljb3VudCAxCj4gCQkJcmFu
Z2UgJy0xMDIzOSAtIDQwMCcKPiAJCQlkYm1pbiAtOTk5OTk5OQo+IAkJCWRibWF4IDQwMAo+IAkJ
CWRidmFsdWUuMCAtMjAwMAo+IAkJfQo+IAl9Cj4gCWNvbnRyb2wuMiB7Cj4gCQlpZmFjZSBNSVhF
Ugo+IAkJbmFtZSAnSGVhZHBob25lIFBsYXliYWNrIFN3aXRjaCcKPiAJCXZhbHVlIHRydWUKPiAJ
CWNvbW1lbnQgewo+IAkJCWFjY2VzcyAncmVhZCB3cml0ZScKPiAJCQl0eXBlIEJPT0xFQU4KPiAJ
CQljb3VudCAxCj4gCQl9Cj4gCX0KPiB9Cj4gc3RhdGUuc25kcnBpaGlmaWJlcnJ5IHsKPiAJY29u
dHJvbCB7Cj4gCX0KPiB9Cj4gLS1lbmRjb2xsYXBzZS0tCj4gCj4gCj4gISFBbGwgTG9hZGVkIE1v
ZHVsZXMKPiAhIS0tLS0tLS0tLS0tLS0tLS0tLQo+IAo+IGJjbTI4MzVfY29kZWMKPiBiY20yODM1
X2lzcAo+IGJjbTI4MzVfbW1hbF92Y2hpcQo+IGJjbTI4MzVfdjRsMgo+IGZ1c2UKPiBpcHY2Cj4g
bWMKPiBuZnNkCj4gcmFzcGJlcnJ5cGlfaHdtb24KPiByZWdtYXBfbW1pbwo+IHJma2lsbAo+IHNj
aF9mcV9jb2RlbAo+IHNkaGNpX2lwcm9jCj4gc25kX2JjbTI4MzUKPiBzbmRfc29jX2JjbTI4MzVf
aTJzCj4gc25kX3NvY19wY201MTAyYQo+IHNuZF9zb2NfcnBpX3NpbXBsZV9zb3VuZGNhcmQKPiB1
aW8KPiB1aW9fcGRydl9nZW5pcnEKPiB2NGwyX21lbTJtZW0KPiB2Y19zbV9jbWEKPiB2aWRlb2J1
ZjJfY29tbW9uCj4gdmlkZW9idWYyX2RtYV9jb250aWcKPiB2aWRlb2J1ZjJfbWVtb3BzCj4gdmlk
ZW9idWYyX3Y0bDIKPiB2aWRlb2J1ZjJfdm1hbGxvYwo+IHZpZGVvZGV2Cj4gCj4gCj4gISFBTFNB
L0hEQSBkbWVzZwo+ICEhLS0tLS0tLS0tLS0tLS0KPiAKPiBbICAgIDAuMDAwMDAwXSBCdWlsdCAx
IHpvbmVsaXN0cywgbW9iaWxpdHkgZ3JvdXBpbmcgb24uICBUb3RhbCBwYWdlczogMjQ5OTg0Cj4g
WyAgICAwLjAwMDAwMF0gS2VybmVsIGNvbW1hbmQgbGluZTogY29oZXJlbnRfcG9vbD0xTSA4MjUw
Lm5yX3VhcnRzPTEgc25kX2JjbTI4MzUuZW5hYmxlX2NvbXBhdF9hbHNhPTAgc25kX2JjbTI4MzUu
ZW5hYmxlX2hkbWk9MSB2aWRlbz1IRE1JLUEtMToxOTIweDEwODBNQDYwIHZjX21lbS5tZW1fYmFz
ZT0weDNlYzAwMDAwIHZjX21lbS5tZW1fc2l6ZT0weDQwMDAwMDAwICBkd2Nfb3RnLmxwbV9lbmFi
bGU9MCByb290PS9kZXYvbW1jYmxrMHAyIHJvb3Rmc3R5cGU9ZXh0NCByb290d2FpdCBsb2dvLm5v
bG9nbwo+IFsgICAgMC4wMDAwMDBdIERlbnRyeSBjYWNoZSBoYXNoIHRhYmxlIGVudHJpZXM6IDEz
MTA3MiAob3JkZXI6IDgsIDEwNDg1NzYgYnl0ZXMsIGxpbmVhcikKPiAtLQo+IFsgICAgMy4yOTE3
MDldIG9mX2Nmc19pbml0OiBPSwo+IFsgICAgMy4yOTg5MzNdIEFMU0EgZGV2aWNlIGxpc3Q6Cj4g
WyAgICAzLjMwNDQ0MF0gICBObyBzb3VuZGNhcmRzIGZvdW5kLgo+IFsgICAgMy4zMTA3MzVdIFdh
aXRpbmcgZm9yIHJvb3QgZGV2aWNlIC9kZXYvbW1jYmxrMHAyLi4uCj4gLS0KPiBbICAgIDYuODM2
MDcyXSBhdWRpdDogdHlwZT0xMzM0IGF1ZGl0KDE2ODAxMDI0NzAuMTcwOjMpOiBwcm9nLWlkPTYg
b3A9TE9BRAo+IFsgICAgNy42MjE4NzNdIHNuZF9iY20yODM1OiBtb2R1bGUgaXMgZnJvbSB0aGUg
c3RhZ2luZyBkaXJlY3RvcnksIHRoZSBxdWFsaXR5IGlzIHVua25vd24sIHlvdSBoYXZlIGJlZW4g
d2FybmVkLgo+IFsgICAgNy42MzM4NTZdIHZjX3NtX2NtYTogbW9kdWxlIGlzIGZyb20gdGhlIHN0
YWdpbmcgZGlyZWN0b3J5LCB0aGUgcXVhbGl0eSBpcyB1bmtub3duLCB5b3UgaGF2ZSBiZWVuIHdh
cm5lZC4KPiAtLQo+IFsgICAgNy42NTE3MjBdIFt2Y19zbV9jb25uZWN0ZWRfaW5pdF06IHN0YXJ0
Cj4gWyAgICA3LjcwMDk2OV0gYmNtMjgzNV9hdWRpbyBiY20yODM1X2F1ZGlvOiBjYXJkIGNyZWF0
ZWQgd2l0aCA0IGNoYW5uZWxzCj4gWyAgICA3LjcyNjE0N10gbWM6IExpbnV4IG1lZGlhIGludGVy
ZmFjZTogdjAuMTAKPiBbICAgIDcuNzQwNDAxXSBbdmNfc21fY29ubmVjdGVkX2luaXRdOiBpbnN0
YWxsZWQgc3VjY2Vzc2Z1bGx5Cj4gWyAgICA3Ljc0NzA1NF0gYmNtMjgzNV9hdWRpbyBiY20yODM1
X2F1ZGlvOiBjYXJkIGNyZWF0ZWQgd2l0aCA0IGNoYW5uZWxzCj4gWyAgICA3Ljg5NjgyOV0gdmlk
ZW9kZXY6IExpbnV4IHZpZGVvIGNhcHR1cmUgaW50ZXJmYWNlOiB2Mi4wMAoKCgpfX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBbHNhLXVzZXIgbWFpbGluZyBs
aXN0CkFsc2EtdXNlckBsaXN0cy5zb3VyY2Vmb3JnZS5uZXQKaHR0cHM6Ly9saXN0cy5zb3VyY2Vm
b3JnZS5uZXQvbGlzdHMvbGlzdGluZm8vYWxzYS11c2VyCg==