Re: Translators (Re: on mammals and dinosaurs)

From: G. Sawitzki <"G.>
Date: Wed, 25 Feb 2004 12:29:38 +0100

----boundary-LibPST-iamunique-1240095187_-_-
Content-type: text/plain

The documention of Mess is still in

        <ftp://www.statlab.uni-heidelberg.de/pub/projects/oberon/PrivateChest>

I've put all the source code of the System 3 version in
        <ftp://statlab.uni-heidelberg.de/projects/oberon/mess/>
This code is "as is". Since the System 3 compilers started allowing
the use of C libraries, this has become the preferred path.

Theory: the front end of Mess scans and parses the source code and
cuts it into chunks. These chunks are then to a pretty printer back
end. If the chunk has an identifiable syntactic role, it is thus
translated from source language to target language. Unidentified
chunks are copied verbatim and highligted/coloured.

The C front end has a lot of open ends- the C syntax description is
in a Coco input file.


In
        <ftp://www.statlab.uni-heidelberg.de/pub/projects/oberon/defor.Mod>
is a skeleton Fortran to Oberon converter which should do 80% of the
work. Again
in System 3 form.

For access from BlackBox/Component Pascal, we used our System 3
system port for BlackBox. This works for Component Pascal 1.3, but
has not been ported to 1.4.


    g.


At 18:41 +0100 13.02.2004, Bernhard Treutwein wrote:
>Hello out there,
>
>there is/was some program called mess by Günther Sawitzky
>at StatLab (University of Heidelberg). It appears to be still
>available here:
>ftp://www.statlab.uni-heidelberg.de/pub/projects/oberon/util/
>see the readme files (bottom).
>
>Although I did not (yet ?) succeed in using it, I had several
>looks at the source of the main module (apparently the only
>available doc). The language extensions are only available
>as (platform independant) "slim binaries" (see note just above
>this link http://www.oberon.ethz.ch/compiler/index.html#report).
>
>Reading the available documentation, is deliberately not a real translator,
>but more of an syntax aware & transforming editor, which understands
>C, Fortran, Pascal and Oberon.
>
>I don't know, if the project is orphaned, sleeping or dead (Günther S., are

>you listening) and how and or if it can be reanimated ...
>
>regards
> Bernhard
>
>----- Original Message -----
>From: <skulski{([at]})nowhere.xy
>To: "CFB Software" <info{([at]})nowhere.xy
>Cc: <danforth{([at]})nowhere.xy
>Sent: Thursday, February 12, 2004 7:14 PM
>Subject: Translators (Re: on mammals and dinosaurs)
>
>
>> Chris:
>> > I've also been doing some very preliminary work on the same thing. My
>> > interest is in a Delphi (a.k.a. Object Pascal) to Component Pascal
> > > translator. There are existing Turbo Pascal to Component Pascal,
>> > Modula-2 to Oberon, Modula-2 to Pascal translators but a common problem
>> > seems to be that they give up as soon as they don't recognise something.
>> > I'm not looking for perfection. Basically I only need something that
>> > will do 70-90% of the job and just highlight the bits that it doesn't
>> > understand.
>>

>> Doug mentioned to me he was thinking of a Fortran-to-CP translator,
>> on the premise that having such translator would be politically
>> correct for physics. Since I have my own extensive experience with
>> Fortran, I tend to be a bit skeptical concerning such a project.

>> We in physics used to do lots of low-level dirty tricks using
>> COMMON and EQUIVALENCE. These two together serve to overlay variables
>> in memory to make type conversions. This is extremely dangerous,
>> error-prone, and indeed the common experience is that you can spend
>> weeks debugging such things, or even worse, you can be getting wrong
>> results for years and never even notice. I vividly remember debugging

>> a large theoretical code where I discovered that various coefficients
>> were taken from wrong places of memory and thus random and completely
>> wrong. Nobody ever noticed because this was a Monte Carlo code, so the
>> results always had some random spread. The particular bugs that

