experiments.tex

Stephen Weeks MLton@sourcelight.com
Tue, 13 Mar 2001 20:56:41 -0800 (PST)


XHNlY3tFeHBlcmltZW50c317ZXhwZXJpbWVudHN9CgpBcyBkZXNjcmliZWQgaW4gXHNlY3JlZntp
bnRyb2R1Y3Rpb259LCBudW1lcm91cyBjb21waWxlciBvcHRpbWl6YXRpb25zIGFyZQplbmFibGVk
IGJ5IGV4cG9zaW5nIHRoZSBpbnRyYXByb2NlZHVyYWwgY29udHJvbC1mbG93IG9mIGEgcHJvZ3Jh
bSB0aHJvdWdoIHRoZQpjb250aWZpY2F0aW9uIHRyYW5zZm9ybWF0aW9uLiAgSXQgaXMgdGhlcmVm
b3JlIG5vdCBzdXJwcmlzaW5nIHRoYXQgYQpjb250aWZpY2F0aW9uIHBhc3MgKHNpbWlsYXIgdG8g
dGhlIGNhbGwgYW5seXNpcykgd2FzIHRoZSBmaXJzdCB7XGNwc30Kb3B0aW1pemF0aW9uIGFkZGVk
IHRvIHtcbWx0b259IGluIFNlcHRlbWJlciAxOTk4LiAgVGhlIGNvbnRpZmljYXRpb24gcGFzcyBy
dW5zCmF0IHRocmVlIHBsYWNlcyBpbiB0aGUge1xjcHN9IG9wdGltaXplciwgd2l0aCBpbnRlcnZl
bmluZyBvcHRpbWl6YXRpb24KcGFzc2VzLiAgVGhlc2UgaW50ZXJ2ZW5pbmcgcGFzc2VzIGluY2x1
ZGUgY29uc3RhbnQgcHJvcGFnYXRpb24sIGRlYWQtY29kZQplbGltaW5hdGlvbiwgaW5saW5pbmcs
IHJhaXNlLXRvLWp1bXAgdHJhbnNmb3JtYXRpb24sIGxvb3Agb3B0aW1pemF0aW9ucywgYW5kCnNo
cmluayByZWR1Y3Rpb25zflxjaXRle0FwcGVsSmltOTd9LgoKVG8gZGVtb25zdHJhdGUgdGhlIHBy
YWN0aWNhbGl0eSBhbmQgYmVuZWZpdHMgb2YgdGhlIHRyYW5zZm9ybWF0aW9uIGFuZCBhbmFseXNl
cwpkZXNjcmliZWQgaW4gdGhpcyBwYXBlciwgd2UgaW1wbGVtZW50ZWQgYSBuZXcgY29udGlmaWNh
dGlvbiBwYXNzIGluIHRoZSBcbWx0b257fQpjb21waWxlci4gIFBhcmFsbGVsaW5nIHRoZSBwcmVz
ZW50YXRpb24gaW4gXHNlY3JlZntjb250aWZpY2F0aW9ufSwgaW4gd2hpY2ggd2UKc2VwYXJhdGUg
Y29udGlmaWNhdGlvbiBpbnRvIGFuYWx5c2lzIGFuZCB0cmFuc2Zvcm1hdGlvbiwgb3VyIG5ldyBw
YXNzIGNvbnNpc3RzCm9mIGFuIGFuYWx5c2lzIHBoYXNlIHRoYXQgcHJvZHVjZXMgYW4gYW5ub3Rh
dGlvbiBhbmQgYSB0cmFuc2Zvcm1hdGlvbiBwaGFzZSB0aGF0CmNvbnRpZmllcyBiYXNlZCBvbiBh
bm5vdGF0aW9uLiAgV2UgaGF2ZSBpbXBsZW1lbnRlZCBlYWNoIG9mIHRoZSBhbmFseXNlcwpkZXNj
cmliZWQgaW4gXHNlY3JlZnthbmFseXNlc30uICBUaGUgaW1wbGVtZW50YXRpb25zIG9mIHRoZSBj
YWxsIGFuZApjb250aW51YXRpb24gYW5hbHlzZXMgYXJlIHN0cmFpZ2h0Zm9yd2FyZC4gIFRoZSBk
b21pbmF0b3IgYW5hbHlzaXMgdXNlcyB0aGUKTGVuZ2F1ZXItVGFyYW4gZG9taW5hdG9yIGFsZ29y
aXRobX5cY2l0ZXtMZW5nYXVlclRhcmphbjc5fSBhcyBwcmVzZW50ZWQKaW5+XGNpdGV7TXVjaG5p
Y2s5N30uCgpXZSBtZWFzdXJlZCB0aGUgaW1wYWN0IG9mIGNvbnRpZmljYXRpb24gb24gY29tcGls
ZSB0aW1lcyBhbmQgcnVubmluZwp0aW1lcyBmb3IgYSByZXByZXNlbnRhdGl2ZSBzYW1wbGUgb2Yg
YmVuY2htYXJrcyB3aXRoIHNpemVzIHVwIHRvIDkySwpsaW5lcy4gIEFtb25nIHRoZSBiZW5jaG1h
cmtzLCBcY29kZXtsZXhnZW59LCBcY29kZXttbHlhY2N9LCBhbmQKXGNvZGV7dmxpd30gYXJlIHN0
YW5kYXJkIFxjaXRle0FwcGVsOTJ9OyBcY29kZXtiYXJuZXMtaHV0fSwKXGNvZGV7dGVuc29yfSwg
YW5kIFxjb2Rle3plcm59IGFyZSBmbG9hdGluZy1wb2ludCBpbnRlbnNpdmUgYW5kClxjb2Rle2Nv
dW50LWdyYXBoc30gaXMgbW9zdGx5IHN5bWJvbGljLlxmb290bm90ZXsKSnVhbiBKb3NlIEdhcmNp
YSBSaXBvbGwgKFxjb2Rle3dvcm1AYXJyYWtpcy5lc30pIHdyb3RlIFxjb2Rle3RlbnNvcn0sCkRh
dmlkIE1jQ2xhaW4gKFxjb2Rle2RtY2NsYWluQGF6c3Rhcm5ldC5jb219KSB3cm90ZSBcY29kZXt6
ZXJufSwKYW5kIEhlbnJ5IENlanRpbiAoXGNvZGV7aGVucnlAc291cmNlbGlnaHQuY29tfSkgd3Jv
dGUgXGNvZGV7Y291bnQtZ3JhcGhzfS59ClRoZSBcY29kZXtyYXl0cmFjZX0gYmVuY2htYXJrIHdh
cyB0aGUKd2lubmluZyBlbnRyeSBpbiB0aGUgVGhpcmQgQW5udWFsIElDRlAgUHJvZ3JhbW1pbmcK
Q29udGVzdC5cZm9vdG5vdGV7VGVhbSBQTENsdWIKKFxjb2Rle2h0dHA6Ly93d3cuY2lzLnVwZW5u
LmVkdS9cdHR0aWxkZXt9c3VtaWkvaWNmcC99KQp3cm90ZSB0aGUgb3JpZ2luYWwgdmVyc2lvbiBv
ZiBcY29kZXtyYXl0cmFjZX0gaW4gTydDYW1sLgpTdGVwaGVuIFdlZWtzIHRyYW5zbGF0ZWQgaXQg
dG8gU01MLCBhbmQgSm9obiBSZXBweQooXGNvZGV7amhyQHJlc2VhcmNoLmJlbGwtbGFicy5jb219
KSBtYWRlIGZ1dGhlciBtb2RpZmljYXRpb25zLn0gClRoZSBcY29kZXttbHRvbn0gYmVuY2htYXJr
IGlzIHRoZSBjb21waWxlciBpdHNlbGY7IFxjb2Rle2tpdH0gaXMgdGhlCk1MLUtpdCAoVmVyc2lv
biAzKSBcY2l0ZXtUb2Z0ZUV0QWw5OH07IFxjb2Rle2hhbWxldH0gaXMgdGhlIEhhTUxldApTTUwg
aW50ZXJwcmV0ZXIuXGZvb3Rub3Rle0FuZHJlYXMgUm9zc2JlcmcgKFxjb2Rle3Jvc3NiZXJnQHBz
LnVuaS1zYi5kZX0pCndyb3RlIFxjb2Rle2hhbWxldH0ufSAgVGhlIGJlbmNobWFya3Mgd2VyZSBj
b21waWxlZCBhbmQKZXhlY3V0ZWQgb24gYW4gODAwIE1IeiBJbnRlbCBQZW50aXVtIElJSSB3aXRo
IDI1NiBNQiBvZiBtZW1vcnksIHdpdGgKdGhlIGV4Y2VwdGlvbnMgb2YgXGNvZGV7bWx0b259IGFu
ZCBcY29kZXtraXR9LCB3aGljaCB3ZXJlIGNvbXBpbGVkIG9uCmEgNzMzIE1IeiBJbnRlbCBQZW50
aXVtIElJSSB3aXRoIDUxMiBNQiBvZiBtZW1vcnkuICBBbGwgYmVuY2htYXJrcyBhcmUKYXZhaWxh
YmxlIGF0IFx0ZXh0dHR7aHR0cDovL3d3dy5zb3VyY2VsaWdodC5jb20vTUx0b259LgoKSW4gXHRh
YnJlZntjb21waWxlLXRpbWV9LCB3ZSByZXBvcnQgdGhlIG51bWJlciBvZiBsaW5lcyBvZiBTTUwg
Zm9yIGVhY2gKYmVuY2htYXJrIGFuZCB0aGUgdG90YWwgY29tcGlsZSB0aW1lIGluIHNlY29uZHMu
ICBUaGUgbnVtYmVyIG9mIGxpbmVzIGRvZXMgbm90CmluY2x1ZGUgYXBwcm94aW1hdGVseSA4MDAw
IGxpbmVzIG9mIGJhc2lzIGxpYnJhcnkgY29kZSB0aGF0IFxtbHRvbnt9IHByZWZpeGVzIHRvCmVh
Y2ggcHJvZ3JhbS4gIFRoZSBjb21waWxlIHRpbWUgd2FzIG1lYXN1cmVkIHdoaWxlIHVzaW5nICRc
QWRvbSQgZm9yIGFsbCB0aHJlZQpjb250aWZpY2F0aW9uIHBhc3Nlcy4gIFRoZSB0b3RhbCBhbW91
bnQgb2YgdGltZSBzcGVudCBpbiBjb250aWZpY2F0aW9uIChzdW1tZWQKb3ZlciBhbGwgdGhyZWUg
cGFzc2VzKSBmb3IgYW55IG9mIHRoZSBhbmFseXNlcyB3YXMgdHlwaWNhbGx5IGFib3V0IDJcJSBv
ZiB0b3RhbApjb21waWxlIHRpbWUsIGFuZCB3YXMgbmV2ZXIgbW9yZSB0aGFuIDRcJS4KClx0YWJC
ZWdpbgpcY2VudGVyaW5nClxiZWdpbnt0YWJ1bGFyfXt8bHx8cnxyfH0KXGhsaW5lClByb2dyYW0g
JiBsaW5lcyAmIGNvbXBpbGUgdGltZVxcClxobGluZQpcaGxpbmUKXGlucHV0e2N0aW1lTGluZXN9
ClxlbmR7dGFidWxhcn0KXHRhYkVuZHtQcm9ncmFtIHNpemVzIGFuZCBjb21waWxlIHRpbWVzIChz
ZWNvbmRzKX0KICAgICAgIHtjb21waWxlLXRpbWV9CgpJbiBcdGFicmVme3J1bm5pbmctdGltZX0s
IHdlIHJlcG9ydCB0aGUgcnVubmluZyB0aW1lIG9mIGVhY2ggYmVuY2htYXJrLCBjb21waWxlZAp1
c2luZyBlYWNoIGNvbnRpZmljYXRpb24gYW5hbHlzaXMsIG5vcm1hbGl6ZWQgdG8gdGhlIHJ1bm5p
bmcgdGltZSB3aXRoCmNvbnRpZmljYXRpb24gZGlzYWJsZWQuICBVbnN1cnByaXNpbmdseSwgdGhl
c2UgcmVzdWx0cyBzaG93IHRoYXQsIGZvciBtb3N0IG9mCnRoZSBiZW5jaG1hcmtzLCBjb250aWZp
Y2F0aW9uIHlpZWxkcyBhIHNwZWVkdXAuICBPbiB0aGUgb3RoZXIgaGFuZCwgaXQgaXMKc3Vwcmlz
aW5nIHRoYXQgY29udGlmaWNhdGlvbiB3aXRoIHRoZSBkb21pbmF0b3IgYW5hbHlzaXMgaXMgbm90
IGFsd2F5cyBiZXR0ZXIKdGhhbiBjb250aWZpY2F0aW9uIHdpdGggZWl0aGVyIG9mIHRoZSBvdGhl
ciBhbmFseXNlcy4gIFdoaWxlIHdlIGRvIG5vdCBoYXZlIGFuCmVhc3kgZXhwbGFuYXRpb24sIHdl
IHN1c3BlY3QgdGhpcyBpcyBhbiBhcnRpZmFjdCBvZiB0aGUgZXZvbHV0aW9uIG9mIHRoZSB7XGNw
c30Kb3B0aW1pemVyLCB3aGljaCBkZXZlbG9wZWQgYXJvdW5kIGFuIG9yaWdpbmFsIGNvbnRpZmlj
YXRpb24gcGFzcyBzaW1pbGFyIHRvCiRcQWNhbGwkLiAgV2UgYWxzbyByZWNhbGwgdGhlIHN0YXRl
bWVudCBtYWRlIGF0IHRoZSBlbmQgb2YKXHNlY3JlZnthbmFseXNlczpBZG9tfSwgd2hlcmUgd2Ug
bm90ZWQgdGhhdCB0aGUgZG9taW5hdG9yIGFuYWx5c2lzIGZhdm9ycwpjb250aWZpY2F0aW9uIGF0
IGNvbnRpbnVhdGlvbnMgb3ZlciBjb250aWZpY2F0aW9uIGluIGZ1bmN0aW9ucy4gIFRoZQpjb250
aW51YXRpb24gYW5hbHlzaXMgc2hhcmVzIHRoaXMgYmlhcywgYnV0IHRoZSBjYWxsIGFuYWx5c2lz
IGRvZXMgbm90LiAgSXQgaXMKbm90IGNsZWFyIGhvdyB0aGVzZSBkaWZmZXJlbmNlcyBpbnRlcmFj
dCB3aXRoIHRoZSBvdGhlciBvcHRpbWl6YXRpb24gcGFzc2VzOwpob3dldmVyLCB3ZSBjb25qZWN0
dXJlIHRoYXQgaXQgc2hvdWxkIGJlIHBvc3NpYmxlIHRvIGhhdmUgdGhlIG9wdGltaXplciBiZWhh
dmUKYWNjb3JkaW5nIHRvIG91ciBpbnR1aXRpdmUgZXhwZWN0YXRpb25zLgoKXHRhYkJlZ2luClxz
bWFsbApcY2VudGVyaW5nClxiZWdpbnt0YWJ1bGFyfXt8Y3x8Y3xjfGN8fQpcaGxpbmUKUHJvZ3Jh
bSAmIENhbGwgJiBDb250ICYgRG9tXFwKXGhsaW5lClxobGluZQpcaW5wdXR7cnRpbWV9ClxlbmR7
dGFidWxhcn0KXHRhYkVuZHtSdW4gdGltZXMgKG5vcm1hbGl6ZWQgdG8gTm9uZSl9e3J1bm5pbmct
dGltZX0KCkluIFx0YWJyZWZ7Y291bnRzfSwgd2UgcmVwb3J0IHRoZSBudW1iZXIgb2YgZnVuY3Rp
b25zIGNvbnRpZmllZCBieSBlYWNoCmFuYWx5c2lzLiAgRm9yIGVhY2ggYmVuY2htYXJrLCB0aGVy
ZSBhcmUgZm91ciByb3dzLCBvbmUgZm9yIGVhY2ggYW5hbHlzaXMgKE5vbmUKbWVhbnMgY29udGlm
aWNhdGlvbiB3YXMgZGlzYWJsZWQpLiAgRWFjaCByb3cgY29udGFpbnMgdGhlIGNvdW50cyBmb3Ig
ZWFjaCBvZiB0aGUKdGhyZWUgY29udGlmaWNhdGlvbiBwYXNzZXMuICBFYWNoIGNlbGwgaW4gdGhl
IHRhYmxlIHJlcG9ydHMgdGhlIG51bWJlciBmdW5jdGlvbnMKY29udGlmaWVkLCBmb2xsb3dlZCBi
eSBhIGBgLycnLCBmb2xsb3dlZCBieSB0aGUgdG90YWwgbnVtYmVyIG9mIGZ1bmN0aW9ucyBpbiB0
aGUKcHJvZ3JhbSBpbnB1dCB0byB0aGUgY29udGlmaWNhdGlvbiBwYXNzLgoKVGhlIGNvdW50cyBz
aG93IHRoYXQgZm9yIG1vc3Qgb2YgdGhlIGJlbmNobWFya3MsIGJ5IHRoZSBsYXN0IHJvdW5kIG9m
CmNvbnRpZmljYXRpb24sIHRoZXJlIGFyZSBubyBjb250aWZpYWJsZSBmdW5jdGlvbnMgZGV0ZWN0
YWJsZSBieSB0aGUKY29ycmVzcG9uZGluZyBhbmFseXNpcy4gIFRoZXkgYWxzbyBzaG93IHRoYXQg
Y29udGlmaWNhdGlvbiwgYnkgYW55IGFuYWx5c2lzLCBoYXMKYSBzaWduaWZpY2FudCBpbXBhY3Qg
b24gdGhlIHRvdGFsIG51bWJlciBvZiBmdW5jdGlvbnMgaW4gdGhlIHByb2dyYW0uICBBbHRob3Vn
aApvdGhlciBvcHRpbWl6YXRpb25zIHJlZHVjZSB0aGUgbnVtYmVyIG9mIGZ1bmN0aW9ucyAoZS5n
LiwgaW5saW5pbmcpLCBhIGNvbnRpZmllZApwcm9ncmFtIGhhcyBhdCBtb3N0IGhhbGYgdGhlIG51
bWJlciBvZiBmdW5jdGlvbnMgb2YgYW4gdW5jb250aWZpZWQgcHJvZ3JhbS4KClx0YWJCZWdpbnMK
XHNtYWxsClxjZW50ZXJpbmcKXHNldGxlbmd0aHtcdGFiY29sc2VwfXswLjVcdGFiY29sc2VwfQpc
YmVnaW57dGFidWxhcn17fGN8fHJAey99cnJAey99cnJAey99cgogICAgICAgICAgICAgICAgICAg
fHJAey99cnJAey99cnJAey99cgogICAgICAgICAgICAgICAgICAgfHJAey99cnJAey99cnJAey99
cgogICAgICAgICAgICAgICAgICAgfHJAey99cnJAey99cnJAey99cnx9ClxobGluZQpcaW5wdXR7
Y3RpbWVDb3VudHN9ClxlbmR7dGFidWxhcn0KXHRhYkVuZHN7TnVtYmVyIG9mIGZ1bmN0aW9ucyBj
b250aWZpZWQgaW4gZWFjaCBjb250aWZpY2F0aW9uIHBhc3N9Cgl7Y291bnRzfQoKQXMgZXhwZWN0
ZWQsIHRoZSBkb21pbmF0b3IgYW5hbHlzaXMgY29udGlmaWVzIG1vcmUgZnVuY3Rpb25zIHRoYW4g
ZWl0aGVyIG9mIHRoZQpvdGhlciBhbmFseXNlcy4gIFRoZSBhbm9tYWxvdXMgcmVzdWx0IGluIFxj
b2Rle2Jhcm5lcy1odXR9LCB3aGVyZSB0aGUgZG9taW5hdG9yCmFuYWx5c2lzIHlpZWxkcyBhIHBy
b2dyYW0gd2l0aCA5IGZ1bmN0aW9ucywgYnV0IHRoZSBjYWxsIGFuYWx5c2lzIHlpZWxkcyBhCnBy
b2dyYW0gd2l0aCA3IGZ1bmN0aW9ucywgaXMgdGhlIHJlc3VsdCBvZiBpbmxpbmluZyBiZXR3ZWVu
IHRoZSBzZWNvbmQgYW5kIHRoaXJkCnJvdW5kcyBvZiBjb250aWZpY2F0aW9uLiAgSW4gdGhpcyBj
YXNlLCAkXEFkb20kIGNvbnRpZmllZCBhIGZ1bmN0aW9uIHRoYXQKJFxBY2FsbCQgZGlkIG5vdCwg
aW5jcmVhc2luZyBpdHMgc2l6ZSBiZXlvbmQgdGhlIGxpbWl0IHVzZWQgYnkgdGhlIGlubGluZXIu
Cgpcc3NlY3tNdXR1YWwgcmVjdXJzaW9uIGluIHtcY3BzfX17ZXhwZXJpbWVudHM6cmVjdXJzaW9u
fQoKVGhlIGNvbnRpZmljYXRpb24gdHJhbnNmb3JtYXRpb24gaXMgY29tcGxpY2F0ZWQgYnkgdGhl
IGZhY3QgdGhhdCB0aGUgY3VycmVudAppbXBsZW1lbmF0aW9uIG9mIHtcY3BzfSBkb2VzIG5vdCBh
bGxvdyBjb250aW51YXRpb25zIHRvIGJlIHNpbXVsdGFuZW91c2x5CmRlY2xhcmVkIG11dHVhbGx5
IHJlY3Vyc2l2ZWx5LiAgUmVjYWxsIHRoYXQgdGhlIGNvbnRpZmljYXRpb24gdHJhbnNmb3JtYXRp
b24KZGVzY3JpYmVkIGluIFxzZWNyZWZ7Y29udGlmaWNhdGlvbjp0cmFuc2Zvcm1hdGlvbn0gcmVx
dWlyZXMgdGhlIHNldCBvZiBmdW5jdGlvbnMKJFx7IGYgXGluIFxGdW5jIFw7fFw7IFxBKGYpID0g
bCBcfSQgdG8gYmUgZGVjbGFyZWQgc2ltdWx0YW5lb3VzbHkuICBUaGUKbGltaXRhdGlvbnMgb2Yg
dGhlIGltcGxlbWVudGF0aW9uIG9mIHtcY3BzfSBhcmUgcHJvYmxlbWF0aWMgd2hlbiB0aGlzIHNl
dApjb250YWlucyBtdWx0aXBsZSBmdW5jdGlvbnMuICBIb3dldmVyLCBiZWNhdXNlIGNvbnRpbnVh
dGlvbiBkZWNsYXJhdGlvbnMgY2FuIGJlCm5lc3RlZCwgaXQgaXMgcG9zc2libGUgdG8gZGVmaW5l
IG11dHVhbGx5IHJlY3Vyc2l2ZSBjb250aW51YXRpb25zIGJ5IG5lc3Rpbmcgb25lCndpdGhpbiBh
bm90aGVyLiAgRm9yIGV4YW1wbGUsIGNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgcHJvZ3JhbSBmcmFn
bWVudDp+ClxiZWdpbnt0aWdodHZlcmJhdGltfQpmdW4gZiAoKSA9IGxldCBjb250IGsgKHgpID0g
Li4uIGluIGsgKGcxICgpKSBlbmQKZnVuIGcxICgpID0gLi4uIGcyICgpIC4uLgpmdW4gZzIgKCkg
PSAuLi4gZzEgKCkgLi4uClxlbmR7dGlnaHR2ZXJiYXRpbX0KQm90aCB0aGUgY29udGludWF0aW9u
IGFuZCBkb21pbmF0b3IgYW5hbHlzZXMgd291bGQgYXNzaWduICRcQShcdGV4dHR0e2cxfSkgPQpc
QShcdGV4dHR0e2cyfSkgPSBrJC4gIEluc3RlYWQgb2YgdHJhbnNmb3JtaW5nIHRoZSBmcmFnbWVu
dCB0b34KXGJlZ2lue3RpZ2h0dmVyYmF0aW19CmZ1biBmICgpID0gCiAgIGxldCAKICAgICAgY29u
dCBrICh4KSA9IC4uLgogICAgICBjb250IGcxICgpID0gLi4uIGcyICgpIC4uLgogICAgICBjb250
IGcyICgpID0gLi4uIGcxICgpIC4uLgogICBpbiBrIChnMSAoKSkKICAgZW5kClxlbmR7dGlnaHR2
ZXJiYXRpbX0Kd2UgdHJhbnNmb3JtIGl0IHRvfgpcYmVnaW57dGlnaHR2ZXJiYXRpbX0KZnVuIGYg
KCkgPSAKICAgbGV0IAogICAgICBjb250IGsgKHgpID0gLi4uCiAgICAgIGNvbnQgZzEgKCkgPSBs
ZXQKICAgICAgICAgICAgICAgICAgICAgIGNvbnQgZzIgKCkgPSAuLi4gZzEgKCkgLi4uCiAgICAg
ICAgICAgICAgICAgICAgICAuLi4gZzIgKCkgLi4uCiAgIGluIGsgKGcxICgpKQogICBlbmQKXGVu
ZHt0aWdodHZlcmJhdGltfQp3aGVyZSBcdGV4dHR0e2cyfSBpcyBuZXN0ZWQgd2l0aGluIFx0ZXh0
dHR7ZzF9LiAgVW5mb3J0dW5hdGVseSwgdGhpcwpuZXN0aW5nIGlzIG5vdCBzdWZmaWNlbnQgdG8g
Y29udGlmeSBhbGwgc2V0cyBvZiBtdXR1YWxseSByZWN1cnNpdmUKZGVmaW5pdGlvbnMuICBGb3Ig
ZXhhbXBsZSwgd2UgY2Fubm90IGNvbnRpZnkgXHRleHR0dHtnMX0gYW5kClx0ZXh0dHR7ZzJ9IGlu
IHRoZSBmb2xsb3dpbmcgY29kZSBmcmFnbWVudC5+ClxiZWdpbnt0aWdodHZlcmJhdGltfQpmdW4g
ZiAoYikgPSAKICBsZXQgCiAgICAgY29udCBrICh4KSA9IC4uLiAKICAgICBjb250IGwxICgpID0g
ayAoZzEgKCkpIAogICAgIGNvbnQgbDIgKCkgPSBrIChnMiAoKSkKICBpbiBpZiBiIHRoZW4gbDEg
ZWxzZSBsMiAKICBlbmQKZnVuIGcxICgpID0gLi4uIGcyICgpIC4uLgpmdW4gZzIgKCkgPSAuLi4g
ZzEgKCkgLi4uClxlbmR7dGlnaHR2ZXJiYXRpbX0KRm9ydHVuYXRlbHksIHRoZSBsaW1pdGF0aW9u
cyBvZiB7XGNwc30gZGlkIG5vdCBzaWduaWZpY2FudGx5IGFmZmVjdAp0aGUgcmVzdWx0cyBpbiB0
aGlzIHNlY3Rpb24uICBXaGVuIG91ciBmdWxsIGJlbmNobWFyayBzdWl0ZSAoaW5jbHVkaW5nIDE4
CmFkZGl0aW9uYWwgYmVuY2htYXJrcyBub3QgcmVwb3J0ZWQgaGVyZSkgaXMgY29tcGlsZWQgd2l0
aCB0aGUgZG9taW5hdG9yCmFuYWx5c2lzLCB0aGVyZSBhcmUgb3ZlciAxMSwwMDAgZnVuY3Rpb25z
IG1hcmtlZCBjb250aWZpYWJsZSwgb25seSA3OCBvZiB3aGljaAptdXN0IGJlIG5lc3RlZCBhbmQg
b25seSAyNSBvZiB3aGljaCBjYW5ub3QgYmUgY29udGlmaWVkIGR1ZSB0byB0aGUgYWJzZW5jZSBv
ZgptdXR1YWwgcmVjdXJzaW9uLgoKVGhlIGFic2VuY2Ugb2YgbXV0dWFsbHkgcmVjdXJzaXZlIGNv
bnRpbnVhdGlvbnMgaW4ge1xjcHN9IGlzIGEgaGlzdG9yaWNhbAphY2NpZGVudCwgYW5kIGlzIG5v
dCBmdW5kYW1lbnRhbC4gIFdlIGFyZSBjb25zaWRlcmluZyBpbXByb3Zpbmcge1xtbHRvbn0gdG8K
aGFuZGxlIHRoZW0uCg==