AF:
NF:0
PS:10
SRH:1
SFN:
DSR:
MID:<20070613112231.6d4cae21@ripper.onstor.net>
CFG:
PT:0
S:andy.sharp@onstor.com
RQ:
SSV:onstor-exch02.onstor.net
NSV:
SSH:
R:<larry.scheer@onstor.com>
MAID:1
X-Sylpheed-Privacy-System:
X-Sylpheed-Sign:0
SCF:#mh/Mailbox/sent
RMID:#mh/Mailbox/sent	0	20070613104314.0ac525d4@ripper.onstor.net
X-Sylpheed-End-Special-Headers: 1
Date: Wed, 13 Jun 2007 11:32:42 -0700
From: Andrew Sharp <andy.sharp@onstor.com>
To: Larry Scheer <larry.scheer@onstor.com>
Subject: Re: try out this one
Message-ID: <20070613113242.3f941f19@ripper.onstor.net>
In-Reply-To: <20070613104314.0ac525d4@ripper.onstor.net>
References: <20070613104314.0ac525d4@ripper.onstor.net>
Organization: Onstor
X-Mailer: Sylpheed-Claws 2.6.0 (GTK+ 2.8.20; x86_64-pc-linux-gnu)
Mime-Version: 1.0
Content-Type: multipart/mixed; boundary=MP_uQkAtg8je96r2EqDAM1XHOu

--MP_uQkAtg8je96r2EqDAM1XHOu
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

On Wed, 13 Jun 2007 10:43:14 -0700 Andrew Sharp <andy.sharp@onstor.com>
wrote:

> Duuude,
> 
> You have to try out this version of cw_install.sh.  Let me know what
> you think ~:^)
> 
> a

Try this one instead
--MP_uQkAtg8je96r2EqDAM1XHOu
Content-Type: application/x-shellscript; name=cw_install.sh
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=cw_install.sh

