----boundary-LibPST-iamunique-1369251018_-_-
Content-type: text/plain
Hello Bob,
Thanks for your advice. I am already working with the last possibility you mentioned.
Regards, René.
Bob Walkden wrote:
It seems to me that the current model for files is a reasonable
compromise between simplicity, usefulness and safety. As soon as you
introduce concurrency you are no longer dealing with a 'simple file
application', and you have to respond accordingly.
If you change the model so that other processes can read while one
process can write, then you run the risk of some of the problems which
database transaction management eliminates, such as non-repeatable
reads and dirty reads. To eliminate these you would need a more
finely-grained locking strategy, such as block and record locking.
Even these on their own don't fully eliminate the aforementioned
problems (and others which arise), and you start to need transactions.
This takes you into the realm of DBMSs.
So the answer, in my opinion, is to recognise that you no longer have
a 'simple file application', and use the right tool for the job, in
this case the SQL module with a suitable DBMS which handles
concurrency well enough.
Another possibility might be to look at the design of your
application, and identify those parts which require the files to be
updated. Separate them from the rest of the application and make sure
that they hold their locks for the shortest possible time by opening
the files only when you need to, and closing them as soon as you have
finished writing.
--
Regards,
Bob
-----Original Message-----
From: blackbox{([at]})nowhere.xy
Behalf Of René Dorta
Sent: 03 June 2007 05:31
To: BlackBox Mailing List
Subject: [BlackBox] - readers & writers
I have been using for a long time a simple file application.
Due to the
small size of my data I let alone SQL and use instead modules
Files and
Stores directly. Every thing worked fine till now, when I
need to access
my data from different computers in a LAN. How to handle this?: If I
open my files in "shared" mode ("which is the rule in BlackBox"), I
cannot update them; on the other hand, if I use "exclusive" (which
is
what I had been doing) I cannot open those files from more
than one site.
What I need is a way to write my files from a master site, but to be
able to read them from any site in the LAN.
Thanks folks:
René Dorta.
--- BlackBox
--- send subject HELP or UNSUBSCRIBE to blackbox{([at]})nowhere.xy
--- BlackBox
--- send subject HELP or UNSUBSCRIBE to blackbox{([at]})nowhere.xy
----boundary-LibPST-iamunique-1369251018_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"
e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbWh0bWwxIFxkZWZmMHtcZm9udHRibA0Ke1xmMFxm
c3dpc3NcZmNoYXJzZXQwIEFyaWFsO30NCntcZjFcZm1vZGVyblxmY2hhcnNldDAgQ291cmllciBO
ZXc7fQ0Ke1xmMlxmbmlsXGZjaGFyc2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0
MCBDb3VyaWVyIE5ldzt9fQ0Ke1xjb2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVl
bjBcYmx1ZTI1NTt9DQpcdWMxXHBhcmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczI0IA0Ke1wqXGh0
bWx0YWcyNDMgPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJh
bnNpdGlvbmFsLy9FTiI+fQ0Ke1wqXGh0bWx0YWczIFxwYXIgfQ0Ke1wqXGh0bWx0YWcxOSA8aHRt
bD59DQp7XCpcaHRtbHRhZzIgXHBhciB9DQp7XCpcaHRtbHRhZzM0IDxoZWFkPn0NCntcKlxodG1s
dGFnMSBccGFyIH0NCntcKlxodG1sdGFnMjQxICAgfQ0Ke1wqXGh0bWx0YWcxNzcgPHRpdGxlPn0N
CntcKlxodG1sdGFnMjQxIH0NCntcKlxodG1sdGFnMTg1IDwvdGl0bGU+fQ0Ke1wqXGh0bWx0YWcx
IFxwYXIgfQ0Ke1wqXGh0bWx0YWc0MSA8L2hlYWQ+fQ0Ke1wqXGh0bWx0YWcyIFxwYXIgfQ0Ke1wq
XGh0bWx0YWc1MCA8Ym9keT59DQp7XCpcaHRtbHRhZzAgXHBhciB9e1wqXGh0bWx0YWc2NH1caHRt
bHJ0ZiB7XGh0bWxydGYwIEhlbGxvIEJvYiwNCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYg
XGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH1UaGFua3MgZm9yIHlvdXIgYWR2
aWNlLiBJIGFtIGFscmVhZHkgd29ya2luZyB3aXRoIHRoZSBsYXN0IHBvc3NpYmlsaXR5IHlvdQ0K
e1wqXGh0bWx0YWc0IFxwYXIgfVxodG1scnRmICBcaHRtbHJ0ZjAgbWVudGlvbmVkLg0Ke1wqXGh0
bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxw
YXIgfQ0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wq
XGh0bWx0YWc0IFxwYXIgfVJlZ2FyZHMsIFJlbg0Ke1wqXGh0bWx0YWc4NCAmZWFjdXRlO31caHRt
bHJ0ZiBcJ2U5XGh0bWxydGYwIC4NCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUN
ClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFnMTE2IDxicj59XGh0
bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFn
MTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0N
CntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1s
dGFnNCBccGFyIH1Cb2IgV2Fsa2RlbiB3cm90ZToNCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxy
dGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH17XCpcaHRtbHRhZzcyfVxo
dG1scnRmXHBhcn1caHRtbHJ0ZjANCg0Ke1wqXGh0bWx0YWc5NiA8YmxvY2txdW90ZSB0eXBlPSJj
aXRlIlxwYXIgIGNpdGU9Im1pZEFNRVRIWVNUMjNWcDIwTjM5eDYwMDAwMDU5M0BhbWV0aHlzdDIu
b2Jlcm9uLmNoIj59XGh0bWxydGYgXHBhcg0Ke1xodG1scnRmMCANCntcKlxodG1sdGFnMCBccGFy
IH0NCntcKlxodG1sdGFnMjQwICAgfQ0Ke1wqXGh0bWx0YWcxMjggPHByZSB3cmFwPSIiPn1caHRt
bHJ0ZiB7XHBhcmRccGxhaW5cZjFcZnMyMCBcaHRtbHJ0ZjAgXGh0bWxydGYge1xodG1scnRmMCBc
bGkzNjAgSXQgc2VlbXMgdG8gbWUgdGhhdCB0aGUgY3VycmVudCBtb2RlbCBmb3IgZmlsZXMgaXMg
YSByZWFzb25hYmxlXGxpbmUNCmNvbXByb21pc2UgYmV0d2VlbiBzaW1wbGljaXR5LCB1c2VmdWxu
ZXNzIGFuZCBzYWZldHkuIEFzIHNvb24gYXMgeW91XGxpbmUNCmludHJvZHVjZSBjb25jdXJyZW5j
eSB5b3UgYXJlIG5vIGxvbmdlciBkZWFsaW5nIHdpdGggYSAnc2ltcGxlIGZpbGVcbGluZQ0KYXBw
bGljYXRpb24nLCBhbmQgeW91IGhhdmUgdG8gcmVzcG9uZCBhY2NvcmRpbmdseS5cbGluZQ0KXGxp
bmUNCklmIHlvdSBjaGFuZ2UgdGhlIG1vZGVsIHNvIHRoYXQgb3RoZXIgcHJvY2Vzc2VzIGNhbiBy
ZWFkIHdoaWxlIG9uZVxsaW5lDQpwcm9jZXNzIGNhbiB3cml0ZSwgdGhlbiB5b3UgcnVuIHRoZSBy
aXNrIG9mIHNvbWUgb2YgdGhlIHByb2JsZW1zIHdoaWNoXGxpbmUNCmRhdGFiYXNlIHRyYW5zYWN0
aW9uIG1hbmFnZW1lbnQgZWxpbWluYXRlcywgc3VjaCBhcyBub24tcmVwZWF0YWJsZVxsaW5lDQpy
ZWFkcyBhbmQgZGlydHkgcmVhZHMuIFRvIGVsaW1pbmF0ZSB0aGVzZSB5b3Ugd291bGQgbmVlZCBh
IG1vcmVcbGluZQ0KZmluZWx5LWdyYWluZWQgbG9ja2luZyBzdHJhdGVneSwgc3VjaCBhcyBibG9j
ayBhbmQgcmVjb3JkIGxvY2tpbmcuXGxpbmUNCkV2ZW4gdGhlc2Ugb24gdGhlaXIgb3duIGRvbid0
IGZ1bGx5IGVsaW1pbmF0ZSB0aGUgYWZvcmVtZW50aW9uZWRcbGluZQ0KcHJvYmxlbXMgKGFuZCBv
dGhlcnMgd2hpY2ggYXJpc2UpLCBhbmQgeW91IHN0YXJ0IHRvIG5lZWQgdHJhbnNhY3Rpb25zLlxs
aW5lDQpUaGlzIHRha2VzIHlvdSBpbnRvIHRoZSByZWFsbSBvZiBEQk1Tcy4gXGxpbmUNClxsaW5l
DQpTbyB0aGUgYW5zd2VyLCBpbiBteSBvcGluaW9uLCBpcyB0byByZWNvZ25pc2UgdGhhdCB5b3Ug
bm8gbG9uZ2VyIGhhdmVcbGluZQ0KYSAnc2ltcGxlIGZpbGUgYXBwbGljYXRpb24nLCBhbmQgdXNl
IHRoZSByaWdodCB0b29sIGZvciB0aGUgam9iLCBpblxsaW5lDQp0aGlzIGNhc2UgdGhlIFNRTCBt
b2R1bGUgd2l0aCBhIHN1aXRhYmxlIERCTVMgd2hpY2ggaGFuZGxlc1xsaW5lDQpjb25jdXJyZW5j
eSB3ZWxsIGVub3VnaC5cbGluZQ0KXGxpbmUNCkFub3RoZXIgcG9zc2liaWxpdHkgbWlnaHQgYmUg
dG8gbG9vayBhdCB0aGUgZGVzaWduIG9mIHlvdXJcbGluZQ0KYXBwbGljYXRpb24sIGFuZCBpZGVu
dGlmeSB0aG9zZSBwYXJ0cyB3aGljaCByZXF1aXJlIHRoZSBmaWxlcyB0byBiZVxsaW5lDQp1cGRh
dGVkLiBTZXBhcmF0ZSB0aGVtIGZyb20gdGhlIHJlc3Qgb2YgdGhlIGFwcGxpY2F0aW9uIGFuZCBt
YWtlIHN1cmVcbGluZQ0KdGhhdCB0aGV5IGhvbGQgdGhlaXIgbG9ja3MgZm9yIHRoZSBzaG9ydGVz
dCBwb3NzaWJsZSB0aW1lIGJ5IG9wZW5pbmdcbGluZQ0KdGhlIGZpbGVzIG9ubHkgd2hlbiB5b3Ug
bmVlZCB0bywgYW5kIGNsb3NpbmcgdGhlbSBhcyBzb29uIGFzIHlvdSBoYXZlXGxpbmUNCmZpbmlz
aGVkIHdyaXRpbmcuXGxpbmUNClxsaW5lDQotLVxsaW5lDQpSZWdhcmRzLFxsaW5lDQogQm9iIFxs
aW5lDQpcbGluZQ0KICBcaHRtbHJ0ZlxwYXJ9XGh0bWxydGYwDQoNCntcKlxodG1sdGFnMTM2IDwv
cHJlPn1caHRtbHJ0ZiB9XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWcwIFxwYXIgfQ0Ke1wqXGh0bWx0
YWcyNDAgICB9DQp7XCpcaHRtbHRhZzk2IDxibG9ja3F1b3RlIHR5cGU9ImNpdGUiPn1caHRtbHJ0
ZiBccGFyDQp7XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWcwIFxwYXIgfQ0Ke1wqXGh0bWx0YWcyNDAg
ICAgIH0NCntcKlxodG1sdGFnMTI4IDxwcmUgd3JhcD0iIj59XGh0bWxydGYge1xwYXJkXHBsYWlu
XGYxXGZzMjAgXGh0bWxydGYwIFxodG1scnRmIHtcaHRtbHJ0ZjAgXGxpNzIwIC0tLS0tT3JpZ2lu
YWwgTWVzc2FnZS0tLS0tXGxpbmUNCkZyb206IHt9DQp7XCpcaHRtbHRhZzg0IDxhIGNsYXNzPSJt
b3otdHh0LWxpbmstYWJicmV2aWF0ZWQiIGhyZWY9Im1haWx0bzpibGFja2JveEBvYmVyb24uY2gi
Pn1caHRtbHJ0ZiB7XGZpZWxke1wqXGZsZGluc3R7SFlQRVJMSU5LICJtYWlsdG86YmxhY2tib3hA
b2Jlcm9uLmNoIn19e1xmbGRyc2x0XGNmMVx1bCBcaHRtbHJ0ZjAgYmxhY2tib3hAb2Jlcm9uLmNo
XGh0bWxydGYgfVxodG1scnRmMCBcaHRtbHJ0ZiB9XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc5MiA8
L2E+fSBbe30NCntcKlxodG1sdGFnODQgPGEgY2xhc3M9Im1vei10eHQtbGluay1mcmVldGV4dCIg
aHJlZj0ibWFpbHRvOmJsYWNrYm94QG9iZXJvbi5jaCI+fVxodG1scnRmIHtcZmllbGR7XCpcZmxk
aW5zdHtIWVBFUkxJTksgIm1haWx0bzpibGFja2JveEBvYmVyb24uY2gifX17XGZsZHJzbHRcY2Yx
XHVsIFxodG1scnRmMCBtYWlsdG86YmxhY2tib3hAb2Jlcm9uLmNoXGh0bWxydGYgfVxodG1scnRm
MCBcaHRtbHJ0ZiB9XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc5MiA8L2E+fV0gT24gXGxpbmUNCkJl
aGFsZiBPZiBSZW4NCntcKlxodG1sdGFnODQgJmVhY3V0ZTt9XGh0bWxydGYgXCdlOVxodG1scnRm
MCAgRG9ydGFcbGluZQ0KU2VudDogMDMgSnVuZSAyMDA3IDA1OjMxXGxpbmUNClRvOiBCbGFja0Jv
eCBNYWlsaW5nIExpc3RcbGluZQ0KU3ViamVjdDogW0JsYWNrQm94XSAtIHJlYWRlcnMgDQp7XCpc
aHRtbHRhZzg0ICZhbXA7fVxodG1scnRmICZcaHRtbHJ0ZjAgIHdyaXRlcnNcbGluZQ0KXGxpbmUN
CkkgaGF2ZSBiZWVuIHVzaW5nIGZvciBhIGxvbmcgdGltZSBhIHNpbXBsZSBmaWxlIGFwcGxpY2F0
aW9uLiBcbGluZQ0KRHVlIHRvIHRoZSBcbGluZQ0Kc21hbGwgc2l6ZSBvZiBteSBkYXRhIEkgbGV0
IGFsb25lIFNRTCBhbmQgdXNlIGluc3RlYWQgbW9kdWxlcyBcbGluZQ0KRmlsZXMgYW5kIFxsaW5l
DQpTdG9yZXMgZGlyZWN0bHkuIEV2ZXJ5IHRoaW5nIHdvcmtlZCBmaW5lIHRpbGwgbm93LCB3aGVu
IEkgXGxpbmUNCm5lZWQgdG8gYWNjZXNzIFxsaW5lDQpteSBkYXRhIGZyb20gZGlmZmVyZW50IGNv
bXB1dGVycyBpbiBhIExBTi4gSG93IHRvIGhhbmRsZSB0aGlzPzogSWYgSVxsaW5lDQogICAgXGh0
bWxydGZccGFyfVxodG1scnRmMA0KDQp7XCpcaHRtbHRhZzEzNiA8L3ByZT59XGh0bWxydGYgfVxo
dG1scnRmMCANCntcKlxodG1sdGFnMCBccGFyIH0NCntcKlxodG1sdGFnMjQwICAgfQ0Ke1wqXGh0
bWx0YWcxMDQgPC9ibG9ja3F1b3RlPn1caHRtbHJ0ZiB9XHBhcg0KXGh0bWxydGYwIA0Ke1wqXGh0
bWx0YWcwIFxwYXIgfQ0Ke1wqXGh0bWx0YWcyNDAgICB9DQp7XCpcaHRtbHRhZzEyOCA8cHJlIHdy
YXA9IiI+fVxodG1scnRmIHtccGFyZFxwbGFpblxmMVxmczIwIFxodG1scnRmMCBcaHRtbHJ0ZiB7
XGh0bWxydGYwIFxsaTM2MCANCntcKlxodG1sdGFnMjQ0IDwhLS0tLT59XGxpbmUNCiAgXGh0bWxy
dGZccGFyfVxodG1scnRmMA0KDQp7XCpcaHRtbHRhZzEzNiA8L3ByZT59XGh0bWxydGYgfVxodG1s
cnRmMCANCntcKlxodG1sdGFnMCBccGFyIH0NCntcKlxodG1sdGFnMjQwICAgfQ0Ke1wqXGh0bWx0
YWc5NiA8YmxvY2txdW90ZSB0eXBlPSJjaXRlIj59XGh0bWxydGYgXHBhcg0Ke1xodG1scnRmMCAN
CntcKlxodG1sdGFnMCBccGFyIH0NCntcKlxodG1sdGFnMjQwICAgICB9DQp7XCpcaHRtbHRhZzEy
OCA8cHJlIHdyYXA9IiI+fVxodG1scnRmIHtccGFyZFxwbGFpblxmMVxmczIwIFxodG1scnRmMCBc
aHRtbHJ0ZiB7XGh0bWxydGYwIFxsaTcyMCBvcGVuIG15IGZpbGVzIGluICJzaGFyZWQiIG1vZGUg
KCJ3aGljaCBpcyB0aGUgcnVsZSBpbiBCbGFja0JveCIpLCBJIFxsaW5lDQpjYW5ub3QgdXBkYXRl
IHRoZW07IG9uIHRoZSBvdGhlciBoYW5kLCBpZiBJIHVzZSAiZXhjbHVzaXZlIiAod2hpY2hcbGlu
ZQ0KICAgIFxodG1scnRmXHBhcn1caHRtbHJ0ZjANCg0Ke1wqXGh0bWx0YWcxMzYgPC9wcmU+fVxo
dG1scnRmIH1caHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzAgXHBhciB9DQp7XCpcaHRtbHRhZzI0MCAg
IH0NCntcKlxodG1sdGFnMTA0IDwvYmxvY2txdW90ZT59XGh0bWxydGYgfVxwYXINClxodG1scnRm
MCANCntcKlxodG1sdGFnMCBccGFyIH0NCntcKlxodG1sdGFnMjQwICAgfQ0Ke1wqXGh0bWx0YWcx
MjggPHByZSB3cmFwPSIiPn1caHRtbHJ0ZiB7XHBhcmRccGxhaW5cZjFcZnMyMCBcaHRtbHJ0ZjAg
XGh0bWxydGYge1xodG1scnRmMCBcbGkzNjAgDQp7XCpcaHRtbHRhZzI0NCA8IS0tLS0+fWlzIFxs
aW5lDQogIFxodG1scnRmXHBhcn1caHRtbHJ0ZjANCg0Ke1wqXGh0bWx0YWcxMzYgPC9wcmU+fVxo
dG1scnRmIH1caHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzAgXHBhciB9DQp7XCpcaHRtbHRhZzI0MCAg
IH0NCntcKlxodG1sdGFnOTYgPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSI+fVxodG1scnRmIFxwYXIN
CntcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzAgXHBhciB9DQp7XCpcaHRtbHRhZzI0MCAgICAgfQ0K
e1wqXGh0bWx0YWcxMjggPHByZSB3cmFwPSIiPn1caHRtbHJ0ZiB7XHBhcmRccGxhaW5cZjFcZnMy
MCBcaHRtbHJ0ZjAgXGh0bWxydGYge1xodG1scnRmMCBcbGk3MjAgd2hhdCBJIGhhZCBiZWVuIGRv
aW5nKSBJIGNhbm5vdCBvcGVuIHRob3NlIGZpbGVzIGZyb20gbW9yZSBcbGluZQ0KdGhhbiBvbmUg
c2l0ZS5cbGluZQ0KXGxpbmUNCldoYXQgSSBuZWVkIGlzIGEgd2F5IHRvIHdyaXRlIG15IGZpbGVz
IGZyb20gYSBtYXN0ZXIgc2l0ZSwgYnV0IHRvIGJlXGxpbmUNCiAgICBcaHRtbHJ0ZlxwYXJ9XGh0
bWxydGYwDQoNCntcKlxodG1sdGFnMTM2IDwvcHJlPn1caHRtbHJ0ZiB9XGh0bWxydGYwIA0Ke1wq
XGh0bWx0YWcwIFxwYXIgfQ0Ke1wqXGh0bWx0YWcyNDAgICB9DQp7XCpcaHRtbHRhZzEwNCA8L2Js
b2NrcXVvdGU+fVxodG1scnRmIH1ccGFyDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzAgXHBhciB9
DQp7XCpcaHRtbHRhZzI0MCAgIH0NCntcKlxodG1sdGFnMTI4IDxwcmUgd3JhcD0iIj59XGh0bWxy
dGYge1xwYXJkXHBsYWluXGYxXGZzMjAgXGh0bWxydGYwIFxodG1scnRmIHtcaHRtbHJ0ZjAgXGxp
MzYwIA0Ke1wqXGh0bWx0YWcyNDQgPCEtLS0tPn1cbGluZQ0KICBcaHRtbHJ0ZlxwYXJ9XGh0bWxy
dGYwDQoNCntcKlxodG1sdGFnMTM2IDwvcHJlPn1caHRtbHJ0ZiB9XGh0bWxydGYwIA0Ke1wqXGh0
bWx0YWcwIFxwYXIgfQ0Ke1wqXGh0bWx0YWcyNDAgICB9DQp7XCpcaHRtbHRhZzk2IDxibG9ja3F1
b3RlIHR5cGU9ImNpdGUiPn1caHRtbHJ0ZiBccGFyDQp7XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWcw
IFxwYXIgfQ0Ke1wqXGh0bWx0YWcyNDAgICAgIH0NCntcKlxodG1sdGFnMTI4IDxwcmUgd3JhcD0i
Ij59XGh0bWxydGYge1xwYXJkXHBsYWluXGYxXGZzMjAgXGh0bWxydGYwIFxodG1scnRmIHtcaHRt
bHJ0ZjAgXGxpNzIwIGFibGUgdG8gcmVhZCB0aGVtIGZyb20gYW55IHNpdGUgaW4gdGhlIExBTi5c
bGluZQ0KXGxpbmUNClRoYW5rcyBmb2xrczpcbGluZQ0KUmVuDQp7XCpcaHRtbHRhZzg0ICZlYWN1
dGU7fVxodG1scnRmIFwnZTlcaHRtbHJ0ZjAgIERvcnRhLlxsaW5lDQpcbGluZQ0KLS0tIEJsYWNr
Qm94XGxpbmUNCi0tLSBzZW5kIHN1YmplY3QgSEVMUCBvciBVTlNVQlNDUklCRSB0byB7fQ0Ke1wq
XGh0bWx0YWc4NCA8YSBjbGFzcz0ibW96LXR4dC1saW5rLWFiYnJldmlhdGVkIiBocmVmPSJtYWls
dG86YmxhY2tib3hAb2Jlcm9uLmNoIj59XGh0bWxydGYge1xmaWVsZHtcKlxmbGRpbnN0e0hZUEVS
TElOSyAibWFpbHRvOmJsYWNrYm94QG9iZXJvbi5jaCJ9fXtcZmxkcnNsdFxjZjFcdWwgXGh0bWxy
dGYwIGJsYWNrYm94QG9iZXJvbi5jaFxodG1scnRmIH1caHRtbHJ0ZjAgXGh0bWxydGYgfVxodG1s
cnRmMCANCntcKlxodG1sdGFnOTIgPC9hPn1cbGluZQ0KXGxpbmUNClxsaW5lDQpcbGluZQ0KICAg
IFxodG1scnRmXHBhcn1caHRtbHJ0ZjANCg0Ke1wqXGh0bWx0YWcxMzYgPC9wcmU+fVxodG1scnRm
IH1caHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzAgXHBhciB9DQp7XCpcaHRtbHRhZzI0MCAgIH0NCntc
KlxodG1sdGFnMTA0IDwvYmxvY2txdW90ZT59XGh0bWxydGYgfVxwYXINClxodG1scnRmMCANCntc
KlxodG1sdGFnMCBccGFyIH0NCntcKlxodG1sdGFnMjQwICAgfQ0Ke1wqXGh0bWx0YWcxMjggPHBy
ZSB3cmFwPSIiPn1caHRtbHJ0ZiB7XHBhcmRccGxhaW5cZjFcZnMyMCBcaHRtbHJ0ZjAgXGh0bWxy
dGYge1xodG1scnRmMCBcbGkzNjAgDQp7XCpcaHRtbHRhZzI0NCA8IS0tLS0+fVxsaW5lDQotLS0g
QmxhY2tCb3hcbGluZQ0KLS0tIHNlbmQgc3ViamVjdCBIRUxQIG9yIFVOU1VCU0NSSUJFIHRvIHt9
DQp7XCpcaHRtbHRhZzg0IDxhIGNsYXNzPSJtb3otdHh0LWxpbmstYWJicmV2aWF0ZWQiIGhyZWY9
Im1haWx0bzpibGFja2JveEBvYmVyb24uY2giPn1caHRtbHJ0ZiB7XGZpZWxke1wqXGZsZGluc3R7
SFlQRVJMSU5LICJtYWlsdG86YmxhY2tib3hAb2Jlcm9uLmNoIn19e1xmbGRyc2x0XGNmMVx1bCBc
aHRtbHJ0ZjAgYmxhY2tib3hAb2Jlcm9uLmNoXGh0bWxydGYgfVxodG1scnRmMCBcaHRtbHJ0ZiB9
XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc5MiA8L2E+fVxsaW5lDQpcbGluZQ0KXGxpbmUNCiAgXGh0
bWxydGZccGFyfVxodG1scnRmMA0KDQp7XCpcaHRtbHRhZzEzNiA8L3ByZT59XGh0bWxydGYgfVxo
dG1scnRmMCANCntcKlxodG1sdGFnMCBccGFyIH0NCntcKlxodG1sdGFnMTA0IDwvYmxvY2txdW90
ZT59XGh0bWxydGYgfVxwYXINClxodG1scnRmMCANCntcKlxodG1sdGFnMCBccGFyIH0NCntcKlxo
dG1sdGFnMTEyIDxicj59XGh0bWxydGYgXHBhcg0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWcwIFxw
YXIgfQ0Ke1wqXGh0bWx0YWc1OCA8L2JvZHk+fQ0Ke1wqXGh0bWx0YWcyIFxwYXIgfQ0Ke1wqXGh0
bWx0YWcyNyA8L2h0bWw+fQ0Ke1wqXGh0bWx0YWczfX0AbCBJbmY=
----boundary-LibPST-iamunique-1369251018_-_---
Received on Sun Jun 03 2007 - 14:40:32 UTC
This archive was generated by hypermail 2.3.0
: Thu Sep 26 2013 - 06:31:33 UTC