Re: How to implement a Clipboard

From: [at]} <ftkachov{>
Date: Tue, 29 Oct 2002 10:23:00 +0300 (MSK)

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

Hector:

Clipboard is a global concept,
so why not keep things simple (consequently, elegant)
with a global variable -- it's only a 32-bit pointer?

Best,
Fyodor Tkachov

>
> This is a multi-part message in MIME format.
>
> ------=_NextPart_000_0007_01C27ED8.D0A168F0
> Content-Type: text/plain;
> charset="iso-8859-1"
> Content-Transfer-Encoding: quoted-printable
>
> Hi, "BlackBoxers".=20
> There was a long time ago I hadn't written, and finally, today, I hadn't =
> any other chance.=20
>
> My question, today is: "How to implement a Clipboard?".=20
>
> I'll explain: =20
>
> I'm developing an application that has to use a Clipboard for =
> operations like "cut","copy", and all so. The objects I cut, copy... are =
> part of a list, so in principle, I don't need anything else than an =
> "anchor" to put there (in the anchor, I mean) the cuted objects (and if =
> I want to paste these objects, the only thing I must do is to put that =
> list again in the model). Isn't it?
>
> But if I want to do that, I need the anchor to be a global variable. The =
> problem is that that global variable only would be used when an =
> operation of cutting or pasting is required and it would be unused all =
> the other time (most part of the time, then). Another inconvenient is I =
> don't like global variables very much, so I'm not sure if that way of =
> solving this "Clipboard problem" is elegant (with a global variable).=20
>
> What about making a new module only for these Copy and Paste tools?. =
> This module would have the global varible, but at least, that variable =
> is not in the main module. Do you think that this solution is even worse =
> than the global variable in the main module?.
>
> So, for you, which should be the better way to solve that?
>
> Thank you very much.
>
> HECTOR
>
> PE: Excuse me for my bad english.
>
> ------=_NextPart_000_0007_01C27ED8.D0A168F0
> Content-Type: text/html;
> charset="iso-8859-1"
> Content-Transfer-Encoding: quoted-printable
>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
> <HTML><HEAD>
> <META content=3D"text/html; charset=3Diso-8859-1" =
> http-equiv=3DContent-Type>
> <META content=3D"MSHTML 5.00.3315.2870" name=3DGENERATOR>
> <STYLE></STYLE>
> </HEAD>
> <BODY bgColor=3D#ffffff>
> <DIV><FONT face=3DArial size=3D2><SPAN=20
> style=3D"mso-fareast-font-family: 'MS Mincho'">Hi, "BlackBoxers". =
> <?xml:namespace=20
> prefix =3D o ns =3D "urn:schemas-microsoft-com:office:office"=20
> /><o:p></o:p></SPAN></DIV>
> <P class=3DMsoPlainText><SPAN style=3D"mso-fareast-font-family: 'MS =
> Mincho'">There=20
> was a long time ago I hadn't written, and finally, today, I hadn't any =
> other=20
> chance. </SPAN></P>
> <P class=3DMsoPlainText><SPAN style=3D"mso-fareast-font-family: 'MS =
> Mincho'">My=20
> question, today is: "How to implement a Clipboard?". =
> <o:p></o:p></SPAN></P>
> <P class=3DMsoPlainText><SPAN=20
> style=3D"mso-fareast-font-family: 'MS Mincho'">&nbsp;</SPAN><SPAN=20
> style=3D"mso-fareast-font-family: 'MS Mincho'">I'll explain:<SPAN=20
> style=3D"mso-tab-count: 1">&nbsp;&nbsp;&nbsp; =
> </SPAN><o:p></o:p></SPAN></P>
> <P class=3DMsoPlainText><SPAN=20
> style=3D"mso-fareast-font-family: 'MS Mincho'">&nbsp;</SPAN><SPAN=20
> style=3D"mso-fareast-font-family: 'MS Mincho'">I'm developing an =
> application that=20
> has to use a Clipboard for operations like "cut","copy", and all so. The =
> objects=20
> I cut, copy... are part of a list, so in principle, I don't need =
> anything else=20
> than an "anchor" to put there (in the anchor, I mean) the cuted objects =
> (and if=20
> I want to paste these objects, the only thing I must do is to put that =
> list=20
> again in the model). Isn't it?<o:p></o:p></SPAN></P>
> <P class=3DMsoPlainText><SPAN style=3D"mso-fareast-font-family: 'MS =
> Mincho'">But if=20
> I want to do that, I need the anchor to be a global variable. The =
> problem is=20
> that that global variable only would be used when an operation of =
> cutting or=20
> pasting is required and it would be unused all the other time (most part =
> of the=20
> time, then). Another inconvenient is I don't like global variables very =
> much, so=20
> I'm not sure if that way of solving this "Clipboard problem" is elegant =
> (with a=20
> global variable). <o:p></o:p></SPAN></P>
> <P class=3DMsoPlainText><SPAN=20
> style=3D"mso-fareast-font-family: 'MS Mincho'">&nbsp;</SPAN><SPAN=20
> style=3D"mso-fareast-font-family: 'MS Mincho'">What about making a new =
> module only=20
> for these Copy and Paste tools?. This module would have the global =
> varible, but=20
> at least, that variable is not in the main module. Do you think that =
> this=20
> solution is even worse than the global variable in the main =
> module?.</SPAN></P>
> <P class=3DMsoPlainText><SPAN style=3D"mso-fareast-font-family: 'MS =
> Mincho'">So, for=20
> you, which should be the better way to solve that?</SPAN></P>
> <P class=3DMsoPlainText><SPAN style=3D"mso-fareast-font-family: 'MS =
> Mincho'">Thank=20
> you very much.<o:p></o:p></SPAN></P>
> <DIV><SPAN=20
> style=3D"FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 12pt; =
> mso-fareast-font-family: 'MS Mincho'; mso-ansi-language: ES; =
> mso-fareast-language: ES; mso-bidi-language: AR-SA">HECTOR</SPAN></DIV>
> <DIV><SPAN=20
> style=3D"FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 12pt; =
> mso-fareast-font-family: 'MS Mincho'; mso-ansi-language: ES; =
> mso-fareast-language: ES; mso-bidi-language: AR-SA"></SPAN>&nbsp;</DIV>
> <DIV><SPAN=20
> style=3D"FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 12pt; =
> mso-fareast-font-family: 'MS Mincho'; mso-ansi-language: ES; =
> mso-fareast-language: ES; mso-bidi-language: AR-SA">PE:=20
> Excuse me for my bad english.</SPAN></FONT></DIV></BODY></HTML>
>
> ------=_NextPart_000_0007_01C27ED8.D0A168F0--
>
>
> --------------------------------------------
>
> 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-14232819_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"

e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIEhlY3RvcjogXHBhcg0KXHBhcg0KQ2xpcGJvYXJk
IGlzIGEgZ2xvYmFsIGNvbmNlcHQsIFxwYXINCnNvIHdoeSBub3Qga2VlcCB0aGluZ3Mgc2ltcGxl
IChjb25zZXF1ZW50bHksIGVsZWdhbnQpIFxwYXINCndpdGggYSBnbG9iYWwgdmFyaWFibGUgLS0g
aXQncyBvbmx5IGEgMzItYml0IHBvaW50ZXI/XHBhcg0KXHBhcg0KQmVzdCxccGFyDQpGeW9kb3Ig
VGthY2hvdlxwYXINClxwYXINCj4gXHBhcg0KPiBUaGlzIGlzIGEgbXVsdGktcGFydCBtZXNzYWdl
IGluIE1JTUUgZm9ybWF0LlxwYXINCj4gXHBhcg0KPiAtLS0tLS09X05leHRQYXJ0XzAwMF8wMDA3
XzAxQzI3RUQ4LkQwQTE2OEYwXHBhcg0KPiBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47XHBhcg0K
PiBcdGFiIGNoYXJzZXQ9Imlzby04ODU5LTEiXHBhcg0KPiBDb250ZW50LVRyYW5zZmVyLUVuY29k
aW5nOiBxdW90ZWQtcHJpbnRhYmxlXHBhcg0KPiBccGFyDQo+IEhpLCAiQmxhY2tCb3hlcnMiLj0y
MFxwYXINCj4gVGhlcmUgd2FzIGEgbG9uZyB0aW1lIGFnbyBJIGhhZG4ndCB3cml0dGVuLCBhbmQg
ZmluYWxseSwgdG9kYXksIEkgaGFkbid0ID1ccGFyDQo+IGFueSBvdGhlciBjaGFuY2UuPTIwXHBh
cg0KPiBccGFyDQo+IE15IHF1ZXN0aW9uLCB0b2RheSBpczogIkhvdyB0byBpbXBsZW1lbnQgYSBD
bGlwYm9hcmQ/Ii49MjBccGFyDQo+IFxwYXINCj4gIEknbGwgZXhwbGFpbjogICA9MjBccGFyDQo+
IFxwYXINCj4gIEknbSBkZXZlbG9waW5nIGFuIGFwcGxpY2F0aW9uIHRoYXQgaGFzIHRvIHVzZSBh
IENsaXBib2FyZCBmb3IgPVxwYXINCj4gb3BlcmF0aW9ucyBsaWtlICJjdXQiLCJjb3B5IiwgYW5k
IGFsbCBzby4gVGhlIG9iamVjdHMgSSBjdXQsIGNvcHkuLi4gYXJlID1ccGFyDQo+IHBhcnQgb2Yg
YSBsaXN0LCBzbyBpbiBwcmluY2lwbGUsIEkgZG9uJ3QgbmVlZCBhbnl0aGluZyBlbHNlIHRoYW4g
YW4gPVxwYXINCj4gImFuY2hvciIgdG8gcHV0IHRoZXJlIChpbiB0aGUgYW5jaG9yLCBJIG1lYW4p
IHRoZSBjdXRlZCBvYmplY3RzIChhbmQgaWYgPVxwYXINCj4gSSB3YW50IHRvIHBhc3RlIHRoZXNl
IG9iamVjdHMsIHRoZSBvbmx5IHRoaW5nIEkgbXVzdCBkbyBpcyB0byBwdXQgdGhhdCA9XHBhcg0K
PiBsaXN0IGFnYWluIGluIHRoZSBtb2RlbCkuIElzbid0IGl0P1xwYXINCj4gXHBhcg0KPiBCdXQg
aWYgSSB3YW50IHRvIGRvIHRoYXQsIEkgbmVlZCB0aGUgYW5jaG9yIHRvIGJlIGEgZ2xvYmFsIHZh
cmlhYmxlLiBUaGUgPVxwYXINCj4gcHJvYmxlbSBpcyB0aGF0IHRoYXQgZ2xvYmFsIHZhcmlhYmxl
IG9ubHkgd291bGQgYmUgdXNlZCB3aGVuIGFuID1ccGFyDQo+IG9wZXJhdGlvbiBvZiBjdXR0aW5n
IG9yIHBhc3RpbmcgaXMgcmVxdWlyZWQgYW5kIGl0IHdvdWxkIGJlIHVudXNlZCBhbGwgPVxwYXIN
Cj4gdGhlIG90aGVyIHRpbWUgKG1vc3QgcGFydCBvZiB0aGUgdGltZSwgdGhlbikuIEFub3RoZXIg
aW5jb252ZW5pZW50IGlzIEkgPVxwYXINCj4gZG9uJ3QgbGlrZSBnbG9iYWwgdmFyaWFibGVzIHZl
cnkgbXVjaCwgc28gSSdtIG5vdCBzdXJlIGlmIHRoYXQgd2F5IG9mID1ccGFyDQo+IHNvbHZpbmcg
dGhpcyAiQ2xpcGJvYXJkIHByb2JsZW0iIGlzIGVsZWdhbnQgKHdpdGggYSBnbG9iYWwgdmFyaWFi
bGUpLj0yMFxwYXINCj4gXHBhcg0KPiAgV2hhdCBhYm91dCBtYWtpbmcgYSBuZXcgbW9kdWxlIG9u
bHkgZm9yIHRoZXNlIENvcHkgYW5kIFBhc3RlIHRvb2xzPy4gPVxwYXINCj4gVGhpcyBtb2R1bGUg
d291bGQgaGF2ZSB0aGUgZ2xvYmFsIHZhcmlibGUsIGJ1dCBhdCBsZWFzdCwgdGhhdCB2YXJpYWJs
ZSA9XHBhcg0KPiBpcyBub3QgaW4gdGhlIG1haW4gbW9kdWxlLiBEbyB5b3UgdGhpbmsgdGhhdCB0
aGlzIHNvbHV0aW9uIGlzIGV2ZW4gd29yc2UgPVxwYXINCj4gdGhhbiB0aGUgZ2xvYmFsIHZhcmlh
YmxlIGluIHRoZSBtYWluIG1vZHVsZT8uXHBhcg0KPiBccGFyDQo+IFNvLCBmb3IgeW91LCB3aGlj
aCBzaG91bGQgYmUgdGhlIGJldHRlciB3YXkgdG8gc29sdmUgdGhhdD9ccGFyDQo+IFxwYXINCj4g
VGhhbmsgeW91IHZlcnkgbXVjaC5ccGFyDQo+IFxwYXINCj4gSEVDVE9SXHBhcg0KPiBccGFyDQo+
IFBFOiBFeGN1c2UgbWUgZm9yIG15IGJhZCBlbmdsaXNoLlxwYXINCj4gXHBhcg0KPiAtLS0tLS09
X05leHRQYXJ0XzAwMF8wMDA3XzAxQzI3RUQ4LkQwQTE2OEYwXHBhcg0KPiBDb250ZW50LVR5cGU6
IHRleHQvaHRtbDtccGFyDQo+IFx0YWIgY2hhcnNldD0iaXNvLTg4NTktMSJccGFyDQo+IENvbnRl
bnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3RlZC1wcmludGFibGVccGFyDQo+IFxwYXINCj4gPCFE
T0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMCBUcmFuc2l0aW9uYWwvL0VO
Ij5ccGFyDQo+IDxIVE1MPjxIRUFEPlxwYXINCj4gPE1FVEEgY29udGVudD0zRCJ0ZXh0L2h0bWw7
IGNoYXJzZXQ9M0Rpc28tODg1OS0xIiA9XHBhcg0KPiBodHRwLWVxdWl2PTNEQ29udGVudC1UeXBl
PlxwYXINCj4gPE1FVEEgY29udGVudD0zRCJNU0hUTUwgNS4wMC4zMzE1LjI4NzAiIG5hbWU9M0RH
RU5FUkFUT1I+XHBhcg0KPiA8U1RZTEU+PC9TVFlMRT5ccGFyDQo+IDwvSEVBRD5ccGFyDQo+IDxC
T0RZIGJnQ29sb3I9M0QjZmZmZmZmPlxwYXINCj4gPERJVj48Rk9OVCBmYWNlPTNEQXJpYWwgc2l6
ZT0zRDI+PFNQQU49MjBccGFyDQo+IHN0eWxlPTNEIm1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiAn
TVMgTWluY2hvJyI+SGksICJCbGFja0JveGVycyIuID1ccGFyDQo+IDw/eG1sOm5hbWVzcGFjZT0y
MFxwYXINCj4gcHJlZml4ID0zRCBvIG5zID0zRCAidXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpv
ZmZpY2U6b2ZmaWNlIj0yMFxwYXINCj4gLz48bzpwPjwvbzpwPjwvU1BBTj48L0RJVj5ccGFyDQo+
IDxQIGNsYXNzPTNETXNvUGxhaW5UZXh0PjxTUEFOIHN0eWxlPTNEIm1zby1mYXJlYXN0LWZvbnQt
ZmFtaWx5OiAnTVMgPVxwYXINCj4gTWluY2hvJyI+VGhlcmU9MjBccGFyDQo+IHdhcyBhIGxvbmcg
dGltZSBhZ28gSSBoYWRuJ3Qgd3JpdHRlbiwgYW5kIGZpbmFsbHksIHRvZGF5LCBJIGhhZG4ndCBh
bnkgPVxwYXINCj4gb3RoZXI9MjBccGFyDQo+IGNoYW5jZS4gPC9TUEFOPjwvUD5ccGFyDQo+IDxQ
IGNsYXNzPTNETXNvUGxhaW5UZXh0PjxTUEFOIHN0eWxlPTNEIm1zby1mYXJlYXN0LWZvbnQtZmFt
aWx5OiAnTVMgPVxwYXINCj4gTWluY2hvJyI+TXk9MjBccGFyDQo+IHF1ZXN0aW9uLCB0b2RheSBp
czogIkhvdyB0byBpbXBsZW1lbnQgYSBDbGlwYm9hcmQ/Ii4gPVxwYXINCj4gPG86cD48L286cD48
L1NQQU4+PC9QPlxwYXINCj4gPFAgY2xhc3M9M0RNc29QbGFpblRleHQ+PFNQQU49MjBccGFyDQo+
IHN0eWxlPTNEIm1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiAnTVMgTWluY2hvJyI+Jm5ic3A7PC9T
UEFOPjxTUEFOPTIwXHBhcg0KPiBzdHlsZT0zRCJtc28tZmFyZWFzdC1mb250LWZhbWlseTogJ01T
IE1pbmNobyciPkknbGwgZXhwbGFpbjo8U1BBTj0yMFxwYXINCj4gc3R5bGU9M0QibXNvLXRhYi1j
b3VudDogMSI+Jm5ic3A7Jm5ic3A7Jm5ic3A7ID1ccGFyDQo+IDwvU1BBTj48bzpwPjwvbzpwPjwv
U1BBTj48L1A+XHBhcg0KPiA8UCBjbGFzcz0zRE1zb1BsYWluVGV4dD48U1BBTj0yMFxwYXINCj4g
c3R5bGU9M0QibXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6ICdNUyBNaW5jaG8nIj4mbmJzcDs8L1NQ
QU4+PFNQQU49MjBccGFyDQo+IHN0eWxlPTNEIm1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiAnTVMg
TWluY2hvJyI+SSdtIGRldmVsb3BpbmcgYW4gPVxwYXINCj4gYXBwbGljYXRpb24gdGhhdD0yMFxw
YXINCj4gaGFzIHRvIHVzZSBhIENsaXBib2FyZCBmb3Igb3BlcmF0aW9ucyBsaWtlICJjdXQiLCJj
b3B5IiwgYW5kIGFsbCBzby4gVGhlID1ccGFyDQo+IG9iamVjdHM9MjBccGFyDQo+IEkgY3V0LCBj
b3B5Li4uIGFyZSBwYXJ0IG9mIGEgbGlzdCwgc28gaW4gcHJpbmNpcGxlLCBJIGRvbid0IG5lZWQg
PVxwYXINCj4gYW55dGhpbmcgZWxzZT0yMFxwYXINCj4gdGhhbiBhbiAiYW5jaG9yIiB0byBwdXQg
dGhlcmUgKGluIHRoZSBhbmNob3IsIEkgbWVhbikgdGhlIGN1dGVkIG9iamVjdHMgPVxwYXINCj4g
KGFuZCBpZj0yMFxwYXINCj4gSSB3YW50IHRvIHBhc3RlIHRoZXNlIG9iamVjdHMsIHRoZSBvbmx5
IHRoaW5nIEkgbXVzdCBkbyBpcyB0byBwdXQgdGhhdCA9XHBhcg0KPiBsaXN0PTIwXHBhcg0KPiBh
Z2FpbiBpbiB0aGUgbW9kZWwpLiBJc24ndCBpdD88bzpwPjwvbzpwPjwvU1BBTj48L1A+XHBhcg0K
PiA8UCBjbGFzcz0zRE1zb1BsYWluVGV4dD48U1BBTiBzdHlsZT0zRCJtc28tZmFyZWFzdC1mb250
LWZhbWlseTogJ01TID1ccGFyDQo+IE1pbmNobyciPkJ1dCBpZj0yMFxwYXINCj4gSSB3YW50IHRv
IGRvIHRoYXQsIEkgbmVlZCB0aGUgYW5jaG9yIHRvIGJlIGEgZ2xvYmFsIHZhcmlhYmxlLiBUaGUg
PVxwYXINCj4gcHJvYmxlbSBpcz0yMFxwYXINCj4gdGhhdCB0aGF0IGdsb2JhbCB2YXJpYWJsZSBv
bmx5IHdvdWxkIGJlIHVzZWQgd2hlbiBhbiBvcGVyYXRpb24gb2YgPVxwYXINCj4gY3V0dGluZyBv
cj0yMFxwYXINCj4gcGFzdGluZyBpcyByZXF1aXJlZCBhbmQgaXQgd291bGQgYmUgdW51c2VkIGFs
bCB0aGUgb3RoZXIgdGltZSAobW9zdCBwYXJ0ID1ccGFyDQo+IG9mIHRoZT0yMFxwYXINCj4gdGlt
ZSwgdGhlbikuIEFub3RoZXIgaW5jb252ZW5pZW50IGlzIEkgZG9uJ3QgbGlrZSBnbG9iYWwgdmFy
aWFibGVzIHZlcnkgPVxwYXINCj4gbXVjaCwgc289MjBccGFyDQo+IEknbSBub3Qgc3VyZSBpZiB0
aGF0IHdheSBvZiBzb2x2aW5nIHRoaXMgIkNsaXBib2FyZCBwcm9ibGVtIiBpcyBlbGVnYW50ID1c
cGFyDQo+ICh3aXRoIGE9MjBccGFyDQo+IGdsb2JhbCB2YXJpYWJsZSkuIDxvOnA+PC9vOnA+PC9T
UEFOPjwvUD5ccGFyDQo+IDxQIGNsYXNzPTNETXNvUGxhaW5UZXh0PjxTUEFOPTIwXHBhcg0KPiBz
dHlsZT0zRCJtc28tZmFyZWFzdC1mb250LWZhbWlseTogJ01TIE1pbmNobyciPiZuYnNwOzwvU1BB
Tj48U1BBTj0yMFxwYXINCj4gc3R5bGU9M0QibXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6ICdNUyBN
aW5jaG8nIj5XaGF0IGFib3V0IG1ha2luZyBhIG5ldyA9XHBhcg0KPiBtb2R1bGUgb25seT0yMFxw
YXINCj4gZm9yIHRoZXNlIENvcHkgYW5kIFBhc3RlIHRvb2xzPy4gVGhpcyBtb2R1bGUgd291bGQg
aGF2ZSB0aGUgZ2xvYmFsID1ccGFyDQo+IHZhcmlibGUsIGJ1dD0yMFxwYXINCj4gYXQgbGVhc3Qs
IHRoYXQgdmFyaWFibGUgaXMgbm90IGluIHRoZSBtYWluIG1vZHVsZS4gRG8geW91IHRoaW5rIHRo
YXQgPVxwYXINCj4gdGhpcz0yMFxwYXINCj4gc29sdXRpb24gaXMgZXZlbiB3b3JzZSB0aGFuIHRo
ZSBnbG9iYWwgdmFyaWFibGUgaW4gdGhlIG1haW4gPVxwYXINCj4gbW9kdWxlPy48L1NQQU4+PC9Q
PlxwYXINCj4gPFAgY2xhc3M9M0RNc29QbGFpblRleHQ+PFNQQU4gc3R5bGU9M0QibXNvLWZhcmVh
c3QtZm9udC1mYW1pbHk6ICdNUyA9XHBhcg0KPiBNaW5jaG8nIj5TbywgZm9yPTIwXHBhcg0KPiB5
b3UsIHdoaWNoIHNob3VsZCBiZSB0aGUgYmV0dGVyIHdheSB0byBzb2x2ZSB0aGF0PzwvU1BBTj48
L1A+XHBhcg0KPiA8UCBjbGFzcz0zRE1zb1BsYWluVGV4dD48U1BBTiBzdHlsZT0zRCJtc28tZmFy
ZWFzdC1mb250LWZhbWlseTogJ01TID1ccGFyDQo+IE1pbmNobyciPlRoYW5rPTIwXHBhcg0KPiB5
b3UgdmVyeSBtdWNoLjxvOnA+PC9vOnA+PC9TUEFOPjwvUD5ccGFyDQo+IDxESVY+PFNQQU49MjBc
cGFyDQo+IHN0eWxlPTNEIkZPTlQtRkFNSUxZOiAnVGltZXMgTmV3IFJvbWFuJzsgRk9OVC1TSVpF
OiAxMnB0OyA9XHBhcg0KPiBtc28tZmFyZWFzdC1mb250LWZhbWlseTogJ01TIE1pbmNobyc7IG1z
by1hbnNpLWxhbmd1YWdlOiBFUzsgPVxwYXINCj4gbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6IEVTOyBt
c28tYmlkaS1sYW5ndWFnZTogQVItU0EiPkhFQ1RPUjwvU1BBTj48L0RJVj5ccGFyDQo+IDxESVY+
PFNQQU49MjBccGFyDQo+IHN0eWxlPTNEIkZPTlQtRkFNSUxZOiAnVGltZXMgTmV3IFJvbWFuJzsg
Rk9OVC1TSVpFOiAxMnB0OyA9XHBhcg0KPiBtc28tZmFyZWFzdC1mb250LWZhbWlseTogJ01TIE1p
bmNobyc7IG1zby1hbnNpLWxhbmd1YWdlOiBFUzsgPVxwYXINCj4gbXNvLWZhcmVhc3QtbGFuZ3Vh
Z2U6IEVTOyBtc28tYmlkaS1sYW5ndWFnZTogQVItU0EiPjwvU1BBTj4mbmJzcDs8L0RJVj5ccGFy
DQo+IDxESVY+PFNQQU49MjBccGFyDQo+IHN0eWxlPTNEIkZPTlQtRkFNSUxZOiAnVGltZXMgTmV3
IFJvbWFuJzsgRk9OVC1TSVpFOiAxMnB0OyA9XHBhcg0KPiBtc28tZmFyZWFzdC1mb250LWZhbWls
eTogJ01TIE1pbmNobyc7IG1zby1hbnNpLWxhbmd1YWdlOiBFUzsgPVxwYXINCj4gbXNvLWZhcmVh
c3QtbGFuZ3VhZ2U6IEVTOyBtc28tYmlkaS1sYW5ndWFnZTogQVItU0EiPlBFOj0yMFxwYXINCj4g
RXhjdXNlIG1lIGZvciBteSBiYWQgZW5nbGlzaC48L1NQQU4+PC9GT05UPjwvRElWPjwvQk9EWT48
L0hUTUw+XHBhcg0KPiBccGFyDQo+IC0tLS0tLT1fTmV4dFBhcnRfMDAwXzAwMDdfMDFDMjdFRDgu
RDBBMTY4RjAtLVxwYXINCj4gXHBhcg0KPiBccGFyDQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tXHBhcg0KPiBccGFyDQo+IFRvIHVuc3Vic2NyaWJlIGZyb20g
dGhpcyBtYWlsaW5nIGxpc3QsIHNlbmQgYSBtZXNzYWdlIGNvbnRhaW5pbmcgdGhlIHdvcmQgInVu
c3Vic2NyaWJlIiB0bzpccGFyDQo+ICAgIGJsYWNrYm94LXJlcXVlc3RAb2Jlcm9uLmNoXHBhcg0K
PiBccGFyDQo+IFRvIGdldCBhIGxpc3Qgb2YgdmFsaWQgZS1tYWlsIGNvbW1hbmRzIGFuZCBpbnN0
cnVjdGlvbnMgb24gdGhlaXIgdXNhZ2UsIHNlbmQgYSBtZXNzYWdlIGNvbnRhaW5pbmcgdGhlIHdv
cmQgImhlbHAiIHRvIHRoZSBhYm92ZSBhZGRyZXNzLlxwYXINCj4gXHBhcg0KPiBTZW5kIGFueSBw
cm9ibGVtIHJlcG9ydHMgb3IgcXVlc3Rpb25zIHJlbGF0ZWQgdG8gdGhpcyBlbWFpbCBsaXN0IHRv
IHRoZSBsaXN0IG93bmVyIGF0XHBhcg0KPiAgICBvd25lci1ibGFja2JveEBvYmVyb24uY2hccGFy
DQo+IFxwYXINCj4gQ3VycmVudCBwb3N0aW5nIHBvbGljeTpccGFyDQo+IFxwYXINCj4gYSkgVG8g
cG9zdCB5b3Ugc2hvdWxkIHVzZSB0aGUgc2FtZSBhZGRyZXNzIGJ5IHdoaWNoIHlvdSBhcmUgc3Vi
c2NyaWJlZCB0byB0aGUgbWFpbGluZyBsaXN0LiBUaGF0IHdheSwgdGhlIGxpc3Qgc2VydmVyIHdp
bGwgcmVjb2duaXplIHlvdSBhcyBzdWJzY3JpYmVyIGFuZCBmb3J3YXJkIHlvdXIgcG9zdGluZyBp
bW1lZGlhdGVseSwgd2l0aG91dCBjcmVhdGluZyBhbnkgb3ZlcmhlYWQuXHBhcg0KPiBccGFyDQo+
IGIpIElmLCBmb3Igc29tZSByZWFzb24sIHlvdSBjYW5ub3QgcG9zdCBmcm9tIHRoZSBhZGRyZXNz
LCBieSB3aGljaCB5b3UgYXJlIHN1YnNjcmliZWQsIHlvdXIgbWVzc2FnZSB3aWxsIGJlIG1vZGVy
YXRlZCB0byBhdm9pZCBzcGFtLiBQbGVhc2UgdW5kZXJzdGFuZCB0aGF0IG1vZGVyYXRpb24gd2ls
bCBvZnRlbiBjYXVzZSBzb21lIGRlbGF5LCBpbiBwYXJ0aWN1bGFyIG92ZXIgd2Vla2VuZHMgb3Ig
aG9seWRheXMuXHBhcg0KPiBccGFyDQpccGFyDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLVxwYXINClxwYXINClRvIHVuc3Vic2NyaWJlIGZyb20gdGhpcyBtYWls
aW5nIGxpc3QsIHNlbmQgYSBtZXNzYWdlIGNvbnRhaW5pbmcgdGhlIHdvcmQgInVuc3Vic2NyaWJl
IiB0bzpccGFyDQogICBibGFja2JveC1yZXF1ZXN0QG9iZXJvbi5jaFxwYXINClxwYXINClRvIGdl
dCBhIGxpc3Qgb2YgdmFsaWQgZS1tYWlsIGNvbW1hbmRzIGFuZCBpbnN0cnVjdGlvbnMgb24gdGhl
aXIgdXNhZ2UsIHNlbmQgYSBtZXNzYWdlIGNvbnRhaW5pbmcgdGhlIHdvcmQgImhlbHAiIHRvIHRo
ZSBhYm92ZSBhZGRyZXNzLlxwYXINClxwYXINClNlbmQgYW55IHByb2JsZW0gcmVwb3J0cyBvciBx
dWVzdGlvbnMgcmVsYXRlZCB0byB0aGlzIGVtYWlsIGxpc3QgdG8gdGhlIGxpc3Qgb3duZXIgYXRc
cGFyDQogICBvd25lci1ibGFja2JveEBvYmVyb24uY2hccGFyDQpccGFyDQpDdXJyZW50IHBvc3Rp
bmcgcG9saWN5OlxwYXINClxwYXINCmEpIFRvIHBvc3QgeW91IHNob3VsZCB1c2UgdGhlIHNhbWUg
YWRkcmVzcyBieSB3aGljaCB5b3UgYXJlIHN1YnNjcmliZWQgdG8gdGhlIG1haWxpbmcgbGlzdC4g
VGhhdCB3YXksIHRoZSBsaXN0IHNlcnZlciB3aWxsIHJlY29nbml6ZSB5b3UgYXMgc3Vic2NyaWJl
ciBhbmQgZm9yd2FyZCB5b3VyIHBvc3RpbmcgaW1tZWRpYXRlbHksIHdpdGhvdXQgY3JlYXRpbmcg
YW55IG92ZXJoZWFkLlxwYXINClxwYXINCmIpIElmLCBmb3Igc29tZSByZWFzb24sIHlvdSBjYW5u
b3QgcG9zdCBmcm9tIHRoZSBhZGRyZXNzLCBieSB3aGljaCB5b3UgYXJlIHN1YnNjcmliZWQsIHlv
dXIgbWVzc2FnZSB3aWxsIGJlIG1vZGVyYXRlZCB0byBhdm9pZCBzcGFtLiBQbGVhc2UgdW5kZXJz
dGFuZCB0aGF0IG1vZGVyYXRpb24gd2lsbCBvZnRlbiBjYXVzZSBzb21lIGRlbGF5LCBpbiBwYXJ0
aWN1bGFyIG92ZXIgd2Vla2VuZHMgb3IgaG9seWRheXMuXHB9fQCyVg==


----boundary-LibPST-iamunique-14232819_-_---
Received on Tue Oct 29 2002 - 08:23:00 UTC

This archive was generated by hypermail 2.3.0 : Thu Sep 26 2013 - 06:29:34 UTC