# hcg_templates v0.3
# Import/Export Templates
# Bert Garcia
# http://txpide.com/

# ......................................................................
# This is a plugin for Textpattern - http://textpattern.com/
# To install: textpattern > admin > plugins
# Paste the following text into the 'Install plugin' box:
# ......................................................................

YToxMDp7czo3OiJ2ZXJzaW9uIjtzOjM6IjAuMyI7czo2OiJhdXRob3IiO3M6MTE6IkJlcnQg
R2FyY2lhIjtzOjEwOiJhdXRob3JfdXJpIjtzOjE4OiJodHRwOi8vdHhwaWRlLmNvbS8iO3M6
MTE6ImRlc2NyaXB0aW9uIjtzOjIzOiJJbXBvcnQvRXhwb3J0IFRlbXBsYXRlcyI7czo0OiJ0
eXBlIjtpOjE7czo0OiJuYW1lIjtzOjEzOiJoY2dfdGVtcGxhdGVzIjtzOjQ6ImhlbHAiO3M6
MTg0NjoiaDEuIEltcG9ydC9FeHBvcnQgVGVtcGxhdGVzIGFzIEZpbGVzCgpwLiBUaGlzIHBs
dWdpbiBjcmVhdGVzIGEgbmV3ICpUZW1wbGF0ZXMqIHRhYiB1bmRlciAqRXh0ZW5zaW9ucyos
IGVuYWJsaW5nIHRoZSB0cml2aWFsIGV4cG9ydCBvZiAqUGFnZXMqLCAqRm9ybXMqLCBhbmQg
KlN0eWxlKiBydWxlcyB0byBhIHNwZWNpZmllZCBmb2xkZXIgZm9yIGNvbnZlbmllbnQgZWRp
dGluZywgYW5kIHRoZSBzdWJzZXF1ZW50IGltcG9ydCBvZiBuZXcgYW5kIHVwZGF0ZWQgZmls
ZXMuCgpoMi4gUmVxdWlyZW1lbnRzCgpwLiBUaGlzIHBsdWdpbiBoYXMgYmVlbiB0ZXN0ZWQg
dXNpbmcgVGV4dHBhdHRlcm4gKjQuMC40Ki4gSXQgbWlnaHQgd29yayBvbiBlYXJsaWVyIHZl
cnNpb25zLCBidXQgbm8gcHJvbWlzZXMhCgpwLiBSZWdhcmRsZXNzIG9mIHdoZXJlIGl0J3Mg
YmVlbiB0ZXN0ZWQsIHRoaXMgcGx1Z2luIG1lc3NlcyBhcm91bmQgd2l0aCB5b3VyIGRhdGFi
YXNlLgoKcC4gX0RvIG5vdCB1c2UgaXQgd2l0aG91dCBiYWNraW5nIHVwIHlvdXIgZGF0YWJh
c2VfLgoKaDIuIFNldHVwCgpwLiBCeSBkZWZhdWx0LCB0aGUgcGx1Z2luIGxvb2tzIGZvciBh
IGRpcmVjdG9yeSBuYW1lZCAqX3RlbXBsYXRlcyogaW4geW91ciBUZXh0cGF0dGVybiByb290
IGRpcmVjdG9yeS4gSWYgdGhlIGRpcmVjdG9yeSBkb2Vzbid0IGV4aXN0LCB0aGUgcGx1Z2lu
IHdpbGwgYXR0ZW1wdCB0byBjcmVhdGUgaXQgdGhlIGZpcnN0IHRpbWUgeW91IGV4cG9ydCB5
b3VyIHRlbXBsYXRlcy4gVGhpcyBjcmVhdGlvbiB3aWxsIGFsbW9zdCBjZXJ0YWlubHkgZmFp
bCwgc2luY2UgdGhlIFRleHRwYXR0ZXJuIHJvb3QgZGlyZWN0b3J5IHVzdWFsbHkgaXNuJ3Qg
d3JpdGFibGUuIEluIHRoYXQgY2FzZSwgeW91J2xsIG5lZWQgdG8gY3JlYXRlIHRoaXMgZGly
ZWN0b3J5LCBhbmQgZW5zdXJlIHRoYXQgdGhlIHdlYiBzZXJ2ZXIgaGFzIHdyaXRlIGFjY2Vz
cy4KCnAuIElmIHlvdXIgVGV4dHBhdHRlcm4gcm9vdCBpcyBsb2NhdGVkIGF0ICovdXNlcnMv
aG9tZS9teXVzZXIvd2ViL3B1YmxpYy8qLCB0aGUgZm9sbG93aW5nIGNvbW1hbmRzIGNvdWxk
IGJlIHVzZWQ6CgpiYy4gY2QgL3VzZXJzL2hvbWUvbXl1c2VyL3dlYi9wdWJsaWMvCm1rZGly
IF90ZW1wbGF0ZXMKY2htb2QgNzc3IF90ZW1wbGF0ZXMKCmgyLiBVc2FnZQoKcC4gSW1wb3J0
IC0gc2VsZWN0IGEgdGVtcGxhdGUgdG8gaW1wb3J0IGZyb20gdGhlIGRyb3Bkb3duIG9uIHRo
ZSAqVGVtcGxhdGVzKiB0YWIgYW5kIHByZXNzIF9Hb18uIEJlZm9yZSBpbXBvcnRpbmcsIHRo
ZSBwbHVnaW4gd2lsbCBkbyBhbiBleHBvcnQgb2YgeW91ciBpbnN0YWxsZWQgdGVtcGxhdGVz
IHRvIGEgZm9sZGVyIGNhbGxlZCAqcHJlaW1wb3J0LWRhdGEqLgoKcC4gRXhwb3J0IC0gdHlw
ZSBpbiBhbiBleHBvcnQgbmFtZSBhbmQgcHJlc3MgX0dvXy4gS2VlcCBpbiBtaW5kIHRoYXQg
bmFtaW5nIGFuIGV4cG9ydCB0aGUgc2FtZSBhcyBhbiBleGlzaXRpbmcgZm9sZGVyIHdpbGwg
b3ZlcndyaXRlIHRoZSBjb250ZW50cy4KCnAuIFRlbXBsYXRlcyBzdWIgZm9sZGVycyBhbmQg
ZmlsZSBuYW1pbmcgY29udmVudGlvbjoKCiogX3RlbXBsYXRlcwoqKiBmb3JtcwoqKiogY29t
bWVudHMuY29tbWVudC5mb3JtCioqKiBkZWZhdWx0LmFydGljbGUuZm9ybQoqKiogcGxhaW5s
aW5rcy5saW5rcy5mb3JtCioqIHBhZ2VzCioqKiBkZWZhdWx0LnBhZ2UKKioqIGVycm9yX2Rl
ZmF1bHQucGFnZQoqKiBzdHlsZQoqKiogZGVmYXVsdC5jc3MKCmgyLiBDcmVkaXRzCgpwLiBQ
bHVnaW4gY29kZSBiYXNlZCBvbiBtY3dfdGVtcGxhdGVzIGJ5ICJNaWtlIFdlc3QiOmh0dHA6
Ly9taWtld2VzdC5vcmcvLiI7czo0OiJjb2RlIjtzOjE2NjE2OiIKLyoKICAgIFBVQkxJQyBQ
TFVHSU4gQ09ORklHCiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiovCiAgICAkaGNnX3RlbXBs
YXRlcyA9IGFycmF5KAogICAgICAgICJiYXNlX2RpciIgICAgICA9PiAgIl90ZW1wbGF0ZXMi
LAoKICAgICAgICAic3ViZGlyX3BhZ2VzIiAgPT4gICJwYWdlcyIsCiAgICAgICAgInN1YmRp
cl9mb3JtcyIgID0+ICAiZm9ybXMiLAogICAgICAgICJzdWJkaXJfY3NzIiAgICA9PiAgInN0
eWxlIiwKCiAgICAgICAgImV4dF9wYWdlcyIgICAgID0+ICAiLnBhZ2UiLAogICAgICAgICJl
eHRfZm9ybXMiICAgICA9PiAgIi5mb3JtIiwKICAgICAgICAiZXh0X2NzcyIgICAgICAgPT4g
ICIuY3NzIgogICAgKTsKCi8qCiAgICBQTFVHSU4gQ09ERSAobm8gZWRpdGluZyBiZWxvdyB0
aGlzIGxpbmUsIHBsZWFzZSkKICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKi8KICAgIGRlZmlu
ZSgnX0hDR19URU1QTEFURVNfSU1QT1JUJywgMSk7CiAgICBkZWZpbmUoJ19IQ0dfVEVNUExB
VEVTX0VYUE9SVCcsIDIpOwogICAgJEdMT0JBTFNbJ19IQ0dfVEVNUExBVEVTJ10gPSAkaGNn
X3RlbXBsYXRlczsKCgoKICAgIC8qCiAgICAgICAgUExVR0lOIENPREU6OklOU1RBTlRJQVRJ
T04KICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tCiAgICAqLwogICAgICAgIGlmIChAdHhwaW50ZXJmYWNlID09
ICdhZG1pbicpIHsKICAgICAgICAJJGltcG9ydCAgICAgICAgID0gJ2hjZ190ZW1wbGF0ZXMn
OwogICAgICAgIAkkaW1wb3J0X3RhYiAgICAgPSAnVGVtcGxhdGVzJzsKCiAgICAgICAgCWFk
ZF9wcml2cygkaW1wb3J0LCAnMSwyJyk7CiAgICAgICAgCXJlZ2lzdGVyX3RhYigiZXh0ZW5z
aW9ucyIsICRpbXBvcnQsICRpbXBvcnRfdGFiKTsKICAgICAgICAJcmVnaXN0ZXJfY2FsbGJh
Y2soImhjZ190ZW1wbGF0ZXMiLCAkaW1wb3J0KTsKICAgICAgICB9CgogICAgLyoKICAgICAg
ICBQTFVHSU4gQ09ERTo6TUFJTiBDQUxMQkFDSwogICAgICAgIC0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgICovCiAg
ICAgICAgZnVuY3Rpb24gaGNnX3RlbXBsYXRlcygkZXZlbnQsICRzdGVwKSB7CgkJCSRHTE9C
QUxTWydwcmVmcyddID0gZ2V0X3ByZWZzKCk7CiAgICAgICAgICAgICR0ZW1wbGF0ZSA9IG5l
dyBoY2dfdGVtcGxhdGUoKTsKCiAgICAJCXBhZ2V0b3AoIlByb2Nlc3MgVGVtcGxhdGVzIiwg
IiIpOwoJCSAgICBwcmludCAiCgkgICAgICAgIDxzdHlsZSB0eXBlPSd0ZXh0L2Nzcyc+Cgkg
ICAgICAgICAgICAuc3VjY2VzcyB7IGNvbG9yOiAjMDA5OTAwOyB9CgkgICAgICAgICAgICAu
ZmFpbHVyZSB7IGNvbG9yOiAjRkYwMDAwOyB9CgkgICAgICAgIDwvc3R5bGU+CgoJICAgICAg
ICA8dGFibGUgY2VsbHBhZGRpbmc9JzAnIGNlbGxzcGFjaW5nPScwJyBib3JkZXI9JzAnIGlk
PSdsaXN0JyBhbGlnbj0nY2VudGVyJz4KCSAgICAgICAgICAgIDx0cj4KCSAgICAgICAgICAg
ICAgICA8dGQ+CgkgICAgICAgICI7CgoJICAgICAgICBzd2l0Y2ggKCRzdGVwKSB7CgkgICAg
ICAgICAgICBjYXNlICJpbXBvcnQiOgoJICAgICAgICAgICAgICAgICR0ZW1wbGF0ZS0+aW1w
b3J0KHBzKCdpbXBvcnRfZGlyJykpOwoJICAgICAgICAgICAgICAgIGJyZWFrOwoKCSAgICAg
ICAgICAgIGNhc2UgImV4cG9ydCI6CgkgICAgICAgICAgICAgICAgJGRpciA9IHBzKCdleHBv
cnRfZGlyJyk7CgoJICAgICAgICAgICAgICAgICRkaXIgPSAgc3RyX3JlcGxhY2UoCgkgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXkoIiAiKSwKCSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBhcnJheSgiLSIpLAoJICAgICAgICAgICAgICAgICAgICAgICAgICAgICRk
aXIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7CgkgICAgICAgICAgICAgICAgJHRl
bXBsYXRlLT5leHBvcnQoJGRpcik7CgkgICAgICAgICAgICAgICAgYnJlYWs7CgoJICAgICAg
ICAgICAgZGVmYXVsdDoKCSAgICAgICAgICAgICAgICAkaW1wb3J0bGlzdCA9ICR0ZW1wbGF0
ZS0+Z2V0VGVtcGxhdGVMaXN0KCk7CgogICAgICAgICAgICAgICAgICAgIHByaW50ICIKICAg
ICAgICAgICAgICAgICAgICAgICAgPGgxPkltcG9ydCBUZW1wbGF0ZXM8L2gxPgogICAgICAg
ICAgICAgICAgICAgICIuZm9ybSgKICAgICAgICAgICAgICAgICAgICAgICAgICBncmFmKCdX
aGljaCB0ZW1wbGF0ZSBzZXQgd291bGQgeW91IGxpa2UgdG8gaW1wb3J0PycuCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBzZWxlY3RJbnB1dCgnaW1wb3J0X2RpcicsICRpbXBvcnRs
aXN0LCAnJywgMSkuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmSW5wdXQoJ3N1Ym1p
dCcsICdnbycsICdHbycsICdzbWFsbGVyYm94JykuCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBlSW5wdXQoJ2hjZ190ZW1wbGF0ZXMnKS5zSW5wdXQoJ2ltcG9ydCcpCiAgICAgICAg
ICAgICAgICAgICAgICAgICkKICAgICAgICAJICAgICAgICApOwoKICAgICAgICAJICAgICAg
ICBwcmludCAiCiAgICAgICAgICAgICAgICAgICAgICAgIDxoMT5FeHBvcnQgVGVtcGxhdGVz
PC9oMT4KICAgICAgICAgICAgICAgICAgICAiLmZvcm0oCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgZ3JhZignTmFtZSB0aGlzIGV4cG9ydDonLgogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZklucHV0KCd0ZXh0JywgJ2V4cG9ydF9kaXInLCAnJykuCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBmSW5wdXQoJ3N1Ym1pdCcsICdnbycsICdHbycsICdzbWFsbGVyYm94
JykuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlSW5wdXQoJ2hjZ190ZW1wbGF0ZXMn
KS5zSW5wdXQoJ2V4cG9ydCcpCiAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAJ
ICAgICAgICApOwoKCSAgICAgICAgICAgICAgICBicmVhazsKCSAgICAgICAgfQoJICAgICAg
ICBwcmludCAiCgkgICAgICAgICAgICAgICAgPC90ZD4KCSAgICAgICAgICAgIDwvdHI+Cgkg
ICAgICAgIDwvdGFibGU+CgkgICAgICAgICI7CiAgICAgICAgfQoKICAgIGNsYXNzIGhjZ190
ZW1wbGF0ZSB7CiAgICAgICAgZnVuY3Rpb24gaGNnX3RlbXBsYXRlKCkgewoJCQlnbG9iYWwg
JHByZWZzOwogICAgICAgICAgICBnbG9iYWwgJF9IQ0dfVEVNUExBVEVTOwoKICAgICAgICAg
ICAgJHRoaXMtPl9jb25maWcgPSAkX0hDR19URU1QTEFURVM7CgogICAgICAgIC8qCiAgICAg
ICAgICAgIFBSSVZBVEUgQ09ORklHCiAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICAgICAgICovCiAgICAgICAg
ICAgICR0aGlzLT5fY29uZmlnWydyb290X3BhdGgnXSAgICAgICAgID0gICAkcHJlZnNbJ3Bh
dGhfdG9fc2l0ZSddOwogICAgICAgICAgICAkdGhpcy0+X2NvbmZpZ1snZnVsbF9iYXNlX3Bh
dGgnXSAgICA9ICAgc3ByaW50ZigKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAiJXMvJXMiLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5fY29uZmlnWydyb290
X3BhdGgnXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAkdGhpcy0+X2NvbmZpZ1snYmFzZV9kaXInXQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICR0
aGlzLT5fY29uZmlnWydlcnJvcl90ZW1wbGF0ZSddICAgID0gICAiCiAgICAgICAgICAgICAg
ICA8aDEgY2xhc3M9J2ZhaWx1cmUnPiVzPC9oMT4KICAgICAgICAgICAgICAgIDxwPiVzPC9w
PgogICAgICAgICAgICAiOwoKICAgICAgICAgICAgJG1pc3NpbmdfZGlyX2hlYWQgICA9ICJU
ZW1wbGF0ZSBEaXJlY3RvcnkgTWlzc2luZyI7CiAgICAgICAgICAgICRtaXNzaW5nX2Rpcl90
ZXh0ICAgPSAiVGhlIHRlbXBsYXRlIGRpcmVjdG9yeSBgPHN0cm9uZz4lMVwkczwvc3Ryb25n
PmAgZG9lcyBub3QgZXhpc3QsIGFuZCBjb3VsZCBub3QgYmUgYXV0b21hdGljYWxseSBjcmVh
dGVkLiAgV291bGQgeW91IG1pbmQgY3JlYXRpbmcgaXQgeW91cnNlbGYgYnkgcnVubmluZyBz
b21ldGhpbmcgbGlrZTwvcD48cHJlPjxjb2RlPiAgICBta2RpciAlMVwkc1xuICAgIGNobW9k
IDc3NyAlMVwkczwvY29kZT48L3ByZT48cD5UaGF0IHNob3VsZCBmaXggdGhlIGlzc3VlLiAg
WW91IGNvdWxkIGFsc28gYWRqdXN0IHRoZSBwbHVnaW4ncyBkaXJlY3RvcnkgYnkgbW9kaWZ5
aW5nIDxjb2RlPlwkaGNnX3RlbXBsYXRlc1snYmFzZV9kaXInXTwvY29kZT4gaW4gdGhlIHBs
dWdpbidzIGNvZGUuIjsKICAgICAgICAgICAgJGNhbnRfd3JpdGVfaGVhZCAgICA9ICJUZW1w
bGF0ZSBEaXJlY3RvcnkgTm90IFdyaXRhYmxlIjsKICAgICAgICAgICAgJGNhbnRfd3JpdGVf
dGV4dCAgICA9ICJJIGNhbid0IHNlZW0gdG8gd3JpdGUgdG8gdGhlIHRlbXBsYXRlIGRpcmVj
dG9yeSBgPHN0cm9uZz4lMVwkczwvc3Ryb25nPmAuICBXb3VsZCB5b3UgbWluZCBydW5uaW5n
IHNvbWV0aGluZyBsaWtlPC9wPjxwcmU+PGNvZGU+ICAgIGNobW9kIDc3NyAlMVwkczwvY29k
ZT48L3ByZT48cD50byBmaXggdGhlIHByb2JsZW0/IjsKICAgICAgICAgICAgJGNhbnRfcmVh
ZF9oZWFkICAgICA9ICJUZW1wbGF0ZSBEaXJlY3RvcnkgTm90IFJlYWRhYmxlIjsKICAgICAg
ICAgICAgJGNhbnRfcmVhZF90ZXh0ICAgICA9ICJJIGNhbid0IHNlZW0gdG8gcmVhZCBmcm9t
IHRoZSB0ZW1wbGF0ZSBkaXJlY3RvcnkgYDxzdHJvbmc+JTFcJHM8L3N0cm9uZz5gLiAgV291
bGQgeW91IG1pbmQgcnVubmluZyBzb21ldGhpbmcgbGlrZTwvcD48cHJlPjxjb2RlPiAgICBj
aG1vZCA3NzcgJSUxXCRzPC9jb2RlPjwvcHJlPjxwPnRvIGZpeCB0aGUgcHJvYmxlbT8iOwoK
CiAgICAgICAgICAgICR0aGlzLT5fY29uZmlnWydlcnJvcl9taXNzaW5nX2RpciddID0gICBz
cHJpbnRmKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICR0aGlzLT5fY29uZmlnWydlcnJvcl90ZW1wbGF0ZSddLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRtaXNzaW5n
X2Rpcl9oZWFkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICRtaXNzaW5nX2Rpcl90ZXh0CiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAkdGhpcy0+X2Nv
bmZpZ1snZXJyb3JfY2FudF93cml0ZSddICA9ICAgc3ByaW50ZigKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+X2NvbmZp
Z1snZXJyb3JfdGVtcGxhdGUnXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAkY2FudF93cml0ZV9oZWFkLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjYW50X3dyaXRl
X3RleHQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICk7CiAgICAgICAgICAgICR0aGlzLT5fY29uZmlnWydlcnJvcl9jYW50X3JlYWQnXSAg
ID0gICBzcHJpbnRmKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICR0aGlzLT5fY29uZmlnWydlcnJvcl90ZW1wbGF0ZSddLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRj
YW50X3JlYWRfaGVhZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAkY2FudF9yZWFkX3RleHQKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7CgogICAgICAgICAgICAkdGhpcy0+
ZXhwb3J0VHlwZXMgPSBhcnJheSgKICAgICAgICAgICAgICAgICJwYWdlcyIgPT4gIGFycmF5
KAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleHQiICAgICAgID0+ICAkdGhp
cy0+X2NvbmZpZ1snZXh0X3BhZ2VzJ10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgImRhdGEiICAgICAgPT4gICJ1c2VyX2h0bWwiLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICJmaWVsZHMiICAgID0+ICAibmFtZSwgdXNlcl9odG1sIiwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAibmljZV9uYW1lIiA9PiAgIlBhZ2UgRmlsZXMiLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZWdleCIgICAgID0+ICAiLyguKyki
LiR0aGlzLT5fY29uZmlnWydleHRfcGFnZXMnXS4iLyIsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgInNxbCIgICAgICAgPT4gICJgdXNlcl9odG1sYCA9ICclcyciLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdWJkaXIiICAgID0+ICAkdGhpcy0+X2Nv
bmZpZ1snc3ViZGlyX3BhZ2VzJ10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
InRhYmxlIiAgICAgPT4gICJ0eHBfcGFnZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICksCiAgICAgICAgICAgICAgICAiZm9ybXMiID0+ICBhcnJheSgKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAiZXh0IiAgICAgICA9PiAgJHRoaXMtPl9jb25maWdbJ2V4dF9m
b3JtcyddLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkYXRhIiAgICAgID0+
ICAiRm9ybSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZpZWxkcyIgICAg
PT4gICJuYW1lLCB0eXBlLCBGb3JtIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAibmljZV9uYW1lIiA9PiAgIkZvcm0gRmlsZXMiLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICJyZWdleCIgICAgID0+ICAiLyguKylcLiguKykiLiR0aGlzLT5fY29uZmln
WydleHRfZm9ybXMnXS4iLyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNx
bCIgICAgICAgPT4gICJgRm9ybWAgPSAnJXMnLCBgdHlwZWAgPSAnJXMnIiwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAic3ViZGlyIiAgICA9PiAgJHRoaXMtPl9jb25maWdb
J3N1YmRpcl9mb3JtcyddLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWJs
ZSIgICAgID0+ICAidHhwX2Zvcm0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLAog
ICAgICAgICAgICAgICAgImNzcyIgICA9PiAgYXJyYXkoCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgImV4dCIgICAgICAgPT4gICR0aGlzLT5fY29uZmlnWydleHRfY3NzJ10s
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRhdGEiICAgICAgPT4gICJjc3Mi
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmaWVsZHMiICAgID0+ICAibmFt
ZSwgY3NzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmljZV9uYW1lIiA9
PiAgIkNTUyBSdWxlcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJlZ2V4
IiAgICAgPT4gICIvKC4rKSIuJHRoaXMtPl9jb25maWdbJ2V4dF9jc3MnXS4iLyIsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgInNxbCIgICAgICAgPT4gICJgY3NzYCA9ICcl
cyciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdWJkaXIiICAgID0+ICAk
dGhpcy0+X2NvbmZpZ1snc3ViZGlyX2NzcyddLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICJ0YWJsZSIgICAgID0+ICAidHhwX2NzcyIKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICkKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIGNo
ZWNrZGlyKCRkaXIgPSAnJywgJHR5cGUgPSBfSENHX1RFTVBMQVRFU19FWFBPUlQpIHsKICAg
ICAgICAgICAgLyoKICAgICAgICAgICAgICAgIElmICR0eXBlID09IF9FWFBPUlQsIHRoZW46
CiAgICAgICAgICAgICAgICAgICAgMS4gIENoZWNrIHRvIHNlZSB0aGF0IC9iYXNlL3BhdGgv
JGRpciBleGlzdHMsIGFuZCBpcwogICAgICAgICAgICAgICAgICAgICAgICB3cml0YWJsZS4g
IElmIG5vdCwgY3JlYXRlIGl0LgogICAgICAgICAgICAgICAgICAgIDIuICBDaGVjayB0byBz
ZWUgdGhhdCAvYmFzZS9wYXRoLyRkaXIvc3ViZGlyXyogZXhpc3QsCiAgICAgICAgICAgICAg
ICAgICAgICAgIGFuZCBhcmUgd3JpdGFibGUuICBJZiBub3QsIGNyZWF0ZSB0aGVtLgoKICAg
ICAgICAgICAgICAgIElmICR0eXBlID09IF9JTVBPUlQsIHRoZW46CiAgICAgICAgICAgICAg
ICAgICAgMS4gIENoZWNrIHRvIHNlZSB0aGF0IC9iYXNlL3BhdGgvJGRpciBleGlzdHMsIGFu
ZCBpcyByZWFkYWJsZS4KICAgICAgICAgICAgICAgICAgICAyLiAgQ2hlY2sgdG8gc2VlIHRo
YXQgL2Jhc2UvcGF0aC8kZGlyL3N1YmRpcl8qIGV4aXN0LCBhbmQgYXJlIHJlYWRhYmxlLgog
ICAgICAgICAgICAqLwogICAgICAgICAgICAkZGlyID0gIHNwcmludGYoCiAgICAgICAgICAg
ICAgICAgICAgICAgICIlcy8lcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5f
Y29uZmlnWydmdWxsX2Jhc2VfcGF0aCddLAogICAgICAgICAgICAgICAgICAgICAgICAkZGly
CiAgICAgICAgICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICR0b2NoZWNrID0gIGFycmF5
KAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGRpciwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICRkaXIuJy8nLiR0aGlzLT5fY29uZmlnWydzdWJkaXJfcGFnZXMnXSwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICRkaXIuJy8nLiR0aGlzLT5fY29uZmlnWydzdWJk
aXJfY3NzJ10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZGlyLicvJy4kdGhpcy0+
X2NvbmZpZ1snc3ViZGlyX2Zvcm1zJ10KICAgICAgICAgICAgICAgICAgICAgICAgKTsKICAg
ICAgICAgICAgZm9yZWFjaCAoJHRvY2hlY2sgYXMgJGN1ckRpcikgewogICAgICAgICAgICAg
ICAgc3dpdGNoICgkdHlwZSkgewogICAgICAgICAgICAgICAgICAgIGNhc2UgX0hDR19URU1Q
TEFURVNfSU1QT1JUOgogICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWlzX2RpcigkY3Vy
RGlyKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWNobyBzcHJpbnRmKCR0aGlz
LT5fY29uZmlnWydlcnJvcl9taXNzaW5nX2RpciddLCAkY3VyRGlyKTsKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAgICAg
fQogICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWlzX3JlYWRhYmxlKCRjdXJEaXIpKSB7
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlY2hvIHNwcmludGYoJHRoaXMtPl9jb25m
aWdbJ2Vycm9yX2NhbnRfcmVhZCddLCAkY3VyRGlyKTsKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAg
ICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICAgICAgY2FzZSBfSENH
X1RFTVBMQVRFU19FWFBPUlQ6CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghaXNfZGly
KCRjdXJEaXIpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIUBta2Rpcigk
Y3VyRGlyLCAwNzc3KSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVjaG8g
c3ByaW50ZigkdGhpcy0+X2NvbmZpZ1snZXJyb3JfbWlzc2luZ19kaXInXSwgJGN1ckRpcik7
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICAgICAgICAgICAgIGlmICghaXNfd3JpdGFibGUoJGN1ckRpcikpIHsKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGVjaG8gc3ByaW50ZigkdGhpcy0+X2NvbmZpZ1snZXJy
b3JfY2FudF93cml0ZSddLCAkY3VyRGlyKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAg
ICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CgogICAgICAgIC8qCiAgICAgICAgICAg
IEVYUE9SVCBGVU5DVElPTlMKICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICAgICAgICovCiAgICAgICAg
ZnVuY3Rpb24gZXhwb3J0KCRkaXIgPSAnJykgewogICAgICAgICAgICBpZiAoISR0aGlzLT5j
aGVja2RpcigkZGlyLCBfSENHX1RFTVBMQVRFU19FWFBPUlQpKSB7CiAgICAgICAgICAgICAg
ICByZXR1cm47CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZvcmVhY2ggKCR0aGlzLT5l
eHBvcnRUeXBlcyBhcyAkdHlwZSA9PiAkY29uZmlnKSB7CiAgICAgICAgICAgICAgICBwcmlu
dCAiCiAgICAgICAgICAgICAgICAgICAgPGgxPkV4cG9ydGluZyAiLiRjb25maWdbJ25pY2Vf
bmFtZSddLiI8L2gxPgogICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ncmVzdWx0cyc+
CiAgICAgICAgICAgICAgICAiOwoKICAgICAgICAgICAgICAgICRyb3dzID0gc2FmZV9yb3dz
KCRjb25maWdbJ2ZpZWxkcyddLCAkY29uZmlnWyd0YWJsZSddLCAnMT0xJyk7CgogICAgICAg
ICAgICAgICAgZm9yZWFjaCAoJHJvd3MgYXMgJHJvdykgewogICAgICAgICAgICAgICAgICAg
ICRmaWxlbmFtZSAgICAgICA9ICAgc3ByaW50ZigKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAiJXMvJXMvJXMvJXMlcyIsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPl9jb25maWdbJ2Z1bGxfYmFzZV9w
YXRoJ10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGRp
ciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY29uZmln
WydzdWJkaXInXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAkcm93WyduYW1lJ10gLiAoaXNzZXQoJHJvd1sndHlwZSddKT8iLiIuJHJvd1sndHlwZSdd
OiIiKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY29u
ZmlnWydleHQnXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTsK
ICAgICAgICAgICAgICAgICAgICAkbmljZWZpbGVuYW1lID0gICAgIHNwcmludGYoCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIi4uLi8lcy8lcy8lcyVz
IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZGlyLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjb25maWdbJ3N1
YmRpciddLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRy
b3dbJ25hbWUnXSAuIChpc3NldCgkcm93Wyd0eXBlJ10pPyIuIi4kcm93Wyd0eXBlJ106IiIp
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjb25maWdb
J2V4dCddCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApOwoKICAg
ICAgICAgICAgICAgICAgICBpZiAoaXNzZXQoJHJvd1snY3NzJ10pKSB7CiAgICAgICAgICAg
ICAgICAgICAgICAgICRyb3dbJ2NzcyddID0gYmFzZTY0X2RlY29kZSgkcm93Wydjc3MnXSk7
CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAkZiA9IEBmb3Bl
bigkZmlsZW5hbWUsICJ3KyIpOwogICAgICAgICAgICAgICAgICAgIGlmICgkZikgewogICAg
ICAgICAgICAgICAgICAgICAgICBmd3JpdGUoJGYsJHJvd1skY29uZmlnWydkYXRhJ11dKTsK
ICAgICAgICAgICAgICAgICAgICAgICAgZmNsb3NlKCRmKTsKICAgICAgICAgICAgICAgICAg
ICAgICAgcHJpbnQgIgogICAgICAgICAgICAgICAgICAgICAgICA8bGk+PHNwYW4gY2xhc3M9
J3N1Y2Nlc3MnPlN1Y2Nlc3NmdWxseSBleHBvcnRlZDwvc3Bhbj4gIi4kY29uZmlnWyduaWNl
X25hbWUnXS4iICciLiRyb3dbJ25hbWUnXS4iJyB0byAnIi4kbmljZWZpbGVuYW1lLiInPC9s
aT4KICAgICAgICAgICAgICAgICAgICAgICAgIjsKICAgICAgICAgICAgICAgICAgICB9IGVs
c2UgewogICAgICAgICAgICAgICAgICAgICAgICBwcmludCAiCiAgICAgICAgICAgICAgICAg
ICAgICAgIDxsaT48c3BhbiBjbGFzcz0nZmFpbHVyZSc+RmFpbHVyZSBleHBvcnRpbmc8L3Nw
YW4+ICIuJGNvbmZpZ1snbmljZV9uYW1lJ10uIiAnIi4kcm93WyduYW1lJ10uIicgdG8gJyIu
JG5pY2VmaWxlbmFtZS4iJzwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICI7CiAgICAg
ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcHJp
bnQgIgogICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAiOwogICAg
ICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAvKgogICAgICAgICAgICBJTVBPUlQgRlVO
Q1RJT05TCiAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgICAgICAqLwogICAgICAgIGZ1bmN0aW9uIGdl
dFRlbXBsYXRlTGlzdCgpIHsKICAgICAgICAgICAgJGRpciA9IG9wZW5kaXIoJHRoaXMtPl9j
b25maWdbJ2Z1bGxfYmFzZV9wYXRoJ10pOwoKICAgICAgICAgICAgJGxpc3QgPSBhcnJheSgp
OwoKICAgICAgICAgICAgd2hpbGUoZmFsc2UgIT09ICgkZmlsZW5hbWUgPSByZWFkZGlyKCRk
aXIpKSkgewogICAgICAgICAgICAgICAgaWYgKAogICAgICAgICAgICAgICAgICAgIGlzX2Rp
cigKICAgICAgICAgICAgICAgICAgICAgICAgc3ByaW50ZigKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICIlcy8lcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+
X2NvbmZpZ1snZnVsbF9iYXNlX3BhdGgnXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICRmaWxlbmFtZQogICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAg
ICAgKSAmJiAkZmlsZW5hbWUgIT0gJy4nICYmICRmaWxlbmFtZSAhPSAnLi4nCiAgICAgICAg
ICAgICAgICApIHsKICAgICAgICAgICAgICAgICAgICAkbGlzdFskZmlsZW5hbWVdID0gJGZp
bGVuYW1lOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJl
dHVybiAkbGlzdDsKICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIGltcG9ydCgkZGlyKSB7
CiAgICAgICAgICAgIGlmICghJHRoaXMtPmNoZWNrZGlyKCRkaXIsIF9IQ0dfVEVNUExBVEVT
X0lNUE9SVCkpIHsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQoKICAg
ICAgICAgICAgLyoKICAgICAgICAgICAgICAgIEF1dG8gZXhwb3J0IGludG8gYHByZWltcG9y
dC1kYXRhYAogICAgICAgICAgICAqLwogICAgICAgICAgICBwcmludCAiCiAgICAgICAgICAg
ICAgICA8aDE+QmFja2luZyB1cCBjdXJyZW50IHRlbXBsYXRlIGRhdGE8L2gxPgogICAgICAg
ICAgICAgICAgPHA+WW91ciBjdXJyZW50IHRlbXBsYXRlIGRhdGEgd2lsbCBiZSBhdmFpbGFi
bGUgZm9yIHJlLWltcG9ydCBhcyBgcHJlaW1wb3J0LWRhdGFgLjwvcD4KICAgICAgICAgICAg
IjsKCiAgICAgICAgICAgICR0aGlzLT5leHBvcnQoJ3ByZWltcG9ydC1kYXRhJyk7CgogICAg
ICAgICAgICAkYmFzZWRpciA9ICBzcHJpbnRmKAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIiVzLyVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5fY29uZmln
WydmdWxsX2Jhc2VfcGF0aCddLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGRpcgog
ICAgICAgICAgICAgICAgICAgICAgICApOwogICAgICAgICAgICBmb3JlYWNoICgkdGhpcy0+
ZXhwb3J0VHlwZXMgYXMgJHR5cGUgPT4gJGNvbmZpZykgewogICAgICAgICAgICAgICAgcHJp
bnQgIgogICAgICAgICAgICAgICAgICAgIDxoMT5JbXBvcnRpbmcgIi4kY29uZmlnWyduaWNl
X25hbWUnXS4iPC9oMT4KICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9J3Jlc3VsdHMn
PgogICAgICAgICAgICAgICAgIjsKCiAgICAgICAgICAgICAgICAkZXhwb3J0ZGlyID0gICAg
c3ByaW50ZigKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiVzLyVzIiwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGJhc2VkaXIsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjb25maWdbJ3N1YmRpciddCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICAgICAkZGlyID0gb3Bl
bmRpcigkZXhwb3J0ZGlyKTsKICAgICAgICAgICAgICAgIHdoaWxlIChmYWxzZSAhPT0gKCRm
aWxlbmFtZSA9IHJlYWRkaXIoJGRpcikpKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKHBy
ZWdfbWF0Y2goJGNvbmZpZ1sncmVnZXgnXSwgJGZpbGVuYW1lLCAkZmlsZWRhdGEpKSB7CiAg
ICAgICAgICAgICAgICAgICAgICAgICR0ZW1wbGF0ZU5hbWUgPSBhZGRzbGFzaGVzKCRmaWxl
ZGF0YVsxXSk7CiAgICAgICAgICAgICAgICAgICAgICAgICR0ZW1wbGF0ZVR5cGUgPSAoaXNz
ZXQoJGZpbGVkYXRhWzJdKSk/JGZpbGVkYXRhWzJdOicnOwoKICAgICAgICAgICAgICAgICAg
ICAgICAgJGYgPSAgICBzcHJpbnRmKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAiJXMvJXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXhw
b3J0ZGlyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZmlsZW5hbWUK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApOwoKCQkgICAgICAgICAgICAgICAg
aWYgKCRkYXRhID0gZmlsZSgkZikpIHsKICAgIAkJICAgICAgICAgICAgICAgIGlmICgkdHlw
ZSA9PSAnY3NzJykgewogICAgCQkgICAgICAgICAgICAgICAgICAgICRkYXRhID0gYmFzZTY0
X2VuY29kZShpbXBsb2RlKCcnLCAkZGF0YSkpOwogICAgCQkgICAgICAgICAgICAgICAgfSBl
bHNlIHsKICAgIAkJICAgICAgICAgICAgICAgICAgICAkZGF0YSA9IGFkZHNsYXNoZXMoaW1w
bG9kZSgnJywgJGRhdGEpKTsKICAgIAkJICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGlmIChzYWZlX2ZpZWxkKCduYW1lJywgJGNvbmZpZ1sndGFibGUn
XSwgIm5hbWU9JyIuJHRlbXBsYXRlTmFtZS4iJyIpKSB7CiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJHJlc3VsdCA9IHNhZmVfdXBkYXRlKCRjb25maWdbJ3RhYmxlJ10sIHNw
cmludGYoJGNvbmZpZ1snc3FsJ10sICRkYXRhLCAkdGVtcGxhdGVUeXBlKSwgImBuYW1lYCA9
ICciLiR0ZW1wbGF0ZU5hbWUuIiciKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAkc3VjY2VzcyA9ICgkcmVzdWx0KT8xOjA7CiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRyZXN1bHQgPSBz
YWZlX2luc2VydCgkY29uZmlnWyd0YWJsZSddLCBzcHJpbnRmKCRjb25maWdbJ3NxbCddLCAk
ZGF0YSwgJHRlbXBsYXRlVHlwZSkuIiwgYG5hbWVgID0gJyIuJHRlbXBsYXRlTmFtZS4iJyIp
OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzdWNjZXNzID0gKCRyZXN1bHQp
PzE6MDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgIAkJICAgICAgICAgICAg
fQoKICAgIAkJICAgICAgICAgICAgJHN1Y2Nlc3MgPSB0cnVlOwogICAgICAgICAgICAgICAg
ICAgICAgICBpZiAoJHN1Y2Nlc3MpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBy
aW50ICI8bGk+PHNwYW4gY2xhc3M9J3N1Y2Nlc3MnPlN1Y2Nlc3NmdWxseSBpbXBvcnRlZDwv
c3Bhbj4gZmlsZSAnIi4kZmlsZW5hbWUuIic8L2xpPiI7CiAgICAgICAgICAgICAgICAgICAg
ICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmludCAiPGxpPjxz
cGFuIGNsYXNzPSdmYWlsdXJlJz5GYWlsZWQgaW1wb3J0aW5nPC9zcGFuPiBmaWxlICciLiRm
aWxlbmFtZS4iJzwvbGk+IjsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBwcmludCAi
CiAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICI7CiAgICAgICAg
ICAgIH0KICAgICAgICB9CiAgICB9CiI7czo4OiJoZWxwX3JhdyI7czoxODQ2OiJoMS4gSW1w
b3J0L0V4cG9ydCBUZW1wbGF0ZXMgYXMgRmlsZXMKCnAuIFRoaXMgcGx1Z2luIGNyZWF0ZXMg
YSBuZXcgKlRlbXBsYXRlcyogdGFiIHVuZGVyICpFeHRlbnNpb25zKiwgZW5hYmxpbmcgdGhl
IHRyaXZpYWwgZXhwb3J0IG9mICpQYWdlcyosICpGb3JtcyosIGFuZCAqU3R5bGUqIHJ1bGVz
IHRvIGEgc3BlY2lmaWVkIGZvbGRlciBmb3IgY29udmVuaWVudCBlZGl0aW5nLCBhbmQgdGhl
IHN1YnNlcXVlbnQgaW1wb3J0IG9mIG5ldyBhbmQgdXBkYXRlZCBmaWxlcy4KCmgyLiBSZXF1
aXJlbWVudHMKCnAuIFRoaXMgcGx1Z2luIGhhcyBiZWVuIHRlc3RlZCB1c2luZyBUZXh0cGF0
dGVybiAqNC4wLjQqLiBJdCBtaWdodCB3b3JrIG9uIGVhcmxpZXIgdmVyc2lvbnMsIGJ1dCBu
byBwcm9taXNlcyEKCnAuIFJlZ2FyZGxlc3Mgb2Ygd2hlcmUgaXQncyBiZWVuIHRlc3RlZCwg
dGhpcyBwbHVnaW4gbWVzc2VzIGFyb3VuZCB3aXRoIHlvdXIgZGF0YWJhc2UuCgpwLiBfRG8g
bm90IHVzZSBpdCB3aXRob3V0IGJhY2tpbmcgdXAgeW91ciBkYXRhYmFzZV8uCgpoMi4gU2V0
dXAKCnAuIEJ5IGRlZmF1bHQsIHRoZSBwbHVnaW4gbG9va3MgZm9yIGEgZGlyZWN0b3J5IG5h
bWVkICpfdGVtcGxhdGVzKiBpbiB5b3VyIFRleHRwYXR0ZXJuIHJvb3QgZGlyZWN0b3J5LiBJ
ZiB0aGUgZGlyZWN0b3J5IGRvZXNuJ3QgZXhpc3QsIHRoZSBwbHVnaW4gd2lsbCBhdHRlbXB0
IHRvIGNyZWF0ZSBpdCB0aGUgZmlyc3QgdGltZSB5b3UgZXhwb3J0IHlvdXIgdGVtcGxhdGVz
LiBUaGlzIGNyZWF0aW9uIHdpbGwgYWxtb3N0IGNlcnRhaW5seSBmYWlsLCBzaW5jZSB0aGUg
VGV4dHBhdHRlcm4gcm9vdCBkaXJlY3RvcnkgdXN1YWxseSBpc24ndCB3cml0YWJsZS4gSW4g
dGhhdCBjYXNlLCB5b3UnbGwgbmVlZCB0byBjcmVhdGUgdGhpcyBkaXJlY3RvcnksIGFuZCBl
bnN1cmUgdGhhdCB0aGUgd2ViIHNlcnZlciBoYXMgd3JpdGUgYWNjZXNzLgoKcC4gSWYgeW91
ciBUZXh0cGF0dGVybiByb290IGlzIGxvY2F0ZWQgYXQgKi91c2Vycy9ob21lL215dXNlci93
ZWIvcHVibGljLyosIHRoZSBmb2xsb3dpbmcgY29tbWFuZHMgY291bGQgYmUgdXNlZDoKCmJj
LiBjZCAvdXNlcnMvaG9tZS9teXVzZXIvd2ViL3B1YmxpYy8KbWtkaXIgX3RlbXBsYXRlcwpj
aG1vZCA3NzcgX3RlbXBsYXRlcwoKaDIuIFVzYWdlCgpwLiBJbXBvcnQgLSBzZWxlY3QgYSB0
ZW1wbGF0ZSB0byBpbXBvcnQgZnJvbSB0aGUgZHJvcGRvd24gb24gdGhlICpUZW1wbGF0ZXMq
IHRhYiBhbmQgcHJlc3MgX0dvXy4gQmVmb3JlIGltcG9ydGluZywgdGhlIHBsdWdpbiB3aWxs
IGRvIGFuIGV4cG9ydCBvZiB5b3VyIGluc3RhbGxlZCB0ZW1wbGF0ZXMgdG8gYSBmb2xkZXIg
Y2FsbGVkICpwcmVpbXBvcnQtZGF0YSouCgpwLiBFeHBvcnQgLSB0eXBlIGluIGFuIGV4cG9y
dCBuYW1lIGFuZCBwcmVzcyBfR29fLiBLZWVwIGluIG1pbmQgdGhhdCBuYW1pbmcgYW4gZXhw
b3J0IHRoZSBzYW1lIGFzIGFuIGV4aXNpdGluZyBmb2xkZXIgd2lsbCBvdmVyd3JpdGUgdGhl
IGNvbnRlbnRzLgoKcC4gVGVtcGxhdGVzIHN1YiBmb2xkZXJzIGFuZCBmaWxlIG5hbWluZyBj
b252ZW50aW9uOgoKKiBfdGVtcGxhdGVzCioqIGZvcm1zCioqKiBjb21tZW50cy5jb21tZW50
LmZvcm0KKioqIGRlZmF1bHQuYXJ0aWNsZS5mb3JtCioqKiBwbGFpbmxpbmtzLmxpbmtzLmZv
cm0KKiogcGFnZXMKKioqIGRlZmF1bHQucGFnZQoqKiogZXJyb3JfZGVmYXVsdC5wYWdlCioq
IHN0eWxlCioqKiBkZWZhdWx0LmNzcwoKaDIuIENyZWRpdHMKCnAuIFBsdWdpbiBjb2RlIGJh
c2VkIG9uIG1jd190ZW1wbGF0ZXMgYnkgIk1pa2UgV2VzdCI6aHR0cDovL21pa2V3ZXN0Lm9y
Zy8uIjtzOjM6Im1kNSI7czozMjoiYzczNWY2ODYyN2FhYWY4ZmJhMDA0YWIyNjg4MzdkZDQi
O30=
