ewoJVHlwZSAtIEZ1bmN0aW9uCglOYW1lIC0gTldUX1RyZW5kCglEZXNjIC0gVGhpcyBmdW5jdGlv
biBjcmVhdGVzIGEgVHJlbmQgc2lnbmFsIGJhc2VkIG9uIHR3byBNQSdzCgkJCSBXaGVyZSAxID0g
R28gTG9uZywgMCA9IE5vIFRyYWRlLCAtMSA9IEdvIFNob3J0CgkJCSBTcHJlYWQgPSBhIGdhcCBi
ZXR3ZWVuIHRoZSB0d28gTUEncy4gVGhlIHdpZGVyIHRoZSBTcHJlYWQgdGhlIG1vcmUgQmFyYndp
cmUvTm8gVHJhZGUgYXJlYQoJCQkJIAoJV3JpdHRlbiBieSBOZWlsIFdyaWdodHNvbiAKCglWZXJz
aW9uIAlEYXRlIAkJCVJlYXNvbiAKCTEJCQkxMi8wNC8yMDEyCVN0YXJ0IAp9CgppbnB1dHM6ICBM
b25nTUFMZW4oTnVtZXJpYyksU2hvcnRNQUxlbihOdW1lcmljKSxTcHJlYWQoTnVtZXJpYyksUHJp
Y2UoIE51bWVyaWMgKSwgTUFfVHlwZV9TRVRaKCBzdHJpbmcgKSA7ClZhcmlhYmxlczogIExvbmdN
QSggMCApICwgU2hvcnRNQSgwKSwgRGlyZWN0aW9uKDApLFZhcjEoMCk7CgkKSWYgTUFfVHlwZV9T
RVRaID0gIlMiIE9SIE1BX1R5cGVfU0VUWiA9ICJzIiB0aGVuCkJlZ2luIAoJTG9uZ01BID0gQXZl
cmFnZSggUHJpY2UsIExvbmdNQUxlbiApIDsKCVNob3J0TUEgPSBBdmVyYWdlKCBQcmljZSwgU2hv
cnRNQUxlbiApIDsKRW5kOwpJZiBNQV9UeXBlX1NFVFogPSAiRSIgT1IgTUFfVHlwZV9TRVRaID0g
ImUiIHRoZW4KQmVnaW4gCglMb25nTUEgPSB4QXZlcmFnZSggUHJpY2UsIExvbmdNQUxlbiApIDsK
CVNob3J0TUEgPSB4QXZlcmFnZSggUHJpY2UsIFNob3J0TUFMZW4gKSA7CkVuZDsKSWYgTUFfVHlw
ZV9TRVRaID0gIlQiIE9SIE1BX1R5cGVfU0VUWiA9ICJ0IiB0aGVuIApCZWdpbiAKCUxvbmdNQSA9
IFRFTUEoIFByaWNlLCBMb25nTUFMZW4gKSA7CglTaG9ydE1BID0gVEVNQSggUHJpY2UsIFNob3J0
TUFMZW4gKSA7CkVuZDsKCklmIE1BX1R5cGVfU0VUWiA9ICJaIiBPUiBNQV9UeXBlX1NFVFogPSAi
eiIgdGhlbgpCZWdpbiAKCUxvbmdNQSA9IFplcm9MYWdFTUEoIFByaWNlLCBMb25nTUFMZW4gKSA7
CglTaG9ydE1BID0gWmVyb0xhZ0VNQSggUHJpY2UsIFNob3J0TUFMZW4gKSA7CkVuZDsKCklmIE1B
X1R5cGVfU0VUWiA9ICJXIiBPUiBNQV9UeXBlX1NFVFogPSAidyIgdGhlbgpCZWdpbiAKCUxvbmdN
QSA9IFdNQSggUHJpY2UsIExvbmdNQUxlbiApIDsKCVNob3J0TUEgPSBXTUEoIFByaWNlLCBTaG9y
dE1BTGVuICkgOwpFbmQ7CgoKTldUX1RyZW5kID0gMCA7CnZhcjEgPSBCbHVlIDsKSWYgKExvbmdN
QTxTaG9ydE1BIEFORCBTaG9ydE1BLUxvbmdNQT5TcHJlYWQpIE9SIChMb25nTUE+TG9uZ01BWzNd
K1NwcmVhZCBBTkQgU2hvcnRNQT5TaG9ydE1BWzNdK1NwcmVhZCl0aGVuIAoJQmVnaW4gCgkJTldU
X1RyZW5kPTEgOwoJRW5kIDsKSWYgKExvbmdNQT5TaG9ydE1BIEFORCBMb25nTUEtU2hvcnRNQT5T
cHJlYWQpIE9SIChMb25nTUE8KExvbmdNQVszXS1TcHJlYWQpIEFORCBTaG9ydE1BPChTaG9ydE1B
WzNdLVNwcmVhZCkpIHRoZW4gCglCZWdpbiAKCQlOV1RfVHJlbmQ9LTEgOwoJRW5kOwo=
e0Z1bmN0aW9uOiBURU1BfQoKSU5QVVRTOgpQUklDRShOdW1lcmljU2VyaWVzKSwKTEVOR1RIKE51
bWVyaWNTaW1wbGUpOwoKVEVNQSA9CigzICogWEFWRVJBR0UoUFJJQ0UsTEVOR1RIKSkKLSAoMyAq
IFhBVkVSQUdFKFhBVkVSQUdFKFBSSUNFLExFTkdUSCksTEVOR1RIKSkKKyAoWEFWRVJBR0UoWEFW
RVJBR0UoWEFWRVJBR0UoUFJJQ0UsTEVOR1RIKSxMRU5HVEgpLExFTkdUSCkpOwo=
SW5wdXRzOlByaWNlKE51bWVyaWMpLFBlcmlvZChOdW1lcmljKTsKV01BID0gV0F2ZXJhZ2UoUHJp
Y2UsUGVyaW9kKTsK
Ly8gQmlnIE1pa2UgVHJhZGluZyBodHRwOi8vd3d3LmJpZ21pa2V0cmFkaW5nLmNvbQovLyBBcHJp
bCAxMCAyMDEwCi8vIEZ1bmN0aW9uCgppbnB1dHM6CglQcmljZSAoTnVtZXJpY1NlcmllcyksCgls
ZW5ndGggKE51bWVyaWNTaW1wbGUpOwoJCnZhcnM6CgllbWEwICgwKSwKCWVtYTEgKDApOwoJCmVt
YTAgPSBYQXZlcmFnZShQcmljZSwgbGVuZ3RoKTsKZW1hMSA9IFhBdmVyYWdlKGVtYTAsIGxlbmd0
aCk7CgpaZXJvTGFnRU1BID0gZW1hMCArIChlbWEwIC0gZW1hMSk7Cg==
ewoJVHlwZSAtIEluZGljYXRvcgoJTmFtZSAtIE5XVCBNQSBUcmVuZCBSaWJib24KCURlc2MgLSBU
aGlzIGluZGljYXRvciBjcmVhdGVzIGEgdHJlbmQgcmliYm9uLiAKCQkJIFdoZXJlIEdyZWVuID0g
R28gTG9uZywgQmx1ZSA9IE5vIFRyYWRlLCBSZWQgPSBHbyBTaG9ydAoJCQkgU3ByZWFkID0gYSBn
YXAgYmV0d2VlbiB0aGUgdHdvIE1BJ3MuIFRoZSB3aWRlciB0aGUgU3ByZWFkIHRoZSBtb3JlIE5v
IFRyYWRlIGFyZWEKCQkJCSAKCVdyaXR0ZW4gYnkgTmVpbCBXcmlnaHRzb24gCgoJVmVyc2lvbiAJ
RGF0ZSAJCQlSZWFzb24gCgkxCQkJMTIvMDQvMjAxMglTdGFydCAKfQoKaW5wdXRzOiAgTG9uZ01B
TGVuKDQwKSxTaG9ydE1BTGVuKDIwKSxTcHJlYWQoMC4wMDAzKSxQcmljZSggQ2xvc2UgKSwgTUFf
VHlwZSggIloiICksIERpc3BsYWNlKCAwICkgOwpWYXJpYWJsZXM6ICBMb25nTUEoIDAgKSAsIFNo
b3J0TUEoMCksIERpcmVjdGlvbigwKSxWYXIxKDApOwoJCmNvbmRpdGlvbjEgPSBEaXNwbGFjZSA+
PSAwIG9yIEN1cnJlbnRCYXIgPiBBYnNWYWx1ZSggRGlzcGxhY2UgKSA7CgpEaXJlY3Rpb24gPSBO
V1RfVHJlbmQoTG9uZ01BTGVuLFNob3J0TUFMZW4sU3ByZWFkLFByaWNlLE1BX1R5cGUpIDsKdmFy
MSA9IEJsdWUgOwpJZiAgRGlyZWN0aW9uPTEgdGhlbiAKCUJlZ2luIAoJCXZhcjEgPSBncmVlbiA7
CglFbmQgOwoKSWYgRGlyZWN0aW9uPS0xIHRoZW4gCglCZWdpbiAKCQl2YXIxID0gcmVkIDsKCUVu
ZDsKCmlmIGNvbmRpdGlvbjEgdGhlbiAKCWJlZ2luCglQbG90MVtEaXNwbGFjZV0oIDAsICJBdmci
LHZhcjEgKSA7CgkgICAgICAgICAgICAgICAgICAKCWlmIERpc3BsYWNlIDw9IDAgdGhlbiAKCQli
ZWdpbgoJCWNvbmRpdGlvbjEgPSAoRGlyZWN0aW9uPTEpIEFORCBEaXJlY3Rpb25bMV08PjEgOwoJ
CWlmIGNvbmRpdGlvbjEgdGhlbgoJCQlBbGVydCggIkxvbmcgVHJlbmQgZXN0YWJsaXNoZWQiICkg
CgkJZWxzZSAKCQliZWdpbiAKCQljb25kaXRpb24xID0gIChEaXJlY3Rpb249LTEpIEFORCBEaXJl
Y3Rpb25bMV08Pi0xICA7CgkJaWYgY29uZGl0aW9uMSB0aGVuCgkJCUFsZXJ0KCAiU2hvcnQgVHJl
bmQgZXN0YWJsaXNoZWQiICkgOwoJCWVuZCA7CgkJZW5kOwplbmQgOwoKCgoKCgo=