[3.15] gh-105812: Make use of the Sphinx `deco` role in documentation (GH-139598) (#154979)

hugovk <[email protected]> Fri, 31 Jul 2026 05:29:10 -0400 (EDT)
Newsgroups gmane.comp.python.cvs
Message-ID <[email protected]>
aHR0cHM6Ly9naXRodWIuY29tL3B5dGhvbi9jcHl0aG9uL2NvbW1pdC9iM2JmZWFlYmFmYmQ3YmM5
MWY5ODRkOGQwYmNmNzEwMDBiZDQ0NThhDQpjb21taXQ6IGIzYmZlYWViYWZiZDdiYzkxZjk4NGQ4
ZDBiY2Y3MTAwMGJkNDQ1OGENCmJyYW5jaDogMy4xNQ0KYXV0aG9yOiBIdWdvIHZhbiBLZW1lbmFk
ZSA8MTMyNDIyNStodWdvdmtAdXNlcnMubm9yZXBseS5naXRodWIuY29tPg0KY29tbWl0dGVyOiBo
dWdvdmsgPDEzMjQyMjUraHVnb3ZrQHVzZXJzLm5vcmVwbHkuZ2l0aHViLmNvbT4NCmRhdGU6IDIw
MjYtMDctMzFUMTI6Mjg6NTcrMDM6MDANCnN1bW1hcnk6DQoNClszLjE1XSBnaC0xMDU4MTI6IE1h
a2UgdXNlIG9mIHRoZSBTcGhpbnggYGRlY29gIHJvbGUgaW4gZG9jdW1lbnRhdGlvbiAoR0gtMTM5
NTk4KSAoIzE1NDk3OSkNCg0KQ28tYXV0aG9yZWQtYnk6IFZpY3RvcmllbiA8NjUzMDYwNTcrVmlp
Y29zQHVzZXJzLm5vcmVwbHkuZ2l0aHViLmNvbT4NCg0KZmlsZXM6DQpNIERvYy9jLWFwaS9leGNl
cHRpb25zLnJzdA0KTSBEb2MvYy1hcGkvc3RydWN0dXJlcy5yc3QNCk0gRG9jL2RlcHJlY2F0aW9u
cy9wZW5kaW5nLXJlbW92YWwtaW4tMy4xNS5yc3QNCk0gRG9jL2ZhcS9wcm9ncmFtbWluZy5yc3QN
Ck0gRG9jL2dsb3NzYXJ5LnJzdA0KTSBEb2MvaG93dG8vYW5ub3RhdGlvbnMucnN0DQpNIERvYy9o
b3d0by9kZXNjcmlwdG9yLnJzdA0KTSBEb2MvaG93dG8vZW51bS5yc3QNCk0gRG9jL2hvd3RvL3Nv
cnRpbmcucnN0DQpNIERvYy9saWJyYXJ5L2FiYy5yc3QNCk0gRG9jL2xpYnJhcnkvYmlzZWN0LnJz
dA0KTSBEb2MvbGlicmFyeS9jb2xsZWN0aW9ucy5yc3QNCk0gRG9jL2xpYnJhcnkvY29udGV4dGxp
Yi5yc3QNCk0gRG9jL2xpYnJhcnkvY3R5cGVzLnJzdA0KTSBEb2MvbGlicmFyeS9lbnVtLnJzdA0K
TSBEb2MvbGlicmFyeS9mbm1hdGNoLnJzdA0KTSBEb2MvbGlicmFyeS9mdW5jdGlvbnMucnN0DQpN
IERvYy9saWJyYXJ5L2Z1bmN0b29scy5yc3QNCk0gRG9jL2xpYnJhcnkvdGFyZmlsZS5yc3QNCk0g
RG9jL2xpYnJhcnkvdGVzdC5yc3QNCk0gRG9jL2xpYnJhcnkvdHlwaW5nLnJzdA0KTSBEb2MvbGli
cmFyeS91bml0dGVzdC5yc3QNCk0gRG9jL3JlZmVyZW5jZS9jb21wb3VuZF9zdG10cy5yc3QNCk0g
RG9jL3JlZmVyZW5jZS9kYXRhbW9kZWwucnN0DQpNIERvYy9yZWZlcmVuY2UvZXhwcmVzc2lvbnMu
cnN0DQpNIERvYy9yZWZlcmVuY2Uvc2ltcGxlX3N0bXRzLnJzdA0KTSBEb2Mvd2hhdHNuZXcvMi42
LnJzdA0KTSBEb2Mvd2hhdHNuZXcvMi43LnJzdA0KTSBEb2Mvd2hhdHNuZXcvMy4xMC5yc3QNCk0g
RG9jL3doYXRzbmV3LzMuMTEucnN0DQpNIERvYy93aGF0c25ldy8zLjEyLnJzdA0KTSBEb2Mvd2hh
dHNuZXcvMy4xMy5yc3QNCk0gRG9jL3doYXRzbmV3LzMuMTUucnN0DQpNIERvYy93aGF0c25ldy8z
LjIucnN0DQpNIERvYy93aGF0c25ldy8zLjMucnN0DQpNIERvYy93aGF0c25ldy8zLjQucnN0DQpN
IERvYy93aGF0c25ldy8zLjUucnN0DQpNIERvYy93aGF0c25ldy8zLjcucnN0DQpNIERvYy93aGF0
c25ldy8zLjgucnN0DQoNCmRpZmYgLS1naXQgYS9Eb2MvYy1hcGkvZXhjZXB0aW9ucy5yc3QgYi9E
b2MvYy1hcGkvZXhjZXB0aW9ucy5yc3QNCmluZGV4IDhkMjg0OTU0YjA0OTg5NS4uNDA1MjJmOGM3
YjEzNzU2IDEwMDY0NA0KLS0tIGEvRG9jL2MtYXBpL2V4Y2VwdGlvbnMucnN0DQorKysgYi9Eb2Mv
Yy1hcGkvZXhjZXB0aW9ucy5yc3QNCkBAIC0xMDU2LDcgKzEwNTYsNyBAQCBQcm9wZXJseSBpbXBs
ZW1lbnRpbmcgOmM6bWVtYmVyOmB+UHlUeXBlT2JqZWN0LnRwX3JlcHJgIGZvciBjb250YWluZXIg
dHlwZXMgcmVxdQ0KIHNwZWNpYWwgcmVjdXJzaW9uIGhhbmRsaW5nLiAgSW4gYWRkaXRpb24gdG8g
cHJvdGVjdGluZyB0aGUgc3RhY2ssDQogOmM6bWVtYmVyOmB+UHlUeXBlT2JqZWN0LnRwX3JlcHJg
IGFsc28gbmVlZHMgdG8gdHJhY2sgb2JqZWN0cyB0byBwcmV2ZW50IGN5Y2xlcy4gIFRoZQ0KIGZv
bGxvd2luZyB0d28gZnVuY3Rpb25zIGZhY2lsaXRhdGUgdGhpcyBmdW5jdGlvbmFsaXR5LiAgRWZm
ZWN0aXZlbHksDQotdGhlc2UgYXJlIHRoZSBDIGVxdWl2YWxlbnQgdG8gOmZ1bmM6YHJlcHJsaWIu
cmVjdXJzaXZlX3JlcHJgLg0KK3RoZXNlIGFyZSB0aGUgQyBlcXVpdmFsZW50IHRvIDpkZWNvOmBy
ZXBybGliLnJlY3Vyc2l2ZV9yZXByYC4NCiANCiAuLiBjOmZ1bmN0aW9uOjogaW50IFB5X1JlcHJF
bnRlcihQeU9iamVjdCAqb2JqZWN0KQ0KIA0KZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS9zdHJ1Y3R1
cmVzLnJzdCBiL0RvYy9jLWFwaS9zdHJ1Y3R1cmVzLnJzdA0KaW5kZXggYWVjYTQxMjYxMDMxN2Zl
Li4xZGRkZTVkMTM2YjNiYjEgMTAwNjQ0DQotLS0gYS9Eb2MvYy1hcGkvc3RydWN0dXJlcy5yc3QN
CisrKyBiL0RvYy9jLWFwaS9zdHJ1Y3R1cmVzLnJzdA0KQEAgLTQ1NCw4ICs0NTQsOCBAQCBtZXRo
b2QuDQogDQogICAgVGhlIG1ldGhvZCB3aWxsIGJlIHBhc3NlZCB0aGUgdHlwZSBvYmplY3QgYXMg
dGhlIGZpcnN0IHBhcmFtZXRlciByYXRoZXINCiAgICB0aGFuIGFuIGluc3RhbmNlIG9mIHRoZSB0
eXBlLiAgVGhpcyBpcyB1c2VkIHRvIGNyZWF0ZSAqY2xhc3MgbWV0aG9kcyosDQotICAgc2ltaWxh
ciB0byB3aGF0IGlzIGNyZWF0ZWQgd2hlbiB1c2luZyB0aGUgOmZ1bmM6YGNsYXNzbWV0aG9kYCBi
dWlsdC1pbg0KLSAgIGZ1bmN0aW9uLg0KKyAgIHNpbWlsYXIgdG8gd2hhdCBpcyBjcmVhdGVkIHdo
ZW4gdXNpbmcgdGhlIDpkZWNvOmBjbGFzc21ldGhvZGAgYnVpbHQtaW4NCisgICBkZWNvcmF0b3Iu
DQogDQogDQogLi4gYzptYWNybzo6IE1FVEhfU1RBVElDDQpAQCAtNDY0LDcgKzQ2NCw3IEBAIG1l
dGhvZC4NCiANCiAgICBUaGUgbWV0aG9kIHdpbGwgYmUgcGFzc2VkIGBgTlVMTGBgIGFzIHRoZSBm
aXJzdCBwYXJhbWV0ZXIgcmF0aGVyIHRoYW4gYW4NCiAgICBpbnN0YW5jZSBvZiB0aGUgdHlwZS4g
IFRoaXMgaXMgdXNlZCB0byBjcmVhdGUgKnN0YXRpYyBtZXRob2RzKiwgc2ltaWxhciB0bw0KLSAg
IHdoYXQgaXMgY3JlYXRlZCB3aGVuIHVzaW5nIHRoZSA6ZnVuYzpgc3RhdGljbWV0aG9kYCBidWls
dC1pbiBmdW5jdGlvbi4NCisgICB3aGF0IGlzIGNyZWF0ZWQgd2hlbiB1c2luZyB0aGUgOmRlY286
YHN0YXRpY21ldGhvZGAgYnVpbHQtaW4gZGVjb3JhdG9yLg0KIA0KIE9uZSBvdGhlciBjb25zdGFu
dCBjb250cm9scyB3aGV0aGVyIGEgbWV0aG9kIGlzIGxvYWRlZCBpbiBwbGFjZSBvZiBhbm90aGVy
DQogZGVmaW5pdGlvbiB3aXRoIHRoZSBzYW1lIG1ldGhvZCBuYW1lLg0KZGlmZiAtLWdpdCBhL0Rv
Yy9kZXByZWNhdGlvbnMvcGVuZGluZy1yZW1vdmFsLWluLTMuMTUucnN0IGIvRG9jL2RlcHJlY2F0
aW9ucy9wZW5kaW5nLXJlbW92YWwtaW4tMy4xNS5yc3QNCmluZGV4IDFkOWEzMDk1ODEzYTZkZS4u
YWM0MDE0ZGE1MmI5YTQ4IDEwMDY0NA0KLS0tIGEvRG9jL2RlcHJlY2F0aW9ucy9wZW5kaW5nLXJl
bW92YWwtaW4tMy4xNS5yc3QNCisrKyBiL0RvYy9kZXByZWNhdGlvbnMvcGVuZGluZy1yZW1vdmFs
LWluLTMuMTUucnN0DQpAQCAtODIsNyArODIsNyBAQCBQZW5kaW5nIHJlbW92YWwgaW4gUHl0aG9u
IDMuMTUNCiAgICAgVXNlIGBgY2xhc3MgVEQoVHlwZWREaWN0KTogcGFzc2BgIG9yIGBgVEQgPSBU
eXBlZERpY3QoIlREIiwge30pYGANCiAgICAgdG8gY3JlYXRlIGEgVHlwZWREaWN0IHdpdGggemVy
byBmaWVsZC4NCiANCi0gICogVGhlIDpmdW5jOmAhdHlwaW5nLm5vX3R5cGVfY2hlY2tfZGVjb3Jh
dG9yYCBkZWNvcmF0b3IgZnVuY3Rpb24NCisgICogVGhlIDpkZWNvOmAhdHlwaW5nLm5vX3R5cGVf
Y2hlY2tfZGVjb3JhdG9yYCBkZWNvcmF0b3IgZnVuY3Rpb24NCiAgICAgaGFzIGJlZW4gZGVwcmVj
YXRlZCBzaW5jZSBQeXRob24gMy4xMy4NCiAgICAgQWZ0ZXIgZWlnaHQgeWVhcnMgaW4gdGhlIDpt
b2Q6YHR5cGluZ2AgbW9kdWxlLA0KICAgICBpdCBoYXMgeWV0IHRvIGJlIHN1cHBvcnRlZCBieSBh
bnkgbWFqb3IgdHlwZSBjaGVja2VyLg0KZGlmZiAtLWdpdCBhL0RvYy9mYXEvcHJvZ3JhbW1pbmcu
cnN0IGIvRG9jL2ZhcS9wcm9ncmFtbWluZy5yc3QNCmluZGV4IDU5MTU2NWNiYzAxMzU3NS4uYzJm
OGY3MmVlMWYyYzRiIDEwMDY0NA0KLS0tIGEvRG9jL2ZhcS9wcm9ncmFtbWluZy5yc3QNCisrKyBi
L0RvYy9mYXEvcHJvZ3JhbW1pbmcucnN0DQpAQCAtMjAwMyw3ICsyMDAzLDcgQEAgSG93IGRvIEkg
Y2FjaGUgbWV0aG9kIGNhbGxzPw0KIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiANCiBU
aGUgdHdvIHByaW5jaXBhbCB0b29scyBmb3IgY2FjaGluZyBtZXRob2RzIGFyZQ0KLTpmdW5jOmBm
dW5jdG9vbHMuY2FjaGVkX3Byb3BlcnR5YCBhbmQgOmZ1bmM6YGZ1bmN0b29scy5scnVfY2FjaGVg
LiAgVGhlDQorOmRlY286YGZ1bmN0b29scy5jYWNoZWRfcHJvcGVydHlgIGFuZCA6ZGVjbzpgZnVu
Y3Rvb2xzLmxydV9jYWNoZWAuICBUaGUNCiBmb3JtZXIgc3RvcmVzIHJlc3VsdHMgYXQgdGhlIGlu
c3RhbmNlIGxldmVsIGFuZCB0aGUgbGF0dGVyIGF0IHRoZSBjbGFzcw0KIGxldmVsLg0KIA0KZGlm
ZiAtLWdpdCBhL0RvYy9nbG9zc2FyeS5yc3QgYi9Eb2MvZ2xvc3NhcnkucnN0DQppbmRleCA1MTVm
YTc3ZGQwMzhkZjIuLmJiMDBhNGYwMmYwZWZkNSAxMDA2NDQNCi0tLSBhL0RvYy9nbG9zc2FyeS5y
c3QNCisrKyBiL0RvYy9nbG9zc2FyeS5yc3QNCkBAIC00MTYsNyArNDE2LDcgQEAgR2xvc3NhcnkN
CiAgICBkZWNvcmF0b3INCiAgICAgICBBIGZ1bmN0aW9uIHJldHVybmluZyBhbm90aGVyIGZ1bmN0
aW9uLCB1c3VhbGx5IGFwcGxpZWQgYXMgYSBmdW5jdGlvbg0KICAgICAgIHRyYW5zZm9ybWF0aW9u
IHVzaW5nIHRoZSBgYEB3cmFwcGVyYGAgc3ludGF4LiAgQ29tbW9uIGV4YW1wbGVzIGZvcg0KLSAg
ICAgIGRlY29yYXRvcnMgYXJlIDpmdW5jOmBjbGFzc21ldGhvZGAgYW5kIDpmdW5jOmBzdGF0aWNt
ZXRob2RgLg0KKyAgICAgIGRlY29yYXRvcnMgYXJlIDpkZWNvOmBjbGFzc21ldGhvZGAgYW5kIDpk
ZWNvOmBzdGF0aWNtZXRob2RgLg0KIA0KICAgICAgIFRoZSBkZWNvcmF0b3Igc3ludGF4IGlzIG1l
cmVseSBzeW50YWN0aWMgc3VnYXIsIHRoZSBmb2xsb3dpbmcgdHdvDQogICAgICAgZnVuY3Rpb24g
ZGVmaW5pdGlvbnMgYXJlIHNlbWFudGljYWxseSBlcXVpdmFsZW50OjoNCkBAIC02ODksNyArNjg5
LDcgQEAgR2xvc3NhcnkNCiAgICAgICBkZXRlcm1pbmVkIGJ5IHRoZSBkaXNwYXRjaCBhbGdvcml0
aG0uDQogDQogICAgICAgU2VlIGFsc28gdGhlIDp0ZXJtOmBzaW5nbGUgZGlzcGF0Y2hgIGdsb3Nz
YXJ5IGVudHJ5LCB0aGUNCi0gICAgICA6ZnVuYzpgZnVuY3Rvb2xzLnNpbmdsZWRpc3BhdGNoYCBk
ZWNvcmF0b3IsIGFuZCA6cGVwOmA0NDNgLg0KKyAgICAgIDpkZWNvOmBmdW5jdG9vbHMuc2luZ2xl
ZGlzcGF0Y2hgIGRlY29yYXRvciwgYW5kIDpwZXA6YDQ0M2AuDQogDQogICAgZ2VuZXJpYyB0eXBl
DQogICAgICAgQSA6dGVybTpgdHlwZWAgdGhhdCBjYW4gYmUgcGFyYW1ldGVyaXplZDsgdHlwaWNh
bGx5IGENCmRpZmYgLS1naXQgYS9Eb2MvaG93dG8vYW5ub3RhdGlvbnMucnN0IGIvRG9jL2hvd3Rv
L2Fubm90YXRpb25zLnJzdA0KaW5kZXggYmQ3ODQyMzUwMTZkYzY2Li5mY2M0ZmU4MzhjNzgzYmEg
MTAwNjQ0DQotLS0gYS9Eb2MvaG93dG8vYW5ub3RhdGlvbnMucnN0DQorKysgYi9Eb2MvaG93dG8v
YW5ub3RhdGlvbnMucnN0DQpAQCAtMTUyLDcgKzE1Miw3IEBAIG9uIGFuIGFyYml0cmFyeSBvYmpl
Y3QgYGBvYGA6DQogICBhcyB0aGUgYGBnbG9iYWxzYGAsIGFuZCBgYGRpY3QodmFycyhvKSlgYCBh
cyB0aGUgYGBsb2NhbHNgYCwNCiAgIHdoZW4gY2FsbGluZyA6ZnVuYzpgZXZhbGAuDQogKiBJZiBg
YG9gYCBpcyBhIHdyYXBwZWQgY2FsbGFibGUgdXNpbmcgOmZ1bmM6YGZ1bmN0b29scy51cGRhdGVf
d3JhcHBlcmAsDQotICA6ZnVuYzpgZnVuY3Rvb2xzLndyYXBzYCwgb3IgOmZ1bmM6YGZ1bmN0b29s
cy5wYXJ0aWFsYCwgaXRlcmF0aXZlbHkNCisgIDpkZWNvOmBmdW5jdG9vbHMud3JhcHNgLCBvciA6
ZnVuYzpgZnVuY3Rvb2xzLnBhcnRpYWxgLCBpdGVyYXRpdmVseQ0KICAgdW53cmFwIGl0IGJ5IGFj
Y2Vzc2luZyBlaXRoZXIgYGBvLl9fd3JhcHBlZF9fYGAgb3IgYGBvLmZ1bmNgYCBhcw0KICAgYXBw
cm9wcmlhdGUsIHVudGlsIHlvdSBoYXZlIGZvdW5kIHRoZSByb290IHVud3JhcHBlZCBmdW5jdGlv
bi4NCiAqIElmIGBgb2BgIGlzIGEgY2FsbGFibGUgKGJ1dCBub3QgYSBjbGFzcyksIHVzZQ0KZGlm
ZiAtLWdpdCBhL0RvYy9ob3d0by9kZXNjcmlwdG9yLnJzdCBiL0RvYy9ob3d0by9kZXNjcmlwdG9y
LnJzdA0KaW5kZXggZWM4M2M2ZjkzZTBkNTRkLi43MjMzODk4ODYwYWRhMTQgMTAwNjQ0DQotLS0g
YS9Eb2MvaG93dG8vZGVzY3JpcHRvci5yc3QNCisrKyBiL0RvYy9ob3d0by9kZXNjcmlwdG9yLnJz
dA0KQEAgLTI1LDcgKzI1LDcgQEAgVGhpcyBndWlkZSBoYXMgZm91ciBtYWpvciBzZWN0aW9uczoN
CiA0KSBUaGUgbGFzdCBzZWN0aW9uIGhhcyBwdXJlIFB5dGhvbiBlcXVpdmFsZW50cyBmb3IgYnVp
bHQtaW4gZGVzY3JpcHRvcnMgdGhhdA0KICAgIGFyZSB3cml0dGVuIGluIEMuICBSZWFkIHRoaXMg
aWYgeW91J3JlIGN1cmlvdXMgYWJvdXQgaG93IGZ1bmN0aW9ucyB0dXJuDQogICAgaW50byBib3Vu
ZCBtZXRob2RzIG9yIGFib3V0IHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBjb21tb24gdG9vbHMgbGlr
ZQ0KLSAgIDpmdW5jOmBjbGFzc21ldGhvZGAsIDpmdW5jOmBzdGF0aWNtZXRob2RgLCA6ZnVuYzpg
cHJvcGVydHlgLCBhbmQNCisgICA6ZGVjbzpgY2xhc3NtZXRob2RgLCA6ZGVjbzpgc3RhdGljbWV0
aG9kYCwgOmRlY286YHByb3BlcnR5YCwgYW5kDQogICAgOnRlcm06YF9fc2xvdHNfX2AuDQogDQog
DQpAQCAtMzE0LDggKzMxNCw4IEBAIERlc2NyaXB0b3JzIGludmVydCB0aGF0IHJlbGF0aW9uc2hp
cCBhbmQgYWxsb3cgdGhlIGRhdGEgYmVpbmcgbG9va2VkLXVwIHRvDQogaGF2ZSBhIHNheSBpbiB0
aGUgbWF0dGVyLg0KIA0KIERlc2NyaXB0b3JzIGFyZSB1c2VkIHRocm91Z2hvdXQgdGhlIGxhbmd1
YWdlLiAgSXQgaXMgaG93IGZ1bmN0aW9ucyB0dXJuIGludG8NCi1ib3VuZCBtZXRob2RzLiAgQ29t
bW9uIHRvb2xzIGxpa2UgOmZ1bmM6YGNsYXNzbWV0aG9kYCwgOmZ1bmM6YHN0YXRpY21ldGhvZGAs
DQotOmZ1bmM6YHByb3BlcnR5YCwgYW5kIDpmdW5jOmBmdW5jdG9vbHMuY2FjaGVkX3Byb3BlcnR5
YCBhcmUgYWxsIGltcGxlbWVudGVkIGFzDQorYm91bmQgbWV0aG9kcy4gIENvbW1vbiB0b29scyBs
aWtlIDpkZWNvOmBjbGFzc21ldGhvZGAsIDpkZWNvOmBzdGF0aWNtZXRob2RgLA0KKzpkZWNvOmBw
cm9wZXJ0eWAsIGFuZCA6ZGVjbzpgZnVuY3Rvb2xzLmNhY2hlZF9wcm9wZXJ0eWAgYXJlIGFsbCBp
bXBsZW1lbnRlZCBhcw0KIGRlc2NyaXB0b3JzLg0KIA0KIA0KQEAgLTEzMjMsNyArMTMyMyw3IEBA
IGV4YW1wbGUgY2FsbHMgYXJlIHVuZXhjaXRpbmc6DQogICAgIDMwDQogDQogVXNpbmcgdGhlIG5v
bi1kYXRhIGRlc2NyaXB0b3IgcHJvdG9jb2wsIGEgcHVyZSBQeXRob24gdmVyc2lvbiBvZg0KLTpm
dW5jOmBzdGF0aWNtZXRob2RgIHdvdWxkIGxvb2sgbGlrZSB0aGlzOg0KKzpkZWNvOmBzdGF0aWNt
ZXRob2RgIHdvdWxkIGxvb2sgbGlrZSB0aGlzOg0KIA0KIC4uIHRlc3Rjb2RlOjoNCiANCkBAIC0x
NDYzLDcgKzE0NjMsNyBAQCBOb3cgYSBuZXcgZGljdGlvbmFyeSBvZiB1bmlxdWUga2V5cyBjYW4g
YmUgY29uc3RydWN0ZWQgbGlrZSB0aGlzOg0KICAgICB7J2EnOiBOb25lLCAnYic6IE5vbmUsICdy
JzogTm9uZSwgJ2MnOiBOb25lLCAnZCc6IE5vbmV9DQogDQogVXNpbmcgdGhlIG5vbi1kYXRhIGRl
c2NyaXB0b3IgcHJvdG9jb2wsIGEgcHVyZSBQeXRob24gdmVyc2lvbiBvZg0KLTpmdW5jOmBjbGFz
c21ldGhvZGAgd291bGQgbG9vayBsaWtlIHRoaXM6DQorOmRlY286YGNsYXNzbWV0aG9kYCB3b3Vs
ZCBsb29rIGxpa2UgdGhpczoNCiANCiAuLiB0ZXN0Y29kZTo6DQogDQpAQCAtMTYwMSw3ICsxNjAx
LDcgQEAgbWF0dGVycyB3aGVuIGEgbGFyZ2UgbnVtYmVyIG9mIGluc3RhbmNlcyBhcmUgZ29pbmcg
dG8gYmUgY3JlYXRlZC4NCiA0LiBJbXByb3ZlcyBzcGVlZC4gIFJlYWRpbmcgaW5zdGFuY2UgdmFy
aWFibGVzIGlzIDM1JSBmYXN0ZXIgd2l0aA0KIGBgX19zbG90c19fYGAgKGFzIG1lYXN1cmVkIHdp
dGggUHl0aG9uIDMuMTAgb24gYW4gQXBwbGUgTTEgcHJvY2Vzc29yKS4NCiANCi01LiBCbG9ja3Mg
dG9vbHMgbGlrZSA6ZnVuYzpgZnVuY3Rvb2xzLmNhY2hlZF9wcm9wZXJ0eWAgd2hpY2ggcmVxdWly
ZSBhbg0KKzUuIEJsb2NrcyB0b29scyBsaWtlIDpkZWNvOmBmdW5jdG9vbHMuY2FjaGVkX3Byb3Bl
cnR5YCB3aGljaCByZXF1aXJlIGFuDQogaW5zdGFuY2UgZGljdGlvbmFyeSB0byBmdW5jdGlvbiBj
b3JyZWN0bHk6DQogDQogLi4gdGVzdGNvZGU6Og0KZGlmZiAtLWdpdCBhL0RvYy9ob3d0by9lbnVt
LnJzdCBiL0RvYy9ob3d0by9lbnVtLnJzdA0KaW5kZXggMmZlNTgxNGJiMDRhNzM2Li5hZGI5ZGM5
YTQ4NzllYjUgMTAwNjQ0DQotLS0gYS9Eb2MvaG93dG8vZW51bS5yc3QNCisrKyBiL0RvYy9ob3d0
by9lbnVtLnJzdA0KQEAgLTI1Niw3ICsyNTYsNyBAQCBFbnN1cmluZyB1bmlxdWUgZW51bWVyYXRp
b24gdmFsdWVzDQogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIA0KIEJ5IGRl
ZmF1bHQsIGVudW1lcmF0aW9ucyBhbGxvdyBtdWx0aXBsZSBuYW1lcyBhcyBhbGlhc2VzIGZvciB0
aGUgc2FtZSB2YWx1ZS4NCi1XaGVuIHRoaXMgYmVoYXZpb3IgaXNuJ3QgZGVzaXJlZCwgeW91IGNh
biB1c2UgdGhlIDpmdW5jOmB1bmlxdWVgIGRlY29yYXRvcjo6DQorV2hlbiB0aGlzIGJlaGF2aW9y
IGlzbid0IGRlc2lyZWQsIHlvdSBjYW4gdXNlIHRoZSA6ZGVjbzpgdW5pcXVlYCBkZWNvcmF0b3I6
Og0KIA0KICAgICA+Pj4gZnJvbSBlbnVtIGltcG9ydCBFbnVtLCB1bmlxdWUNCiAgICAgPj4+IEB1
bmlxdWUNCkBAIC01MDksNyArNTA5LDcgQEAgdG8gdXNlIHRoZSBzdGFuZGFyZCA6ZnVuYzpgcmVw
cmAuDQogDQogLi4gbm90ZTo6DQogDQotICAgQWRkaW5nIDpmdW5jOmB+ZGF0YWNsYXNzZXMuZGF0
YWNsYXNzYCBkZWNvcmF0b3IgdG8gOmNsYXNzOmBFbnVtYA0KKyAgIEFkZGluZyA6ZGVjbzpgfmRh
dGFjbGFzc2VzLmRhdGFjbGFzc2AgZGVjb3JhdG9yIHRvIDpjbGFzczpgRW51bWANCiAgICBhbmQg
aXRzIHN1YmNsYXNzZXMgaXMgbm90IHN1cHBvcnRlZC4gSXQgd2lsbCBub3QgcmFpc2UgYW55IGVy
cm9ycywNCiAgICBidXQgaXQgd2lsbCBwcm9kdWNlIHZlcnkgc3RyYW5nZSByZXN1bHRzIGF0IHJ1
bnRpbWUsIHN1Y2ggYXMgbWVtYmVycw0KICAgIGJlaW5nIGVxdWFsIHRvIGVhY2ggb3RoZXI6Og0K
ZGlmZiAtLWdpdCBhL0RvYy9ob3d0by9zb3J0aW5nLnJzdCBiL0RvYy9ob3d0by9zb3J0aW5nLnJz
dA0KaW5kZXggZWQ5Y2UzMDYyMjVmNGRiLi5iNTExYWE0ZTU5ZmUxZTcgMTAwNjQ0DQotLS0gYS9E
b2MvaG93dG8vc29ydGluZy5yc3QNCisrKyBiL0RvYy9ob3d0by9zb3J0aW5nLnJzdA0KQEAgLTM3
Miw3ICszNzIsNyBAQCBPZGRzIGFuZCBFbmRzDQogICA6bWV0aDpgfm9iamVjdC5fX2x0X19gIGlz
IG5vdCBpbXBsZW1lbnRlZCAoc2VlIDpmdW5jOmBvYmplY3QuX19sdF9fYA0KICAgZm9yIGRldGFp
bHMgb24gdGhlIG1lY2hhbmljcykuICBUbyBhdm9pZCBzdXJwcmlzZXMsIDpwZXA6YDhgDQogICBy
ZWNvbW1lbmRzIHRoYXQgYWxsIHNpeCBjb21wYXJpc29uIG1ldGhvZHMgYmUgaW1wbGVtZW50ZWQu
DQotICBUaGUgOmZ1bmM6YH5mdW5jdG9vbHMudG90YWxfb3JkZXJpbmdgIGRlY29yYXRvciBpcyBw
cm92aWRlZCB0byBtYWtlIHRoYXQNCisgIFRoZSA6ZGVjbzpgfmZ1bmN0b29scy50b3RhbF9vcmRl
cmluZ2AgZGVjb3JhdG9yIGlzIHByb3ZpZGVkIHRvIG1ha2UgdGhhdA0KICAgdGFzayBlYXNpZXIu
DQogDQogKiBLZXkgZnVuY3Rpb25zIG5lZWQgbm90IGRlcGVuZCBkaXJlY3RseSBvbiB0aGUgb2Jq
ZWN0cyBiZWluZyBzb3J0ZWQuIEEga2V5DQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvYWJjLnJz
dCBiL0RvYy9saWJyYXJ5L2FiYy5yc3QNCmluZGV4IDgxMTJjZmVlN2QyMDRkYi4uNTkxNzgxNWE1
M2Y3OTA5IDEwMDY0NA0KLS0tIGEvRG9jL2xpYnJhcnkvYWJjLnJzdA0KKysrIGIvRG9jL2xpYnJh
cnkvYWJjLnJzdA0KQEAgLTE2NiwxNyArMTY2LDE3IEBAIFRoZSA6bW9kOmAhYWJjYCBtb2R1bGUg
YWxzbyBwcm92aWRlcyB0aGUgZm9sbG93aW5nIGRlY29yYXRvcjoNCiAgICBvciBpcyBkZXJpdmVk
IGZyb20gaXQuICBBIGNsYXNzIHRoYXQgaGFzIGEgbWV0YWNsYXNzIGRlcml2ZWQgZnJvbQ0KICAg
IDpjbGFzczpgIUFCQ01ldGFgIGNhbm5vdCBiZSBpbnN0YW50aWF0ZWQgdW5sZXNzIGFsbCBvZiBp
dHMgYWJzdHJhY3QgbWV0aG9kcw0KICAgIGFuZCBwcm9wZXJ0aWVzIGFyZSBvdmVycmlkZGVuLiAg
VGhlIGFic3RyYWN0IG1ldGhvZHMgY2FuIGJlIGNhbGxlZCB1c2luZyBhbnkNCi0gICBvZiB0aGUg
bm9ybWFsICdzdXBlcicgY2FsbCBtZWNoYW5pc21zLiAgOmZ1bmM6YCFhYnN0cmFjdG1ldGhvZGAg
bWF5IGJlIHVzZWQNCisgICBvZiB0aGUgbm9ybWFsICdzdXBlcicgY2FsbCBtZWNoYW5pc21zLiAg
OmRlY286YCFhYnN0cmFjdG1ldGhvZGAgbWF5IGJlIHVzZWQNCiAgICB0byBkZWNsYXJlIGFic3Ry
YWN0IG1ldGhvZHMgZm9yIHByb3BlcnRpZXMgYW5kIGRlc2NyaXB0b3JzLg0KIA0KICAgIER5bmFt
aWNhbGx5IGFkZGluZyBhYnN0cmFjdCBtZXRob2RzIHRvIGEgY2xhc3MsIG9yIGF0dGVtcHRpbmcg
dG8gbW9kaWZ5IHRoZQ0KICAgIGFic3RyYWN0aW9uIHN0YXR1cyBvZiBhIG1ldGhvZCBvciBjbGFz
cyBvbmNlIGl0IGlzIGNyZWF0ZWQsIGFyZSBvbmx5DQogICAgc3VwcG9ydGVkIHVzaW5nIHRoZSA6
ZnVuYzpgdXBkYXRlX2Fic3RyYWN0bWV0aG9kc2AgZnVuY3Rpb24uICBUaGUNCi0gICA6ZnVuYzpg
IWFic3RyYWN0bWV0aG9kYCBvbmx5IGFmZmVjdHMgc3ViY2xhc3NlcyBkZXJpdmVkIHVzaW5nIHJl
Z3VsYXINCisgICA6ZGVjbzpgIWFic3RyYWN0bWV0aG9kYCBvbmx5IGFmZmVjdHMgc3ViY2xhc3Nl
cyBkZXJpdmVkIHVzaW5nIHJlZ3VsYXINCiAgICBpbmhlcml0YW5jZTsgInZpcnR1YWwgc3ViY2xh
c3NlcyIgcmVnaXN0ZXJlZCB3aXRoIHRoZSBBQkMncw0KICAgIDptZXRoOmB+QUJDTWV0YS5yZWdp
c3RlcmAgbWV0aG9kIGFyZSBub3QgYWZmZWN0ZWQuDQogDQotICAgV2hlbiA6ZnVuYzpgIWFic3Ry
YWN0bWV0aG9kYCBpcyBhcHBsaWVkIGluIGNvbWJpbmF0aW9uIHdpdGggb3RoZXIgbWV0aG9kDQor
ICAgV2hlbiA6ZGVjbzpgIWFic3RyYWN0bWV0aG9kYCBpcyBhcHBsaWVkIGluIGNvbWJpbmF0aW9u
IHdpdGggb3RoZXIgbWV0aG9kDQogICAgZGVzY3JpcHRvcnMsIGl0IHNob3VsZCBiZSBhcHBsaWVk
IGFzIHRoZSBpbm5lcm1vc3QgZGVjb3JhdG9yLCBhcyBzaG93biBpbg0KICAgIHRoZSBmb2xsb3dp
bmcgdXNhZ2UgZXhhbXBsZXM6Og0KIA0KQEAgLTIxNCw3ICsyMTQsNyBAQCBUaGUgOm1vZDpgIWFi
Y2AgbW9kdWxlIGFsc28gcHJvdmlkZXMgdGhlIGZvbGxvd2luZyBkZWNvcmF0b3I6DQogICAgdGhl
IGRlc2NyaXB0b3IgbXVzdCBpZGVudGlmeSBpdHNlbGYgYXMgYWJzdHJhY3QgdXNpbmcNCiAgICA6
YXR0cjpgIV9faXNhYnN0cmFjdG1ldGhvZF9fYC4gSW4gZ2VuZXJhbCwgdGhpcyBhdHRyaWJ1dGUg
c2hvdWxkIGJlIGBgVHJ1ZWBgDQogICAgaWYgYW55IG9mIHRoZSBtZXRob2RzIHVzZWQgdG8gY29t
cG9zZSB0aGUgZGVzY3JpcHRvciBhcmUgYWJzdHJhY3QuIEZvcg0KLSAgIGV4YW1wbGUsIFB5dGhv
bidzIGJ1aWx0LWluIDpjbGFzczpgcHJvcGVydHlgIGRvZXMgdGhlIGVxdWl2YWxlbnQgb2Y6Og0K
KyAgIGV4YW1wbGUsIFB5dGhvbidzIGJ1aWx0LWluIDpkZWNvOmBwcm9wZXJ0eWAgZG9lcyB0aGUg
ZXF1aXZhbGVudCBvZjo6DQogDQogICAgICAgY2xhc3MgRGVzY3JpcHRvcjoNCiAgICAgICAgICAg
Li4uDQpAQCAtMjM4LDEzICsyMzgsMTMgQEAgVGhlIDptb2Q6YCFhYmNgIG1vZHVsZSBhbHNvIHN1
cHBvcnRzIHRoZSBmb2xsb3dpbmcgbGVnYWN5IGRlY29yYXRvcnM6DQogDQogICAgLi4gdmVyc2lv
bmFkZGVkOjogMy4yDQogICAgLi4gZGVwcmVjYXRlZDo6IDMuMw0KLSAgICAgICBJdCBpcyBub3cg
cG9zc2libGUgdG8gdXNlIDpjbGFzczpgY2xhc3NtZXRob2RgIHdpdGgNCi0gICAgICAgOmZ1bmM6
YGFic3RyYWN0bWV0aG9kYCwgbWFraW5nIHRoaXMgZGVjb3JhdG9yIHJlZHVuZGFudC4NCisgICAg
ICAgSXQgaXMgbm93IHBvc3NpYmxlIHRvIHVzZSA6ZGVjbzpgY2xhc3NtZXRob2RgIHdpdGgNCisg
ICAgICAgOmRlY286YGFic3RyYWN0bWV0aG9kYCwgbWFraW5nIHRoaXMgZGVjb3JhdG9yIHJlZHVu
ZGFudC4NCiANCi0gICBBIHN1YmNsYXNzIG9mIHRoZSBidWlsdC1pbiA6ZnVuYzpgY2xhc3NtZXRo
b2RgLCBpbmRpY2F0aW5nIGFuIGFic3RyYWN0DQotICAgY2xhc3NtZXRob2QuIE90aGVyd2lzZSBp
dCBpcyBzaW1pbGFyIHRvIDpmdW5jOmBhYnN0cmFjdG1ldGhvZGAuDQorICAgQSBzdWJjbGFzcyBv
ZiB0aGUgYnVpbHQtaW4gOmNsYXNzOmBjbGFzc21ldGhvZGAsIGluZGljYXRpbmcgYW4gYWJzdHJh
Y3QNCisgICBjbGFzc21ldGhvZC4gT3RoZXJ3aXNlIGl0IGlzIHNpbWlsYXIgdG8gOmRlY286YGFi
c3RyYWN0bWV0aG9kYC4NCiANCi0gICBUaGlzIHNwZWNpYWwgY2FzZSBpcyBkZXByZWNhdGVkLCBh
cyB0aGUgOmZ1bmM6YGNsYXNzbWV0aG9kYCBkZWNvcmF0b3INCisgICBUaGlzIHNwZWNpYWwgY2Fz
ZSBpcyBkZXByZWNhdGVkLCBhcyB0aGUgOmRlY286YGNsYXNzbWV0aG9kYCBkZWNvcmF0b3INCiAg
ICBpcyBub3cgY29ycmVjdGx5IGlkZW50aWZpZWQgYXMgYWJzdHJhY3Qgd2hlbiBhcHBsaWVkIHRv
IGFuIGFic3RyYWN0DQogICAgbWV0aG9kOjoNCiANCkBAIC0yNTksMTMgKzI1OSwxMyBAQCBUaGUg
Om1vZDpgIWFiY2AgbW9kdWxlIGFsc28gc3VwcG9ydHMgdGhlIGZvbGxvd2luZyBsZWdhY3kgZGVj
b3JhdG9yczoNCiANCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjINCiAgICAuLiBkZXByZWNhdGVk
OjogMy4zDQotICAgICAgIEl0IGlzIG5vdyBwb3NzaWJsZSB0byB1c2UgOmNsYXNzOmBzdGF0aWNt
ZXRob2RgIHdpdGgNCi0gICAgICAgOmZ1bmM6YGFic3RyYWN0bWV0aG9kYCwgbWFraW5nIHRoaXMg
ZGVjb3JhdG9yIHJlZHVuZGFudC4NCisgICAgICAgSXQgaXMgbm93IHBvc3NpYmxlIHRvIHVzZSA6
ZGVjbzpgc3RhdGljbWV0aG9kYCB3aXRoDQorICAgICAgIDpkZWNvOmBhYnN0cmFjdG1ldGhvZGAs
IG1ha2luZyB0aGlzIGRlY29yYXRvciByZWR1bmRhbnQuDQogDQotICAgQSBzdWJjbGFzcyBvZiB0
aGUgYnVpbHQtaW4gOmZ1bmM6YHN0YXRpY21ldGhvZGAsIGluZGljYXRpbmcgYW4gYWJzdHJhY3QN
Ci0gICBzdGF0aWNtZXRob2QuIE90aGVyd2lzZSBpdCBpcyBzaW1pbGFyIHRvIDpmdW5jOmBhYnN0
cmFjdG1ldGhvZGAuDQorICAgQSBzdWJjbGFzcyBvZiB0aGUgYnVpbHQtaW4gOmNsYXNzOmBzdGF0
aWNtZXRob2RgLCBpbmRpY2F0aW5nIGFuIGFic3RyYWN0DQorICAgc3RhdGljbWV0aG9kLiBPdGhl
cndpc2UgaXQgaXMgc2ltaWxhciB0byA6ZGVjbzpgYWJzdHJhY3RtZXRob2RgLg0KIA0KLSAgIFRo
aXMgc3BlY2lhbCBjYXNlIGlzIGRlcHJlY2F0ZWQsIGFzIHRoZSA6ZnVuYzpgc3RhdGljbWV0aG9k
YCBkZWNvcmF0b3INCisgICBUaGlzIHNwZWNpYWwgY2FzZSBpcyBkZXByZWNhdGVkLCBhcyB0aGUg
OmRlY286YHN0YXRpY21ldGhvZGAgZGVjb3JhdG9yDQogICAgaXMgbm93IGNvcnJlY3RseSBpZGVu
dGlmaWVkIGFzIGFic3RyYWN0IHdoZW4gYXBwbGllZCB0byBhbiBhYnN0cmFjdA0KICAgIG1ldGhv
ZDo6DQogDQpAQCAtMjc5LDE0ICsyNzksMTQgQEAgVGhlIDptb2Q6YCFhYmNgIG1vZHVsZSBhbHNv
IHN1cHBvcnRzIHRoZSBmb2xsb3dpbmcgbGVnYWN5IGRlY29yYXRvcnM6DQogLi4gZGVjb3JhdG9y
OjogYWJzdHJhY3Rwcm9wZXJ0eQ0KIA0KICAgIC4uIGRlcHJlY2F0ZWQ6OiAzLjMNCi0gICAgICAg
SXQgaXMgbm93IHBvc3NpYmxlIHRvIHVzZSA6Y2xhc3M6YHByb3BlcnR5YCwgOm1ldGg6YHByb3Bl
cnR5LmdldHRlcmAsDQotICAgICAgIDptZXRoOmBwcm9wZXJ0eS5zZXR0ZXJgIGFuZCA6bWV0aDpg
cHJvcGVydHkuZGVsZXRlcmAgd2l0aA0KLSAgICAgICA6ZnVuYzpgYWJzdHJhY3RtZXRob2RgLCBt
YWtpbmcgdGhpcyBkZWNvcmF0b3IgcmVkdW5kYW50Lg0KKyAgICAgICBJdCBpcyBub3cgcG9zc2li
bGUgdG8gdXNlIDpkZWNvOmBwcm9wZXJ0eWAsIDpkZWNvOmBwcm9wZXJ0eS5nZXR0ZXJgLA0KKyAg
ICAgICA6ZGVjbzpgcHJvcGVydHkuc2V0dGVyYCBhbmQgOmRlY286YHByb3BlcnR5LmRlbGV0ZXJg
IHdpdGgNCisgICAgICAgOmRlY286YGFic3RyYWN0bWV0aG9kYCwgbWFraW5nIHRoaXMgZGVjb3Jh
dG9yIHJlZHVuZGFudC4NCiANCi0gICBBIHN1YmNsYXNzIG9mIHRoZSBidWlsdC1pbiA6ZnVuYzpg
cHJvcGVydHlgLCBpbmRpY2F0aW5nIGFuIGFic3RyYWN0DQorICAgQSBzdWJjbGFzcyBvZiB0aGUg
YnVpbHQtaW4gOmNsYXNzOmBwcm9wZXJ0eWAsIGluZGljYXRpbmcgYW4gYWJzdHJhY3QNCiAgICBw
cm9wZXJ0eS4NCiANCi0gICBUaGlzIHNwZWNpYWwgY2FzZSBpcyBkZXByZWNhdGVkLCBhcyB0aGUg
OmZ1bmM6YHByb3BlcnR5YCBkZWNvcmF0b3INCisgICBUaGlzIHNwZWNpYWwgY2FzZSBpcyBkZXBy
ZWNhdGVkLCBhcyB0aGUgOmRlY286YHByb3BlcnR5YCBkZWNvcmF0b3INCiAgICBpcyBub3cgY29y
cmVjdGx5IGlkZW50aWZpZWQgYXMgYWJzdHJhY3Qgd2hlbiBhcHBsaWVkIHRvIGFuIGFic3RyYWN0
DQogICAgbWV0aG9kOjoNCiANCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9iaXNlY3QucnN0IGIv
RG9jL2xpYnJhcnkvYmlzZWN0LnJzdA0KaW5kZXggZjUzMmFhNDYyNTY1ZTQwLi4zOWFiNzVjMDkw
NGRmOWMgMTAwNjQ0DQotLS0gYS9Eb2MvbGlicmFyeS9iaXNlY3QucnN0DQorKysgYi9Eb2MvbGli
cmFyeS9iaXNlY3QucnN0DQpAQCAtMTI5LDcgKzEyOSw3IEBAIHRob3VnaHRzIGluIG1pbmQ6DQog
ICB0aGV5IGFyZSB1c2VkLiAgQ29uc2VxdWVudGx5LCBpZiB0aGUgc2VhcmNoIGZ1bmN0aW9ucyBh
cmUgdXNlZCBpbiBhIGxvb3AsDQogICB0aGUga2V5IGZ1bmN0aW9uIG1heSBiZSBjYWxsZWQgYWdh
aW4gYW5kIGFnYWluIG9uIHRoZSBzYW1lIGFycmF5IGVsZW1lbnRzLg0KICAgSWYgdGhlIGtleSBm
dW5jdGlvbiBpc24ndCBmYXN0LCBjb25zaWRlciB3cmFwcGluZyBpdCB3aXRoDQotICA6cHk6ZnVu
YzpgZnVuY3Rvb2xzLmNhY2hlYCB0byBhdm9pZCBkdXBsaWNhdGUgY29tcHV0YXRpb25zLiAgQWx0
ZXJuYXRpdmVseSwNCisgIDpweTpkZWNvOmBmdW5jdG9vbHMuY2FjaGVgIHRvIGF2b2lkIGR1cGxp
Y2F0ZSBjb21wdXRhdGlvbnMuICBBbHRlcm5hdGl2ZWx5LA0KICAgY29uc2lkZXIgc2VhcmNoaW5n
IGFuIGFycmF5IG9mIHByZWNvbXB1dGVkIGtleXMgdG8gbG9jYXRlIHRoZSBpbnNlcnRpb24NCiAg
IHBvaW50IChhcyBzaG93biBpbiB0aGUgZXhhbXBsZXMgc2VjdGlvbiBiZWxvdykuDQogDQpkaWZm
IC0tZ2l0IGEvRG9jL2xpYnJhcnkvY29sbGVjdGlvbnMucnN0IGIvRG9jL2xpYnJhcnkvY29sbGVj
dGlvbnMucnN0DQppbmRleCAwYzcyN2I3MWNmNGQ0YjcuLmQwOWE2YzkyYmJkMzdkYyAxMDA2NDQN
Ci0tLSBhL0RvYy9saWJyYXJ5L2NvbGxlY3Rpb25zLnJzdA0KKysrIGIvRG9jL2xpYnJhcnkvY29s
bGVjdGlvbnMucnN0DQpAQCAtMTIyOCw3ICsxMjI4LDcgQEAgb3JpZ2luYWwgaW5zZXJ0aW9uIHBv
c2l0aW9uIGlzIGNoYW5nZWQgYW5kIG1vdmVkIHRvIHRoZSBlbmQ6Og0KICAgICAgICAgICAgIHNl
bGYubW92ZV90b19lbmQoa2V5KQ0KIA0KIEFuIDpjbGFzczpgT3JkZXJlZERpY3RgIHdvdWxkIGFs
c28gYmUgdXNlZnVsIGZvciBpbXBsZW1lbnRpbmcNCi12YXJpYW50cyBvZiA6ZnVuYzpgZnVuY3Rv
b2xzLmxydV9jYWNoZWA6DQordmFyaWFudHMgb2YgOmRlY286YGZ1bmN0b29scy5scnVfY2FjaGVg
Og0KIA0KIC4uIHRlc3Rjb2RlOjoNCiANCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9jb250ZXh0
bGliLnJzdCBiL0RvYy9saWJyYXJ5L2NvbnRleHRsaWIucnN0DQppbmRleCAwMmJlMDBmNTc1ZTcy
NWIuLjY2NmY4NTk5NzQ0ODg4MSAxMDA2NDQNCi0tLSBhL0RvYy9saWJyYXJ5L2NvbnRleHRsaWIu
cnN0DQorKysgYi9Eb2MvbGlicmFyeS9jb250ZXh0bGliLnJzdA0KQEAgLTg4LDExICs4OCwxMSBA
QCBGdW5jdGlvbnMgYW5kIGNsYXNzZXMgcHJvdmlkZWQ6DQogICAgdGhlIGV4Y2VwdGlvbiBoYXMg
YmVlbiBoYW5kbGVkLCBhbmQgZXhlY3V0aW9uIHdpbGwgcmVzdW1lIHdpdGggdGhlIHN0YXRlbWVu
dA0KICAgIGltbWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUgOmtleXdvcmQ6YCF3aXRoYCBzdGF0ZW1l
bnQuDQogDQotICAgOmZ1bmM6YGNvbnRleHRtYW5hZ2VyYCB1c2VzIDpjbGFzczpgQ29udGV4dERl
Y29yYXRvcmAgc28gdGhlIGNvbnRleHQgbWFuYWdlcnMNCisgICA6ZGVjbzpgY29udGV4dG1hbmFn
ZXJgIHVzZXMgOmNsYXNzOmBDb250ZXh0RGVjb3JhdG9yYCBzbyB0aGUgY29udGV4dCBtYW5hZ2Vy
cw0KICAgIGl0IGNyZWF0ZXMgY2FuIGJlIHVzZWQgYXMgZGVjb3JhdG9ycyBhcyB3ZWxsIGFzIGlu
IDprZXl3b3JkOmB3aXRoYCBzdGF0ZW1lbnRzLg0KICAgIFdoZW4gdXNlZCBhcyBhIGRlY29yYXRv
ciwgYSBuZXcgZ2VuZXJhdG9yIGluc3RhbmNlIGlzIGltcGxpY2l0bHkgY3JlYXRlZCBvbg0KICAg
IGVhY2ggZnVuY3Rpb24gY2FsbCAodGhpcyBhbGxvd3MgdGhlIG90aGVyd2lzZSAib25lLXNob3Qi
IGNvbnRleHQgbWFuYWdlcnMNCi0gICBjcmVhdGVkIGJ5IDpmdW5jOmBjb250ZXh0bWFuYWdlcmAg
dG8gbWVldCB0aGUgcmVxdWlyZW1lbnQgdGhhdCBjb250ZXh0DQorICAgY3JlYXRlZCBieSA6ZGVj
bzpgY29udGV4dG1hbmFnZXJgIHRvIG1lZXQgdGhlIHJlcXVpcmVtZW50IHRoYXQgY29udGV4dA0K
ICAgIG1hbmFnZXJzIHN1cHBvcnQgbXVsdGlwbGUgaW52b2NhdGlvbnMgaW4gb3JkZXIgdG8gYmUg
dXNlZCBhcyBkZWNvcmF0b3JzKS4NCiANCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMg0KQEAg
LTEwMSw3ICsxMDEsNyBAQCBGdW5jdGlvbnMgYW5kIGNsYXNzZXMgcHJvdmlkZWQ6DQogDQogLi4g
ZGVjb3JhdG9yOjogYXN5bmNjb250ZXh0bWFuYWdlcg0KIA0KLSAgIFNpbWlsYXIgdG8gOmZ1bmM6
YH5jb250ZXh0bGliLmNvbnRleHRtYW5hZ2VyYCwgYnV0IGNyZWF0ZXMgYW4NCisgICBTaW1pbGFy
IHRvIDpkZWNvOmB+Y29udGV4dGxpYi5jb250ZXh0bWFuYWdlcmAsIGJ1dCBjcmVhdGVzIGFuDQog
ICAgOnJlZjpgYXN5bmNocm9ub3VzIGNvbnRleHQgbWFuYWdlciA8YXN5bmMtY29udGV4dC1tYW5h
Z2Vycz5gLg0KIA0KICAgIFRoaXMgZnVuY3Rpb24gaXMgYSA6dGVybTpgZGVjb3JhdG9yYCB0aGF0
IGNhbiBiZSB1c2VkIHRvIGRlZmluZSBhIGZhY3RvcnkNCkBAIC0xMjgsNyArMTI4LDcgQEAgRnVu
Y3Rpb25zIGFuZCBjbGFzc2VzIHByb3ZpZGVkOg0KIA0KICAgIC4uIHZlcnNpb25hZGRlZDo6IDMu
Nw0KIA0KLSAgIENvbnRleHQgbWFuYWdlcnMgZGVmaW5lZCB3aXRoIDpmdW5jOmBhc3luY2NvbnRl
eHRtYW5hZ2VyYCBjYW4gYmUgdXNlZA0KKyAgIENvbnRleHQgbWFuYWdlcnMgZGVmaW5lZCB3aXRo
IDpkZWNvOmBhc3luY2NvbnRleHRtYW5hZ2VyYCBjYW4gYmUgdXNlZA0KICAgIGVpdGhlciBhcyBk
ZWNvcmF0b3JzIG9yIHdpdGggOmtleXdvcmQ6YGFzeW5jIHdpdGhgIHN0YXRlbWVudHM6Og0KIA0K
ICAgICAgaW1wb3J0IHRpbWUNCkBAIC0xNDgsMTEgKzE0OCwxMSBAQCBGdW5jdGlvbnMgYW5kIGNs
YXNzZXMgcHJvdmlkZWQ6DQogDQogICAgV2hlbiB1c2VkIGFzIGEgZGVjb3JhdG9yLCBhIG5ldyBn
ZW5lcmF0b3IgaW5zdGFuY2UgaXMgaW1wbGljaXRseSBjcmVhdGVkIG9uDQogICAgZWFjaCBmdW5j
dGlvbiBjYWxsLiBUaGlzIGFsbG93cyB0aGUgb3RoZXJ3aXNlICJvbmUtc2hvdCIgY29udGV4dCBt
YW5hZ2Vycw0KLSAgIGNyZWF0ZWQgYnkgOmZ1bmM6YGFzeW5jY29udGV4dG1hbmFnZXJgIHRvIG1l
ZXQgdGhlIHJlcXVpcmVtZW50IHRoYXQgY29udGV4dA0KKyAgIGNyZWF0ZWQgYnkgOmRlY286YGFz
eW5jY29udGV4dG1hbmFnZXJgIHRvIG1lZXQgdGhlIHJlcXVpcmVtZW50IHRoYXQgY29udGV4dA0K
ICAgIG1hbmFnZXJzIHN1cHBvcnQgbXVsdGlwbGUgaW52b2NhdGlvbnMgaW4gb3JkZXIgdG8gYmUg
dXNlZCBhcyBkZWNvcmF0b3JzLg0KIA0KICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4xMA0KLSAg
ICAgIEFzeW5jIGNvbnRleHQgbWFuYWdlcnMgY3JlYXRlZCB3aXRoIDpmdW5jOmBhc3luY2NvbnRl
eHRtYW5hZ2VyYCBjYW4NCisgICAgICBBc3luYyBjb250ZXh0IG1hbmFnZXJzIGNyZWF0ZWQgd2l0
aCA6ZGVjbzpgYXN5bmNjb250ZXh0bWFuYWdlcmAgY2FuDQogICAgICAgYmUgdXNlZCBhcyBkZWNv
cmF0b3JzLg0KIA0KIA0KQEAgLTQwMCw3ICs0MDAsNyBAQCBGdW5jdGlvbnMgYW5kIGNsYXNzZXMg
cHJvdmlkZWQ6DQogICAgYGBfX2V4aXRfX2BgIHJldGFpbnMgaXRzIG9wdGlvbmFsDQogICAgZXhj
ZXB0aW9uIGhhbmRsaW5nIGV2ZW4gd2hlbiB1c2VkIGFzIGEgZGVjb3JhdG9yLg0KIA0KLSAgIGBg
Q29udGV4dERlY29yYXRvcmBgIGlzIHVzZWQgYnkgOmZ1bmM6YGNvbnRleHRtYW5hZ2VyYCwgc28g
eW91IGdldCB0aGlzDQorICAgYGBDb250ZXh0RGVjb3JhdG9yYGAgaXMgdXNlZCBieSA6ZGVjbzpg
Y29udGV4dG1hbmFnZXJgLCBzbyB5b3UgZ2V0IHRoaXMNCiAgICBmdW5jdGlvbmFsaXR5IGF1dG9t
YXRpY2FsbHkuDQogDQogICAgRXhhbXBsZSBvZiBgYENvbnRleHREZWNvcmF0b3JgYDo6DQpAQCAt
NzAyLDcgKzcwMiw3IEBAIEZ1bmN0aW9ucyBhbmQgY2xhc3NlcyBwcm92aWRlZDoNCiANCiAgICAg
ICBTaW1pbGFyIHRvIDptZXRoOmBFeGl0U3RhY2suY2xvc2VgIGJ1dCBwcm9wZXJseSBoYW5kbGVz
IGF3YWl0YWJsZXMuDQogDQotICAgQ29udGludWluZyB0aGUgZXhhbXBsZSBmb3IgOmZ1bmM6YGFz
eW5jY29udGV4dG1hbmFnZXJgOjoNCisgICBDb250aW51aW5nIHRoZSBleGFtcGxlIGZvciA6ZGVj
bzpgYXN5bmNjb250ZXh0bWFuYWdlcmA6Og0KIA0KICAgICAgIGFzeW5jIHdpdGggQXN5bmNFeGl0
U3RhY2soKSBhcyBzdGFjazoNCiAgICAgICAgICAgY29ubmVjdGlvbnMgPSBbYXdhaXQgc3RhY2su
ZW50ZXJfYXN5bmNfY29udGV4dChnZXRfY29ubmVjdGlvbigpKQ0KQEAgLTk2MCw3ICs5NjAsNyBA
QCBGaWxlcyBhcmUgYW4gZXhhbXBsZSBvZiBlZmZlY3RpdmVseSBzaW5nbGUgdXNlIGNvbnRleHQg
bWFuYWdlcnMsIHNpbmNlDQogdGhlIGZpcnN0IDprZXl3b3JkOmB3aXRoYCBzdGF0ZW1lbnQgd2ls
bCBjbG9zZSB0aGUgZmlsZSwgcHJldmVudGluZyBhbnkNCiBmdXJ0aGVyIElPIG9wZXJhdGlvbnMg
dXNpbmcgdGhhdCBmaWxlIG9iamVjdC4NCiANCi1Db250ZXh0IG1hbmFnZXJzIGNyZWF0ZWQgdXNp
bmcgOmZ1bmM6YGNvbnRleHRtYW5hZ2VyYCBhcmUgYWxzbyBzaW5nbGUgdXNlDQorQ29udGV4dCBt
YW5hZ2VycyBjcmVhdGVkIHVzaW5nIDpkZWNvOmBjb250ZXh0bWFuYWdlcmAgYXJlIGFsc28gc2lu
Z2xlIHVzZQ0KIGNvbnRleHQgbWFuYWdlcnMsIGFuZCB3aWxsIGNvbXBsYWluIGFib3V0IHRoZSB1
bmRlcmx5aW5nIGdlbmVyYXRvciBmYWlsaW5nDQogdG8geWllbGQgaWYgYW4gYXR0ZW1wdCBpcyBt
YWRlIHRvIHVzZSB0aGVtIGEgc2Vjb25kIHRpbWU6Og0KIA0KZGlmZiAtLWdpdCBhL0RvYy9saWJy
YXJ5L2N0eXBlcy5yc3QgYi9Eb2MvbGlicmFyeS9jdHlwZXMucnN0DQppbmRleCA0NmI4ZGQ4ZWYx
ODgxNDkuLmRhMWFhYTg5ZmVmN2M3NCAxMDA2NDQNCi0tLSBhL0RvYy9saWJyYXJ5L2N0eXBlcy5y
c3QNCisrKyBiL0RvYy9saWJyYXJ5L2N0eXBlcy5yc3QNCkBAIC01NTEsNyArNTUxLDcgQEAgb2Jq
ZWN0IHdpdGggYW4gOmF0dHI6YCFfYXNfcGFyYW1ldGVyX2AgYXR0cmlidXRlOjoNCiAgICA+Pj4N
CiANCiBJZiB5b3UgZG9uJ3Qgd2FudCB0byBzdG9yZSB0aGUgaW5zdGFuY2UncyBkYXRhIGluIHRo
ZSA6YXR0cjpgIV9hc19wYXJhbWV0ZXJfYA0KLWluc3RhbmNlIHZhcmlhYmxlLCB5b3UgY291bGQg
ZGVmaW5lIGEgOmNsYXNzOmBwcm9wZXJ0eWAgd2hpY2ggbWFrZXMgdGhlDQoraW5zdGFuY2UgdmFy
aWFibGUsIHlvdSBjb3VsZCBkZWZpbmUgYSA6ZGVjbzpgcHJvcGVydHlgIHdoaWNoIG1ha2VzIHRo
ZQ0KIGF0dHJpYnV0ZSBhdmFpbGFibGUgb24gcmVxdWVzdC4NCiANCiANCmRpZmYgLS1naXQgYS9E
b2MvbGlicmFyeS9lbnVtLnJzdCBiL0RvYy9saWJyYXJ5L2VudW0ucnN0DQppbmRleCBkMmViYmU0
NjhlODJkYzcuLmY3Yzg5ZGJkMzAxN2NjOCAxMDA2NDQNCi0tLSBhL0RvYy9saWJyYXJ5L2VudW0u
cnN0DQorKysgYi9Eb2MvbGlicmFyeS9lbnVtLnJzdA0KQEAgLTExNSwzMCArMTE1LDMwIEBAIE1v
ZHVsZSBjb250ZW50cw0KICAgICAgIDpjbGFzczpgU3RyRW51bWAgZGVmYXVsdHMgdG8gdGhlIGxv
d2VyLWNhc2VkIHZlcnNpb24gb2YgdGhlIG1lbWJlciBuYW1lLA0KICAgICAgIHdoaWxlIG90aGVy
IEVudW1zIGRlZmF1bHQgdG8gMSBhbmQgaW5jcmVhc2UgZnJvbSB0aGVyZS4NCiANCi0gICA6ZnVu
YzpgfmVudW0ucHJvcGVydHlgDQorICAgOmRlY286YH5lbnVtLnByb3BlcnR5YA0KIA0KICAgICAg
IEFsbG93cyA6Y2xhc3M6YEVudW1gIG1lbWJlcnMgdG8gaGF2ZSBhdHRyaWJ1dGVzIHdpdGhvdXQg
Y29uZmxpY3Rpbmcgd2l0aA0KICAgICAgIG1lbWJlciBuYW1lcy4gIFRoZSBgYHZhbHVlYGAgYW5k
IGBgbmFtZWBgIGF0dHJpYnV0ZXMgYXJlIGltcGxlbWVudGVkIHRoaXMNCiAgICAgICB3YXkuDQog
DQotICAgOmZ1bmM6YHVuaXF1ZWANCisgICA6ZGVjbzpgdW5pcXVlYA0KIA0KICAgICAgIEVudW0g
Y2xhc3MgZGVjb3JhdG9yIHRoYXQgZW5zdXJlcyBvbmx5IG9uZSBuYW1lIGlzIGJvdW5kIHRvIGFu
eSBvbmUgdmFsdWUuDQogDQotICAgOmZ1bmM6YHZlcmlmeWANCisgICA6ZGVjbzpgdmVyaWZ5YA0K
IA0KICAgICAgIEVudW0gY2xhc3MgZGVjb3JhdG9yIHRoYXQgY2hlY2tzIHVzZXItc2VsZWN0YWJs
ZSBjb25zdHJhaW50cyBvbiBhbg0KICAgICAgIGVudW1lcmF0aW9uLg0KIA0KLSAgIDpmdW5jOmBt
ZW1iZXJgDQorICAgOmRlY286YG1lbWJlcmANCiANCiAgICAgICBNYWtlIGBgb2JqYGAgYSBtZW1i
ZXIuICBDYW4gYmUgdXNlZCBhcyBhIGRlY29yYXRvci4NCiANCi0gICA6ZnVuYzpgbm9ubWVtYmVy
YA0KKyAgIDpkZWNvOmBub25tZW1iZXJgDQogDQogICAgICAgRG8gbm90IG1ha2UgYGBvYmpgYCBh
IG1lbWJlci4gIENhbiBiZSB1c2VkIGFzIGEgZGVjb3JhdG9yLg0KIA0KLSAgIDpmdW5jOmBnbG9i
YWxfZW51bWANCisgICA6ZGVjbzpgZ2xvYmFsX2VudW1gDQogDQogICAgICAgTW9kaWZ5IHRoZSA6
Y2xhc3M6YHN0cigpIDxzdHI+YCBhbmQgOmZ1bmM6YHJlcHJgIG9mIGFuIGVudW0NCiAgICAgICB0
byBzaG93IGl0cyBtZW1iZXJzIGFzIGJlbG9uZ2luZyB0byB0aGUgbW9kdWxlIGluc3RlYWQgb2Yg
aXRzIGNsYXNzLA0KQEAgLTEwMDYsNyArMTAwNiw3IEBAIFV0aWxpdGllcyBhbmQgZGVjb3JhdG9y
cw0KIA0KIC4uIGRlY29yYXRvcjo6IHByb3BlcnR5DQogDQotICAgQSBkZWNvcmF0b3Igc2ltaWxh
ciB0byB0aGUgYnVpbHQtaW4gKnByb3BlcnR5KiwgYnV0IHNwZWNpZmljYWxseSBmb3INCisgICBB
IGRlY29yYXRvciBzaW1pbGFyIHRvIHRoZSBidWlsdC1pbiA6ZGVjbzpgcHJvcGVydHlgLCBidXQg
c3BlY2lmaWNhbGx5IGZvcg0KICAgIGVudW1lcmF0aW9ucy4gIEl0IGFsbG93cyBtZW1iZXIgYXR0
cmlidXRlcyB0byBoYXZlIHRoZSBzYW1lIG5hbWVzIGFzIG1lbWJlcnMNCiAgICB0aGVtc2VsdmVz
Lg0KIA0KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2ZubWF0Y2gucnN0IGIvRG9jL2xpYnJhcnkv
Zm5tYXRjaC5yc3QNCmluZGV4IGEyMTM2NzllNGUyZGQ3Ni4uZmM5OWI3ZmQxZTc1MjNhIDEwMDY0
NA0KLS0tIGEvRG9jL2xpYnJhcnkvZm5tYXRjaC5yc3QNCisrKyBiL0RvYy9saWJyYXJ5L2ZubWF0
Y2gucnN0DQpAQCAtNTEsNyArNTEsNyBAQCBVbmxlc3Mgc3RhdGVkIG90aGVyd2lzZSwgImZpbGVu
YW1lIHN0cmluZyIgYW5kICJwYXR0ZXJuIHN0cmluZyIgZWl0aGVyIHJlZmVyIHRvDQogZnVuY3Rp
b25zIGRvY3VtZW50ZWQgYmVsb3cgZG8gbm90IGFsbG93IHRvIG1peCBhIDpjbGFzczpgIWJ5dGVz
YCBwYXR0ZXJuIHdpdGgNCiBhIDpjbGFzczpgIXN0cmAgZmlsZW5hbWUsIGFuZCB2aWNlLXZlcnNh
Lg0KIA0KLUZpbmFsbHksIG5vdGUgdGhhdCA6ZnVuYzpgZnVuY3Rvb2xzLmxydV9jYWNoZWAgd2l0
aCBhICptYXhzaXplKiBvZiAzMjc2OA0KK0ZpbmFsbHksIG5vdGUgdGhhdCA6ZGVjbzpgZnVuY3Rv
b2xzLmxydV9jYWNoZWAgd2l0aCBhICptYXhzaXplKiBvZiAzMjc2OA0KIGlzIHVzZWQgdG8gY2Fj
aGUgdGhlICh0eXBlZCkgY29tcGlsZWQgcmVnZXggcGF0dGVybnMgaW4gdGhlIGZvbGxvd2luZw0K
IGZ1bmN0aW9uczogOmZ1bmM6YGZubWF0Y2hgLCA6ZnVuYzpgZm5tYXRjaGNhc2VgLCA6ZnVuYzpg
LmZpbHRlcmAsIDpmdW5jOmAuZmlsdGVyZmFsc2VgLg0KIA0KZGlmZiAtLWdpdCBhL0RvYy9saWJy
YXJ5L2Z1bmN0aW9ucy5yc3QgYi9Eb2MvbGlicmFyeS9mdW5jdGlvbnMucnN0DQppbmRleCBkOTAx
ZTMwN2M5YTZhNmIuLmY0NWFiMzk3ZTkzNjkzOCAxMDA2NDQNCi0tLSBhL0RvYy9saWJyYXJ5L2Z1
bmN0aW9ucy5yc3QNCisrKyBiL0RvYy9saWJyYXJ5L2Z1bmN0aW9ucy5yc3QNCkBAIC0xNjg0LDcg
KzE2ODQsNyBAQCBhcmUgYWx3YXlzIGF2YWlsYWJsZS4gIFRoZXkgYXJlIGxpc3RlZCBoZXJlIGlu
IGFscGhhYmV0aWNhbCBvcmRlci4NCiANCiAgICBJZiBnaXZlbiwgKmRvYyogd2lsbCBiZSB0aGUg
ZG9jc3RyaW5nIG9mIHRoZSBwcm9wZXJ0eSBhdHRyaWJ1dGUuIE90aGVyd2lzZSwgdGhlDQogICAg
cHJvcGVydHkgd2lsbCBjb3B5ICpmZ2V0KidzIGRvY3N0cmluZyAoaWYgaXQgZXhpc3RzKS4gIFRo
aXMgbWFrZXMgaXQgcG9zc2libGUgdG8NCi0gICBjcmVhdGUgcmVhZC1vbmx5IHByb3BlcnRpZXMg
ZWFzaWx5IHVzaW5nIDpmdW5jOmBwcm9wZXJ0eWAgYXMgYSA6dGVybTpgZGVjb3JhdG9yYDo6DQor
ICAgY3JlYXRlIHJlYWQtb25seSBwcm9wZXJ0aWVzIGVhc2lseSB1c2luZyA6ZGVjbzpgcHJvcGVy
dHlgIGFzIGEgOnRlcm06YGRlY29yYXRvcmA6Og0KIA0KICAgICAgIGNsYXNzIFBhcnJvdDoNCiAg
ICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYpOg0KQEAgLTE5ODgsNyArMTk4OCw3IEBAIGFyZSBh
bHdheXMgYXZhaWxhYmxlLiAgVGhleSBhcmUgbGlzdGVkIGhlcmUgaW4gYWxwaGFiZXRpY2FsIG9y
ZGVyLg0KICAgIGJlIHVzZWQgaW4gdGhlIGNsYXNzIGRlZmluaXRpb24gKHN1Y2ggYXMgYGBmKClg
YCkuDQogDQogICAgU3RhdGljIG1ldGhvZHMgaW4gUHl0aG9uIGFyZSBzaW1pbGFyIHRvIHRob3Nl
IGZvdW5kIGluIEphdmEgb3IgQysrLiBBbHNvLCBzZWUNCi0gICA6ZnVuYzpgY2xhc3NtZXRob2Rg
IGZvciBhIHZhcmlhbnQgdGhhdCBpcyB1c2VmdWwgZm9yIGNyZWF0aW5nIGFsdGVybmF0ZSBjbGFz
cw0KKyAgIDpkZWNvOmBjbGFzc21ldGhvZGAgZm9yIGEgdmFyaWFudCB0aGF0IGlzIHVzZWZ1bCBm
b3IgY3JlYXRpbmcgYWx0ZXJuYXRlIGNsYXNzDQogICAgY29uc3RydWN0b3JzLg0KIA0KICAgIExp
a2UgYWxsIGRlY29yYXRvcnMsIGl0IGlzIGFsc28gcG9zc2libGUgdG8gY2FsbCBgYHN0YXRpY21l
dGhvZGBgIGFzDQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZnVuY3Rvb2xzLnJzdCBiL0RvYy9s
aWJyYXJ5L2Z1bmN0b29scy5yc3QNCmluZGV4IDdkYTU5Y2JhNTE3MGIzNS4uMmI0Njk3OGYwNTgx
MDJiIDEwMDY0NA0KLS0tIGEvRG9jL2xpYnJhcnkvZnVuY3Rvb2xzLnJzdA0KKysrIGIvRG9jL2xp
YnJhcnkvZnVuY3Rvb2xzLnJzdA0KQEAgLTI3LDcgKzI3LDcgQEAgVGhlIDptb2Q6YCFmdW5jdG9v
bHNgIG1vZHVsZSBkZWZpbmVzIHRoZSBmb2xsb3dpbmcgZnVuY3Rpb25zOg0KICAgIFJldHVybnMg
dGhlIHNhbWUgYXMgYGBscnVfY2FjaGUobWF4c2l6ZT1Ob25lKWBgLCBjcmVhdGluZyBhIHRoaW4N
CiAgICB3cmFwcGVyIGFyb3VuZCBhIGRpY3Rpb25hcnkgbG9va3VwIGZvciB0aGUgZnVuY3Rpb24g
YXJndW1lbnRzLiAgQmVjYXVzZSBpdA0KICAgIG5ldmVyIG5lZWRzIHRvIGV2aWN0IG9sZCB2YWx1
ZXMsIHRoaXMgaXMgc21hbGxlciBhbmQgZmFzdGVyIHRoYW4NCi0gICA6ZnVuYzpgbHJ1X2NhY2hl
YCB3aXRoIGEgc2l6ZSBsaW1pdC4NCisgICA6ZGVjbzpgbHJ1X2NhY2hlYCB3aXRoIGEgc2l6ZSBs
aW1pdC4NCiANCiAgICBGb3IgZXhhbXBsZTo6DQogDQpAQCAtNjEsNyArNjEsNyBAQCBUaGUgOm1v
ZDpgIWZ1bmN0b29sc2AgbW9kdWxlIGRlZmluZXMgdGhlIGZvbGxvd2luZyBmdW5jdGlvbnM6DQog
DQogICAgVHJhbnNmb3JtIGEgbWV0aG9kIG9mIGEgY2xhc3MgaW50byBhIHByb3BlcnR5IHdob3Nl
IHZhbHVlIGlzIGNvbXB1dGVkIG9uY2UNCiAgICBhbmQgdGhlbiBjYWNoZWQgYXMgYSBub3JtYWwg
YXR0cmlidXRlIGZvciB0aGUgbGlmZSBvZiB0aGUgaW5zdGFuY2UuIFNpbWlsYXINCi0gICB0byA6
ZnVuYzpgcHJvcGVydHlgLCB3aXRoIHRoZSBhZGRpdGlvbiBvZiBjYWNoaW5nLiBVc2VmdWwgZm9y
IGV4cGVuc2l2ZQ0KKyAgIHRvIDpkZWNvOmBwcm9wZXJ0eWAsIHdpdGggdGhlIGFkZGl0aW9uIG9m
IGNhY2hpbmcuIFVzZWZ1bCBmb3IgZXhwZW5zaXZlDQogICAgY29tcHV0ZWQgcHJvcGVydGllcyBv
ZiBpbnN0YW5jZXMgdGhhdCBhcmUgb3RoZXJ3aXNlIGVmZmVjdGl2ZWx5IGltbXV0YWJsZS4NCiAN
CiAgICBFeGFtcGxlOjoNCkBAIC03NSw4ICs3NSw4IEBAIFRoZSA6bW9kOmAhZnVuY3Rvb2xzYCBt
b2R1bGUgZGVmaW5lcyB0aGUgZm9sbG93aW5nIGZ1bmN0aW9uczoNCiAgICAgICAgICAgIGRlZiBz
dGRldihzZWxmKToNCiAgICAgICAgICAgICAgICByZXR1cm4gc3RhdGlzdGljcy5zdGRldihzZWxm
Ll9kYXRhKQ0KIA0KLSAgIFRoZSBtZWNoYW5pY3Mgb2YgOmZ1bmM6YGNhY2hlZF9wcm9wZXJ0eWAg
YXJlIHNvbWV3aGF0IGRpZmZlcmVudCBmcm9tDQotICAgOmZ1bmM6YHByb3BlcnR5YC4gIEEgcmVn
dWxhciBwcm9wZXJ0eSBibG9ja3MgYXR0cmlidXRlIHdyaXRlcyB1bmxlc3MgYQ0KKyAgIFRoZSBt
ZWNoYW5pY3Mgb2YgOmRlY286YGNhY2hlZF9wcm9wZXJ0eWAgYXJlIHNvbWV3aGF0IGRpZmZlcmVu
dCBmcm9tDQorICAgOmRlY286YHByb3BlcnR5YC4gIEEgcmVndWxhciBwcm9wZXJ0eSBibG9ja3Mg
YXR0cmlidXRlIHdyaXRlcyB1bmxlc3MgYQ0KICAgIHNldHRlciBpcyBkZWZpbmVkLiBJbiBjb250
cmFzdCwgYSAqY2FjaGVkX3Byb3BlcnR5KiBhbGxvd3Mgd3JpdGVzLg0KIA0KICAgIFRoZSAqY2Fj
aGVkX3Byb3BlcnR5KiBkZWNvcmF0b3Igb25seSBydW5zIG9uIGxvb2t1cHMgYW5kIG9ubHkgd2hl
biBhbg0KQEAgLTEwOCwxNCArMTA4LDE0IEBAIFRoZSA6bW9kOmAhZnVuY3Rvb2xzYCBtb2R1bGUg
ZGVmaW5lcyB0aGUgZm9sbG93aW5nIGZ1bmN0aW9uczoNCiAgICAoYXMgc3VjaCBjbGFzc2VzIGRv
bid0IHByb3ZpZGUgYSBgYF9fZGljdF9fYGAgYXR0cmlidXRlIGF0IGFsbCkuDQogDQogICAgSWYg
YSBtdXRhYmxlIG1hcHBpbmcgaXMgbm90IGF2YWlsYWJsZSBvciBpZiBzcGFjZS1lZmZpY2llbnQg
a2V5IHNoYXJpbmcgaXMNCi0gICBkZXNpcmVkLCBhbiBlZmZlY3Qgc2ltaWxhciB0byA6ZnVuYzpg
Y2FjaGVkX3Byb3BlcnR5YCBjYW4gYWxzbyBiZSBhY2hpZXZlZCBieQ0KLSAgIHN0YWNraW5nIDpm
dW5jOmBwcm9wZXJ0eWAgb24gdG9wIG9mIDpmdW5jOmBscnVfY2FjaGVgLiBTZWUNCi0gICA6cmVm
OmBmYXEtY2FjaGUtbWV0aG9kLWNhbGxzYCBmb3IgbW9yZSBkZXRhaWxzIG9uIGhvdyB0aGlzIGRp
ZmZlcnMgZnJvbSA6ZnVuYzpgY2FjaGVkX3Byb3BlcnR5YC4NCisgICBkZXNpcmVkLCBhbiBlZmZl
Y3Qgc2ltaWxhciB0byA6ZGVjbzpgY2FjaGVkX3Byb3BlcnR5YCBjYW4gYWxzbyBiZSBhY2hpZXZl
ZCBieQ0KKyAgIHN0YWNraW5nIDpkZWNvOmBwcm9wZXJ0eWAgb24gdG9wIG9mIDpkZWNvOmBscnVf
Y2FjaGVgLiBTZWUNCisgICA6cmVmOmBmYXEtY2FjaGUtbWV0aG9kLWNhbGxzYCBmb3IgbW9yZSBk
ZXRhaWxzIG9uIGhvdyB0aGlzIGRpZmZlcnMgZnJvbSA6ZGVjbzpgY2FjaGVkX3Byb3BlcnR5YC4N
CiANCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjgNCiANCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6
IDMuMTINCi0gICAgICBQcmlvciB0byBQeXRob24gMy4xMiwgYGBjYWNoZWRfcHJvcGVydHlgYCBp
bmNsdWRlZCBhbiB1bmRvY3VtZW50ZWQgbG9jayB0bw0KKyAgICAgIFByaW9yIHRvIFB5dGhvbiAz
LjEyLCA6ZGVjbzpgIWNhY2hlZF9wcm9wZXJ0eWAgaW5jbHVkZWQgYW4gdW5kb2N1bWVudGVkIGxv
Y2sgdG8NCiAgICAgICBlbnN1cmUgdGhhdCBpbiBtdWx0aS10aHJlYWRlZCB1c2FnZSB0aGUgZ2V0
dGVyIGZ1bmN0aW9uIHdhcyBndWFyYW50ZWVkIHRvDQogICAgICAgcnVuIG9ubHkgb25jZSBwZXIg
aW5zdGFuY2UuIEhvd2V2ZXIsIHRoZSBsb2NrIHdhcyBwZXItcHJvcGVydHksIG5vdA0KICAgICAg
IHBlci1pbnN0YW5jZSwgd2hpY2ggY291bGQgcmVzdWx0IGluIHVuYWNjZXB0YWJseSBoaWdoIGxv
Y2sgY29udGVudGlvbi4gSW4NCkBAIC03MzIsNyArNzMyLDcgQEAgVGhlIDptb2Q6YCFmdW5jdG9v
bHNgIG1vZHVsZSBkZWZpbmVzIHRoZSBmb2xsb3dpbmcgZnVuY3Rpb25zOg0KICAgIGZ1bmN0aW9u
J3MgOmF0dHI6YH5mdW5jdGlvbi5fX2RpY3RfX2AsIGkuZS4gdGhlIGluc3RhbmNlIGRpY3Rpb25h
cnkpLg0KIA0KICAgIFRvIGFsbG93IGFjY2VzcyB0byB0aGUgb3JpZ2luYWwgZnVuY3Rpb24gZm9y
IGludHJvc3BlY3Rpb24gYW5kIG90aGVyIHB1cnBvc2VzDQotICAgKGUuZy4gYnlwYXNzaW5nIGEg
Y2FjaGluZyBkZWNvcmF0b3Igc3VjaCBhcyA6ZnVuYzpgbHJ1X2NhY2hlYCksIHRoaXMgZnVuY3Rp
b24NCisgICAoZS5nLiBieXBhc3NpbmcgYSBjYWNoaW5nIGRlY29yYXRvciBzdWNoIGFzIDpkZWNv
OmBscnVfY2FjaGVgKSwgdGhpcyBmdW5jdGlvbg0KICAgIGF1dG9tYXRpY2FsbHkgYWRkcyBhIGBg
X193cmFwcGVkX19gYCBhdHRyaWJ1dGUgdG8gdGhlIHdyYXBwZXIgdGhhdCByZWZlcnMgdG8NCiAg
ICB0aGUgZnVuY3Rpb24gYmVpbmcgd3JhcHBlZC4NCiANCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFy
eS90YXJmaWxlLnJzdCBiL0RvYy9saWJyYXJ5L3RhcmZpbGUucnN0DQppbmRleCA5Yjk3ODNkOGU1
ODAxM2YuLjI5YTMyOWZkZmVhYjE1YiAxMDA2NDQNCi0tLSBhL0RvYy9saWJyYXJ5L3RhcmZpbGUu
cnN0DQorKysgYi9Eb2MvbGlicmFyeS90YXJmaWxlLnJzdA0KQEAgLTY3MCw3ICs2NzAsNyBAQCBi
ZSBmaW5hbGl6ZWQ7IG9ubHkgdGhlIGludGVybmFsbHkgdXNlZCBmaWxlIG9iamVjdCB3aWxsIGJl
IGNsb3NlZC4gU2VlIHRoZQ0KICAgIGl0IGlzIGJlc3QgcHJhY3RpY2UgdG8gb25seSBkbyBzbyBp
biB0b3AtbGV2ZWwgYXBwbGljYXRpb25zIG9yDQogICAgOm1vZDpgc2l0ZSBjb25maWd1cmF0aW9u
IDxzaXRlPmAuDQogICAgVG8gc2V0IGEgZ2xvYmFsIGRlZmF1bHQgdGhpcyB3YXksIGEgZmlsdGVy
IGZ1bmN0aW9uIG5lZWRzIHRvIGJlIHdyYXBwZWQgaW4NCi0gICA6ZnVuYzpgc3RhdGljbWV0aG9k
YCB0byBwcmV2ZW50IGluamVjdGlvbiBvZiBhIGBgc2VsZmBgIGFyZ3VtZW50Lg0KKyAgIDpkZWNv
OmBzdGF0aWNtZXRob2RgIHRvIHByZXZlbnQgaW5qZWN0aW9uIG9mIGEgYGBzZWxmYGAgYXJndW1l
bnQuDQogDQogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjE0DQogDQpkaWZmIC0tZ2l0IGEvRG9j
L2xpYnJhcnkvdGVzdC5yc3QgYi9Eb2MvbGlicmFyeS90ZXN0LnJzdA0KaW5kZXggNWZhMWRkMjVh
Njg5YWYxLi42NjA4NDdhZTNmZTNjODUgMTAwNjQ0DQotLS0gYS9Eb2MvbGlicmFyeS90ZXN0LnJz
dA0KKysrIGIvRG9jL2xpYnJhcnkvdGVzdC5yc3QNCkBAIC03MTgsNyArNzE4LDcgQEAgVGhlIDpt
b2Q6YCF0ZXN0LnN1cHBvcnRgIG1vZHVsZSBkZWZpbmVzIHRoZSBmb2xsb3dpbmcgZnVuY3Rpb25z
Og0KIC4uIGRlY29yYXRvcjo6IGFudGljaXBhdGVfZmFpbHVyZShjb25kaXRpb24pDQogDQogICAg
QSBkZWNvcmF0b3IgdG8gY29uZGl0aW9uYWxseSBtYXJrIHRlc3RzIHdpdGgNCi0gICA6ZnVuYzpg
dW5pdHRlc3QuZXhwZWN0ZWRGYWlsdXJlYC4gQW55IHVzZSBvZiB0aGlzIGRlY29yYXRvciBzaG91
bGQNCisgICA6ZGVjbzpgdW5pdHRlc3QuZXhwZWN0ZWRGYWlsdXJlYC4gQW55IHVzZSBvZiB0aGlz
IGRlY29yYXRvciBzaG91bGQNCiAgICBoYXZlIGFuIGFzc29jaWF0ZWQgY29tbWVudCBpZGVudGlm
eWluZyB0aGUgcmVsZXZhbnQgdHJhY2tlciBpc3N1ZS4NCiANCiANCmRpZmYgLS1naXQgYS9Eb2Mv
bGlicmFyeS90eXBpbmcucnN0IGIvRG9jL2xpYnJhcnkvdHlwaW5nLnJzdA0KaW5kZXggZWY2MDE2
ZDQ1YzFmOGJjLi5jOTA5YjhiYWQ2ZDcyNmMgMTAwNjQ0DQotLS0gYS9Eb2MvbGlicmFyeS90eXBp
bmcucnN0DQorKysgYi9Eb2MvbGlicmFyeS90eXBpbmcucnN0DQpAQCAtMjU4Myw3ICsyNTgzLDcg
QEAgdHlwZXMuDQogICAgICAgZnVuYyhDKCkpICAjIFBhc3NlcyBzdGF0aWMgdHlwZSBjaGVjaw0K
IA0KICAgIFNlZSA6cGVwOmA1NDRgIGZvciBtb3JlIGRldGFpbHMuIFByb3RvY29sIGNsYXNzZXMg
ZGVjb3JhdGVkIHdpdGgNCi0gICA6ZnVuYzpgcnVudGltZV9jaGVja2FibGVgIChkZXNjcmliZWQg
bGF0ZXIpIGFjdCBhcyBzaW1wbGUtbWluZGVkIHJ1bnRpbWUNCisgICA6ZGVjbzpgcnVudGltZV9j
aGVja2FibGVgIChkZXNjcmliZWQgbGF0ZXIpIGFjdCBhcyBzaW1wbGUtbWluZGVkIHJ1bnRpbWUN
CiAgICBwcm90b2NvbHMgdGhhdCBjaGVjayBvbmx5IHRoZSBwcmVzZW5jZSBvZiBnaXZlbiBhdHRy
aWJ1dGVzLCBpZ25vcmluZyB0aGVpcg0KICAgIHR5cGUgc2lnbmF0dXJlcy4gUHJvdG9jb2wgY2xh
c3NlcyB3aXRob3V0IHRoaXMgZGVjb3JhdG9yIGNhbm5vdCBiZSB1c2VkDQogICAgYXMgdGhlIHNl
Y29uZCBhcmd1bWVudCB0byA6ZnVuYzpgaXNpbnN0YW5jZWAgb3IgOmZ1bmM6YGlzc3ViY2xhc3Ng
Lg0KQEAgLTI2NDgsNyArMjY0OCw3IEBAIHR5cGVzLg0KIA0KICAgIC4uIG5vdGU6Og0KIA0KLSAg
ICAgICAgOmZ1bmM6YCFydW50aW1lX2NoZWNrYWJsZWAgd2lsbCBjaGVjayBvbmx5IHRoZSBwcmVz
ZW5jZSBvZiB0aGUgcmVxdWlyZWQNCisgICAgICAgIDpkZWNvOmAhcnVudGltZV9jaGVja2FibGVg
IHdpbGwgY2hlY2sgb25seSB0aGUgcHJlc2VuY2Ugb2YgdGhlIHJlcXVpcmVkDQogICAgICAgICBt
ZXRob2RzIG9yIGF0dHJpYnV0ZXMsIG5vdCB0aGVpciB0eXBlIHNpZ25hdHVyZXMgb3IgdHlwZXMu
DQogICAgICAgICBGb3IgZXhhbXBsZSwgOmNsYXNzOmBzc2wuU1NMT2JqZWN0YA0KICAgICAgICAg
aXMgYSBjbGFzcywgdGhlcmVmb3JlIGl0IHBhc3NlcyBhbiA6ZnVuYzpgaXNzdWJjbGFzc2ANCkBA
IC0zMTU0LDcgKzMxNTQsNyBAQCBGdW5jdGlvbnMgYW5kIGRlY29yYXRvcnMNCiAgICBEZWNvcmF0
b3IgdG8gbWFyayBhbiBvYmplY3QgYXMgcHJvdmlkaW5nDQogICAgOmZ1bmM6YGRhdGFjbGFzcyA8
ZGF0YWNsYXNzZXMuZGF0YWNsYXNzPmAtbGlrZSBiZWhhdmlvci4NCiANCi0gICBgYGRhdGFjbGFz
c190cmFuc2Zvcm1gYCBtYXkgYmUgdXNlZCB0bw0KKyAgIGBgQGRhdGFjbGFzc190cmFuc2Zvcm1g
YCBtYXkgYmUgdXNlZCB0bw0KICAgIGRlY29yYXRlIGEgY2xhc3MsIG1ldGFjbGFzcywgb3IgYSBm
dW5jdGlvbiB0aGF0IGlzIGl0c2VsZiBhIGRlY29yYXRvci4NCiAgICBUaGUgcHJlc2VuY2Ugb2Yg
YGBAZGF0YWNsYXNzX3RyYW5zZm9ybSgpYGAgdGVsbHMgYSBzdGF0aWMgdHlwZSBjaGVja2VyIHRo
YXQgdGhlDQogICAgZGVjb3JhdGVkIG9iamVjdCBwZXJmb3JtcyBydW50aW1lICJtYWdpYyIgdGhh
dA0KQEAgLTMyMDksNyArMzIwOSw3IEBAIEZ1bmN0aW9ucyBhbmQgZGVjb3JhdG9ycw0KICAgIGBg
a3dfb25seWBgLCBhbmQgYGBzbG90c2BgLiBJdCBtdXN0IGJlIHBvc3NpYmxlIGZvciB0aGUgdmFs
dWUgb2YgdGhlc2UNCiAgICBhcmd1bWVudHMgKGBgVHJ1ZWBgIG9yIGBgRmFsc2VgYCkgdG8gYmUg
c3RhdGljYWxseSBldmFsdWF0ZWQuDQogDQotICAgVGhlIGFyZ3VtZW50cyB0byB0aGUgYGBkYXRh
Y2xhc3NfdHJhbnNmb3JtYGAgZGVjb3JhdG9yIGNhbiBiZSB1c2VkIHRvDQorICAgVGhlIGFyZ3Vt
ZW50cyB0byB0aGUgYGBAZGF0YWNsYXNzX3RyYW5zZm9ybWBgIGRlY29yYXRvciBjYW4gYmUgdXNl
ZCB0bw0KICAgIGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCBiZWhhdmlvcnMgb2YgdGhlIGRlY29yYXRl
ZCBjbGFzcywgbWV0YWNsYXNzLCBvcg0KICAgIGZ1bmN0aW9uOg0KIA0KQEAgLTMyNzMsOCArMzI3
Myw4IEBAIEZ1bmN0aW9ucyBhbmQgZGVjb3JhdG9ycw0KICAgICAgICAgICBrZXl3b3JkLW9ubHku
IElmIGBgVHJ1ZWBgLCB0aGUgZmllbGQgd2lsbCBiZSBrZXl3b3JkLW9ubHkuIElmDQogICAgICAg
ICAgIGBgRmFsc2VgYCwgaXQgd2lsbCBub3QgYmUga2V5d29yZC1vbmx5LiBJZiB1bnNwZWNpZmll
ZCwgdGhlIHZhbHVlIG9mDQogICAgICAgICAgIHRoZSBgYGt3X29ubHlgYCBwYXJhbWV0ZXIgb24g
dGhlIG9iamVjdCBkZWNvcmF0ZWQgd2l0aA0KLSAgICAgICAgICBgYGRhdGFjbGFzc190cmFuc2Zv
cm1gYCB3aWxsIGJlIHVzZWQsIG9yIGlmIHRoYXQgaXMgdW5zcGVjaWZpZWQsIHRoZQ0KLSAgICAg
ICAgICB2YWx1ZSBvZiBgYGt3X29ubHlfZGVmYXVsdGBgIG9uIGBgZGF0YWNsYXNzX3RyYW5zZm9y
bWBgIHdpbGwgYmUgdXNlZC4NCisgICAgICAgICAgYGBAZGF0YWNsYXNzX3RyYW5zZm9ybWBgIHdp
bGwgYmUgdXNlZCwgb3IgaWYgdGhhdCBpcyB1bnNwZWNpZmllZCwgdGhlDQorICAgICAgICAgIHZh
bHVlIG9mIGBga3dfb25seV9kZWZhdWx0YGAgb24gYGBAZGF0YWNsYXNzX3RyYW5zZm9ybWBgIHdp
bGwgYmUgdXNlZC4NCiAgICAgICAqIC0gYGBhbGlhc2BgDQogICAgICAgICAtIFByb3ZpZGVzIGFu
IGFsdGVybmF0aXZlIG5hbWUgZm9yIHRoZSBmaWVsZC4gVGhpcyBhbHRlcm5hdGl2ZQ0KICAgICAg
ICAgICBuYW1lIGlzIHVzZWQgaW4gdGhlIHN5bnRoZXNpemVkIGBgX19pbml0X19gYCBtZXRob2Qu
DQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvdW5pdHRlc3QucnN0IGIvRG9jL2xpYnJhcnkvdW5p
dHRlc3QucnN0DQppbmRleCBmZjYxOWY5NzkyMzMyNTEuLjdhZmNkYjM2OGEzNTYyZSAxMDA2NDQN
Ci0tLSBhL0RvYy9saWJyYXJ5L3VuaXR0ZXN0LnJzdA0KKysrIGIvRG9jL2xpYnJhcnkvdW5pdHRl
c3QucnN0DQpAQCAtNTMwLDcgKzUzMCw3IEBAIHRlc3RzLiAgSW4gYWRkaXRpb24sIGl0IHN1cHBv
cnRzIG1hcmtpbmcgYSB0ZXN0IGFzIGFuICJleHBlY3RlZCBmYWlsdXJlLCIgYSB0ZXN0DQogdGhh
dCBpcyBicm9rZW4gYW5kIHdpbGwgZmFpbCwgYnV0IHNob3VsZG4ndCBiZSBjb3VudGVkIGFzIGEg
ZmFpbHVyZSBvbiBhDQogOmNsYXNzOmBUZXN0UmVzdWx0YC4NCiANCi1Ta2lwcGluZyBhIHRlc3Qg
aXMgc2ltcGx5IGEgbWF0dGVyIG9mIHVzaW5nIHRoZSA6ZnVuYzpgc2tpcGAgOnRlcm06YGRlY29y
YXRvcmANCitTa2lwcGluZyBhIHRlc3QgaXMgc2ltcGx5IGEgbWF0dGVyIG9mIHVzaW5nIHRoZSA6
ZGVjbzpgc2tpcGAgOnRlcm06YGRlY29yYXRvcmANCiBvciBvbmUgb2YgaXRzIGNvbmRpdGlvbmFs
IHZhcmlhbnRzLCBjYWxsaW5nIDptZXRoOmBUZXN0Q2FzZS5za2lwVGVzdGAgd2l0aGluIGENCiA6
bWV0aDpgflRlc3RDYXNlLnNldFVwYCBvciB0ZXN0IG1ldGhvZCwgb3IgcmFpc2luZyA6ZXhjOmBT
a2lwVGVzdGAgZGlyZWN0bHkuDQogDQpAQCAtNTgxLDcgKzU4MSw3IEBAIENsYXNzZXMgY2FuIGJl
IHNraXBwZWQganVzdCBsaWtlIG1ldGhvZHM6Og0KIDptZXRoOmBUZXN0Q2FzZS5zZXRVcGAgY2Fu
IGFsc28gc2tpcCB0aGUgdGVzdC4gIFRoaXMgaXMgdXNlZnVsIHdoZW4gYSByZXNvdXJjZQ0KIHRo
YXQgbmVlZHMgdG8gYmUgc2V0IHVwIGlzIG5vdCBhdmFpbGFibGUuDQogDQotRXhwZWN0ZWQgZmFp
bHVyZXMgdXNlIHRoZSA6ZnVuYzpgZXhwZWN0ZWRGYWlsdXJlYCBkZWNvcmF0b3IuIDo6DQorRXhw
ZWN0ZWQgZmFpbHVyZXMgdXNlIHRoZSA6ZGVjbzpgZXhwZWN0ZWRGYWlsdXJlYCBkZWNvcmF0b3Iu
IDo6DQogDQogICAgY2xhc3MgRXhwZWN0ZWRGYWlsdXJlVGVzdENhc2UodW5pdHRlc3QuVGVzdENh
c2UpOg0KICAgICAgICBAdW5pdHRlc3QuZXhwZWN0ZWRGYWlsdXJlDQpAQCAtNzYzLDcgKzc2Myw3
IEBAIFRlc3QgY2FzZXMNCiANCiAgICAgICBBIGNsYXNzIG1ldGhvZCBjYWxsZWQgYmVmb3JlIHRl
c3RzIGluIGFuIGluZGl2aWR1YWwgY2xhc3MgYXJlIHJ1bi4NCiAgICAgICBgYHNldFVwQ2xhc3Ng
YCBpcyBjYWxsZWQgd2l0aCB0aGUgY2xhc3MgYXMgdGhlIG9ubHkgYXJndW1lbnQNCi0gICAgICBh
bmQgbXVzdCBiZSBkZWNvcmF0ZWQgYXMgYSA6ZnVuYzpgY2xhc3NtZXRob2RgOjoNCisgICAgICBh
bmQgbXVzdCBiZSBkZWNvcmF0ZWQgYXMgYSA6ZGVjbzpgY2xhc3NtZXRob2RgOjoNCiANCiAgICAg
ICAgIEBjbGFzc21ldGhvZA0KICAgICAgICAgZGVmIHNldFVwQ2xhc3MoY2xzKToNCkBAIC03Nzgs
NyArNzc4LDcgQEAgVGVzdCBjYXNlcw0KIA0KICAgICAgIEEgY2xhc3MgbWV0aG9kIGNhbGxlZCBh
ZnRlciB0ZXN0cyBpbiBhbiBpbmRpdmlkdWFsIGNsYXNzIGhhdmUgcnVuLg0KICAgICAgIGBgdGVh
ckRvd25DbGFzc2BgIGlzIGNhbGxlZCB3aXRoIHRoZSBjbGFzcyBhcyB0aGUgb25seSBhcmd1bWVu
dA0KLSAgICAgIGFuZCBtdXN0IGJlIGRlY29yYXRlZCBhcyBhIDptZXRoOmBjbGFzc21ldGhvZGA6
Og0KKyAgICAgIGFuZCBtdXN0IGJlIGRlY29yYXRlZCBhcyBhIDpkZWNvOmBjbGFzc21ldGhvZGA6
Og0KIA0KICAgICAgICAgQGNsYXNzbWV0aG9kDQogICAgICAgICBkZWYgdGVhckRvd25DbGFzcyhj
bHMpOg0KQEAgLTIxNTYsNyArMjE1Niw3IEBAIExvYWRpbmcgYW5kIHJ1bm5pbmcgdGVzdHMNCiAN
CiAgICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuNA0KICAgICAgICAgIFJldHVybnMgYGBGYWxz
ZWBgIGlmIHRoZXJlIHdlcmUgYW55IDphdHRyOmB1bmV4cGVjdGVkU3VjY2Vzc2VzYA0KLSAgICAg
ICAgIGZyb20gdGVzdHMgbWFya2VkIHdpdGggdGhlIDpmdW5jOmBleHBlY3RlZEZhaWx1cmVgIGRl
Y29yYXRvci4NCisgICAgICAgICBmcm9tIHRlc3RzIG1hcmtlZCB3aXRoIHRoZSA6ZGVjbzpgZXhw
ZWN0ZWRGYWlsdXJlYCBkZWNvcmF0b3IuDQogDQogICAgLi4gbWV0aG9kOjogc3RvcCgpDQogDQpA
QCAtMjIzOSw3ICsyMjM5LDcgQEAgTG9hZGluZyBhbmQgcnVubmluZyB0ZXN0cw0KICAgIC4uIG1l
dGhvZDo6IGFkZEV4cGVjdGVkRmFpbHVyZSh0ZXN0LCBlcnIpDQogDQogICAgICAgQ2FsbGVkIHdo
ZW4gdGhlIHRlc3QgY2FzZSAqdGVzdCogZmFpbHMgb3IgZXJyb3JzLCBidXQgd2FzIG1hcmtlZCB3
aXRoDQotICAgICAgdGhlIDpmdW5jOmBleHBlY3RlZEZhaWx1cmVgIGRlY29yYXRvci4NCisgICAg
ICB0aGUgOmRlY286YGV4cGVjdGVkRmFpbHVyZWAgZGVjb3JhdG9yLg0KIA0KICAgICAgIFRoZSBk
ZWZhdWx0IGltcGxlbWVudGF0aW9uIGFwcGVuZHMgYSB0dXBsZSBgYCh0ZXN0LCBmb3JtYXR0ZWRf
ZXJyKWBgIHRvDQogICAgICAgdGhlIGluc3RhbmNlJ3MgOmF0dHI6YGV4cGVjdGVkRmFpbHVyZXNg
IGF0dHJpYnV0ZSwgd2hlcmUgKmZvcm1hdHRlZF9lcnIqDQpAQCAtMjI0OSw3ICsyMjQ5LDcgQEAg
TG9hZGluZyBhbmQgcnVubmluZyB0ZXN0cw0KICAgIC4uIG1ldGhvZDo6IGFkZFVuZXhwZWN0ZWRT
dWNjZXNzKHRlc3QpDQogDQogICAgICAgQ2FsbGVkIHdoZW4gdGhlIHRlc3QgY2FzZSAqdGVzdCog
d2FzIG1hcmtlZCB3aXRoIHRoZQ0KLSAgICAgIDpmdW5jOmBleHBlY3RlZEZhaWx1cmVgIGRlY29y
YXRvciwgYnV0IHN1Y2NlZWRlZC4NCisgICAgICA6ZGVjbzpgZXhwZWN0ZWRGYWlsdXJlYCBkZWNv
cmF0b3IsIGJ1dCBzdWNjZWVkZWQuDQogDQogICAgICAgVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRp
b24gYXBwZW5kcyB0aGUgdGVzdCB0byB0aGUgaW5zdGFuY2Uncw0KICAgICAgIDphdHRyOmB1bmV4
cGVjdGVkU3VjY2Vzc2VzYCBhdHRyaWJ1dGUuDQpkaWZmIC0tZ2l0IGEvRG9jL3JlZmVyZW5jZS9j
b21wb3VuZF9zdG10cy5yc3QgYi9Eb2MvcmVmZXJlbmNlL2NvbXBvdW5kX3N0bXRzLnJzdA0KaW5k
ZXggNDk1MjZmMWU1ZTgzOTMzLi5lNzRmMzI2MmVkNTQwY2QgMTAwNjQ0DQotLS0gYS9Eb2MvcmVm
ZXJlbmNlL2NvbXBvdW5kX3N0bXRzLnJzdA0KKysrIGIvRG9jL3JlZmVyZW5jZS9jb21wb3VuZF9z
dG10cy5yc3QNCkBAIC0yMDExLDcgKzIwMTEsNyBAQCBBbm5vdGF0aW9ucyBhcmUgY29udmVudGlv
bmFsbHkgdXNlZCBmb3IgOnRlcm06YHR5cGUgaGludHMgPHR5cGUgaGludD5gLCBidXQgdGhpcw0K
IGlzIG5vdCBlbmZvcmNlZCBieSB0aGUgbGFuZ3VhZ2UsIGFuZCBpbiBnZW5lcmFsIGFubm90YXRp
b25zIG1heSBjb250YWluIGFyYml0cmFyeQ0KIGV4cHJlc3Npb25zLiBUaGUgcHJlc2VuY2Ugb2Yg
YW5ub3RhdGlvbnMgZG9lcyBub3QgY2hhbmdlIHRoZSBydW50aW1lIHNlbWFudGljcyBvZg0KIHRo
ZSBjb2RlLCBleGNlcHQgaWYgc29tZSBtZWNoYW5pc20gaXMgdXNlZCB0aGF0IGludHJvc3BlY3Rz
IGFuZCB1c2VzIHRoZSBhbm5vdGF0aW9ucw0KLShzdWNoIGFzIDptb2Q6YGRhdGFjbGFzc2VzYCBv
ciA6ZnVuYzpgZnVuY3Rvb2xzLnNpbmdsZWRpc3BhdGNoYCkuDQorKHN1Y2ggYXMgOm1vZDpgZGF0
YWNsYXNzZXNgIG9yIDpkZWNvOmBmdW5jdG9vbHMuc2luZ2xlZGlzcGF0Y2hgKS4NCiANCiBCeSBk
ZWZhdWx0LCBhbm5vdGF0aW9ucyBhcmUgbGF6aWx5IGV2YWx1YXRlZCBpbiBhbiA6cmVmOmBhbm5v
dGF0aW9uIHNjb3BlIDxhbm5vdGF0aW9uLXNjb3Blcz5gLg0KIFRoaXMgbWVhbnMgdGhhdCB0aGV5
IGFyZSBub3QgZXZhbHVhdGVkIHdoZW4gdGhlIGNvZGUgY29udGFpbmluZyB0aGUgYW5ub3RhdGlv
biBpcyBldmFsdWF0ZWQuDQpkaWZmIC0tZ2l0IGEvRG9jL3JlZmVyZW5jZS9kYXRhbW9kZWwucnN0
IGIvRG9jL3JlZmVyZW5jZS9kYXRhbW9kZWwucnN0DQppbmRleCA3ODBlMGUwZWNhM2MyMmEuLjE5
YmMyMjAzNzE3OWVhZSAxMDA2NDQNCi0tLSBhL0RvYy9yZWZlcmVuY2UvZGF0YW1vZGVsLnJzdA0K
KysrIGIvRG9jL3JlZmVyZW5jZS9kYXRhbW9kZWwucnN0DQpAQCAtMjE5Nyw3ICsyMTk3LDcgQEAg
QmFzaWMgY3VzdG9taXphdGlvbg0KICAgIDpkYXRhOmAhTm90SW1wbGVtZW50ZWRgLiAgVGhlcmUg
YXJlIG5vIG90aGVyIGltcGxpZWQgcmVsYXRpb25zaGlwcyBhbW9uZyB0aGUNCiAgICBjb21wYXJp
c29uIG9wZXJhdG9ycyBvciBkZWZhdWx0IGltcGxlbWVudGF0aW9uczsgZm9yIGV4YW1wbGUsIHRo
ZSB0cnV0aCBvZg0KICAgIGBgKHg8eSBvciB4PT15KWBgIGRvZXMgbm90IGltcGx5IGBgeDw9eWBg
LiBUbyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIG9yZGVyaW5nDQotICAgb3BlcmF0aW9ucyBmcm9t
IGEgc2luZ2xlIHJvb3Qgb3BlcmF0aW9uLCBzZWUgOmZ1bmM6YGZ1bmN0b29scy50b3RhbF9vcmRl
cmluZ2AuDQorICAgb3BlcmF0aW9ucyBmcm9tIGEgc2luZ2xlIHJvb3Qgb3BlcmF0aW9uLCBzZWUg
OmRlY286YGZ1bmN0b29scy50b3RhbF9vcmRlcmluZ2AuDQogDQogICAgQnkgZGVmYXVsdCwgdGhl
IDpjbGFzczpgb2JqZWN0YCBjbGFzcyBwcm92aWRlcyBpbXBsZW1lbnRhdGlvbnMgY29uc2lzdGVu
dA0KICAgIHdpdGggOnJlZjpgZXhwcmVzc2lvbnMtdmFsdWUtY29tcGFyaXNvbnNgOiBlcXVhbGl0
eSBjb21wYXJlcyBhY2NvcmRpbmcgdG8NCkBAIC0yNjIxLDcgKzI2MjEsNyBAQCBpbXBsZW1lbnRl
ZCBhcyBub24tZGF0YSBkZXNjcmlwdG9ycy4gIEFjY29yZGluZ2x5LCBpbnN0YW5jZXMgY2FuIHJl
ZGVmaW5lIGFuZA0KIG92ZXJyaWRlIG1ldGhvZHMuICBUaGlzIGFsbG93cyBpbmRpdmlkdWFsIGlu
c3RhbmNlcyB0byBhY3F1aXJlIGJlaGF2aW9ycyB0aGF0DQogZGlmZmVyIGZyb20gb3RoZXIgaW5z
dGFuY2VzIG9mIHRoZSBzYW1lIGNsYXNzLg0KIA0KLVRoZSA6ZnVuYzpgcHJvcGVydHlgIGZ1bmN0
aW9uIGlzIGltcGxlbWVudGVkIGFzIGEgZGF0YSBkZXNjcmlwdG9yLiBBY2NvcmRpbmdseSwNCitU
aGUgOmRlY286YHByb3BlcnR5YCBkZWNvcmF0b3IgaXMgaW1wbGVtZW50ZWQgYXMgYSBkYXRhIGRl
c2NyaXB0b3IuIEFjY29yZGluZ2x5LA0KIGluc3RhbmNlcyBjYW5ub3Qgb3ZlcnJpZGUgdGhlIGJl
aGF2aW9yIG9mIGEgcHJvcGVydHkuDQogDQogDQpkaWZmIC0tZ2l0IGEvRG9jL3JlZmVyZW5jZS9l
eHByZXNzaW9ucy5yc3QgYi9Eb2MvcmVmZXJlbmNlL2V4cHJlc3Npb25zLnJzdA0KaW5kZXggOTNi
MmNkYzFlMTcwMTBjLi5jM2YyMzIwOWM4NWIzMjQgMTAwNjQ0DQotLS0gYS9Eb2MvcmVmZXJlbmNl
L2V4cHJlc3Npb25zLnJzdA0KKysrIGIvRG9jL3JlZmVyZW5jZS9leHByZXNzaW9ucy5yc3QNCkBA
IC0yNDA3LDcgKzI0MDcsNyBAQCBzb21lIGNvbnNpc3RlbmN5IHJ1bGVzLCBpZiBwb3NzaWJsZToN
CiANCiAgIFRoZSBsYXN0IHR3byBleHByZXNzaW9ucyBhcHBseSB0byB0b3RhbGx5IG9yZGVyZWQg
Y29sbGVjdGlvbnMgKGUuZy4gdG8NCiAgIHNlcXVlbmNlcywgYnV0IG5vdCB0byBzZXRzIG9yIG1h
cHBpbmdzKS4gU2VlIGFsc28gdGhlDQotICA6ZnVuYzpgfmZ1bmN0b29scy50b3RhbF9vcmRlcmlu
Z2AgZGVjb3JhdG9yLg0KKyAgOmRlY286YH5mdW5jdG9vbHMudG90YWxfb3JkZXJpbmdgIGRlY29y
YXRvci4NCiANCiAqIFRoZSA6ZnVuYzpgaGFzaGAgcmVzdWx0IHNob3VsZCBiZSBjb25zaXN0ZW50
IHdpdGggZXF1YWxpdHkuDQogICBPYmplY3RzIHRoYXQgYXJlIGVxdWFsIHNob3VsZCBlaXRoZXIg
aGF2ZSB0aGUgc2FtZSBoYXNoIHZhbHVlLA0KZGlmZiAtLWdpdCBhL0RvYy9yZWZlcmVuY2Uvc2lt
cGxlX3N0bXRzLnJzdCBiL0RvYy9yZWZlcmVuY2Uvc2ltcGxlX3N0bXRzLnJzdA0KaW5kZXggMGYx
MzQ2MDRiNWQ5MjJiLi5hOTY0YjQzZWJlZTE3NDYgMTAwNjQ0DQotLS0gYS9Eb2MvcmVmZXJlbmNl
L3NpbXBsZV9zdG10cy5yc3QNCisrKyBiL0RvYy9yZWZlcmVuY2Uvc2ltcGxlX3N0bXRzLnJzdA0K
QEAgLTE4MSw3ICsxODEsNyBAQCBBc3NpZ25tZW50IG9mIGFuIG9iamVjdCB0byBhIHNpbmdsZSB0
YXJnZXQgaXMgcmVjdXJzaXZlbHkgZGVmaW5lZCBhcyBmb2xsb3dzLg0KICAgICAgaW5zdC54ID0g
aW5zdC54ICsgMSAgICMgd3JpdGVzIGluc3QueCBhcyA0IGxlYXZpbmcgQ2xzLnggYXMgMw0KIA0K
ICAgVGhpcyBkZXNjcmlwdGlvbiBkb2VzIG5vdCBuZWNlc3NhcmlseSBhcHBseSB0byBkZXNjcmlw
dG9yIGF0dHJpYnV0ZXMsIHN1Y2ggYXMNCi0gIHByb3BlcnRpZXMgY3JlYXRlZCB3aXRoIDpmdW5j
OmBwcm9wZXJ0eWAuDQorICBwcm9wZXJ0aWVzIGNyZWF0ZWQgd2l0aCA6ZGVjbzpgcHJvcGVydHlg
Lg0KIA0KICAgLi4gaW5kZXg6Og0KICAgICAgcGFpcjogc3Vic2NyaXB0aW9uOyBhc3NpZ25tZW50
DQpkaWZmIC0tZ2l0IGEvRG9jL3doYXRzbmV3LzIuNi5yc3QgYi9Eb2Mvd2hhdHNuZXcvMi42LnJz
dA0KaW5kZXggMTIxNTYwMWEwOWQ2ODFjLi5lMWY3MmI2YzRhNmM5MmMgMTAwNjQ0DQotLS0gYS9E
b2Mvd2hhdHNuZXcvMi42LnJzdA0KKysrIGIvRG9jL3doYXRzbmV3LzIuNi5yc3QNCkBAIC00MzEs
NyArNDMxLDcgQEAgVGhlIGNvbnRleHRsaWIgbW9kdWxlDQogVGhlIDptb2Q6YGNvbnRleHRsaWJg
IG1vZHVsZSBwcm92aWRlcyBzb21lIGZ1bmN0aW9ucyBhbmQgYSBkZWNvcmF0b3IgdGhhdA0KIGFy
ZSB1c2VmdWwgd2hlbiB3cml0aW5nIG9iamVjdHMgZm9yIHVzZSB3aXRoIHRoZSAnOmtleXdvcmQ6
YHdpdGhgJyBzdGF0ZW1lbnQuDQogDQotVGhlIGRlY29yYXRvciBpcyBjYWxsZWQgOmZ1bmM6YH5j
b250ZXh0bGliLmNvbnRleHRtYW5hZ2VyYCwgYW5kIGxldHMgeW91IHdyaXRlDQorVGhlIGRlY29y
YXRvciBpcyBjYWxsZWQgOmRlY286YH5jb250ZXh0bGliLmNvbnRleHRtYW5hZ2VyYCwgYW5kIGxl
dHMgeW91IHdyaXRlDQogYSBzaW5nbGUgZ2VuZXJhdG9yIGZ1bmN0aW9uIGluc3RlYWQgb2YgZGVm
aW5pbmcgYSBuZXcgY2xhc3MuICBUaGUgZ2VuZXJhdG9yDQogc2hvdWxkIHlpZWxkIGV4YWN0bHkg
b25lIHZhbHVlLiAgVGhlIGNvZGUgdXAgdG8gdGhlIDprZXl3b3JkOmB5aWVsZGAgd2lsbCBiZQ0K
IGV4ZWN1dGVkIGFzIHRoZSA6bWV0aDpgfm9iamVjdC5fX2VudGVyX19gIG1ldGhvZCwgYW5kIHRo
ZSB2YWx1ZSB5aWVsZGVkIHdpbGwNCkBAIC0xNTU3LDggKzE1NTcsOSBAQCBTb21lIHNtYWxsZXIg
Y2hhbmdlcyBtYWRlIHRvIHRoZSBjb3JlIFB5dGhvbiBsYW5ndWFnZSBhcmU6DQogDQogICAuLiBS
ZXZpc2lvbiA1NzYxOQ0KIA0KLSogUHJvcGVydGllcyBub3cgaGF2ZSB0aHJlZSBhdHRyaWJ1dGVz
LCA6YXR0cjpgZ2V0dGVyYCwgOmF0dHI6YHNldHRlcmANCi0gIGFuZCA6YXR0cjpgZGVsZXRlcmAs
IHRoYXQgYXJlIGRlY29yYXRvcnMgcHJvdmlkaW5nIHVzZWZ1bCBzaG9ydGN1dHMNCisqIFByb3Bl
cnRpZXMgbm93IGhhdmUgdGhyZWUgZGVjb3JhdG9ycywgOmRlY286YH5wcm9wZXJ0eS5nZXR0ZXJg
LA0KKyAgOmRlY286YH5wcm9wZXJ0eS5zZXR0ZXJgIGFuZCA6ZGVjbzpgfnByb3BlcnR5LmRlbGV0
ZXJgLCB0aGF0IGFyZQ0KKyAgZGVjb3JhdG9ycyBwcm92aWRpbmcgdXNlZnVsIHNob3J0Y3V0cw0K
ICAgZm9yIGFkZGluZyBhIGdldHRlciwgc2V0dGVyIG9yIGRlbGV0ZXIgZnVuY3Rpb24gdG8gYW4g
ZXhpc3RpbmcNCiAgIHByb3BlcnR5LiBZb3Ugd291bGQgdXNlIHRoZW0gbGlrZSB0aGlzOjoNCiAN
CmRpZmYgLS1naXQgYS9Eb2Mvd2hhdHNuZXcvMi43LnJzdCBiL0RvYy93aGF0c25ldy8yLjcucnN0
DQppbmRleCA3Mjk2Mjk2ZDE0NDgwM2QuLmRlOTBjMzdhMzhkMzhmZiAxMDA2NDQNCi0tLSBhL0Rv
Yy93aGF0c25ldy8yLjcucnN0DQorKysgYi9Eb2Mvd2hhdHNuZXcvMi43LnJzdA0KQEAgLTEyNjcs
NyArMTI2Nyw3IEBAIGNoYW5nZXMsIG9yIGxvb2sgdGhyb3VnaCB0aGUgU3VidmVyc2lvbiBsb2dz
IGZvciBhbGwgdGhlIGRldGFpbHMuDQogICB1cGxvYWRzIHRoYW5rcyB0byBhbiBhZGRlZCAqcmVz
dCogcGFyYW1ldGVyIChwYXRjaCBieSBQYWJsbyBNb3V6bzsNCiAgIDppc3N1ZTpgNjg0NWAuKQ0K
IA0KLSogTmV3IGNsYXNzIGRlY29yYXRvcjogOmZ1bmM6YH5mdW5jdG9vbHMudG90YWxfb3JkZXJp
bmdgIGluIHRoZSA6bW9kOmBmdW5jdG9vbHNgDQorKiBOZXcgY2xhc3MgZGVjb3JhdG9yOiA6ZGVj
bzpgfmZ1bmN0b29scy50b3RhbF9vcmRlcmluZ2AgaW4gdGhlIDptb2Q6YGZ1bmN0b29sc2ANCiAg
IG1vZHVsZSB0YWtlcyBhIGNsYXNzIHRoYXQgZGVmaW5lcyBhbiA6bWV0aDpgfm9iamVjdC5fX2Vx
X19gIG1ldGhvZCBhbmQgb25lIG9mDQogICA6bWV0aDpgfm9iamVjdC5fX2x0X19gLCA6bWV0aDpg
fm9iamVjdC5fX2xlX19gLCA6bWV0aDpgfm9iamVjdC5fX2d0X19gLCBvciA6bWV0aDpgfm9iamVj
dC5fX2dlX19gLA0KICAgYW5kIGdlbmVyYXRlcyB0aGUgbWlzc2luZyBjb21wYXJpc29uIG1ldGhv
ZHMuICBTaW5jZSB0aGUNCmRpZmYgLS1naXQgYS9Eb2Mvd2hhdHNuZXcvMy4xMC5yc3QgYi9Eb2Mv
d2hhdHNuZXcvMy4xMC5yc3QNCmluZGV4IGY2ODdiNmM4NTU5MWZjOC4uMzkwYjgyZDVhMWZkYzFi
IDEwMDY0NA0KLS0tIGEvRG9jL3doYXRzbmV3LzMuMTAucnN0DQorKysgYi9Eb2Mvd2hhdHNuZXcv
My4xMC5yc3QNCkBAIC05OTYsNyArOTk2LDcgQEAgZGF0YWNsYXNzZXMNCiBfX3Nsb3RzX18NCiB+
fn5+fn5+fn4NCiANCi1BZGRlZCBgYHNsb3RzYGAgcGFyYW1ldGVyIGluIDpmdW5jOmBkYXRhY2xh
c3Nlcy5kYXRhY2xhc3NgIGRlY29yYXRvci4NCitBZGRlZCBgYHNsb3RzYGAgcGFyYW1ldGVyIGlu
IDpkZWNvOmBkYXRhY2xhc3Nlcy5kYXRhY2xhc3NgIGRlY29yYXRvci4NCiAoQ29udHJpYnV0ZWQg
YnkgWXVyaWkgS2FyYWJhcyBpbiA6aXNzdWU6YDQyMjY5YCkNCiANCiBLZXl3b3JkLW9ubHkgZmll
bGRzDQpAQCAtMTQ4NSw5ICsxNDg1LDkgQEAgaXMgYSA6Y2xhc3M6YHR5cGluZy5UeXBlZERpY3Rg
Lg0KIA0KIFN1YmNsYXNzZXMgb2YgYGB0eXBpbmcuUHJvdG9jb2xgYCB3aGljaCBvbmx5IGhhdmUg
ZGF0YSB2YXJpYWJsZXMgZGVjbGFyZWQNCiB3aWxsIG5vdyByYWlzZSBhIGBgVHlwZUVycm9yYGAg
d2hlbiBjaGVja2VkIHdpdGggYGBpc2luc3RhbmNlYGAgdW5sZXNzIHRoZXkNCi1hcmUgZGVjb3Jh
dGVkIHdpdGggOmZ1bmM6YH50eXBpbmcucnVudGltZV9jaGVja2FibGVgLiAgUHJldmlvdXNseSwg
dGhlc2UgY2hlY2tzDQorYXJlIGRlY29yYXRlZCB3aXRoIDpkZWNvOmB+dHlwaW5nLnJ1bnRpbWVf
Y2hlY2thYmxlYC4gIFByZXZpb3VzbHksIHRoZXNlIGNoZWNrcw0KIHBhc3NlZCBzaWxlbnRseS4g
IFVzZXJzIHNob3VsZCBkZWNvcmF0ZSB0aGVpcg0KLXN1YmNsYXNzZXMgd2l0aCB0aGUgOmZ1bmM6
YCFydW50aW1lX2NoZWNrYWJsZWAgZGVjb3JhdG9yDQorc3ViY2xhc3NlcyB3aXRoIHRoZSA6ZGVj
bzpgIXJ1bnRpbWVfY2hlY2thYmxlYCBkZWNvcmF0b3INCiBpZiB0aGV5IHdhbnQgcnVudGltZSBw
cm90b2NvbHMuDQogKENvbnRyaWJ1dGVkIGJ5IFl1cmlpIEthcmFiYXMgaW4gOmlzc3VlOmAzODkw
OGAuKQ0KIA0KZGlmZiAtLWdpdCBhL0RvYy93aGF0c25ldy8zLjExLnJzdCBiL0RvYy93aGF0c25l
dy8zLjExLnJzdA0KaW5kZXggYTA5NWQ4ODczNTIxMjdhLi43YjM0NzU4ODIwNjM2MzUgMTAwNjQ0
DQotLS0gYS9Eb2Mvd2hhdHNuZXcvMy4xMS5yc3QNCisrKyBiL0RvYy93aGF0c25ldy8zLjExLnJz
dA0KQEAgLTM4OCw3ICszODgsNyBAQCBLdW1hciBTcmluaXZhc2FuIGFuZCBHcmFoYW0gQmxlYW5l
eS4pDQogUEVQIDY4MTogRGF0YSBjbGFzcyB0cmFuc2Zvcm1zDQogLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tDQogDQotOmRhdGE6YH50eXBpbmcuZGF0YWNsYXNzX3RyYW5zZm9ybWAgbWF5
IGJlIHVzZWQgdG8NCis6ZGVjbzpgfnR5cGluZy5kYXRhY2xhc3NfdHJhbnNmb3JtYCBtYXkgYmUg
dXNlZCB0bw0KIGRlY29yYXRlIGEgY2xhc3MsIG1ldGFjbGFzcywgb3IgYSBmdW5jdGlvbiB0aGF0
IGlzIGl0c2VsZiBhIGRlY29yYXRvci4NCiBUaGUgcHJlc2VuY2Ugb2YgYGBAZGF0YWNsYXNzX3Ry
YW5zZm9ybSgpYGAgdGVsbHMgYSBzdGF0aWMgdHlwZSBjaGVja2VyIHRoYXQgdGhlDQogZGVjb3Jh
dGVkIG9iamVjdCBwZXJmb3JtcyBydW50aW1lICJtYWdpYyIgdGhhdCB0cmFuc2Zvcm1zIGEgY2xh
c3MsDQpAQCAtNjg2LDggKzY4Niw4IEBAIGVudW0NCiAqIEFkZGVkIHRoZSA6ZnVuYzpgfmVudW0u
bWVtYmVyYCBhbmQgOmZ1bmM6YH5lbnVtLm5vbm1lbWJlcmAgZGVjb3JhdG9ycywNCiAgIHRvIGVu
c3VyZSB0aGUgZGVjb3JhdGVkIG9iamVjdCBpcy9pcyBub3QgY29udmVydGVkIHRvIGFuIGVudW0g
bWVtYmVyLg0KIA0KLSogQWRkZWQgdGhlIDpmdW5jOmB+ZW51bS5wcm9wZXJ0eWAgZGVjb3JhdG9y
LA0KLSAgd2hpY2ggd29ya3MgbGlrZSA6ZnVuYzpgcHJvcGVydHlgIGV4Y2VwdCBmb3IgZW51bXMu
DQorKiBBZGRlZCB0aGUgOmRlY286YH5lbnVtLnByb3BlcnR5YCBkZWNvcmF0b3IsDQorICB3aGlj
aCB3b3JrcyBsaWtlIDpkZWNvOmBwcm9wZXJ0eWAgZXhjZXB0IGZvciBlbnVtcy4NCiAgIFVzZSB0
aGlzIGluc3RlYWQgb2YgOmZ1bmM6YHR5cGVzLkR5bmFtaWNDbGFzc0F0dHJpYnV0ZWAuDQogDQog
KiBBZGRlZCB0aGUgOmZ1bmM6YH5lbnVtLmdsb2JhbF9lbnVtYCBlbnVtIGRlY29yYXRvciwNCkBA
IC03NDAsNyArNzQwLDcgQEAgZnJhY3Rpb25zDQogZnVuY3Rvb2xzDQogLS0tLS0tLS0tDQogDQot
KiA6ZnVuYzpgZnVuY3Rvb2xzLnNpbmdsZWRpc3BhdGNoYCBub3cgc3VwcG9ydHMgOmNsYXNzOmB0
eXBlcy5VbmlvblR5cGVgDQorKiA6ZGVjbzpgZnVuY3Rvb2xzLnNpbmdsZWRpc3BhdGNoYCBub3cg
c3VwcG9ydHMgOmNsYXNzOmB0eXBlcy5VbmlvblR5cGVgDQogICBhbmQgOmNsYXNzOmB0eXBpbmcu
VW5pb25gIGFzIGFubm90YXRpb25zIHRvIHRoZSBkaXNwYXRjaCBhcmd1bWVudC46Og0KIA0KICAg
ICA+Pj4gZnJvbSBmdW5jdG9vbHMgaW1wb3J0IHNpbmdsZWRpc3BhdGNoDQpAQCAtMTE2NCw3ICsx
MTY0LDcgQEAgRm9yIG1ham9yIGNoYW5nZXMsIHNlZSA6cmVmOmBuZXctZmVhdC1yZWxhdGVkLXR5
cGUtaGludHMtMzExYC4NCiAgIHR5cGUgY2hlY2tlciBlcnJvcnMgcmVsYXRlZCB0byBoaWdobHkg
ZHluYW1pYyBjbGFzcywgc3VjaCBhcyBtb2Nrcy4NCiAgIChDb250cmlidXRlZCBieSBTaGFudGFu
dSBKYWluIGluIDpnaDpgOTExNTRgLikNCiANCi0qIFRoZSA6ZnVuYzpgdHlwaW5nLmZpbmFsYCBk
ZWNvcmF0b3Igbm93IHNldHMgdGhlIGBgX19maW5hbF9fYGAgYXR0cmlidXRlZCBvbg0KKyogVGhl
IDpkZWNvOmB0eXBpbmcuZmluYWxgIGRlY29yYXRvciBub3cgc2V0cyB0aGUgYGBfX2ZpbmFsX19g
YCBhdHRyaWJ1dGVkIG9uDQogICB0aGUgZGVjb3JhdGVkIG9iamVjdC4NCiAgIChDb250cmlidXRl
ZCBieSBKZWxsZSBaaWpsc3RyYSBpbiA6Z2g6YDkwNTAwYC4pDQogDQpAQCAtMTE5Nyw3ICsxMTk3
LDcgQEAgRm9yIG1ham9yIGNoYW5nZXMsIHNlZSA6cmVmOmBuZXctZmVhdC1yZWxhdGVkLXR5cGUt
aGludHMtMzExYC4NCiAgIDpkYXRhOmB+dHlwaW5nLkNsYXNzVmFyYCBhbm5vdGF0aW9ucy4gKENv
bnRyaWJ1dGVkIGJ5IEdyZWdvcnkgQmVhdXJlZ2FyZA0KICAgaW4gOmdoOmA5MDcxMWAuKQ0KIA0K
LSogOmZ1bmM6YHR5cGluZy5ub190eXBlX2NoZWNrYCBubyBsb25nZXIgbW9kaWZpZXMgZXh0ZXJu
YWwgY2xhc3NlcyBhbmQgZnVuY3Rpb25zLg0KKyogOmRlY286YHR5cGluZy5ub190eXBlX2NoZWNr
YCBubyBsb25nZXIgbW9kaWZpZXMgZXh0ZXJuYWwgY2xhc3NlcyBhbmQgZnVuY3Rpb25zLg0KICAg
SXQgYWxzbyBub3cgY29ycmVjdGx5IG1hcmtzIGNsYXNzbWV0aG9kcyBhcyBub3QgdG8gYmUgdHlw
ZSBjaGVja2VkLiAoQ29udHJpYnV0ZWQNCiAgIGJ5IE5pa2l0YSBTb2JvbGV2IGluIDpnaDpgOTA3
MjlgLikNCiANCmRpZmYgLS1naXQgYS9Eb2Mvd2hhdHNuZXcvMy4xMi5yc3QgYi9Eb2Mvd2hhdHNu
ZXcvMy4xMi5yc3QNCmluZGV4IGRmNmNjOThlYWYxYzkwYS4uNzFmZTM1NGIyYzA4ZjA3IDEwMDY0
NA0KLS0tIGEvRG9jL3doYXRzbmV3LzMuMTIucnN0DQorKysgYi9Eb2Mvd2hhdHNuZXcvMy4xMi5y
c3QNCkBAIC0xNDYsNyArMTQ2LDcgQEAgTmV3IHR5cGluZyBmZWF0dXJlczoNCiANCiAqIDpyZWY6
YFBFUCA2OTIgPHdoYXRzbmV3MzEyLXBlcDY5Mj5gLCB1c2luZyA6Y2xhc3M6YH50eXBpbmcuVHlw
ZWREaWN0YCB0bw0KICAgYW5ub3RhdGUgOnRlcm06YCoqa3dhcmdzIDxhcmd1bWVudD5gDQotKiA6
cmVmOmBQRVAgNjk4IDx3aGF0c25ldzMxMi1wZXA2OTg+YCwgOmZ1bmM6YHR5cGluZy5vdmVycmlk
ZWAgZGVjb3JhdG9yDQorKiA6cmVmOmBQRVAgNjk4IDx3aGF0c25ldzMxMi1wZXA2OTg+YCwgOmRl
Y286YHR5cGluZy5vdmVycmlkZWAgZGVjb3JhdG9yDQogDQogSW1wb3J0YW50IGRlcHJlY2F0aW9u
cywgcmVtb3ZhbHMgb3IgcmVzdHJpY3Rpb25zOg0KIA0KQEAgLTUxMSw3ICs1MTEsNyBAQCBTZWUg
OnBlcDpgNjkyYCBmb3IgbW9yZSBkZXRhaWxzLg0KIFBFUCA2OTg6IE92ZXJyaWRlIERlY29yYXRv
ciBmb3IgU3RhdGljIFR5cGluZw0KIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQ0KIA0KLUEgbmV3IGRlY29yYXRvciA6ZnVuYzpgdHlwaW5nLm92ZXJyaWRlYCBo
YXMgYmVlbiBhZGRlZCB0byB0aGUgOm1vZDpgdHlwaW5nYA0KK0EgbmV3IGRlY29yYXRvciA6ZGVj
bzpgdHlwaW5nLm92ZXJyaWRlYCBoYXMgYmVlbiBhZGRlZCB0byB0aGUgOm1vZDpgdHlwaW5nYA0K
IG1vZHVsZS4gSXQgaW5kaWNhdGVzIHRvIHR5cGUgY2hlY2tlcnMgdGhhdCB0aGUgbWV0aG9kIGlz
IGludGVuZGVkIHRvIG92ZXJyaWRlDQogYSBtZXRob2QgaW4gYSBzdXBlcmNsYXNzLiBUaGlzIGFs
bG93cyB0eXBlIGNoZWNrZXJzIHRvIGNhdGNoIG1pc3Rha2VzIHdoZXJlDQogYSBtZXRob2QgdGhh
dCBpcyBpbnRlbmRlZCB0byBvdmVycmlkZSBzb21ldGhpbmcgaW4gYSBiYXNlIGNsYXNzDQpAQCAt
MTAyMSw3ICsxMDIxLDcgQEAgdHlwaW5nDQogICBgYF9fb3JpZ19iYXNlc19fYGAgYXR0cmlidXRl
LiAoQ29udHJpYnV0ZWQgYnkgQWRyaWFuIEdhcmNpYSBCYWRhcmFjY28gaW4NCiAgIDpnaDpgMTAz
Njk5YC4pDQogDQotKiBBZGQgYGBmcm96ZW5fZGVmYXVsdGBgIHBhcmFtZXRlciB0byA6ZnVuYzpg
dHlwaW5nLmRhdGFjbGFzc190cmFuc2Zvcm1gLg0KKyogQWRkIGBgZnJvemVuX2RlZmF1bHRgYCBw
YXJhbWV0ZXIgdG8gOmRlY286YHR5cGluZy5kYXRhY2xhc3NfdHJhbnNmb3JtYC4NCiAgIChDb250
cmlidXRlZCBieSBFcmlrIERlIEJvbnRlIGluIDpnaDpgOTk5NTdgLikNCiANCiB1bmljb2RlZGF0
YQ0KQEAgLTE3NDcsNyArMTc0Nyw3IEBAIENoYW5nZXMgaW4gdGhlIFB5dGhvbiBBUEkNCiAgIGFy
b3VuZCBwcm9jZXNzLWdsb2JhbCByZXNvdXJjZXMsIHdoaWNoIGFyZSBiZXN0IG1hbmFnZWQgZnJv
bSB0aGUgbWFpbiBpbnRlcnByZXRlci4NCiAgIChDb250cmlidXRlZCBieSBEb25naGVlIE5hIGlu
IDpnaDpgOTkxMjdgLikNCiANCi0qIFRoZSB1bmRvY3VtZW50ZWQgbG9ja2luZyBiZWhhdmlvciBv
ZiA6ZnVuYzpgfmZ1bmN0b29scy5jYWNoZWRfcHJvcGVydHlgDQorKiBUaGUgdW5kb2N1bWVudGVk
IGxvY2tpbmcgYmVoYXZpb3Igb2YgOmRlY286YH5mdW5jdG9vbHMuY2FjaGVkX3Byb3BlcnR5YA0K
ICAgaXMgcmVtb3ZlZCwgYmVjYXVzZSBpdCBsb2NrZWQgYWNyb3NzIGFsbCBpbnN0YW5jZXMgb2Yg
dGhlIGNsYXNzLCBsZWFkaW5nIHRvIGhpZ2gNCiAgIGxvY2sgY29udGVudGlvbi4gVGhpcyBtZWFu
cyB0aGF0IGEgY2FjaGVkIHByb3BlcnR5IGdldHRlciBmdW5jdGlvbiBjb3VsZCBub3cgcnVuDQog
ICBtb3JlIHRoYW4gb25jZSBmb3IgYSBzaW5nbGUgaW5zdGFuY2UsIGlmIHR3byB0aHJlYWRzIHJh
Y2UuIEZvciBtb3N0IHNpbXBsZQ0KZGlmZiAtLWdpdCBhL0RvYy93aGF0c25ldy8zLjEzLnJzdCBi
L0RvYy93aGF0c25ldy8zLjEzLnJzdA0KaW5kZXggZjQ0ODliZmExYjc0ZTg1Li40MzZiNjJkZmM2
MzM0MDYgMTAwNjQ0DQotLS0gYS9Eb2Mvd2hhdHNuZXcvMy4xMy5yc3QNCisrKyBiL0RvYy93aGF0
c25ldy8zLjEzLnJzdA0KQEAgLTE5OTQsNyArMTk5NCw3IEBAIE5ldyBEZXByZWNhdGlvbnMNCiAg
ICAgdXNlIGBgY2xhc3MgVEQoVHlwZWREaWN0KTogcGFzc2BgIG9yIGBgVEQgPSBUeXBlZERpY3Qo
IlREIiwge30pYGAuDQogICAgIChDb250cmlidXRlZCBieSBBbGV4IFdheWdvb2QgaW4gOmdoOmAx
MDU1NjZgIGFuZCA6Z2g6YDEwNTU3MGAuKQ0KIA0KLSAgKiBEZXByZWNhdGUgdGhlIDpmdW5jOmAh
dHlwaW5nLm5vX3R5cGVfY2hlY2tfZGVjb3JhdG9yYCBkZWNvcmF0b3IgZnVuY3Rpb24sDQorICAq
IERlcHJlY2F0ZSB0aGUgOmRlY286YCF0eXBpbmcubm9fdHlwZV9jaGVja19kZWNvcmF0b3JgIGRl
Y29yYXRvciBmdW5jdGlvbiwNCiAgICAgdG8gYmUgcmVtb3ZlZCBpbiBQeXRob24gMy4xNS4NCiAg
ICAgQWZ0ZXIgZWlnaHQgeWVhcnMgaW4gdGhlIDptb2Q6YHR5cGluZ2AgbW9kdWxlLA0KICAgICBp
dCBoYXMgeWV0IHRvIGJlIHN1cHBvcnRlZCBieSBhbnkgbWFqb3IgdHlwZSBjaGVja2VyLg0KZGlm
ZiAtLWdpdCBhL0RvYy93aGF0c25ldy8zLjE1LnJzdCBiL0RvYy93aGF0c25ldy8zLjE1LnJzdA0K
aW5kZXggOTljYzE3MzcyMzJlMjg5Li4yM2JmOTM3MTM5NGY5NjEgMTAwNjQ0DQotLS0gYS9Eb2Mv
d2hhdHNuZXcvMy4xNS5yc3QNCisrKyBiL0RvYy93aGF0c25ldy8zLjE1LnJzdA0KQEAgLTIxNjIs
NyArMjE2Miw3IEBAIHR5cGluZw0KICAgb3IgYGBURCA9IFR5cGVkRGljdCgiVEQiLCB7fSlgYCBp
bnN0ZWFkLg0KICAgKENvbnRyaWJ1dGVkIGJ5IELDqW7DqWRpa3QgVHJhbiBpbiA6Z2g6YDEzMzgy
M2AuKQ0KIA0KLSogRGVwcmVjYXRlZCA6ZnVuYzpgIXR5cGluZy5ub190eXBlX2NoZWNrX2RlY29y
YXRvcmAgaGFzIGJlZW4gcmVtb3ZlZC4NCisqIERlcHJlY2F0ZWQgOmRlY286YCF0eXBpbmcubm9f
dHlwZV9jaGVja19kZWNvcmF0b3JgIGhhcyBiZWVuIHJlbW92ZWQuDQogICAoQ29udHJpYnV0ZWQg
YnkgTmlraXRhIFNvYm9sZXYgaW4gOmdoOmAxMzM2MDFgLikNCiANCiANCmRpZmYgLS1naXQgYS9E
b2Mvd2hhdHNuZXcvMy4yLnJzdCBiL0RvYy93aGF0c25ldy8zLjIucnN0DQppbmRleCA0OGM0NjFk
ODkxZTg2MTQuLmM2MWViNjU5Y2NjMGY2MiAxMDA2NDQNCi0tLSBhL0RvYy93aGF0c25ldy8zLjIu
cnN0DQorKysgYi9Eb2Mvd2hhdHNuZXcvMy4yLnJzdA0KQEAgLTc1Niw3ICs3NTYsNyBAQCBmdW5j
dG9vbHMNCiAtLS0tLS0tLS0NCiANCiAqIFRoZSA6bW9kOmBmdW5jdG9vbHNgIG1vZHVsZSBpbmNs
dWRlcyBhIG5ldyBkZWNvcmF0b3IgZm9yIGNhY2hpbmcgZnVuY3Rpb24NCi0gIGNhbGxzLiAgOmZ1
bmM6YGZ1bmN0b29scy5scnVfY2FjaGVgIGNhbiBzYXZlIHJlcGVhdGVkIHF1ZXJpZXMgdG8gYW4g
ZXh0ZXJuYWwNCisgIGNhbGxzLiAgOmRlY286YGZ1bmN0b29scy5scnVfY2FjaGVgIGNhbiBzYXZl
IHJlcGVhdGVkIHF1ZXJpZXMgdG8gYW4gZXh0ZXJuYWwNCiAgIHJlc291cmNlIHdoZW5ldmVyIHRo
ZSByZXN1bHRzIGFyZSBleHBlY3RlZCB0byBiZSB0aGUgc2FtZS4NCiANCiAgIEZvciBleGFtcGxl
LCBhZGRpbmcgYSBjYWNoaW5nIGRlY29yYXRvciB0byBhIGRhdGFiYXNlIHF1ZXJ5IGZ1bmN0aW9u
IGNhbiBzYXZlDQpAQCAtNzg5LDcgKzc4OSw3IEBAIGZ1bmN0b29scw0KICAgPGh0dHBzOi8vY29k
ZS5hY3RpdmVzdGF0ZS5jb20vcmVjaXBlcy81Nzc0Nzktc2ltcGxlLWNhY2hpbmctZGVjb3JhdG9y
Lz5gX1wsIDppc3N1ZTpgMTA1ODZgLCBhbmQNCiAgIDppc3N1ZTpgMTA1OTNgLikNCiANCi0qIFRo
ZSA6ZnVuYzpgZnVuY3Rvb2xzLndyYXBzYCBkZWNvcmF0b3Igbm93IGFkZHMgYSA6YXR0cjpgX193
cmFwcGVkX19gIGF0dHJpYnV0ZQ0KKyogVGhlIDpkZWNvOmBmdW5jdG9vbHMud3JhcHNgIGRlY29y
YXRvciBub3cgYWRkcyBhIDphdHRyOmBfX3dyYXBwZWRfX2AgYXR0cmlidXRlDQogICBwb2ludGlu
ZyB0byB0aGUgb3JpZ2luYWwgY2FsbGFibGUgZnVuY3Rpb24uICBUaGlzIGFsbG93cyB3cmFwcGVk
IGZ1bmN0aW9ucyB0bw0KICAgYmUgaW50cm9zcGVjdGVkLiAgSXQgYWxzbyBjb3BpZXMgOmF0dHI6
YH5mdW5jdGlvbi5fX2Fubm90YXRpb25zX19gIGlmDQogICBkZWZpbmVkLiAgQW5kIG5vdyBpdCBh
bHNvIGdyYWNlZnVsbHkgc2tpcHMgb3ZlciBtaXNzaW5nIGF0dHJpYnV0ZXMgc3VjaCBhcw0KQEAg
LTgwNSwxMSArODA1LDExIEBAIGZ1bmN0b29scw0KICAgOmlzc3VlOmA4ODE0YC4pDQogDQogKiBU
byBoZWxwIHdyaXRlIGNsYXNzZXMgd2l0aCByaWNoIGNvbXBhcmlzb24gbWV0aG9kcywgYSBuZXcg
ZGVjb3JhdG9yDQotICA6ZnVuYzpgZnVuY3Rvb2xzLnRvdGFsX29yZGVyaW5nYCB3aWxsIHVzZSBl
eGlzdGluZyBlcXVhbGl0eSBhbmQgaW5lcXVhbGl0eQ0KKyAgOmRlY286YGZ1bmN0b29scy50b3Rh
bF9vcmRlcmluZ2Agd2lsbCB1c2UgZXhpc3RpbmcgZXF1YWxpdHkgYW5kIGluZXF1YWxpdHkNCiAg
IG1ldGhvZHMgdG8gZmlsbCBpbiB0aGUgcmVtYWluaW5nIG1ldGhvZHMuDQogDQogICBGb3IgZXhh
bXBsZSwgc3VwcGx5aW5nICpfX2VxX18qIGFuZCAqX19sdF9fKiB3aWxsIGVuYWJsZQ0KLSAgOmZ1
bmM6YH5mdW5jdG9vbHMudG90YWxfb3JkZXJpbmdgIHRvIGZpbGwtaW4gKl9fbGVfXyosICpfX2d0
X18qIGFuZCAqX19nZV9fKjo6DQorICA6ZGVjbzpgfmZ1bmN0b29scy50b3RhbF9vcmRlcmluZ2Ag
dG8gZmlsbC1pbiAqX19sZV9fKiwgKl9fZ3RfXyogYW5kICpfX2dlX18qOjoNCiANCiAgICAgQHRv
dGFsX29yZGVyaW5nDQogICAgIGNsYXNzIFN0dWRlbnQ6DQpAQCAtMTA5NywxMSArMTA5NywxMSBA
QCBsb2dhcml0aG0gb2YgdGhlIGdhbW1hIGZ1bmN0aW9uOg0KIGFiYw0KIC0tLQ0KIA0KLVRoZSA6
bW9kOmBhYmNgIG1vZHVsZSBub3cgc3VwcG9ydHMgOmZ1bmM6YH5hYmMuYWJzdHJhY3RjbGFzc21l
dGhvZGAgYW5kDQotOmZ1bmM6YH5hYmMuYWJzdHJhY3RzdGF0aWNtZXRob2RgLg0KK1RoZSA6bW9k
OmBhYmNgIG1vZHVsZSBub3cgc3VwcG9ydHMgOmRlY286YH5hYmMuYWJzdHJhY3RjbGFzc21ldGhv
ZGAgYW5kDQorOmRlY286YH5hYmMuYWJzdHJhY3RzdGF0aWNtZXRob2RgLg0KIA0KIFRoZXNlIHRv
b2xzIG1ha2UgaXQgcG9zc2libGUgdG8gZGVmaW5lIGFuIDp0ZXJtOmBhYnN0cmFjdCBiYXNlIGNs
YXNzYCB0aGF0DQotcmVxdWlyZXMgYSBwYXJ0aWN1bGFyIDpmdW5jOmBjbGFzc21ldGhvZGAgb3Ig
OmZ1bmM6YHN0YXRpY21ldGhvZGAgdG8gYmUNCityZXF1aXJlcyBhIHBhcnRpY3VsYXIgOmRlY286
YGNsYXNzbWV0aG9kYCBvciA6ZGVjbzpgc3RhdGljbWV0aG9kYCB0byBiZQ0KIGltcGxlbWVudGVk
OjoNCiANCiAgICAgY2xhc3MgVGVtcGVyYXR1cmUobWV0YWNsYXNzPWFiYy5BQkNNZXRhKToNCkBA
IC0xMTU1LDcgKzExNTUsNyBAQCBzZWxmLXJlZmVyZW5jZSBieSBkaXNwbGF5aW5nICIuLi4iIGlu
IHRoZSByZWN1cnNpdmUgcGFydCBvZiB0aGUgcmVwcmVzZW50YXRpb24NCiBzdHJpbmcuDQogDQog
VG8gaGVscCB3cml0ZSBzdWNoIDptZXRoOmB+b2JqZWN0Ll9fcmVwcl9fYCBtZXRob2RzLCB0aGUg
Om1vZDpgcmVwcmxpYmAgbW9kdWxlIGhhcyBhIG5ldw0KLWRlY29yYXRvciwgOmZ1bmM6YH5yZXBy
bGliLnJlY3Vyc2l2ZV9yZXByYCwgZm9yIGRldGVjdGluZyByZWN1cnNpdmUgY2FsbHMgdG8NCitk
ZWNvcmF0b3IsIDpkZWNvOmB+cmVwcmxpYi5yZWN1cnNpdmVfcmVwcmAsIGZvciBkZXRlY3Rpbmcg
cmVjdXJzaXZlIGNhbGxzIHRvDQogOm1ldGg6YCFfX3JlcHJfX2AgYW5kIHN1YnN0aXR1dGluZyBh
IHBsYWNlaG9sZGVyIHN0cmluZyBpbnN0ZWFkOjoNCiANCiAgICAgICAgID4+PiBjbGFzcyBNeUxp
c3QobGlzdCk6DQpAQCAtMTI0MSw3ICsxMjQxLDcgQEAgVGhlcmUgaXMgYSBuZXcgYW5kIHNsaWdo
dGx5IG1pbmQtYmxvd2luZyB0b29sDQogOnRlcm06YGNvbnRleHQgbWFuYWdlcmAgdGhhdCBkb2Vz
IGRvdWJsZSBkdXR5IGFzIGEgZnVuY3Rpb24gZGVjb3JhdG9yLg0KIA0KIEFzIGEgY29udmVuaWVu
Y2UsIHRoaXMgbmV3IGZ1bmN0aW9uYWxpdHkgaXMgdXNlZCBieQ0KLTpmdW5jOmB+Y29udGV4dGxp
Yi5jb250ZXh0bWFuYWdlcmAgc28gdGhhdCBubyBleHRyYSBlZmZvcnQgaXMgbmVlZGVkIHRvIHN1
cHBvcnQNCis6ZGVjbzpgfmNvbnRleHRsaWIuY29udGV4dG1hbmFnZXJgIHNvIHRoYXQgbm8gZXh0
cmEgZWZmb3J0IGlzIG5lZWRlZCB0byBzdXBwb3J0DQogYm90aCByb2xlcy4NCiANCiBUaGUgYmFz
aWMgaWRlYSBpcyB0aGF0IGJvdGggY29udGV4dCBtYW5hZ2VycyBhbmQgZnVuY3Rpb24gZGVjb3Jh
dG9ycyBjYW4gYmUgdXNlZA0KQEAgLTEyNTMsNyArMTI1Myw3IEBAIHdyaXRlIGEgcHJlLWFjdGlv
biBvciBwb3N0LWFjdGlvbiB3cmFwcGVyIHRoYXQgY2FuIGJlIHVzZWQgaW4gZWl0aGVyIHJvbGUu
DQogRm9yIGV4YW1wbGUsIGl0IGlzIHNvbWV0aW1lcyB1c2VmdWwgdG8gd3JhcCBmdW5jdGlvbnMg
b3IgZ3JvdXBzIG9mIHN0YXRlbWVudHMNCiB3aXRoIGEgbG9nZ2VyIHRoYXQgY2FuIHRyYWNrIHRo
ZSB0aW1lIG9mIGVudHJ5IGFuZCB0aW1lIG9mIGV4aXQuICBSYXRoZXIgdGhhbg0KIHdyaXRpbmcg
Ym90aCBhIGZ1bmN0aW9uIGRlY29yYXRvciBhbmQgYSBjb250ZXh0IG1hbmFnZXIgZm9yIHRoZSB0
YXNrLCB0aGUNCi06ZnVuYzpgfmNvbnRleHRsaWIuY29udGV4dG1hbmFnZXJgIHByb3ZpZGVzIGJv
dGggY2FwYWJpbGl0aWVzIGluIGEgc2luZ2xlDQorOmRlY286YH5jb250ZXh0bGliLmNvbnRleHRt
YW5hZ2VyYCBwcm92aWRlcyBib3RoIGNhcGFiaWxpdGllcyBpbiBhIHNpbmdsZQ0KIGRlZmluaXRp
b246Og0KIA0KICAgICBmcm9tIGNvbnRleHRsaWIgaW1wb3J0IGNvbnRleHRtYW5hZ2VyDQpkaWZm
IC0tZ2l0IGEvRG9jL3doYXRzbmV3LzMuMy5yc3QgYi9Eb2Mvd2hhdHNuZXcvMy4zLnJzdA0KaW5k
ZXggMWJiNzliY2UyYzNlOTcyLi4wMmZkMjY0ZTUzZTFiMDYgMTAwNjQ0DQotLS0gYS9Eb2Mvd2hh
dHNuZXcvMy4zLnJzdA0KKysrIGIvRG9jL3doYXRzbmV3LzMuMy5yc3QNCkBAIC05MTksMTIgKzkx
OSwxMiBAQCBhYnN0cmFjdCBtZXRob2RzLiBUaGUgcmVjb21tZW5kZWQgYXBwcm9hY2ggdG8gZGVj
bGFyaW5nIGFic3RyYWN0IGRlc2NyaXB0b3JzIGlzDQogbm93IHRvIHByb3ZpZGUgOmF0dHI6YCFf
X2lzYWJzdHJhY3RtZXRob2RfX2AgYXMgYSBkeW5hbWljYWxseSB1cGRhdGVkDQogcHJvcGVydHku
IFRoZSBidWlsdC1pbiBkZXNjcmlwdG9ycyBoYXZlIGJlZW4gdXBkYXRlZCBhY2NvcmRpbmdseS4N
CiANCi0qIDpjbGFzczpgYWJjLmFic3RyYWN0cHJvcGVydHlgIGhhcyBiZWVuIGRlcHJlY2F0ZWQs
IHVzZSA6Y2xhc3M6YHByb3BlcnR5YA0KLSAgd2l0aCA6ZnVuYzpgYWJjLmFic3RyYWN0bWV0aG9k
YCBpbnN0ZWFkLg0KLSogOmNsYXNzOmBhYmMuYWJzdHJhY3RjbGFzc21ldGhvZGAgaGFzIGJlZW4g
ZGVwcmVjYXRlZCwgdXNlDQotICA6Y2xhc3M6YGNsYXNzbWV0aG9kYCB3aXRoIDpmdW5jOmBhYmMu
YWJzdHJhY3RtZXRob2RgIGluc3RlYWQuDQotKiA6Y2xhc3M6YGFiYy5hYnN0cmFjdHN0YXRpY21l
dGhvZGAgaGFzIGJlZW4gZGVwcmVjYXRlZCwgdXNlDQotICA6Y2xhc3M6YHN0YXRpY21ldGhvZGAg
d2l0aCA6ZnVuYzpgYWJjLmFic3RyYWN0bWV0aG9kYCBpbnN0ZWFkLg0KKyogOmRlY286YGFiYy5h
YnN0cmFjdHByb3BlcnR5YCBoYXMgYmVlbiBkZXByZWNhdGVkLCB1c2UgOmRlY286YHByb3BlcnR5
YA0KKyAgd2l0aCA6ZGVjbzpgYWJjLmFic3RyYWN0bWV0aG9kYCBpbnN0ZWFkLg0KKyogOmRlY286
YGFiYy5hYnN0cmFjdGNsYXNzbWV0aG9kYCBoYXMgYmVlbiBkZXByZWNhdGVkLCB1c2UNCisgIDpk
ZWNvOmBjbGFzc21ldGhvZGAgd2l0aCA6ZGVjbzpgYWJjLmFic3RyYWN0bWV0aG9kYCBpbnN0ZWFk
Lg0KKyogOmRlY286YGFiYy5hYnN0cmFjdHN0YXRpY21ldGhvZGAgaGFzIGJlZW4gZGVwcmVjYXRl
ZCwgdXNlDQorICA6ZGVjbzpgc3RhdGljbWV0aG9kYCB3aXRoIDpkZWNvOmBhYmMuYWJzdHJhY3Rt
ZXRob2RgIGluc3RlYWQuDQogDQogKENvbnRyaWJ1dGVkIGJ5IERhcnJlbiBEYWxlIGluIDppc3N1
ZTpgMTE2MTBgLikNCiANCkBAIC0xMzkwLDcgKzEzOTAsNyBAQCBmdHBsaWINCiBmdW5jdG9vbHMN
CiAtLS0tLS0tLS0NCiANCi1UaGUgOmZ1bmM6YGZ1bmN0b29scy5scnVfY2FjaGVgIGRlY29yYXRv
ciBub3cgYWNjZXB0cyBhIGBgdHlwZWRgYCBrZXl3b3JkDQorVGhlIDpkZWNvOmBmdW5jdG9vbHMu
bHJ1X2NhY2hlYCBkZWNvcmF0b3Igbm93IGFjY2VwdHMgYSBgYHR5cGVkYGAga2V5d29yZA0KIGFy
Z3VtZW50ICh0aGF0IGRlZmF1bHRzIHRvIGBgRmFsc2VgYCB0byBlbnN1cmUgdGhhdCBpdCBjYWNo
ZXMgdmFsdWVzIG9mDQogZGlmZmVyZW50IHR5cGVzIHRoYXQgY29tcGFyZSBlcXVhbCBpbiBzZXBh
cmF0ZSBjYWNoZSBzbG90cy4gIChDb250cmlidXRlZA0KIGJ5IFJheW1vbmQgSGV0dGluZ2VyIGlu
IDppc3N1ZTpgMTMyMjdgLikNCkBAIC0yMjQ0LDEyICsyMjQ0LDEyIEBAIERlcHJlY2F0ZWQgUHl0
aG9uIG1vZHVsZXMsIGZ1bmN0aW9ucyBhbmQgbWV0aG9kcw0KICogVGhlIDpmdW5jOmAhb3Muc3Rh
dF9mbG9hdF90aW1lc2AgZnVuY3Rpb24gaXMgZGVwcmVjYXRlZC4NCiAqIDptb2Q6YGFiY2AgbW9k
dWxlOg0KIA0KLSAgKiA6Y2xhc3M6YGFiYy5hYnN0cmFjdHByb3BlcnR5YCBoYXMgYmVlbiBkZXBy
ZWNhdGVkLCB1c2UgOmNsYXNzOmBwcm9wZXJ0eWANCi0gICAgd2l0aCA6ZnVuYzpgYWJjLmFic3Ry
YWN0bWV0aG9kYCBpbnN0ZWFkLg0KLSAgKiA6Y2xhc3M6YGFiYy5hYnN0cmFjdGNsYXNzbWV0aG9k
YCBoYXMgYmVlbiBkZXByZWNhdGVkLCB1c2UNCi0gICAgOmNsYXNzOmBjbGFzc21ldGhvZGAgd2l0
aCA6ZnVuYzpgYWJjLmFic3RyYWN0bWV0aG9kYCBpbnN0ZWFkLg0KLSAgKiA6Y2xhc3M6YGFiYy5h
YnN0cmFjdHN0YXRpY21ldGhvZGAgaGFzIGJlZW4gZGVwcmVjYXRlZCwgdXNlDQotICAgIDpjbGFz
czpgc3RhdGljbWV0aG9kYCB3aXRoIDpmdW5jOmBhYmMuYWJzdHJhY3RtZXRob2RgIGluc3RlYWQu
DQorICAqIDpkZWNvOmBhYmMuYWJzdHJhY3Rwcm9wZXJ0eWAgaGFzIGJlZW4gZGVwcmVjYXRlZCwg
dXNlIDpkZWNvOmBwcm9wZXJ0eWANCisgICAgd2l0aCA6ZGVjbzpgYWJjLmFic3RyYWN0bWV0aG9k
YCBpbnN0ZWFkLg0KKyAgKiA6ZGVjbzpgYWJjLmFic3RyYWN0Y2xhc3NtZXRob2RgIGhhcyBiZWVu
IGRlcHJlY2F0ZWQsIHVzZQ0KKyAgICA6ZGVjbzpgY2xhc3NtZXRob2RgIHdpdGggOmRlY286YGFi
Yy5hYnN0cmFjdG1ldGhvZGAgaW5zdGVhZC4NCisgICogOmRlY286YGFiYy5hYnN0cmFjdHN0YXRp
Y21ldGhvZGAgaGFzIGJlZW4gZGVwcmVjYXRlZCwgdXNlDQorICAgIDpkZWNvOmBzdGF0aWNtZXRo
b2RgIHdpdGggOmRlY286YGFiYy5hYnN0cmFjdG1ldGhvZGAgaW5zdGVhZC4NCiANCiAqIDptb2Q6
YGltcG9ydGxpYmAgcGFja2FnZToNCiANCmRpZmYgLS1naXQgYS9Eb2Mvd2hhdHNuZXcvMy40LnJz
dCBiL0RvYy93aGF0c25ldy8zLjQucnN0DQppbmRleCBhMzkwMjExZGRiNTAyMTUuLjAwNjc0OTFj
NTY5Y2MwNSAxMDA2NDQNCi0tLSBhL0RvYy93aGF0c25ldy8zLjQucnN0DQorKysgYi9Eb2Mvd2hh
dHNuZXcvMy40LnJzdA0KQEAgLTg1OCw3ICs4NTgsNyBAQCB0byBiZWhhdmUgbGlrZSBub3JtYWwg
aW5zdGFuY2UgbWV0aG9kcyB3aGVuIGluY2x1ZGVkIGluIGEgY2xhc3MgZGVmaW5pdGlvbi4NCiAN
CiAuLiBfd2hhdHNuZXctc2luZ2xlZGlzcGF0Y2g6DQogDQotVGhlIG5ldyA6ZnVuYzpgfmZ1bmN0
b29scy5zaW5nbGVkaXNwYXRjaGAgZGVjb3JhdG9yIGJyaW5ncyBzdXBwb3J0IGZvcg0KK1RoZSBu
ZXcgOmRlY286YH5mdW5jdG9vbHMuc2luZ2xlZGlzcGF0Y2hgIGRlY29yYXRvciBicmluZ3Mgc3Vw
cG9ydCBmb3INCiBzaW5nbGUtZGlzcGF0Y2ggZ2VuZXJpYyBmdW5jdGlvbnMgdG8gdGhlIFB5dGhv
biBzdGFuZGFyZCBsaWJyYXJ5LiBXaGVyZQ0KIG9iamVjdCBvcmllbnRlZCBwcm9ncmFtbWluZyBm
b2N1c2VzIG9uIGdyb3VwaW5nIG11bHRpcGxlIG9wZXJhdGlvbnMgb24gYQ0KIGNvbW1vbiBzZXQg
b2YgZGF0YSBpbnRvIGEgY2xhc3MsIGEgZ2VuZXJpYyBmdW5jdGlvbiBmb2N1c2VzIG9uIGdyb3Vw
aW5nDQpAQCAtODcwLDcgKzg3MCw3IEBAIG11bHRpcGxlIGltcGxlbWVudGF0aW9ucyBvZiBhbiBv
cGVyYXRpb24gdGhhdCBhbGxvd3MgaXQgdG8gd29yayB3aXRoDQogICAgOnBlcDpgNDQzYCAtLSBT
aW5nbGUtZGlzcGF0Y2ggZ2VuZXJpYyBmdW5jdGlvbnMNCiAgICAgICBQRVAgd3JpdHRlbiBhbmQg
aW1wbGVtZW50ZWQgYnkgxYF1a2FzeiBMYW5nYS4NCiANCi06ZnVuYzpgfmZ1bmN0b29scy50b3Rh
bF9vcmRlcmluZ2Agbm93IHN1cHBvcnRzIGEgcmV0dXJuIHZhbHVlIG9mDQorOmRlY286YH5mdW5j
dG9vbHMudG90YWxfb3JkZXJpbmdgIG5vdyBzdXBwb3J0cyBhIHJldHVybiB2YWx1ZSBvZg0KIDpk
YXRhOmBOb3RJbXBsZW1lbnRlZGAgZnJvbSB0aGUgdW5kZXJseWluZyBjb21wYXJpc29uIGZ1bmN0
aW9uLiAgKENvbnRyaWJ1dGVkDQogYnkgS2F0aWUgTWlsbGVyIGluIDppc3N1ZTpgMTAwNDJgLikN
CiANCkBAIC0xMDI5LDcgKzEwMjksNyBAQCBpbmZvcm1hdGlvbiBmb3IgbW9kdWxlcywgY2xhc3Nl
cyBhbmQgZnVuY3Rpb25zLiAgKENvbnRyaWJ1dGVkIGJ5IENsYXVkaXUgUG9wYQ0KIGFuZCBOaWNr
IENvZ2hsYW4gaW4gOmlzc3VlOmAxODYyNmAuKQ0KIA0KIDpmdW5jOmB+aW5zcGVjdC51bndyYXBg
IG1ha2VzIGl0IGVhc3kgdG8gdW5yYXZlbCB3cmFwcGVyIGZ1bmN0aW9uIGNoYWlucw0KLWNyZWF0
ZWQgYnkgOmZ1bmM6YGZ1bmN0b29scy53cmFwc2AgKGFuZCBhbnkgb3RoZXIgQVBJIHRoYXQgc2V0
cyB0aGUNCitjcmVhdGVkIGJ5IDpkZWNvOmBmdW5jdG9vbHMud3JhcHNgIChhbmQgYW55IG90aGVy
IEFQSSB0aGF0IHNldHMgdGhlDQogYGBfX3dyYXBwZWRfX2BgIGF0dHJpYnV0ZSBvbiBhIHdyYXBw
ZXIgZnVuY3Rpb24pLiAgKENvbnRyaWJ1dGVkIGJ5DQogRGFuaWVsIFVyYmFuLCBBYXJvbiBJbGVz
IGFuZCBOaWNrIENvZ2hsYW4gaW4gOmlzc3VlOmAxMzI2NmAuKQ0KIA0KQEAgLTIzMTcsNyArMjMx
Nyw3IEBAIENoYW5nZXMgaW4gdGhlIFB5dGhvbiBBUEkNCiAgIHdpc2ggdG8gY29udGludWUgdG8g
aWdub3JlIHN5bnRheCBvciBkZWNvZGluZyBpc3N1ZXMsIGNhdGNoIGFsbCB0aHJlZQ0KICAgZXhj
ZXB0aW9ucyBub3cuDQogDQotKiA6ZnVuYzpgZnVuY3Rvb2xzLnVwZGF0ZV93cmFwcGVyYCBhbmQg
OmZ1bmM6YGZ1bmN0b29scy53cmFwc2Agbm93IGNvcnJlY3RseQ0KKyogOmZ1bmM6YGZ1bmN0b29s
cy51cGRhdGVfd3JhcHBlcmAgYW5kIDpkZWNvOmBmdW5jdG9vbHMud3JhcHNgIG5vdyBjb3JyZWN0
bHkNCiAgIHNldCB0aGUgYGBfX3dyYXBwZWRfX2BgIGF0dHJpYnV0ZSB0byB0aGUgZnVuY3Rpb24g
YmVpbmcgd3JhcHBlZCwgZXZlbiBpZg0KICAgdGhhdCBmdW5jdGlvbiBhbHNvIGhhZCBpdHMgYGBf
X3dyYXBwZWRfX2BgIGF0dHJpYnV0ZSBzZXQuIFRoaXMgbWVhbnMNCiAgIGBgX193cmFwcGVkX19g
YCBhdHRyaWJ1dGVzIG5vdyBjb3JyZWN0bHkgbGluayBhIHN0YWNrIG9mIGRlY29yYXRlZA0KZGlm
ZiAtLWdpdCBhL0RvYy93aGF0c25ldy8zLjUucnN0IGIvRG9jL3doYXRzbmV3LzMuNS5yc3QNCmlu
ZGV4IDYwMDlkZDhhNzFlZWE1Mi4uMjRhMmZmYmVmZDBjZmJhIDEwMDY0NA0KLS0tIGEvRG9jL3do
YXRzbmV3LzMuNS5yc3QNCisrKyBiL0RvYy93aGF0c25ldy8zLjUucnN0DQpAQCAtMTIxLDcgKzEy
MSw3IEBAIFNpZ25pZmljYW50IGltcHJvdmVtZW50cyBpbiB0aGUgc3RhbmRhcmQgbGlicmFyeToN
CiAgIDpyZWY6YGJldHRlciBhbmQgc2lnbmlmaWNhbnRseSBmYXN0ZXIgd2F5IDx3aGF0c25ldy1w
ZXAtNDcxPmANCiAgIG9mIGRpcmVjdG9yeSB0cmF2ZXJzYWwuDQogDQotKiA6ZnVuYzpgZnVuY3Rv
b2xzLmxydV9jYWNoZWAgaGFzIGJlZW4gbW9zdGx5DQorKiA6ZGVjbzpgZnVuY3Rvb2xzLmxydV9j
YWNoZWAgaGFzIGJlZW4gbW9zdGx5DQogICA6cmVmOmByZWltcGxlbWVudGVkIGluIEMgPHdoYXRz
bmV3LWxydWNhY2hlPmAsIHlpZWxkaW5nIG11Y2ggYmV0dGVyDQogICBwZXJmb3JtYW5jZS4NCiAN
CkBAIC0xMTQ4LDcgKzExNDgsNyBAQCBmdW5jdG9vbHMNCiANCiAuLiBfd2hhdHNuZXctbHJ1Y2Fj
aGU6DQogDQotTW9zdCBvZiB0aGUgOmZ1bmM6YH5mdW5jdG9vbHMubHJ1X2NhY2hlYCBtYWNoaW5l
cnkgaXMgbm93IGltcGxlbWVudGVkIGluIEMsIG1ha2luZw0KK01vc3Qgb2YgdGhlIDpkZWNvOmB+
ZnVuY3Rvb2xzLmxydV9jYWNoZWAgbWFjaGluZXJ5IGlzIG5vdyBpbXBsZW1lbnRlZCBpbiBDLCBt
YWtpbmcNCiBpdCBzaWduaWZpY2FudGx5IGZhc3Rlci4gIChDb250cmlidXRlZCBieSBNYXR0IEpv
aW5lciwgQWxleGV5IEthY2hheWV2LCBhbmQNCiBTZXJoaXkgU3RvcmNoYWthIGluIDppc3N1ZTpg
MTQzNzNgLikNCiANCkBAIC0yMTU4LDcgKzIxNTgsNyBAQCBpbXByb3ZlbWVudCBpbiBzb21lIGJl
bmNobWFya3MuDQogT2JqZWN0cyBmcm9tIHRoZSA6bW9kOmByYW5kb21gIG1vZHVsZSBub3cgdXNl
IDUwJSBsZXNzIG1lbW9yeSBvbiA2NC1iaXQNCiBidWlsZHMuICAoQ29udHJpYnV0ZWQgYnkgU2Vy
aGl5IFN0b3JjaGFrYSBpbiA6aXNzdWU6YDIzNDg4YC4pDQogDQotVGhlIDpmdW5jOmBwcm9wZXJ0
eWAgZ2V0dGVyIGNhbGxzIGFyZSB1cCB0byAyNSUgZmFzdGVyLg0KK1RoZSA6ZGVjbzpgcHJvcGVy
dHlgIGdldHRlciBjYWxscyBhcmUgdXAgdG8gMjUlIGZhc3Rlci4NCiAoQ29udHJpYnV0ZWQgYnkg
Sm9lIEpldm5payBpbiA6aXNzdWU6YDIzOTEwYC4pDQogDQogSW5zdGFudGlhdGlvbiBvZiA6Y2xh
c3M6YGZyYWN0aW9ucy5GcmFjdGlvbmAgaXMgbm93IHVwIHRvIDMwJSBmYXN0ZXIuDQpkaWZmIC0t
Z2l0IGEvRG9jL3doYXRzbmV3LzMuNy5yc3QgYi9Eb2Mvd2hhdHNuZXcvMy43LnJzdA0KaW5kZXgg
NWRkNDdjZGFjOTZhNWMwLi4zYWYzZTZlYzljYWMwOGYgMTAwNjQ0DQotLS0gYS9Eb2Mvd2hhdHNu
ZXcvMy43LnJzdA0KKysrIGIvRG9jL3doYXRzbmV3LzMuNy5yc3QNCkBAIC01NzEsNyArNTcxLDcg
QEAgZGVjaW1hbCBvcGVyYXRpb25zIHRvIHdvcmsgd2l0aCB0aGUgY29ycmVjdCBjb250ZXh0IGlu
IGFzeW5jaHJvbm91cyBjb2RlLg0KIGRhdGFjbGFzc2VzDQogLS0tLS0tLS0tLS0NCiANCi1UaGUg
bmV3IDpmdW5jOmB+ZGF0YWNsYXNzZXMuZGF0YWNsYXNzYCBkZWNvcmF0b3IgcHJvdmlkZXMgYSB3
YXkgdG8gZGVjbGFyZQ0KK1RoZSBuZXcgOmRlY286YH5kYXRhY2xhc3Nlcy5kYXRhY2xhc3NgIGRl
Y29yYXRvciBwcm92aWRlcyBhIHdheSB0byBkZWNsYXJlDQogKmRhdGEgY2xhc3NlcyouICBBIGRh
dGEgY2xhc3MgZGVzY3JpYmVzIGl0cyBhdHRyaWJ1dGVzIHVzaW5nIGNsYXNzIHZhcmlhYmxlDQog
YW5ub3RhdGlvbnMuICBJdHMgY29uc3RydWN0b3IgYW5kIG90aGVyIG1hZ2ljIG1ldGhvZHMsIHN1
Y2ggYXMNCiA6bWV0aDpgfm9iamVjdC5fX3JlcHJfX2AsIDptZXRoOmB+b2JqZWN0Ll9fZXFfX2As
IGFuZA0KQEAgLTgzMCw3ICs4MzAsNyBAQCBUaGUgbmV3IDpmdW5jOmB+Y29udGV4dGxpYi5udWxs
Y29udGV4dGAgaXMgYSBzaW1wbGVyIGFuZCBmYXN0ZXIgbm8tb3ANCiBjb250ZXh0IG1hbmFnZXIg
dGhhbiA6Y2xhc3M6YH5jb250ZXh0bGliLkV4aXRTdGFja2AuDQogKENvbnRyaWJ1dGVkIGJ5IEpl
c3NlLUJha2tlciBpbiA6aXNzdWU6YDEwMDQ5YC4pDQogDQotVGhlIG5ldyA6ZnVuYzpgfmNvbnRl
eHRsaWIuYXN5bmNjb250ZXh0bWFuYWdlcmAsDQorVGhlIG5ldyA6ZGVjbzpgfmNvbnRleHRsaWIu
YXN5bmNjb250ZXh0bWFuYWdlcmAsDQogOmNsYXNzOmB+Y29udGV4dGxpYi5BYnN0cmFjdEFzeW5j
Q29udGV4dE1hbmFnZXJgLCBhbmQNCiA6Y2xhc3M6YH5jb250ZXh0bGliLkFzeW5jRXhpdFN0YWNr
YCBoYXZlIGJlZW4gYWRkZWQgdG8NCiBjb21wbGVtZW50IHRoZWlyIHN5bmNocm9ub3VzIGNvdW50
ZXJwYXJ0cy4gIChDb250cmlidXRlZA0KQEAgLTkyMSw3ICs5MjEsNyBAQCByZXR1cm4gOmNvbnN0
OmBGYWxzZWAgaW5zdGVhZCBhbmQgYXJlIGRlcHJlY2F0ZWQuDQogZnVuY3Rvb2xzDQogLS0tLS0t
LS0tDQogDQotOmZ1bmM6YGZ1bmN0b29scy5zaW5nbGVkaXNwYXRjaGAgbm93IHN1cHBvcnRzIHJl
Z2lzdGVyaW5nIGltcGxlbWVudGF0aW9ucw0KKzpkZWNvOmBmdW5jdG9vbHMuc2luZ2xlZGlzcGF0
Y2hgIG5vdyBzdXBwb3J0cyByZWdpc3RlcmluZyBpbXBsZW1lbnRhdGlvbnMNCiB1c2luZyB0eXBl
IGFubm90YXRpb25zLg0KIChDb250cmlidXRlZCBieSDFgXVrYXN6IExhbmdhIGluIDppc3N1ZTpg
MzIyMjdgLikNCiANCmRpZmYgLS1naXQgYS9Eb2Mvd2hhdHNuZXcvMy44LnJzdCBiL0RvYy93aGF0
c25ldy8zLjgucnN0DQppbmRleCA1MDc4ZmMzMGFjMTExZTQuLjQyZDk4ZmY5NGVjMGQxYiAxMDA2
NDQNCi0tLSBhL0RvYy93aGF0c25ldy8zLjgucnN0DQorKysgYi9Eb2Mvd2hhdHNuZXcvMy44LnJz
dA0KQEAgLTc2NCw3ICs3NjQsNyBAQCB0aGVzZSBhcmUgdGhlIGludmVyc2Ugb2YgZWFjaCBjbGFz
cydzIGBgaXNvY2FsZW5kYXJgYCBtZXRob2QuDQogZnVuY3Rvb2xzDQogLS0tLS0tLS0tDQogDQot
OmZ1bmM6YGZ1bmN0b29scy5scnVfY2FjaGVgIGNhbiBub3cgYmUgdXNlZCBhcyBhIHN0cmFpZ2h0
IGRlY29yYXRvciByYXRoZXINCis6ZGVjbzpgZnVuY3Rvb2xzLmxydV9jYWNoZWAgY2FuIG5vdyBi
ZSB1c2VkIGFzIGEgc3RyYWlnaHQgZGVjb3JhdG9yIHJhdGhlcg0KIHRoYW4gYXMgYSBmdW5jdGlv
biByZXR1cm5pbmcgYSBkZWNvcmF0b3IuICBTbyBib3RoIG9mIHRoZXNlIGFyZSBub3cgc3VwcG9y
dGVkOjoNCiANCiAgICAgQGxydV9jYWNoZQ0KQEAgLTc3Nyw3ICs3NzcsNyBAQCB0aGFuIGFzIGEg
ZnVuY3Rpb24gcmV0dXJuaW5nIGEgZGVjb3JhdG9yLiAgU28gYm90aCBvZiB0aGVzZSBhcmUgbm93
IHN1cHBvcnRlZDo6DQogDQogKENvbnRyaWJ1dGVkIGJ5IFJheW1vbmQgSGV0dGluZ2VyIGluIDpp
c3N1ZTpgMzY3NzJgLikNCiANCi1BZGRlZCBhIG5ldyA6ZnVuYzpgZnVuY3Rvb2xzLmNhY2hlZF9w
cm9wZXJ0eWAgZGVjb3JhdG9yLCBmb3IgY29tcHV0ZWQgcHJvcGVydGllcw0KK0FkZGVkIGEgbmV3
IDpkZWNvOmBmdW5jdG9vbHMuY2FjaGVkX3Byb3BlcnR5YCBkZWNvcmF0b3IsIGZvciBjb21wdXRl
ZCBwcm9wZXJ0aWVzDQogY2FjaGVkIGZvciB0aGUgbGlmZSBvZiB0aGUgaW5zdGFuY2UuIDo6DQog
DQogICAgaW1wb3J0IGZ1bmN0b29scw0KQEAgLTg5Myw3ICs4OTMsNyBAQCBpbnNwZWN0DQogVGhl
IDpmdW5jOmBpbnNwZWN0LmdldGRvY2AgZnVuY3Rpb24gY2FuIG5vdyBmaW5kIGRvY3N0cmluZ3Mg
Zm9yIGBgX19zbG90c19fYGANCiBpZiB0aGF0IGF0dHJpYnV0ZSBpcyBhIDpjbGFzczpgZGljdGAg
d2hlcmUgdGhlIHZhbHVlcyBhcmUgZG9jc3RyaW5ncy4NCiBUaGlzIHByb3ZpZGVzIGRvY3VtZW50
YXRpb24gb3B0aW9ucyBzaW1pbGFyIHRvIHdoYXQgd2UgYWxyZWFkeSBoYXZlDQotZm9yIDpmdW5j
OmBwcm9wZXJ0eWAsIDpmdW5jOmBjbGFzc21ldGhvZGAsIGFuZCA6ZnVuYzpgc3RhdGljbWV0aG9k
YDo6DQorZm9yIDpkZWNvOmBwcm9wZXJ0eWAsIDpkZWNvOmBjbGFzc21ldGhvZGAsIGFuZCA6ZGVj
bzpgc3RhdGljbWV0aG9kYDo6DQogDQogICBjbGFzcyBBdWRpb0NsaXA6DQogICAgICAgX19zbG90
c19fID0geydiaXRfcmF0ZSc6ICdleHByZXNzZWQgaW4ga2lsb2hlcnR6IHRvIG9uZSBkZWNpbWFs
IHBsYWNlJywNCkBAIC0xMzMzLDE0ICsxMzMzLDE0IEBAIFRoZSA6bW9kOmB0eXBpbmdgIG1vZHVs
ZSBpbmNvcnBvcmF0ZXMgc2V2ZXJhbCBuZXcgZmVhdHVyZXM6DQogICAgICAgICAgIC4uLg0KIA0K
ICogIkZpbmFsIiB2YXJpYWJsZXMsIGZ1bmN0aW9ucywgbWV0aG9kcyBhbmQgY2xhc3Nlcy4gIFNl
ZSA6cGVwOmA1OTFgLA0KLSAgOmNsYXNzOmB0eXBpbmcuRmluYWxgIGFuZCA6ZnVuYzpgdHlwaW5n
LmZpbmFsYC4NCisgIDpjbGFzczpgdHlwaW5nLkZpbmFsYCBhbmQgOmRlY286YHR5cGluZy5maW5h
bGAuDQogICBUaGUgZmluYWwgcXVhbGlmaWVyIGluc3RydWN0cyBhIHN0YXRpYyB0eXBlIGNoZWNr
ZXIgdG8gcmVzdHJpY3QNCiAgIHN1YmNsYXNzaW5nLCBvdmVycmlkaW5nLCBvciByZWFzc2lnbm1l
bnQ6Og0KIA0KICAgICAgIHBpOiBGaW5hbFtmbG9hdF0gPSAzLjE0MTU5MjY1MzYNCiANCiAqIFBy
b3RvY29sIGRlZmluaXRpb25zLiAgU2VlIDpwZXA6YDU0NGAsIDpjbGFzczpgdHlwaW5nLlByb3Rv
Y29sYCBhbmQNCi0gIDpmdW5jOmB0eXBpbmcucnVudGltZV9jaGVja2FibGVgLiAgU2ltcGxlIEFC
Q3MgbGlrZQ0KKyAgOmRlY286YHR5cGluZy5ydW50aW1lX2NoZWNrYWJsZWAuICBTaW1wbGUgQUJD
cyBsaWtlDQogICA6Y2xhc3M6YHR5cGluZy5TdXBwb3J0c0ludGAgYXJlIG5vdyBgYFByb3RvY29s
YGAgc3ViY2xhc3Nlcy4NCiANCiAqIE5ldyBwcm90b2NvbCBjbGFzcyA6Y2xhc3M6YHR5cGluZy5T
dXBwb3J0c0luZGV4YC4NCg0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18KUHl0aG9uLWNoZWNraW5zIG1haWxpbmcgbGlzdCAtLSBweXRob24tY2hlY2tpbnNA
cHl0aG9uLm9yZwpUbyB1bnN1YnNjcmliZSBzZW5kIGFuIGVtYWlsIHRvIHB5dGhvbi1jaGVja2lu
cy1sZWF2ZUBweXRob24ub3JnCmh0dHBzOi8vbWFpbC5weXRob24ub3JnL21haWxtYW4zLy9saXN0
cy9weXRob24tY2hlY2tpbnMucHl0aG9uLm9yZwpNZW1iZXIgYWRkcmVzczogcHl0aG9uLXB5dGhv
bi1jaGVja2luc0BtLmdtYW5lLW14Lm9yZwo=