I don't understand the ERROR message ?

Jayoung Wu (jayoung@glue.umd.edu)
Tue, 24 Feb 1998 12:23:47 -0500 (EST)


This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.
Send mail to mime@docserver.cac.washington.edu for more info.

--0-982418078-888341027=:9240
Content-Type: TEXT/PLAIN; charset=US-ASCII

Hi,
I am trying to read an ascii file("mmi.50") and create a ROOT
file("aticdata.root") using a ROOT Tree structure.
The file name for that is "maketree.C".
However when I execute it in root it gives the following error message:

root [1] .x maketree.C
Error: No symbol maketree() in current scope FILE: LINE:0
NULL
*** Interpreter error recovered ***

Do you have any idea about it?
Actually my code("maketree.C") is not completed yet.
To create a Tree I added just following lines:
//* Reset the environment
gROOT->Reset();

//* Create a new ROOT binary machine independant file
TFile *f = new TFile("aticdata.root","RECREATE");

// input file
fp = fopen("/export/data/aticd8/jay8/mcmurdoi/mmi.50","rt");

//* Create a ROOT Tree and branches
TTree *tree = new TTree("EVENT","Event Tree");
TBranch *branch1 = tree->Branch("SUM",&sum,"sum/F");
TBranch *branch2 = tree->Branch("INTRPOS",intrpos,"intrpos/F");
TBranch *branch3 = tree->Branch("BGO",bgo,"bgo/F");

Except those everything is just plain C for reading a ascii file.

--------------------------------------------------------------------------
The following is "maketree.C".

----
Thanks a lot!
Jayoung Wu

--0-982418078-888341027=:9240
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="maketree.C"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.OSF.3.95q.980224122347.9240B@atic2.umd.edu>
Content-Description:

