php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Return to Bug #23723
Patch striptags.diff.base64 revision 2011-01-10 21:20 UTC by jthijssen at noxlogic dot nl
Patch striptags.diff revision 2011-01-09 20:41 UTC by jthijssen at noxlogic dot nl

Patch striptags.diff.base64 for Strings related Bug #23723

Patch version 2011-01-10 21:20 UTC

Return to Bug #23723 | Download this patch
This patch renders other patches obsolete

Obsolete patches:

Patch Revisions:

Developer: jthijssen@noxlogic.nl

SW5kZXg6IGV4dC9zdGFuZGFyZC9zdHJpbmcuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBleHQvc3RhbmRhcmQv
c3RyaW5nLmMJKHJldmlzaW9uIDMwNzEzNSkKKysrIGV4dC9zdGFuZGFyZC9zdHJpbmcuYwkod29y
a2luZyBjb3B5KQpAQCAtMzk5Niw3ICszOTk2LDcgQEAKIH0KIC8qIH19fSAqLwogCi0vKiB7e3sg
cHJvdG8gc3RyaW5nIHN0cmlwX3RhZ3Moc3RyaW5nIHN0ciBbLCBzdHJpbmcgYWxsb3dhYmxlX3Rh
Z3NdKQorLyoge3t7IHByb3RvIHN0cmluZyBzdHJpcF90YWdzKHN0cmluZyBzdHIgWywgc3RyaW5n
IGFsbG93YWJsZV90YWdzXSBbLCBib29sIHdoaXRlbGlzdF0pCiAgICBTdHJpcHMgSFRNTCBhbmQg
UEhQIHRhZ3MgZnJvbSBhIHN0cmluZyAqLwogUEhQX0ZVTkNUSU9OKHN0cmlwX3RhZ3MpCiB7CkBA
IC00MDA0LDExICs0MDA0LDEyIEBACiAJY2hhciAqc3RyOwogCXp2YWwgKiphbGxvdz1OVUxMOwog
CWNoYXIgKmFsbG93ZWRfdGFncz1OVUxMOworICAgICAgICB6ZW5kX2Jvb2wgd2hpdGVsaXN0PTE7
CiAJaW50IGFsbG93ZWRfdGFnc19sZW49MDsKIAlpbnQgc3RyX2xlbjsKIAlzaXplX3QgcmV0dmFs
X2xlbjsKIAotCWlmICh6ZW5kX3BhcnNlX3BhcmFtZXRlcnMoWkVORF9OVU1fQVJHUygpIFRTUk1M
U19DQywgInN8WiIsICZzdHIsICZzdHJfbGVuLCAmYWxsb3cpID09IEZBSUxVUkUpIHsKKwlpZiAo
emVuZF9wYXJzZV9wYXJhbWV0ZXJzKFpFTkRfTlVNX0FSR1MoKSBUU1JNTFNfQ0MsICJzfFpiIiwg
JnN0ciwgJnN0cl9sZW4sICZhbGxvdywgJndoaXRlbGlzdCkgPT0gRkFJTFVSRSkgewogCQlyZXR1
cm47CiAJfQogCQpAQCAtNDAyMCw3ICs0MDIxLDcgQEAKIAl9CiAKIAlidWYgPSBlc3RybmR1cChz
dHIsIHN0cl9sZW4pOwotCXJldHZhbF9sZW4gPSBwaHBfc3RyaXBfdGFnc19leChidWYsIHN0cl9s
ZW4sIE5VTEwsIGFsbG93ZWRfdGFncywgYWxsb3dlZF90YWdzX2xlbiwgMCk7CisJcmV0dmFsX2xl
biA9IHBocF9zdHJpcF90YWdzX2V4KGJ1Ziwgc3RyX2xlbiwgTlVMTCwgYWxsb3dlZF90YWdzLCBh
bGxvd2VkX3RhZ3NfbGVuLCAwLCB3aGl0ZWxpc3QpOwogCVJFVFVSTl9TVFJJTkdMKGJ1ZiwgcmV0
dmFsX2xlbiwgMCk7CiB9CiAvKiB9fX0gKi8KQEAgLTQyMzUsOSArNDIzNiw5IEBACiB9CiAvKiB9
fX0gKi8KIAotUEhQQVBJIHNpemVfdCBwaHBfc3RyaXBfdGFncyhjaGFyICpyYnVmLCBpbnQgbGVu
LCBpbnQgKnN0YXRlcHRyLCBjaGFyICphbGxvdywgaW50IGFsbG93X2xlbikgLyoge3t7ICovCitQ
SFBBUEkgc2l6ZV90ICBwaHBfc3RyaXBfdGFncyhjaGFyICpyYnVmLCBpbnQgbGVuLCBpbnQgKnN0
YXRlcHRyLCBjaGFyICphbGxvdywgaW50IGFsbG93X2xlbiwgaW50IHdoaXRlbGlzdCkgLyoge3t7
ICovCiB7Ci0JcmV0dXJuIHBocF9zdHJpcF90YWdzX2V4KHJidWYsIGxlbiwgc3RhdGVwdHIsIGFs
bG93LCBhbGxvd19sZW4sIDApOworCXJldHVybiBwaHBfc3RyaXBfdGFnc19leChyYnVmLCBsZW4s
IHN0YXRlcHRyLCBhbGxvdywgYWxsb3dfbGVuLCAwLCB3aGl0ZWxpc3QpOwogfQogLyogfX19ICov
CiAKQEAgLTQyNTgsMTAgKzQyNTksMTcgQEAKIAlpbiBzdGF0ZSAxIGFuZCB3aGVuIHRoZSB0YWcg
aXMgY2xvc2VkIGNoZWNrIGl0IGFnYWluc3QgdGhlCiAJYWxsb3cgc3RyaW5nIHRvIHNlZSBpZiB3
ZSBzaG91bGQgYWxsb3cgaXQuCiAKKwlXaGVuIHdoaXRlbGlzdCAgaXMgdHJ1ZSAoZGVmYXVsdCB2
YWx1ZSksIGl0IHdpbGwgYWxsb3cgb25seSB0aGUKKwl0YWdzIHN0YXRlZCBpbiB0aGUgYWxsb3cg
c3RyaW5nLgorIAorCVdoZW4gd2hpdGVsaXN0IGlzIGZhbHNlLCBpdCB3aWxsIGxlYXZlIGFsbCB0
YWdzIGFsb25lIEVYQ0VQVCB0aGUKKwl0YWdzIHRoYXQgdGhhdCBhcmUgaW5zaWRlIHRoZSBhbGxv
dy1saXN0IGluIGVmZmVjdCBtYWtpbmcgdGhlCisJJ2FsbG93JyBwYXJhbWV0ZXIgYSBibGFja2xp
c3QKKwogCXN3bTogQWRkZWQgYWJpbGl0eSB0byBzdHJpcCA8P3htbCB0YWdzIHdpdGhvdXQgYXNz
dW1pbmcgaXQgUEhQCiAJY29kZS4KICovCi1QSFBBUEkgc2l6ZV90IHBocF9zdHJpcF90YWdzX2V4
KGNoYXIgKnJidWYsIGludCBsZW4sIGludCAqc3RhdGVwdHIsIGNoYXIgKmFsbG93LCBpbnQgYWxs
b3dfbGVuLCB6ZW5kX2Jvb2wgYWxsb3dfdGFnX3NwYWNlcykKK1BIUEFQSSBzaXplX3QgcGhwX3N0
cmlwX3RhZ3NfZXgoY2hhciAqcmJ1ZiwgaW50IGxlbiwgaW50ICpzdGF0ZXB0ciwgY2hhciAqYWxs
b3csIGludCBhbGxvd19sZW4sIHplbmRfYm9vbCBhbGxvd190YWdfc3BhY2VzLCB6ZW5kX2Jvb2wg
d2hpdGVsaXN0KQogewogCWNoYXIgKnRidWYsICpidWYsICpwLCAqdHAsICpycCwgYywgbGM7CiAJ
aW50IGJyLCBpPTAsIGRlcHRoPTAsIGluX3EgPSAwOwpAQCAtNDM2OSw3ICs0Mzc3LDcgQEAKIAkJ
CQkJCQl9CiAJCQkJCQkJKih0cCsrKSA9ICc+JzsKIAkJCQkJCQkqdHA9J1wwJzsKLQkJCQkJCQlp
ZiAocGhwX3RhZ19maW5kKHRidWYsIHRwLXRidWYsIGFsbG93KSkgeworCQkJCQkJCWlmICghIChw
aHBfdGFnX2ZpbmQodGJ1ZiwgdHAtdGJ1ZiwgYWxsb3cpIF4gd2hpdGVsaXN0KSApIHsKIAkJCQkJ
CQkJbWVtY3B5KHJwLCB0YnVmLCB0cC10YnVmKTsKIAkJCQkJCQkJcnAgKz0gdHAtdGJ1ZjsKIAkJ
CQkJCQl9CkluZGV4OiBleHQvc3RhbmRhcmQvdGVzdHMvc3RyaW5ncy9zdHJpcF90YWdzX3Zhcmlh
dGlvbjQucGhwdAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBleHQvc3RhbmRhcmQvdGVzdHMvc3RyaW5ncy9zdHJp
cF90YWdzX3ZhcmlhdGlvbjQucGhwdAkocmV2aXNpb24gMzA3MTM1KQorKysgZXh0L3N0YW5kYXJk
L3Rlc3RzL3N0cmluZ3Mvc3RyaXBfdGFnc192YXJpYXRpb240LnBocHQJKHdvcmtpbmcgY29weSkK
QEAgLTQsNyArNCw3IEBACiBzaG9ydF9vcGVuX3RhZyA9IG9uCiAtLUZJTEUtLQogPD9waHAKLS8q
IFByb3RvdHlwZSAgOiBzdHJpbmcgc3RyaXBfdGFncyhzdHJpbmcgJHN0ciBbLCBzdHJpbmcgJGFs
bG93YWJsZV90YWdzXSkKKy8qIFByb3RvdHlwZSAgOiBzdHJpbmcgc3RyaXBfdGFncyhzdHJpbmcg
JHN0ciBbLCBzdHJpbmcgJGFsbG93YWJsZV90YWdzXSBbLCBib29sICR3aGl0ZWxpc3RdKQogICog
RGVzY3JpcHRpb246IFN0cmlwcyBIVE1MIGFuZCBQSFAgdGFncyBmcm9tIGEgc3RyaW5nCiAgKiBT
b3VyY2UgY29kZTogZXh0L3N0YW5kYXJkL3N0cmluZy5jCiAqLwpAQCAtMzMsNiArMzMsNyBAQAog
CiAvL3ZhbGlkIGh0bWwgYW5kIHBocCB0YWdzCiAkcXVvdGVzID0gIjxwPjxhPjw/cGhwPGh0bWw+
IjsKKyRxdW90ZXMyID0gIjxwPjxhPiI7CiAKIC8vbG9vcCB0aHJvdWdoIHRoZSB2YXJpb3VzIGVs
ZW1lbnRzIG9mIHN0cmluZ3MgYXJyYXkgdG8gdGVzdCBzdHJpcF90YWdzKCkgZnVuY3Rpb25hbGl0
eQogJGl0ZXJhdG9yID0gMTsKQEAgLTQwLDYgKzQxLDcgQEAKIHsKICAgICAgIGVjaG8gIi0tIEl0
ZXJhdGlvbiAkaXRlcmF0b3IgLS1cbiI7CiAgICAgICB2YXJfZHVtcCggc3RyaXBfdGFncygkc3Ry
aW5nX3ZhbHVlLCAkcXVvdGVzKSApOworICAgICAgdmFyX2R1bXAoIHN0cmlwX3RhZ3MoJHN0cmlu
Z192YWx1ZSwgJHF1b3RlczIsIGZhbHNlKSApOwogICAgICAgJGl0ZXJhdG9yKys7CiB9CiAKQEAg
LTQ5LDI2ICs1MSwzOCBAQAogKioqIFRlc3Rpbmcgc3RyaXBfdGFncygpIDogdXNhZ2UgdmFyaWF0
aW9ucyAqKioKIC0tIEl0ZXJhdGlvbiAxIC0tCiBzdHJpbmcoMzIpICJoZWxsbyAJCXdvcmxkLi4u
IHN0cmlwX3RhZ3NfdGVzdCIKK3N0cmluZyg1NCkgIjxhYmM+aGVsbG88L2FiYz4gCQl3b3JsZC4u
LiA8cHBwPnN0cmlwX3RhZ3NfdGVzdDwvcHBwPiIKIC0tIEl0ZXJhdGlvbiAyIC0tCiBzdHJpbmco
MzQpICJoZWxsbyBcdFx0d29ybGQuLi4gc3RyaXBfdGFnc190ZXN0Igorc3RyaW5nKDU2KSAiPGFi
Yz5oZWxsbzwvYWJjPiBcdFx0d29ybGQuLi4gPHBwcD5zdHJpcF90YWdzX3Rlc3Q8L3BwcD4iCiAt
LSBJdGVyYXRpb24gMyAtLQogc3RyaW5nKDApICIiCitzdHJpbmcoMjIpICI8JT9waHAgaGVsbG8J
IHdvcmxkPyU+IgogLS0gSXRlcmF0aW9uIDQgLS0KIHN0cmluZygwKSAiIgorc3RyaW5nKDIzKSAi
PCU/cGhwIGhlbGxvXHQgd29ybGQ/JT4iCiAtLSBJdGVyYXRpb24gNSAtLQogc3RyaW5nKDE4KSAi
PGh0bUw+aGVsbG88L2h0bUw+Igorc3RyaW5nKDE4KSAiPGh0bUw+aGVsbG88L2h0bUw+IgogLS0g
SXRlcmF0aW9uIDYgLS0KIHN0cmluZygxOCkgIjxodG1MPmhlbGxvPC9odG1MPiIKK3N0cmluZygx
OCkgIjxodG1MPmhlbGxvPC9odG1MPiIKIC0tIEl0ZXJhdGlvbiA3IC0tCiBzdHJpbmcoOSkgIkh0
TWwgdGV4dCIKK3N0cmluZygxOCkgIjxhLj5IdE1sIHRleHQ8Ly5hPiIKIC0tIEl0ZXJhdGlvbiA4
IC0tCiBzdHJpbmcoOSkgIkh0TWwgdGV4dCIKK3N0cmluZygxOCkgIjxhLj5IdE1sIHRleHQ8Ly5h
PiIKIC0tIEl0ZXJhdGlvbiA5IC0tCiBzdHJpbmcoMjYpICJJIGFtIG5vdCBhIHZhbGlkIGh0bWwg
dGV4dCIKK3N0cmluZygzNykgIjxubm4+SSBhbSBub3QgYSB2YWxpZCBodG1sIHRleHQ8L25ubj4i
CiAtLSBJdGVyYXRpb24gMTAgLS0KIHN0cmluZygyNikgIkkgYW0gbm90IGEgdmFsaWQgaHRtbCB0
ZXh0Igorc3RyaW5nKDM3KSAiPG5ubj5JIGFtIG5vdCBhIHZhbGlkIGh0bWwgdGV4dDwvbm5uPiIK
IC0tIEl0ZXJhdGlvbiAxMSAtLQogc3RyaW5nKDYyKSAiSSBhbSBhIHF1b3RlZCAoIikgc3RyaW5n
IHdpdGggc3BlY2lhbCBjaGFycyBsaWtlICQsXCEsXEAsXCUsXCYiCitzdHJpbmcoNzMpICI8bm5u
PkkgYW0gYSBxdW90ZWQgKCIpIHN0cmluZyB3aXRoIHNwZWNpYWwgY2hhcnMgbGlrZSAkLFwhLFxA
LFwlLFwmPC9ubm4+IgogLS0gSXRlcmF0aW9uIDEyIC0tCiBzdHJpbmcoNjQpICJJIGFtIGEgcXVv
dGVkIChcIikgc3RyaW5nIHdpdGggc3BlY2lhbCBjaGFycyBsaWtlIFwkLFwhLFxALFwlLFwmIgor
c3RyaW5nKDc1KSAiPG5ubj5JIGFtIGEgcXVvdGVkIChcIikgc3RyaW5nIHdpdGggc3BlY2lhbCBj
aGFycyBsaWtlIFwkLFwhLFxALFwlLFwmPC9ubm4+IgogRG9uZQpJbmRleDogZXh0L3N0YW5kYXJk
L3Rlc3RzL3N0cmluZ3Mvc3RyaXBfdGFnc19lcnJvci5waHB0Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV4dC9z
dGFuZGFyZC90ZXN0cy9zdHJpbmdzL3N0cmlwX3RhZ3NfZXJyb3IucGhwdAkocmV2aXNpb24gMzA3
MTM1KQorKysgZXh0L3N0YW5kYXJkL3Rlc3RzL3N0cmluZ3Mvc3RyaXBfdGFnc19lcnJvci5waHB0
CSh3b3JraW5nIGNvcHkpCkBAIC00LDcgKzQsNyBAQAogc2hvcnRfb3Blbl90YWcgPSBvbgogLS1G
SUxFLS0KIDw/cGhwCi0vKiBQcm90b3R5cGUgIDogc3RyaW5nIHN0cmlwX3RhZ3Moc3RyaW5nICRz
dHIgWywgc3RyaW5nICRhbGxvd2FibGVfdGFnc10pCisvKiBQcm90b3R5cGUgIDogc3RyaW5nIHN0
cmlwX3RhZ3Moc3RyaW5nICRzdHIgWywgc3RyaW5nICRhbGxvd2FibGVfdGFnc10gWywgYm9vbCAk
d2hpdGVsaXN0XSkKICAqIERlc2NyaXB0aW9uOiBTdHJpcHMgSFRNTCBhbmQgUEhQIHRhZ3MgZnJv
bSBhIHN0cmluZyAKICAqIFNvdXJjZSBjb2RlOiBleHQvc3RhbmRhcmQvc3RyaW5nLmMKICovCkBA
IC0yMCw4ICsyMCw5IEBACiBlY2hvICJcbi0tIFRlc3Rpbmcgc3RyaXBfdGFncygpIGZ1bmN0aW9u
IHdpdGggbW9yZSB0aGFuIGV4cGVjdGVkIG5vLiBvZiBhcmd1bWVudHMgLS1cbiI7CiAkc3RyID0g
IjxodG1sPmhlbGxvPC9odG1sPiI7CiAkYWxsb3dhYmxlX3RhZ3MgPSAiPGh0bWw+IjsKKyRrZWVw
X21vZGUgPSB0cnVlOwogJGV4dHJhX2FyZyA9IDEwOwotdmFyX2R1bXAoIHN0cmlwX3RhZ3MoJHN0
ciwgJGFsbG93YWJsZV90YWdzLCAkZXh0cmFfYXJnKSApOwordmFyX2R1bXAoIHN0cmlwX3RhZ3Mo
JHN0ciwgJGFsbG93YWJsZV90YWdzLCAka2VlcF9tb2RlLCAkZXh0cmFfYXJnKSApOwogCiBlY2hv
ICJEb25lIjsKID8+CkBAIC0zNSw2ICszNiw2IEBACiAKIC0tIFRlc3Rpbmcgc3RyaXBfdGFncygp
IGZ1bmN0aW9uIHdpdGggbW9yZSB0aGFuIGV4cGVjdGVkIG5vLiBvZiBhcmd1bWVudHMgLS0KIAot
V2FybmluZzogc3RyaXBfdGFncygpIGV4cGVjdHMgYXQgbW9zdCAyIHBhcmFtZXRlcnMsIDMgZ2l2
ZW4gaW4gJXMgb24gbGluZSAlZAorV2FybmluZzogc3RyaXBfdGFncygpIGV4cGVjdHMgYXQgbW9z
dCAzIHBhcmFtZXRlcnMsIDQgZ2l2ZW4gaW4gJXMgb24gbGluZSAlZAogTlVMTAogRG9uZQpJbmRl
eDogZXh0L3N0YW5kYXJkL3Rlc3RzL3N0cmluZ3Mvc3RyaXBfdGFnc192YXJpYXRpb241LnBocHQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gZXh0L3N0YW5kYXJkL3Rlc3RzL3N0cmluZ3Mvc3RyaXBfdGFnc192YXJp
YXRpb241LnBocHQJKHJldmlzaW9uIDMwNzEzNSkKKysrIGV4dC9zdGFuZGFyZC90ZXN0cy9zdHJp
bmdzL3N0cmlwX3RhZ3NfdmFyaWF0aW9uNS5waHB0CSh3b3JraW5nIGNvcHkpCkBAIC00LDcgKzQs
NyBAQAogc2hvcnRfb3Blbl90YWcgPSBvbgogLS1GSUxFLS0KIDw/cGhwCi0vKiBQcm90b3R5cGUg
IDogc3RyaW5nIHN0cmlwX3RhZ3Moc3RyaW5nICRzdHIgWywgc3RyaW5nICRhbGxvd2FibGVfdGFn
c10pCisvKiBQcm90b3R5cGUgIDogc3RyaW5nIHN0cmlwX3RhZ3Moc3RyaW5nICRzdHIgWywgc3Ry
aW5nICRhbGxvd2FibGVfdGFnc10gWywgYm9vbCAkd2hpdGVsaXN0XSkKICAqIERlc2NyaXB0aW9u
OiBTdHJpcHMgSFRNTCBhbmQgUEhQIHRhZ3MgZnJvbSBhIHN0cmluZwogICogU291cmNlIGNvZGU6
IGV4dC9zdGFuZGFyZC9zdHJpbmcuYwogKi8KQEAgLTY2LDEyICs2NiwxNSBAQAogCiAvLyBpbml0
aWFsaXplIHRoZSBzZWNvbmQgYXJndW1lbnQKICRxdW90ZXMgPSAiPGh0bWw+PGE+PD9waHAiOwor
JHF1b3RlczIgPSAiPGE+PHA+PD9waHAiOwogCiAvLyBsb29wIHRocm91Z2ggJHJlc19oZXJlZG9j
X3N0cmluZ3MgZWxlbWVudCBhbmQgY2hlY2sgdGhlIHdvcmtpbmcgb24gc3RyaXBfdGFncygpCiAk
Y291bnQgPSAxOwogZm9yKCRpbmRleCA9MDsgJGluZGV4IDwgY291bnQoJHJlc19oZXJlZG9jX3N0
cmluZ3MpOyAkaW5kZXggKyspIHsKICAgZWNobyAiLS0gSXRlcmF0aW9uICRjb3VudCAtLVxuIjsK
ICAgdmFyX2R1bXAoIHN0cmlwX3RhZ3MoJHJlc19oZXJlZG9jX3N0cmluZ3NbJGluZGV4XSwgJHF1
b3RlcykgKTsKKyAgdmFyX2R1bXAoIHN0cmlwX3RhZ3MoJHJlc19oZXJlZG9jX3N0cmluZ3NbJGlu
ZGV4XSwgJHF1b3RlcywgZmFsc2UpICk7CisgIHZhcl9kdW1wKCBzdHJpcF90YWdzKCRyZXNfaGVy
ZWRvY19zdHJpbmdzWyRpbmRleF0sICRxdW90ZXMyLCBmYWxzZSkgKTsKICAgJGNvdW50Kys7CiB9
CiAKQEAgLTgxLDI0ICs4NCw1NiBAQAogKioqIFRlc3Rpbmcgc3RyaXBfdGFncygpIDogdXNhZ2Ug
dmFyaWF0aW9ucyAqKioKIC0tIEl0ZXJhdGlvbiAxIC0tCiBzdHJpbmcoMCkgIiIKK3N0cmluZygw
KSAiIgorc3RyaW5nKDApICIiCiAtLSBJdGVyYXRpb24gMiAtLQogc3RyaW5nKDApICIiCitzdHJp
bmcoMCkgIiIKK3N0cmluZygwKSAiIgogLS0gSXRlcmF0aW9uIDMgLS0KIHN0cmluZyg2NykgIjxo
dG1sPmhlbGxvIHdvcmxkPC9odG1sPgogMTMgJmx0OyAyNQogCiBUaGlzIGlzIGEgZG91YmxlIHF1
b3RlZCBzdHJpbmciCitzdHJpbmcoNjgpICJoZWxsbyB3b3JsZAorPHA+MTMgJmx0OyAyNTwvcD4K
KworPGI+VGhpcyBpcyBhIGRvdWJsZSBxdW90ZWQgc3RyaW5nPC9iPiIKK3N0cmluZyg3NCkgIjxo
dG1sPmhlbGxvIHdvcmxkPC9odG1sPgorMTMgJmx0OyAyNQorCis8Yj5UaGlzIGlzIGEgZG91Ymxl
IHF1b3RlZCBzdHJpbmc8L2I+IgogLS0gSXRlcmF0aW9uIDQgLS0KIHN0cmluZyg0NCkgIjxodG1s
PmhlbGxvDSB3b3JsZAkKIDExMTEJCSAhPSAyMjIyCws8L2h0bWw+CiAiCitzdHJpbmcoMzEpICJo
ZWxsbw0gd29ybGQJCisxMTExCQkgIT0gMjIyMgsLCisiCitzdHJpbmcoNDQpICI8aHRtbD5oZWxs
bw0gd29ybGQJCisxMTExCQkgIT0gMjIyMgsLPC9odG1sPgorIgogLS0gSXRlcmF0aW9uIDUgLS0K
IHN0cmluZyg1NikgIjxodG1sPjExIDwgMTIuIDEyMyA+MjI8L2h0bWw+CiBzdHJpbmcgMTExMQkg
MDAwMAkgPSAwMDAwCiAiCitzdHJpbmcoNTcpICIxMSA8IDEyLiAxMjMgPjIyCis8cD5zdHJpbmc8
L3A+IDExMTEJIDxiPjAwMDAJID0gMDAwMAorPC9iPiIKK3N0cmluZyg2MykgIjxodG1sPjExIDwg
MTIuIDEyMyA+MjI8L2h0bWw+CitzdHJpbmcgMTExMQkgPGI+MDAwMAkgPSAwMDAwCis8L2I+Igog
LS0gSXRlcmF0aW9uIDYgLS0KIHN0cmluZygxNTApICI8aHRtbD5UaGlzJ3MgYSBzdHJpbmcgd2l0
aCBxdW90ZXM6PC9odG1sPgogInN0cmluZ3MgaW4gZG91YmxlIHF1b3RlIjsKICdzdHJpbmdzIGlu
IHNpbmdsZSBxdW90ZSc7CiA8aHRtbD50aGlzXGxpbmUgaXMgc2luZ2xlIHF1b3RlZCAvd2l0aFxz
bGFzaGVzIDwvaHRtbD4iCi1Eb25lClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorc3RyaW5n
KDEyNCkgIlRoaXMncyBhIHN0cmluZyB3aXRoIHF1b3RlczoKKyJzdHJpbmdzIGluIGRvdWJsZSBx
dW90ZSI7Cisnc3RyaW5ncyBpbiBzaW5nbGUgcXVvdGUnOwordGhpc1xsaW5lIGlzIHNpbmdsZSBx
dW90ZWQgL3dpdGhcc2xhc2hlcyAiCitzdHJpbmcoMTUwKSAiPGh0bWw+VGhpcydzIGEgc3RyaW5n
IHdpdGggcXVvdGVzOjwvaHRtbD4KKyJzdHJpbmdzIGluIGRvdWJsZSBxdW90ZSI7Cisnc3RyaW5n
cyBpbiBzaW5nbGUgcXVvdGUnOworPGh0bWw+dGhpc1xsaW5lIGlzIHNpbmdsZSBxdW90ZWQgL3dp
dGhcc2xhc2hlcyA8L2h0bWw+IgorRG9uZQpJbmRleDogZXh0L3N0YW5kYXJkL3Rlc3RzL3N0cmlu
Z3Mvc3RyaXBfdGFnc192YXJpYXRpb242LnBocHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZXh0L3N0YW5kYXJk
L3Rlc3RzL3N0cmluZ3Mvc3RyaXBfdGFnc192YXJpYXRpb242LnBocHQJKHJldmlzaW9uIDMwNzEz
NSkKKysrIGV4dC9zdGFuZGFyZC90ZXN0cy9zdHJpbmdzL3N0cmlwX3RhZ3NfdmFyaWF0aW9uNi5w
aHB0CSh3b3JraW5nIGNvcHkpCkBAIC00LDcgKzQsNyBAQAogc2hvcnRfb3Blbl90YWcgPSBvbgog
LS1GSUxFLS0KIDw/cGhwCi0vKiBQcm90b3R5cGUgIDogc3RyaW5nIHN0cmlwX3RhZ3Moc3RyaW5n
ICRzdHIgWywgc3RyaW5nICRhbGxvd2FibGVfdGFnc10pCisvKiBQcm90b3R5cGUgIDogc3RyaW5n
IHN0cmlwX3RhZ3Moc3RyaW5nICRzdHIgWywgc3RyaW5nICRhbGxvd2FibGVfdGFnc10gWywgYm9v
bCAkd2hpdGVsaXN0XSkKICAqIERlc2NyaXB0aW9uOiBTdHJpcHMgSFRNTCBhbmQgUEhQIHRhZ3Mg
ZnJvbSBhIHN0cmluZwogICogU291cmNlIGNvZGU6IGV4dC9zdGFuZGFyZC9zdHJpbmcuYwogKi8K
QEAgLTI5LDYgKzI5LDggQEAKIHsKICAgICAgIGVjaG8gIi0tIEl0ZXJhdGlvbiAkaXRlcmF0b3Ig
LS1cbiI7CiAgICAgICB2YXJfZHVtcCggc3RyaXBfdGFncygkdmFsdWUpICk7CisgICAgICB2YXJf
ZHVtcCggc3RyaXBfdGFncygkdmFsdWUsICc8aHRtbD4nLCBmYWxzZSkgKTsKKyAgICAgIHZhcl9k
dW1wKCBzdHJpcF90YWdzKCR2YWx1ZSwgJzxodG1sPicsIHRydWUpICk7CiAgICAgICAkaXRlcmF0
b3IrKzsKIH0KIApAQCAtMzgsMTAgKzQwLDE4IEBACiAqKiogVGVzdGluZyBzdHJpcF90YWdzKCkg
OiB1c2FnZSB2YXJpYXRpb25zICoqKgogLS0gSXRlcmF0aW9uIDEgLS0KIHN0cmluZygxOCkgIiBJ
IGFtIGh0bWwgc3RyaW5nICIKK3N0cmluZygxOCkgIiBJIGFtIGh0bWwgc3RyaW5nICIKK3N0cmlu
ZygzMSkgIjxodG1sPiBJIGFtIGh0bWwgc3RyaW5nIDwvaHRtbD4iCiAtLSBJdGVyYXRpb24gMiAt
LQogc3RyaW5nKDE4KSAiIEkgYW0gaHRtbCBzdHJpbmcgIgorc3RyaW5nKDE4KSAiIEkgYW0gaHRt
bCBzdHJpbmcgIgorc3RyaW5nKDMxKSAiPGh0bWw+IEkgYW0gaHRtbCBzdHJpbmcgPC9odG1sPiIK
IC0tIEl0ZXJhdGlvbiAzIC0tCiBzdHJpbmcoMTYpICJJIGFtIGh0bWwgc3RyaW5nIgorc3RyaW5n
KDIzKSAiPGE+SSBhbSBodG1sIHN0cmluZzwvYT4iCitzdHJpbmcoMTYpICJJIGFtIGh0bWwgc3Ry
aW5nIgogLS0gSXRlcmF0aW9uIDQgLS0KIHN0cmluZygyMykgIkkgYW0gaHRtbCBzdHJpbmcxMDAw
MDAxIgorc3RyaW5nKDIzKSAiSSBhbSBodG1sIHN0cmluZzEwMDAwMDEiCitzdHJpbmcoMzYpICI8
aHRtbD5JIGFtIGh0bWwgc3RyaW5nPC9odG1sPjEwMDAwMDEiCiBEb25lCkluZGV4OiBleHQvc3Rh
bmRhcmQvdGVzdHMvc3RyaW5ncy9zdHJpcF90YWdzX2Jhc2ljMS5waHB0Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IGV4dC9zdGFuZGFyZC90ZXN0cy9zdHJpbmdzL3N0cmlwX3RhZ3NfYmFzaWMxLnBocHQJKHJldmlz
aW9uIDMwNzEzNSkKKysrIGV4dC9zdGFuZGFyZC90ZXN0cy9zdHJpbmdzL3N0cmlwX3RhZ3NfYmFz
aWMxLnBocHQJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBACiBzaG9ydF9vcGVuX3RhZyA9
IG9uCiAtLUZJTEUtLQogPD9waHAKLS8qIFByb3RvdHlwZSAgOiBzdHJpbmcgc3RyaXBfdGFncyhz
dHJpbmcgJHN0ciBbLCBzdHJpbmcgJGFsbG93YWJsZV90YWdzXSkKKy8qIFByb3RvdHlwZSAgOiBz
dHJpbmcgc3RyaXBfdGFncyhzdHJpbmcgJHN0ciBbLCBzdHJpbmcgJGFsbG93YWJsZV90YWdzXSBb
LCBib29sICR3aGl0ZWxpc3RdKQogICogRGVzY3JpcHRpb246IFN0cmlwcyBIVE1MIGFuZCBQSFAg
dGFncyBmcm9tIGEgc3RyaW5nIAogICogU291cmNlIGNvZGU6IGV4dC9zdGFuZGFyZC9zdHJpbmcu
YwogKi8KSW5kZXg6IGV4dC9zdGFuZGFyZC90ZXN0cy9zdHJpbmdzL3N0cmlwX3RhZ3NfdmFyaWF0
aW9uNy5waHB0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIGV4dC9zdGFuZGFyZC90ZXN0cy9zdHJpbmdzL3N0cmlw
X3RhZ3NfdmFyaWF0aW9uNy5waHB0CShyZXZpc2lvbiAzMDcxMzUpCisrKyBleHQvc3RhbmRhcmQv
dGVzdHMvc3RyaW5ncy9zdHJpcF90YWdzX3ZhcmlhdGlvbjcucGhwdAkod29ya2luZyBjb3B5KQpA
QCAtNCw3ICs0LDcgQEAKIHNob3J0X29wZW5fdGFnID0gb24KIC0tRklMRS0tCiA8P3BocAotLyog
UHJvdG90eXBlICA6IHN0cmluZyBzdHJpcF90YWdzKHN0cmluZyAkc3RyIFssIHN0cmluZyAkYWxs
b3dhYmxlX3RhZ3NdKQorLyogUHJvdG90eXBlICA6IHN0cmluZyBzdHJpcF90YWdzKHN0cmluZyAk
c3RyIFssIHN0cmluZyAkYWxsb3dhYmxlX3RhZ3NdIFssIGJvb2wgJHdoaXRlbGlzdF0pCiAgKiBE
ZXNjcmlwdGlvbjogU3RyaXBzIEhUTUwgYW5kIFBIUCB0YWdzIGZyb20gYSBzdHJpbmcKICAqIFNv
dXJjZSBjb2RlOiBleHQvc3RhbmRhcmQvc3RyaW5nLmMKICovCkBAIC0zOCw2ICszOCw3IEBACiB7
CiAgICAgICBlY2hvICItLSBJdGVyYXRpb24gJGl0ZXJhdG9yIC0tXG4iOwogICAgICAgdmFyX2R1
bXAoIHN0cmlwX3RhZ3MoJHN0cmluZ192YWx1ZSwgJHF1b3RlcykgKTsKKyAgICAgIHZhcl9kdW1w
KCBzdHJpcF90YWdzKCRzdHJpbmdfdmFsdWUsICRxdW90ZXMsIGZhbHNlKSApOwogICAgICAgJGl0
ZXJhdG9yKys7CiB9CiAKQEAgLTQ3LDI2ICs0OCwzOCBAQAogKioqIFRlc3Rpbmcgc3RyaXBfdGFn
cygpIDogdXNhZ2UgdmFyaWF0aW9ucyAqKioKIC0tIEl0ZXJhdGlvbiAxIC0tCiBzdHJpbmcoNDMp
ICI8YWJjPmhlbGxvPC9hYmM+IAkJd29ybGQuLi4gc3RyaXBfdGFnc190ZXN0Igorc3RyaW5nKDQz
KSAiaGVsbG8gCQl3b3JsZC4uLiA8cHBwPnN0cmlwX3RhZ3NfdGVzdDwvcHBwPiIKIC0tIEl0ZXJh
dGlvbiAyIC0tCiBzdHJpbmcoNDUpICI8YWJjPmhlbGxvPC9hYmM+IFx0XHR3b3JsZC4uLiBzdHJp
cF90YWdzX3Rlc3QiCitzdHJpbmcoNDUpICJoZWxsbyBcdFx0d29ybGQuLi4gPHBwcD5zdHJpcF90
YWdzX3Rlc3Q8L3BwcD4iCiAtLSBJdGVyYXRpb24gMyAtLQogc3RyaW5nKDApICIiCitzdHJpbmco
MjIpICI8JT9waHAgaGVsbG8JIHdvcmxkPyU+IgogLS0gSXRlcmF0aW9uIDQgLS0KIHN0cmluZygw
KSAiIgorc3RyaW5nKDIzKSAiPCU/cGhwIGhlbGxvXHQgd29ybGQ/JT4iCiAtLSBJdGVyYXRpb24g
NSAtLQogc3RyaW5nKDE4KSAiPGh0bUw+aGVsbG88L2h0bUw+Igorc3RyaW5nKDUpICJoZWxsbyIK
IC0tIEl0ZXJhdGlvbiA2IC0tCiBzdHJpbmcoMTgpICI8aHRtTD5oZWxsbzwvaHRtTD4iCitzdHJp
bmcoNSkgImhlbGxvIgogLS0gSXRlcmF0aW9uIDcgLS0KIHN0cmluZyg5KSAiSHRNbCB0ZXh0Igor
c3RyaW5nKDE4KSAiPGEuPkh0TWwgdGV4dDwvLmE+IgogLS0gSXRlcmF0aW9uIDggLS0KIHN0cmlu
Zyg5KSAiSHRNbCB0ZXh0Igorc3RyaW5nKDE4KSAiPGEuPkh0TWwgdGV4dDwvLmE+IgogLS0gSXRl
cmF0aW9uIDkgLS0KIHN0cmluZygzNykgIjxubm4+SSBhbSBub3QgYSB2YWxpZCBodG1sIHRleHQ8
L25ubj4iCitzdHJpbmcoMjYpICJJIGFtIG5vdCBhIHZhbGlkIGh0bWwgdGV4dCIKIC0tIEl0ZXJh
dGlvbiAxMCAtLQogc3RyaW5nKDM3KSAiPG5ubj5JIGFtIG5vdCBhIHZhbGlkIGh0bWwgdGV4dDwv
bm5uPiIKK3N0cmluZygyNikgIkkgYW0gbm90IGEgdmFsaWQgaHRtbCB0ZXh0IgogLS0gSXRlcmF0
aW9uIDExIC0tCiBzdHJpbmcoNzMpICI8bm5uPkkgYW0gYSBxdW90ZWQgKCIpIHN0cmluZyB3aXRo
IHNwZWNpYWwgY2hhcnMgbGlrZSAkLFwhLFxALFwlLFwmPC9ubm4+Igorc3RyaW5nKDYyKSAiSSBh
bSBhIHF1b3RlZCAoIikgc3RyaW5nIHdpdGggc3BlY2lhbCBjaGFycyBsaWtlICQsXCEsXEAsXCUs
XCYiCiAtLSBJdGVyYXRpb24gMTIgLS0KIHN0cmluZyg3NSkgIjxubm4+SSBhbSBhIHF1b3RlZCAo
XCIpIHN0cmluZyB3aXRoIHNwZWNpYWwgY2hhcnMgbGlrZSBcJCxcISxcQCxcJSxcJjwvbm5uPiIK
K3N0cmluZyg2NCkgIkkgYW0gYSBxdW90ZWQgKFwiKSBzdHJpbmcgd2l0aCBzcGVjaWFsIGNoYXJz
IGxpa2UgXCQsXCEsXEAsXCUsXCYiCiBEb25lCkluZGV4OiBleHQvc3RhbmRhcmQvdGVzdHMvc3Ry
aW5ncy9zdHJpcF90YWdzX3ZhcmlhdGlvbjEucGhwdAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBleHQvc3RhbmRh
cmQvdGVzdHMvc3RyaW5ncy9zdHJpcF90YWdzX3ZhcmlhdGlvbjEucGhwdAkocmV2aXNpb24gMzA3
MTM1KQorKysgZXh0L3N0YW5kYXJkL3Rlc3RzL3N0cmluZ3Mvc3RyaXBfdGFnc192YXJpYXRpb24x
LnBocHQJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBACiBzZXQgc2hvcnRfb3Blbl90YWcg
PSBvbgogLS1GSUxFLS0KIDw/cGhwCi0vKiBQcm90b3R5cGUgIDogc3RyaW5nIHN0cmlwX3RhZ3Mo
c3RyaW5nICRzdHIgWywgc3RyaW5nICRhbGxvd2FibGVfdGFnc10pCisvKiBQcm90b3R5cGUgIDog
c3RyaW5nIHN0cmlwX3RhZ3Moc3RyaW5nICRzdHIgWywgc3RyaW5nICRhbGxvd2FibGVfdGFnc10g
WywgYm9vbCAkd2hpdGVsaXN0XSkKICAqIERlc2NyaXB0aW9uOiBTdHJpcHMgSFRNTCBhbmQgUEhQ
IHRhZ3MgZnJvbSBhIHN0cmluZyAKICAqIFNvdXJjZSBjb2RlOiBleHQvc3RhbmRhcmQvc3RyaW5n
LmMKICovCkBAIC0xNTYsNCArMTU2LDQgQEAKIAogV2FybmluZzogc3RyaXBfdGFncygpIGV4cGVj
dHMgcGFyYW1ldGVyIDEgdG8gYmUgc3RyaW5nLCByZXNvdXJjZSBnaXZlbiBpbiAlcyBvbiBsaW5l
ICVkCiBOVUxMCi09PT1ET05FPT09ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorPT09RE9O
RT09PQpJbmRleDogZXh0L3N0YW5kYXJkL3Rlc3RzL3N0cmluZ3Mvc3RyaXBfdGFnc19iYXNpYzIu
cGhwdAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBleHQvc3RhbmRhcmQvdGVzdHMvc3RyaW5ncy9zdHJpcF90YWdz
X2Jhc2ljMi5waHB0CShyZXZpc2lvbiAzMDcxMzUpCisrKyBleHQvc3RhbmRhcmQvdGVzdHMvc3Ry
aW5ncy9zdHJpcF90YWdzX2Jhc2ljMi5waHB0CSh3b3JraW5nIGNvcHkpCkBAIC00LDcgKzQsNyBA
QAogc2hvcnRfb3Blbl90YWcgPSBvbgogLS1GSUxFLS0KIDw/cGhwCi0vKiBQcm90b3R5cGUgIDog
c3RyaW5nIHN0cmlwX3RhZ3Moc3RyaW5nICRzdHIgWywgc3RyaW5nICRhbGxvd2FibGVfdGFnc10p
CisvKiBQcm90b3R5cGUgIDogc3RyaW5nIHN0cmlwX3RhZ3Moc3RyaW5nICRzdHIgWywgc3RyaW5n
ICRhbGxvd2FibGVfdGFnc10gWywgYm9vbCAkd2hpdGVsaXN0XSkKICAqIERlc2NyaXB0aW9uOiBT
dHJpcHMgSFRNTCBhbmQgUEhQIHRhZ3MgZnJvbSBhIHN0cmluZwogICogU291cmNlIGNvZGU6IGV4
dC9zdGFuZGFyZC9zdHJpbmcuYwogKi8KSW5kZXg6IGV4dC9zdGFuZGFyZC90ZXN0cy9zdHJpbmdz
L3N0cmlwX3RhZ3NfdmFyaWF0aW9uOC5waHB0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV4dC9zdGFuZGFyZC90
ZXN0cy9zdHJpbmdzL3N0cmlwX3RhZ3NfdmFyaWF0aW9uOC5waHB0CShyZXZpc2lvbiAzMDcxMzUp
CisrKyBleHQvc3RhbmRhcmQvdGVzdHMvc3RyaW5ncy9zdHJpcF90YWdzX3ZhcmlhdGlvbjgucGhw
dAkod29ya2luZyBjb3B5KQpAQCAtNCw3ICs0LDcgQEAKIHNob3J0X29wZW5fdGFnID0gb24KIC0t
RklMRS0tCiA8P3BocAotLyogUHJvdG90eXBlICA6IHN0cmluZyBzdHJpcF90YWdzKHN0cmluZyAk
c3RyIFssIHN0cmluZyAkYWxsb3dhYmxlX3RhZ3NdKQorLyogUHJvdG90eXBlICA6IHN0cmluZyBz
dHJpcF90YWdzKHN0cmluZyAkc3RyIFssIHN0cmluZyAkYWxsb3dhYmxlX3RhZ3NdIFssIGJvb2wg
JHdoaXRlbGlzdF0pCiAgKiBEZXNjcmlwdGlvbjogU3RyaXBzIEhUTUwgYW5kIFBIUCB0YWdzIGZy
b20gYSBzdHJpbmcKICAqIFNvdXJjZSBjb2RlOiBleHQvc3RhbmRhcmQvc3RyaW5nLmMKICovCkBA
IC0zNCw2ICszNCw3IEBACiB7CiAgICAgICBlY2hvICItLSBJdGVyYXRpb24gJGl0ZXJhdG9yIC0t
XG4iOwogICAgICAgdmFyX2R1bXAoIHN0cmlwX3RhZ3MoJHN0cmluZ3MsICRzdHJpbmdfdmFsdWUp
ICk7CisgICAgICB2YXJfZHVtcCggc3RyaXBfdGFncygkc3RyaW5ncywgJHN0cmluZ192YWx1ZSwg
ZmFsc2UpICk7CiAgICAgICAkaXRlcmF0b3IrKzsKIH0KIApAQCAtNDIsMTggKzQzLDI2IEBACiAq
KiogVGVzdGluZyBzdHJpcF90YWdzKCkgOiB1c2FnZSB2YXJpYXRpb25zICoqKgogLS0gSXRlcmF0
aW9uIDEgLS0KIHN0cmluZygzMykgImhlbGxvIAl3b3JsZC4uLiBzdHJpcF90YWdzX3Rlc3QLDCIK
K3N0cmluZyg1MykgIjxodG1sPmhlbGxvPC9odG1sPiAJd29ybGQuLi4gPHA+c3RyaXBfdGFnc190
ZXN0Cww8L3A+IgogLS0gSXRlcmF0aW9uIDIgLS0KIHN0cmluZygzMykgImhlbGxvIAl3b3JsZC4u
LiBzdHJpcF90YWdzX3Rlc3QLDCIKK3N0cmluZyg1MykgIjxodG1sPmhlbGxvPC9odG1sPiAJd29y
bGQuLi4gPHA+c3RyaXBfdGFnc190ZXN0Cww8L3A+IgogLS0gSXRlcmF0aW9uIDMgLS0KIHN0cmlu
ZygzMykgImhlbGxvIAl3b3JsZC4uLiBzdHJpcF90YWdzX3Rlc3QLDCIKK3N0cmluZyg1MykgIjxo
dG1sPmhlbGxvPC9odG1sPiAJd29ybGQuLi4gPHA+c3RyaXBfdGFnc190ZXN0Cww8L3A+IgogLS0g
SXRlcmF0aW9uIDQgLS0KIHN0cmluZygzMykgImhlbGxvIAl3b3JsZC4uLiBzdHJpcF90YWdzX3Rl
c3QLDCIKK3N0cmluZyg1MykgIjxodG1sPmhlbGxvPC9odG1sPiAJd29ybGQuLi4gPHA+c3RyaXBf
dGFnc190ZXN0Cww8L3A+IgogLS0gSXRlcmF0aW9uIDUgLS0KIHN0cmluZygzMykgImhlbGxvIAl3
b3JsZC4uLiBzdHJpcF90YWdzX3Rlc3QLDCIKK3N0cmluZyg1MykgIjxodG1sPmhlbGxvPC9odG1s
PiAJd29ybGQuLi4gPHA+c3RyaXBfdGFnc190ZXN0Cww8L3A+IgogLS0gSXRlcmF0aW9uIDYgLS0K
IHN0cmluZygzMykgImhlbGxvIAl3b3JsZC4uLiBzdHJpcF90YWdzX3Rlc3QLDCIKK3N0cmluZyg1
MykgIjxodG1sPmhlbGxvPC9odG1sPiAJd29ybGQuLi4gPHA+c3RyaXBfdGFnc190ZXN0Cww8L3A+
IgogLS0gSXRlcmF0aW9uIDcgLS0KIHN0cmluZyg0NikgIjxodG1sPmhlbGxvPC9odG1sPiAJd29y
bGQuLi4gc3RyaXBfdGFnc190ZXN0CwwiCitzdHJpbmcoNDApICJoZWxsbyAJd29ybGQuLi4gPHA+
c3RyaXBfdGFnc190ZXN0Cww8L3A+IgogLS0gSXRlcmF0aW9uIDggLS0KIHN0cmluZyg0NikgIjxo
dG1sPmhlbGxvPC9odG1sPiAJd29ybGQuLi4gc3RyaXBfdGFnc190ZXN0CwwiCitzdHJpbmcoNDAp
ICJoZWxsbyAJd29ybGQuLi4gPHA+c3RyaXBfdGFnc190ZXN0Cww8L3A+IgogRG9uZQpJbmRleDog
ZXh0L3N0YW5kYXJkL3Rlc3RzL3N0cmluZ3Mvc3RyaXBfdGFnc192YXJpYXRpb24yLnBocHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gZXh0L3N0YW5kYXJkL3Rlc3RzL3N0cmluZ3Mvc3RyaXBfdGFnc192YXJpYXRp
b24yLnBocHQJKHJldmlzaW9uIDMwNzEzNSkKKysrIGV4dC9zdGFuZGFyZC90ZXN0cy9zdHJpbmdz
L3N0cmlwX3RhZ3NfdmFyaWF0aW9uMi5waHB0CSh3b3JraW5nIGNvcHkpCkBAIC00LDcgKzQsNyBA
QAogc2hvcnRfb3Blbl90YWcgPSBvbgogLS1GSUxFLS0KIDw/cGhwCi0vKiBQcm90b3R5cGUgIDog
c3RyaW5nIHN0cmlwX3RhZ3Moc3RyaW5nICRzdHIgWywgc3RyaW5nICRhbGxvd2FibGVfdGFnc10p
CisvKiBQcm90b3R5cGUgIDogc3RyaW5nIHN0cmlwX3RhZ3Moc3RyaW5nICRzdHIgWywgc3RyaW5n
ICRhbGxvd2FibGVfdGFnc10gWywgYm9vbCAkd2hpdGVsaXN0XSkKICAqIERlc2NyaXB0aW9uOiBT
dHJpcHMgSFRNTCBhbmQgUEhQIHRhZ3MgZnJvbSBhIHN0cmluZyAKICAqIFNvdXJjZSBjb2RlOiBl
eHQvc3RhbmRhcmQvc3RyaW5nLmMKICovCkluZGV4OiBleHQvc3RhbmRhcmQvdGVzdHMvc3RyaW5n
cy9zdHJpcF90YWdzX3ZhcmlhdGlvbjkucGhwdAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBleHQvc3RhbmRhcmQv
dGVzdHMvc3RyaW5ncy9zdHJpcF90YWdzX3ZhcmlhdGlvbjkucGhwdAkocmV2aXNpb24gMzA3MTM1
KQorKysgZXh0L3N0YW5kYXJkL3Rlc3RzL3N0cmluZ3Mvc3RyaXBfdGFnc192YXJpYXRpb245LnBo
cHQJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3IEBACiBzaG9ydF9vcGVuX3RhZyA9IG9uCiAt
LUZJTEUtLQogPD9waHAKLS8qIFByb3RvdHlwZSAgOiBzdHJpbmcgc3RyaXBfdGFncyhzdHJpbmcg
JHN0ciBbLCBzdHJpbmcgJGFsbG93YWJsZV90YWdzXSkKKy8qIFByb3RvdHlwZSAgOiBzdHJpbmcg
c3RyaXBfdGFncyhzdHJpbmcgJHN0ciBbLCBzdHJpbmcgJGFsbG93YWJsZV90YWdzXSBbLCBib29s
ICR3aGl0ZWxpc3RdKQogICogRGVzY3JpcHRpb246IFN0cmlwcyBIVE1MIGFuZCBQSFAgdGFncyBm
cm9tIGEgc3RyaW5nCiAgKiBTb3VyY2UgY29kZTogZXh0L3N0YW5kYXJkL3N0cmluZy5jCiAqLwpA
QCAtMzIsNiArMzIsNyBAQAogewogICAgICAgZWNobyAiLS0gSXRlcmF0aW9uICRpdGVyYXRvciAt
LVxuIjsKICAgICAgIHZhcl9kdW1wKCBzdHJpcF90YWdzKCRzdHJpbmdfdmFsdWUsICRxdW90ZXMp
ICk7CisgICAgICB2YXJfZHVtcCggc3RyaXBfdGFncygkc3RyaW5nX3ZhbHVlLCAkcXVvdGVzLCBm
YWxzZSkgKTsKICAgICAgICRpdGVyYXRvcisrOwogfQogCkBAIC00MCwxNSArNDEsMjIgQEAKICoq
KiBUZXN0aW5nIHN0cmlwX3RhZ3MoKSA6IHVzYWdlIHZhcmlhdGlvbnMgKioqCiAtLSBJdGVyYXRp
b24gMSAtLQogc3RyaW5nKDUwKSAiPGh0bWw+ICQgLT4gVGhpcyByZXByZXNlbnRzIHRoZSBkb2xs
YXIgc2lnbjwvaHRtbD4iCitzdHJpbmcoMzcpICIgJCAtPiBUaGlzIHJlcHJlc2VudHMgdGhlIGRv
bGxhciBzaWduIgogLS0gSXRlcmF0aW9uIDIgLS0KIHN0cmluZyg1OSkgIjxodG1sPgkNCyBUaGUg
cXVpY2sgYnJvd24gZm8MeCBqdW1wZWQgb3ZlciB0aGUgbGF6eSBkb2c8L3A+Igorc3RyaW5nKDQ5
KSAiCQ0LIFRoZSBxdWljayBicm93biBmbwx4IGp1bXBlZCBvdmVyIHRoZSBsYXp5IGRvZyIKIC0t
IEl0ZXJhdGlvbiAzIC0tCiBzdHJpbmcoMzEpICI8YT5UaGlzIGlzIGEgaHlwZXIgdGV4dCB0YWc8
L2E+Igorc3RyaW5nKDI0KSAiVGhpcyBpcyBhIGh5cGVyIHRleHQgdGFnIgogLS0gSXRlcmF0aW9u
IDQgLS0KIHN0cmluZygwKSAiIgorc3RyaW5nKDApICIiCiAtLSBJdGVyYXRpb24gNSAtLQogc3Ry
aW5nKDI2KSAiPHA+VGhpcyBpcyBhIHBhcmFncmFwaDwvcD4iCitzdHJpbmcoMTkpICJUaGlzIGlz
IGEgcGFyYWdyYXBoIgogLS0gSXRlcmF0aW9uIDYgLS0KIHN0cmluZyg2MikgIjxiPlRoaXMgaXMg
CWEgdGV4dCBpbiBib2xkIGxldHRlcnMNXHNcbWFsb25nIHdpdGggc2xhc2hlcwogPC9iPiIKK3N0
cmluZyg1NSkgIlRoaXMgaXMgCWEgdGV4dCBpbiBib2xkIGxldHRlcnMNXHNcbWFsb25nIHdpdGgg
c2xhc2hlcworIgogRG9uZQpJbmRleDogZXh0L3N0YW5kYXJkL3Rlc3RzL3N0cmluZ3Mvc3RyaXBf
dGFnc192YXJpYXRpb24zLnBocHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZXh0L3N0YW5kYXJkL3Rlc3RzL3N0
cmluZ3Mvc3RyaXBfdGFnc192YXJpYXRpb24zLnBocHQJKHJldmlzaW9uIDMwNzEzNSkKKysrIGV4
dC9zdGFuZGFyZC90ZXN0cy9zdHJpbmdzL3N0cmlwX3RhZ3NfdmFyaWF0aW9uMy5waHB0CSh3b3Jr
aW5nIGNvcHkpCkBAIC00LDcgKzQsNyBAQAogc2V0IHNob3J0X29wZW5fdGFnID0gb24KIC0tRklM
RS0tCiA8P3BocAotLyogUHJvdG90eXBlICA6IHN0cmluZyBzdHJpcF90YWdzKHN0cmluZyAkc3Ry
IFssIHN0cmluZyAkYWxsb3dhYmxlX3RhZ3NdKQorLyogUHJvdG90eXBlICA6IHN0cmluZyBzdHJp
cF90YWdzKHN0cmluZyAkc3RyIFssIHN0cmluZyAkYWxsb3dhYmxlX3RhZ3NdIFssIGJvb2wgJHdo
aXRlbGlzdF0pCiAgKiBEZXNjcmlwdGlvbjogU3RyaXBzIEhUTUwgYW5kIFBIUCB0YWdzIGZyb20g
YSBzdHJpbmcgCiAgKiBTb3VyY2UgY29kZTogZXh0L3N0YW5kYXJkL3N0cmluZy5jCiAqLwpAQCAt
MTU2LDQgKzE1Niw0IEBACiAKIFdhcm5pbmc6IHN0cmlwX3RhZ3MoKSBleHBlY3RzIHBhcmFtZXRl
ciAxIHRvIGJlIHN0cmluZywgcmVzb3VyY2UgZ2l2ZW4gaW4gJXMgb24gbGluZSAlZAogTlVMTAot
PT09RE9ORT09PQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKz09PURPTkU9PT0KSW5kZXg6
IGV4dC9zdGFuZGFyZC90ZXN0cy9zdHJpbmdzL3N0cmlwX3RhZ3NfdmFyaWF0aW9uMTAucGhwdAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBleHQvc3RhbmRhcmQvdGVzdHMvc3RyaW5ncy9zdHJpcF90YWdzX3Zhcmlh
dGlvbjEwLnBocHQJKHJldmlzaW9uIDMwNzEzNSkKKysrIGV4dC9zdGFuZGFyZC90ZXN0cy9zdHJp
bmdzL3N0cmlwX3RhZ3NfdmFyaWF0aW9uMTAucGhwdAkod29ya2luZyBjb3B5KQpAQCAtNCw3ICs0
LDcgQEAKIHNob3J0X29wZW5fdGFnID0gb24KIC0tRklMRS0tCiA8P3BocAotLyogUHJvdG90eXBl
ICA6IHN0cmluZyBzdHJpcF90YWdzKHN0cmluZyAkc3RyIFssIHN0cmluZyAkYWxsb3dhYmxlX3Rh
Z3NdKQorLyogUHJvdG90eXBlICA6IHN0cmluZyBzdHJpcF90YWdzKHN0cmluZyAkc3RyIFssIHN0
cmluZyAkYWxsb3dhYmxlX3RhZ3NdIFssIGJvb2wgJHdoaXRlbGlzdF0pCiAgKiBEZXNjcmlwdGlv
bjogU3RyaXBzIEhUTUwgYW5kIFBIUCB0YWdzIGZyb20gYSBzdHJpbmcKICAqIFNvdXJjZSBjb2Rl
OiBleHQvc3RhbmRhcmQvc3RyaW5nLmMKICovCkBAIC0yNiw2ICsyNiw3IEBACiApOwogCiAkcXVv
dGVzID0gIjxodG1sPjxhPjxwPjxiPjw/cGhwIjsKKyRxdW90ZXMyID0gIjxhPjxiPjw/cGhwIjsK
IAogLy9sb29wIHRocm91Z2ggdGhlIHZhcmlvdXMgZWxlbWVudHMgb2Ygc3RyaW5ncyBhcnJheSB0
byB0ZXN0IHN0cmlwX3RhZ3MoKSBmdW5jdGlvbmFsaXR5CiAkaXRlcmF0b3IgPSAxOwpAQCAtMzMs
NiArMzQsNyBAQAogewogICAgICAgZWNobyAiLS0gSXRlcmF0aW9uICRpdGVyYXRvciAtLVxuIjsK
ICAgICAgIHZhcl9kdW1wKCBzdHJpcF90YWdzKCRzdHJpbmdfdmFsdWUsICRxdW90ZXMpICk7Cisg
ICAgICB2YXJfZHVtcCggc3RyaXBfdGFncygkc3RyaW5nX3ZhbHVlLCAkcXVvdGVzMiwgZmFsc2Up
ICk7CiAgICAgICAkaXRlcmF0b3IrKzsKIH0KIApAQCAtNDIsMTQgKzQ0LDIwIEBACiAqKiogVGVz
dGluZyBzdHJpcF90YWdzKCkgOiB1c2FnZSB2YXJpYXRpb25zICoqKgogLS0gSXRlcmF0aW9uIDEg
LS0KIHN0cmluZyg1MSkgIjxodG1sPiBcJCAtPiBUaGlzIHJlcHJlc2VudHMgdGhlIGRvbGxhciBz
aWduPC9odG1sPiIKK3N0cmluZyg1MSkgIjxodG1sPiBcJCAtPiBUaGlzIHJlcHJlc2VudHMgdGhl
IGRvbGxhciBzaWduPC9odG1sPiIKIC0tIEl0ZXJhdGlvbiAyIC0tCiBzdHJpbmcoNjMpICI8aHRt
bD5cdFxyXHYgVGhlIHF1aWNrIGJyb3duIGZvXGZ4IGp1bXBlZCBvdmVyIHRoZSBsYXp5IGRvZzwv
cD4iCitzdHJpbmcoNjMpICI8aHRtbD5cdFxyXHYgVGhlIHF1aWNrIGJyb3duIGZvXGZ4IGp1bXBl
ZCBvdmVyIHRoZSBsYXp5IGRvZzwvcD4iCiAtLSBJdGVyYXRpb24gMyAtLQogc3RyaW5nKDMxKSAi
PGE+VGhpcyBpcyBhIGh5cGVyIHRleHQgdGFnPC9hPiIKK3N0cmluZygyNCkgIlRoaXMgaXMgYSBo
eXBlciB0ZXh0IHRhZyIKIC0tIEl0ZXJhdGlvbiA0IC0tCiBzdHJpbmcoMCkgIiIKK3N0cmluZygw
KSAiIgogLS0gSXRlcmF0aW9uIDUgLS0KIHN0cmluZygyNikgIjxwPlRoaXMgaXMgYSBwYXJhZ3Jh
cGg8L3A+Igorc3RyaW5nKDI2KSAiPHA+VGhpcyBpcyBhIHBhcmFncmFwaDwvcD4iCiAtLSBJdGVy
YXRpb24gNiAtLQogc3RyaW5nKDY1KSAiPGI+VGhpcyBpcyBcdGEgdGV4dCBpbiBib2xkIGxldHRl
cnNcclxzXG1hbG9uZyB3aXRoIHNsYXNoZXNcbjwvYj4iCitzdHJpbmcoNTgpICJUaGlzIGlzIFx0
YSB0ZXh0IGluIGJvbGQgbGV0dGVyc1xyXHNcbWFsb25nIHdpdGggc2xhc2hlc1xuIgogRG9uZQpJ
bmRleDogZXh0L3N0YW5kYXJkL2ZpbHRlcnMuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBleHQvc3RhbmRhcmQv
ZmlsdGVycy5jCShyZXZpc2lvbiAzMDcxMzUpCisrKyBleHQvc3RhbmRhcmQvZmlsdGVycy5jCSh3
b3JraW5nIGNvcHkpCkBAIC0yMTcsNyArMjE3LDcgQEAKIAkJYnVja2V0ID0gcGhwX3N0cmVhbV9i
dWNrZXRfbWFrZV93cml0ZWFibGUoYnVja2V0c19pbi0+aGVhZCBUU1JNTFNfQ0MpOwogCQljb25z
dW1lZCA9IGJ1Y2tldC0+YnVmbGVuOwogCQkKLQkJYnVja2V0LT5idWZsZW4gPSBwaHBfc3RyaXBf
dGFncyhidWNrZXQtPmJ1ZiwgYnVja2V0LT5idWZsZW4sICYoaW5zdC0+c3RhdGUpLCAoY2hhciAq
KWluc3QtPmFsbG93ZWRfdGFncywgaW5zdC0+YWxsb3dlZF90YWdzX2xlbik7CisJCWJ1Y2tldC0+
YnVmbGVuID0gcGhwX3N0cmlwX3RhZ3MoYnVja2V0LT5idWYsIGJ1Y2tldC0+YnVmbGVuLCAmKGlu
c3QtPnN0YXRlKSwgKGNoYXIgKilpbnN0LT5hbGxvd2VkX3RhZ3MsIGluc3QtPmFsbG93ZWRfdGFn
c19sZW4sIDEpOwogCQogCQlwaHBfc3RyZWFtX2J1Y2tldF9hcHBlbmQoYnVja2V0c19vdXQsIGJ1
Y2tldCBUU1JNTFNfQ0MpOwogCX0KSW5kZXg6IGV4dC9zdGFuZGFyZC9maWxlLmMKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gZXh0L3N0YW5kYXJkL2ZpbGUuYwkocmV2aXNpb24gMzA3MTM1KQorKysgZXh0L3N0YW5k
YXJkL2ZpbGUuYwkod29ya2luZyBjb3B5KQpAQCAtMTIwMyw3ICsxMjAzLDcgQEAKIAkJUkVUVVJO
X0ZBTFNFOwogCX0KIAotCXJldHZhbF9sZW4gPSBwaHBfc3RyaXBfdGFncyhyZXR2YWwsIGFjdHVh
bF9sZW4sICZzdHJlYW0tPmZnZXRzc19zdGF0ZSwgYWxsb3dlZF90YWdzLCBhbGxvd2VkX3RhZ3Nf
bGVuKTsKKwlyZXR2YWxfbGVuID0gcGhwX3N0cmlwX3RhZ3MocmV0dmFsLCBhY3R1YWxfbGVuLCAm
c3RyZWFtLT5mZ2V0c3Nfc3RhdGUsIGFsbG93ZWRfdGFncywgYWxsb3dlZF90YWdzX2xlbiwgMSk7
CiAKIAlSRVRVUk5fU1RSSU5HTChyZXR2YWwsIHJldHZhbF9sZW4sIDApOwogfQpJbmRleDogZXh0
L3N0YW5kYXJkL3BocF9zdHJpbmcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBleHQvc3RhbmRhcmQvcGhwX3N0
cmluZy5oCShyZXZpc2lvbiAzMDcxMzUpCisrKyBleHQvc3RhbmRhcmQvcGhwX3N0cmluZy5oCSh3
b3JraW5nIGNvcHkpCkBAIC0xMzMsOCArMTMzLDggQEAKIFBIUEFQSSBjaGFyICpwaHBfc3RyX3Rv
X3N0cihjaGFyICpoYXlzdGFjaywgaW50IGxlbmd0aCwgY2hhciAqbmVlZGxlLAogCQlpbnQgbmVl
ZGxlX2xlbiwgY2hhciAqc3RyLCBpbnQgc3RyX2xlbiwgaW50ICpfbmV3X2xlbmd0aCk7CiBQSFBB
UEkgY2hhciAqcGhwX3RyaW0oY2hhciAqYywgaW50IGxlbiwgY2hhciAqd2hhdCwgaW50IHdoYXRf
bGVuLCB6dmFsICpyZXR1cm5fdmFsdWUsIGludCBtb2RlIFRTUk1MU19EQyk7Ci1QSFBBUEkgc2l6
ZV90IHBocF9zdHJpcF90YWdzKGNoYXIgKnJidWYsIGludCBsZW4sIGludCAqc3RhdGUsIGNoYXIg
KmFsbG93LCBpbnQgYWxsb3dfbGVuKTsKLVBIUEFQSSBzaXplX3QgcGhwX3N0cmlwX3RhZ3NfZXgo
Y2hhciAqcmJ1ZiwgaW50IGxlbiwgaW50ICpzdGF0ZXB0ciwgY2hhciAqYWxsb3csIGludCBhbGxv
d19sZW4sIHplbmRfYm9vbCBhbGxvd190YWdfc3BhY2VzKTsKK1BIUEFQSSBzaXplX3QgcGhwX3N0
cmlwX3RhZ3MoY2hhciAqcmJ1ZiwgaW50IGxlbiwgaW50ICpzdGF0ZSwgY2hhciAqYWxsb3csIGlu
dCBhbGxvd19sZW4sIGludCB3aGl0ZWxpc3QpOworUEhQQVBJIHNpemVfdCBwaHBfc3RyaXBfdGFn
c19leChjaGFyICpyYnVmLCBpbnQgbGVuLCBpbnQgKnN0YXRlcHRyLCBjaGFyICphbGxvdywgaW50
IGFsbG93X2xlbiwgemVuZF9ib29sIGFsbG93X3RhZ19zcGFjZXMsIHplbmRfYm9vbCB3aGl0ZWxp
c3QpOwogUEhQQVBJIGludCBwaHBfY2hhcl90b19zdHJfZXgoY2hhciAqc3RyLCB1aW50IGxlbiwg
Y2hhciBmcm9tLCBjaGFyICp0bywgaW50IHRvX2xlbiwgenZhbCAqcmVzdWx0LCBpbnQgY2FzZV9z
ZW5zaXRpdml0eSwgaW50ICpyZXBsYWNlX2NvdW50KTsKIFBIUEFQSSBpbnQgcGhwX2NoYXJfdG9f
c3RyKGNoYXIgKnN0ciwgdWludCBsZW4sIGNoYXIgZnJvbSwgY2hhciAqdG8sIGludCB0b19sZW4s
IHp2YWwgKnJlc3VsdCk7CiBQSFBBUEkgdm9pZCBwaHBfaW1wbG9kZSh6dmFsICpkZWxpbSwgenZh
bCAqYXJyLCB6dmFsICpyZXR1cm5fdmFsdWUgVFNSTUxTX0RDKTsKSW5kZXg6IGV4dC9maWx0ZXIv
c2FuaXRpemluZ19maWx0ZXJzLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZXh0L2ZpbHRlci9zYW5pdGl6aW5n
X2ZpbHRlcnMuYwkocmV2aXNpb24gMzA3MTM1KQorKysgZXh0L2ZpbHRlci9zYW5pdGl6aW5nX2Zp
bHRlcnMuYwkod29ya2luZyBjb3B5KQpAQCAtMjAwLDcgKzIwMCw3IEBACiAJcGhwX2ZpbHRlcl9l
bmNvZGVfaHRtbCh2YWx1ZSwgZW5jKTsKIAogCS8qIHN0cmlwIHRhZ3MsIGltcGxpY2l0bHkgYWxz
byByZW1vdmVzIFwwIGNoYXJzICovCi0JbmV3X2xlbiA9IHBocF9zdHJpcF90YWdzX2V4KFpfU1RS
VkFMX1AodmFsdWUpLCBaX1NUUkxFTl9QKHZhbHVlKSwgTlVMTCwgTlVMTCwgMCwgMSk7CisJbmV3
X2xlbiA9IHBocF9zdHJpcF90YWdzX2V4KFpfU1RSVkFMX1AodmFsdWUpLCBaX1NUUkxFTl9QKHZh
bHVlKSwgTlVMTCwgTlVMTCwgMCwgMSwgMSk7CiAJWl9TVFJMRU5fUCh2YWx1ZSkgPSBuZXdfbGVu
OwogCiAJaWYgKG5ld19sZW4gPT0gMCkgewpJbmRleDogUkVBRE1FLmlucHV0X2ZpbHRlcgo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBSRUFETUUuaW5wdXRfZmlsdGVyCShyZXZpc2lvbiAzMDcxMzUpCisrKyBSRUFE
TUUuaW5wdXRfZmlsdGVyCSh3b3JraW5nIGNvcHkpCkBAIC0xNDIsNyArMTQyLDcgQEAKIAogICAg
IHBocF9yZWdpc3Rlcl92YXJpYWJsZV9leChyYXdfdmFyLCAmbmV3X3ZhciwgYXJyYXlfcHRyIFRT
Uk1MU19EQyk7CiAKLSAgICBwaHBfc3RyaXBfdGFncygqdmFsLCB2YWxfbGVuLCBOVUxMLCBOVUxM
LCAwKTsKKyAgICBwaHBfc3RyaXBfdGFncygqdmFsLCB2YWxfbGVuLCBOVUxMLCBOVUxMLCAwLCAx
KTsKIAogICAgICpuZXdfdmFsX2xlbiA9IHN0cmxlbigqdmFsKTsKICAgICByZXR1cm4gMTsK
 
PHP Copyright © 2001-2019 The PHP Group
All rights reserved.
Last updated: Mon Sep 16 07:01:26 2019 UTC