> > I discovered were in second-order corrections that did not contribute
>> much to the result, so nobody noticed this particular part of the code
>> was completely wrong.
>>
>> Fortran programs can be even more interesting. You can check out a
>> scientific package named ZEBRA on the CERN web site. It is huge and
>> nightmarish, what is even mentioned in the documentation. What this
>> library is doing in Fortran, would be unnecessary in CP, Pascal,
>> or even C. This library provides memory management for Fortran-77.
>> That is, the equivalent for "NEW/DELETE", or "malloc/free". ZEBRA was
>> implemented for Fortran-77 using the COMMON and EQUIVALENCE, but boy,
>> what a mess! High Energy Physics is full of folklore stories concerning
>> ZEBRA and other software based on ZEBRA, such as Physics Analysis
>> Workstation (PAW). My friends used to tell me many stories from their
>> own experience with ZEBRA/PAW.
>>
>> I have no idea how you can tell the Fortran-to-CP translator how to
>> translate COMMON and EQUIVALENCE. I guess you would need to allocate
>> a large [untagged] byte buffer and manually perform all the memory
>> management that ZEBRA is doing. However, doing it would be a complete
>> nonsense. You would never need to translate ZEBRA into any language
>> that has memory management, which ZEBRA is a substitute of. This entire
>> huge junk just disappears.
>>
>> Therefore the only approach that makes sense is to re-engineer this kind
>> of legacy software, rather than translate it. This however may be a very
>> politically incorrect idea.
>>
>> Cheers,
>> W

>>
>>
>>
>> --------------------------------------------
>>
>> To unsubscribe from this mailing list, send a message containing the word
>"unsubscribe" to:
>> blackbox-request{([at]})nowhere.xy
>>
>> To get a list of valid e-mail commands and instructions on their usage,
>send a message containing the word "help" to the above address.
>>
>> Send any problem reports or questions related to this email list to the
>list owner at
>> owner-blackbox{([at]})nowhere.xy
>>
>> Current posting policy:
>>
>> a) To post you should use the same address by which you are subscribed to
>the mailing list. That way, the list server will recognize you as subscriber
>and forward your posting immediately, without creating any overhead.
>>
>> b) If, for some reason, you cannot post from the address, by which you are
>subscribed, your message will be moderated to avoid spam. Please understand
>that moderation will often cause some delay, in particular over weekends or
>holydays.

--------------------------------------------

To unsubscribe from this mailing list, send a message containing the word "unsubscribe" to:
   blackbox-request{([at]})nowhere.xy

To get a list of valid e-mail commands and instructions on their usage, send a message containing the word "help" to the above address.

Send any problem reports or questions related to this email list to the list owner at
   owner-blackbox{([at]})nowhere.xy

Current posting policy:

a) To post you should use the same address by which you are subscribed to the mailing list. That way, the list server will recognize you as subscriber and forward your posting immediately, without creating any overhead.

b) If, for some reason, you cannot post from the address, by which you are subscribed, your message will be moderated to avoid spam. Please understand that moderation will often cause some delay, in particular over weekends or holydays.



----boundary-LibPST-iamunique-1240095187_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"

