bug#66911: CC Mode 5.35.2 (C++//l); Noise macro being taken as anchor to class-open

Alan Mackenzie <[email protected]> Fri, 17 Nov 2023 12:09:28 +0000
Newsgroups gmane.emacs.cc-mode.general
Message-ID <ZVdX-Iam6ewVWNW9@ACM>
SGVsbG8sIEFyc2VuLgoKT24gVGh1LCBOb3YgMTYsIDIwMjMgYXQgMjE6Mjk6MjkgKzAxMDAsIEFy
c2VuIEFyc2Vub3ZpxIcgd3JvdGU6Cj4gSGkgQWxhbiwKCj4gVGhhbmtzIGZvciB3b3JraW5nIG9u
IHRoaXMuCgo+IEFsYW4gTWFja2VuemllIDxhY21AbXVjLmRlPiB3cml0ZXM6CgpbIC4uLi4gXQoK
PiA+IFRoYXQgd2FzIGEgbWlzdGFrZSAtIHRoZSBzZWNvbmQgYW5jaG9yIHBvaW50IGlzIG5lZWRl
ZCBvbiBjbGFzcy1vcGVuCj4gPiBsaW5lcywgbm90IHRvcG1vc3QtaW50cm8tY29udCBvbmVzLgoK
PiA+IEkndmUgY29kZWQgdXAgdGhpcyBwYXRjaCwgd2hpY2ggSSBpbmNsdWRlIGJlbG93LiAgQWN0
dWFsbHksIG9ubHkgdGhlIGxhc3QKPiA+IHR3byBzbWFsbGlzaCBodW5rcyBvZiB0aGUgcGF0Y2gg
YXJlIG5ldywgdGhlIHJlc3QgaXMgd2hhdCB5b3UndmUgc2Vlbgo+ID4gYmVmb3JlLCBzbyBpdCB3
aWxsIGJlIG5lY2Vzc2FyeSB0byBzdGFydCBmcm9tIGEgY2xlYW4gY29weSBvZgo+ID4gY2MtZW5n
aW5lLmVsIGFnYWluLgoKPiA+IFRoZSBzeW50YWN0aWNhbCBjb250ZXh0IG9mIHRoZSBIRVJFIGxp
bmUgKHRoZSBvcGVuaW5nIGJyYWNlIG9mIHRoYXQKPiA+IGNsYXNzKSBpcyBub3cgc29tZXRoaW5n
IGxpa2U6Cgo+ID4gICAgICgoY2xhc3Mtb3BlbiA3NiAxMDcpKQoKPiA+ICwgd2hlcmUgNzYgaXMg
dGhlIHBvc2l0aW9uIG9mIHRoZSB0ZW1wbGF0ZSBrZXl3b3JkIGFuZCAxMDcgdGhhdCBvZiB0aGUK
PiA+IGNsYXNzIGtleXdvcmQuICBXaGVuIHRoZXJlJ3Mgbm8gdGVtcGxhdGUsIGJvdGggb2YgdGhl
c2UgYW5jaG9yIHBvaW50cyBhcmUKPiA+IHRoZSBzYW1lLiAgQWN0dWFsbHksIHRoYXQncyBub3Qg
cXVpdGUgYWNjdXJhdGU6IHRoZSAxMDcgaXMgdGhlIHBvaW50Cj4gPiBhZnRlciB0aGUgaW5kZW50
YXRpb24gb2YgdGhlIGxpbmUgdGhhdCBjbGFzcyBpcyBvbjsgaXQganVzdCBzZWVtZWQgYmV0dGVy
Cj4gPiB0aGF0IHdheS4KCj4gVGhpcyBiZWhhdmlvciBzZWVtcyByZWFzb25hYmxlIHRvIG1lIGF0
IGEgZ2xhbmNlIGFuZCBhdCBhIHRlc3QuICBJIGxpa2UKPiB0aGUgaWRlYSA6LSkKClsgLi4uLiBd
Cgo+ID4gU28sIGFnYWluLCBwbGVhc2UgbGV0IG1lIGtub3cgaG93IHlvdSBnZXQgb24gd2l0aCB0
aGlzIHBhdGNoLiAgSXMgdGhlCj4gPiBleHRyYSBhbmNob3IgcG9pbnQgc3VmZmljaWVudCB0byB3
cml0ZSBhbiBhbGlnbm1lbnQgZnVuY3Rpb24gdG8gZ2V0IHRoZQo+ID4gaW5kZW50YXRpb24geW91
IHdhbnQ/Cgo+IFRoZSBmb2xsb3dpbmcgZGlkIHdvcmsgbmljZWx5IChhZnRlciBJIG1hZGUgYy1s
YW5nZWxlbS0ybmQtY29sLCBieQo+IGNvcHlpbmcgYW5kIGFsdGVyaW5nIGMtbGFuZ2VsZW0tY29s
IGFzIGlzIG9idmlvdXMpLiAgSSdtIG5vdCBzdXJlIGlmIGl0Cj4gaXMgaWRpb21hdGljIG9yIHRo
ZSBjbGVhbmVzdCBzb2x1dGlvbiwgdGhvdWdoIChwbHVzLCBteSBFbGlzcC1mdSBpcwo+IHBvb3Ip
LgoKPiAtLTg8LS0tLS0tLS0tLS0tLS0tY3V0IGhlcmUtLS0tLS0tLS0tLS0tLS1zdGFydC0tLS0t
LS0tLS0tLS0+OC0tLQo+IChkZWZ1biBnbGliY3h4LXN0eWxlL2xpbmUtdXAtc3RydWN0IChzeW0t
Zm9ybSkKPiAgICJMaW5lcyB1cCBhIGNsYXNzLW9wZW4gd2l0aCBpdHMgcHJpb3Igc3RydWN0IGxp
bmUiCj4gICAoaWYgKG5vdCAoZXEgJ2NsYXNzLW9wZW4gKGMtbGFuZ2VsZW0tc3ltIHN5bS1mb3Jt
KSkpCj4gICAgICAgbmlsCj4gICAgIChsZXQgKChjb2wgKGMtbGFuZ2VsZW0tMm5kLWNvbCBjLXN5
bnRhY3RpYy1lbGVtZW50IHQpKSkKPiAgICAgICAoaWYgY29sCj4gCSAgKHZlY3RvciBjb2wpCj4g
CW5pbCkpKSkKPiAtLTg8LS0tLS0tLS0tLS0tLS0tY3V0IGhlcmUtLS0tLS0tLS0tLS0tLS1lbmQt
LS0tLS0tLS0tLS0tLS0+OC0tLQoKPiAuLi4gaG93ZXZlciwgSSBub3RpY2VkIHRoYXQgY2xhc3Mt
Y2xvc2Ugc3RpbGwgYW5jaG9ycyBvbiB0aGUgdGVtcGxhdGUKPiB0aGF0IHByZWNlZGVzIGl0LCBh
bmQgc2VlbXMgdG8gbm90IGhhdmUgYSAybmQtcG9zIHRvIHBsYXkgd2l0aCwgc28gdGhlCj4gYWJv
dmUgbGluZS11cCBmbiwgd2hlbiBzZXQgb24gY2xhc3Mtb3BlbiwgcHJvZHVjZXM6Cgo+IC0tODwt
LS0tLS0tLS0tLS0tLS1jdXQgaGVyZS0tLS0tLS0tLS0tLS0tLXN0YXJ0LS0tLS0tLS0tLS0tLT44
LS0tCj4gdGVtcGxhdGU8dHlwZW5hbWUgZm9vPgo+ICAgc3RydWN0IGYKPiAgIHsKPiB9Owo+IC0t
ODwtLS0tLS0tLS0tLS0tLS1jdXQgaGVyZS0tLS0tLS0tLS0tLS0tLWVuZC0tLS0tLS0tLS0tLS0t
LT44LS0tCgpZZXMuICBJIHNob3VsZCBoYXZlIG5vdGljZWQgdGhpcyBteXNlbGYuICA6LSgKCj4g
Li4uIHNvLCB3ZSdyZSBnZXR0aW5nIHF1aXRlIGNsb3NlIQoKU28sIHBsZWFzZSB0cnkgb3V0IHRo
ZSBuZXcgcGF0Y2ggKGJlbG93KSB3aGljaCBzdXBwbGllcyB0aGUgc2Vjb25kIGFuY2hvcgpwb2lu
dCB0byBjbGFzcy1jbG9zZSB0b28uICBUaGUgcGF0Y2ggYXBwbGllcyBjbGVhbmx5IHRvIHRoZSBF
bWFjcyBtYXN0ZXIKYnJhbmNoLiAgQWdhaW4sIHBsZWFzZSBzdGFydCBvZmYgd2l0aCBhIGNsZWFu
IGNjLWVuZ2luZS5lbCBiZWZvcmUKYXBwbHlpbmcgdGhlIG5ldyBwYXRjaCwgbm90IHRoZSB2ZXJz
aW9uIHdpdGggdGhlIHByZXZpb3VzIHBhdGNoIGFwcGxpZWQuCgpbIC4uLi4gXQoKCmRpZmYgLXIg
Mjc2MGFhZGE2MWZhIGNjLWVuZ2luZS5lbAotLS0gYS9jYy1lbmdpbmUuZWwJU3VuIE9jdCAxNSAx
MDo0NDoyMiAyMDIzICswMDAwCisrKyBiL2NjLWVuZ2luZS5lbAlGcmkgTm92IDE3IDExOjQ5OjU1
IDIwMjMgKzAwMDAKQEAgLTEyNjMzLDMxICsxMjYzMywyNyBAQAogICAobGV0ICgob3Blbi1icmFj
ZSAocG9pbnQpKSBrd2Qtc3RhcnQgZmlyc3Qtc3BlY2lmaWVyLXBvcykKICAgICAoYy1zeW50YWN0
aWMtc2tpcC1iYWNrd2FyZCBjLWJsb2NrLXByZWZpeC1jaGFyc2V0IGxpbWl0IHQpCiAKLSAgICAo
d2hlbiAoYW5kIGMtcmVjb2duaXplLTw+LWFyZ2xpc3RzCi0JICAgICAgIChlcSAoY2hhci1iZWZv
cmUpID8+KSkKLSAgICAgIDs7IENvdWxkIGJlIGF0IHRoZSBlbmQgb2YgYSB0ZW1wbGF0ZSBhcmds
aXN0LgotICAgICAgKGxldCAoKGMtcGFyc2UtYW5kLW1hcmt1cC08Pi1hcmdsaXN0cyB0KSkKLQko
d2hpbGUgKGFuZAotCQkoYy1iYWNrd2FyZC08Pi1hcmdsaXN0IG5pbCBsaW1pdCkKLQkJKHByb2du
Ci0JCSAgKGMtc3ludGFjdGljLXNraXAtYmFja3dhcmQgYy1ibG9jay1wcmVmaXgtY2hhcnNldCBs
aW1pdCB0KQotCQkgIChlcSAoY2hhci1iZWZvcmUpID8+KSkpKSkpCi0KLSAgICA7OyBTa2lwIGJh
Y2sgb3ZlciBub2lzZSBjbGF1c2VzLgotICAgICh3aGlsZSAoYW5kCi0JICAgIGMtb3B0LWNwcC1w
cmVmaXgKLQkgICAgKGVxIChjaGFyLWJlZm9yZSkgP1wpKQotCSAgICAobGV0ICgoYWZ0ZXItcGFy
ZW4gKHBvaW50KSkpCi0JICAgICAgKGlmIChhbmQgKGMtZ28tbGlzdC1iYWNrd2FyZCkKLQkJICAg
ICAgIChwcm9nbiAoYy1iYWNrd2FyZC1zeW50YWN0aWMtd3MpCi0JCQkgICAgICAoYy1zaW1wbGUt
c2tpcC1zeW1ib2wtYmFja3dhcmQpKQotCQkgICAgICAgKG9yIChsb29raW5nLWF0IGMtcGFyZW4t
bm9udHlwZS1rZXkpCi0JCQkgICAobG9va2luZy1hdCBjLW5vaXNlLW1hY3JvLXdpdGgtcGFyZW5z
LW5hbWUtcmUpKSkKLQkJICAocHJvZ24KLQkJICAgIChjLXN5bnRhY3RpYy1za2lwLWJhY2t3YXJk
IGMtYmxvY2stcHJlZml4LWNoYXJzZXQgbGltaXQgdCkKLQkJICAgIHQpCi0JCShnb3RvLWNoYXIg
YWZ0ZXItcGFyZW4pCi0JCW5pbCkpKSkKKyAgICAod2hpbGUKKwkob3IKKwkgOzsgQ291bGQgYmUg
YWZ0ZXIgYSB0ZW1wbGF0ZSBhcmdsaXN0Li4uLgorCSAoYW5kIGMtcmVjb2duaXplLTw+LWFyZ2xp
c3RzCisJICAgICAgKGVxIChjaGFyLWJlZm9yZSkgPz4pCisJICAgICAgKGxldCAoKGMtcGFyc2Ut
YW5kLW1hcmt1cC08Pi1hcmdsaXN0cyB0KSkKKwkJKGMtYmFja3dhcmQtPD4tYXJnbGlzdCBuaWwg
bGltaXQpKSkKKwkgOzsgLi4uLiBvciBhZnRlciBhIG5vaXNlIGNsYXVzZSB3aXRoIHBhcmVucy4K
KwkgKGFuZCBjLW9wdC1jcHAtcHJlZml4CisJICAgICAgKGxldCAoKGFmdGVyLXBhcmVuIChwb2lu
dCkpKQorCQkoaWYgKGVxIChjaGFyLWJlZm9yZSkgP1wpKQorCQkgICAgKGFuZAorCQkgICAgIChj
LWdvLWxpc3QtYmFja3dhcmQpCisJCSAgICAgKGVxIChjaGFyLWFmdGVyKSA/XCgpCisJCSAgICAg
KHByb2duIChjLWJhY2t3YXJkLXN5bnRhY3RpYy13cykKKwkJCSAgICAoYy1zaW1wbGUtc2tpcC1z
eW1ib2wtYmFja3dhcmQpKQorCQkgICAgIChvciAobG9va2luZy1hdCBjLXBhcmVuLW5vbnR5cGUt
a2V5KSA7IGUuZy4gX19hdHRyaWJ1dGVfXworCQkJIChsb29raW5nLWF0IGMtbm9pc2UtbWFjcm8t
d2l0aC1wYXJlbnMtbmFtZS1yZSkpKQorCQkgIChnb3RvLWNoYXIgYWZ0ZXItcGFyZW4pCisJCSAg
bmlsKSkpKQorICAgICAgKGMtc3ludGFjdGljLXNraXAtYmFja3dhcmQgYy1ibG9jay1wcmVmaXgt
Y2hhcnNldCBsaW1pdCB0KSkKIAogICAgIDs7IE5vdGU6IENhbid0IGdldCBib2d1cyBoaXRzIGlu
c2lkZSB0ZW1wbGF0ZSBhcmdsaXN0cyBiZWxvdyBzaW5jZSB0aGV5CiAgICAgOzsgaGF2ZSBnb3R0
ZW4gcGFyZW4gc3ludGF4IGFib3ZlLgpAQCAtMTI2NjcsMTAgKzEyNjYzLDE4IEBACiAJICAgOzsg
VGhlIGBjLWRlY2wtYmxvY2sta2V5JyBzZWFyY2ggY29udGludWVzIGZyb20gdGhlcmUgc2luY2UK
IAkgICA7OyB3ZSBrbm93IGl0IGNhbid0IG1hdGNoIGVhcmxpZXIuCiAJICAgKGlmIGdvdG8tc3Rh
cnQKLQkgICAgICAgKHdoZW4gKGMtc3ludGFjdGljLXJlLXNlYXJjaC1mb3J3YXJkIGMtc3ltYm9s
LXN0YXJ0Ci0JCQkJCQkgICAgb3Blbi1icmFjZSB0IHQpCi0JCSAoZ290by1jaGFyIChzZXRxIGZp
cnN0LXNwZWNpZmllci1wb3MgKG1hdGNoLWJlZ2lubmluZyAwKSkpCi0JCSB0KQorCSAgICAgICAo
cHJvZ24KKwkJICh3aGlsZQorCQkgICAgIChhbmQKKwkJICAgICAgKGMtc3ludGFjdGljLXJlLXNl
YXJjaC1mb3J3YXJkIGMtc3ltYm9sLXN0YXJ0CisJCQkJCQkgICAgIG9wZW4tYnJhY2UgdCB0KQor
CQkgICAgICAoZ290by1jaGFyIChtYXRjaC1iZWdpbm5pbmcgMCkpCisJCSAgICAgIChpZiAob3Ig
KGxvb2tpbmctYXQgYy1ub2lzZS1tYWNyby1uYW1lLXJlKQorCQkJICAgICAgKGxvb2tpbmctYXQg
Yy1ub2lzZS1tYWNyby13aXRoLXBhcmVucy1uYW1lLXJlKSkKKwkJCSAgKGMtZm9yd2FyZC1ub2lz
ZS1jbGF1c2UpCisJCQkoc2V0cSBmaXJzdC1zcGVjaWZpZXItcG9zIChtYXRjaC1iZWdpbm5pbmcg
MCkpCisJCQluaWwpKSkKKwkJIGZpcnN0LXNwZWNpZmllci1wb3MpCiAJICAgICB0KQogCiAJICAg
KGNvbmQKQEAgLTEyNzM5LDM0ICsxMjc0MywzOSBAQAogCSAgICAoZ290by1jaGFyIGZpcnN0LXNw
ZWNpZmllci1wb3MpCiAKIAkgICAgKHdoaWxlICg8IChwb2ludCkga3dkLXN0YXJ0KQotCSAgICAg
IChpZiAobG9va2luZy1hdCBjLXN5bWJvbC1rZXkpCi0JCSAgOzsgQWNjZXB0IGFueSBwbGFpbiBz
eW1ib2wgdG9rZW4gb24gdGhlIGdyb3VuZCB0aGF0Ci0JCSAgOzsgaXQncyBhIHNwZWNpZmllciBt
YXNrZWQgdGhyb3VnaCBhIG1hY3JvIChqdXN0Ci0JCSAgOzsgbGlrZSBgYy1mb3J3YXJkLWRlY2wt
b3ItY2FzdC0xJyBza2lwIGZvcndhcmQgb3ZlcgotCQkgIDs7IHN1Y2ggdG9rZW5zKS4KLQkJICA7
OwotCQkgIDs7IENvdWxkIGJlIG1vcmUgcmVzdHJpY3RpdmUgd3J0IGludmFsaWQga2V5d29yZHMs
Ci0JCSAgOzsgYnV0IHRoYXQnZCBvbmx5IG9jY3VyIGluIGludmFsaWQgY29kZSBzbyB0aGVyZSdz
Ci0JCSAgOzsgbm8gdXNlIHNwZW5kaW5nIGVmZm9ydCBvbiBpdC4KLQkJICAobGV0ICgoZW5kICht
YXRjaC1lbmQgMCkpCi0JCQkoa3dkLXN5bSAoYy1rZXl3b3JkLXN5bSAobWF0Y2gtc3RyaW5nIDAp
KSkpCi0JCSAgICAodW5sZXNzCi0JCQkoYW5kIGt3ZC1zeW0KLQkJCSAgICAgOzsgTW92aW5nIG92
ZXIgYSBwcm90ZWN0aW9uIGt3ZCBhbmQgdGhlIGZvbGxvd2luZwotCQkJICAgICA7OyAiOiIgKGlu
IEMrKyBNb2RlKSB0byB0aGUgbmV4dCB0b2tlbiBjb3VsZCB0YWtlCi0JCQkgICAgIDs7IHVzIGFs
bCB0aGUgd2F5IHVwIHRvIGBrd2Qtc3RhcnQnLCBsZWF2aW5nIHVzCi0JCQkgICAgIDs7IG5vIGNo
YW5jZSB0byB1cGRhdGUgYGZpcnN0LXNwZWNpZmllci1wb3MnLgotCQkJICAgICAobm90IChjLWtl
eXdvcmQtbWVtYmVyIGt3ZC1zeW0gJ2MtcHJvdGVjdGlvbi1rd2RzKSkKLQkJCSAgICAgKGMtZm9y
d2FyZC1rZXl3b3JkLWNsYXVzZSAwKSkKLQkJICAgICAgKGdvdG8tY2hhciBlbmQpCi0JCSAgICAg
IChjLWZvcndhcmQtc3ludGFjdGljLXdzKSkpCi0KKwkgICAgICAoY29uZAorCSAgICAgICAoKG9y
IChsb29raW5nLWF0IGMtbm9pc2UtbWFjcm8tbmFtZS1yZSkKKwkJICAgIChsb29raW5nLWF0IGMt
bm9pc2UtbWFjcm8td2l0aC1wYXJlbnMtbmFtZS1yZSkpCisJCShjLWZvcndhcmQtbm9pc2UtY2xh
dXNlKSkKKwkgICAgICAgKChsb29raW5nLWF0IGMtc3ltYm9sLWtleSkKKwkJOzsgQWNjZXB0IGFu
eSBwbGFpbiBzeW1ib2wgdG9rZW4gb24gdGhlIGdyb3VuZCB0aGF0CisJCTs7IGl0J3MgYSBzcGVj
aWZpZXIgbWFza2VkIHRocm91Z2ggYSBtYWNybyAoanVzdAorCQk7OyBsaWtlIGBjLWZvcndhcmQt
ZGVjbC1vci1jYXN0LTEnIHNraXBzIGZvcndhcmQgb3ZlcgorCQk7OyBzdWNoIHRva2VucykuCisJ
CTs7CisJCTs7IENvdWxkIGJlIG1vcmUgcmVzdHJpY3RpdmUgd3J0IGludmFsaWQga2V5d29yZHMs
CisJCTs7IGJ1dCB0aGF0J2Qgb25seSBvY2N1ciBpbiBpbnZhbGlkIGNvZGUgc28gdGhlcmUncwor
CQk7OyBubyB1c2Ugc3BlbmRpbmcgZWZmb3J0IG9uIGl0LgorCQkobGV0ICgoZW5kIChtYXRjaC1l
bmQgMCkpCisJCSAgICAgIChrd2Qtc3ltIChjLWtleXdvcmQtc3ltIChtYXRjaC1zdHJpbmcgMCkp
KSkKKwkJICAodW5sZXNzCisJCSAgICAgIChhbmQga3dkLXN5bQorCQkJICAgOzsgTW92aW5nIG92
ZXIgYSBwcm90ZWN0aW9uIGt3ZCBhbmQgdGhlIGZvbGxvd2luZworCQkJICAgOzsgIjoiIChpbiBD
KysgTW9kZSkgdG8gdGhlIG5leHQgdG9rZW4gY291bGQgdGFrZQorCQkJICAgOzsgdXMgYWxsIHRo
ZSB3YXkgdXAgdG8gYGt3ZC1zdGFydCcsIGxlYXZpbmcgdXMKKwkJCSAgIDs7IG5vIGNoYW5jZSB0
byB1cGRhdGUgYGZpcnN0LXNwZWNpZmllci1wb3MnLgorCQkJICAgKG5vdCAoYy1rZXl3b3JkLW1l
bWJlciBrd2Qtc3ltICdjLXByb3RlY3Rpb24ta3dkcykpCisJCQkgICAoYy1mb3J3YXJkLWtleXdv
cmQtY2xhdXNlIDApKQorCQkgICAgKGdvdG8tY2hhciBlbmQpCisJCSAgICAoYy1mb3J3YXJkLXN5
bnRhY3RpYy13cykpKSkKKworCSAgICAgICAoKGMtc3ludGFjdGljLXJlLXNlYXJjaC1mb3J3YXJk
IGMtc3ltYm9sLXN0YXJ0CisJCQkJCSAgICAgICBrd2Qtc3RhcnQgJ21vdmUgdCkKIAkJOzsgQ2Fu
J3QgcGFyc2UgYSBkZWNsYXJhdGlvbiBwcmVhbWJsZSBhbmQgaXMgc3RpbGwKIAkJOzsgYmVmb3Jl
IGBrd2Qtc3RhcnQnLiAgVGhhdCBtZWFucyBgZmlyc3Qtc3BlY2lmaWVyLXBvcycKIAkJOzsgd2Fz
IGluIHNvbWUgZWFybGllciBjb25zdHJ1Y3QuICBTZWFyY2ggYWdhaW4uCi0JCShpZiAoYy1zeW50
YWN0aWMtcmUtc2VhcmNoLWZvcndhcmQgYy1zeW1ib2wtc3RhcnQKLQkJCQkJCSAgIGt3ZC1zdGFy
dCAnbW92ZSB0KQotCQkgICAgKGdvdG8tY2hhciAoc2V0cSBmaXJzdC1zcGVjaWZpZXItcG9zICht
YXRjaC1iZWdpbm5pbmcgMCkpKQorCQkoZ290by1jaGFyIChzZXRxIGZpcnN0LXNwZWNpZmllci1w
b3MgKG1hdGNoLWJlZ2lubmluZyAwKSkpKQorCSAgICAgICAodAogCQkgIDs7IEdvdCBubyBwcmVh
bWJsZSBiZWZvcmUgdGhlIGJsb2NrIGRlY2xhcmF0aW9uIGtleXdvcmQuCiAJCSAgKHNldHEgZmly
c3Qtc3BlY2lmaWVyLXBvcyBrd2Qtc3RhcnQpKSkpCiAKQEAgLTE0MTgxLDcgKzE0MTkwLDggQEAK
IChkZWZ1biBjLWFkZC1jbGFzcy1zeW50YXggKHN5bWJvbAogCQkJICAgY29udGFpbmluZy1kZWNs
LW9wZW4KIAkJCSAgIGNvbnRhaW5pbmctZGVjbC1zdGFydAotCQkJICAgY29udGFpbmluZy1kZWNs
LWt3ZCkKKwkJCSAgIGNvbnRhaW5pbmctZGVjbC1rd2QKKwkJCSAgICZyZXN0IGFyZ3MpCiAgIDs7
IFRoZSBpbmNsYXNzIGFuZCBjbGFzcy1jbG9zZSBzeW50YWN0aWMgc3ltYm9scyBhcmUgYWRkZWQg
aW4KICAgOzsgc2V2ZXJhbCBwbGFjZXMgYW5kIHNvbWUgd29yayBpcyBuZWVkZWQgdG8gZml4IGV2
ZXJ5dGhpbmcuCiAgIDs7IFRoZXJlZm9yZSBpdCdzIGNvbGxlY3RlZCBoZXJlLgpAQCAtMTQxOTYs
NyArMTQyMDYsNyBAQAogICAgIDs7IE91Z2h0IHRvIHVzZSBgYy1hZGQtc3RtdC1zeW50YXgnIGlu
c3RlYWQgb2YgYmFja2luZyB1cCB0byBib2kKICAgICA7OyBoZXJlLCBidXQgd2UgaGF2ZSB0byBk
byBsaWtlIHRoaXMgZm9yIGNvbXBhdGliaWxpdHkuCiAgICAgKGJhY2stdG8taW5kZW50YXRpb24p
Ci0gICAgKGMtYWRkLXN5bnRheCBzeW1ib2wgKHBvaW50KSkKKyAgICAoYXBwbHkgIydjLWFkZC1z
eW50YXggc3ltYm9sIChwb2ludCkgYXJncykKICAgICAoaWYgKGFuZCAoYy1rZXl3b3JkLW1lbWJl
ciBjb250YWluaW5nLWRlY2wta3dkCiAJCQkgICAgICAgJ2MtaW5leHByLWNsYXNzLWt3ZHMpCiAJ
ICAgICAoLz0gY29udGFpbmluZy1kZWNsLXN0YXJ0IChjLXBvaW50ICdib2kgY29udGFpbmluZy1k
ZWNsLXN0YXJ0KSkpCkBAIC0xNDIzMCw5ICsxNDI0MCwxMCBAQAogICAgICAgIDs7IENBU0UgQi4x
OiBjbGFzcy1vcGVuCiAgICAgICAgKChzYXZlLWV4Y3Vyc2lvbgogCSAgKGFuZCAoZXEgKGNoYXIt
YWZ0ZXIpID97KQotCSAgICAgICAoYy1sb29raW5nLWF0LWRlY2wtYmxvY2sgdCkKKwkgICAgICAg
KHNldHEgcGxhY2Vob2xkZXIgKGMtbG9va2luZy1hdC1kZWNsLWJsb2NrIHQpKQogCSAgICAgICAo
c2V0cSBiZWctb2Ytc2FtZS1vci1jb250YWluaW5nLXN0bXQgKHBvaW50KSkpKQotCShjLWFkZC1z
eW50YXggJ2NsYXNzLW9wZW4gYmVnLW9mLXNhbWUtb3ItY29udGFpbmluZy1zdG10KSkKKwkoYy1h
ZGQtc3ludGF4ICdjbGFzcy1vcGVuIGJlZy1vZi1zYW1lLW9yLWNvbnRhaW5pbmctc3RtdAorCQkg
ICAgICAoYy1wb2ludCAnYm9pIHBsYWNlaG9sZGVyKSkpCiAKICAgICAgICA7OyBDQVNFIEIuMjog
YnJhY2UtbGlzdC1vcGVuCiAgICAgICAgKChvciAoY29uc3Agc3BlY2lhbC1icmFjZS1saXN0KQpA
QCAtMTQ3MjcsNyArMTQ3MzgsMTAgQEAKIAkJCSAgICAnbGFtYmRhLWludHJvLWNvbnQpKSkKIAko
Z290by1jaGFyIChjZHIgcGxhY2Vob2xkZXIpKQogCShiYWNrLXRvLWluZGVudGF0aW9uKQotCShj
LWFkZC1zdG10LXN5bnRheCB0bXBzeW1ib2wgbmlsIHQKKwkoYy1hZGQtc3RtdC1zeW50YXggdG1w
c3ltYm9sCisJCQkgICAoYW5kIChlcSB0bXBzeW1ib2wgJ2NsYXNzLW9wZW4pCisJCQkJKGxpc3Qg
KHBvaW50KSkpCisJCQkgICB0CiAJCQkgICAoYy1tb3N0LWVuY2xvc2luZy1icmFjZSBzdGF0ZS1j
YWNoZSAocG9pbnQpKQogCQkJICAgcGFyZW4tc3RhdGUpCiAJKHVubGVzcyAoZXEgKHBvaW50KSAo
Y2RyIHBsYWNlaG9sZGVyKSkKQEAgLTE0NzcwLDkgKzE0Nzg0LDEwIEBACiAJICAgICAgKGdvdG8t
Y2hhciBpbmRlbnQtcG9pbnQpCiAJICAgICAgKHNraXAtY2hhcnMtZm9yd2FyZCAiIFx0IikKIAkg
ICAgICAoYW5kIChlcSAoY2hhci1hZnRlcikgP3spCi0JCSAgIChjLWxvb2tpbmctYXQtZGVjbC1i
bG9jayB0KQorCQkgICAoc2V0cSB0bXAtcG9zIChjLWxvb2tpbmctYXQtZGVjbC1ibG9jayB0KSkK
IAkJICAgKHNldHEgcGxhY2Vob2xkZXIgKHBvaW50KSkpKQotCSAgICAoYy1hZGQtc3ludGF4ICdj
bGFzcy1vcGVuIHBsYWNlaG9sZGVyKSkKKwkgICAgKGMtYWRkLXN5bnRheCAnY2xhc3Mtb3BlbiBw
bGFjZWhvbGRlcgorCQkJICAoYy1wb2ludCAnYm9pIHRtcC1wb3MpKSkKIAogCSAgIDs7IENBU0Ug
NUEuMzogYnJhY2UgbGlzdCBvcGVuCiAJICAgKChzYXZlLWV4Y3Vyc2lvbgpAQCAtMTUxNzAsMTAg
KzE1MTg1LDE0IEBACiAJICgoYW5kIGNvbnRhaW5pbmctc2V4cAogCSAgICAgICAoZXEgY2hhci1h
ZnRlci1pcCA/fSkKIAkgICAgICAgKGVxIGNvbnRhaW5pbmctZGVjbC1vcGVuIGNvbnRhaW5pbmct
c2V4cCkpCisJICAoc2F2ZS1leGN1cnNpb24KKwkgICAgKGdvdG8tY2hhciBjb250YWluaW5nLWRl
Y2wtb3BlbikKKwkgICAgKHNldHEgdG1wLXBvcyAoYy1sb29raW5nLWF0LWRlY2wtYmxvY2sgdCkp
KQogCSAgKGMtYWRkLWNsYXNzLXN5bnRheCAnY2xhc3MtY2xvc2UKIAkJCSAgICAgIGNvbnRhaW5p
bmctZGVjbC1vcGVuCiAJCQkgICAgICBjb250YWluaW5nLWRlY2wtc3RhcnQKLQkJCSAgICAgIGNv
bnRhaW5pbmctZGVjbC1rd2QpKQorCQkJICAgICAgY29udGFpbmluZy1kZWNsLWt3ZAorCQkJICAg
ICAgKGMtcG9pbnQgJ2JvaSB0bXAtcG9zKSkpCiAKIAkgOzsgQ0FTRSA1SDogd2UgY291bGQgYmUg
bG9va2luZyBhdCBzdWJzZXF1ZW50IGtuci1hcmdkZWNscwogCSAoKGFuZCBjLXJlY29nbml6ZS1r
bnItcAoKCj4gLS0gCj4gQXJzZW4gQXJzZW5vdmnEhwoKLS0gCkFsYW4gTWFja2VuemllIChOdXJl
bWJlcmcsIEdlcm1hbnkpLgoKCgo=