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

Sandro S. Andrade <[email protected]> Mon, 13 Jul 2026 18:16:59 +0000 (UTC)
Newsgroups gmane.comp.kde.cvs,gmane.comp.kde.doc
Message-ID <[email protected]>
R2l0IGNvbW1pdCBjMjU4NTBjMmQ5NzQ4ZDk0YTQyNDQzYzMyMGFhZTM1MjM0YWVlNDlkIGJ5IFNh
bmRybyBTLiBBbmRyYWRlLgpDb21taXR0ZWQgb24gMTMvMDcvMjAyNiBhdCAxODoxNi4KUHVzaGVk
IGJ5IHNhbmRyb2FuZHJhZGUgaW50byBicmFuY2ggJ21hc3RlcicuCgpBZGQgcmh5dGhtIHdpdGgg
cmVzdHMgZXhlcmNpc2VzCgpNICArMSAgICAtMCAgICBkYXRhL2RlZmluaXRpb25zL0NNYWtlTGlz
dHMudHh0Ck0gICs4ICAgIC04ICAgIGRhdGEvZGVmaW5pdGlvbnMvcmh5dGhtLWRlZmluaXRpb25z
Lmpzb24KQSAgKzE5NCAgLTAgICAgZGF0YS9kZWZpbml0aW9ucy9yaHl0aG0tcmVzdC1kZWZpbml0
aW9ucy5qc29uCk0gICsyICAgIC0wICAgIGRhdGEvZXhlcmNpc2VzL0NNYWtlTGlzdHMudHh0CkEg
ICsxOSAgIC0wICAgIGRhdGEvZXhlcmNpc2VzL3JoeXRobS1lYXN5LXJlc3RzLmpzb24KQSAgKzE5
ICAgLTAgICAgZGF0YS9leGVyY2lzZXMvcmh5dGhtLW1lZGl1bS1yZXN0cy5qc29uCk0gICs2ICAg
IC0wICAgIGRvYy9pbmRleC5kb2Nib29rCk0gICs5ICAgIC0wICAgIHNyYy9hcHAvQ01ha2VMaXN0
cy50eHQKQSAgKzI4NiAgLTAgICAgc3JjL2FwcC9hdXRvdGVzdHMvcmh5dGhtcmVzdHRlc3QuY3Bw
ICAgICBbTGljZW5zZTogR1BMKHYyLjArKV0KTSAgKzEwICAgLTAgICAgc3JjL2FwcC9leGVyY2lz
ZWNhdGFsb2djb250cm9sbGVyLmNwcApNICArMTcgICAtNSAgICBzcmMvYXBwL2V4ZXJjaXNlc2Vz
c2lvbmNvbnRyb2xsZXIuY3BwCk0gICsxMyAgIC01ICAgIHNyYy9hcHAvcW1sL0V4ZXJjaXNlQ2xh
cHBpbmdWaWV3LnFtbApNICArNCAgICAtMCAgICBzcmMvYXBwL3FtbC9QcmFjdGljZU1vZGVQYWdl
LnFtbApNICArNyAgICAtMTEgICBzcmMvcGx1Z2lucy9mbHVpZHN5bnRoc291bmRjb250cm9sbGVy
L2ZsdWlkc3ludGhzb3VuZGNvbnRyb2xsZXIuY3BwCkEgICs0MyAgIC0wICAgIHNyYy91dGlscy9y
aHl0aG10b2tlbi5oICAgICBbTGljZW5zZTogR1BMKHYyLjArKV0KCmh0dHBzOi8vaW52ZW50Lmtk
ZS5vcmcvZWR1Y2F0aW9uL21pbnVldC8tL2NvbW1pdC9jMjU4NTBjMmQ5NzQ4ZDk0YTQyNDQzYzMy
MGFhZTM1MjM0YWVlNDlkCgpkaWZmIC0tZ2l0IGEvZGF0YS9kZWZpbml0aW9ucy9DTWFrZUxpc3Rz
LnR4dCBiL2RhdGEvZGVmaW5pdGlvbnMvQ01ha2VMaXN0cy50eHQKaW5kZXggZWU0M2FkZS4uNTcy
MjVjOSAxMDA2NDQKLS0tIGEvZGF0YS9kZWZpbml0aW9ucy9DTWFrZUxpc3RzLnR4dAorKysgYi9k
YXRhL2RlZmluaXRpb25zL0NNYWtlTGlzdHMudHh0CkBAIC0xNiw2ICsxNiw3IEBAIHNldChNSU5V
RVRfREVGSU5JVElPTlMKICAgICBzY2FsZXMtc2ltbWV0cmljLWRlZmluaXRpb25zLmpzb24KICAg
ICBzY2FsZXMtYmVib3AtZGVmaW5pdGlvbnMuanNvbgogICAgIHJoeXRobS1kZWZpbml0aW9ucy5q
c29uCisgICAgcmh5dGhtLXJlc3QtZGVmaW5pdGlvbnMuanNvbgogKQogCiBpbnN0YWxsKEZJTEVT
ICR7TUlOVUVUX0RFRklOSVRJT05TfQpkaWZmIC0tZ2l0IGEvZGF0YS9kZWZpbml0aW9ucy9yaHl0
aG0tZGVmaW5pdGlvbnMuanNvbiBiL2RhdGEvZGVmaW5pdGlvbnMvcmh5dGhtLWRlZmluaXRpb25z
Lmpzb24KaW5kZXggOTc3YWFmOC4uYTQ1ODdiOSAxMDA2NDQKLS0tIGEvZGF0YS9kZWZpbml0aW9u
cy9yaHl0aG0tZGVmaW5pdGlvbnMuanNvbgorKysgYi9kYXRhL2RlZmluaXRpb25zL3JoeXRobS1k
ZWZpbml0aW9ucy5qc29uCkBAIC0xLDQyICsxLDQyIEBACiB7CiAgICJkZWZpbml0aW9ucyI6IFsK
ICAgICB7Ci0gICAgICAidGFncyI6IFsicmh5dGhtIiwgImVhc3kiLCAibWVkaXVtIl0sCisgICAg
ICAidGFncyI6IFsicmh5dGhtIiwgImVhc3kiLCAibWVkaXVtIiwgImVhc3ktd2l0aC1yZXN0cyIs
ICJtZWRpdW0td2l0aC1yZXN0cyIsICJyZXN0LWxpc3RlbmluZyJdLAogICAgICAgIm5hbWUiOiAi
XHVFMUYwIiwKICAgICAgICJzZXF1ZW5jZSI6ICI0IgogICAgIH0sCiAgICAgewotICAgICAgInRh
Z3MiOiBbInJoeXRobSIsICJlYXN5IiwgIm1lZGl1bSJdLAorICAgICAgInRhZ3MiOiBbInJoeXRo
bSIsICJlYXN5IiwgIm1lZGl1bSIsICJlYXN5LXdpdGgtcmVzdHMiLCAibWVkaXVtLXdpdGgtcmVz
dHMiLCAicmVzdC1saXN0ZW5pbmciXSwKICAgICAgICJuYW1lIjogIlx1RTFGMFx1RTFGN1x1RTFG
MiIsCiAgICAgICAic2VxdWVuY2UiOiAiOCA4IgogICAgIH0sCiAgICAgewotICAgICAgInRhZ3Mi
OiBbInJoeXRobSIsICJlYXN5IiwgIm1lZGl1bSJdLAorICAgICAgInRhZ3MiOiBbInJoeXRobSIs
ICJlYXN5IiwgIm1lZGl1bSIsICJlYXN5LXdpdGgtcmVzdHMiLCAibWVkaXVtLXdpdGgtcmVzdHMi
LCAicmVzdC1saXN0ZW5pbmciXSwKICAgICAgICJuYW1lIjogIlx1RTFGMFx1RTFGN1x1RTFGQ1x1
RTFGN1x1RTFGNCIsCiAgICAgICAic2VxdWVuY2UiOiAiOC4gMTYiCiAgICAgfSwKICAgICB7Ci0g
ICAgICAidGFncyI6IFsicmh5dGhtIiwgImVhc3kiLCAibWVkaXVtIl0sCisgICAgICAidGFncyI6
IFsicmh5dGhtIiwgImVhc3kiLCAibWVkaXVtIiwgImVhc3ktd2l0aC1yZXN0cyIsICJtZWRpdW0t
d2l0aC1yZXN0cyIsICJyZXN0LWxpc3RlbmluZyJdLAogICAgICAgIm5hbWUiOiAiXHVFMUYwXHVF
MUY5XHVFMUYyXHVFMUZDIiwKICAgICAgICJzZXF1ZW5jZSI6ICIxNiA4LiIKICAgICB9LAogICAg
IHsKLSAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtIl0sCisgICAgICAidGFncyI6IFsi
cmh5dGhtIiwgIm1lZGl1bSIsICJtZWRpdW0td2l0aC1yZXN0cyIsICJyZXN0LWxpc3RlbmluZyJd
LAogICAgICAgIm5hbWUiOiAiXHVFMUYwXHVFMUY5XHVFMUY0XHVFMUY5XHVFMUY0XHVFMUY5XHVF
MUY0IiwKICAgICAgICJzZXF1ZW5jZSI6ICIxNiAxNiAxNiAxNiIKICAgICB9LAogICAgIHsKLSAg
ICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtIl0sCisgICAgICAidGFncyI6IFsicmh5dGht
IiwgIm1lZGl1bSIsICJtZWRpdW0td2l0aC1yZXN0cyIsICJyZXN0LWxpc3RlbmluZyJdLAogICAg
ICAgIm5hbWUiOiAiXHVFMUYwXHVFMUY3XHVFMUYyXHVFMUY5XHVFMUY0IiwKICAgICAgICJzZXF1
ZW5jZSI6ICI4IDE2IDE2IgogICAgIH0sCiAgICAgewotICAgICAgInRhZ3MiOiBbInJoeXRobSIs
ICJtZWRpdW0iXSwKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtIiwgIm1lZGl1bS13
aXRoLXJlc3RzIiwgInJlc3QtbGlzdGVuaW5nIl0sCiAgICAgICAibmFtZSI6ICJcdUUxRjBcdUUx
RjlcdUUxRjJcdUUxRjdcdUUxRjQiLAogICAgICAgInNlcXVlbmNlIjogIjE2IDggMTYiCiAgICAg
fSwKICAgICB7Ci0gICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bSJdLAorICAgICAgInRh
Z3MiOiBbInJoeXRobSIsICJtZWRpdW0iLCAibWVkaXVtLXdpdGgtcmVzdHMiLCAicmVzdC1saXN0
ZW5pbmciXSwKICAgICAgICJuYW1lIjogIlx1RTFGMFx1RTFGOVx1RTFGNFx1RTFGN1x1RTFGMiIs
CiAgICAgICAic2VxdWVuY2UiOiAiMTYgMTYgOCIKICAgICB9CmRpZmYgLS1naXQgYS9kYXRhL2Rl
ZmluaXRpb25zL3JoeXRobS1yZXN0LWRlZmluaXRpb25zLmpzb24gYi9kYXRhL2RlZmluaXRpb25z
L3JoeXRobS1yZXN0LWRlZmluaXRpb25zLmpzb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uNGIwZGNlMwotLS0gL2Rldi9udWxsCisrKyBiL2RhdGEvZGVmaW5pdGlvbnMvcmh5
dGhtLXJlc3QtZGVmaW5pdGlvbnMuanNvbgpAQCAtMCwwICsxLDE5NCBAQAoreworICAiZGVmaW5p
dGlvbnMiOiBbCisgICAgeworICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJlYXN5LXdpdGgtcmVz
dHMiLCAibWVkaXVtLXdpdGgtcmVzdHMiLCAicmVzdC1saXN0ZW5pbmciXSwKKyAgICAgICJuYW1l
IjogIlx1RTRFNiBcdUUxRDciLAorICAgICAgInNlcXVlbmNlIjogInI4IDgiCisgICAgfSwKKyAg
ICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgImVhc3ktd2l0aC1yZXN0cyIsICJtZWRpdW0t
d2l0aC1yZXN0cyJdLAorICAgICAgIm5hbWUiOiAiXHVFMUQ3IFx1RTRFNiIsCisgICAgICAic2Vx
dWVuY2UiOiAiOCByOCIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAi
ZWFzeS13aXRoLXJlc3RzIiwgIm1lZGl1bS13aXRoLXJlc3RzIiwgInJlc3QtbGlzdGVuaW5nIl0s
CisgICAgICAibmFtZSI6ICJcdUU0RTZcdUUxRTcgXHVFMUQ5IiwKKyAgICAgICJzZXF1ZW5jZSI6
ICJyOC4gMTYiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgImVhc3kt
d2l0aC1yZXN0cyIsICJtZWRpdW0td2l0aC1yZXN0cyJdLAorICAgICAgIm5hbWUiOiAiXHVFMUQ3
XHVFMUU3IFx1RTRFNyIsCisgICAgICAic2VxdWVuY2UiOiAiOC4gcjE2IgorICAgIH0sCisgICAg
eworICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJlYXN5LXdpdGgtcmVzdHMiLCAibWVkaXVtLXdp
dGgtcmVzdHMiLCAicmVzdC1saXN0ZW5pbmciXSwKKyAgICAgICJuYW1lIjogIlx1RTRFNyBcdUUx
RDdcdUUxRTciLAorICAgICAgInNlcXVlbmNlIjogInIxNiA4LiIKKyAgICB9LAorICAgIHsKKyAg
ICAgICJ0YWdzIjogWyJyaHl0aG0iLCAiZWFzeS13aXRoLXJlc3RzIiwgIm1lZGl1bS13aXRoLXJl
c3RzIl0sCisgICAgICAibmFtZSI6ICJcdUUxRDkgXHVFNEU2XHVFMUU3IiwKKyAgICAgICJzZXF1
ZW5jZSI6ICIxNiByOC4iCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwg
Im1lZGl1bS13aXRoLXJlc3RzIiwgInJlc3QtbGlzdGVuaW5nIl0sCisgICAgICAibmFtZSI6ICJc
dUU0RTcgXHVFMUYwXHVFMUY5XHVFMUY0XHVFMUY5XHVFMUY0IiwKKyAgICAgICJzZXF1ZW5jZSI6
ICJyMTYgMTYgMTYgMTYiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwg
Im1lZGl1bS13aXRoLXJlc3RzIl0sCisgICAgICAibmFtZSI6ICJcdUUxRDkgXHVFNEU3IFx1RTFG
MFx1RTFGOVx1RTFGNCIsCisgICAgICAic2VxdWVuY2UiOiAiMTYgcjE2IDE2IDE2IgorICAgIH0s
CisgICAgeworICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyIsICJy
ZXN0LWxpc3RlbmluZyJdLAorICAgICAgIm5hbWUiOiAiXHVFNEU3IFx1RTRFNyBcdUUxRjBcdUUx
RjlcdUUxRjQiLAorICAgICAgInNlcXVlbmNlIjogInIxNiByMTYgMTYgMTYiCisgICAgfSwKKyAg
ICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bS13aXRoLXJlc3RzIl0sCisgICAg
ICAibmFtZSI6ICJcdUUxRjBcdUUxRjlcdUUxRjQgXHVFNEU3IFx1RTFEOSIsCisgICAgICAic2Vx
dWVuY2UiOiAiMTYgMTYgcjE2IDE2IgorICAgIH0sCisgICAgeworICAgICAgInRhZ3MiOiBbInJo
eXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyIsICJyZXN0LWxpc3RlbmluZyJdLAorICAgICAgIm5h
bWUiOiAiXHVFNEU3IFx1RTFEOSBcdUU0RTcgXHVFMUQ5IiwKKyAgICAgICJzZXF1ZW5jZSI6ICJy
MTYgMTYgcjE2IDE2IgorICAgIH0sCisgICAgeworICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJt
ZWRpdW0td2l0aC1yZXN0cyJdLAorICAgICAgIm5hbWUiOiAiXHVFMUQ5IFx1RTRFNyBcdUU0RTcg
XHVFMUQ5IiwKKyAgICAgICJzZXF1ZW5jZSI6ICIxNiByMTYgcjE2IDE2IgorICAgIH0sCisgICAg
eworICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyJdLAorICAgICAg
Im5hbWUiOiAiXHVFNEU3IFx1RTRFNyBcdUU0RTcgXHVFMUQ5IiwKKyAgICAgICJzZXF1ZW5jZSI6
ICJyMTYgcjE2IHIxNiAxNiIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0i
LCAibWVkaXVtLXdpdGgtcmVzdHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTFGMFx1RTFGOVx1RTFG
NFx1RTFGOVx1RTFGNCBcdUU0RTciLAorICAgICAgInNlcXVlbmNlIjogIjE2IDE2IDE2IHIxNiIK
KyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgtcmVz
dHMiLCAicmVzdC1saXN0ZW5pbmciXSwKKyAgICAgICJuYW1lIjogIlx1RTRFNyBcdUUxRjBcdUUx
RjlcdUUxRjQgXHVFNEU3IiwKKyAgICAgICJzZXF1ZW5jZSI6ICJyMTYgMTYgMTYgcjE2IgorICAg
IH0sCisgICAgeworICAgICAgInRhZ3MiOiBbInJoeXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyJd
LAorICAgICAgIm5hbWUiOiAiXHVFMUQ5IFx1RTRFNyBcdUUxRDkgXHVFNEU3IiwKKyAgICAgICJz
ZXF1ZW5jZSI6ICIxNiByMTYgMTYgcjE2IgorICAgIH0sCisgICAgeworICAgICAgInRhZ3MiOiBb
InJoeXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyJdLAorICAgICAgIm5hbWUiOiAiXHVFNEU3IFx1
RTRFNyBcdUUxRDkgXHVFNEU3IiwKKyAgICAgICJzZXF1ZW5jZSI6ICJyMTYgcjE2IDE2IHIxNiIK
KyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgtcmVz
dHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTFGMFx1RTFGOVx1RTFGNCBcdUU0RTcgXHVFNEU3IiwK
KyAgICAgICJzZXF1ZW5jZSI6ICIxNiAxNiByMTYgcjE2IgorICAgIH0sCisgICAgeworICAgICAg
InRhZ3MiOiBbInJoeXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyJdLAorICAgICAgIm5hbWUiOiAi
XHVFNEU3IFx1RTFEOSBcdUU0RTcgXHVFNEU3IiwKKyAgICAgICJzZXF1ZW5jZSI6ICJyMTYgMTYg
cjE2IHIxNiIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVt
LXdpdGgtcmVzdHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTFEOSBcdUU0RTcgXHVFNEU3IFx1RTRF
NyIsCisgICAgICAic2VxdWVuY2UiOiAiMTYgcjE2IHIxNiByMTYiCisgICAgfSwKKyAgICB7Cisg
ICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bS13aXRoLXJlc3RzIl0sCisgICAgICAibmFt
ZSI6ICJcdUU0RTYgXHVFMUYwXHVFMUY5XHVFMUY0IiwKKyAgICAgICJzZXF1ZW5jZSI6ICJyOCAx
NiAxNiIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtLXdp
dGgtcmVzdHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTFENyBcdUU0RTcgXHVFMUQ5IiwKKyAgICAg
ICJzZXF1ZW5jZSI6ICI4IHIxNiAxNiIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJy
aHl0aG0iLCAibWVkaXVtLXdpdGgtcmVzdHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTRFNiBcdUU0
RTcgXHVFMUQ5IiwKKyAgICAgICJzZXF1ZW5jZSI6ICJyOCByMTYgMTYiCisgICAgfSwKKyAgICB7
CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bS13aXRoLXJlc3RzIl0sCisgICAgICAi
bmFtZSI6ICJcdUUxRDcgXHVFMUQ5IFx1RTRFNyIsCisgICAgICAic2VxdWVuY2UiOiAiOCAxNiBy
MTYiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bS13aXRo
LXJlc3RzIl0sCisgICAgICAibmFtZSI6ICJcdUU0RTYgXHVFMUQ5IFx1RTRFNyIsCisgICAgICAi
c2VxdWVuY2UiOiAicjggMTYgcjE2IgorICAgIH0sCisgICAgeworICAgICAgInRhZ3MiOiBbInJo
eXRobSIsICJtZWRpdW0td2l0aC1yZXN0cyJdLAorICAgICAgIm5hbWUiOiAiXHVFMUQ3IFx1RTRF
NyBcdUU0RTciLAorICAgICAgInNlcXVlbmNlIjogIjggcjE2IHIxNiIKKyAgICB9LAorICAgIHsK
KyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgtcmVzdHMiXSwKKyAgICAgICJu
YW1lIjogIlx1RTRFNyBcdUUxRDcgXHVFMUQ5IiwKKyAgICAgICJzZXF1ZW5jZSI6ICJyMTYgOCAx
NiIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgt
cmVzdHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTFEOSBcdUU0RTYgXHVFMUQ5IiwKKyAgICAgICJz
ZXF1ZW5jZSI6ICIxNiByOCAxNiIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0
aG0iLCAibWVkaXVtLXdpdGgtcmVzdHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTRFNyBcdUU0RTYg
XHVFMUQ5IiwKKyAgICAgICJzZXF1ZW5jZSI6ICJyMTYgcjggMTYiCisgICAgfSwKKyAgICB7Cisg
ICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bS13aXRoLXJlc3RzIl0sCisgICAgICAibmFt
ZSI6ICJcdUUxRDkgXHVFMUQ3IFx1RTRFNyIsCisgICAgICAic2VxdWVuY2UiOiAiMTYgOCByMTYi
CisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bS13aXRoLXJl
c3RzIl0sCisgICAgICAibmFtZSI6ICJcdUU0RTcgXHVFMUQ3IFx1RTRFNyIsCisgICAgICAic2Vx
dWVuY2UiOiAicjE2IDggcjE2IgorICAgIH0sCisgICAgeworICAgICAgInRhZ3MiOiBbInJoeXRo
bSIsICJtZWRpdW0td2l0aC1yZXN0cyJdLAorICAgICAgIm5hbWUiOiAiXHVFMUQ5IFx1RTRFNiBc
dUU0RTciLAorICAgICAgInNlcXVlbmNlIjogIjE2IHI4IHIxNiIKKyAgICB9LAorICAgIHsKKyAg
ICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgtcmVzdHMiXSwKKyAgICAgICJuYW1l
IjogIlx1RTRFNyBcdUUxRDkgXHVFMUQ3IiwKKyAgICAgICJzZXF1ZW5jZSI6ICJyMTYgMTYgOCIK
KyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgtcmVz
dHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTFEOSBcdUU0RTcgXHVFMUQ3IiwKKyAgICAgICJzZXF1
ZW5jZSI6ICIxNiByMTYgOCIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0i
LCAibWVkaXVtLXdpdGgtcmVzdHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTRFNyBcdUU0RTcgXHVF
MUQ3IiwKKyAgICAgICJzZXF1ZW5jZSI6ICJyMTYgcjE2IDgiCisgICAgfSwKKyAgICB7CisgICAg
ICAidGFncyI6IFsicmh5dGhtIiwgIm1lZGl1bS13aXRoLXJlc3RzIl0sCisgICAgICAibmFtZSI6
ICJcdUUxRjBcdUUxRjlcdUUxRjQgXHVFNEU2IiwKKyAgICAgICJzZXF1ZW5jZSI6ICIxNiAxNiBy
OCIKKyAgICB9LAorICAgIHsKKyAgICAgICJ0YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgt
cmVzdHMiXSwKKyAgICAgICJuYW1lIjogIlx1RTRFNyBcdUUxRDkgXHVFNEU2IiwKKyAgICAgICJz
ZXF1ZW5jZSI6ICJyMTYgMTYgcjgiCisgICAgfSwKKyAgICB7CisgICAgICAidGFncyI6IFsicmh5
dGhtIiwgIm1lZGl1bS13aXRoLXJlc3RzIl0sCisgICAgICAibmFtZSI6ICJcdUUxRDkgXHVFNEU3
IFx1RTRFNiIsCisgICAgICAic2VxdWVuY2UiOiAiMTYgcjE2IHI4IgorICAgIH0KKyAgXQorfQpk
aWZmIC0tZ2l0IGEvZGF0YS9leGVyY2lzZXMvQ01ha2VMaXN0cy50eHQgYi9kYXRhL2V4ZXJjaXNl
cy9DTWFrZUxpc3RzLnR4dAppbmRleCAxMDNkODE3Li5mMzg3ZGZiIDEwMDY0NAotLS0gYS9kYXRh
L2V4ZXJjaXNlcy9DTWFrZUxpc3RzLnR4dAorKysgYi9kYXRhL2V4ZXJjaXNlcy9DTWFrZUxpc3Rz
LnR4dApAQCAtMTgsNyArMTgsOSBAQCBzZXQoTUlOVUVUX0VYRVJDSVNFUwogICAgIHNjYWxlcy1z
aW1tZXRyaWMtZXhlcmNpc2VzLmpzb24KICAgICBzY2FsZXMtYmVib3AtZXhlcmNpc2VzLmpzb24K
ICAgICByaHl0aG0tZWFzeS5qc29uCisgICAgcmh5dGhtLWVhc3ktcmVzdHMuanNvbgogICAgIHJo
eXRobS1tZWRpdW0uanNvbgorICAgIHJoeXRobS1tZWRpdW0tcmVzdHMuanNvbgogKQogCiBpbnN0
YWxsKEZJTEVTICR7TUlOVUVUX0VYRVJDSVNFU30KZGlmZiAtLWdpdCBhL2RhdGEvZXhlcmNpc2Vz
L3JoeXRobS1lYXN5LXJlc3RzLmpzb24gYi9kYXRhL2V4ZXJjaXNlcy9yaHl0aG0tZWFzeS1yZXN0
cy5qc29uCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY1ODAxNjYKLS0tIC9k
ZXYvbnVsbAorKysgYi9kYXRhL2V4ZXJjaXNlcy9yaHl0aG0tZWFzeS1yZXN0cy5qc29uCkBAIC0w
LDAgKzEsMTkgQEAKK3sKKyAgImV4ZXJjaXNlcyI6IFsKKyAgICB7CisgICAgICAibmFtZSI6ICJS
aHl0aG0iLAorICAgICAgInBsYXlNb2RlIjogInJoeXRobSIsCisgICAgICAidXNlck1lc3NhZ2Ui
OiAiSGVhciB0aGUgcmh5dGhtIGFuZCBjaG9vc2UgeW91ciBhbnN3ZXJzIiwKKyAgICAgICJ0ZW1w
bGF0ZSI6ICJsaWx5cG9uZC10ZW1wbGF0ZXMvcmh5dGhtLmx5LnRtcGwiLAorICAgICAgIl9pY29u
IjogIm1pbnVldC1yaHl0aG1zLXN5bWJvbGljLnN2ZyIsCisgICAgICAiY2hpbGRyZW4iOiBbCisg
ICAgICAgIHsKKyAgICAgICAgICAibmFtZSI6ICJFYXN5IHdpdGggcmVzdHMiLAorICAgICAgICAg
ICJhbmQtdGFncyI6IFsicmh5dGhtIiwgImVhc3ktd2l0aC1yZXN0cyIsICJyZXN0LWxpc3Rlbmlu
ZyJdLAorICAgICAgICAgICJjbGFwcGluZy1hbmQtdGFncyI6IFsicmh5dGhtIiwgImVhc3ktd2l0
aC1yZXN0cyJdLAorICAgICAgICAgICJkZXNjcmlwdGlvbiI6ICJQcmFjdGljZSBiYXNpYyByaHl0
aG0gcGF0dGVybnMgdGhhdCBjb21iaW5lIG5vdGVzIGFuZCByZXN0cy4iCisgICAgICAgIH0KKyAg
ICAgIF0KKyAgICB9CisgIF0KK30KZGlmZiAtLWdpdCBhL2RhdGEvZXhlcmNpc2VzL3JoeXRobS1t
ZWRpdW0tcmVzdHMuanNvbiBiL2RhdGEvZXhlcmNpc2VzL3JoeXRobS1tZWRpdW0tcmVzdHMuanNv
bgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mOTY0ZDY5Ci0tLSAvZGV2L251
bGwKKysrIGIvZGF0YS9leGVyY2lzZXMvcmh5dGhtLW1lZGl1bS1yZXN0cy5qc29uCkBAIC0wLDAg
KzEsMTkgQEAKK3sKKyAgImV4ZXJjaXNlcyI6IFsKKyAgICB7CisgICAgICAibmFtZSI6ICJSaHl0
aG0iLAorICAgICAgInBsYXlNb2RlIjogInJoeXRobSIsCisgICAgICAidXNlck1lc3NhZ2UiOiAi
SGVhciB0aGUgcmh5dGhtIGFuZCBjaG9vc2UgeW91ciBhbnN3ZXJzIiwKKyAgICAgICJ0ZW1wbGF0
ZSI6ICJsaWx5cG9uZC10ZW1wbGF0ZXMvcmh5dGhtLmx5LnRtcGwiLAorICAgICAgIl9pY29uIjog
Im1pbnVldC1yaHl0aG1zLXN5bWJvbGljLnN2ZyIsCisgICAgICAiY2hpbGRyZW4iOiBbCisgICAg
ICAgIHsKKyAgICAgICAgICAibmFtZSI6ICJNZWRpdW0gd2l0aCByZXN0cyIsCisgICAgICAgICAg
ImFuZC10YWdzIjogWyJyaHl0aG0iLCAibWVkaXVtLXdpdGgtcmVzdHMiLCAicmVzdC1saXN0ZW5p
bmciXSwKKyAgICAgICAgICAiY2xhcHBpbmctYW5kLXRhZ3MiOiBbInJoeXRobSIsICJtZWRpdW0t
d2l0aC1yZXN0cyJdLAorICAgICAgICAgICJkZXNjcmlwdGlvbiI6ICJQcmFjdGljZSB2YXJpZWQg
cmh5dGhtIHBhdHRlcm5zIHRoYXQgY29tYmluZSBub3RlcyBhbmQgcmVzdHMuIgorICAgICAgICB9
CisgICAgICBdCisgICAgfQorICBdCit9CmRpZmYgLS1naXQgYS9kb2MvaW5kZXguZG9jYm9vayBi
L2RvYy9pbmRleC5kb2Nib29rCmluZGV4IDIwNzFmYTMuLjkwY2U4ODMgMTAwNjQ0Ci0tLSBhL2Rv
Yy9pbmRleC5kb2Nib29rCisrKyBiL2RvYy9pbmRleC5kb2Nib29rCkBAIC0yMjAsNiArMjIwLDEy
IEBAIFJoeXRobSBleGVyY2lzZXMgZm9jdXMgb24gdGltaW5nIHJhdGhlciB0aGFuIHBpdGNoLiBJ
biB0aGUgY2xhcHBpbmcgbW9kZSwgJm1pbnVlCiBtaWNyb3Bob25lIGlucHV0IGFuZCBjb21wYXJl
cyB0aGUgb25zZXRzIHRvIHRoZSB0YXJnZXQgcGF0dGVybi4KIDwvcGFyYT4KIAorPHBhcmE+CitU
aGUgPGd1aWxhYmVsPkVhc3kgd2l0aCByZXN0czwvZ3VpbGFiZWw+IGFuZCA8Z3VpbGFiZWw+TWVk
aXVtIHdpdGggcmVzdHM8L2d1aWxhYmVsPiBjYXRlZ29yaWVzIGFkZAorc2lsZW50IHBvc2l0aW9u
cyB0byB0aGUgY29ycmVzcG9uZGluZyBub3RlLW9ubHkgcGF0dGVybnMuIExpc3RlbmluZyBleGVy
Y2lzZXMgYXZvaWQgY2hvaWNlcyB0aGF0Citzb3VuZCBpZGVudGljYWwsIHdoaWxlIDxndWlsYWJl
bD5SZWFkIGFuZCBjbGFwPC9ndWlsYWJlbD4gaW5jbHVkZXMgZXZlcnkgbWl4ZWQgbm90ZS1hbmQt
cmVzdCBwYXR0ZXJuLgorPC9wYXJhPgorCiA8c2NyZWVuc2hvdD4KICAgPHNjcmVlbmluZm8+Jm1p
bnVldDsgY2xhcHBpbmcgZXhlcmNpc2U8L3NjcmVlbmluZm8+CiAgIDxtZWRpYW9iamVjdD4KZGlm
ZiAtLWdpdCBhL3NyYy9hcHAvQ01ha2VMaXN0cy50eHQgYi9zcmMvYXBwL0NNYWtlTGlzdHMudHh0
CmluZGV4IGExMmU1NDAuLjliYzY2MTEgMTAwNjQ0Ci0tLSBhL3NyYy9hcHAvQ01ha2VMaXN0cy50
eHQKKysrIGIvc3JjL2FwcC9DTWFrZUxpc3RzLnR4dApAQCAtMzMwLDYgKzMzMCwxNSBAQCBpZihO
T1QgTUlOVUVUX01PQklMRV9QTEFURk9STSkKICAgICB0YXJnZXRfbGlua19saWJyYXJpZXMobWlu
dWV0IFBSSVZBVEUgS0Y2OjpDcmFzaCkKIGVuZGlmKCkKIAoraWYoQlVJTERfVEVTVElORyBBTkQg
Tk9UIE1JTlVFVF9NT0JJTEVfUExBVEZPUk0pCisgICAgYWRkX2V4ZWN1dGFibGUocmh5dGhtcmVz
dHRlc3QgYXV0b3Rlc3RzL3JoeXRobXJlc3R0ZXN0LmNwcCkKKyAgICB0YXJnZXRfY29tcGlsZV9k
ZWZpbml0aW9ucygKKyAgICAgICAgcmh5dGhtcmVzdHRlc3QgUFJJVkFURSBNSU5VRVRfU09VUkNF
X0RJUj0iJHtDTUFLRV9TT1VSQ0VfRElSfSIKKyAgICApCisgICAgdGFyZ2V0X2xpbmtfbGlicmFy
aWVzKHJoeXRobXJlc3R0ZXN0IFF0OjpDb3JlIFF0OjpUZXN0IE1pbnVldDo6VXRpbHMpCisgICAg
YWRkX3Rlc3QoTkFNRSByaHl0aG1yZXN0dGVzdCBDT01NQU5EIHJoeXRobXJlc3R0ZXN0KQorZW5k
aWYoKQorCiBpZihOT1QgTUlOVUVUX01PQklMRV9QTEFURk9STSkKICAgICBpbnN0YWxsKFRBUkdF
VFMgbWludWV0ICR7S0RFX0lOU1RBTExfVEFSR0VUU19ERUZBVUxUX0FSR1N9KQogICAgIGluc3Rh
bGwoUFJPR1JBTVMgb3JnLmtkZS5taW51ZXQuZGVza3RvcCBERVNUSU5BVElPTiAke0tERV9JTlNU
QUxMX0FQUERJUn0pCmRpZmYgLS1naXQgYS9zcmMvYXBwL2F1dG90ZXN0cy9yaHl0aG1yZXN0dGVz
dC5jcHAgYi9zcmMvYXBwL2F1dG90ZXN0cy9yaHl0aG1yZXN0dGVzdC5jcHAKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTU4ZjZjYgotLS0gL2Rldi9udWxsCisrKyBiL3NyYy9h
cHAvYXV0b3Rlc3RzL3JoeXRobXJlc3R0ZXN0LmNwcApAQCAtMCwwICsxLDI4NiBAQAorLy8gU1BE
WC1GaWxlQ29weXJpZ2h0VGV4dDogMjAyNiBTYW5kcm8gQW5kcmFkZSA8c2FuZHJvYW5kcmFkZUBr
ZGUub3JnPgorLy8KKy8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wLW9yLWxhdGVy
CisKKyNpbmNsdWRlIDx1dGlscy9yaHl0aG10b2tlbi5oPgorCisjaW5jbHVkZSA8UUZpbGU+Cisj
aW5jbHVkZSA8UUpzb25BcnJheT4KKyNpbmNsdWRlIDxRSnNvbkRvY3VtZW50PgorI2luY2x1ZGUg
PFFKc29uT2JqZWN0PgorI2luY2x1ZGUgPFFTZXQ+CisjaW5jbHVkZSA8UVRlc3Q+CisKKyNpbmNs
dWRlIDx1dGlsaXR5PgorCit1c2luZyBuYW1lc3BhY2UgUXQ6OlN0cmluZ0xpdGVyYWxzOworCitu
YW1lc3BhY2UKK3sKK1FKc29uQXJyYXkgbG9hZEFycmF5KGNvbnN0IFFTdHJpbmcgJnJlbGF0aXZl
UGF0aCwgY29uc3QgUVN0cmluZyAmYXJyYXlOYW1lKQoreworICAgIFFGaWxlIGZpbGUodSIlMS8l
MiJfcy5hcmcoUVN0cmluZ0xpdGVyYWwoTUlOVUVUX1NPVVJDRV9ESVIpLCByZWxhdGl2ZVBhdGgp
KTsKKyAgICBpZiAoIWZpbGUub3BlbihRSU9EZXZpY2U6OlJlYWRPbmx5KSkgeworICAgICAgICBy
ZXR1cm4ge307CisgICAgfQorICAgIHJldHVybiBRSnNvbkRvY3VtZW50Ojpmcm9tSnNvbihmaWxl
LnJlYWRBbGwoKSkub2JqZWN0KCkudmFsdWUoYXJyYXlOYW1lKS50b0FycmF5KCk7Cit9CisKK2Jv
b2wgaGFzVGFnKGNvbnN0IFFKc29uT2JqZWN0ICZkZWZpbml0aW9uLCBjb25zdCBRU3RyaW5nICZ0
YWcpCit7CisgICAgcmV0dXJuIGRlZmluaXRpb24udmFsdWUodSJ0YWdzIl9zKS50b0FycmF5KCku
Y29udGFpbnModGFnKTsKK30KKworUUpzb25BcnJheSBkZWZpbml0aW9uc1dpdGhUYWdzKGNvbnN0
IFFKc29uQXJyYXkgJmRlZmluaXRpb25zLCBjb25zdCBRU3RyaW5nTGlzdCAmdGFncykKK3sKKyAg
ICBRSnNvbkFycmF5IGZpbHRlcmVkOworICAgIGZvciAoY29uc3QgUUpzb25WYWx1ZSAmdmFsdWUg
OiBkZWZpbml0aW9ucykgeworICAgICAgICBjb25zdCBRSnNvbk9iamVjdCBkZWZpbml0aW9uID0g
dmFsdWUudG9PYmplY3QoKTsKKyAgICAgICAgYm9vbCBtYXRjaGVzID0gdHJ1ZTsKKyAgICAgICAg
Zm9yIChjb25zdCBRU3RyaW5nICZ0YWcgOiB0YWdzKSB7CisgICAgICAgICAgICBpZiAoIWhhc1Rh
ZyhkZWZpbml0aW9uLCB0YWcpKSB7CisgICAgICAgICAgICAgICAgbWF0Y2hlcyA9IGZhbHNlOwor
ICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAg
IGlmIChtYXRjaGVzKSB7CisgICAgICAgICAgICBmaWx0ZXJlZC5hcHBlbmQoZGVmaW5pdGlvbik7
CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIGZpbHRlcmVkOworfQorCitRU3RyaW5nTGlz
dCBzdHJpbmdMaXN0KGNvbnN0IFFKc29uQXJyYXkgJnZhbHVlcykKK3sKKyAgICBRU3RyaW5nTGlz
dCBzdHJpbmdzOworICAgIGZvciAoY29uc3QgUUpzb25WYWx1ZSAmdmFsdWUgOiB2YWx1ZXMpIHsK
KyAgICAgICAgc3RyaW5ncy5hcHBlbmQodmFsdWUudG9TdHJpbmcoKSk7CisgICAgfQorICAgIHJl
dHVybiBzdHJpbmdzOworfQorCitRSnNvbk9iamVjdCByZXN0Q2F0ZWdvcnkoY29uc3QgUVN0cmlu
ZyAmcmVsYXRpdmVQYXRoKQoreworICAgIGNvbnN0IFFKc29uQXJyYXkgZXhlcmNpc2VzID0gbG9h
ZEFycmF5KHJlbGF0aXZlUGF0aCwgdSJleGVyY2lzZXMiX3MpOworICAgIGlmIChleGVyY2lzZXMu
aXNFbXB0eSgpKSB7CisgICAgICAgIHJldHVybiB7fTsKKyAgICB9CisgICAgY29uc3QgUUpzb25B
cnJheSBjaGlsZHJlbiA9IGV4ZXJjaXNlcy5maXJzdCgpLnRvT2JqZWN0KCkudmFsdWUodSJjaGls
ZHJlbiJfcykudG9BcnJheSgpOworICAgIGZvciAoY29uc3QgUUpzb25WYWx1ZSAmdmFsdWUgOiBj
aGlsZHJlbikgeworICAgICAgICBjb25zdCBRSnNvbk9iamVjdCBjYXRlZ29yeSA9IHZhbHVlLnRv
T2JqZWN0KCk7CisgICAgICAgIGlmIChjYXRlZ29yeS52YWx1ZSh1Im5hbWUiX3MpLnRvU3RyaW5n
KCkuZW5kc1dpdGgodSJ3aXRoIHJlc3RzIl9zKSkgeworICAgICAgICAgICAgcmV0dXJuIGNhdGVn
b3J5OworICAgICAgICB9CisgICAgfQorICAgIHJldHVybiB7fTsKK30KKworUVN0cmluZyBuYW1l
Rm9yU2VxdWVuY2UoY29uc3QgUUpzb25BcnJheSAmZGVmaW5pdGlvbnMsIGNvbnN0IFFTdHJpbmcg
JnNlcXVlbmNlKQoreworICAgIGZvciAoY29uc3QgUUpzb25WYWx1ZSAmdmFsdWUgOiBkZWZpbml0
aW9ucykgeworICAgICAgICBjb25zdCBRSnNvbk9iamVjdCBkZWZpbml0aW9uID0gdmFsdWUudG9P
YmplY3QoKTsKKyAgICAgICAgaWYgKGRlZmluaXRpb24udmFsdWUodSJzZXF1ZW5jZSJfcykudG9T
dHJpbmcoKSA9PSBzZXF1ZW5jZSkgeworICAgICAgICAgICAgcmV0dXJuIGRlZmluaXRpb24udmFs
dWUodSJuYW1lIl9zKS50b1N0cmluZygpOworICAgICAgICB9CisgICAgfQorICAgIHJldHVybiB7
fTsKK30KKworUVN0cmluZyBvbnNldFNpZ25hdHVyZShjb25zdCBRU3RyaW5nICZzZXF1ZW5jZSkK
K3sKKyAgICBRU3RyaW5nTGlzdCBvbnNldHM7CisgICAgZG91YmxlIGN1cnNvciA9IDAuMDsKKyAg
ICBmb3IgKGNvbnN0IFFTdHJpbmcgJnRleHQgOiBzZXF1ZW5jZS5zcGxpdCh1JyAnLCBRdDo6U2tp
cEVtcHR5UGFydHMpKSB7CisgICAgICAgIGNvbnN0IE1pbnVldDo6Umh5dGhtVG9rZW4gdG9rZW4g
PSBNaW51ZXQ6OnBhcnNlUmh5dGhtVG9rZW4odGV4dCk7CisgICAgICAgIGlmICghdG9rZW4ucmVz
dCkgeworICAgICAgICAgICAgb25zZXRzLmFwcGVuZChRU3RyaW5nOjpudW1iZXIoY3Vyc29yLCAn
ZicsIDIpKTsKKyAgICAgICAgfQorICAgICAgICBjdXJzb3IgKz0gdG9rZW4ucXVhcnRlck5vdGVC
ZWF0cygpOworICAgIH0KKyAgICByZXR1cm4gb25zZXRzLmpvaW4odScsJyk7Cit9CisKK1FTZXQ8
UVN0cmluZz4gZXhwZWN0ZWRSZXN0VmFyaWFudHMoY29uc3QgUUpzb25BcnJheSAmYmFzZURlZmlu
aXRpb25zKQoreworICAgIFFTZXQ8UVN0cmluZz4gdmFyaWFudHM7CisgICAgZm9yIChjb25zdCBR
SnNvblZhbHVlICZ2YWx1ZSA6IGJhc2VEZWZpbml0aW9ucykgeworICAgICAgICBjb25zdCBRU3Ry
aW5nTGlzdCB0b2tlbnMgPSB2YWx1ZS50b09iamVjdCgpLnZhbHVlKHUic2VxdWVuY2UiX3MpLnRv
U3RyaW5nKCkuc3BsaXQodScgJywgUXQ6OlNraXBFbXB0eVBhcnRzKTsKKyAgICAgICAgY29uc3Qg
aW50IGFsbFJlc3RNYXNrID0gKDEgPDwgdG9rZW5zLnNpemUoKSkgLSAxOworICAgICAgICBmb3Ig
KGludCBtYXNrID0gMTsgbWFzayA8IGFsbFJlc3RNYXNrOyArK21hc2spIHsKKyAgICAgICAgICAg
IFFTdHJpbmdMaXN0IHZhcmlhbnQgPSB0b2tlbnM7CisgICAgICAgICAgICBmb3IgKGludCB0b2tl
bkluZGV4ID0gMDsgdG9rZW5JbmRleCA8IHZhcmlhbnQuc2l6ZSgpOyArK3Rva2VuSW5kZXgpIHsK
KyAgICAgICAgICAgICAgICBpZiAobWFzayAmICgxIDw8IHRva2VuSW5kZXgpKSB7CisgICAgICAg
ICAgICAgICAgICAgIHZhcmlhbnRbdG9rZW5JbmRleF0ucHJlcGVuZCh1J3InKTsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICB2YXJpYW50cy5pbnNlcnQodmFy
aWFudC5qb2luKHUnICcpKTsKKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gdmFyaWFudHM7
Cit9Cit9CisKK2NsYXNzIFJoeXRobVJlc3RUZXN0IDogcHVibGljIFFPYmplY3QKK3sKKyAgICBR
X09CSkVDVAorCitwcml2YXRlIFFfU0xPVFM6CisgICAgdm9pZCBpbml0VGVzdENhc2UoKTsKKyAg
ICB2b2lkIHBhcnNlc1JoeXRobVRva2VucygpOworICAgIHZvaWQgY29udGFpbnNFdmVyeU1peGVk
UmVzdFZhcmlhbnQoKTsKKyAgICB2b2lkIGNhdGVnb3J5Q291bnRzQXJlU3RhYmxlKCk7CisgICAg
dm9pZCBjYXRlZ29yeUZpbHRlcnNNYXRjaFByYWN0aWNlTW9kZXMoKTsKKyAgICB2b2lkIGNvbnNl
Y3V0aXZlU2l4dGVlbnRoc1VzZUJlYW1zKCk7CisgICAgdm9pZCBsaXN0ZW5pbmdQYXR0ZXJuc0hh
dmVVbmlxdWVPbnNldHMoKTsKKyAgICB2b2lkIGV2ZXJ5UGF0dGVybkZpbGxzT25lQmVhdCgpOwor
Citwcml2YXRlOgorICAgIFFKc29uQXJyYXkgbV9iYXNlRGVmaW5pdGlvbnM7CisgICAgUUpzb25B
cnJheSBtX3Jlc3REZWZpbml0aW9uczsKKyAgICBRSnNvbkFycmF5IG1fYWxsRGVmaW5pdGlvbnM7
Cit9OworCit2b2lkIFJoeXRobVJlc3RUZXN0Ojppbml0VGVzdENhc2UoKQoreworICAgIG1fYmFz
ZURlZmluaXRpb25zID0gbG9hZEFycmF5KHUiZGF0YS9kZWZpbml0aW9ucy9yaHl0aG0tZGVmaW5p
dGlvbnMuanNvbiJfcywgdSJkZWZpbml0aW9ucyJfcyk7CisgICAgbV9yZXN0RGVmaW5pdGlvbnMg
PSBsb2FkQXJyYXkodSJkYXRhL2RlZmluaXRpb25zL3JoeXRobS1yZXN0LWRlZmluaXRpb25zLmpz
b24iX3MsIHUiZGVmaW5pdGlvbnMiX3MpOworICAgIFFWRVJJRlkoIW1fYmFzZURlZmluaXRpb25z
LmlzRW1wdHkoKSk7CisgICAgUVZFUklGWSghbV9yZXN0RGVmaW5pdGlvbnMuaXNFbXB0eSgpKTsK
KworICAgIG1fYWxsRGVmaW5pdGlvbnMgPSBtX2Jhc2VEZWZpbml0aW9uczsKKyAgICBmb3IgKGNv
bnN0IFFKc29uVmFsdWUgJmRlZmluaXRpb24gOiBzdGQ6OmFzX2NvbnN0KG1fcmVzdERlZmluaXRp
b25zKSkgeworICAgICAgICBtX2FsbERlZmluaXRpb25zLmFwcGVuZChkZWZpbml0aW9uKTsKKyAg
ICB9Cit9CisKK3ZvaWQgUmh5dGhtUmVzdFRlc3Q6OnBhcnNlc1JoeXRobVRva2VucygpCit7Cisg
ICAgY29uc3QgTWludWV0OjpSaHl0aG1Ub2tlbiBub3RlID0gTWludWV0OjpwYXJzZVJoeXRobVRv
a2VuKHUiMTYiKTsKKyAgICBRVkVSSUZZKG5vdGUudmFsaWQpOworICAgIFFWRVJJRlkoIW5vdGUu
cmVzdCk7CisgICAgUVZFUklGWSghbm90ZS5kb3R0ZWQpOworICAgIFFDT01QQVJFKG5vdGUuZGVu
b21pbmF0b3IsIDE2KTsKKyAgICBRQ09NUEFSRShub3RlLnF1YXJ0ZXJOb3RlQmVhdHMoKSwgMC4y
NSk7CisKKyAgICBjb25zdCBNaW51ZXQ6OlJoeXRobVRva2VuIHJlc3QgPSBNaW51ZXQ6OnBhcnNl
Umh5dGhtVG9rZW4odSJyOC4iKTsKKyAgICBRVkVSSUZZKHJlc3QudmFsaWQpOworICAgIFFWRVJJ
RlkocmVzdC5yZXN0KTsKKyAgICBRVkVSSUZZKHJlc3QuZG90dGVkKTsKKyAgICBRQ09NUEFSRShy
ZXN0LmRlbm9taW5hdG9yLCA4KTsKKyAgICBRQ09NUEFSRShyZXN0LnF1YXJ0ZXJOb3RlQmVhdHMo
KSwgMC43NSk7CisKKyAgICBRVkVSSUZZKCFNaW51ZXQ6OnBhcnNlUmh5dGhtVG9rZW4odSJyIiku
dmFsaWQpOworICAgIFFWRVJJRlkoIU1pbnVldDo6cGFyc2VSaHl0aG1Ub2tlbih1InI4Li4iKS52
YWxpZCk7CisgICAgUVZFUklGWSghTWludWV0OjpwYXJzZVJoeXRobVRva2VuKHUiMCIpLnZhbGlk
KTsKK30KKwordm9pZCBSaHl0aG1SZXN0VGVzdDo6Y29udGFpbnNFdmVyeU1peGVkUmVzdFZhcmlh
bnQoKQoreworICAgIFFDT01QQVJFKG1fcmVzdERlZmluaXRpb25zLnNpemUoKSwgMzgpOworCisg
ICAgUVNldDxRU3RyaW5nPiBhY3R1YWxTZXF1ZW5jZXM7CisgICAgZm9yIChjb25zdCBRSnNvblZh
bHVlICZ2YWx1ZSA6IHN0ZDo6YXNfY29uc3QobV9yZXN0RGVmaW5pdGlvbnMpKSB7CisgICAgICAg
IGNvbnN0IFFKc29uT2JqZWN0IGRlZmluaXRpb24gPSB2YWx1ZS50b09iamVjdCgpOworICAgICAg
ICBjb25zdCBRU3RyaW5nIHNlcXVlbmNlID0gZGVmaW5pdGlvbi52YWx1ZSh1InNlcXVlbmNlIl9z
KS50b1N0cmluZygpOworICAgICAgICBRVkVSSUZZMighYWN0dWFsU2VxdWVuY2VzLmNvbnRhaW5z
KHNlcXVlbmNlKSwgcVByaW50YWJsZShzZXF1ZW5jZSkpOworICAgICAgICBhY3R1YWxTZXF1ZW5j
ZXMuaW5zZXJ0KHNlcXVlbmNlKTsKKworICAgICAgICBib29sIGNvbnRhaW5zTm90ZSA9IGZhbHNl
OworICAgICAgICBib29sIGNvbnRhaW5zUmVzdCA9IGZhbHNlOworICAgICAgICBmb3IgKGNvbnN0
IFFTdHJpbmcgJnRleHQgOiBzZXF1ZW5jZS5zcGxpdCh1JyAnLCBRdDo6U2tpcEVtcHR5UGFydHMp
KSB7CisgICAgICAgICAgICBjb25zdCBNaW51ZXQ6OlJoeXRobVRva2VuIHRva2VuID0gTWludWV0
OjpwYXJzZVJoeXRobVRva2VuKHRleHQpOworICAgICAgICAgICAgUVZFUklGWTIodG9rZW4udmFs
aWQsIHFQcmludGFibGUodGV4dCkpOworICAgICAgICAgICAgY29udGFpbnNSZXN0IHw9IHRva2Vu
LnJlc3Q7CisgICAgICAgICAgICBjb250YWluc05vdGUgfD0gIXRva2VuLnJlc3Q7CisgICAgICAg
IH0KKyAgICAgICAgUVZFUklGWShjb250YWluc1Jlc3QpOworICAgICAgICBRVkVSSUZZKGNvbnRh
aW5zTm90ZSk7CisgICAgICAgIFFWRVJJRlkoIWRlZmluaXRpb24udmFsdWUodSJuYW1lIl9zKS50
b1N0cmluZygpLmlzRW1wdHkoKSk7CisgICAgfQorCisgICAgY29uc3QgUUpzb25BcnJheSBtZWRp
dW1CYXNlcyA9IGRlZmluaXRpb25zV2l0aFRhZ3MobV9iYXNlRGVmaW5pdGlvbnMsIHt1InJoeXRo
bSJfcywgdSJtZWRpdW0iX3N9KTsKKyAgICBRQ09NUEFSRShhY3R1YWxTZXF1ZW5jZXMsIGV4cGVj
dGVkUmVzdFZhcmlhbnRzKG1lZGl1bUJhc2VzKSk7CisKKyAgICBjb25zdCBRSnNvbkFycmF5IGVh
c3lCYXNlcyA9IGRlZmluaXRpb25zV2l0aFRhZ3MobV9iYXNlRGVmaW5pdGlvbnMsIHt1InJoeXRo
bSJfcywgdSJlYXN5Il9zfSk7CisgICAgY29uc3QgUVNldDxRU3RyaW5nPiBlYXN5VmFyaWFudHMg
PSBleHBlY3RlZFJlc3RWYXJpYW50cyhlYXN5QmFzZXMpOworICAgIFFTZXQ8UVN0cmluZz4gdGFn
Z2VkRWFzeVZhcmlhbnRzOworICAgIGZvciAoY29uc3QgUUpzb25WYWx1ZSAmdmFsdWUgOiBzdGQ6
OmFzX2NvbnN0KG1fcmVzdERlZmluaXRpb25zKSkgeworICAgICAgICBjb25zdCBRSnNvbk9iamVj
dCBkZWZpbml0aW9uID0gdmFsdWUudG9PYmplY3QoKTsKKyAgICAgICAgaWYgKGhhc1RhZyhkZWZp
bml0aW9uLCB1ImVhc3ktd2l0aC1yZXN0cyJfcykpIHsKKyAgICAgICAgICAgIHRhZ2dlZEVhc3lW
YXJpYW50cy5pbnNlcnQoZGVmaW5pdGlvbi52YWx1ZSh1InNlcXVlbmNlIl9zKS50b1N0cmluZygp
KTsKKyAgICAgICAgfQorICAgIH0KKyAgICBRQ09NUEFSRSh0YWdnZWRFYXN5VmFyaWFudHMsIGVh
c3lWYXJpYW50cyk7Cit9CisKK3ZvaWQgUmh5dGhtUmVzdFRlc3Q6OmNhdGVnb3J5Q291bnRzQXJl
U3RhYmxlKCkKK3sKKyAgICBRQ09NUEFSRShkZWZpbml0aW9uc1dpdGhUYWdzKG1fYWxsRGVmaW5p
dGlvbnMsIHt1InJoeXRobSJfcywgdSJlYXN5LXdpdGgtcmVzdHMiX3N9KS5zaXplKCksIDEwKTsK
KyAgICBRQ09NUEFSRShkZWZpbml0aW9uc1dpdGhUYWdzKG1fYWxsRGVmaW5pdGlvbnMsIHt1InJo
eXRobSJfcywgdSJlYXN5LXdpdGgtcmVzdHMiX3MsIHUicmVzdC1saXN0ZW5pbmciX3N9KS5zaXpl
KCksIDcpOworICAgIFFDT01QQVJFKGRlZmluaXRpb25zV2l0aFRhZ3MobV9hbGxEZWZpbml0aW9u
cywge3Uicmh5dGhtIl9zLCB1Im1lZGl1bS13aXRoLXJlc3RzIl9zfSkuc2l6ZSgpLCA0Nik7Cisg
ICAgUUNPTVBBUkUoZGVmaW5pdGlvbnNXaXRoVGFncyhtX2FsbERlZmluaXRpb25zLCB7dSJyaHl0
aG0iX3MsIHUibWVkaXVtLXdpdGgtcmVzdHMiX3MsIHUicmVzdC1saXN0ZW5pbmciX3N9KS5zaXpl
KCksIDE1KTsKK30KKwordm9pZCBSaHl0aG1SZXN0VGVzdDo6Y2F0ZWdvcnlGaWx0ZXJzTWF0Y2hQ
cmFjdGljZU1vZGVzKCkKK3sKKyAgICBjb25zdCBRSnNvbk9iamVjdCBlYXN5ID0gcmVzdENhdGVn
b3J5KHUiZGF0YS9leGVyY2lzZXMvcmh5dGhtLWVhc3ktcmVzdHMuanNvbiJfcyk7CisgICAgY29u
c3QgUUpzb25PYmplY3QgbWVkaXVtID0gcmVzdENhdGVnb3J5KHUiZGF0YS9leGVyY2lzZXMvcmh5
dGhtLW1lZGl1bS1yZXN0cy5qc29uIl9zKTsKKyAgICBRVkVSSUZZKCFlYXN5LmlzRW1wdHkoKSk7
CisgICAgUVZFUklGWSghbWVkaXVtLmlzRW1wdHkoKSk7CisKKyAgICBRQ09NUEFSRShkZWZpbml0
aW9uc1dpdGhUYWdzKG1fYWxsRGVmaW5pdGlvbnMsIHN0cmluZ0xpc3QoZWFzeS52YWx1ZSh1ImFu
ZC10YWdzIl9zKS50b0FycmF5KCkpKS5zaXplKCksIDcpOworICAgIFFDT01QQVJFKGRlZmluaXRp
b25zV2l0aFRhZ3MobV9hbGxEZWZpbml0aW9ucywgc3RyaW5nTGlzdChlYXN5LnZhbHVlKHUiY2xh
cHBpbmctYW5kLXRhZ3MiX3MpLnRvQXJyYXkoKSkpLnNpemUoKSwgMTApOworICAgIFFDT01QQVJF
KGRlZmluaXRpb25zV2l0aFRhZ3MobV9hbGxEZWZpbml0aW9ucywgc3RyaW5nTGlzdChtZWRpdW0u
dmFsdWUodSJhbmQtdGFncyJfcykudG9BcnJheSgpKSkuc2l6ZSgpLCAxNSk7CisgICAgUUNPTVBB
UkUoZGVmaW5pdGlvbnNXaXRoVGFncyhtX2FsbERlZmluaXRpb25zLCBzdHJpbmdMaXN0KG1lZGl1
bS52YWx1ZSh1ImNsYXBwaW5nLWFuZC10YWdzIl9zKS50b0FycmF5KCkpKS5zaXplKCksIDQ2KTsK
K30KKwordm9pZCBSaHl0aG1SZXN0VGVzdDo6Y29uc2VjdXRpdmVTaXh0ZWVudGhzVXNlQmVhbXMo
KQoreworICAgIGNvbnN0IFFTdHJpbmcgcGFpciA9IHUiXHVFMUYwXHVFMUY5XHVFMUY0Il9zOwor
ICAgIGNvbnN0IFFTdHJpbmcgdHJpcGxlID0gdSJcdUUxRjBcdUUxRjlcdUUxRjRcdUUxRjlcdUUx
RjQiX3M7CisgICAgY29uc3QgUVN0cmluZyBzaXh0ZWVudGhSZXN0ID0gdSJcdUU0RTciX3M7Cisg
ICAgY29uc3QgUVN0cmluZyBlaWdodGhSZXN0ID0gdSJcdUU0RTYiX3M7CisgICAgY29uc3QgUVN0
cmluZyBpc29sYXRlZFNpeHRlZW50aCA9IHUiXHVFMUQ5Il9zOworCisgICAgUUNPTVBBUkUobmFt
ZUZvclNlcXVlbmNlKG1fcmVzdERlZmluaXRpb25zLCB1InIxNiAxNiAxNiAxNiJfcyksIHNpeHRl
ZW50aFJlc3QgKyB1JyAnICsgdHJpcGxlKTsKKyAgICBRQ09NUEFSRShuYW1lRm9yU2VxdWVuY2Uo
bV9yZXN0RGVmaW5pdGlvbnMsIHUiMTYgcjE2IDE2IDE2Il9zKSwgaXNvbGF0ZWRTaXh0ZWVudGgg
KyB1JyAnICsgc2l4dGVlbnRoUmVzdCArIHUnICcgKyBwYWlyKTsKKyAgICBRQ09NUEFSRShuYW1l
Rm9yU2VxdWVuY2UobV9yZXN0RGVmaW5pdGlvbnMsIHUicjE2IHIxNiAxNiAxNiJfcyksIHNpeHRl
ZW50aFJlc3QgKyB1JyAnICsgc2l4dGVlbnRoUmVzdCArIHUnICcgKyBwYWlyKTsKKyAgICBRQ09N
UEFSRShuYW1lRm9yU2VxdWVuY2UobV9yZXN0RGVmaW5pdGlvbnMsIHUiMTYgMTYgcjE2IDE2Il9z
KSwgcGFpciArIHUnICcgKyBzaXh0ZWVudGhSZXN0ICsgdScgJyArIGlzb2xhdGVkU2l4dGVlbnRo
KTsKKyAgICBRQ09NUEFSRShuYW1lRm9yU2VxdWVuY2UobV9yZXN0RGVmaW5pdGlvbnMsIHUiMTYg
MTYgMTYgcjE2Il9zKSwgdHJpcGxlICsgdScgJyArIHNpeHRlZW50aFJlc3QpOworICAgIFFDT01Q
QVJFKG5hbWVGb3JTZXF1ZW5jZShtX3Jlc3REZWZpbml0aW9ucywgdSJyMTYgMTYgMTYgcjE2Il9z
KSwgc2l4dGVlbnRoUmVzdCArIHUnICcgKyBwYWlyICsgdScgJyArIHNpeHRlZW50aFJlc3QpOwor
ICAgIFFDT01QQVJFKG5hbWVGb3JTZXF1ZW5jZShtX3Jlc3REZWZpbml0aW9ucywgdSIxNiAxNiBy
MTYgcjE2Il9zKSwgcGFpciArIHUnICcgKyBzaXh0ZWVudGhSZXN0ICsgdScgJyArIHNpeHRlZW50
aFJlc3QpOworICAgIFFDT01QQVJFKG5hbWVGb3JTZXF1ZW5jZShtX3Jlc3REZWZpbml0aW9ucywg
dSJyOCAxNiAxNiJfcyksIGVpZ2h0aFJlc3QgKyB1JyAnICsgcGFpcik7CisgICAgUUNPTVBBUkUo
bmFtZUZvclNlcXVlbmNlKG1fcmVzdERlZmluaXRpb25zLCB1IjE2IDE2IHI4Il9zKSwgcGFpciAr
IHUnICcgKyBlaWdodGhSZXN0KTsKK30KKwordm9pZCBSaHl0aG1SZXN0VGVzdDo6bGlzdGVuaW5n
UGF0dGVybnNIYXZlVW5pcXVlT25zZXRzKCkKK3sKKyAgICBmb3IgKGNvbnN0IFFTdHJpbmcgJmNh
dGVnb3J5IDoge3UiZWFzeS13aXRoLXJlc3RzIl9zLCB1Im1lZGl1bS13aXRoLXJlc3RzIl9zfSkg
eworICAgICAgICBjb25zdCBRSnNvbkFycmF5IGRlZmluaXRpb25zID0gZGVmaW5pdGlvbnNXaXRo
VGFncyhtX2FsbERlZmluaXRpb25zLCB7dSJyaHl0aG0iX3MsIGNhdGVnb3J5LCB1InJlc3QtbGlz
dGVuaW5nIl9zfSk7CisgICAgICAgIFFTZXQ8UVN0cmluZz4gc2lnbmF0dXJlczsKKyAgICAgICAg
Zm9yIChjb25zdCBRSnNvblZhbHVlICZ2YWx1ZSA6IGRlZmluaXRpb25zKSB7CisgICAgICAgICAg
ICBjb25zdCBRU3RyaW5nIHNpZ25hdHVyZSA9IG9uc2V0U2lnbmF0dXJlKHZhbHVlLnRvT2JqZWN0
KCkudmFsdWUodSJzZXF1ZW5jZSJfcykudG9TdHJpbmcoKSk7CisgICAgICAgICAgICBRVkVSSUZZ
Mighc2lnbmF0dXJlcy5jb250YWlucyhzaWduYXR1cmUpLCBxUHJpbnRhYmxlKHNpZ25hdHVyZSkp
OworICAgICAgICAgICAgc2lnbmF0dXJlcy5pbnNlcnQoc2lnbmF0dXJlKTsKKyAgICAgICAgfQor
ICAgICAgICBRQ09NUEFSRShzaWduYXR1cmVzLnNpemUoKSwgZGVmaW5pdGlvbnMuc2l6ZSgpKTsK
KyAgICB9Cit9CisKK3ZvaWQgUmh5dGhtUmVzdFRlc3Q6OmV2ZXJ5UGF0dGVybkZpbGxzT25lQmVh
dCgpCit7CisgICAgZm9yIChjb25zdCBRSnNvblZhbHVlICZ2YWx1ZSA6IHN0ZDo6YXNfY29uc3Qo
bV9hbGxEZWZpbml0aW9ucykpIHsKKyAgICAgICAgY29uc3QgUVN0cmluZyBzZXF1ZW5jZSA9IHZh
bHVlLnRvT2JqZWN0KCkudmFsdWUodSJzZXF1ZW5jZSJfcykudG9TdHJpbmcoKTsKKyAgICAgICAg
ZG91YmxlIGR1cmF0aW9uID0gMC4wOworICAgICAgICBmb3IgKGNvbnN0IFFTdHJpbmcgJnRleHQg
OiBzZXF1ZW5jZS5zcGxpdCh1JyAnLCBRdDo6U2tpcEVtcHR5UGFydHMpKSB7CisgICAgICAgICAg
ICBjb25zdCBNaW51ZXQ6OlJoeXRobVRva2VuIHRva2VuID0gTWludWV0OjpwYXJzZVJoeXRobVRv
a2VuKHRleHQpOworICAgICAgICAgICAgUVZFUklGWTIodG9rZW4udmFsaWQsIHFQcmludGFibGUo
dGV4dCkpOworICAgICAgICAgICAgZHVyYXRpb24gKz0gdG9rZW4ucXVhcnRlck5vdGVCZWF0cygp
OworICAgICAgICB9CisgICAgICAgIFFWRVJJRlkyKHFBYnMoZHVyYXRpb24gLSAxLjApIDwgMC4w
MDAxLCBxUHJpbnRhYmxlKHNlcXVlbmNlKSk7CisgICAgfQorfQorCitRVEVTVF9HVUlMRVNTX01B
SU4oUmh5dGhtUmVzdFRlc3QpCisKKyNpbmNsdWRlICJyaHl0aG1yZXN0dGVzdC5tb2MiCmRpZmYg
LS1naXQgYS9zcmMvYXBwL2V4ZXJjaXNlY2F0YWxvZ2NvbnRyb2xsZXIuY3BwIGIvc3JjL2FwcC9l
eGVyY2lzZWNhdGFsb2djb250cm9sbGVyLmNwcAppbmRleCBmZTUxNzM2Li4xMTkwMzQ1IDEwMDY0
NAotLS0gYS9zcmMvYXBwL2V4ZXJjaXNlY2F0YWxvZ2NvbnRyb2xsZXIuY3BwCisrKyBiL3NyYy9h
cHAvZXhlcmNpc2VjYXRhbG9nY29udHJvbGxlci5jcHAKQEAgLTI4Myw2ICsyODMsMTMgQEAgUUpz
b25BcnJheSBFeGVyY2lzZUNhdGFsb2dDb250cm9sbGVyOjphcHBseURlZmluaXRpb25zKFFKc29u
QXJyYXkgZXhlcmNpc2VzLCBRSnMKICAgICAgICAgaWYgKGkxLT5pc09iamVjdCgpKSB7CiAgICAg
ICAgICAgICBRSnNvbk9iamVjdCBleGVyY2lzZU9iamVjdCA9IGkxLT50b09iamVjdCgpOwogICAg
ICAgICAgICAgUUpzb25BcnJheSBmaWx0ZXJlZERlZmluaXRpb25zID0gZGVmaW5pdGlvbnM7Cisg
ICAgICAgICAgICBRSnNvbkFycmF5IGNsYXBwaW5nRGVmaW5pdGlvbnM7CisgICAgICAgICAgICBp
ZiAoZXhlcmNpc2VPYmplY3QudmFsdWUodSJjbGFwcGluZy1hbmQtdGFncyJfcykuaXNBcnJheSgp
KSB7CisgICAgICAgICAgICAgICAgY2xhcHBpbmdEZWZpbml0aW9ucyA9IGRlZmluaXRpb25zOwor
ICAgICAgICAgICAgICAgIFFKc29uT2JqZWN0IGNsYXBwaW5nRmlsdGVyOworICAgICAgICAgICAg
ICAgIGNsYXBwaW5nRmlsdGVyLmluc2VydCh1ImFuZC10YWdzIl9zLCBleGVyY2lzZU9iamVjdC50
YWtlKHUiY2xhcHBpbmctYW5kLXRhZ3MiX3MpKTsKKyAgICAgICAgICAgICAgICBmaWx0ZXJEZWZp
bml0aW9ucyhjbGFwcGluZ0RlZmluaXRpb25zLCBjbGFwcGluZ0ZpbHRlciwgdSJhbmQtdGFncyJf
cywgRGVmaW5pdGlvbkZpbHRlcmluZ01vZGU6OkFuZEZpbHRlcmluZyk7CisgICAgICAgICAgICB9
CiAgICAgICAgICAgICBjb25zdCBRU3RyaW5nTGlzdCBleGVyY2lzZU9iamVjdEtleXMgPSBleGVy
Y2lzZU9iamVjdC5rZXlzKCk7CiAgICAgICAgICAgICBpZiAoZXhlcmNpc2VPYmplY3RLZXlzLmNv
bnRhaW5zKHUiYW5kLXRhZ3MiX3MpICYmIGV4ZXJjaXNlT2JqZWN0W3UiYW5kLXRhZ3MiX3NdLmlz
QXJyYXkoKSkgewogICAgICAgICAgICAgICAgIGZpbHRlckRlZmluaXRpb25zKGZpbHRlcmVkRGVm
aW5pdGlvbnMsIGV4ZXJjaXNlT2JqZWN0LCB1ImFuZC10YWdzIl9zLCBEZWZpbml0aW9uRmlsdGVy
aW5nTW9kZTo6QW5kRmlsdGVyaW5nKTsKQEAgLTMwNiw2ICszMTMsOSBAQCBRSnNvbkFycmF5IEV4
ZXJjaXNlQ2F0YWxvZ0NvbnRyb2xsZXI6OmFwcGx5RGVmaW5pdGlvbnMoUUpzb25BcnJheSBleGVy
Y2lzZXMsIFFKcwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgfQogICAg
ICAgICAgICAgICAgIGV4ZXJjaXNlT2JqZWN0Lmluc2VydCh1Im9wdGlvbnMiX3MsIGZpbHRlcmVk
RGVmaW5pdGlvbnMpOworICAgICAgICAgICAgICAgIGlmICghY2xhcHBpbmdEZWZpbml0aW9ucy5p
c0VtcHR5KCkpIHsKKyAgICAgICAgICAgICAgICAgICAgZXhlcmNpc2VPYmplY3QuaW5zZXJ0KHUi
cmh5dGhtQ2xhcHBpbmdPcHRpb25zIl9zLCBjbGFwcGluZ0RlZmluaXRpb25zKTsKKyAgICAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBleGVyY2lzZXNbaTEgLSBleGVy
Y2lzZXNCZWdpbl0gPSBleGVyY2lzZU9iamVjdDsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvc3Jj
L2FwcC9leGVyY2lzZXNlc3Npb25jb250cm9sbGVyLmNwcCBiL3NyYy9hcHAvZXhlcmNpc2VzZXNz
aW9uY29udHJvbGxlci5jcHAKaW5kZXggZDJlNzA4OS4uNTQzNzgyZCAxMDA2NDQKLS0tIGEvc3Jj
L2FwcC9leGVyY2lzZXNlc3Npb25jb250cm9sbGVyLmNwcAorKysgYi9zcmMvYXBwL2V4ZXJjaXNl
c2Vzc2lvbmNvbnRyb2xsZXIuY3BwCkBAIC00LDYgKzQsOCBAQAogCiAjaW5jbHVkZSAiZXhlcmNp
c2VzZXNzaW9uY29udHJvbGxlci5oIgogCisjaW5jbHVkZSA8dXRpbHMvcmh5dGhtdG9rZW4uaD4K
KwogI2luY2x1ZGUgPEtMb2NhbGl6ZWRTdHJpbmc+CiAKICNpbmNsdWRlIDxRRGVidWc+CkBAIC00
NTYsMTQgKzQ1OCwyNCBAQCB2b2lkIEV4ZXJjaXNlU2Vzc2lvbkNvbnRyb2xsZXI6OnJhbmRvbWx5
U2VsZWN0RXhlcmNpc2VPcHRpb25zKGludCBzZWxlY3RlZE9wdGlvbgogICAgICAgICB9CiAKICAg
ICAgICAgZm9yIChjb25zdCBRU3RyaW5nICZhZGRpdGlvbmFsTm90ZSA6IGFkZGl0aW9uYWxOb3Rl
cykgewotICAgICAgICAgICAgUVN0cmluZyBub3RlVGV4dCA9IGFkZGl0aW9uYWxOb3RlOwotICAg
ICAgICAgICAgaWYgKGlzUmh5dGhtICYmIG5vdGVUZXh0LmVuZHNXaXRoKFFMYXRpbjFDaGFyKCcu
JykpKSB7Ci0gICAgICAgICAgICAgICAgbm90ZVRleHQuY2hvcCgxKTsKKyAgICAgICAgICAgIGlm
IChpc1JoeXRobSkgeworICAgICAgICAgICAgICAgIGNvbnN0IFJoeXRobVRva2VuIHJoeXRobVRv
a2VuID0gcGFyc2VSaHl0aG1Ub2tlbihhZGRpdGlvbmFsTm90ZSk7CisgICAgICAgICAgICAgICAg
aWYgKCFyaHl0aG1Ub2tlbi52YWxpZCkgeworICAgICAgICAgICAgICAgICAgICBmYWlsU2VsZWN0
aW9uKHUiQ3VycmVudCBleGVyY2lzZSBvcHRpb24gaGFzIGFuIGludmFsaWQgc2VxdWVuY2UuIl9z
KTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICAgICBpZiAocmh5dGhtVG9rZW4uZGVub21pbmF0b3IgPiBtYXhOb3RlKSB7
CisgICAgICAgICAgICAgICAgICAgIG1heE5vdGUgPSByaHl0aG1Ub2tlbi5kZW5vbWluYXRvcjsK
KyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgaWYgKHJoeXRobVRva2VuLmRlbm9t
aW5hdG9yIDwgbWluTm90ZSkgeworICAgICAgICAgICAgICAgICAgICBtaW5Ob3RlID0gcmh5dGht
VG9rZW4uZGVub21pbmF0b3I7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNv
bnRpbnVlOwogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBib29sIG9rID0gZmFsc2U7Ci0g
ICAgICAgICAgICBjb25zdCBpbnQgbm90ZSA9IG5vdGVUZXh0LnRvSW50KCZvayk7Ci0gICAgICAg
ICAgICBpZiAoIW9rIHx8IChpc1JoeXRobSAmJiBub3RlIDw9IDApKSB7CisgICAgICAgICAgICBj
b25zdCBpbnQgbm90ZSA9IGFkZGl0aW9uYWxOb3RlLnRvSW50KCZvayk7CisgICAgICAgICAgICBp
ZiAoIW9rKSB7CiAgICAgICAgICAgICAgICAgZmFpbFNlbGVjdGlvbih1IkN1cnJlbnQgZXhlcmNp
c2Ugb3B0aW9uIGhhcyBhbiBpbnZhbGlkIHNlcXVlbmNlLiJfcyk7CiAgICAgICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvc3JjL2FwcC9xbWwvRXhl
cmNpc2VDbGFwcGluZ1ZpZXcucW1sIGIvc3JjL2FwcC9xbWwvRXhlcmNpc2VDbGFwcGluZ1ZpZXcu
cW1sCmluZGV4IGU0N2EwMGMuLjE3Mjc2OGUgMTAwNjQ0Ci0tLSBhL3NyYy9hcHAvcW1sL0V4ZXJj
aXNlQ2xhcHBpbmdWaWV3LnFtbAorKysgYi9zcmMvYXBwL3FtbC9FeGVyY2lzZUNsYXBwaW5nVmll
dy5xbWwKQEAgLTIyOCw2ICsyMjgsOSBAQCBJdGVtIHsKICAgICB9CiAgICAgZnVuY3Rpb24gZHVy
YXRpb25Gb3JUb2tlbih0b2tlbjogc3RyaW5nKTogcmVhbCB7CiAgICAgICAgIGxldCBub3RlID0g
dG9rZW47CisgICAgICAgIGlmIChub3RlLnN0YXJ0c1dpdGgoInIiKSkgeworICAgICAgICAgICAg
bm90ZSA9IG5vdGUuc2xpY2UoMSk7CisgICAgICAgIH0KICAgICAgICAgbGV0IGRvdHRlZCA9IDEu
MDsKICAgICAgICAgaWYgKG5vdGUuZW5kc1dpdGgoIi4iKSkgewogICAgICAgICAgICAgZG90dGVk
ID0gMS41OwpAQCAtMzI1LDExICszMjgsMTMgQEAgSXRlbSB7CiAgICAgICAgICAgICBsZXQgZmln
dXJlT25zZXRzID0gW107CiAgICAgICAgICAgICBjb25zdCBmaWd1cmVTdGFydCA9IGN1cnNvcjsK
ICAgICAgICAgICAgIGZvciAoY29uc3QgcGFydCBvZiBwYXJ0cykgewotICAgICAgICAgICAgICAg
IGZpZ3VyZU9uc2V0cy5wdXNoKG9uc2V0TGlzdC5sZW5ndGgpOwotICAgICAgICAgICAgICAgIG9u
c2V0TGlzdC5wdXNoKHsKLSAgICAgICAgICAgICAgICAgICAgImZpZ3VyZSI6IGZpZ3VyZUluZGV4
LAotICAgICAgICAgICAgICAgICAgICAidGltZU1zIjogY3Vyc29yCi0gICAgICAgICAgICAgICAg
fSk7CisgICAgICAgICAgICAgICAgaWYgKCFpc1Jlc3RUb2tlbihwYXJ0KSkgeworICAgICAgICAg
ICAgICAgICAgICBmaWd1cmVPbnNldHMucHVzaChvbnNldExpc3QubGVuZ3RoKTsKKyAgICAgICAg
ICAgICAgICAgICAgb25zZXRMaXN0LnB1c2goeworICAgICAgICAgICAgICAgICAgICAgICAgImZp
Z3VyZSI6IGZpZ3VyZUluZGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgInRpbWVNcyI6IGN1
cnNvcgorICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICAgICAgY3Vyc29yICs9IGR1cmF0aW9uRm9yVG9rZW4ocGFydCk7CiAgICAgICAgICAgICB9
CiAgICAgICAgICAgICBzdGF0ZXMucHVzaCh7CkBAIC0zNzEsNiArMzc2LDkgQEAgSXRlbSB7CiAg
ICAgICAgIHJvb3QucGVyZm9ybWVkT25zZXRzID0gcGVyZm9ybWVkOwogICAgICAgICByZWZyZXNo
RmlndXJlU3RhdGVzKGVsYXBzZWRNcyk7CiAgICAgfQorICAgIGZ1bmN0aW9uIGlzUmVzdFRva2Vu
KHRva2VuOiBzdHJpbmcpOiBib29sIHsKKyAgICAgICAgcmV0dXJuIHRva2VuLnN0YXJ0c1dpdGgo
InIiKTsKKyAgICB9CiAgICAgZnVuY3Rpb24gbWFwUmh5dGhtUm93WChsb2NhbFg6IHJlYWwpOiBy
ZWFsIHsKICAgICAgICAgY29uc3QgZ2VvbWV0cnlEZXBlbmRlbmN5ID0gcmh5dGhtRnJhbWUueCAr
IHJoeXRobVZpZXdwb3J0LnggKyByaHl0aG1WaWV3cG9ydC5jb250ZW50WCArIHJoeXRobUNvbnRl
bnQueCArIHJoeXRobVJvdy54ICsgcmh5dGhtUm93LmltcGxpY2l0V2lkdGg7CiAgICAgICAgIHJl
dHVybiByaHl0aG1Sb3cubWFwVG9JdGVtKHJvb3QsIGxvY2FsWCArIGdlb21ldHJ5RGVwZW5kZW5j
eSAqIDAsIDApLng7CmRpZmYgLS1naXQgYS9zcmMvYXBwL3FtbC9QcmFjdGljZU1vZGVQYWdlLnFt
bCBiL3NyYy9hcHAvcW1sL1ByYWN0aWNlTW9kZVBhZ2UucW1sCmluZGV4IGQ1YWUxZmYuLjNjMjFl
OGQgMTAwNjQ0Ci0tLSBhL3NyYy9hcHAvcW1sL1ByYWN0aWNlTW9kZVBhZ2UucW1sCisrKyBiL3Ny
Yy9hcHAvcW1sL1ByYWN0aWNlTW9kZVBhZ2UucW1sCkBAIC0yNiw2ICsyNiwxMCBAQCBLaXJpZ2Ft
aS5QYWdlIHsKICAgICAgICAgICAgIGV4ZXJjaXNlW2tleV0gPSBwYWdlLmN1cnJlbnRFeGVyY2lz
ZVtrZXldOwogICAgICAgICB9CiAgICAgICAgIGV4ZXJjaXNlLmlucHV0TW9kZSA9IGlucHV0TW9k
ZTsKKyAgICAgICAgaWYgKGlucHV0TW9kZSA9PT0gImNsYXBwaW5nIiAmJiBleGVyY2lzZS5yaHl0
aG1DbGFwcGluZ09wdGlvbnMgIT09IHVuZGVmaW5lZCkgeworICAgICAgICAgICAgZXhlcmNpc2Uu
b3B0aW9ucyA9IGV4ZXJjaXNlLnJoeXRobUNsYXBwaW5nT3B0aW9uczsKKyAgICAgICAgfQorICAg
ICAgICBkZWxldGUgZXhlcmNpc2Uucmh5dGhtQ2xhcHBpbmdPcHRpb25zOwogICAgICAgICBpZiAo
aW5wdXRNb2RlID09PSAic2luZ2luZyIpIHsKICAgICAgICAgICAgIGV4ZXJjaXNlLnNpbmdpbmdF
eGVyY2lzZUtpbmQgPSBwYWdlLnByYWN0aWNlTW9kZTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEv
c3JjL3BsdWdpbnMvZmx1aWRzeW50aHNvdW5kY29udHJvbGxlci9mbHVpZHN5bnRoc291bmRjb250
cm9sbGVyLmNwcCBiL3NyYy9wbHVnaW5zL2ZsdWlkc3ludGhzb3VuZGNvbnRyb2xsZXIvZmx1aWRz
eW50aHNvdW5kY29udHJvbGxlci5jcHAKaW5kZXggYzFlZDY5MC4uYTc5OWJlNCAxMDA2NDQKLS0t
IGEvc3JjL3BsdWdpbnMvZmx1aWRzeW50aHNvdW5kY29udHJvbGxlci9mbHVpZHN5bnRoc291bmRj
b250cm9sbGVyLmNwcAorKysgYi9zcmMvcGx1Z2lucy9mbHVpZHN5bnRoc291bmRjb250cm9sbGVy
L2ZsdWlkc3ludGhzb3VuZGNvbnRyb2xsZXIuY3BwCkBAIC00LDYgKzQsOCBAQAogCiAjaW5jbHVk
ZSAiZmx1aWRzeW50aHNvdW5kY29udHJvbGxlci5oIgogCisjaW5jbHVkZSA8dXRpbHMvcmh5dGht
dG9rZW4uaD4KKwogI2luY2x1ZGUgPEtMb2NhbGl6ZWRTdHJpbmc+CiAKICNpbmNsdWRlIDxRQ29y
ZUFwcGxpY2F0aW9uPgpAQCAtMjIwLDIxICsyMjIsMTUgQEAgdm9pZCBGbHVpZFN5bnRoU291bmRD
b250cm9sbGVyOjpwcmVwYXJlRnJvbUV4ZXJjaXNlT3B0aW9ucyhRSnNvbkFycmF5IHNlbGVjdGVk
RXgKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIC8vIGFwcGVuZEV2ZW50KDksIDgwLCAx
MjcsIDEwMDAqKDYwLjAvbV90ZW1wbykpOwogICAgICAgICAgICAgY29uc3QgUVN0cmluZ0xpc3Qg
YWRkaXRpb25hbE5vdGVzID0gc2VxdWVuY2Uuc3BsaXQoUUxhdGluMUNoYXIoJyAnKSwgUXQ6OlNr
aXBFbXB0eVBhcnRzKTsKLSAgICAgICAgICAgIGZvciAoUVN0cmluZyBhZGRpdGlvbmFsTm90ZSA6
IGFkZGl0aW9uYWxOb3RlcykgewotICAgICAgICAgICAgICAgIGZsb2F0IGRvdHRlZCA9IDE7Ci0g
ICAgICAgICAgICAgICAgaWYgKGFkZGl0aW9uYWxOb3RlLmVuZHNXaXRoKCcuJykpIHsKLSAgICAg
ICAgICAgICAgICAgICAgZG90dGVkID0gMS41OwotICAgICAgICAgICAgICAgICAgICBhZGRpdGlv
bmFsTm90ZS5jaG9wKDEpOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBib29s
IG9rID0gZmFsc2U7Ci0gICAgICAgICAgICAgICAgY29uc3QgaW50IGRlbm9taW5hdG9yID0gYWRk
aXRpb25hbE5vdGUudG9JbnQoJm9rKTsKLSAgICAgICAgICAgICAgICBpZiAoIW9rIHx8IGRlbm9t
aW5hdG9yIDw9IDApIHsKKyAgICAgICAgICAgIGZvciAoY29uc3QgUVN0cmluZyAmYWRkaXRpb25h
bE5vdGUgOiBhZGRpdGlvbmFsTm90ZXMpIHsKKyAgICAgICAgICAgICAgICBjb25zdCBNaW51ZXQ6
OlJoeXRobVRva2VuIHRva2VuID0gTWludWV0OjpwYXJzZVJoeXRobVRva2VuKGFkZGl0aW9uYWxO
b3RlKTsKKyAgICAgICAgICAgICAgICBpZiAoIXRva2VuLnZhbGlkKSB7CiAgICAgICAgICAgICAg
ICAgICAgIHFXYXJuaW5nKCkgPDwgIklnbm9yaW5nIGV4ZXJjaXNlIG9wdGlvbiB3aXRoIGludmFs
aWQgcmh5dGhtIHZhbHVlOiIgPDwgYWRkaXRpb25hbE5vdGU7CiAgICAgICAgICAgICAgICAgICAg
IGNsZWFyU29uZygpOwogICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAg
ICAgfQotICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBkdXJhdGlvbiA9IGRvdHRlZCAqIDEw
MDAgKiAoNjAuMCAvIG1fdGVtcG8pICogKDQuMCAvIGRlbm9taW5hdG9yKTsKLSAgICAgICAgICAg
ICAgICBhcHBlbmRFdmVudChSaHl0aG1DaGFubmVsLCBtX3JoeXRobUluc3RydW1lbnQsIDEyNywg
ZHVyYXRpb24pOworICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGludCBkdXJhdGlvbiA9
IHRva2VuLnF1YXJ0ZXJOb3RlQmVhdHMoKSAqIDEwMDAgKiAoNjAuMCAvIG1fdGVtcG8pOworICAg
ICAgICAgICAgICAgIGFwcGVuZEV2ZW50KFJoeXRobUNoYW5uZWwsIG1fcmh5dGhtSW5zdHJ1bWVu
dCwgdG9rZW4ucmVzdCA/IDAgOiAxMjcsIGR1cmF0aW9uKTsKICAgICAgICAgICAgIH0KICAgICAg
ICAgfQogICAgIH0KZGlmZiAtLWdpdCBhL3NyYy91dGlscy9yaHl0aG10b2tlbi5oIGIvc3JjL3V0
aWxzL3JoeXRobXRva2VuLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjNj
OTNjMAotLS0gL2Rldi9udWxsCisrKyBiL3NyYy91dGlscy9yaHl0aG10b2tlbi5oCkBAIC0wLDAg
KzEsNDMgQEAKKy8vIFNQRFgtRmlsZUNvcHlyaWdodFRleHQ6IDIwMjYgU2FuZHJvIEFuZHJhZGUg
PHNhbmRyb2FuZHJhZGVAa2RlLm9yZz4KKy8vCisvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjog
R1BMLTIuMC1vci1sYXRlcgorCisjaWZuZGVmIE1JTlVFVF9SSFlUSE1UT0tFTl9ICisjZGVmaW5l
IE1JTlVFVF9SSFlUSE1UT0tFTl9ICisKKyNpbmNsdWRlIDxRU3RyaW5nVmlldz4KKworbmFtZXNw
YWNlIE1pbnVldAoreworc3RydWN0IFJoeXRobVRva2VuIHsKKyAgICBib29sIHZhbGlkID0gZmFs
c2U7CisgICAgYm9vbCByZXN0ID0gZmFsc2U7CisgICAgYm9vbCBkb3R0ZWQgPSBmYWxzZTsKKyAg
ICBpbnQgZGVub21pbmF0b3IgPSAwOworCisgICAgZG91YmxlIHF1YXJ0ZXJOb3RlQmVhdHMoKSBj
b25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuIHZhbGlkID8gNC4wIC8gZGVub21pbmF0b3IgKiAo
ZG90dGVkID8gMS41IDogMS4wKSA6IDAuMDsKKyAgICB9Cit9OworCitpbmxpbmUgUmh5dGhtVG9r
ZW4gcGFyc2VSaHl0aG1Ub2tlbihRU3RyaW5nVmlldyB0ZXh0KQoreworICAgIFJoeXRobVRva2Vu
IHRva2VuOworICAgIGlmICh0ZXh0LnN0YXJ0c1dpdGgodSdyJykpIHsKKyAgICAgICAgdG9rZW4u
cmVzdCA9IHRydWU7CisgICAgICAgIHRleHQgPSB0ZXh0LnNsaWNlZCgxKTsKKyAgICB9CisgICAg
aWYgKHRleHQuZW5kc1dpdGgodScuJykpIHsKKyAgICAgICAgdG9rZW4uZG90dGVkID0gdHJ1ZTsK
KyAgICAgICAgdGV4dCA9IHRleHQuZmlyc3QodGV4dC5zaXplKCkgLSAxKTsKKyAgICB9CisKKyAg
ICBib29sIG9rID0gZmFsc2U7CisgICAgdG9rZW4uZGVub21pbmF0b3IgPSB0ZXh0LnRvSW50KCZv
ayk7CisgICAgdG9rZW4udmFsaWQgPSBvayAmJiB0b2tlbi5kZW5vbWluYXRvciA+IDA7CisgICAg
cmV0dXJuIHRva2VuOworfQorfQorCisjZW5kaWYK