[yt-svn] commit/yt: 8 new changesets

commits-noreply at bitbucket.org commits-noreply at bitbucket.org
Thu Aug 20 09:16:20 PDT 2015


OCBuZXcgY29tbWl0cyBpbiB5dDoKCmh0dHBzOi8vYml0YnVja2V0Lm9yZy95dF9hbmFseXNpcy95
dC9jb21taXRzL2Q0MGJjNzI1YTIwZi8KQ2hhbmdlc2V0OiAgIGQ0MGJjNzI1YTIwZgpCcmFuY2g6
ICAgICAgeXQKVXNlcjogICAgICAgIGJyaXR0b25zbWl0aApEYXRlOiAgICAgICAgMjAxNS0wNy0x
NCAxNzowMjowNCswMDowMApTdW1tYXJ5OiAgICAgT25seSB3cml0ZSBsaW5lIGxpc3QgZmlsZSBp
cyBmaWxlbmFtZSBpcyBub3QgTm9uZS4KQWZmZWN0ZWQgIzogIDEgZmlsZQoKZGlmZiAtciBiN2I4
Y2RiYWQyNTA1ZGVhMTM5MWJkZGJlM2FiNmU1ZDY1ZjJlOWI2IC1yIGQ0MGJjNzI1YTIwZjEyMTBl
OGNhN2FjPQo4ZWZhMjI4NGFmMGRjODNlZCB5dC9hbmFseXNpc19tb2R1bGVzL2Fic29ycHRpb25f
c3BlY3RydW0vYWJzb3JwdGlvbl9zcGVjdHI9CnVtLnB5Ci0tLSBhL3l0L2FuYWx5c2lzX21vZHVs
ZXMvYWJzb3JwdGlvbl9zcGVjdHJ1bS9hYnNvcnB0aW9uX3NwZWN0cnVtLnB5CisrKyBiL3l0L2Fu
YWx5c2lzX21vZHVsZXMvYWJzb3JwdGlvbl9zcGVjdHJ1bS9hYnNvcnB0aW9uX3NwZWN0cnVtLnB5
CkBAIC0xNTYsNyArMTU2LDggQEAKICAgICAgICAgICAgIHNlbGYuX3dyaXRlX3NwZWN0cnVtX2Zp
dHMob3V0cHV0X2ZpbGUpCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBzZWxmLl93cml0ZV9z
cGVjdHJ1bV9hc2NpaShvdXRwdXRfZmlsZSkKLSAgICAgICAgc2VsZi5fd3JpdGVfc3BlY3RydW1f
bGluZV9saXN0KGxpbmVfbGlzdF9maWxlKQorICAgICAgICBpZiBsaW5lX2xpc3RfZmlsZSBpcyBu
b3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX3dyaXRlX3NwZWN0cnVtX2xpbmVfbGlzdChsaW5l
X2xpc3RfZmlsZSkKPTIwCiAgICAgICAgIGRlbCBmaWVsZF9kYXRhCiAgICAgICAgIHJldHVybiAo
c2VsZi5sYW1iZGFfYmlucywgc2VsZi5mbHV4X2ZpZWxkKQoKCmh0dHBzOi8vYml0YnVja2V0Lm9y
Zy95dF9hbmFseXNpcy95dC9jb21taXRzL2E1MGU5ZDZjYWVhMy8KQ2hhbmdlc2V0OiAgIGE1MGU5
ZDZjYWVhMwpCcmFuY2g6ICAgICAgeXQKVXNlcjogICAgICAgIGJyaXR0b25zbWl0aApEYXRlOiAg
ICAgICAgMjAxNS0wNy0xNCAxODozOToyNiswMDowMApTdW1tYXJ5OiAgICAgUGFyYWxsZWxpemlu
ZyBhYnNvcnB0aW9uIGxpbmUgZnVuY3Rpb24uCkFmZmVjdGVkICM6ICAxIGZpbGUKCmRpZmYgLXIg
ZDQwYmM3MjVhMjBmMTIxMGU4Y2E3YWM4ZWZhMjI4NGFmMGRjODNlZCAtciBhNTBlOWQ2Y2FlYTNl
ODhhMTBhY2M2OD0KZGRlMmFjODEyOGE0YzZhYmYgeXQvYW5hbHlzaXNfbW9kdWxlcy9hYnNvcnB0
aW9uX3NwZWN0cnVtL2Fic29ycHRpb25fc3BlY3RyPQp1bS5weQotLS0gYS95dC9hbmFseXNpc19t
b2R1bGVzL2Fic29ycHRpb25fc3BlY3RydW0vYWJzb3JwdGlvbl9zcGVjdHJ1bS5weQorKysgYi95
dC9hbmFseXNpc19tb2R1bGVzL2Fic29ycHRpb25fc3BlY3RydW0vYWJzb3JwdGlvbl9zcGVjdHJ1
bS5weQpAQCAtMjYsNiArMjYsMTIgQEAKICAgICBib2x0em1hbm5fY29uc3RhbnRfY2dzLCBcCiAg
ICAgc3BlZWRfb2ZfbGlnaHRfY2dzCiBmcm9tIHl0LnV0aWxpdGllcy5vbl9kZW1hbmRfaW1wb3J0
cyBpbXBvcnQgX2FzdHJvcHkKK2Zyb20geXQudXRpbGl0aWVzLnBhcmFsbGVsX3Rvb2xzLnBhcmFs
bGVsX2FuYWx5c2lzX2ludGVyZmFjZSBpbXBvcnQgXAorICAgIGNvbW11bmljYXRpb25fc3lzdGVt
LCBcCisgICAgcGFyYWxsZWxfb2JqZWN0cywgXAorICAgIHBhcmFsbGVsX3Jvb3Rfb25seQorCitj
b21tID0zRCBjb21tdW5pY2F0aW9uX3N5c3RlbS5jb21tdW5pY2F0b3JzWy0xXQo9MjAKIHB5Zml0
cyA9M0QgX2FzdHJvcHkucHlmaXRzCj0yMApAQCAtMjM5LDcgKzI0NSw3IEBACiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIChyaWdodF9pbmRleCAtIGxlZnRfaW5kZXggPiAxKSlb
MF0KICAgICAgICAgICAgIHBiYXIgPTNEIGdldF9wYmFyKCJBZGRpbmcgbGluZSAtICVzIFslZiBB
XTogIiAlIChsaW5lWydsYWJlbCddPQosIGxpbmVbJ3dhdmVsZW5ndGgnXSksCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdmFsaWRfbGluZXMuc2l6ZSkKLSAgICAgICAgICAgIGZvciBpLCBs
aXhlbCBpbiBlbnVtZXJhdGUodmFsaWRfbGluZXMpOgorICAgICAgICAgICAgZm9yIGksIGxpeGVs
IGluIHBhcmFsbGVsX29iamVjdHMoZW51bWVyYXRlKHZhbGlkX2xpbmVzKSwgbmpvYnM9Cj0zRC0x
KToKICAgICAgICAgICAgICAgICBteV9iaW5fcmF0aW8gPTNEIHNwZWN0cnVtX2Jpbl9yYXRpbwog
ICAgICAgICAgICAgICAgIHdoaWxlIFRydWU6CiAgICAgICAgICAgICAgICAgICAgIGxhbWJkYV9i
aW5zLCBsaW5lX3RhdSA9M0QgXApAQCAtMjc3LDEwICsyODMsMTQgQEAKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndl9wZWMnOiBwZWN1bGlhcl92
ZWxvPQpjaXR5fSkKICAgICAgICAgICAgICAgICBwYmFyLnVwZGF0ZShpKQogICAgICAgICAgICAg
cGJhci5maW5pc2goKQorICAgICAgICAgICAgc2VsZi50YXVfZmllbGQgPTNEIGNvbW0ubXBpX2Fs
bHJlZHVjZShzZWxmLnRhdV9maWVsZCwgb3A9M0Qic3U9Cm0iKQorICAgICAgICAgICAgc2VsZi5z
cGVjdHJ1bV9saW5lX2xpc3QgPTNEIGNvbW0ucGFyX2NvbWJpbmVfb2JqZWN0KAorICAgICAgICAg
ICAgICAgIHNlbGYuc3BlY3RydW1fbGluZV9saXN0LCAiY2F0IiwgZGF0YXR5cGU9M0QibGlzdCIp
Cj0yMAogICAgICAgICAgICAgZGVsIGNvbHVtbl9kZW5zaXR5LCBkZWx0YV9sYW1iZGEsIHRoZXJt
YWxfYiwgXAogICAgICAgICAgICAgICAgIGNlbnRlcl9iaW5zLCB3aWR0aF9yYXRpbywgbGVmdF9p
bmRleCwgcmlnaHRfaW5kZXgKPTIwCisgICAgQHBhcmFsbGVsX3Jvb3Rfb25seQogICAgIGRlZiBf
d3JpdGVfc3BlY3RydW1fbGluZV9saXN0KHNlbGYsIGZpbGVuYW1lKToKICAgICAgICAgIiIiCiAg
ICAgICAgIFdyaXRlIG91dCBsaXN0IG9mIHNwZWN0cmFsIGxpbmVzLgpAQCAtMjk2LDYgKzMwNiw3
IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5l
WydyZWRzaGlmdCddLCBsaW5lWyd2Xz0KcGVjJ10pKQogICAgICAgICBmLmNsb3NlKCkKPTIwCisg
ICAgQHBhcmFsbGVsX3Jvb3Rfb25seQogICAgIGRlZiBfd3JpdGVfc3BlY3RydW1fYXNjaWkoc2Vs
ZiwgZmlsZW5hbWUpOgogICAgICAgICAiIiIKICAgICAgICAgV3JpdGUgc3BlY3RydW0gdG8gYW4g
YXNjaWkgZmlsZS4KQEAgLTMwOCw2ICszMTksNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgc2VsZi50YXVfZmllbGRbaV0sIHNlbGYuZmx1eF9maWVsZFtpXSkpCiAgICAg
ICAgIGYuY2xvc2UoKQo9MjAKKyAgICBAcGFyYWxsZWxfcm9vdF9vbmx5CiAgICAgZGVmIF93cml0
ZV9zcGVjdHJ1bV9maXRzKHNlbGYsIGZpbGVuYW1lKToKICAgICAgICAgIiIiCiAgICAgICAgIFdy
aXRlIHNwZWN0cnVtIHRvIGEgZml0cyBmaWxlLgpAQCAtMzE5LDYgKzMzMSw3IEBACiAgICAgICAg
IHRiaGR1ID0zRCBweWZpdHMuQmluVGFibGVIRFUuZnJvbV9jb2x1bW5zKGNvbHMpCiAgICAgICAg
IHRiaGR1LndyaXRldG8oZmlsZW5hbWUsIGNsb2JiZXI9M0RUcnVlKQo9MjAKKyAgICBAcGFyYWxs
ZWxfcm9vdF9vbmx5CiAgICAgZGVmIF93cml0ZV9zcGVjdHJ1bV9oZGY1KHNlbGYsIGZpbGVuYW1l
KToKICAgICAgICAgIiIiCiAgICAgICAgIFdyaXRlIHNwZWN0cnVtIHRvIGFuIGhkZjUgZmlsZS4K
CgpodHRwczovL2JpdGJ1Y2tldC5vcmcveXRfYW5hbHlzaXMveXQvY29tbWl0cy8wNGM5ZWI0MDQz
NjIvCkNoYW5nZXNldDogICAwNGM5ZWI0MDQzNjIKQnJhbmNoOiAgICAgIHl0ClVzZXI6ICAgICAg
ICBicml0dG9uc21pdGgKRGF0ZTogICAgICAgIDIwMTUtMDctMzAgMDk6NTY6MjkrMDA6MDAKU3Vt
bWFyeTogICAgIE1lcmdpbmcuCkFmZmVjdGVkICM6ICA2OSBmaWxlcwoKZGlmZiAtciBhNTBlOWQ2
Y2FlYTNlODhhMTBhY2M2OGRkZTJhYzgxMjhhNGM2YWJmIC1yIDA0YzllYjQwNDM2MjgyMTEzZmIy
MjljPQo3N2JmMWFiMTg3YzAzMmM1MCAuaGdpZ25vcmUKLS0tIGEvLmhnaWdub3JlCisrKyBiLy5o
Z2lnbm9yZQpAQCAtMTEsNiArMTEsNyBAQAogeXQvYW5hbHlzaXNfbW9kdWxlcy9oYWxvX2ZpbmRp
bmcvcm9ja3N0YXIvcm9ja3N0YXJfaW50ZXJmYWNlLmMKIHl0L2FuYWx5c2lzX21vZHVsZXMvcHB2
X2N1YmUvcHB2X3V0aWxzLmMKIHl0L2Zyb250ZW5kcy9yYW1zZXMvX3JhbXNlc19yZWFkZXIuY3Bw
Cit5dC9mcm9udGVuZHMvc3BoL3Ntb290aGluZ19rZXJuZWwuYwogeXQvZ2VvbWV0cnkvZmFrZV9v
Y3RyZWUuYwogeXQvZ2VvbWV0cnkvZ3JpZF9jb250YWluZXIuYwogeXQvZ2VvbWV0cnkvZ3JpZF92
aXNpdG9ycy5jCkBAIC00MCw2ICs0MSw3IEBACiB5dC91dGlsaXRpZXMvbGliL21lc2hfdXRpbGl0
aWVzLmMKIHl0L3V0aWxpdGllcy9saWIvbWlzY191dGlsaXRpZXMuYwogeXQvdXRpbGl0aWVzL2xp
Yi9PY3RyZWUuYworeXQvdXRpbGl0aWVzL2xpYi9HcmlkVHJlZS5jCiB5dC91dGlsaXRpZXMvbGli
L29yaWdhbWkuYwogeXQvdXRpbGl0aWVzL2xpYi9waXhlbGl6YXRpb25fcm91dGluZXMuYwogeXQv
dXRpbGl0aWVzL2xpYi9wbmdfd3JpdGVyLmMKCmRpZmYgLXIgYTUwZTlkNmNhZWEzZTg4YTEwYWNj
NjhkZGUyYWM4MTI4YTRjNmFiZiAtciAwNGM5ZWI0MDQzNjI4MjExM2ZiMjI5Yz0KNzdiZjFhYjE4
N2MwMzJjNTAgUkVBRE1FCi0tLSBhL1JFQURNRQorKysgYi9SRUFETUUKQEAgLTIwLDQgKzIwLDUg
QEAKIEZvciBtb3JlIGluZm9ybWF0aW9uIG9uIGluc3RhbGxhdGlvbiwgd2hhdCB0byBkbyBpZiB5
b3UgcnVuIGludG8gcHJvYmxlbXMsPQogb3I9MjAKIHdheXMgdG8gaGVscCBkZXZlbG9wbWVudCwg
cGxlYXNlIHZpc2l0IG91ciB3ZWJzaXRlLgo9MjAKLUVuam95IQpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKK0Vuam95IQorCgpkaWZmIC1yIGE1MGU5ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFj
ODEyOGE0YzZhYmYgLXIgMDRjOWViNDA0MzYyODIxMTNmYjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUw
IGRvYy9pbnN0YWxsX3NjcmlwdC5zaAotLS0gYS9kb2MvaW5zdGFsbF9zY3JpcHQuc2gKKysrIGIv
ZG9jL2luc3RhbGxfc2NyaXB0LnNoCkBAIC02NDEsNyArNjQxLDcgQEAKIFRPUk5BRE89M0QndG9y
bmFkby00LjAuMicKIFpFUk9NUT0zRCd6ZXJvbXEtNC4wLjUnCiBaTElCPTNEJ3psaWItMS4yLjgn
Ci1TRVRVUFRPT0xTPTNEJ3NldHVwdG9vbHMtMTYuMCcKK1NFVFVQVE9PTFM9M0Qnc2V0dXB0b29s
cy0xOC4wLjEnCj0yMAogIyBOb3cgd2UgZHVtcCBhbGwgb3VyIFNIQTUxMiBmaWxlcyBvdXQuCiBl
Y2hvICc4NTYyMjBmYTU3OWUyNzJhYzM4ZGNlZjA5MTc2MGY1Mjc0MzFmZjNiOThkZjlhZjZlNjg0
MTZmY2Y3N2Q5NjU5YWM1YT0KYmU1YzdkZWU0MTMzMWYzNTk2MTQ2MzdhNGZmNDUyMDMzMDg1MzM1
ZWU0OTk4MzBlZDEyNmFiNTg0MjY3ICBDeXRob24tMC4yMi50PQphci5neicgPiBDeXRob24tMC4y
Mi50YXIuZ3ouc2hhNTEyCkBAIC02NjksNyArNjY5LDcgQEAKIGVjaG8gJzkzNTkxMDY4ZGM2M2Fm
OGQ1MGE3OTI1ZDUyOGJjMGNjY2RkNzA1MjMyYzUyOWI2MTYyNjE5ZmUyOGRkZGFmMTE1ZThhPQo0
NjBiMTg0Mjg3N2QzNTE2MGJkN2VkNDgwYzFiZDBiZGJlYzU3ZDFmMzU5MDg1YmQxODE0ZTBjMWMy
NDIgIHRvcm5hZG8tNC4wLjI9Ci50YXIuZ3onID4gdG9ybmFkby00LjAuMi50YXIuZ3ouc2hhNTEy
CiBlY2hvICcwZDkyOGVkNjg4ZWQ5NDBkNDYwZmE4ZjhkNTc0YTk4MTlkY2NjNGUwMzBkNzM1YThj
N2RiNzFiNTkyODdlZTUwZmE3ND0KMWEwODI0OWUzNTZjNzgzNTZiMDNjMjE3NGYyZjI2OTlmMDVh
YTdkYzNkMzgwZWQ0N2Q4ZDdiYWI1NDA4ICB6ZXJvbXEtNC4wLjUuPQp0YXIuZ3onID4gemVyb21x
LTQuMC41LnRhci5nei5zaGE1MTIKIGVjaG8gJ2VjZTIwOWQ0YzdlYzBjYjU4ZWRlNzkxNDQ0ZGM3
NTRlMGQxMDgxMWNiYmRlYmUzZGY2MWMwZmQ5ZjlmOTg2N2MxYzNjPQpjZDVmMTgyN2Y4NDdjMDA1
ZTI0ZWVmMzRmYjViZjg3YjVkM2Y4OTRkNzVkYTA0ZjE3OTc1MzgyOTBlNGEgIHpsaWItMS4yLjgu
dGE9CnIuZ3onID4gemxpYi0xLjIuOC50YXIuZ3ouc2hhNTEyCi1lY2hvICczOGE4OWFhZDg5ZGM5
YWE2ODJkYmZiY2E2MjNlMmY2OTUxMWY1ZTIwZDRhMzUyNmMwMWFhYmJjN2U5M2FlNzhmMjBhYT0K
YzU2NjY3NmI0MzFlMTExNTQwYjQxNTQwYTFjNGY2NDRjZTQxNzRlN2VjZjA1MjMxODYxMjA3NWUw
MmRjICBzZXR1cHRvb2xzLTE2PQouMC50YXIuZ3onID4gc2V0dXB0b29scy0xNi4wLnRhci5nei5z
aGE1MTIKK2VjaG8gJzliMzE4Y2UyZWUyY2Y3ODc5MjlkY2I4ODZkNzZjNDkyYjQzM2U3MTAyNGZk
YTk0NTJkOGI0OTI3NjUyYTI5OGQ2YmQxPQpiZGI3YTRjNzM4ODNhOThlMTAwMDI0Zjg5YjQ2ZWE4
YWExNGIyNTBmODk2ZTU0OWU2ZGQ3ZTEwYTZiNDEgIHNldHVwdG9vbHMtMTg9Ci4wLjEudGFyLmd6
JyA+IHNldHVwdG9vbHMtMTguMC4xLnRhci5nei5zaGE1MTIKICMgSW5kaXZpZHVhbCBwcm9jZXNz
ZXMKIFsgLXogIiRIREY1X0RJUiIgXSAmJiBnZXRfeXRwcm9qZWN0ICRIREY1LnRhci5negogWyAk
SU5TVF9aTElCIC1lcSAxIF0gJiYgZ2V0X3l0cHJvamVjdCAkWkxJQi50YXIuZ3oKCmRpZmYgLXIg
YTUwZTlkNmNhZWEzZTg4YTEwYWNjNjhkZGUyYWM4MTI4YTRjNmFiZiAtciAwNGM5ZWI0MDQzNjI4
MjExM2ZiMjI5Yz0KNzdiZjFhYjE4N2MwMzJjNTAgZG9jL3NvdXJjZS9hbmFseXppbmcvYW5hbHlz
aXNfbW9kdWxlcy9TWl9wcm9qZWN0aW9ucy5pcHluYgotLS0gYS9kb2Mvc291cmNlL2FuYWx5emlu
Zy9hbmFseXNpc19tb2R1bGVzL1NaX3Byb2plY3Rpb25zLmlweW5iCisrKyBiL2RvYy9zb3VyY2Uv
YW5hbHl6aW5nL2FuYWx5c2lzX21vZHVsZXMvU1pfcHJvamVjdGlvbnMuaXB5bmIKQEAgLTEsNyAr
MSw3IEBACiB7CiAgIm1ldGFkYXRhIjogewogICAibmFtZSI6ICIiLAotICAic2lnbmF0dXJlIjog
InNoYTI1NjoyY2MxNjhiMmMxNzM3YzY3NjQ3YWEyOTg5MmMwMjEzZTdhNTgyMzNmYTUzYzgwOWY5
Y2Q9Cjk3NWE0MzA2ZTliYzgiCisgICJzaWduYXR1cmUiOiAic2hhMjU2OjQ4NzM4M2VjMjNhMDky
MzEwNTIyZWMyNWJkMDJhZDJlYjE2YTM0MDJjNWVkM2QyYjEwMz0KZDMzZmUxNzY5N2IzYyIKICB9
LAogICJuYmZvcm1hdCI6IDMsCiAgIm5iZm9ybWF0X21pbm9yIjogMCwKQEAgLTcwLDYgKzcwLDEz
IEBACiAgICAgIF0KICAgICB9LAogICAgIHsKKyAgICAgImNlbGxfdHlwZSI6ICJtYXJrZG93biIs
CisgICAgICJtZXRhZGF0YSI6IHt9LAorICAgICAic291cmNlIjogWworICAgICAgIjxmb250IGNv
bG9yPTNEJ3JlZCc+KipOT1RFKio8L2ZvbnQ+OiBDdXJyZW50bHksIHVzZSBvZiB0aGUgU1pwYWNr
IGw9CmlicmFyeSB0byBjcmVhdGUgUy1aIHByb2plY3Rpb25zIGluIHl0IGlzIGxpbWl0ZWQgdG8g
UHl0aG9uIDIueC4iCisgICAgIF0KKyAgICB9LAorICAgIHsKICAgICAgImNlbGxfdHlwZSI6ICJo
ZWFkaW5nIiwKICAgICAgImxldmVsIjogMiwKICAgICAgIm1ldGFkYXRhIjoge30sCgpkaWZmIC1y
IGE1MGU5ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFjODEyOGE0YzZhYmYgLXIgMDRjOWViNDA0MzYy
ODIxMTNmYjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUwIGRvYy9zb3VyY2UvYW5hbHl6aW5nL2ZpZWxk
cy5yc3QKLS0tIGEvZG9jL3NvdXJjZS9hbmFseXppbmcvZmllbGRzLnJzdAorKysgYi9kb2Mvc291
cmNlL2FuYWx5emluZy9maWVsZHMucnN0CkBAIC0xNzQsNyArMTc0LDcgQEAKPTIwCiBGaWVsZCBw
bHVnaW5zIGNhbiBiZSBsb2FkZWQgZHluYW1pY2FsbHksIGFsdGhvdWdoIGF0IHByZXNlbnQgdGhp
cyBpcyBub3QKIHBhcnRpY3VsYXJseSB1c2VmdWwuICBQbGFucyBmb3IgZXh0ZW5kaW5nIGZpZWxk
IHBsdWdpbnMgdG8gZHluYW1pY2FsbHkgbG9hPQpkLCB0bwotZW5hYmxlIHNpbXBsZSBkZWZpbml0
aW9uIG9mIGNvbW1vbiB0eXBlcyAoZ3JhZGllbnQsIGRpdmVyZ2VuY2UsIGV0YyksIGFuZCA9CnRv
CitlbmFibGUgc2ltcGxlIGRlZmluaXRpb24gb2YgY29tbW9uIHR5cGVzIChkaXZlcmdlbmNlLCBj
dXJsLCBldGMpLCBhbmQgdG8KIG1vcmUgdmVyYm9zZWx5IGRlc2NyaWJlIGF2YWlsYWJsZSBmaWVs
ZHMsIGhhdmUgYmVlbiBwdXQgaW4gcGxhY2UgZm9yIGZ1dHVyZQogdmVyc2lvbnMuCj0yMAoKZGlm
ZiAtciBhNTBlOWQ2Y2FlYTNlODhhMTBhY2M2OGRkZTJhYzgxMjhhNGM2YWJmIC1yIDA0YzllYjQw
NDM2MjgyMTEzZmIyMjljPQo3N2JmMWFiMTg3YzAzMmM1MCBkb2Mvc291cmNlL2NvbmYucHkKLS0t
IGEvZG9jL3NvdXJjZS9jb25mLnB5CisrKyBiL2RvYy9zb3VyY2UvY29uZi5weQpAQCAtNjcsOSAr
NjcsOSBAQAogIyBidWlsdCBkb2N1bWVudHMuCiAjCiAjIFRoZSBzaG9ydCBYLlkgdmVyc2lvbi4K
LXZlcnNpb24gPTNEICczLjInCit2ZXJzaW9uID0zRCAnMy4zJwogIyBUaGUgZnVsbCB2ZXJzaW9u
LCBpbmNsdWRpbmcgYWxwaGEvYmV0YS9yYyB0YWdzLgotcmVsZWFzZSA9M0QgJzMuMi1kZXYnCity
ZWxlYXNlID0zRCAnMy4zLWRldicKPTIwCiAjIFRoZSBsYW5ndWFnZSBmb3IgY29udGVudCBhdXRv
Z2VuZXJhdGVkIGJ5IFNwaGlueC4gUmVmZXIgdG8gZG9jdW1lbnRhdGlvbgogIyBmb3IgYSBsaXN0
IG9mIHN1cHBvcnRlZCBsYW5ndWFnZXMuCgpkaWZmIC1yIGE1MGU5ZDZjYWVhM2U4OGExMGFjYzY4
ZGRlMmFjODEyOGE0YzZhYmYgLXIgMDRjOWViNDA0MzYyODIxMTNmYjIyOWM9Cjc3YmYxYWIxODdj
MDMyYzUwIGRvYy9zb3VyY2UvY29va2Jvb2svZW1iZWRkZWRfamF2YXNjcmlwdF9hbmltYXRpb24u
aXB5bmIKLS0tIGEvZG9jL3NvdXJjZS9jb29rYm9vay9lbWJlZGRlZF9qYXZhc2NyaXB0X2FuaW1h
dGlvbi5pcHluYgorKysgL2Rldi9udWxsCkBAIC0xLDcxICswLDAgQEAKLXsKLSAibWV0YWRhdGEi
OiB7Ci0gICJuYW1lIjogIiIsCi0gICJzaWduYXR1cmUiOiAic2hhMjU2OmJlZDc5ZjAyMjc3NDI3
MTVhODc1M2E5OGYyYWQ1NDE3NTc2N2E3YzlkZWQxOWIxNDk3Nj0KZWU2YzhmZjI1NWYwNCIKLSB9
LAotICJuYmZvcm1hdCI6IDMsCi0gIm5iZm9ybWF0X21pbm9yIjogMCwKLSAid29ya3NoZWV0cyI6
IFsKLSAgewotICAgImNlbGxzIjogWwotICAgIHsKLSAgICAgImNlbGxfdHlwZSI6ICJtYXJrZG93
biIsCi0gICAgICJtZXRhZGF0YSI6IHt9LAotICAgICAic291cmNlIjogWwotICAgICAgIlRoaXMg
ZXhhbXBsZSBzaG93cyBob3cgdG8gZW1iZWQgYW4gYW5pbWF0aW9uIHByb2R1Y2VkIGJ5IGBtYXRw
bG90bGk9CmJgIGludG8gYW4gSVB5dGhvbiBub3RlYm9vay4gIFRoaXMgZXhhbXBsZSBtYWtlcyB1
c2Ugb2YgYG1hdHBsb3RsaWJgJ3MgW2FuaT0KbWF0aW9uIHRvb2xraXRdKGh0dHA6Ly9tYXRwbG90
bGliLm9yZy9hcGkvYW5pbWF0aW9uX2FwaS5odG1sKSB0byB0cmFuc2Zvcm0gPQppbmRpdmlkdWFs
IGZyYW1lcyBpbnRvIGEgZmluYWwgcmVuZGVyZWQgbW92aWUuICBcbiIsCi0gICAgICAiXG4iLAot
ICAgICAgIkFkZGl0aW9uYWxseSwgdGhpcyB1c2VzIEpha2UgVmFuZGVyUGxhcycgW2BKU0FuaW1h
dGlvbmBdKGh0dHBzOi8vZ2k9CnRodWIuY29tL2pha2V2ZHAvSlNBbmltYXRpb24pIGxpYnJhcnkg
dG8gZW1iZWQgdGhlIG1vdmllIGFzIGEgamF2YXNjcmlwdCB3aT0KZGdldCwgZGlyZWN0bHkgaW4g
dGhlIG5vdGVib29rLiAgVGhpcyBkb2VzIG5vdCB1c2UgYGZmbXBlZ2AgdG8gc3RpdGNoIHRoZSBm
PQpyYW1lcyB0b2dldGhlciBhbmQgdGh1cyBkb2VzIG5vdCByZXF1aXJlIGBmZm1wZWdgLiAgSG93
ZXZlciwgeW91IG11c3QgaGF2ZSA9CmBKU0FuaW1hdGlvbmAgaW5zdGFsbGVkLlxuIiwKLSAgICAg
ICJcbiIsCi0gICAgICAiVG8gZG8gc28sIGNsb25lIHRvIGdpdCByZXBvc3Rpb3J5IGFuZCBydW4g
YHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsYD0KIGluIHRoZSByb290IG9mIHRoZSByZXBvc2l0b3J5
LiIKLSAgICAgXQotICAgIH0sCi0gICAgewotICAgICAiY2VsbF90eXBlIjogImNvZGUiLAotICAg
ICAiY29sbGFwc2VkIjogZmFsc2UsCi0gICAgICJpbnB1dCI6IFsKLSAgICAgICJpbXBvcnQgeXRc
biIsCi0gICAgICAiZnJvbSBKU0FuaW1hdGlvbiBpbXBvcnQgSVB5dGhvbl9kaXNwbGF5XG4iLAot
ICAgICAgImZyb20gbWF0cGxvdGxpYiBpbXBvcnQgYW5pbWF0aW9uIgotICAgICBdLAotICAgICAi
bGFuZ3VhZ2UiOiAicHl0aG9uIiwKLSAgICAgIm1ldGFkYXRhIjoge30sCi0gICAgICJvdXRwdXRz
IjogW10KLSAgICB9LAotICAgIHsKLSAgICAgImNlbGxfdHlwZSI6ICJtYXJrZG93biIsCi0gICAg
ICJtZXRhZGF0YSI6IHt9LAotICAgICAic291cmNlIjogWwotICAgICAgIkhlcmUgd2Ugc2V0IHVw
IHRoZSBhbmltYXRpb24uICBXZSB1c2UgeXQgdG8gbG9hZCB0aGUgZGF0YSBhbmQgY3JlYXQ9CmUg
ZWFjaCBmcmFtZSBhbmQgdXNlIG1hdHBsb3RsaWIgdG8gc3RpdGNoIHRoZSBmcmFtZXMgdG9nZXRo
ZXIuICBOb3RlIHRoYXQgdz0KZSBjdXN0b21pemUgdGhlIHBsb3QgYSBiaXQgYnkgY2FsbGluZyB0
aGUgYHNldF96bGltYCBmdW5jdGlvbi4gIEN1c3RvbWl6YXRpPQpvbnMgb25seSBuZWVkIHRvIGJl
IGFwcGxpZWQgdG8gdGhlIGZpcnN0IGZyYW1lIC0gdGhleSB3aWxsIGNhcnJ5IHRocm91Z2ggdG89
CiB0aGUgcmVzdC5cbiIsCi0gICAgICAiXG4iLAotICAgICAgIlRoaXMgbWF5IHRha2UgYSB3aGls
ZSB0byBydW4sIGJlIHBhdGllbnQuIgotICAgICBdCi0gICAgfSwKLSAgICB7Ci0gICAgICJjZWxs
X3R5cGUiOiAiY29kZSIsCi0gICAgICJjb2xsYXBzZWQiOiBmYWxzZSwKLSAgICAgImlucHV0Ijog
WwotICAgICAgImltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHRcbiIsCi0gICAgICAiZnJv
bSBtYXRwbG90bGliLmJhY2tlbmRzLmJhY2tlbmRfYWdnIGltcG9ydCBGaWd1cmVDYW52YXNBZ2dc
biIsCi0gICAgICAiXG4iLAotICAgICAgInByaiA9M0QgeXQuUHJvamVjdGlvblBsb3QoeXQubG9h
ZCgnRW56b182NC9ERDAwMDAvZGF0YTAwMDAnKSwgMCwgJ2Q9CmVuc2l0eScsIHdlaWdodF9maWVs
ZD0zRCdkZW5zaXR5Jyx3aWR0aD0zRCgxODAsJ01wY2NtJykpXG4iLAotICAgICAgInByai5zZXRf
ZmlndXJlX3NpemUoNSlcbiIsCi0gICAgICAicHJqLnNldF96bGltKCdkZW5zaXR5JywxZS0zMiwx
ZS0yNilcbiIsCi0gICAgICAiZmlnID0zRCBwcmoucGxvdHNbJ2RlbnNpdHknXS5maWd1cmVcbiIs
Ci0gICAgICAiXG4iLAotICAgICAgIiMgYW5pbWF0aW9uIGZ1bmN0aW9uLiAgVGhpcyBpcyBjYWxs
ZWQgc2VxdWVudGlhbGx5XG4iLAotICAgICAgImRlZiBhbmltYXRlKGkpOlxuIiwKLSAgICAgICIg
ICAgZHMgPTNEIHl0LmxvYWQoJ0Vuem9fNjQvREQlMDRpL2RhdGElMDRpJyAlIChpLGkpKVxuIiwK
LSAgICAgICIgICAgcHJqLl9zd2l0Y2hfZHMoZHMpXG4iLAotICAgICAgIlxuIiwKLSAgICAgICIj
IGNhbGwgdGhlIGFuaW1hdG9yLiAgYmxpdD0zRFRydWUgbWVhbnMgb25seSByZS1kcmF3IHRoZSBw
YXJ0cyB0aGF0PQogaGF2ZSBjaGFuZ2VkLlxuIiwKLSAgICAgICJhbmltYXRpb24uRnVuY0FuaW1h
dGlvbihmaWcsIGFuaW1hdGUsIGZyYW1lcz0zRDQ0LCBpbnRlcnZhbD0zRDIwMCwgPQpibGl0PTNE
RmFsc2UpIgotICAgICBdLAotICAgICAibGFuZ3VhZ2UiOiAicHl0aG9uIiwKLSAgICAgIm1ldGFk
YXRhIjoge30sCi0gICAgICJvdXRwdXRzIjogW10KLSAgICB9Ci0gICBdLAotICAgIm1ldGFkYXRh
Ijoge30KLSAgfQotIF0KLX0KCmRpZmYgLXIgYTUwZTlkNmNhZWEzZTg4YTEwYWNjNjhkZGUyYWM4
MTI4YTRjNmFiZiAtciAwNGM5ZWI0MDQzNjI4MjExM2ZiMjI5Yz0KNzdiZjFhYjE4N2MwMzJjNTAg
ZG9jL3NvdXJjZS9jb29rYm9vay9lbWJlZGRlZF9qYXZhc2NyaXB0X2FuaW1hdGlvbi5yc3QKLS0t
IGEvZG9jL3NvdXJjZS9jb29rYm9vay9lbWJlZGRlZF9qYXZhc2NyaXB0X2FuaW1hdGlvbi5yc3QK
KysrIC9kZXYvbnVsbApAQCAtMSw0ICswLDAgQEAKLU1ha2luZyBhIGphdmFzY3JpcHQgYW5pbWF0
aW9uIHdpZGdldCB1c2luZyBKU0FuaW1hdGlvbgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLS4uIG5vdGVib29rOjogZW1iZWRkZWRfamF2
YXNjcmlwdF9hbmltYXRpb24uaXB5bmIKCmRpZmYgLXIgYTUwZTlkNmNhZWEzZTg4YTEwYWNjNjhk
ZGUyYWM4MTI4YTRjNmFiZiAtciAwNGM5ZWI0MDQzNjI4MjExM2ZiMjI5Yz0KNzdiZjFhYjE4N2Mw
MzJjNTAgZG9jL3NvdXJjZS9jb29rYm9vay9maXRfc3BlY3RydW0ucHkKLS0tIGEvZG9jL3NvdXJj
ZS9jb29rYm9vay9maXRfc3BlY3RydW0ucHkKKysrIGIvZG9jL3NvdXJjZS9jb29rYm9vay9maXRf
c3BlY3RydW0ucHkKQEAgLTEwLDEwICsxMCwxMCBAQAogZGVmIF9PVklfbnVtYmVyX2RlbnNpdHko
ZmllbGQsIGRhdGEpOgogICAgIHJldHVybiBkYXRhWydIX251bWJlcl9kZW5zaXR5J10qMi4wCj0y
MAotIyBEZWZpbmUgYSBmdW5jdGlvbiB0aGF0IHdpbGwgYWNjZXB0IGEgZHMgYW5kIGFkZCB0aGUg
bmV3IGZpZWxkPTIwCisjIERlZmluZSBhIGZ1bmN0aW9uIHRoYXQgd2lsbCBhY2NlcHQgYSBkcyBh
bmQgYWRkIHRoZSBuZXcgZmllbGQKICMgZGVmaW5lZCBhYm92ZS4gIFRoaXMgd2lsbCBiZSBnaXZl
biB0byB0aGUgTGlnaHRSYXkgYmVsb3cuCiBkZWYgc2V0dXBfZHMoZHMpOgotICAgIGRzLmFkZF9m
aWVsZCgiT19wNV9udW1iZXJfZGVuc2l0eSIsPTIwCisgICAgZHMuYWRkX2ZpZWxkKCgiZ2FzIiwi
T19wNV9udW1iZXJfZGVuc2l0eSIpLAogICAgICAgICAgICAgICAgICBmdW5jdGlvbj0zRF9PVklf
bnVtYmVyX2RlbnNpdHksCiAgICAgICAgICAgICAgICAgIHVuaXRzPTNEImNtKiotMyIpCj0yMApA
QCAtNjIsNyArNjIsNyBAQAo9MjAKICMgR2V0IGFsbCBmaWVsZHMgdGhhdCBuZWVkIHRvIGJlIGFk
ZGVkIHRvIHRoZSBsaWdodCByYXkKIGZpZWxkcyA9M0QgWyd0ZW1wZXJhdHVyZSddCi1mb3Igcywg
cGFyYW1zIGluIHNwZWNpZXNfZGljdHMuaXRlcml0ZW1zKCk6Citmb3IgcywgcGFyYW1zIGluIHNw
ZWNpZXNfZGljdHMuaXRlbXMoKToKICAgICBmaWVsZHMuYXBwZW5kKHBhcmFtc1snZmllbGQnXSkK
PTIwCiAjIE1ha2UgYSBsaWdodCByYXksIGFuZCBzZXQgbmpvYnMgdG8gLTEgdG8gdXNlIG9uZSBj
b3JlCkBAIC03OSw3ICs3OSw3IEBACiBzcCA9M0QgQWJzb3JwdGlvblNwZWN0cnVtKDkwMC4wLCAx
NDAwLjAsIDUwMDAwKQo9MjAKICMgSXRlcmF0ZSBvdmVyIHNwZWNpZXMKLWZvciBzLCBwYXJhbXMg
aW4gc3BlY2llc19kaWN0cy5pdGVyaXRlbXMoKToKK2ZvciBzLCBwYXJhbXMgaW4gc3BlY2llc19k
aWN0cy5pdGVtcygpOgogICAgICMgSXRlcmF0ZSBvdmVyIHRyYW5zaXRpb25zIGZvciBhIHNpbmds
ZSBzcGVjaWVzCiAgICAgZm9yIGkgaW4gcmFuZ2UocGFyYW1zWydudW1MaW5lcyddKToKICAgICAg
ICAgIyBBZGQgdGhlIGxpbmVzIHRvIHRoZSBzcGVjdHJ1bQoKZGlmZiAtciBhNTBlOWQ2Y2FlYTNl
ODhhMTBhY2M2OGRkZTJhYzgxMjhhNGM2YWJmIC1yIDA0YzllYjQwNDM2MjgyMTEzZmIyMjljPQo3
N2JmMWFiMTg3YzAzMmM1MCBkb2Mvc291cmNlL2Nvb2tib29rL2ZyZWVfZnJlZV9maWVsZC5weQot
LS0gYS9kb2Mvc291cmNlL2Nvb2tib29rL2ZyZWVfZnJlZV9maWVsZC5weQorKysgL2Rldi9udWxs
CkBAIC0xLDEwNSArMCwwIEBACi0jIyMgVEhJUyBSRUNJUEUgSVMgQ1VSUkVOVExZIEJST0tFTiBJ
TiBZVC0zLjAKLSMjIyBETyBOT1QgVFJVU1QgVEhJUyBSRUNJUEUgVU5USUwgVEhJUyBMSU5FIElT
IFJFTU9WRUQKLQotaW1wb3J0IG51bXB5IGFzIG5wCi1pbXBvcnQgeXQKLSMgTmVlZCB0byBncmFi
IHRoZSBwcm90b24gbWFzcyBmcm9tIHRoZSBjb25zdGFudHMgZGF0YWJhc2UKLWZyb20geXQudXRp
bGl0aWVzLnBoeXNpY2FsX2NvbnN0YW50cyBpbXBvcnQgbXAKLQotZXhpdCgpCi0jIERlZmluZSB0
aGUgZW1pc3Npb24gZmllbGQKLQota2VWdG9lcmcgPTNEIDEuNjAyZS05ICAjIENvbnZlcnQgZW5l
cmd5IGluIGtlViB0byBlbmVyZ3kgaW4gZXJnCi1LdG9rZVYgPTNEIDguNjE3ZS0wOCAgIyBDb252
ZXJ0IGRlZ3JlZXMgS2VsdmluIHRvIGRlZ3JlZXMga2VWCi1zcXJ0MyA9M0QgbnAuc3FydCgzLikK
LWV4cGdhbW1hID0zRCAxLjc4MTA3MjQxNzk5ICAjIEV4cG9uZW50aWFsIG9mIEV1bGVyJ3MgY29u
c3RhbnQKLQotCi1kZWYgX0ZyZWVGcmVlX0VtaXNzaW9uKGZpZWxkLCBkYXRhKToKLQotICAgIGlm
IGRhdGEuaGFzX2ZpZWxkX3BhcmFtZXRlcigiWiIpOgotICAgICAgICBaID0zRCBkYXRhLmdldF9m
aWVsZF9wYXJhbWV0ZXIoIloiKQotICAgIGVsc2U6Ci0gICAgICAgIFogPTNEIDEuMDc3ICAjIFBy
aW1vcmRpYWwgSC9IZSBwbGFzbWEKLQotICAgIGlmIGRhdGEuaGFzX2ZpZWxkX3BhcmFtZXRlcigi
bXVlIik6Ci0gICAgICAgIG11ZSA9M0QgZGF0YS5nZXRfZmllbGRfcGFyYW1ldGVyKCJtdWUiKQot
ICAgIGVsc2U6Ci0gICAgICAgIG11ZSA9M0QgMS4vMC44NzUgICMgUHJpbW9yZGlhbCBIL0hlIHBs
YXNtYQotCi0gICAgaWYgZGF0YS5oYXNfZmllbGRfcGFyYW1ldGVyKCJtdWkiKToKLSAgICAgICAg
bXVpID0zRCBkYXRhLmdldF9maWVsZF9wYXJhbWV0ZXIoIm11aSIpCi0gICAgZWxzZToKLSAgICAg
ICAgbXVpID0zRCAxLi8wLjgxMjUgICMgUHJpbW9yZGlhbCBIL0hlIHBsYXNtYQotCi0gICAgaWYg
ZGF0YS5oYXNfZmllbGRfcGFyYW1ldGVyKCJFcGhvdG9uIik6Ci0gICAgICAgIEVwaG90b24gPTNE
IGRhdGEuZ2V0X2ZpZWxkX3BhcmFtZXRlcigiRXBob3RvbiIpCi0gICAgZWxzZToKLSAgICAgICAg
RXBob3RvbiA9M0QgMS4wICAjIGluIGtlVgotCi0gICAgaWYgZGF0YS5oYXNfZmllbGRfcGFyYW1l
dGVyKCJwaG90b25fZW1pc3Npb24iKToKLSAgICAgICAgcGhvdG9uX2VtaXNzaW9uID0zRCBkYXRh
LmdldF9maWVsZF9wYXJhbWV0ZXIoInBob3Rvbl9lbWlzc2lvbiIpCi0gICAgZWxzZToKLSAgICAg
ICAgcGhvdG9uX2VtaXNzaW9uID0zRCBGYWxzZSAgIyBGbGFnIGZvciBlbmVyZ3kgb3IgcGhvdG9u
IGVtaXNzaW9uCi0KLSAgICBuX2UgPTNEIGRhdGFbImRlbnNpdHkiXS8obXVlKm1wKQotICAgIG5f
aSA9M0QgZGF0YVsiZGVuc2l0eSJdLyhtdWkqbXApCi0gICAga1QgPTNEIGRhdGFbInRlbXBlcmF0
dXJlIl0qS3Rva2VWCi0KLSAgICAjIENvbXB1dGUgdGhlIEdhdW50IGZhY3RvcgotCi0gICAgZ19m
ZiA9M0QgbnAuemVyb3Moa1Quc2hhcGUpCi0gICAgZ19mZltFcGhvdG9uL2tUID4gMS5dID0zRCBu
cC5zcXJ0KCgzLi9ucC5waSkqa1RbRXBob3Rvbi9rVCA+IDEuXS9FcGhvdD0Kb24pCi0gICAgZ19m
ZltFcGhvdG9uL2tUIDwgMS5dID0zRCAoc3FydDMvbnAucGkpKm5wLmxvZygoNC4vZXhwZ2FtbWEp
ICoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrVFtF
cGhvdG9uL2tUIDwgMS5dL0VwaG90PQpvbikKLQotICAgIGVwc19FID0zRCAxLjY0ZS0yMCpaKloq
bl9lKm5faS9ucC5zcXJ0KGRhdGFbInRlbXBlcmF0dXJlIl0pICogXAotICAgICAgICBucC5leHAo
LUVwaG90b24va1QpKmdfZmYKLQotICAgIGlmIHBob3Rvbl9lbWlzc2lvbjoKLSAgICAgICAgZXBz
X0UgLz0zRCAoRXBob3RvbiprZVZ0b2VyZykKLQotICAgIHJldHVybiBlcHNfRQotCi15dC5hZGRf
ZmllbGQoIkZyZWVGcmVlX0VtaXNzaW9uIiwgZnVuY3Rpb249M0RfRnJlZUZyZWVfRW1pc3Npb24p
Ci0KLSMgRGVmaW5lIHRoZSBsdW1pbm9zaXR5IGRlcml2ZWQgcXVhbnRpdHkKLWRlZiBfRnJlZUZy
ZWVMdW1pbm9zaXR5KGRhdGEpOgotICAgIHJldHVybiAoZGF0YVsiRnJlZUZyZWVfRW1pc3Npb24i
XSpkYXRhWyJjZWxsX3ZvbHVtZSJdKS5zdW0oKQotCi0KLWRlZiBfY29tYkZyZWVGcmVlTHVtaW5v
c2l0eShkYXRhLCBsdW1pbm9zaXR5KToKLSAgICByZXR1cm4gbHVtaW5vc2l0eS5zdW0oKQotCi15
dC5hZGRfcXVhbnRpdHkoIkZyZWVGcmVlX0x1bWlub3NpdHkiLCBmdW5jdGlvbj0zRF9GcmVlRnJl
ZUx1bWlub3NpdHksCi0gICAgICAgICAgICAgICAgY29tYmluZV9mdW5jdGlvbj0zRF9jb21iRnJl
ZUZyZWVMdW1pbm9zaXR5LCBuX3JldD0zRDEpCi0KLWRzID0zRCB5dC5sb2FkKCJHYXNTbG9zaGlu
Zy9zbG9zaGluZ19ub21hZzJfaGRmNV9wbHRfY250XzAxNTAiKQotCi1zcGhlcmUgPTNEIGRzLnNw
aGVyZShkcy5kb21haW5fY2VudGVyLCAoMTAwLiwgImtwYyIpKQotCi0jIFByaW50IG91dCB0aGUg
dG90YWwgbHVtaW5vc2l0eSBhdCAxIGtlViBmb3IgdGhlIHNwaGVyZQotCi1wcmludCgiTF9FICgx
IGtlViwgcHJpbW9yZGlhbCkgPTNEICIsIHNwaGVyZS5xdWFudGl0aWVzWyJGcmVlRnJlZV9MdW1p
bm9zaT0KdHkiXSgpKQotCi0jIFRoZSBkZWZhdWx0cyBmb3IgdGhlIGZpZWxkIGFzc3VtZSBhIEgv
SGUgcHJpbW9yZGlhbCBwbGFzbWEuCi0jIExldCdzIHNldCB0aGUgYXBwcm9wcmlhdGUgcGFyYW1l
dGVycyBmb3IgYSBwdXJlIGh5ZHJvZ2VuIHBsYXNtYS4KLQotc3BoZXJlLnNldF9maWVsZF9wYXJh
bWV0ZXIoIm11ZSIsIDEuMCkKLXNwaGVyZS5zZXRfZmllbGRfcGFyYW1ldGVyKCJtdWkiLCAxLjAp
Ci1zcGhlcmUuc2V0X2ZpZWxkX3BhcmFtZXRlcigiWiIsIDEuMCkKLQotcHJpbnQoIkxfRSAoMSBr
ZVYsIHB1cmUgaHlkcm9nZW4pID0zRCAiLCBzcGhlcmUucXVhbnRpdGllc1siRnJlZUZyZWVfTHVt
aW49Cm9zaXR5Il0oKSkKLQotIyBOb3cgbGV0J3MgcHJpbnQgdGhlIGx1bWlub3NpdHkgYXQgYW4g
ZW5lcmd5IG9mIEUgPTNEIDEwIGtlVgotCi1zcGhlcmUuc2V0X2ZpZWxkX3BhcmFtZXRlcigiRXBo
b3RvbiIsIDEwLjApCi0KLXByaW50KCJMX0UgKDEwIGtlViwgcHVyZSBoeWRyb2dlbikgPTNEICIs
IHNwaGVyZS5xdWFudGl0aWVzWyJGcmVlRnJlZV9MdW1pPQpub3NpdHkiXSgpKQotCi0jIEZpbmFs
bHksIGxldCdzIHNldCB0aGUgZmxhZyBmb3IgcGhvdG9uIGVtaXNzaW9uLCB0byBnZXQgdGhlIHRv
dGFsIG51bWJlcgotIyBvZiBwaG90b25zIGVtaXR0ZWQgYXQgdGhpcyBlbmVyZ3k6Ci0KLXNwaGVy
ZS5zZXRfZmllbGRfcGFyYW1ldGVyKCJwaG90b25fZW1pc3Npb24iLCBUcnVlKQotCi1wcmludCgi
TF9waCAoMTAga2VWLCBwdXJlIGh5ZHJvZ2VuKSA9M0QgIiwgc3BoZXJlLnF1YW50aXRpZXNbIkZy
ZWVGcmVlX0x1bT0KaW5vc2l0eSJdKCkpCgpkaWZmIC1yIGE1MGU5ZDZjYWVhM2U4OGExMGFjYzY4
ZGRlMmFjODEyOGE0YzZhYmYgLXIgMDRjOWViNDA0MzYyODIxMTNmYjIyOWM9Cjc3YmYxYWIxODdj
MDMyYzUwIGRvYy9zb3VyY2UvY29va2Jvb2svaW5kZXgucnN0Ci0tLSBhL2RvYy9zb3VyY2UvY29v
a2Jvb2svaW5kZXgucnN0CisrKyBiL2RvYy9zb3VyY2UvY29va2Jvb2svaW5kZXgucnN0CkBAIC00
MSw3ICs0MSw2IEBACj0yMAogICAgbm90ZWJvb2tfdHV0b3JpYWwKICAgIGN1c3RvbV9jb2xvcmJh
cl90aWNrbWFya3MKLSAgIGVtYmVkZGVkX2phdmFzY3JpcHRfYW5pbWF0aW9uCiAgICBlbWJlZGRl
ZF93ZWJtX2FuaW1hdGlvbgogICAgZ2FkZ2V0X25vdGVib29rCiAgICBvd2xzX25vdGVib29rCgpk
aWZmIC1yIGE1MGU5ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFjODEyOGE0YzZhYmYgLXIgMDRjOWVi
NDA0MzYyODIxMTNmYjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUwIGRvYy9zb3VyY2UvY29va2Jvb2sv
c2ltdWxhdGlvbl9hbmFseXNpcy5weQotLS0gYS9kb2Mvc291cmNlL2Nvb2tib29rL3NpbXVsYXRp
b25fYW5hbHlzaXMucHkKKysrIGIvZG9jL3NvdXJjZS9jb29rYm9vay9zaW11bGF0aW9uX2FuYWx5
c2lzLnB5CkBAIC0yLDExICsyLDExIEBACiB5dC5lbmFibGVfcGFyYWxsZWxpc20oKQogaW1wb3J0
IGNvbGxlY3Rpb25zCj0yMAotIyBFbmFibGUgcGFyYWxsZWxpc20gaW4gdGhlIHNjcmlwdCAoYXNz
dW1pbmcgaXQgd2FzIGNhbGxlZCB3aXRoPTIwCisjIEVuYWJsZSBwYXJhbGxlbGlzbSBpbiB0aGUg
c2NyaXB0IChhc3N1bWluZyBpdCB3YXMgY2FsbGVkIHdpdGgKICMgYG1waXJ1biAtbnAgPG5fcHJv
Y3M+YCApCiB5dC5lbmFibGVfcGFyYWxsZWxpc20oKQo9MjAKLSMgQnkgdXNpbmcgd2lsZGNhcmRz
IHN1Y2ggYXMgPyBhbmQgKiB3aXRoIHRoZSBsb2FkIGNvbW1hbmQsIHdlIGNhbiBsb2FkIHVwPQog
YT0yMAorIyBCeSB1c2luZyB3aWxkY2FyZHMgc3VjaCBhcyA/IGFuZCAqIHdpdGggdGhlIGxvYWQg
Y29tbWFuZCwgd2UgY2FuIGxvYWQgdXA9CiBhCiAjIFRpbWUgU2VyaWVzIGNvbnRhaW5pbmcgYWxs
IG9mIHRoZXNlIGRhdGFzZXRzIHNpbXVsdGFuZW91c2x5LgogdHMgPTNEIHl0LmxvYWQoJ2Vuem9f
dGlueV9jb3Ntb2xvZ3kvREQ/Pz8/L0REPz8/PycpCj0yMApAQCAtMTYsNyArMTYsNyBAQAogIyBD
cmVhdGUgYW4gZW1wdHkgZGljdGlvbmFyeQogZGF0YSA9M0Qge30KPTIwCi0jIEl0ZXJhdGUgdGhy
b3VnaCBlYWNoIGRhdGFzZXQgaW4gdGhlIFRpbWUgU2VyaWVzICh1c2luZyBwaXRlciBhbGxvd3Mg
aXQ9MjAKKyMgSXRlcmF0ZSB0aHJvdWdoIGVhY2ggZGF0YXNldCBpbiB0aGUgVGltZSBTZXJpZXMg
KHVzaW5nIHBpdGVyIGFsbG93cyBpdAogIyB0byBoYXBwZW4gaW4gcGFyYWxsZWwgYXV0b21hdGlj
YWxseSBhY3Jvc3MgYXZhaWxhYmxlIHByb2Nlc3NvcnMpCiBmb3IgZHMgaW4gdHMucGl0ZXIoKToK
ICAgICBhZCA9M0QgZHMuYWxsX2RhdGEoKQpAQCAtMzEsNiArMzEsNiBAQAogIyBQcmludCBvdXQg
YWxsIHRoZSB2YWx1ZXMgd2UgY2FsY3VsYXRlZC4KIHByaW50KCJEYXRhc2V0ICAgICAgUmVkc2hp
ZnQgICAgICAgIERlbnNpdHkgTWluICAgICAgRGVuc2l0eSBNYXgiKQogcHJpbnQoIi0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSIpCi1mb3Ig
a2V5LCB2YWwgaW4gb2QuaXRlcml0ZW1zKCk6PTIwCitmb3Iga2V5LCB2YWwgaW4gb2QuaXRlbXMo
KTo9MjAKICAgICBwcmludCgiJXMgICAgICAgJTA1LjNmICAgICAgICAgICU1LjNnIGcvY21eMyAg
ICU1LjNnIGcvY21eMyIgJSBcCiAgICAgICAgICAgIChrZXksIHZhbFsxXSwgdmFsWzBdWzBdLCB2
YWxbMF1bMV0pKQoKZGlmZiAtciBhNTBlOWQ2Y2FlYTNlODhhMTBhY2M2OGRkZTJhYzgxMjhhNGM2
YWJmIC1yIDA0YzllYjQwNDM2MjgyMTEzZmIyMjljPQo3N2JmMWFiMTg3YzAzMmM1MCBkb2Mvc291
cmNlL2Nvb2tib29rL3RpbWVfc2VyaWVzLnB5Ci0tLSBhL2RvYy9zb3VyY2UvY29va2Jvb2svdGlt
ZV9zZXJpZXMucHkKKysrIGIvZG9jL3NvdXJjZS9jb29rYm9vay90aW1lX3Nlcmllcy5weQpAQCAt
MTIsNyArMTIsNyBAQAo9MjAKIHN0b3JhZ2UgPTNEIHt9Cj0yMAotIyBCeSB1c2luZyB0aGUgcGl0
ZXIoKSBmdW5jdGlvbiwgd2UgY2FuIGl0ZXJhdGUgb24gZXZlcnkgZGF0YXNldCBpbj0yMAorIyBC
eSB1c2luZyB0aGUgcGl0ZXIoKSBmdW5jdGlvbiwgd2UgY2FuIGl0ZXJhdGUgb24gZXZlcnkgZGF0
YXNldCBpbgogIyB0aGUgVGltZVNlcmllcyBvYmplY3QuICBCeSB1c2luZyB0aGUgc3RvcmFnZSBr
ZXl3b3JkLCB3ZSBjYW4gcG9wdWxhdGUKICMgYSBkaWN0aW9uYXJ5IHdoZXJlIHRoZSBkYXRhc2V0
IGlzIHRoZSBrZXksIGFuZCBzdG8ucmVzdWx0IGlzIHRoZSB2YWx1ZQogIyBmb3IgbGF0ZXIgdXNl
IHdoZW4gdGhlIGxvb3AgaXMgY29tcGxldGUuCkBAIC0yNSwxMyArMjUsMTMgQEAKICAgICBzcGhl
cmUgPTNEIGRzLnNwaGVyZSgiYyIsICgxMDAuLCAia3BjIikpCiAgICAgIyBDYWxjdWxhdGUgdGhl
IGVudHJvcHkgd2l0aGluIHRoYXQgc3BoZXJlCiAgICAgZW50ciA9M0Qgc3BoZXJlWyJlbnRyb3B5
Il0uc3VtKCkKLSAgICAjIFN0b3JlIHRoZSBjdXJyZW50IHRpbWUgYW5kIHNwaGVyZSBlbnRyb3B5
IGZvciB0aGlzIGRhdGFzZXQgaW4gb3VyPTIwCisgICAgIyBTdG9yZSB0aGUgY3VycmVudCB0aW1l
IGFuZCBzcGhlcmUgZW50cm9weSBmb3IgdGhpcyBkYXRhc2V0IGluIG91cgogICAgICMgc3RvcmFn
ZSBkaWN0aW9uYXJ5IGFzIGEgdHVwbGUKICAgICBzdG9yZS5yZXN1bHQgPTNEIChkcy5jdXJyZW50
X3RpbWUuaW5fdW5pdHMoJ0d5cicpLCBlbnRyKQo9MjAKICMgQ29udmVydCB0aGUgc3RvcmFnZSBk
aWN0aW9uYXJ5IHZhbHVlcyB0byBhIE54MiBhcnJheSwgc28gdGhlIGNhbiBiZSBlYXNpPQpseQog
IyBwbG90dGVkCi1hcnIgPTNEIG5wLmFycmF5KHN0b3JhZ2UudmFsdWVzKCkpCithcnIgPTNEIG5w
LmFycmF5KGxpc3Qoc3RvcmFnZS52YWx1ZXMoKSkpCj0yMAogIyBQbG90IHVwIHRoZSByZXN1bHRz
OiB0aW1lIHZlcnN1cyBlbnRyb3B5CiBwbHQuc2VtaWxvZ3koYXJyWzosMF0sIGFycls6LDFdLCAn
ci0nKQoKZGlmZiAtciBhNTBlOWQ2Y2FlYTNlODhhMTBhY2M2OGRkZTJhYzgxMjhhNGM2YWJmIC1y
IDA0YzllYjQwNDM2MjgyMTEzZmIyMjljPQo3N2JmMWFiMTg3YzAzMmM1MCBkb2Mvc291cmNlL2Rl
dmVsb3BpbmcvYnVpbGRpbmdfdGhlX2RvY3MucnN0Ci0tLSBhL2RvYy9zb3VyY2UvZGV2ZWxvcGlu
Zy9idWlsZGluZ190aGVfZG9jcy5yc3QKKysrIGIvZG9jL3NvdXJjZS9kZXZlbG9waW5nL2J1aWxk
aW5nX3RoZV9kb2NzLnJzdApAQCAtMTY1LDI0ICsxNjUsMjIgQEAKPTIwCiBUbyBidWlsZCB0aGUg
ZnVsbCBkb2N1bWVudGF0aW9uLCB5b3Ugd2lsbCBuZWVkIHl0LCBJUHl0aG9uLCBydW5pcHksIGFu
ZCBhbD0KbD0yMAogc3VwcGxlbWVudGFyeSB5dCBhbmFseXNpcyBtb2R1bGVzIGluc3RhbGxlZC4g
VGhlIGZvbGxvd2luZyBkZXBlbmRlbmNpZXMgd2U9CnJlPTIwCi11c2VkIHRvIGdlbmVyYXRlIHRo
ZSB5dCBkb2N1bWVudGF0aW9uIGR1cmluZyB0aGUgcmVsZWFzZSBvZiB5dCAyLjYgaW4gbGF0ZT0K
IDIwMTMuCit1c2VkIHRvIGdlbmVyYXRlIHRoZSB5dCBkb2N1bWVudGF0aW9uIGR1cmluZyB0aGUg
cmVsZWFzZSBvZiB5dCAzLjIgaW4gMjAxNS4KPTIwCi0qIFNwaGlueF8gMS4xLjMKLSogSVB5dGhv
bl8gMS4xCi0qIHJ1bmlweV8gKGdpdCBoYXNoIGY3NDQ1OGMyODc3KQotKiBwYW5kb2NfIDEuMTEu
MQorKiBTcGhpbnhfIDEuMy4xCisqIElQeXRob25fIDIuNC4xCisqIHJ1bmlweV8gMC4xLjMKKyog
cGFuZG9jXyAxLjEzLjIKICogUm9ja3N0YXIgaGFsbyBmaW5kZXIgMC45OS42CiAqIFNacGFja18g
MS4xLjEKLSogZmZtcGVnXyAxLjIuNCAoY29tcGlsZWQgd2l0aCBsaWJ2cHggc3VwcG9ydCkKLSog
SlNBbmltYXRpb25fIChnaXQgaGFzaCAxYjk1Y2IzYTNhKQotKiBBc3Ryb3B5XyAwLjIuNQorKiBm
Zm1wZWdfIDIuNy4xIChjb21waWxlZCB3aXRoIGxpYnZweCBzdXBwb3J0KQorKiBBc3Ryb3B5XyAw
LjQuNAo9MjAKIC4uIF9TWnBhY2s6IGh0dHA6Ly93d3cuY2l0YS51dG9yb250by5jYS9+amNobHVi
YS9TY2llbmNlX0plbnMvU1pwYWNrL1NacGFjPQprLmh0bWwKIC4uIF9Bc3Ryb3B5OiBodHRwOi8v
YXN0cm9weS5vcmcvCiAuLiBfU3BoaW54OiBodHRwOi8vc3BoaW54LWRvYy5vcmcvCiAuLiBfcGFu
ZG9jOiBodHRwOi8vam9obm1hY2ZhcmxhbmUubmV0L3BhbmRvYy8KIC4uIF9mZm1wZWc6IGh0dHA6
Ly93d3cuZmZtcGVnLm9yZy8KLS4uIF9KU0FuaW1hdGlvbjogaHR0cHM6Ly9naXRodWIuY29tL2ph
a2V2ZHAvSlNBbmltYXRpb24KPTIwCiBZb3Ugd2lsbCBhbHNvIG5lZWQgdGhlIGZ1bGwgeXQgc3Vp
dGUgb2YgYHl0IHRlc3QgZGF0YQogPGh0dHA6Ly95dC1wcm9qZWN0Lm9yZy9kYXRhLz5gXywgaW5j
bHVkaW5nIHRoZSBsYXJnZXIgZGF0YXNldHMgdGhhdCBhcmUgbm89CnQgdXNlZAoKZGlmZiAtciBh
NTBlOWQ2Y2FlYTNlODhhMTBhY2M2OGRkZTJhYzgxMjhhNGM2YWJmIC1yIDA0YzllYjQwNDM2Mjgy
MTEzZmIyMjljPQo3N2JmMWFiMTg3YzAzMmM1MCBkb2Mvc291cmNlL2RldmVsb3BpbmcvaW50cm8u
cnN0Ci0tLSBhL2RvYy9zb3VyY2UvZGV2ZWxvcGluZy9pbnRyby5yc3QKKysrIGIvZG9jL3NvdXJj
ZS9kZXZlbG9waW5nL2ludHJvLnJzdApAQCAtMTQyLDMgKzE0Miw3NyBAQAogZmVkZXJhdGVkIGRh
dGFiYXNlIGZvciBzaW11bGF0aW9uIG91dHB1dHMsIGFuZCBzbyBvbiBhbmQgc28gZm9ydGguCj0y
MAogeXQgaXMgYW4gYW1iaXRpb3VzIHByb2plY3QuICBMZXQncyBiZSBhbWJpdGlvdXMgdG9nZXRo
ZXIuCisKK3l0IENvbW11bml0eSBDb2RlIG9mIENvbmR1Y3QKKy0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0KKworVGhlIGNvbW11bml0eSBvZiBwYXJ0aWNpcGFudHMgaW4gb3BlbiBzb3VyY2U9
MjAKK1NjaWVudGlmaWMgcHJvamVjdHMgaXMgbWFkZSB1cCBvZiBtZW1iZXJzIGZyb20gYXJvdW5k
IHRoZQorZ2xvYmUgd2l0aCBhIGRpdmVyc2Ugc2V0IG9mIHNraWxscywgcGVyc29uYWxpdGllcywg
YW5kCitleHBlcmllbmNlcy4gSXQgaXMgdGhyb3VnaCB0aGVzZSBkaWZmZXJlbmNlcyB0aGF0IG91
cgorY29tbXVuaXR5IGV4cGVyaWVuY2VzIHN1Y2Nlc3MgYW5kIGNvbnRpbnVlZCBncm93dGguIFdl
CitleHBlY3QgZXZlcnlvbmUgaW4gb3VyIGNvbW11bml0eSB0byBmb2xsb3cgdGhlc2UgZ3VpZGVs
aW5lcword2hlbiBpbnRlcmFjdGluZyB3aXRoIG90aGVycyBib3RoIGluc2lkZSBhbmQgb3V0c2lk
ZSBvZiBvdXIKK2NvbW11bml0eS4gT3VyIGdvYWwgaXMgdG8ga2VlcCBvdXJzIGEgcG9zaXRpdmUs
IGluY2x1c2l2ZSwKK3N1Y2Nlc3NmdWwsIGFuZCBncm93aW5nIGNvbW11bml0eS4KKworQXMgbWVt
YmVycyBvZiB0aGUgY29tbXVuaXR5LAorCistIFdlIHBsZWRnZSB0byB0cmVhdCBhbGwgcGVvcGxl
IHdpdGggcmVzcGVjdCBhbmQKKyAgcHJvdmlkZSBhIGhhcmFzc21lbnQtIGFuZCBidWxseWluZy1m
cmVlIGVudmlyb25tZW50LAorICByZWdhcmRsZXNzIG9mIHNleCwgc2V4dWFsIG9yaWVudGF0aW9u
IGFuZC9vciBnZW5kZXIKKyAgaWRlbnRpdHksIGRpc2FiaWxpdHksIHBoeXNpY2FsIGFwcGVhcmFu
Y2UsIGJvZHkgc2l6ZSwKKyAgcmFjZSwgbmF0aW9uYWxpdHksIGV0aG5pY2l0eSwgYW5kIHJlbGln
aW9uLiBJbgorICBwYXJ0aWN1bGFyLCBzZXh1YWwgbGFuZ3VhZ2UgYW5kIGltYWdlcnksIHNleGlz
dCwKKyAgcmFjaXN0LCBvciBvdGhlcndpc2UgZXhjbHVzaW9uYXJ5IGpva2VzIGFyZSBub3QKKyAg
YXBwcm9wcmlhdGUuCisKKy0gV2UgcGxlZGdlIHRvIHJlc3BlY3QgdGhlIHdvcmsgb2Ygb3RoZXJz
IGJ5CisgIHJlY29nbml6aW5nIGFja25vd2xlZGdtZW50L2NpdGF0aW9uIHJlcXVlc3RzIG9mCisg
IG9yaWdpbmFsIGF1dGhvcnMuIEFzIGF1dGhvcnMsIHdlIHBsZWRnZSB0byBiZSBleHBsaWNpdAor
ICBhYm91dCBob3cgd2Ugd2FudCBvdXIgb3duIHdvcmsgdG8gYmUgY2l0ZWQgb3IKKyAgYWNrbm93
bGVkZ2VkLgorCistIFdlIHBsZWRnZSB0byB3ZWxjb21lIHRob3NlIGludGVyZXN0ZWQgaW4gam9p
bmluZyB0aGUKKyAgY29tbXVuaXR5LCBhbmQgcmVhbGl6ZSB0aGF0IGluY2x1ZGluZyBwZW9wbGUg
d2l0aCBhCisgIHZhcmlldHkgb2Ygb3BpbmlvbnMgYW5kIGJhY2tncm91bmRzIHdpbGwgb25seSBz
ZXJ2ZSB0bworICBlbnJpY2ggb3VyIGNvbW11bml0eS4gSW4gcGFydGljdWxhciwgZGlzY3Vzc2lv
bnMKKyAgcmVsYXRpbmcgdG8gcHJvcy9jb25zIG9mIHZhcmlvdXMgdGVjaG5vbG9naWVzLAorICBw
cm9ncmFtbWluZyBsYW5ndWFnZXMsIGFuZCBzbyBvbiBhcmUgd2VsY29tZSwgYnV0CisgIHRoZXNl
IHNob3VsZCBiZSBkb25lIHdpdGggcmVzcGVjdCwgdGFraW5nIHByb2FjdGl2ZQorICBtZWFzdXJl
IHRvIGVuc3VyZSB0aGF0IGFsbCBwYXJ0aWNpcGFudHMgYXJlIGhlYXJkIGFuZAorICBmZWVsIGNv
bmZpZGVudCB0aGF0IHRoZXkgY2FuIGZyZWVseSBleHByZXNzIHRoZWlyCisgIG9waW5pb25zLgor
CistIFdlIHBsZWRnZSB0byB3ZWxjb21lIHF1ZXN0aW9ucyBhbmQgYW5zd2VyIHRoZW0KKyAgcmVz
cGVjdGZ1bGx5LCBwYXlpbmcgcGFydGljdWxhciBhdHRlbnRpb24gdG8gdGhvc2UgbmV3CisgIHRv
IHRoZSBjb21tdW5pdHkuIFdlIHBsZWRnZSB0byBwcm92aWRlIHJlc3BlY3RmdWwKKyAgY3JpdGlj
aXNtcyBhbmQgZmVlZGJhY2sgaW4gZm9ydW1zLCBlc3BlY2lhbGx5IGluCisgIGRpc2N1c3Npb24g
dGhyZWFkcyByZXN1bHRpbmcgZnJvbSBjb2RlCisgIGNvbnRyaWJ1dGlvbnMuCisKKy0gV2UgcGxl
ZGdlIHRvIGJlIGNvbnNjaWVudGlvdXMgb2YgdGhlIHBlcmNlcHRpb25zIG9mCisgIHRoZSB3aWRl
ciBjb21tdW5pdHkgYW5kIHRvIHJlc3BvbmQgdG8gY3JpdGljaXNtCisgIHJlc3BlY3RmdWxseS4g
V2Ugd2lsbCBzdHJpdmUgdG8gbW9kZWwgYmVoYXZpb3JzIHRoYXQKKyAgZW5jb3VyYWdlIHByb2R1
Y3RpdmUgZGViYXRlIGFuZCBkaXNhZ3JlZW1lbnQsIGJvdGgKKyAgd2l0aGluIG91ciBjb21tdW5p
dHkgYW5kIHdoZXJlIHdlIGFyZSBjcml0aWNpemVkLiBXZQorICB3aWxsIHRyZWF0IHRob3NlIG91
dHNpZGUgb3VyIGNvbW11bml0eSB3aXRoIHRoZSBzYW1lCisgIHJlc3BlY3QgYXMgcGVvcGxlIHdp
dGhpbiBvdXIgY29tbXVuaXR5LgorCistIFdlIHBsZWRnZSB0byBoZWxwIHRoZSBlbnRpcmUgY29t
bXVuaXR5IGZvbGxvdyB0aGUKKyAgY29kZSBvZiBjb25kdWN0LCBhbmQgdG8gbm90IHJlbWFpbiBz
aWxlbnQgd2hlbiB3ZSBzZWUKKyAgdmlvbGF0aW9ucyBvZiB0aGUgY29kZSBvZiBjb25kdWN0LiBX
ZSB3aWxsIHRha2UgYWN0aW9uCisgIHdoZW4gbWVtYmVycyBvZiBvdXIgY29tbXVuaXR5IHZpb2xh
dGUgdGhpcyBjb2RlIHN1Y2ggYXMKKyAgY29udGFjdGluZyBjb25maWRlbnRpYWxAeXQtcHJvamVj
dC5vcmcgKGFsbCBlbWFpbHMgc2VudCB0bworICB0aGlzIGFkZHJlc3Mgd2lsbCBiZSB0cmVhdGVk
IHdpdGggdGhlIHN0cmljdGVzdAorICBjb25maWRlbmNlKSBvciB0YWxraW5nIHByaXZhdGVseSB3
aXRoIHRoZSBwZXJzb24uCisKK1RoaXMgY29kZSBvZiBjb25kdWN0IGFwcGxpZXMgdG8gYWxsCitj
b21tdW5pdHkgc2l0dWF0aW9ucyBvbmxpbmUgYW5kIG9mZmxpbmUsIGluY2x1ZGluZyBtYWlsaW5n
CitsaXN0cywgZm9ydW1zLCBzb2NpYWwgbWVkaWEsIGNvbmZlcmVuY2VzLCBtZWV0aW5ncywKK2Fz
c29jaWF0ZWQgc29jaWFsIGV2ZW50cywgYW5kIG9uZS10by1vbmUgaW50ZXJhY3Rpb25zLgorCitU
aGUgeXQgQ29tbXVuaXR5IENvZGUgb2YgQ29uZHVjdCB3YXMgYWRhcHRlZCBmcm9tIHRoZT0yMAor
YEFzdHJvcHkgQ29tbXVuaXR5IENvZGUgb2YgQ29uZHVjdD0yMAorPGh0dHA6Ly93d3cuYXN0cm9w
eS5vcmcvYWJvdXQuaHRtbCNjb2Rlb2Zjb25kdWN0PmBfLAord2hpY2ggd2FzIHBhcnRpYWxseSBp
bnNwaXJlZCBieSB0aGUgUFNGIGNvZGUgb2YgY29uZHVjdC4KCmRpZmYgLXIgYTUwZTlkNmNhZWEz
ZTg4YTEwYWNjNjhkZGUyYWM4MTI4YTRjNmFiZiAtciAwNGM5ZWI0MDQzNjI4MjExM2ZiMjI5Yz0K
NzdiZjFhYjE4N2MwMzJjNTAgZG9jL3NvdXJjZS9leGFtaW5pbmcvbG9hZGluZ19kYXRhLnJzdAot
LS0gYS9kb2Mvc291cmNlL2V4YW1pbmluZy9sb2FkaW5nX2RhdGEucnN0CisrKyBiL2RvYy9zb3Vy
Y2UvZXhhbWluaW5nL2xvYWRpbmdfZGF0YS5yc3QKQEAgLTI2OCw3ICsyNjgsNyBAQAogU3VwcG9y
dCBmb3IgUGx1dG8gQU1SIGRhdGEgaXMgcHJvdmlkZWQgdGhyb3VnaCB0aGUgQ2hvbWJvIGZyb250
ZW5kLCB3aGljaAogaXMgY3VycmVudGx5IG1haW50YWluZWQgYnkgQW5kcmV3IE15ZXJzLiBQbHV0
byBvdXRwdXQgZmlsZXMgdGhhdCBkb24ndCB1c2UKIHRoZSBDaG9tYm8gSERGNSBmb3JtYXQgYXJl
IGN1cnJlbnRseSBub3Qgc3VwcG9ydGVkLiBUbyBsb2FkIGEgUGx1dG8gZGF0YXNlPQp0LD0yMAot
eW91IGNhbiB1c2UgdGhlIGBgeXQubG9hZGBgIGNvbW1hbmQgb24gdGhlICouaGRmNSBmaWxlLiBG
b3IgZXhhbXBsZSwgdGhlPTIwCit5b3UgY2FuIHVzZSB0aGUgYGB5dC5sb2FkYGAgY29tbWFuZCBv
biB0aGUgYGAqLmhkZjVgYCBmaWxlcy4gRm9yIGV4YW1wbGUsID0KdGhlPTIwCiBLZWx2aW5IZWxt
aG9sdHogc2FtcGxlIGRhdGFzZXQgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyB0aGUgZm9s
bG93aW5nCiBmaWxlczoKPTIwCkBAIC0xMDc5LDYgKzEwNzksNzYgQEAKPTIwCiAuLiBfbG9hZGlu
Zy1weW5lLWRhdGE6Cj0yMAorSGFsbyBDYXRhbG9nIERhdGEKKy0tLS0tLS0tLS0tLS0tLS0tCisK
K3l0IGhhcyBzdXBwb3J0IGZvciByZWFkaW5nIGhhbG8gY2F0YWxvZ3MgcHJvZHVjZWQgYnkgUm9j
a3N0YXIgYW5kIHRoZSBpbmxpPQpuZT0yMAorRk9GL1NVQkZJTkQgaGFsbyBmaW5kZXJzIG9mIEdh
ZGdldCBhbmQgT1dMUy4gIFRoZSBoYWxvIGNhdGFsb2dzIGFyZSB0cmVhdGU9CmQgYXM9MjAKK3Bh
cnRpY2xlIGRhdGFzZXRzIHdoZXJlIGVhY2ggcGFydGljbGUgcmVwcmVzZW50cyBhIHNpbmdsZSBo
YWxvLiAgQXQgdGhpcyB0PQppbWUsPTIwCit5dCBkb2VzIG5vdCBoYXZlIHRoZSBhYmlsaXR5IHRv
IGxvYWQgdGhlIG1lbWJlciBwYXJ0aWNsZXMgZm9yIGEgZ2l2ZW4gaGFsbz0KLiA9MjAKK0hvd2V2
ZXIsIG9uY2UgbG9hZGVkLCBmdXJ0aGVyIGhhbG8gYW5hbHlzaXMgY2FuIGJlIHBlcmZvcm1lZCB1
c2luZz0yMAorOnJlZjpgaGFsb19jYXRhbG9nYC4KKworSW4gdGhlIGNhc2Ugd2hlcmUgaGFsbyBj
YXRhbG9ncyBhcmUgd3JpdHRlbiB0byBtdWx0aXBsZSBmaWxlcywgb25lIG11c3Qgb249Cmx5PTIw
CitnaXZlIHRoZSBwYXRoIHRvIG9uZSBvZiB0aGVtLgorCitHYWRnZXQgRk9GL1NVQkZJTkQKK15e
Xl5eXl5eXl5eXl5eXl5eXgorCitUaGUgdHdvIGZpZWxkIHR5cGVzIGZvciBHYWRnZXRGT0YgZGF0
YSBhcmUgIkdyb3VwIiAoRk9GKSBhbmQgIlN1YmhhbG8iIChTVT0KQkZJTkQpLgorCisuLiBjb2Rl
LWJsb2NrOjogcHl0aG9uCisKKyAgIGltcG9ydCB5dAorICAgZHMgPTNEIHl0LmxvYWQoImdhZGdl
dF9mb2ZfaGFsb3MvZ3JvdXBzXzA0Mi9mb2Zfc3ViaGFsb190YWJfMDQyLjAuaGRmNSIpCisgICBh
ZCA9M0QgZHMuYWxsX2RhdGEoKQorICAgIyBUaGUgaGFsbyBtYXNzCisgICBwcmludCBhZFsiR3Jv
dXAiLCAicGFydGljbGVfbWFzcyJdCisgICBwcmludCBhZFsiU3ViaGFsbyIsICJwYXJ0aWNsZV9t
YXNzIl0KKyAgICMgSGFsbyBJRAorICAgcHJpbnQgYWRbIkdyb3VwIiwgInBhcnRpY2xlX2lkZW50
aWZpZXIiXQorICAgcHJpbnQgYWRbIlN1YmhhbG8iLCAicGFydGljbGVfaWRlbnRpZmllciJdCisg
ICAjIHBvc2l0aW9ucworICAgcHJpbnQgYWRbIkdyb3VwIiwgInBhcnRpY2xlX3Bvc2l0aW9uX3gi
XQorICAgIyB2ZWxvY2l0aWVzCisgICBwcmludCBhZFsiR3JvdXAiLCAicGFydGljbGVfdmVsb2Np
dHlfeCJdCisKK011bHRpZGltZW5zaW9uYWwgZmllbGRzIGNhbiBiZSBhY2Nlc3NlZCB0aHJvdWdo
IHRoZSBmaWVsZCBuYW1lIGZvbGxvd2VkIGJ5PQogYW49MjAKK3VuZGVyc2NvcmUgYW5kIHRoZSBp
bmRleC4KKworLi4gY29kZS1ibG9jazo6IHB5dGhvbgorCisgICAjIHggY29tcG9uZW50IG9mIHRo
ZSBzcGluCisgICBwcmludCBhZFsiU3ViaGFsbyIsICJTdWJoYWxvU3Bpbl8wIl0KKworT1dMUyBG
T0YvU1VCRklORAorXl5eXl5eXl5eXl5eXl5eXgorCitPV0xTIGhhbG8gY2F0YWxvZ3MgaGF2ZSBh
IHZlcnkgc2ltaWxhciBzdHJ1Y3R1cmUgdG8gcmVndWxhciBHYWRnZXQgaGFsbyBjYT0KdGFsb2dz
LiA9MjAKK1RoZSB0d28gZmllbGQgdHlwZXMgYXJlICJGT0YiIGFuZCAiU1VCRklORCIuCisKKy4u
IGNvZGUtYmxvY2s6OiBweXRob24KKworICAgaW1wb3J0IHl0CisgICBkcyA9M0QgeXQubG9hZCgi
b3dsc19mb2ZfaGFsb3MvZ3JvdXBzXzAwOC9ncm91cF8wMDguMC5oZGY1IikKKyAgIGFkID0zRCBk
cy5hbGxfZGF0YSgpCisgICAjIFRoZSBoYWxvIG1hc3MKKyAgIHByaW50IGFkWyJGT0YiLCAicGFy
dGljbGVfbWFzcyJdCisKK1JvY2tzdGFyCiteXl5eXl5eXgorCitSb2Nrc3RhciBoYWxvIGNhdGFs
b2dzIGFyZSBsb2FkZWQgYnkgcHJvdmlkaW5nIHRoZSBwYXRoIHRvIG9uZSBvZiB0aGUgLmJpbj0K
IGZpbGVzLgorVGhlIHNpbmdsZSBmaWVsZCB0eXBlIGF2YWlsYWJsZSBpcyAiaGFsb3MiLgorCisu
LiBjb2RlLWJsb2NrOjogcHl0aG9uCisKKyAgIGltcG9ydCB5dAorICAgZHMgPTNEIHl0LmxvYWQo
InJvY2tzdGFyX2hhbG9zL2hhbG9zXzAuMC5iaW4iKQorICAgYWQgPTNEIGRzLmFsbF9kYXRhKCkK
KyAgICMgVGhlIGhhbG8gbWFzcworICAgcHJpbnQgYWRbImhhbG9zIiwgInBhcnRpY2xlX21hc3Mi
XQorCiBQeU5FIERhdGEKIC0tLS0tLS0tLQo9MjAKCmRpZmYgLXIgYTUwZTlkNmNhZWEzZTg4YTEw
YWNjNjhkZGUyYWM4MTI4YTRjNmFiZiAtciAwNGM5ZWI0MDQzNjI4MjExM2ZiMjI5Yz0KNzdiZjFh
YjE4N2MwMzJjNTAgZG9jL3NvdXJjZS9yZWZlcmVuY2UvY2hhbmdlbG9nLnJzdAotLS0gYS9kb2Mv
c291cmNlL3JlZmVyZW5jZS9jaGFuZ2Vsb2cucnN0CisrKyBiL2RvYy9zb3VyY2UvcmVmZXJlbmNl
L2NoYW5nZWxvZy5yc3QKQEAgLTExLDYgKzExLDEyNCBAQAogVGhlIGBDUkVESVRTIGZpbGUgPGh0
dHA6Ly9iaXRidWNrZXQub3JnL3l0X2FuYWx5c2lzL3l0L3NyYy95dC9DUkVESVRTPmBfIGM9Cm9u
dGFpbnMgdGhlCiBtb3N0IHVwLXRvLWRhdGUgbGlzdCBvZiBldmVyeW9uZSB3aG8gaGFzIGNvbnRy
aWJ1dGVkIHRvIHRoZSB5dCBzb3VyY2UgY29kZS4KPTIwCitWZXJzaW9uIDMuMgorLS0tLS0tLS0t
LS0KKworTWFqb3IgZW5oYW5jZW1lbnRzCiteXl5eXl5eXl5eXl5eXl5eXl4KKworKiBQYXJ0aWNs
ZS1Pbmx5IFBsb3RzIC0gYSBzZXJpZXMgb2YgbmV3IHBsb3R0aW5nIGZ1bmN0aW9ucyBmb3Igdmlz
dWFsaXppbmc9MjAKKyAgcGFydGljbGUgZGF0YS4gIFNlZSBoZXJlIGZvciBtb3JlIGluZm9ybWF0
aW9uLgorKiBMYXRlLXN0YWdlIGJldGEgc3VwcG9ydCBmb3IgUHl0aG9uIDMgLSB1bml0IHRlc3Rz
IGFuZCBhbnN3ZXIgdGVzdHMgcGFzcyA9CmZvcj0yMAorICBhbGwgdGhlIG1ham9yIGZyb250ZW5k
cyB1bmRlciBweXRob24gMy40LCBhbmQgeXQgc2hvdWxkIG5vdyBiZSBtb3N0bHkgaWY9CiBub3Q9
MjAKKyAgZnVsbHkgdXNhYmxlLiAgQmVjYXVzZSBtYW55IG9mIHRoZSB5dCBkZXZlbG9wZXJzIGFy
ZSBzdGlsbCBvbiBQeXRob24gMiBhPQp0PTIwCisgIHRoaXMgcG9pbnQsIHRoaXMgc2hvdWxkIGJl
IGNvbnNpZGVyZWQgYSA9RTI9ODA9OUNsYXRlIHN0YWdlIGJldGE9RTI9ODA9Cj05RCBhcyB0aGVy
ZSBtYXkgYmU9MjAKKyAgcmVtYWluaW5nIGlzc3VlcyB5ZXQgdG8gYmUgaWRlbnRpZmllZCBvciB3
b3JrZWQgb3V0LgorKiBOb3cgc3VwcG9ydGluZyBHYWRnZXQgRnJpZW5kLW9mLUZyaWVuZHMvU3Vi
ZmluZCBjYXRhbG9ncyAtIHNlZSBoZXJlIHRvIGw9CmVhcm49MjAKKyAgaG93IHRvIGxvYWQgaGFs
byBjYXRhbG9ncyBhcyByZWd1bGFyIHl0IGRhdGFzZXRzLgorKiBDdXN0b20gY29sb3JtYXBzIGNh
biBub3cgYmUgZWFzaWx5IGRlZmluZWQgYW5kIGFkZGVkIC0gc2VlIGhlcmUgdG8gbGVhcm49CiBo
b3chCisqIE5vdyBzdXBwb3J0aW5nIEZhcmdvM0QgZGF0YQorKiBQZXJmb3JtYW5jZSBpbXByb3Zl
bWVudHMgdGhyb3VnaG91dCB0aGUgY29kZSBiYXNlIGZvciBtZW1vcnkgYW5kIHNwZWVkCisKK01p
bm9yIGVuaGFuY2VtZW50cworXl5eXl5eXl5eXl5eXl5eXl5eCisKKyogVmFyaW91cyB1cGRhdGVz
IHRvIHRoZSBmb2xsb3dpbmcgZnJvbnRlbmRzOiBBUlQsIEF0aGVuYSwgQ2FzdHJvLCBDaG9tYm8s
PTIwCisgIEdhZGdldCwgR0RGLCBNYWVzdHJvLCBQbHV0bywgUkFNU0VTLCBSb2Nrc3RhciwgU0RG
LCBUaXBzeQorKiBOdW1lcm91cyBkb2N1bWVudGF0aW9uIHVwZGF0ZXMKKyogR2VuZXJpYyBoZXhh
aGVkcmFsIG1lc2ggcGl4ZWxpemVyCisqIEFkZGluZyBhbm5vdGF0ZV9yYXkoKSBjYWxsYmFjayBm
b3IgcGxvdHMKKyogQWJzb3JwdGlvblNwZWN0cnVtIHJldHVybmVkIHRvIGZ1bGwgZnVuY3Rpb25h
bGl0eSBhbmQgbm93IHVzaW5nIGZhc3RlciBTPQpjaVB5PTIwCisgIFZvaWd0IHByb2ZpbGUKKyog
QWRkIGEgY29sb3JfZmllbGQgYXJndW1lbnQgdG8gYW5ub3RhdGVfc3RyZWFtbGluZQorKiBTbW9v
dGhpbmcgbGVuZ3RocyBhdXRvLWNhbGN1bGF0ZWQgZm9yIFRpcHN5IERhdGFzZXRzCisqIEFkZGlu
ZyBTaW11bGF0aW9uVGltZVNlcmllcyBzdXBwb3J0IGZvciBHYWRnZXQgYW5kIE9XTFMuCisqIEdl
bmVyYWxpemluZyBkZXJpdmVkIHF1YW50aXR5IG91dHB1dHMgdG8gYWxsIGJlIFlUQXJyYXlzIG9y
IGxpc3RzIG9mPTIwCisgIFlUQXJyYXlzIGFzIGFwcHJvcHJpYXRlCisqIFN0YXIgYW5hbHlzaXMg
cmV0dXJuZWQgdG8gZnVsbCBmdW5jdGlvbmFsaXR5CisqIEZJVFMgaW1hZ2Ugd3JpdGluZyByZWZh
Y3RvcgorKiBBZGRpbmcgZ3JhZGllbnQgZmllbGRzIG9uIHRoZSBmbHkKKyogQWRkaW5nIHN1cHBv
cnQgZm9yIEdhZGdldCBOeDQgbWV0YWxsaWNpdHkgZmllbGRzCisqIFVwZGF0aW5nIHZhbHVlIG9m
IHNvbGFyIG1ldGFsIG1hc3MgZnJhY3Rpb24gdG8gYmUgY29uc2lzdGVudCB3aXRoIENsb3VkeS4K
KyogR2FkZ2V0IHJhdyBiaW5hcnkgc25hcHNob3QgaGFuZGxpbmcgJiBub24tY29zbW9sb2dpY2Fs
IHNpbXVsYXRpb24gdW5pdHMKKyogQWRkaW5nIHN1cHBvcnQgZm9yIExpZ2h0UmF5IGNsYXNzIHRv
IHdvcmsgd2l0aCBHYWRnZXQrVGlwc3kKKyogQWRkIHN1cHBvcnQgZm9yIHN1YmNsYXNzZXMgb2Yg
ZnJvbnRlbmRzCisqIERlcGVuZGVuY2llcyB1cGRhdGVkCisqIFNlcmlhbGl6YXRpb24gZm9yIHBy
b2plY3Rpb25zIHVzaW5nIG1pbmltYWwgcmVwcmVzZW50YXRpb24KKyogQWRkaW5nIEdyaWQgdmlz
aXRvcnMgaW4gQ3l0aG9uCisqIEltcHJvdmVkIHNlbWFudGljcyBmb3IgZGVyaXZlZCBmaWVsZCB1
bml0cworKiBBZGQgYSB5YXcoKSBtZXRob2QgZm9yIHRoZSBQZXJzcGVjdGl2ZUNhbWVyYSArIHN3
aXRjaCBiYWNrIHRvIExIUworKiBBZGRpbmcgYW5ub3RhdGVfY2xlYXIoKSBmdW5jdGlvbiB0byBy
ZW1vdmUgcHJldmlvdXMgY2FsbGJhY2tzIGZyb20gYSBwbG90CisqIEFkZGVkIGRvY3VtZW50YXRp
b24gZm9yIGhleGFoZWRyYWwgbWVzaCBvbiB3ZWJzaXRlCisqIFNwZWVkIHVwIG5lYXJlc3QgbmVp
Z2hib3IgZXZhbHVhdGlvbgorKiBBZGQgYSBjb252ZW5pZW5jZSBtZXRob2QgdG8gY3JlYXRlIGRl
cG9zaXRlZCBwYXJ0aWNsZSBmaWVsZHMKKyogVUkgYW5kIGRvY3MgdXBkYXRlcyBmb3IgM0Qgc3Ry
ZWFtbGluZXMKKyogRW5zdXJlIHBhcnRpY2xlIGZpZWxkcyBhcmUgdGVzdGVkIGluIHRoZSBmaWVs
ZCB1bml0IHRlc3RzCisqIEFsbG93IGEgc3VmZml4IHRvIGJlIHNwZWNpZmllZCB0byBzYXZlKCkK
KyogQWRkIHByb2ZpbGluZyB1c2luZyBhaXJzcGVlZCB2ZWxvY2l0eQorKiBWYXJpb3VzIHBsb3R0
aW5nIGVuaGFuY2VtZW50cyBhbmQgYnVnZml4ZXMKKyogVXNlIGhnbGliIHRvIHVwZGF0ZQorKiBW
YXJpb3VzIG1pbm9yIHVwZGF0ZXMgdG8gaGFsb19hbmFseXNpcyB0b29sa2l0CisqIERvY2tlci1i
YXNlZCB0ZXN0cyBmb3IgaW5zdGFsbF9zY3JpcHQuc2gKKyogQWRkaW5nIHN1cHBvcnQgZm9yIHNp
bmdsZSBhbmQgbm9uLWNvc21vbG9naWNhbCBkYXRhc2V0cyB0byBMaWdodFJheQorKiBBZGRpbmcg
dGhlIFBhc2NhbCB1bml0CisqIEFkZCB3ZWlnaHRfZmllbGQgdG8gUFBWQ3ViZQorKiBGSVRTIHJl
YWRlcjogYWxsb3cgSERVIGluIGF1eGlsaWFyeQorKiBGaXhpbmcgZWxlY3Ryb21hZ25ldGljIHVu
aXRzCisqIFNwZWNpZmljIEFuZ3VsYXIgTW9tZW50dW0gW3h5el0gY29tcHV0ZWQgcmVsYXRpdmUg
dG8gYSBub3JtYWwgdmVjdG9yCisKK0J1Z2ZpeGVzCiteXl5eXl5eXgorCisqIEFkZGluZyBhYmls
aXR5IHRvIGNyZWF0ZSB1bmlvbiBmaWVsZHMgZnJvbSBhbGlhcyBmaWVsZHMKKyogU21hbGwgZml4
IHRvIGFsbG93IGVuem8gQVAgZGF0YXNldHMgdG8gbG9hZCBpbiBwYXJhbGxlbCB3aGVuIG5vIEFQ
cyBwcmVzPQplbnQKKyogVXNlIHByb3BlciBjZWxsIGRpbWVuc2lvbiBpbiBncmFkaWVudCBmdW5j
dGlvbi4KKyogTWlub3IgbWVtb3J5IG9wdGltaXphdGlvbiBmb3Igc21vb3RoZWQgcGFydGljbGUg
ZmllbGRzCisqIEZpeCB0aGVybWFsX2VuZXJneSBmb3IgRW56byBIeWRyb01ldGhvZD0zRD0zRDYK
KyogTWFrZSBzdXJlIGFubm90YXRlX3BhcnRpY2xlcyBoYW5kbGVzIHVuaXRmdWwgd2lkdGhzIHBy
b3Blcmx5CisqIEltcHJvdmVtZW50cyBmb3IgYWRkX3BhcnRpY2xlX2ZpbHRlciBhbmQgcGFydGlj
bGVfZmlsdGVyCisqIFNwZWNpZnkgcmVnaXN0cnkgaW4gb2ZmX2F4aXNfcHJvamVjdGlvbidzIGlt
YWdlIGZpbmFsaXphdGlvbgorKiBBcHBseSBmaXggZm9yIHBhcnRpY2xlIG1vbWVudHVtIHVuaXRz
IHRvIHRoZSBib3hsaWIgZnJvbnRlbmQKKyogQXZvaWQgdHJhY2ViYWNrIGluICJ5dCB2ZXJzaW9u
IiB3aGVuIHB5dGhvbi1oZ2xpYiBpcyBub3QgaW5zdGFsbGVkCisqIEV4cG9zZSBub19naG9zdCBm
cm9tIGV4cG9ydF9za2V0Y2hmYWIgZG93biB0byBfZXh0cmFjdF9pc29jb250b3Vyc19mcm9tXz0K
Z3JpZAorKiBGaXggYnJva2VuIG1hZ25ldGljX3VuaXQgYXR0cmlidXRlCisqIEZpeGluZyBhbiBv
ZmYtYnktb25lIGVycm9yIGluIHRoZSBzZXQgeC95IGxpbSBtZXRob2RzIGZvciBwcm9maWxlIHBs
b3RzCisqIFByb3ZpZGluZyBiZXR0ZXIgZXJyb3IgbWVzc2FnZXMgdG8gUGxvdFdpbmRvdyBjYWxs
YmFja3MKKyogVXBkYXRpbmcgYW5ub3RhdGVfdGltZXN0YW1wIHRvIGF2b2lkIGF1dG8tb3ZlcnJp
ZGUKKyogVXBkYXRpbmcgY2FsbGJhY2tzIHRvIGNvbnNpc3RlbnRseSBkZWZpbmUgY29vcmRpbmF0
ZSBzeXN0ZW0KKyogRml4aW5nIHNwZWNpZXMgZmllbGRzIGZvciBPV0xTIGFuZCB0aXBzeQorKiBG
aXggZXh0cmFwb2xhdGlvbiBmb3IgdmVydGV4LWNlbnRlcmVkIGRhdGEKKyogRml4IHBlcmlvZGlj
aXR5IGNoZWNrIGluIEZSQnMKKyogUmV3cm90ZSBwcm9qZWN0X3RvX3BsYW5lKCkgaW4gUGVyc3Bl
Y3RpdmVDYW1lcmEgZm9yIGRyYXdfZG9tYWluKCkKKyogRml4IGludGVybWl0dGVudCBmYWlsdXJl
IGluIHRlc3RfYWRkX2RlcG9zaXRlZF9wYXJ0aWNsZV9maWVsZAorKiBJbXByb3ZlIG1pbm9ydGlj
a3MgZm9yIGEgc3ltbG9nIHBsb3Qgd2l0aCBvbmUtc2lkZWQgZGF0YQorKiBGaXggc21vb3RoZWQg
Y292ZXJpbmcgZ3JpZCBjZWxsIGNvbXB1dGF0aW9uCisqIEFic29ycHRpb24gc3BlY3RydW0gZ2Vu
ZXJhdG9yIG5vdyAzLjAgY29tcGxpYW50CisqIEZpeCBvZmYtYnktb25lLW9yLW1vcmUgaW4gcGFy
dGljbGUgc21hbGxlc3QgZHgKKyogRml4IGRpbWVuc2lvbmFsaXR5IG1pc21hdGNoIGVycm9yIGlu
IGNvdmVyaW5nIGdyaWQKKyogRml4IGN1cnZhdHVyZSB0ZXJtIGluIGNvc21vbG9neSBjYWxjdWxh
dG9yCisqIEZpeCBnZW9ncmFwaGljIGF4ZXMgYW5kIHBpeGVsaXphdGlvbgorKiBFbnN1cmUgYXhl
cyBhc3BlY3QgcmF0aW9zIHJlc3BlY3QgdGhlIHVzZXItc2VsZWN0ZWQgcGxvdCBhc3BlY3QgcmF0
aW8KKyogQXZvaWQgY2xvYmJlcmluZyBmaWVsZF9tYXAgd2hlbiBjYWxsaW5nIHByb2ZpbGUuYWRk
X2ZpZWxkcworKiBGaXhpbmcgdGhlIGFyYml0cmFyeSBncmlkIGRlcG9zaXQgY29kZQorKiBGaXgg
c3BoZXJpY2FsIHBsb3R0aW5nIGNlbnRlcmluZworKiBNYWtlIHRoZSBiZWhhdmlvciBvZiB0b19m
cmIgY29uc2lzdGVudCB3aXRoIHRoZSBkb2NzdHJpbmcKKyogRW5zdXJlIHByb2plY3RlZCB1bml0
cyBhcmUgaW5pdGlhbGl6ZWQgd2hlbiB0aGVyZSBhcmUgbm8gY2h1bmtzLgorKiBSZW1vdmluZyAi
ZmllbGQgYWxyZWFkeSBleGlzdHMiIHdhcm5pbmdzIGZyb20gdGhlIE93bHMgYW5kIEdhZGdldCBm
cm9udGU9Cm5kcworKiBWYXJpb3VzIHBob3RvbiBzaW11bGF0b3IgYnVncworKiBGaXhlZCB1c2Ug
b2YgTGFUZVggbWF0aCBtb2RlCisqIEZpeCB1cGxvYWRfaW1hZ2UKKyogRW5mb3JjZSBwbG90IHdp
ZHRoIGluIENTUyB3aGVuIGRpc3BsYXllZCBpbiBhIG5vdGVib29rCisqIEZpeCBjU3RyaW5nSU8u
U3RyaW5nSU8gLT4gY1N0cmluZ0lPIGluIHBuZ193cml0ZXIKKyogQWRkIHNvbWUgaW5wdXQgc2Fu
aXRpemluZyBhbmQgZXJyb3IgY2hlY2tpbmcgdG8gY292ZXJpbmdfZ3JpZCBpbml0aWFsaXplcgor
KiBGaXggZm9yIGdlb2dyYXBoaWMgcGxvdHRpbmcKKyogVXNlIHRoZSBjb3JyZWN0IGZpbGVuYW1l
IHRlbXBsYXRlIGZvciBzaW5nbGUtZmlsZSBPV0xTIGRhdGFzZXRzLgorKiBGaXggRW56byBJTyBw
ZXJmb3JtYW5jZSBmb3IgMzIgYml0IGRhdGFzZXRzCisqIEFkZGluZyBhIG51bWJlciBkZW5zaXR5
IGZpZWxkIGZvciBFbnpvIE11bHRpU3BlY2llcz0zRDAgZGF0YXNldHMuCisqIEZpeCBSQU1TRVMg
YmxvY2sgb3JkZXJpbmcKKyogVXBkYXRpbmcgcmFnZ2VkIGFycmF5IHRlc3RzIGZvciBOdW1QeSAx
LjkuMQorKiBGb3JjZSByZXR1cm5pbmcgbGlzdHMgZm9yIEhERjVGaWxlSGFuZGxlcgorCiBWZXJz
aW9uIDMuMQogLS0tLS0tLS0tLS0KPTIwCkBAIC0xOSw3ICsxMzcsNyBAQAo9MjAKPTIwCiBNYWpv
ciBjaGFuZ2VzOgotKysrKysrKysrKysrKysKK15eXl5eXl5eXl5eXl5eCj0yMAogKiBUaGUgUkFE
TUMtM0QgZXhwb3J0IGFuYWx5c2lzIG1vZHVsZSBoYXMgYmVlbiB1cGRhdGVkLiBgUFIgMTM1OCA8
aHR0cHM6Ly89CmJpdGJ1Y2tldC5vcmcveXRfYW5hbHlzaXMveXQvcHVsbC1yZXF1ZXN0LzEzNTg+
YF8sIGBQUiAxMzMyIDxodHRwczovL2JpdGJ1Yz0Ka2V0Lm9yZy95dF9hbmFseXNpcy95dC9wdWxs
LXJlcXVlc3QvMTMzMj5gXy4KPTIwCkBAIC00MSw3ICsxNTksNyBAQAogKiBUaGUgZG9jdW1lbnRh
dGlvbiBoYXMgYmVlbiByZW9yZ2FuaXplZCBhbmQgaGFzIHNlZW4gc3Vic3RhbnRpYWwgaW1wcm92
ZW09CmVudHMuIGBQUiAxMzgzIDxodHRwczovL2JpdGJ1Y2tldC5vcmcveXRfYW5hbHlzaXMveXQv
cHVsbC1yZXF1ZXN0LzEzODM+YF8sID0KYFBSIDEzNzMgPGh0dHBzOi8vYml0YnVja2V0Lm9yZy95
dF9hbmFseXNpcy95dC9wdWxsLXJlcXVlc3QvMTM3Mz5gXywgYFBSIDEzPQo2NCA8aHR0cHM6Ly9i
aXRidWNrZXQub3JnL3l0X2FuYWx5c2lzL3l0L3B1bGwtcmVxdWVzdC8xMzY0PmBfLCBgUFIgMTM1
MSA8aHQ9CnRwczovL2JpdGJ1Y2tldC5vcmcveXRfYW5hbHlzaXMveXQvcHVsbC1yZXF1ZXN0LzEz
NTE+YF8sIGBQUiAxMzQ1IDxodHRwczovLz0KYml0YnVja2V0Lm9yZy95dF9hbmFseXNpcy95dC9w
dWxsLXJlcXVlc3QvMTM0NT5gXy4gYFBSIDEzMzMgPGh0dHBzOi8vYml0YnVjPQprZXQub3JnL3l0
X2FuYWx5c2lzL3l0L3B1bGwtcmVxdWVzdC8xMzMzPmBfLCBgUFIgMTM0MiA8aHR0cHM6Ly9iaXRi
dWNrZXQub3I9CmcveXRfYW5hbHlzaXMveXQvcHVsbC1yZXF1ZXN0LzEzNDI+YF8sIGBQUiAxMzM4
IDxodHRwczovL2JpdGJ1Y2tldC5vcmcveXRfYT0KbmFseXNpcy95dC9wdWxsLXJlcXVlc3QvMTMz
OD5gXywgYFBSIDEzMzAgPGh0dHBzOi8vYml0YnVja2V0Lm9yZy95dF9hbmFseXNpPQpzL3l0L3B1
bGwtcmVxdWVzdC8xMzMwPmBfLCBgUFIgMTMyNiA8aHR0cHM6Ly9iaXRidWNrZXQub3JnL3l0X2Fu
YWx5c2lzL3l0L3A9CnVsbC1yZXF1ZXN0LzEzMjY+YF8sIGBQUiAxMzIzIDxodHRwczovL2JpdGJ1
Y2tldC5vcmcveXRfYW5hbHlzaXMveXQvcHVsbC1yZT0KcXVlc3QvMTMyMz5gXywgYFBSIDEzMTUg
PGh0dHBzOi8vYml0YnVja2V0Lm9yZy95dF9hbmFseXNpcy95dC9wdWxsLXJlcXVlc3QvPQoxMzE1
PmBfLCBgUFIgMTMwNSA8aHR0cHM6Ly9iaXRidWNrZXQub3JnL3l0X2FuYWx5c2lzL3l0L3B1bGwt
cmVxdWVzdC8xMzA1PmA9Cl8sIGBQUiAxMjg5IDxodHRwczovL2JpdGJ1Y2tldC5vcmcveXRfYW5h
bHlzaXMveXQvcHVsbC1yZXF1ZXN0LzEyODk+YF8sIGBQUj0KIDEyNzYgPGh0dHBzOi8vYml0YnVj
a2V0Lm9yZy95dF9hbmFseXNpcy95dC9wdWxsLXJlcXVlc3QvMTI3Nj5gXy4KPTIwCiBNaW5vciBv
ciBidWdmaXggY2hhbmdlczoKLSsrKysrKysrKysrKysrKysrKysrKysrKworXl5eXl5eXl5eXl5e
Xl5eXl5eXl5eXl5eCj0yMAogKiBUaGUgQW1wZXJlIHVuaXQgbm93IGFjY2VwdHMgU0kgcHJlZml4
ZXMuICBgUFIgMTM5MyA8aHR0cHM6Ly9iaXRidWNrZXQub3I9CmcveXRfYW5hbHlzaXMveXQvcHVs
bC1yZXF1ZXN0LzEzOTM+YF8uCj0yMApAQCAtMTU2LDYgKzI3NCw3IEBACiByZXByZXNlbnRhdGlv
biBvZiB1bnN0cnVjdHVyZWQgbWVzaCBkYXRhc2V0cy4KPTIwCiBIaWdobGlnaHRlZCBjaGFuZ2Vz
IGluIHl0IDMuMDoKK15eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgo9MjAKICAqIFVuaXRz
IG5vdyBwZXJtZWF0ZSB0aGUgY29kZSBiYXNlLCBlbmFibGluZyBzZWxmLWNvbnNpc3RlbnQgdW5p
dAogICAgdHJhbnNmb3JtYXRpb25zIG9mIGFsbCBhcnJheXMgYW5kIHF1YW50aXRpZXMgcmV0dXJu
ZWQgYnkgeXQuCkBAIC0yMDQsNiArMzIzLDcgQEAKIHNlcmllcy4gIEJlbG93IGFyZSB0aGUgaXRl
bWl6ZWQsIGFnZ3JlZ2F0ZSBjaGFuZ2VzIHNpbmNlIHZlcnNpb24gMi41Lgo9MjAKIE1ham9yIGNo
YW5nZXM6CiteXl5eXl5eXl5eXl5eXgo9MjAKICAgKiB5dCBpcyBub3cgbGljZW5zZWQgdW5kZXIg
dGhlIDMtY2xhdXNlIEJTRCBsaWNlbnNlLgogICAqIEhFQUxQaXggaGFzIGJlZW4gcmVtb3ZlZCBm
b3IgdGhlIHRpbWUgYmVpbmcsIGFzIGEgcmVzdWx0IG9mIGxpY2Vuc2luZwpAQCAtMjI3LDYgKzM0
Nyw3IEBACiAgICogUHJvamVjdGlvblBsb3Qgbm93IGFjY2VwdHMgYSBkYXRhX3NvdXJjZSBrZXl3
b3JkIGFyZ3VtZW50Cj0yMAogTWlub3Igb3IgYnVnZml4IGNoYW5nZXM6CiteXl5eXl5eXl5eXl5e
Xl5eXl5eXl5eXl4KPTIwCiAgICogRml4IGZvciB2b2x1bWUgcmVuZGVyaW5nIG9uIHRoZSBjb21t
YW5kIGxpbmUKICAgKiBtYXBfdG9fY29sb3JtYXAgd2lsbCBubyBsb25nZXIgcmV0dXJuIG91dC1v
Zi1ib3VuZHMgZXJyb3JzCkBAIC0zMDcsNyArNDI4LDcgQEAKIG1lcmdlZCB3aXRoIHRoZSBJUHl0
aG9uIG5vdGVib29rIGluIGEgZnV0dXJlIHJlbGVhc2UuCj0yMAogSW5zdGFsbCBTY3JpcHQgQ2hh
bmdlczoKLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiteXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgo9
MjAKICAqIFNjaVB5IGNhbiBub3cgYmUgaW5zdGFsbGVkCiAgKiBSb2Nrc3RhciBjYW4gbm93IGJl
IGluc3RhbGxlZApAQCAtMzI2LDcgKzQ0Nyw3IEBACiBXZSd2ZSBhbHNvIGltcHJvdmVkIHN1cHBv
cnQgZm9yIGluc3RhbGxpbmcgb24gT1NYLCBVYnVudHUgYW5kIE9wZW5TVVNFLgo9MjAKIE1vc3Qg
VmlzaWJsZSBJbXByb3ZlbWVudHMKLX5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KK15eXl5eXl5e
Xl5eXl5eXl5eXl5eXl5eXl4KPTIwCiAgKiBOZWFybHkgMjAwIHB1bGwgcmVxdWVzdHMgYW5kIG92
ZXIgMTAwMCBjaGFuZ2VzZXRzIGhhdmUgYmVlbiBtZXJnZWQgc2luYz0KZSB5dAogICAgMi40IHdh
cyByZWxlYXNlIG9uIEF1Z3VzdCAybmQsIDIwMTIuCkBAIC00MDksNyArNTMwLDcgQEAKIGBkb3du
bG9hZCBpdCBoZXJlIDxodHRwOi8veXQtcHJvamVjdC5vcmcvZmlsZXMveXQyNC5pcHluYj5gXy4K
PTIwCiBNb3N0IFZpc2libGUgSW1wcm92ZW1lbnRzCi1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+
CiteXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCj0yMAogICogVGhyZWFkZWQgdm9sdW1lIHJlbmRl
cmVyLCBjb21wbGV0ZWx5IHJlZmFjdG9yZWQgZnJvbSB0aGUgZ3JvdW5kIHVwIGZvcgogICAgc3Bl
ZWQgYW5kIHBhcmFsbGVsaXNtLgpAQCAtNDMyLDcgKzU1Myw3IEBACiAgICBwbG90IGNvbGxlY3Rp
b25zIHJpZ2h0IGZyb20gdGhlIHl0IGNvbW1hbmQgbGluZSEKPTIwCiBPdGhlciBDaGFuZ2VzCi1+
fn5+fn5+fn5+fn5+CiteXl5eXl5eXl5eXl5eCj0yMAogICogOmNsYXNzOmB+eXQudmlzdWFsaXph
dGlvbi5wbG90X3dpbmRvdy5Qcm9qZWN0aW9uUGxvdGAgYW5kPTIwCiAgICA6Y2xhc3M6YH55dC52
aXN1YWxpemF0aW9uLnBsb3Rfd2luZG93LlNsaWNlUGxvdGAgc3VwcGxhbnQgdGhlIGZ1bmN0aW9u
YT0KbGl0eQoKZGlmZiAtciBhNTBlOWQ2Y2FlYTNlODhhMTBhY2M2OGRkZTJhYzgxMjhhNGM2YWJm
IC1yIDA0YzllYjQwNDM2MjgyMTEzZmIyMjljPQo3N2JmMWFiMTg3YzAzMmM1MCBkb2Mvc291cmNl
L3Zpc3VhbGl6aW5nL2NvbG9ybWFwcy9pbmRleC5yc3QKLS0tIGEvZG9jL3NvdXJjZS92aXN1YWxp
emluZy9jb2xvcm1hcHMvaW5kZXgucnN0CisrKyBiL2RvYy9zb3VyY2UvdmlzdWFsaXppbmcvY29s
b3JtYXBzL2luZGV4LnJzdApAQCAtOCw3ICs4LDcgQEAKIHZpc3VhbGl6YXRpb24gZnVuY3Rpb25z
IHVzdWFsbHkgYWxsb3cgeW91IHRvIHNwZWNpZnkgYSBjb2xvcm1hcCB3aXRoIHRoZT0yMAogYGBj
bWFwYGAgZmxhZy4KPTIwCi0uLiBfcGFsZXR0YWJsZToKKy4uIF9pbnN0YWxsLXBhbGV0dGFibGU6
Cj0yMAogUGFsZXR0YWJsZSBhbmQgQ29sb3JCcmV3ZXIyPTIwCiB+fn5+fn5+fn5+fn5+fn5+fn5+
fn5+fn5+fn4KCmRpZmYgLXIgYTUwZTlkNmNhZWEzZTg4YTEwYWNjNjhkZGUyYWM4MTI4YTRjNmFi
ZiAtciAwNGM5ZWI0MDQzNjI4MjExM2ZiMjI5Yz0KNzdiZjFhYjE4N2MwMzJjNTAgZG9jL3NvdXJj
ZS92aXN1YWxpemluZy9wbG90cy5yc3QKLS0tIGEvZG9jL3NvdXJjZS92aXN1YWxpemluZy9wbG90
cy5yc3QKKysrIGIvZG9jL3NvdXJjZS92aXN1YWxpemluZy9wbG90cy5yc3QKQEAgLTEyMjQsMTgg
KzEyMjQsMTggQEAKICAgIGRzID0zRCB5dC5sb2FkKCJHYXNTbG9zaGluZy9zbG9zaGluZ19ub21h
ZzJfaGRmNV9wbHRfY250XzAxMDAiKQogICAgc2xjID0zRCB5dC5TbGljZVBsb3QoZHMsICJ6Iiwg
WyJrVCIsImRlbnNpdHkiXSwgd2lkdGg9M0QoNTAwLjAsImtwYyIpKQogICAgc2xjLnNhdmUoKQot
ICA9MjAKKwogd2hpY2ggd2lsbCB5aWVsZCBQTkcgcGxvdHMgd2l0aCB0aGUgZmlsZW5hbWVzCj0y
MAogLi4gY29kZS1ibG9jazo6IGJhc2gKPTIwCi0gICAkIGxzICoucG5nCisgICAkIGxzIFwqLnBu
ZwogICAgc2xvc2hpbmdfbm9tYWcyX2hkZjVfcGx0X2NudF8wMTAwX1NsaWNlX3pfZGVuc2l0eS5w
bmcKICAgIHNsb3NoaW5nX25vbWFnMl9oZGY1X3BsdF9jbnRfMDEwMF9TbGljZV96X2tULnBuZwo9
MjAKIHdoaWNoIGhhcyBhIGdlbmVyYWwgZm9ybSBvZgo9MjAKLS4uIGNvZGUtYmxvY2s6OgorLi4g
Y29kZS1ibG9jazo6IGJhc2gKID0yMAogICAgW2RhdGFzZXQgbmFtZV1fW3Bsb3QgdHlwZV1fW2F4
aXNdX1tmaWVsZCBuYW1lXS5bc3VmZml4XQogICA9MjAKQEAgLTEyNTYsNyArMTI1Niw3IEBACj0y
MAogLi4gY29kZS1ibG9jazo6IGJhc2gKPTIwCi0gICAkIGxzICoucG5nCisgICAkIGxzIFwqLnBu
ZwogICAgYmFuYW5hc19TbGljZV96X2tULnBuZwogICAgYmFuYW5hc19TbGljZV96X2RlbnNpdHku
cG5nCj0yMAoKZGlmZiAtciBhNTBlOWQ2Y2FlYTNlODhhMTBhY2M2OGRkZTJhYzgxMjhhNGM2YWJm
IC1yIDA0YzllYjQwNDM2MjgyMTEzZmIyMjljPQo3N2JmMWFiMTg3YzAzMmM1MCBzZXR1cC5weQot
LS0gYS9zZXR1cC5weQorKysgYi9zZXR1cC5weQpAQCAtMTE0LDcgKzExNCw3IEBACiAjIEVuZCBz
bmlwcGV0CiAjIyMjIyMKPTIwCi1WRVJTSU9OID0zRCAiMy4yZGV2IgorVkVSU0lPTiA9M0QgIjMu
My1kZXYiCj0yMAogaWYgb3MucGF0aC5leGlzdHMoJ01BTklGRVNUJyk6CiAgICAgb3MucmVtb3Zl
KCdNQU5JRkVTVCcpCgpkaWZmIC1yIGE1MGU5ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFjODEyOGE0
YzZhYmYgLXIgMDRjOWViNDA0MzYyODIxMTNmYjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUwIHl0L19f
aW5pdF9fLnB5Ci0tLSBhL3l0L19faW5pdF9fLnB5CisrKyBiL3l0L19faW5pdF9fLnB5CkBAIC03
Miw3ICs3Miw3IEBACiAjIFRoZSBmdWxsIGxpY2Vuc2UgaXMgaW4gdGhlIGZpbGUgQ09QWUlORy50
eHQsIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb2Z0dz0KYXJlLgogIy0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS09
Ci0tLS0KPTIwCi1fX3ZlcnNpb25fXyA9M0QgIjMuMi1kZXYiCitfX3ZlcnNpb25fXyA9M0QgIjMu
My1kZXYiCj0yMAogIyBGaXJzdCBtb2R1bGUgaW1wb3J0cwogaW1wb3J0IG51bXB5IGFzIG5wICMg
Rm9yIG1vZGVybiBwdXJwb3NlcwoKZGlmZiAtciBhNTBlOWQ2Y2FlYTNlODhhMTBhY2M2OGRkZTJh
YzgxMjhhNGM2YWJmIC1yIDA0YzllYjQwNDM2MjgyMTEzZmIyMjljPQo3N2JmMWFiMTg3YzAzMmM1
MCB5dC9hbmFseXNpc19tb2R1bGVzL2Fic29ycHRpb25fc3BlY3RydW0vYWJzb3JwdGlvbl9zcGVj
dHI9CnVtX2ZpdC5weQotLS0gYS95dC9hbmFseXNpc19tb2R1bGVzL2Fic29ycHRpb25fc3BlY3Ry
dW0vYWJzb3JwdGlvbl9zcGVjdHJ1bV9maXQucHkKKysrIGIveXQvYW5hbHlzaXNfbW9kdWxlcy9h
YnNvcnB0aW9uX3NwZWN0cnVtL2Fic29ycHRpb25fc3BlY3RydW1fZml0LnB5CkBAIC0xMDExLDcg
KzEwMTEsNyBAQAo9MjAKICAgICAiIiIKICAgICBmID0zRCBoNXB5LkZpbGUoZmlsZV9uYW1lLCAn
dycpCi0gICAgZm9yIGlvbiwgcGFyYW1zIGluIGxpbmVEaWMuaXRlcml0ZW1zKCk6CisgICAgZm9y
IGlvbiwgcGFyYW1zIGluIGxpbmVEaWMuaXRlbXMoKToKICAgICAgICAgZi5jcmVhdGVfZGF0YXNl
dCgiezB9L04iLmZvcm1hdChpb24pLGRhdGE9M0RwYXJhbXNbJ04nXSkKICAgICAgICAgZi5jcmVh
dGVfZGF0YXNldCgiezB9L2IiLmZvcm1hdChpb24pLGRhdGE9M0RwYXJhbXNbJ2InXSkKICAgICAg
ICAgZi5jcmVhdGVfZGF0YXNldCgiezB9L3oiLmZvcm1hdChpb24pLGRhdGE9M0RwYXJhbXNbJ3on
XSkKCmRpZmYgLXIgYTUwZTlkNmNhZWEzZTg4YTEwYWNjNjhkZGUyYWM4MTI4YTRjNmFiZiAtciAw
NGM5ZWI0MDQzNjI4MjExM2ZiMjI5Yz0KNzdiZjFhYjE4N2MwMzJjNTAgeXQvYW5hbHlzaXNfbW9k
dWxlcy9jb3Ntb2xvZ2ljYWxfb2JzZXJ2YXRpb24vbGlnaHRfY29uZS9sPQppZ2h0X2NvbmUucHkK
LS0tIGEveXQvYW5hbHlzaXNfbW9kdWxlcy9jb3Ntb2xvZ2ljYWxfb2JzZXJ2YXRpb24vbGlnaHRf
Y29uZS9saWdodF9jb25lLnB5CisrKyBiL3l0L2FuYWx5c2lzX21vZHVsZXMvY29zbW9sb2dpY2Fs
X29ic2VydmF0aW9uL2xpZ2h0X2NvbmUvbGlnaHRfY29uZS5weQpAQCAtMzQzLDcgKzM0Myw3IEBA
CiAgICAgICAgICAgICBkZWwgb3V0cHV0WyJvYmplY3QiXQo9MjAKICAgICAgICAgIyBDb21iaW5l
IHJlc3VsdHMgZnJvbSBlYWNoIHNsaWNlLgotICAgICAgICBhbGxfc2xpY2VzID0zRCBhbGxfc3Rv
cmFnZS5rZXlzKCkKKyAgICAgICAgYWxsX3NsaWNlcyA9M0QgbGlzdChhbGxfc3RvcmFnZS5rZXlz
KCkpCiAgICAgICAgIGFsbF9zbGljZXMuc29ydCgpCiAgICAgICAgIGZvciBteV9zbGljZSBpbiBh
bGxfc2xpY2VzOgogICAgICAgICAgICAgaWYgc2F2ZV9zbGljZV9pbWFnZXM6CgpkaWZmIC1yIGE1
MGU5ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFjODEyOGE0YzZhYmYgLXIgMDRjOWViNDA0MzYyODIx
MTNmYjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUwIHl0L2FuYWx5c2lzX21vZHVsZXMvaGFsb19maW5k
aW5nL2hhbG9fb2JqZWN0cy5weQotLS0gYS95dC9hbmFseXNpc19tb2R1bGVzL2hhbG9fZmluZGlu
Zy9oYWxvX29iamVjdHMucHkKKysrIGIveXQvYW5hbHlzaXNfbW9kdWxlcy9oYWxvX2ZpbmRpbmcv
aGFsb19vYmplY3RzLnB5CkBAIC0yMiw2ICsyMiw3IEBACiBpbXBvcnQgZ2xvYgogaW1wb3J0IG9z
CiBpbXBvcnQgb3MucGF0aCBhcyBwYXRoCitmcm9tIGZ1bmN0b29scyBpbXBvcnQgY21wX3RvX2tl
eQogZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgZGVmYXVsdGRpY3QKIGZyb20geXQuZXh0ZXJuLnNp
eCBpbXBvcnQgYWRkX21ldGFjbGFzcwogZnJvbSB5dC5leHRlcm4uc2l4Lm1vdmVzIGltcG9ydCB6
aXAgYXMgaXppcApAQCAtMzksNyArNDAsNyBAQAogICAgIFRJTlkKIGZyb20geXQudXRpbGl0aWVz
LnBoeXNpY2FsX3JhdGlvcyBpbXBvcnQgXAogICAgICByaG9fY3JpdF9nX2NtM19oMgotICAgPTIw
CisKIGZyb20gLmhvcC5FbnpvSG9wIGltcG9ydCBSdW5IT1AKIGZyb20gLmZvZi5FbnpvRk9GIGlt
cG9ydCBSdW5GT0YKPTIwCkBAIC0xMzgsOSArMTM5LDkgQEAKICAgICAgICAgY1syXSA9M0Qgc2Vs
ZlsicGFydGljbGVfcG9zaXRpb25feiJdIC0gc2VsZi5kcy5kb21haW5fbGVmdF9lZGdlWzJdCiAg
ICAgICAgIGNvbSA9M0QgW10KICAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMyk6Ci0gICAgICAgICAg
ICAjIEEgaGFsbyBpcyBsaWtlbHkgcGVyaW9kaWMgYXJvdW5kIGEgYm91bmRhcnkgaWYgdGhlIGRp
c3RhbmNlPTIwCisgICAgICAgICAgICAjIEEgaGFsbyBpcyBsaWtlbHkgcGVyaW9kaWMgYXJvdW5k
IGEgYm91bmRhcnkgaWYgdGhlIGRpc3RhbmNlCiAgICAgICAgICAgICAjIGJldHdlZW4gdGhlIG1h
eCBhbmQgbWluIHBhcnRpY2xlCi0gICAgICAgICAgICAjIHBvc2l0aW9ucyBhcmUgbGFyZ2VyIHRo
YW4gaGFsZiB0aGUgYm94Lj0yMAorICAgICAgICAgICAgIyBwb3NpdGlvbnMgYXJlIGxhcmdlciB0
aGFuIGhhbGYgdGhlIGJveC4KICAgICAgICAgICAgICMgU28gc2tpcCB0aGUgcmVzdCBpZiB0aGUg
Y29udmVyc2UgaXMgdHJ1ZS4KICAgICAgICAgICAgICMgTm90ZSB3ZSBtaWdodCBtYWtlIGEgY2hh
bmdlIGhlcmUgd2hlbiBwZXJpb2RpY2l0eS1oYW5kbGluZyBpcwogICAgICAgICAgICAgIyBmdWxs
eSBpbXBsZW1lbnRlZC4KQEAgLTQ0NCw3ICs0NDUsNyBAQAogICAgICAgICBNc3VuMmcgPTNEIG1h
c3Nfc3VuX2NncwogICAgICAgICByaG9fY3JpdCA9M0QgcmhvX2NyaXQgKiAoKDEuMCArIHopICoq
IDMuMCkKICAgICAgICAgIyBHZXQgc29tZSBwZXJ0aW5lbnQgaW5mb3JtYXRpb24gYWJvdXQgdGhl
IGhhbG8uCi0gICAgICAgIHNlbGYubWFzc19iaW5zID0zRCBzZWxmLmRzLmFycihucC56ZXJvcyhz
ZWxmLmJpbl9jb3VudCArIDEsPTIwCisgICAgICAgIHNlbGYubWFzc19iaW5zID0zRCBzZWxmLmRz
LmFycihucC56ZXJvcyhzZWxmLmJpbl9jb3VudCArIDEsCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZHR5cGU9M0QnZmxvYXQ2NCcpLCdNc3VuJykKICAgICAg
ICAgZGlzdCA9M0QgbnAuZW1wdHkodGhpc3NpemUsIGR0eXBlPTNEJ2Zsb2F0NjQnKQogICAgICAg
ICBjZW4gPTNEIHNlbGYuY2VudGVyX29mX21hc3MoKQpAQCAtNDc1LDcgKzQ3Niw3IEBACiAgICAg
ICAgIHNlbGYub3ZlcmRlbnNpdHkgPTNEIHNlbGYubWFzc19iaW5zICogTXN1bjJnIC8gXAogICAg
ICAgICAgICAgKDQuLzMuICogbWF0aC5waSAqIHJob19jcml0ICogXAogICAgICAgICAgICAgKHNl
bGYucmFkaWFsX2JpbnMgKSoqMy4wKQotICAgICAgID0yMAorCiAgICAgZGVmIF9nZXRfZWxsaXBz
b2lkX3BhcmFtZXRlcnNfYmFzaWMoc2VsZik6CiAgICAgICAgIG5wLnNldGVycihhbGw9M0QnaWdu
b3JlJykKICAgICAgICAgIyBjaGVjayBpZiB0aGVyZSBhcmUgNCBwYXJ0aWNsZXMgdG8gZm9ybSBh
biBlbGxpcHNvaWQKQEAgLTUwMSw3ICs1MDIsNyBAQAogICAgICAgICBmb3IgYXhpcyBpbiByYW5n
ZShucC5zaXplKERXKSk6CiAgICAgICAgICAgICBjYXNlcyA9M0QgbnAuYXJyYXkoW3Bvc2l0aW9u
W2F4aXNdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbltheGlzXSAr
IERXW2F4aXNdLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb25bYXhpc10g
LSBEV1theGlzXV0pICAgICAgID0yMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9z
aXRpb25bYXhpc10gLSBEV1theGlzXV0pCiAgICAgICAgICAgICAjIHBpY2sgb3V0IHRoZSBzbWFs
bGVzdCBhYnNvbHV0ZSBkaXN0YW5jZSBmcm9tIGNvbQogICAgICAgICAgICAgcG9zaXRpb25bYXhp
c10gPTNEIG5wLmNob29zZShucC5hYnMoY2FzZXMpLmFyZ21pbihheGlzPTNEMCksIGM9CmFzZXMp
CiAgICAgICAgICMgZmluZCB0aGUgZnVydGhlc3QgcGFydGljbGUncyBpbmRleApAQCAtNTcxLDcg
KzU3Miw3IEBACiAgICAgX25hbWUgPTNEICJSb2Nrc3RhckhhbG8iCiAgICAgIyBTZWUgcGFydGlj
bGVfbWFzawogICAgIF9yYWRqdXN0ID0zRCA0LgotICAgPTIwCisKICAgICBkZWYgbWF4aW11bV9k
ZW5zaXR5KHNlbGYpOgogICAgICAgICByIiIiTm90IGltcGxlbWVudGVkLiIiIgogICAgICAgICBy
ZXR1cm4gLTEKQEAgLTYzNSwxMSArNjM2LDExIEBACiAgICAgZGVmIGdldF9lbGxpcHNvaWRfcGFy
YW1ldGVycyhzZWxmKToKICAgICAgICAgciIiIkNhbGN1bGF0ZSB0aGUgcGFyYW1ldGVycyB0aGF0
IGRlc2NyaWJlIHRoZSBlbGxpcHNvaWQgb2YKICAgICAgICAgdGhlIHBhcnRpY2xlcyB0aGF0IGNv
bnN0aXR1dGUgdGhlIGhhbG8uCi0gICAgICAgPTIwCisKICAgICAgICAgUGFyYW1ldGVycwogICAg
ICAgICAtLS0tLS0tLS0tCiAgICAgICAgIE5vbmUKLSAgICAgICA9MjAKKwogICAgICAgICBSZXR1
cm5zCiAgICAgICAgIC0tLS0tLS0KICAgICAgICAgdHVwbGUgOiAoY20sIG1hZ19BLCBtYWdfQiwg
bWFnX0MsIGUwX3ZlY3RvciwgdGlsdCkKQEAgLTY1MCw3ICs2NTEsNyBAQAogICAgICAgICAgICAg
ICAjLiBtYWdfQyBhcyBhIGZsb2F0LgogICAgICAgICAgICAgICAjLiBlMF92ZWN0b3IgYXMgYW4g
YXJyYXkuCiAgICAgICAgICAgICAgICMuIHRpbHQgYXMgYSBmbG9hdC4KLSAgICAgICA9MjAKKwog
ICAgICAgICBFeGFtcGxlcwogICAgICAgICAtLS0tLS0tLQogICAgICAgICA+Pj4gcGFyYW1zID0z
RCBoYWxvc1swXS5nZXRfZWxsaXBzb2lkX3BhcmFtZXRlcnMoKQpAQCAtNjYyLDIyICs2NjMsMjIg
QEAKICAgICAgICAgICAgIGJhc2ljX3BhcmFtZXRlcnNbNF0sIGJhc2ljX3BhcmFtZXRlcnNbNV1d
KSwgYmFzaWNfcGFyYW1ldGVyc1s2PQpdXQogICAgICAgICB0b3JldHVybi5leHRlbmQodXBkYXRl
ZCkKICAgICAgICAgcmV0dXJuIHR1cGxlKHRvcmV0dXJuKQotICAgPTIwCisKICAgICBkZWYgZ2V0
X2VsbGlwc29pZChzZWxmKToKICAgICAgICAgciIiIlJldHVybnMgYW4gZWxsaXBzb2lkYWwgZGF0
YSBvYmplY3QuCi0gICAgICAgPTIwCisKICAgICAgICAgVGhpcyB3aWxsIGdlbmVyYXRlIGEgbmV3
LCBlbXB0eSBlbGxpcHNvaWRhbCBkYXRhIG9iamVjdCBmb3IgdGhpcwogICAgICAgICBoYWxvLgot
ICAgICAgID0yMAorCiAgICAgICAgIFBhcmFtZXRlcnMKICAgICAgICAgLS0tLS0tLS0tLQogICAg
ICAgICBOb25lLgotICAgICAgID0yMAorCiAgICAgICAgIFJldHVybnMKICAgICAgICAgLS0tLS0t
LQogICAgICAgICBlbGxpcHNvaWQgOiBgeXQuZGF0YV9vYmplY3RzLmRhdGFfY29udGFpbmVycy5Z
VEVsbGlwc29pZEJhc2VgCiAgICAgICAgICAgICBUaGUgZWxsaXBzb2lkYWwgZGF0YSBvYmplY3Qu
Ci0gICAgICAgPTIwCisKICAgICAgICAgRXhhbXBsZXMKICAgICAgICAgLS0tLS0tLS0KICAgICAg
ICAgPj4+IGVsbCA9M0QgaGFsb3NbMF0uZ2V0X2VsbGlwc29pZCgpCkBAIC02ODYsNyArNjg3LDcg
QEAKICAgICAgICAgZWxsID0zRCBzZWxmLmRhdGEuZHMuZWxsaXBzb2lkKGVwWzBdLCBlcFsxXSwg
ZXBbMl0sIGVwWzNdLAogICAgICAgICAgICAgZXBbNF0sIGVwWzVdKQogICAgICAgICByZXR1cm4g
ZWxsCi0gICA9MjAKKwogY2xhc3MgSE9QSGFsbyhIYWxvKToKICAgICBfbmFtZSA9M0QgIkhPUEhh
bG8iCiAgICAgcGFzcwpAQCAtNzYzLDE0ICs3NjQsMTQgQEAKICAgICAgICAgICAgIHNlbGYuc2l6
ZSwga2V5KQogICAgICAgICBpZiBmaWVsZF9kYXRhIGlzIG5vdCBOb25lOgogICAgICAgICAgICAg
aWYga2V5ID0zRD0zRCAncGFydGljbGVfaW5kZXgnOgotICAgICAgICAgICAgICAgICN0aGlzIGlz
IGFuIGluZGV4IGZvciB0dXJuaW5nIGRhdGEgc29ydGVkIGJ5IHBhcnRpY2xlIGluZGU9Cng9MjAK
KyAgICAgICAgICAgICAgICAjdGhpcyBpcyBhbiBpbmRleCBmb3IgdHVybmluZyBkYXRhIHNvcnRl
ZCBieSBwYXJ0aWNsZSBpbmRleAogICAgICAgICAgICAgICAgICNpbnRvIHRoZSBzYW1lIG9yZGVy
IGFzIHRoZSBmaWVsZHMgb24gZGlzawogICAgICAgICAgICAgICAgIHNlbGYuX3BpZF9zb3J0ID0z
RCBmaWVsZF9kYXRhLmFyZ3NvcnQoKS5hcmdzb3J0KCkKICAgICAgICAgICAgICNjb252ZXJ0IHRv
IFlUQXJyYXkgdXNpbmcgdGhlIGRhdGEgZnJvbSBkaXNrCiAgICAgICAgICAgICBpZiBrZXkgPTNE
PTNEICdwYXJ0aWNsZV9tYXNzJzoKICAgICAgICAgICAgICAgICBmaWVsZF9kYXRhID0zRCBzZWxm
LmRzLmFycihmaWVsZF9kYXRhLCAnTXN1bicpCiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAg
ICAgICAgIGZpZWxkX2RhdGEgPTNEIHNlbGYuZHMuYXJyKGZpZWxkX2RhdGEsPTIwCisgICAgICAg
ICAgICAgICAgZmllbGRfZGF0YSA9M0Qgc2VsZi5kcy5hcnIoZmllbGRfZGF0YSwKICAgICAgICAg
ICAgICAgICAgICAgc2VsZi5kcy5fZ2V0X2ZpZWxkX2luZm8oJ3Vua25vd24nLGtleSkudW5pdHMp
CiAgICAgICAgICAgICBzZWxmLl9zYXZlZF9maWVsZHNba2V5XSA9M0QgZmllbGRfZGF0YQogICAg
ICAgICAgICAgcmV0dXJuIHNlbGYuX3NhdmVkX2ZpZWxkc1trZXldCkBAIC04NTYsMjEgKzg1Nywy
MSBAQAogICAgICAgICAgICAgYmFzaWNfcGFyYW1ldGVyc1s0XSwgYmFzaWNfcGFyYW1ldGVyc1s1
XV0pLCBiYXNpY19wYXJhbWV0ZXJzWzY9Cl1dCiAgICAgICAgIHRvcmV0dXJuLmV4dGVuZCh1cGRh
dGVkKQogICAgICAgICByZXR1cm4gdHVwbGUodG9yZXR1cm4pCi0gICA9MjAKKwogICAgIGRlZiBn
ZXRfZWxsaXBzb2lkKHNlbGYpOgotICAgICAgICByIiIiUmV0dXJucyBhbiBlbGxpcHNvaWRhbCBk
YXRhIG9iamVjdC4gICAgICAgPTIwCisgICAgICAgIHIiIiJSZXR1cm5zIGFuIGVsbGlwc29pZGFs
IGRhdGEgb2JqZWN0LgogICAgICAgICBUaGlzIHdpbGwgZ2VuZXJhdGUgYSBuZXcsIGVtcHR5IGVs
bGlwc29pZGFsIGRhdGEgb2JqZWN0IGZvciB0aGlzCiAgICAgICAgIGhhbG8uCi0gICAgICAgPTIw
CisKICAgICAgICAgUGFyYW1ldGVycwogICAgICAgICAtLS0tLS0tLS0tCiAgICAgICAgIE5vbmUu
Ci0gICAgICAgPTIwCisKICAgICAgICAgUmV0dXJucwogICAgICAgICAtLS0tLS0tCiAgICAgICAg
IGVsbGlwc29pZCA6IGB5dC5kYXRhX29iamVjdHMuZGF0YV9jb250YWluZXJzLllURWxsaXBzb2lk
QmFzZWAKICAgICAgICAgICAgIFRoZSBlbGxpcHNvaWRhbCBkYXRhIG9iamVjdC4KLSAgICAgICA9
MjAKKwogICAgICAgICBFeGFtcGxlcwogICAgICAgICAtLS0tLS0tLQogICAgICAgICA+Pj4gZWxs
ID0zRCBoYWxvc1swXS5nZXRfZWxsaXBzb2lkKCkKQEAgLTk0NywxMSArOTQ4LDExIEBACiAgICAg
ZGVmIG1heGltdW1fZGVuc2l0eShzZWxmKToKICAgICAgICAgciIiIlVuZGVmaW5lZCBmb3IgdGV4
dCBoYWxvcy4iIiIKICAgICAgICAgcmV0dXJuIC0xCi0gICA9MjAKKwogICAgIGRlZiBtYXhpbXVt
X2RlbnNpdHlfbG9jYXRpb24oc2VsZik6CiAgICAgICAgIHIiIiJVbmRlZmluZWQsIGRlZmF1bHQg
dG8gQ29NIiIiCiAgICAgICAgIHJldHVybiBzZWxmLmNlbnRlcl9vZl9tYXNzKCkKLSAgID0yMAor
CiAgICAgZGVmIGdldF9zaXplKHNlbGYpOgogICAgICAgICAjIEhhdmUgdG8ganVzdCBnZXQgaXQg
ZnJvbSB0aGUgc3BoZXJlLgogICAgICAgICByZXR1cm4gc2VsZlsicGFydGljbGVfcG9zaXRpb25f
eCJdLnNpemUKQEAgLTk2NCw4ICs5NjUsOCBAQAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBkYXRh
X3NvdXJjZSwgZG1fb25seT0zRFRydWUsIHJlZHNoaWZ0PTNELTEpOgogICAgICAgICAiIiIKICAg
ICAgICAgUnVuIGhvcCBvbiAqZGF0YV9zb3VyY2UqIHdpdGggYSBnaXZlbiBkZW5zaXR5ICp0aHJl
c2hvbGQqLiAgSWYKLSAgICAgICAgKmRtX29ubHkqIGlzIFRydWUgKGRlZmF1bHQpLCBvbmx5IHJ1
biBpdCBvbiB0aGUgZGFyayBtYXR0ZXIgcGFydGljPQpsZXMsPTIwCi0gICAgICAgIG90aGVyd2lz
ZSBvbiBhbGwgcGFydGljbGVzLiAgUmV0dXJucyBhbiBpdGVyYWJsZSBjb2xsZWN0aW9uIG9mPTIw
CisgICAgICAgICpkbV9vbmx5KiBpcyBUcnVlIChkZWZhdWx0KSwgb25seSBydW4gaXQgb24gdGhl
IGRhcmsgbWF0dGVyIHBhcnRpYz0KbGVzLAorICAgICAgICBvdGhlcndpc2Ugb24gYWxsIHBhcnRp
Y2xlcy4gIFJldHVybnMgYW4gaXRlcmFibGUgY29sbGVjdGlvbiBvZgogICAgICAgICAqSG9wR3Jv
dXAqIGl0ZW1zLgogICAgICAgICAiIiIKICAgICAgICAgc2VsZi5fZGF0YV9zb3VyY2UgPTNEIGRh
dGFfc291cmNlCkBAIC0xMDUxLDcgKzEwNTIsNyBAQAogICAgICAgICBlbGxpcHNvaWRfZGF0YSA6
IGJvb2wuCiAgICAgICAgICAgICBXaGV0aGVyIHRvIHByaW50IHRoZSBlbGxpcHNvaWRhbCBpbmZv
cm1hdGlvbiB0byB0aGUgZmlsZS4KICAgICAgICAgICAgIERlZmF1bHQgPTNEIEZhbHNlLgotICAg
ICAgID0yMAorCiAgICAgICAgIEV4YW1wbGVzCiAgICAgICAgIC0tLS0tLS0tCiAgICAgICAgID4+
PiBoYWxvcy53cml0ZV9vdXQoIkhvcEFuYWx5c2lzLm91dCIpCkBAIC0xMTQ0LDEwICsxMTQ1LDEw
IEBACiAgICAgX2hhbG9fZHQgPTNEIG5wLmR0eXBlKFsoJ2lkJywgbnAuaW50NjQpLCAoJ3Bvcycs
IChucC5mbG9hdDMyLCA2KSksCiAgICAgICAgICgnY29yZXZlbCcsIChucC5mbG9hdDMyLCAzKSks
ICgnYnVsa3ZlbCcsIChucC5mbG9hdDMyLCAzKSksCiAgICAgICAgICgnbScsIG5wLmZsb2F0MzIp
LCAoJ3InLCBucC5mbG9hdDMyKSwgKCdjaGlsZF9yJywgbnAuZmxvYXQzMiksCi0gICAgICAgICgn
dm1heF9yJywgbnAuZmxvYXQzMiksPTIwCisgICAgICAgICgndm1heF9yJywgbnAuZmxvYXQzMiks
CiAgICAgICAgICgnbWdyYXYnLCBucC5mbG9hdDMyKSwgKCd2bWF4JywgbnAuZmxvYXQzMiksCiAg
ICAgICAgICgncnZtYXgnLCBucC5mbG9hdDMyKSwgKCdycycsIG5wLmZsb2F0MzIpLAotICAgICAg
ICAoJ2tseXBpbl9ycycsIG5wLmZsb2F0MzIpLD0yMAorICAgICAgICAoJ2tseXBpbl9ycycsIG5w
LmZsb2F0MzIpLAogICAgICAgICAoJ3ZybXMnLCBucC5mbG9hdDMyKSwgKCdKJywgKG5wLmZsb2F0
MzIsIDMpKSwKICAgICAgICAgKCdlbmVyZ3knLCBucC5mbG9hdDMyKSwgKCdzcGluJywgbnAuZmxv
YXQzMiksCiAgICAgICAgICgnYWx0X20nLCAobnAuZmxvYXQzMiwgNCkpLCAoJ1hvZmYnLCBucC5m
bG9hdDMyKSwKQEAgLTEyMjEsOSArMTIyMiw5IEBACiAgICAgICAgICIiIgogICAgICAgICBSZWFk
IHRoZSBvdXRfKi5saXN0IHRleHQgZmlsZSBwcm9kdWNlZAogICAgICAgICBieSBSb2Nrc3RhciBp
bnRvIG1lbW9yeS4iIiIKLSAgICAgICA9MjAKKwogICAgICAgICBkcyA9M0Qgc2VsZi5kcwotICAg
ICAgICAjIEluIG9yZGVyIHRvIHJlYWQgdGhlIGJpbmFyeSBkYXRhLCB3ZSBuZWVkIHRvIGZpZ3Vy
ZSBvdXQgd2hpY2g9MjAKKyAgICAgICAgIyBJbiBvcmRlciB0byByZWFkIHRoZSBiaW5hcnkgZGF0
YSwgd2UgbmVlZCB0byBmaWd1cmUgb3V0IHdoaWNoCiAgICAgICAgICMgYmluYXJ5IGZpbGVzIGJl
bG9uZyB0byB0aGlzIG91dHB1dC4KICAgICAgICAgYmFzZWRpciA9M0Qgb3MucGF0aC5kaXJuYW1l
KHNlbGYub3V0X2xpc3QpCiAgICAgICAgIHMgPTNEIHNlbGYub3V0X2xpc3Quc3BsaXQoJ18nKVst
MV0KQEAgLTE1MjMsMTIgKzE1MjQsMTQgQEAKICAgICAgICAgICAgICAgICBpZCArPTNEIDEKPTIw
CiAgICAgICAgIGRlZiBoYWxvQ21wKGgxLCBoMik6CisgICAgICAgICAgICBkZWYgY21wKGEsIGIp
OgorICAgICAgICAgICAgICAgIHJldHVybiAoYSA+IGIpIC0gKGEgPCBiKQogICAgICAgICAgICAg
YyA9M0QgY21wKGgxLnRvdGFsX21hc3MoKSwgaDIudG90YWxfbWFzcygpKQogICAgICAgICAgICAg
aWYgYyAhPTNEIDA6CiAgICAgICAgICAgICAgICAgcmV0dXJuIC0xICogYwogICAgICAgICAgICAg
aWYgYyA9M0Q9M0QgMDoKICAgICAgICAgICAgICAgICByZXR1cm4gY21wKGgxLmNlbnRlcl9vZl9t
YXNzKClbMF0sIGgyLmNlbnRlcl9vZl9tYXNzKClbMF0pCi0gICAgICAgIHNlbGYuX2dyb3Vwcy5z
b3J0KGhhbG9DbXApCisgICAgICAgIHNlbGYuX2dyb3Vwcy5zb3J0KGtleT0zRGNtcF90b19rZXko
aGFsb0NtcCkpCiAgICAgICAgIHNvcnRlZF9tYXhfZGVucyA9M0Qge30KICAgICAgICAgZm9yIGks
IGhhbG8gaW4gZW51bWVyYXRlKHNlbGYuX2dyb3Vwcyk6CiAgICAgICAgICAgICBpZiBoYWxvLmlk
IGluIHNlbGYuX21heF9kZW5zOgpAQCAtMTg3Myw3ICsxODc2LDcgQEAKPTIwCiBjbGFzcyBMb2Fk
VGV4dEhhbG9lcyhHZW5lcmljSGFsb0ZpbmRlciwgVGV4dEhhbG9MaXN0KToKICAgICByIiIiTG9h
ZCBhIHRleHQgZmlsZSBvZiBoYWxvcy4KLSAgID0yMAorCiAgICAgTGlrZSBMb2FkSGFsb2VzLCBi
dXQgd2hlbiBhbGwgdGhhdCBpcyBhdmFpbGFibGUgaXMgYSBwbGFpbgogICAgIHRleHQgZmlsZS4g
VGhpcyBhc3N1bWVzIHRoZSB0ZXh0IGZpbGUgaGFzIHRoZSAzLXBvc2l0aW9ucyBvZiBoYWxvcwog
ICAgIGFsb25nIHdpdGggYSByYWRpdXMuIFRoZSBoYWxvIG9iamVjdHMgY3JlYXRlZCBhcmUgc3Bo
ZXJlcy4KQEAgLTE4ODIsNyArMTg4NSw3IEBACiAgICAgLS0tLS0tLS0tLQogICAgIGZuYW1lIDog
U3RyaW5nCiAgICAgICAgIFRoZSBuYW1lIG9mIHRoZSB0ZXh0IGZpbGUgdG8gcmVhZCBpbi4KLSAg
ID0yMAorCiAgICAgY29sdW1ucyA6IGRpY3QKICAgICAgICAgQSBkaWN0IGxpc3RpbmcgdGhlIGNv
bHVtbiBuYW1lIDogY29sdW1uIG51bWJlciBwYWlycyBmb3IgZGF0YQogICAgICAgICBpbiB0aGUg
dGV4dCBmaWxlLiBJdCBpcyB6ZXJvLWJhc2VkIChsaWtlIFB5dGhvbikuCkBAIC0xODkwLDcgKzE4
OTMsNyBAQAogICAgICAgICBBbnkgY29sdW1uIG5hbWUgb3V0c2lkZSBvZiBbJ3gnLCAneScsICd6
JywgJ3InXSB3aWxsIGJlIGF0dGFjaGVkCiAgICAgICAgIHRvIGVhY2ggaGFsbyBvYmplY3QgaW4g
dGhlIHN1cHBsZW1lbnRhcnkgZGljdCAnc3VwcCcuIFNlZQogICAgICAgICBleGFtcGxlLgotICAg
PTIwCisKICAgICBjb21tZW50IDogU3RyaW5nCiAgICAgICAgIElmIHRoZSBmaXJzdCBjaGFyYWN0
ZXIgb2YgYSBsaW5lIGlzIGVxdWFsIHRvIHRoaXMsIHRoZSBsaW5lIGlzCiAgICAgICAgIHNraXBw
ZWQuIERlZmF1bHQgPTNEICIjIi4KQEAgLTE5MTUsNyArMTkxOCw3IEBACiAgICAgUGFyYW1ldGVy
cwogICAgIC0tLS0tLS0tLS0KICAgICBmbmFtZSA6IFN0cmluZwotICAgICAgICBUaGUgbmFtZSBv
ZiB0aGUgUm9ja3N0YXIgZmlsZSB0byByZWFkIGluLiBEZWZhdWx0ID0zRD0yMAorICAgICAgICBU
aGUgbmFtZSBvZiB0aGUgUm9ja3N0YXIgZmlsZSB0byByZWFkIGluLiBEZWZhdWx0ID0zRAogICAg
ICAgICAicm9ja3N0YXJfaGFsb3Mvb3V0XzAubGlzdCcuCj0yMAogICAgIEV4YW1wbGVzCgpkaWZm
IC1yIGE1MGU5ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFjODEyOGE0YzZhYmYgLXIgMDRjOWViNDA0
MzYyODIxMTNmYjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUwIHl0L2FuYWx5c2lzX21vZHVsZXMvbGV2
ZWxfc2V0cy9jbHVtcF9oYW5kbGluZy5weQotLS0gYS95dC9hbmFseXNpc19tb2R1bGVzL2xldmVs
X3NldHMvY2x1bXBfaGFuZGxpbmcucHkKKysrIGIveXQvYW5hbHlzaXNfbW9kdWxlcy9sZXZlbF9z
ZXRzL2NsdW1wX2hhbmRsaW5nLnB5CkBAIC0yMCw3ICsyMCw4IEBACiBmcm9tIHl0LmZpZWxkcy5k
ZXJpdmVkX2ZpZWxkIGltcG9ydCBcCiAgICAgVmFsaWRhdGVTcGF0aWFsCiBmcm9tIHl0LmZ1bmNz
IGltcG9ydCBteWxvZwotICAgPTIwCitmcm9tIHl0LmV4dGVybi5zaXggaW1wb3J0IHN0cmluZ190
eXBlcworCiBmcm9tIC5jbHVtcF9pbmZvX2l0ZW1zIGltcG9ydCBcCiAgICAgY2x1bXBfaW5mb19y
ZWdpc3RyeQogZnJvbSAuY2x1bXBfdmFsaWRhdG9ycyBpbXBvcnQgXApAQCAtMjY4LDcgKzI2OSw3
IEBACj0yMAogZGVmIHdyaXRlX2NsdW1wX2luZGV4KGNsdW1wLCBsZXZlbCwgZmgpOgogICAgIHRv
cCA9M0QgRmFsc2UKLSAgICBpZiBub3QgaXNpbnN0YW5jZShmaCwgZmlsZSk6CisgICAgaWYgaXNp
bnN0YW5jZShmaCwgc3RyaW5nX3R5cGVzKToKICAgICAgICAgZmggPTNEIG9wZW4oZmgsICJ3IikK
ICAgICAgICAgdG9wID0zRCBUcnVlCiAgICAgZm9yIHEgaW4gcmFuZ2UobGV2ZWwpOgpAQCAtMjg1
LDcgKzI4Niw3IEBACj0yMAogZGVmIHdyaXRlX2NsdW1wcyhjbHVtcCwgbGV2ZWwsIGZoKToKICAg
ICB0b3AgPTNEIEZhbHNlCi0gICAgaWYgbm90IGlzaW5zdGFuY2UoZmgsIGZpbGUpOgorICAgIGlm
IGlzaW5zdGFuY2UoZmgsIHN0cmluZ190eXBlcyk6CiAgICAgICAgIGZoID0zRCBvcGVuKGZoLCAi
dyIpCiAgICAgICAgIHRvcCA9M0QgVHJ1ZQogICAgIGlmICgoY2x1bXAuY2hpbGRyZW4gaXMgTm9u
ZSkgb3IgKGxlbihjbHVtcC5jaGlsZHJlbikgPTNEPTNEIDApKToKCmRpZmYgLXIgYTUwZTlkNmNh
ZWEzZTg4YTEwYWNjNjhkZGUyYWM4MTI4YTRjNmFiZiAtciAwNGM5ZWI0MDQzNjI4MjExM2ZiMjI5
Yz0KNzdiZjFhYjE4N2MwMzJjNTAgeXQvYW5hbHlzaXNfbW9kdWxlcy9zdGFyX2FuYWx5c2lzL3Nm
cl9zcGVjdHJ1bS5weQotLS0gYS95dC9hbmFseXNpc19tb2R1bGVzL3N0YXJfYW5hbHlzaXMvc2Zy
X3NwZWN0cnVtLnB5CisrKyBiL3l0L2FuYWx5c2lzX21vZHVsZXMvc3Rhcl9hbmFseXNpcy9zZnJf
c3BlY3RydW0ucHkKQEAgLTM1NCwxMiArMzU0LDE5IEBACj0yMAogICAgICAgICByIiIiRm9yIHRo
ZSBzZXQgb2Ygc3RhcnMsIGNhbGN1bGF0ZSB0aGUgY29sbGVjdGl2ZSBzcGVjdHJ1bS4KICAgICAg
ICAgQXR0YWNoZWQgdG8gdGhlIG91dHB1dCBhcmUgc2V2ZXJhbCB1c2VmdWwgb2JqZWN0czoKLSAg
ICAgICAgZmluYWxfc3BlYzogVGhlIGNvbGxlY3RpdmUgc3BlY3RydW0gaW4gdW5pdHMgb2YgZmx1
eCBiaW5uZWQgaW4KLSAgICAgICAgICAgIHdhdmVsZW5ndGguCi0gICAgICAgIHdhdmVsZW5ndGg6
IFRoZSB3YXZlbGVuZ3RoIGZvciB0aGUgc3BlY3RydW0gYmlucywgaW4gQW5nc3Ryb21zLgotICAg
ICAgICB0b3RhbF9tYXNzOiBUb3RhbCBtYXNzIG9mIGFsbCB0aGUgc3RhcnMuCi0gICAgICAgIGF2
Z19tYXNzOiBBdmVyYWdlIG1hc3Mgb2YgYWxsIHRoZSBzdGFycy4KLSAgICAgICAgYXZnX21ldGFs
OiBBdmVyYWdlIG1ldGFsbGljaXR5IG9mIGFsbCB0aGUgc3RhcnMuCisKKyAgICAgICAgQXR0cmli
dXRlcworICAgICAgICAtLS0tLS0tLS0tCisgICAgICAgIGZpbmFsX3NwZWM6IGFycmF5CisgICAg
ICAgICAgICBUaGUgY29sbGVjdGl2ZSBzcGVjdHJ1bSBpbiB1bml0cyBvZiBmbHV4IGJpbm5lZCBp
biB3YXZlbGVuZ3RoLgorICAgICAgICB3YXZlbGVuZ3RoOiBhcnJheQorICAgICAgICAgICAgVGhl
IHdhdmVsZW5ndGggZm9yIHRoZSBzcGVjdHJ1bSBiaW5zLCBpbiBBbmdzdHJvbXMuCisgICAgICAg
IHRvdGFsX21hc3M6IGZsb2F0CisgICAgICAgICAgICBUb3RhbCBtYXNzIG9mIGFsbCB0aGUgc3Rh
cnMuCisgICAgICAgIGF2Z19tYXNzOiBmbG9hdAorICAgICAgICAgICAgQXZlcmFnZSBtYXNzIG9m
IGFsbCB0aGUgc3RhcnMuCisgICAgICAgIGF2Z19tZXRhbDogZmxvYXQKKyAgICAgICAgICAgIEF2
ZXJhZ2UgbWV0YWxsaWNpdHkgb2YgYWxsIHRoZSBzdGFycy4KPTIwCiAgICAgICAgIFBhcmFtZXRl
cnMKICAgICAgICAgLS0tLS0tLS0tLQpAQCAtMzg5LDYgKzM5Niw3IEBACiAgICAgICAgID4+PiBz
cCA9M0QgZHMuc3BoZXJlKFswLjUsIDAuNSwgMC41XSwgMC4xKQogICAgICAgICA+Pj4gc3BlYy5j
YWxjdWxhdGVfc3BlY3RydW0oZGF0YV9zb3VyY2U9M0RzcCwgbWluX2FnZT0zRDEuZTYpCiAgICAg
ICAgICIiIgorCiAgICAgICAgICMgSW5pdGlhbGl6ZSB2YWx1ZXMKICAgICAgICAgc2VsZi5maW5h
bF9zcGVjID0zRCBucC56ZXJvcyhzZWxmLndhdmVsZW5ndGguc2l6ZSwgZHR5cGU9M0QnZmxvYXQ2
PQo0JykKICAgICAgICAgc2VsZi5fZGF0YV9zb3VyY2UgPTNEIGRhdGFfc291cmNlCgpkaWZmIC1y
IGE1MGU5ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFjODEyOGE0YzZhYmYgLXIgMDRjOWViNDA0MzYy
ODIxMTNmYjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUwIHl0L2NvbmZpZy5weQotLS0gYS95dC9jb25m
aWcucHkKKysrIGIveXQvY29uZmlnLnB5CkBAIC0xLDExICsxLDEwIEBACiAiIiIKIFRoaXMgbW9k
dWxlIGlzIHZlcnkgc2ltcGxlLiAgSXQgaW1wb3J0cyB0aGUgY29uZmlndXJhdGlvbgogd2UgaGF2
ZSB3cml0dGVuIGZvciB5dC4KLUV2ZXJ5dGhpbmcgd2lsbCBiZSByZXR1cm5lZCBpbiBhIGdsb2Jh
bCBjb25maWcgZGljdGlvbmFyeTogeXRjZmcKLQotCitFdmVyeXRoaW5nIHdpbGwgYmUgcmV0dXJu
ZWQgaW4gYSBnbG9iYWwgY29uZmlnIGRpY3Rpb25hcnkgYGB5dGNmZ2BgCj0yMAogIiIiCisKIGZy
b20gX19mdXR1cmVfXyBpbXBvcnQgcHJpbnRfZnVuY3Rpb24KPTIwCiAjLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LT0KLS0tLQoKZGlmZiAtciBhNTBlOWQ2Y2FlYTNlODhhMTBhY2M2OGRkZTJhYzgxMjhhNGM2YWJm
IC1yIDA0YzllYjQwNDM2MjgyMTEzZmIyMjljPQo3N2JmMWFiMTg3YzAzMmM1MCB5dC9kYXRhX29i
amVjdHMvY29uc3RydWN0aW9uX2RhdGFfY29udGFpbmVycy5weQotLS0gYS95dC9kYXRhX29iamVj
dHMvY29uc3RydWN0aW9uX2RhdGFfY29udGFpbmVycy5weQorKysgYi95dC9kYXRhX29iamVjdHMv
Y29uc3RydWN0aW9uX2RhdGFfY29udGFpbmVycy5weQpAQCAtOTYxLDE1ICs5NjEsMTUgQEAKICAg
ICB3aXRoIG5vIGNvbnNpZGVyYXRpb24gb2YgZ2xvYmFsIGNvbm5lY3RlZG5lc3MsIGFuZCByZXR1
cm5zIHRoZSB2ZXJ0aWNlcwogICAgIG9mIHRoZSBUcmlhbmdsZXMgaW4gdGhhdCBpc29jb250b3Vy
Lgo9MjAKLSAgICBUaGlzIG9iamVjdCBzaW1wbHkgcmV0dXJucyB0aGUgdmVydGljZXMgb2YgYWxs
IHRoZSB0cmlhbmdsZXMKLSAgICBjYWxjdWxhdGVkIGJ5IHRoZSBtYXJjaGluZyBjdWJlcyBhbGdv
cml0aG07IGZvciBtb3JlIGNvbXBsZXgKLSAgICBvcGVyYXRpb25zLCBzdWNoIGFzIGlkZW50aWZ5
aW5nIGNvbm5lY3RlZCBzZXRzIG9mIGNlbGxzIGFib3ZlIGEgZ2l2ZW4KLSAgICB0aHJlc2hvbGQs
IHNlZSB0aGUgZXh0cmFjdF9jb25uZWN0ZWRfc2V0cyBmdW5jdGlvbi4gIFRoaXMgaXMgbW9yZQot
ICAgIHVzZWZ1bCBmb3IgY2FsY3VsYXRpbmcsIGZvciBpbnN0YW5jZSwgdG90YWwgaXNvY29udG91
ciBhcmVhLCBvcgorICAgIFRoaXMgb2JqZWN0IHNpbXBseSByZXR1cm5zIHRoZSB2ZXJ0aWNlcyBv
ZiBhbGwgdGhlIHRyaWFuZ2xlcyBjYWxjdWxhdGU9CmQgYnkKKyAgICB0aGUgYG1hcmNoaW5nIGN1
YmVzIDxodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL01hcmNoaW5nX2N1YmVzPmBfCisgICAg
YWxnb3JpdGhtOyBmb3IgbW9yZSBjb21wbGV4IG9wZXJhdGlvbnMsIHN1Y2ggYXMgaWRlbnRpZnlp
bmcgY29ubmVjdGVkID0Kc2V0cworICAgIG9mIGNlbGxzIGFib3ZlIGEgZ2l2ZW4gdGhyZXNob2xk
LCBzZWUgdGhlIGV4dHJhY3RfY29ubmVjdGVkX3NldHMgZnVuY3Q9Cmlvbi4KKyAgICBUaGlzIGlz
IG1vcmUgdXNlZnVsIGZvciBjYWxjdWxhdGluZywgZm9yIGluc3RhbmNlLCB0b3RhbCBpc29jb250
b3VyIGFyPQplYSwgb3IKICAgICB2aXN1YWxpemluZyBpbiBhbiBleHRlcm5hbCBwcm9ncmFtIChz
dWNoIGFzIGBNZXNoTGFiCi0gICAgPGh0dHA6Ly9tZXNobGFiLnNmLm5ldD5gXy4pICBUaGUgb2Jq
ZWN0IGhhcyB0aGUgcHJvcGVydGllcyAudmVydGljZXMKLSAgICBhbmQgd2lsbCBzYW1wbGUgdmFs
dWVzIGlmIGEgZmllbGQgaXMgcmVxdWVzdGVkLiAgVGhlIHZhbHVlcyBhcmUKLSAgICBpbnRlcnBv
bGF0ZWQgdG8gdGhlIGNlbnRlciBvZiBhIGdpdmVuIGZhY2UuCisgICAgPGh0dHA6Ly9tZXNobGFi
LnNmLm5ldD5gXy4pICBUaGUgb2JqZWN0IGhhcyB0aGUgcHJvcGVydGllcyAudmVydGljZXMgYT0K
bmQKKyAgICB3aWxsIHNhbXBsZSB2YWx1ZXMgaWYgYSBmaWVsZCBpcyByZXF1ZXN0ZWQuICBUaGUg
dmFsdWVzIGFyZSBpbnRlcnBvbGF0PQplZCB0bworICAgIHRoZSBjZW50ZXIgb2YgYSBnaXZlbiBm
YWNlLgo9MjAKICAgICBQYXJhbWV0ZXJzCiAgICAgLS0tLS0tLS0tLQpAQCAtOTgxLDExICs5ODEs
NiBAQAogICAgIGZpZWxkX3ZhbHVlIDogZmxvYXQKICAgICAgICAgVGhlIHZhbHVlIGF0IHdoaWNo
IHRoZSBpc29jb250b3VyIHNob3VsZCBiZSBjYWxjdWxhdGVkLgo9MjAKLSAgICBSZWZlcmVuY2Vz
Ci0gICAgLS0tLS0tLS0tLQotCi0gICAgLi4gWzFdIE1hcmNoaW5nIEN1YmVzOiBodHRwOi8vZW4u
d2lraXBlZGlhLm9yZy93aWtpL01hcmNoaW5nX2N1YmVzCi0KICAgICBFeGFtcGxlcwogICAgIC0t
LS0tLS0tCiAgICAgVGhpcyB3aWxsIGNyZWF0ZSBhIGRhdGEgb2JqZWN0LCBmaW5kIGEgbmljZSB2
YWx1ZSBpbiB0aGUgY2VudGVyLCBhbmQKQEAgLTEwNzAsMTEgKzEwNjUsMTIgQEAKICAgICBkZWYg
Y2FsY3VsYXRlX2ZsdXgoc2VsZiwgZmllbGRfeCwgZmllbGRfeSwgZmllbGRfeiwgZmx1eGluZ19m
aWVsZCA9M0QgPQpOb25lKToKICAgICAgICAgciIiIlRoaXMgY2FsY3VsYXRlcyB0aGUgZmx1eCBv
dmVyIHRoZSBzdXJmYWNlLgo9MjAKLSAgICAgICAgVGhpcyBmdW5jdGlvbiB3aWxsIGNvbmR1Y3Qg
bWFyY2hpbmcgY3ViZXMgb24gYWxsIHRoZSBjZWxscyBpbiBhIGdpPQp2ZW4KLSAgICAgICAgZGF0
YSBjb250YWluZXIgKGdyaWQtYnktZ3JpZCksIGFuZCB0aGVuIGZvciBlYWNoIGlkZW50aWZpZWQg
dHJpYW5nPQp1bGFyCi0gICAgICAgIHNlZ21lbnQgb2YgYW4gaXNvY29udG91ciBpbiBhIGdpdmVu
IGNlbGwsIGNhbGN1bGF0ZSB0aGUgZ3JhZGllbnQgKD0KaS5lLiwKLSAgICAgICAgbm9ybWFsKSBp
biB0aGUgaXNvY29udG91cmVkIGZpZWxkLCBpbnRlcnBvbGF0ZSB0aGUgbG9jYWwgdmFsdWUgb2Yg
PQp0aGUKLSAgICAgICAgImZsdXhpbmciIGZpZWxkLCB0aGUgYXJlYSBvZiB0aGUgdHJpYW5nbGUs
IGFuZCB0aGVuIHJldHVybjoKKyAgICAgICAgVGhpcyBmdW5jdGlvbiB3aWxsIGNvbmR1Y3QgYG1h
cmNoaW5nIGN1YmVzCisgICAgICAgIDxodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL01hcmNo
aW5nX2N1YmVzPmBfIG9uIGFsbCB0aGUgY2VsbHMgaT0KbiBhCisgICAgICAgIGdpdmVuIGRhdGEg
Y29udGFpbmVyIChncmlkLWJ5LWdyaWQpLCBhbmQgdGhlbiBmb3IgZWFjaCBpZGVudGlmaWVkCisg
ICAgICAgIHRyaWFuZ3VsYXIgc2VnbWVudCBvZiBhbiBpc29jb250b3VyIGluIGEgZ2l2ZW4gY2Vs
bCwgY2FsY3VsYXRlIHRoZQorICAgICAgICBncmFkaWVudCAoaS5lLiwgbm9ybWFsKSBpbiB0aGUg
aXNvY29udG91cmVkIGZpZWxkLCBpbnRlcnBvbGF0ZSB0aGU9CiBsb2NhbAorICAgICAgICB2YWx1
ZSBvZiB0aGUgImZsdXhpbmciIGZpZWxkLCB0aGUgYXJlYSBvZiB0aGUgdHJpYW5nbGUsIGFuZCB0
aGVuIHI9CmV0dXJuOgo9MjAKICAgICAgICAgYXJlYSAqIGxvY2FsX2ZsdXhfdmFsdWUgKiAobiBk
b3QgdikKPTIwCgpkaWZmIC1yIGE1MGU5ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFjODEyOGE0YzZh
YmYgLXIgMDRjOWViNDA0MzYyODIxMTNmYjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUwIHl0L2RhdGFf
b2JqZWN0cy9kYXRhX2NvbnRhaW5lcnMucHkKLS0tIGEveXQvZGF0YV9vYmplY3RzL2RhdGFfY29u
dGFpbmVycy5weQorKysgYi95dC9kYXRhX29iamVjdHMvZGF0YV9jb250YWluZXJzLnB5CkBAIC0x
MDI1LDkgKzEwMjUsMTAgQEAKICAgICAgICAgVHJpYW5nbGVzIGluIHRoYXQgaXNvY29udG91ci4K
PTIwCiAgICAgICAgIFRoaXMgZnVuY3Rpb24gc2ltcGx5IHJldHVybnMgdGhlIHZlcnRpY2VzIG9m
IGFsbCB0aGUgdHJpYW5nbGVzCi0gICAgICAgIGNhbGN1bGF0ZWQgYnkgdGhlIG1hcmNoaW5nIGN1
YmVzIGFsZ29yaXRobTsgZm9yIG1vcmUgY29tcGxleAotICAgICAgICBvcGVyYXRpb25zLCBzdWNo
IGFzIGlkZW50aWZ5aW5nIGNvbm5lY3RlZCBzZXRzIG9mIGNlbGxzIGFib3ZlIGEgZ2k9CnZlbgot
ICAgICAgICB0aHJlc2hvbGQsIHNlZSB0aGUgZXh0cmFjdF9jb25uZWN0ZWRfc2V0cyBmdW5jdGlv
bi4gIFRoaXMgaXMgbW9yZQorICAgICAgICBjYWxjdWxhdGVkIGJ5IHRoZSBgbWFyY2hpbmcgY3Vi
ZXMKKyAgICAgICAgPGh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvTWFyY2hpbmdfY3ViZXM+
YF8gYWxnb3JpdGhtOyBmb3IgbW9yZQorICAgICAgICBjb21wbGV4IG9wZXJhdGlvbnMsIHN1Y2gg
YXMgaWRlbnRpZnlpbmcgY29ubmVjdGVkIHNldHMgb2YgY2VsbHMgYWI9Cm92ZSBhCisgICAgICAg
IGdpdmVuIHRocmVzaG9sZCwgc2VlIHRoZSBleHRyYWN0X2Nvbm5lY3RlZF9zZXRzIGZ1bmN0aW9u
LiAgVGhpcyBpcz0KIG1vcmUKICAgICAgICAgdXNlZnVsIGZvciBjYWxjdWxhdGluZywgZm9yIGlu
c3RhbmNlLCB0b3RhbCBpc29jb250b3VyIGFyZWEsIG9yCiAgICAgICAgIHZpc3VhbGl6aW5nIGlu
IGFuIGV4dGVybmFsIHByb2dyYW0gKHN1Y2ggYXMgYE1lc2hMYWIKICAgICAgICAgPGh0dHA6Ly9t
ZXNobGFiLnNmLm5ldD5gXy4pCkBAIC0xMDU4LDExICsxMDU5LDYgQEAKICAgICAgICAgICAgIGNv
bnRhaW4gdGhlIHZhbHVlcyBvZiB0aGUgZmllbGQgc3BlY2lmaWVkIGF0IHRoZSBjZW50ZXIgb2Yg
ZWFjaAogICAgICAgICAgICAgdHJpYW5nbGUuCj0yMAotICAgICAgICBSZWZlcmVuY2VzCi0gICAg
ICAgIC0tLS0tLS0tLS0KLQotICAgICAgICAuLiBbMV0gTWFyY2hpbmcgQ3ViZXM6IGh0dHA6Ly9l
bi53aWtpcGVkaWEub3JnL3dpa2kvTWFyY2hpbmdfY3ViZXMKLQogICAgICAgICBFeGFtcGxlcwog
ICAgICAgICAtLS0tLS0tLQogICAgICAgICBUaGlzIHdpbGwgY3JlYXRlIGEgZGF0YSBvYmplY3Qs
IGZpbmQgYSBuaWNlIHZhbHVlIGluIHRoZSBjZW50ZXIsIGE9Cm5kCkBAIC0xMTIzLDExICsxMTE5
LDEyIEBACiAgICAgICAgIGNvbnNpZGVyYXRpb24gb2YgZ2xvYmFsIGNvbm5lY3RlZG5lc3MsIGFu
ZCBjYWxjdWxhdGVzIHRoZSBmbHV4IG92ZXIKICAgICAgICAgdGhvc2UgY29udG91cnMuCj0yMAot
ICAgICAgICBUaGlzIGZ1bmN0aW9uIHdpbGwgY29uZHVjdCBtYXJjaGluZyBjdWJlcyBvbiBhbGwg
dGhlIGNlbGxzIGluIGEgZ2k9CnZlbgotICAgICAgICBkYXRhIGNvbnRhaW5lciAoZ3JpZC1ieS1n
cmlkKSwgYW5kIHRoZW4gZm9yIGVhY2ggaWRlbnRpZmllZCB0cmlhbmc9CnVsYXIKLSAgICAgICAg
c2VnbWVudCBvZiBhbiBpc29jb250b3VyIGluIGEgZ2l2ZW4gY2VsbCwgY2FsY3VsYXRlIHRoZSBn
cmFkaWVudCAoPQppLmUuLAotICAgICAgICBub3JtYWwpIGluIHRoZSBpc29jb250b3VyZWQgZmll
bGQsIGludGVycG9sYXRlIHRoZSBsb2NhbCB2YWx1ZSBvZiA9CnRoZQotICAgICAgICAiZmx1eGlu
ZyIgZmllbGQsIHRoZSBhcmVhIG9mIHRoZSB0cmlhbmdsZSwgYW5kIHRoZW4gcmV0dXJuOgorICAg
ICAgICBUaGlzIGZ1bmN0aW9uIHdpbGwgY29uZHVjdCBgbWFyY2hpbmcgY3ViZXMKKyAgICAgICAg
PGh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvTWFyY2hpbmdfY3ViZXM+YF8gb24gYWxsIHRo
ZSBjZWxscyBpPQpuIGEKKyAgICAgICAgZ2l2ZW4gZGF0YSBjb250YWluZXIgKGdyaWQtYnktZ3Jp
ZCksIGFuZCB0aGVuIGZvciBlYWNoIGlkZW50aWZpZWQKKyAgICAgICAgdHJpYW5ndWxhciBzZWdt
ZW50IG9mIGFuIGlzb2NvbnRvdXIgaW4gYSBnaXZlbiBjZWxsLCBjYWxjdWxhdGUgdGhlCisgICAg
ICAgIGdyYWRpZW50IChpLmUuLCBub3JtYWwpIGluIHRoZSBpc29jb250b3VyZWQgZmllbGQsIGlu
dGVycG9sYXRlIHRoZT0KIGxvY2FsCisgICAgICAgIHZhbHVlIG9mIHRoZSAiZmx1eGluZyIgZmll
bGQsIHRoZSBhcmVhIG9mIHRoZSB0cmlhbmdsZSwgYW5kIHRoZW4gcj0KZXR1cm46Cj0yMAogICAg
ICAgICBhcmVhICogbG9jYWxfZmx1eF92YWx1ZSAqIChuIGRvdCB2KQo9MjAKQEAgLTExNjUsMTEg
KzExNjIsNiBAQAogICAgICAgICAgICAgVGhlIHN1bW1lZCBmbHV4LiAgTm90ZSB0aGF0IGl0IGlz
IG5vdCBjdXJyZW50bHkgc2NhbGVkOyB0aGlzIGlzCiAgICAgICAgICAgICBzaW1wbHkgdGhlIGNv
ZGUtdW5pdCBhcmVhIHRpbWVzIHRoZSBmaWVsZHMuCj0yMAotICAgICAgICBSZWZlcmVuY2VzCi0g
ICAgICAgIC0tLS0tLS0tLS0KLQotICAgICAgICAuLiBbMV0gTWFyY2hpbmcgQ3ViZXM6IGh0dHA6
Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvTWFyY2hpbmdfY3ViZXMKLQogICAgICAgICBFeGFtcGxl
cwogICAgICAgICAtLS0tLS0tLQogICAgICAgICBUaGlzIHdpbGwgY3JlYXRlIGEgZGF0YSBvYmpl
Y3QsIGZpbmQgYSBuaWNlIHZhbHVlIGluIHRoZSBjZW50ZXIsIGE9Cm5kCgpkaWZmIC1yIGE1MGU5
ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFjODEyOGE0YzZhYmYgLXIgMDRjOWViNDA0MzYyODIxMTNm
YjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUwIHl0L2RhdGFfb2JqZWN0cy9zdGF0aWNfb3V0cHV0LnB5
Ci0tLSBhL3l0L2RhdGFfb2JqZWN0cy9zdGF0aWNfb3V0cHV0LnB5CisrKyBiL3l0L2RhdGFfb2Jq
ZWN0cy9zdGF0aWNfb3V0cHV0LnB5CkBAIC0yNTYsMjcgKzI1NiwyNyBAQAogICAgIGRlZiBfX2l0
ZXJfXyhzZWxmKToKICAgICAgIGZvciBpIGluIHNlbGYucGFyYW1ldGVyczogeWllbGQgaQo9MjAK
LSAgICBkZWYgZ2V0X3NtYWxsZXN0X2FwcHJvcHJpYXRlX3VuaXQoc2VsZiwgdiwgcXVhbnRpdHk9
M0QnZGlzdGFuY2UnLD0yMAorICAgIGRlZiBnZXRfc21hbGxlc3RfYXBwcm9wcmlhdGVfdW5pdChz
ZWxmLCB2LCBxdWFudGl0eT0zRCdkaXN0YW5jZScsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHJldHVybl9xdWFudGl0eT0zREZhbHNlKToKICAgICAgICAgIiIiCi0gICAg
ICAgIFJldHVybnMgdGhlIGxhcmdlc3Qgd2hvbGUgdW5pdCBzbWFsbGVyIHRoYW4gdGhlIFlUUXVh
bnRpdHkgcGFzc2VkID0KdG89MjAKKyAgICAgICAgUmV0dXJucyB0aGUgbGFyZ2VzdCB3aG9sZSB1
bml0IHNtYWxsZXIgdGhhbiB0aGUgWVRRdWFudGl0eSBwYXNzZWQgPQp0bwogICAgICAgICBpdCBh
cyBhIHN0cmluZy4KPTIwCi0gICAgICAgIFRoZSBxdWFudGl0eSBrZXl3b3JkIGNhbiBiZSBlcXVh
bCB0byBgZGlzdGFuY2VgIG9yIGB0aW1lYC4gIEluIHRoZT0yMAotICAgICAgICBjYXNlIG9mIGRp
c3RhbmNlLCB0aGUgdW5pdHMgYXJlOiAnTXBjJywgJ2twYycsICdwYycsICdhdScsICdyc3VuJyw9
MjAKLSAgICAgICAgJ2ttJywgZXRjLiAgRm9yIHRpbWUsIHRoZSB1bml0cyBhcmU6ICdNeXInLCAn
a3lyJywgJ3lyJywgJ2RheScsICdoPQpyJyw9MjAKKyAgICAgICAgVGhlIHF1YW50aXR5IGtleXdv
cmQgY2FuIGJlIGVxdWFsIHRvIGBkaXN0YW5jZWAgb3IgYHRpbWVgLiAgSW4gdGhlCisgICAgICAg
IGNhc2Ugb2YgZGlzdGFuY2UsIHRoZSB1bml0cyBhcmU6ICdNcGMnLCAna3BjJywgJ3BjJywgJ2F1
JywgJ3JzdW4nLAorICAgICAgICAna20nLCBldGMuICBGb3IgdGltZSwgdGhlIHVuaXRzIGFyZTog
J015cicsICdreXInLCAneXInLCAnZGF5JywgJ2g9CnInLAogICAgICAgICAncycsICdtcycsIGV0
Yy4KLSAgICAgICA9MjAKLSAgICAgICAgSWYgcmV0dXJuX3F1YW50aXR5IGlzIHNldCB0byBUcnVl
LCBpdCBmaW5kcyB0aGUgbGFyZ2VzdCBZVFF1YW50aXR5PTIwCi0gICAgICAgIG9iamVjdCB3aXRo
IGEgd2hvbGUgdW5pdCBhbmQgYSBwb3dlciBvZiB0ZW4gYXMgdGhlIGNvZWZmaWNpZW50LCBhbj0K
ZCBpdD0yMAorCisgICAgICAgIElmIHJldHVybl9xdWFudGl0eSBpcyBzZXQgdG8gVHJ1ZSwgaXQg
ZmluZHMgdGhlIGxhcmdlc3QgWVRRdWFudGl0eQorICAgICAgICBvYmplY3Qgd2l0aCBhIHdob2xl
IHVuaXQgYW5kIGEgcG93ZXIgb2YgdGVuIGFzIHRoZSBjb2VmZmljaWVudCwgYW49CmQgaXQKICAg
ICAgICAgcmV0dXJucyB0aGlzIFlUUXVhbnRpdHkuCiAgICAgICAgICIiIgogICAgICAgICBnb29k
X3UgPTNEIE5vbmUKICAgICAgICAgaWYgcXVhbnRpdHkgPTNEPTNEICdkaXN0YW5jZSc6Ci0gICAg
ICAgICAgICB1bml0X2xpc3QgPTNEWydQcGMnLCAnVHBjJywgJ0dwYycsICdNcGMnLCAna3BjJywg
J3BjJywgJ2F1JywgJz0KcnN1bicsPTIwCisgICAgICAgICAgICB1bml0X2xpc3QgPTNEWydQcGMn
LCAnVHBjJywgJ0dwYycsICdNcGMnLCAna3BjJywgJ3BjJywgJ2F1JywgJz0KcnN1bicsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAna20nLCAnY20nLCAndW0nLCAnbm0nLCAncG0nXQogICAgICAg
ICBlbGlmIHF1YW50aXR5ID0zRD0zRCAndGltZSc6Ci0gICAgICAgICAgICB1bml0X2xpc3QgPTNE
WydZeXInLCAnWnlyJywgJ0V5cicsICdQeXInLCAnVHlyJywgJ0d5cicsICdNeXInLD0KICdreXIn
LD0yMAorICAgICAgICAgICAgdW5pdF9saXN0ID0zRFsnWXlyJywgJ1p5cicsICdFeXInLCAnUHly
JywgJ1R5cicsICdHeXInLCAnTXlyJyw9CiAna3lyJywKICAgICAgICAgICAgICAgICAgICAgICAg
ICd5cicsICdkYXknLCAnaHInLCAncycsICdtcycsICd1cycsICducycsICdwcycsICdmPQpzJ10K
ICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHJhaXNlIFN5bnRheEVycm9yKCJTcGVjaWZpZWQg
cXVhbnRpdHkgbXVzdCBiZSBlcXVhbCB0byAnZGlzdGFuPQpjZSciXApAQCAtMzAxLDcgKzMwMSw3
IEBACiAgICAgICAgICAgICAgICAgdXEgPTNEIHNlbGYucXVhbihqLCBnb29kX3UpCiAgICAgICAg
ICAgICAgICAgaWYgdXEgPD0zRCB2OgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gdXEKLSAg
ICAgICAgZWxzZTogICAgICAgICAgID0yMAorICAgICAgICBlbHNlOgogICAgICAgICAgICAgcmV0
dXJuIGdvb2RfdQo9MjAKICAgICBkZWYgaGFzX2tleShzZWxmLCBrZXkpOgpAQCAtMzc1LDYgKzM3
NSw3IEBACiAgICAgICAgICAgICBteWxvZy5kZWJ1ZygiQ3JlYXRpbmcgUGFydGljbGUgVW5pb24g
J2FsbCciKQogICAgICAgICAgICAgcHUgPTNEIFBhcnRpY2xlVW5pb24oImFsbCIsIGxpc3Qoc2Vs
Zi5wYXJ0aWNsZV90eXBlc19yYXcpKQogICAgICAgICAgICAgc2VsZi5hZGRfcGFydGljbGVfdW5p
b24ocHUpCisgICAgICAgIHNlbGYuZmllbGRfaW5mby5zZXR1cF9leHRyYV91bmlvbl9maWVsZHMo
KQogICAgICAgICBteWxvZy5pbmZvKCJMb2FkaW5nIGZpZWxkIHBsdWdpbnMuIikKICAgICAgICAg
c2VsZi5maWVsZF9pbmZvLmxvYWRfYWxsX3BsdWdpbnMoKQogICAgICAgICBkZXBzLCB1bmxvYWRl
ZCA9M0Qgc2VsZi5maWVsZF9pbmZvLmNoZWNrX2Rlcml2ZWRfZmllbGRzKCkKQEAgLTU5OSw3ICs2
MDAsNyBAQAogICAgIGRlZiBmaW5kX2ZpZWxkX3ZhbHVlc19hdF9wb2ludChzZWxmLCBmaWVsZHMs
IGNvb3Jkcyk6CiAgICAgICAgICIiIgogICAgICAgICBSZXR1cm5zIHRoZSB2YWx1ZXMgW2ZpZWxk
MSwgZmllbGQyLC4uLl0gb2YgdGhlIGZpZWxkcyBhdCB0aGUgZ2l2ZW4KLSAgICAgICAgY29vcmRp
bmF0ZXMuIFJldHVybnMgYSBsaXN0IG9mIGZpZWxkIHZhbHVlcyBpbiB0aGUgc2FtZSBvcmRlciBh
cz0yMAorICAgICAgICBjb29yZGluYXRlcy4gUmV0dXJucyBhIGxpc3Qgb2YgZmllbGQgdmFsdWVz
IGluIHRoZSBzYW1lIG9yZGVyIGFzCiAgICAgICAgIHRoZSBpbnB1dCAqZmllbGRzKi4KICAgICAg
ICAgIiIiCiAgICAgICAgIHJldHVybiBzZWxmLnBvaW50KGNvb3JkcylbZmllbGRzXQpAQCAtNjA3
LDcgKzYwOCw3IEBACiAgICAgZGVmIGZpbmRfZmllbGRfdmFsdWVzX2F0X3BvaW50cyhzZWxmLCBm
aWVsZHMsIGNvb3Jkcyk6CiAgICAgICAgICIiIgogICAgICAgICBSZXR1cm5zIHRoZSB2YWx1ZXMg
W2ZpZWxkMSwgZmllbGQyLC4uLl0gb2YgdGhlIGZpZWxkcyBhdCB0aGUgZ2l2ZW4KLSAgICAgICAg
Wyh4MSwgeTEsIHoyKSwgKHgyLCB5MiwgejIpLC4uLl0gcG9pbnRzLiAgUmV0dXJucyBhIGxpc3Qg
b2YgZmllbGQ9MjAKKyAgICAgICAgWyh4MSwgeTEsIHoyKSwgKHgyLCB5MiwgejIpLC4uLl0gcG9p
bnRzLiAgUmV0dXJucyBhIGxpc3Qgb2YgZmllbGQKICAgICAgICAgdmFsdWVzIGluIHRoZSBzYW1l
IG9yZGVyIGFzIHRoZSBpbnB1dCAqZmllbGRzKi4KPTIwCiAgICAgICAgIFRoaXMgaXMgcXVpdGUg
c2xvdyByaWdodCBub3cgYXMgaXQgY3JlYXRlcyBhIG5ldyBkYXRhIG9iamVjdCBmb3IgZT0KYWNo
CkBAIC03ODcsOCArNzg4LDcgQEAKPTIwCiAgICAgICAgIGlucHV0X2FycmF5IDogaXRlcmFibGUK
ICAgICAgICAgICAgIEEgdHVwbGUsIGxpc3QsIG9yIGFycmF5IHRvIGF0dGFjaCB1bml0cyB0bwot
ICAgICAgICBpbnB1dF91bml0cyA6IFN0cmluZyB1bml0IHNwZWNpZmljYXRpb24sIHVuaXQgc3lt
Ym9sIG9iamVjdCwgb3IgYXM9CnRyb3B5Ci0gICAgICAgICAgICAgICAgICAgICAgdW5pdHMgb2Jq
ZWN0CisgICAgICAgIGlucHV0X3VuaXRzIDogU3RyaW5nIHVuaXQgc3BlY2lmaWNhdGlvbiwgdW5p
dCBzeW1ib2wgb3IgYXN0cm9weSBvYj0KamVjdAogICAgICAgICAgICAgVGhlIHVuaXRzIG9mIHRo
ZSBhcnJheS4gUG93ZXJzIG11c3QgYmUgc3BlY2lmaWVkIHVzaW5nIHB5dGhvbiA9CnN5bnRheAog
ICAgICAgICAgICAgKGNtKiozLCBub3QgY21eMykuCiAgICAgICAgIGR0eXBlIDogc3RyaW5nIG9y
IE51bVB5IGR0eXBlIG9iamVjdApAQCAtODE1LDYgKzgxNSw3IEBACiAgICAgICAgICAgICAgICAg
IDEuMDAwMTA0NDldKSBNcGMKPTIwCiAgICAgICAgICIiIgorCiAgICAgICAgIGlmIHNlbGYuX2Fy
ciBpcyBub3QgTm9uZToKICAgICAgICAgICAgIHJldHVybiBzZWxmLl9hcnIKICAgICAgICAgc2Vs
Zi5fYXJyID0zRCBmdW5jdG9vbHMucGFydGlhbChZVEFycmF5LCByZWdpc3RyeSA9M0Qgc2VsZi51
bml0X3JlPQpnaXN0cnkpCkBAIC04MzMsOCArODM0LDcgQEAKPTIwCiAgICAgICAgIGlucHV0X3Nj
YWxhciA6IGFuIGludGVnZXIgb3IgZmxvYXRpbmcgcG9pbnQgc2NhbGFyCiAgICAgICAgICAgICBU
aGUgc2NhbGFyIHRvIGF0dGFjaCB1bml0cyB0bwotICAgICAgICBpbnB1dF91bml0cyA6IFN0cmlu
ZyB1bml0IHNwZWNpZmljYXRpb24sIHVuaXQgc3ltYm9sIG9iamVjdCwgb3IgYXM9CnRyb3B5Ci0g
ICAgICAgICAgICAgICAgICAgICAgdW5pdHMKKyAgICAgICAgaW5wdXRfdW5pdHMgOiBTdHJpbmcg
dW5pdCBzcGVjaWZpY2F0aW9uLCB1bml0IHN5bWJvbCBvciBhc3Ryb3B5IG9iPQpqZWN0CiAgICAg
ICAgICAgICBUaGUgdW5pdHMgb2YgdGhlIHF1YW50aXR5LiBQb3dlcnMgbXVzdCBiZSBzcGVjaWZp
ZWQgdXNpbmcgcHl0aD0Kb24KICAgICAgICAgICAgIHN5bnRheCAoY20qKjMsIG5vdCBjbV4zKS4K
ICAgICAgICAgZHR5cGUgOiBzdHJpbmcgb3IgTnVtUHkgZHR5cGUgb2JqZWN0CkBAIC04NjEsNiAr
ODYxLDcgQEAKICAgICAgICAgMS41NDNlKzI1IGNtCj0yMAogICAgICAgICAiIiIKKwogICAgICAg
ICBpZiBzZWxmLl9xdWFuIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3F1
YW4KICAgICAgICAgc2VsZi5fcXVhbiA9M0QgZnVuY3Rvb2xzLnBhcnRpYWwoWVRRdWFudGl0eSwg
cmVnaXN0cnk9M0RzZWxmLnVuaXRfPQpyZWdpc3RyeSkKQEAgLTk2OCwxMiArOTY5LDEyIEBACiAg
ICAgICAgIHJldHVybiAoImRlcG9zaXQiLCBmaWVsZF9uYW1lKQo9MjAKICAgICBkZWYgYWRkX2dy
YWRpZW50X2ZpZWxkcyhzZWxmLCBpbnB1dF9maWVsZCk6Ci0gICAgICAgICIiIkFkZCBncmFkaWVu
dCBmaWVsZHMuPTIwCisgICAgICAgICIiIkFkZCBncmFkaWVudCBmaWVsZHMuCj0yMAogICAgICAg
ICBDcmVhdGVzIGZvdXIgbmV3IGdyaWQtYmFzZWQgZmllbGRzIHRoYXQgcmVwcmVzZW50IHRoZSBj
b21wb25lbnRzIG9mCiAgICAgICAgIHRoZSBncmFkaWVudCBvZiBhbiBleGlzdGluZyBmaWVsZCwg
cGx1cyBhbiBleHRyYSBmaWVsZCBmb3IgdGhlIG1hZz0Kbml0dWRlCi0gICAgICAgIG9mIHRoZSBn
cmFkaWVudC4gQ3VycmVudGx5IG9ubHkgc3VwcG9ydGVkIGluIENhcnRlc2lhbiBnZW9tZXRyaWVz
Lj0KIFRoZT0yMAotICAgICAgICBncmFkaWVudCBpcyBjb21wdXRlZCB1c2luZyBzZWNvbmQtb3Jk
ZXIgY2VudGVyZWQgZGlmZmVyZW5jZXMuPTIwCisgICAgICAgIG9mIHRoZSBncmFkaWVudC4gQ3Vy
cmVudGx5IG9ubHkgc3VwcG9ydGVkIGluIENhcnRlc2lhbiBnZW9tZXRyaWVzLj0KIFRoZQorICAg
ICAgICBncmFkaWVudCBpcyBjb21wdXRlZCB1c2luZyBzZWNvbmQtb3JkZXIgY2VudGVyZWQgZGlm
ZmVyZW5jZXMuCj0yMAogICAgICAgICBQYXJhbWV0ZXJzCiAgICAgICAgIC0tLS0tLS0tLS0KQEAg
LTk4NSwxNCArOTg2LDE0IEBACiAgICAgICAgIFJldHVybnMKICAgICAgICAgLS0tLS0tLQogICAg
ICAgICBBIGxpc3Qgb2YgZmllbGQgbmFtZSB0dXBsZXMgZm9yIHRoZSBuZXdseSBjcmVhdGVkIGZp
ZWxkcy4KLSAgICAgICA9MjAKKwogICAgICAgICBFeGFtcGxlcwogICAgICAgICAtLS0tLS0tLQog
ICAgICAgICA+Pj4gZ3JhZF9maWVsZHMgPTNEIGRzLmFkZF9ncmFkaWVudF9maWVsZHMoKCJnYXMi
LCJ0ZW1wZXJhdHVyZSIpKQogICAgICAgICA+Pj4gcHJpbnQoZ3JhZF9maWVsZHMpCi0gICAgICAg
IFsoJ2dhcycsICd0ZW1wZXJhdHVyZV9ncmFkaWVudF94JyksPTIwCi0gICAgICAgICAoJ2dhcycs
ICd0ZW1wZXJhdHVyZV9ncmFkaWVudF95JyksPTIwCi0gICAgICAgICAoJ2dhcycsICd0ZW1wZXJh
dHVyZV9ncmFkaWVudF96JyksPTIwCisgICAgICAgIFsoJ2dhcycsICd0ZW1wZXJhdHVyZV9ncmFk
aWVudF94JyksCisgICAgICAgICAoJ2dhcycsICd0ZW1wZXJhdHVyZV9ncmFkaWVudF95JyksCisg
ICAgICAgICAoJ2dhcycsICd0ZW1wZXJhdHVyZV9ncmFkaWVudF96JyksCiAgICAgICAgICAoJ2dh
cycsICd0ZW1wZXJhdHVyZV9ncmFkaWVudF9tYWduaXR1ZGUnKV0KICAgICAgICAgIiIiCiAgICAg
ICAgIHNlbGYuaW5kZXgKCmRpZmYgLXIgYTUwZTlkNmNhZWEzZTg4YTEwYWNjNjhkZGUyYWM4MTI4
YTRjNmFiZiAtciAwNGM5ZWI0MDQzNjI4MjExM2ZiMjI5Yz0KNzdiZjFhYjE4N2MwMzJjNTAgeXQv
ZGF0YV9vYmplY3RzL3RpbWVfc2VyaWVzLnB5Ci0tLSBhL3l0L2RhdGFfb2JqZWN0cy90aW1lX3Nl
cmllcy5weQorKysgYi95dC9kYXRhX29iamVjdHMvdGltZV9zZXJpZXMucHkKQEAgLTEzMCw3ICsx
MzAsNyBAQAogICAgIGRlZiBfX25ld19fKGNscywgb3V0cHV0cywgKmFyZ3MsICoqa3dhcmdzKToK
ICAgICAgICAgaWYgaXNpbnN0YW5jZShvdXRwdXRzLCBzdHJpbmdfdHlwZXMpOgogICAgICAgICAg
ICAgb3V0cHV0cyA9M0QgZ2V0X2ZpbGVuYW1lc19mcm9tX2dsb2JfcGF0dGVybihvdXRwdXRzKQot
ICAgICAgICByZXQgPTNEIHN1cGVyKERhdGFzZXRTZXJpZXMsIGNscykuX19uZXdfXyhjbHMsICph
cmdzLCAqKmt3YXJncykKKyAgICAgICAgcmV0ID0zRCBzdXBlcihEYXRhc2V0U2VyaWVzLCBjbHMp
Ll9fbmV3X18oY2xzKQogICAgICAgICB0cnk6CiAgICAgICAgICAgICByZXQuX3ByZV9vdXRwdXRz
ID0zRCBvdXRwdXRzWzpdCiAgICAgICAgIGV4Y2VwdCBUeXBlRXJyb3I6CgpkaWZmIC1yIGE1MGU5
ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFjODEyOGE0YzZhYmYgLXIgMDRjOWViNDA0MzYyODIxMTNm
YjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUwIHl0L2ZpZWxkcy9maWVsZF9pbmZvX2NvbnRhaW5lci5w
eQotLS0gYS95dC9maWVsZHMvZmllbGRfaW5mb19jb250YWluZXIucHkKKysrIGIveXQvZmllbGRz
L2ZpZWxkX2luZm9fY29udGFpbmVyLnB5CkBAIC0yOSw2ICsyOSw3IEBACiBmcm9tIC5maWVsZF9w
bHVnaW5fcmVnaXN0cnkgaW1wb3J0IFwKICAgICBmaWVsZF9wbHVnaW5zCiBmcm9tIC5wYXJ0aWNs
ZV9maWVsZHMgaW1wb3J0IFwKKyAgICBhZGRfdW5pb25fZmllbGQsIFwKICAgICBwYXJ0aWNsZV9k
ZXBvc2l0aW9uX2Z1bmN0aW9ucywgXAogICAgIHBhcnRpY2xlX3ZlY3Rvcl9mdW5jdGlvbnMsIFwK
ICAgICBwYXJ0aWNsZV9zY2FsYXJfZnVuY3Rpb25zLCBcCkBAIC00Nyw2ICs0OCw3IEBACiAgICAg
ZmFsbGJhY2sgPTNEIE5vbmUKICAgICBrbm93bl9vdGhlcl9maWVsZHMgPTNEICgpCiAgICAga25v
d25fcGFydGljbGVfZmllbGRzID0zRCAoKQorICAgIGV4dHJhX3VuaW9uX2ZpZWxkcyA9M0QgKCkK
PTIwCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGRzLCBmaWVsZF9saXN0LCBzbGljZV9pbmZvID0z
RCBOb25lKToKICAgICAgICAgc2VsZi5fc2hvd19maWVsZF9lcnJvcnMgPTNEIFtdCkBAIC0xMTcs
NiArMTE5LDEzIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bV9uZWln
aGJvcnM9M0RudW1fbmVpZ2hib3JzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBmdHlwZT0zRGZ0eXBlKQo9MjAKKyAgICBkZWYgc2V0dXBfZXh0cmFfdW5pb25fZmllbGRzKHNl
bGYsIHB0eXBlPTNEImFsbCIpOgorICAgICAgICBpZiBwdHlwZSAhPTNEICJhbGwiOgorICAgICAg
ICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJzZXR1cF9leHRyYV91bmlvbl9maWVsZHMgaXMgY3Vy
cmVudGx5IiArPTIwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9ubHkgZW5hYmxl
ZCBmb3IgcGFydGljbGUgdHlwZSBcImFsbFwiLiIpCisgICAgICAgIGZvciB1bml0cywgZmllbGQg
aW4gc2VsZi5leHRyYV91bmlvbl9maWVsZHM6CisgICAgICAgICAgICBhZGRfdW5pb25fZmllbGQo
c2VsZiwgcHR5cGUsIGZpZWxkLCB1bml0cykKKwogICAgIGRlZiBzZXR1cF9zbW9vdGhlZF9maWVs
ZHMoc2VsZiwgcHR5cGUsIG51bV9uZWlnaGJvcnMgPTNEIDY0LCBmdHlwZSA9M0Q9CiAiZ2FzIik6
CiAgICAgICAgICMgV2UgY2FuIGluIHByaW5jaXBsZSBjb21wdXRlIHRoaXMsIGJ1dCBpdCBpcyBu
b3QgeWV0IGltcGxlbWVudGVkLgogICAgICAgICBpZiAocHR5cGUsICJkZW5zaXR5Iikgbm90IGlu
IHNlbGY6CgpkaWZmIC1yIGE1MGU5ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFjODEyOGE0YzZhYmYg
LXIgMDRjOWViNDA0MzYyODIxMTNmYjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUwIHl0L2ZpZWxkcy9w
YXJ0aWNsZV9maWVsZHMucHkKLS0tIGEveXQvZmllbGRzL3BhcnRpY2xlX2ZpZWxkcy5weQorKysg
Yi95dC9maWVsZHMvcGFydGljbGVfZmllbGRzLnB5CkBAIC04MzksNCArODM5LDE3IEBACiAgICAg
ICAgICAgICAgICAgICAgICAgIHVuaXRzID0zRCAiZy9jbSoqMyIpCiAgICAgcmV0dXJuIFtmaWVs
ZF9uYW1lXQo9MjAKK2RlZiBhZGRfdW5pb25fZmllbGQocmVnaXN0cnksIHB0eXBlLCBmaWVsZF9u
YW1lLCB1bml0cyk6CisgICAgIiIiCisgICAgQ3JlYXRlIGEgZmllbGQgdGhhdCBpcyB0aGUgY29u
Y2F0ZW5hdGlvbiBvZiBtdWx0aXBsZSBwYXJ0aWNsZSB0eXBlcy4KKyAgICBUaGlzIGFsbG93cyB1
cyB0byBjcmVhdGUgZmllbGRzIGZvciBwYXJ0aWNsZSB1bmlvbnMgdXNpbmcgYWxpYXMgbmFtZXMu
CisgICAgIiIiCj0yMAorICAgIGRlZiBfY2F0X2ZpZWxkKGZpZWxkLCBkYXRhKToKKyAgICAgICAg
cmV0dXJuIHVjb25jYXRlbmF0ZShbZGF0YVtkZXBfdHlwZSwgZmllbGRfbmFtZV0KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZm9yIGRlcF90eXBlIGluIGRhdGEuZHMucGFydGljbGVfdHlw
ZXNfcmF3XSkKKworICAgIHJlZ2lzdHJ5LmFkZF9maWVsZCgocHR5cGUsIGZpZWxkX25hbWUpLAor
ICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbj0zRF9jYXRfZmllbGQsCisgICAgICAgICAg
ICAgICAgICAgICAgIHBhcnRpY2xlX3R5cGU9M0RUcnVlLAorICAgICAgICAgICAgICAgICAgICAg
ICB1bml0cz0zRHVuaXRzKQoKZGlmZiAtciBhNTBlOWQ2Y2FlYTNlODhhMTBhY2M2OGRkZTJhYzgx
MjhhNGM2YWJmIC1yIDA0YzllYjQwNDM2MjgyMTEzZmIyMjljPQo3N2JmMWFiMTg3YzAzMmM1MCB5
dC9mcm9udGVuZHMvYXBpLnB5Ci0tLSBhL3l0L2Zyb250ZW5kcy9hcGkucHkKKysrIGIveXQvZnJv
bnRlbmRzL2FwaS5weQpAQCAtMjcsNiArMjcsNyBAQAogICAgICdmaXRzJywKICAgICAnZmxhc2gn
LAogICAgICdnYWRnZXQnLAorICAgICdnYWRnZXRfZm9mJywKICAgICAnZ2RmJywKICAgICAnaGFs
b19jYXRhbG9nJywKICAgICAnaHR0cF9zdHJlYW0nLAoKZGlmZiAtciBhNTBlOWQ2Y2FlYTNlODhh
MTBhY2M2OGRkZTJhYzgxMjhhNGM2YWJmIC1yIDA0YzllYjQwNDM2MjgyMTEzZmIyMjljPQo3N2Jm
MWFiMTg3YzAzMmM1MCB5dC9mcm9udGVuZHMvYXJ0L2RhdGFfc3RydWN0dXJlcy5weQotLS0gYS95
dC9mcm9udGVuZHMvYXJ0L2RhdGFfc3RydWN0dXJlcy5weQorKysgYi95dC9mcm9udGVuZHMvYXJ0
L2RhdGFfc3RydWN0dXJlcy5weQpAQCAtMjU1LDcgKzI1NSw2IEBACiAgICAgICAgIHNlbGYudmVs
b2NpdHlfdW5pdCA9M0Qgc2VsZi5xdWFuKHZlbG9jaXR5LCAiY20vcyIpCiAgICAgICAgIHNlbGYu
dGltZV91bml0ID0zRCBzZWxmLmxlbmd0aF91bml0IC8gc2VsZi52ZWxvY2l0eV91bml0Cj0yMAot
CiAgICAgZGVmIF9wYXJzZV9wYXJhbWV0ZXJfZmlsZShzZWxmKToKICAgICAgICAgIiIiCiAgICAg
ICAgIEdldCB0aGUgdmFyaW91cyBzaW11bGF0aW9uIHBhcmFtZXRlcnMgJiBjb25zdGFudHMuCgpk
aWZmIC1yIGE1MGU5ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFjODEyOGE0YzZhYmYgLXIgMDRjOWVi
NDA0MzYyODIxMTNmYjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUwIHl0L2Zyb250ZW5kcy9hcnQvZmll
bGRzLnB5Ci0tLSBhL3l0L2Zyb250ZW5kcy9hcnQvZmllbGRzLnB5CisrKyBiL3l0L2Zyb250ZW5k
cy9hcnQvZmllbGRzLnB5CkBAIC02MCwzICs2MCw3NSBAQAogICAgICAgICAoInBhcnRpY2xlX21l
dGFsbGljaXR5MSIsICgiIiwgW10sIE5vbmUpKSwKICAgICAgICAgKCJwYXJ0aWNsZV9tZXRhbGxp
Y2l0eTIiLCAoIiIsIFtdLCBOb25lKSksCiAgICAgKQorCisgICAgZGVmIHNldHVwX2ZsdWlkX2Zp
ZWxkcyhzZWxmKToKKyAgICAgICAgZGVmIF90ZW1wZXJhdHVyZShmaWVsZCwgZGF0YSk6CisgICAg
ICAgICAgICByMCA9M0QgZGF0YS5kcy5wYXJhbWV0ZXJzWydib3hoJ10gLyBkYXRhLmRzLnBhcmFt
ZXRlcnNbJ25nJ10KKyAgICAgICAgICAgIHRyID0zRCBkYXRhLmRzLnF1YW4oMy4wM2U1ICogcjAq
KjIsICdLL2NvZGVfdmVsb2NpdHkqKjInKQorICAgICAgICAgICAgdHIgKj0zRCBkYXRhLmRzLnBh
cmFtZXRlcnNbJ3dtdSddICogZGF0YS5kcy5wYXJhbWV0ZXJzWydPbTAnXQorICAgICAgICAgICAg
dHIgKj0zRCAoZGF0YS5kcy5wYXJhbWV0ZXJzWydnYW1tYSddIC0gMS4pCisgICAgICAgICAgICB0
ciAvPTNEIGRhdGEuZHMucGFyYW1ldGVyc1snYWV4cG4nXSoqMgorICAgICAgICAgICAgcmV0dXJu
ICB0ciAqIGRhdGFbJ2FydCcsICdHYXNFbmVyZ3knXSAvIGRhdGFbJ2FydCcsICdEZW5zaXR5J10K
KyAgICAgICAgc2VsZi5hZGRfZmllbGQoKCdnYXMnLCAndGVtcGVyYXR1cmUnKSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgZnVuY3Rpb249M0RfdGVtcGVyYXR1cmUsPTIwCisgICAgICAgICAgICAg
ICAgICAgICAgIHVuaXRzPTNEJ0snKQorCisgICAgICAgIGRlZiBfZ2V0X3ZlbChheGlzKToKKyAg
ICAgICAgICAgIGRlZiB2ZWxvY2l0eShmaWVsZCwgZGF0YSk6CisgICAgICAgICAgICAgICAgcmV0
dXJuIChkYXRhWygnZ2FzJywnbW9tZW50dW1fJXMnICUgYXhpcyldIC8KKyAgICAgICAgICAgICAg
ICAgICAgICAgIGRhdGFbKCdnYXMnLCdkZW5zaXR5JyldKQorICAgICAgICAgICAgcmV0dXJuIHZl
bG9jaXR5CisgICAgICAgIGZvciBheCBpbiAneHl6JzoKKyAgICAgICAgICAgIHNlbGYuYWRkX2Zp
ZWxkKCgnZ2FzJywndmVsb2NpdHlfJXMnICUgYXgpLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZnVuY3Rpb24gPTNEIF9nZXRfdmVsKGF4KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
IHVuaXRzPTNEJ2NtL3MnKQorCisgICAgICAgIGRlZiBfbW9tZW50dW1fbWFnbml0dWRlKGZpZWxk
LCBkYXRhKToKKyAgICAgICAgICAgIHRyID0zRCAoZGF0YVsnZ2FzJywnbW9tZW50dW1feCddKioy
ICsKKyAgICAgICAgICAgICAgICAgIGRhdGFbJ2dhcycsJ21vbWVudHVtX3knXSoqMiArCisgICAg
ICAgICAgICAgICAgICBkYXRhWydnYXMnLCdtb21lbnR1bV96J10qKjIpKiowLjUKKyAgICAgICAg
ICAgIHRyICo9M0QgZGF0YVsnaW5kZXgnLCdjZWxsX3ZvbHVtZSddLmluX3VuaXRzKCdjbSoqMycp
CisgICAgICAgICAgICByZXR1cm4gdHIKKyAgICAgICAgc2VsZi5hZGRfZmllbGQoKCdnYXMnLCAn
bW9tZW50dW1fbWFnbml0dWRlJyksCisgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uPTNE
X21vbWVudHVtX21hZ25pdHVkZSwKKyAgICAgICAgICAgICAgICAgICAgICAgdW5pdHM9M0QnZypj
bS9zJykKKworICAgICAgICBkZWYgX3ZlbG9jaXR5X21hZ25pdHVkZShmaWVsZCwgZGF0YSk6Cisg
ICAgICAgICAgICB0ciA9M0QgZGF0YVsnZ2FzJywnbW9tZW50dW1fbWFnbml0dWRlJ10KKyAgICAg
ICAgICAgIHRyIC89M0QgZGF0YVsnZ2FzJywnY2VsbF9tYXNzJ10KKyAgICAgICAgICAgIHJldHVy
biB0cgorICAgICAgICBzZWxmLmFkZF9maWVsZCgoJ2dhcycsICd2ZWxvY2l0eV9tYWduaXR1ZGUn
KSwKKyAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb249M0RfdmVsb2NpdHlfbWFnbml0dWRl
LAorICAgICAgICAgICAgICAgICAgICAgICB1bml0cz0zRCdjbS9zJykKKworICAgICAgICBkZWYg
X21ldGFsX2RlbnNpdHkoZmllbGQsIGRhdGEpOgorICAgICAgICAgICAgdHIgPTNEIGRhdGFbJ2dh
cycsJ21ldGFsX2lhX2RlbnNpdHknXQorICAgICAgICAgICAgdHIgKz0zRCBkYXRhWydnYXMnLCdt
ZXRhbF9paV9kZW5zaXR5J10KKyAgICAgICAgICAgIHJldHVybiB0cgorICAgICAgICBzZWxmLmFk
ZF9maWVsZCgoJ2dhcycsJ21ldGFsX2RlbnNpdHknKSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ZnVuY3Rpb249M0RfbWV0YWxfZGVuc2l0eSwKKyAgICAgICAgICAgICAgICAgICAgICAgdW5pdHM9
M0QnZy9jbSoqMycpCisKKyAgICAgICAgZGVmIF9tZXRhbF9tYXNzX2ZyYWN0aW9uKGZpZWxkLCBk
YXRhKToKKyAgICAgICAgICAgIHRyID0zRCBkYXRhWydnYXMnLCdtZXRhbF9kZW5zaXR5J10KKyAg
ICAgICAgICAgIHRyIC89M0QgZGF0YVsnZ2FzJywnZGVuc2l0eSddCisgICAgICAgICAgICByZXR1
cm4gdHIKKyAgICAgICAgc2VsZi5hZGRfZmllbGQoKCdnYXMnLCAnbWV0YWxfbWFzc19mcmFjdGlv
bicpLAorICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbj0zRF9tZXRhbF9tYXNzX2ZyYWN0
aW9uLAorICAgICAgICAgICAgICAgICAgICAgICB1bml0cz0zRCcnKQorCisgICAgICAgIGRlZiBf
SF9tYXNzX2ZyYWN0aW9uKGZpZWxkLCBkYXRhKToKKyAgICAgICAgICAgIHRyID0zRCAoMS4gLSBk
YXRhLmRzLnBhcmFtZXRlcnNbJ1lfcCddIC09MjAKKyAgICAgICAgICAgICAgICAgIGRhdGFbJ2dh
cycsICdtZXRhbF9tYXNzX2ZyYWN0aW9uJ10pCisgICAgICAgICAgICByZXR1cm4gdHIKKyAgICAg
ICAgc2VsZi5hZGRfZmllbGQoKCdnYXMnLCAnSF9tYXNzX2ZyYWN0aW9uJyksCisgICAgICAgICAg
ICAgICAgICAgICAgIGZ1bmN0aW9uPTNEX0hfbWFzc19mcmFjdGlvbiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgdW5pdHM9M0QnJykKKworICAgICAgICBkZWYgX21ldGFsbGljaXR5KGZpZWxkLCBk
YXRhKToKKyAgICAgICAgICAgIHRyID0zRCBkYXRhWydnYXMnLCdtZXRhbF9tYXNzX2ZyYWN0aW9u
J10KKyAgICAgICAgICAgIHRyIC89M0QgZGF0YVsnZ2FzJywnSF9tYXNzX2ZyYWN0aW9uJ10KKyAg
ICAgICAgICAgIHJldHVybiB0cgorICAgICAgICBzZWxmLmFkZF9maWVsZCgoJ2dhcycsICdtZXRh
bGxpY2l0eScpLAorICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbj0zRF9tZXRhbGxpY2l0
eSwKKyAgICAgICAgICAgICAgICAgICAgICAgdW5pdHM9M0QnJykKCmRpZmYgLXIgYTUwZTlkNmNh
ZWEzZTg4YTEwYWNjNjhkZGUyYWM4MTI4YTRjNmFiZiAtciAwNGM5ZWI0MDQzNjI4MjExM2ZiMjI5
Yz0KNzdiZjFhYjE4N2MwMzJjNTAgeXQvZnJvbnRlbmRzL2FydC9pby5weQotLS0gYS95dC9mcm9u
dGVuZHMvYXJ0L2lvLnB5CisrKyBiL3l0L2Zyb250ZW5kcy9hcnQvaW8ucHkKQEAgLTEzMyw3ICsx
MzMsNyBAQAogICAgICAgICAgICAgICAgIHRyW2ZpZWxkXSA9M0QgcnAoW2F4XSlbMF0vZGQgLSBv
ZmYKICAgICAgICAgICAgIGlmIGZuYW1lLnN0YXJ0c3dpdGgoInBhcnRpY2xlX3ZlbG9jaXR5XyVz
IiAlIGF4KToKICAgICAgICAgICAgICAgICB0cltmaWVsZF0sID0zRCBycChbJ3YnK2F4XSkKLSAg
ICAgICAgaWYgZm5hbWUgPTNEPTNEICJwYXJ0aWNsZV9tYXNzIjoKKyAgICAgICAgaWYgZm5hbWUu
c3RhcnRzd2l0aCgicGFydGljbGVfbWFzcyIpOgogICAgICAgICAgICAgYSA9M0QgMAogICAgICAg
ICAgICAgZGF0YSA9M0QgbnAuemVyb3MobnBhLCBkdHlwZT0zRCdmOCcpCiAgICAgICAgICAgICBm
b3IgcHRiLCBzaXplLCBtIGluIHppcChwYm9vbCwgc2l6ZXMsIHNlbGYud3MpOgpAQCAtMTcwLDcg
KzE3MCw3IEBACiAgICAgICAgICAgICB0cltmaWVsZF0gPTNEIHRlbXAKICAgICAgICAgICAgIGRl
bCBkYXRhCiAgICAgICAgICMgV2UgY2hlY2sgYWdhaW4sIGFmdGVyIGl0J3MgYmVlbiBmaWxsZWQK
LSAgICAgICAgaWYgZm5hbWUgPTNEPTNEICJwYXJ0aWNsZV9tYXNzIjoKKyAgICAgICAgaWYgZm5h
bWUuc3RhcnRzd2l0aCgicGFydGljbGVfbWFzcyIpOgogICAgICAgICAgICAgIyBXZSBub3cgZGl2
aWRlIGJ5IE5HcmlkIGluIG9yZGVyIHRvIG1ha2UgdGhpcyBtYXRjaCB1cC4gIE5vdGU9CiB0aGF0
CiAgICAgICAgICAgICAjIHRoaXMgbWVhbnMgdGhhdCBldmVuIHdoZW4gcmVxdWVzdGVkIGluICpj
b2RlIHVuaXRzKiwgd2UgYXJlCiAgICAgICAgICAgICAjIGdpdmluZyB0aGVtIGFzIG1vZGlmaWVk
IGJ5IHRoZSBuZyB2YWx1ZS4gIFRoaXMgb25seSB3b3JrcyBmb3IKQEAgLTIzOSw3ICsyMzksNyBA
QAogICAgICAgICAgICAgICAgIHRyW2ZpZWxkXSA9M0QgcnAoW2F4XSlbMF0vZGQgLSBvZmYKICAg
ICAgICAgICAgIGlmIGZuYW1lLnN0YXJ0c3dpdGgoInBhcnRpY2xlX3ZlbG9jaXR5XyVzIiAlIGF4
KToKICAgICAgICAgICAgICAgICB0cltmaWVsZF0sID0zRCBycChbJ3YnK2F4XSkKLSAgICAgICAg
aWYgZm5hbWUgPTNEPTNEICJwYXJ0aWNsZV9tYXNzIjoKKyAgICAgICAgaWYgZm5hbWUuc3RhcnRz
d2l0aCgicGFydGljbGVfbWFzcyIpOgogICAgICAgICAgICAgYSA9M0QgMAogICAgICAgICAgICAg
ZGF0YSA9M0QgbnAuemVyb3MobnBhLCBkdHlwZT0zRCdmOCcpCiAgICAgICAgICAgICBmb3IgcHRi
LCBzaXplLCBtIGluIHppcChwYm9vbCwgc2l6ZXMsIHNlbGYud3MpOgpAQCAtMjY5LDcgKzI2OSw3
IEBACiAgICAgICAgICAgICB0cltmaWVsZF0gPTNEIHRlbXAKICAgICAgICAgICAgIGRlbCBkYXRh
CiAgICAgICAgICMgV2UgY2hlY2sgYWdhaW4sIGFmdGVyIGl0J3MgYmVlbiBmaWxsZWQKLSAgICAg
ICAgaWYgZm5hbWUgPTNEPTNEICJwYXJ0aWNsZV9tYXNzIjoKKyAgICAgICAgaWYgZm5hbWUuc3Rh
cnRzd2l0aCgicGFydGljbGVfbWFzcyIpOgogICAgICAgICAgICAgIyBXZSBub3cgZGl2aWRlIGJ5
IE5HcmlkIGluIG9yZGVyIHRvIG1ha2UgdGhpcyBtYXRjaCB1cC4gIE5vdGU9CiB0aGF0CiAgICAg
ICAgICAgICAjIHRoaXMgbWVhbnMgdGhhdCBldmVuIHdoZW4gcmVxdWVzdGVkIGluICpjb2RlIHVu
aXRzKiwgd2UgYXJlCiAgICAgICAgICAgICAjIGdpdmluZyB0aGVtIGFzIG1vZGlmaWVkIGJ5IHRo
ZSBuZyB2YWx1ZS4gIFRoaXMgb25seSB3b3JrcyBmb3IKQEAgLTQ4Miw3ICs0ODIsOCBAQAogICAg
IGRhdGEgPTNEIHt9CiAgICAgd2l0aCBvcGVuKGZpbGUsICdyYicpIGFzIGZoOgogICAgICAgICBm
b3IgZHR5cGUsIHZhcmlhYmxlcyBpbiBzdGFyX3N0cnVjdDoKLSAgICAgICAgICAgIGZvdW5kID0z
RCBmaWVsZCBpbiB2YXJpYWJsZXMgb3IgZmllbGQgPTNEPTNEIHZhcmlhYmxlcworICAgICAgICAg
ICAgZm91bmQgPTNEIChpc2luc3RhbmNlKHZhcmlhYmxlcywgdHVwbGUpIGFuZCBmaWVsZCBpbiB2
YXJpYWJsZXM9Cikgb3IgXAorICAgICAgICAgICAgICAgIGZpZWxkID0zRD0zRCB2YXJpYWJsZXMK
ICAgICAgICAgICAgIGlmIGZvdW5kOgogICAgICAgICAgICAgICAgIGRhdGFbZmllbGRdID0zRCBy
ZWFkX3ZlY3RvcihmaCwgZHR5cGVbMV0sIGR0eXBlWzBdKQogICAgICAgICAgICAgZWxzZToKCmRp
ZmYgLXIgYTUwZTlkNmNhZWEzZTg4YTEwYWNjNjhkZGUyYWM4MTI4YTRjNmFiZiAtciAwNGM5ZWI0
MDQzNjI4MjExM2ZiMjI5Yz0KNzdiZjFhYjE4N2MwMzJjNTAgeXQvZnJvbnRlbmRzL2FydC90ZXN0
cy90ZXN0X291dHB1dHMucHkKLS0tIGEveXQvZnJvbnRlbmRzL2FydC90ZXN0cy90ZXN0X291dHB1
dHMucHkKKysrIGIveXQvZnJvbnRlbmRzL2FydC90ZXN0cy90ZXN0X291dHB1dHMucHkKQEAgLTQ2
LDYgKzQ2LDQ5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBkb2JqX25hbWUpCj0yMAo9MjAK
KyAgICBhZCA9M0QgZHMuYWxsX2RhdGEoKQorICAgICMgJ0FuYScgdmFyaWFibGUgdmFsdWVzIG91
dHB1dCBmcm9tIHRoZSBBUlQgRm9ydHJhbiAnQU5BJyBhbmFseXNpcyBjb2RlCisgICAgQW5hTlN0
YXJzID0zRCA2MjU1CisgICAgeWllbGQgYXNzZXJ0X2VxdWFsLCBhZFsoJ3N0YXJzJywncGFydGlj
bGVfdHlwZScpXS5zaXplLCBBbmFOU3RhcnMKKyAgICB5aWVsZCBhc3NlcnRfZXF1YWwsIGFkWygn
c3BlY2llNCcsICdwYXJ0aWNsZV90eXBlJyldLnNpemUsIEFuYU5TdGFycworICAgIEFuYU5ETSA9
M0QgMjgzMzQwNQorICAgIHlpZWxkIGFzc2VydF9lcXVhbCwgYWRbKCdkYXJrbWF0dGVyJywncGFy
dGljbGVfdHlwZScpXS5zaXplLCBBbmFORE0KKyAgICB5aWVsZCBhc3NlcnRfZXF1YWwsIGFkWygn
c3BlY2llMCcsICdwYXJ0aWNsZV90eXBlJyldLnNpemUgKyBcCisgICAgICAgIGFkWygnc3BlY2ll
MScsICdwYXJ0aWNsZV90eXBlJyldLnNpemUgKyBcCisgICAgICAgIGFkWygnc3BlY2llMicsICdw
YXJ0aWNsZV90eXBlJyldLnNpemUgKyBcCisgICAgICAgIGFkWygnc3BlY2llMycsICdwYXJ0aWNs
ZV90eXBlJyldLnNpemUsIEFuYU5ETQorCisgICAgQW5hQm94U2l6ZSA9M0QgeXQudW5pdHMueXRf
YXJyYXkuWVRRdWFudGl0eSg3LjE0NDIxOTY1NjQsJ01wYycpCisgICAgQW5hVm9sdW1lID0zRCB5
dC51bml0cy55dF9hcnJheS5ZVFF1YW50aXR5KDM2NC42NDAwNzQ2NTYsJ01wYyoqMycpCisgICAg
Vm9sdW1lID0zRCAxCisgICAgZm9yIGkgaW4gZHMuZG9tYWluX3dpZHRoLmluX3VuaXRzKCdNcGMn
KToKKyAgICAgICAgeWllbGQgYXNzZXJ0X2FsbW9zdF9lcXVhbCwgaSwgQW5hQm94U2l6ZQorICAg
ICAgICBWb2x1bWUgKj0zRCBpCisgICAgeWllbGQgYXNzZXJ0X2FsbW9zdF9lcXVhbCwgVm9sdW1l
LCBBbmFWb2x1bWUKKworICAgIEFuYU5DZWxscyA9M0QgNDA4NzQ5MAorICAgIHlpZWxkIGFzc2Vy
dF9lcXVhbCwgbGVuKGFkWygnaW5kZXgnLCdjZWxsX3ZvbHVtZScpXSksIEFuYU5DZWxscworCisg
ICAgQW5hVG90RE1NYXNzID0zRCB5dC51bml0cy55dF9hcnJheS5ZVFF1YW50aXR5KDEuMDExOTE3
ODY4MTFlKzE0LCdNc3VuJykKKyAgICB5aWVsZCBhc3NlcnRfYWxtb3N0X2VxdWFsLCBhZFsoJ2Rh
cmttYXR0ZXInLCdwYXJ0aWNsZV9tYXNzJyldLnN1bSgpXAorICAgICAgICAuaW5fdW5pdHMoJ01z
dW4nKSwgQW5hVG90RE1NYXNzCisKKyAgICBBbmFUb3RTdGFyTWFzcyA9M0QgeXQudW5pdHMueXRf
YXJyYXkuWVRRdWFudGl0eSgxNzc2MjUxLiwnTXN1bicpCisgICAgeWllbGQgYXNzZXJ0X2FsbW9z
dF9lcXVhbCwgYWRbKCdzdGFycycsJ3BhcnRpY2xlX21hc3MnKV0uc3VtKClcCisgICAgICAgIC5p
bl91bml0cygnTXN1bicpLCBBbmFUb3RTdGFyTWFzcworCisgICAgQW5hVG90U3Rhck1hc3NJbml0
aWFsID0zRCB5dC51bml0cy55dF9hcnJheS5ZVFF1YW50aXR5KDI0MjI4NTQuLCdNc3VuJykKKyAg
ICB5aWVsZCBhc3NlcnRfYWxtb3N0X2VxdWFsLCBhZFsoJ3N0YXJzJywncGFydGljbGVfbWFzc19p
bml0aWFsJyldLnN1bSgpXAorICAgICAgICAuaW5fdW5pdHMoJ01zdW4nKSwgQW5hVG90U3Rhck1h
c3MKKworICAgIEFuYVRvdEdhc01hc3MgPTNEIHl0LnVuaXRzLnl0X2FycmF5LllUUXVhbnRpdHko
MS43ODE5OTRlKzEzLCdNc3VuJykKKyAgICB5aWVsZCBhc3NlcnRfYWxtb3N0X2VxdWFsLCBhZFso
J2dhcycsJ2NlbGxfbWFzcycpXS5zdW0oKVwKKyAgICAgICAgLmluX3VuaXRzKCdNc3VuJyksIEFu
YVRvdEdhc01hc3MKKworICAgIEFuYVRvdFRlbXAgPTNEIHl0LnVuaXRzLnl0X2FycmF5LllUUXVh
bnRpdHkoMS41MDE5ZTExLCAnSycpICNqdXN0IGxlYXY9CmVzCisgICAgeWllbGQgYXNzZXJ0X2Vx
dWFsLCBhZFsoJ2dhcycsJ3RlbXBlcmF0dXJlJyldLnN1bSgpLCBBbmFUb3RUZW1wCisKKwogQHJl
cXVpcmVzX2ZpbGUoZDlwKQogZGVmIHRlc3RfQVJURGF0YXNldCgpOgogICAgIGFzc2VydCBpc2lu
c3RhbmNlKGRhdGFfZGlyX2xvYWQoZDlwKSwgQVJURGF0YXNldCkKCmRpZmYgLXIgYTUwZTlkNmNh
ZWEzZTg4YTEwYWNjNjhkZGUyYWM4MTI4YTRjNmFiZiAtciAwNGM5ZWI0MDQzNjI4MjExM2ZiMjI5
Yz0KNzdiZjFhYjE4N2MwMzJjNTAgeXQvZnJvbnRlbmRzL2Nob21iby9pby5weQotLS0gYS95dC9m
cm9udGVuZHMvY2hvbWJvL2lvLnB5CisrKyBiL3l0L2Zyb250ZW5kcy9jaG9tYm8vaW8ucHkKQEAg
LTc2LDcgKzc2LDcgQEAKICAgICAgICAgZm9yIGtleSwgdmFsIGluIHNlbGYuX2hhbmRsZS5hdHRy
cy5pdGVtcygpOgogICAgICAgICAgICAgaWYga2V5LnN0YXJ0c3dpdGgoJ2NvbXBvbmVudF8nKToK
ICAgICAgICAgICAgICAgICBjb21wX251bWJlciA9M0QgaW50KHJlLm1hdGNoKCdjb21wb25lbnRf
KFxkKyknLCBrZXkpLmdyb3VwPQpzKClbMF0pCi0gICAgICAgICAgICAgICAgZmllbGRfZGljdFt2
YWxdID0zRCBjb21wX251bWJlcgorICAgICAgICAgICAgICAgIGZpZWxkX2RpY3RbdmFsLmRlY29k
ZSgndXRmLTgnKV0gPTNEIGNvbXBfbnVtYmVyCiAgICAgICAgIHNlbGYuX2ZpZWxkX2RpY3QgPTNE
IGZpZWxkX2RpY3QKICAgICAgICAgcmV0dXJuIHNlbGYuX2ZpZWxkX2RpY3QKPTIwCgpkaWZmIC1y
IGE1MGU5ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFjODEyOGE0YzZhYmYgLXIgMDRjOWViNDA0MzYy
ODIxMTNmYjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUwIHl0L2Zyb250ZW5kcy9maXRzL2lvLnB5Ci0t
LSBhL3l0L2Zyb250ZW5kcy9maXRzL2lvLnB5CisrKyBiL3l0L2Zyb250ZW5kcy9maXRzL2lvLnB5
CkBAIC0zMiw3ICszMiw3IEBACiAgICAgZGVmIF9yZWFkX3BhcnRpY2xlX2Nvb3JkcyhzZWxmLCBj
aHVua3MsIHB0Zik6CiAgICAgICAgIHBkYXRhID0zRCBzZWxmLmRzLl9oYW5kbGVbc2VsZi5kcy5m
aXJzdF9pbWFnZV0uZGF0YQogICAgICAgICBhc3NlcnQobGVuKHB0ZikgPTNEPTNEIDEpCi0gICAg
ICAgIHB0eXBlID0zRCBwdGYua2V5cygpWzBdCisgICAgICAgIHB0eXBlID0zRCBsaXN0KHB0Zi5r
ZXlzKCkpWzBdCiAgICAgICAgIHggPTNEIG5wLmFzYXJyYXkocGRhdGEuZmllbGQoIlgiKSwgZHR5
cGU9M0QiPTNEZjgiKQogICAgICAgICB5ID0zRCBucC5hc2FycmF5KHBkYXRhLmZpZWxkKCJZIiks
IGR0eXBlPTNEIj0zRGY4IikKICAgICAgICAgeiA9M0QgbnAub25lcyh4LnNoYXBlKQpAQCAtNDMs
NyArNDMsNyBAQAogICAgIGRlZiBfcmVhZF9wYXJ0aWNsZV9maWVsZHMoc2VsZiwgY2h1bmtzLCBw
dGYsIHNlbGVjdG9yKToKICAgICAgICAgcGRhdGEgPTNEIHNlbGYuZHMuX2hhbmRsZVtzZWxmLmRz
LmZpcnN0X2ltYWdlXS5kYXRhCiAgICAgICAgIGFzc2VydChsZW4ocHRmKSA9M0Q9M0QgMSkKLSAg
ICAgICAgcHR5cGUgPTNEIHB0Zi5rZXlzKClbMF0KKyAgICAgICAgcHR5cGUgPTNEIGxpc3QocHRm
LmtleXMoKSlbMF0KICAgICAgICAgZmllbGRfbGlzdCA9M0QgcHRmW3B0eXBlXQogICAgICAgICB4
ID0zRCBucC5hc2FycmF5KHBkYXRhLmZpZWxkKCJYIiksIGR0eXBlPTNEIj0zRGY4IikKICAgICAg
ICAgeSA9M0QgbnAuYXNhcnJheShwZGF0YS5maWVsZCgiWSIpLCBkdHlwZT0zRCI9M0RmOCIpCgpk
aWZmIC1yIGE1MGU5ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFjODEyOGE0YzZhYmYgLXIgMDRjOWVi
NDA0MzYyODIxMTNmYjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUwIHl0L2Zyb250ZW5kcy9maXRzL21p
c2MucHkKLS0tIGEveXQvZnJvbnRlbmRzL2ZpdHMvbWlzYy5weQorKysgYi95dC9mcm9udGVuZHMv
Zml0cy9taXNjLnB5CkBAIC0xMiwxNCArMTIsMTggQEAKPTIwCiBpbXBvcnQgbnVtcHkgYXMgbnAK
IGltcG9ydCBiYXNlNjQKLWZyb20geXQuZXh0ZXJuLnNpeC5tb3ZlcyBpbXBvcnQgU3RyaW5nSU8K
K2Zyb20geXQuZXh0ZXJuLnNpeCBpbXBvcnQgUFkzCiBmcm9tIHl0LmZpZWxkcy5kZXJpdmVkX2Zp
ZWxkIGltcG9ydCBWYWxpZGF0ZVNwYXRpYWwKIGZyb20geXQudXRpbGl0aWVzLm9uX2RlbWFuZF9p
bXBvcnRzIGltcG9ydCBfYXN0cm9weQogZnJvbSB5dC5mdW5jcyBpbXBvcnQgbXlsb2csIGdldF9p
bWFnZV9zdWZmaXgKIGZyb20geXQudmlzdWFsaXphdGlvbi5fbXBsX2ltcG9ydHMgaW1wb3J0IEZp
Z3VyZUNhbnZhc0FnZwogZnJvbSB5dC51bml0cy55dF9hcnJheSBpbXBvcnQgWVRRdWFudGl0eSwg
WVRBcnJheQogZnJvbSB5dC51dGlsaXRpZXMuZml0c19pbWFnZSBpbXBvcnQgRklUU0ltYWdlRGF0
YQotCitpZiBQWTM6CisgICAgZnJvbSBpbyBpbXBvcnQgQnl0ZXNJTyBhcyBJTworZWxzZToKKyAg
ICBmcm9tIHl0LmV4dGVybi5zaXgubW92ZXMgaW1wb3J0IFN0cmluZ0lPIGFzIElPCisgICA9MjAK
IGltcG9ydCBvcwo9MjAKIGRlZiBfbWFrZV9jb3VudHMoZW1pbiwgZW1heCk6CkBAIC0yNTUsMTIg
KzI1OSwxMiBAQAo9MjAKICAgICBkZWYgX3JlcHJfaHRtbF8oc2VsZik6CiAgICAgICAgIHJldCA9
M0QgJycKLSAgICAgICAgZm9yIGssIHYgaW4gc2VsZi5wbG90cy5pdGVyaXRlbXMoKToKKyAgICAg
ICAgZm9yIGssIHYgaW4gc2VsZi5wbG90cy5pdGVtcygpOgogICAgICAgICAgICAgY2FudmFzID0z
RCBGaWd1cmVDYW52YXNBZ2codikKLSAgICAgICAgICAgIGYgPTNEIFN0cmluZ0lPKCkKKyAgICAg
ICAgICAgIGYgPTNEIElPKCkKICAgICAgICAgICAgIGNhbnZhcy5wcmludF9maWd1cmUoZikKICAg
ICAgICAgICAgIGYuc2VlaygwKQotICAgICAgICAgICAgaW1nID0zRCBiYXNlNjQuYjY0ZW5jb2Rl
KGYucmVhZCgpKQorICAgICAgICAgICAgaW1nID0zRCBiYXNlNjQuYjY0ZW5jb2RlKGYucmVhZCgp
KS5kZWNvZGUoKQogICAgICAgICAgICAgcmV0ICs9M0Qgcic8aW1nIHN0eWxlPTNEIm1heC13aWR0
aDoxMDAlJTttYXgtaGVpZ2h0OjEwMCUlOyIgJyBcCiAgICAgICAgICAgICAgICAgICAgcidzcmM9
M0QiZGF0YTppbWFnZS9wbmc7YmFzZTY0LCVzIj48YnI+JyAlIGltZwogICAgICAgICByZXR1cm4g
cmV0CgpkaWZmIC1yIGE1MGU5ZDZjYWVhM2U4OGExMGFjYzY4ZGRlMmFjODEyOGE0YzZhYmYgLXIg
MDRjOWViNDA0MzYyODIxMTNmYjIyOWM9Cjc3YmYxYWIxODdjMDMyYzUwIHl0L2Zyb250ZW5kcy9n
YWRnZXQvZGF0YV9zdHJ1Y3R1cmVzLnB5Ci0tLSBhL3l0L2Zyb250ZW5kcy9nYWRnZXQvZGF0YV9z
dHJ1Y3R1cmVzLnB5CisrKyBiL3l0L2Zyb250ZW5kcy9nYWRnZXQvZGF0YV9zdHJ1Y3R1cmVzLnB5
CkBAIC0zODcsNyArMzg3LDcgQEAKICAgICBAY2xhc3NtZXRob2QKICAgICBkZWYgX2lzX3ZhbGlk
KHNlbGYsICphcmdzLCAqKmt3YXJncyk6CiAgICAgICAgIG5lZWRfZ3JvdXBzID0zRCBbJ0hlYWRl
ciddCi0gICAgICAgIHZldG9fZ3JvdXBzID0zRCBbJ0ZPRiddCisgICAgICAgIHZldG9fZ3JvdXBz
ID0zRCBbJ0ZPRicsICdHcm91cCcsICdTdWJoYWxvJ10KICAgICAgICAgdmFsaWQgPTNEIFRydWUK
ICAgICAgICAgdHJ5OgogICAgICAgICAgICAgZmggPTNEIGg1cHkuRmlsZShhcmdzWzBdLCBtb2Rl
PTNEJ3InKQoKZGlmZiAtciBhNTBlOWQ2Y2FlYTNlODhhMTBhY2M2OGRkZTJhYzgxMjhhNGM2YWJm
IC1yIDA0YzllYjQwNDM2MjgyMTEzZmIyMjljPQo3N2JmMWFiMTg3YzAzMmM1MCB5dC9mcm9udGVu
ZHMvZ2FkZ2V0X2ZvZi9fX2luaXRfXy5weQotLS0gL2Rldi9udWxsCisrKyBiL3l0L2Zyb250ZW5k
cy9nYWRnZXRfZm9mL19faW5pdF9fLnB5CkBAIC0wLDAgKzEsMTUgQEAKKyIiIgorQVBJIGZvciBI
YWxvQ2F0YWxvZyBmcm9udGVuZC4KKworCisKKworIiIiCisKKyMtLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPQot
LS0tCisjIENvcHlyaWdodCAoYykgMjAxMywgeXQgRGV2ZWxvcG1lbnQgVGVhbS4KKyMKKyMgRGlz
dHJpYnV0ZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBNb2RpZmllZCBCU0QgTGljZW5zZS4KKyMK
KyMgVGhlIGZ1bGwgbGljZW5zZSBpcyBpbiB0aGUgZmlsZSBDT1BZSU5HLnR4dCwgZGlzdHJpYnV0
ZWQgd2l0aCB0aGlzIHNvZnR3PQphcmUuCisjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLT0KLS0tLQoKZGlmZiAt
ciBhNTBlOWQ2Y2FlYTNlODhhMTBhY2M2OGRkZTJhYzgxMjhhNGM2YWJmIC1yIDA0YzllYjQwNDM2
MjgyMTEzZmIyMjljPQo3N2JmMWFiMTg3YzAzMmM1MCB5dC9mcm9udGVuZHMvZ2FkZ2V0X2ZvZi9h
cGkucHkKLS0tIC9kZXYvbnVsbAorKysgYi95dC9mcm9udGVuZHMvZ2FkZ2V0X2ZvZi9hcGkucHkK
QEAgLTAsMCArMSwyNiBAQAorIiIiCitBUEkgZm9yIEdhZGdldEZPRiBmcm9udGVuZAorCisKKwor
CisiIiIKKworIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS09Ci0tLS0KKyMgQ29weXJpZ2h0IChjKSAyMDE1LCB5
dCBEZXZlbG9wbWVudCBUZWFtLgorIworIyBEaXN0cmlidXRlZCB1bmRlciB0aGUgdGVybXMgb2Yg
dGhlIE1vZGlmaWVkIEJTRCBMaWNlbnNlLgorIworIyBUaGUgZnVsbCBsaWNlbnNlIGlzIGluIHRo
ZSBmaWxlIENPUFlJTkcudHh0LCBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc29mdHc9CmFyZS4KKyMt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tPQotLS0tCisKK2Zyb20gLmRhdGFfc3RydWN0dXJlcyBpbXBvcnQgXAor
ICAgICBHYWRnZXRGT0ZEYXRhc2V0CisKK2Zyb20gLmlvIGltcG9ydCBcCisgICAgIElPSGFuZGxl
ckdhZGdldEZPRkhERjUKKworZnJvbSAuZmllbGRzIGltcG9ydCBcCisgICAgIEdhZGdldEZPRkZp
ZWxkSW5mbworCitmcm9tIC4gaW1wb3J0IHRlc3RzCgpUaGlzIGRpZmYgaXMgc28gYmlnIHRoYXQg
d2UgbmVlZGVkIHRvIHRydW5jYXRlIHRoZSByZW1haW5kZXIuCgpodHRwczovL2JpdGJ1Y2tldC5v
cmcveXRfYW5hbHlzaXMveXQvY29tbWl0cy8xNWUzZTU1M2VlYjkvCkNoYW5nZXNldDogICAxNWUz
ZTU1M2VlYjkKQnJhbmNoOiAgICAgIHl0ClVzZXI6ICAgICAgICBicml0dG9uc21pdGgKRGF0ZTog
ICAgICAgIDIwMTUtMDctMzAgMTU6MzU6MDErMDA6MDAKU3VtbWFyeTogICAgIEFkZGluZyBtdWx0
aWxldmVsIHBhcmFsbGVsaXNtIGZvciBzcGVjdHJ1bSBnZW5lcmF0aW9uLgpBZmZlY3RlZCAjOiAg
MSBmaWxlCgpkaWZmIC1yIDA0YzllYjQwNDM2MjgyMTEzZmIyMjljNzdiZjFhYjE4N2MwMzJjNTAg
LXIgMTVlM2U1NTNlZWI5NWJiMzBhNDdlZmI9Cjc4NWZjNzI4ZTU5OWQ1MmIzIHl0L2FuYWx5c2lz
X21vZHVsZXMvYWJzb3JwdGlvbl9zcGVjdHJ1bS9hYnNvcnB0aW9uX3NwZWN0cj0KdW0ucHkKLS0t
IGEveXQvYW5hbHlzaXNfbW9kdWxlcy9hYnNvcnB0aW9uX3NwZWN0cnVtL2Fic29ycHRpb25fc3Bl
Y3RydW0ucHkKKysrIGIveXQvYW5hbHlzaXNfbW9kdWxlcy9hYnNvcnB0aW9uX3NwZWN0cnVtL2Fi
c29ycHRpb25fc3BlY3RydW0ucHkKQEAgLTI3LDEyICsyNywxMCBAQAogICAgIHNwZWVkX29mX2xp
Z2h0X2NncwogZnJvbSB5dC51dGlsaXRpZXMub25fZGVtYW5kX2ltcG9ydHMgaW1wb3J0IF9hc3Ry
b3B5CiBmcm9tIHl0LnV0aWxpdGllcy5wYXJhbGxlbF90b29scy5wYXJhbGxlbF9hbmFseXNpc19p
bnRlcmZhY2UgaW1wb3J0IFwKLSAgICBjb21tdW5pY2F0aW9uX3N5c3RlbSwgXAorICAgIF9nZXRf
Y29tbSwgXAogICAgIHBhcmFsbGVsX29iamVjdHMsIFwKICAgICBwYXJhbGxlbF9yb290X29ubHkK
PTIwCi1jb21tID0zRCBjb21tdW5pY2F0aW9uX3N5c3RlbS5jb21tdW5pY2F0b3JzWy0xXQotCiBw
eWZpdHMgPTNEIF9hc3Ryb3B5LnB5Zml0cwo9MjAKIGNsYXNzIEFic29ycHRpb25TcGVjdHJ1bShv
YmplY3QpOgpAQCAtMTE2LDcgKzExNCw3IEBACj0yMAogICAgIGRlZiBtYWtlX3NwZWN0cnVtKHNl
bGYsIGlucHV0X2ZpbGUsIG91dHB1dF9maWxlPTNEJ3NwZWN0cnVtLmg1JywKICAgICAgICAgICAg
ICAgICAgICAgICBsaW5lX2xpc3RfZmlsZT0zRCdsaW5lcy50eHQnLAotICAgICAgICAgICAgICAg
ICAgICAgIHVzZV9wZWN1bGlhcl92ZWxvY2l0eT0zRFRydWUpOgorICAgICAgICAgICAgICAgICAg
ICAgIHVzZV9wZWN1bGlhcl92ZWxvY2l0eT0zRFRydWUsIG5qb2JzPTNELTEpOgogICAgICAgICAi
IiIKICAgICAgICAgTWFrZSBzcGVjdHJ1bSBmcm9tIHJheSBkYXRhIHVzaW5nIHRoZSBsaW5lIGxp
c3QuCj0yMApAQCAtMTI2LDEwICsxMjQsMTkgQEAKICAgICAgICAgaW5wdXRfZmlsZSA6IHN0cmlu
ZwogICAgICAgICAgICBwYXRoIHRvIGlucHV0IHJheSBkYXRhLgogICAgICAgICBvdXRwdXRfZmls
ZSA6IHN0cmluZwotICAgICAgICAgICBwYXRoIGZvciBvdXRwdXQgZmlsZS4gIEZpbGUgZm9ybWF0
cyBhcmUgY2hvc2VuIGJhc2VkIG9uIHRoZSBmaWw9CmVuYW1lIGV4dGVuc2lvbi4KLSAgICAgICAg
ICAgYGAuaDVgYCBmb3IgaGRmNSwgYGAuZml0c2BgIGZvciBmaXRzLCBhbmQgZXZlcnl0aGluZyBl
bHNlIGlzIEFTPQpDSUkuCisgICAgICAgICAgIHBhdGggZm9yIG91dHB1dCBmaWxlLiAgRmlsZSBm
b3JtYXRzIGFyZSBjaG9zZW4gYmFzZWQgb24gdGhlPTIwCisgICAgICAgICAgIGZpbGVuYW1lIGV4
dGVuc2lvbi4gIGBgLmg1YGAgZm9yIGhkZjUsIGBgLmZpdHNgYCBmb3IgZml0cyw9MjAKKyAgICAg
ICAgICAgYW5kIGV2ZXJ5dGhpbmcgZWxzZSBpcyBBU0NJSS4KICAgICAgICAgdXNlX3BlY3VsaWFy
X3ZlbG9jaXR5IDogYm9vbAogICAgICAgICAgICBpZiBUcnVlLCBpbmNsdWRlIGxpbmUgb2Ygc2ln
aHQgdmVsb2NpdHkgZm9yIHNoaWZ0aW5nIGxpbmVzLgorICAgICAgICBuam9icyA6IGludAorICAg
ICAgICAgICB0aGUgbnVtYmVyIG9mIHByb2Nlc3MgZ3JvdXBzIGludG8gd2hpY2ggdGhlIGxvb3Ag
b3ZlcgorICAgICAgICAgICBhYnNvcnB0aW9uIGxpbmVzIHdpbGwgYmUgZGl2aWRlZC4gIElmIHNl
dCB0byAtMSwgZWFjaD0yMAorICAgICAgICAgICBhYnNvcnB0aW9uIGxpbmUgd2lsbCBiZSBkZXBv
c2l0ZWQgYnkgZXhhY3RseSBvbmUgcHJvY2Vzc29yLgorICAgICAgICAgICBJZiBuam9icyBpcyBz
ZXQgdG8gYSB2YWx1ZSBsZXNzIHRoYW4gdGhlIHRvdGFsIG51bWJlciBvZj0yMAorICAgICAgICAg
ICBhdmFpbGFibGUgcHJvY2Vzc29ycyAoTiksIHRoZW4gdGhlIGRlcG9zaXRpb24gb2YgYW49MjAK
KyAgICAgICAgICAgaW5kaXZpZHVhbCBsaW5lIHdpbGwgYmUgcGFyYWxsZWxpemVkIG92ZXIgKE4g
LyBuam9icykKKyAgICAgICAgICAgcHJvY2Vzc29ycy4KICAgICAgICAgIiIiCj0yMAogICAgICAg
ICBpbnB1dF9maWVsZHMgPTNEIFsnZGwnLCAncmVkc2hpZnQnLCAndGVtcGVyYXR1cmUnXQpAQCAt
MTUxLDcgKzE1OCw4IEBACiAgICAgICAgIHNlbGYudGF1X2ZpZWxkID0zRCBucC56ZXJvcyhzZWxm
LmxhbWJkYV9iaW5zLnNpemUpCiAgICAgICAgIHNlbGYuc3BlY3RydW1fbGluZV9saXN0ID0zRCBb
XQo9MjAKLSAgICAgICAgc2VsZi5fYWRkX2xpbmVzX3RvX3NwZWN0cnVtKGZpZWxkX2RhdGEsIHVz
ZV9wZWN1bGlhcl92ZWxvY2l0eSkKKyAgICAgICAgc2VsZi5fYWRkX2xpbmVzX3RvX3NwZWN0cnVt
KGZpZWxkX2RhdGEsIHVzZV9wZWN1bGlhcl92ZWxvY2l0eSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGxpbmVfbGlzdF9maWxlIGlzIG5vdCBOb25lKQogICAgICAgICBzZWxm
Ll9hZGRfY29udGludWFfdG9fc3BlY3RydW0oZmllbGRfZGF0YSwgdXNlX3BlY3VsaWFyX3ZlbG9j
aXR5KQo9MjAKICAgICAgICAgc2VsZi5mbHV4X2ZpZWxkID0zRCBucC5leHAoLXNlbGYudGF1X2Zp
ZWxkKQpAQCAtMjAzLDcgKzIxMSw4IEBACiAgICAgICAgICAgICAgICAgcGJhci51cGRhdGUoaSkK
ICAgICAgICAgICAgIHBiYXIuZmluaXNoKCkKPTIwCi0gICAgZGVmIF9hZGRfbGluZXNfdG9fc3Bl
Y3RydW0oc2VsZiwgZmllbGRfZGF0YSwgdXNlX3BlY3VsaWFyX3ZlbG9jaXR5KToKKyAgICBkZWYg
X2FkZF9saW5lc190b19zcGVjdHJ1bShzZWxmLCBmaWVsZF9kYXRhLCB1c2VfcGVjdWxpYXJfdmVs
b2NpdHksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2F2ZV9saW5lX2xpc3QsIG5q
b2JzPTNELTEpOgogICAgICAgICAiIiIKICAgICAgICAgQWRkIHRoZSBhYnNvcnB0aW9uIGxpbmVz
IHRvIHRoZSBzcGVjdHJ1bS4KICAgICAgICAgIiIiCkBAIC0yMTIsNyArMjIxLDcgQEAKICAgICAg
ICAgIyBXaWRlbiB3YXZlbGVuZ3RoIHdpbmRvdyB1bnRpbCBvcHRpY2FsIGRlcHRoIHJlYWNoZXMg
YSBtYXggdmFsdWUgPQphdCB0aGUgZW5kcy4KICAgICAgICAgbWF4X3RhdSA9M0QgMC4wMDEKPTIw
Ci0gICAgICAgIGZvciBsaW5lIGluIHNlbGYubGluZV9saXN0OgorICAgICAgICBmb3IgbGluZSBp
biBwYXJhbGxlbF9vYmplY3RzKHNlbGYubGluZV9saXN0LCBuam9icz0zRDIpOgogICAgICAgICAg
ICAgY29sdW1uX2RlbnNpdHkgPTNEIGZpZWxkX2RhdGFbbGluZVsnZmllbGRfbmFtZSddXSAqIGZp
ZWxkX2RhdGE9ClsnZGwnXQogICAgICAgICAgICAgZGVsdGFfbGFtYmRhID0zRCBsaW5lWyd3YXZl
bGVuZ3RoJ10gKiBmaWVsZF9kYXRhWydyZWRzaGlmdCddCiAgICAgICAgICAgICBpZiB1c2VfcGVj
dWxpYXJfdmVsb2NpdHk6CkBAIC0yNjgsNyArMjc3LDcgQEAKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIG15X2Jpbl9yYXRpbyAqCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB3aWR0aF9yYXRpb1tsaXhlbF0pLmFzdHlwZShpbnQpLj0K
Y2xpcCgwLCBzZWxmLm5fbGFtYmRhKQogICAgICAgICAgICAgICAgIHNlbGYudGF1X2ZpZWxkW2xl
ZnRfaW5kZXhbbGl4ZWxdOnJpZ2h0X2luZGV4W2xpeGVsXV0gKz0zRCA9CmxpbmVfdGF1Ci0gICAg
ICAgICAgICAgICAgaWYgbGluZVsnbGFiZWxfdGhyZXNob2xkJ10gaXMgbm90IE5vbmUgYW5kIFwK
KyAgICAgICAgICAgICAgICBpZiBzYXZlX2xpbmVfbGlzdCBhbmQgbGluZVsnbGFiZWxfdGhyZXNo
b2xkJ10gaXMgbm90IE5vbmUgPQphbmQgXAogICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1u
X2RlbnNpdHlbbGl4ZWxdID49M0QgbGluZVsnbGFiZWxfdGhyZXNob2xkJ106CiAgICAgICAgICAg
ICAgICAgICAgIGlmIHVzZV9wZWN1bGlhcl92ZWxvY2l0eToKICAgICAgICAgICAgICAgICAgICAg
ICAgIHBlY3VsaWFyX3ZlbG9jaXR5ID0zRCBmaWVsZF9kYXRhWyd2ZWxvY2l0eV9sb3MnXVtsPQpp
eGVsXS5pbl91bml0cygia20vcyIpCkBAIC0yODMsMTMgKzI5MiwxNiBAQAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2X3BlYyc6IHBlY3VsaWFy
X3ZlbG89CmNpdHl9KQogICAgICAgICAgICAgICAgIHBiYXIudXBkYXRlKGkpCiAgICAgICAgICAg
ICBwYmFyLmZpbmlzaCgpCi0gICAgICAgICAgICBzZWxmLnRhdV9maWVsZCA9M0QgY29tbS5tcGlf
YWxscmVkdWNlKHNlbGYudGF1X2ZpZWxkLCBvcD0zRCJzdT0KbSIpCi0gICAgICAgICAgICBzZWxm
LnNwZWN0cnVtX2xpbmVfbGlzdCA9M0QgY29tbS5wYXJfY29tYmluZV9vYmplY3QoCi0gICAgICAg
ICAgICAgICAgc2VsZi5zcGVjdHJ1bV9saW5lX2xpc3QsICJjYXQiLCBkYXRhdHlwZT0zRCJsaXN0
IikKPTIwCiAgICAgICAgICAgICBkZWwgY29sdW1uX2RlbnNpdHksIGRlbHRhX2xhbWJkYSwgdGhl
cm1hbF9iLCBcCiAgICAgICAgICAgICAgICAgY2VudGVyX2JpbnMsIHdpZHRoX3JhdGlvLCBsZWZ0
X2luZGV4LCByaWdodF9pbmRleAo9MjAKKyAgICAgICAgY29tbSA9M0QgX2dldF9jb21tKCgpKQor
ICAgICAgICBzZWxmLnRhdV9maWVsZCA9M0QgY29tbS5tcGlfYWxscmVkdWNlKHNlbGYudGF1X2Zp
ZWxkLCBvcD0zRCJzdW0iKQorICAgICAgICBpZiBzYXZlX2xpbmVfbGlzdDoKKyAgICAgICAgICAg
IHNlbGYuc3BlY3RydW1fbGluZV9saXN0ID0zRCBjb21tLnBhcl9jb21iaW5lX29iamVjdCgKKyAg
ICAgICAgICAgICAgICBzZWxmLnNwZWN0cnVtX2xpbmVfbGlzdCwgImNhdCIsIGRhdGF0eXBlPTNE
Imxpc3QiKQorCiAgICAgQHBhcmFsbGVsX3Jvb3Rfb25seQogICAgIGRlZiBfd3JpdGVfc3BlY3Ry
dW1fbGluZV9saXN0KHNlbGYsIGZpbGVuYW1lKToKICAgICAgICAgIiIiCgoKaHR0cHM6Ly9iaXRi
dWNrZXQub3JnL3l0X2FuYWx5c2lzL3l0L2NvbW1pdHMvMzEyY2QzMjQ3MmRhLwpDaGFuZ2VzZXQ6
ICAgMzEyY2QzMjQ3MmRhCkJyYW5jaDogICAgICB5dApVc2VyOiAgICAgICAgYnJpdHRvbnNtaXRo
CkRhdGU6ICAgICAgICAyMDE1LTA3LTMxIDIxOjQ4OjI1KzAwOjAwClN1bW1hcnk6ICAgICBBZGRp
bmcgYXV0by1wYXJhbGxlbGl6YXRpb24gdG8gZGV0ZXJtaW5lIHRoZSByaWdodCBudW1iZXIgb2Yg
cD0Kcm9jZXNzb3JzIHRvIGRpdmlkZSB0aGUgbGluZSBsaXN0LgpBZmZlY3RlZCAjOiAgMSBmaWxl
CgpkaWZmIC1yIDE1ZTNlNTUzZWViOTViYjMwYTQ3ZWZiNzg1ZmM3MjhlNTk5ZDUyYjMgLXIgMzEy
Y2QzMjQ3MmRhNDFhZTI5NzgzY2I9CjRmMmQ3M2FiNThlMmU2ZDgwIHl0L2FuYWx5c2lzX21vZHVs
ZXMvYWJzb3JwdGlvbl9zcGVjdHJ1bS9hYnNvcnB0aW9uX3NwZWN0cj0KdW0ucHkKLS0tIGEveXQv
YW5hbHlzaXNfbW9kdWxlcy9hYnNvcnB0aW9uX3NwZWN0cnVtL2Fic29ycHRpb25fc3BlY3RydW0u
cHkKKysrIGIveXQvYW5hbHlzaXNfbW9kdWxlcy9hYnNvcnB0aW9uX3NwZWN0cnVtL2Fic29ycHRp
b25fc3BlY3RydW0ucHkKQEAgLTExMiw5ICsxMTIsOSBAQAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgJ25vcm1hbGl6YXRpb24nOiBub3JtYWxpemF0aW9uLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2luZGV4JzogaW5kZXh9KQo9MjAKLSAgICBkZWYg
bWFrZV9zcGVjdHJ1bShzZWxmLCBpbnB1dF9maWxlLCBvdXRwdXRfZmlsZT0zRCdzcGVjdHJ1bS5o
NScsCi0gICAgICAgICAgICAgICAgICAgICAgbGluZV9saXN0X2ZpbGU9M0QnbGluZXMudHh0JywK
LSAgICAgICAgICAgICAgICAgICAgICB1c2VfcGVjdWxpYXJfdmVsb2NpdHk9M0RUcnVlLCBuam9i
cz0zRC0xKToKKyAgICBkZWYgbWFrZV9zcGVjdHJ1bShzZWxmLCBpbnB1dF9maWxlLCBvdXRwdXRf
ZmlsZT0zRCJzcGVjdHJ1bS5oNSIsCisgICAgICAgICAgICAgICAgICAgICAgbGluZV9saXN0X2Zp
bGU9M0QibGluZXMudHh0IiwKKyAgICAgICAgICAgICAgICAgICAgICB1c2VfcGVjdWxpYXJfdmVs
b2NpdHk9M0RUcnVlLCBuam9icz0zRCJhdXRvIik6CiAgICAgICAgICIiIgogICAgICAgICBNYWtl
IHNwZWN0cnVtIGZyb20gcmF5IGRhdGEgdXNpbmcgdGhlIGxpbmUgbGlzdC4KPTIwCkBAIC0xMjMs
MjAgKzEyMywzNSBAQAo9MjAKICAgICAgICAgaW5wdXRfZmlsZSA6IHN0cmluZwogICAgICAgICAg
ICBwYXRoIHRvIGlucHV0IHJheSBkYXRhLgotICAgICAgICBvdXRwdXRfZmlsZSA6IHN0cmluZwor
ICAgICAgICBvdXRwdXRfZmlsZSA6IG9wdGlvbmFsLCBzdHJpbmcKICAgICAgICAgICAgcGF0aCBm
b3Igb3V0cHV0IGZpbGUuICBGaWxlIGZvcm1hdHMgYXJlIGNob3NlbiBiYXNlZCBvbiB0aGU9MjAK
ICAgICAgICAgICAgZmlsZW5hbWUgZXh0ZW5zaW9uLiAgYGAuaDVgYCBmb3IgaGRmNSwgYGAuZml0
c2BgIGZvciBmaXRzLD0yMAogICAgICAgICAgICBhbmQgZXZlcnl0aGluZyBlbHNlIGlzIEFTQ0lJ
LgotICAgICAgICB1c2VfcGVjdWxpYXJfdmVsb2NpdHkgOiBib29sCisgICAgICAgICAgIERlZmF1
bHQ6ICJzcGVjdHJ1bS5oNSIKKyAgICAgICAgbGluZV9saXN0X2ZpbGUgOiBvcHRpb25hbCwgc3Ry
aW5nCisgICAgICAgICAgIHBhdGggdG8gZmlsZSBpbiB3aGljaCB0aGUgbGlzdCBvZiBhbGwgZGVw
b3NpdGVkIGxpbmVzPTIwCisgICAgICAgICAgIHdpbGwgYmUgc2F2ZWQuICBJZiBzZXQgdG8gTm9u
ZSwgdGhlIGxpbmUgbGlzdCB3aWxsIG5vdD0yMAorICAgICAgICAgICBiZSBzYXZlZC4gIE5vdGUs
IHdoZW4gcnVubmluZyBpbiBwYXJhbGxlbCwgY29tYmluaW5nIHRoZT0yMAorICAgICAgICAgICBs
aW5lIGxpc3RzIGNhbiBiZSBxdWl0ZSBzbG93LCBzbyBpdCBpcyByZWNvbW1lbmRlZCB0byBzZXQ9
MjAKKyAgICAgICAgICAgdGhpcyB0byBOb25lIHdoZW4gcnVubmluZyBpbiBwYXJhbGxlbCB1bmxl
c3MgeW91IHJlYWxseQorICAgICAgICAgICB3YW50IHRoZW0uCisgICAgICAgICAgIERlZmF1bHQ6
ICJsaW5lcy50eHQiCisgICAgICAgIHVzZV9wZWN1bGlhcl92ZWxvY2l0eSA6IG9wdGlvbmFsLCBi
b29sCiAgICAgICAgICAgIGlmIFRydWUsIGluY2x1ZGUgbGluZSBvZiBzaWdodCB2ZWxvY2l0eSBm
b3Igc2hpZnRpbmcgbGluZXMuCi0gICAgICAgIG5qb2JzIDogaW50CisgICAgICAgICAgIERlZmF1
bHQ6IFRydWUKKyAgICAgICAgbmpvYnMgOiBvcHRpb25hbCwgaW50IG9yICJhdXRvIgogICAgICAg
ICAgICB0aGUgbnVtYmVyIG9mIHByb2Nlc3MgZ3JvdXBzIGludG8gd2hpY2ggdGhlIGxvb3Agb3Zl
cgogICAgICAgICAgICBhYnNvcnB0aW9uIGxpbmVzIHdpbGwgYmUgZGl2aWRlZC4gIElmIHNldCB0
byAtMSwgZWFjaD0yMAogICAgICAgICAgICBhYnNvcnB0aW9uIGxpbmUgd2lsbCBiZSBkZXBvc2l0
ZWQgYnkgZXhhY3RseSBvbmUgcHJvY2Vzc29yLgogICAgICAgICAgICBJZiBuam9icyBpcyBzZXQg
dG8gYSB2YWx1ZSBsZXNzIHRoYW4gdGhlIHRvdGFsIG51bWJlciBvZj0yMAogICAgICAgICAgICBh
dmFpbGFibGUgcHJvY2Vzc29ycyAoTiksIHRoZW4gdGhlIGRlcG9zaXRpb24gb2YgYW49MjAKICAg
ICAgICAgICAgaW5kaXZpZHVhbCBsaW5lIHdpbGwgYmUgcGFyYWxsZWxpemVkIG92ZXIgKE4gLyBu
am9icykKLSAgICAgICAgICAgcHJvY2Vzc29ycy4KKyAgICAgICAgICAgcHJvY2Vzc29ycy4gIElm
IHNldCB0byAiYXV0byIsIGl0IHdpbGwgZmlyc3QgdHJ5IHRvPTIwCisgICAgICAgICAgIHBhcmFs
bGVsaXplIG92ZXIgdGhlIGxpc3Qgb2YgbGluZXMgYW5kIG9ubHkgcGFyYWxsZWxpemU9MjAKKyAg
ICAgICAgICAgdGhlIGxpbmUgZGVwb3NpdGlvbiBpZiB0aGVyZSBhcmUgbW9yZSBwcm9jZXNzb3Jz
IHRoYW4KKyAgICAgICAgICAgbGluZXMuICBUaGlzIGlzIHRoZSBvcHRpbWFsIHN0cmF0ZWd5IGZv
ciBwYXJhbGxlbGl6aW5nPTIwCisgICAgICAgICAgIHNwZWN0cnVtIGdlbmVyYXRpb24uCisgICAg
ICAgICAgIERlZmF1bHQ6ICJhdXRvIgogICAgICAgICAiIiIKPTIwCiAgICAgICAgIGlucHV0X2Zp
ZWxkcyA9M0QgWydkbCcsICdyZWRzaGlmdCcsICd0ZW1wZXJhdHVyZSddCkBAIC0xNTgsOCArMTcz
LDEzIEBACiAgICAgICAgIHNlbGYudGF1X2ZpZWxkID0zRCBucC56ZXJvcyhzZWxmLmxhbWJkYV9i
aW5zLnNpemUpCiAgICAgICAgIHNlbGYuc3BlY3RydW1fbGluZV9saXN0ID0zRCBbXQo9MjAKKyAg
ICAgICAgaWYgbmpvYnMgPTNEPTNEICJhdXRvIjoKKyAgICAgICAgICAgIGNvbW0gPTNEIF9nZXRf
Y29tbSgoKSkKKyAgICAgICAgICAgIG5qb2JzID0zRCBtaW4oY29tbS5zaXplLCBsZW4oc2VsZi5s
aW5lX2xpc3QpKQorICAgICAgICAgICAgcHJpbnQoInRoaXMgbWFueSBncm91cHM6ICVkIiAlIG5q
b2JzKQorICAgICAgID0yMAogICAgICAgICBzZWxmLl9hZGRfbGluZXNfdG9fc3BlY3RydW0oZmll
bGRfZGF0YSwgdXNlX3BlY3VsaWFyX3ZlbG9jaXR5LAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbGluZV9saXN0X2ZpbGUgaXMgbm90IE5vbmUpCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBsaW5lX2xpc3RfZmlsZSBpcyBub3QgTm9uZSwgbmpvYnM9M0Ru
aj0Kb2JzKQogICAgICAgICBzZWxmLl9hZGRfY29udGludWFfdG9fc3BlY3RydW0oZmllbGRfZGF0
YSwgdXNlX3BlY3VsaWFyX3ZlbG9jaXR5KQo9MjAKICAgICAgICAgc2VsZi5mbHV4X2ZpZWxkID0z
RCBucC5leHAoLXNlbGYudGF1X2ZpZWxkKQpAQCAtMjIxLDcgKzI0MSw3IEBACiAgICAgICAgICMg
V2lkZW4gd2F2ZWxlbmd0aCB3aW5kb3cgdW50aWwgb3B0aWNhbCBkZXB0aCByZWFjaGVzIGEgbWF4
IHZhbHVlID0KYXQgdGhlIGVuZHMuCiAgICAgICAgIG1heF90YXUgPTNEIDAuMDAxCj0yMAotICAg
ICAgICBmb3IgbGluZSBpbiBwYXJhbGxlbF9vYmplY3RzKHNlbGYubGluZV9saXN0LCBuam9icz0z
RDIpOgorICAgICAgICBmb3IgbGluZSBpbiBwYXJhbGxlbF9vYmplY3RzKHNlbGYubGluZV9saXN0
LCBuam9icz0zRG5qb2JzKToKICAgICAgICAgICAgIGNvbHVtbl9kZW5zaXR5ID0zRCBmaWVsZF9k
YXRhW2xpbmVbJ2ZpZWxkX25hbWUnXV0gKiBmaWVsZF9kYXRhPQpbJ2RsJ10KICAgICAgICAgICAg
IGRlbHRhX2xhbWJkYSA9M0QgbGluZVsnd2F2ZWxlbmd0aCddICogZmllbGRfZGF0YVsncmVkc2hp
ZnQnXQogICAgICAgICAgICAgaWYgdXNlX3BlY3VsaWFyX3ZlbG9jaXR5OgoKCmh0dHBzOi8vYml0
YnVja2V0Lm9yZy95dF9hbmFseXNpcy95dC9jb21taXRzLzA5ZmJmMDE4MGJmMS8KQ2hhbmdlc2V0
OiAgIDA5ZmJmMDE4MGJmMQpCcmFuY2g6ICAgICAgeXQKVXNlcjogICAgICAgIGJyaXR0b25zbWl0
aApEYXRlOiAgICAgICAgMjAxNS0wNy0zMSAyMTo1ODo0NyswMDowMApTdW1tYXJ5OiAgICAgUmVt
b3ZlIHByaW50IHN0YXRlbWVudC4KQWZmZWN0ZWQgIzogIDEgZmlsZQoKZGlmZiAtciAzMTJjZDMy
NDcyZGE0MWFlMjk3ODNjYjRmMmQ3M2FiNThlMmU2ZDgwIC1yIDA5ZmJmMDE4MGJmMWE4OGYwODky
ZTEyPQo0NDEzZThhMDNiODc0ZGE1YiB5dC9hbmFseXNpc19tb2R1bGVzL2Fic29ycHRpb25fc3Bl
Y3RydW0vYWJzb3JwdGlvbl9zcGVjdHI9CnVtLnB5Ci0tLSBhL3l0L2FuYWx5c2lzX21vZHVsZXMv
YWJzb3JwdGlvbl9zcGVjdHJ1bS9hYnNvcnB0aW9uX3NwZWN0cnVtLnB5CisrKyBiL3l0L2FuYWx5
c2lzX21vZHVsZXMvYWJzb3JwdGlvbl9zcGVjdHJ1bS9hYnNvcnB0aW9uX3NwZWN0cnVtLnB5CkBA
IC0xNzYsNyArMTc2LDYgQEAKICAgICAgICAgaWYgbmpvYnMgPTNEPTNEICJhdXRvIjoKICAgICAg
ICAgICAgIGNvbW0gPTNEIF9nZXRfY29tbSgoKSkKICAgICAgICAgICAgIG5qb2JzID0zRCBtaW4o
Y29tbS5zaXplLCBsZW4oc2VsZi5saW5lX2xpc3QpKQotICAgICAgICAgICAgcHJpbnQoInRoaXMg
bWFueSBncm91cHM6ICVkIiAlIG5qb2JzKQogICAgICAgID0yMAogICAgICAgICBzZWxmLl9hZGRf
bGluZXNfdG9fc3BlY3RydW0oZmllbGRfZGF0YSwgdXNlX3BlY3VsaWFyX3ZlbG9jaXR5LAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZV9saXN0X2ZpbGUgaXMgbm90IE5v
bmUsIG5qb2JzPTNEbmo9Cm9icykKCgpodHRwczovL2JpdGJ1Y2tldC5vcmcveXRfYW5hbHlzaXMv
eXQvY29tbWl0cy8wZWM0MjU1NDI0ZGIvCkNoYW5nZXNldDogICAwZWM0MjU1NDI0ZGIKQnJhbmNo
OiAgICAgIHl0ClVzZXI6ICAgICAgICBicml0dG9uc21pdGgKRGF0ZTogICAgICAgIDIwMTUtMDgt
MTAgMTU6MzU6MTkrMDA6MDAKU3VtbWFyeTogICAgIEFkZGluZyBkb2NzIGZvciBwYXJhbGxlbCBh
YnNvcnB0aW9uIHNwZWN0cnVtLgpBZmZlY3RlZCAjOiAgMSBmaWxlCgpkaWZmIC1yIDA5ZmJmMDE4
MGJmMWE4OGYwODkyZTEyNDQxM2U4YTAzYjg3NGRhNWIgLXIgMGVjNDI1NTQyNGRiZGMyZTk4ZTI4
MzI9CjA1Y2NkYjM1MzBhNmIyODlmIGRvYy9zb3VyY2UvYW5hbHl6aW5nL2FuYWx5c2lzX21vZHVs
ZXMvYWJzb3JwdGlvbl9zcGVjdHJ1bT0KLnJzdAotLS0gYS9kb2Mvc291cmNlL2FuYWx5emluZy9h
bmFseXNpc19tb2R1bGVzL2Fic29ycHRpb25fc3BlY3RydW0ucnN0CisrKyBiL2RvYy9zb3VyY2Uv
YW5hbHl6aW5nL2FuYWx5c2lzX21vZHVsZXMvYWJzb3JwdGlvbl9zcGVjdHJ1bS5yc3QKQEAgLTEw
OSw2ICsxMDksMTYgQEAKPTIwCiAuLiBub3RlOjogVG8gd3JpdGUgb3V0IGEgZml0cyBmaWxlLCB5
b3UgbXVzdCBpbnN0YWxsIHRoZSBgYXN0cm9weSA8aHR0cDovLz0Kd3d3LmFzdHJvcHkub3JnPmBf
IHB5dGhvbiBsaWJyYXJ5IGluIG9yZGVyIHRvIGFjY2VzcyB0aGUgYXN0cm9weS5pby5maXRzIG1v
PQpkdWxlLiAgWW91IGNhbiB1c3VhbGx5IGRvIHRoaXMgYnkgc2ltcGx5IHJ1bm5pbmcgYHBpcCBp
bnN0YWxsIGFzdHJvcHlgIGF0IHQ9CmhlIGNvbW1hbmQgbGluZS4KPTIwCitHZW5lcmF0aW5nIFNw
ZWN0cmEgaW4gUGFyYWxsZWwKK15eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitUaGUg
c3BlY3RydW0gZ2VuZXJhdG9yIGNhbiBiZSBydW4gaW4gcGFyYWxsZWwgc2ltcGx5IGJ5IGZvbGxv
d2luZyB0aGUgcHJvYz0KZWR1cmVzPTIwCitsYWlkIG91dCBpbiA6cmVmOmBwYXJhbGxlbC1jb21w
dXRhdGlvbmAgZm9yIHJ1bm5pbmcgeXQgc2NyaXB0cyBpbiBwYXJhbGxlbD0KLiA9MjAKK1NwZWN0
cnVtIGdlbmVyYXRpb24gaXMgcGFyYWxsZWxpemVkIHVzaW5nIGEgbXVsdGktbGV2ZWwgc3RyYXRl
Z3kgd2hlcmUgZWFjPQpoPTIwCithYnNvcnB0aW9uIGxpbmUgaXMgZGVwb3NpdGVkIGJ5IGEgZGlm
ZmVyZW50IHByb2Nlc3Nvci4gIElmIHRoZSBudW1iZXIgb2YgYT0KdmFpbGFibGU9MjAKK3Byb2Nl
c3NvcnMgaXMgZ3JlYXRlciB0aGFuIHRoZSBudW1iZXIgb2YgbGluZXMsIHRoZW4gdGhlIGRlcG9z
aXRpb24gb2Y9MjAKK2luZGl2aWR1YWwgbGluZXMgd2lsbCBiZSBkaXZpZGVkIG92ZXIgbXVsdGlw
bGUgcHJvY2Vzc29ycy4KKwogRml0dGluZyBhbiBBYnNvcnB0aW9uIFNwZWN0cnVtCiAtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPTIwCgoKaHR0cHM6Ly9iaXRidWNrZXQub3JnL3l0X2Fu
YWx5c2lzL3l0L2NvbW1pdHMvMWU3Njk1MmUwMTVkLwpDaGFuZ2VzZXQ6ICAgMWU3Njk1MmUwMTVk
CkJyYW5jaDogICAgICB5dApVc2VyOiAgICAgICAgbmdvbGRiYXVtCkRhdGU6ICAgICAgICAyMDE1
LTA4LTIwIDE2OjE2OjEwKzAwOjAwClN1bW1hcnk6ICAgICBNZXJnZWQgaW4gYnJpdHRvbnNtaXRo
L3l0IChwdWxsIHJlcXVlc3QgIzE2NjUpCgpNdWx0aS1sZXZlbCBwYXJhbGxlbGlzbSBmb3IgYWJz
b3JwdGlvbiBzcGVjdHJ1bSBnZW5lcmF0b3IKQWZmZWN0ZWQgIzogIDIgZmlsZXMKCmRpZmYgLXIg
ZTBiMTZkMDQwM2E3ODEyYThhMzAyZjg3MzI3YWIwZmU1ZmYwNzcyOCAtciAxZTc2OTUyZTAxNWRm
YjE0ZGI1ZDk3Mz0KMzNjMTgyZWRjNjU4ZDRhYWEgZG9jL3NvdXJjZS9hbmFseXppbmcvYW5hbHlz
aXNfbW9kdWxlcy9hYnNvcnB0aW9uX3NwZWN0cnVtPQoucnN0Ci0tLSBhL2RvYy9zb3VyY2UvYW5h
bHl6aW5nL2FuYWx5c2lzX21vZHVsZXMvYWJzb3JwdGlvbl9zcGVjdHJ1bS5yc3QKKysrIGIvZG9j
L3NvdXJjZS9hbmFseXppbmcvYW5hbHlzaXNfbW9kdWxlcy9hYnNvcnB0aW9uX3NwZWN0cnVtLnJz
dApAQCAtMTA5LDYgKzEwOSwxNiBAQAo9MjAKIC4uIG5vdGU6OiBUbyB3cml0ZSBvdXQgYSBmaXRz
IGZpbGUsIHlvdSBtdXN0IGluc3RhbGwgdGhlIGBhc3Ryb3B5IDxodHRwOi8vPQp3d3cuYXN0cm9w
eS5vcmc+YF8gcHl0aG9uIGxpYnJhcnkgaW4gb3JkZXIgdG8gYWNjZXNzIHRoZSBhc3Ryb3B5Lmlv
LmZpdHMgbW89CmR1bGUuICBZb3UgY2FuIHVzdWFsbHkgZG8gdGhpcyBieSBzaW1wbHkgcnVubmlu
ZyBgcGlwIGluc3RhbGwgYXN0cm9weWAgYXQgdD0KaGUgY29tbWFuZCBsaW5lLgo9MjAKK0dlbmVy
YXRpbmcgU3BlY3RyYSBpbiBQYXJhbGxlbAorXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5e
CisKK1RoZSBzcGVjdHJ1bSBnZW5lcmF0b3IgY2FuIGJlIHJ1biBpbiBwYXJhbGxlbCBzaW1wbHkg
YnkgZm9sbG93aW5nIHRoZSBwcm9jPQplZHVyZXM9MjAKK2xhaWQgb3V0IGluIDpyZWY6YHBhcmFs
bGVsLWNvbXB1dGF0aW9uYCBmb3IgcnVubmluZyB5dCBzY3JpcHRzIGluIHBhcmFsbGVsPQouID0y
MAorU3BlY3RydW0gZ2VuZXJhdGlvbiBpcyBwYXJhbGxlbGl6ZWQgdXNpbmcgYSBtdWx0aS1sZXZl
bCBzdHJhdGVneSB3aGVyZSBlYWM9Cmg9MjAKK2Fic29ycHRpb24gbGluZSBpcyBkZXBvc2l0ZWQg
YnkgYSBkaWZmZXJlbnQgcHJvY2Vzc29yLiAgSWYgdGhlIG51bWJlciBvZiBhPQp2YWlsYWJsZT0y
MAorcHJvY2Vzc29ycyBpcyBncmVhdGVyIHRoYW4gdGhlIG51bWJlciBvZiBsaW5lcywgdGhlbiB0
aGUgZGVwb3NpdGlvbiBvZj0yMAoraW5kaXZpZHVhbCBsaW5lcyB3aWxsIGJlIGRpdmlkZWQgb3Zl
ciBtdWx0aXBsZSBwcm9jZXNzb3JzLgorCiBGaXR0aW5nIGFuIEFic29ycHRpb24gU3BlY3RydW0K
IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo9MjAKCmRpZmYgLXIgZTBiMTZkMDQwM2E3
ODEyYThhMzAyZjg3MzI3YWIwZmU1ZmYwNzcyOCAtciAxZTc2OTUyZTAxNWRmYjE0ZGI1ZDk3Mz0K
MzNjMTgyZWRjNjU4ZDRhYWEgeXQvYW5hbHlzaXNfbW9kdWxlcy9hYnNvcnB0aW9uX3NwZWN0cnVt
L2Fic29ycHRpb25fc3BlY3RyPQp1bS5weQotLS0gYS95dC9hbmFseXNpc19tb2R1bGVzL2Fic29y
cHRpb25fc3BlY3RydW0vYWJzb3JwdGlvbl9zcGVjdHJ1bS5weQorKysgYi95dC9hbmFseXNpc19t
b2R1bGVzL2Fic29ycHRpb25fc3BlY3RydW0vYWJzb3JwdGlvbl9zcGVjdHJ1bS5weQpAQCAtMjYs
NiArMjYsMTAgQEAKICAgICBib2x0em1hbm5fY29uc3RhbnRfY2dzLCBcCiAgICAgc3BlZWRfb2Zf
bGlnaHRfY2dzCiBmcm9tIHl0LnV0aWxpdGllcy5vbl9kZW1hbmRfaW1wb3J0cyBpbXBvcnQgX2Fz
dHJvcHkKK2Zyb20geXQudXRpbGl0aWVzLnBhcmFsbGVsX3Rvb2xzLnBhcmFsbGVsX2FuYWx5c2lz
X2ludGVyZmFjZSBpbXBvcnQgXAorICAgIF9nZXRfY29tbSwgXAorICAgIHBhcmFsbGVsX29iamVj
dHMsIFwKKyAgICBwYXJhbGxlbF9yb290X29ubHkKPTIwCiBweWZpdHMgPTNEIF9hc3Ryb3B5LnB5
Zml0cwo9MjAKQEAgLTEwOCw5ICsxMTIsOSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJ25vcm1hbGl6YXRpb24nOiBub3JtYWxpemF0aW9uLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJ2luZGV4JzogaW5kZXh9KQo9MjAKLSAgICBkZWYgbWFrZV9z
cGVjdHJ1bShzZWxmLCBpbnB1dF9maWxlLCBvdXRwdXRfZmlsZT0zRCdzcGVjdHJ1bS5oNScsCi0g
ICAgICAgICAgICAgICAgICAgICAgbGluZV9saXN0X2ZpbGU9M0QnbGluZXMudHh0JywKLSAgICAg
ICAgICAgICAgICAgICAgICB1c2VfcGVjdWxpYXJfdmVsb2NpdHk9M0RUcnVlKToKKyAgICBkZWYg
bWFrZV9zcGVjdHJ1bShzZWxmLCBpbnB1dF9maWxlLCBvdXRwdXRfZmlsZT0zRCJzcGVjdHJ1bS5o
NSIsCisgICAgICAgICAgICAgICAgICAgICAgbGluZV9saXN0X2ZpbGU9M0QibGluZXMudHh0IiwK
KyAgICAgICAgICAgICAgICAgICAgICB1c2VfcGVjdWxpYXJfdmVsb2NpdHk9M0RUcnVlLCBuam9i
cz0zRCJhdXRvIik6CiAgICAgICAgICIiIgogICAgICAgICBNYWtlIHNwZWN0cnVtIGZyb20gcmF5
IGRhdGEgdXNpbmcgdGhlIGxpbmUgbGlzdC4KPTIwCkBAIC0xMTksMTEgKzEyMywzNSBAQAo9MjAK
ICAgICAgICAgaW5wdXRfZmlsZSA6IHN0cmluZwogICAgICAgICAgICBwYXRoIHRvIGlucHV0IHJh
eSBkYXRhLgotICAgICAgICBvdXRwdXRfZmlsZSA6IHN0cmluZwotICAgICAgICAgICBwYXRoIGZv
ciBvdXRwdXQgZmlsZS4gIEZpbGUgZm9ybWF0cyBhcmUgY2hvc2VuIGJhc2VkIG9uIHRoZSBmaWw9
CmVuYW1lIGV4dGVuc2lvbi4KLSAgICAgICAgICAgYGAuaDVgYCBmb3IgaGRmNSwgYGAuZml0c2Bg
IGZvciBmaXRzLCBhbmQgZXZlcnl0aGluZyBlbHNlIGlzIEFTPQpDSUkuCi0gICAgICAgIHVzZV9w
ZWN1bGlhcl92ZWxvY2l0eSA6IGJvb2wKKyAgICAgICAgb3V0cHV0X2ZpbGUgOiBvcHRpb25hbCwg
c3RyaW5nCisgICAgICAgICAgIHBhdGggZm9yIG91dHB1dCBmaWxlLiAgRmlsZSBmb3JtYXRzIGFy
ZSBjaG9zZW4gYmFzZWQgb24gdGhlPTIwCisgICAgICAgICAgIGZpbGVuYW1lIGV4dGVuc2lvbi4g
IGBgLmg1YGAgZm9yIGhkZjUsIGBgLmZpdHNgYCBmb3IgZml0cyw9MjAKKyAgICAgICAgICAgYW5k
IGV2ZXJ5dGhpbmcgZWxzZSBpcyBBU0NJSS4KKyAgICAgICAgICAgRGVmYXVsdDogInNwZWN0cnVt
Lmg1IgorICAgICAgICBsaW5lX2xpc3RfZmlsZSA6IG9wdGlvbmFsLCBzdHJpbmcKKyAgICAgICAg
ICAgcGF0aCB0byBmaWxlIGluIHdoaWNoIHRoZSBsaXN0IG9mIGFsbCBkZXBvc2l0ZWQgbGluZXM9
MjAKKyAgICAgICAgICAgd2lsbCBiZSBzYXZlZC4gIElmIHNldCB0byBOb25lLCB0aGUgbGluZSBs
aXN0IHdpbGwgbm90PTIwCisgICAgICAgICAgIGJlIHNhdmVkLiAgTm90ZSwgd2hlbiBydW5uaW5n
IGluIHBhcmFsbGVsLCBjb21iaW5pbmcgdGhlPTIwCisgICAgICAgICAgIGxpbmUgbGlzdHMgY2Fu
IGJlIHF1aXRlIHNsb3csIHNvIGl0IGlzIHJlY29tbWVuZGVkIHRvIHNldD0yMAorICAgICAgICAg
ICB0aGlzIHRvIE5vbmUgd2hlbiBydW5uaW5nIGluIHBhcmFsbGVsIHVubGVzcyB5b3UgcmVhbGx5
CisgICAgICAgICAgIHdhbnQgdGhlbS4KKyAgICAgICAgICAgRGVmYXVsdDogImxpbmVzLnR4dCIK
KyAgICAgICAgdXNlX3BlY3VsaWFyX3ZlbG9jaXR5IDogb3B0aW9uYWwsIGJvb2wKICAgICAgICAg
ICAgaWYgVHJ1ZSwgaW5jbHVkZSBsaW5lIG9mIHNpZ2h0IHZlbG9jaXR5IGZvciBzaGlmdGluZyBs
aW5lcy4KKyAgICAgICAgICAgRGVmYXVsdDogVHJ1ZQorICAgICAgICBuam9icyA6IG9wdGlvbmFs
LCBpbnQgb3IgImF1dG8iCisgICAgICAgICAgIHRoZSBudW1iZXIgb2YgcHJvY2VzcyBncm91cHMg
aW50byB3aGljaCB0aGUgbG9vcCBvdmVyCisgICAgICAgICAgIGFic29ycHRpb24gbGluZXMgd2ls
bCBiZSBkaXZpZGVkLiAgSWYgc2V0IHRvIC0xLCBlYWNoPTIwCisgICAgICAgICAgIGFic29ycHRp
b24gbGluZSB3aWxsIGJlIGRlcG9zaXRlZCBieSBleGFjdGx5IG9uZSBwcm9jZXNzb3IuCisgICAg
ICAgICAgIElmIG5qb2JzIGlzIHNldCB0byBhIHZhbHVlIGxlc3MgdGhhbiB0aGUgdG90YWwgbnVt
YmVyIG9mPTIwCisgICAgICAgICAgIGF2YWlsYWJsZSBwcm9jZXNzb3JzIChOKSwgdGhlbiB0aGUg
ZGVwb3NpdGlvbiBvZiBhbj0yMAorICAgICAgICAgICBpbmRpdmlkdWFsIGxpbmUgd2lsbCBiZSBw
YXJhbGxlbGl6ZWQgb3ZlciAoTiAvIG5qb2JzKQorICAgICAgICAgICBwcm9jZXNzb3JzLiAgSWYg
c2V0IHRvICJhdXRvIiwgaXQgd2lsbCBmaXJzdCB0cnkgdG89MjAKKyAgICAgICAgICAgcGFyYWxs
ZWxpemUgb3ZlciB0aGUgbGlzdCBvZiBsaW5lcyBhbmQgb25seSBwYXJhbGxlbGl6ZT0yMAorICAg
ICAgICAgICB0aGUgbGluZSBkZXBvc2l0aW9uIGlmIHRoZXJlIGFyZSBtb3JlIHByb2Nlc3NvcnMg
dGhhbgorICAgICAgICAgICBsaW5lcy4gIFRoaXMgaXMgdGhlIG9wdGltYWwgc3RyYXRlZ3kgZm9y
IHBhcmFsbGVsaXppbmc9MjAKKyAgICAgICAgICAgc3BlY3RydW0gZ2VuZXJhdGlvbi4KKyAgICAg
ICAgICAgRGVmYXVsdDogImF1dG8iCiAgICAgICAgICIiIgo9MjAKICAgICAgICAgaW5wdXRfZmll
bGRzID0zRCBbJ2RsJywgJ3JlZHNoaWZ0JywgJ3RlbXBlcmF0dXJlJ10KQEAgLTE0NSw3ICsxNzMs
MTIgQEAKICAgICAgICAgc2VsZi50YXVfZmllbGQgPTNEIG5wLnplcm9zKHNlbGYubGFtYmRhX2Jp
bnMuc2l6ZSkKICAgICAgICAgc2VsZi5zcGVjdHJ1bV9saW5lX2xpc3QgPTNEIFtdCj0yMAotICAg
ICAgICBzZWxmLl9hZGRfbGluZXNfdG9fc3BlY3RydW0oZmllbGRfZGF0YSwgdXNlX3BlY3VsaWFy
X3ZlbG9jaXR5KQorICAgICAgICBpZiBuam9icyA9M0Q9M0QgImF1dG8iOgorICAgICAgICAgICAg
Y29tbSA9M0QgX2dldF9jb21tKCgpKQorICAgICAgICAgICAgbmpvYnMgPTNEIG1pbihjb21tLnNp
emUsIGxlbihzZWxmLmxpbmVfbGlzdCkpCisgICAgICAgPTIwCisgICAgICAgIHNlbGYuX2FkZF9s
aW5lc190b19zcGVjdHJ1bShmaWVsZF9kYXRhLCB1c2VfcGVjdWxpYXJfdmVsb2NpdHksCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lX2xpc3RfZmlsZSBpcyBub3QgTm9u
ZSwgbmpvYnM9M0Ruaj0Kb2JzKQogICAgICAgICBzZWxmLl9hZGRfY29udGludWFfdG9fc3BlY3Ry
dW0oZmllbGRfZGF0YSwgdXNlX3BlY3VsaWFyX3ZlbG9jaXR5KQo9MjAKICAgICAgICAgc2VsZi5m
bHV4X2ZpZWxkID0zRCBucC5leHAoLXNlbGYudGF1X2ZpZWxkKQpAQCAtMTU2LDcgKzE4OSw4IEBA
CiAgICAgICAgICAgICBzZWxmLl93cml0ZV9zcGVjdHJ1bV9maXRzKG91dHB1dF9maWxlKQogICAg
ICAgICBlbHNlOgogICAgICAgICAgICAgc2VsZi5fd3JpdGVfc3BlY3RydW1fYXNjaWkob3V0cHV0
X2ZpbGUpCi0gICAgICAgIHNlbGYuX3dyaXRlX3NwZWN0cnVtX2xpbmVfbGlzdChsaW5lX2xpc3Rf
ZmlsZSkKKyAgICAgICAgaWYgbGluZV9saXN0X2ZpbGUgaXMgbm90IE5vbmU6CisgICAgICAgICAg
ICBzZWxmLl93cml0ZV9zcGVjdHJ1bV9saW5lX2xpc3QobGluZV9saXN0X2ZpbGUpCj0yMAogICAg
ICAgICBkZWwgZmllbGRfZGF0YQogICAgICAgICByZXR1cm4gKHNlbGYubGFtYmRhX2JpbnMsIHNl
bGYuZmx1eF9maWVsZCkKQEAgLTE5Niw3ICsyMzAsOCBAQAogICAgICAgICAgICAgICAgIHBiYXIu
dXBkYXRlKGkpCiAgICAgICAgICAgICBwYmFyLmZpbmlzaCgpCj0yMAotICAgIGRlZiBfYWRkX2xp
bmVzX3RvX3NwZWN0cnVtKHNlbGYsIGZpZWxkX2RhdGEsIHVzZV9wZWN1bGlhcl92ZWxvY2l0eSk6
CisgICAgZGVmIF9hZGRfbGluZXNfdG9fc3BlY3RydW0oc2VsZiwgZmllbGRfZGF0YSwgdXNlX3Bl
Y3VsaWFyX3ZlbG9jaXR5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhdmVfbGlu
ZV9saXN0LCBuam9icz0zRC0xKToKICAgICAgICAgIiIiCiAgICAgICAgIEFkZCB0aGUgYWJzb3Jw
dGlvbiBsaW5lcyB0byB0aGUgc3BlY3RydW0uCiAgICAgICAgICIiIgpAQCAtMjA1LDcgKzI0MCw3
IEBACiAgICAgICAgICMgV2lkZW4gd2F2ZWxlbmd0aCB3aW5kb3cgdW50aWwgb3B0aWNhbCBkZXB0
aCByZWFjaGVzIGEgbWF4IHZhbHVlID0KYXQgdGhlIGVuZHMuCiAgICAgICAgIG1heF90YXUgPTNE
IDAuMDAxCj0yMAotICAgICAgICBmb3IgbGluZSBpbiBzZWxmLmxpbmVfbGlzdDoKKyAgICAgICAg
Zm9yIGxpbmUgaW4gcGFyYWxsZWxfb2JqZWN0cyhzZWxmLmxpbmVfbGlzdCwgbmpvYnM9M0Ruam9i
cyk6CiAgICAgICAgICAgICBjb2x1bW5fZGVuc2l0eSA9M0QgZmllbGRfZGF0YVtsaW5lWydmaWVs
ZF9uYW1lJ11dICogZmllbGRfZGF0YT0KWydkbCddCiAgICAgICAgICAgICBkZWx0YV9sYW1iZGEg
PTNEIGxpbmVbJ3dhdmVsZW5ndGgnXSAqIGZpZWxkX2RhdGFbJ3JlZHNoaWZ0J10KICAgICAgICAg
ICAgIGlmIHVzZV9wZWN1bGlhcl92ZWxvY2l0eToKQEAgLTIzOCw3ICsyNzMsNyBAQAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocmlnaHRfaW5kZXggLSBsZWZ0X2luZGV4ID4g
MSkpWzBdCiAgICAgICAgICAgICBwYmFyID0zRCBnZXRfcGJhcigiQWRkaW5nIGxpbmUgLSAlcyBb
JWYgQV06ICIgJSAobGluZVsnbGFiZWwnXT0KLCBsaW5lWyd3YXZlbGVuZ3RoJ10pLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2xpbmVzLnNpemUpCi0gICAgICAgICAgICBmb3Ig
aSwgbGl4ZWwgaW4gZW51bWVyYXRlKHZhbGlkX2xpbmVzKToKKyAgICAgICAgICAgIGZvciBpLCBs
aXhlbCBpbiBwYXJhbGxlbF9vYmplY3RzKGVudW1lcmF0ZSh2YWxpZF9saW5lcyksIG5qb2JzPQo9
M0QtMSk6CiAgICAgICAgICAgICAgICAgbXlfYmluX3JhdGlvID0zRCBzcGVjdHJ1bV9iaW5fcmF0
aW8KICAgICAgICAgICAgICAgICB3aGlsZSBUcnVlOgogICAgICAgICAgICAgICAgICAgICBsYW1i
ZGFfYmlucywgbGluZV90YXUgPTNEIFwKQEAgLTI2MSw3ICsyOTYsNyBAQAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXlfYmluX3JhdGlvICoKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoX3JhdGlvW2xpeGVsXSkuYXN0eXBl
KGludCkuPQpjbGlwKDAsIHNlbGYubl9sYW1iZGEpCiAgICAgICAgICAgICAgICAgc2VsZi50YXVf
ZmllbGRbbGVmdF9pbmRleFtsaXhlbF06cmlnaHRfaW5kZXhbbGl4ZWxdXSArPTNEID0KbGluZV90
YXUKLSAgICAgICAgICAgICAgICBpZiBsaW5lWydsYWJlbF90aHJlc2hvbGQnXSBpcyBub3QgTm9u
ZSBhbmQgXAorICAgICAgICAgICAgICAgIGlmIHNhdmVfbGluZV9saXN0IGFuZCBsaW5lWydsYWJl
bF90aHJlc2hvbGQnXSBpcyBub3QgTm9uZSA9CmFuZCBcCiAgICAgICAgICAgICAgICAgICAgICAg
ICBjb2x1bW5fZGVuc2l0eVtsaXhlbF0gPj0zRCBsaW5lWydsYWJlbF90aHJlc2hvbGQnXToKICAg
ICAgICAgICAgICAgICAgICAgaWYgdXNlX3BlY3VsaWFyX3ZlbG9jaXR5OgogICAgICAgICAgICAg
ICAgICAgICAgICAgcGVjdWxpYXJfdmVsb2NpdHkgPTNEIGZpZWxkX2RhdGFbJ3ZlbG9jaXR5X2xv
cyddW2w9Cml4ZWxdLmluX3VuaXRzKCJrbS9zIikKQEAgLTI4MCw2ICszMTUsMTMgQEAKICAgICAg
ICAgICAgIGRlbCBjb2x1bW5fZGVuc2l0eSwgZGVsdGFfbGFtYmRhLCB0aGVybWFsX2IsIFwKICAg
ICAgICAgICAgICAgICBjZW50ZXJfYmlucywgd2lkdGhfcmF0aW8sIGxlZnRfaW5kZXgsIHJpZ2h0
X2luZGV4Cj0yMAorICAgICAgICBjb21tID0zRCBfZ2V0X2NvbW0oKCkpCisgICAgICAgIHNlbGYu
dGF1X2ZpZWxkID0zRCBjb21tLm1waV9hbGxyZWR1Y2Uoc2VsZi50YXVfZmllbGQsIG9wPTNEInN1
bSIpCisgICAgICAgIGlmIHNhdmVfbGluZV9saXN0OgorICAgICAgICAgICAgc2VsZi5zcGVjdHJ1
bV9saW5lX2xpc3QgPTNEIGNvbW0ucGFyX2NvbWJpbmVfb2JqZWN0KAorICAgICAgICAgICAgICAg
IHNlbGYuc3BlY3RydW1fbGluZV9saXN0LCAiY2F0IiwgZGF0YXR5cGU9M0QibGlzdCIpCisKKyAg
ICBAcGFyYWxsZWxfcm9vdF9vbmx5CiAgICAgZGVmIF93cml0ZV9zcGVjdHJ1bV9saW5lX2xpc3Qo
c2VsZiwgZmlsZW5hbWUpOgogICAgICAgICAiIiIKICAgICAgICAgV3JpdGUgb3V0IGxpc3Qgb2Yg
c3BlY3RyYWwgbGluZXMuCkBAIC0yOTUsNiArMzM3LDcgQEAKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVbJ3JlZHNoaWZ0J10sIGxpbmVbJ3ZfPQpw
ZWMnXSkpCiAgICAgICAgIGYuY2xvc2UoKQo9MjAKKyAgICBAcGFyYWxsZWxfcm9vdF9vbmx5CiAg
ICAgZGVmIF93cml0ZV9zcGVjdHJ1bV9hc2NpaShzZWxmLCBmaWxlbmFtZSk6CiAgICAgICAgICIi
IgogICAgICAgICBXcml0ZSBzcGVjdHJ1bSB0byBhbiBhc2NpaSBmaWxlLgpAQCAtMzA3LDYgKzM1
MCw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnRhdV9maWVs
ZFtpXSwgc2VsZi5mbHV4X2ZpZWxkW2ldKSkKICAgICAgICAgZi5jbG9zZSgpCj0yMAorICAgIEBw
YXJhbGxlbF9yb290X29ubHkKICAgICBkZWYgX3dyaXRlX3NwZWN0cnVtX2ZpdHMoc2VsZiwgZmls
ZW5hbWUpOgogICAgICAgICAiIiIKICAgICAgICAgV3JpdGUgc3BlY3RydW0gdG8gYSBmaXRzIGZp
bGUuCkBAIC0zMTgsNiArMzYyLDcgQEAKICAgICAgICAgdGJoZHUgPTNEIHB5Zml0cy5CaW5UYWJs
ZUhEVS5mcm9tX2NvbHVtbnMoY29scykKICAgICAgICAgdGJoZHUud3JpdGV0byhmaWxlbmFtZSwg
Y2xvYmJlcj0zRFRydWUpCj0yMAorICAgIEBwYXJhbGxlbF9yb290X29ubHkKICAgICBkZWYgX3dy
aXRlX3NwZWN0cnVtX2hkZjUoc2VsZiwgZmlsZW5hbWUpOgogICAgICAgICAiIiIKICAgICAgICAg
V3JpdGUgc3BlY3RydW0gdG8gYW4gaGRmNSBmaWxlLgoKUmVwb3NpdG9yeSBVUkw6IGh0dHBzOi8v
Yml0YnVja2V0Lm9yZy95dF9hbmFseXNpcy95dC8KCi0tCgpUaGlzIGlzIGEgY29tbWl0IG5vdGlm
aWNhdGlvbiBmcm9tIGJpdGJ1Y2tldC5vcmcuIFlvdSBhcmUgcmVjZWl2aW5nCnRoaXMgYmVjYXVz
ZSB5b3UgaGF2ZSB0aGUgc2VydmljZSBlbmFibGVkLCBhZGRyZXNzaW5nIHRoZSByZWNpcGllbnQg
b2YKdGhpcyBlbWFpbC4K


More information about the yt-svn mailing list