I2luY2x1ZGUgPHN0ZGlvLmg+DQoNCiNkZWZpbmUgTlVNT0ZFVkVOVFMgMTAN
CiNkZWZpbmUgTUFYTElORSAxMDANCg0KaW50IE51bWJlck9mQ2hhcihjaGFy
IHNbXSxjaGFyIGMpOw0Kdm9pZCBSZXBsYWNlV2l0aEJsYW5rKGNoYXIgc1td
LGNoYXIgYyk7DQoNCg0KaW50IE51bWJlck9mQ2hhcihjaGFyIHNbXSxjaGFy
IGMpDQp7DQogIGludCBpOw0KICBpbnQgbj0wOw0KICBmb3IgKGk9MDsgc1tp
XSE9J1wwJzsgaSsrKSBpZihzW2ldPT1jKSBuKys7DQogIHJldHVybiBuOw0K
fQ0KDQoNCnZvaWQgUmVwbGFjZVdpdGhCbGFuayhjaGFyIHNbXSxjaGFyIGMp
DQp7DQogIGludCBpLGo7DQogIGZvcihpPWo9MDsgc1tpXSE9J1wwJzsgaSsr
KQ0KICAgIGlmKHNbaV0hPWMpIA0KICAgICAgc1tqKytdPXNbaV07DQogICAg
ZWxzZQ0KICAgICAgc1tqKytdPScgJzsNCn0NCg0KDQoNCg0KbWFpbigpDQp7
DQogIEZJTEUgICAqZnA7DQogIEludF90ICBldmVudDsNCiAgSW50X3QgIHRo
ZW5vOw0KICBJbnRfdCAgaSxqLGs7DQogIEludF90ICBsOw0KICBDaGFyX3Qg
bGluZVsxMTBdOw0KICBDaGFyX3QgczFbMzBdLHMyWzMwXSxzM1szMF0sczRb
MzBdLHM1WzMwXSxzNlszMF0sczdbMzBdLHM4WzMwXSxzOVszMF0sczBbMzBd
Ow0KDQovLyB2YXJpYWJsZXMgdG8gc2F2ZSBpbmZvcm1hdGlvbg0KICBJbnRf
dCAgICBldm5vOw0KICBMb25nX3QgICBybmRtWzJdOw0KICBJbnRfdCAgICBw
aWQ7DQogIEZsb2F0X3QgIGtlOw0KICBJbnRfdCAgICBhcmVhOw0KICBJbnRf
dCAgICBmbGFnOw0KICBGbG9hdF90ICBpcG9zWzNdOw0KICBGbG9hdF90ICBp
bW9tWzNdOw0KICBGbG9hdF90ICB0aGV0YSwgcGhpOw0KICBGbG9hdF90ICBp
bnRycG9zWzNdOw0KICBGbG9hdF90ICBpbmNvbmx5WzEwXTsNCiAgRmxvYXRf
dCAgc2kxWzI4XVsxMV1bNF0sIHNpMlsyOF1bMTFdWzRdLCBzaTNbMjhdWzEw
XVs0XSwgc2k0WzI4XVsxMF1bNF07DQogIEZsb2F0X3QgIHNjbjFbMl1bNDNd
LCBzY24yWzJdWzM2XSwgc2NuM1syXVsyNV07DQogIEZsb2F0X3QgIGJnb1sx
MF1bMl1bMjBdOw0KICBGbG9hdF90ICBzdW07DQoNCi8vKiBSZXNldCB0aGUg
ZW52aXJvbm1lbnQNCiAgZ1JPT1QtPlJlc2V0KCk7DQoNCi8vKiBDcmVhdGUg
YSBuZXcgUk9PVCBiaW5hcnkgbWFjaGluZSBpbmRlcGVuZGFudCBmaWxlDQog
IFRGaWxlICpmID0gbmV3IFRGaWxlKCJhdGljZGF0YS5yb290IiwiUkVDUkVB
VEUiKTsNCg0KLy8gaW5wdXQgZmlsZQ0KICBmcCA9IGZvcGVuKCIvZXhwb3J0
L2RhdGEvYXRpY2Q4L2pheTgvbWNtdXJkb2kvbW1pLjUwIiwicnQiKTsNCg0K
Ly8qIENyZWF0ZSBhIFJPT1QgVHJlZSBhbmQgYnJhbmNoZXMNCiAgVFRyZWUg
KnRyZWUgPSBuZXcgVFRyZWUoIkVWRU5UIiwiRXZlbnQgVHJlZSIpOw0KICBU
QnJhbmNoICpicmFuY2gxID0gdHJlZS0+QnJhbmNoKCJTVU0iLCZzdW0sInN1
bS9GIik7DQogIFRCcmFuY2ggKmJyYW5jaDIgPSB0cmVlLT5CcmFuY2goIklO
VFJQT1MiLGludHJwb3MsImludHJwb3MvRiIpOw0KICBUQnJhbmNoICpicmFu
Y2gzID0gdHJlZS0+QnJhbmNoKCJCR08iLGJnbywiYmdvL0YiKTsNCg0KDQoN
Cg0KDQovLyByZWFkIGRhdGENCiAgZm9yKGV2ZW50PTE7IGV2ZW50PD1OVU1P
RkVWRU5UUzsgZXZlbnQrKykNCiAgICB7DQoNCi8vIGluaXRpYWxpemUgd2l0
aCAwDQogICAgICBmb3IoaT0wOyBpPDI4OyBpKyspDQoJZm9yKGo9MDsgajwx
MTsgaisrKQ0KCSAgZm9yKGs9MDsgazw0OyBrKyspDQoJICAgIHsNCgkgICAg
ICBzaTFbaV1bal1ba109MC4wOw0KCSAgICAgIHNpMltpXVtqXVtrXT0wLjA7
DQoJICAgIH0NCg0KICAgICAgZm9yKGk9MDsgaTwyODsgaSsrKQ0KCWZvcihq
PTA7IGo8MTA7IGorKykNCgkgIGZvcihrPTA7IGs8NDsgaysrKQ0KCSAgICB7
DQoJICAgICAgc2kzW2ldW2pdW2tdPTAuMDsNCgkgICAgICBzaTRbaV1bal1b
a109MC4wOw0KCSAgICB9DQogICAgICANCiAgICAgIGZvcihpPTA7IGk8Mjsg
aSsrKQ0KCWZvcihqPTA7IGo8NDM7IGorKykgc2NuMVtpXVtqXT0wLjA7DQoN
CiAgICAgIGZvcihpPTA7IGk8MjsgaSsrKQ0KCWZvcihqPTA7IGo8MzY7IGor
Kykgc2NuMltpXVtqXT0wLjA7DQoNCiAgICAgIGZvcihpPTA7IGk8MjsgaSsr
KQ0KCWZvcihqPTA7IGo8MjU7IGorKykgc2NuM1tpXVtqXT0wLjA7DQoNCiAg
ICAgIGZvcihpPTA7IGk8MTA7IGkrKykNCglmb3Ioaj0wOyBqPDI7IGorKykN
CgkgIGZvcihrPTA7IGs8MjA7IGsrKykgYmdvW2ldW2pdW2tdPTAuMDsNCiAg
ICAgIA0KDQovLyBpbmNpZGVudCBpbmZvcm1hdGlvbg0KICAgICAgZnNjYW5m
KGZwLCIlcyVzJWQsJXMlcyVsZCVsZCIsczEsczIsJmV2bm8sczQsczUsJnJu
ZG1bMF0sJnJuZG1bMV0pOw0KDQogICAgICBmc2NhbmYoZnAsIiVzJXMlcyVz
JWQlcyVzJWYlcyVzJWQlcyVzJWQiLA0KCSAgICAgczEsczIsczMsczQsJnBp
ZCxzNSxzNiwma2UsczcsczgsJmFyZWEsczksczAsJmZsYWcpOw0KDQogICAg
ICBmc2NhbmYoZnAsIiVzJXMlcyVmJWYlZiIsDQoJICAgICBzMSxzMixzMywm
aXBvc1swXSwmaXBvc1sxXSwmaXBvc1syXSk7DQoNCiAgICAgIGZzY2FuZihm
cCwiJXMlcyVzJWYlZiVmIiwNCgkgICAgIHMxLHMyLHMzLCZpbW9tWzBdLCZp
bW9tWzFdLCZpbW9tWzJdKTsNCg0KICAgICAgZnNjYW5mKGZwLCIlcyVzJXMl
cyVzJWYlZiIsDQoJICAgICBzMSxzMixzMyxzNCxzNSwmdGhldGEsJnBoaSk7
DQoNCi8vIDFzdCBpbnRyLiBwb3NpdGlvbg0KICAgICAgZnNjYW5mKGZwLCIl
cyVzJXMlcyVzJXMlZiVmJWYiLA0KCSAgICAgczEsczIsczMsczQsczUsczYs
JmludHJwb3NbMF0sJmludHJwb3NbMV0sJmludHJwb3NbMl0pOw0KDQovLyBp
bmNpZGVudCBvbmx5IGluZm9ybWF0aW9uKHNpbGksIHNjbikNCiAgICAgIGZz
Y2FuZihmcCwiJXMlcyVzJXMlcyIsczEsczIsczMsczQsczUpOw0KICAgICAg
DQogICAgICBmb3IoaT0wOyBpPD05OyBpKyspIA0KCWZzY2FuZihmcCwiJXMl
ZyVzIixzMSwmaW5jb25seVtpXSxzMik7DQoNCg0KLy8gRU5FUkdZIERFUE9T
SVRJT04gRUFDSCBTSUxJQ09OIExBWUVSDQogICAgICBmc2NhbmYoZnAsIiVz
JXMlcyVzJXMlcyIsczEsczIsczMsczQsczUsczYpOw0KICAgICAgZnNjYW5m
KGZwLCIlcyVzJXMlZCIsczEsczIsczMsJmwpOyAvL1NJTElDT04gTEFZRVIg
PSAxDQogICAgICBmZ2V0cyhsaW5lLE1BWExJTkUsZnApOw0KICAgICAgDQog
ICAgICBmZ2V0cyhsaW5lLE1BWExJTkUsZnApOw0KICAgICAgdGhlbm8gPSBO
dW1iZXJPZkNoYXIobGluZSwnWycpOw0KDQogICAgICB3aGlsZSh0aGVubykN
Cgl7DQoJICBpbnQgICBpdGVtcFs1XT17MCwwLDAsMCwwfTsNCgkgIGZsb2F0
IHRlbXBbNV09ezAuLDAuLDAuLDAuLDAufTsNCgkgICAgICANCgkgIFJlcGxh
Y2VXaXRoQmxhbmsobGluZSwnWycpOw0KCSAgUmVwbGFjZVdpdGhCbGFuayhs
aW5lLCddJyk7DQoJICAgICAgDQoJICBpZih0aGVubyA9PSAxKQ0KCSAgICBz
c2NhbmYobGluZSwiJWQlZyIsJml0ZW1wWzBdLCZ0ZW1wWzBdKTsNCgkgIGVs
c2UgaWYodGhlbm8gPT0gMikNCgkgICAgc3NjYW5mKGxpbmUsIiVkJWclZCVn
IiwmaXRlbXBbMF0sJnRlbXBbMF0sJml0ZW1wWzFdLCZ0ZW1wWzFdKTsNCgkg
IGVsc2UgaWYodGhlbm8gPT0gMykNCgkgICAgc3NjYW5mKGxpbmUsIiVkJWcl
ZCVnJWQlZyIsJml0ZW1wWzBdLCZ0ZW1wWzBdLCZpdGVtcFsxXSwmdGVtcFsx
XSwNCgkJICAgJml0ZW1wWzJdLCZ0ZW1wWzJdKTsNCgkgIGVsc2UgaWYodGhl
bm8gPT0gNCkNCgkgICAgc3NjYW5mKGxpbmUsIiVkJWclZCVnJWQlZyVkJWci
LCZpdGVtcFswXSwmdGVtcFswXSwNCgkJICAgJml0ZW1wWzFdLCZ0ZW1wWzFd
LCZpdGVtcFsyXSwmdGVtcFsyXSwmaXRlbXBbM10sJnRlbXBbM10pOw0KCSAg
ZWxzZSBpZih0aGVubyA9PSA1KQ0KCSAgICBzc2NhbmYobGluZSwiJWQlZyVk
JWclZCVnJWQlZyVkJWciLCZpdGVtcFswXSwmdGVtcFswXSwNCgkJICAgJml0
ZW1wWzFdLCZ0ZW1wWzFdLCZpdGVtcFsyXSwmdGVtcFsyXSwNCgkJICAgJml0
ZW1wWzNdLCZ0ZW1wWzNdLCZpdGVtcFs0XSwmdGVtcFs0XSk7DQoJICBlbHNl
DQoJICAgIHByaW50ZigiRXJyb3Igb24gUmVhZGluZyBFZGVwIGluIFNJTElD
T046IHRoZW5vPSVkXG4iLHRoZW5vKTsNCgkgICAgDQoJICBmb3Ioaj0xOyBq
PD10aGVubzsgaisrKQ0KCSAgICB7DQoJICAgICAgaW50IGl5LGl4LGlwOyAv
L2l5IGlzIGxhZGRlciBuby4NCgkJICANCgkgICAgICBpeSA9IChpdGVtcFtq
LTFdLTEpLzQ0ICsgMTsNCgkgICAgICBpeCA9IChpdGVtcFtqLTFdLShpeS0x
KSo0NC0xKS80ICsgMTsNCgkgICAgICBpcCA9IGl0ZW1wW2otMV0tKGl5LTEp
KjQ0LShpeC0xKSo0Ow0KDQoJICAgICAgc2kxW2l5LTFdW2l4LTFdW2lwLTFd
ID0gdGVtcFtqLTFdOw0KCSAgICB9DQoNCgkgIGZnZXRzKGxpbmUsTUFYTElO
RSxmcCk7DQoJICB0aGVubyA9IE51bWJlck9mQ2hhcihsaW5lLCdbJyk7DQoJ
fQ0KDQogICAgICBmc2NhbmYoZnAsIiVzJXMlcyVkIixzMSxzMixzMywmbCk7
IC8vU0lMSUNPTiBMQVlFUiA9IDINCiAgICAgIGZnZXRzKGxpbmUsTUFYTElO
RSxmcCk7DQogICAgICANCiAgICAgIGZnZXRzKGxpbmUsTUFYTElORSxmcCk7
DQogICAgICB0aGVubyA9IE51bWJlck9mQ2hhcihsaW5lLCdbJyk7DQoNCiAg
ICAgIHdoaWxlKHRoZW5vKQ0KCXsNCgkgIGludCAgIGl0ZW1wWzVdPXswLDAs
MCwwLDB9Ow0KCSAgZmxvYXQgdGVtcFs1XT17MC4sMC4sMC4sMC4sMC59Ow0K
CSAgICAgIA0KCSAgUmVwbGFjZVdpdGhCbGFuayhsaW5lLCdbJyk7DQoJICBS
ZXBsYWNlV2l0aEJsYW5rKGxpbmUsJ10nKTsNCgkgICAgICANCgkgIGlmKHRo
ZW5vID09IDEpDQoJICAgIHNzY2FuZihsaW5lLCIlZCVnIiwmaXRlbXBbMF0s
JnRlbXBbMF0pOw0KCSAgZWxzZSBpZih0aGVubyA9PSAyKQ0KCSAgICBzc2Nh
bmYobGluZSwiJWQlZyVkJWciLCZpdGVtcFswXSwmdGVtcFswXSwmaXRlbXBb
MV0sJnRlbXBbMV0pOw0KCSAgZWxzZSBpZih0aGVubyA9PSAzKQ0KCSAgICBz
c2NhbmYobGluZSwiJWQlZyVkJWclZCVnIiwmaXRlbXBbMF0sJnRlbXBbMF0s
Jml0ZW1wWzFdLCZ0ZW1wWzFdLA0KCQkgICAmaXRlbXBbMl0sJnRlbXBbMl0p
Ow0KCSAgZWxzZSBpZih0aGVubyA9PSA0KQ0KCSAgICBzc2NhbmYobGluZSwi
JWQlZyVkJWclZCVnJWQlZyIsJml0ZW1wWzBdLCZ0ZW1wWzBdLA0KCQkgICAm
aXRlbXBbMV0sJnRlbXBbMV0sJml0ZW1wWzJdLCZ0ZW1wWzJdLCZpdGVtcFsz
XSwmdGVtcFszXSk7DQoJICBlbHNlIGlmKHRoZW5vID09IDUpDQoJICAgIHNz
Y2FuZihsaW5lLCIlZCVnJWQlZyVkJWclZCVnJWQlZyIsJml0ZW1wWzBdLCZ0
ZW1wWzBdLA0KCQkgICAmaXRlbXBbMV0sJnRlbXBbMV0sJml0ZW1wWzJdLCZ0
ZW1wWzJdLCZpdGVtcFszXSwNCgkJICAgJnRlbXBbM10sJml0ZW1wWzRdLCZ0
ZW1wWzRdKTsNCgkgIGVsc2UNCgkgICAgcHJpbnRmKCJFcnJvciBvbiBSZWFk
aW5nIEVkZXAgaW4gU0lMSUNPTjogdGhlbm89JWRcbiIsdGhlbm8pOw0KCSAg
ICANCgkgIGZvcihqPTE7IGo8PXRoZW5vOyBqKyspDQoJICAgIHsNCgkgICAg
ICBpbnQgaXksaXgsaXA7IC8vaXkgaXMgbGFkZGVyIG5vLg0KCQkgIA0KCSAg
ICAgIGl5ID0gKGl0ZW1wW2otMV0tMSkvNDQgKyAxOw0KCSAgICAgIGl4ID0g
KGl0ZW1wW2otMV0tKGl5LTEpKjQ0LTEpLzQgKyAxOw0KCSAgICAgIGlwID0g
aXRlbXBbai0xXS0oaXktMSkqNDQtKGl4LTEpKjQ7DQoNCgkgICAgICBzaTJb
aXktMV1baXgtMV1baXAtMV0gPSB0ZW1wW2otMV07DQoJICAgIH0NCg0KCSAg
ZmdldHMobGluZSxNQVhMSU5FLGZwKTsNCgkgIHRoZW5vID0gTnVtYmVyT2ZD
aGFyKGxpbmUsJ1snKTsNCgl9DQoNCiAgICAgIGZzY2FuZihmcCwiJXMlcyVz
JWQiLHMxLHMyLHMzLCZsKTsgLy9TSUxJQ09OIExBWUVSID0gMw0KICAgICAg
ZmdldHMobGluZSxNQVhMSU5FLGZwKTsNCiAgICAgIA0KICAgICAgZmdldHMo
bGluZSxNQVhMSU5FLGZwKTsNCiAgICAgIHRoZW5vID0gTnVtYmVyT2ZDaGFy
KGxpbmUsJ1snKTsNCg0KICAgICAgd2hpbGUodGhlbm8pDQoJew0KCSAgaW50
ICAgaXRlbXBbNV09ezAsMCwwLDAsMH07DQoJICBmbG9hdCB0ZW1wWzVdPXsw
LiwwLiwwLiwwLiwwLn07DQoJICAgICAgDQoJICBSZXBsYWNlV2l0aEJsYW5r
KGxpbmUsJ1snKTsNCgkgIFJlcGxhY2VXaXRoQmxhbmsobGluZSwnXScpOw0K
CSAgICAgIA0KCSAgaWYodGhlbm8gPT0gMSkNCgkgICAgICBzc2NhbmYobGlu
ZSwiJWQlZyIsJml0ZW1wWzBdLCZ0ZW1wWzBdKTsNCgkgIGVsc2UgaWYodGhl
bm8gPT0gMikNCgkgICAgc3NjYW5mKGxpbmUsIiVkJWclZCVnIiwmaXRlbXBb
MF0sJnRlbXBbMF0sJml0ZW1wWzFdLCZ0ZW1wWzFdKTsNCgkgIGVsc2UgaWYo
dGhlbm8gPT0gMykNCgkgICAgc3NjYW5mKGxpbmUsIiVkJWclZCVnJWQlZyIs
Jml0ZW1wWzBdLCZ0ZW1wWzBdLCZpdGVtcFsxXSwmdGVtcFsxXSwNCgkJICAg
Jml0ZW1wWzJdLCZ0ZW1wWzJdKTsNCgkgIGVsc2UgaWYodGhlbm8gPT0gNCkN
CgkgICAgc3NjYW5mKGxpbmUsIiVkJWclZCVnJWQlZyVkJWciLCZpdGVtcFsw
XSwmdGVtcFswXSwNCgkJICAgJml0ZW1wWzFdLCZ0ZW1wWzFdLCZpdGVtcFsy
XSwmdGVtcFsyXSwmaXRlbXBbM10sJnRlbXBbM10pOw0KCSAgZWxzZSBpZih0
aGVubyA9PSA1KQ0KCSAgICBzc2NhbmYobGluZSwiJWQlZyVkJWclZCVnJWQl
ZyVkJWciLCZpdGVtcFswXSwmdGVtcFswXSwNCgkJICAgJml0ZW1wWzFdLCZ0
ZW1wWzFdLCZpdGVtcFsyXSwmdGVtcFsyXSwmaXRlbXBbM10sDQoJCSAgICZ0
ZW1wWzNdLCZpdGVtcFs0XSwmdGVtcFs0XSk7DQoJICBlbHNlDQoJICAgIHBy
aW50ZigiRXJyb3Igb24gUmVhZGluZyBFZGVwIGluIFNJTElDT046IHRoZW5v
PSVkXG4iLHRoZW5vKTsNCgkgICAgDQoJICBmb3Ioaj0xOyBqPD10aGVubzsg
aisrKQ0KCSAgICB7DQoJICAgICAgaW50IGl5LGl4LGlwOyAvL2l5IGlzIGxh
ZGRlciBuby4NCgkJICANCgkgICAgICBpeSA9IChpdGVtcFtqLTFdLTEpLzQw
ICsgMTsNCgkgICAgICBpeCA9IChpdGVtcFtqLTFdLShpeS0xKSo0MC0xKS80
ICsgMTsNCgkgICAgICBpcCA9IGl0ZW1wW2otMV0tKGl5LTEpKjQwLShpeC0x
KSo0Ow0KDQoJICAgICAgc2kzW2l5LTFdW2l4LTFdW2lwLTFdID0gdGVtcFtq
LTFdOw0KCSAgICB9DQoNCgkgIGZnZXRzKGxpbmUsTUFYTElORSxmcCk7DQoJ
ICB0aGVubyA9IE51bWJlck9mQ2hhcihsaW5lLCdbJyk7DQoJfQ0KDQogICAg
ICBmc2NhbmYoZnAsIiVzJXMlcyVkIixzMSxzMixzMywmbCk7IC8vU0lMSUNP
TiBMQVlFUiA9IDQNCiAgICAgIGZnZXRzKGxpbmUsTUFYTElORSxmcCk7DQog
ICAgICANCiAgICAgIGZnZXRzKGxpbmUsTUFYTElORSxmcCk7DQogICAgICB0
aGVubyA9IE51bWJlck9mQ2hhcihsaW5lLCdbJyk7DQoNCiAgICAgIHdoaWxl
KHRoZW5vKQ0KCXsNCgkgIGludCAgIGl0ZW1wWzVdPXswLDAsMCwwLDB9Ow0K
CSAgZmxvYXQgdGVtcFs1XT17MC4sMC4sMC4sMC4sMC59Ow0KCSAgICAgIA0K
CSAgUmVwbGFjZVdpdGhCbGFuayhsaW5lLCdbJyk7DQoJICBSZXBsYWNlV2l0
aEJsYW5rKGxpbmUsJ10nKTsNCgkgICAgICANCgkgIGlmKHRoZW5vID09IDEp
DQoJICAgICAgc3NjYW5mKGxpbmUsIiVkJWciLCZpdGVtcFswXSwmdGVtcFsw
XSk7DQoJICBlbHNlIGlmKHRoZW5vID09IDIpDQoJICAgIHNzY2FuZihsaW5l
LCIlZCVnJWQlZyIsJml0ZW1wWzBdLCZ0ZW1wWzBdLCZpdGVtcFsxXSwmdGVt
cFsxXSk7DQoJICBlbHNlIGlmKHRoZW5vID09IDMpDQoJICAgIHNzY2FuZihs
aW5lLCIlZCVnJWQlJWQlZ2ciLCZpdGVtcFswXSwmdGVtcFswXSwmaXRlbXBb
MV0sJnRlbXBbMV0sDQoJCSAgICZpdGVtcFsyXSwmdGVtcFsyXSk7DQoJICBl
bHNlIGlmKHRoZW5vID09IDQpDQoJICAgIHNzY2FuZihsaW5lLCIlZCVnJWQl
ZyVkJWclZCVnIiwmaXRlbXBbMF0sJnRlbXBbMF0sDQoJCSAgICZpdGVtcFsx
XSwmdGVtcFsxXSwmaXRlbXBbMl0sJnRlbXBbMl0sJml0ZW1wWzNdLCZ0ZW1w
WzNdKTsNCgkgIGVsc2UgaWYodGhlbm8gPT0gNSkNCgkgICAgc3NjYW5mKGxp
bmUsIiVkJWclZCVnJWQlZyVkJWclZCVnIiwmaXRlbXBbMF0sJnRlbXBbMF0s
DQoJCSAgICZpdGVtcFsxXSwmdGVtcFsxXSwmaXRlbXBbMl0sJnRlbXBbMl0s
Jml0ZW1wWzNdLA0KCQkgICAmdGVtcFszXSwmaXRlbXBbNF0sJnRlbXBbNF0p
Ow0KCSAgZWxzZQ0KCSAgICBwcmludGYoIkVycm9yIG9uIFJlYWRpbmcgRWRl
cCBpbiBTSUxJQ09OOiB0aGVubz0lZFxuIix0aGVubyk7DQoJICAgIA0KCSAg
Zm9yKGo9MTsgajw9dGhlbm87IGorKykNCgkgICAgew0KCSAgICAgIGludCBp
eSxpeCxpcDsgLy9peSBpcyBsYWRkZXIgbm8uDQoJCSAgDQoJICAgICAgaXkg
PSAoaXRlbXBbai0xXS0xKS80MCArIDE7DQoJICAgICAgaXggPSAoaXRlbXBb
ai0xXS0oaXktMSkqNDAtMSkvNCArIDE7DQoJICAgICAgaXAgPSBpdGVtcFtq
LTFdLShpeS0xKSo0MC0oaXgtMSkqNDsNCg0KCSAgICAgIHNpNFtpeS0xXVtp
eC0xXVtpcC0xXSA9IHRlbXBbai0xXTsNCgkgICAgfQ0KDQoJICBmZ2V0cyhs
aW5lLE1BWExJTkUsZnApOw0KCSAgdGhlbm8gPSBOdW1iZXJPZkNoYXIobGlu
ZSwnWycpOw0KCX0NCg0KLy9lbmVyZ3kgZGVwb3NpdGlvbiBpbiBlYWNoIHNj
aW50aWxsYXRvciBsYXllcg0KICAgICAgZmdldHMobGluZSxNQVhMSU5FLGZw
KTsgICAvL0VORVJHWSBERVBPU0lUSU9OIEVBQ0ggU0NJTlRJTExBVE9SIExB
WUVSDQogICAgICBmZ2V0cyhsaW5lLE1BWExJTkUsZnApOyAgIC8vcmVhZCBi
bGFuayBsaW5lDQoNCiAgICAgIGZvcihrPTE7IGs8PTM7IGsrKykgICAvLzEt
U0NOMSwgMi1TQ04yLCAzLVNDTjMNCgl7DQoJICBmb3IoaT0xOyBpPj0wOyBp
LS0pICAgLy8xLXVwcGVyLCAwLWxvd2VyDQoJICAgIHsNCgkgICAgICBmZ2V0
cyhsaW5lLE1BWExJTkUsZnApOyAvL0xBWUVSPVNDTjFYKHVwcGVyKSwgTEFZ
RVI9U0NOMVkobG93ZXIpIA0KCSAgICAgIGZnZXRzKGxpbmUsTUFYTElORSxm
cCk7DQoJICAgICAgdGhlbm8gPSBOdW1iZXJPZkNoYXIobGluZSwnWycpOw0K
DQoJICAgICAgd2hpbGUodGhlbm8pDQoJCXsNCgkJICBpbnQgICBpdGVtcFs1
XT17MCwwLDAsMCwwfTsNCgkJICBmbG9hdCB0ZW1wWzVdPXswLiwwLiwwLiww
LiwwLn07DQoJICAgICAgDQoJCSAgUmVwbGFjZVdpdGhCbGFuayhsaW5lLCdb
Jyk7DQoJCSAgUmVwbGFjZVdpdGhCbGFuayhsaW5lLCddJyk7DQoJICAgICAg
DQoJCSAgaWYodGhlbm8gPT0gMSkNCgkJICAgIHNzY2FuZihsaW5lLCIlZCVn
IiwmaXRlbXBbMF0sJnRlbXBbMF0pOw0KCQkgIGVsc2UgaWYodGhlbm8gPT0g
MikNCgkJICAgIHNzY2FuZihsaW5lLCIlZCVnJWQlZyIsJml0ZW1wWzBdLCZ0
ZW1wWzBdLCZpdGVtcFsxXSwmdGVtcFsxXSk7DQoJCSAgZWxzZSBpZih0aGVu
byA9PSAzKQ0KCQkgICAgc3NjYW5mKGxpbmUsIiVkJWclZCVnJWQlZyIsJml0
ZW1wWzBdLCZ0ZW1wWzBdLCZpdGVtcFsxXSwmdGVtcFsxXSwNCgkJCSAgICZp
dGVtcFsyXSwmdGVtcFsyXSk7DQoJCSAgZWxzZSBpZih0aGVubyA9PSA0KQ0K
CQkgICAgc3NjYW5mKGxpbmUsIiVkJWclZCVnJWQlZyVkJWciLCZpdGVtcFsw
XSwmdGVtcFswXSwmaXRlbXBbMV0sJnRlbXBbMV0sDQoJCQkgICAmaXRlbXBb
Ml0sJnRlbXBbMl0sJml0ZW1wWzNdLCZ0ZW1wWzNdKTsNCgkJICBlbHNlIGlm
KHRoZW5vID09IDUpDQoJCSAgICBzc2NhbmYobGluZSwiJWQlZyVkJWclZCVn
JWQlZyVkJWciLCZpdGVtcFswXSwmdGVtcFswXSwmaXRlbXBbMV0sJnRlbXBb
MV0sDQoJCQkgICAmaXRlbXBbMl0sJnRlbXBbMl0sJml0ZW1wWzNdLCZ0ZW1w
WzNdLA0KCQkJICAgJml0ZW1wWzRdLCZ0ZW1wWzRdKTsNCgkJICBlbHNlDQoJ
CSAgICBwcmludGYoIkVycm9yIG9uIFJlYWRpbmcgRWRlcCBpbiBTSUxJQ09O
OiB0aGVubz0lZFxuIiwNCgkJCSAgIHRoZW5vKTsNCgkgICAgDQoJCSAgZm9y
KGo9MTsgajw9dGhlbm87IGorKykNCgkJICAgIHsNCgkJICAgICAgaW50IGlz
OyAvL2l5IGlzIHN0cmlwIG5vLg0KCQkgIA0KCQkgICAgICBpcyA9IGl0ZW1w
W2otMV07DQoNCgkJICAgICAgaWYgKGs9PTEpICAgICAgICAgICAgICAgICAg
ICAgLy9TQ04xDQoJCQlzY24xW2ldW2lzLTFdID0gdGVtcFtqLTFdOw0KCQkg
ICAgICBlbHNlIGlmIChrPT0yKSAgICAgICAgICAgICAgICAvL1NDTjINCgkJ
CXNjbjJbaV1baXMtMV0gPSB0ZW1wW2otMV07DQoJCSAgICAgIGVsc2UgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8vU0NOMw0KCQkJc2NuM1tpXVtpcy0x
XSA9IHRlbXBbai0xXTsNCgkJICAgIH0NCg0KCQkgIGZnZXRzKGxpbmUsTUFY
TElORSxmcCk7DQoJCSAgdGhlbm8gPSBOdW1iZXJPZkNoYXIobGluZSwnWycp
Ow0KCQl9DQoJICAgIH0NCgl9DQoNCi8vIGVuZXJneSBkZXBvc2l0aW9uIGlu
IGVhY2ggYmdvIGNyeXN0YWwgYmFyDQogICAgICBmZ2V0cyhsaW5lLE1BWExJ
TkUsZnApOyAgIC8vRU5FUkdZIERFUE9TSVRJT04gRUFDSCBCR08gQ1JZU1RB
TCBCQVINCiAgICAgIGZnZXRzKGxpbmUsTUFYTElORSxmcCk7ICAgLy9yZWFk
IGJsYW5rIGxpbmUNCg0KICAgICAgZm9yKGk9MTsgaTw9NTsgaSsrKSAgIC8v
MSwzLDUsNyw5LW9kZCBsYXllcg0KCXsNCgkgIGZnZXRzKGxpbmUsTUFYTElO
RSxmcCk7IC8vQkdPIExBWUVSID0gMSwuLi4gQkdPIExBWUVSID0gOQ0KCSAg
ZmdldHMobGluZSxNQVhMSU5FLGZwKTsNCgkgIHRoZW5vID0gTnVtYmVyT2ZD
aGFyKGxpbmUsJ1snKTsNCg0KCSAgd2hpbGUodGhlbm8pDQoJICAgIHsNCgkg
ICAgICBpbnQgICBpdGVtcFs1XT17MCwwLDAsMCwwfTsNCgkgICAgICBmbG9h
dCB0ZW1wWzVdPXswLiwwLiwwLiwwLiwwLn07DQoJICAgICAgDQoJICAgICAg
UmVwbGFjZVdpdGhCbGFuayhsaW5lLCdbJyk7DQoJICAgICAgUmVwbGFjZVdp
dGhCbGFuayhsaW5lLCddJyk7DQoJICAgICAgDQoJICAgICAgaWYodGhlbm8g
PT0gMSkNCgkJc3NjYW5mKGxpbmUsIiVkJWciLCZpdGVtcFswXSwmdGVtcFsw
XSk7DQoJICAgICAgZWxzZSBpZih0aGVubyA9PSAyKQ0KCQlzc2NhbmYobGlu
ZSwiJWQlZyVkJWciLCZpdGVtcFswXSwmdGVtcFswXSwmaXRlbXBbMV0sJnRl
bXBbMV0pOw0KCSAgICAgIGVsc2UgaWYodGhlbm8gPT0gMykNCgkJc3NjYW5m
KGxpbmUsIiVkJWclZCVnJWQlZyIsJml0ZW1wWzBdLCZ0ZW1wWzBdLCZpdGVt
cFsxXSwmdGVtcFsxXSwNCgkJICAgICAgICZpdGVtcFsyXSwmdGVtcFsyXSk7
DQoJICAgICAgZWxzZSBpZih0aGVubyA9PSA0KQ0KCQlzc2NhbmYobGluZSwi
JWQlZyVkJWclZCVnJWQlZyIsJml0ZW1wWzBdLCZ0ZW1wWzBdLCZpdGVtcFsx
XSwmdGVtcFsxXSwNCgkJICAgICAgICZpdGVtcFsyXSwmdGVtcFsyXSwmaXRl
bXBbM10sJnRlbXBbM10pOw0KCSAgICAgIGVsc2UgaWYodGhlbm8gPT0gNSkN
CgkJICBzc2NhbmYobGluZSwiJWQlZyVkJWclZCVnJWQlZyVkJWciLCZpdGVt
cFswXSwmdGVtcFswXSwmaXRlbXBbMV0sJnRlbXBbMV0sDQoJCSAgICZpdGVt
cFsyXSwmdGVtcFsyXSwmaXRlbXBbM10sJnRlbXBbM10sJml0ZW1wWzRdLCZ0
ZW1wWzRdKTsNCgkgICAgICBlbHNlDQoJCXByaW50ZigiRXJyb3Igb24gUmVh
ZGluZyBFZGVwIGluIFNJTElDT046IHRoZW5vPSVkXG4iLHRoZW5vKTsNCgkg
ICAgDQoJICAgICAgZm9yKGo9MTsgajw9dGhlbm87IGorKykNCgkJew0KCQkg
IGludCBpeDsgLy9CR08gbGF5ZXIgbm8oMSwzLDUsNyw5KSANCgkJICBpbnQg
aXk7IC8vdXBwZXIoMikgb3IgbG93ZXIoMSkNCgkJICBpbnQgaXo7IC8vY3J5
c3RhbCBubygxLTIwKQ0KCQkgIA0KCQkgIGl4ID0gMippLTE7DQoJCSAgaXkg
PSAoaXRlbXBbai0xXS0xKS8yMCArIDE7DQoJCSAgaXogPSBpdGVtcFtqLTFd
IC0gKGl5LTEpKjIwOw0KCQkgIGJnb1tpeC0xXVtpeS0xXVtpei0xXSA9IHRl
bXBbai0xXTsNCgkJfQ0KDQoJICAgICAgZmdldHMobGluZSxNQVhMSU5FLGZw
KTsNCgkgICAgICB0aGVubyA9IE51bWJlck9mQ2hhcihsaW5lLCdbJyk7DQoJ
ICAgIH0NCgl9DQoNCiAgICAgIGZvcihpPTE7IGk8PTU7IGkrKykgICAvLzIs
NCw2LDgsMTAtZXZlbiBsYXllcg0KCXsNCgkgIGZnZXRzKGxpbmUsTUFYTElO
RSxmcCk7IC8vQkdPIExBWUVSID0gMiwuLi4gQkdPIExBWUVSID0gMTANCgkg
IGZnZXRzKGxpbmUsTUFYTElORSxmcCk7DQoJICB0aGVubyA9IE51bWJlck9m
Q2hhcihsaW5lLCdbJyk7DQoNCgkgIHdoaWxlKHRoZW5vKQ0KCSAgICB7DQoJ
ICAgICAgaW50ICAgaXRlbXBbNV09ezAsMCwwLDAsMH07DQoJICAgICAgZmxv
YXQgdGVtcFs1XT17MC4sMC4sMC4sMC4sMC59Ow0KCSAgICAgIA0KCSAgICAg
IFJlcGxhY2VXaXRoQmxhbmsobGluZSwnWycpOw0KCSAgICAgIFJlcGxhY2VX
aXRoQmxhbmsobGluZSwnXScpOw0KCSAgICAgIA0KCSAgICAgIGlmKHRoZW5v
ID09IDEpDQoJCXNzY2FuZihsaW5lLCIlZCVnIiwmaXRlbXBbMF0sJnRlbXBb
MF0pOw0KCSAgICAgIGVsc2UgaWYodGhlbm8gPT0gMikNCgkJc3NjYW5mKGxp
bmUsIiVkJWclZCVnIiwmaXRlbXBbMF0sJnRlbXBbMF0sJml0ZW1wWzFdLCZ0
ZW1wWzFdKTsNCgkgICAgICBlbHNlIGlmKHRoZW5vID09IDMpDQoJCXNzY2Fu
ZihsaW5lLCIlZCVnJWQlZyVkJWciLCZpdGVtcFswXSwmdGVtcFswXSwmaXRl
bXBbMV0sJnRlbXBbMV0sDQoJCSAgICAgICAmaXRlbXBbMl0sJnRlbXBbMl0p
Ow0KCSAgICAgIGVsc2UgaWYodGhlbm8gPT0gNCkNCgkJc3NjYW5mKGxpbmUs
IiVkJWclZCVnJWQlZyVkJWciLCZpdGVtcFswXSwmdGVtcFswXSwmaXRlbXBb
MV0sJnRlbXBbMV0sDQoJCSAgICAgICAmaXRlbXBbMl0sJnRlbXBbMl0sJml0
ZW1wWzNdLCZ0ZW1wWzNdKTsNCgkgICAgICBlbHNlIGlmKHRoZW5vID09IDUp
DQoJCXNzY2FuZihsaW5lLCIlZCVnJWQlZyVkJWclZCVnJWQlZyIsJml0ZW1w
WzBdLCZ0ZW1wWzBdLCZpdGVtcFsxXSwmdGVtcFsxXSwNCgkJICAgJml0ZW1w
WzJdLCZ0ZW1wWzJdLCZpdGVtcFszXSwmdGVtcFszXSwmaXRlbXBbNF0sJnRl
bXBbNF0pOw0KCSAgICAgIGVsc2UNCgkJcHJpbnRmKCJFcnJvciBvbiBSZWFk
aW5nIEVkZXAgaW4gU0lMSUNPTjogdGhlbm89JWRcbiIsdGhlbm8pOw0KCSAg
ICANCgkgICAgICBmb3Ioaj0xOyBqPD10aGVubzsgaisrKQ0KCQl7DQoJCSAg
aW50IGl4OyAvL0JHTyBsYXllciBubygyLDQsNiw4LDEwKSANCgkJICBpbnQg
aXk7IC8vdXBwZXIoMikgb3IgbG93ZXIoMSkNCgkJICBpbnQgaXo7IC8vY3J5
c3RhbCBubygxLTIwKQ0KCQkgIA0KCQkgIGl4ID0gMippOw0KCQkgIGl5ID0g
KGl0ZW1wW2otMV0tMSkvMjAgKyAxOw0KCQkgIGl6ID0gaXRlbXBbai0xXSAt
IChpeS0xKSoyMDsNCgkJICBiZ29baXgtMV1baXktMV1baXotMV0gPSB0ZW1w
W2otMV07DQoJCX0NCg0KCSAgICAgIGZnZXRzKGxpbmUsTUFYTElORSxmcCk7
DQoJICAgICAgdGhlbm8gPSBOdW1iZXJPZkNoYXIobGluZSwnWycpOw0KCSAg
ICB9DQoJfQ0KLy8gdG90YWwgZW5lcmd5IGRlcG9zaXQgaW4gQkdPDQogICAg
ICBmc2NhbmYoZnAsIiVzJXMlZ1xuIixzMSxzMiwmc3VtKTsNCiAgICB9DQp9
DQoNCg==
--0-982418078-888341027=:9240--