e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzc1xmY2hhcnNldDAgQXJpYWw7fQ0Ke1xmMVxmbW9kZXJuIENvdXJpZXIgTmV3O30NCntcZjJc
Zm5pbFxmY2hhcnNldDIgU3ltYm9sO30NCntcZjNcZm1vZGVyblxmY2hhcnNldDAgQ291cmllciBO
ZXc7fX0NCntcY29sb3J0YmxccmVkMFxncmVlbjBcYmx1ZTA7XHJlZDBcZ3JlZW4wXGJsdWUyNTU7
fQ0KXHVjMVxwYXJkXHBsYWluXGRlZnRhYjM2MCBcZjBcZnMyMCBUaGUgZG9jdW1lbnRpb24gb2Yg
TWVzcyBpcyBzdGlsbCBpblxwYXINClxwYXINClx0YWIgPGZ0cDovL3d3dy5zdGF0bGFiLnVuaS1o
ZWlkZWxiZXJnLmRlL3B1Yi9wcm9qZWN0cy9vYmVyb24vUHJpdmF0ZUNoZXN0PlxwYXINClxwYXIN
CkkndmUgcHV0IGFsbCB0aGUgc291cmNlIGNvZGUgb2YgdGhlIFN5c3RlbSAzIHZlcnNpb24gaW5c
cGFyDQpcdGFiIDxmdHA6Ly9zdGF0bGFiLnVuaS1oZWlkZWxiZXJnLmRlL3Byb2plY3RzL29iZXJv
bi9tZXNzLz5ccGFyDQpUaGlzIGNvZGUgaXMgImFzIGlzIi4gU2luY2UgdGhlIFN5c3RlbSAzIGNv
bXBpbGVycyBzdGFydGVkIGFsbG93aW5nIFxwYXINCnRoZSB1c2Ugb2YgQyBsaWJyYXJpZXMsIHRo
aXMgaGFzIGJlY29tZSB0aGUgcHJlZmVycmVkIHBhdGguXHBhcg0KXHBhcg0KVGhlb3J5OiB0aGUg
ZnJvbnQgZW5kIG9mIE1lc3Mgc2NhbnMgYW5kIHBhcnNlcyB0aGUgc291cmNlIGNvZGUgYW5kIFxw
YXINCmN1dHMgaXQgaW50byBjaHVua3MuIFRoZXNlIGNodW5rcyBhcmUgdGhlbiB0byBhIHByZXR0
eSBwcmludGVyIGJhY2sgXHBhcg0KZW5kLiBJZiB0aGUgY2h1bmsgaGFzIGFuIGlkZW50aWZpYWJs
ZSBzeW50YWN0aWMgcm9sZSwgaXQgaXMgdGh1cyBccGFyDQp0cmFuc2xhdGVkIGZyb20gc291cmNl
IGxhbmd1YWdlIHRvIHRhcmdldCBsYW5ndWFnZS4gVW5pZGVudGlmaWVkIFxwYXINCmNodW5rcyBh
cmUgY29waWVkIHZlcmJhdGltIGFuZCBoaWdobGlndGVkL2NvbG91cmVkLlxwYXINClxwYXINClRo
ZSBDIGZyb250IGVuZCBoYXMgYSBsb3Qgb2Ygb3BlbiBlbmRzLSB0aGUgQyBzeW50YXggZGVzY3Jp
cHRpb24gaXMgXHBhcg0KaW4gYSBDb2NvIGlucHV0IGZpbGUuXHBhcg0KXHBhcg0KXHBhcg0KSW5c
cGFyDQpcdGFiIDxmdHA6Ly93d3cuc3RhdGxhYi51bmktaGVpZGVsYmVyZy5kZS9wdWIvcHJvamVj
dHMvb2Jlcm9uL2RlZm9yLk1vZD5ccGFyDQppcyBhIHNrZWxldG9uIEZvcnRyYW4gdG8gT2Jlcm9u
IGNvbnZlcnRlciB3aGljaCBzaG91bGQgZG8gODAlIG9mIHRoZSBccGFyDQp3b3JrLiBBZ2Fpblxw
YXINCmluIFN5c3RlbSAzIGZvcm0uXHBhcg0KXHBhcg0KRm9yIGFjY2VzcyBmcm9tIEJsYWNrQm94
L0NvbXBvbmVudCBQYXNjYWwsIHdlIHVzZWQgb3VyIFN5c3RlbSAzIFxwYXINCnN5c3RlbSBwb3J0
IGZvciBCbGFja0JveC4gVGhpcyB3b3JrcyBmb3IgQ29tcG9uZW50IFBhc2NhbCAxLjMsIGJ1dCBc
cGFyDQpoYXMgbm90IGJlZW4gcG9ydGVkIHRvIDEuNC5ccGFyDQpccGFyDQpccGFyDQogICAgZy5c
cGFyDQpccGFyDQpccGFyDQpBdCAxODo0MSArMDEwMCAxMy4wMi4yMDA0LCBCZXJuaGFyZCBUcmV1
dHdlaW4gd3JvdGU6XHBhcg0KPkhlbGxvIG91dCB0aGVyZSxccGFyDQo+XHBhcg0KPnRoZXJlIGlz
L3dhcyBzb21lIHByb2dyYW0gY2FsbGVkIG1lc3MgYnkgR1wnZmNudGhlciBTYXdpdHpreVxwYXIN
Cj5hdCBTdGF0TGFiIChVbml2ZXJzaXR5IG9mIEhlaWRlbGJlcmcpLiBJdCBhcHBlYXJzIHRvIGJl
IHN0aWxsXHBhcg0KPmF2YWlsYWJsZSBoZXJlOlxwYXINCj5mdHA6Ly93d3cuc3RhdGxhYi51bmkt
aGVpZGVsYmVyZy5kZS9wdWIvcHJvamVjdHMvb2Jlcm9uL3V0aWwvXHBhcg0KPnNlZSB0aGUgcmVh
ZG1lIGZpbGVzIChib3R0b20pLlxwYXINCj5ccGFyDQo+QWx0aG91Z2ggSSBkaWQgbm90ICh5ZXQg
Pykgc3VjY2VlZCBpbiB1c2luZyBpdCwgSSBoYWQgc2V2ZXJhbFxwYXINCj5sb29rcyBhdCB0aGUg
c291cmNlIG9mIHRoZSBtYWluIG1vZHVsZSAoYXBwYXJlbnRseSB0aGUgb25seVxwYXINCj5hdmFp
bGFibGUgZG9jKS4gVGhlIGxhbmd1YWdlIGV4dGVuc2lvbnMgYXJlIG9ubHkgYXZhaWxhYmxlXHBh
cg0KPmFzIChwbGF0Zm9ybSBpbmRlcGVuZGFudCkgInNsaW0gYmluYXJpZXMiIChzZWUgbm90ZSBq
dXN0IGFib3ZlXHBhcg0KPnRoaXMgbGluayBodHRwOi8vd3d3Lm9iZXJvbi5ldGh6LmNoL2NvbXBp
bGVyL2luZGV4Lmh0bWwjcmVwb3J0KS5ccGFyDQo+XHBhcg0KPlJlYWRpbmcgdGhlIGF2YWlsYWJs
ZSBkb2N1bWVudGF0aW9uLCBpcyBkZWxpYmVyYXRlbHkgbm90IGEgcmVhbCB0cmFuc2xhdG9yLFxw
YXINCj5idXQgbW9yZSBvZiBhbiBzeW50YXggYXdhcmUgJiB0cmFuc2Zvcm1pbmcgZWRpdG9yLCB3
aGljaCB1bmRlcnN0YW5kc1xwYXINCj5DLCBGb3J0cmFuLCBQYXNjYWwgYW5kIE9iZXJvbi5ccGFy
DQo+XHBhcg0KPkkgZG9uJ3Qga25vdywgaWYgdGhlIHByb2plY3QgaXMgb3JwaGFuZWQsIHNsZWVw
aW5nIG9yIGRlYWQgKEdcJ2ZjbnRoZXIgUy4sIGFyZVxwYXINCj55b3UgbGlzdGVuaW5nKSBhbmQg
aG93IGFuZCBvciBpZiBpdCBjYW4gYmUgcmVhbmltYXRlZCAuLi5ccGFyDQo+XHBhcg0KPnJlZ2Fy
ZHNccGFyDQo+ICAgICAgICBCZXJuaGFyZFxwYXINCj5ccGFyDQo+LS0tLS0gT3JpZ2luYWwgTWVz
c2FnZSAtLS0tLVxwYXINCj5Gcm9tOiA8c2t1bHNraUBwYXMucm9jaGVzdGVyLmVkdT5ccGFyDQo+
VG86ICJDRkIgU29mdHdhcmUiIDxpbmZvQGNmYnNvZnR3YXJlLmNvbT5ccGFyDQo+Q2M6IDxkYW5m
b3J0aEBncmVlbndvb2RmYXJtLmNvbT47IDxibGFja2JveEBvYmVyb24uY2g+XHBhcg0KPlNlbnQ6
IFRodXJzZGF5LCBGZWJydWFyeSAxMiwgMjAwNCA3OjE0IFBNXHBhcg0KPlN1YmplY3Q6IFRyYW5z
bGF0b3JzIChSZTogb24gbWFtbWFscyBhbmQgZGlub3NhdXJzKVxwYXINCj5ccGFyDQo+XHBhcg0K
Pj4gIENocmlzOlxwYXINCj4+ICA+IEkndmUgYWxzbyBiZWVuIGRvaW5nIHNvbWUgdmVyeSBwcmVs
aW1pbmFyeSB3b3JrIG9uIHRoZSBzYW1lIHRoaW5nLiBNeVxwYXINCj4+ICA+IGludGVyZXN0IGlz
IGluIGEgRGVscGhpIChhLmsuYS4gT2JqZWN0IFBhc2NhbCkgdG8gQ29tcG9uZW50IFBhc2NhbFxw
YXINCj4gID4gPiB0cmFuc2xhdG9yLiBUaGVyZSBhcmUgZXhpc3RpbmcgVHVyYm8gUGFzY2FsIHRv
IENvbXBvbmVudCBQYXNjYWwsXHBhcg0KPj4gID4gTW9kdWxhLTIgdG8gT2Jlcm9uLCBNb2R1bGEt
MiB0byBQYXNjYWwgdHJhbnNsYXRvcnMgYnV0IGEgY29tbW9uIHByb2JsZW1ccGFyDQo+PiAgPiBz
ZWVtcyB0byBiZSB0aGF0IHRoZXkgZ2l2ZSB1cCBhcyBzb29uIGFzIHRoZXkgZG9uJ3QgcmVjb2du
aXNlIHNvbWV0aGluZy5ccGFyDQo+PiAgPiBJJ20gbm90IGxvb2tpbmcgZm9yIHBlcmZlY3Rpb24u
IEJhc2ljYWxseSBJIG9ubHkgbmVlZCBzb21ldGhpbmcgdGhhdFxwYXINCj4+ICA+IHdpbGwgZG8g
NzAtOTAlIG9mIHRoZSBqb2IgYW5kIGp1c3QgaGlnaGxpZ2h0IHRoZSBiaXRzIHRoYXQgaXQgZG9l
c24ndFxwYXINCj4+ICA+IHVuZGVyc3RhbmQuXHBhcg0KPj5ccGFyDQo+PiAgRG91ZyBtZW50aW9u
ZWQgdG8gbWUgaGUgd2FzIHRoaW5raW5nIG9mIGEgRm9ydHJhbi10by1DUCB0cmFuc2xhdG9yLFxw
YXINCj4+ICBvbiB0aGUgcHJlbWlzZSB0aGF0IGhhdmluZyBzdWNoIHRyYW5zbGF0b3Igd291bGQg
YmUgcG9saXRpY2FsbHlccGFyDQo+PiAgY29ycmVjdCBmb3IgcGh5c2ljcy4gU2luY2UgSSBoYXZl
IG15IG93biBleHRlbnNpdmUgZXhwZXJpZW5jZSB3aXRoXHBhcg0KPj4gIEZvcnRyYW4sIEkgdGVu
ZCB0byBiZSBhIGJpdCBza2VwdGljYWwgY29uY2VybmluZyBzdWNoIGEgcHJvamVjdC5ccGFyDQo+
PiAgV2UgaW4gcGh5c2ljcyB1c2VkIHRvIGRvIGxvdHMgb2YgbG93LWxldmVsIGRpcnR5IHRyaWNr
cyB1c2luZ1xwYXINCj4+ICBDT01NT04gYW5kIEVRVUlWQUxFTkNFLiBUaGVzZSB0d28gdG9nZXRo
ZXIgc2VydmUgdG8gb3ZlcmxheSB2YXJpYWJsZXNccGFyDQo+PiAgaW4gbWVtb3J5IHRvIG1ha2Ug
dHlwZSBjb252ZXJzaW9ucy4gVGhpcyBpcyBleHRyZW1lbHkgZGFuZ2Vyb3VzLFxwYXINCj4+ICBl
cnJvci1wcm9uZSwgYW5kIGluZGVlZCB0aGUgY29tbW9uIGV4cGVyaWVuY2UgaXMgdGhhdCB5b3Ug
Y2FuIHNwZW5kXHBhcg0KPj4gIHdlZWtzIGRlYnVnZ2luZyBzdWNoIHRoaW5ncywgb3IgZXZlbiB3
b3JzZSwgeW91IGNhbiBiZSBnZXR0aW5nIHdyb25nXHBhcg0KPj4gIHJlc3VsdHMgZm9yIHllYXJz
IGFuZCBuZXZlciBldmVuIG5vdGljZS4gSSB2aXZpZGx5IHJlbWVtYmVyIGRlYnVnZ2luZ1xwYXIN
Cj4+ICBhIGxhcmdlIHRoZW9yZXRpY2FsIGNvZGUgd2hlcmUgSSBkaXNjb3ZlcmVkIHRoYXQgdmFy
aW91cyBjb2VmZmljaWVudHNccGFyDQo+PiAgd2VyZSB0YWtlbiBmcm9tIHdyb25nIHBsYWNlcyBv
ZiBtZW1vcnkgYW5kIHRodXMgcmFuZG9tIGFuZCBjb21wbGV0ZWx5XHBhcg0KPj4gIHdyb25nLiBO
b2JvZHkgZXZlciBub3RpY2VkIGJlY2F1c2UgdGhpcyB3YXMgYSBNb250ZSBDYXJsbyBjb2RlLCBz
byB0aGVccGFyDQo+PiAgcmVzdWx0cyBhbHdheXMgaGFkIHNvbWUgcmFuZG9tIHNwcmVhZC4gVGhl
IHBhcnRpY3VsYXIgYnVncyB0aGF0XHBhcg0KPiAgPiBJIGRpc2NvdmVyZWQgd2VyZSBpbiBzZWNv
bmQtb3JkZXIgY29ycmVjdGlvbnMgdGhhdCBkaWQgbm90IGNvbnRyaWJ1dGVccGFyDQo+PiAgbXVj
aCB0byB0aGUgcmVzdWx0LCBzbyBub2JvZHkgbm90aWNlZCB0aGlzIHBhcnRpY3VsYXIgcGFydCBv
ZiB0aGUgY29kZVxwYXINCj4+ICB3YXMgY29tcGxldGVseSB3cm9uZy5ccGFyDQo+PlxwYXINCj4+
ICBGb3J0cmFuIHByb2dyYW1zIGNhbiBiZSBldmVuIG1vcmUgaW50ZXJlc3RpbmcuIFlvdSBjYW4g
Y2hlY2sgb3V0IGFccGFyDQo+PiAgc2NpZW50aWZpYyBwYWNrYWdlIG5hbWVkIFpFQlJBIG9uIHRo
ZSBDRVJOIHdlYiBzaXRlLiBJdCBpcyBodWdlIGFuZFxwYXINCj4+ICBuaWdodG1hcmlzaCwgd2hh
dCBpcyBldmVuIG1lbnRpb25lZCBpbiB0aGUgZG9jdW1lbnRhdGlvbi4gV2hhdCB0aGlzXHBhcg0K
Pj4gIGxpYnJhcnkgaXMgZG9pbmcgaW4gRm9ydHJhbiwgd291bGQgYmUgdW5uZWNlc3NhcnkgaW4g
Q1AsIFBhc2NhbCxccGFyDQo+PiAgb3IgZXZlbiBDLiBUaGlzIGxpYnJhcnkgcHJvdmlkZXMgbWVt
b3J5IG1hbmFnZW1lbnQgZm9yIEZvcnRyYW4tNzcuXHBhcg0KPj4gIFRoYXQgaXMsIHRoZSBlcXVp
dmFsZW50IGZvciAiTkVXL0RFTEVURSIsIG9yICJtYWxsb2MvZnJlZSIuIFpFQlJBIHdhc1xwYXIN
Cj4+ICBpbXBsZW1lbnRlZCBmb3IgRm9ydHJhbi03NyB1c2luZyB0aGUgQ09NTU9OIGFuZCBFUVVJ
VkFMRU5DRSwgYnV0IGJveSxccGFyDQo+PiAgd2hhdCBhIG1lc3MhIEhpZ2ggRW5lcmd5IFBoeXNp
Y3MgaXMgZnVsbCBvZiBmb2xrbG9yZSBzdG9yaWVzIGNvbmNlcm5pbmdccGFyDQo+PiAgWkVCUkEg
YW5kIG90aGVyIHNvZnR3YXJlIGJhc2VkIG9uIFpFQlJBLCBzdWNoIGFzIFBoeXNpY3MgQW5hbHlz
aXNccGFyDQo+PiAgV29ya3N0YXRpb24gKFBBVykuIE15IGZyaWVuZHMgdXNlZCB0byB0ZWxsIG1l
IG1hbnkgc3RvcmllcyBmcm9tIHRoZWlyXHBhcg0KPj4gIG93biBleHBlcmllbmNlIHdpdGggWkVC
UkEvUEFXLlxwYXINCj4+XHBhcg0KPj4gIEkgaGF2ZSBubyBpZGVhIGhvdyB5b3UgY2FuIHRlbGwg
dGhlIEZvcnRyYW4tdG8tQ1AgdHJhbnNsYXRvciBob3cgdG9ccGFyDQo+PiAgdHJhbnNsYXRlIENP
TU1PTiBhbmQgRVFVSVZBTEVOQ0UuIEkgZ3Vlc3MgeW91IHdvdWxkIG5lZWQgdG8gYWxsb2NhdGVc
cGFyDQo+PiAgYSBsYXJnZSBbdW50YWdnZWRdIGJ5dGUgYnVmZmVyIGFuZCBtYW51YWxseSBwZXJm
b3JtIGFsbCB0aGUgbWVtb3J5XHBhcg0KPj4gIG1hbmFnZW1lbnQgdGhhdCBaRUJSQSBpcyBkb2lu
Zy4gSG93ZXZlciwgZG9pbmcgaXQgd291bGQgYmUgYSBjb21wbGV0ZVxwYXINCj4+ICBub25zZW5z
ZS4gWW91IHdvdWxkIG5ldmVyIG5lZWQgdG8gdHJhbnNsYXRlIFpFQlJBIGludG8gYW55IGxhbmd1
YWdlXHBhcg0KPj4gIHRoYXQgaGFzIG1lbW9yeSBtYW5hZ2VtZW50LCB3aGljaCBaRUJSQSBpcyBh
IHN1YnN0aXR1dGUgb2YuIFRoaXMgZW50aXJlXHBhcg0KPj4gIGh1Z2UganVuayBqdXN0IGRpc2Fw
cGVhcnMuXHBhcg0KPj5ccGFyDQo+PiAgVGhlcmVmb3JlIHRoZSBvbmx5IGFwcHJvYWNoIHRoYXQg
bWFrZXMgc2Vuc2UgaXMgdG8gcmUtZW5naW5lZXIgdGhpcyBraW5kXHBhcg0KPj4gIG9mIGxlZ2Fj
eSBzb2Z0d2FyZSwgcmF0aGVyIHRoYW4gdHJhbnNsYXRlIGl0LiBUaGlzIGhvd2V2ZXIgbWF5IGJl
IGEgdmVyeVxwYXINCj4+ICBwb2xpdGljYWxseSBpbmNvcnJlY3QgaWRlYS5ccGFyDQo+PlxwYXIN
Cj4+ICBDaGVlcnMsXHBhcg0KPj4gIFdccGFyDQo+PlxwYXINCj4+XHBhcg0KPj5ccGFyDQo+PiAg
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1ccGFyDQo+PlxwYXIN
Cj4+ICBUbyB1bnN1YnNjcmliZSBmcm9tIHRoaXMgbWFpbGluZyBsaXN0LCBzZW5kIGEgbWVzc2Fn
ZSBjb250YWluaW5nIHRoZSB3b3JkXHBhcg0KPiJ1bnN1YnNjcmliZSIgdG86XHBhcg0KPj4gICAg
IGJsYWNrYm94LXJlcXVlc3RAb2Jlcm9uLmNoXHBhcg0KPj5ccGFyDQo+PiAgVG8gZ2V0IGEgbGlz
dCBvZiB2YWxpZCBlLW1haWwgY29tbWFuZHMgYW5kIGluc3RydWN0aW9ucyBvbiB0aGVpciB1c2Fn
ZSxccGFyDQo+c2VuZCBhIG1lc3NhZ2UgY29udGFpbmluZyB0aGUgd29yZCAiaGVscCIgdG8gdGhl
IGFib3ZlIGFkZHJlc3MuXHBhcg0KPj5ccGFyDQo+PiAgU2VuZCBhbnkgcHJvYmxlbSByZXBvcnRz
IG9yIHF1ZXN0aW9ucyByZWxhdGVkIHRvIHRoaXMgZW1haWwgbGlzdCB0byB0aGVccGFyDQo+bGlz
dCBvd25lciBhdFxwYXINCj4+ICAgICBvd25lci1ibGFja2JveEBvYmVyb24uY2hccGFyDQo+Plxw
YXINCj4+ICBDdXJyZW50IHBvc3RpbmcgcG9saWN5OlxwYXINCj4+XHBhcg0KPj4gIGEpIFRvIHBv
c3QgeW91IHNob3VsZCB1c2UgdGhlIHNhbWUgYWRkcmVzcyBieSB3aGljaCB5b3UgYXJlIHN1YnNj
cmliZWQgdG9ccGFyDQo+dGhlIG1haWxpbmcgbGlzdC4gVGhhdCB3YXksIHRoZSBsaXN0IHNlcnZl
ciB3aWxsIHJlY29nbml6ZSB5b3UgYXMgc3Vic2NyaWJlclxwYXINCj5hbmQgZm9yd2FyZCB5b3Vy
IHBvc3RpbmcgaW1tZWRpYXRlbHksIHdpdGhvdXQgY3JlYXRpbmcgYW55IG92ZXJoZWFkLlxwYXIN
Cj4+XHBhcg0KPj4gIGIpIElmLCBmb3Igc29tZSByZWFzb24sIHlvdSBjYW5ub3QgcG9zdCBmcm9t
IHRoZSBhZGRyZXNzLCBieSB3aGljaCB5b3UgYXJlXHBhcg0KPnN1YnNjcmliZWQsIHlvdXIgbWVz
c2FnZSB3aWxsIGJlIG1vZGVyYXRlZCB0byBhdm9pZCBzcGFtLiBQbGVhc2UgdW5kZXJzdGFuZFxw
YXINCj50aGF0IG1vZGVyYXRpb24gd2lsbCBvZnRlbiBjYXVzZSBzb21lIGRlbGF5LCBpbiBwYXJ0
aWN1bGFyIG92ZXIgd2Vla2VuZHMgb3JccGFyDQo+aG9seWRheXMuXHBhcg0KXHBhcg0KLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1ccGFyDQpccGFyDQpUbyB1bnN1
YnNjcmliZSBmcm9tIHRoaXMgbWFpbGluZyBsaXN0LCBzZW5kIGEgbWVzc2FnZSBjb250YWluaW5n
IHRoZSB3b3JkICJ1bnN1YnNjcmliZSIgdG86XHBhcg0KICAgYmxhY2tib3gtcmVxdWVzdEBvYmVy
b24uY2hccGFyDQpccGFyDQpUbyBnZXQgYSBsaXN0IG9mIHZhbGlkIGUtbWFpbCBjb21tYW5kcyBh
bmQgaW5zdHJ1Y3Rpb25zIG9uIHRoZWlyIHVzYWdlLCBzZW5kIGEgbWVzc2FnZSBjb250YWluaW5n
IHRoZSB3b3JkICJoZWxwIiB0byB0aGUgYWJvdmUgYWRkcmVzcy5ccGFyDQpccGFyDQpTZW5kIGFu
eSBwcm9ibGVtIHJlcG9ydHMgb3IgcXVlc3Rpb25zIHJlbGF0ZWQgdG8gdGhpcyBlbWFpbCBsaXN0
IHRvIHRoZSBsaXN0IG93bmVyIGF0XHBhcg0KICAgb3duZXItYmxhY2tib3hAb2Jlcm9uLmNoXHBh
cg0KXHBhcg0KQ3VycmVudCBwb3N0aW5nIHBvbGljeTpccGFyDQpccGFyDQphKSBUbyBwb3N0IHlv
dSBzaG91bGQgdXNlIHRoZSBzYW1lIGFkZHJlc3MgYnkgd2hpY2ggeW91IGFyZSBzdWJzY3JpYmVk
IHRvIHRoZSBtYWlsaW5nIGxpc3QuIFRoYXQgd2F5LCB0aGUgbGlzdCBzZXJ2ZXIgd2lsbCByZWNv
Z25pemUgeW91IGFzIHN1YnNjcmliZXIgYW5kIGZvcndhcmQgeW91ciBwb3N0aW5nIGltbWVkaWF0
ZWx5LCB3aXRob3V0IGNyZWF0aW5nIGFueSBvdmVyaGVhZC5ccGFyDQpccGFyDQpiKSBJZiwgZm9y
IHNvbWUgcmVhc29uLCB5b3UgY2Fubm90IHBvc3QgZnJvbSB0aGUgYWRkcmVzcywgYnkgd2hpY2gg
eW91IGFyZSBzdWJzY3JpYmVkLCB5b3VyIG1lc3NhZ2Ugd2lsbCBiZSBtb2RlcmF0ZWQgdG8gYXZv
aWQgc3BhbS4gUGxlYXNlIHVuZGVyc3RhbmQgdGhhdCBtb2RlcmF0aW9uIHdpbGwgb2Z0ZW4gY2F1
c2Ugc29tZSBkZWxheSwgaW4gcGFydGljdWxhciBvdmVyIHdlZWtlbmRzIG9yIGhvbHlkYXlzLlxw
YXINClxwYXJ9fQA

----boundary-LibPST-iamunique-1240095187_-_---
Received on Wed Feb 25 2004 - 12:29:38 UTC

This archive was generated by hypermail 2.3.0 : Thu Sep 26 2013 - 06:28:52 UTC