IyEvYmluL3NoCgojIHNldCAteAoKQUdJTEVfRElSUz0iLyAvdXNyIC90bXAgL3ZhciAvdXNyL2xv
Y2FsL2FnaWxlIC91c3IvbG9jYWwvYWdpbGUvY29uZiIKT05TVE9SX0RJUlM9Ii8gL3RtcCAvdmFy
IC9vbnN0b3IvY29uZiIKT0xEX1BBUlRfVEFCUz0iYSBkIGUgZiBnIGgiCkRZTl9QQVJUX1RBQlM9
ImEgZCBlIGYiCkxBWV9TVEFUVVM9L3RtcC8ubHN0YXRlJCQKREVTVF9ESVI9L21udDIKTE9HPS92
YXIvbG9nL3N5c191cGdyYWRlLmxvZwojREVCVUdfQ1c9eWVzCkNXX05PX0xPRz1ub2xvZwoKIyBV
UkxzCkRFRl9GVFBfVVJMPSJmdHA6Ly9zdXBwb3J0Lm9uc3Rvci5jb20vb3V0Ym91bmQvc29mdHdh
cmUvRXZlck9OIgpERUZfRlRQX1VSTF9JTlQ9ImZ0cDovL3VwZ3JhZGU6cGFzc3dvcmRAMTAuMi4w
LjIvUEFUQ0hFUyIKREVGX0hUVFBfVVJMPSJodHRwOi8vc3VwcG9ydC5vbnN0b3IuY29tL291dGJv
dW5kL3NvZnR3YXJlL0V2ZXJPTiIKCiMgdmFyaWFibGUgc2V0IGJ5IHRoZSBtYWtlZmlsZQpESVNU
Ul9OPVIzLjAuMC4wQkNEQkctMDYxMzA3LnRhci5negpESVNUUl9TPTQ2NzI4Ck5fVkVSUz0zLjAu
MC4wCkJVSUxEX1RZUEU9ZGJnCgpjdygpIHsKCWlmIFsgIiRERUJVR19DVyIgXSA7IHRoZW4KCQll
Y2hvICIkKiIgPi9kZXYvdHR5CgkJZWNobyAtbiAiZGVidWcgIiA+L2Rldi90dHkKCQlyZWFkIGdh
ciA8IC9kZXYvdHR5CglmaQp9CgojIHByaW50IG91dCBhIHVzYWdlIG1lc3NhZ2UgdG8gYW5ub3kg
cGVvcGxlCiMgaSBtZWFuLCB0byBpbmZvcm0gcGVvcGxlCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMKdXNhZ2UoKSB7CgllY2hvICJ1c2FnZTogJDAiCgllY2hvICIg
ICAgICAgU3RhbmRhbG9uZSB1cGdyYWRlIHByb2dyYW0gd2lsbCBhc2sgZm9yIGluZm9ybWF0aW9u
IGJlZm9yZSIKCWVjaG8gIiAgICAgICBwcm9jZWVkaW5nIHRvIGRvd25sb2FkIHVwZ3JhZGUgZGlz
dHJpYnV0aW9uIGFuZCBpbnN0YWxsIGl0IgoJZWNobyAiICAgICAgIG9uIHRoZSBzZWNvbmRhcnkg
Q29tcGFjdCBGbGFzaCBjYXJkLiIKfQoKCnJlY29yZCgpIHsKCWlmIFsgIiRDV19OT19MT0ciIF0g
OyB0aGVuCgkJdGVlX2NtZD0iIgoJZWxzZQoJCXRlZV9jbWQ9IiB8IHRlZSAtYSAkTE9HIgoJZmkK
CglldmFsIGVjaG8gIiRAIiAkdGVlX2NtZAoKfQoKIyBzaGVsbCB2ZXJzaW9uIG9mIGZsb29yZigz
KSBDIGxpYnJhcnkgZnVuY3Rpb24KIyByb3VuZHMgaXQncyBhcmd1bWVudCBkb3duIHRvIHRoZSBu
ZWFyZXN0IHdob2xlIGludGVnZXIKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIwpmbG9vcmYoKSB7CgkjICQxIGV4cHJlc3Npb24gdG8gYmUgZXZhbHVhdGVkIGFuZCBy
b3VuZGVkIGRvd24gdG8gaW50ZWdyYWwgdmFsdWUKCgllY2hvIHwgYXdrICJ7Zm9vID0gJDE7IHBy
aW50IGludChmb28pfSIKfQoKCiMgZmxvYXRpbmcgcG9pbnQgdmVyc2lvbiBvZiBleHByCiMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKZmV4cHIoKSB7CgkjICQxIGV4
cHJlc3Npb24gdG8gYmUgZXZhbHVhdGVkCgllY2hvIHwgYXdrICJ7Zm9vID0gJDE7IHByaW50IGZv
b30iCn0KCgojIGZpbmRzIHdoaWNoIENGIGNhcmQgeW91IGFyZSBib290ZWQgZnJvbSB1bmRlciBP
cGVuQlNECiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKZ2V0X3Jv
b3RfZGlzaygpIHsKCWZvbz0iYGRmIC8gfCBncmVwIC9kZXZgIgoJZXhwciAiJGZvbyIgXDogJy9k
ZXYvd2RcKFswMV1cKWEnCn0KCgojIGNoZWNrIHRoYXQgdXNlciBpc24ndCB0cnlpbmcgdG8gZm9y
bWF0IGEgZmxhc2ggY2FyZCB0aGF0IGlzIHRoZWlyCiMgcm9vdCBmaWxlIHN5c3RlbS4gIHRoZXkg
Y291bGQgYmUgcnVubmluZyBORlMgcm9vdC4KIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIwpzYW5pdHlfY2hlY2tfZGlzaygpIHsKCWlmIFsgImBnZXRfcm9vdF9kaXNr
YCIgLWVxICIkMSIgXSA7IHRoZW4KCQlyZXR1cm4gMQoJZmkKCXJldHVybiAwCn0KCgojIGNoZWNr
IGZvciBhIHNwZWNpZmljIGZpbGUgdG8gc2VlIGlmIGFyZyBpcyBhIHJlbGVhc2UgZGlyZWN0b3J5
CiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKc2FuaXR5X2NoZWNr
X3NvZnRfZGlyKCkgewoJdGVzdCAtZiAkMS9ldGMvbWRyaXZlX2ZzdGFiCn0KCgojIHJlbW91bnRz
IGl0J3MgYXJndW1lbnQgYXMgcncvcm8gLS0gc2Vjb25kIGFyZ3VtZW50IG11c3QgYmUgYSBtb3Vu
dCBwb2ludAojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCmh3X2lu
aXRpYWxzKCkgewoJY2FzZSAiYHVuYW1lIC1zYCIgaW4KCUxpbnV4KQoJCSMgTGludXggb25seSBy
dW5zIG9uIGJvYmNhdHMgb3IgY291Z2FycwoJCXVuYW1lIC1hIHwgZ3JlcCAtcSBCT0JDQVQgPi9k
ZXYvbnVsbCAmJiB7CgkJCWVjaG8gQkwgIyBidXR0bG9hZAoJCQlyZXR1cm4KCQl9CgkJZWNobyBD
RwoJCTs7CglPcGVuQlNEKQoJCSMgT3BlbkJTRCBvbmx5IHJ1bnMgb24gYm9iY2F0cyBvciBjaGVl
dGFocwoJCXVuYW1lIC12IHwgZ3JlcCAtcSBCT0JDQVQgJiYgewoJCQllY2hvIEJDCgkJCXJldHVy
bgoJCX0KCQllY2hvIENICgkJOzsKCSopIHJldHVybiAxIDs7Cgllc2FjCn0KCgojIHJlbW91bnRz
IGl0J3MgYXJndW1lbnQgYXMgcncvcm8gLS0gc2Vjb25kIGFyZ3VtZW50IG11c3QgYmUgYSBtb3Vu
dCBwb2ludAojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCnJlbW91
bnQoKSB7CgljYXNlICJgdW5hbWUgLXNgIiBpbgoJTGludXgpCgkJbW91bnQgLW8gcmVtb3VudCwk
MSAkMgoJCTs7CglPcGVuQlNEKQoJCWNhc2UgJDEgaW4KCQlydykgbW50X2FyZz0tdXcgOzsKCQly
bykgbW50X2FyZz0tdXIgOzsKCQkqKSByZXR1cm4gMSA7OwoJCWVzYWMKCQltb3VudCAkbW50X2Fy
ZyAkMgoJCTs7CgkqKSByZXR1cm4gMSA7OwoJZXNhYwp9CgoKIyByZW1vdW50cyBpdCdzIGFyZ3Vt
ZW50IGFzIHJ3IC0tIGFyZ3VtZW50IG11c3QgYmUgYSBtb3VudCBwb2ludAojIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCnJlbW91bnRfcncoKSB7CglyZW1vdW50IHJ3
ICQxCn0KCgojIHJlbW91bnRzIGl0J3MgYXJndW1lbnQgYXMgcm8gLS0gYXJndW1lbnQgbXVzdCBi
ZSBhIG1vdW50IHBvaW50CiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMKcmVtb3VudF9ybygpIHsKCXJlbW91bnQgcm8gJDEKfQoKCiMgZ2V0cyBwYXJ0aXRpb24gbGV0
dGVyIG9mIG1vdW50IHBvaW50IHVuZGVyIE9wZW5CU0QKIyBvbGQgcGFydGl0aW9uIHNjaGVtZQoj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCmdldF9vbGRfcGFydF9s
ZXR0ZXIoKSB7CgoJY2FzZSAkMSBpbgoJLykKCQllY2hvICdhJwoJCTs7CgkvdXNyKQoJCWVjaG8g
J2QnCgkJOzsKCS90bXApCgkJZWNobyAnZScKCQk7OwoJL3ZhcikKCQllY2hvICdmJwoJCTs7Cgkv
dXNyL2xvY2FsL2FnaWxlKQoJCWVjaG8gJ2cnCgkJOzsKCS91c3IvbG9jYWwvYWdpbGUvY29uZikK
CQllY2hvICdoJwoJCTs7Cgllc2FjCn0KCgojIGdldHMgcGFydGl0aW9uIGxldHRlciBvZiBtb3Vu
dCBwb2ludCB1bmRlciBPcGVuQlNECiMgZHluYW1pYyBwYXJ0aXRpb24gc2NoZW1lCiMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKZ2V0X25ld19wYXJ0X2xldHRlcigp
IHsKCgljYXNlICQxIGluCgkvKQoJCWVjaG8gJ2EnCgkJOzsKCS92YXIpCgkJZWNobyAnZCcKCQk7
OwoJL3RtcCkKCQllY2hvICdlJwoJCTs7Cgkvb25zdG9yL2NvbmYpCgkJZWNobyAnZicKCQk7OwoJ
ZXNhYwp9CgoKIyB1bm1vdW50IHRoZSBwYXJ0aXRpb25zCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMKdW5tb3VudF9wYXJ0aXRpb25zKCkgewoJZm9yIHBhcnQgaW4g
ZiBlIGQgYSA7IGRvCgkJIyBzdXBwcmVzcyB0aGUgd2hpbmluZy4uLgoJCXVtb3VudCAvZGV2L3dk
JHtkaXNrfSR7cGFydH0gPi9kZXYvbnVsbCAyPiYxCglkb25lCn0KCgojIGdlbmVyYWwgY2xlYW51
cCBpbiBldmVudCBvZiBpbnRlcnJ1cHQKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIwplcnJvcl9jbGVhbnVwKCkgewoKCXJlY29yZCAtbiAiSW50ZXJydXB0IHJlY2Vp
dmVkLiAgVXBncmFkZSBwcm9ncmFtIGV4aXRpbmcuLi4iCgoJaWYgWyAiJGxheW91dF9waWQiIF0g
OyB0aGVuCgkJd2FpdCAkbGF5b3V0X3BpZAoJZmkKCWNkIC8KCgkjIHVubW91bnQgcGFydGl0aW9u
cyB0aGF0IG1pZ2h0IGJlIG1vdW50ZWQKCXVubW91bnRfcGFydGl0aW9ucwoKCWlmIFsgIiR0ZGly
IiBdIDsgdGhlbgoJCSMgZGVsZXRlIHRoZSBkaXN0cmlidXRpb24gdGFyIGJhbGwKCQlyZW1vdW50
X3J3ICIkdGRpciIgJiYgewoJCQljdyAicm0gJHt0ZGlyfS8ke3RiYWxsfSIKCQkJcm0gIiR7dGRp
cn0vJHt0YmFsbH0iIHx8IHsKCQkJCXJlY29yZCAiRmFpbGVkIHRvIHJlbW92ZSAke3RkaXJ9LyR7
dGJhbGx9IG9uIGNsZWFudXAgLSByZW1vdmUgYnkgaGFuZCBpZiBwb3NzaWJsZS4iCgkJCX0KCQkJ
cmVtb3VudF9ybyAiJHRkaXIiCgkJfQoJZmkKCgkjIGRlbGV0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5
CglyZW1vdW50X3J3IC8gJiYgewoJCXJtZGlyICRERVNUX0RJUiAyPi9kZXYvbnVsbAoJCXJlbW91
bnRfcm8gLwoJfQoJcmVjb3JkICJieWUuIgp9CgoKIwojIGNhbGN1bGF0ZXMgYW5kIGxheXMgZG93
biB0aGUgT3BlbkJTRCBkaXNrIHBhcnRpdGlvbiBsYWJlbAojCiMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIyAgV0FSTklORzog
Y2hhbmdlcyB0byB0aGlzIGZ1bmN0aW9uIG11c3QgYmUgbWlycm9yZWQgaW4gICAgIyMKIyMgIG5m
eC10cmVlL2NvZGUvc3NjLW5meHNoL2NtZF9mbGFzaC5jIEFORCAgICAgICAgICAgICAgICAgICMj
CiMjICBuZngtdHJlZS9Ub29scy9mbGFzaF9pbnN0YWxsISEhICAgICAgICAgICAgICAgICAgICAg
ICAgICAjIwojIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIyMKIyMgIFlPVSBIQVZFIEJFRU4gV0FSTkVEICEhISAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICMjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpkaXNrX25hbWUoKSB7CgoJIyBnZXQgZGlzayBz
aXplIC0geXVrIQoJZGlza2xhYmVsIC1uIC1FIHdkJHtkaXNrfSA8PFBVTlRFUiB8IGdyZXAgJ3Rv
dGFsIHNlY3RvcnMnID4vdG1wL2Rpc2tfc2l6ZQoJZyBkCglECglwClBVTlRFUgoJZGlza19ibG9j
a3M9YHNlZCAicy90b3RhbCBzZWN0b3JzOiAvLyIgL3RtcC9kaXNrX3NpemVgCglybSAtZiAvdG1w
L2Rpc2tfc2l6ZQoKCUNGX1NJWkVfTUlOPWBleHByIDQ4MCBcKiAyMDQ4YAoJZHNpemU9YGV4cHIg
JGRpc2tfYmxvY2tzIC8gMjA0OGAKCgkjIG1ha2Ugc3VyZSBpdCdzIG9mIG1pbmltdW0gc2l6ZQoJ
aWYgWyAkZGlza19ibG9ja3MgLWxlICRDRl9TSVpFX01JTiBdIDsgdGhlbgoJCXJlY29yZCAiQ0Yg
c2l6ZSAke2RzaXplfU1CIGlzIHRvbyBzbWFsbCwgc29ycnkhIiA+L2Rldi90dHkKCQlyZXR1cm4g
MQoJZmkKCgkjIGFubm91bmNlIHRoaW5ncyB0byB0aGUgd29ybGQKCWR0YWJfbmFtZT0iY2YkZHNp
emUubGFiZWwiCglyZWNvcmQgIkNGIGNhcmQgaXMgJGRzaXplIE1pQiIgPi9kZXYvdHR5CgkjIHJl
Y29yZCAiQ3JlYXRpbmcgbmV3IGRpc2sgbGFiZWwgJGR0YWJfbmFtZSIgPi9kZXYvdHR5CgoJU0VD
U19QRVJfQ1lMPTEwMDgKCUNZTFNfUEVSX01CPTIuMDMxNwoJbmN5bD1gZXhwciAkZGlza19ibG9j
a3MgLyAkU0VDU19QRVJfQ1lMYAoJdG90X2Jsb2Nrcz1gZXhwciAkbmN5bCBcKiAkU0VDU19QRVJf
Q1lMYAoKCWVjaG8gInR5cGU6IEVTREkiCgllY2hvICJkaXNrOiBFU0RJL0lERSBkaXNrIgoJcHJp
bnRmICJsYWJlbDogJXNcbiIgJGR0YWJfbmFtZQoJZWNobyAiZmxhZ3M6IgoJZWNobyAiYnl0ZXMv
c2VjdG9yOiA1MTIiCgllY2hvICJzZWN0b3JzL3RyYWNrOiA2MyIKCWVjaG8gInRyYWNrcy9jeWxp
bmRlcjogMTYiCglwcmludGYgInNlY3RvcnMvY3lsaW5kZXI6ICVkXG4iICRTRUNTX1BFUl9DWUwK
CXByaW50ZiAiY3lsaW5kZXJzOiAlZFxuIiAkbmN5bAoJcHJpbnRmICJ0b3RhbCBzZWN0b3JzOiAl
ZFxuIiAkdG90X2Jsb2NrcwoJZWNobyAicnBtOiAzNjAwIgoJZWNobyAiaW50ZXJsZWF2ZTogMSIK
CWVjaG8gInRyYWNrc2tldzogMCIKCWVjaG8gImN5bGluZGVyc2tldzogMCIKCWVjaG8gImhlYWRz
d2l0Y2g6IDAgICAgICAgICAgICMgbWljcm9zZWNvbmRzIgoJZWNobyAidHJhY2stdG8tdHJhY2sg
c2VlazogMCAgIyBtaWNyb3NlY29uZHMiCgllY2hvICJkcml2ZWRhdGE6IDAiCgllY2hvCgllY2hv
ICIxNiBwYXJ0aXRpb25zOiIgIyBwZmZ0LCB3aHkgMTY/CgllY2hvICIjICAgICAgICBzaXplICAg
b2Zmc2V0ICAgIGZzdHlwZSAgIFtmc2l6ZSBic2l6ZSAgIGNwZ10iCgoJIyBzd2FwCgkjIGNhbGN1
bGF0ZSBzaXplIG9mIHN3YXAuICBzaG91bGQgYmUgYWJvdXQgNiUsIG1heCAzME1CCgkjCgkjIHJv
dW5kIHBzaXplIGRvd24gdG8gdGhlIG5lYXJlc3QgaW50ZWdlciBzbyBvdXIgcGFydGl0aW9ucyBh
cmUKCSMgb24gY3lsaW5kZXIgYm91bmRhcmllcy4gIE90aGVyd2lzZSBCU0Qgd2FzdGVzIHNwYWNl
LgoJIwoJcm9vdF9zej0kbmN5bAoKCXBzaXplPWBmbG9vcmYgIi4wNiAqICRuY3lsImAKCWlmIFsg
JHBzaXplIC1ndCBgZmxvb3JmICIzMC4wICogJENZTFNfUEVSX01CImAgXSA7IHRoZW4KCQlwc2l6
ZT1gZmxvb3JmICIzMC4wICogJENZTFNfUEVSX01CImAKCWZpCglzd2FwX3N6PSRwc2l6ZQoJcm9v
dF9zej1gZXhwciAkcm9vdF9zeiAtICRwc2l6ZWAKCgkjIC90bXAKCSMgY2FsY3VsYXRlIHNpemUg
Zm9yIHRtcC4gIGFwcHJveC4gNCUKCSMvCglwc2l6ZT1gZmxvb3JmICIuMDQgKiAkbmN5bCJgCgl0
bXBfc3o9JHBzaXplCglyb290X3N6PWBleHByICRyb290X3N6IC0gJHBzaXplYAoKCSMgL3ZhciAt
IHJ3CgkjIGNhbGN1bGF0ZSBzaXplIGZvciB2YXIuICBhcHByLiAxNiUKCSMKCXBzaXplPWBmbG9v
cmYgIi4xNiAqICRuY3lsImAKCXZhcl9zej0kcHNpemUKCXJvb3Rfc3o9YGV4cHIgJHJvb3Rfc3og
LSAkcHNpemVgCgoJIyAvb25zdG9yL2NvbmYKCSMgY2FsY3VsYXRlIHRoZSBzaXplIG9mIHJ3IGNv
bmYgcGFydGl0aW9uOiAxMCUKCSMKCXBzaXplPWBmbG9vcmYgIi4xMCAqICRuY3lsImAKCWNvbmZf
c3o9JHBzaXplCgoJIyByb290IC0gcm8KCSMgY2FsY3VsYXRlIHJvb3Qgc2l6ZSAocm9vdCwgL3Vz
ciBhbmQgL29uc3RvciBub3cgZm9sZGVkIHRvZ2V0aGVyKQoJIyByb290IGdldHMgdGhlIHJlbWFp
bmRlciwgYWJvdXQgNjQlCgkjCglyb290X3N6PWBleHByICRyb290X3N6IC0gJHBzaXplYAoKCSMg
cm9vdCAtIHIwCgkjIHdyaXRlIHJvb3QgcGFydGl0aW9uIGVudHJ5CgkjCglwcmludGYgIiAgYTog
JThkICAgICAgICAwICAgIDQuMkJTRCAgICAgMTAyNCAgODE5MiAgICAxNiAgIiBcCgkJYGV4cHIg
JHJvb3Rfc3ogXCogJFNFQ1NfUEVSX0NZTGAKCXByaW50ZiAiIyAoQ3lsLiAgICAwIC0gJTRkKVxu
IiBgZXhwciAkcm9vdF9zeiAtIDFgCglwcHNpemU9JHJvb3Rfc3oKCgkjIHN3YXAKCSMgd3JpdGUg
c3dhcCBwYXJ0aXRpb24gZW50cnkKCSMKCXByaW50ZiAiICBiOiAlOGQgJThkICAgICAgc3dhcCAg
ICAgICAgICAgICAgICAgICAgICAgIiBcCgkJYGV4cHIgJHN3YXBfc3ogXCogJFNFQ1NfUEVSX0NZ
TGAgYGV4cHIgJHBwc2l6ZSBcKiAkU0VDU19QRVJfQ1lMYAoJcHJpbnRmICIjIChDeWwuICU0ZCAt
ICU0ZClcbiIgJHBwc2l6ZSBgZXhwciAkcHBzaXplICsgJHN3YXBfc3ogLSAxYAoJcHBzaXplPWBl
eHByICRwcHNpemUgKyAkc3dhcF9zemAKCgkjIHdob2xlCgkjCglwcmludGYgIiAgYzogJThkICAg
ICAgICAwICAgIHVudXNlZCAgICAgICAgMCAgICAgMCAgICAgICAgIiAkdG90X2Jsb2NrcwoJcHJp
bnRmICIjIChDeWwuICAgIDAgLSAlNGQpXG4iIGBleHByICRuY3lsIC0gMWAKCgkjIC92YXIgLSBy
dwoJIyB3cml0ZSB0bXAgcGFydGl0aW9uIGVudHJ5CgkjCglwcmludGYgIiAgZDogJThkICU4ZCAg
ICA0LjJCU0QgICAgIDEwMjQgIDgxOTIgICAgMTYgICIgXAoJCWBleHByICR2YXJfc3ogXCogJFNF
Q1NfUEVSX0NZTGAgYGV4cHIgJHBwc2l6ZSBcKiAkU0VDU19QRVJfQ1lMYAoJcHJpbnRmICIjIChD
eWwuICU0ZCAtICU0ZClcbiIgJHBwc2l6ZSBgZXhwciAkcHBzaXplICsgJHZhcl9zeiAtIDFgCglw
cHNpemU9YGV4cHIgJHBwc2l6ZSArICR2YXJfc3pgCgoJIyAvdG1wIC0gcncKCSMgd3JpdGUgdmFy
IHBhcnRpdGlvbiBlbnRyeQoJIwoJcHJpbnRmICIgIGU6ICU4ZCAlOGQgICAgNC4yQlNEICAgICAx
MDI0ICA4MTkyICAgIDE2ICAiIFwKCQlgZXhwciAkdG1wX3N6IFwqICRTRUNTX1BFUl9DWUxgIGBl
eHByICRwcHNpemUgXCogJFNFQ1NfUEVSX0NZTGAKCXByaW50ZiAiIyAoQ3lsLiAlNGQgLSAlNGQp
XG4iICRwcHNpemUgYGV4cHIgJHBwc2l6ZSArICR0bXBfc3ogLSAxYAoJcHBzaXplPWBleHByICRw
cHNpemUgKyAkdG1wX3N6YAoKCSMgL29uc3Rvci9jb25mIC0gcncKCSMgd3JpdGUgb25zdG9yIGNv
bmYgcGFydGl0aW9uIGVudHJ5CgkjCglwcmludGYgIiAgZjogJThkICU4ZCAgICA0LjJCU0QgICAg
IDEwMjQgIDgxOTIgICAgMTYgICIgXAoJCWBleHByICRjb25mX3N6IFwqICRTRUNTX1BFUl9DWUxg
IGBleHByICRwcHNpemUgXCogJFNFQ1NfUEVSX0NZTGAKCXByaW50ZiAiIyAoQ3lsLiAlNGQgLSAl
NGQpXG4iICRwcHNpemUgYGV4cHIgJHBwc2l6ZSArICRjb25mX3N6IC0gMWAKCXBwc2l6ZT1gZXhw
ciAkcHBzaXplICsgJGNvbmZfc3pgCgoJcmV0dXJuIDAKfQoKCiMgcGxvcCB0aGUgbGF5b3V0IGNh
bGN1bGF0ZWQgaW4gZGlzay1uYW1lIGRvd24gb250byB0aGUgQ0YgY2FyZAojIE9wZW5CU0Qgc3R5
bGUuICBhc3luYyBzdXBwb3J0IGluY2x1ZGVkLiAgYXQgbm8gZXh0cmEgY2hhcmdlLgojIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCmRvX2xheW91dCgpIHsKCSMgc3Rk
aW4gaXMgZGlzayBsYWJlbCBkZXNjcmlwdGlvbgoJIyAkMSA9IFBBUlRfVEFCUwoJIyAkMiA9IERJ
UkVDVE9SSUVTCgkjICQzID0gcGFydF9sZXR0ZXJfZnVuY3Rpb24KCgllY2hvICJzdGFydGVkIGJl
Z2luIiA+ICRMQVlfU1RBVFVTCgoJIyBjdyAiZGlza2xhYmVsIC1SIHdkJHtkaXNrfSAvdG1wL2Rs
YWJlbCIKCWRpc2tsYWJlbCAtUiB3ZCR7ZGlza30gL3RtcC9kbGFiZWwgfHwgewoJCWVjaG8gImZp
bmlzaGVkIGZhaWxlZCIgPiAkTEFZX1NUQVRVUwoJCXJldHVybiAxCgl9CgoJZWNobyAic3RhcnRl
ZCBkaXNrbGFiZWwiID4gJExBWV9TVEFUVVMKCglmb3IgcGFydCBpbiAkMSA7IGRvCgkJIyBjdyAi
bmV3ZnMgLW0gMCAtbyB0aW1lIC1xIC9kZXYvcndkJHtkaXNrfSR7cGFydH0iCgkJbmV3ZnMgLW0g
MCAtbyB0aW1lIC1xIC9kZXYvcndkJHtkaXNrfSR7cGFydH0gPi9kZXYvbnVsbCB8fCB7CgkJCWVj
aG8gImZpbmlzaGVkIGZhaWxlZCIgPiAkTEFZX1NUQVRVUwoJCQlyZXR1cm4gMQoJCX0KCWRvbmUK
CgllY2hvICJzdGFydGVkIG1rZnMiID4gJExBWV9TVEFUVVMKCglmb3IgZCBpbiAkMiA7IGRvCgkJ
aWYgWyAiJGQiID0gLyBdIDsgdGhlbgoJCQlyZW1vdW50X3J3IC8KCQlmaQoJCW1rZGlyIC1wICR7
REVTVF9ESVJ9JHtkfQoJCWV2YWwgcGFydD1gJDMgJGRgCgkJIyBjdyAibW91bnQgL2Rldi93ZCR7
ZGlza30ke3BhcnR9ICR7REVTVF9ESVJ9JHtkfSIKCQltb3VudCAvZGV2L3dkJHtkaXNrfSR7cGFy
dH0gJHtERVNUX0RJUn0ke2R9CgkJaWYgWyAiJGQiID0gLyBdIDsgdGhlbgoJCQlyZW1vdW50X3Jv
IC8KCQlmaQoJZG9uZQoKCWVycj0kPwoJaWYgWyAiJGVyciIgLWVxIDAgXSA7IHRoZW4KCQllY2hv
ICJmaW5pc2hlZCBwYXNzIiA+ICRMQVlfU1RBVFVTCgllbHNlCgkJZWNobyAiZmluaXNoZWQgZmFp
bCIgPiAkTEFZX1NUQVRVUwoJZmkKCglyZXR1cm4gJGVycgp9CgoKIyByZXR1cm4gdGhlIGF2YWls
YWJsZSBzcGFjZSBpbiBNaUIgb2YgYSBmaWxlc3lzdGVtCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMKZ2V0X2ZyZWVfc3BhY2UoKSB7Cglmcz0kMQoKCWRmIC1rIHwg
Z3JlcCAnXi9kZXYnIHwgd2hpbGUgcmVhZCBkZXYgc3ogdXNlZCBhdmFpbCBjcmFjayBtcHQgOyBk
bwoJCWlmIFsgIiRtcHQiID0gIiRmcyIgXSA7IHRoZW4KCQkJZWNobyAkYXZhaWwKCQlmaQoJZG9u
ZQp9CgoKIyBmaW5kIGEgZmlsZXN5c3RlbSB3aXRoIG1lZ2FieXRlcyBvZiBmcmVlIHNwYWNlCiMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKZmluZHNwYWNlKCkgewoJ
ZmtiPSQxCgoJcGFydD0KCW9sZHNwaWNlPTAKCgkjIGZpbmQgdGhlIGJpZ2dlc3QgaG9sZS4gIGh1
aC1odWgsIHlvdSBzYWlkIC4uLgoJZm9yIHAgaW4gLyAvdXNyIC91c3IvbG9jYWwvYWdpbGUgL3Zh
ciA7IGRvCgkJYT1gZ2V0X2ZyZWVfc3BhY2UgIiRwImAKCQlpZiBbICRhIC1ndCAkZmtiIF0gOyB0
aGVuCgkJCWQ9YGV4cHIgJGEgLSAkZmtiYAoJCQlpZiBbICRkIC1ndCAxMDI0MCBdIDsgdGhlbgoJ
CQkJIyAxMCBNQiBpcyBlbm91Z2gsIHdlJ3JlIG91dCBvZiBoZXJlCgkJCQlwYXJ0PSIkcCIKCQkJ
CWJyZWFrOwoJCQlmaQoJCQlpZiBbICRkIC1ndCAkb2xkc3BpY2UgXSA7IHRoZW4KCQkJCW9sZHNw
aWNlPSIkZCIKCQkJCXBhcnQ9IiRwIgoJCQlmaQoJCWZpCglkb25lCgoJZWNobyAiJHBhcnQiCn0K
CgojIGZ0cCB0aGUgZGlzdHJpYnV0aW9uIHRhcmJhbGwKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIwpnZXRfZGlzdGJhbGwoKSB7CgltZXRob2Q9JDEKCXVybD0kMgoJ
ZGRpcj0kMwoKCXJlY29yZCAiRG93bmxvYWRpbmcgZXh0ZXJuYWwgc3lzdGVtIHNvZnR3YXJlIGRp
c3RyaWJ1dGlvbi4iID4vZGV2L3R0eQoJY2QgJGRkaXIKCWNhc2UgJG1ldGhvZCBpbgoJZnRwfGh0
dHApCgkJIyBvaCB3ZWxsCgkJY3cgIi91c3IvYmluL2Z0cCAtbSAkdXJsIgoJCS91c3IvYmluL2Z0
cCAtbSRmdHBfeG9wdCAkdXJsID4vZGV2L3R0eSB8fCB7CgkJCWVycj0kPwoJCQlyZWNvcmQgIkZ0
cCByZXRyaWV2YWwgb2YgZGlzdHJpYnV0aW9uIGZpbGUgZmFpbGVkOiAkZXJyIiA+L2Rldi90dHkK
CQl9CgkJOzsKCXNjcCkKCQkjIHN3ZWV0ZXIKCQk7OwoJY3ApCgkJIyBjb3B5IHRoZSB0YXJiYWxs
IHZpYSBORlMgb3Igd2hhdC4gZXZlci4KCQk7OwoJcnN5bmMpCgkJOzsKCSopCgkJcmVjb3JkICJJ
bnRlcm5hbCBlcnJvciBpbiBnZXRfZGlzdGJhbGwoKTogdW5rbm93biBtZXRob2QgXCckbWV0aG9k
XCciIFwKCQkJPiAvZGV2L3R0eQoJCTs7Cgllc2FjCgoJY2QgLSA+L2Rldi9udWxsCgoJcmV0dXJu
ICRlcnIKfQoKCiMgZmluZHMgc3BhY2UgaW4gdGhlIGZpbGVzeXN0ZW0gdG8gZG93bmxvYWQgdGhl
CiMgZGlzdHJpYnV0aW9uIHRhcmJhbGwsIGFuZCBkb3dubG9hZHMgaXQuCiMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKZG93bmxvYWRfZGlzdCgpIHsKCgl1cmw9IiQx
IgoKCWR3bl9kaXI9YGZpbmRzcGFjZSAkRElTVFJfU2AKCXJlbW91bnRfcncgJGR3bl9kaXIKCWN3
ICJnZXRfZGlzdGJhbGwgZnRwICckdXJsJyAkZHduX2RpciIKCWdldF9kaXN0YmFsbCBmdHAgIiR1
cmwiICRkd25fZGlyCgllcnI9JD8KCXJlbW91bnRfcm8gJGR3bl9kaXIKCgkjIGlmIG5vIHByb2Jz
LCBvdXRwdXQgdGhlIGRpciBzbyB0YXJiYWxsIGNhbiBiZSBmb3VuZAoJaWYgWyAkZXJyIC1lcSAw
IF0gOyB0aGVuCgkJZWNobyAkZHduX2RpcgoJZWxzZQoJCWVjaG8KCWZpCn0KCgojIGdlbmVyYXRl
cyB0aGUgZGVmYXVsdCBmdHAgb3IgaHR0cCBVUkwKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIwpta19kZWZfdXJsKCkgewoJdT0kREVGX0ZUUF9VUkxfSU5ULyRESVNU
Ul9OCglod3R5cGU9YGh3X2luaXRpYWxzYAoKCWlmIFsgIiRCVUlMRF9UWVBFIiA9IG9wdCBdIDsg
dGhlbgoJCWlmIFsgIiRod3R5cGUiID0gQkMgXSA7IHRoZW4KCQkJdT0kREVGX0ZUUF9VUkwvJHtO
X1ZFUlN9LzIyeHgvRXZlck9OLSR7Tl9WRVJTfUJDLnRhci5negoJCWVsaWYgWyAiJGh3dHlwZSIg
PSBCTCBdIDsgdGhlbgoJCQkjIGJ1dHRsb2FkCgkJCXU9JERFRl9GVFBfVVJMLyR7Tl9WRVJTfS8y
Mnh4L0V2ZXJPTi0ke05fVkVSU31CTC50YXIuZ3oKCQllbGlmIFsgIiRod3R5cGUiID0gQ0ggXSA7
IHRoZW4KCQkJdT0kREVGX0ZUUF9VUkwvJHtOX1ZFUlN9LzQ0eHgvRXZlck9OLSR7Tl9WRVJTfS50
YXIuZ3oKCQllbHNlCgkJCXU9JERFRl9GVFBfVVJMLyR7Tl9WRVJTfS82OXh4L0V2ZXJPTi0ke05f
VkVSU31DRy50YXIuZ3oKCQlmaQoJZWxzZQoJCXU9JERFRl9GVFBfVVJMX0lOVC9FdmVyT04tJHtO
X1ZFUlN9JHtod3R5cGV9LnRhci5negoJZmkKCgllY2hvICR1Cn0KCgojCiMgbWFpbgojIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMKCiMgQmFzaWMgZmxvdzoKIwojIDEuICBEb3dubG9hZCBkaXN0cmlidXRpb24gdGFyYmFs
bAojIDIuICBJbnN0YWxsIGRpc3RyaWJ1dGlvbiBvbiBzZWNvbmRhcnkgZmxhc2gKIyAzLiAgQ29w
eSBjb25maWcgZmlsZXMKIyA0LiAgUmVib290CgojCiMgaW50cm9kdWNlIHlvdXJzZWxmCmVjaG8K
IHJlY29yZCAiV2VsY29tZSB0byB0aGUgT05TdG9yIFN0YW5kYWxvbmUgVXBncmFkZSBTeXN0ZW0i
CmVjaG8KIHJlY29yZCAiVGhpcyBwcm9ncmFtIHdpbGwgdXBncmFkZSB5b3VyIHNlY29uZGFyeSBm
bGFzaCBjYXJkIHRvIEV2ZXJPTiIKIHJlY29yZCAidmVyc2lvbiAkTl9WRVJTIGFuZCBib290IHlv
dXIgc3lzdGVtIHRvIHRoZSBuZXcgc29mdHdhcmUuIgplY2hvCmVjaG8gIllvdSBtYXkgcnVuIHRo
ZSBwcm9ncmFtIGluIGludGVyYWN0aXZlIG1vZGUgb3IgdW5hdHRlbmRlZCBtb2RlLiIKZWNobyAi
SWYgeW91IGNob29zZSBpbnRlcmFjdGl2ZSBtb2RlLCB5b3Ugd2lsbCBiZSBwcm9tcHRlZCBwcmlv
ciB0byIKZWNobyAiYW55IHJlYm9vdHMgb2YgdGhlIHN5c3RlbS4gIE90aGVyd2lzZSwgeW91IHdp
bGwgb25seSBiZSIKZWNobyAicHJvbXB0ZWQgZm9yIHRoZSBGVFAgb3IgSFRUUCBVUkwgb2YgdGhl
IGRpc3RyaWJ1dGlvbiBmaWxlLCIKZWNobyAiYW5kIHRoZSB1cGdyYWRlIHdpbGwgYmUgY29tcGxl
dGVkIGF1dG9tYXRpY2FsbHkuIgplY2hvCmVjaG8gLW4gIldvdWxkIHlvdSBsaWtlIHRvIHJ1biBp
biBpbnRlcmFjdGl2ZSBtb2RlPyBbTm9dICIKcmVhZCBhbnMKY2FzZSAiJGFucyIgaW4KeSp8WSop
CglyZWNvcmQgIklcJ2xsIHRha2UgJGFucyBhcyBhIFwneWVzXCcgYW5kIHJ1biBpbiBpbnRlcmFj
dGl2ZSBtb2RlLiIKCWltb2RlPXllcwoJOzsKKikKCWlmIFsgLXogIiRhbnMiIF0gOyB0aGVuCgkJ
YW5zPXRoYXQKCWZpCglyZWNvcmQgIklcJ2xsIHRha2UgJGFucyBhcyBhIFwnbm9cJyBhbmQgcnVu
IHVuYXR0ZW5kZWQuIgoJZWNobyAiQWZ0ZXIgYSBzdWNjZXNzZnVsIHVwZ3JhZGUgb2YgeW91ciBz
eXN0ZW0sIGl0IHdpbGwgYm9vdCIKCWVjaG8gInRoZSBzb2Z0d2FyZSBhbmQgeW91IHdpbGwgaGF2
ZSB0byBsb2cgaW4gYWdhaW4uIgoJZWNobwoJaW1vZGU9bm8KCTs7CmVzYWMKCgojCiMgZm9ybWF0
IHRoZSBzZWNvbmRhcnkgZGlzawojIGdldCByb290IGRpc2sgd2lsbCByZXR1cm4gbnVsbCBpZiBO
RlMgcm9vdCwgZXRjLgoKIHJlY29yZCAiRm9ybWF0dGluZyBzZWNvbmRhcnkgQ29tcGFjdCBGbGFz
aCBDYXJkIgoKZGRpc2s9YGdldF9yb290X2Rpc2tgCmNhc2UgIiRkZGlzayIgaW4KCTApIGRkaXNr
PTEgOzsKCTEpIGRkaXNrPTAgOzsKZXNhYwoKZXhwb3J0IGRpc2s9JGRkaXNrCgpUTVBfTEFCRUxf
RklMRT0vdG1wL2RsYWJlbAoKdHJhcCAncmVjb3JkICJJbnRlcnJ1cHQgZGV0ZWN0ZWQgLS0gY2xl
YW5pbmcgdXAiOyBlcnJvcl9jbGVhbnVwOyBleGl0JyAxIDIgMTUKCiBkaXNrX25hbWUgPiAkVE1Q
X0xBQkVMX0ZJTEUKIGlmIFsgIiRERUJVR19DVyIgXSA7IHRoZW4KCSMgaWYgd2UgYXJlIGRlYnVn
Z2luZywgcnVuIGRvX2xheW91dCBpbiBzZXJpZXMgcmF0aGVyIHRoYW4gaW4gcGFyYWxsZWwKCWRv
X2xheW91dCAiJERZTl9QQVJUX1RBQlMiICIkT05TVE9SX0RJUlMiIGdldF9uZXdfcGFydF9sZXR0
ZXIgfHwgewoJCXJlY29yZCAiSW5pdGlhbGl6YXRpb24gb2YgQ0YgY2FyZCBmYWlsZWQuIgoJCXVu
bW91bnRfcGFydGl0aW9ucwoJCWV4aXQgMQoJfQogZWxzZQoJIyBydW4gZG9fbGF5b3V0IGluIHRo
ZSBiYWNrZ3JvdW5kIHdoaWxlIHdlIGFyZSBkb3dubG9hZGluZyB0aGUgdGFyYmFsbAoJZG9fbGF5
b3V0ICIkRFlOX1BBUlRfVEFCUyIgIiRPTlNUT1JfRElSUyIgZ2V0X25ld19wYXJ0X2xldHRlciAm
CglsYXlvdXRfcGlkPSQhCglyZW5pY2UgMTUgLWcgJGxheW91dF9waWQgMj4vZGV2L251bGwKIGZp
CgojIGRvd25sb2FkIHRoZSBkaXN0cmlidXRpb24KIHJlY29yZCAiRG93bmxvYWRpbmcgdGhlIEV2
ZXJPTiBzb2Z0d2FyZSBkaXN0cmlidXRpb24uIgpmdHBfdXJsPWBta19kZWZfdXJsYApzZWtyZXQ9
Cgp3aGlsZSA6IDsgZG8KCWVjaG8gIlBsZWFzZSBlbnRlciB0aGUgZnRwIG9yIGh0dHAgVVJMIG9m
IHRoZSBkaXN0cmlidXRpb246IgoJaWYgWyAiJHNla3JldCIgXSA7IHRoZW4KCQllY2hvICJbJGZ0
cF91cmxdIiB8IHNlZCAncytcKDouKlwpOi4qQCtcMTojIyMjQCsnCgllbHNlCgkJZWNobyAiWyRm
dHBfdXJsXSIKCWZpCglyZWFkIGFucyBnYXJiYWdlZQoJaWYgWyAiJGFucyIgXSA7IHRoZW4KCQlp
ZiBbICIkZ2FyYmFnZWUiIF0gOyB0aGVuCgkJCXJlY29yZCAiUGxlYXNlLCBubyBzcGFjZXMgaW4g
dGhlIFVSTC4iCgkJCWNvbnRpbnVlCgkJZmkKCQlmdHBfdXJsPSIkYW5zIgoJZmkKCXNla3JldD0K
CgkjIGhpbGFyaW91cwoJZWNobyAiJGZ0cF91cmwiIHwgZ3JlcCAtcSAnQCcgJiYgewoJCXNla3Jl
dD1kb3VibGUKCQluPWBlY2hvICRmdHBfdXJsIHwgd2MgLWNgCgkJYz1gc3R0eSBzaXplIHwgKHJl
YWQgciBjb2xzIDsgZWNobyAkY29scylgCgkJbj1gZXhwciAkbiAvICRjICsgMWAKCQlpZiBbICIk
VEVSTSIgPSB2dDUyIF0gOyB0aGVuCgkJCXN1cGVyX3N0cj0iG0EbSyIKCQllbHNlCgkJCXN1cGVy
X3N0cj0iG1tBG1tLIgoJCWZpCgkJd2hpbGUgWyAkbiAtZ3QgMCBdIDsgZG8KCQkJZWNobyAtbiAi
JHN1cGVyX3N0ciIKCQkJbj1gZXhwciAkbiAtIDFgCgkJZG9uZQoJCWV4cG9ydCBmdHBfeG9wdD1W
Cgl9CgoJIyBxdWljayBjaGVjayBmb3IgY2hlZXRhaCB2LiBib2JjYXQKCWh3Y3Jvc3M9MAoJY2Fz
ZSAiJGh3dHlwZSIgaW4KCUJDKQoJCWlmIFsgImBiYXNlbmFtZSAkZnRwX3VybGAiID0gIkV2ZXJP
Ti0ke05fVkVSU30udGFyLmd6IiBdIDsgdGhlbgoJCQlyZWNvcmQgIllvdSBoYXZlIHNwZWNpZmll
ZCBhIENoZWV0YWggdGFyYmFsbCBmb3IgYSBCb2JjYXQuIgoJCQlod2Nyb3NzPTEKCQlmaQoJCTs7
CglDSCkKCQlpZiBbICJgYmFzZW5hbWUgJGZ0cF91cmxgIiA9ICJFdmVyT04tJHtOX1ZFUlN9QkMu
dGFyLmd6IiBdIDsgdGhlbgoJCQlyZWNvcmQgIllvdSBoYXZlIHNwZWNpZmllZCBhIEJvYmNhdCB0
YXJiYWxsIGZvciBhIENoZWV0YWguIgoJCQlod2Nyb3NzPTEKCQlmaQoJCTs7CglCTCkKCQk7OwoJ
Q0cpCgkJOzsKCWVzYWMKCWlmIFsgIiRod2Nyb3NzIiAtZXEgMSBdIDsgdGhlbgoJCWVjaG8gIlRo
aXMgaXMgcHJvYmFibHkgbm90IHdoYXQgeW91IHdhbnQgYW5kIHByb2JhYmx5IHdvbid0IHdvcmsu
IgoJCWVjaG8gLW4gIkRvIHlvdSB3YW50IHRvIGVudGVyIGEgZGlmZmVyZW50IFVSTD8gW3llc10g
IgoJCXJlYWQgYW5zCgkJaWYgWyAteiAiJGFucyIgXSA7IHRoZW4KCQkJY29udGludWUKCQlmaQoJ
CWNhc2UgIiRhbnMiIGluCgkJbnxOKQoJCQlyZWNvcmQgIkknbGwgdGFrZSAkYW5zIGFzIGEgTm8g
YW5kIGRvd25sb2FkIHRoaXMgdGFyYmFsbCBhbnl3YXkiCgkJCXJlY29yZCAiZXZlbiB0aG91Z2gg
aXQgaXMgcHJvYmFibHkgd3JvbmcgYW5kIHdpbGwgYnJlYWsgZXZlcnl0aGluZyIKCQkJOzsKCQll
c2FjCglmaQoKCSMgZmV0Y2ggdGhlIGRpc3RyaWJ1dGlvbiB0YXJiYWxsCglkbHRpbWU9YGV4cHIg
JERJU1RSX1MgLyA0MTAgKyAyNWAKCWlmIFsgIiRpbW9kZSIgPSB5ZXMgXSA7IHRoZW4KCQllY2hv
ICJUaGlzIHdpbGwgdGFrZSBhdCBsZWFzdCAkZGx0aW1lIHNlY29uZHMgdG8gZG93bmxvYWQuIgoJ
CWVjaG8gIlRoYW5rIHlvdSBmb3IgeW91ciBwYXRpZW5jZS4iCgkJZWNobwoJZmkKCXRkaXI9YGRv
d25sb2FkX2Rpc3QgJGZ0cF91cmxgCgl0YmFsbD1gYmFzZW5hbWUgJGZ0cF91cmxgCglpZiBbIFwo
IC16ICIkdGRpciIgXCkgLW8gXCggISAtcyAiJHRkaXIvJHRiYWxsIiBcKSBdIDsgdGhlbgoJCWlm
IFsgIiRpbW9kZSIgPSBubyBdIDsgdGhlbgoJCQlpZiBbICIkbGF5b3V0X3BpZCIgXSA7IHRoZW4K
CQkJCXdhaXQgJGxheW91dF9waWQKCQkJZmkKCQkJdW5tb3VudF9wYXJ0aXRpb25zCgkJCWV4aXQg
MQoJCWZpCgkJZWNobyAiUGxlYXNlIHRyeSBhZ2Fpbi4iCgkJZWNobwoJCXNsZWVwIDEKCQljb250
aW51ZQoJZmkKCWJyZWFrCmRvbmUKCiMgd2FpdCBmb3IgbGF5b3V0IHByb2Nlc3MgdG8gZmluaXNo
CndhaXQgJGxheW91dF9waWQKZXJyPSQ/CnVuc2V0IGxheW91dF9waWQKI3JtIC1mICRUTVBfTEFC
RUxfRklMRQoKIyAxMjcgbWVhbnMgdGhlIHByb2Nlc3MgaXMgYWxyZWFkeSBnb25lLCBzbyByZWFk
IHRoZSBzdGF0dXMgZmlsZQppZiBbICIkZXJyIiAtZXEgMTI3IF0gOyB0aGVuCglyZWFkIHN0YXRl
IHN0YXR1cyA8ICRMQVlfU1RBVFVTCglpZiBbICIkc3RhdGUiID0gZmluaXNoZWQgXCkgLWEgXCgg
IiRzdGF0dXMiID0gcGFzcyBcKSBdIDsgdGhlbgoJCWVycj0wCgllbHNlCgkJZXJyPTk5CglmaQpm
aQpybSAtZiAkTEFZX1NUQVRVUwoKaWYgWyAiJGVyciIgLWVxIDAgXSA7IHRoZW4KCWN3ICJta2Rp
ciAtcCAkREVTVF9ESVIvdXNyL2xvY2FsICRERVNUX0RJUi9tbnQxICRERVNUX0RJUi9tbnQiCglt
a2RpciAtcCAkREVTVF9ESVIvdXNyL2xvY2FsICRERVNUX0RJUi9tbnQxICRERVNUX0RJUi9tbnQg
JiYKCWxuIC1zIC4uLy4uL29uc3RvciAkREVTVF9ESVIvdXNyL2xvY2FsL2FnaWxlCgllcnI9JD8K
ZmkKCiMgY29weSB0aGUgZmlsZXMgYW5kIHRoZSBjb25maWcgZGF0YQppZiBbICIkZXJyIiAtZXEg
MCBdIDsgdGhlbgoKCXJlY29yZCAtbiAiVW5wYWNraW5nIGRpc3RyaWJ1dGlvbi4uLiIKCSMgZG9u
dCBvdmVyd3JpdGUgdGhlIHVzci9sb2NhbC9hZ2lsZSBzeW1saW5rLiAgdGhhdCB3b3VsZCBiZSBi
YWQuCgljZCAkREVTVF9ESVIKCWN3ICJ0YXIgLXp4cGYgJHt0ZGlyfS8ke3RiYWxsfSAtcyAnKy4v
dXNyL2xvY2FsL2FnaWxlJCsrJyAtcyAnKy4vdXNyL21hbi8uKisrJyAtcyAnKy4vdXNyL2xvY2Fs
L21hbi8uKisrJyAuIgoJbmljZSAtbiAxNSB0YXIgLXp4cGYgIiR7dGRpcn0vJHt0YmFsbH0iIC1z
ICcrLi91c3IvbG9jYWwvYWdpbGUkKysnIFwKCQktcyAnKy4vdXNyL21hbi8uKisrJyAtcyAnKy4v
dXNyL2xvY2FsL21hbi8uKisrJyAuCgoJdGVycj0kPwoKCXJlY29yZCAiZG9uZS4iCgoJY2QgLwoK
CWlmIFsgIiR0ZXJyIiAtZXEgMCBdIDsgdGhlbgoJCSMgcHV0IGEgcHJvcGVyIGZzdGFiIG9udG8g
dGhlIG5ldyBDRgoJCWlmIFsgIiRkaXNrIiAtZXEgMSBdIDsgdGhlbgoJCQljdyAic2VkICdzL3dk
MC93ZCR7ZGlza30vJyAkREVTVF9ESVIvZXRjL21kcml2ZV9mc3RhYiA+JERFU1RfRElSL2V0Yy9m
c3RhYiIKCQkJc2VkICJzL3dkMC93ZCR7ZGlza30vIiAkREVTVF9ESVIvZXRjL21kcml2ZV9mc3Rh
YiA+IFwKCQkJCSRERVNUX0RJUi9ldGMvZnN0YWIKCQllbHNlCgkJCWN3ICJjcCAkREVTVF9ESVIv
ZXRjL21kcml2ZV9mc3RhYiAkREVTVF9ESVIvZXRjL2ZzdGFiIgoJCQljcCAkREVTVF9ESVIvZXRj
L21kcml2ZV9mc3RhYiAkREVTVF9ESVIvZXRjL2ZzdGFiCgkJZmkKCQllcnI9JD8KCgkJcmVjb3Jk
IC1uICJVcGdyYWRpbmcgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMuLi4iCgkJIyBjb3B5IHRoZSBj
b25maWcgZmlsZXMKCQlpZiBbICIkZXJyIiAtZXEgMCBdIDsgdGhlbgoJCQljZCAvCgkJCWN3ICJ0
YXIgY2YgLSBldGMvbXlnYXRlIHwgKGNkICRERVNUX0RJUiAmJiB0YXIgeGh2cGYgLSkiCgkJCXRh
ciBjZiAtIHVzci9sb2NhbC9hZ2lsZS9jb25mL2FnaWxlLmNvbmYgZXRjL2hvc3RzIGV0Yy9teWdh
dGUgZXRjL2hvc3RuYW1lLnNjMSBldGMvaG9zdG5hbWUuc2MyIGV0Yy9tYXN0ZXIucGFzc3dkIGV0
Yy9wYXNzd2QgZXRjL3B3ZC5kYiBldGMvc3B3ZC5kYiBldGMvbXluYW1lIHVzci9sb2NhbC9hZ2ls
ZS9jb25mL2NsdXN0ZXIuY29uZiB1c3IvbG9jYWwvYWdpbGUvY29uZi9jbHVzdGVyLmRiLkRCMCB1
c3IvbG9jYWwvYWdpbGUvY29uZi9jbHVzdGVyLmRiLkRCU1lTMSBldGMvcmVzb2x2LmNvbmYgZXRj
L3NzaC9zc2hfaG9zdF9kc2Ffa2V5LnB1YiBldGMvc3NoL3NzaF9ob3N0X2RzYV9rZXkgZXRjL3Nz
aC9zc2hfaG9zdF9rZXkucHViIGV0Yy9zc2gvc3NoX2hvc3Rfa2V5IGV0Yy9zc2gvc3NoX2hvc3Rf
cnNhX2tleS8gZXRjL3NzaC9zc2hfaG9zdF9yc2Ffa2V5LnB1YiBldGMvbG9jYWx0aW1lIGV0Yy9z
eXNsb2cuY29uZiBldGMvbnRwLmNvbmYgZXRjL250cC9zdGVwLXRpY2tlcnMgdXNyL2xvY2FsL2Fn
aWxlL2V0Yy9zeXNsb2cuY29uZiB1c3IvbG9jYWwvYWdpbGUvZXRjL3NubXBkLmNvbmYgMj4vZGV2
L251bGwgfCAoY2QgJERFU1RfRElSICYmIHRhciB4aHBmIC0pCgkJCXJlY29yZCAiZG9uZS4iCgkJ
CWVjaG8KCQkJcmVjb3JkICJWZXJpZmljYXRpb24gb2YgbmV3IGluc3RhbGxhdGlvbiBzdWNjZXNz
ZnVsLiIKCQkJIyBzZXQgdXAgdXBkYXRlIG1vdGQgZmlsZQoJCQllY2hvICJXZWxjb21lIHRvIEV2
ZXJPTiBzb2Z0d2FyZSB2ZXJzaW9uICROX1ZFUlMuICBFbmpveS4iIFwKCQkJCT4gJERFU1RfRElS
L2V0Yy91cGRhdGUtbW90ZAoJCQllY2hvID4+ICRERVNUX0RJUi9ldGMvdXBkYXRlLW1vdGQKCQll
bHNlCgkJCXJlY29yZCAiRkFJTDogSW5zdGFsbGF0aW9uIG9mIGZzdGFiIGZpbGUgZmFpbGVkOiAk
ZXJyIgoJCWZpCgllbHNlCgkJcmVjb3JkICJGQUlMOiBWZXJpZmljYXRpb24gb2YgaW5zdGFsbGF0
aW9uIGZhaWxlZC4gRXJybm8gJHRlcnIuIgoJCWVycj0kdGVycgoJZmkKCmVsc2UKCXJlY29yZCAi
RkFJTDogRm9ybWF0L2luc3RhbGwgb2YgY29tcGFjdCBmbGFzaCBpbiBzbG90ICRkaXNrIGZhaWxl
ZC4iCmZpCgogdW5tb3VudF9wYXJ0aXRpb25zCgojIGlnbm9yZSBlcnJvcnMsIGJlY2F1c2UgZG9f
bGF5b3V0IGFuZCBvdGhlciBjb21tYW5kcyBhYm92ZSBtYXkgaGF2ZSBmYWlsZWQKICMgZGVsZXRl
IHRoZSBkaXN0cmlidXRpb24gdGFyIGJhbGwKIHJlbW91bnRfcncgIiR0ZGlyIiAmJiB7CgljdyAi
cm0gJHt0ZGlyfS8ke3RiYWxsfSIKCXJtIC1mICIke3RkaXJ9LyR7dGJhbGx9IgoJcmVtb3VudF9y
byAiJHRkaXIiCiB9CgogIyBkZWxldGUgdGhlIHRlbXBvcmFyeSBkaXJlY3RvcnkKIHJlbW91bnRf
cncgLyAmJiB7CglybWRpciAkREVTVF9ESVIgMj4vZGV2L251bGwKCXJlbW91bnRfcm8gLwogfQoK
CmlmIFsgIiRlcnIiIC1lcSAwIF0gOyB0aGVuCglyZWNvcmQgIkluc3RhbGxhdGlvbiBjb21wbGV0
ZWQgc3VjY2Vzc2Z1bGx5LiIKCWVjaG8gIkEgcmVib290IG9mIHRoZSBzeXN0ZW0gaXMgcmVxdWly
ZWQgdG8gcnVuIHRoZSBuZXcgc29mdHdhcmUuIgoJaWYgWyAiJGltb2RlIiA9IHllcyBdIDsgdGhl
bgoJCWVjaG8gLW4gIk1heSBJIHJlYm9vdCB0aGUgc3lzdGVtIG5vdz8gW1llc10gIgoJCXJlYWQg
YW5zCgkJY2FzZSAiJGFucyIgaW4KCQluKnxOKikKCQkJcmVjb3JkICJJXCdsbCB0YWtlICRhbnMg
YXMgYSBcJ25vXCcgYW5kIGV4aXQuIgoJCQllY2hvICJUbyByZWJvb3QgdG8gdGhlIG5ldyBzb2Z0
d2FyZSwgcnVuIHRoZSBjb21tYW5kICduZnhzaCAtZSBcInN5c3RlbSByZWJvb3QgLXNcIiciCgkJ
CWV4aXQgJGVycgoJCQk7OwoJCSopCgkJCWlmIFsgLXogIiRhbnMiIF0gOyB0aGVuCgkJCQlhbnM9
dGhhdAoJCQlmaQoJCQlyZWNvcmQgIklcJ2xsIHRha2UgJGFucyBhcyBhIFwneWVzXCcgYW5kIHJl
Ym9vdCB0aGUgc3lzdGVtIG5vdy4iCgkJCWVjaG8gIlNlZSB5b3Ugb24gdGhlIG90aGVyIHNpZGUh
IgoJCQllY2hvCgkJCTs7CgkJZXNhYwoJZWxzZQoJCSMgbm90IGludGVyYWN0aXZlLCBzbyBqdXN0
IHJlYm9vdAoJCXJlY29yZCAiUmVib290aW5nIG5vdy4uIgoJZmkKCgkjIHJlYm9vdCB0byB0aGUg
b3RoZXIgZmxhc2gKCWN3ICJzeXN0ZW0gcmVib290IC1zIgoJbmZ4c2ggLWUgInN5c3RlbSByZWJv
b3QgLXMgLXkiCmZpCgpleGl0ICRlcnIKCg==

--MP_uQkAtg8je96r2EqDAM1XHOu--
