From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Pelts To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org Subject: Re: c++/1622 Date: Wed, 14 Mar 2001 19:36:00 -0000 Message-id: <20010315033601.5135.qmail@sourceware.cygnus.com> X-SW-Source: 2001-03/msg00074.html List-Id: The following reply was made to PR c++/1622; it has been noted by GNATS. From: Alex Pelts To: Craig Rodrigues Cc: Subject: Re: c++/1622 Date: Wed, 14 Mar 2001 19:07:11 -0800 --Boundary-=_nWlrBbmQBhCDarzOwKkYHIDdqSCD Content-Type: text/plain Content-Transfer-Encoding: 8bit Sorry, was away for some time. Here is the source code. Thanks, Alex On Sat, 17 Feb 2001, you wrote: > http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=1622&database=gcc > > There is no attached test case to this bug report. > > -- > Craig Rodrigues > http://www.gis.net/~craigr > rodrigc@mediaone.net -- ------------------------------------------------------------ Alex Pelts Distributed Software Laboratory US Research Laboratories Sony Electronics Phone (408) 955 4361 Fax (408) 955 3030 ------------------------------------------------------------ --Boundary-=_nWlrBbmQBhCDarzOwKkYHIDdqSCD Content-Type: text/plain; name="cpptest.ii" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="cpptest.ii" IyAxICJjcHB0ZXN0LmN4eCIKIyAxICIvaG9tZS9hbGV4L3dvcmsvYXZ4L2luc3RhbGwvaW5jbHVk ZS9zdGRpby5oIiAxCgoKIAoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoK CgoKCgoKIAoKIyAxICIvaG9tZS9hbGV4L3dvcmsvYXZ4L2luc3RhbGwvaW5jbHVkZS9wa2djb25m L2lzb2luZnJhLmgiIDEKCgogCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCiMg NTIgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL3N0ZGlvLmgiIDIKCgogCgog CgoKCgojIDEgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL3N0ZGRlZi5oIiAx CiAKIAoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoK IyAxICIvaG9tZS9lY29zL3Rvb2xzL0gtaTY4Ni1wYy1saW51eC1nbnUvbGliL2djYy1saWIvYXJt LWVsZi8yLjk1LjIvaW5jbHVkZS9zdGRkZWYuaCIgMSAzIDQKCgoKCgoKIAoKCiMgMTkgIi9ob21l L2Vjb3MvdG9vbHMvSC1pNjg2LXBjLWxpbnV4LWdudS9saWIvZ2NjLWxpYi9hcm0tZWxmLzIuOTUu Mi9pbmNsdWRlL3N0ZGRlZi5oIiAzIDQKCgoKIAoKCiAKCgoKCgogCgoKIyA2MSAiL2hvbWUvZWNv cy90b29scy9ILWk2ODYtcGMtbGludXgtZ251L2xpYi9nY2MtbGliL2FybS1lbGYvMi45NS4yL2lu Y2x1ZGUvc3RkZGVmLmgiIDMgNAoKCiAKCgoKCgogCgoKCgoKCgoKCgoKCgoKCgoKCiAKCgoKCgog CgogCgojIDEzMSAiL2hvbWUvZWNvcy90b29scy9ILWk2ODYtcGMtbGludXgtZ251L2xpYi9nY2Mt bGliL2FybS1lbGYvMi45NS4yL2luY2x1ZGUvc3RkZGVmLmgiIDMgNAoKCiAKCiAKCgoKCgoKCgoK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCnR5cGVkZWYgbG9uZyB1bnNpZ25lZCBpbnQgc2l6ZV90 OwoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKIAoKCgoKIAoKIyAyNzEgIi9ob21lL2Vjb3MvdG9vbHMv SC1pNjg2LXBjLWxpbnV4LWdudS9saWIvZ2NjLWxpYi9hcm0tZWxmLzIuOTUuMi9pbmNsdWRlL3N0 ZGRlZi5oIiAzIDQKCgojIDI4MyAiL2hvbWUvZWNvcy90b29scy9ILWk2ODYtcGMtbGludXgtZ251 L2xpYi9nY2MtbGliL2FybS1lbGYvMi45NS4yL2luY2x1ZGUvc3RkZGVmLmgiIDMgNAoKCiAKCiAK CiMgMzE3ICIvaG9tZS9lY29zL3Rvb2xzL0gtaTY4Ni1wYy1saW51eC1nbnUvbGliL2djYy1saWIv YXJtLWVsZi8yLjk1LjIvaW5jbHVkZS9zdGRkZWYuaCIgMyA0CgoKCgogCgoKCgoKCgoKCgoKCgoK CgoKCgoKCiMgNTUgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL3N0ZGRlZi5o IiAyCgoKIAojIDYxICIvaG9tZS9hbGV4L3dvcmsvYXZ4L2luc3RhbGwvaW5jbHVkZS9zdGRpby5o IiAyCgoKCgojIDEgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL2N5Zy9saWJj L3N0ZGlvL3N0ZGlvLmgiIDEKCgogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAog CiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCgogCgojIDEg Ii9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL3BrZ2NvbmYvbGliY19zdGRpby5o IiAxCgoKIAoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCiMgNDkgIi9ob21lL2FsZXgv d29yay9hdngvaW5zdGFsbC9pbmNsdWRlL2N5Zy9saWJjL3N0ZGlvL3N0ZGlvLmgiIDIKCgogCgoj IDEgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL2N5Zy9pbmZyYS9jeWdfdHlw ZS5oIiAxCgoKCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAog CiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAoKIyAxICIvaG9tZS9hbGV4 L3dvcmsvYXZ4L2luc3RhbGwvaW5jbHVkZS9zdGRkZWYuaCIgMQogCiAKCgoKCgoKCgoKCgoKCgoK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCiMgMSAiL2hvbWUvZWNvcy90b29s cy9ILWk2ODYtcGMtbGludXgtZ251L2xpYi9nY2MtbGliL2FybS1lbGYvMi45NS4yL2luY2x1ZGUv c3RkZGVmLmgiIDEgMyA0CgoKCgoKCiAKCgoKCgoKCiAKCiAKCgoKCiAKCgogCgoKCgoKIAoKCiMg NjEgIi9ob21lL2Vjb3MvdG9vbHMvSC1pNjg2LXBjLWxpbnV4LWdudS9saWIvZ2NjLWxpYi9hcm0t ZWxmLzIuOTUuMi9pbmNsdWRlL3N0ZGRlZi5oIiAzIDQKCgogCgoKCgoKIAoKCgoKCgoKCgoKCgoK CgoKCgogCgoKCgoKIAoKIAoKCgoKCgoKCgoKCgoKCgoKCgoKCgp0eXBlZGVmIGxvbmcgaW50IHB0 cmRpZmZfdDsKCgoKCgoKCgoKIAoKCgoKIAoKIAoKCiMgMTg4ICIvaG9tZS9lY29zL3Rvb2xzL0gt aTY4Ni1wYy1saW51eC1nbnUvbGliL2djYy1saWIvYXJtLWVsZi8yLjk1LjIvaW5jbHVkZS9zdGRk ZWYuaCIgMyA0CgoKCgoKIAoKCgoKIAoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCiAKCgoK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKdHlwZWRlZiB1 bnNpZ25lZCBpbnQgIHdpbnRfdDsKCgoKCiAKCiAKCiMgMzE3ICIvaG9tZS9lY29zL3Rvb2xzL0gt aTY4Ni1wYy1saW51eC1nbnUvbGliL2djYy1saWIvYXJtLWVsZi8yLjk1LjIvaW5jbHVkZS9zdGRk ZWYuaCIgMyA0CgoKCgogCgoKCgoKCgoKCgoKCgogCgoKCgoKCgojIDU1ICIvaG9tZS9hbGV4L3dv cmsvYXZ4L2luc3RhbGwvaW5jbHVkZS9zdGRkZWYuaCIgMgoKCiAKIyA0OSAiL2hvbWUvYWxleC93 b3JrL2F2eC9pbnN0YWxsL2luY2x1ZGUvY3lnL2luZnJhL2N5Z190eXBlLmgiIDIKCgogCiAKCiAK IAoKCgoKCgogCgoKIAogCiAKIAogCgoKCgojIDEgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFs bC9pbmNsdWRlL2N5Zy9oYWwvYmFzZXR5cGUuaCIgMQoKCgogCiAKIAogCiAKIAogCiAKIAogCiAK IAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKCiAK IAogCgogCiAKCgoKCgoKCgogCiAKCgoKCiAKIAogCgoKCgogCiAKCiAKIAoKIAoKIAojIDc0ICIv aG9tZS9hbGV4L3dvcmsvYXZ4L2luc3RhbGwvaW5jbHVkZS9jeWcvaW5mcmEvY3lnX3R5cGUuaCIg MgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgogCiAK IAoKCgoKIAoKCgoKIAogCiAKCgoKCgojIDE1NyAiL2hvbWUvYWxleC93b3JrL2F2eC9pbnN0YWxs L2luY2x1ZGUvY3lnL2luZnJhL2N5Z190eXBlLmgiCgoKIAogCiAKCgoKCgoKCgoKCgoKCiAKIAog CgoKCgoKCgogCiAKIAoKdHlwZWRlZiB1bnNpZ25lZCBjaGFyICAgICBjeWdfdWludDggIDsKdHlw ZWRlZiAgIHNpZ25lZCBjaGFyICAgICBjeWdfaW50OCAgIDsKCnR5cGVkZWYgdW5zaWduZWQgc2hv cnQgICAgY3lnX3VpbnQxNiA7CnR5cGVkZWYgICBzaWduZWQgc2hvcnQgICAgY3lnX2ludDE2ICA7 Cgp0eXBlZGVmIHVuc2lnbmVkIGludCAgICBjeWdfdWludDMyIDsKdHlwZWRlZiAgIHNpZ25lZCBp bnQgICAgY3lnX2ludDMyICA7Cgp0eXBlZGVmIHVuc2lnbmVkIGxvbmcgbG9uZyAgICBjeWdfdWlu dDY0IDsKdHlwZWRlZiAgIHNpZ25lZCBsb25nIGxvbmcgICAgY3lnX2ludDY0ICA7Cgp0eXBlZGVm ICBpbnQgICAgICAgICAgICAgY3lnX2Jvb2wgICA7CgogCiAKIAogCgp0eXBlZGVmIHVuc2lnbmVk IGludCAgIGN5Z191Y291bnQ4ICA7CnR5cGVkZWYgICBzaWduZWQgaW50ICAgY3lnX2NvdW50OCAg IDsKCnR5cGVkZWYgdW5zaWduZWQgaW50ICBjeWdfdWNvdW50MTYgOwp0eXBlZGVmICAgc2lnbmVk IGludCAgY3lnX2NvdW50MTYgIDsKCnR5cGVkZWYgdW5zaWduZWQgaW50ICBjeWdfdWNvdW50MzIg Owp0eXBlZGVmICAgc2lnbmVkIGludCAgY3lnX2NvdW50MzIgIDsKCnR5cGVkZWYgdW5zaWduZWQg bG9uZyBsb25nICBjeWdfdWNvdW50NjQgOwp0eXBlZGVmICAgc2lnbmVkIGxvbmcgbG9uZyAgY3ln X2NvdW50NjQgIDsKCiAKIAogCiAKCnR5cGVkZWYgdm9sYXRpbGUgdW5zaWduZWQgY2hhciAgICBj eWdfYXRvbWljOwp0eXBlZGVmIHZvbGF0aWxlIHVuc2lnbmVkIGNoYXIgICAgQ1lHX0FUT01JQzsK CiAKIAoKdHlwZWRlZiBjeWdfdWludDMyICBDWUdfV09SRDsKdHlwZWRlZiBjeWdfdWludDggICBD WUdfQllURTsKdHlwZWRlZiBjeWdfdWludDE2ICBDWUdfV09SRDE2Owp0eXBlZGVmIGN5Z191aW50 MzIgIENZR19XT1JEMzI7CnR5cGVkZWYgY3lnX3VpbnQ2NCAgQ1lHX1dPUkQ2NDsKCnR5cGVkZWYg Y3lnX3VpbnQzMiAgIENZR19BRERSRVNTOwp0eXBlZGVmIGN5Z191aW50MzIgIENZR19BRERSV09S RDsKCiAKIAogCgoKCgoKCgoKICAgIAogCiAKCgoKCgoKCgoKCgoKCgoKCgoKCgogCiAKCgogCgoK IAoKCiAKIAoKCiAKIAoKCgogCiAKIAoKCgogCiAKCgogCgoKIAoKCiMgMzI4ICIvaG9tZS9hbGV4 L3dvcmsvYXZ4L2luc3RhbGwvaW5jbHVkZS9jeWcvaW5mcmEvY3lnX3R5cGUuaCIKCgogCiAKCgoK CiAKIAogCiAKIAogCiAKIAogCgoKCgoKCgoKCgoKCgogCiAKIAoKCgoKIAoKIAojIDUzICIvaG9t ZS9hbGV4L3dvcmsvYXZ4L2luc3RhbGwvaW5jbHVkZS9jeWcvbGliYy9zdGRpby9zdGRpby5oIiAy CgojIDEgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL3N0ZGFyZy5oIiAxCgoK IAoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCiMg MSAiL2hvbWUvZWNvcy90b29scy9ILWk2ODYtcGMtbGludXgtZ251L2xpYi9nY2MtbGliL2FybS1l bGYvMi45NS4yL2luY2x1ZGUvc3RkYXJnLmgiIDEgMyA0CiAKCgoKCgoKCgoKCgoKCgoKCgoKCgoK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCiAKCgoKCgoKdHlwZWRl ZiB2b2lkICpfX2dudWNfdmFfbGlzdDsKCgoKIAoKCgogCgoKCgoKCgoKCgoKCgoKCgoKdm9pZCB2 YV9lbmQgKF9fZ251Y192YV9saXN0KTsJCSAKCgogCgoKCiAKCgoKCgoKCgoKCgoKIAoKCgoKCgoK CgoKCgoKCgoKCgoKCgoKCiAKIAoKCgoKCgoKCgoKCgoKIyAxNzUgIi9ob21lL2Vjb3MvdG9vbHMv SC1pNjg2LXBjLWxpbnV4LWdudS9saWIvZ2NjLWxpYi9hcm0tZWxmLzIuOTUuMi9pbmNsdWRlL3N0 ZGFyZy5oIiAzIDQKCgogCgoKCgogCgogCgogCgp0eXBlZGVmIF9fZ251Y192YV9saXN0IHZhX2xp c3Q7CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCiMgNTcgIi9ob21lL2FsZXgvd29yay9hdngvaW5z dGFsbC9pbmNsdWRlL3N0ZGFyZy5oIiAyCgoKCgogCiMgNTQgIi9ob21lL2FsZXgvd29yay9hdngv aW5zdGFsbC9pbmNsdWRlL2N5Zy9saWJjL3N0ZGlvL3N0ZGlvLmgiIDIKCgogCgogCiAKCiAKIAoK CgoKCiAKIAoKCiAKIAoKCgoKCiAKCiAKIAp0eXBlZGVmIGN5Z191Y291bnQzMiBmcG9zX3Q7CgoK IAogCiAKIAogCiAKIAogCiAKdHlwZWRlZiBDWUdfQUREUkVTUyBGSUxFWzk5OTldOwoKIAoKIAog CiAKIAogCgoKZXh0ZXJuICJDIiAgRklMRSAqc3RkaW4sICpzdGRvdXQsICpzdGRlcnI7CgoKIAoK IAoKIAoKZXh0ZXJuICJDIiAgIGludApmY2xvc2UoIEZJTEUgKiAgICk7CgpleHRlcm4gIkMiICAg aW50CmZmbHVzaCggRklMRSAqICAgKTsKCmV4dGVybiAiQyIgICBGSUxFICoKZm9wZW4oIGNvbnN0 IGNoYXIgKiAgLCBjb25zdCBjaGFyICogICApOwoKZXh0ZXJuICJDIiAgIEZJTEUgKgpmcmVvcGVu KCBjb25zdCBjaGFyICogICwgY29uc3QgY2hhciAqICAsCiAgICAgICAgIEZJTEUgKiAgICk7Cgpl eHRlcm4gIkMiICAgdm9pZApzZXRidWYoIEZJTEUgKiAgLCBjaGFyICogICApOwoKZXh0ZXJuICJD IiAgIGludApzZXR2YnVmKCBGSUxFICogICwgY2hhciAqICAsIGludCAgLAogICAgICAgICBzaXpl X3QgICApOwoKIAoKIAoKZXh0ZXJuICJDIiAgIGludApmcHJpbnRmKCBGSUxFICogICwgY29uc3Qg Y2hhciAqICAsIC4uLiApOwoKZXh0ZXJuICJDIiAgIGludApmc2NhbmYoIEZJTEUgKiAgLCBjb25z dCBjaGFyICogICwgLi4uICk7CgpleHRlcm4gIkMiICAgaW50CnByaW50ZiggY29uc3QgY2hhciAq ICAsIC4uLiApOwoKZXh0ZXJuICJDIiAgIGludApzY2FuZiggY29uc3QgY2hhciAqICAsIC4uLiAp OwoKZXh0ZXJuICJDIiAgIGludApzcHJpbnRmKCBjaGFyICogICwgY29uc3QgY2hhciAqICAsIC4u LiApOwoKZXh0ZXJuICJDIiAgIGludApzc2NhbmYoIGNvbnN0IGNoYXIgKiAgLCBjb25zdCBjaGFy ICogICwgLi4uICk7CgpleHRlcm4gIkMiICAgaW50CnZmcHJpbnRmKCBGSUxFICogICwgY29uc3Qg Y2hhciAqICAsCiAgICAgICAgICB2YV9saXN0ICAgKTsKCmV4dGVybiAiQyIgICBpbnQKdnByaW50 ZiggY29uc3QgY2hhciAqICAsIHZhX2xpc3QgICApOwoKZXh0ZXJuICJDIiAgIGludAp2c3ByaW50 ZiggY2hhciAqICAsIGNvbnN0IGNoYXIgKiAgLAogICAgICAgICAgdmFfbGlzdCAgICk7CgogCgog CgpleHRlcm4gIkMiICAgaW50CmZnZXRjKCBGSUxFICogICApOwoKZXh0ZXJuICJDIiAgIGNoYXIg KgpmZ2V0cyggY2hhciAqICAsIGludCAgLCBGSUxFICogICApOwoKZXh0ZXJuICJDIiAgIGludApm cHV0YyggaW50ICAsIEZJTEUgKiAgICk7CgpleHRlcm4gIkMiICAgaW50CnB1dGMoIGludCAgLCBG SUxFICogICApOwoKZXh0ZXJuICJDIiAgIGludApwdXRjaGFyKCBpbnQgICApOwoKZXh0ZXJuICJD IiAgIGludApmcHV0cyggY29uc3QgY2hhciAqICAsIEZJTEUgKiAgICk7CgpleHRlcm4gIkMiICAg Y2hhciAqCmdldHMoIGNoYXIgKiApOwoKZXh0ZXJuICJDIiAgIGludApnZXRjKCBGSUxFICogICAp OwoKZXh0ZXJuICJDIiAgIGludApnZXRjaGFyKCB2b2lkICk7CgpleHRlcm4gIkMiICAgaW50CnB1 dHMoIGNvbnN0IGNoYXIgKiAgICk7CgpleHRlcm4gIkMiICAgaW50CnVuZ2V0YyggaW50ICAsIEZJ TEUgKiAgICk7CgogCiAKCgoKCgogCgogCgpleHRlcm4gIkMiICAgc2l6ZV90CmZyZWFkKCB2b2lk ICogICwgc2l6ZV90ICAsCiAgICAgICBzaXplX3QgICwgRklMRSAqICAgKTsKCmV4dGVybiAiQyIg ICBzaXplX3QKZndyaXRlKCBjb25zdCB2b2lkICogICwgc2l6ZV90ICAsCiAgICAgICAgc2l6ZV90 ICAsIEZJTEUgKiAgICk7CgogCgogCgpleHRlcm4gIkMiICAgaW50CmZnZXRwb3MoIEZJTEUgKiAg LCBmcG9zX3QgKiAgICk7CgpleHRlcm4gIkMiICAgaW50CmZzZWVrKCBGSUxFICogICwgbG9uZyBp bnQgICwgaW50ICAgKTsKCmV4dGVybiAiQyIgICBpbnQKZnNldHBvcyggRklMRSAqICAsIGNvbnN0 IGZwb3NfdCAqICAgKTsKCmV4dGVybiAiQyIgICBsb25nIGludApmdGVsbCggRklMRSAqICAgKTsK CmV4dGVybiAiQyIgICB2b2lkCnJld2luZCggRklMRSAqICAgKTsKCiAKCiAKCmV4dGVybiAiQyIg ICB2b2lkCmNsZWFyZXJyKCBGSUxFICogICApOwoKZXh0ZXJuICJDIiAgIGludApmZW9mKCBGSUxF ICogICApOwoKZXh0ZXJuICJDIiAgIGludApmZXJyb3IoIEZJTEUgKiAgICk7CgpleHRlcm4gIkMi ICAgdm9pZApwZXJyb3IoIGNvbnN0IGNoYXIgKiAgICk7CgogCgogCgpleHRlcm4gIkMiICAgaW50 CmZucHJpbnRmKCBGSUxFICogICwgc2l6ZV90ICAsCiAgICAgICAgICBjb25zdCBjaGFyICogICwg Li4uICk7CgpleHRlcm4gIkMiICAgaW50CnNucHJpbnRmKCBjaGFyICogICwgc2l6ZV90ICAsIGNv bnN0IGNoYXIgKiAgLAogICAgICAgICAgLi4uICk7CgpleHRlcm4gIkMiICAgaW50CnZmbnByaW50 ZiggRklMRSAqICAsIHNpemVfdCAgLAogICAgICAgICAgIGNvbnN0IGNoYXIgKiAgLCB2YV9saXN0 ICAgKTsKCmV4dGVybiAiQyIgICBpbnQKdnNucHJpbnRmKCBjaGFyICogICwgc2l6ZV90ICAsCiAg ICAgICAgICAgY29uc3QgY2hhciAqICAsIHZhX2xpc3QgICApOwoKZXh0ZXJuICJDIiAgIGludAp2 c2NhbmYoIGNvbnN0IGNoYXIgKiAgLCB2YV9saXN0ICAgKTsKCmV4dGVybiAiQyIgICBpbnQKdnNz Y2FuZiggY29uc3QgY2hhciAqICAsIGNvbnN0IGNoYXIgKiAgLAogICAgICAgICB2YV9saXN0ICAg KTsKCmV4dGVybiAiQyIgICBpbnQKdmZzY2FuZiggRklMRSAqICAsIGNvbnN0IGNoYXIgKiAgLAog ICAgICAgICB2YV9saXN0ICAgKTsKCgogCgoKIyAxICIvaG9tZS9hbGV4L3dvcmsvYXZ4L2luc3Rh bGwvaW5jbHVkZS9jeWcvbGliYy9zdGRpby9zdGRpby5pbmwiIDEKCgogCiAKIAogCiAKIAogCiAK IAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAog CiAKIAogCiAKIAogCgogCgoKCiAKCgojIDEgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9p bmNsdWRlL3N0ZGRlZi5oIiAxCiAKIAoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoK CgoKCgoKCgoKCgoKCgoKCgoKIyAxICIvaG9tZS9lY29zL3Rvb2xzL0gtaTY4Ni1wYy1saW51eC1n bnUvbGliL2djYy1saWIvYXJtLWVsZi8yLjk1LjIvaW5jbHVkZS9zdGRkZWYuaCIgMSAzIDQKIyAz NDIgIi9ob21lL2Vjb3MvdG9vbHMvSC1pNjg2LXBjLWxpbnV4LWdudS9saWIvZ2NjLWxpYi9hcm0t ZWxmLzIuOTUuMi9pbmNsdWRlL3N0ZGRlZi5oIiAzIDQKCiMgNTUgIi9ob21lL2FsZXgvd29yay9h dngvaW5zdGFsbC9pbmNsdWRlL3N0ZGRlZi5oIiAyCgoKIAojIDU0ICIvaG9tZS9hbGV4L3dvcmsv YXZ4L2luc3RhbGwvaW5jbHVkZS9jeWcvbGliYy9zdGRpby9zdGRpby5pbmwiIDIKCgojIDEgIi9o b21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL3N0ZGlvLmgiIDEKIyAxMTcgIi9ob21l L2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL3N0ZGlvLmgiCgoKIAojIDU2ICIvaG9tZS9h bGV4L3dvcmsvYXZ4L2luc3RhbGwvaW5jbHVkZS9jeWcvbGliYy9zdGRpby9zdGRpby5pbmwiIDIK CiMgMSAiL2hvbWUvYWxleC93b3JrL2F2eC9pbnN0YWxsL2luY2x1ZGUvZXJybm8uaCIgMQoKCiAK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgogCgoKCiAKCgoj IDEgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL2N5Zy9lcnJvci9jb2Rlcy5o IiAxCgoKIAoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoK CgoKCgoKCgoKCgoKIAoKIyAxICIvaG9tZS9hbGV4L3dvcmsvYXZ4L2luc3RhbGwvaW5jbHVkZS9w a2djb25mL2Vycm9yLmgiIDEKCgogCgoKCgoKCgoKCgoKCgoKIyA2NyAiL2hvbWUvYWxleC93b3Jr L2F2eC9pbnN0YWxsL2luY2x1ZGUvY3lnL2Vycm9yL2NvZGVzLmgiIDIKCgoKZXh0ZXJuICJDIiB7 CgoKIAoKIAoKCgp0eXBlZGVmIGludCBDeWdfRXJyTm87CgoKIAoKIAoKCgoKCgoKCgoKCgoKCgoK CgogICAgCgoKICAgIAoKCgogICAgCgoKICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAKCgoKCiAgICAKCgoKCiAgICAKIAoKCgoKCgogCgoKCiAKCgoKCgoKCgoKCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgCgoKCiAKCgoKCgoKCgoKCgoKCgoKCgp9ICAgIAoKCgoK IAojIDU4ICIvaG9tZS9hbGV4L3dvcmsvYXZ4L2luc3RhbGwvaW5jbHVkZS9lcnJuby5oIiAyCgoK CgojIDEgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL2N5Zy9lcnJvci9lcnJu by5oIiAxCgoKIAoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCiAK CgoKCgogCgoKCgpleHRlcm4gIkMiIHsKCgogCgoKCgpleHRlcm4gQ3lnX0Vyck5vICogY29uc3QK Y3lnX2Vycm9yX2dldF9lcnJub19wKCB2b2lkICkgX19hdHRyaWJ1dGVfXygoY29uc3QpKTsKCgoK CiAKCgoKCgoKCgp9ICAgIAoKCgoKCgogCiMgNjIgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFs bC9pbmNsdWRlL2Vycm5vLmgiIDIKCgoKCgogCiMgNTcgIi9ob21lL2FsZXgvd29yay9hdngvaW5z dGFsbC9pbmNsdWRlL2N5Zy9saWJjL3N0ZGlvL3N0ZGlvLmlubCIgMgoKIyAxICIvaG9tZS9hbGV4 L3dvcmsvYXZ4L2luc3RhbGwvaW5jbHVkZS9zdHJpbmcuaCIgMQoKCiAKCgoKCgoKCgoKCgoKCgoK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKIAoKCgogCgogCgoKCgojIDEgIi9ob21l L2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL3N0ZGRlZi5oIiAxCiAKIAoKCgoKCgoKCgoK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKIyAxICIvaG9tZS9lY29z L3Rvb2xzL0gtaTY4Ni1wYy1saW51eC1nbnUvbGliL2djYy1saWIvYXJtLWVsZi8yLjk1LjIvaW5j bHVkZS9zdGRkZWYuaCIgMSAzIDQKCgoKCgoKIAoKCiMgMTkgIi9ob21lL2Vjb3MvdG9vbHMvSC1p Njg2LXBjLWxpbnV4LWdudS9saWIvZ2NjLWxpYi9hcm0tZWxmLzIuOTUuMi9pbmNsdWRlL3N0ZGRl Zi5oIiAzIDQKCgoKIAoKCiAKCgoKCgogCgoKIyA2MSAiL2hvbWUvZWNvcy90b29scy9ILWk2ODYt cGMtbGludXgtZ251L2xpYi9nY2MtbGliL2FybS1lbGYvMi45NS4yL2luY2x1ZGUvc3RkZGVmLmgi IDMgNAoKCiAKCgoKCgogCgoKCgoKCgoKCgoKCgoKCgoKCiAKCgoKCgogCgogCgoKIyAxMjYgIi9o b21lL2Vjb3MvdG9vbHMvSC1pNjg2LXBjLWxpbnV4LWdudS9saWIvZ2NjLWxpYi9hcm0tZWxmLzIu OTUuMi9pbmNsdWRlL3N0ZGRlZi5oIiAzIDQKCgogCgoKCgogCgogCgoKIyAxODggIi9ob21lL2Vj b3MvdG9vbHMvSC1pNjg2LXBjLWxpbnV4LWdudS9saWIvZ2NjLWxpYi9hcm0tZWxmLzIuOTUuMi9p bmNsdWRlL3N0ZGRlZi5oIiAzIDQKCgoKCgogCgoKCgogCgoKIyAyNjkgIi9ob21lL2Vjb3MvdG9v bHMvSC1pNjg2LXBjLWxpbnV4LWdudS9saWIvZ2NjLWxpYi9hcm0tZWxmLzIuOTUuMi9pbmNsdWRl L3N0ZGRlZi5oIiAzIDQKCgoKCgoKCgoKCgoKCgoKCiAKCiAKCiMgMzE3ICIvaG9tZS9lY29zL3Rv b2xzL0gtaTY4Ni1wYy1saW51eC1nbnUvbGliL2djYy1saWIvYXJtLWVsZi8yLjk1LjIvaW5jbHVk ZS9zdGRkZWYuaCIgMyA0CgoKCgogCgoKCgoKCgoKCgoKCgogCgoKCgoKCgojIDU1ICIvaG9tZS9h bGV4L3dvcmsvYXZ4L2luc3RhbGwvaW5jbHVkZS9zdGRkZWYuaCIgMgoKCiAKIyA2MyAiL2hvbWUv YWxleC93b3JrL2F2eC9pbnN0YWxsL2luY2x1ZGUvc3RyaW5nLmgiIDIKCgoKIyAxICIvaG9tZS9h bGV4L3dvcmsvYXZ4L2luc3RhbGwvaW5jbHVkZS9jeWcvZXJyb3Ivc3RyZXJyb3IuaCIgMQoKCiAK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgogCgoKCiAKCgoKCmV4 dGVybiAiQyIgewoKCiAKCiAKCgoKZXh0ZXJuIGNoYXIgKgpzdHJlcnJvciggQ3lnX0Vyck5vICk7 CgogCgoKCmV4dGVybiBjaGFyICoKX19zdHJlcnJvciggQ3lnX0Vyck5vICk7CgoKfSAgICAKCgoK CiAKIyA2NiAiL2hvbWUvYWxleC93b3JrL2F2eC9pbnN0YWxsL2luY2x1ZGUvc3RyaW5nLmgiIDIK CgoKIAoKCgoKCgoKZXh0ZXJuIAoKIkMiCgp2b2lkICoKbWVtY3B5KCB2b2lkICosIGNvbnN0IHZv aWQgKiwgc2l6ZV90ICk7CgoKCgoKCgpleHRlcm4gCgoiQyIKCnZvaWQgKgptZW1zZXQoIHZvaWQg KiwgaW50LCBzaXplX3QgKTsKCgoKCiMgMSAiL2hvbWUvYWxleC93b3JrL2F2eC9pbnN0YWxsL2lu Y2x1ZGUvY3lnL2xpYmMvc3RyaW5nL3N0cmluZy5oIiAxCgoKIAoKCgoKCgoKCgoKCgoKCgoKCgoK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgogCgojIDEgIi9ob21lL2FsZXgvd29yay9hdngvaW5z dGFsbC9pbmNsdWRlL3BrZ2NvbmYvbGliY19zdHJpbmcuaCIgMQoKCiAKCgoKCgoKCgoKCgoKCiMg NTEgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL2N5Zy9saWJjL3N0cmluZy9z dHJpbmcuaCIgMgoKCgpleHRlcm4gIkMiIHsKCgogCgogCgogCgpleHRlcm4gdm9pZCAqCm1lbW1v dmUoIHZvaWQgKiwgY29uc3Qgdm9pZCAqLCBzaXplX3QgKTsKCmV4dGVybiBjaGFyICoKc3RyY3B5 KCBjaGFyICosIGNvbnN0IGNoYXIgKiApOwoKZXh0ZXJuIGNoYXIgKgpzdHJuY3B5KCBjaGFyICos IGNvbnN0IGNoYXIgKiwgc2l6ZV90ICk7CgogCgogCgpleHRlcm4gY2hhciAqCnN0cmNhdCggY2hh ciAqLCBjb25zdCBjaGFyICogKTsKCmV4dGVybiBjaGFyICoKc3RybmNhdCggY2hhciAqLCBjb25z dCBjaGFyICosIHNpemVfdCApOwoKCiAKCiAKCmV4dGVybiBpbnQKbWVtY21wKCBjb25zdCB2b2lk ICosIGNvbnN0IHZvaWQgKiwgc2l6ZV90ICk7CgpleHRlcm4gaW50CnN0cmNtcCggY29uc3QgY2hh ciAqLCBjb25zdCBjaGFyICogKTsKCmV4dGVybiBpbnQKc3RyY29sbCggY29uc3QgY2hhciAqLCBj b25zdCBjaGFyICogKTsKCmV4dGVybiBpbnQKc3RybmNtcCggY29uc3QgY2hhciAqLCBjb25zdCBj aGFyICosIHNpemVfdCApOwoKZXh0ZXJuIHNpemVfdApzdHJ4ZnJtKCBjaGFyICosIGNvbnN0IGNo YXIgKiwgc2l6ZV90ICk7CgoKIAoKIAoKZXh0ZXJuIHZvaWQgKgptZW1jaHIoIGNvbnN0IHZvaWQg KiwgaW50LCAgc2l6ZV90ICk7CgpleHRlcm4gY2hhciAqCnN0cmNociggY29uc3QgY2hhciAqLCBp bnQgKTsKCmV4dGVybiBzaXplX3QKc3RyY3NwbiggY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICog KTsKCmV4dGVybiBjaGFyICoKc3RycGJyayggY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICogKTsK CmV4dGVybiBjaGFyICoKc3RycmNociggY29uc3QgY2hhciAqLCBpbnQgKTsKCmV4dGVybiBzaXpl X3QKc3Ryc3BuKCBjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiApOwoKZXh0ZXJuIGNoYXIgKgpz dHJzdHIoIGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqICk7CgpleHRlcm4gY2hhciAqCnN0cnRv ayggY2hhciAqLCBjb25zdCBjaGFyICogKTsKCiAKCmV4dGVybiBjaGFyICoKc3RydG9rX3IoIGNo YXIgKiwgY29uc3QgY2hhciAqLCBjaGFyICoqICk7CgoKIAoKIAoKZXh0ZXJuIHNpemVfdApzdHJs ZW4oIGNvbnN0IGNoYXIgKiApOwoKCn0gICAgCgoKIAoKCiMgMSAiL2hvbWUvYWxleC93b3JrL2F2 eC9pbnN0YWxsL2luY2x1ZGUvY3lnL2xpYmMvc3RyaW5nL3N0cmluZy5pbmwiIDEKCgogCiAKIAog CiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAKIAogCiAK IAogCiAKIAogCiAKIAogCiAKIAogCiAKCiAKCgoKIAoKZXh0ZXJuIF9faW5saW5lX18gaW50CnN0 cmNvbGwoIGNvbnN0IGNoYXIgKnMxLCBjb25zdCBjaGFyICpzMiApCnsKICAgIHJldHVybiBzdHJj bXAoczEsIHMyKTsKfSAgCgoKCgogCiMgMTUxICIvaG9tZS9hbGV4L3dvcmsvYXZ4L2luc3RhbGwv aW5jbHVkZS9jeWcvbGliYy9zdHJpbmcvc3RyaW5nLmgiIDIKCgoKCgogCiMgMTAwICIvaG9tZS9h bGV4L3dvcmsvYXZ4L2luc3RhbGwvaW5jbHVkZS9zdHJpbmcuaCIgMgoKCgoKCgoKCgoKCgoKCgoK CgoKCgogCiMgNTggIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL2N5Zy9saWJj L3N0ZGlvL3N0ZGlvLmlubCIgMgoKIyAxICIvaG9tZS9hbGV4L3dvcmsvYXZ4L2luc3RhbGwvaW5j bHVkZS9saW1pdHMuaCIgMQoKCiAKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoK CgoKCgoKCgoKCgoKIAoKCgogCgogCgoKCgoKCgogCgoKIAoKCiAKCgogCgoKIAoKCiAKCgogCgoK IAoKCiAKCgoKIAoKCiAKCgogCgoKIAoKCiAKCgogCgoKIAoKCiAKCgogCgoKIAoKCiAKCgogCgoK IAoKCiAKCgogCgoKIAoKCiAKCgogCgoKIAoKCiAKCgoKCgoKCgoKCgogCgoKCgoKCgoKCgoKCgoK CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCiMgMSAiL2hvbWUvZWNvcy90b29scy9ILWk2ODYtcGMt bGludXgtZ251L2xpYi9nY2MtbGliL2FybS1lbGYvMi45NS4yL2luY2x1ZGUvbGltaXRzLmgiIDEg MyA0CgoKCiAKCgoKIAoKCgogCgoKCgogCgoKCgoKIAoKCgogCgoKCgoKCgoKCgoKCiAKCiAKCgoK CiAKCgoKIAoKCgoKCgoKCiAKCgoKIAoKCgoKCgoKCgoKCgoKIAoKCgoKIAoKCgoKCgoKCiAKCgoK CgoKIyAyMDMgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL2xpbWl0cy5oIiAy CgoKCgogCiMgNTkgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL2N5Zy9saWJj L3N0ZGlvL3N0ZGlvLmlubCIgMgoKCiAKCiAKCiAKCmV4dGVybiBfX2lubGluZV9fIHZvaWQKc2V0 YnVmKCBGSUxFICpzdHJlYW0sIGNoYXIgKmJ1ZiApCnsKICAgIGlmIChidWYgPT0gX19udWxsICkK ICAgICAgICBzZXR2YnVmKCBzdHJlYW0sIF9fbnVsbCAsICgtOCkgLCAyNTYgICk7CiAgICBlbHNl CiAgICAgICAgIAogICAgICAgICAKICAgICAgICAgCiAgICAgICAgc2V0dmJ1Ziggc3RyZWFtLCBi dWYsICgtNCkgLCAyNTYgICk7Cgp9ICAKCiAKCiAKCmV4dGVybiBfX2lubGluZV9fIGludAp2ZnBy aW50ZiggRklMRSAqc3RyZWFtLCBjb25zdCBjaGFyICpmb3JtYXQsIHZhX2xpc3QgYXJnICkKewog ICAgcmV0dXJuIHZmbnByaW50ZihzdHJlYW0sIDIxNDc0ODM2NDcgICwgZm9ybWF0LCBhcmcpOwp9 ICAKCgpleHRlcm4gX19pbmxpbmVfXyBpbnQKdnByaW50ZiggY29uc3QgY2hhciAqZm9ybWF0LCB2 YV9saXN0IGFyZyApCnsKICAgIHJldHVybiB2Zm5wcmludGYoc3Rkb3V0LCAyMTQ3NDgzNjQ3ICAs IGZvcm1hdCwgYXJnKTsKfSAgCgoKZXh0ZXJuIF9faW5saW5lX18gaW50CnZzcHJpbnRmKCBjaGFy ICpzLCBjb25zdCBjaGFyICpmb3JtYXQsIHZhX2xpc3QgYXJnICkKewogICAgcmV0dXJuIHZzbnBy aW50ZihzLCAyMTQ3NDgzNjQ3ICAsIGZvcm1hdCwgYXJnKTsKfSAgCgoKIAoKIAoKZXh0ZXJuIF9f aW5saW5lX18gaW50CnB1dHMoIGNvbnN0IGNoYXIgKnMgKQp7CiAgICBpbnQgcmM7CgogICAgcmMg PSBmcHV0cyggcywgc3Rkb3V0ICk7CgogICAgaWYgKHJjID49IDApCiAgICAgICAgcmMgPSBmcHV0 YygnXG4nLCBzdGRvdXQgKTsKCiAgICByZXR1cm4gcmM7Cn0gIAoKCiAKCiAKCmV4dGVybiBfX2lu bGluZV9fIHZvaWQKcGVycm9yKCBjb25zdCBjaGFyICpzICkKewogICAgaWYgKHMgJiYgKnMpCiAg ICAgICAgZnByaW50Ziggc3RkZXJyLCAiJXM6ICVzXG4iLCBzLCBzdHJlcnJvcigoKmN5Z19lcnJv cl9nZXRfZXJybm9fcCgpKSApICk7CiAgICBlbHNlCiAgICAgICAgZnB1dHMoIHN0cmVycm9yKCgq Y3lnX2Vycm9yX2dldF9lcnJub19wKCkpICksIHN0ZGVyciApOwoKfSAgCgogCgogCgpleHRlcm4g X19pbmxpbmVfXyBpbnQKdnNjYW5mKCBjb25zdCBjaGFyICpmb3JtYXQsIHZhX2xpc3QgYXJnICkK ewogICAgcmV0dXJuIHZmc2NhbmYoIHN0ZGluLCBmb3JtYXQsIGFyZyApOwp9ICAKCgoKCiAKIyAy OTQgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRlL2N5Zy9saWJjL3N0ZGlvL3N0 ZGlvLmgiIDIKCgoKCgogCiMgNjUgIi9ob21lL2FsZXgvd29yay9hdngvaW5zdGFsbC9pbmNsdWRl L3N0ZGlvLmgiIDIKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoK CgoKCgoKCgoKIAojIDEgImNwcHRlc3QuY3h4IiAyCgpjbGFzcyBUZXN0MQ0Kew0KcHVibGljOg0K ICBUZXN0MSgpe30NCiAgdmlydHVhbCBpbnQgZjEoKTsNCn07DQoNCmludCBUZXN0MTo6ZjEoKQ0K ew0KICByZXR1cm4gMTA7DQp9DQoNCmNsYXNzIFRlc3QyIDogcHVibGljIFRlc3QxDQp7DQpwdWJs aWM6DQogIFRlc3QyKCk6djEoMjApe30NCiAgdmlydHVhbCBpbnQgZjEoKTsNCiAgaW50IHYxOw0K fTsNCg0KaW50IFRlc3QyOjpmMSgpDQp7DQogIHJldHVybiAodjErMjMpOw0KfQ0KDQoNCmludCBt YWluKCkNCnsNCiAgVGVzdDIgKnQyOw0KICBUZXN0MiB0c3QyOw0KICB0MiA9ICZ0c3QyOw0KICBp bnQgYSA9IHQyLT5mMSgpOw0KICBwcmludGYoIkhlbGxvIFdvcmxkISByPSVkXG4iLCBhKTsNCiAg cmV0dXJuIDA7DQp9DQo= --Boundary-=_nWlrBbmQBhCDarzOwKkYHIDdqSCD--