Textpattern CMS support forum
You are not logged in. Register | Login | Help
- Topics: Active | Unanswered
Re: resolved: category cloud that leads to articles ? I checked plugins
Paste a helpless version here, just in case:
YToxMTp7czo0OiJuYW1lIjtzOjk6ImV0Y19xdWVyeSI7czo2OiJhdXRob3IiO3M6MTQ6Ik9s
ZWcgTG91a2lhbm92IjtzOjEwOiJhdXRob3JfdXJpIjtzOjM2OiJodHRwOi8vd3d3Lml1dC1m
YmxlYXUuZnIvcHJvamV0L2V0Yy8iO3M6NzoidmVyc2lvbiI7czo3OiIxLjIuOS4yIjtzOjEx
OiJkZXNjcmlwdGlvbiI7czoyMToiUXVlcnkgZGF0YSB3aXRoIFhQYXRoIjtzOjQ6ImNvZGUi
O3M6MzI2ODQ6ImZ1bmN0aW9uIGV0Y19xdWVyeSgkYXR0cywgJHRoaW5nPScnKSB7DQoNCgln
bG9iYWwgJHByZWZzLCAkZXRjX3F1ZXJ5Ow0KDQoJZXh0cmFjdChsQXR0cyhhcnJheSgNCgkJ
J25hbWUnID0+IG51bGwsDQoJCSdzYXZlJyA9PiBudWxsLA0KCQknZGF0YScgPT4gbnVsbCwN
CgkJJ3VybCcgPT4gJycsDQoJCSdjb250ZXh0JyA9PiBudWxsLA0KCQknbWFya3VwJyA9PiAn
JywNCgkJJ2VuY29kaW5nJyA9PiAnVVRGLTgnLA0KLy8JCSdzdGFydCcgPT4gJycsDQoJCSdx
dWVyeScgPT4gJycsDQoJCSdmb3JtJyA9PiAnJywNCgkJJ3Rob3JvdWdoJyA9PiAnJywNCgkJ
J3JlcGxhY2UnID0+ICcnLA0KCQknc2VwYXJhdG9yJyA9PiAnOycsDQoJCSdhcmdzZXAnID0+
ICd8JywNCgkJJ2dsb2JhbHMnID0+ICd2YXJpYWJsZSxwcmV0ZXh0LHRoaXNhcnRpY2xlLHRo
aXNpbWFnZSx0aGlzZmlsZSx0aGlzbGluaycsDQoJCSdzcGVjaWFscycgPT4gJ2RhdGEscXVl
cnknLA0KCQknc2FuaXRpemUnID0+ICdfQ09PS0lFLF9HRVQsX1BPU1QsX1JFUVVFU1QsX1NF
UlZFUicsDQoJCSdwYXJzZScgPT4gJ2F1dG8nLA0KCQknZnVuY3Rpb25zJyA9PiAnJywNCgkJ
J2xpbWl0JyA9PiBudWxsLA0KCQknb2Zmc2V0JyA9PiAnMCcsDQoJCSdsYWJlbCcgPT4gJycs
DQoJCSdsYWJlbHRhZycgPT4gJycsDQoJCSd3cmFwdGFnJyA9PiAnJywNCgkJJ2JyZWFrJyA9
PiAnJywNCgkJJ2NsYXNzJyA9PiAnJywNCgkJJ2h0bWxfaWQnID0+ICcnLA0KCQknZGVidWcn
ID0+ICcnDQoJKSwgJGF0dHMpKTsNCg0KCWlmKCRkZWJ1Zykgew0KCQkkZGVidWcgPSBkb19s
aXN0KCRkZWJ1Zyk7DQoJCSRzdGFydHRpbWUgPSBtaWNyb3RpbWUoVFJVRSk7DQoJfQ0KDQoJ
Ly8gR3JhYiB0aGUgZm9ybSBvciBlbWJlZGRlZCAkdGhpbmcNCgkkZmFsc2VQYXJ0ID0gaXNz
ZXQoJHRoaW5nKSA/IEV2YWxFbHNlKCR0aGluZywgMCkgOiAnJzsNCglpZigkZm9ybSkgJHRo
aW5nID0gZmV0Y2hfZm9ybSgkZm9ybSk7DQoJJGNvbnRlbnQgPSBpc3NldCgkdGhpbmcpID8g
RXZhbEVsc2UoJHRoaW5nLCAxKSA6ICcnOw0KDQoJJG5vZGF0YSA9ICEkdXJsICYmICgkZGF0
YSA9PT0gbnVsbCk7DQoJQGxpc3QoJGVuY29kaW5nLCAkZW5jX2Zyb20pID0gZXhwbG9kZSgn
OicsICRlbmNvZGluZyk7DQoNCgkkcGFyZW50X3VuaXFpZCA9IGlzc2V0KCRwcmVmc1snZXRj
X3F1ZXJ5X3VuaXFpZCddKSA/ICRwcmVmc1snZXRjX3F1ZXJ5X3VuaXFpZCddIDogMDsNCgkk
cHJlZnNbJ2V0Y19xdWVyeV91bmlxaWQnXSA9ICR1bmlxaWQgPSAkcGFyZW50X3VuaXFpZCAr
IDE7Ly91bmlxaWQoImV0YyIsdHJ1ZSk7DQoJJHByZWZzWyJldGNfY29udGV4dF8kdW5pcWlk
Il0gPSBhcnJheSgnYXJnc2VwJz0+JGFyZ3NlcCwgJ2VuY29kaW5nJz0+JGVuY29kaW5nLCAn
ZnVuY3Rpb25zJz0+JycvKiwgJ3BocCc9PnRydWUqLyk7DQoNCglpZigkZ2xvYmFscykgew0K
CQkkcHJlZnNbImV0Y19nbG9iYWxzXyR1bmlxaWQiXSA9IGRvX2xpc3QoJGdsb2JhbHMpOw0K
CQkkcHJlZnNbImV0Y19zYW5pdGl6ZV8kdW5pcWlkIl0gPSAkc2FuaXRpemUgPyBhcnJheV9m
aWxsX2tleXMoZG9fbGlzdCgkc2FuaXRpemUpLCBudWxsKSA6IGFycmF5KCk7DQoJfSBlbHNl
ICRwcmVmc1siZXRjX2dsb2JhbHNfJHVuaXFpZCJdID0gZmFsc2U7DQovLwkkcHJlZnNbImV0
Y19zcGVjaWFsc18kdW5pcWlkIl0gPSBhcnJheSgneyNyb3d9Jz0+bnVsbCwgJ3sjaW5kfSc9
Pm51bGwsICd7P30nPT5udWxsLCAneyN9Jz0+bnVsbCwgJ3sjI30nPT5udWxsKTsNCg0KCWlm
KCRzcGVjaWFscykgZm9yZWFjaChkb19saXN0KCRzcGVjaWFscykgYXMgJHNwZWNpYWwpIGlm
KCFlbXB0eSgkJHNwZWNpYWwpKSB7DQoJCSQkc3BlY2lhbCA9IHByZWdfcmVwbGFjZV9jYWxs
YmFjayhFVENfUFJFR19TUEVDLCAnZXRjX3BhcnNlX3ZhcmlhYmxlJywgJCRzcGVjaWFsKTsN
Cgl9DQoNCglpZigkZnVuY3Rpb25zKSBpZihldGNfcGhwX2FsbG93ZWQoJHVuaXFpZCkpIHsN
CgkJJGZ1bmN0aW9ucyA9IGRvX2xpc3QoJGZ1bmN0aW9ucyk7DQoJCSRmdW5jID0gaW1wbG9k
ZSgnfCcsICRmdW5jdGlvbnMpOw0KCQlpZigkcXVlcnkpICRxdWVyeSA9IHByZWdfcmVwbGFj
ZSgnL1xiKCcuJGZ1bmMuJylccypcKC8nLCAicGhwOmZ1bmN0aW9uKCckMScsIiwgJHF1ZXJ5
KTsNCgl9IGVsc2UgJGZ1bmN0aW9ucyA9ICcnOw0KCSRwcmVmc1siZXRjX2NvbnRleHRfJHVu
aXFpZCJdWydmdW5jdGlvbnMnXSA9ICRmdW5jdGlvbnMgPyAkZnVuYyA6ICcnOw0KDQoJaWYo
JG1hcmt1cCAhPT0gJ2RhdGEnKSAkbG9hZGVkID0gZmFsc2U7DQoJZWxzZWlmKCRkYXRhICYm
IGlzc2V0KCRldGNfcXVlcnlbJGRhdGFdKSkgew0KCQkkbWFya3VwID0gJGV0Y19xdWVyeVsk
ZGF0YV0tPm1hcmt1cDsNCgkJaWYoaXNzZXQoJGV0Y19xdWVyeVskZGF0YV0tPmRvbSkpICRk
b20gPSAmJGV0Y19xdWVyeVskZGF0YV0tPmRvbTsNCgkJaWYoaXNzZXQoJGV0Y19xdWVyeVsk
ZGF0YV0tPmRhdGEpKSAkZGF0YSA9ICYkZXRjX3F1ZXJ5WyRkYXRhXS0+ZGF0YTsNCgkJJGxv
YWRlZCA9IHRydWU7DQoJfSBlbHNlICRkYXRhID0gJyc7DQoNCglpZigkZGF0YSA9PT0gJycp
IHJldHVybiBldGNfY2xlYW51cCgkdW5pcWlkLCAkcGFyZW50X3VuaXFpZCwgJGZhbHNlUGFy
dCA/IHBhcnNlKCRmYWxzZVBhcnQpIDogJycpOw0KDQoJaWYoZW1wdHkoJG1hcmt1cCkpIGlm
KCRkYXRhID09PSBudWxsKSAkbWFya3VwID0gJHVybCA/ICdodG1sJyA6ICgkcXVlcnkgIT09
JycgPyAneG1sJyA6ICdyYXcnKTsNCgkJZWxzZSAkbWFya3VwID0gKHN0cnRvbG93ZXIoc3Vi
c3RyKGx0cmltKCRkYXRhKSwgMCwgNykpID09PSAnc2VsZWN0ICcgPyAnZGInIDogKCRkYXRh
WzBdID09PSAnWycgfHwgJGRhdGFbMF0gPT09ICd7JyAmJiAoJGRhdGFbMV0gPT09ICciJyB8
fCAkZGF0YVsxXSA9PT0gJyAnKSA/ICdqc29uJyA6ICgkdXJsIHx8IHN0cnBvcygkZGF0YSwg
JzwnKSAhPT0gZmFsc2UgPyAnaHRtbCcgOiAncmF3JykpKTsNCgllbHNlIHsNCgkJQGxpc3Qo
JG1hcmt1cCwgJHBmeCkgPSBleHBsb2RlKCc6JywgJG1hcmt1cCwgMik7DQoJCWlmKHN1YnN0
cigkbWFya3VwLCAtMSkgPT09ICcqJykgeyRjZGF0YSA9IHRydWU7ICRtYXJrdXAgPSBzdWJz
dHIoJG1hcmt1cCwgMCwgLTEpO30NCgl9DQoNCglpZigkdXJsIHx8ICRtYXJrdXAgPT09ICdk
Yid8fCAkbWFya3VwID09PSAnbGRhcCcpIHsNCgkJaWYoIWV0Y19waHBfYWxsb3dlZCgkdW5p
cWlkKSkgcmV0dXJuIGV0Y19jbGVhbnVwKCR1bmlxaWQsICRwYXJlbnRfdW5pcWlkLCAnJyk7
DQoJfQ0KDQoJaWYoJGNvbnRlbnQgIT09ICcnKSB7DQoJCWlmKCRwYXJzZSA9PT0gJ2F1dG8n
KSAkcGFyc2UgPSAoc3RycG9zKCRjb250ZW50LCAnPHR4cDonKSAhPT0gZmFsc2UgPyAnYWZ0
ZXInIDogJycpOw0KCQllbHNlaWYoJHBhcnNlID09PSAnYmVmb3JlJyB8fCAkcGFyc2UgPT09
ICdib3RoJykgJGNvbnRlbnQgPSBwYXJzZSgkY29udGVudCk7DQoJCWlmKHN0cnBvcygkY29u
dGVudCwgJzx4c2w6JykgIT09IGZhbHNlKSB7JHhjb250ZW50ID0gJGNvbnRlbnQ7ICRjb250
ZW50ID0gJyc7fQ0KCX0NCgkkcGFyc2UgPSAoJHBhcnNlID09PSAnYWZ0ZXInIHx8ICRwYXJz
ZSA9PT0gJ2JvdGgnKTsNCg0KCSRpc19odG1sID0gJG1hcmt1cCA9PT0gJ2h0bWwnOw0KCSRp
c194bWwgPSAkbWFya3VwID09PSAneG1sJzsNCg0KCSRmbGF0ID0gKCEkaXNfaHRtbCAmJiAh
JGlzX3htbCAmJiAhJHJlcGxhY2UgJiYgIWlzc2V0KCR4Y29udGVudCkpOy8vYXJyYXkgbW9k
ZQ0KCSRxdWVyeV9hcnJheSA9IG51bGw7Ly9hcnJheSgpOw0KCWlmKCRmbGF0KSBpZigkcXVl
cnkgIT09ICcnKSB7DQoJCSRxdWVyeV9hcnJheSA9IGV0Y19wYXJzZV94cGF0aCgkcXVlcnku
Jz8nLCAkZmxhdCk7DQoJCWlmKGlzc2V0KCRxdWVyeV9hcnJheVsnYXJyYXknXSkpICRxdWVy
eV9hcnJheSA9ICRxdWVyeV9hcnJheVsnYXJyYXknXTsNCgl9DQoJZWxzZWlmKCRtYXJrdXAg
PT09ICdkYicpDQoJCWlmKCRjb250ZW50ID09PSAnJykgeyRxdWVyeSA9ICcqLyonOyAkcXVl
cnlfYXJyYXkgPSBhcnJheSgnKicsICcqJyk7fQ0KDQoJaWYoJHByZWZzWyJldGNfZ2xvYmFs
c18kdW5pcWlkIl0gJiYgc3RycG9zKCRjb250ZW50LiRyZXBsYWNlLCAnez8nKSA9PT0gZmFs
c2UgJiYgc3RycG9zKCRjb250ZW50LiRyZXBsYWNlLCAneyEnKSA9PT0gZmFsc2UpICRwcmVm
c1siZXRjX2dsb2JhbHNfJHVuaXFpZCJdID0gZmFsc2U7DQoJaWYoJGNvbnRlbnQgIT09ICcn
KSAkY29udGVudHMgPSBldGNfcGFyc2Vfc3RyaW5nKCRjb250ZW50LCAkZmxhdCk7DQoJZWxz
ZWlmKCR0aGluZykgJGNvbnRlbnRzID0gYXJyYXkoJ3RleHQnID0+ICcnKTsNCgllbHNlICRj
b250ZW50cyA9IGFycmF5KCk7DQoNCglpZigkcmVwbGFjZSkgaWYoc3RycG9zKCRyZXBsYWNl
LCAnPHhzbDonKSAhPT0gZmFsc2UpIHskeHJlcGxhY2UgPSAkcmVwbGFjZTsgJHJlcGxhY2Ug
PSAnJzt9DQoJZWxzZSB7DQoJCSRyZXBsYWNlX2FycmF5ID0gYXJyYXkoKTsNCgkJZm9yZWFj
aChkb19saXN0KCRyZXBsYWNlLCAkc2VwYXJhdG9yKSBhcyAkcGF0KSB7DQoJCQkkcmVwbGFj
ZV9hcnJheVtdID0gZXRjX3BhcnNlX3hwYXRoKCRwYXQsICRmbGF0KTsNCgkJfQ0KCQlpZigk
ZGVidWcgJiYgaW5fYXJyYXkoJ3InLCAkZGVidWcpKSB7ZWNobyAnUkVQTEFDRSc7IGRtcCgk
cmVwbGFjZV9hcnJheSk7fQ0KCX0NCg0KCWlmKCEkbG9hZGVkKSB7DQoJCWlmKCR1cmwpIGlm
KCRtYXJrdXAgPT09ICdkYicpDQoJCQl7DQoJCQkJZ2xvYmFsICREQjsNCgkJCQlpZighbXlz
cWxfc2VsZWN0X2RiKCR1cmwpKSAkZGF0YSA9IG51bGw7DQoJCQkJZWxzZSAkZGF0YSA9IGdl
dFJvd3MoJGRhdGEpOw0KCQkJCW15c3FsX3NlbGVjdF9kYigkREItPmRiKTsNCgkJCX0gZWxz
ZWlmKCRtYXJrdXAgPT09ICdsZGFwJykgew0KCQkJCSRsZGFwY29ubiA9IGxkYXBfY29ubmVj
dCgkdXJsKTsNCi8vCQkJCWxkYXBfc2V0X29wdGlvbigkbGRhcGNvbm4sIExEQVBfT1BUX1BS
T1RPQ09MX1ZFUlNJT04sIDMpOw0KCQkJCWlmKCRsZGFwY29ubikNCgkJCQl7DQoJCQkJCUBs
aXN0KCRsZGFwcmRuLCAkbGRhcGZpbHRlciwgJGxkYXBvbmx5KSA9IGRvX2xpc3QoJGRhdGEs
ICc7Jyk7DQoJCQkJCWlmKCFpc3NldCgkbGRhcGZpbHRlcikpICRsZGFwZmlsdGVyID0gJ29i
amVjdENsYXNzPSonOw0KCQkJCQkkbGRhcG9ubHkgPSAoIWVtcHR5KCRsZGFwb25seSkgPyBk
b19saXN0KCRsZGFwb25seSkgOiBhcnJheSgpKTsNCgkJCQkJJGRhdGEgPSBsZGFwX3NlYXJj
aCgkbGRhcGNvbm4sICRsZGFwcmRuLCAkbGRhcGZpbHRlciwgJGxkYXBvbmx5KTsNCgkJCQkJ
JGRhdGEgPSBsZGFwX2dldF9lbnRyaWVzKCRsZGFwY29ubiwgJGRhdGEpOw0KCQkJCQlsZGFw
X2Nsb3NlKCRsZGFwY29ubik7DQoJCQkJfQ0KCQkJCWVsc2UgJGRhdGEgPSBudWxsOw0KCQkJ
fSBlbHNlIHsNCgkJCQkkY29udGV4dCA9ICRjb250ZXh0ID8gc3RyZWFtX2NvbnRleHRfY3Jl
YXRlKGpzb25fZGVjb2RlKCRjb250ZXh0LCB0cnVlKSkgOiBudWxsOw0KCQkJCSRkYXRhID0g
ZmlsZV9nZXRfY29udGVudHMoJHVybCwgZmFsc2UsICRjb250ZXh0KTsNCgkJCQlpZigkZW5j
b2RpbmcgJiYgJGRhdGEpIHsNCgkJCQkJJGVuY29kaW5nID0gc3RydG91cHBlcigkZW5jb2Rp
bmcpOw0KCQkJCQlpZihpc3NldCgkZW5jX2Zyb20pICYmICRlbmNfZnJvbSAhPT0gJyonKSAk
ZW5jID0gc3RydG91cHBlcigkZW5jX2Zyb20pOw0KCQkJCQllbHNlaWYoIWVtcHR5KCRodHRw
X3Jlc3BvbnNlX2hlYWRlcikpIHsgDQoJCQkJCQlmb3JlYWNoKCRodHRwX3Jlc3BvbnNlX2hl
YWRlciBhcyAkaGVhZGVyKSBpZihwcmVnX21hdGNoKCcvXkNvbnRlbnRcLVR5cGVcOi4qXGJj
aGFyc2V0PShbXHdcLSNdKykvaScsICRoZWFkZXIsICRtYXRjaGVzKSkgeyRlbmMgPSBzdHJ0
b3VwcGVyKCRtYXRjaGVzWzFdKTsgYnJlYWs7fQ0KCQkJCQkJaWYoIWlzc2V0KCRlbmMpICYm
IHByZWdfbWF0Y2goJy88bWV0YVxiW14+XStcYmNoYXJzZXQ9Ij8oW1x3XC0jXSspIj9bXj5d
Kj4vaScsICRkYXRhLCAkbWF0Y2hlcykpICRlbmMgPSBzdHJ0b3VwcGVyKCRtYXRjaGVzWzFd
KTsNCgkJCQkJfQ0KCQkJCQlpZihpc19jYWxsYWJsZSgnbWJfZGV0ZWN0X2VuY29kaW5nJykp
IHsNCgkJCQkJCWlmKCFpc3NldCgkZW5jKSkgJGVuYyA9IHN0cnRvdXBwZXIobWJfZGV0ZWN0
X2VuY29kaW5nKCRkYXRhKSk7IC8vZWxzZSBkbXAoJGVuYyk7DQoJCQkJCQkkbWJfZW5jb2Rp
bmdzID0gJGVuYyA/IGFycmF5X21hcCgnc3RydG91cHBlcicsIG1iX2xpc3RfZW5jb2Rpbmdz
KCkpIDogYXJyYXkoKTsNCgkJCQkJCSRtYl9lbmNvZGluZ3MgPSBpbl9hcnJheSgkZW5jb2Rp
bmcsICRtYl9lbmNvZGluZ3MpICYmIGluX2FycmF5KCRlbmMsICRtYl9lbmNvZGluZ3MpOw0K
CQkJCQl9DQoJCQkJCWVsc2UgJG1iX2VuY29kaW5ncyA9IGZhbHNlOw0KCQkJCQlpZigkZW5j
ICYmICgkZW5jICE9PSAkZW5jb2RpbmcgfHwgaXNzZXQoJGVuY19mcm9tKSkpDQoJCQkJCQlp
ZigkbWJfZW5jb2RpbmdzKSAkZGF0YSA9IG1iX2NvbnZlcnRfZW5jb2RpbmcoJGRhdGEsICRl
bmNvZGluZywgJGVuYyk7DQoJCQkJCQllbHNlaWYoaXNfY2FsbGFibGUoJ2ljb252JykpICRk
YXRhID0gaWNvbnYoJGVuYywgJGVuY29kaW5nLicvL0lHTk9SRScsICRkYXRhKTsNCgkJCQl9
DQoJCQl9DQoNCgkJaWYoJG1hcmt1cCA9PT0gJ2pzb24nKSBpZigkZGF0YVswXSA9PT0gJ1sn
ICYmIHByZWdfbWF0Y2goJy9eXFsoXC0/XHcrKVwuXC4oXC0/XHcrKTo/KFtcK1wtXT8pKFxk
KilcXSQvJywgJGRhdGEsICRtYXRjaGVzKSkgc3dpdGNoKCRtYXRjaGVzWzNdKSB7DQoJCQkJ
Y2FzZSAnKycgOiBpZigkbWF0Y2hlc1sxXSA8PSAkbWF0Y2hlc1syXSkgJGRhdGEgPSByYW5n
ZSgkbWF0Y2hlc1sxXSwgJG1hdGNoZXNbMl0sICRtYXRjaGVzWzRdID8gJG1hdGNoZXNbNF0g
OiAxKTsgZWxzZSAkZGF0YSA9IG51bGw7IGJyZWFrOw0KCQkJCWNhc2UgJy0nIDogaWYoJG1h
dGNoZXNbMV0gPj0gJG1hdGNoZXNbMl0pICRkYXRhID0gcmFuZ2UoJG1hdGNoZXNbMV0sICRt
YXRjaGVzWzJdLCAkbWF0Y2hlc1s0XSA/ICRtYXRjaGVzWzRdIDogMSk7IGVsc2UgJGRhdGEg
PSBudWxsOyBicmVhazsNCgkJCQlkZWZhdWx0IDogJGRhdGEgPSByYW5nZSgkbWF0Y2hlc1sx
XSwgJG1hdGNoZXNbMl0sICRtYXRjaGVzWzRdID8gJG1hdGNoZXNbNF0gOiAxKTsNCgkJCX0g
ZWxzZSAkZGF0YSA9IGpzb25fZGVjb2RlKCRkYXRhLCB0cnVlKTsgLy9hcnJheQ0KCQllbHNl
aWYoJG1hcmt1cCA9PT0gJ2FycmF5JykgJGRhdGEgPSB1bnNlcmlhbGl6ZSgkZGF0YSk7IA0K
CQllbHNlaWYoJG1hcmt1cCA9PT0gJ2RiJyAmJiAhJHVybCkgJGRhdGEgPSBnZXRSb3dzKCRk
YXRhKTsNCgl9DQoJZWxzZWlmKCEkZmxhdCAmJiAhaXNzZXQoJGRvbSkpIHskbG9hZGVkID0g
ZmFsc2U7fQ0KDQoJaWYoJGRlYnVnKSB7DQoJCWRtcCgiUHJlbG9hZGVkIGluICIgLiAobWlj
cm90aW1lKFRSVUUpIC0gJHN0YXJ0dGltZSkgLiAiIHNlY29uZHMuXG4iKTsNCgkJJHN0YXJ0
dGltZSA9IG1pY3JvdGltZShUUlVFKTsNCgl9DQoNCglpZighJG5vZGF0YSAmJiBlbXB0eSgk
ZGF0YSkpICRyb290cyA9IG51bGw7DQoJZWxzZWlmKCRmbGF0KSB7JHJvb3RzID0gYXJyYXko
JGRhdGEgPyAkZGF0YSA6ICcnKTsgJHhwYXRoID0gbnVsbDt9DQoJZWxzZSB7DQoJCWlmKCEk
bG9hZGVkKSB7DQoJCQkvKioqIGxvYWQgdGhlIGRhdGEgaW50byBhIG5ldyBkb20gb2JqZWN0
ICoqKi8NCgkJCSRkb20gPSBuZXcgRE9NRG9jdW1lbnQ7DQoJCQkkZG9tLT5wcmVzZXJ2ZVdo
aXRlU3BhY2UgPSBmYWxzZTsgDQoJCQkkZG9tLT5zdHJpY3RFcnJvckNoZWNraW5nID0gZmFs
c2U7DQoJCQkkZG9tLT5lbmNvZGluZyA9ICRlbmNvZGluZzsNCgkJCWlmKCEkZGVidWcpIGxp
YnhtbF91c2VfaW50ZXJuYWxfZXJyb3JzKHRydWUpOw0KDQoJCQlpZihpc3NldCgkY2RhdGEp
ICYmICRkYXRhKSAkZGF0YSA9IHN0cl9pcmVwbGFjZShhcnJheSgnPCFbQ0RBVEFbJywgJ11d
PicpLCAnPCEtLS0tPicsICRkYXRhKTsNCgkJCWlmKGlzc2V0KCRwZngpICYmICRwZnggPT09
ICcnKSAkZGF0YSA9IHN0cl9yZXBsYWNlKCcgeG1sbnM9JywgJyBldGNucz0nLCAkZGF0YSk7
DQoNCgkJCWlmKCRpc19odG1sKSB7DQovLwkJCQlpZigkdXJsKSAkZG9tLT5sb2FkSFRNTChw
cmVnX3JlcGxhY2UoJy88aGVhZC4qPi9Vc2knLCAnXFwwPG1ldGEgaHR0cC1lcXVpdj0iY29u
dGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9JyAuICRlbmNvZGluZyAu
ICciPicsICRkYXRhKSk7DQoJCQkJaWYoJHVybCkgJGRvbS0+bG9hZEhUTUwoJzxtZXRhIGh0
dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PScg
LiAkZW5jb2RpbmcgLiAnIj4nIC4gJGRhdGEpOw0KCQkJCWVsc2UgJGRvbS0+bG9hZEhUTUwo
Jzw/eG1sIGVuY29kaW5nPSInLiRlbmNvZGluZy4nIj4nLiRkYXRhKTsNCgkJCX0NCgkJCWVs
c2VpZigkaXNfeG1sKSB7aWYoISRub2RhdGEpICRkb20tPmxvYWRYTUwoJGRhdGEsIExJQlhN
TF9DT01QQUNUKTt9DQoJCQllbHNlaWYoJGRhdGEpIGlmKCFpc19hcnJheSgkZGF0YSkgJiYg
IWlzX29iamVjdCgkZGF0YSkpICRkb20tPmFwcGVuZENoaWxkKCRkb20tPmNyZWF0ZUVsZW1l
bnQoJ3Jvb3QnLCAoc3RyaW5nKSRkYXRhKSk7IGVsc2Ugew0KCQkJCWZvcmVhY2ggKCRkYXRh
IGFzICRrZXkgPT4gJHZhbCkgJGRvbS0+YXBwZW5kQ2hpbGQoZXRjX2NyZWF0ZV9lbGVtZW50
KCRrZXksICR2YWwsICRkb20pKTsNCgkJCQkkaXNfeG1sID0gdHJ1ZTsNCgkJCX0NCgkJfQ0K
DQoJCWlmKChpc3NldCgkeGNvbnRlbnQpIHx8IGlzc2V0KCR4cmVwbGFjZSkpICYmIGNsYXNz
X2V4aXN0cygnWFNMVFByb2Nlc3NvcicpKSB7DQoJCQkkeHNsdCA9IG5ldyBET01Eb2N1bWVu
dDsNCgkJCSRwcm9jID0gbmV3IFhTTFRQcm9jZXNzb3I7DQoJCQlpZigkZnVuY3Rpb25zKSAk
cHJvYy0+cmVnaXN0ZXJQSFBGdW5jdGlvbnMoJGZ1bmN0aW9ucyk7DQoJCQlpZihpc3NldCgk
eHJlcGxhY2UpKSB7DQoJCQkJJHhzbHQtPmxvYWRYTUwoJHhyZXBsYWNlKTsNCgkJCQkkcHJv
Yy0+aW1wb3J0U3R5bGVTaGVldCgkeHNsdCk7DQoJCQkJJGRvbSA9ICRwcm9jLT50cmFuc2Zv
cm1Ub0RvYygkZG9tKTsNCgkJCX0NCgkJCWlmKGlzc2V0KCR4Y29udGVudCkpIHsNCgkJCQkk
eHNsdC0+bG9hZFhNTCgkeGNvbnRlbnQpOw0KCQkJCSRwcm9jLT5pbXBvcnRTdHlsZVNoZWV0
KCR4c2x0KTsNCgkJCQlyZXR1cm4gZXRjX2NsZWFudXAoJHVuaXFpZCwgJHBhcmVudF91bmlx
aWQsICRwcm9jLT50cmFuc2Zvcm1Ub1hNTCgkZG9tKSk7DQoJCQl9DQoJCX0NCg0KCQkkeHBh
dGggPSBuZXcgRE9NWHBhdGgoJGRvbSk7DQoJCWlmKCRmdW5jdGlvbnMpIHsNCgkJCSR4cGF0
aC0+cmVnaXN0ZXJOYW1lc3BhY2UoJ3BocCcsICdodHRwOi8vcGhwLm5ldC94cGF0aCcpOw0K
CQkJJHhwYXRoLT5yZWdpc3RlclBIUEZ1bmN0aW9ucygkZnVuY3Rpb25zKTsNCgkJfQ0KCQlp
ZighZW1wdHkoJHBmeCkpIHsNCgkJCSR4cGF0aC0+cmVnaXN0ZXJOYW1lc3BhY2UoJHBmeCwg
JGRvbS0+bG9va3VwTmFtZXNwYWNlVXJpKCRkb20tPm5hbWVzcGFjZVVSSSkpOw0KCQl9DQoN
CgkJaWYoZW1wdHkoJHN0YXJ0KSkgJHN0YXJ0ID0gKCRpc19odG1sID8gJy9odG1sL2JvZHkn
IDogJy8nKTsNCgkJJHJvb3RzID0gJHhwYXRoLT5xdWVyeSgkc3RhcnQpOw0KDQoJCWlmKCRk
ZWJ1Zykge2lmKGluX2FycmF5KCdoJywgJGRlYnVnKSkge2VjaG8gJG1hcmt1cDsgZG1wKCRk
b20tPnNhdmVIVE1MKCkpO319DQoJCWVsc2UgbGlieG1sX2NsZWFyX2Vycm9ycygpOw0KCX0v
L2RvbQ0KDQoJaWYoZW1wdHkoJGNvbnRlbnRzKSkgey8vJHRoaW5nID09PSBudWxsDQoJCSRw
YXRoID0gJGZsYXQgfHwgJHF1ZXJ5ICE9PSAnJyB8fCAkaXNfeG1sID8gJy4nIDogJ25vZGUo
KSc7DQoJCSRjb250ZW50ID0gJHBhdGggIT09ICcuJzsNCgkJJGNvbnRlbnRzID0gYXJyYXko
YXJyYXkoJ3R5cGUnID0+ICd4cGF0aCcsICd0ZXh0JyA9PiAnJywgJ3ZhbHVlJyA9PiBhcnJh
eSgncGF0aCcgPT4gJHBhdGgsICdtb2RlJyA9PiAkZmxhdCA/ICc/JyA6ICcuJywgJ3ZhbHVl
JyA9PiBhcnJheSgpLCAnYXJyYXknID0+IGFycmF5KCkpKSk7IA0KCX0gZWxzZSAkY29udGVu
dCA9IHRydWU7DQoJaWYoJHF1ZXJ5ID09PSAnJykgJHF1ZXJ5ID0gKCRpc194bWwgJiYgISRu
b2RhdGEgPyAnbm9kZSgpJyA6ICcuJyk7DQoJJG91dCA9IGFycmF5KCk7DQoJJHByZWZzWyJl
dGNfY29udGV4dF8kdW5pcWlkIl1bJ3hwYXRoJ10gPSAmJHhwYXRoOw0KCSRwcmVmc1siZXRj
X2NvbnRleHRfJHVuaXFpZCJdWyd4bWwnXSA9ICRpc194bWw7DQoNCglpZigkZGVidWcpIHsN
CgkJZG1wKCJMb2FkZWQgaW4gIiAuIChtaWNyb3RpbWUoVFJVRSkgLSAkc3RhcnR0aW1lKSAu
ICIgc2Vjb25kcy4gJGZsYXRcbiIpOw0KCQlpZihpbl9hcnJheSgnZCcsICRkZWJ1ZykpIHtl
Y2hvICdEQVRBICcsICRtYXJrdXA7IGRtcCgkZGF0YSk7fQ0KCQlpZihpbl9hcnJheSgncScs
ICRkZWJ1ZykpIHtlY2hvICdRVUVSWSc7IGRtcCgkcXVlcnkpOyBkbXAoJHF1ZXJ5X2FycmF5
KTt9DQoJCWlmKGluX2FycmF5KCdjJywgJGRlYnVnKSkge2VjaG8gJ0NPTlRFTlRTJzsgZG1w
KCRjb250ZW50cyk7fQ0KCQkkc3RhcnR0aW1lID0gbWljcm90aW1lKFRSVUUpOw0KCX0NCg0K
CWlmKCFlbXB0eSgkcm9vdHMpKSB7DQoJCWZvcmVhY2goJHJvb3RzIGFzICRyb290KSBpZigh
JHRob3JvdWdoIHx8ICR4cGF0aC0+cXVlcnkoJHJvb3QtPmdldE5vZGVQYXRoKCkpLT5sZW5n
dGgpIHsNCgkJCS8vIFVnbHkgaGFjayB0byBkZXRlY3QgaWYgdGhlIG5vZGUgaXMgcmVtb3Zl
ZA0KDQoJCQkkZWxlbWVudHMgPSAkaW50ZXJuYWxzID0gYXJyYXkoKTsNCgkJCWlmKCEkZmxh
dCkgew0KCQkJCSRub2RlcyA9ICR4cGF0aC0+ZXZhbHVhdGUoJHF1ZXJ5LCAkcm9vdCk7DQoJ
CQkJaWYgKCEoJG5vZGVzIGluc3RhbmNlb2YgRE9NTm9kZUxpc3QpKSB7DQoJCQkJCSRpbnRl
cm5hbHNbJz8nXSA9ICRub2RlczsNCgkJCQkJaWYoJG5vZGVzKSB7DQoJCQkJCQkkbmV3b3V0
ID0gLyplbXB0eSgkY29udGVudHMpKi8gISRjb250ZW50ID8gJG5vZGVzIDogKGlzc2V0KCRj
b250ZW50c1sndGV4dCddKSA/ICRjb250ZW50c1sndGV4dCddIDogZXRjX2V2YWx1YXRlX3N0
cmluZygkY29udGVudHMsICRyb290LCAkaW50ZXJuYWxzLCAkZmxhdCkpOw0KCQkJCQkJJG91
dFtdID0gJHBhcnNlID8gcGFyc2UoJG5ld291dCkgOiAkbmV3b3V0Ow0KCQkJCQl9DQoJCQkJ
CWNvbnRpbnVlOw0KCQkJCX0NCgkJCQlmb3JlYWNoKCRub2RlcyBhcyAkZWxlbWVudCkgJGVs
ZW1lbnRzW10gPSAkZWxlbWVudDsNCgkJCX0vLyBvciAkcm9vdCA9ICRkYXRhDQoJCQllbHNl
aWYoJHF1ZXJ5ID09PSAnKicgfHwgJHF1ZXJ5X2FycmF5ID09PSBudWxsKSAkZWxlbWVudHMg
PSAoYXJyYXkpICRyb290Ow0KCQkJZWxzZWlmKGVtcHR5KCRxdWVyeV9hcnJheSkpICRlbGVt
ZW50cyA9IGFycmF5KCRyb290KTsvL3F1ZXJ5ID0gIi4iIG9yICIvIg0KCQkJZWxzZSB7DQoJ
CQkJJHF1ZXJ5X2FycmF5ID0gYXJyYXkoYXJyYXkoJ3R5cGUnID0+ICd4cGF0aCcsICd0ZXh0
JyA9PiAnJywgJ3ZhbHVlJyA9PiBhcnJheSgncGF0aCcgPT4gJy4nLCAnbW9kZScgPT4gJz8n
LCAnYXJyYXknID0+ICRxdWVyeV9hcnJheSwgJ3ZhbHVlJyA9PiBhcnJheSgpKSkpOw0KCQkJ
CSRlbGVtZW50cyA9IGV0Y19ldmFsdWF0ZV9zdHJpbmcoJHF1ZXJ5X2FycmF5LCAkcm9vdCwg
JGludGVybmFscywgMik7DQoJCQl9DQoNCgkJCSRudW1zID0gJG51bV9yb3dzID0gY291bnQo
JGVsZW1lbnRzKTsNCgkJCSRvZmZudW0gPSAoJG9mZnNldCA8IDAgPyAkbnVtcyArICRvZmZz
ZXQgOiAkb2Zmc2V0KTsNCgkJCWlmKCRvZmZzZXQgfHwgJGxpbWl0KSB7DQoJCQkJJGVsZW1l
bnRzID0gYXJyYXlfc2xpY2UoJGVsZW1lbnRzLCAkb2Zmc2V0LCAkbGltaXQsIHRydWUpOw0K
CQkJCSRudW1fcm93cyA9IGNvdW50KCRlbGVtZW50cyk7DQoJCQl9DQoNCgkJCWlmKGlzc2V0
KCRwcmVmc1siZXRjX3NwZWNpYWxzXyR1bmlxaWQiXVsneyNyb3dzfSddKSkgJGludGVybmFs
c1snI3Jvd3MnXSA9ICRudW1fcm93czsNCgkJCWlmKGlzc2V0KCRwcmVmc1siZXRjX3NwZWNp
YWxzXyR1bmlxaWQiXVsneyN0b3RhbH0nXSkpICRpbnRlcm5hbHNbJyN0b3RhbCddID0gJG51
bXM7DQoJCQkkbnVtID0gMDsNCg0KCQkJaWYgKCFlbXB0eSgkZWxlbWVudHMpKSAvKmZvcigk
cm93PTA7ICRyb3c8JG51bV9yb3dzOyAkcm93KyspKi9mb3JlYWNoKCRlbGVtZW50cyBhcyAk
cm93ID0+ICYkZWxlbWVudCkgaWYoISR0aG9yb3VnaCB8fCAkeHBhdGgtPnF1ZXJ5KCRlbGVt
ZW50LT5nZXROb2RlUGF0aCgpKS0+bGVuZ3RoKSB7DQoNCgkJCQlpZihpc3NldCgkcHJlZnNb
ImV0Y19zcGVjaWFsc18kdW5pcWlkIl1bJ3sjcm93fSddKSkgJGludGVybmFsc1snI3Jvdydd
ID0gJG51bSsxOyANCgkJCQlpZihpc3NldCgkcHJlZnNbImV0Y19zcGVjaWFsc18kdW5pcWlk
Il1bJ3sjaW5kfSddKSkgJGludGVybmFsc1snI2luZCddID0gJG51bSskb2ZmbnVtOw0KCQkJ
CWlmKGlzc2V0KCRwcmVmc1siZXRjX3NwZWNpYWxzXyR1bmlxaWQiXVsnez99J10pKSAkaW50
ZXJuYWxzWyc/J10gPSAoJGZsYXQgPyAkZWxlbWVudCA6ICRlbGVtZW50LT5ub2RlVmFsdWUp
Ow0KCQkJCWlmKGlzc2V0KCRwcmVmc1siZXRjX3NwZWNpYWxzXyR1bmlxaWQiXVsneyN9J10p
KSAkaW50ZXJuYWxzWycjJ10gPSAoJGZsYXQgPyAkcm93IDogJGVsZW1lbnQtPm5vZGVOYW1l
KTsNCg0KCQkJCS8vIFJlcGxhY2UvcmVtb3ZlIHZhbHVlcw0KCQkJCWlmKCRyZXBsYWNlKSBm
b3JlYWNoKCRyZXBsYWNlX2FycmF5IGFzICR2YWwpIHsNCgkJCQkJJG5vZGVzID0gKCR2YWxb
J3BhdGgnXSA9PT0gJy4nID8gYXJyYXkoJGVsZW1lbnQpIDogJHhwYXRoLT5xdWVyeSgkdmFs
WydwYXRoJ10sICRlbGVtZW50KSk7DQoJCQkJCSRpbmQgPSBpc3NldCgkcHJlZnNbImV0Y19z
cGVjaWFsc18kdW5pcWlkIl1bJ3sjI30nXSkgPyAxIDogMDsNCgkJCQkJaWYoJG5vZGVzKSBm
b3JlYWNoKCRub2RlcyBhcyAkbm9kZSkgaWYoISR0aG9yb3VnaCB8fCAkeHBhdGgtPnF1ZXJ5
KCRub2RlLT5nZXROb2RlUGF0aCgpKS0+bGVuZ3RoKSB0cnkNCgkJCQkJew0KCQkJCQkJaWYo
JGluZCkgJGludGVybmFsc1snIyMnXSA9ICRpbmQrKzsNCgkJCQkJCWV0Y19wcm9jZXNzX25v
ZGUoJHZhbFsndmFsdWUnXSwgJG5vZGUsICRpbnRlcm5hbHMsIGZhbHNlLCB0cnVlKTsNCgkJ
CQkJfSBjYXRjaChET01FeGNlcHRpb24gJGUpIHtpZigkZGVidWcpIGVjaG8gJGUtPmdldE1l
c3NhZ2UoKTt9DQoJCQkJfQ0KDQoJCQkJLy8gQ29uc3RydWN0IHRoZSByZXBsYWNlbWVudCBh
cnJheXMNCgkJCQlpZihpc3NldCgkcHJlZnNbImV0Y19zcGVjaWFsc18kdW5pcWlkIl1bJ3sj
I30nXSkpICRpbnRlcm5hbHNbJyMjJ10gPSAkbnVtKzE7DQoJCQkJaWYoISR0aG9yb3VnaCB8
fCAkeHBhdGgtPnF1ZXJ5KCRlbGVtZW50LT5nZXROb2RlUGF0aCgpKS0+bGVuZ3RoKSAkbmV3
b3V0ID0gISRjb250ZW50ID8gKCRmbGF0ID8gJGVsZW1lbnQgOiAoJGlzX2h0bWwgPyAkZG9t
LT5zYXZlSFRNTCgkZWxlbWVudCkgOiAkZG9tLT5zYXZlWE1MKCRlbGVtZW50KSkpIDogKGlz
c2V0KCRjb250ZW50c1sndGV4dCddKSA/ICRjb250ZW50c1sndGV4dCddIDogZXRjX2V2YWx1
YXRlX3N0cmluZygkY29udGVudHMsICRlbGVtZW50LCAkaW50ZXJuYWxzLCAkZmxhdCkpOw0K
DQoJCQkJJG91dFtdID0gJHBhcnNlID8gcGFyc2UoJG5ld291dCkgOiAkbmV3b3V0Ow0KCQkJ
CSRudW0rKzsNCgkJCX0NCgkJCXVuc2V0KCRlbGVtZW50LCAkZWxlbWVudHMpOw0KCQl9DQoJ
fQ0KDQoJaWYoJHNhdmUpIHsNCgkJaWYoISRmbGF0KSAkZXRjX3F1ZXJ5WyRzYXZlXS0+ZG9t
ID0gJiRkb207IGVsc2UgJGV0Y19xdWVyeVskc2F2ZV0tPmRhdGEgPSAmJGRhdGE7DQoJCSRl
dGNfcXVlcnlbJHNhdmVdLT5tYXJrdXAgPSAoJGlzX3htbCA/ICd4bWwnIDogJG1hcmt1cCk7
DQoJfQ0KCWlmICgkb3V0KSBpZighJHNhdmUgfHwgJG5hbWUgIT09IG51bGwpIHsNCgkJLy8g
TWFrZSB1cCB0aGUgZmluYWwgb3V0cHV0DQoJCSRmaW5hbG91dCA9IEB0eHBpbnRlcmZhY2Ug
PT09ICdhZG1pbicgPyBpbXBsb2RlKCcnLCAkb3V0KSA6ICgkbGFiZWwgPyBkb0xhYmVsKCRs
YWJlbCwgJGxhYmVsdGFnKSA6ICcnKS5kb1dyYXAoJG91dCwgJHdyYXB0YWcsICRicmVhaywg
JGNsYXNzLCAnJywgJycsICcnLCAkaHRtbF9pZCk7DQoJfSBlbHNlICRmaW5hbG91dCA9ICcn
Ow0KCWVsc2UgJGZpbmFsb3V0ID0gcGFyc2UoJGZhbHNlUGFydCk7Ly9ub3RoaW5nIGZvdW5k
DQoNCglldGNfY2xlYW51cCgkdW5pcWlkLCAkcGFyZW50X3VuaXFpZCk7DQoJaWYoJGRlYnVn
KSBkbXAoIlByb2Nlc3NlZCBpbiAiIC4gKG1pY3JvdGltZShUUlVFKSAtICRzdGFydHRpbWUp
IC4gIiBzZWNvbmRzLlxuIik7DQoJaWYoJGRlYnVnICYmIGluX2FycmF5KCdvJywgJGRlYnVn
KSkgZG1wKCRmaW5hbG91dCk7DQoJaWYoJG5hbWUpIHtnbG9iYWwgJHZhcmlhYmxlOyAkdmFy
aWFibGVbJG5hbWVdID0gJiRmaW5hbG91dDt9DQoJcmV0dXJuICRuYW1lID8gJycgOiAkZmlu
YWxvdXQ7DQp9DQoNCi8qKioqKioqKioqKioqKioqKioqKioqKioqKiBQQVJTRSAqKioqKioq
KioqKioqKioqKioqKioqKioqLw0KDQpmdW5jdGlvbiBldGNfcGFyc2Vfc3RyaW5nKCRjb250
ZW50LCAmJGZsYXQpIHsNCglpZihzdHJwb3MoJGNvbnRlbnQsICd7JykgPT09IGZhbHNlKSBy
ZXR1cm4gYXJyYXkoJ3RleHQnID0+ICRjb250ZW50KTsNCglnbG9iYWwgJHByZWZzOw0KCSR1
bmlxaWQgPSAkcHJlZnNbJ2V0Y19xdWVyeV91bmlxaWQnXTsNCi8vCSRwcmVnX3N0cmluZyA9
ICcvKFx7KD8hW1xzIl0pKD86W157fV18KD8xKSkrXH0pL1UnOw0KDQoJJGNvbnRlbnRzID0g
YXJyYXkoKTsNCgkkY29udGVudHNfYXJyYXkgPSBwcmVnX3NwbGl0KCcvKFx7KD86W157fV18
KD8xKSkrXH0pL1UnLCAkY29udGVudCwgbnVsbCwgUFJFR19TUExJVF9ERUxJTV9DQVBUVVJF
KTsNCgkkbnVtID0gY291bnQoJGNvbnRlbnRzX2FycmF5KTsvLzJuKzENCgkkdGV4dCA9ICRj
b250ZW50c19hcnJheVswXTsNCglmb3IoJGkgPSAxOyAkaSA8ICRudW07ICRpKz0yKSB7DQoJ
CSRzdHJpbmcgPSBzdWJzdHIoJGNvbnRlbnRzX2FycmF5WyRpXSwgMSwgLTEpOw0KCQlpZihz
dHJwb3MoJ3sgIicsICRzdHJpbmdbMF0pICE9PSBmYWxzZSkgew0KCQkJJGwgPSAwOyB3aGls
ZSgkc3RyaW5nWyRsXSA9PT0gJ3snKSAkbCsrOw0KCQkJJGNzdHJpbmcgPSBldGNfcGFyc2Vf
c3RyaW5nKCRsID8gc3Vic3RyKCRzdHJpbmcsICRsLCAtJGwpIDogJHN0cmluZywgJGZsYXQp
Ow0KCQkJJGwgPSBtYXgoMSwgJGwpOw0KCQkJaWYoaXNzZXQoJGNzdHJpbmdbJ3RleHQnXSkp
ICR0ZXh0IC49IHN0cl9yZXBlYXQoJ3snLCAkbCkuJGNzdHJpbmdbJ3RleHQnXS5zdHJfcmVw
ZWF0KCd9JywgJGwpOw0KCQkJZWxzZSB7JGNvbnRlbnRzW10gPSBhcnJheSgndHlwZScgPT4g
J3N0cmluZycsICd0ZXh0JyA9PiAkdGV4dCwgJ3ZhbHVlJyA9PiAkY3N0cmluZywgJ2xldmVs
JyA9PiAkbCk7ICR0ZXh0ID0gJyc7fQ0KCQl9DQoJCWVsc2VpZigkc3RyaW5nWzBdID09PSAn
PycgJiYgc3RybGVuKCRzdHJpbmcpID4gMSkgJHRleHQgLj0gZXRjX3BhcnNlX3ZhcmlhYmxl
KGFycmF5KCRjb250ZW50c19hcnJheVskaV0pKTsNCgkJZWxzZSB7DQoJCQlzd2l0Y2goJHN0
cmluZ1swXSkgew0KCQkJCWNhc2UgJyQnIDogJGNvbnRlbnRzW10gPSBhcnJheSgndHlwZScg
PT4gJ2Z1bmMnLCAndGV4dCcgPT4gJHRleHQsICd2YWx1ZScgPT4gZXRjX3BhcnNlX2Z1bmN0
aW9uKHN1YnN0cigkc3RyaW5nLCAxKSwgJGZsYXQpKTsgJHRleHQgPSAnJzsgYnJlYWs7DQoJ
CQkJY2FzZSAnIycgOiBjYXNlICc/JyA6ICRjb250ZW50c1tdID0gJHByZWZzWyJldGNfc3Bl
Y2lhbHNfJHVuaXFpZCJdWyRjb250ZW50c19hcnJheVskaV1dID0gYXJyYXkoJ3R5cGUnID0+
ICdpbnRlcm5hbCcsICd0ZXh0JyA9PiAkdGV4dCwgJ3ZhbHVlJyA9PiAkc3RyaW5nKTsgJHRl
eHQgPSAnJzsgYnJlYWs7DQoJCQkJY2FzZSAnJScgOiAkdGV4dCAuPSBzdWJzdHIoJHN0cmlu
ZywgMSk7IGJyZWFrOw0KCQkJCWNhc2UgJyEnIDogaWYoIWV0Y19waHBfYWxsb3dlZCgkdW5p
cWlkKSkgeyR0ZXh0IC49ICRjb250ZW50c19hcnJheVskaV07IGJyZWFrO30NCgkJCQkkcGFy
dHMgPSBleHBsb2RlKCd8JywgJHN0cmluZywgMyk7DQoJCQkJaWYoY291bnQoJHBhcnRzKSA+
IDIpIHskc3RyaW5nID0gJHBhcnRzWzBdLid8Jy4kcGFydHNbMV07ICRmdW5jID0gZXRjX3Bh
cnNlX2Z1bmN0aW9uKCRwYXJ0c1syXSwgJGZsYXQpO30NCgkJCQllbHNlICRmdW5jID0gbnVs
bDsNCgkJCQkkY29udGVudHNbXSA9ICRmdW5jID8gYXJyYXkoJ3R5cGUnID0+ICdmdW5jJywg
J3RleHQnID0+ICR0ZXh0LCAndmFsdWUnID0+ICRmdW5jLCAndmFyJyA9PiBhcnJheSgneycu
JHN0cmluZy4nfScpKSA6IGFycmF5KCd0eXBlJyA9PiAndmFyJywgJ3RleHQnID0+ICR0ZXh0
LCAndmFsdWUnID0+IGFycmF5KCRjb250ZW50c19hcnJheVskaV0pKSA7ICR0ZXh0ID0gJyc7
IGJyZWFrOw0KCQkJCWRlZmF1bHQgOiAkY29udGVudHNbXSA9IGFycmF5KCd0eXBlJyA9PiAn
eHBhdGgnLCAndGV4dCcgPT4gJHRleHQsICd2YWx1ZScgPT4gZXRjX3BhcnNlX3hwYXRoKCRz
dHJpbmcsICRmbGF0KSk7ICR0ZXh0ID0gJyc7DQoJCQl9DQoJCX0NCgkJJHRleHQgLj0gJGNv
bnRlbnRzX2FycmF5WyRpKzFdOw0KCX0NCglpZigkdGV4dCA+ICcnKSAkY29udGVudHNbXSA9
IGFycmF5KCd0eXBlJyA9PiAndGV4dCcsICd0ZXh0JyA9PiAkdGV4dCk7DQoJaWYoY291bnQo
JGNvbnRlbnRzKSA9PT0gMSAmJiAkY29udGVudHNbMF1bJ3R5cGUnXSA9PT0gJ3RleHQnKSAk
Y29udGVudHMgPSBhcnJheSgndGV4dCcgPT4gJGNvbnRlbnRzWzBdWyd0ZXh0J10pOw0KCXJl
dHVybiAkY29udGVudHM7DQp9DQoNCmZ1bmN0aW9uIGV0Y19wYXJzZV92YXJpYWJsZSgkdmFs
KSB7DQoJZ2xvYmFsICRwcmVmczsNCgkkdW5pcWlkID0gJHByZWZzWydldGNfcXVlcnlfdW5p
cWlkJ107DQoJJHBhdCA9ICR2YWxbMF07DQoJaWYoaXNzZXQoJHByZWZzWyJldGNfc3BlY2lh
bHNfJHVuaXFpZCJdWyRwYXRdKSkgcmV0dXJuICRwcmVmc1siZXRjX3NwZWNpYWxzXyR1bmlx
aWQiXVskcGF0XTsNCglpZighaXNzZXQoJHByZWZzWyJldGNfY29udGV4dF8kdW5pcWlkIl1b
J3BocCddKSkgJHByZWZzWyJldGNfY29udGV4dF8kdW5pcWlkIl1bJ3BocCddID0gZXRjX3Bo
cF9hbGxvd2VkKCR1bmlxaWQpOw0KCWlmKGVtcHR5KCRwcmVmc1siZXRjX2NvbnRleHRfJHVu
aXFpZCJdWydwaHAnXSkpIHJldHVybiAkcHJlZnNbImV0Y19zcGVjaWFsc18kdW5pcWlkIl1b
JHBhdF0gPSAkcGF0Ow0KCSRzdHIgPSBzdWJzdHIoJHBhdCwgMiwgLTEpOw0KCUBsaXN0KCR2
YXJzLCAkZGVmLCAkZm9ybWF0KSA9IGV4cGxvZGUoJ3wnLCAkc3RyLCAzKTsNCglpZigkdmFy
cyA9PT0gJycpICR2YWx1ZSA9IChpc3NldCgkZGVmKSA/ICRkZWYgOiAnJyk7DQoJZWxzZWlm
KCFlbXB0eSgkcHJlZnNbImV0Y19nbG9iYWxzXyR1bmlxaWQiXSkpIGZvcmVhY2goZXhwbG9k
ZSgnLCcsICR2YXJzKSBhcyAkdmFyKSANCgkJZm9yZWFjaCgkcHJlZnNbImV0Y19nbG9iYWxz
XyR1bmlxaWQiXSBhcyAkZ2xvYmFsKSBpZihpc3NldCgkR0xPQkFMU1skZ2xvYmFsXVskdmFy
XSkgJiYgJEdMT0JBTFNbJGdsb2JhbF1bJHZhcl0gIT09ICcnKQ0KCQkJeyR2YWx1ZSA9ICRH
TE9CQUxTWyRnbG9iYWxdWyR2YXJdOyBicmVhayAyO30NCglpZighaXNzZXQoJHZhbHVlKSkg
JHZhbHVlID0gKGlzc2V0KCRkZWYpID8gJGRlZiA6ICcnKTsNCgllbHNlaWYoIWVtcHR5KCRm
b3JtYXQpKSB7DQoJCSRmbGF0ID0gdHJ1ZTsgLy8kaW50ZXJuYWxzID0gbnVsbDsNCgkJJGZv
cm1hdCA9IGFycmF5KGFycmF5KCd0eXBlJyA9PiAnZnVuYycsICd0ZXh0JyA9PiAnJywgJ3Zh
bHVlJyA9PiBldGNfcGFyc2VfZnVuY3Rpb24oJGZvcm1hdCwgJGZsYXQpKSk7DQoJCSR2YWx1
ZSA9IGV0Y19ldmFsdWF0ZV9zdHJpbmcoJGZvcm1hdCwgJHZhbHVlLCBudWxsKTsNCgl9DQoJ
ZWxzZWlmKGFycmF5X2tleV9leGlzdHMoJGdsb2JhbCwgJHByZWZzWyJldGNfc2FuaXRpemVf
JHVuaXFpZCJdKSkgJHZhbHVlID0gaHRtbHNwZWNpYWxjaGFycyhNQUdJQ19RVU9URVNfR1BD
ID8gZG9TdHJpcCgkdmFsdWUpIDogJHZhbHVlLCBFTlRfUVVPVEVTKTsNCglpZigkcGF0WzFd
ID09PSAnPycpICRwcmVmc1siZXRjX3NwZWNpYWxzXyR1bmlxaWQiXVskcGF0XSA9ICR2YWx1
ZTsNCglyZXR1cm4gJHZhbHVlOw0KfQ0KDQpmdW5jdGlvbiBldGNfcGFyc2VfZnVuY3Rpb24o
JGZvcm1hdCwgJiRmbGF0KSB7DQoJZ2xvYmFsICRwcmVmczsNCgkkdW5pcWlkID0gJHByZWZz
WydldGNfcXVlcnlfdW5pcWlkJ107DQoJJHBpcGUgPSAkcHJlZnNbImV0Y19jb250ZXh0XyR1
bmlxaWQiXVsnYXJnc2VwJ107DQoJJHJlcyA9ICRyZXAgPSBhcnJheSgpOw0KCWlmKHN0cnBv
cygkZm9ybWF0LCAneycpICE9PSBmYWxzZSkgew0KCQkkZm9ybWF0ID0gcHJlZ19zcGxpdCgn
Lyhceyg/Oltee31dfCg/MSkpKlx9KS9VJywgJGZvcm1hdCwgbnVsbCwgUFJFR19TUExJVF9E
RUxJTV9DQVBUVVJFKTsvLzJuKzENCgkJJGNvdW50ID0gY291bnQoJGZvcm1hdCk7DQoJCWZv
cigkaT0xOyAkaTwkY291bnQ7ICRpKz0yKSB7JHJlcFsneycuJGkuJ30nXSA9ICRmb3JtYXRb
JGldOyAkZm9ybWF0WyRpXSA9ICd7Jy4kaS4nfSc7IH0NCgkJJGZvcm1hdCA9IGltcGxvZGUo
JycsICRmb3JtYXQpOw0KCX0NCi8vJy8oW15cKFwpXC5dKig/OlwoW15cKFwpXSpcKSk/KSg/
OlwufCQpL1UnDQoJJGZvcm1hdCA9IHByZWdfc3BsaXQoJy8oW15cKFwpXC5dKykoXCgoPzpb
XlwoXCldfCg/MikpKlwpKT8oPzpcLnwkKS9VJywgJGZvcm1hdCwgbnVsbCwgUFJFR19TUExJ
VF9ERUxJTV9DQVBUVVJFIHwgUFJFR19TUExJVF9OT19FTVBUWSk7DQoNCglmb3JlYWNoKCRm
b3JtYXQgYXMgJGZvcm0pIHsNCgkJaWYoJGZvcm1bMF0gIT09ICcoJykgey8vZnVuYw0KCQkJ
aWYoaXNzZXQoJGZ1bmMpKSAkcmVzW10gPSBhcnJheSgnZnVuYyc9PiRmdW5jLCAncmVmJz0+
JHJlZiwgJ2FyZ3MnPT4kYXJncyk7DQoJCQkkZnVuYyA9IHRyaW0oJGZvcm0pOw0KCQkJJHJl
ZiA9ICRmdW5jWzBdID09PSAnQCc7DQoJCQlpZigkcmVmKSAkZnVuYyA9IHN1YnN0cigkZnVu
YywgMSk7DQoJCQkkYXJncyA9IGFycmF5KGFycmF5KCd0ZXh0JyA9PiAnJCcpKTsNCgkJCWlm
KCRmdW5jICE9PSAnJykgc3dpdGNoKCRmdW5jWzBdKSB7DQoJCQkJY2FzZSAnKycgOiBjYXNl
ICcqJyA6IGNhc2UgJy0nIDogY2FzZSAnLycgOiBjYXNlICclJyA6IGlmKHN0cmxlbigkZnVu
YykgPiAxKSAkYXJnc1tdID0gYXJyYXkoJ3RleHQnID0+IGZsb2F0dmFsKHN1YnN0cigkZnVu
YywgMSkpKTsgJGZ1bmMgPSAkZnVuY1swXTsgYnJlYWs7DQoJCQkJY2FzZSAnPScgOiBjYXNl
ICc+JyA6IGNhc2UgJzwnIDogY2FzZSAnPycgOiBpZihzdHJsZW4oJGZ1bmMpID4gMSkgJGFy
Z3NbXSA9IGFycmF5KCd0ZXh0JyA9PiBsdHJpbShzdWJzdHIoJGZ1bmMsIDEpKSk7ICRmdW5j
ID0gJGZ1bmNbMF07IGJyZWFrOw0KCQkJCWRlZmF1bHQgOiBpZighaXNzZXQoJHByZWZzWyJl
dGNfY29udGV4dF8kdW5pcWlkIl1bJ3BocCddKSkgJHByZWZzWyJldGNfY29udGV4dF8kdW5p
cWlkIl1bJ3BocCddID0gZXRjX3BocF9hbGxvd2VkKCR1bmlxaWQpOw0KCQkJCWlmKCEkcHJl
ZnNbImV0Y19jb250ZXh0XyR1bmlxaWQiXVsncGhwJ10gfHwgIWlzX2NhbGxhYmxlKCRmdW5j
KSkgdW5zZXQoJGZ1bmMsICRyZWYpOw0KCQkJfSBlbHNlIHVuc2V0KCRmdW5jLCAkcmVmKTsN
CgkJfSBlbHNlIHsvL2FyZ3MNCgkJCWlmKCFpc3NldCgkZnVuYykpIGNvbnRpbnVlOw0KCQkJ
aWYoJGZ1bmMgIT09ICc/JyAmJiBjb3VudCgkYXJncykgPCAyKSAkYXJncyA9IGFycmF5KCk7
DQoJCQkkYXJnc19saXN0ID0gc3Vic3RyKCRmb3JtLCAxLCAtMSk7DQoJCQlpZigkYXJnc19s
aXN0ICE9PSAnJykgZm9yZWFjaChleHBsb2RlKCRwaXBlLCAkYXJnc19saXN0KSBhcyAkYXJn
KSAkYXJnc1tdID0gJHJlcCA/IGV0Y19wYXJzZV9zdHJpbmcoc3RydHIoJGFyZywgJHJlcCks
ICRmbGF0KSA6IGFycmF5KCd0ZXh0JyA9PiAkYXJnKTsNCgkJfQ0KCX0NCglpZihpc3NldCgk
ZnVuYykpICRyZXNbXSA9IGFycmF5KCdmdW5jJz0+JGZ1bmMsICdyZWYnPT4kcmVmLCAnYXJn
cyc9PiRhcmdzKTsNCglyZXR1cm4gJHJlczsNCn0NCg0KZnVuY3Rpb24gZXRjX3BhcnNlX3hw
YXRoKCRwYXR0ZXJuLCAmJGZsYXQpIHsNCglnbG9iYWwgJHByZWZzOw0KCSR1bmlxaWQgPSAk
cHJlZnNbJ2V0Y19xdWVyeV91bmlxaWQnXTsNCgkkZnVuYyA9ICRwcmVmc1siZXRjX2NvbnRl
eHRfJHVuaXFpZCJdWydmdW5jdGlvbnMnXTsNCg0KCUBsaXN0KCRwYXRoLCAkdmFsKSA9IGV4
cGxvZGUoJ0BAJywgJHBhdHRlcm4sIDIpOw0KDQoJaWYoaXNzZXQoJHZhbCkpIHsNCgkJJHBh
aXJzID0gcHJlZ19zcGxpdCgnLygoPzpbXlxbXF0oKXt9XXxbXFtcKFx7XSg/MSkqW1xdXClc
fV0pKylAL1UnLCAkdmFsLCBudWxsLCBQUkVHX1NQTElUX05PX0VNUFRZIHwgUFJFR19TUExJ
VF9ERUxJTV9DQVBUVVJFKTsNCgkJJGZsYXQgPSBmYWxzZTsNCgkJJHZhbCA9IGFycmF5KCk7
DQoJCWZvcmVhY2goJHBhaXJzIGFzICRwYWlyKSB7DQoJCQlAbGlzdCgkbmFtZSwgJGF2YWwp
ID0gZXhwbG9kZSgnPScsICRwYWlyLCAyKTsNCgkJCWlmKCRuYW1lID4gJycpICR2YWxbJG5h
bWVdID0gJGF2YWw7DQoJCX0NCgl9IGVsc2Ugew0KCQlAbGlzdCgkcGF0aCwgJHZhbCkgPSBw
cmVnX3NwbGl0KCcvXigoPzpbXlxbXF0oKXt9XXxbXFtcKFx7XSg/MSkqW1xdXClcfV0pKyk9
KC4qKSQvc0RVJywgJHBhdHRlcm4sIDIsIFBSRUdfU1BMSVRfREVMSU1fQ0FQVFVSRSB8IFBS
RUdfU1BMSVRfTk9fRU1QVFkpOw0KCQlpZighaXNzZXQoJHZhbCkgJiYgc3RybGVuKCRwYXRo
KSA8IHN0cmxlbigkcGF0dGVybikpICR2YWwgPSAnJzsNCgl9DQoNCglpZigkcGF0aCAhPT0g
JycgJiYgc3RycG9zKCc6PyMrXiR+Ji8nLCBzdWJzdHIoJHBhdGgsIC0xKSkgIT09IGZhbHNl
KSB7DQoJCSRtb2RlID0gc3Vic3RyKCRwYXRoLCAtMSk7ICRwYXRoID0gc3Vic3RyKCRwYXRo
LCAwLCAtMSk7DQoJfSBlbHNlICRtb2RlID0gJy4nOw0KCWlmKCRtb2RlICE9PSAnPycpICRm
bGF0ID0gZmFsc2U7DQoJaWYoJHBhdGggPT09ICcnKSAkcGF0aCA9ICcuJzsNCgllbHNlaWYo
JHByZWZzWyJldGNfZ2xvYmFsc18kdW5pcWlkIl0pICRwYXRoID0gcHJlZ19yZXBsYWNlX2Nh
bGxiYWNrKEVUQ19QUkVHX1NQRUMsICdldGNfcGFyc2VfdmFyaWFibGUnLCAkcGF0aCk7DQoJ
aWYoaXNzZXQoJHZhbCkgJiYgIWlzX2FycmF5KCR2YWwpKSAkdmFsID0gYXJyYXkoJG1vZGUg
PT4gJHZhbCk7DQoNCgkkYXR0cl9hcnJheSA9IGFycmF5KCk7DQoNCglpZighZW1wdHkoJHZh
bCkpIGZvcmVhY2goJHZhbCBhcyAkYXR0cj0+JHZhbHVlKSBpZigkYXR0ciAhPT0gJyYnKSB7
DQoJCSRyZXBbJ2F0dHInXSA9ICRwcmVmc1siZXRjX2dsb2JhbHNfJHVuaXFpZCJdID8gcHJl
Z19yZXBsYWNlX2NhbGxiYWNrKEVUQ19QUkVHX1NQRUMsICdldGNfcGFyc2VfdmFyaWFibGUn
LCAkYXR0cikgOiAkYXR0cjsNCgkJJHJlcFsndmFsdWUnXSA9ICR2YWx1ZSA9PT0gbnVsbCA/
IG51bGwgOiBldGNfcGFyc2Vfc3RyaW5nKCR2YWx1ZSwgJGZsYXQpOw0KCQkkYXR0cl9hcnJh
eVtdID0gJHJlcDsNCi8vCQl1bnNldCgkcmVwKTsNCgl9IGVsc2VpZigkdmFsdWUgIT09IG51
bGwpIHskbGFzdFsnYXR0ciddID0gJyYnOyAkbGFzdFsndmFsdWUnXSA9IGV0Y19wYXJzZV9z
dHJpbmcoJHZhbHVlLCAkZmxhdCk7fQ0KCWlmKGlzc2V0KCRsYXN0KSkgJGF0dHJfYXJyYXlb
XSA9ICRsYXN0Ow0KCXVuc2V0KCRwYXR0ZXJuKTsNCgkkcGF0dGVyblsncGF0aCddID0gJGZ1
bmMgPyBwcmVnX3JlcGxhY2UoJy9cYignLiRmdW5jLicpXHMqXCgvJywgInBocDpmdW5jdGlv
bignJDEnLCIsICRwYXRoKSA6ICRwYXRoOw0KCSRwYXR0ZXJuWydtb2RlJ10gPSAkbW9kZTsN
CgkkcGF0dGVyblsndmFsdWUnXSA9ICRhdHRyX2FycmF5Ow0KDQoJaWYoJGZsYXQgJiYgJHBh
dGggIT09ICcvJykgaWYoc3RycG9zKCRwYXRoLCAnLy8nKSAhPT0gZmFsc2UpICRmbGF0ID0g
ZmFsc2U7IGVsc2Ugew0KCQkkbWF0Y2hlcyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQoJCWZv
cmVhY2goJG1hdGNoZXMgYXMgJG1hdGNoKSBpZigkbWF0Y2ggIT09ICcqJyAmJiAkbWF0Y2gg
IT09ICcuJyAmJiAhcHJlZ19tYXRjaCgnL14oPzpcdyspJC8nLCAkbWF0Y2gpKSB7DQoJCQkk
ZmxhdCA9IGZhbHNlOyBicmVhazsNCgkJfQ0KCQlpZigkZmxhdCkgJHBhdHRlcm5bJ2FycmF5
J10gPSBhcnJheV9kaWZmKCRtYXRjaGVzLCBhcnJheSgnLicpKTsNCgl9DQoJcmV0dXJuICRw
YXR0ZXJuOw0KfQ0KDQovKioqKioqKioqKioqKioqKioqKioqKioqKiogRVZBTFVBVEUgKioq
KioqKioqKioqKioqKioqKioqKioqKi8NCg0KZnVuY3Rpb24gZXRjX2V2YWx1YXRlX3N0cmlu
ZygmJGNvbnRlbnRzLCAmJGVsZW1lbnQsICRpbnRlcm5hbHMsICRmbGF0PXRydWUpIHsNCglp
Zihpc3NldCgkY29udGVudHNbJ3RleHQnXSkpIHJldHVybiAkY29udGVudHNbJ3RleHQnXTsN
CglnbG9iYWwgJHByZWZzOyANCgkkdW5pcWlkID0gJHByZWZzWydldGNfcXVlcnlfdW5pcWlk
J107DQoJJHdyYXAgPSAkZmxhdCA9PT0gMjsNCgkkcmVzID0gJHdyYXAgPyBhcnJheSgpIDog
Jyc7DQovLwkkcmVzID0gJyc7DQoJaWYoISRmbGF0KSB7DQoJCSRpc194bWwgPSAkcHJlZnNb
ImV0Y19jb250ZXh0XyR1bmlxaWQiXVsneG1sJ107DQoJCSRkb20gPSAkZWxlbWVudC0+b3du
ZXJEb2N1bWVudDsgDQovLwkJJHhwYXRoID0gJiRwcmVmc1siZXRjX2NvbnRleHRfJHVuaXFp
ZCJdWyd4cGF0aCddOw0KCX0NCg0KCWZvcmVhY2goJGNvbnRlbnRzIGFzICRjb250ZW50KSB7
DQoJCWlmKCEkd3JhcCkgJHJlcyAuPSAkY29udGVudFsndGV4dCddOw0KCQlzd2l0Y2goJGNv
bnRlbnRbJ3R5cGUnXSkgew0KCQkJY2FzZSAndGV4dCcgOiBicmVhazsNCg0KCQkJY2FzZSAn
aW50ZXJuYWwnIDogJHJlcyAuPSAoaXNzZXQoJGludGVybmFsc1skY29udGVudFsndmFsdWUn
XV0pID8gJGludGVybmFsc1skY29udGVudFsndmFsdWUnXV0gOiAkY29udGVudFsndmFsdWUn
XSk7IGJyZWFrOw0KDQoJCQljYXNlICd2YXInIDogJHJlcyAuPSBldGNfcGFyc2VfdmFyaWFi
bGUoJGNvbnRlbnRbJ3ZhbHVlJ10pOyBicmVhazsNCg0KCQkJY2FzZSAnZnVuYycgOiAkdmFs
ID0gaXNzZXQoJGNvbnRlbnRbJ3ZhciddKSA/IGV0Y19wYXJzZV92YXJpYWJsZSgkY29udGVu
dFsndmFyJ10pIDogKCRmbGF0ID8gJGVsZW1lbnQgOiAkZWxlbWVudC0+bm9kZVZhbHVlKTsN
CgkJCWlmKGVtcHR5KCRjb250ZW50Wyd2YWx1ZSddKSkgeyRyZXMgLj0gJHZhbDsgYnJlYWs7
fQ0KCQkJZm9yZWFjaCgkY29udGVudFsndmFsdWUnXSBhcyAkZm9ybSkgew0KCQkJCSRmdW5j
ID0gJGZvcm1bJ2Z1bmMnXTsNCgkJCQkkcmVmID0gJGZvcm1bJ3JlZiddOw0KCQkJCXVuc2V0
KCR3aGljaCk7DQoJCQkJJGhhc19hcmdzID0gY291bnQoJGZvcm1bJ2FyZ3MnXSk7DQoJCQkJ
JGFyZ3MgPSAkZm9ybVsnYXJncyddOw0KCQkJCWlmKCRoYXNfYXJncykgew0KCQkJCQlmb3Jl
YWNoKCRhcmdzIGFzICRrZXk9PiRhcmcpIHsNCgkJCQkJCSRhcmcgPSBpc3NldCgkYXJnWyd0
ZXh0J10pID8gJGFyZ1sndGV4dCddIDogZXRjX2V2YWx1YXRlX3N0cmluZygkYXJnLCAkZWxl
bWVudCwgJGludGVybmFscywgJGZsYXQpOw0KCQkJCQkJaWYoJGFyZyA9PT0gJyQnKSB7JGFy
Z3NbJGtleV0gPSAkdmFsOyBpZigkcmVmKSAkd2hpY2ggPSAka2V5O30NCgkJCQkJCWVsc2Ug
JGFyZ3NbJGtleV0gPSAkYXJnOw0KCQkJCQl9DQovLwkJCQkJdW5zZXQoJGFyZyk7DQoJCQkJ
fQ0KCQkJCXN3aXRjaCgkZnVuYykgew0KCQkJCQljYXNlICcrJyA6ICR2YWwgPSBhcnJheV9z
dW0oJGFyZ3MpOyBicmVhazsNCgkJCQkJY2FzZSAnKicgOiAkdmFsID0gYXJyYXlfcHJvZHVj
dCgkYXJncyk7IGJyZWFrOw0KCQkJCQljYXNlICctJyA6ICR2YWwgPSAyKiRhcmdzWzBdIC0g
YXJyYXlfc3VtKCRhcmdzKTsgYnJlYWs7DQoJCQkJCWNhc2UgJy8nIDogJHZhbCA9ICRhcmdz
WzBdKiRhcmdzWzBdIC8gYXJyYXlfcHJvZHVjdCgkYXJncyk7IGJyZWFrOw0KCQkJCQljYXNl
ICclJyA6ICR2YWwgPSAkYXJnc1swXSAlICRhcmdzWzFdOyBicmVhazsNCgkJCQkJY2FzZSAn
PycgOiBzd2l0Y2goJGhhc19hcmdzKSB7DQoJCQkJCQljYXNlIDAgOiBicmVhazsgDQoJCQkJ
CQljYXNlIDEgOiAkdmFsID0gKCRhcmdzWzBdID8gJzEnIDogJzAnKTsgYnJlYWs7IA0KCQkJ
CQkJZGVmYXVsdCA6ICR2YWwgPSAhZW1wdHkoJGFyZ3NbMF0pID8gJGFyZ3NbMV0gOiAoaXNz
ZXQoJGFyZ3NbMl0pID8gJGFyZ3NbMl0gOiAnJyk7DQoJCQkJCX0gYnJlYWs7DQoJCQkJCWNh
c2UgJz0nIDogc3dpdGNoKCRoYXNfYXJncykgew0KCQkJCQkJY2FzZSAwIDogY2FzZSAxIDog
YnJlYWs7IA0KCQkJCQkJY2FzZSAyIDogJHZhbCA9ICgkYXJnc1swXSA9PSAkYXJnc1sxXSA/
ICcxJyA6ICcwJyk7IGJyZWFrOw0KCQkJCQkJZGVmYXVsdCA6ICR2YWwgPSBjb3VudChhcnJh
eV91bmlxdWUoJGFyZ3MpKTw9MSA/ICcxJyA6ICcwJzsNCgkJCQkJfSBicmVhazsNCgkJCQkJ
Y2FzZSAnPCcgOiBjYXNlICc+JyA6IGlmKCRoYXNfYXJncyA+IDEpIHsNCgkJCQkJCSR2YWwg
PSAoJGZ1bmMgPT09ICc8JyA/ICgkYXJnc1swXSA8ICRhcmdzWzFdID8gJzEnIDogJzAnKSA6
ICgkYXJnc1swXSA+ICRhcmdzWzFdID8gJzEnIDogJzAnKSk7DQoJCQkJCX0gYnJlYWs7DQoJ
CQkJCWNhc2UgJ2RhdGUnIDogaWYoJGhhc19hcmdzKSAkdmFsID0gZGF0ZSgkYXJnc1swXSwg
c3RydG90aW1lKGlzc2V0KCRhcmdzWzFdKSA/ICRhcmdzWzFdIDogJHZhbCkpOyBicmVhazsN
Ci8vCQkJCQljYXNlICdlc2NhcGUnIDogJHZhbCA9IGRvU2xhc2goJHZhbCk7IGJyZWFrOw0K
CQkJCQlkZWZhdWx0IDogc3dpdGNoKCRoYXNfYXJncykgew0KCQkJCQkJY2FzZSAwIDogaWYo
JHJlZikgJGZ1bmMoKTsgZWxzZSAkdmFsID0gJGZ1bmMoKTsgYnJlYWs7DQoJCQkJCQljYXNl
IDEgOiAkdmFsID0gJGZ1bmMoJGFyZ3NbMF0pOyBicmVhazsNCgkJCQkJCWNhc2UgMiA6ICR2
YWwgPSAkZnVuYygkYXJnc1swXSwgJGFyZ3NbMV0pOyBicmVhazsNCgkJCQkJCWNhc2UgMyA6
ICR2YWwgPSAkZnVuYygkYXJnc1swXSwgJGFyZ3NbMV0sICRhcmdzWzJdKTsgYnJlYWs7DQoJ
CQkJCQlkZWZhdWx0IDogJHZhbCA9IGNhbGxfdXNlcl9mdW5jX2FycmF5KCRmdW5jLCAkYXJn
cyk7Ly9zbG93ZXINCgkJCQkJfQ0KCQkJCQlpZihpc3NldCgkd2hpY2gpKSAkdmFsID0gJGFy
Z3NbJHdoaWNoXTsNCgkJCQl9DQoJCQl9DQoJCQkkcmVzIC49ICR2YWw7IGJyZWFrOw0KDQoJ
CQljYXNlICdzdHJpbmcnIDogJGwgPSAhZW1wdHkoJGNvbnRlbnRbJ2xldmVsJ10pID8gJGNv
bnRlbnRbJ2xldmVsJ10gOiAwOw0KCQkJJHJlcyAuPSBzdHJfcmVwZWF0KCd7JywgJGwpLmV0
Y19ldmFsdWF0ZV9zdHJpbmcoJGNvbnRlbnRbJ3ZhbHVlJ10sICRlbGVtZW50LCAkaW50ZXJu
YWxzLCAkZmxhdCkuc3RyX3JlcGVhdCgnfScsICRsKTsgYnJlYWs7DQoNCgkJCWRlZmF1bHQg
OiBpZighJGZsYXQpIHsNCgkJCQkkaW5kID0gaXNzZXQoJHByZWZzWyJldGNfc3BlY2lhbHNf
JHVuaXFpZCJdWyd7IyN9J10pID8gMSA6IDA7DQoJCQkJJG5vZGVzID0gJHByZWZzWyJldGNf
Y29udGV4dF8kdW5pcWlkIl1bJ3hwYXRoJ10tPmV2YWx1YXRlKCRjb250ZW50Wyd2YWx1ZSdd
WydwYXRoJ10sICRlbGVtZW50KTsNCgkJCQlpZiAoISgkbm9kZXMgaW5zdGFuY2VvZiBET01O
b2RlTGlzdCkpICRyZXMgLj0gJG5vZGVzOw0KCQkJCWVsc2UgZm9yZWFjaCgkbm9kZXMgYXMg
JG5vZGUpDQoJCQkJew0KCQkJCQlpZigkaW5kKSAkaW50ZXJuYWxzWycjIyddID0gJGluZCsr
Ow0KCQkJCQkkb3V0ID0gZW1wdHkoJGNvbnRlbnRbJ3ZhbHVlJ11bJ3ZhbHVlJ10pID8gZmFs
c2UgOiBldGNfcHJvY2Vzc19ub2RlKCRjb250ZW50Wyd2YWx1ZSddWyd2YWx1ZSddLCAkbm9k
ZSwgJGludGVybmFscywgZmFsc2UpOw0KCQkJCQkkcmVzIC49ICRvdXQgPyAkb3V0IDogKCRj
b250ZW50Wyd2YWx1ZSddWydtb2RlJ10gPT09ICc/JyA/ICRub2RlLT5ub2RlVmFsdWUgOiAo
JGNvbnRlbnRbJ3ZhbHVlJ11bJ21vZGUnXSA9PT0gJyMnID8gJG5vZGUtPm5vZGVOYW1lIDog
KCEkaXNfeG1sID8gJGRvbS0+c2F2ZUhUTUwoJG5vZGUpIDogJGRvbS0+c2F2ZVhNTCgkbm9k
ZSkpKSk7DQoJCQkJfQ0KCQkJfSBlbHNlIHsvL2ZsYXQNCgkJCQkkdmFsdWUgPSAkZWxlbWVu
dDsNCgkJCQlpZighZW1wdHkoJGNvbnRlbnRbJ3ZhbHVlJ11bJ2FycmF5J10pKSBmb3JlYWNo
KCRjb250ZW50Wyd2YWx1ZSddWydhcnJheSddIGFzICRrZXk9PiRjaHVuaykNCgkJCQl7DQoJ
CQkJCWlmKCRjaHVuayAhPT0gJyonKQ0KCQkJCQkJLyppZihpc3NldCgkdmFsdWUtPiRjaHVu
aykpICR2YWx1ZSA9ICR2YWx1ZS0+JGNodW5rOw0KCQkJCQkJZWxzZSovIGlmKGlzc2V0KCR2
YWx1ZVskY2h1bmtdKSkgJHZhbHVlID0gJHZhbHVlWyRjaHVua107DQoJCQkJCQllbHNlIHt1
bnNldCgkdmFsdWUpOyBicmVhazt9DQoJCQkJCWVsc2Ugew0KCQkJCQkJJHF1ZXJ5ID0gYXJy
YXkoYXJyYXkoJ3R5cGUnID0+ICd4cGF0aCcsICd0ZXh0JyA9PiAnJywgJ3ZhbHVlJyA9PiBh
cnJheSgncGF0aCcgPT4gJy4nLCAnbW9kZScgPT4gJz8nLCAnYXJyYXknID0+IGFycmF5X3Ns
aWNlKCRjb250ZW50Wyd2YWx1ZSddWydhcnJheSddLCAka2V5ICsgMSksICd2YWx1ZScgPT4g
JGNvbnRlbnRbJ3ZhbHVlJ11bJ3ZhbHVlJ10pKSk7DQoJCQkJCQkkaW5kID0gaXNzZXQoJHBy
ZWZzWyJldGNfc3BlY2lhbHNfJHVuaXFpZCJdWyd7IyN9J10pID8gMSA6IDA7DQoJCQkJCQlm
b3JlYWNoKCR2YWx1ZSBhcyAkayA9PiAkdmFsKSB7DQoJCQkJCQkJaWYoaXNzZXQoJHByZWZz
WyJldGNfc3BlY2lhbHNfJHVuaXFpZCJdWyd7I30nXSkpICRpbnRlcm5hbHNbJyMnXSA9ICRr
Ow0KCQkJCQkJCWlmKCRpbmQpICRpbnRlcm5hbHNbJyMjJ10gPSAkaW5kKys7DQoJCQkJCQkJ
JG5ld3JlcyA9IGV0Y19ldmFsdWF0ZV9zdHJpbmcoJHF1ZXJ5LCAkdmFsLCAkaW50ZXJuYWxz
LCAkZmxhdCk7DQoJCQkJCQkJaWYoJHdyYXApIGZvcmVhY2goJG5ld3JlcyBhcyAkcm93KSAk
cmVzW10gPSAkcm93Ow0KCQkJCQkJCWVsc2UgJHJlcyAuPSAkbmV3cmVzOw0KCQkJCQkJfQ0K
CQkJCQkJdW5zZXQoJHZhbHVlKTsgYnJlYWs7DQoJCQkJCX0NCgkJCQl9DQoJCQkJaWYoaXNz
ZXQoJHZhbHVlKSkgew0KCQkJCQlpZighZW1wdHkoJGNvbnRlbnRbJ3ZhbHVlJ11bJ3ZhbHVl
J10pKSBldGNfcHJvY2Vzc19ub2RlKCRjb250ZW50Wyd2YWx1ZSddWyd2YWx1ZSddLCAkdmFs
dWUsICRpbnRlcm5hbHMpOw0KCQkJCQlpZigkd3JhcCkgJHJlc1tdID0gJHZhbHVlOyBlbHNl
ICRyZXMgLj0gJHZhbHVlOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCX0NCglyZXR1cm4gJHJlczsN
Cn0NCg0KZnVuY3Rpb24gZXRjX3Byb2Nlc3Nfbm9kZSgmJGF0dHIsICYkbm9kZSwgJGludGVy
bmFscz1udWxsLCAkZmxhdD10cnVlLCAkcmVtb3ZlPWZhbHNlKSB7DQoJaWYoJGZsYXQpIHsN
CgkJaWYoZW1wdHkoJGF0dHIpICYmICRyZW1vdmUpICRub2RlID0gbnVsbDsNCgkJZWxzZSBm
b3JlYWNoKCRhdHRyIGFzICR2YWwpIGlmKCR2YWxbJ2F0dHInXSA9PT0gJy4nIHx8ICR2YWxb
J2F0dHInXSA9PT0gJz8nKSB7DQoJCQlpZihpc3NldCgkaW50ZXJuYWxzWyc/J10pKSAkaW50
ZXJuYWxzWyc/J10gPSAkbm9kZTsNCgkJCSRub2RlID0gZXRjX2V2YWx1YXRlX3N0cmluZygk
dmFsWyd2YWx1ZSddLCAkbm9kZSwgJGludGVybmFscywgJGZsYXQpOw0KCQl9DQoJCXJldHVy
bjsNCgl9DQoNCi8vCSRzZWxmX3BhdGggPSBhcnJheSgnLicsICc/JywgJyMnLCAnKycsICde
JywgJyQnLCAnficsICcmJywgJy8nKTsNCgkkaXNfYXR0ciA9ICgkbm9kZS0+bm9kZVR5cGUg
PT09IFhNTF9BVFRSSUJVVEVfTk9ERSk7DQoJaWYoZW1wdHkoJGF0dHIpICYmICRyZW1vdmUp
IHsNCgkJaWYoJGlzX2F0dHIpICRub2RlLT5vd25lckVsZW1lbnQtPnJlbW92ZUF0dHJpYnV0
ZU5vZGUoJG5vZGUpOw0KCQllbHNlICRub2RlLT5wYXJlbnROb2RlLT5yZW1vdmVDaGlsZCgk
bm9kZSk7DQoJfQ0KCWVsc2UgZm9yZWFjaCgkYXR0ciBhcyAkdmFsKSB7DQovLwkJdW5zZXQo
JG5hbWUpOw0KCQkkc2VsZiA9IHN0cnBvcygnLj8jK14kfiYvJywgJHZhbFsnYXR0ciddKSAh
PT0gZmFsc2U7Ly9pbl9hcnJheSgkdmFsWydhdHRyJ10sICRzZWxmX3BhdGgpOw0KCQlpZigh
aXNzZXQoJHZhbFsndmFsdWUnXSkpIHtpZighJHNlbGYgJiYgISRpc19hdHRyKSAkbm9kZS0+
cmVtb3ZlQXR0cmlidXRlKCR2YWxbJ2F0dHInXSk7fQ0KCQllbHNlIHsNCgkJCWlmKGlzc2V0
KCRpbnRlcm5hbHNbJz8nXSkpICRpbnRlcm5hbHNbJz8nXSA9ICRzZWxmIHx8ICRpc19hdHRy
ID8gJG5vZGUtPm5vZGVWYWx1ZSA6ICRub2RlLT5nZXRBdHRyaWJ1dGUoJHZhbFsnYXR0cidd
KTsNCgkJCWlmKGlzc2V0KCRpbnRlcm5hbHNbJyMnXSkpICRpbnRlcm5hbHNbJyMnXSA9ICRz
ZWxmIHx8ICRpc19hdHRyID8gJG5vZGUtPm5vZGVOYW1lIDogJHZhbFsnYXR0ciddOw0KCQkJ
JHZhbHVlID0gaXNzZXQoJHZhbFsndmFsdWUnXVsndGV4dCddKSA/ICR2YWxbJ3ZhbHVlJ11b
J3RleHQnXSA6IGV0Y19ldmFsdWF0ZV9zdHJpbmcoJHZhbFsndmFsdWUnXSwgJG5vZGUsICRp
bnRlcm5hbHMsICRmbGF0KTsNCgkJCXN3aXRjaCgkdmFsWydhdHRyJ10pIHsNCgkJCQljYXNl
ICcmJyA6IGlmKCEkcmVtb3ZlKSByZXR1cm4gJHZhbHVlOw0KCQkJCWNhc2UgJy4nIDogY2Fz
ZSAnKycgOiBjYXNlICdeJyA6IGNhc2UgJyQnIDogaWYoISRpc19hdHRyKSB7DQoJCQkJCWlm
KHN0cnBvcygkdmFsdWUsICc8JykgPT09IGZhbHNlKQ0KCQkJCQkJaWYoJHZhbFsnYXR0cidd
ICE9PSAnLicpICRmID0gJG5vZGUtPm93bmVyRG9jdW1lbnQtPmNyZWF0ZVRleHROb2RlKCR2
YWx1ZSk7DQoJCQkJCQllbHNlIHskbm9kZS0+bm9kZVZhbHVlID0gJHZhbHVlOyBicmVhazt9
DQoJCQkJCWVsc2Ugew0KCQkJCQkJZ2xvYmFsICRwcmVmczsNCgkJCQkJCSR1bmlxaWQgPSAk
cHJlZnNbJ2V0Y19xdWVyeV91bmlxaWQnXTsNCgkJCQkJCSRlbmNvZGluZyA9ICRwcmVmc1si
ZXRjX2NvbnRleHRfJHVuaXFpZCJdWydlbmNvZGluZyddOw0KCQkJCQkJJGlzX3htbCA9ICRw
cmVmc1siZXRjX2NvbnRleHRfJHVuaXFpZCJdWyd4bWwnXTsNCgkJCQkJCWlmKCEkaXNfeG1s
KSAkdmFsdWUgPSBwcmVnX3JlcGxhY2UoJy88KCg/OmFyZWF8YmFzZXxicnxjb2x8Y29tbWFu
ZHxlbWJlZHxocnxpbWd8aW5wdXR8a2V5Z2VufGxpbmt8bWV0YXxwYXJhbXxzb3VyY2V8dHJh
Y2t8d2JyKVxiW14+XSopKD88IVwvKT4vaVUnLCAnPCQxIC8+JywgJHZhbHVlKTsNCgkJCQkJ
CWlmKCEkaXNfeG1sICYmIHN0cnBvcygkdmFsdWUsICcmJykgIT09IGZhbHNlKSB7DQoJCQkJ
CQkJaWYoIWlzc2V0KCRwcmVmc1siZXRjX2NvbnRleHRfJHVuaXFpZCJdWydkZWNvZGUnXSkp
ICRwcmVmc1siZXRjX2NvbnRleHRfJHVuaXFpZCJdWydkZWNvZGUnXSA9IGFycmF5X2ZsaXAo
YXJyYXlfZGlmZihnZXRfaHRtbF90cmFuc2xhdGlvbl90YWJsZShIVE1MX0VOVElUSUVTLCBF
TlRfQ09NUEFULCAkZW5jb2RpbmcpLCBnZXRfaHRtbF90cmFuc2xhdGlvbl90YWJsZShIVE1M
X1NQRUNJQUxDSEFSUywgRU5UX0NPTVBBVCwgJGVuY29kaW5nKSkpOw0KCQkJCQkJCSR2YWx1
ZSA9IHN0cnRyKCR2YWx1ZSwgJHByZWZzWyJldGNfY29udGV4dF8kdW5pcWlkIl1bJ2RlY29k
ZSddKTsgDQoJCQkJCQl9DQoJCQkJCQkkZiA9ICRub2RlLT5vd25lckRvY3VtZW50LT5jcmVh
dGVEb2N1bWVudEZyYWdtZW50KCk7DQoJCQkJCQkkZi0+YXBwZW5kWE1MKCR2YWx1ZSk7DQoJ
CQkJCX0NCgkJCQkJaWYoJHZhbFsnYXR0ciddID09PSAnLicpICRub2RlLT5ub2RlVmFsdWUg
PSBudWxsOw0KCQkJCQlpZigkdmFsWydhdHRyJ10gPT09ICcmJykgJG5vZGUtPnBhcmVudE5v
ZGUtPnJlcGxhY2VDaGlsZCgkZiwgJG5vZGUpOw0KCQkJCQllbHNlaWYoJHZhbFsnYXR0cidd
ID09PSAnXicpICRub2RlLT5wYXJlbnROb2RlLT5pbnNlcnRCZWZvcmUoJGYsICRub2RlKTsN
CgkJCQkJZWxzZWlmKCR2YWxbJ2F0dHInXSA9PT0gJyQnKQ0KCQkJCQkJaWYoJG5vZGUtPm5l
eHRTaWJsaW5nKSAkbm9kZS0+cGFyZW50Tm9kZS0+aW5zZXJ0QmVmb3JlKCRmLCAkbm9kZS0+
bmV4dFNpYmxpbmcpOw0KCQkJCQkJZWxzZSAkbm9kZS0+cGFyZW50Tm9kZS0+YXBwZW5kQ2hp
bGQoJGYpOw0KCQkJCQllbHNlICRub2RlLT5hcHBlbmRDaGlsZCgkZik7IGJyZWFrOw0KCQkJ
CX0NCg0KCQkJCWNhc2UgJz8nIDogJG5vZGUtPm5vZGVWYWx1ZSA9ICR2YWxbJ2F0dHInXSA9
PT0gJysnIHx8ICR2YWxbJ2F0dHInXSA9PT0gJyQnID8gJG5vZGUtPm5vZGVWYWx1ZS4kdmFs
dWUgOiAoJHZhbFsnYXR0ciddID09PSAnXicgPyAkdmFsdWUuJG5vZGUtPm5vZGVWYWx1ZSA6
ICR2YWx1ZSk7IGJyZWFrOw0KDQoJCQkJY2FzZSAnficgOiBjYXNlICcvJyA6DQoJCQkJZ2xv
YmFsICRwcmVmczsNCgkJCQkkdW5pcWlkID0gJHByZWZzWydldGNfcXVlcnlfdW5pcWlkJ107
DQoJCQkJJG5vZGVzID0gJHByZWZzWyJldGNfY29udGV4dF8kdW5pcWlkIl1bJ3hwYXRoJ10t
PmV2YWx1YXRlKCR2YWx1ZSwgJG5vZGUpOw0KCQkJCWlmICgkbm9kZXMgaW5zdGFuY2VvZiBE
T01Ob2RlTGlzdCkgZm9yZWFjaCgkbm9kZXMgYXMgJGVsZW1lbnQpDQoJCQkJCWlmKCEkaXNf
YXR0cikgew0KCQkJCQkJaWYoJHZhbFsnYXR0ciddID09PSAnficpICRlbGVtZW50LT5wYXJl
bnROb2RlLT5pbnNlcnRCZWZvcmUoJG5vZGUsICRlbGVtZW50KTsNCgkJCQkJCWVsc2UgJGVs
ZW1lbnQtPmFwcGVuZENoaWxkKCRub2RlKTsNCgkJCQkJfSBlbHNlICRlbGVtZW50LT5zZXRB
dHRyaWJ1dGVOb2RlKCRub2RlKTsNCgkJCQlicmVhazsNCg0KCQkJCWNhc2UgJyMnIDogaWYo
JGlzX2F0dHIgJiYgJHZhbHVlICE9ICRub2RlLT5uYW1lKSB7DQoJCQkJCSRub2RlLT5vd25l
ckVsZW1lbnQtPnNldEF0dHJpYnV0ZSgkdmFsdWUsICRub2RlLT52YWx1ZSk7DQoJCQkJCSRu
b2RlLT5vd25lckVsZW1lbnQtPnJlbW92ZUF0dHJpYnV0ZU5vZGUoJG5vZGUpOw0KCQkJCX0g
YnJlYWs7DQoNCgkJCQlkZWZhdWx0IDogaWYoISRpc19hdHRyKSAkbm9kZS0+c2V0QXR0cmli
dXRlKCR2YWxbJ2F0dHInXSwgJHZhbHVlKTsNCgkJCX0NCgkJfQ0KCX0NCn0NCg0KLyoqKioq
KioqKioqKioqKiBNSVNDICoqKioqKioqKioqKioqKioqKioqKiovDQoNCmZ1bmN0aW9uIGV0
Y19jcmVhdGVfZWxlbWVudCgkbmFtZSwgJiR2YWx1ZSwgJiRkb2MpIHsNCglpZihlbXB0eSgk
bmFtZSkgfHwgaXNfbnVtZXJpYygkbmFtZSkpIHskYXR0ciA9ICRuYW1lOyAkbmFtZSA9ICdy
b3cnO30NCgllbHNlIHVuc2V0KCRhdHRyKTsNCglpZighaXNfYXJyYXkoJHZhbHVlKSAmJiAh
aXNfb2JqZWN0KCR2YWx1ZSkpICRlbGVtZW50ID0gJGRvYy0+Y3JlYXRlRWxlbWVudCgkbmFt
ZSwgKHN0cmluZykkdmFsdWUpOw0KCWVsc2Ugew0KCQkkZWxlbWVudCA9ICRkb2MtPmNyZWF0
ZUVsZW1lbnQoJG5hbWUpOw0KCQlmb3JlYWNoKCR2YWx1ZSBhcyAka2V5PT4kdmFsKSAkZWxl
bWVudC0+YXBwZW5kQ2hpbGQoZXRjX2NyZWF0ZV9lbGVtZW50KCRrZXksICR2YWwsICRkb2Mp
KTsNCgl9DQoJaWYoaXNzZXQoJGF0dHIpKSAkZWxlbWVudC0+c2V0QXR0cmlidXRlKCdpbmRl
eCcsICRhdHRyKTsNCglyZXR1cm4gJGVsZW1lbnQ7DQp9DQoNCmZ1bmN0aW9uIGV0Y19waHBf
YWxsb3dlZCgkdW5pcWlkKSB7DQoJZ2xvYmFsICRwcmVmczsNCglpZihpc3NldCgkcHJlZnNb
ImV0Y19jb250ZXh0XyR1bmlxaWQiXVsncGhwJ10pKSByZXR1cm4gJHByZWZzWyJldGNfY29u
dGV4dF8kdW5pcWlkIl1bJ3BocCddOw0KCSRyZXN1bHQgPSBwaHAobnVsbCwgJ2VjaG8gMTsn
KTsNCglyZXR1cm4gJHByZWZzWyJldGNfY29udGV4dF8kdW5pcWlkIl1bJ3BocCddID0gIWVt
cHR5KCRyZXN1bHQpOw0KfQ0KDQpmdW5jdGlvbiBldGNfY2xlYW51cCgkdW5pcWlkLCAkcGFy
ZW50X3VuaXFpZCwgJG91dCA9IG51bGwpIHsNCglnbG9iYWwgJHByZWZzOw0KCWlmKCRwYXJl
bnRfdW5pcWlkKSAkcHJlZnNbJ2V0Y19xdWVyeV91bmlxaWQnXSA9ICRwYXJlbnRfdW5pcWlk
Ow0KCWVsc2UgdW5zZXQoJHByZWZzWydldGNfcXVlcnlfdW5pcWlkJ10pOw0KCXVuc2V0KCRw
cmVmc1siZXRjX2dsb2JhbHNfJHVuaXFpZCJdLCAkcHJlZnNbImV0Y19zYW5pdGl6ZV8kdW5p
cWlkIl0sICRwcmVmc1siZXRjX3NwZWNpYWxzXyR1bmlxaWQiXSwgJHByZWZzWyJldGNfY29u
dGV4dF8kdW5pcWlkIl0pOw0KCXJldHVybigkb3V0KTsNCn0NCg0KaWYoIWRlZmluZWQoJ0VU
Q19QUkVHX1NQRUMnKSkgZGVmaW5lKCdFVENfUFJFR19TUEVDJywgJy8oPzwhXHspKFx7Wz8h
XSg/Oltee31dfCg/MSkpK1x9KS9VJyk7IjtzOjQ6InR5cGUiO3M6MToiMCI7czo1OiJvcmRl
ciI7czoxOiI1IjtzOjU6ImZsYWdzIjtzOjE6IjAiO3M6NDoiaGVscCI7YjowO3M6MzoibWQ1
IjtzOjMyOiI5MzRkNjkxZGY5NzAyYWM2NjI5YjExYWU4NTc3OWQxMCI7fQ==
Last edited by etc (2014-04-28 21:10:19)
Offline
Offline
Re: resolved: category cloud that leads to articles ? I checked plugins
I copied and pasted both from the email and the forum, same error as before.
I logged into a site of mine with txp 4.4.1, no error, but it doesn’t show up in the plugins list.
edit: the same error, txp 4.4.1 put it in a different location on the plugn page.
Last edited by JimJoe (2014-04-28 15:37:44)
Offline
Re: resolved: category cloud that leads to articles ? I checked plugins
I could have broken something somewhere… I’m currently uploading 200 megs of graphic files to the site, when that is done I’ll reupload a new copy of txp 4.5.5
Offline
Re: resolved: category cloud that leads to articles ? I checked plugins
Eeesh. I lost internet connection. I got back on, and my web host is down. So, I’ll work back on this when I can.
Offline
Re: resolved: category cloud that leads to articles ? I checked plugins
My connection and web host are working again.
I re-uploaded txp 4.5.5 to my site.
Copy and paste from forum post, same error.
Offline
Re: resolved: category cloud that leads to articles ? I checked plugins
Unless base64_decode
function is disabled on your server (in which case you won’t be able to install any plugins), I’ve got no clue, sorry. You can take a chance on smd_query to check
<txp:smd_query break=","
query="SELECT name, title, count
FROM (SELECT COUNT(*) count, Category1 FROM textpattern WHERE Status=4 GROUP BY Category1 HAVING count!=0) c
JOIN txp_category ON name=c.Category1 WHERE type='article'
ORDER BY title"
>
<a href='<txp:category name="{name}" section="" url="1" />'>{title}</a>[{count}]
</txp:smd_query>
Last edited by etc (2014-04-28 17:15:06)
Offline
Re: resolved: category cloud that leads to articles ? I checked plugins
I tried to do some editing on my site and then see what the pages looked like, apparently it isn’t working at all.
So, it looks like my web host still has issues. I will try later today.
I tried smed_query on a different web site with txp 4.5.5, same error. I will contact my web host and see what is happening.
Offline
Re: resolved: category cloud that leads to articles ? I checked plugins
etc wrote #280462:
Unless
base64_decode
function is disabled on your server (in which case you won’t be able to install any plugins), I’ve got no clue, sorry. You can take a chance on smd_query to check
That error is invoked when the package is incomplete. This usually happens when query string sizes are limited by the host, and JimJoe does use free(-ish?) hosting services. Based on the IPs, his sites he has showcased here and the on in his profile seem to be hosted at CWahi/Crosswinds.
Last edited by Gocom (2014-04-28 20:48:45)
Offline
Offline
Re: resolved: category cloud that leads to articles ? I checked plugins
crosswinds.net is the paid hosting, where these sites are. Cwahi.net is the freebie hosting. But since I was a beta tester for the freebie site, it shouldn’t make a difference as beta accounts have more things they can do.
The install worked this morning. I’ll work on it and see what it looks like.
Offline
Re: resolved: category cloud that leads to articles ? I checked plugins
I still have the links not working problem I had after my account hiccuped yesterday. I’ll deal with that, and see what happens.
Offline