[education/minuet/release/26.08] /: Add rhythm with rests exercises

Sandro S. Andrade <[email protected]> Mon, 13 Jul 2026 18:16:30 +0000 (UTC)
Newsgroups gmane.comp.kde.doc,gmane.comp.kde.cvs
Message-ID <[email protected]>
R2l0IGNvbW1pdCBjM2JjZTI4NDlhZWUyMGMxNTMxN2QyNTVjZWZjYmJlYjhkMTQwNjQ0IGJ5IFNh
bmRybyBTLiBBbmRyYWRlLgpDb21taXR0ZWQgb24gMTMvMDcvMjAyNiBhdCAxODoxNi4KUHVzaGVk
IGJ5IHNhbmRyb2FuZHJhZGUgaW50byBicmFuY2ggJ3JlbGVhc2UvMjYuMDgnLgoKQWRkIHJoeXRo
bSB3aXRoIHJlc3RzIGV4ZXJjaXNlcwoKTSAgKzEgICAgLTAgICAgZGF0YS9kZWZpbml0aW9ucy9D
TWFrZUxpc3RzLnR4dApNICArOCAgICAtOCAgICBkYXRhL2RlZmluaXRpb25zL3JoeXRobS1kZWZp
bml0aW9ucy5qc29uCkEgICsxOTQgIC0wICAgIGRhdGEvZGVmaW5pdGlvbnMvcmh5dGhtLXJlc3Qt
ZGVmaW5pdGlvbnMuanNvbgpNICArMiAgICAtMCAgICBkYXRhL2V4ZXJjaXNlcy9DTWFrZUxpc3Rz
LnR4dApBICArMTkgICAtMCAgICBkYXRhL2V4ZXJjaXNlcy9yaHl0aG0tZWFzeS1yZXN0cy5qc29u
CkEgICsxOSAgIC0wICAgIGRhdGEvZXhlcmNpc2VzL3JoeXRobS1tZWRpdW0tcmVzdHMuanNvbgpN
ICArNiAgICAtMCAgICBkb2MvaW5kZXguZG9jYm9vawpNICArOSAgICAtMCAgICBzcmMvYXBwL0NN
YWtlTGlzdHMudHh0CkEgICsyODYgIC0wICAgIHNyYy9hcHAvYXV0b3Rlc3RzL3JoeXRobXJlc3R0
ZXN0LmNwcCAgICAgW0xpY2Vuc2U6IEdQTCh2Mi4wKyldCk0gICsxMCAgIC0wICAgIHNyYy9hcHAv
ZXhlcmNpc2VjYXRhbG9nY29udHJvbGxlci5jcHAKTSAgKzE3ICAgLTUgICAgc3JjL2FwcC9leGVy
Y2lzZXNlc3Npb25jb250cm9sbGVyLmNwcApNICArMTMgICAtNSAgICBzcmMvYXBwL3FtbC9FeGVy
Y2lzZUNsYXBwaW5nVmlldy5xbWwKTSAgKzQgICAgLTAgICAgc3JjL2FwcC9xbWwvUHJhY3RpY2VN
b2RlUGFnZS5xbWwKTSAgKzcgICAgLTExICAgc3JjL3BsdWdpbnMvZmx1aWRzeW50aHNvdW5kY29u
dHJvbGxlci9mbHVpZHN5bnRoc291bmRjb250cm9sbGVyLmNwcApBICArNDMgICAtMCAgICBzcmMv
dXRpbHMvcmh5dGhtdG9rZW4uaCAgICAgW0xpY2Vuc2U6IEdQTCh2Mi4wKyldCgpodHRwczovL2lu
dmVudC5rZGUub3JnL2VkdWNhdGlvbi9taW51ZXQvLS9jb21taXQvYzNiY2UyODQ5YWVlMjBjMTUz
MTdkMjU1Y2VmY2JiZWI4ZDE0MDY0NAoKZGlmZiAtLWdpdCBhL2RhdGEvZGVmaW5pdGlvbnMvQ01h
a2VMaXN0cy50eHQgYi9kYXRhL2RlZmluaXRpb25zL0NNYWtlTGlzdHMudHh0CmluZGV4IGVlNDNh
ZGUuLjU3MjI1YzkgMTAwNjQ0Ci0tLSBhL2RhdGEvZGVmaW5pdGlvbnMvQ01ha2VMaXN0cy50eHQK
KysrIGIvZGF0YS9kZWZpbml0aW9ucy9DTWFrZUxpc3RzLnR4dApAQCAtMTYsNiArMTYsNyBAQCBz
ZXQoTUlOVUVUX0RFRklOSVRJT05TCiAgICAgc2NhbGVzLXNpbW1ldHJpYy1kZWZpbml0aW9ucy5q
c29uCiAgICAgc2NhbGVzLWJlYm9wLWRlZmluaXRpb25zLmpzb24KICAgICByaHl0aG0tZGVmaW5p
dGlvbnMuanNvbgorICAgIHJoeXRobS1yZXN0LWRlZmluaXRpb25zLmpzb24KICkKIAogaW5zdGFs
bChGSUxFUyAke01JTlVFVF9ERUZJTklUSU9OU30KZGlmZiAtLWdpdCBhL2RhdGEvZGVmaW5pdGlv
bnMvcmh5dGhtLWRlZmluaXRpb25zLmpzb24gYi9kYXRhL2RlZmluaXRpb25zL3JoeXRobS1kZWZp
bml0aW9ucy5qc29uCmluZGV4IDk3N2FhZjguLmE0NTg3YjkgMTAwNjQ0Ci0tLSBhL2RhdGEvZGVm
aW5pdGlvbnMvcmh5dGhtLWRlZmluaXRpb25zLmpzb24KKysrIGIvZGF0YS9kZWZpbml0aW9ucy9y
aHl0aG0tZGVmaW5pdGlvbnMuanNvbgpAQCAtMSw0MiArMSw0MiBAQAogewogICAiZGVmaW5pdGlv
bnMiOiBbCiAgICAgewotICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJlYXN5IiwgIm1lZGl1bSJd
LAorICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJlYXN5IiwgIm1lZGl1bSIsICJlYXN5LXdpdGgt
cmVzdHMiLCAibWVkaXVtLXdpdGgtcmVzdHMiLCAicmVzdC1saXN0ZW5pbmciXSwKICAgICAgICJu
YW1lIjogIlx1RTFGMCIsCiAgICAgICAic2VxdWVuY2UiOiAiNCIKICAgICB9LAogICAgIHsKLSAg
ICAgICJ0YWdzIjogWyJyaHl0aG0iLCAiZWFzeSIsICJtZWRpdW0iXSwKKyAgICAgICJ0YWdzIjog
WyJyaHl0aG0iLCAiZWFzeSIsICJtZWRpdW0iLCAiZWFzeS13aXRoLXJlc3RzIiwgIm1lZGl1bS13
aXRoLXJlc3RzIiwgInJlc3QtbGlzdGVuaW5nIl0sCiAgICAgICAibmFtZSI6ICJcdUUxRjBcdUUx
RjdcdUUxRjIiLAogICAgICAgInNlcXVlbmNlIjogIjggOCIKICAgICB9LAogICAgIHsKLSAgICAg
ICJ0YWdzIjogWyJyaHl0aG0iLCAiZWFzeSIsICJtZWRpdW0iXSwKKyAgICAgICJ0YWdzIjogWyJy
aHl0aG0iLCAiZWFzeSIsICJtZWRpdW0iLCAiZWFzeS13aXRoLXJlc3RzIiwgIm1lZGl1bS13aXRo
LXJlc3RzIiwgInJlc3QtbGlzdGVuaW5nIl0sCiAgICAgICAibmFtZSI6ICJcdUUxRjBcdUUxRjdc
dUUxRkNcdUUxRjdcdUUxRjQiLAogICAgICAgInNlcXVlbmNlIjogIjguIDE2IgogICAgIH0sCiAg
ICAgewotICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJlYXN5IiwgIm1lZGl1bSJdLAorICAgICAg
InRhZ3MiOiBbInJoeXRobSIsICJlYXN5IiwgIm1lZGl1bSIsICJlYXN5LXdpdGgtcmVzdHMiLCAi
bWVkaXVtLXdpdGgtcmVzdHMiLCAicmVzdC1saXN0ZW5pbmciXSwKICAgICAgICJuYW1lIjogIlx1
RTFGMFx1RTFGOVx1RTFGMlx1RTFGQyIsCiAgICAgICAic2VxdWVuY2UiOiAiMTYgOC4iCiAgICAg
fSwKICAgICB7Ci0gICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bSJdLAorICAgICAgInRh
Z3MiOiBbInJoeXRobSIsICJtZWRpdW0iLCAibWVkaXVtLXdpdGgtcmVzdHMiLCAicmVzdC1saXN0
ZW5pbmciXSwKICAgICAgICJuYW1lIjogIlx1RTFGMFx1RTFGOVx1RTFGNFx1RTFGOVx1RTFGNFx1
RTFGOVx1RTFGNCIsCiAgICAgICAic2VxdWVuY2UiOiAiMTYgMTYgMTYgMTYiCiAgICAgfSwKICAg
ICB7Ci0gICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bSJdLAorICAgICAgInRhZ3MiOiBb
InJoeXRobSIsICJtZWRpdW0iLCAibWVkaXVtLXdpdGgtcmVzdHMiLCAicmVzdC1saXN0ZW5pbmci
XSwKICAgICAgICJuYW1lIjogIlx1RTFGMFx1RTFGN1x1RTFGMlx1RTFGOVx1RTFGNCIsCiAgICAg
ICAic2VxdWVuY2UiOiAiOCAxNiAxNiIKICAgICB9LAogICAgIHsKLSAgICAgICJ0YWdzIjogWyJy
aHl0aG0iLCAibWVkaXVtIl0sCisgICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bSIsICJt
ZWRpdW0td2l0aC1yZXN0cyIsICJyZXN0LWxpc3RlbmluZyJdLAogICAgICAgIm5hbWUiOiAiXHVF
MUYwXHVFMUY5XHVFMUYyXHVFMUY3XHVFMUY0IiwKICAgICAgICJzZXF1ZW5jZSI6ICIxNiA4IDE2
IgogICAgIH0sCiAgICAgewotICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJtZWRpdW0iXSwKKyAg
ICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtIiwgIm1lZGl1bS13aXRoLXJlc3RzIiwgInJl
c3QtbGlzdGVuaW5nIl0sCiAgICAgICAibmFtZSI6ICJcdUUxRjBcdUUxRjlcdUUxRjRcdUUxRjdc
dUUxRjIiLAogICAgICAgInNlcXVlbmNlIjogIjE2IDE2IDgiCiAgICAgfQpkaWZmIC0tZ2l0IGEv
ZGF0YS9kZWZpbml0aW9ucy9yaHl0aG0tcmVzdC1kZWZpbml0aW9ucy5qc29uIGIvZGF0YS9kZWZp
bml0aW9ucy9yaHl0aG0tcmVzdC1kZWZpbml0aW9ucy5qc29uCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLjRiMGRjZTMKLS0tIC9kZXYvbnVsbAorKysgYi9kYXRhL2RlZmluaXRp
b25zL3JoeXRobS1yZXN0LWRlZmluaXRpb25zLmpzb24KQEAgLTAsMCArMSwxOTQgQEAKK3sKKyAg
ImRlZmluaXRpb25zIjogWworICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAiZWFzeS13
aXRoLXJlc3RzIiwgIm1lZGl1bS13aXRoLXJlc3RzIiwgInJlc3QtbGlzdGVuaW5nIl0sCisgICAg
ICAibmFtZSI6ICJcdUU0RTYgXHVFMUQ3IiwKKyAgICAgICJzZXF1ZW5jZSI6ICJyOCA4IgorICAg
IH0sCisgICAgeworICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJlYXN5LXdpdGgtcmVzdHMiLCAi
bWVkaXVtLXdpdGgtcmVzdHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTFENyBcdUU0RTYiLAorICAg
ICAgInNlcXVlbmNlIjogIjggcjgiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsicmh5
dGhtIiwgImVhc3ktd2l0aC1yZXN0cyIsICJtZWRpdW0td2l0aC1yZXN0cyIsICJyZXN0LWxpc3Rl
bmluZyJdLAorICAgICAgIm5hbWUiOiAiXHVFNEU2XHVFMUU3IFx1RTFEOSIsCisgICAgICAic2Vx
dWVuY2UiOiAicjguIDE2IgorICAgIH0sCisgICAgeworICAgICAgInRhZ3MiOiBbInJoeXRobSIs
ICJlYXN5LXdpdGgtcmVzdHMiLCAibWVkaXVtLXdpdGgtcmVzdHMiXSwKKyAgICAgICJuYW1lIjog
Ilx1RTFEN1x1RTFFNyBcdUU0RTciLAorICAgICAgInNlcXVlbmNlIjogIjguIHIxNiIKKyAgICB9
LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAiZWFzeS13aXRoLXJlc3RzIiwgIm1l
ZGl1bS13aXRoLXJlc3RzIiwgInJlc3QtbGlzdGVuaW5nIl0sCisgICAgICAibmFtZSI6ICJcdUU0
RTcgXHVFMUQ3XHVFMUU3IiwKKyAgICAgICJzZXF1ZW5jZSI6ICJyMTYgOC4iCisgICAgfSwKKyAg
ICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgImVhc3ktd2l0aC1yZXN0cyIsICJtZWRpdW0t
d2l0aC1yZXN0cyJdLAorICAgICAgIm5hbWUiOiAiXHVFMUQ5IFx1RTRFNlx1RTFFNyIsCisgICAg
ICAic2VxdWVuY2UiOiAiMTYgcjguIgorICAgIH0sCisgICAgeworICAgICAgInRhZ3MiOiBbInJo
eXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyIsICJyZXN0LWxpc3RlbmluZyJdLAorICAgICAgIm5h
bWUiOiAiXHVFNEU3IFx1RTFGMFx1RTFGOVx1RTFGNFx1RTFGOVx1RTFGNCIsCisgICAgICAic2Vx
dWVuY2UiOiAicjE2IDE2IDE2IDE2IgorICAgIH0sCisgICAgeworICAgICAgInRhZ3MiOiBbInJo
eXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyJdLAorICAgICAgIm5hbWUiOiAiXHVFMUQ5IFx1RTRF
NyBcdUUxRjBcdUUxRjlcdUUxRjQiLAorICAgICAgInNlcXVlbmNlIjogIjE2IHIxNiAxNiAxNiIK
KyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgtcmVz
dHMiLCAicmVzdC1saXN0ZW5pbmciXSwKKyAgICAgICJuYW1lIjogIlx1RTRFNyBcdUU0RTcgXHVF
MUYwXHVFMUY5XHVFMUY0IiwKKyAgICAgICJzZXF1ZW5jZSI6ICJyMTYgcjE2IDE2IDE2IgorICAg
IH0sCisgICAgeworICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyJd
LAorICAgICAgIm5hbWUiOiAiXHVFMUYwXHVFMUY5XHVFMUY0IFx1RTRFNyBcdUUxRDkiLAorICAg
ICAgInNlcXVlbmNlIjogIjE2IDE2IHIxNiAxNiIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdz
IjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgtcmVzdHMiLCAicmVzdC1saXN0ZW5pbmciXSwKKyAg
ICAgICJuYW1lIjogIlx1RTRFNyBcdUUxRDkgXHVFNEU3IFx1RTFEOSIsCisgICAgICAic2VxdWVu
Y2UiOiAicjE2IDE2IHIxNiAxNiIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0
aG0iLCAibWVkaXVtLXdpdGgtcmVzdHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTFEOSBcdUU0RTcg
XHVFNEU3IFx1RTFEOSIsCisgICAgICAic2VxdWVuY2UiOiAiMTYgcjE2IHIxNiAxNiIKKyAgICB9
LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgtcmVzdHMiXSwK
KyAgICAgICJuYW1lIjogIlx1RTRFNyBcdUU0RTcgXHVFNEU3IFx1RTFEOSIsCisgICAgICAic2Vx
dWVuY2UiOiAicjE2IHIxNiByMTYgMTYiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsi
cmh5dGhtIiwgIm1lZGl1bS13aXRoLXJlc3RzIl0sCisgICAgICAibmFtZSI6ICJcdUUxRjBcdUUx
RjlcdUUxRjRcdUUxRjlcdUUxRjQgXHVFNEU3IiwKKyAgICAgICJzZXF1ZW5jZSI6ICIxNiAxNiAx
NiByMTYiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bS13
aXRoLXJlc3RzIiwgInJlc3QtbGlzdGVuaW5nIl0sCisgICAgICAibmFtZSI6ICJcdUU0RTcgXHVF
MUYwXHVFMUY5XHVFMUY0IFx1RTRFNyIsCisgICAgICAic2VxdWVuY2UiOiAicjE2IDE2IDE2IHIx
NiIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgt
cmVzdHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTFEOSBcdUU0RTcgXHVFMUQ5IFx1RTRFNyIsCisg
ICAgICAic2VxdWVuY2UiOiAiMTYgcjE2IDE2IHIxNiIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0
YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgtcmVzdHMiXSwKKyAgICAgICJuYW1lIjogIlx1
RTRFNyBcdUU0RTcgXHVFMUQ5IFx1RTRFNyIsCisgICAgICAic2VxdWVuY2UiOiAicjE2IHIxNiAx
NiByMTYiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bS13
aXRoLXJlc3RzIl0sCisgICAgICAibmFtZSI6ICJcdUUxRjBcdUUxRjlcdUUxRjQgXHVFNEU3IFx1
RTRFNyIsCisgICAgICAic2VxdWVuY2UiOiAiMTYgMTYgcjE2IHIxNiIKKyAgICB9LAorICAgIHsK
KyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgtcmVzdHMiXSwKKyAgICAgICJu
YW1lIjogIlx1RTRFNyBcdUUxRDkgXHVFNEU3IFx1RTRFNyIsCisgICAgICAic2VxdWVuY2UiOiAi
cjE2IDE2IHIxNiByMTYiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwg
Im1lZGl1bS13aXRoLXJlc3RzIl0sCisgICAgICAibmFtZSI6ICJcdUUxRDkgXHVFNEU3IFx1RTRF
NyBcdUU0RTciLAorICAgICAgInNlcXVlbmNlIjogIjE2IHIxNiByMTYgcjE2IgorICAgIH0sCisg
ICAgeworICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyJdLAorICAg
ICAgIm5hbWUiOiAiXHVFNEU2IFx1RTFGMFx1RTFGOVx1RTFGNCIsCisgICAgICAic2VxdWVuY2Ui
OiAicjggMTYgMTYiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1l
ZGl1bS13aXRoLXJlc3RzIl0sCisgICAgICAibmFtZSI6ICJcdUUxRDcgXHVFNEU3IFx1RTFEOSIs
CisgICAgICAic2VxdWVuY2UiOiAiOCByMTYgMTYiCisgICAgfSwKKyAgICB7CisgICAgICAidGFn
cyI6IFsicmh5dGhtIiwgIm1lZGl1bS13aXRoLXJlc3RzIl0sCisgICAgICAibmFtZSI6ICJcdUU0
RTYgXHVFNEU3IFx1RTFEOSIsCisgICAgICAic2VxdWVuY2UiOiAicjggcjE2IDE2IgorICAgIH0s
CisgICAgeworICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyJdLAor
ICAgICAgIm5hbWUiOiAiXHVFMUQ3IFx1RTFEOSBcdUU0RTciLAorICAgICAgInNlcXVlbmNlIjog
IjggMTYgcjE2IgorICAgIH0sCisgICAgeworICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJtZWRp
dW0td2l0aC1yZXN0cyJdLAorICAgICAgIm5hbWUiOiAiXHVFNEU2IFx1RTFEOSBcdUU0RTciLAor
ICAgICAgInNlcXVlbmNlIjogInI4IDE2IHIxNiIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdz
IjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgtcmVzdHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTFE
NyBcdUU0RTcgXHVFNEU3IiwKKyAgICAgICJzZXF1ZW5jZSI6ICI4IHIxNiByMTYiCisgICAgfSwK
KyAgICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bS13aXRoLXJlc3RzIl0sCisg
ICAgICAibmFtZSI6ICJcdUU0RTcgXHVFMUQ3IFx1RTFEOSIsCisgICAgICAic2VxdWVuY2UiOiAi
cjE2IDggMTYiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1
bS13aXRoLXJlc3RzIl0sCisgICAgICAibmFtZSI6ICJcdUUxRDkgXHVFNEU2IFx1RTFEOSIsCisg
ICAgICAic2VxdWVuY2UiOiAiMTYgcjggMTYiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6
IFsicmh5dGhtIiwgIm1lZGl1bS13aXRoLXJlc3RzIl0sCisgICAgICAibmFtZSI6ICJcdUU0RTcg
XHVFNEU2IFx1RTFEOSIsCisgICAgICAic2VxdWVuY2UiOiAicjE2IHI4IDE2IgorICAgIH0sCisg
ICAgeworICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyJdLAorICAg
ICAgIm5hbWUiOiAiXHVFMUQ5IFx1RTFENyBcdUU0RTciLAorICAgICAgInNlcXVlbmNlIjogIjE2
IDggcjE2IgorICAgIH0sCisgICAgeworICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJtZWRpdW0t
d2l0aC1yZXN0cyJdLAorICAgICAgIm5hbWUiOiAiXHVFNEU3IFx1RTFENyBcdUU0RTciLAorICAg
ICAgInNlcXVlbmNlIjogInIxNiA4IHIxNiIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjog
WyJyaHl0aG0iLCAibWVkaXVtLXdpdGgtcmVzdHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTFEOSBc
dUU0RTYgXHVFNEU3IiwKKyAgICAgICJzZXF1ZW5jZSI6ICIxNiByOCByMTYiCisgICAgfSwKKyAg
ICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bS13aXRoLXJlc3RzIl0sCisgICAg
ICAibmFtZSI6ICJcdUU0RTcgXHVFMUQ5IFx1RTFENyIsCisgICAgICAic2VxdWVuY2UiOiAicjE2
IDE2IDgiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bS13
aXRoLXJlc3RzIl0sCisgICAgICAibmFtZSI6ICJcdUUxRDkgXHVFNEU3IFx1RTFENyIsCisgICAg
ICAic2VxdWVuY2UiOiAiMTYgcjE2IDgiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsi
cmh5dGhtIiwgIm1lZGl1bS13aXRoLXJlc3RzIl0sCisgICAgICAibmFtZSI6ICJcdUU0RTcgXHVF
NEU3IFx1RTFENyIsCisgICAgICAic2VxdWVuY2UiOiAicjE2IHIxNiA4IgorICAgIH0sCisgICAg
eworICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyJdLAorICAgICAg
Im5hbWUiOiAiXHVFMUYwXHVFMUY5XHVFMUY0IFx1RTRFNiIsCisgICAgICAic2VxdWVuY2UiOiAi
MTYgMTYgcjgiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1
bS13aXRoLXJlc3RzIl0sCisgICAgICAibmFtZSI6ICJcdUU0RTcgXHVFMUQ5IFx1RTRFNiIsCisg
ICAgICAic2VxdWVuY2UiOiAicjE2IDE2IHI4IgorICAgIH0sCisgICAgeworICAgICAgInRhZ3Mi
OiBbInJoeXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyJdLAorICAgICAgIm5hbWUiOiAiXHVFMUQ5
IFx1RTRFNyBcdUU0RTYiLAorICAgICAgInNlcXVlbmNlIjogIjE2IHIxNiByOCIKKyAgICB9Cisg
IF0KK30KZGlmZiAtLWdpdCBhL2RhdGEvZXhlcmNpc2VzL0NNYWtlTGlzdHMudHh0IGIvZGF0YS9l
eGVyY2lzZXMvQ01ha2VMaXN0cy50eHQKaW5kZXggMTAzZDgxNy4uZjM4N2RmYiAxMDA2NDQKLS0t
IGEvZGF0YS9leGVyY2lzZXMvQ01ha2VMaXN0cy50eHQKKysrIGIvZGF0YS9leGVyY2lzZXMvQ01h
a2VMaXN0cy50eHQKQEAgLTE4LDcgKzE4LDkgQEAgc2V0KE1JTlVFVF9FWEVSQ0lTRVMKICAgICBz
Y2FsZXMtc2ltbWV0cmljLWV4ZXJjaXNlcy5qc29uCiAgICAgc2NhbGVzLWJlYm9wLWV4ZXJjaXNl
cy5qc29uCiAgICAgcmh5dGhtLWVhc3kuanNvbgorICAgIHJoeXRobS1lYXN5LXJlc3RzLmpzb24K
ICAgICByaHl0aG0tbWVkaXVtLmpzb24KKyAgICByaHl0aG0tbWVkaXVtLXJlc3RzLmpzb24KICkK
IAogaW5zdGFsbChGSUxFUyAke01JTlVFVF9FWEVSQ0lTRVN9CmRpZmYgLS1naXQgYS9kYXRhL2V4
ZXJjaXNlcy9yaHl0aG0tZWFzeS1yZXN0cy5qc29uIGIvZGF0YS9leGVyY2lzZXMvcmh5dGhtLWVh
c3ktcmVzdHMuanNvbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNTgwMTY2
Ci0tLSAvZGV2L251bGwKKysrIGIvZGF0YS9leGVyY2lzZXMvcmh5dGhtLWVhc3ktcmVzdHMuanNv
bgpAQCAtMCwwICsxLDE5IEBACit7CisgICJleGVyY2lzZXMiOiBbCisgICAgeworICAgICAgIm5h
bWUiOiAiUmh5dGhtIiwKKyAgICAgICJwbGF5TW9kZSI6ICJyaHl0aG0iLAorICAgICAgInVzZXJN
ZXNzYWdlIjogIkhlYXIgdGhlIHJoeXRobSBhbmQgY2hvb3NlIHlvdXIgYW5zd2VycyIsCisgICAg
ICAidGVtcGxhdGUiOiAibGlseXBvbmQtdGVtcGxhdGVzL3JoeXRobS5seS50bXBsIiwKKyAgICAg
ICJfaWNvbiI6ICJtaW51ZXQtcmh5dGhtcy1zeW1ib2xpYy5zdmciLAorICAgICAgImNoaWxkcmVu
IjogWworICAgICAgICB7CisgICAgICAgICAgIm5hbWUiOiAiRWFzeSB3aXRoIHJlc3RzIiwKKyAg
ICAgICAgICAiYW5kLXRhZ3MiOiBbInJoeXRobSIsICJlYXN5LXdpdGgtcmVzdHMiLCAicmVzdC1s
aXN0ZW5pbmciXSwKKyAgICAgICAgICAiY2xhcHBpbmctYW5kLXRhZ3MiOiBbInJoeXRobSIsICJl
YXN5LXdpdGgtcmVzdHMiXSwKKyAgICAgICAgICAiZGVzY3JpcHRpb24iOiAiUHJhY3RpY2UgYmFz
aWMgcmh5dGhtIHBhdHRlcm5zIHRoYXQgY29tYmluZSBub3RlcyBhbmQgcmVzdHMuIgorICAgICAg
ICB9CisgICAgICBdCisgICAgfQorICBdCit9CmRpZmYgLS1naXQgYS9kYXRhL2V4ZXJjaXNlcy9y
aHl0aG0tbWVkaXVtLXJlc3RzLmpzb24gYi9kYXRhL2V4ZXJjaXNlcy9yaHl0aG0tbWVkaXVtLXJl
c3RzLmpzb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjk2NGQ2OQotLS0g
L2Rldi9udWxsCisrKyBiL2RhdGEvZXhlcmNpc2VzL3JoeXRobS1tZWRpdW0tcmVzdHMuanNvbgpA
QCAtMCwwICsxLDE5IEBACit7CisgICJleGVyY2lzZXMiOiBbCisgICAgeworICAgICAgIm5hbWUi
OiAiUmh5dGhtIiwKKyAgICAgICJwbGF5TW9kZSI6ICJyaHl0aG0iLAorICAgICAgInVzZXJNZXNz
YWdlIjogIkhlYXIgdGhlIHJoeXRobSBhbmQgY2hvb3NlIHlvdXIgYW5zd2VycyIsCisgICAgICAi
dGVtcGxhdGUiOiAibGlseXBvbmQtdGVtcGxhdGVzL3JoeXRobS5seS50bXBsIiwKKyAgICAgICJf
aWNvbiI6ICJtaW51ZXQtcmh5dGhtcy1zeW1ib2xpYy5zdmciLAorICAgICAgImNoaWxkcmVuIjog
WworICAgICAgICB7CisgICAgICAgICAgIm5hbWUiOiAiTWVkaXVtIHdpdGggcmVzdHMiLAorICAg
ICAgICAgICJhbmQtdGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bS13aXRoLXJlc3RzIiwgInJlc3Qt
bGlzdGVuaW5nIl0sCisgICAgICAgICAgImNsYXBwaW5nLWFuZC10YWdzIjogWyJyaHl0aG0iLCAi
bWVkaXVtLXdpdGgtcmVzdHMiXSwKKyAgICAgICAgICAiZGVzY3JpcHRpb24iOiAiUHJhY3RpY2Ug
dmFyaWVkIHJoeXRobSBwYXR0ZXJucyB0aGF0IGNvbWJpbmUgbm90ZXMgYW5kIHJlc3RzLiIKKyAg
ICAgICAgfQorICAgICAgXQorICAgIH0KKyAgXQorfQpkaWZmIC0tZ2l0IGEvZG9jL2luZGV4LmRv
Y2Jvb2sgYi9kb2MvaW5kZXguZG9jYm9vawppbmRleCAyMDcxZmEzLi45MGNlODgzIDEwMDY0NAot
LS0gYS9kb2MvaW5kZXguZG9jYm9vaworKysgYi9kb2MvaW5kZXguZG9jYm9vawpAQCAtMjIwLDYg
KzIyMCwxMiBAQCBSaHl0aG0gZXhlcmNpc2VzIGZvY3VzIG9uIHRpbWluZyByYXRoZXIgdGhhbiBw
aXRjaC4gSW4gdGhlIGNsYXBwaW5nIG1vZGUsICZtaW51ZQogbWljcm9waG9uZSBpbnB1dCBhbmQg
Y29tcGFyZXMgdGhlIG9uc2V0cyB0byB0aGUgdGFyZ2V0IHBhdHRlcm4uCiA8L3BhcmE+CiAKKzxw
YXJhPgorVGhlIDxndWlsYWJlbD5FYXN5IHdpdGggcmVzdHM8L2d1aWxhYmVsPiBhbmQgPGd1aWxh
YmVsPk1lZGl1bSB3aXRoIHJlc3RzPC9ndWlsYWJlbD4gY2F0ZWdvcmllcyBhZGQKK3NpbGVudCBw
b3NpdGlvbnMgdG8gdGhlIGNvcnJlc3BvbmRpbmcgbm90ZS1vbmx5IHBhdHRlcm5zLiBMaXN0ZW5p
bmcgZXhlcmNpc2VzIGF2b2lkIGNob2ljZXMgdGhhdAorc291bmQgaWRlbnRpY2FsLCB3aGlsZSA8
Z3VpbGFiZWw+UmVhZCBhbmQgY2xhcDwvZ3VpbGFiZWw+IGluY2x1ZGVzIGV2ZXJ5IG1peGVkIG5v
dGUtYW5kLXJlc3QgcGF0dGVybi4KKzwvcGFyYT4KKwogPHNjcmVlbnNob3Q+CiAgIDxzY3JlZW5p
bmZvPiZtaW51ZXQ7IGNsYXBwaW5nIGV4ZXJjaXNlPC9zY3JlZW5pbmZvPgogICA8bWVkaWFvYmpl
Y3Q+CmRpZmYgLS1naXQgYS9zcmMvYXBwL0NNYWtlTGlzdHMudHh0IGIvc3JjL2FwcC9DTWFrZUxp
c3RzLnR4dAppbmRleCBhMTJlNTQwLi45YmM2NjExIDEwMDY0NAotLS0gYS9zcmMvYXBwL0NNYWtl
TGlzdHMudHh0CisrKyBiL3NyYy9hcHAvQ01ha2VMaXN0cy50eHQKQEAgLTMzMCw2ICszMzAsMTUg
QEAgaWYoTk9UIE1JTlVFVF9NT0JJTEVfUExBVEZPUk0pCiAgICAgdGFyZ2V0X2xpbmtfbGlicmFy
aWVzKG1pbnVldCBQUklWQVRFIEtGNjo6Q3Jhc2gpCiBlbmRpZigpCiAKK2lmKEJVSUxEX1RFU1RJ
TkcgQU5EIE5PVCBNSU5VRVRfTU9CSUxFX1BMQVRGT1JNKQorICAgIGFkZF9leGVjdXRhYmxlKHJo
eXRobXJlc3R0ZXN0IGF1dG90ZXN0cy9yaHl0aG1yZXN0dGVzdC5jcHApCisgICAgdGFyZ2V0X2Nv
bXBpbGVfZGVmaW5pdGlvbnMoCisgICAgICAgIHJoeXRobXJlc3R0ZXN0IFBSSVZBVEUgTUlOVUVU
X1NPVVJDRV9ESVI9IiR7Q01BS0VfU09VUkNFX0RJUn0iCisgICAgKQorICAgIHRhcmdldF9saW5r
X2xpYnJhcmllcyhyaHl0aG1yZXN0dGVzdCBRdDo6Q29yZSBRdDo6VGVzdCBNaW51ZXQ6OlV0aWxz
KQorICAgIGFkZF90ZXN0KE5BTUUgcmh5dGhtcmVzdHRlc3QgQ09NTUFORCByaHl0aG1yZXN0dGVz
dCkKK2VuZGlmKCkKKwogaWYoTk9UIE1JTlVFVF9NT0JJTEVfUExBVEZPUk0pCiAgICAgaW5zdGFs
bChUQVJHRVRTIG1pbnVldCAke0tERV9JTlNUQUxMX1RBUkdFVFNfREVGQVVMVF9BUkdTfSkKICAg
ICBpbnN0YWxsKFBST0dSQU1TIG9yZy5rZGUubWludWV0LmRlc2t0b3AgREVTVElOQVRJT04gJHtL
REVfSU5TVEFMTF9BUFBESVJ9KQpkaWZmIC0tZ2l0IGEvc3JjL2FwcC9hdXRvdGVzdHMvcmh5dGht
cmVzdHRlc3QuY3BwIGIvc3JjL2FwcC9hdXRvdGVzdHMvcmh5dGhtcmVzdHRlc3QuY3BwCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk1OGY2Y2IKLS0tIC9kZXYvbnVsbAorKysg
Yi9zcmMvYXBwL2F1dG90ZXN0cy9yaHl0aG1yZXN0dGVzdC5jcHAKQEAgLTAsMCArMSwyODYgQEAK
Ky8vIFNQRFgtRmlsZUNvcHlyaWdodFRleHQ6IDIwMjYgU2FuZHJvIEFuZHJhZGUgPHNhbmRyb2Fu
ZHJhZGVAa2RlLm9yZz4KKy8vCisvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMC1v
ci1sYXRlcgorCisjaW5jbHVkZSA8dXRpbHMvcmh5dGhtdG9rZW4uaD4KKworI2luY2x1ZGUgPFFG
aWxlPgorI2luY2x1ZGUgPFFKc29uQXJyYXk+CisjaW5jbHVkZSA8UUpzb25Eb2N1bWVudD4KKyNp
bmNsdWRlIDxRSnNvbk9iamVjdD4KKyNpbmNsdWRlIDxRU2V0PgorI2luY2x1ZGUgPFFUZXN0Pgor
CisjaW5jbHVkZSA8dXRpbGl0eT4KKwordXNpbmcgbmFtZXNwYWNlIFF0OjpTdHJpbmdMaXRlcmFs
czsKKworbmFtZXNwYWNlCit7CitRSnNvbkFycmF5IGxvYWRBcnJheShjb25zdCBRU3RyaW5nICZy
ZWxhdGl2ZVBhdGgsIGNvbnN0IFFTdHJpbmcgJmFycmF5TmFtZSkKK3sKKyAgICBRRmlsZSBmaWxl
KHUiJTEvJTIiX3MuYXJnKFFTdHJpbmdMaXRlcmFsKE1JTlVFVF9TT1VSQ0VfRElSKSwgcmVsYXRp
dmVQYXRoKSk7CisgICAgaWYgKCFmaWxlLm9wZW4oUUlPRGV2aWNlOjpSZWFkT25seSkpIHsKKyAg
ICAgICAgcmV0dXJuIHt9OworICAgIH0KKyAgICByZXR1cm4gUUpzb25Eb2N1bWVudDo6ZnJvbUpz
b24oZmlsZS5yZWFkQWxsKCkpLm9iamVjdCgpLnZhbHVlKGFycmF5TmFtZSkudG9BcnJheSgpOwor
fQorCitib29sIGhhc1RhZyhjb25zdCBRSnNvbk9iamVjdCAmZGVmaW5pdGlvbiwgY29uc3QgUVN0
cmluZyAmdGFnKQoreworICAgIHJldHVybiBkZWZpbml0aW9uLnZhbHVlKHUidGFncyJfcykudG9B
cnJheSgpLmNvbnRhaW5zKHRhZyk7Cit9CisKK1FKc29uQXJyYXkgZGVmaW5pdGlvbnNXaXRoVGFn
cyhjb25zdCBRSnNvbkFycmF5ICZkZWZpbml0aW9ucywgY29uc3QgUVN0cmluZ0xpc3QgJnRhZ3Mp
Cit7CisgICAgUUpzb25BcnJheSBmaWx0ZXJlZDsKKyAgICBmb3IgKGNvbnN0IFFKc29uVmFsdWUg
JnZhbHVlIDogZGVmaW5pdGlvbnMpIHsKKyAgICAgICAgY29uc3QgUUpzb25PYmplY3QgZGVmaW5p
dGlvbiA9IHZhbHVlLnRvT2JqZWN0KCk7CisgICAgICAgIGJvb2wgbWF0Y2hlcyA9IHRydWU7Cisg
ICAgICAgIGZvciAoY29uc3QgUVN0cmluZyAmdGFnIDogdGFncykgeworICAgICAgICAgICAgaWYg
KCFoYXNUYWcoZGVmaW5pdGlvbiwgdGFnKSkgeworICAgICAgICAgICAgICAgIG1hdGNoZXMgPSBm
YWxzZTsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQor
ICAgICAgICBpZiAobWF0Y2hlcykgeworICAgICAgICAgICAgZmlsdGVyZWQuYXBwZW5kKGRlZmlu
aXRpb24pOworICAgICAgICB9CisgICAgfQorICAgIHJldHVybiBmaWx0ZXJlZDsKK30KKworUVN0
cmluZ0xpc3Qgc3RyaW5nTGlzdChjb25zdCBRSnNvbkFycmF5ICZ2YWx1ZXMpCit7CisgICAgUVN0
cmluZ0xpc3Qgc3RyaW5nczsKKyAgICBmb3IgKGNvbnN0IFFKc29uVmFsdWUgJnZhbHVlIDogdmFs
dWVzKSB7CisgICAgICAgIHN0cmluZ3MuYXBwZW5kKHZhbHVlLnRvU3RyaW5nKCkpOworICAgIH0K
KyAgICByZXR1cm4gc3RyaW5nczsKK30KKworUUpzb25PYmplY3QgcmVzdENhdGVnb3J5KGNvbnN0
IFFTdHJpbmcgJnJlbGF0aXZlUGF0aCkKK3sKKyAgICBjb25zdCBRSnNvbkFycmF5IGV4ZXJjaXNl
cyA9IGxvYWRBcnJheShyZWxhdGl2ZVBhdGgsIHUiZXhlcmNpc2VzIl9zKTsKKyAgICBpZiAoZXhl
cmNpc2VzLmlzRW1wdHkoKSkgeworICAgICAgICByZXR1cm4ge307CisgICAgfQorICAgIGNvbnN0
IFFKc29uQXJyYXkgY2hpbGRyZW4gPSBleGVyY2lzZXMuZmlyc3QoKS50b09iamVjdCgpLnZhbHVl
KHUiY2hpbGRyZW4iX3MpLnRvQXJyYXkoKTsKKyAgICBmb3IgKGNvbnN0IFFKc29uVmFsdWUgJnZh
bHVlIDogY2hpbGRyZW4pIHsKKyAgICAgICAgY29uc3QgUUpzb25PYmplY3QgY2F0ZWdvcnkgPSB2
YWx1ZS50b09iamVjdCgpOworICAgICAgICBpZiAoY2F0ZWdvcnkudmFsdWUodSJuYW1lIl9zKS50
b1N0cmluZygpLmVuZHNXaXRoKHUid2l0aCByZXN0cyJfcykpIHsKKyAgICAgICAgICAgIHJldHVy
biBjYXRlZ29yeTsKKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4ge307Cit9CisKK1FTdHJp
bmcgbmFtZUZvclNlcXVlbmNlKGNvbnN0IFFKc29uQXJyYXkgJmRlZmluaXRpb25zLCBjb25zdCBR
U3RyaW5nICZzZXF1ZW5jZSkKK3sKKyAgICBmb3IgKGNvbnN0IFFKc29uVmFsdWUgJnZhbHVlIDog
ZGVmaW5pdGlvbnMpIHsKKyAgICAgICAgY29uc3QgUUpzb25PYmplY3QgZGVmaW5pdGlvbiA9IHZh
bHVlLnRvT2JqZWN0KCk7CisgICAgICAgIGlmIChkZWZpbml0aW9uLnZhbHVlKHUic2VxdWVuY2Ui
X3MpLnRvU3RyaW5nKCkgPT0gc2VxdWVuY2UpIHsKKyAgICAgICAgICAgIHJldHVybiBkZWZpbml0
aW9uLnZhbHVlKHUibmFtZSJfcykudG9TdHJpbmcoKTsKKyAgICAgICAgfQorICAgIH0KKyAgICBy
ZXR1cm4ge307Cit9CisKK1FTdHJpbmcgb25zZXRTaWduYXR1cmUoY29uc3QgUVN0cmluZyAmc2Vx
dWVuY2UpCit7CisgICAgUVN0cmluZ0xpc3Qgb25zZXRzOworICAgIGRvdWJsZSBjdXJzb3IgPSAw
LjA7CisgICAgZm9yIChjb25zdCBRU3RyaW5nICZ0ZXh0IDogc2VxdWVuY2Uuc3BsaXQodScgJywg
UXQ6OlNraXBFbXB0eVBhcnRzKSkgeworICAgICAgICBjb25zdCBNaW51ZXQ6OlJoeXRobVRva2Vu
IHRva2VuID0gTWludWV0OjpwYXJzZVJoeXRobVRva2VuKHRleHQpOworICAgICAgICBpZiAoIXRv
a2VuLnJlc3QpIHsKKyAgICAgICAgICAgIG9uc2V0cy5hcHBlbmQoUVN0cmluZzo6bnVtYmVyKGN1
cnNvciwgJ2YnLCAyKSk7CisgICAgICAgIH0KKyAgICAgICAgY3Vyc29yICs9IHRva2VuLnF1YXJ0
ZXJOb3RlQmVhdHMoKTsKKyAgICB9CisgICAgcmV0dXJuIG9uc2V0cy5qb2luKHUnLCcpOworfQor
CitRU2V0PFFTdHJpbmc+IGV4cGVjdGVkUmVzdFZhcmlhbnRzKGNvbnN0IFFKc29uQXJyYXkgJmJh
c2VEZWZpbml0aW9ucykKK3sKKyAgICBRU2V0PFFTdHJpbmc+IHZhcmlhbnRzOworICAgIGZvciAo
Y29uc3QgUUpzb25WYWx1ZSAmdmFsdWUgOiBiYXNlRGVmaW5pdGlvbnMpIHsKKyAgICAgICAgY29u
c3QgUVN0cmluZ0xpc3QgdG9rZW5zID0gdmFsdWUudG9PYmplY3QoKS52YWx1ZSh1InNlcXVlbmNl
Il9zKS50b1N0cmluZygpLnNwbGl0KHUnICcsIFF0OjpTa2lwRW1wdHlQYXJ0cyk7CisgICAgICAg
IGNvbnN0IGludCBhbGxSZXN0TWFzayA9ICgxIDw8IHRva2Vucy5zaXplKCkpIC0gMTsKKyAgICAg
ICAgZm9yIChpbnQgbWFzayA9IDE7IG1hc2sgPCBhbGxSZXN0TWFzazsgKyttYXNrKSB7CisgICAg
ICAgICAgICBRU3RyaW5nTGlzdCB2YXJpYW50ID0gdG9rZW5zOworICAgICAgICAgICAgZm9yIChp
bnQgdG9rZW5JbmRleCA9IDA7IHRva2VuSW5kZXggPCB2YXJpYW50LnNpemUoKTsgKyt0b2tlbklu
ZGV4KSB7CisgICAgICAgICAgICAgICAgaWYgKG1hc2sgJiAoMSA8PCB0b2tlbkluZGV4KSkgewor
ICAgICAgICAgICAgICAgICAgICB2YXJpYW50W3Rva2VuSW5kZXhdLnByZXBlbmQodSdyJyk7Cisg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgdmFyaWFudHMuaW5z
ZXJ0KHZhcmlhbnQuam9pbih1JyAnKSk7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIHZh
cmlhbnRzOworfQorfQorCitjbGFzcyBSaHl0aG1SZXN0VGVzdCA6IHB1YmxpYyBRT2JqZWN0Cit7
CisgICAgUV9PQkpFQ1QKKworcHJpdmF0ZSBRX1NMT1RTOgorICAgIHZvaWQgaW5pdFRlc3RDYXNl
KCk7CisgICAgdm9pZCBwYXJzZXNSaHl0aG1Ub2tlbnMoKTsKKyAgICB2b2lkIGNvbnRhaW5zRXZl
cnlNaXhlZFJlc3RWYXJpYW50KCk7CisgICAgdm9pZCBjYXRlZ29yeUNvdW50c0FyZVN0YWJsZSgp
OworICAgIHZvaWQgY2F0ZWdvcnlGaWx0ZXJzTWF0Y2hQcmFjdGljZU1vZGVzKCk7CisgICAgdm9p
ZCBjb25zZWN1dGl2ZVNpeHRlZW50aHNVc2VCZWFtcygpOworICAgIHZvaWQgbGlzdGVuaW5nUGF0
dGVybnNIYXZlVW5pcXVlT25zZXRzKCk7CisgICAgdm9pZCBldmVyeVBhdHRlcm5GaWxsc09uZUJl
YXQoKTsKKworcHJpdmF0ZToKKyAgICBRSnNvbkFycmF5IG1fYmFzZURlZmluaXRpb25zOworICAg
IFFKc29uQXJyYXkgbV9yZXN0RGVmaW5pdGlvbnM7CisgICAgUUpzb25BcnJheSBtX2FsbERlZmlu
aXRpb25zOworfTsKKwordm9pZCBSaHl0aG1SZXN0VGVzdDo6aW5pdFRlc3RDYXNlKCkKK3sKKyAg
ICBtX2Jhc2VEZWZpbml0aW9ucyA9IGxvYWRBcnJheSh1ImRhdGEvZGVmaW5pdGlvbnMvcmh5dGht
LWRlZmluaXRpb25zLmpzb24iX3MsIHUiZGVmaW5pdGlvbnMiX3MpOworICAgIG1fcmVzdERlZmlu
aXRpb25zID0gbG9hZEFycmF5KHUiZGF0YS9kZWZpbml0aW9ucy9yaHl0aG0tcmVzdC1kZWZpbml0
aW9ucy5qc29uIl9zLCB1ImRlZmluaXRpb25zIl9zKTsKKyAgICBRVkVSSUZZKCFtX2Jhc2VEZWZp
bml0aW9ucy5pc0VtcHR5KCkpOworICAgIFFWRVJJRlkoIW1fcmVzdERlZmluaXRpb25zLmlzRW1w
dHkoKSk7CisKKyAgICBtX2FsbERlZmluaXRpb25zID0gbV9iYXNlRGVmaW5pdGlvbnM7CisgICAg
Zm9yIChjb25zdCBRSnNvblZhbHVlICZkZWZpbml0aW9uIDogc3RkOjphc19jb25zdChtX3Jlc3RE
ZWZpbml0aW9ucykpIHsKKyAgICAgICAgbV9hbGxEZWZpbml0aW9ucy5hcHBlbmQoZGVmaW5pdGlv
bik7CisgICAgfQorfQorCit2b2lkIFJoeXRobVJlc3RUZXN0OjpwYXJzZXNSaHl0aG1Ub2tlbnMo
KQoreworICAgIGNvbnN0IE1pbnVldDo6Umh5dGhtVG9rZW4gbm90ZSA9IE1pbnVldDo6cGFyc2VS
aHl0aG1Ub2tlbih1IjE2Iik7CisgICAgUVZFUklGWShub3RlLnZhbGlkKTsKKyAgICBRVkVSSUZZ
KCFub3RlLnJlc3QpOworICAgIFFWRVJJRlkoIW5vdGUuZG90dGVkKTsKKyAgICBRQ09NUEFSRShu
b3RlLmRlbm9taW5hdG9yLCAxNik7CisgICAgUUNPTVBBUkUobm90ZS5xdWFydGVyTm90ZUJlYXRz
KCksIDAuMjUpOworCisgICAgY29uc3QgTWludWV0OjpSaHl0aG1Ub2tlbiByZXN0ID0gTWludWV0
OjpwYXJzZVJoeXRobVRva2VuKHUicjguIik7CisgICAgUVZFUklGWShyZXN0LnZhbGlkKTsKKyAg
ICBRVkVSSUZZKHJlc3QucmVzdCk7CisgICAgUVZFUklGWShyZXN0LmRvdHRlZCk7CisgICAgUUNP
TVBBUkUocmVzdC5kZW5vbWluYXRvciwgOCk7CisgICAgUUNPTVBBUkUocmVzdC5xdWFydGVyTm90
ZUJlYXRzKCksIDAuNzUpOworCisgICAgUVZFUklGWSghTWludWV0OjpwYXJzZVJoeXRobVRva2Vu
KHUiciIpLnZhbGlkKTsKKyAgICBRVkVSSUZZKCFNaW51ZXQ6OnBhcnNlUmh5dGhtVG9rZW4odSJy
OC4uIikudmFsaWQpOworICAgIFFWRVJJRlkoIU1pbnVldDo6cGFyc2VSaHl0aG1Ub2tlbih1IjAi
KS52YWxpZCk7Cit9CisKK3ZvaWQgUmh5dGhtUmVzdFRlc3Q6OmNvbnRhaW5zRXZlcnlNaXhlZFJl
c3RWYXJpYW50KCkKK3sKKyAgICBRQ09NUEFSRShtX3Jlc3REZWZpbml0aW9ucy5zaXplKCksIDM4
KTsKKworICAgIFFTZXQ8UVN0cmluZz4gYWN0dWFsU2VxdWVuY2VzOworICAgIGZvciAoY29uc3Qg
UUpzb25WYWx1ZSAmdmFsdWUgOiBzdGQ6OmFzX2NvbnN0KG1fcmVzdERlZmluaXRpb25zKSkgewor
ICAgICAgICBjb25zdCBRSnNvbk9iamVjdCBkZWZpbml0aW9uID0gdmFsdWUudG9PYmplY3QoKTsK
KyAgICAgICAgY29uc3QgUVN0cmluZyBzZXF1ZW5jZSA9IGRlZmluaXRpb24udmFsdWUodSJzZXF1
ZW5jZSJfcykudG9TdHJpbmcoKTsKKyAgICAgICAgUVZFUklGWTIoIWFjdHVhbFNlcXVlbmNlcy5j
b250YWlucyhzZXF1ZW5jZSksIHFQcmludGFibGUoc2VxdWVuY2UpKTsKKyAgICAgICAgYWN0dWFs
U2VxdWVuY2VzLmluc2VydChzZXF1ZW5jZSk7CisKKyAgICAgICAgYm9vbCBjb250YWluc05vdGUg
PSBmYWxzZTsKKyAgICAgICAgYm9vbCBjb250YWluc1Jlc3QgPSBmYWxzZTsKKyAgICAgICAgZm9y
IChjb25zdCBRU3RyaW5nICZ0ZXh0IDogc2VxdWVuY2Uuc3BsaXQodScgJywgUXQ6OlNraXBFbXB0
eVBhcnRzKSkgeworICAgICAgICAgICAgY29uc3QgTWludWV0OjpSaHl0aG1Ub2tlbiB0b2tlbiA9
IE1pbnVldDo6cGFyc2VSaHl0aG1Ub2tlbih0ZXh0KTsKKyAgICAgICAgICAgIFFWRVJJRlkyKHRv
a2VuLnZhbGlkLCBxUHJpbnRhYmxlKHRleHQpKTsKKyAgICAgICAgICAgIGNvbnRhaW5zUmVzdCB8
PSB0b2tlbi5yZXN0OworICAgICAgICAgICAgY29udGFpbnNOb3RlIHw9ICF0b2tlbi5yZXN0Owor
ICAgICAgICB9CisgICAgICAgIFFWRVJJRlkoY29udGFpbnNSZXN0KTsKKyAgICAgICAgUVZFUklG
WShjb250YWluc05vdGUpOworICAgICAgICBRVkVSSUZZKCFkZWZpbml0aW9uLnZhbHVlKHUibmFt
ZSJfcykudG9TdHJpbmcoKS5pc0VtcHR5KCkpOworICAgIH0KKworICAgIGNvbnN0IFFKc29uQXJy
YXkgbWVkaXVtQmFzZXMgPSBkZWZpbml0aW9uc1dpdGhUYWdzKG1fYmFzZURlZmluaXRpb25zLCB7
dSJyaHl0aG0iX3MsIHUibWVkaXVtIl9zfSk7CisgICAgUUNPTVBBUkUoYWN0dWFsU2VxdWVuY2Vz
LCBleHBlY3RlZFJlc3RWYXJpYW50cyhtZWRpdW1CYXNlcykpOworCisgICAgY29uc3QgUUpzb25B
cnJheSBlYXN5QmFzZXMgPSBkZWZpbml0aW9uc1dpdGhUYWdzKG1fYmFzZURlZmluaXRpb25zLCB7
dSJyaHl0aG0iX3MsIHUiZWFzeSJfc30pOworICAgIGNvbnN0IFFTZXQ8UVN0cmluZz4gZWFzeVZh
cmlhbnRzID0gZXhwZWN0ZWRSZXN0VmFyaWFudHMoZWFzeUJhc2VzKTsKKyAgICBRU2V0PFFTdHJp
bmc+IHRhZ2dlZEVhc3lWYXJpYW50czsKKyAgICBmb3IgKGNvbnN0IFFKc29uVmFsdWUgJnZhbHVl
IDogc3RkOjphc19jb25zdChtX3Jlc3REZWZpbml0aW9ucykpIHsKKyAgICAgICAgY29uc3QgUUpz
b25PYmplY3QgZGVmaW5pdGlvbiA9IHZhbHVlLnRvT2JqZWN0KCk7CisgICAgICAgIGlmIChoYXNU
YWcoZGVmaW5pdGlvbiwgdSJlYXN5LXdpdGgtcmVzdHMiX3MpKSB7CisgICAgICAgICAgICB0YWdn
ZWRFYXN5VmFyaWFudHMuaW5zZXJ0KGRlZmluaXRpb24udmFsdWUodSJzZXF1ZW5jZSJfcykudG9T
dHJpbmcoKSk7CisgICAgICAgIH0KKyAgICB9CisgICAgUUNPTVBBUkUodGFnZ2VkRWFzeVZhcmlh
bnRzLCBlYXN5VmFyaWFudHMpOworfQorCit2b2lkIFJoeXRobVJlc3RUZXN0OjpjYXRlZ29yeUNv
dW50c0FyZVN0YWJsZSgpCit7CisgICAgUUNPTVBBUkUoZGVmaW5pdGlvbnNXaXRoVGFncyhtX2Fs
bERlZmluaXRpb25zLCB7dSJyaHl0aG0iX3MsIHUiZWFzeS13aXRoLXJlc3RzIl9zfSkuc2l6ZSgp
LCAxMCk7CisgICAgUUNPTVBBUkUoZGVmaW5pdGlvbnNXaXRoVGFncyhtX2FsbERlZmluaXRpb25z
LCB7dSJyaHl0aG0iX3MsIHUiZWFzeS13aXRoLXJlc3RzIl9zLCB1InJlc3QtbGlzdGVuaW5nIl9z
fSkuc2l6ZSgpLCA3KTsKKyAgICBRQ09NUEFSRShkZWZpbml0aW9uc1dpdGhUYWdzKG1fYWxsRGVm
aW5pdGlvbnMsIHt1InJoeXRobSJfcywgdSJtZWRpdW0td2l0aC1yZXN0cyJfc30pLnNpemUoKSwg
NDYpOworICAgIFFDT01QQVJFKGRlZmluaXRpb25zV2l0aFRhZ3MobV9hbGxEZWZpbml0aW9ucywg
e3Uicmh5dGhtIl9zLCB1Im1lZGl1bS13aXRoLXJlc3RzIl9zLCB1InJlc3QtbGlzdGVuaW5nIl9z
fSkuc2l6ZSgpLCAxNSk7Cit9CisKK3ZvaWQgUmh5dGhtUmVzdFRlc3Q6OmNhdGVnb3J5RmlsdGVy
c01hdGNoUHJhY3RpY2VNb2RlcygpCit7CisgICAgY29uc3QgUUpzb25PYmplY3QgZWFzeSA9IHJl
c3RDYXRlZ29yeSh1ImRhdGEvZXhlcmNpc2VzL3JoeXRobS1lYXN5LXJlc3RzLmpzb24iX3MpOwor
ICAgIGNvbnN0IFFKc29uT2JqZWN0IG1lZGl1bSA9IHJlc3RDYXRlZ29yeSh1ImRhdGEvZXhlcmNp
c2VzL3JoeXRobS1tZWRpdW0tcmVzdHMuanNvbiJfcyk7CisgICAgUVZFUklGWSghZWFzeS5pc0Vt
cHR5KCkpOworICAgIFFWRVJJRlkoIW1lZGl1bS5pc0VtcHR5KCkpOworCisgICAgUUNPTVBBUkUo
ZGVmaW5pdGlvbnNXaXRoVGFncyhtX2FsbERlZmluaXRpb25zLCBzdHJpbmdMaXN0KGVhc3kudmFs
dWUodSJhbmQtdGFncyJfcykudG9BcnJheSgpKSkuc2l6ZSgpLCA3KTsKKyAgICBRQ09NUEFSRShk
ZWZpbml0aW9uc1dpdGhUYWdzKG1fYWxsRGVmaW5pdGlvbnMsIHN0cmluZ0xpc3QoZWFzeS52YWx1
ZSh1ImNsYXBwaW5nLWFuZC10YWdzIl9zKS50b0FycmF5KCkpKS5zaXplKCksIDEwKTsKKyAgICBR
Q09NUEFSRShkZWZpbml0aW9uc1dpdGhUYWdzKG1fYWxsRGVmaW5pdGlvbnMsIHN0cmluZ0xpc3Qo
bWVkaXVtLnZhbHVlKHUiYW5kLXRhZ3MiX3MpLnRvQXJyYXkoKSkpLnNpemUoKSwgMTUpOworICAg
IFFDT01QQVJFKGRlZmluaXRpb25zV2l0aFRhZ3MobV9hbGxEZWZpbml0aW9ucywgc3RyaW5nTGlz
dChtZWRpdW0udmFsdWUodSJjbGFwcGluZy1hbmQtdGFncyJfcykudG9BcnJheSgpKSkuc2l6ZSgp
LCA0Nik7Cit9CisKK3ZvaWQgUmh5dGhtUmVzdFRlc3Q6OmNvbnNlY3V0aXZlU2l4dGVlbnRoc1Vz
ZUJlYW1zKCkKK3sKKyAgICBjb25zdCBRU3RyaW5nIHBhaXIgPSB1Ilx1RTFGMFx1RTFGOVx1RTFG
NCJfczsKKyAgICBjb25zdCBRU3RyaW5nIHRyaXBsZSA9IHUiXHVFMUYwXHVFMUY5XHVFMUY0XHVF
MUY5XHVFMUY0Il9zOworICAgIGNvbnN0IFFTdHJpbmcgc2l4dGVlbnRoUmVzdCA9IHUiXHVFNEU3
Il9zOworICAgIGNvbnN0IFFTdHJpbmcgZWlnaHRoUmVzdCA9IHUiXHVFNEU2Il9zOworICAgIGNv
bnN0IFFTdHJpbmcgaXNvbGF0ZWRTaXh0ZWVudGggPSB1Ilx1RTFEOSJfczsKKworICAgIFFDT01Q
QVJFKG5hbWVGb3JTZXF1ZW5jZShtX3Jlc3REZWZpbml0aW9ucywgdSJyMTYgMTYgMTYgMTYiX3Mp
LCBzaXh0ZWVudGhSZXN0ICsgdScgJyArIHRyaXBsZSk7CisgICAgUUNPTVBBUkUobmFtZUZvclNl
cXVlbmNlKG1fcmVzdERlZmluaXRpb25zLCB1IjE2IHIxNiAxNiAxNiJfcyksIGlzb2xhdGVkU2l4
dGVlbnRoICsgdScgJyArIHNpeHRlZW50aFJlc3QgKyB1JyAnICsgcGFpcik7CisgICAgUUNPTVBB
UkUobmFtZUZvclNlcXVlbmNlKG1fcmVzdERlZmluaXRpb25zLCB1InIxNiByMTYgMTYgMTYiX3Mp
LCBzaXh0ZWVudGhSZXN0ICsgdScgJyArIHNpeHRlZW50aFJlc3QgKyB1JyAnICsgcGFpcik7Cisg
ICAgUUNPTVBBUkUobmFtZUZvclNlcXVlbmNlKG1fcmVzdERlZmluaXRpb25zLCB1IjE2IDE2IHIx
NiAxNiJfcyksIHBhaXIgKyB1JyAnICsgc2l4dGVlbnRoUmVzdCArIHUnICcgKyBpc29sYXRlZFNp
eHRlZW50aCk7CisgICAgUUNPTVBBUkUobmFtZUZvclNlcXVlbmNlKG1fcmVzdERlZmluaXRpb25z
LCB1IjE2IDE2IDE2IHIxNiJfcyksIHRyaXBsZSArIHUnICcgKyBzaXh0ZWVudGhSZXN0KTsKKyAg
ICBRQ09NUEFSRShuYW1lRm9yU2VxdWVuY2UobV9yZXN0RGVmaW5pdGlvbnMsIHUicjE2IDE2IDE2
IHIxNiJfcyksIHNpeHRlZW50aFJlc3QgKyB1JyAnICsgcGFpciArIHUnICcgKyBzaXh0ZWVudGhS
ZXN0KTsKKyAgICBRQ09NUEFSRShuYW1lRm9yU2VxdWVuY2UobV9yZXN0RGVmaW5pdGlvbnMsIHUi
MTYgMTYgcjE2IHIxNiJfcyksIHBhaXIgKyB1JyAnICsgc2l4dGVlbnRoUmVzdCArIHUnICcgKyBz
aXh0ZWVudGhSZXN0KTsKKyAgICBRQ09NUEFSRShuYW1lRm9yU2VxdWVuY2UobV9yZXN0RGVmaW5p
dGlvbnMsIHUicjggMTYgMTYiX3MpLCBlaWdodGhSZXN0ICsgdScgJyArIHBhaXIpOworICAgIFFD
T01QQVJFKG5hbWVGb3JTZXF1ZW5jZShtX3Jlc3REZWZpbml0aW9ucywgdSIxNiAxNiByOCJfcyks
IHBhaXIgKyB1JyAnICsgZWlnaHRoUmVzdCk7Cit9CisKK3ZvaWQgUmh5dGhtUmVzdFRlc3Q6Omxp
c3RlbmluZ1BhdHRlcm5zSGF2ZVVuaXF1ZU9uc2V0cygpCit7CisgICAgZm9yIChjb25zdCBRU3Ry
aW5nICZjYXRlZ29yeSA6IHt1ImVhc3ktd2l0aC1yZXN0cyJfcywgdSJtZWRpdW0td2l0aC1yZXN0
cyJfc30pIHsKKyAgICAgICAgY29uc3QgUUpzb25BcnJheSBkZWZpbml0aW9ucyA9IGRlZmluaXRp
b25zV2l0aFRhZ3MobV9hbGxEZWZpbml0aW9ucywge3Uicmh5dGhtIl9zLCBjYXRlZ29yeSwgdSJy
ZXN0LWxpc3RlbmluZyJfc30pOworICAgICAgICBRU2V0PFFTdHJpbmc+IHNpZ25hdHVyZXM7Cisg
ICAgICAgIGZvciAoY29uc3QgUUpzb25WYWx1ZSAmdmFsdWUgOiBkZWZpbml0aW9ucykgeworICAg
ICAgICAgICAgY29uc3QgUVN0cmluZyBzaWduYXR1cmUgPSBvbnNldFNpZ25hdHVyZSh2YWx1ZS50
b09iamVjdCgpLnZhbHVlKHUic2VxdWVuY2UiX3MpLnRvU3RyaW5nKCkpOworICAgICAgICAgICAg
UVZFUklGWTIoIXNpZ25hdHVyZXMuY29udGFpbnMoc2lnbmF0dXJlKSwgcVByaW50YWJsZShzaWdu
YXR1cmUpKTsKKyAgICAgICAgICAgIHNpZ25hdHVyZXMuaW5zZXJ0KHNpZ25hdHVyZSk7CisgICAg
ICAgIH0KKyAgICAgICAgUUNPTVBBUkUoc2lnbmF0dXJlcy5zaXplKCksIGRlZmluaXRpb25zLnNp
emUoKSk7CisgICAgfQorfQorCit2b2lkIFJoeXRobVJlc3RUZXN0OjpldmVyeVBhdHRlcm5GaWxs
c09uZUJlYXQoKQoreworICAgIGZvciAoY29uc3QgUUpzb25WYWx1ZSAmdmFsdWUgOiBzdGQ6OmFz
X2NvbnN0KG1fYWxsRGVmaW5pdGlvbnMpKSB7CisgICAgICAgIGNvbnN0IFFTdHJpbmcgc2VxdWVu
Y2UgPSB2YWx1ZS50b09iamVjdCgpLnZhbHVlKHUic2VxdWVuY2UiX3MpLnRvU3RyaW5nKCk7Cisg
ICAgICAgIGRvdWJsZSBkdXJhdGlvbiA9IDAuMDsKKyAgICAgICAgZm9yIChjb25zdCBRU3RyaW5n
ICZ0ZXh0IDogc2VxdWVuY2Uuc3BsaXQodScgJywgUXQ6OlNraXBFbXB0eVBhcnRzKSkgeworICAg
ICAgICAgICAgY29uc3QgTWludWV0OjpSaHl0aG1Ub2tlbiB0b2tlbiA9IE1pbnVldDo6cGFyc2VS
aHl0aG1Ub2tlbih0ZXh0KTsKKyAgICAgICAgICAgIFFWRVJJRlkyKHRva2VuLnZhbGlkLCBxUHJp
bnRhYmxlKHRleHQpKTsKKyAgICAgICAgICAgIGR1cmF0aW9uICs9IHRva2VuLnF1YXJ0ZXJOb3Rl
QmVhdHMoKTsKKyAgICAgICAgfQorICAgICAgICBRVkVSSUZZMihxQWJzKGR1cmF0aW9uIC0gMS4w
KSA8IDAuMDAwMSwgcVByaW50YWJsZShzZXF1ZW5jZSkpOworICAgIH0KK30KKworUVRFU1RfR1VJ
TEVTU19NQUlOKFJoeXRobVJlc3RUZXN0KQorCisjaW5jbHVkZSAicmh5dGhtcmVzdHRlc3QubW9j
IgpkaWZmIC0tZ2l0IGEvc3JjL2FwcC9leGVyY2lzZWNhdGFsb2djb250cm9sbGVyLmNwcCBiL3Ny
Yy9hcHAvZXhlcmNpc2VjYXRhbG9nY29udHJvbGxlci5jcHAKaW5kZXggZmU1MTczNi4uMTE5MDM0
NSAxMDA2NDQKLS0tIGEvc3JjL2FwcC9leGVyY2lzZWNhdGFsb2djb250cm9sbGVyLmNwcAorKysg
Yi9zcmMvYXBwL2V4ZXJjaXNlY2F0YWxvZ2NvbnRyb2xsZXIuY3BwCkBAIC0yODMsNiArMjgzLDEz
IEBAIFFKc29uQXJyYXkgRXhlcmNpc2VDYXRhbG9nQ29udHJvbGxlcjo6YXBwbHlEZWZpbml0aW9u
cyhRSnNvbkFycmF5IGV4ZXJjaXNlcywgUUpzCiAgICAgICAgIGlmIChpMS0+aXNPYmplY3QoKSkg
ewogICAgICAgICAgICAgUUpzb25PYmplY3QgZXhlcmNpc2VPYmplY3QgPSBpMS0+dG9PYmplY3Qo
KTsKICAgICAgICAgICAgIFFKc29uQXJyYXkgZmlsdGVyZWREZWZpbml0aW9ucyA9IGRlZmluaXRp
b25zOworICAgICAgICAgICAgUUpzb25BcnJheSBjbGFwcGluZ0RlZmluaXRpb25zOworICAgICAg
ICAgICAgaWYgKGV4ZXJjaXNlT2JqZWN0LnZhbHVlKHUiY2xhcHBpbmctYW5kLXRhZ3MiX3MpLmlz
QXJyYXkoKSkgeworICAgICAgICAgICAgICAgIGNsYXBwaW5nRGVmaW5pdGlvbnMgPSBkZWZpbml0
aW9uczsKKyAgICAgICAgICAgICAgICBRSnNvbk9iamVjdCBjbGFwcGluZ0ZpbHRlcjsKKyAgICAg
ICAgICAgICAgICBjbGFwcGluZ0ZpbHRlci5pbnNlcnQodSJhbmQtdGFncyJfcywgZXhlcmNpc2VP
YmplY3QudGFrZSh1ImNsYXBwaW5nLWFuZC10YWdzIl9zKSk7CisgICAgICAgICAgICAgICAgZmls
dGVyRGVmaW5pdGlvbnMoY2xhcHBpbmdEZWZpbml0aW9ucywgY2xhcHBpbmdGaWx0ZXIsIHUiYW5k
LXRhZ3MiX3MsIERlZmluaXRpb25GaWx0ZXJpbmdNb2RlOjpBbmRGaWx0ZXJpbmcpOworICAgICAg
ICAgICAgfQogICAgICAgICAgICAgY29uc3QgUVN0cmluZ0xpc3QgZXhlcmNpc2VPYmplY3RLZXlz
ID0gZXhlcmNpc2VPYmplY3Qua2V5cygpOwogICAgICAgICAgICAgaWYgKGV4ZXJjaXNlT2JqZWN0
S2V5cy5jb250YWlucyh1ImFuZC10YWdzIl9zKSAmJiBleGVyY2lzZU9iamVjdFt1ImFuZC10YWdz
Il9zXS5pc0FycmF5KCkpIHsKICAgICAgICAgICAgICAgICBmaWx0ZXJEZWZpbml0aW9ucyhmaWx0
ZXJlZERlZmluaXRpb25zLCBleGVyY2lzZU9iamVjdCwgdSJhbmQtdGFncyJfcywgRGVmaW5pdGlv
bkZpbHRlcmluZ01vZGU6OkFuZEZpbHRlcmluZyk7CkBAIC0zMDYsNiArMzEzLDkgQEAgUUpzb25B
cnJheSBFeGVyY2lzZUNhdGFsb2dDb250cm9sbGVyOjphcHBseURlZmluaXRpb25zKFFKc29uQXJy
YXkgZXhlcmNpc2VzLCBRSnMKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAg
IH0KICAgICAgICAgICAgICAgICBleGVyY2lzZU9iamVjdC5pbnNlcnQodSJvcHRpb25zIl9zLCBm
aWx0ZXJlZERlZmluaXRpb25zKTsKKyAgICAgICAgICAgICAgICBpZiAoIWNsYXBwaW5nRGVmaW5p
dGlvbnMuaXNFbXB0eSgpKSB7CisgICAgICAgICAgICAgICAgICAgIGV4ZXJjaXNlT2JqZWN0Lmlu
c2VydCh1InJoeXRobUNsYXBwaW5nT3B0aW9ucyJfcywgY2xhcHBpbmdEZWZpbml0aW9ucyk7Cisg
ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAgICAgICAgZXhlcmNpc2VzW2kx
IC0gZXhlcmNpc2VzQmVnaW5dID0gZXhlcmNpc2VPYmplY3Q7CiAgICAgICAgIH0KZGlmZiAtLWdp
dCBhL3NyYy9hcHAvZXhlcmNpc2VzZXNzaW9uY29udHJvbGxlci5jcHAgYi9zcmMvYXBwL2V4ZXJj
aXNlc2Vzc2lvbmNvbnRyb2xsZXIuY3BwCmluZGV4IGQyZTcwODkuLjU0Mzc4MmQgMTAwNjQ0Ci0t
LSBhL3NyYy9hcHAvZXhlcmNpc2VzZXNzaW9uY29udHJvbGxlci5jcHAKKysrIGIvc3JjL2FwcC9l
eGVyY2lzZXNlc3Npb25jb250cm9sbGVyLmNwcApAQCAtNCw2ICs0LDggQEAKIAogI2luY2x1ZGUg
ImV4ZXJjaXNlc2Vzc2lvbmNvbnRyb2xsZXIuaCIKIAorI2luY2x1ZGUgPHV0aWxzL3JoeXRobXRv
a2VuLmg+CisKICNpbmNsdWRlIDxLTG9jYWxpemVkU3RyaW5nPgogCiAjaW5jbHVkZSA8UURlYnVn
PgpAQCAtNDU2LDE0ICs0NTgsMjQgQEAgdm9pZCBFeGVyY2lzZVNlc3Npb25Db250cm9sbGVyOjpy
YW5kb21seVNlbGVjdEV4ZXJjaXNlT3B0aW9ucyhpbnQgc2VsZWN0ZWRPcHRpb24KICAgICAgICAg
fQogCiAgICAgICAgIGZvciAoY29uc3QgUVN0cmluZyAmYWRkaXRpb25hbE5vdGUgOiBhZGRpdGlv
bmFsTm90ZXMpIHsKLSAgICAgICAgICAgIFFTdHJpbmcgbm90ZVRleHQgPSBhZGRpdGlvbmFsTm90
ZTsKLSAgICAgICAgICAgIGlmIChpc1JoeXRobSAmJiBub3RlVGV4dC5lbmRzV2l0aChRTGF0aW4x
Q2hhcignLicpKSkgewotICAgICAgICAgICAgICAgIG5vdGVUZXh0LmNob3AoMSk7CisgICAgICAg
ICAgICBpZiAoaXNSaHl0aG0pIHsKKyAgICAgICAgICAgICAgICBjb25zdCBSaHl0aG1Ub2tlbiBy
aHl0aG1Ub2tlbiA9IHBhcnNlUmh5dGhtVG9rZW4oYWRkaXRpb25hbE5vdGUpOworICAgICAgICAg
ICAgICAgIGlmICghcmh5dGhtVG9rZW4udmFsaWQpIHsKKyAgICAgICAgICAgICAgICAgICAgZmFp
bFNlbGVjdGlvbih1IkN1cnJlbnQgZXhlcmNpc2Ugb3B0aW9uIGhhcyBhbiBpbnZhbGlkIHNlcXVl
bmNlLiJfcyk7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgaWYgKHJoeXRobVRva2VuLmRlbm9taW5hdG9yID4gbWF4
Tm90ZSkgeworICAgICAgICAgICAgICAgICAgICBtYXhOb3RlID0gcmh5dGhtVG9rZW4uZGVub21p
bmF0b3I7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGlmIChyaHl0aG1Ub2tl
bi5kZW5vbWluYXRvciA8IG1pbk5vdGUpIHsKKyAgICAgICAgICAgICAgICAgICAgbWluTm90ZSA9
IHJoeXRobVRva2VuLmRlbm9taW5hdG9yOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
ICAgICBjb250aW51ZTsKICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgYm9vbCBvayA9IGZh
bHNlOwotICAgICAgICAgICAgY29uc3QgaW50IG5vdGUgPSBub3RlVGV4dC50b0ludCgmb2spOwot
ICAgICAgICAgICAgaWYgKCFvayB8fCAoaXNSaHl0aG0gJiYgbm90ZSA8PSAwKSkgeworICAgICAg
ICAgICAgY29uc3QgaW50IG5vdGUgPSBhZGRpdGlvbmFsTm90ZS50b0ludCgmb2spOworICAgICAg
ICAgICAgaWYgKCFvaykgewogICAgICAgICAgICAgICAgIGZhaWxTZWxlY3Rpb24odSJDdXJyZW50
IGV4ZXJjaXNlIG9wdGlvbiBoYXMgYW4gaW52YWxpZCBzZXF1ZW5jZS4iX3MpOwogICAgICAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL3NyYy9hcHAv
cW1sL0V4ZXJjaXNlQ2xhcHBpbmdWaWV3LnFtbCBiL3NyYy9hcHAvcW1sL0V4ZXJjaXNlQ2xhcHBp
bmdWaWV3LnFtbAppbmRleCBlNDdhMDBjLi4xNzI3NjhlIDEwMDY0NAotLS0gYS9zcmMvYXBwL3Ft
bC9FeGVyY2lzZUNsYXBwaW5nVmlldy5xbWwKKysrIGIvc3JjL2FwcC9xbWwvRXhlcmNpc2VDbGFw
cGluZ1ZpZXcucW1sCkBAIC0yMjgsNiArMjI4LDkgQEAgSXRlbSB7CiAgICAgfQogICAgIGZ1bmN0
aW9uIGR1cmF0aW9uRm9yVG9rZW4odG9rZW46IHN0cmluZyk6IHJlYWwgewogICAgICAgICBsZXQg
bm90ZSA9IHRva2VuOworICAgICAgICBpZiAobm90ZS5zdGFydHNXaXRoKCJyIikpIHsKKyAgICAg
ICAgICAgIG5vdGUgPSBub3RlLnNsaWNlKDEpOworICAgICAgICB9CiAgICAgICAgIGxldCBkb3R0
ZWQgPSAxLjA7CiAgICAgICAgIGlmIChub3RlLmVuZHNXaXRoKCIuIikpIHsKICAgICAgICAgICAg
IGRvdHRlZCA9IDEuNTsKQEAgLTMyNSwxMSArMzI4LDEzIEBAIEl0ZW0gewogICAgICAgICAgICAg
bGV0IGZpZ3VyZU9uc2V0cyA9IFtdOwogICAgICAgICAgICAgY29uc3QgZmlndXJlU3RhcnQgPSBj
dXJzb3I7CiAgICAgICAgICAgICBmb3IgKGNvbnN0IHBhcnQgb2YgcGFydHMpIHsKLSAgICAgICAg
ICAgICAgICBmaWd1cmVPbnNldHMucHVzaChvbnNldExpc3QubGVuZ3RoKTsKLSAgICAgICAgICAg
ICAgICBvbnNldExpc3QucHVzaCh7Ci0gICAgICAgICAgICAgICAgICAgICJmaWd1cmUiOiBmaWd1
cmVJbmRleCwKLSAgICAgICAgICAgICAgICAgICAgInRpbWVNcyI6IGN1cnNvcgotICAgICAgICAg
ICAgICAgIH0pOworICAgICAgICAgICAgICAgIGlmICghaXNSZXN0VG9rZW4ocGFydCkpIHsKKyAg
ICAgICAgICAgICAgICAgICAgZmlndXJlT25zZXRzLnB1c2gob25zZXRMaXN0Lmxlbmd0aCk7Cisg
ICAgICAgICAgICAgICAgICAgIG9uc2V0TGlzdC5wdXNoKHsKKyAgICAgICAgICAgICAgICAgICAg
ICAgICJmaWd1cmUiOiBmaWd1cmVJbmRleCwKKyAgICAgICAgICAgICAgICAgICAgICAgICJ0aW1l
TXMiOiBjdXJzb3IKKyAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgfQog
ICAgICAgICAgICAgICAgIGN1cnNvciArPSBkdXJhdGlvbkZvclRva2VuKHBhcnQpOwogICAgICAg
ICAgICAgfQogICAgICAgICAgICAgc3RhdGVzLnB1c2goewpAQCAtMzcxLDYgKzM3Niw5IEBAIEl0
ZW0gewogICAgICAgICByb290LnBlcmZvcm1lZE9uc2V0cyA9IHBlcmZvcm1lZDsKICAgICAgICAg
cmVmcmVzaEZpZ3VyZVN0YXRlcyhlbGFwc2VkTXMpOwogICAgIH0KKyAgICBmdW5jdGlvbiBpc1Jl
c3RUb2tlbih0b2tlbjogc3RyaW5nKTogYm9vbCB7CisgICAgICAgIHJldHVybiB0b2tlbi5zdGFy
dHNXaXRoKCJyIik7CisgICAgfQogICAgIGZ1bmN0aW9uIG1hcFJoeXRobVJvd1gobG9jYWxYOiBy
ZWFsKTogcmVhbCB7CiAgICAgICAgIGNvbnN0IGdlb21ldHJ5RGVwZW5kZW5jeSA9IHJoeXRobUZy
YW1lLnggKyByaHl0aG1WaWV3cG9ydC54ICsgcmh5dGhtVmlld3BvcnQuY29udGVudFggKyByaHl0
aG1Db250ZW50LnggKyByaHl0aG1Sb3cueCArIHJoeXRobVJvdy5pbXBsaWNpdFdpZHRoOwogICAg
ICAgICByZXR1cm4gcmh5dGhtUm93Lm1hcFRvSXRlbShyb290LCBsb2NhbFggKyBnZW9tZXRyeURl
cGVuZGVuY3kgKiAwLCAwKS54OwpkaWZmIC0tZ2l0IGEvc3JjL2FwcC9xbWwvUHJhY3RpY2VNb2Rl
UGFnZS5xbWwgYi9zcmMvYXBwL3FtbC9QcmFjdGljZU1vZGVQYWdlLnFtbAppbmRleCBkNWFlMWZm
Li4zYzIxZThkIDEwMDY0NAotLS0gYS9zcmMvYXBwL3FtbC9QcmFjdGljZU1vZGVQYWdlLnFtbAor
KysgYi9zcmMvYXBwL3FtbC9QcmFjdGljZU1vZGVQYWdlLnFtbApAQCAtMjYsNiArMjYsMTAgQEAg
S2lyaWdhbWkuUGFnZSB7CiAgICAgICAgICAgICBleGVyY2lzZVtrZXldID0gcGFnZS5jdXJyZW50
RXhlcmNpc2Vba2V5XTsKICAgICAgICAgfQogICAgICAgICBleGVyY2lzZS5pbnB1dE1vZGUgPSBp
bnB1dE1vZGU7CisgICAgICAgIGlmIChpbnB1dE1vZGUgPT09ICJjbGFwcGluZyIgJiYgZXhlcmNp
c2Uucmh5dGhtQ2xhcHBpbmdPcHRpb25zICE9PSB1bmRlZmluZWQpIHsKKyAgICAgICAgICAgIGV4
ZXJjaXNlLm9wdGlvbnMgPSBleGVyY2lzZS5yaHl0aG1DbGFwcGluZ09wdGlvbnM7CisgICAgICAg
IH0KKyAgICAgICAgZGVsZXRlIGV4ZXJjaXNlLnJoeXRobUNsYXBwaW5nT3B0aW9uczsKICAgICAg
ICAgaWYgKGlucHV0TW9kZSA9PT0gInNpbmdpbmciKSB7CiAgICAgICAgICAgICBleGVyY2lzZS5z
aW5naW5nRXhlcmNpc2VLaW5kID0gcGFnZS5wcmFjdGljZU1vZGU7CiAgICAgICAgIH0KZGlmZiAt
LWdpdCBhL3NyYy9wbHVnaW5zL2ZsdWlkc3ludGhzb3VuZGNvbnRyb2xsZXIvZmx1aWRzeW50aHNv
dW5kY29udHJvbGxlci5jcHAgYi9zcmMvcGx1Z2lucy9mbHVpZHN5bnRoc291bmRjb250cm9sbGVy
L2ZsdWlkc3ludGhzb3VuZGNvbnRyb2xsZXIuY3BwCmluZGV4IGMxZWQ2OTAuLmE3OTliZTQgMTAw
NjQ0Ci0tLSBhL3NyYy9wbHVnaW5zL2ZsdWlkc3ludGhzb3VuZGNvbnRyb2xsZXIvZmx1aWRzeW50
aHNvdW5kY29udHJvbGxlci5jcHAKKysrIGIvc3JjL3BsdWdpbnMvZmx1aWRzeW50aHNvdW5kY29u
dHJvbGxlci9mbHVpZHN5bnRoc291bmRjb250cm9sbGVyLmNwcApAQCAtNCw2ICs0LDggQEAKIAog
I2luY2x1ZGUgImZsdWlkc3ludGhzb3VuZGNvbnRyb2xsZXIuaCIKIAorI2luY2x1ZGUgPHV0aWxz
L3JoeXRobXRva2VuLmg+CisKICNpbmNsdWRlIDxLTG9jYWxpemVkU3RyaW5nPgogCiAjaW5jbHVk
ZSA8UUNvcmVBcHBsaWNhdGlvbj4KQEAgLTIyMCwyMSArMjIyLDE1IEBAIHZvaWQgRmx1aWRTeW50
aFNvdW5kQ29udHJvbGxlcjo6cHJlcGFyZUZyb21FeGVyY2lzZU9wdGlvbnMoUUpzb25BcnJheSBz
ZWxlY3RlZEV4CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAvLyBhcHBlbmRFdmVudCg5
LCA4MCwgMTI3LCAxMDAwKig2MC4wL21fdGVtcG8pKTsKICAgICAgICAgICAgIGNvbnN0IFFTdHJp
bmdMaXN0IGFkZGl0aW9uYWxOb3RlcyA9IHNlcXVlbmNlLnNwbGl0KFFMYXRpbjFDaGFyKCcgJyks
IFF0OjpTa2lwRW1wdHlQYXJ0cyk7Ci0gICAgICAgICAgICBmb3IgKFFTdHJpbmcgYWRkaXRpb25h
bE5vdGUgOiBhZGRpdGlvbmFsTm90ZXMpIHsKLSAgICAgICAgICAgICAgICBmbG9hdCBkb3R0ZWQg
PSAxOwotICAgICAgICAgICAgICAgIGlmIChhZGRpdGlvbmFsTm90ZS5lbmRzV2l0aCgnLicpKSB7
Ci0gICAgICAgICAgICAgICAgICAgIGRvdHRlZCA9IDEuNTsKLSAgICAgICAgICAgICAgICAgICAg
YWRkaXRpb25hbE5vdGUuY2hvcCgxKTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAg
ICAgYm9vbCBvayA9IGZhbHNlOwotICAgICAgICAgICAgICAgIGNvbnN0IGludCBkZW5vbWluYXRv
ciA9IGFkZGl0aW9uYWxOb3RlLnRvSW50KCZvayk7Ci0gICAgICAgICAgICAgICAgaWYgKCFvayB8
fCBkZW5vbWluYXRvciA8PSAwKSB7CisgICAgICAgICAgICBmb3IgKGNvbnN0IFFTdHJpbmcgJmFk
ZGl0aW9uYWxOb3RlIDogYWRkaXRpb25hbE5vdGVzKSB7CisgICAgICAgICAgICAgICAgY29uc3Qg
TWludWV0OjpSaHl0aG1Ub2tlbiB0b2tlbiA9IE1pbnVldDo6cGFyc2VSaHl0aG1Ub2tlbihhZGRp
dGlvbmFsTm90ZSk7CisgICAgICAgICAgICAgICAgaWYgKCF0b2tlbi52YWxpZCkgewogICAgICAg
ICAgICAgICAgICAgICBxV2FybmluZygpIDw8ICJJZ25vcmluZyBleGVyY2lzZSBvcHRpb24gd2l0
aCBpbnZhbGlkIHJoeXRobSB2YWx1ZToiIDw8IGFkZGl0aW9uYWxOb3RlOwogICAgICAgICAgICAg
ICAgICAgICBjbGVhclNvbmcoKTsKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAg
ICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgZHVyYXRpb24gPSBkb3R0
ZWQgKiAxMDAwICogKDYwLjAgLyBtX3RlbXBvKSAqICg0LjAgLyBkZW5vbWluYXRvcik7Ci0gICAg
ICAgICAgICAgICAgYXBwZW5kRXZlbnQoUmh5dGhtQ2hhbm5lbCwgbV9yaHl0aG1JbnN0cnVtZW50
LCAxMjcsIGR1cmF0aW9uKTsKKyAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQgZHVy
YXRpb24gPSB0b2tlbi5xdWFydGVyTm90ZUJlYXRzKCkgKiAxMDAwICogKDYwLjAgLyBtX3RlbXBv
KTsKKyAgICAgICAgICAgICAgICBhcHBlbmRFdmVudChSaHl0aG1DaGFubmVsLCBtX3JoeXRobUlu
c3RydW1lbnQsIHRva2VuLnJlc3QgPyAwIDogMTI3LCBkdXJhdGlvbik7CiAgICAgICAgICAgICB9
CiAgICAgICAgIH0KICAgICB9CmRpZmYgLS1naXQgYS9zcmMvdXRpbHMvcmh5dGhtdG9rZW4uaCBi
L3NyYy91dGlscy9yaHl0aG10b2tlbi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLmYzYzkzYzAKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMvdXRpbHMvcmh5dGhtdG9rZW4uaApA
QCAtMCwwICsxLDQzIEBACisvLyBTUERYLUZpbGVDb3B5cmlnaHRUZXh0OiAyMDI2IFNhbmRybyBB
bmRyYWRlIDxzYW5kcm9hbmRyYWRlQGtkZS5vcmc+CisvLworLy8gU1BEWC1MaWNlbnNlLUlkZW50
aWZpZXI6IEdQTC0yLjAtb3ItbGF0ZXIKKworI2lmbmRlZiBNSU5VRVRfUkhZVEhNVE9LRU5fSAor
I2RlZmluZSBNSU5VRVRfUkhZVEhNVE9LRU5fSAorCisjaW5jbHVkZSA8UVN0cmluZ1ZpZXc+CisK
K25hbWVzcGFjZSBNaW51ZXQKK3sKK3N0cnVjdCBSaHl0aG1Ub2tlbiB7CisgICAgYm9vbCB2YWxp
ZCA9IGZhbHNlOworICAgIGJvb2wgcmVzdCA9IGZhbHNlOworICAgIGJvb2wgZG90dGVkID0gZmFs
c2U7CisgICAgaW50IGRlbm9taW5hdG9yID0gMDsKKworICAgIGRvdWJsZSBxdWFydGVyTm90ZUJl
YXRzKCkgY29uc3QKKyAgICB7CisgICAgICAgIHJldHVybiB2YWxpZCA/IDQuMCAvIGRlbm9taW5h
dG9yICogKGRvdHRlZCA/IDEuNSA6IDEuMCkgOiAwLjA7CisgICAgfQorfTsKKworaW5saW5lIFJo
eXRobVRva2VuIHBhcnNlUmh5dGhtVG9rZW4oUVN0cmluZ1ZpZXcgdGV4dCkKK3sKKyAgICBSaHl0
aG1Ub2tlbiB0b2tlbjsKKyAgICBpZiAodGV4dC5zdGFydHNXaXRoKHUncicpKSB7CisgICAgICAg
IHRva2VuLnJlc3QgPSB0cnVlOworICAgICAgICB0ZXh0ID0gdGV4dC5zbGljZWQoMSk7CisgICAg
fQorICAgIGlmICh0ZXh0LmVuZHNXaXRoKHUnLicpKSB7CisgICAgICAgIHRva2VuLmRvdHRlZCA9
IHRydWU7CisgICAgICAgIHRleHQgPSB0ZXh0LmZpcnN0KHRleHQuc2l6ZSgpIC0gMSk7CisgICAg
fQorCisgICAgYm9vbCBvayA9IGZhbHNlOworICAgIHRva2VuLmRlbm9taW5hdG9yID0gdGV4dC50
b0ludCgmb2spOworICAgIHRva2VuLnZhbGlkID0gb2sgJiYgdG9rZW4uZGVub21pbmF0b3IgPiAw
OworICAgIHJldHVybiB0b2tlbjsKK30KK30KKworI2VuZGlmCg==