QuickOwnerChange
10.0.1
10.0.x
10.1.x
Perl-Services.de
http://www.perl-services.de
Ticketbesitzer leicht wechseln.
Change ticket owners easily.
Jegytulajdonosok egyszerű megváltoztatása.
GNU AFFERO GENERAL PUBLIC LICENSE Version 3, November 2007
PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPG90b2JvX2NvbmZpZyB2ZXJz
aW9uPSIyLjAiIGluaXQ9IkNvbmZpZyI+CiAgICA8U2V0dGluZyBOYW1lPSJGcm9udGVuZDo6TW9k
dWxlIyMjQWdlbnRRdWlja093bmVyQ2hhbmdlIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAg
ICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPkZyb250ZW5kIG1vZHVsZSByZWdpc3Ry
YXRpb24gZm9yIHRoZSBRdWlja093bmVyQ2hhbmdlIGFnZW50IGludGVyZmFjZS48L0Rlc2NyaXB0
aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPk9QQVI6OlF1aWNrT3duZXJDaGFuZ2U6OkZyb250ZW5k
OjpBZ2VudDo6TW9kdWxlUmVnaXN0cmF0aW9uPC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4K
ICAgICAgICAgICAgPEl0ZW0gVmFsdWVUeXBlPSJGcm9udGVuZFJlZ2lzdHJhdGlvbiI+CiAgICAg
ICAgICAgICAgICA8SGFzaD4KICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9Ikdyb3VwIj4K
ICAgICAgICAgICAgICAgICAgICAgICAgPEFycmF5PgogICAgICAgICAgICAgICAgICAgICAgICA8
L0FycmF5PgogICAgICAgICAgICAgICAgICAgIDwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8
SXRlbSBLZXk9Ikdyb3VwUm8iPgogICAgICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAg
ICAgICAgICAgICAgICAgICAgIDwvQXJyYXk+CiAgICAgICAgICAgICAgICAgICAgPC9JdGVtPgog
ICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iRGVzY3JpcHRpb24iIFRyYW5zbGF0YWJsZT0i
MSI+UXVpY2sgb3duZXIgY2hhbmdlLjwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8SXRlbSBL
ZXk9Ik5hdkJhck5hbWUiPjwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IlRp
dGxlIiBUcmFuc2xhdGFibGU9IjEiPlF1aWNrIE93bmVyIENoYW5nZTwvSXRlbT4KICAgICAgICAg
ICAgICAgIDwvSGFzaD4KICAgICAgICAgICAgPC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8
L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJGcm9udGVuZDo6TmF2aWdhdGlvbiMjI0FnZW50
UXVpY2tPd25lckNoYW5nZSMjIzAwMy1RdWlja093bmVyQ2hhbmdlIiBSZXF1aXJlZD0iMCIgVmFs
aWQ9IjAiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPk1haW4gbWVudSBp
dGVtIHJlZ2lzdHJhdGlvbi48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPk9QQVI6
OlF1aWNrT3duZXJDaGFuZ2U6OkZyb250ZW5kOjpBZ2VudDo6TW9kdWxlUmVnaXN0cmF0aW9uOjpN
YWluTWVudTwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxBcnJheT4K
ICAgICAgICAgICAgICAgIDxEZWZhdWx0SXRlbSBWYWx1ZVR5cGU9IkZyb250ZW5kTmF2aWdhdGlv
biI+CiAgICAgICAgICAgICAgICAgICAgPEhhc2g+CiAgICAgICAgICAgICAgICAgICAgPC9IYXNo
PgogICAgICAgICAgICAgICAgPC9EZWZhdWx0SXRlbT4KICAgICAgICAgICAgPC9BcnJheT4KICAg
ICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iRnJvbnRlbmQ6
Ok1vZHVsZSMjI0FnZW50VGlja2V0T3duZXJDaGFuZ2VCdWxrIiBSZXF1aXJlZD0iMCIgVmFsaWQ9
IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPkZyb250ZW5kIG1vZHVs
ZSByZWdpc3RyYXRpb24gZm9yIHRoZSBidWxrIFF1aWNrT3duZXJDaGFuZ2UgYWdlbnQgaW50ZXJm
YWNlLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+T1BBUjo6UXVpY2tPd25lckNo
YW5nZTo6RnJvbnRlbmQ6OkFnZW50OjpNb2R1bGVSZWdpc3RyYXRpb248L05hdmlnYXRpb24+CiAg
ICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IkZyb250ZW5kUmVnaXN0
cmF0aW9uIj4KICAgICAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgICAgIDxJdGVt
IEtleT0iR3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAg
ICAgICAgICAgICAgIDwvQXJyYXk+CiAgICAgICAgICAgICAgICAgICAgPC9JdGVtPgogICAgICAg
ICAgICAgICAgICAgIDxJdGVtIEtleT0iR3JvdXBSbyI+CiAgICAgICAgICAgICAgICAgICAgICAg
IDxBcnJheT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICAgICAgICAg
ICAgICA8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJEZXNjcmlwdGlvbiIg
VHJhbnNsYXRhYmxlPSIxIj5CdWxrIHF1aWNrIG93bmVyIGNoYW5nZS48L0l0ZW0+CiAgICAgICAg
ICAgICAgICAgICAgPEl0ZW0gS2V5PSJOYXZCYXJOYW1lIj48L0l0ZW0+CiAgICAgICAgICAgICAg
ICAgICAgPEl0ZW0gS2V5PSJUaXRsZSIgVHJhbnNsYXRhYmxlPSIxIj5CdWxrIFF1aWNrIE93bmVy
IENoYW5nZTwvSXRlbT4KICAgICAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICAgICAgPC9JdGVt
PgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJGcm9u
dGVuZDo6TmF2aWdhdGlvbiMjI0FnZW50VGlja2V0T3duZXJDaGFuZ2VCdWxrIyMjMDAzLVF1aWNr
T3duZXJDaGFuZ2UiIFJlcXVpcmVkPSIwIiBWYWxpZD0iMCI+CiAgICAgICAgPERlc2NyaXB0aW9u
IFRyYW5zbGF0YWJsZT0iMSI+TWFpbiBtZW51IGl0ZW0gcmVnaXN0cmF0aW9uLjwvRGVzY3JpcHRp
b24+CiAgICAgICAgPE5hdmlnYXRpb24+T1BBUjo6UXVpY2tPd25lckNoYW5nZTo6RnJvbnRlbmQ6
OkFnZW50OjpNb2R1bGVSZWdpc3RyYXRpb246Ok1haW5NZW51PC9OYXZpZ2F0aW9uPgogICAgICAg
IDxWYWx1ZT4KICAgICAgICAgICAgPEFycmF5PgogICAgICAgICAgICAgICAgPERlZmF1bHRJdGVt
IFZhbHVlVHlwZT0iRnJvbnRlbmROYXZpZ2F0aW9uIj4KICAgICAgICAgICAgICAgICAgICA8SGFz
aD4KICAgICAgICAgICAgICAgICAgICA8L0hhc2g+CiAgICAgICAgICAgICAgICA8L0RlZmF1bHRJ
dGVtPgogICAgICAgICAgICA8L0FycmF5PgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+
CiAgICA8U2V0dGluZyBOYW1lPSJGcm9udGVuZDo6T3V0cHV0OjpGaWx0ZXJFbGVtZW50UG9zdCMj
I091dHB1dEZpbHRlck93bmVyQ2hhbmdlIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAgICAg
IDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPk1vZHVsZSB0byBzaG93IE91cHV0ZmlsdGVy
T3duZXJDaGFuZ2UuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5PUEFSOjpRdWlj
a093bmVyQ2hhbmdlOjpPdXRwdXRGaWx0ZXJPd25lckNoYW5nZTwvTmF2aWdhdGlvbj4KICAgICAg
ICA8VmFsdWU+CiAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJN
b2R1bGUiPktlcm5lbDo6T3V0cHV0OjpIVE1MOjpGaWx0ZXJFbGVtZW50UG9zdDo6T3duZXJDaGFu
Z2U8L0l0ZW0+CiAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkRlYnVnIj4wPC9JdGVtPgogICAg
ICAgICAgICAgICAgPEl0ZW0gS2V5PSJUZW1wbGF0ZXMiPgogICAgICAgICAgICAgICAgICAgIDxI
YXNoPgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkFnZW50VGlja2V0Wm9vbSI+
MTwvSXRlbT4KICAgICAgICAgICAgICAgICAgICA8L0hhc2g+CiAgICAgICAgICAgICAgICA8L0l0
ZW0+CiAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICA8L1ZhbHVlPgogICAgPC9TZXR0aW5nPgog
ICAgPFNldHRpbmcgTmFtZT0iRnJvbnRlbmQ6Ok91dHB1dDo6RmlsdGVyRWxlbWVudFBvc3QjIyNP
dXRwdXRGaWx0ZXJPd25lckNoYW5nZVRpY2tldFZpZXciIFJlcXVpcmVkPSIwIiBWYWxpZD0iMSI+
CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+TW9kdWxlIHRvIHNob3cgT3Vw
dXRmaWx0ZXJPd25lckNoYW5nZSBpbiB0aWNrZXQgb3ZlcnZpZXdzLjwvRGVzY3JpcHRpb24+CiAg
ICAgICAgPE5hdmlnYXRpb24+T1BBUjo6UXVpY2tPd25lckNoYW5nZTo6T3V0cHV0RmlsdGVyT3du
ZXJDaGFuZ2U8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SGFzaD4K
ICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iTW9kdWxlIj5LZXJuZWw6Ok91dHB1dDo6SFRNTDo6
RmlsdGVyRWxlbWVudFBvc3Q6Ok93bmVyQ2hhbmdlVGlja2V0VmlldzwvSXRlbT4KICAgICAgICAg
ICAgICAgIDxJdGVtIEtleT0iRGVidWciPjA8L0l0ZW0+CiAgICAgICAgICAgICAgICA8SXRlbSBL
ZXk9IlRlbXBsYXRlcyI+CiAgICAgICAgICAgICAgICAgICAgPEhhc2g+CiAgICAgICAgICAgICAg
ICAgICAgICAgIDxJdGVtIEtleT0iQWdlbnRUaWNrZXRPdmVydmlld1NtYWxsIj4xPC9JdGVtPgog
ICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkFnZW50VGlja2V0T3ZlcnZpZXdNZWRp
dW0iPjE8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIEtleT0iQWdlbnRUaWNr
ZXRPdmVydmlld1ByZXZpZXciPjE8L0l0ZW0+CiAgICAgICAgICAgICAgICAgICAgPC9IYXNoPgog
ICAgICAgICAgICAgICAgPC9JdGVtPgogICAgICAgICAgICA8L0hhc2g+CiAgICAgICAgPC9WYWx1
ZT4KICAgIDwvU2V0dGluZz4KICAgPFNldHRpbmcgTmFtZT0iRnJvbnRlbmQ6Ok91dHB1dDo6Rmls
dGVyQ29udGVudCMjI093bmVyQ2hhbmdlVmlld0pTIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgog
ICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPk1vZHVsIHRvIHNob3cgT3VwdXRm
aWx0ZXJDbG9zZSBpbiB0aWNrZXQgb3ZlcnZpZXdzLjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5h
dmlnYXRpb24+T1BBUjo6UXVpY2tPd25lckNoYW5nZTo6T3V0cHV0RmlsdGVyT3duZXJDaGFuZ2U8
L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SGFzaD4KICAgICAgICAg
ICAgICAgIDxJdGVtIEtleT0iTW9kdWxlIj5LZXJuZWw6Ok91dHB1dDo6SFRNTDo6RmlsdGVyQ29u
dGVudDo6T3duZXJDaGFuZ2VUaWNrZXRWaWV3SlM8L0l0ZW0+CiAgICAgICAgICAgICAgICA8SXRl
bSBLZXk9IkRlYnVnIj4wPC9JdGVtPgogICAgICAgICAgICAgICAgPEl0ZW0gS2V5PSJUZW1wbGF0
ZXMiPgogICAgICAgICAgICAgICAgICAgIDxIYXNoPgogICAgICAgICAgICAgICAgICAgICAgICA8
SXRlbSBLZXk9IkFnZW50VGlja2V0T3ZlcnZpZXdTbWFsbCI+MTwvSXRlbT4KICAgICAgICAgICAg
ICAgICAgICAgICAgPEl0ZW0gS2V5PSJBZ2VudFRpY2tldE92ZXJ2aWV3TWVkaXVtIj4xPC9JdGVt
PgogICAgICAgICAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IkFnZW50VGlja2V0T3ZlcnZpZXdQ
cmV2aWV3Ij4xPC9JdGVtPgogICAgICAgICAgICAgICAgICAgIDwvSGFzaD4KICAgICAgICAgICAg
ICAgIDwvSXRlbT4KICAgICAgICAgICAgPC9IYXNoPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1Nl
dHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJRdWlja093bmVyQ2hhbmdlOjpOb25lTGFiZWwiIFJl
cXVpcmVkPSIwIiBWYWxpZD0iMSI+CiAgICAgICAgPERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0i
MSI+TGFiZWwgZm9yIHRoZSBOVUxMIG9wdGlvbiBpbiBkcm9wZG93bi48L0Rlc2NyaXB0aW9uPgog
ICAgICAgIDxOYXZpZ2F0aW9uPk9QQVI6OlF1aWNrT3duZXJDaGFuZ2U6OkNvcmU8L05hdmlnYXRp
b24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IlN0cmluZyIg
VmFsdWVSZWdleD0iIj5RdWljayBPd25lciBDaGFuZ2U8L0l0ZW0+CiAgICAgICAgPC9WYWx1ZT4K
ICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlF1aWNrT3duZXJDaGFuZ2U6OlBlcm1p
c3Npb25zIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjEiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFu
c2xhdGFibGU9IjEiPk1pbmltdW0gcGVybWlzc2lvbnMgZm9yIHRoZSBhZ2VudCBvbiB0aGUgcXVl
dWUgb2YgdGhlIHRpY2tldCB0byBiZSBsaXN0ZWQgYXMgYSBwb3NzaWJsZSBvd25lci48L0Rlc2Ny
aXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPk9QQVI6OlF1aWNrT3duZXJDaGFuZ2U6OkNvcmU8
L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9
IlN0cmluZyIgVmFsdWVSZWdleD0iIj5ydzwvSXRlbT4KICAgICAgICA8L1ZhbHVlPgogICAgPC9T
ZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iUXVpY2tPd25lckNoYW5nZTo6U2V0TG9jayIgUmVx
dWlyZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIx
Ij5JZiBlbmFibGVkLCB0aGUgdGlja2V0IHdpbGwgYmUgbG9ja2VkIGFmdGVyIGNoYW5nZS48L0Rl
c2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPk9QQVI6OlF1aWNrT3duZXJDaGFuZ2U6OkNv
cmU8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1ZVR5
cGU9IkNoZWNrYm94Ij4wPC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+CiAg
ICA8U2V0dGluZyBOYW1lPSJRdWlja093bmVyQ2hhbmdlOjpTZXRSZXNwb25zaWJsZSIgUmVxdWly
ZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNsYXRhYmxlPSIxIj5J
ZiBlbmFibGVkLCB0aGUgcmVzcG9uc2libGUgaXMgc2V0IHRvIHRoZSBzZWxlY3RlZCBvd25lci48
L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPk9QQVI6OlF1aWNrT3duZXJDaGFuZ2U6
OkNvcmU8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SXRlbSBWYWx1
ZVR5cGU9IkNoZWNrYm94Ij4wPC9JdGVtPgogICAgICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+
CiAgICA8U2V0dGluZyBOYW1lPSJRdWlja093bmVyQ2hhbmdlOjpPd25lckdyb3VwIiBSZXF1aXJl
ZD0iMCIgVmFsaWQ9IjAiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPklm
IGVuYWJsZWQsIHRoZSBwb3NzaWJsZSBvd25lcnMgaGF2ZSB0byBiZSBhIG1lbWJlciBvZiB0aGUg
ZGVmaW5lZCBncm91cC48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPk9QQVI6OlF1
aWNrT3duZXJDaGFuZ2U6OkNvcmU8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgogICAgICAg
ICAgICA8SXRlbSBWYWx1ZVR5cGU9IlN0cmluZyIgVmFsdWVSZWdleD0iIj5Hcm91cG5hbWU8L0l0
ZW0+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwvU2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlF1
aWNrT3duZXJDaGFuZ2U6OlF1ZXVlR3JvdXBzIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjAiPgogICAg
ICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xhdGFibGU9IjEiPklmIGVuYWJsZWQsIHRoZSBwb3NzaWJs
ZSBvd25lcnMgYXJlIGRlZmluZWQgYnkgdGhlIHF1ZXVlIHRoZSB0aWNrZXRzIGlzIGFzc2lnbmVk
IHRvIGFuZCB0aGUgZ3JvdXAuPC9EZXNjcmlwdGlvbj4KICAgICAgICA8TmF2aWdhdGlvbj5PUEFS
OjpRdWlja093bmVyQ2hhbmdlOjpDb3JlPC9OYXZpZ2F0aW9uPgogICAgICAgIDxWYWx1ZT4KICAg
ICAgICAgICAgPEhhc2g+CiAgICAgICAgICAgICAgICA8SXRlbSBLZXk9IlF1ZXVlbmFtZSI+R3Jv
dXBuYW1lPC9JdGVtPgogICAgICAgICAgICA8L0hhc2g+CiAgICAgICAgPC9WYWx1ZT4KICAgIDwv
U2V0dGluZz4KICAgIDxTZXR0aW5nIE5hbWU9IlF1aWNrT3duZXJDaGFuZ2U6OlZpZXdQZXJtaXNz
aW9uIiBSZXF1aXJlZD0iMCIgVmFsaWQ9IjAiPgogICAgICAgIDxEZXNjcmlwdGlvbiBUcmFuc2xh
dGFibGU9IjEiPklmIGVuYWJsZWQsIGZvciB0aGUgZ2l2ZW4gcXVldWVzIG9ubHkgYWdlbnRzIG9m
IHRoZSBnaXZlbiBncm91cChzKSBjYW4gdmlldyB0aGUgZHJvcGRvd24uIElmIHlvdSB3YW50IGFs
bCBtZW1iZXJzIG9mIHRoZSBncm91cHMgJ3VzZXJzJyBhbmQgJ2FkbWluJyB0byBzZWUgdGhlIGRy
b3Bkb3duIGluIHRpY2tldHMgdGhhdCBhcmUgaW4gdGhlIHF1ZXVlICdSYXcnLCB5b3UgaGF2ZSB0
byB3cml0ZSAndXNlcnMsYWRtaW4nIGFzIHRoZSB2YWx1ZS48L0Rlc2NyaXB0aW9uPgogICAgICAg
IDxOYXZpZ2F0aW9uPk9QQVI6OlF1aWNrT3duZXJDaGFuZ2U6OkNvcmU8L05hdmlnYXRpb24+CiAg
ICAgICAgPFZhbHVlPgogICAgICAgICAgICA8SGFzaD4KICAgICAgICAgICAgICAgIDxJdGVtIEtl
eT0iUmF3Ij51c2VycyxhZG1pbjwvSXRlbT4KICAgICAgICAgICAgPC9IYXNoPgogICAgICAgIDwv
VmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJRdWlja093bmVyQ2hhbmdl
OjpWaWV3UGVybWlzc2lvbkJ5R3JvdXAiIFJlcXVpcmVkPSIwIiBWYWxpZD0iMCI+CiAgICAgICAg
PERlc2NyaXB0aW9uIFRyYW5zbGF0YWJsZT0iMSI+SWYgZW5hYmxlZCwgb25seSBhZ2VudHMgb2Yg
dGhlIGdpdmVuIGdyb3VwcyBjYW4gc2VlIHRoZSBkcm9wZG93bi48L0Rlc2NyaXB0aW9uPgogICAg
ICAgIDxOYXZpZ2F0aW9uPk9QQVI6OlF1aWNrT3duZXJDaGFuZ2U6OkNvcmU8L05hdmlnYXRpb24+
CiAgICAgICAgPFZhbHVlPgogICAgICAgICAgICA8QXJyYXk+CiAgICAgICAgICAgICAgICA8SXRl
bT5hZG1pbjwvSXRlbT4KICAgICAgICAgICAgPC9BcnJheT4KICAgICAgICA8L1ZhbHVlPgogICAg
PC9TZXR0aW5nPgogICAgPFNldHRpbmcgTmFtZT0iUXVpY2tPd25lckNoYW5nZTo6VXNlUXVldWVH
cm91cCIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIxIj4KICAgICAgICA8RGVzY3JpcHRpb24gVHJhbnNs
YXRhYmxlPSIxIj5Vc2UgZ3JvdXAgc2V0dGluZyBvZiBxdWV1ZSB0byBkZWZpbmUgdGhlIGxpc3Qg
b2YgYXZhaWxhYmxlIGFnZW50cy48L0Rlc2NyaXB0aW9uPgogICAgICAgIDxOYXZpZ2F0aW9uPk9Q
QVI6OlF1aWNrT3duZXJDaGFuZ2U6OkNvcmU8L05hdmlnYXRpb24+CiAgICAgICAgPFZhbHVlPgog
ICAgICAgICAgICA8SXRlbSBWYWx1ZVR5cGU9IkNoZWNrYm94Ij4wPC9JdGVtPgogICAgICAgIDwv
VmFsdWU+CiAgICA8L1NldHRpbmc+CiAgICA8U2V0dGluZyBOYW1lPSJRdWlja093bmVyQ2hhbmdl
OjpSZWRpcmVjdEFjdGlvbiIgUmVxdWlyZWQ9IjAiIFZhbGlkPSIwIj4KICAgICAgICA8RGVzY3Jp
cHRpb24gVHJhbnNsYXRhYmxlPSIxIj5Gb3JjZSByZWRpcmVjdCB0byB0aGUgZ2l2ZW4gQWN0aW9u
LjwvRGVzY3JpcHRpb24+CiAgICAgICAgPE5hdmlnYXRpb24+T1BBUjo6UXVpY2tPd25lckNoYW5n
ZTo6Q29yZTwvTmF2aWdhdGlvbj4KICAgICAgICA8VmFsdWU+CiAgICAgICAgICAgIDxJdGVtIFZh
bHVlVHlwZT0iU3RyaW5nIiBWYWx1ZVJlZ2V4PSIiPkFnZW50RGFzaGJvYXJkPC9JdGVtPgogICAg
ICAgIDwvVmFsdWU+CiAgICA8L1NldHRpbmc+Cjwvb3RvYm9fY29uZmlnPgo=
IyAtLQojIEtlcm5lbC9MYW5ndWFnZS9kZV9RdWlja093bmVyQ2hhbmdlLnBtIC0gdGhlIEdlcm1h
biB0cmFuc2xhdGlvbiBmb3IgUXVpY2tPd25lckNoYW5nZQojIENvcHlyaWdodCAoQykgMjAxNC0y
MDE2IFBlcmwtU2VydmljZXMsIGh0dHA6Ly93d3cucGVybC1zZXJ2aWNlcy5kZQojIC0tCiMgVGhp
cyBzb2Z0d2FyZSBjb21lcyB3aXRoIEFCU09MVVRFTFkgTk8gV0FSUkFOVFkuIEZvciBkZXRhaWxz
LCBzZWUKIyB0aGUgZW5jbG9zZWQgZmlsZSBDT1BZSU5HIGZvciBsaWNlbnNlIGluZm9ybWF0aW9u
IChBR1BMKS4gSWYgeW91CiMgZGlkIG5vdCByZWNlaXZlIHRoaXMgZmlsZSwgc2VlIGh0dHA6Ly93
d3cuZ251Lm9yZy9saWNlbnNlcy9hZ3BsLnR4dC4KIyAtLQoKcGFja2FnZSBLZXJuZWw6Okxhbmd1
YWdlOjpkZV9RdWlja093bmVyQ2hhbmdlOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwoKdXNl
IHV0Zjg7CgpvdXIgJFZFUlNJT04gPSAwLjAxOwoKc3ViIERhdGEgewogICAgbXkgJFNlbGYgPSBz
aGlmdDsKCiAgICBteSAkTGFuZyA9ICRTZWxmLT57VHJhbnNsYXRpb259OwoKICAgIHJldHVybiBp
ZiByZWYgJExhbmcgbmUgJ0hBU0gnOwoKICAgICMgS2VybmVsL0NvbmZpZy9GaWxlcy9RdWlja093
bmVyQ2hhbmdlLnhtbAogICAgJExhbmctPnsnRnJvbnRlbmQgbW9kdWxlIHJlZ2lzdHJhdGlvbiBm
b3IgdGhlIFF1aWNrT3duZXJDaGFuZ2UgYWdlbnQgaW50ZXJmYWNlLid9ID0KICAgICAgICAnRnJv
bnRlbmRtb2R1bC1SZWdpc3RyYXRpb24gZsO8ciBkYXMgUXVpY2tPd25lckNoYW5nZSBBZ2VudGVu
IEludGVyZmFjZS4nOwogICAgJExhbmctPnsnUXVpY2sgb3duZXIgY2hhbmdlLid9ID0gJyc7CiAg
ICAkTGFuZy0+eydRdWljayBPd25lciBDaGFuZ2UnfSA9ICcnOwogICAgJExhbmctPnsnRnJvbnRl
bmQgbW9kdWxlIHJlZ2lzdHJhdGlvbiBmb3IgdGhlIGJ1bGsgUXVpY2tPd25lckNoYW5nZSBhZ2Vu
dCBpbnRlcmZhY2UuJ30gPQogICAgICAgICdGcm9udGVuZG1vZHVsLVJlZ2lzdHJhdGlvbiBmw7xy
IGRhcyBNYXNzZW5RdWlja093bmVyQ2hhbmdlIEFnZW50ZW4gSW50ZXJmYWNlLic7CiAgICAkTGFu
Zy0+eydCdWxrIHF1aWNrIG93bmVyIGNoYW5nZS4nfSA9ICcnOwogICAgJExhbmctPnsnQnVsayBR
dWljayBPd25lciBDaGFuZ2UnfSA9ICcnOwogICAgJExhbmctPnsnTW9kdWxlIHRvIHNob3cgT3Vw
dXRmaWx0ZXJPd25lckNoYW5nZS4nfSA9ICdNb2R1bCB6dW0gQW56ZWlnZW4gdm9uIE91cHV0Zmls
dGVyT3duZXJDaGFuZ2UuJzsKICAgICRMYW5nLT57J01vZHVsZSB0byBzaG93IE91cHV0ZmlsdGVy
T3duZXJDaGFuZ2UgaW4gdGlja2V0IG92ZXJ2aWV3cy4nfSA9CiAgICAgICAgJ01vZHVsIHp1bSBB
bnplaWdlbiB2b24gT3VwdXRmaWx0ZXJPd25lckNoYW5nZSBpbiBUaWNrZXTDvGJlcnNpY2h0ZW4u
JzsKICAgICRMYW5nLT57J0xhYmVsIGZvciB0aGUgTlVMTCBvcHRpb24gaW4gZHJvcGRvd24uJ30g
PSAnJzsKICAgICRMYW5nLT57J01pbmltdW0gcGVybWlzc2lvbnMgZm9yIHRoZSBhZ2VudCBvbiB0
aGUgcXVldWUgb2YgdGhlIHRpY2tldCB0byBiZSBsaXN0ZWQgYXMgYSBwb3NzaWJsZSBvd25lci4n
fSA9ICcnOwogICAgJExhbmctPnsnSWYgZW5hYmxlZCwgdGhlIHRpY2tldCB3aWxsIGJlIGxvY2tl
ZCBhZnRlciBjaGFuZ2UuJ30gPSAnJzsKICAgICRMYW5nLT57J0lmIGVuYWJsZWQsIHRoZSByZXNw
b25zaWJsZSBpcyBzZXQgdG8gdGhlIHNlbGVjdGVkIG93bmVyLid9ID0gJyc7CiAgICAkTGFuZy0+
eydJZiBlbmFibGVkLCB0aGUgcG9zc2libGUgb3duZXJzIGhhdmUgdG8gYmUgYSBtZW1iZXIgb2Yg
dGhlIGRlZmluZWQgZ3JvdXAuJ30gPSAnJzsKICAgICRMYW5nLT57J0lmIGVuYWJsZWQsIHRoZSBw
b3NzaWJsZSBvd25lcnMgYXJlIGRlZmluZWQgYnkgdGhlIHF1ZXVlIHRoZSB0aWNrZXRzIGlzIGFz
c2lnbmVkIHRvIGFuZCB0aGUgZ3JvdXAuJ30gPSAnJzsKICAgICRMYW5nLT57J0lmIGVuYWJsZWQs
IGZvciB0aGUgZ2l2ZW4gcXVldWVzIG9ubHkgYWdlbnRzIG9mIHRoZSBnaXZlbiBncm91cChzKSBj
YW4gdmlldyB0aGUgZHJvcGRvd24uIElmIHlvdSB3YW50IGFsbCBtZW1iZXJzIG9mIHRoZSBncm91
cHMgXCd1c2Vyc1wnIGFuZCBcJ2FkbWluXCcgdG8gc2VlIHRoZSBkcm9wZG93biBpbiB0aWNrZXRz
IHRoYXQgYXJlIGluIHRoZSBxdWV1ZSBcJ1Jhd1wnLCB5b3UgaGF2ZSB0byB3cml0ZSBcJ3VzZXJz
LGFkbWluXCcgYXMgdGhlIHZhbHVlLid9ID0gJyc7CiAgICAkTGFuZy0+eydJZiBlbmFibGVkLCBv
bmx5IGFnZW50cyBvZiB0aGUgZ2l2ZW4gZ3JvdXBzIGNhbiBzZWUgdGhlIGRyb3Bkb3duLid9ID0g
Jyc7CiAgICAkTGFuZy0+eydZZXMnfSA9ICdKYSc7CiAgICAkTGFuZy0+eydObyd9ID0gJ05laW4n
OwoKICAgICMgS2VybmVsL01vZHVsZXMvQWdlbnRUaWNrZXRPd25lckNoYW5nZUJ1bGsucG0KICAg
ICRMYW5nLT57J05vIFRpY2tldElEIGlzIGdpdmVuISd9ID0gJ0tlaW5lIFRpY2tldElEIMO8YmVy
bWl0dGVsdCEnOwogICAgJExhbmctPnsnUGxlYXNlIGNvbnRhY3QgdGhlIGFkbWluaXN0cmF0b3Iu
J30gPSAnJzsKICAgICRMYW5nLT57J05vIE93bmVySUQgaXMgZ2l2ZW4hJ30gPSAnJzsKICAgICRM
YW5nLT57J05vIGFjY2VzcyB0byB0aGVzZSB0aWNrZXRzIChJRHM6ICVzKSd9ID0gJyc7CgogICAg
IyBLZXJuZWwvT3V0cHV0L0hUTUwvVGVtcGxhdGVzL1N0YW5kYXJkL1F1aWNrT3duZXJDaGFuZ2VT
bmlwcGV0LnR0CiAgICAkTGFuZy0+eydRdWlja093bmVyQ2hhbmdlIHRpY2tldCd9ID0gJyc7CiAg
ICAkTGFuZy0+eydRdWlja093bmVyQ2hhbmdlJ30gPSAnJzsKCiAgICByZXR1cm4gMTsKfQoKMTsK
IyAtLQojIEtlcm5lbC9MYW5ndWFnZS9odV9RdWlja093bmVyQ2hhbmdlLnBtIC0gdGhlIEh1bmdh
cmlhbiB0cmFuc2xhdGlvbiBmb3IgUXVpY2tPd25lckNoYW5nZQojIENvcHlyaWdodCAoQykgMjAx
NC0yMDE2IFBlcmwtU2VydmljZXMsIGh0dHA6Ly93d3cucGVybC1zZXJ2aWNlcy5kZQojIENvcHly
aWdodCAoQykgMjAxNiBCYWzDoXpzIMOaciwgaHR0cDovL3d3dy5vdHJzLW1lZ29sZGFzb2suaHUK
IyAtLQojIFRoaXMgc29mdHdhcmUgY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLiBG
b3IgZGV0YWlscywgc2VlCiMgdGhlIGVuY2xvc2VkIGZpbGUgQ09QWUlORyBmb3IgbGljZW5zZSBp
bmZvcm1hdGlvbiAoQUdQTCkuIElmIHlvdQojIGRpZCBub3QgcmVjZWl2ZSB0aGlzIGZpbGUsIHNl
ZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvYWdwbC50eHQuCiMgLS0KCnBhY2thZ2UgS2Vy
bmVsOjpMYW5ndWFnZTo6aHVfUXVpY2tPd25lckNoYW5nZTsKCnVzZSBzdHJpY3Q7CnVzZSB3YXJu
aW5nczsKCnVzZSB1dGY4OwoKb3VyICRWRVJTSU9OID0gMC4wMTsKCnN1YiBEYXRhIHsKICAgIG15
ICRTZWxmID0gc2hpZnQ7CgogICAgbXkgJExhbmcgPSAkU2VsZi0+e1RyYW5zbGF0aW9ufTsKCiAg
ICByZXR1cm4gaWYgcmVmICRMYW5nIG5lICdIQVNIJzsKCiAgICAjIEtlcm5lbC9Db25maWcvRmls
ZXMvUXVpY2tPd25lckNoYW5nZS54bWwKICAgICRMYW5nLT57J0Zyb250ZW5kIG1vZHVsZSByZWdp
c3RyYXRpb24gZm9yIHRoZSBRdWlja093bmVyQ2hhbmdlIGFnZW50IGludGVyZmFjZS4nfSA9CiAg
ICAgICAgJ0VsxZF0w6l0cHJvZ3JhbS1tb2R1bCByZWdpc3p0csOhY2nDsyBhIGd5b3JzIHR1bGFq
ZG9ub3N2w6FsdMOhcyDDvGd5aW50w6l6xZFpIGZlbMO8bGV0aGV6Lic7CiAgICAkTGFuZy0+eydR
dWljayBvd25lciBjaGFuZ2UuJ30gPSAnR3lvcnMgdHVsYWpkb25vc3bDoWx0w6FzLic7CiAgICAk
TGFuZy0+eydRdWljayBPd25lciBDaGFuZ2UnfSA9ICdHeW9ycyB0dWxhamRvbm9zdsOhbHTDoXMn
OwogICAgJExhbmctPnsnRnJvbnRlbmQgbW9kdWxlIHJlZ2lzdHJhdGlvbiBmb3IgdGhlIGJ1bGsg
UXVpY2tPd25lckNoYW5nZSBhZ2VudCBpbnRlcmZhY2UuJ30gPQogICAgICAgICdFbMWRdMOpdHBy
b2dyYW0tbW9kdWwgcmVnaXN6dHLDoWNpw7MgYSB0w7ZtZWdlcyBneW9ycyB0dWxhamRvbm9zdsOh
bHTDoXMgw7xneWludMOpesWRaSBmZWzDvGxldGhlei4nOwogICAgJExhbmctPnsnQnVsayBxdWlj
ayBvd25lciBjaGFuZ2UuJ30gPSAnVMO2bWVnZXMgZ3lvcnMgdHVsYWpkb25vc3bDoWx0w6FzLic7
CiAgICAkTGFuZy0+eydCdWxrIFF1aWNrIE93bmVyIENoYW5nZSd9ID0gJ1TDtm1lZ2VzIGd5b3Jz
IHR1bGFqZG9ub3N2w6FsdMOhcyc7CiAgICAkTGFuZy0+eydNb2R1bGUgdG8gc2hvdyBPdXB1dGZp
bHRlck93bmVyQ2hhbmdlLid9ID0gJ0VneSBtb2R1bCBhIHR1bGFqZG9ub3N2w6FsdMOhcyBraW1l
bmV0c3rFsXLFkSBtZWdqZWxlbsOtdMOpc8OpaGV6Lic7CiAgICAkTGFuZy0+eydNb2R1bGUgdG8g
c2hvdyBPdXB1dGZpbHRlck93bmVyQ2hhbmdlIGluIHRpY2tldCBvdmVydmlld3MuJ30gPQogICAg
ICAgICdFZ3kgbW9kdWwgYSB0dWxhamRvbm9zdsOhbHTDoXMga2ltZW5ldHN6xbFyxZEgbWVnamVs
ZW7DrXTDqXPDqWhleiBhIGplZ3nDoXR0ZWtpbnTFkWtiZW4uJzsKICAgICRMYW5nLT57J0xhYmVs
IGZvciB0aGUgTlVMTCBvcHRpb24gaW4gZHJvcGRvd24uJ30gPSAnQ8OtbWtlIGF6IMO8cmVzIGxl
aGV0xZFzw6lnaGV6IGEgbGVnw7ZyZMO8bMWRYmVuLic7CiAgICAkTGFuZy0+eydNaW5pbXVtIHBl
cm1pc3Npb25zIGZvciB0aGUgYWdlbnQgb24gdGhlIHF1ZXVlIG9mIHRoZSB0aWNrZXQgdG8gYmUg
bGlzdGVkIGFzIGEgcG9zc2libGUgb3duZXIuJ30gPQogICAgICAgICdBeiDDvGd5aW50w6l6xZEg
bGVna2lzZWJiIGpvZ29zdWx0c8OhZ2FpIGEgamVneSB2w6Fyw7NsaXN0w6Fqw6FuLCBob2d5IGxl
aGV0c8OpZ2VzIHR1bGFqZG9ub3Nrw6ludCBsZWd5ZW4gZmVsc29yb2x2YS4nOwogICAgJExhbmct
PnsnSWYgZW5hYmxlZCwgdGhlIHRpY2tldCB3aWxsIGJlIGxvY2tlZCBhZnRlciBjaGFuZ2UuJ30g
PQogICAgICAgICdIYSBlbmdlZMOpbHllenZlIHZhbiwgYWtrb3IgYSBqZWd5IHrDoXJvbHZhIGxl
c3ogYSB2w6FsdG96dGF0w6FzIHV0w6FuLic7CiAgICAkTGFuZy0+eydJZiBlbmFibGVkLCB0aGUg
cmVzcG9uc2libGUgaXMgc2V0IHRvIHRoZSBzZWxlY3RlZCBvd25lci4nfSA9CiAgICAgICAgJ0hh
IGVuZ2Vkw6lseWV6dmUgdmFuLCBha2tvciBhIGZlbGVsxZFzIGlzIGJlIGxlc3ogw6FsbMOtdHZh
IGEgdsOhbGFzenRvdHQgdHVsYWpkb25vc3JhLic7CiAgICAkTGFuZy0+eydJZiBlbmFibGVkLCB0
aGUgcG9zc2libGUgb3duZXJzIGhhdmUgdG8gYmUgYSBtZW1iZXIgb2YgdGhlIGRlZmluZWQgZ3Jv
dXAuJ30gPQogICAgICAgICdIYSBlbmdlZMOpbHllenZlIHZhbiwgYWtrb3IgYSBsZWhldHPDqWdl
cyB0dWxhamRvbm9zb2tuYWsgYSBtZWdoYXTDoXJvem90dCBjc29wb3J0IHRhZ2rDoW5hayBrZWxs
IGxlbm5pZS4nOwogICAgJExhbmctPnsnSWYgZW5hYmxlZCwgdGhlIHBvc3NpYmxlIG93bmVycyBh
cmUgZGVmaW5lZCBieSB0aGUgcXVldWUgdGhlIHRpY2tldHMgaXMgYXNzaWduZWQgdG8gYW5kIHRo
ZSBncm91cC4nfSA9CiAgICAgICAgJ0hhIGVuZ2Vkw6lseWV6dmUgdmFuLCBha2tvciBhIGxlaGV0
c8OpZ2VzIHR1bGFqZG9ub3Nva2F0IGEgY3NvcG9ydCwgdmFsYW1pbnQgYXogYSB2w6Fyw7NsaXN0
YSBoYXTDoXJvenphIG1lZywgYW1lbHloZXogYSBqZWd5ZWsgaG96esOhIHZhbm5hayByZW5kZWx2
ZS4nOwogICAgJExhbmctPnsnSWYgZW5hYmxlZCwgZm9yIHRoZSBnaXZlbiBxdWV1ZXMgb25seSBh
Z2VudHMgb2YgdGhlIGdpdmVuIGdyb3VwKHMpIGNhbiB2aWV3IHRoZSBkcm9wZG93bi4gSWYgeW91
IHdhbnQgYWxsIG1lbWJlcnMgb2YgdGhlIGdyb3VwcyBcJ3VzZXJzXCcgYW5kIFwnYWRtaW5cJyB0
byBzZWUgdGhlIGRyb3Bkb3duIGluIHRpY2tldHMgdGhhdCBhcmUgaW4gdGhlIHF1ZXVlIFwnUmF3
XCcsIHlvdSBoYXZlIHRvIHdyaXRlIFwndXNlcnMsYWRtaW5cJyBhcyB0aGUgdmFsdWUuJ30gPQog
ICAgICAgICdIYSBlbmdlZMOpbHllenZlIHZhbiwgYWtrb3IgYSBtZWdhZG90dCB2w6Fyw7NsaXN0
w6FrbsOhbCBjc2FrIGEgbWVnYWRvdHQgY3NvcG9ydG9rIMO8Z3lpbnTDqXrFkWkgbMOhdGhhdGrD
oWsgYSBsZWfDtnJkw7xsxZF0LiBIYSBhenQgc3plcmV0bsOpLCBob2d5IGEg4oCedXNlcnPigJ0g
w6lzIGF6IOKAnmFkbWlu4oCdIGNzb3BvcnQgw7Zzc3plcyB0YWdqYSBsw6Fzc2EgYSBsZWfDtnJk
w7xsxZF0IGF6b2tiYW4gYSBqZWd5ZWtiZW4sIGFtZWx5ZWsgYSDigJ5SYXfigJ0gdsOhcsOzbGlz
dMOhYmFuIHZhbm5haywgYWtrb3Ig4oCedXNlcnMsYWRtaW7igJ0gw6lydMOpa2V0IGtlbGwgYmXD
rXJuaWEuJzsKICAgICRMYW5nLT57J0lmIGVuYWJsZWQsIG9ubHkgYWdlbnRzIG9mIHRoZSBnaXZl
biBncm91cHMgY2FuIHNlZSB0aGUgZHJvcGRvd24uJ30gPQogICAgICAgICdIYSBlbmdlZMOpbHll
enZlIHZhbiwgYWtrb3IgY3NhayBhIG1lZ2Fkb3R0IGNzb3BvcnRvayDDvGd5aW50w6l6xZFpIGzD
oXRoYXRqw6FrIGEgbGVnw7ZyZMO8bMWRdC4nOwogICAgJExhbmctPnsnWWVzJ30gPSAnSWdlbic7
CiAgICAkTGFuZy0+eydObyd9ID0gJ05lbSc7CgogICAgIyBLZXJuZWwvTW9kdWxlcy9BZ2VudFRp
Y2tldE93bmVyQ2hhbmdlQnVsay5wbQogICAgJExhbmctPnsnTm8gVGlja2V0SUQgaXMgZ2l2ZW4h
J30gPSAnTmluY3MgamVneWF6b25vc8OtdMOzIG1lZ2FkdmEhJzsKICAgICRMYW5nLT57J1BsZWFz
ZSBjb250YWN0IHRoZSBhZG1pbmlzdHJhdG9yLid9ID0gJ1ZlZ3llIGZlbCBhIGthcGNzb2xhdG90
IGEgcmVuZHN6ZXJnYXpkw6F2YWwuJzsKICAgICRMYW5nLT57J05vIE93bmVySUQgaXMgZ2l2ZW4h
J30gPSAnTmluY3MgdHVsYWpkb25vc2F6b25vc8OtdMOzIG1lZ2FkdmEhJzsKICAgICRMYW5nLT57
J05vIGFjY2VzcyB0byB0aGVzZSB0aWNrZXRzIChJRHM6ICVzKSd9ID0gJ05pbmNzIGhvenrDoWbD
qXLDqXMgZXpla2hleiBhIGplZ3lla2hleiAoYXpvbm9zw610w7NrOiAlcyknOwoKICAgICMgS2Vy
bmVsL091dHB1dC9IVE1ML1RlbXBsYXRlcy9TdGFuZGFyZC9RdWlja093bmVyQ2hhbmdlU25pcHBl
dC50dAogICAgJExhbmctPnsnUXVpY2tPd25lckNoYW5nZSB0aWNrZXQnfSA9ICdKZWd5IGd5b3Jz
IHR1bGFqZG9ub3N2w6FsdMOhc2EnOwogICAgJExhbmctPnsnUXVpY2tPd25lckNoYW5nZSd9ID0g
J0d5b3JzIHR1bGFqZG9ub3N2w6FsdMOhcyc7CgogICAgcmV0dXJuIDE7Cn0KCjE7Cg==
IyAtLQojIENvcHlyaWdodCAoQykgMjAxNSAtIDIwMTggUGVybC1TZXJ2aWNlcy5kZSwgaHR0cDov
L3Blcmwtc2VydmljZXMuZGUKIyAtLQojIFRoaXMgc29mdHdhcmUgY29tZXMgd2l0aCBBQlNPTFVU
RUxZIE5PIFdBUlJBTlRZLiBGb3IgZGV0YWlscywgc2VlCiMgdGhlIGVuY2xvc2VkIGZpbGUgQ09Q
WUlORyBmb3IgbGljZW5zZSBpbmZvcm1hdGlvbiAoQUdQTCkuIElmIHlvdQojIGRpZCBub3QgcmVj
ZWl2ZSB0aGlzIGZpbGUsIHNlZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvYWdwbC50eHQu
CiMgLS0KCnBhY2thZ2UgS2VybmVsOjpNb2R1bGVzOjpBZ2VudFRpY2tldE93bmVyQ2hhbmdlQnVs
azsKCnVzZSBzdHJpY3Q7CnVzZSB3YXJuaW5nczsKCnVzZSBLZXJuZWw6Okxhbmd1YWdlIHF3KFRy
YW5zbGF0YWJsZSk7CgpvdXIgQE9iamVjdERlcGVuZGVuY2llcyA9IHF3KAogICAgS2VybmVsOjpD
b25maWcKICAgIEtlcm5lbDo6U3lzdGVtOjpXZWI6OlJlcXVlc3QKICAgIEtlcm5lbDo6T3V0cHV0
OjpIVE1MOjpMYXlvdXQKICAgIEtlcm5lbDo6U3lzdGVtOjpUaWNrZXQKKTsKCnN1YiBuZXcgewog
ICAgbXkgKCAkVHlwZSwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGFsbG9jYXRlIG5ldyBoYXNoIGZv
ciBvYmplY3QKICAgIG15ICRTZWxmID0geyVQYXJhbX07CiAgICBibGVzcyggJFNlbGYsICRUeXBl
ICk7CgogICAgcmV0dXJuICRTZWxmOwp9CgpzdWIgUnVuIHsKICAgIG15ICggJFNlbGYsICVQYXJh
bSApID0gQF87CgogICAgbXkgJFBhcmFtT2JqZWN0ICA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5l
bDo6U3lzdGVtOjpXZWI6OlJlcXVlc3QnKTsKICAgIG15ICRMYXlvdXRPYmplY3QgPSAkS2VybmVs
OjpPTS0+R2V0KCdLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0Jyk7CiAgICBteSAkVGlja2V0
T2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlRpY2tldCcpOwogICAg
bXkgJENvbmZpZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5lbDo6Q29uZmlnJyk7Cgog
ICAgbXkgQFRpY2tldElEcyA9ICRQYXJhbU9iamVjdC0+R2V0QXJyYXkoIFBhcmFtID0+ICdUaWNr
ZXRJRCcgKTsKICAgIG15ICRJRCAgICAgICAgPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJh
bSA9PiAnUXVpY2tPd25lckNoYW5nZScgKTsKCiAgICAjIGNoZWNrIG5lZWRlZCBzdHVmZgogICAg
aWYgKCAhQFRpY2tldElEcyApIHsKICAgICAgICByZXR1cm4gJExheW91dE9iamVjdC0+RXJyb3JT
Y3JlZW4oCiAgICAgICAgICAgIE1lc3NhZ2UgPT4gVHJhbnNsYXRhYmxlKCdObyBUaWNrZXRJRCBp
cyBnaXZlbiEnKSwKICAgICAgICAgICAgQ29tbWVudCA9PiBUcmFuc2xhdGFibGUoJ1BsZWFzZSBj
b250YWN0IHRoZSBhZG1pbmlzdHJhdG9yLicpLAogICAgICAgICk7CiAgICB9CgogICAgaWYgKCAh
JElEICkgewogICAgICAgIHJldHVybiAkTGF5b3V0T2JqZWN0LT5FcnJvclNjcmVlbigKICAgICAg
ICAgICAgTWVzc2FnZSA9PiBUcmFuc2xhdGFibGUoJ05vIE93bmVySUQgaXMgZ2l2ZW4hJyksCiAg
ICAgICAgICAgIENvbW1lbnQgPT4gVHJhbnNsYXRhYmxlKCdQbGVhc2UgY29udGFjdCB0aGUgYWRt
aW5pc3RyYXRvci4nKSwKICAgICAgICApOwogICAgfQoKICAgIG15IEBOb0FjY2VzczsKICAgIG15
IEBOb0FjY2Vzc05ld093bmVyOwoKICAgIFRJQ0tFVElEOgogICAgZm9yIG15ICRUaWNrZXRJRCAo
IEBUaWNrZXRJRHMgKSB7CgogICAgICAgICMgY2hlY2sgcGVybWlzc2lvbnMKICAgICAgICBteSAk
QWNjZXNzID0gJFRpY2tldE9iamVjdC0+VGlja2V0UGVybWlzc2lvbigKICAgICAgICAgICAgVHlw
ZSAgICAgPT4gJ293bmVyJywKICAgICAgICAgICAgVGlja2V0SUQgPT4gJFRpY2tldElELAogICAg
ICAgICAgICBVc2VySUQgICA9PiAkU2VsZi0+e1VzZXJJRH0KICAgICAgICApOwoKICAgICAgICAj
IGVycm9yIHNjcmVlbiwgZG9uJ3Qgc2hvdyB0aWNrZXQKICAgICAgICBpZiAoICEkQWNjZXNzICkg
ewogICAgICAgICAgICBwdXNoIEBOb0FjY2VzcywgJFRpY2tldElEOwogICAgICAgICAgICBuZXh0
IFRJQ0tFVElEOwogICAgICAgIH0KCiAgICAgICAgIyBjaGVjayBwZXJtaXNzaW9ucwogICAgICAg
IG15ICRBY2Nlc3NOZXdPd25lciA9ICRUaWNrZXRPYmplY3QtPlRpY2tldFBlcm1pc3Npb24oCiAg
ICAgICAgICAgIFR5cGUgICAgID0+ICdydycsCiAgICAgICAgICAgIFRpY2tldElEID0+ICRUaWNr
ZXRJRCwKICAgICAgICAgICAgVXNlcklEICAgPT4gJElELAogICAgICAgICk7CgogICAgICAgICMg
ZXJyb3Igc2NyZWVuLCBkb24ndCBzaG93IHRpY2tldAogICAgICAgIGlmICggISRBY2Nlc3NOZXdP
d25lciApIHsKICAgICAgICAgICAgcHVzaCBATm9BY2Nlc3NOZXdPd25lciwgJFRpY2tldElEOwog
ICAgICAgICAgICBuZXh0IFRJQ0tFVElEOwogICAgICAgIH0KCiAgICAgICAgJFRpY2tldE9iamVj
dC0+VGlja2V0T3duZXJTZXQoCiAgICAgICAgICAgIFRpY2tldElEICA9PiAkVGlja2V0SUQsCiAg
ICAgICAgICAgIE5ld1VzZXJJRCA9PiAkSUQsCiAgICAgICAgICAgIFVzZXJJRCAgICA9PiAkU2Vs
Zi0+e1VzZXJJRH0sCiAgICAgICAgKTsKICAgICAgICAKICAgICAgICBpZiAoICRDb25maWdPYmpl
Y3QtPkdldCgnUXVpY2tPd25lckNoYW5nZTo6U2V0TG9jaycpICkgewogICAgICAgICAgICBpZiAo
JElEID09IDEgKSB7CiAgICAgICAgICAgICAgICAkVGlja2V0T2JqZWN0LT5UaWNrZXRMb2NrU2V0
KAogICAgICAgICAgICAgICAgICAgIExvY2sgICAgID0+ICd1bmxvY2snLAogICAgICAgICAgICAg
ICAgICAgIFRpY2tldElEICA9PiAkVGlja2V0SUQsCiAgICAgICAgICAgICAgICAgICAgVXNlcklE
ICAgID0+ICRTZWxmLT57VXNlcklEfSwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0K
ICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAkVGlja2V0T2JqZWN0LT5UaWNrZXRM
b2NrU2V0KAogICAgICAgICAgICAgICAgICAgIExvY2sgICAgID0+ICdsb2NrJywKICAgICAgICAg
ICAgICAgICAgICBUaWNrZXRJRCAgPT4gJFRpY2tldElELAogICAgICAgICAgICAgICAgICAgIFVz
ZXJJRCAgICA9PiAkU2VsZi0+e1VzZXJJRH0sCiAgICAgICAgICAgICAgICApOwogICAgICAgICAg
ICB9CiAgICAgICAgfQoKICAgICAgICBpZiAoICRDb25maWdPYmplY3QtPkdldCgnUXVpY2tPd25l
ckNoYW5nZTo6U2V0UmVzcG9uc2libGUnKSApIHsKICAgICAgICAgICAgJFRpY2tldE9iamVjdC0+
VGlja2V0UmVzcG9uc2libGVTZXQoCiAgICAgICAgICAgICAgICBUaWNrZXRJRCAgPT4gJFRpY2tl
dElELAogICAgICAgICAgICAgICAgTmV3VXNlcklEID0+ICRJRCwKICAgICAgICAgICAgICAgIFVz
ZXJJRCAgICA9PiAkU2VsZi0+e1VzZXJJRH0sCiAgICAgICAgICAgICk7CiAgICAgICAgfQogICAg
fQoKICAgICMgcmVkaXJlY3QgcGFyZW50IHdpbmRvdyB0byBsYXN0IHNjcmVlbiBvdmVydmlldyBv
biBjbG9zZWQgdGlja2V0cwogICAgaWYgKCAhQE5vQWNjZXNzICkgewogICAgICAgIG15ICRMYXN0
VmlldyA9ICRTZWxmLT57TGFzdFNjcmVlbk92ZXJ2aWV3fSB8fCAkU2VsZi0+e0xhc3RTY3JlZW5W
aWV3fSB8fCAnQWN0aW9uPUFnZW50RGFzaGJvYXJkJzsKICAgICAgICBteSAkT1AgICAgICAgPSBA
VGlja2V0SURzID09IDEgPyAnQWN0aW9uPUFnZW50VGlja2V0Wm9vbSZUaWNrZXRJRD0nIC4gJFRp
Y2tldElEc1swXSA6ICAkTGFzdFZpZXc7CgogICAgICAgIG15ICRSZWRpcmVjdEFjdGlvbiA9ICRD
b25maWdPYmplY3QtPkdldCgnUXVpY2tPd25lckNoYW5nZTo6UmVkaXJlY3RBY3Rpb24nKTsKICAg
ICAgICBpZiAoICRSZWRpcmVjdEFjdGlvbiApIHsKICAgICAgICAgICAgJE9QID0gJ0FjdGlvbj0n
IC4gJFJlZGlyZWN0QWN0aW9uOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuICRMYXlvdXRPYmpl
Y3QtPlJlZGlyZWN0KAogICAgICAgICAgICBPUCA9PiAkT1AsCiAgICAgICAgKTsKCiAgICB9CiAg
ICBlbHNlIHsKICAgICAgICBteSAkTWVzc2FnZSA9IHNwcmludGYgIiVzPGJyIC8+JXMiLAogICAg
ICAgICAgICAkTGF5b3V0T2JqZWN0LT57TGFuZ3VhZ2VPYmplY3R9LT5UcmFuc2xhdGUoCiAgICAg
ICAgICAgICAgICAnTm8gYWNjZXNzIHRvIHRoZXNlIHRpY2tldHMgKElEczogJXMpJywgam9pbigg
IiwgIiwgQE5vQWNjZXNzICkKICAgICAgICAgICAgKSwKICAgICAgICAgICAgJExheW91dE9iamVj
dC0+e0xhbmd1YWdlT2JqZWN0fS0+VHJhbnNsYXRlKAogICAgICAgICAgICAgICAgJ05vIGFjY2Vz
cyBmb3IgZ2l2ZW4gbmV3IG93bmVyIHRvIHRoZXNlIHRpY2tldHMgKElEczogJXMpJywgam9pbigg
IiwgIiwgQE5vQWNjZXNzTmV3T3duZXIgKQogICAgICAgICAgICApOwoKICAgICAgICByZXR1cm4g
JExheW91dE9iamVjdC0+RXJyb3JTY3JlZW4oCiAgICAgICAgICAgIE1lc3NhZ2UgPT4gJE1lc3Nh
Z2UsCiAgICAgICAgICAgIENvbW1lbnQgPT4gVHJhbnNsYXRhYmxlKCdQbGVhc2UgY29udGFjdCB0
aGUgYWRtaW5pc3RyYXRvci4nKSwKICAgICAgICApOwogICAgfQp9CgoxOwo=
IyAtLQojIENvcHlyaWdodCAoQykgMjAxOCBQZXJsLVNlcnZpY2VzLmRlLCBodHRwOi8vd3d3LnBl
cmwtc2VydmljZXMuZGUvCiMgLS0KIyBUaGlzIHNvZnR3YXJlIGNvbWVzIHdpdGggQUJTT0xVVEVM
WSBOTyBXQVJSQU5UWS4gRm9yIGRldGFpbHMsIHNlZQojIHRoZSBlbmNsb3NlZCBmaWxlIENPUFlJ
TkcgZm9yIGxpY2Vuc2UgaW5mb3JtYXRpb24gKEFHUEwpLiBJZiB5b3UKIyBkaWQgbm90IHJlY2Vp
dmUgdGhpcyBmaWxlLCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2FncGwudHh0Lgoj
IC0tCgpwYWNrYWdlIEtlcm5lbDo6T3V0cHV0OjpIVE1MOjpGaWx0ZXJDb250ZW50OjpPd25lckNo
YW5nZVRpY2tldFZpZXdKUzsKCnVzZSBzdHJpY3Q7CnVzZSB3YXJuaW5nczsKCnVzZSBLZXJuZWw6
OlN5c3RlbTo6RW5jb2RlOwp1c2UgS2VybmVsOjpTeXN0ZW06OlRpbWU7CnVzZSBLZXJuZWw6OlN5
c3RlbTo6V2ViOjpVcGxvYWRDYWNoZTsKCm91ciBAT2JqZWN0RGVwZW5kZW5jaWVzID0gcXcoCiAg
ICBLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0Cik7CgpzdWIgbmV3IHsKICAgIG15ICggJFR5
cGUsICVQYXJhbSApID0gQF87CgogICAgIyBhbGxvY2F0ZSBuZXcgaGFzaCBmb3Igb2JqZWN0CiAg
ICBteSAkU2VsZiA9IHt9OwogICAgYmxlc3MoICRTZWxmLCAkVHlwZSApOwoKICAgIHJldHVybiAk
U2VsZjsKfQoKc3ViIFJ1biB7CiAgICBteSAoICRTZWxmLCAlUGFyYW0gKSA9IEBfOwoKICAgIG15
ICRMYXlvdXRPYmplY3QgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6Ok91dHB1dDo6SFRNTDo6
TGF5b3V0Jyk7CgogICAgcmV0dXJuIDEgaWYgJHsgJFBhcmFte0RhdGF9IH0gIX4gbXtpZD0icXVp
Y2tvd25lcmNoYW5nZSJ9eG1zOwoKICAgIG15ICRKUyA9IHF+CiAgICAgICAgPHNjcmlwdCB0eXBl
PSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbCiAgICAgICAgQ29yZS5BcHAuUmVhZHkoIGZ1
bmN0aW9uKCkgewogICAgICAgICQoJy5RdWlja093bmVyQ2hhbmdlU2VsZWN0JykuZWFjaCggZnVu
Y3Rpb24oIFNlbGVjdEluZGV4LCBTZWxlY3RFbGVtZW50KSB7CiAgICAgICAgICAgICQoU2VsZWN0
RWxlbWVudCkudW5iaW5kKCdjaGFuZ2UnKTsKICAgICAgICAgICAgJChTZWxlY3RFbGVtZW50KS5i
aW5kKCdjaGFuZ2UnLCBmdW5jdGlvbiAoRXZlbnQpIHsKICAgICAgICAgICAgICAgIC8vIHJldHJp
ZXZlIGJvZHkgZm9yIHF1aWNrY2xvc2UKICAgICAgICAgICAgICAgIHZhciBVUkwgPSBDb3JlLkNv
bmZpZy5HZXQoJ0Jhc2VsaW5rJyk7CiAgICAgICAgICAgICAgICB2YXIgVElEID0gJCh0aGlzKS52
YWwoKTsKCiAgICAgICAgICAgICAgICBpZiAoICFUSUQgfHwgVElEID09ICIiICkgewogICAgICAg
ICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICB2
YXIgJFNlbGVjdGVkVGlja2V0czsKICAgICAgICAgICAgICAgIHZhciBDbG9zZUZvcm0gPSAkKHRo
aXMpLmNsb3Nlc3QoJ2Zvcm0nKTsKICAgICAgICAgICAgICAgIHZhciBUaWNrZXRFbGVtZW50U2Vs
ZWN0b3JzID0gewogICAgICAgICAgICAgICAgICAgICdTbWFsbCc6ICdkaXYuT3ZlcnZpZXcgZm9y
bSB0YWJsZSB0Ym9keSB0ciB0ZCBpbnB1dDpjaGVja2JveFtuYW1lPSJUaWNrZXRJRCJdJywKICAg
ICAgICAgICAgICAgICAgICAnTWVkaXVtJzogJ3VsLk92ZXJ2aWV3IGlucHV0OmNoZWNrYm94W25h
bWU9IlRpY2tldElEIl0nLAogICAgICAgICAgICAgICAgICAgICdMYXJnZSc6ICd1bC5PdmVydmll
dyBpbnB1dDpjaGVja2JveFtuYW1lPSJUaWNrZXRJRCJdJwogICAgICAgICAgICAgICAgfTsKICAg
ICAgICAgICAgICAgIHZhciBUaWNrZXRWaWV3OwoKICAgICAgICAgICAgICAgIHZhciB0aGlzT2Jq
ZWN0ID0gJCh0aGlzKTsKCiAgICAgICAgICAgICAgICBpZiAoJCgnI1RpY2tldE92ZXJ2aWV3TWVk
aXVtJykubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgVGlja2V0VmlldyA9ICdNZWRpdW0n
OwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZSBpZiAoJCgnI1RpY2tldE92
ZXJ2aWV3TGFyZ2UnKS5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICBUaWNrZXRWaWV3ID0g
J0xhcmdlJzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAg
ICAgICAgICAgICAgIFRpY2tldFZpZXcgPSAnU21hbGwnOwogICAgICAgICAgICAgICAgfQoKICAg
ICAgICAgICAgICAgIGlmICggVElEICkgewogICAgICAgICAgICAgICAgICAgICRTZWxlY3RlZFRp
Y2tldHMgPSAkKFRpY2tldEVsZW1lbnRTZWxlY3RvcnNbVGlja2V0Vmlld10gKyAnOmNoZWNrZWQn
KTsKICAgICAgICAgICAgICAgICAgICAkU2VsZWN0ZWRUaWNrZXRzLmVhY2goZnVuY3Rpb24gKCkg
ewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgSGlkZGVuRmllbGQgPSAkKCc8aW5wdXQgdHlw
ZT0iaGlkZGVuIiBuYW1lPSJUaWNrZXRJRCI+Jyk7CiAgICAgICAgICAgICAgICAgICAgICAgIEhp
ZGRlbkZpZWxkLnZhbCggJCh0aGlzKS52YWwoKSApOwogICAgICAgICAgICAgICAgICAgICAgICBD
bG9zZUZvcm0uYXBwZW5kKCBIaWRkZW5GaWVsZCApOwogICAgICAgICAgICAgICAgICAgIH0pOwog
ICAgICAgICAgICAgICAgICAgIENsb3NlRm9ybS5zdWJtaXQoKTsKICAgICAgICAgICAgICAgIH0K
ICAgICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgLy8gXV0+IDwv
c2NyaXB0PgogICAgfjsKCiAgICAkeyAkUGFyYW17RGF0YX0gfSA9fiBzezwvYm9keT59eyRKUzwv
Ym9keT59eG1zOwoKICAgIHJldHVybiAxOwp9CgoxOwo=
IyAtLQojIEtlcm5lbC9PdXRwdXQvSFRNTC9GaWx0ZXJFbGVtZW50UG9zdC9Pd25lckNoYW5nZS5w
bQojIENvcHlyaWdodCAoQykgMjAxNSAtIDIwMTYgUGVybC1TZXJ2aWNlcy5kZSwgaHR0cDovL3d3
dy5wZXJsLXNlcnZpY2VzLmRlLwojIC0tCiMgVGhpcyBzb2Z0d2FyZSBjb21lcyB3aXRoIEFCU09M
VVRFTFkgTk8gV0FSUkFOVFkuIEZvciBkZXRhaWxzLCBzZWUKIyB0aGUgZW5jbG9zZWQgZmlsZSBD
T1BZSU5HIGZvciBsaWNlbnNlIGluZm9ybWF0aW9uIChBR1BMKS4gSWYgeW91CiMgZGlkIG5vdCBy
ZWNlaXZlIHRoaXMgZmlsZSwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9hZ3BsLnR4
dC4KIyAtLQoKcGFja2FnZSBLZXJuZWw6Ok91dHB1dDo6SFRNTDo6RmlsdGVyRWxlbWVudFBvc3Q6
Ok93bmVyQ2hhbmdlOwoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwoKb3VyIEBPYmplY3REZXBl
bmRlbmNpZXMgPSBxdygKICAgIEtlcm5lbDo6Q29uZmlnCiAgICBLZXJuZWw6OlN5c3RlbTo6V2Vi
OjpSZXF1ZXN0CiAgICBLZXJuZWw6Ok91dHB1dDo6SFRNTDo6TGF5b3V0CiAgICBLZXJuZWw6OlN5
c3RlbTo6VGlja2V0CiAgICBLZXJuZWw6OlN5c3RlbTo6R3JvdXAKICAgIEtlcm5lbDo6U3lzdGVt
OjpVc2VyCiAgICBLZXJuZWw6OlN5c3RlbTo6UXVldWUKKTsKCnN1YiBuZXcgewogICAgbXkgKCAk
VHlwZSwgJVBhcmFtICkgPSBAXzsKCiAgICAjIGFsbG9jYXRlIG5ldyBoYXNoIGZvciBvYmplY3QK
ICAgIG15ICRTZWxmID0geyAlUGFyYW0gfTsKICAgIGJsZXNzKCAkU2VsZiwgJFR5cGUgKTsKCiAg
ICByZXR1cm4gJFNlbGY7Cn0KCnN1YiBSdW4gewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBA
XzsKCiAgICBteSAkUGFyYW1PYmplY3QgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0
ZW06OldlYjo6UmVxdWVzdCcpOwogICAgbXkgJExheW91dE9iamVjdCA9ICRLZXJuZWw6Ok9NLT5H
ZXQoJ0tlcm5lbDo6T3V0cHV0OjpIVE1MOjpMYXlvdXQnKTsKICAgIG15ICRUaWNrZXRPYmplY3Qg
PSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6VGlja2V0Jyk7CiAgICBteSAkUXVl
dWVPYmplY3QgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlF1ZXVlJyk7CiAg
ICBteSAkQ29uZmlnT2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpDb25maWcnKTsK
ICAgIG15ICRHcm91cE9iamVjdCAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6
R3JvdXAnKTsKICAgIG15ICRVc2VyT2JqZWN0ICAgPSAkS2VybmVsOjpPTS0+R2V0KCdLZXJuZWw6
OlN5c3RlbTo6VXNlcicpOwoKICAgICMgZ2V0IHRlbXBsYXRlIG5hbWUKICAgIG15ICRUZW1wbGF0
ZW5hbWUgPSAkUGFyYW17VGVtcGxhdGVGaWxlfSB8fCAnJzsKICAgIHJldHVybiAxIGlmICEkVGVt
cGxhdGVuYW1lOwogICAgcmV0dXJuIDEgaWYgISRQYXJhbXtUZW1wbGF0ZXN9LT57JFRlbXBsYXRl
bmFtZX07CgogICAgbXkgKCRUaWNrZXRJRCkgPSAkUGFyYW1PYmplY3QtPkdldFBhcmFtKCBQYXJh
bSA9PiAnVGlja2V0SUQnICk7CiAgICByZXR1cm4gMSBpZiAhJFRpY2tldElEOwoKICAgIG15ICVU
aWNrZXQgPSAkVGlja2V0T2JqZWN0LT5UaWNrZXRHZXQoCiAgICAgICAgVGlja2V0SUQgPT4gJFRp
Y2tldElELAogICAgICAgIFVzZXJJRCAgID0+ICRTZWxmLT57VXNlcklEfSwKICAgICk7CgogICAg
bXkgJVVzZXJHcm91cHMgPSAkR3JvdXBPYmplY3QtPlBlcm1pc3Npb25Vc2VyR2V0KAogICAgICAg
IFVzZXJJRCA9PiAkTGF5b3V0T2JqZWN0LT57VXNlcklEfSwKICAgICAgICBUeXBlICAgPT4gJ3J3
JywKICAgICk7CgogICAgbXkgJUdyb3VwTmFtZXMgPSByZXZlcnNlICVVc2VyR3JvdXBzOwoKICAg
IG15ICVWaWV3UGVybWlzc2lvbnMgPSAleyAkQ29uZmlnT2JqZWN0LT5HZXQoJ1F1aWNrT3duZXJD
aGFuZ2U6OlZpZXdQZXJtaXNzaW9uJykgfHwge30gfTsKICAgIGlmICggJFZpZXdQZXJtaXNzaW9u
c3sgJFRpY2tldHtRdWV1ZX0gfSApIHsKICAgICAgICBteSAoQEdyb3VwcykgPSBzcGxpdCAvXHMq
LFxzKi8sICRWaWV3UGVybWlzc2lvbnN7ICRUaWNrZXR7UXVldWV9IH07CgogICAgICAgIG15ICRJ
c0FsbG93ZWQgPSBncmVweyAkR3JvdXBOYW1lc3skX30gfUBHcm91cHM7CiAgICAgICAgcmV0dXJu
IDEgaWYgISRJc0FsbG93ZWQ7CiAgICB9CgogICAgbXkgQEdyb3VwUGVybWlzc2lvbnMgPSBAeyAk
Q29uZmlnT2JqZWN0LT5HZXQoJ1F1aWNrT3duZXJDaGFuZ2U6OlZpZXdQZXJtaXNzaW9uQnlHcm91
cCcpIHx8IFtdIH07CiAgICBpZiAoIEBHcm91cFBlcm1pc3Npb25zICkgewogICAgICAgIG15ICRJ
c0FsbG93ZWQgPSBncmVweyAkR3JvdXBOYW1lc3skX30gfUBHcm91cFBlcm1pc3Npb25zOwogICAg
ICAgIHJldHVybiAxIGlmICEkSXNBbGxvd2VkOwogICAgfQoKICAgIG15ICRHcm91cElEID0gJFF1
ZXVlT2JqZWN0LT5HZXRRdWV1ZUdyb3VwSUQoCiAgICAgICAgUXVldWVJRCA9PiAkVGlja2V0e1F1
ZXVlSUR9LAogICAgKTsKCiAgICBteSAkQWdlbnRHcm91cCA9ICRDb25maWdPYmplY3QtPkdldCgn
UXVpY2tPd25lckNoYW5nZTo6T3duZXJHcm91cCcpOwogICAgaWYgKCAkQWdlbnRHcm91cCApIHsK
ICAgICAgICAkR3JvdXBJRCA9ICRHcm91cE9iamVjdC0+R3JvdXBMb29rdXAoIEdyb3VwID0+ICRB
Z2VudEdyb3VwICk7CiAgICB9CgogICAgbXkgJFF1ZXVlQWdlbnRHcm91cCA9ICRDb25maWdPYmpl
Y3QtPkdldCgnUXVpY2tPd25lckNoYW5nZTo6UXVldWVHcm91cHMnKSB8fCB7fTsKICAgIGlmICgg
JFF1ZXVlQWdlbnRHcm91cCAmJiAkUXVldWVBZ2VudEdyb3VwLT57ICRUaWNrZXR7UXVldWV9IH0g
KSB7CiAgICAgICAgbXkgJEdyb3VwTmFtZSA9ICRRdWV1ZUFnZW50R3JvdXAtPnsgJFRpY2tldHtR
dWV1ZX0gfTsKICAgICAgICAkR3JvdXBJRCA9ICRHcm91cE9iamVjdC0+R3JvdXBMb29rdXAoIEdy
b3VwID0+ICRHcm91cE5hbWUgKTsKICAgIH0KCiAgICBteSAkVHlwZSA9ICRDb25maWdPYmplY3Qt
PkdldCgnUXVpY2tPd25lckNoYW5nZTo6UGVybWlzc2lvbnMnKSB8fCAncncnOwogICAgbXkgJVVz
ZXIgPSAkR3JvdXBPYmplY3QtPkdyb3VwTWVtYmVyTGlzdCgKICAgICAgICBHcm91cElEID0+ICRH
cm91cElELAogICAgICAgIFR5cGUgICAgPT4gJFR5cGUsCiAgICAgICAgUmVzdWx0ICA9PiAnSEFT
SCcsCiAgICApOwoKICAgICRVc2VyeyRffSA9ICRVc2VyT2JqZWN0LT5Vc2VyTmFtZSggVXNlcklE
ID0+ICRfICkgZm9yIGtleXMgJVVzZXI7CgogICAgbXkgQERhdGEgPSBtYXB7IHsgS2V5ID0+ICRf
LCBWYWx1ZSA9PiAkVXNlcnskX30gfSB9c29ydHsgJFVzZXJ7JGF9IGNtcCAkVXNlcnskYn0gfWtl
eXMgJVVzZXI7CiAgICAKICAgIG15ICRMYWJlbCA9ICRDb25maWdPYmplY3QtPkdldCgnUXVpY2tP
d25lckNoYW5nZTo6Tm9uZUxhYmVsJykgfHwgJ1F1aWNrIE93bmVyIENoYW5nZSc7CgogICAgdW5z
aGlmdCBARGF0YSwgewogICAgICAgIEtleSAgID0+ICcwJywKICAgICAgICBWYWx1ZSA9PiAnIC0g
JyAuICRMYXlvdXRPYmplY3QtPntMYW5ndWFnZU9iamVjdH0tPlRyYW5zbGF0ZSggJExhYmVsICkg
LiAnIC0gJywKICAgIH07CgogICAgbXkgJFNlbGVjdCA9ICRMYXlvdXRPYmplY3QtPkJ1aWxkU2Vs
ZWN0aW9uKAogICAgICAgIE5hbWUgICAgICAgPT4gJ1F1aWNrT3duZXJDaGFuZ2UnLAogICAgICAg
IERhdGEgICAgICAgPT4gXEBEYXRhLAogICAgICAgIENsYXNzICAgICAgPT4gJ01vZGVybml6ZScs
CiAgICApOwogICAgCiAgICBteSAkU25pcHBldCA9ICRMYXlvdXRPYmplY3QtPk91dHB1dCgKICAg
ICAgICBUZW1wbGF0ZUZpbGUgPT4gJ1F1aWNrT3duZXJDaGFuZ2VTbmlwcGV0JywKICAgICAgICBE
YXRhICAgICAgICAgPT4gewogICAgICAgICAgICBUaWNrZXRJRCA9PiAkVGlja2V0SUQsCiAgICAg
ICAgICAgIFNlbGVjdCAgID0+ICRTZWxlY3QsCiAgICAgICAgfSwKICAgICk7IAoKICAgICNzY2Fu
IGh0bWwgb3V0cHV0IGFuZCBnZW5lcmF0ZSBuZXcgaHRtbCBpbnB1dAogICAgbXkgJExpbmtUeXBl
ID0gJENvbmZpZ09iamVjdC0+R2V0KCdUaWNrZXQ6OkZyb250ZW5kOjpNb3ZlVHlwZScpOwogICAg
aWYgKCAkTGlua1R5cGUgZXEgJ2Zvcm0nICkgewogICAgICAgICR7ICRQYXJhbXtEYXRhfSB9ID1+
IHN7KDxzZWxlY3QgbmFtZT0iRGVzdFF1ZXVlSUQiLio/PC9saT4pfXskMSAkU25pcHBldH1tZ3M7
CiAgICB9CiAgICBlbHNlIHsKICAgICAgICAkeyAkUGFyYW17RGF0YX0gfSA9fiBzeyg8YSBocmVm
PSIuKj9BY3Rpb249QWdlbnRUaWNrZXRNb3ZlO1RpY2tldElEPVxkKzsiLio/PC9saT4pfXskMSAk
U25pcHBldH1tZ3M7CiAgICB9CgogICAgcmV0dXJuIDE7Cn0KCjE7Cg==
IyAtLQojIEtlcm5lbC9PdXRwdXQvSFRNTC9GaWx0ZXJFbGVtZW50UG9zdC9Pd25lckNoYW5nZVRp
Y2tldFZpZXcucG0KIyBDb3B5cmlnaHQgKEMpIDIwMTUgLSAyMDE2IFBlcmwtU2VydmljZXMuZGUs
IGh0dHA6Ly93d3cucGVybC1zZXJ2aWNlcy5kZS8KIyAtLQojIFRoaXMgc29mdHdhcmUgY29tZXMg
d2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLiBGb3IgZGV0YWlscywgc2VlCiMgdGhlIGVuY2xv
c2VkIGZpbGUgQ09QWUlORyBmb3IgbGljZW5zZSBpbmZvcm1hdGlvbiAoQUdQTCkuIElmIHlvdQoj
IGRpZCBub3QgcmVjZWl2ZSB0aGlzIGZpbGUsIHNlZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5z
ZXMvYWdwbC50eHQuCiMgLS0KCnBhY2thZ2UgS2VybmVsOjpPdXRwdXQ6OkhUTUw6OkZpbHRlckVs
ZW1lbnRQb3N0OjpPd25lckNoYW5nZVRpY2tldFZpZXc7Cgp1c2Ugc3RyaWN0Owp1c2Ugd2Fybmlu
Z3M7CgpvdXIgQE9iamVjdERlcGVuZGVuY2llcyA9IHF3KAogICAgS2VybmVsOjpDb25maWcKICAg
IEtlcm5lbDo6T3V0cHV0OjpIVE1MOjpMYXlvdXQKICAgIEtlcm5lbDo6U3lzdGVtOjpVc2VyCiAg
ICBLZXJuZWw6OlN5c3RlbTo6R3JvdXAKICAgIEtlcm5lbDo6U3lzdGVtOjpRdWV1ZQogICAgS2Vy
bmVsOjpTeXN0ZW06OldlYjo6UmVxdWVzdAopOwoKc3ViIG5ldyB7CiAgICBteSAoICRUeXBlLCAl
UGFyYW0gKSA9IEBfOwoKICAgICMgYWxsb2NhdGUgbmV3IGhhc2ggZm9yIG9iamVjdAogICAgbXkg
JFNlbGYgPSB7JVBhcmFtfTsKICAgIGJsZXNzKCAkU2VsZiwgJFR5cGUgKTsKCiAgICByZXR1cm4g
JFNlbGY7Cn0KCnN1YiBSdW4gewogICAgbXkgKCAkU2VsZiwgJVBhcmFtICkgPSBAXzsKCiAgICBt
eSAkTGF5b3V0T2JqZWN0ID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpPdXRwdXQ6OkhUTUw6
OkxheW91dCcpOwogICAgbXkgJENvbmZpZ09iamVjdCA9ICRLZXJuZWw6Ok9NLT5HZXQoJ0tlcm5l
bDo6Q29uZmlnJyk7CiAgICBteSAkVXNlck9iamVjdCAgID0gJEtlcm5lbDo6T00tPkdldCgnS2Vy
bmVsOjpTeXN0ZW06OlVzZXInKTsKICAgIG15ICRHcm91cE9iamVjdCAgPSAkS2VybmVsOjpPTS0+
R2V0KCdLZXJuZWw6OlN5c3RlbTo6R3JvdXAnKTsKICAgIG15ICRQYXJhbU9iamVjdCAgPSAkS2Vy
bmVsOjpPTS0+R2V0KCdLZXJuZWw6OlN5c3RlbTo6V2ViOjpSZXF1ZXN0Jyk7CiAgICBteSAkUXVl
dWVPYmplY3QgID0gJEtlcm5lbDo6T00tPkdldCgnS2VybmVsOjpTeXN0ZW06OlF1ZXVlJyk7Cgog
ICAgIyBnZXQgdGVtcGxhdGUgbmFtZQogICAgbXkgJFRlbXBsYXRlbmFtZSA9ICRQYXJhbXtUZW1w
bGF0ZUZpbGV9IHx8ICcnOwogICAgcmV0dXJuIDEgaWYgISRUZW1wbGF0ZW5hbWU7CiAgICByZXR1
cm4gMSBpZiAhJFBhcmFte1RlbXBsYXRlc30tPnskVGVtcGxhdGVuYW1lfTsKCiAgICBteSAlVXNl
ckdyb3VwcyA9ICRHcm91cE9iamVjdC0+UGVybWlzc2lvblVzZXJHZXQoCiAgICAgICAgVXNlcklE
ID0+ICRMYXlvdXRPYmplY3QtPntVc2VySUR9LAogICAgICAgIFR5cGUgICA9PiAncncnLAogICAg
KTsKCiAgICBteSAlR3JvdXBOYW1lcyA9IHJldmVyc2UgJVVzZXJHcm91cHM7CgogICAgbXkgQEdy
b3VwUGVybWlzc2lvbnMgPSBAeyAkQ29uZmlnT2JqZWN0LT5HZXQoJ1F1aWNrT3duZXJDaGFuZ2U6
OlZpZXdQZXJtaXNzaW9uQnlHcm91cCcpIHx8IFtdIH07CiAgICBpZiAoIEBHcm91cFBlcm1pc3Np
b25zICkgewogICAgICAgIG15ICRJc0FsbG93ZWQgPSBncmVweyAkR3JvdXBOYW1lc3skX30gfUBH
cm91cFBlcm1pc3Npb25zOwogICAgICAgIHJldHVybiAxIGlmICEkSXNBbGxvd2VkOwogICAgfQoK
ICAgIG15ICVVc2VyID0gJFVzZXJPYmplY3QtPlVzZXJMaXN0KAogICAgICAgIFR5cGUgICAgPT4g
J0xvbmcnLAogICAgKTsKCiAgICBteSAkVHlwZSAgICAgICA9ICRDb25maWdPYmplY3QtPkdldCgn
UXVpY2tPd25lckNoYW5nZTo6UGVybWlzc2lvbnMnKSB8fCAncncnOwogICAgbXkgJEFnZW50R3Jv
dXAgPSAkQ29uZmlnT2JqZWN0LT5HZXQoJ1F1aWNrT3duZXJDaGFuZ2U6Ok93bmVyR3JvdXAnKTsK
CiAgICBpZiAoICRBZ2VudEdyb3VwICkgewogICAgICAgIG15ICRHcm91cElEID0gJEdyb3VwT2Jq
ZWN0LT5Hcm91cExvb2t1cCggR3JvdXAgPT4gJEFnZW50R3JvdXAgKTsKCiAgICAgICAgJVVzZXIg
PSAkR3JvdXBPYmplY3QtPkdyb3VwTWVtYmVyTGlzdCgKICAgICAgICAgICAgR3JvdXBJRCA9PiAk
R3JvdXBJRCwKICAgICAgICAgICAgVHlwZSAgICA9PiAkVHlwZSwKICAgICAgICAgICAgUmVzdWx0
ICA9PiAnSEFTSCcsCiAgICAgICAgKTsKCiAgICAgICAgJFVzZXJ7JF99ID0gJFVzZXJPYmplY3Qt
PlVzZXJOYW1lKCBVc2VySUQgPT4gJF8gKSBmb3Iga2V5cyAlVXNlcjsKICAgIH0KCiAgICBteSAk
UXVldWVJRCAgICAgICAgID0gJFBhcmFtT2JqZWN0LT5HZXRQYXJhbSggUGFyYW0gPT4gJ1F1ZXVl
SUQnICk7CiAgICBteSAkUXVldWVBZ2VudEdyb3VwID0gJENvbmZpZ09iamVjdC0+R2V0KCdRdWlj
a093bmVyQ2hhbmdlOjpRdWV1ZUdyb3VwcycpIHx8IHt9OwogICAgbXkgJFVzZVF1ZXVlR3JvdXAg
ICA9ICRDb25maWdPYmplY3QtPkdldCgnUXVpY2tPd25lckNoYW5nZTo6VXNlUXVldWVHcm91cCcp
OwoKICAgIG15ICRRdWV1ZU5hbWUgPSAnJzsKICAgIGlmICggJFF1ZXVlSUQgKSB7CiAgICAgICAg
JFF1ZXVlTmFtZSA9ICRRdWV1ZU9iamVjdC0+UXVldWVMb29rdXAoIFF1ZXVlSUQgPT4gJFF1ZXVl
SUQgKTsKCiAgICAgICAgaWYgKCAkVXNlUXVldWVHcm91cCApIHsKICAgICAgICAgICAgbXkgJVF1
ZXVlID0gJFF1ZXVlT2JqZWN0LT5RdWV1ZUdldCggSUQgPT4gJFF1ZXVlSUQgKTsKCiAgICAgICAg
ICAgICRRdWV1ZUFnZW50R3JvdXAtPnskUXVldWVOYW1lfSA9ICRHcm91cE9iamVjdC0+R3JvdXBM
b29rdXAoIEdyb3VwSUQgPT4gJFF1ZXVle0dyb3VwSUR9ICk7CiAgICAgICAgfQogICAgfQoKICAg
IGlmICggJFF1ZXVlQWdlbnRHcm91cCAmJiAkUXVldWVOYW1lICYmICRRdWV1ZUFnZW50R3JvdXAt
PnsgJFF1ZXVlTmFtZSB9ICkgewogICAgICAgIG15ICRHcm91cE5hbWUgPSAkUXVldWVBZ2VudEdy
b3VwLT57ICRRdWV1ZU5hbWUgfTsKICAgICAgICBteSAkR3JvdXBJRCAgID0gJEdyb3VwT2JqZWN0
LT5Hcm91cExvb2t1cCggR3JvdXAgPT4gJEdyb3VwTmFtZSApOwoKICAgICAgICAlVXNlciA9ICRH
cm91cE9iamVjdC0+R3JvdXBNZW1iZXJMaXN0KAogICAgICAgICAgICBHcm91cElEID0+ICRHcm91
cElELAogICAgICAgICAgICBUeXBlICAgID0+ICRUeXBlLAogICAgICAgICAgICBSZXN1bHQgID0+
ICdIQVNIJywKICAgICAgICApOwoKICAgICAgICAkVXNlcnskX30gPSAkVXNlck9iamVjdC0+VXNl
ck5hbWUoIFVzZXJJRCA9PiAkXyApIGZvciBrZXlzICVVc2VyOwogICAgfQoKICAgIG15IEBEYXRh
ID0gbWFweyB7IEtleSA9PiAkXywgVmFsdWUgPT4gJFVzZXJ7JF99IH0gfXNvcnR7ICRVc2VyeyRh
fSBjbXAgJFVzZXJ7JGJ9IH1rZXlzICVVc2VyOwogICAgCiAgICBteSAkTGFiZWwgPSAkQ29uZmln
T2JqZWN0LT5HZXQoJ1F1aWNrT3duZXJDaGFuZ2U6Ok5vbmVMYWJlbCcpIHx8ICdRdWljayBPd25l
ciBDaGFuZ2UnOwoKICAgIHVuc2hpZnQgQERhdGEsIHsKICAgICAgICBLZXkgICA9PiAnMCcsCiAg
ICAgICAgVmFsdWUgPT4gJyAtICcgLiAkTGF5b3V0T2JqZWN0LT57TGFuZ3VhZ2VPYmplY3R9LT5U
cmFuc2xhdGUoICRMYWJlbCApICAuICcgLSAnLAogICAgfTsKICAgIAogICAgbXkgJFNlbGVjdCA9
ICRMYXlvdXRPYmplY3QtPkJ1aWxkU2VsZWN0aW9uKAogICAgICAgIERhdGEgICAgICAgPT4gXEBE
YXRhLAogICAgICAgIE5hbWUgICAgICAgPT4gJ1F1aWNrT3duZXJDaGFuZ2UnLAogICAgICAgIFNp
emUgICAgICAgPT4gMSwKICAgICAgICBIVE1MUXVvdGUgID0+IDEsCiAgICAgICAgU2VsZWN0ZWRJ
RCA9PiAwLAogICAgICAgIENsYXNzICAgICAgPT4gJ1F1aWNrT3duZXJDaGFuZ2VTZWxlY3QgTW9k
ZXJuaXplJywKICAgICk7CgogICAgbXkgJFNuaXBwZXQgPSAkTGF5b3V0T2JqZWN0LT5PdXRwdXQo
CiAgICAgICAgVGVtcGxhdGVGaWxlID0+ICdRdWlja093bmVyQ2hhbmdlU25pcHBldFRpY2tldFZp
ZXcnLAogICAgICAgIERhdGEgICAgICAgICA9PiB7CiAgICAgICAgICAgIFNlbGVjdCA9PiAkU2Vs
ZWN0LAogICAgICAgIH0sCiAgICApOyAKCiAgICAjc2NhbiBodG1sIG91dHB1dCBhbmQgZ2VuZXJh
dGUgbmV3IGh0bWwgaW5wdXQKICAgICR7ICRQYXJhbXtEYXRhfSB9ID1+IHN7KDx1bCBccysgY2xh
c3M9IkFjdGlvbnMiPiBccyogPGxpIC4qPyAvbGk+KX17JDEgJFNuaXBwZXR9eG1nczsKCiAgICBy
ZXR1cm4gMTsKfQoKMTsK
IyAtLQojIFF1aWNrT3duZXJDaGFuZ2VTbmlwcGV0LnR0IC0gcHJvdmlkZXMgSFRNTCBmb3IgUXVp
Y2tPd25lckNoYW5nZVNuaXBwZXQucG0KIyBDb3B5cmlnaHQgKEMpIDIwMTUgUGVybC1TZXJ2aWNl
cy5kZSwgaHR0cDovL3d3dy5wZXJsLXNlcnZpY2VzLmRlIAojIC0tCiMgVGhpcyBzb2Z0d2FyZSBj
b21lcyB3aXRoIEFCU09MVVRFTFkgTk8gV0FSUkFOVFkuIEZvciBkZXRhaWxzLCBzZWUKIyB0aGUg
ZW5jbG9zZWQgZmlsZSBDT1BZSU5HIGZvciBsaWNlbnNlIGluZm9ybWF0aW9uIChBR1BMKS4gSWYg
eW91CiMgZGlkIG5vdCByZWNlaXZlIHRoaXMgZmlsZSwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9s
aWNlbnNlcy9hZ3BsLnR4dC4KIyAtLQoKICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Ilsl
IERhdGEuQ2xhc3MgfCBodG1sICVdIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGZvcm0gdGl0
bGU9IlslIFRyYW5zbGF0ZSgiUXVpY2tPd25lckNoYW5nZSB0aWNrZXQiKSB8IGh0bWwgJV0iIGFj
dGlvbj0iWyUgRW52KCJDR0lIYW5kbGUiKSB8IGh0bWwgJV0iIG1ldGhvZD0icG9zdCI+CiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJBY3Rpb24i
IHZhbHVlPSJBZ2VudFRpY2tldE93bmVyQ2hhbmdlQnVsayIvPgogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iVGlja2V0SUQiIHZhbHVlPSJbJSBE
YXRhLlRpY2tldElEIHwgaHRtbCAlXSIvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxh
YmVsIGZvcj0iUXVpY2tPd25lckNoYW5nZSIgY2xhc3M9IkludmlzaWJsZVRleHQiPlslIFRyYW5z
bGF0ZSgiUXVpY2tPd25lckNoYW5nZSIpIHwgaHRtbCAlXTo8L2xhYmVsPgogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgWyUgRGF0YS5TZWxlY3QgJV0KICAgICAgICAgICAgICAgICAgICAgICAg
PC9mb3JtPgpbJSBXUkFQUEVSIEpTT25Eb2N1bWVudENvbXBsZXRlICVdCjxzY3JpcHQgdHlwZT0i
dGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWwogICAgJCgnI1F1aWNrT3duZXJDaGFuZ2UnKS5i
aW5kKCdjaGFuZ2UnLCBmdW5jdGlvbiAoRXZlbnQpIHsKICAgICAgICB2YXIgVVJMID0gQ29yZS5D
b25maWcuR2V0KCdCYXNlbGluaycpOwogICAgICAgIHZhciBUSUQgPSAkKHRoaXMpLnZhbCgpOwoK
ICAgICAgICB2YXIgdGhpc09iamVjdCA9ICQodGhpcyk7CgogICAgICAgIGlmICggVElEICkgewog
ICAgICAgICAgICB0aGlzT2JqZWN0LmNsb3Nlc3QoJ2Zvcm0nKS5zdWJtaXQoKTsKICAgICAgICB9
CiAgICB9KTsKLy9dXT48L3NjcmlwdD4KWyUgRU5EICVdCiAgICAgICAgICAgICAgICAgICAgPC9s
aT4K
IyAtLQojIFF1aWNrT3duZXJDaGFuZ2VTbmlwcGV0VGlja2V0Vmlldy50dCAtIHByb3ZpZGVzIEhU
TUwgZm9yIFF1aWNrT3duZXJDaGFuZ2VTbmlwcGV0VGlja2V0Vmlldy5wbQojIENvcHlyaWdodCAo
QykgMjAxNSAtIDIwMTggUGVybC1TZXJ2aWNlcy5kZSwgaHR0cDovL3d3dy5wZXJsLXNlcnZpY2Vz
LmRlIAojIC0tCiMgVGhpcyBzb2Z0d2FyZSBjb21lcyB3aXRoIEFCU09MVVRFTFkgTk8gV0FSUkFO
VFkuIEZvciBkZXRhaWxzLCBzZWUKIyB0aGUgZW5jbG9zZWQgZmlsZSBDT1BZSU5HIGZvciBsaWNl
bnNlIGluZm9ybWF0aW9uIChBR1BMKS4gSWYgeW91CiMgZGlkIG5vdCByZWNlaXZlIHRoaXMgZmls
ZSwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9hZ3BsLnR4dC4KIyAtLQoKICAgICAg
ICAgICAgICAgICAgICA8bGkgY2xhc3M9IkJ1bGsgQWx3YXlzUHJlc2VudCBbJSBEYXRhLkNsYXNz
IHwgaHRtbCAlXSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxmb3JtIHRpdGxlPSJbJSBUcmFu
c2xhdGUoIlF1aWNrT3duZXJDaGFuZ2UgdGlja2V0IikgfCBodG1sICVdIiBhY3Rpb249IlslIEVu
digiQ0dJSGFuZGxlIikgfCBodG1sICVdIiBtZXRob2Q9InBvc3QiIG5hbWU9InF1aWNrb3duZXJj
aGFuZ2UiIGlkPSJxdWlja293bmVyY2hhbmdlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IkFjdGlvbiIgdmFsdWU9IkFnZW50VGlja2V0T3du
ZXJDaGFuZ2VCdWxrIi8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJR
dWlja093bmVyQ2hhbmdlIiBjbGFzcz0iSW52aXNpYmxlVGV4dCI+WyUgVHJhbnNsYXRlKCJRdWlj
a093bmVyQ2hhbmdlIikgfCBodG1sICVdOjwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBbJSBEYXRhLlNlbGVjdCAlXQogICAgICAgICAgICAgICAgICAgICAgICA8L2Zvcm0+CiAg
ICAgICAgICAgICAgICAgICAgPC9saT4K
ewogICAgIm5hbWUiOiAiUXVpY2tPd25lckNoYW5nZSIsCiAgICAidmVyc2lvbiI6ICIxMC4wLjEi
LAogICAgInByb2R1Y3QiOiAib3RvYm8iLAogICAgImZyYW1ld29yayI6IFsKICAgICAgICAiMTAu
MC54IiwKICAgICAgICAiMTAuMS54IgogICAgXSwKICAgICJ2ZW5kb3IiOiB7CiAgICAgICAgIm5h
bWUiOiAgIlBlcmwtU2VydmljZXMuZGUiLAogICAgICAgICJ1cmwiOiAiaHR0cDovL3d3dy5wZXJs
LXNlcnZpY2VzLmRlIgogICAgfSwKICAgICJsaWNlbnNlIjogIkdOVSBBRkZFUk8gR0VORVJBTCBQ
VUJMSUMgTElDRU5TRSBWZXJzaW9uIDMsIE5vdmVtYmVyIDIwMDciLAogICAgImRlc2NyaXB0aW9u
IiA6IHsKICAgICAgICAiZW4iOiAiQ2hhbmdlIHRpY2tldCBvd25lcnMgZWFzaWx5LiIsCiAgICAg
ICAgImRlIjogIlRpY2tldGJlc2l0emVyIGxlaWNodCB3ZWNoc2Vsbi4iLAogICAgICAgICJodSI6
ICJKZWd5dHVsYWpkb25vc29rIGVneXN6ZXLFsSBtZWd2w6FsdG96dGF0w6FzYS4iCiAgICB9Cn0K
PWhlYWQxIE5BTUUKClF1aWNrT3duZXJDaGFuZ2UgLSBjaGFuZ2UgdGhlIHRpY2tldCBvd25lciBx
dWlja2x5Cgo9aGVhZDEgREVTQ1JJUFRJT04KCldpdGggdGhpcyBhZGRvbiB5b3UgZ2V0IGEgZHJv
cGRvd24gaW4gdGhlIHRpY2tldCB6b29tIGFuZCB0aWNrZXQgb3ZlcnZpZXcgdGhhdAptYWtlcyBp
dCBwb3NzaWJsZSB0byBjaGFuZ2UgdGhlIG93bmVyIHdpdGggdHdvIGNsaWNrcy4uLgoKPWhlYWQx
IEFDS05PV0xFREdNRU5UCgpUaGFua3MgdG8gYWxsIHdobyBjb250cmlidXRlZCBidWdmaXhlcyBv
ciBmZWF0dXJlczoKCj1vdmVyIDQKCj1pdGVtICogdGhvbXR1eAoKVGhvbXR1eCBhZGRlZCB0aGUg
cG9zc2liaWxpdHkgdG8gYXV0b21hdGljYWxseSBsb2NrIHRoZSB0aWNrZXQgZm9yIHRoZSBuZXcK
b3duZXIuCgo9YmFjawoKRm9ydHVuYXRlbHksIHNvbWUgZmVhdHVyZXMgd2VyZSBzcG9uc29yZWQg
YnkgY29tcGFuaWVzOgoKPW92ZXIgNAoKPWl0ZW0gKiBIWURSTyBTeXN0ZW1zCgpIWURSTyBTeXN0
ZW1zIEtHIEw8aHR0cDovL3d3dy5oeWRyby5hZXJvLz4gc3BvbnNvcmVkIHRoZSBmZWF0dXJlIHRo
YXQgdGhlIHJlc3BvbnNpYmxlCmNhbiBiZSBzZXQgYXMgd2VsbCAodGhlIHNhbWUgQWdlbnQgYXMg
dGhlIG93bmVyKS4gQW5vdGhlciBmZWF0dXJlIHNwb25zb3JlZCBieSBIWURSTzoKWW91IGNhbiBk
ZWZpbmUgYSBncm91cCB0byBsaW1pdCB0aGUgcG9zc2libGUgb3duZXIgdG8gbWVtYmVycyBvZiB0
aGlzIGdyb3VwLiBBbmQgeW91CmNhbiBkZWZpbmUgc3VjaCBhIGdyb3VwIGZvciBlYWNoIHF1ZXVl
LgoKPWJhY2sKCj1oZWFkMSBBVVRIT1IgQU5EIExJQ0VOU0UKClRoaXMgcGFja2FnZSB3YXMgd3Jp
dHRlbiBieSBSZW5lZSBCYWVja2VyIEU8bHQ+b3Ryc0BwZXJsLXNlcnZpY2VzLmRlRTxndD4uCgpU
aGUgcGFja2FnZSBpcyBsaWNlbnNlZCB1bnRlciBBR1BMLiBJZiB5b3UKZGlkIG5vdCByZWNlaXZl
IHRoaXMgZmlsZSwgc2VlIEw8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2FncGwudHh0Pi4K
Cgo=
PWVuY29kaW5nIHV0Zi04Cgo9aGVhZDEgTsOJVgoKUXVpY2tPd25lckNoYW5nZSAtIGEgamVneXR1
bGFqZG9ub3MgZ3lvcnMgbWVndsOhbHRvenRhdMOhc2EuCgo9aGVhZDEgTEXDjVLDgVMKCkV6emVs
IGEga2llZ8Opc3rDrXTFkXZlbCBlZ3kgbGVuecOtbMOzIG1lbsO8dCBrYXAgYSBqZWd5bmFnecOt
dMOhc2JhbiDDqXMgYSAKamVnecOhdHRla2ludMWRYmVuLCBhbWVseSBsZWhldMWRdsOpIHRlc3pp
IGEgdHVsYWpkb25vcyBtZWd2w6FsdG96dGF0w6Fzw6F0IGtldHTFkSAKa2F0dGludMOhc3NhbC4K
Cj1oZWFkMSBLw5ZTWsOWTkVUTllJTFbDgU7DjVTDgVMKClN6ZXJlbmNzw6lyZSBuw6low6FueSBm
dW5rY2nDs3QgdMOhbW9nYXR0YWsgYSBrw7Z2ZXRrZXrFkSB2w6FsbGFsYXRvazoKCj1vdmVyIDQK
Cj1pdGVtICogSFlEUk8gU3lzdGVtcwoKQSBIWURSTyBTeXN0ZW1zIEtHIEw8aHR0cDovL3d3dy5o
eWRyby5hZXJvLz4gdMOhbW9nYXR0YSBhenQgYSBmdW5rY2nDs3QsIGhvZ3kgCmEgZmVsZWzFkXN0
IGlzIGJlIGxlaGVzc2VuIMOhbGzDrXRhbmkgKHVneWFuYXJyYSBheiDDvGd5aW50w6l6xZFyZSwg
bWludCBhIAp0dWxhamRvbm9zdCkuIEVneSB0b3bDoWJiaSBmdW5rY2nDs3QgaXMgdMOhbW9nYXRv
dHQgYSBIWURSTzogbWVnaGF0w6Fyb3poYXQgZWd5IApjc29wb3J0b3QsIGhvZ3kgYSBsZWhldHPD
qWdlcyB0dWxhamRvbm9zdCBlbm5layBhIGNzb3BvcnRuYWsgYSB0YWdqYWlyYSAKa29ybMOhdG96
emEuIElseWVuIGNzb3BvcnRvdCBtaW5kZW4gZWd5ZXMgdsOhcsOzbGlzdMOhaG96IG1lZ2hhdMOh
cm96aGF0LgoKPWJhY2sKCj1oZWFkMSBTWkVSWsWQIMOJUyBMSUNFTkMKCkV6dCBhIGNzb21hZ290
IFJlbsOpZSBCw6Rja2VyIEU8bHQ+b3Ryc0BwZXJsLXNlcnZpY2VzLmRlRTxndD4ga8Opc3rDrXRl
dHRlLgoKRXogYSBtb2R1bCBheiBBR1BMIDMuMCBzemVyaW50IGxpY2VuY2VsdC4gSGEgbmVtIGth
cHRhIG1lZyBlenQgYSBmw6FqbHQsIApha2tvciBuw6l6emUgbWVnIGEgTDxodHRwOi8vd3d3Lmdu
dS5vcmcvbGljZW5zZXMvYWdwbC50eHQ+IG9sZGFsb24uCgo9aGVhZDEgTUFHWUFSIEZPUkTDjVTD
gVMKCkEgbWFneWFyIGZvcmTDrXTDoXN0IGF6IE9UUlMtbWVnb2xkw6Fzb2sgY3NhcGF0YSBrw6lz
esOtdGV0dGUuCkNvcHlyaWdodCAoQykgMjAxNiDDmnIgQmFsw6F6cywgTDxodHRwOi8vb3Rycy1t
ZWdvbGRhc29rLmh1PgoK
2022-04-26 13:08:46reb