This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

c++/9871: Crash in __tcf_0 local cleanup called from __libc_start_main at end of program


>Number:         9871
>Category:       c++
>Synopsis:       Crash in __tcf_0 local cleanup called from __libc_start_main at end of program
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Feb 27 04:06:01 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Nicolas Rouquette
>Release:        GCC-3.2
>Organization:
>Environment:
Linux gabizou.jpl.nasa.gov 2.4.18-10smp #1 SMP Wed Aug 7 11:17:48 EDT 2002 i686 unknown
>Description:
According to the C++ standard, local objects that require dynamic initialization must be cleaned up. Here is an short example to show that this property is violated for local static objects declared in functions that appear in shared objects on Linux. The same example works properly on solaris 2.8 with the same GCC 3.2 compiler.

Reading specs from /dsw/gcc-3.2/lib/gcc-lib/i686-pc-linux-gnu/3.2/specs
Configured with: /tmp/gcc-3.2/configure --prefix=/dsw/gcc-3.2
Thread model: posix
gcc version 3.2

Reading specs from /dsw/gcc-3.2/lib/gcc-lib/sparc-sun-solaris2.8/3.2/specs
Configured with: ../configure --prefix=/dsw/gcc-3.2 --with-as=/usr/ccs/bin/as --with-ld=/usr/ccs/bin/ld --disable-nls --srcdir=/export/build/gcc-3.2
Thread model: posix
gcc version 3.2

It is not clear to me whether the bug is in the compiler itself or one of the runtime libraries or a combination of them.
>How-To-Repeat:
The attachment has two source files and two log files:
app.cpp
m1.cpp
gcc-linux.log
gcc-sol2.log

Compile & link app.cpp as an application: app
Compile & link m1.cpp as a shared library: libm1.so
run:

./app _Z4foo2v

this will dlopen the libm1.so and call
extern const std::string& foo2()

it has no objects that require dynamic initialization/finalization => ok

run:
./app _Z4foo1.v

this will call:
extern const std::string& foo1()
{
  static const std::string me = "foo1";
  std::cout << "my name is: '" << me << "'" << std::endl;
  return me;
}
The crash turns out to be in the compiler-generated local cleanup function: __tcf_0

See 
gcc-linux.log for the run on linux, 
gcc-sol2.log for the run on solaris 2.x

this will crash
>Fix:
There is a workaround: move the local variable that has static storage out of the function into namespace scope.
This workaround has some limitations of its own (e.g. template functions) so a proper fix would be much preferable.
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/x-tar; name="tcf-bug.tar"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="tcf-bug.tar"

YXBwLmNwcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAxMDA2NDQAMDAwMzY1
MQAwMDEyMjY0ADAwMDAwMDAxMTI1ADA3NjI3MzAxMDcyADAxMTYwNwAgMAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1c3RhciAgAHJvdXF1ZXR0AAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAbWRzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAj
aW5jbHVkZSA8aW9zdHJlYW0+CiNpbmNsdWRlIDx0eXBlaW5mbz4KI2luY2x1ZGUgPGRsZmNuLmg+
CiNpbmNsdWRlIDxsaW5rLmg+CiNpbmNsdWRlIDxjYXNzZXJ0PgoKLy8gLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaW50IGdldENvdW50ZXIoKQp7CiAgc3RhdGljIGlu
dCBjb3VudGVyID0gMDsKICByZXR1cm4gKytjb3VudGVyOwp9CgppbnQgbWFpbihpbnQgYXJnYywg
Y2hhcioqIGFyZ3YpCnsKICB2b2lkKiBoID0gZGxvcGVuKCIuL2xpYm0xLnNvIiwgUlRMRF9MQVpZ
KTsKICBpZiAoaCA9PSAwKQogICAgewogICAgICBzdGQ6OmNvdXQgPDwgIkxvYWQgZmFpbGVkOiAi
IDw8IGRsZXJyb3IoKSA8PCBzdGQ6OmVuZGw7CiAgICAgIHJldHVybiAtMTsKICAgIH0KCiAgdm9p
ZCAoKmYpKCkgPSAodm9pZCAoKikoKSlkbHN5bShoLCBhcmd2WzFdKTsKICBpZiAoZiAhPSAwKQog
ICAgKCpmKSgpOwogIGVsc2UKICAgIHsKICAgICAgc3RkOjpjb3V0IDw8ICJkbHN5bSBmYWlsZWQ6
ICIgPDwgZGxlcnJvcigpIDw8IHN0ZDo6ZW5kbDsKICAgICAgcmV0dXJuIC0xOwogICAgfQoKICBk
bGNsb3NlKGgpOwoKICByZXR1cm4gMDsKfQoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbTEu
Y3BwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAxMDA2NDQAMDAwMzY1MQAw
MDEyMjY0ADAwMDAwMDAwNjY2ADA3NjI3MzAwNjA1ADAxMTM1NgAgMAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1c3RhciAgAHJvdXF1ZXR0AAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAbWRzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjaW5j
bHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8aW9zdHJlYW0+CgpleHRlcm4gaW50IGdldENvdW50ZXIo
KTsKCm5hbWVzcGFjZSB7CiAgaW50IHhpID0gZ2V0Q291bnRlcigpOwp9CgoKZXh0ZXJuIGNvbnN0
IHN0ZDo6c3RyaW5nJiBmb28xKCkKewogIHN0YXRpYyBjb25zdCBzdGQ6OnN0cmluZyBtZSA9ICJm
b28xIjsKICBzdGQ6OmNvdXQgPDwgIm15IG5hbWUgaXM6ICciIDw8IG1lIDw8ICInIiA8PCBzdGQ6
OmVuZGw7CiAgcmV0dXJuIG1lOwp9Cgpjb25zdCBzdGQ6OnN0cmluZyBtZTIgPSAiZm9vMiI7Cgpl
eHRlcm4gY29uc3Qgc3RkOjpzdHJpbmcmIGZvbzIoKQp7CiAgc3RkOjpjb3V0IDw8ICJteSBuYW1l
IGlzOiAnIiA8PCBtZTIgPDwgIiciIDw8IHN0ZDo6ZW5kbDsKICByZXR1cm4gbWUyOwp9CgpuYW1l
c3BhY2UgewogIGludCB4ZiA9IGdldENvdW50ZXIoKTsKfQoAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGdjYy1s
aW51eC5sb2cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMTAwNjY0ADAwMDM2NTEAMDAx
MjI2NAAwMDAwMDAwNjA1NQAwNzYyNzMwNTExNAAwMTI3MzEAIDAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXN0YXIgIAByb3VxdWV0dAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAG1kcwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY2QgL2hv
bWUvcm91cXVldHQvQysrL3RjZjIvCm1ha2UgLWYgTWFrZWZpbGUuZ2NjLWxpbnV4IGNsZWFuIGFw
cCBtMQovYmluL3JtIC1yZiBnY2MteDg2Cm1rZGlyIGdjYy14ODYKbWtkaXIgZ2NjLXg4Ni9hcHAg
Z2NjLXg4Ni9tMSBnY2MteDg2L20yIGdjYy14ODYvYmluIGdjYy14ODYvcHVyaWZ5LWNhY2hlCihj
ZCBnY2MteDg2L2FwcDsgL2Rzdy9nY2MtMy4yL2Jpbi9nKysgLWcgLXNoYXJlZCAtYyAuLi8uLi9h
cHAuY3BwKQooY2QgZ2NjLXg4Ni9hcHA7IC9kc3cvZ2NjLTMuMi9iaW4vZysrIC1nIC1ML2Rzdy9n
Y2MtMy4yL2xpYiAtV2wsLXJwYXRoLC9kc3cvZ2NjLTMuMi9saWIgLWxzdGRjKysgLWxkbCAtV2ws
LS1leHBvcnQtZHluYW1pYyAtbyAuLi9iaW4vYXBwIGFwcC5vKQooY2QgZ2NjLXg4Ni9tMTsgL2Rz
dy9nY2MtMy4yL2Jpbi9nKysgLWcgLXNoYXJlZCAtYyAuLi8uLi9tMS5jcHApCihjZCBnY2MteDg2
L20xOyAvZHN3L2djYy0zLjIvYmluL2crKyAtZyAtTC9kc3cvZ2NjLTMuMi9saWIgLVdsLC1ycGF0
aCwvZHN3L2djYy0zLjIvbGliIC1sc3RkYysrIC1XbCwtLWV4cG9ydC1keW5hbWljIC1zaGFyZWQg
LW8gLi4vYmluL2xpYm0xLnNvIG0xLm8pCgpDb21waWxhdGlvbiAwIGF0IFdlZCBGZWIgMjYgMTk6
NDA6MjIgCgpbODE1XSAkIGdkYiBhcHAKR05VIGdkYiBSZWQgSGF0IExpbnV4ICg1LjItMikKQ29w
eXJpZ2h0IDIwMDIgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCkdEQiBpcyBmcmVlIHNv
ZnR3YXJlLCBjb3ZlcmVkIGJ5IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSwgYW5kIHlv
dSBhcmUKd2VsY29tZSB0byBjaGFuZ2UgaXQgYW5kL29yIGRpc3RyaWJ1dGUgY29waWVzIG9mIGl0
IHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucy4KVHlwZSAic2hvdyBjb3B5aW5nIiB0byBzZWUgdGhl
IGNvbmRpdGlvbnMuClRoZXJlIGlzIGFic29sdXRlbHkgbm8gd2FycmFudHkgZm9yIEdEQi4gIFR5
cGUgInNob3cgd2FycmFudHkiIGZvciBkZXRhaWxzLgpUaGlzIEdEQiB3YXMgY29uZmlndXJlZCBh
cyAiaTM4Ni1yZWRoYXQtbGludXgiLi4uCihnZGIpIHNldCBlbnZpcm9ubWVudCBMRF9ERUJVRz1m
aWxlcwooZ2RiKSBydW4gX1o0Zm9vMnYKU3RhcnRpbmcgcHJvZ3JhbTogL2hvbWUvcm91cXVldHQv
QysrL3RjZjIvZ2NjLXg4Ni9iaW4vYXBwIF9aNGZvbzJ2CjA4NDA0OgkKMDg0MDQ6CS4uLgowODQw
NDoJCjA4NDA0Oglpbml0aWFsaXplIHByb2dyYW06IC9ob21lL3JvdXF1ZXR0L0MrKy90Y2YyL2dj
Yy14ODYvYmluL2FwcAowODQwNDoJCjA4NDA0OgkKMDg0MDQ6CXRyYW5zZmVycmluZyBjb250cm9s
OiAvaG9tZS9yb3VxdWV0dC9DKysvdGNmMi9nY2MteDg2L2Jpbi9hcHAKMDg0MDQ6CQowODQwNDoJ
ZmlsZT0uL2xpYm0xLnNvOyAgZ2VuZXJhdGluZyBsaW5rIG1hcAowODQwNDoJICBkeW5hbWljOiAw
eDQwMGM1MjQwICBiYXNlOiAweDQwMGMzMDAwICAgc2l6ZTogMHgwMDAwMjNjMAowODQwNDoJICAg
IGVudHJ5OiAweDQwMGMzY2UwICBwaGRyOiAweDQwMGMzMDM0ICBwaG51bTogICAgICAgICAgMwow
ODQwNDoJCjA4NDA0OgkKMDg0MDQ6CWNhbGxpbmcgaW5pdDogLi9saWJtMS5zbwowODQwNDoJCjA4
NDA0OglvcGVuaW5nIGZpbGU9Li9saWJtMS5zbzsgb3BlbmNvdW50ID09IDEKMDg0MDQ6CQpteSBu
YW1lIGlzOiAnZm9vMicKMDg0MDQ6CQowODQwNDoJY2FsbGluZyBmaW5pOiAuL2xpYm0xLnNvCjA4
NDA0OgkKMDg0MDQ6CQowODQwNDoJY2FsbGluZyBmaW5pOiAvZHN3L2djYy0zLjIvbGliL2xpYnN0
ZGMrKy5zby41CjA4NDA0OgkKMDg0MDQ6CQowODQwNDoJY2FsbGluZyBmaW5pOiAvbGliL2xpYmRs
LnNvLjIKMDg0MDQ6CQowODQwNDoJCjA4NDA0OgljYWxsaW5nIGZpbmk6IC9saWIvbGlibS5zby42
CjA4NDA0OgkKMDg0MDQ6CQowODQwNDoJY2FsbGluZyBmaW5pOiAvZHN3L2djYy0zLjIvbGliL2xp
YmdjY19zLnNvLjEKMDg0MDQ6CQowODQwNDoJCjA4NDA0OgljYWxsaW5nIGZpbmk6IC9saWIvbGli
Yy5zby42CjA4NDA0OgkKClByb2dyYW0gZXhpdGVkIG5vcm1hbGx5LgooZ2RiKSBydW4gX1o0Zm9v
MXYKU3RhcnRpbmcgcHJvZ3JhbTogL2hvbWUvcm91cXVldHQvQysrL3RjZjIvZ2NjLXg4Ni9iaW4v
YXBwIF9aNGZvbzF2CjA4NDA1OgkKMDg0MDU6CS4uLgowODQwNToJCjA4NDA1Oglpbml0aWFsaXpl
IHByb2dyYW06IC9ob21lL3JvdXF1ZXR0L0MrKy90Y2YyL2djYy14ODYvYmluL2FwcAowODQwNToJ
CjA4NDA1OgkKMDg0MDU6CXRyYW5zZmVycmluZyBjb250cm9sOiAvaG9tZS9yb3VxdWV0dC9DKysv
dGNmMi9nY2MteDg2L2Jpbi9hcHAKMDg0MDU6CQowODQwNToJZmlsZT0uL2xpYm0xLnNvOyAgZ2Vu
ZXJhdGluZyBsaW5rIG1hcAowODQwNToJICBkeW5hbWljOiAweDQwMGM1MjQwICBiYXNlOiAweDQw
MGMzMDAwICAgc2l6ZTogMHgwMDAwMjNjMAowODQwNToJICAgIGVudHJ5OiAweDQwMGMzY2UwICBw
aGRyOiAweDQwMGMzMDM0ICBwaG51bTogICAgICAgICAgMwowODQwNToJCjA4NDA1OgkKMDg0MDU6
CWNhbGxpbmcgaW5pdDogLi9saWJtMS5zbwowODQwNToJCjA4NDA1OglvcGVuaW5nIGZpbGU9Li9s
aWJtMS5zbzsgb3BlbmNvdW50ID09IDEKMDg0MDU6CQpteSBuYW1lIGlzOiAnZm9vMScKMDg0MDU6
CQowODQwNToJY2FsbGluZyBmaW5pOiAuL2xpYm0xLnNvCjA4NDA1OgkKClByb2dyYW0gcmVjZWl2
ZWQgc2lnbmFsIFNJR1NFR1YsIFNlZ21lbnRhdGlvbiBmYXVsdC4KMHg0MDBjNDAyOCBpbiA/PyAo
KQooZ2RiKSB3aGVyZQojMCAgMHg0MDBjNDAyOCBpbiA/PyAoKQojMSAgMHg0MDExZjFjZCBpbiBf
X2xpYmNfc3RhcnRfbWFpbiAoKSBmcm9tIC9saWIvbGliYy5zby42CihnZGIpIHByaW50IChpbnQq
KSgweDQwMGM0MDI4IC0gMHg0MDBjMzAwMCkKJDEgPSAoaW50ICopIDB4MTAyOAooZ2RiKSBxdWl0
ClRoZSBwcm9ncmFtIGlzIHJ1bm5pbmcuICBFeGl0IGFueXdheT8gKHkgb3IgbikgeQpyb3VxdWV0
dEBnYWJpem91IFswXSA6IH4vQysrL3RjZjIvZ2NjLXg4Ni9iaW4KWzgxNl0gJCBubSBsaWJtMS5z
byB8IGdyZXAgX190Y2ZfMAowMDAwMTAyOCB0IF9fdGNmXzAKcm91cXVldHRAZ2FiaXpvdSBbMF0g
OiB+L0MrKy90Y2YyL2djYy14ODYvYmluCls4MTddICQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABnY2Mtc29sMi5sb2cA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDEwMDY2NAAwMDAzNjUxADAwMTIyNjQAMDAw
MDAwMDIyMTIAMDc2MjczMDM1NzQAMDEyNDUwACAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAHVzdGFyICAAcm91cXVldHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABt
ZHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGNkIC9ob21lL3JvdXF1
ZXR0L0MrKy90Y2YyLwptYWtlIC1mIE1ha2VmaWxlLmdjYy1zb2wyIGNsZWFuIGFwcCBtMQovYmlu
L3JtIC1yZiBnY2Mtc29sMgpta2RpciBnY2Mtc29sMgpta2RpciBnY2Mtc29sMi9hcHAgZ2NjLXNv
bDIvbTEgZ2NjLXNvbDIvbTIgZ2NjLXNvbDIvYmluIGdjYy1zb2wyL3B1cmlmeS1jYWNoZQooY2Qg
Z2NjLXNvbDIvYXBwOyAvZHN3L2djYy0zLjIvYmluL2crKyAtZyAtRF9fR05VX18gLWZQSUMgLWMg
Li4vLi4vYXBwLmNwcCkKKGNkIGdjYy1zb2wyL2FwcDsgL2Rzdy9nY2MtMy4yL2Jpbi9nKysgLWcg
LUwvZHN3L2djYy0zLjIvbGliIC1SL2Rzdy9nY2MtMy4yL2xpYiAtbHN0ZGMrKyAtbGRsIC1scHRo
cmVhZCAtbHJ0IC1vIC4uL2Jpbi9hcHAgYXBwLm8pCihjZCBnY2Mtc29sMi9tMTsgL2Rzdy9nY2Mt
My4yL2Jpbi9nKysgLWcgLURfX0dOVV9fIC1mUElDIC1jIC4uLy4uL20xLmNwcCkKKGNkIGdjYy1z
b2wyL20xOyAvZHN3L2djYy0zLjIvYmluL2crKyAtZyAtTC9kc3cvZ2NjLTMuMi9saWIgLVIvZHN3
L2djYy0zLjIvbGliIC1sc3RkYysrIC1nIC1ML2Rzdy9nY2MtMy4yL2xpYiAtUi9kc3cvZ2NjLTMu
Mi9saWIgLWxzdGRjKysgLWxkbCAtbHB0aHJlYWQgLWxydCAtc2hhcmVkICAtbyAuLi9iaW4vbGli
bTEuc28gbTEubykKCkNvbXBpbGF0aW9uIGZpbmlzaGVkIGF0IFdlZCBGZWIgMjYgMTk6MzM6NDkK
Cls1MjFdICQgbm0gbGlibTEuc28gfCBncmVwIGZvbwowMDAwMDAwMDAwMDAwZGQwIFQgX1o0Zm9v
MXYKMDAwMDAwMDAwMDAwMGYxMCBUIF9aNGZvbzJ2CjAwMDAwMDAwMDAwMTE2NzAgYiBfWkdWWjRm
b28xdkUybWUKMDAwMDAwMDAwMDAxMTY3OCBiIF9aWjRmb28xdkUybWUKcm91cXVldHRAemlweGFu
IFswXSA6IH4vQysrL3RjZjIvZ2NjLXNvbDIvYmluCls1MjJdICQgLi9hcHAgX1o0Zm9vMXYKbXkg
bmFtZSBpczogJ2ZvbzEnCnJvdXF1ZXR0QHppcHhhbiBbMF0gOiB+L0MrKy90Y2YyL2djYy1zb2wy
L2JpbgpbNTIzXSAkIC4vYXBwIF9aNGZvbzJ2Cm15IG5hbWUgaXM6ICdmb28yJwpyb3VxdWV0dEB6
aXB4YW4gWzBdIDogfi9DKysvdGNmMi9nY2Mtc29sMi9iaW4KWzUyNF0gJCBscwphcHAqICAgICAg
IGxpYm0xLnNvKgpyb3VxdWV0dEB6aXB4YW4gWzBdIDogfi9DKysvdGNmMi9nY2Mtc29sMi9iaW4K
WzUyNV0gJCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]