Today was again a hard Zope day.

Did you ever hear, that usually (i.e. if you do not do special
things) Zope renders a complete page before it starts
sending the result back to the client.
This implies that you should never see only half of a page.

I heard it and I saw the code that does it.
Therefore, I was convinced that this were really the case.

Then our client phoned:

      He visits a page that allows him to generate a
      newsletter. When he presses the "generate newsletter button",
      a result page is build that tells him that the newsletter
      is being generated and send is a few minutes.
    
      He reported, that this response page is build only
      half, then stops, to be completed only half a minute later,
      at the same time when the newsletter arrives.
      The effect is reproducible. If newsletter generation
      takes longer, he must wait longer for the page to complete.
    
      He is convinced that we generate the newsletter synchronously
      and let him wait until the generation is complete.
      And he is angry.
    
      I know, that the newsletter is generated in a background
      process, started in an external method with:
    
           os.system("gen_newsletter &")
    
      I try to reproduce the behaviour in our test environment
      and fail. I do not have to wait, until the newsletter
      generation finished. Then, I use the official service
      URL and see, I observe the same behaviour.
      The difference: in the test environment, the browser
      connects directly to ZServer; with the official
      URL, it connects via a proxy.
    
      Puzzling!


What happened?

     The background process inherits Zope's open file descriptors.
     Among them are all currently open HTTP request sockets.
     The process keeps these sockets open until it finishes.

     There are two HTTP modes:

       1. single request mode
          a new TCP connection is created for each HTTP request,
          the request is completed, when the TCP connection
          is closed.

       2. multi request mode
          several requests share a single TCP connection.
          The "Content-Length" HTTP header allows
          client and server to determine the request boundaries.

     That means: when a client uses the multi request mode,
     everything is fine. Clients, however, that use
     the single request mode wait until their connection
     is closed and can observe serious delays.

     These delays may be very difficult to explain, as
     the background process not only delays its own
     request but may delay arbitrary other requests
     that happen to be served at the same time.



How to fix the problem:

      There should be a (file) control "CloseOnExec", that tells
      Unix to automatically close the file like object upon
      an exec.
      ZServer should probably use it on each of its sockets.
      I can not see a serious application that should have
      direct access to ZServer's HTTP request socket.


I will soon file a bug report into the Collector.


Dieter

_______________________________________________
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope )

>From [EMAIL PROTECTED] Tue Dec 19 20:13:04 2000
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 19892 invoked from network); 19 Dec 2000 20:13:04 -0000
Received: from unknown (HELO dark.darkweb.com) (unknown)
  by unknown with SMTP; 19 Dec 2000 20:13:04 -0000
Received: (from garthh@localhost)
        by dark.darkweb.com (8.9.3/8.9.3) id MAA21887
        for [EMAIL PROTECTED]; Tue, 19 Dec 2000 12:09:49 -0800
Date: Tue, 19 Dec 2000 12:09:49 -0800
From: Garth Hitchens <[EMAIL PROTECTED]>
Message-Id: <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Subject: testing

>From [EMAIL PROTECTED] Tue Dec 19 20:15:10 2000
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 19940 invoked from network); 19 Dec 2000 20:15:04 -0000
Received: from unknown (HELO contesting.com) (unknown)
  by unknown with SMTP; 19 Dec 2000 20:15:04 -0000
Received: from notebook ([216.1.129.5])
        by contesting.com (8.11.0/8.11.0) with SMTP id eBJJOl911660;
        Tue, 19 Dec 2000 14:24:52 -0500 (EST)
From: "Bill Fisher" <[EMAIL PROTECTED]>
To: "Garth Hitchens" <[EMAIL PROTECTED]>
Cc: <[EMAIL PROTECTED]>, "Randy Thompson" <[EMAIL PROTECTED]>
Subject: PR Progress as of today
Date: Tue, 19 Dec 2000 14:23:05 -0500
Message-ID: <[EMAIL PROTECTED]>
MIME-Version: 1.0
Content-Type: multipart/mixed;
        boundary="----=_NextPart_000_00FB_01C069C7.33BDF7B0"
X-Priority: 3 (Normal)
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0)
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700
Importance: Normal

This is a multi-part message in MIME format.

------=_NextPart_000_00FB_01C069C7.33BDF7B0
Content-Type: multipart/alternative;
        boundary="----=_NextPart_001_00FC_01C069C7.33BDF7B0"


------=_NextPart_001_00FC_01C069C7.33BDF7B0
Content-Type: text/plain;
        charset="iso-8859-1"
Content-Transfer-Encoding: 7bit

Garth,

I have done a lot of investigating and talked to a fair number of people.
As of today, I would say that our plan for getting our word out should be to
distribute our press release to one submission service.  The best one I have
found is Business Wire.   I have included the publications they work with
for releases.  A few of these are major news sources that people like Yahoo
use for getting news like Reuters.  According to Yahoo, this is the only way
our news will show up on their site (they mentioned BusinessWire.com and
PRNewswire.com).

I have included a Word document that lists the various places our news will
be distributed if we pick this company and this demographic (which I think
is our space).  I'm keeping this list as a reference and then creating my
own list of sites or magazines that these guys do not cover.

The cost for this organization is $100 membership fee.  Each press release
is $525 for up to 400 words.  Each additional 100 words is $135.00.  At the
very least, I think you should figure this kind of stuff in your budgets for
the business.  There is no cheaper way to get our name out there.  We
probably would not do more than one press release per month.  I'd be
surprised if we did that many.

Randy Thompson suggested it might be a good idea to contact media people
directly, but based on the sheer numbers of publications we need to hit, I
believe that could be a full time job and then some.  I think using this
service makes sense for us given the limited cycles we have between us.

Any comments appreciated.  We won't need to do this until we release V2.
But, I want be ready.

Thanks

Bill
Bill Fisher
Spoke Technologies, Inc.
www.Spoke.net




------=_NextPart_001_00FC_01C069C7.33BDF7B0
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.2920.0" name=3DGENERATOR></HEAD>
<BODY>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D560075618-19122000>Garth,</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D560075618-19122000></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN class=3D560075618-19122000>I have =
done a lot of=20
investigating and talked to a fair number of people.&nbsp; As of today, =
I would=20
say that our plan for getting our word out should be to distribute our =
press=20
release to one submission service.&nbsp; The best one I have found is <A =

href=3D"http://www.businesswire.com">Business Wire</A>.&nbsp;&nbsp; I =
have=20
included the publications they work with for releases.&nbsp; A few of =
these are=20
major news sources that people like Yahoo use for getting news like=20
Reuters.&nbsp; According to Yahoo, this is the only way our news will =
show up on=20
their site (they mentioned <A=20
href=3D"http://www.businesswire.com">BusinessWire.com </A>and <A=20
href=3D"http://www.prnewswire.com">PRNewswire.com</A>).</SPAN></FONT></DI=
V>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D560075618-19122000></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN class=3D560075618-19122000>I have =
included a=20
Word document that lists the various places our news will be distributed =
if we=20
pick this company and this demographic (which I think is our =
space).&nbsp; I'm=20
keeping this list as a reference and then creating my own list of sites =
or=20
magazines that these guys do not cover.&nbsp; </SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D560075618-19122000></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN class=3D560075618-19122000>The =
cost for this=20
organization is $100 membership fee.&nbsp; Each press release is $525 =
for up to=20
400 words.&nbsp; Each additional 100 words is $135.00.&nbsp; At the very =
least,=20
I think you should figure this kind of stuff in your budgets for the=20
business.&nbsp; There is no cheaper way to get our name out there.&nbsp; =
We=20
probably would not do more than one press release per month.&nbsp; I'd =
be=20
surprised if we did that many.&nbsp; </SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D560075618-19122000></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN class=3D560075618-19122000>Randy =
Thompson=20
suggested it might be a good idea to contact media people directly, but =
based on=20
the sheer numbers of publications we need to hit, I believe that could =
be a full=20
time job and then some.&nbsp; I think using this service makes sense for =
us=20
given the limited cycles we have between us.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D560075618-19122000></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN class=3D560075618-19122000>Any =
comments=20
appreciated.&nbsp; We won't need to do this until we release V2.&nbsp; =
But, I=20
want be ready.</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D560075618-19122000></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN =
class=3D560075618-19122000></SPAN></FONT><FONT=20
face=3DArial size=3D2><SPAN =
class=3D560075618-19122000>Thanks</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D560075618-19122000></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D560075618-19122000>Bill</SPAN></FONT></DIV>
<P><FONT face=3DArial><FONT size=3D2>Bill Fisher<BR>Spoke Technologies,=20
Inc.<BR>www.Spoke.net&nbsp;<BR>&nbsp;</FONT> </FONT></P>
<DIV>&nbsp;</DIV></BODY></HTML>

------=_NextPart_001_00FC_01C069C7.33BDF7B0--

------=_NextPart_000_00FB_01C069C7.33BDF7B0
Content-Type: application/msword;
        name="Business Wire Web and ecommerce distribution list.doc"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
        filename="Business Wire Web and ecommerce distribution list.doc"

0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAANwAAAAAAAAAA
EAAAOQAAAAEAAAD+////AAAAADYAAAD/////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////s
pcEANyAJBAAA8BK/AAAAAAAAEAAAAAAABAAAPRQAAA4AYmpialUWVRYAAAAAAAAAAAAAAAAAAAAA
AAAJBBYAIioAADd8AAA3fAAAPRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//w8AAAAA
AAAAAAD//w8AAAAAAAAAAAD//w8AAAAAAAAAAAAAAAAAAAAAAGwAAAAAAO4AAAAAAAAA7gAAAO4A
AAAAAAAA7gAAAAAAAADuAAAAAAAAAO4AAAAAAAAA7gAAABQAAAAAAAAAAAAAAAIBAAAAAAAA5hIA
AAAAAADmEgAAAAAAAOYSAAAAAAAA5hIAAAwAAADyEgAARAAAAAIBAAAAAAAAJhsAADIBAABCEwAA
AAAAAEITAAAAAAAAQhMAAAAAAABCEwAAAAAAAEITAAAAAAAAQhMAAAAAAABCEwAAAAAAAEITAAAA
AAAApRoAAAIAAACnGgAAAAAAAKcaAAAAAAAApxoAAAAAAACnGgAAAAAAAKcaAAAAAAAApxoAACQA
AABYHAAAIAIAAHgeAACsAAAAyxoAABUAAAAAAAAAAAAAAAAAAAAAAAAA7gAAAAAAAABCEwAAAAAA
AAAAAAAAAAAAAAAAAAAAAABCEwAAAAAAAEITAAAAAAAAQhMAAAAAAABCEwAAAAAAAMsaAAAAAAAA
7hUAAAAAAADuAAAAAAAAAO4AAAAAAAAAQhMAAAAAAAAAAAAAAAAAAEITAAAAAAAA4BoAABYAAADu
FQAAAAAAAO4VAAAAAAAA7hUAAAAAAABCEwAA9gEAAO4AAAAAAAAAQhMAAAAAAADuAAAAAAAAAEIT
AAAAAAAApRoAAAAAAAAAAAAAAAAAAO4VAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAQhMAAAAAAAClGgAAAAAAAO4VAADOAQAA7hUAAAAAAAC8FwAA
HgAAAFkaAAAYAAAA7gAAAAAAAADuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApRoAAAAAAABCEwAAAAAAADYTAAAMAAAAMKY7Oe1p
wAECAQAA5BEAAOYSAAAAAAAAOBUAAI4AAABxGgAACAAAAAAAAAAAAAAApRoAAAAAAAD2GgAAMAAA
ACYbAAAAAAAAeRoAACwAAAAkHwAAAAAAAMYVAAAoAAAAJB8AAAAAAAClGgAAAAAAAO4VAAAAAAAA
AgEAAAAAAAACAQAAAAAAAO4AAAAAAAAA7gAAAAAAAADuAAAAAAAAAO4AAAAAAAAAAgDZAAAAQnVz
aW5lc3MgV2lyZSBXZWIgJiBFLUNvbW1lcmNlIERpc3RyaWJ1dGlvbg0uY29tIA1AaG9tZSBuZXR3
b3JrIA0yQXNrLmNvbSANQUJDIE5ld3MgDUFCQyBOZXdzLSBXb3JsZCBOZXdzIFRvbmlnaHQgDUFk
cmVuYWxpbmUgVmF1bHQgDUFkdmVydGlzaW5nIEFnZSANQWx0YVZpc3RhIE1hcmtldFNwYWNlIA1B
bWVyaWNhbiBEZW1vZ3JhcGhpY3MgDUFub3RoZXJVbml2ZXJzZS5jb20gDUJhbmsgU3lzdGVtcyAm
IFRlY2hub2xvZ3kgDUJleW9uZEhUTUwuY29tIA1CSUcgQkxVRSBCT1ggDWJ1c2luZXNza25vd2hv
dy5jb20gDWMvbmV0IG9ubGluZSANQ2FyZWVyUGF0aC5jb20gDUNhck1hZy5Db20gDWNhcnJpZXJu
ZXdzLmNvbSANQ2xhcmlOZXQgDUNOQkMgRG93IEpvbmVzIEJ1c2luZXNzIFZpZGVvIA1DTkVUIA1D
TkVUOiBUaGUgQ29tcHV0ZXIgTmV0d29yayANQ29tcHV0ZXIgQ2hyb25pY2xlcy9JbnRlcm5ldCBD
YWbpIA1Db21wdXRlciBDdXJyZW50cyANQ29tcHV0ZXIgRmluYW5jZSANQ29tcHV0ZXIgR2FtZXMg
TWFnYXppbmUgDUNvbXB1dGVyIEdhbWluZyBXb3JsZCANQ29tcHV0ZXIgT0VNIE9ubGluZSANQ29t
cHV0ZXIgU2hvcHBlciANQ29tcHV0ZXIgV2Vla2x5IA1Db21wdXRlcnMgR2FtZXMgU3RyYXRlZ3kg
UGx1cyANQ29tcHV0ZXJzQEhvbWUgDWNvbXB1dGVyc2hvcHBlci5jb20gDUNvbXB1dGVyd29ybGQg
DUNvbXB1VGlwcyAocmFkaW8gc2hvdykgDUNvbmNlcHQgR2FtaW5nIE9uTGluZSANQ29ubmVjdGVk
IA1Db25zdW1lciBNdWx0aW1lZGlhIFJlcG9ydCANQ29udmVyZ2VuY2UgDUNvcnBvcmF0ZSBMaWJy
YXJ5IFVwZGF0ZSANQ3JlYXRpdmUgTWVkaWEgU3luZGljYXRlZCBGZWF0dXJlcyANQ3liZXIgRnJv
bnRpZXJzIA1DeWJlckNyaW1lIA1DeWJlckdVWSANQ3liZXJzcG9ydHMgDURhdGFtYXRpb24gDURl
YWxlcnNjb3BlIENvbnN1bWVyIEVsZWN0cm9uaWMgTWFya2V0cGxhY2UgDURpZ2l0YWwgQWdlcyBP
bmxpbmUgDURpZ2l0YWwgV29yayANRGlnaXRhbENvbW1lcmNlIA1EaXNjb3ZlcnkgQ2hhbm5lbCBP
bmxpbmUgDURpc3BsYXkgVGVjaG5vbG9neSBSZXBvcnQgDUVjbGlwc2UgV2ViIE5ldHdvcmsgDUVk
aXRvciAmIFB1Ymxpc2hlciBJbnRlcmFjdGl2ZSANRWxlY3Ryb25pYyBBZHZlcnRpc2luZyBhbmQg
TWFya2V0cGxhY2UgUmVwb3J0IA1FbGVjdHJvbmljIEJ1c2luZXNzIA1FbGVjdHJvbmljIEdhbWlu
ZyBNb250aGx5IA1FbGVjdHJvbmljIE1haWwgJiBNZXNzYWdpbmcgU3lzdGVtcyANRWxlY3Ryb25p
YyBNZXNzYWdpbmcgTmV3cyANRWxlY3Ryb25pY3MgVG9kYXkgKENoaW5hKSANZVJldGFpbC5OZXQg
DUZhc3QgQ29tcGFueSANRmVkZXJhbCBDb21wdXRlciBXZWVrIA1Gb3J0dW5lIFRWIEJ1c2luZXNz
IFJlcG9ydCANRlQgU3lzdGVtcyANRnV0dXJlIFRlbnNlIA1GdXR1cmVXaXJlLmNvbSANR2FtZSBE
ZXZlbG9wZXIgDUdhbWVzIEJ1c2luZXNzIA1HYW1lc3BvdCBUViANR2FtZVdlZWsgDUdvIDIgV2hh
dJJzIE5ldyANR29sZG1hbiBTYWNocyAmIENvLiANSGVlYmllIEplZWJpZXMgDUhvbGx5d29vZCBU
ZWNobm9sb2d5IFJlcG9ydCANSG9tZSBPZmZpY2UgQ29tcHV0aW5nIA1IeXBlcmxpbmUgDUkgUyBB
IE9ubGluZSBQZXJzb25hbCANSUVFRSBNdWx0aW1lZGlhIA1JbmZvcm1hdGlvbiBUZWNobm9sb2d5
IFJlc2VhcmNoIA1JbmZvcm1hdGlvbiBUb2RheSANSW5mb3JtYXRpb25XZWVrIA1JbmZvcm1hdGlv
bldlZWsgT25saW5lIA1JbmZvU3RvciANSW5mb1dvcmxkIA1JbnNpZGUgTWFya2V0IERhdGEgDUlu
c3VyYW5jZSAmIFRlY2hub2xvZ3kgDUludGVyYWN0aXZlIE1hcmtldGluZyBNYWdhemluZSANSW50
ZXJhY3RpdmUgVGVsZXZpc2lvbiBSZXBvcnQgDUludGVyYWN0aXZlIFdlZWsgDUludGVybmV0IGFz
IGEgQnVzaW5lc3MgUmVzb3VyY2UgDUludGVybmV0IEJ1c2luZXNzIFJlcG9ydCANSW50ZXJuZXQg
Q29tcHV0aW5nIA1JbnRlcm5ldCBGaW5hbmNlIGFuZCBEZWFscyANSW50ZXJuZXQgTWFya2V0aW5n
IGFuZCBUZWNobm9sb2d5IFJlcG9ydCANSW50ZXJuZXQgU3RyYXRlZ2llcyBmb3IgRWR1Y2F0aW9u
IE1hcmtldHMgDUludGVybmV0IFRvbmlnaHQgDUludGVybmV0IFdvcmsgDUludGVybmV0IFdvcmsg
V2VlayANSW50ZXJuZXQgV29ybGQgDUludGVybmV0V2VlayANSVNQIFRvZGF5IE1hZ2F6aW5lIA1J
VCBDb25zdWx0aW5nIA1JVEQgKExhdGluIEFtZXJpY2EpIA1qYXZhbG9iYnkub3JnIA1LaWRURUNI
IE5ld3MgDUtJT1NLUy5PUkcgDUtsZXBlciBSZXBvcnQgb24gRGlnaXRhbCBQdWJsaXNoaW5nIA1M
aWJyYXJ5IEhvdGxpbmUgDUxpYnJhcnkgSm91cm5hbCANTGluayBSZXNvdXJjZXMgDUxvZyBPbiBV
LlMuQS4gDUxvbmd2aWV3IFRlY2hub2xvZ3kgTmV3c2xldHRlciANTUFDIEhvbWUgSm91cm5hbCAN
TWFjRGlyZWN0b3J5IE9ubGluZSANTWFjV2VlayANTWFya2V0IERhdGEgV2Vid2lyZSANTWFya2V0
aW5nIFRvb2xzIA1NYVJLRVRTIE1hZ2F6aW5lIA1NYXNzYWNodXNldHRzIFRlbGVjb20gQ291bmNp
bCANTXVsdGltZWRpYSBEYWlseSANTkJDIE5ld3MgDU5ldCBGdXNpb24gDU5ldCwgVGhlIA1uZXQu
T3BpbmlvbiANTmV0c2NhcGVXb3JsZCANTmV3IEdyb3d0aCBDb21tdW5pY2F0aW9ucyANTmV3IE1l
ZGlhIE5ld3MgDU5ldyBUZWNobm9sb2d5IFdlZWsgDU5ldyBZb3JrIEluc2lkZXIgTWFnYXppbmUg
DU5ld3MsIEluYy4gDU5ld3MuY29tIChDL05ldCkgDU5ld3NieXRlcyBOZXdzIE5ldHdvcmsgDU5l
d1R5cGUgR2FtaW5nIA1OVS5LLkUgT24tTGluZSANT24gdGhlIEludGVybmV0IA1PbmxpbmUgUHJv
ZHVjdCBOZXdzIA1PbmxpbmUgUmVwb3J0IA1PbmxpbmUgUmVwb3J0ZXIgDU9ubGluZSBTZXJ2aWNl
czogUmV2aWV3LFRyZW5kcyxGb3JlY2FzdHMgDU9ubGluZSBUYWN0aWNzIA1QYWdlIFZpZXcgDVBD
IEJ1c2luZXNzIFByb2R1Y3RzIA1QQyBDb21wdXRpbmcgDVBDIE1hZ2F6aW5lIA1QQyBUb2RheSAN
UEMgV2VlayANUEMgV29ybGQgDVBDUyBTeXN0ZW1zICYgVGVjaG5vbG9neSANUENTIFdlZWsgDVBy
b2RpZ3kgJiB0aGUgRnV0dXJlIG9mIEVsZWN0cm9uaWMgQWQuIA1QdWJsaXNoaW5nIEhvdXNlIG9m
IEVsZWN0cm9uaWNzIEluZHVzdHJ5IA1RdWlja1RpbWUgR2F6ZXR0ZSANUmVhbCBUcmVuZHMgDVJl
ZCBIZXJyaW5nIA1SZXBvcnQgb24gRWxlY3Ryb25pYyBDb21tZXJjZSANUmV0YWlsIFByaWNlIFdl
ZWsgDVJldXRlcnMvTlkgLSBIaWdoIHRlY2ggZWRpdG9yIA1TY2llbmNlIFRlY2hub2xvZ3kgTmV0
d29yayANU2lsaWNvbiBTcGluIA1TbWFsbCBCdXNpbmVzcyBDb21wdXRpbmcgJiANQ29tbXVuaWNh
dGlvbnMgDVNtYXJ0IENvbXB1dGluZyANU21hcnQgTGluayBOZXdzbGV0dGVyIA1TbWFydCBUViAN
U29sdXRpb25zIEludGVncmF0b3IgDVN0cmF0ZWdpYyBOZXdzIFNlcnZpY2UgDVN1bkV4cGVydCBN
YWdhemluZSANU3VuV29ybGQgDVN1bldvcmxkIE9ubGluZSANU3luZXJneSBQdWJsaWNhdGlvbnMg
DVRlY2ggVGFsayB3aXRoIE1pa2UgYW5kIEFuZHkgDVRlZW4gUGVvcGxlIE9ubGluZSANVGVsZXBo
b25lIElQIE5ld3MgDVRpY2tlciBNYWdhemluZSANVG9tb3Jyb3eScyBCdXNpbmVzcyANVWJpcXVp
dG91cyBDb21wdXRpbmcgQ29uY2VwdHMgDVViaXF1aXRvdXMgQ29tcHV0aW5nIENvbmNlcHRzIChX
ZWIgc2l0ZSkgDVVuaXggTmV3cyAoVS5LLikgDVVyYmFuIEZ1dHVyaXN0IE1hZ2F6aW5lIA1VV2lu
ISAoV2ViIHNpdGUpIA1WaWRhQGxpbmVhIChEaXNjb3ZlcnkgQ2hhbm5lbCBQcm9ncmFtKSANVmly
dHVhbCBXYWxsIFN0cmVldCANVi1UZWNoIA13Y25vbmxpbmUuY29tIA1XZWIgDVdFQiBEZXZlbG9w
ZXIgDVdlYiBGaW5hbmNlIA1XZWIgTWFuYWdlbWVudCAmIERlc2lnbiANV2ViIFdlZWsgDVdlYkZp
bmFuY2UgDVdlYlNlcnZlciANV2ViU2hvcHBlciANV0VCc3RlciANV2ViLVZhbnRhZ2UgDVdob2xl
c2FsZXIgTWFnYXppbmUgDVdpbmRvd3MgTWFnYXppbmUgDVdpbm5pbmcgdGhlIERpZ2l0YWwgTmV3
cyBXYXIgDVdpcmVsZXNzIEludGVybmV0ICYgTW9iaWxlIENvbXB1dGVycyANV2lyZWxlc3MgTWVz
c2FnaW5nIFJlcG9ydCANV29ybGR3aWRlIERhdGFiYXNlcyANV1VHTkVUIA1ZMktDZXJ0aWZpZWQu
Y29tIA1ZMktuZXQuY29tIA1ZYWNjbyBOZXdzIFNlcnZpY2VzIA1aRE5ldCANWkRUVg0AAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAACwEAAA8FAAA
PRQAAPbvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAxPSgIAUUoCAF5KAgAAEjUIgU9KAgBRSgIAXAiBXkoCAAMABAAALAQAADIEAABB
BAAASwQAAFUEAABzBAAAhQQAAJYEAACtBAAAxAQAANkEAAD0BAAABAUAABIFAAAnBQAANQUAAEUF
AABRBQAAYgUAAGwFAACLBQAAkQUAAK0FAADQBQAA4wUAAPUFAAAOBgAAJQYAAP0AAAAAAAAAAAAA
AADxAAAAAAAAAAAAAAAA8QAAAAAAAAAAAAAAAPEAAAAAAAAAAAAAAADxAAAAAAAAAAAAAAAA8QAA
AAAAAAAAAAAAAPEAAAAAAAAAAAAAAADxAAAAAAAAAAAAAAAA8QAAAAAAAAAAAAAAAPEAAAAAAAAA
AAAAAADxAAAAAAAAAAAAAAAA8QAAAAAAAAAAAAAAAPEAAAAAAAAAAAAAAADxAAAAAAAAAAAAAAAA
8QAAAAAAAAAAAAAAAPEAAAAAAAAAAAAAAADxAAAAAAAAAAAAAAAA8QAAAAAAAAAAAAAAAPEAAAAA
AAAAAAAAAADxAAAAAAAAAAAAAAAA8QAAAAAAAAAAAAAAAPEAAAAAAAAAAAAAAADxAAAAAAAAAAAA
AAAA8QAAAAAAAAAAAAAAAPEAAAAAAAAAAAAAAADxAAAAAAAAAAAAAAAA8QAAAAAAAAAAAAAAAPEA
AAAAAAAAAAAAAAAAAAwAAAomAAtGAQATpGQAFKRkAFskAVwkAQABDwAAHAAEAAA9FAAA/QAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQAAQEBJQYAADoGAABMBgAAXQYA
AHwGAACMBgAAoQYAALAGAADIBgAA3wYAAOoGAAAGBwAAEwcAAC0HAABRBwAAYgcAAG4HAAB4BwAA
hQcAAJEHAAC+BwAA0wcAAOEHAADyBwAADAgAACcIAAA8CAAAXAgAAIsIAADzAAAAAAAAAAAAAAAA
8wAAAAAAAAAAAAAAAPMAAAAAAAAAAAAAAADzAAAAAAAAAAAAAAAA8wAAAAAAAAAAAAAAAPMAAAAA
AAAAAAAAAADzAAAAAAAAAAAAAAAA8wAAAAAAAAAAAAAAAPMAAAAAAAAAAAAAAADzAAAAAAAAAAAA
AAAA8wAAAAAAAAAAAAAAAPMAAAAAAAAAAAAAAADzAAAAAAAAAAAAAAAA8wAAAAAAAAAAAAAAAPMA
AAAAAAAAAAAAAADzAAAAAAAAAAAAAAAA8wAAAAAAAAAAAAAAAPMAAAAAAAAAAAAAAADzAAAAAAAA
AAAAAAAA8wAAAAAAAAAAAAAAAPMAAAAAAAAAAAAAAADzAAAAAAAAAAAAAAAA8wAAAAAAAAAAAAAA
APMAAAAAAAAAAAAAAADzAAAAAAAAAAAAAAAA8wAAAAAAAAAAAAAAAPMAAAAAAAAAAAAAAADzAAAA
AAAAAAAAAAAAAAAAAAAADAAACiYAC0YBABOkZAAUpGQAWyQBXCQBAByLCAAAoAgAALsIAADgCAAA
+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
AAAA8wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAADAAACiYAC0YBABOkZAAUpGQAWyQBXCQBAAwgADGQaAEfsNAvILDgPSGwCAcisAgH
I5CgBSSQoAUlsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAEAAKAAEAaQAPAAMAAAAAAAAAAAA4
AABA8f8CADgADAAGAE4AbwByAG0AYQBsAAAAAgAAABgAQ0oYAF9IAQRhShgAbUgJBHNICQR0SAkE
AAAAAAAAAAAAAAAAAAAAAAAAPABBQPL/oQA8AAwAFgBEAGUAZgBhAHUAbAB0ACAAUABhAHIAYQBn
AHIAYQBwAGgAIABGAG8AbgB0AAAAAAAAAAAAAAAAAEQAXkABAPIARAAMAAwATgBvAHIAbQBhAGwA
IAAoAFcAZQBiACkAAAAQAA8AE6RkABSkZABbJAFcJAEJAEIqDXBoMwAAAAAAAAAAPRAAAAYAACoA
AAUA/////wAAAAAsAAAAMgAAAEEAAABLAAAAVQAAAHMAAACFAAAAlgAAAK0AAADEAAAA2QAAAPQA
AAAEAQAAEgEAACcBAAA1AQAARQEAAFEBAABiAQAAbAEAAIsBAACRAQAArQEAANABAADjAQAA9QEA
AA4CAAAlAgAAOgIAAEwCAABdAgAAfAIAAIwCAAChAgAAsAIAAMgCAADfAgAA6gIAAAYDAAATAwAA
LQMAAFEDAABiAwAAbgMAAHgDAACFAwAAkQMAAL4DAADTAwAA4QMAAPIDAAAMBAAAJwQAADwEAABc
BAAAiwQAAKAEAAC7BAAA4AQAAPsEAAAWBQAAIwUAADEFAABIBQAAZAUAAHAFAAB+BQAAjgUAAJ4F
AACuBQAAuwUAAMUFAADWBQAA6wUAAPsFAAAYBgAALwYAADoGAABRBgAAYgYAAIMGAACWBgAApwYA
AL8GAADJBgAA1AYAAOgGAAAABwAAIAcAAD8HAABRBwAAcgcAAIwHAACgBwAAvAcAAOYHAAARCAAA
IwgAADIIAABGCAAAVggAAGQIAAB4CAAAhwgAAJwIAACrCAAAuQgAAMUIAADqCAAA+wgAAAwJAAAc
CQAAKwkAAEsJAABdCQAAcgkAAHsJAACQCQAAoQkAALMJAADSCQAA5AkAAO4JAAD6CQAABAoAABEK
AAAgCgAAOwoAAEsKAABgCgAAewoAAIcKAACZCgAAsQoAAMEKAADRCgAA4goAAPcKAAAGCwAAFwsA
AEELAABRCwAAXAsAAHILAACACwAAjQsAAJcLAACgCwAAqgsAAMQLAADOCwAA9gsAACAMAAAzDAAA
QAwAAE0MAABsDAAAfwwAAJ4MAAC6DAAAyAwAAOQMAAD0DAAABQ0AABwNAAAmDQAAPA0AAFQNAABo
DQAAcg0AAIMNAACZDQAAtw0AAMsNAADeDQAA7w0AAAQOAAAjDgAATQ4AAF8OAAB4DgAAig4AALIO
AADHDgAAzw4AAN4OAADjDgAA8g4AAP8OAAAYDwAAIg8AAC4PAAA5DwAARQ8AAE4PAABbDwAAcA8A
AIIPAACgDwAAxg8AAOEPAAD2DwAA/g8AABAQAAAcEAAAMRAAADgQAAA/EAAAmgAAABEwAAAAAAAA
AIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAA
AACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACA
mgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgAB
IAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAw
AAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAA
AAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAA
AIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAA
AACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACA
mgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgAB
IAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAw
AAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAA
AAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAA
AIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAA
AACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACA
mgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgAB
IAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAw
AAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAA
AAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAA
AIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAA
AACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACA
mgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgAB
IAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAw
AAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAA
AAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAA
AIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAA
AACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACA
mgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgAB
IAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAw
AAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAA
AAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAA
AIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAA
AACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACA
mgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgAB
IAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAw
AAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAA
AAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAA
AIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAA
AACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACA
mgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgAB
IAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAw
AAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAA
AAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAA
AIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAA
AACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACA
mgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgAB
IAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAw
AAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAA
AAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAA
AIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAA
AACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACA
mgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgAB
IAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAw
AAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAA
AAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAA
AIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAA
AACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACA
mgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgAB
IAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAw
AAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAA
AAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAA
AIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAA
AACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACA
mgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgAB
IAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAw
AAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAmgABIAAwAAAA
AAAAAIAAAACAmgABIAAwAAAAAAAAAIAAAACAAAQAAD0UAAALAAAAAAQAACUGAACLCAAAvwoAABwN
AAAXDwAAVBEAAFsTAAA9FAAADAAAAA4AAAAPAAAAEAAAABEAAAASAAAAEwAAABQAAAAABAAAPRQA
AA0AAAAAAAAAHwAAACsAAACgAAAAqwAAAGIBAABqAQAAfAIAAIoCAAChAgAArgIAALACAAC5AgAA
1wIAAN0CAABiAwAAbAMAAG4DAAB2AwAAeAMAAIMDAACFAwAAjwMAAJEDAACcAwAA4QMAAPADAACu
BQAAtgUAALsFAADDBQAA6wUAAPEFAADyBQAA+QUAAC8GAAA4BgAAvwYAAMcGAABWCAAAYggAAKsI
AACyCAAAxQgAAMsIAABdCQAAaQkAAHIJAAB5CQAAhwkAAI4JAAChCQAAqAkAAAQKAAAPCgAAEQoA
AB4KAACxCgAAuAoAACgLAAA/CwAAVA0AAF0NAABoDQAAcA0AAHINAAB6DQAAeA4AAHwOAACKDgAA
lA4AACIPAAAsDwAALg8AADcPAAA5DwAAQw8AAEUPAABMDwAAHBAAACEQAAAxEAAANhAAAD8QAAAH
AAQABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA
HAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc
AAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAAAAAACwA
AAAwAAAAMwAAADcAAAASAQAAJQEAACcBAAAoAQAAUQEAAGABAACMAgAAnwIAABYFAAAhBQAAnAgA
AKkIAAAECgAADwoAAC4LAAA/CwAAzw4AANwOAAA/EAAABAAzAAcAMwAHADMABwAzAAcAMwAHADMA
BwAzAAcAMwAHADMABwAzAAcAMwAHAAAAAAAOAAAAHgAAACsAAAA8EAAAPBAAAD8QAAAEAAMABAAD
AAQABwD//wQAAAALAEIAaQBsAGwAIABGAGkAcwBoAGUAcgBhAEMAOgBcAEQAbwBjAHUAbQBlAG4A
dABzACAAYQBuAGQAIABTAGUAdAB0AGkAbgBnAHMAXABCAGkAbABsAFwAQQBwAHAAbABpAGMAYQB0
AGkAbwBuACAARABhAHQAYQBcAE0AaQBjAHIAbwBzAG8AZgB0AFwAVwBvAHIAZABcAEEAdQB0AG8A
UgBlAGMAbwB2AGUAcgB5ACAAcwBhAHYAZQAgAG8AZgAgAEQAbwBjAHUAbQBlAG4AdAAxAC4AYQBz
AGQACwBCAGkAbABsACAARgBpAHMAaABlAHIAaQBDADoAXABNAHkAIABEAG8AYwB1AG0AZQBuAHQA
cwBcAFMAcABvAGsAZQAuAG4AZQB0AFwAUAByAGUAcwBzACAAUgBlAGwAZQBhAHMAZQAgAEkAbgBm
AG8AcgBtAGEAdABpAG8AbgBcAEIAdQBzAGkAbgBlAHMAcwAgAFcAaQByAGUAIABXAGUAYgAgAGEA
bgBkACAAZQBjAG8AbQBtAGUAcgBjAGUAIABkAGkAcwB0AHIAaQBiAHUAdABpAG8AbgAgAGwAaQBz
AHQALgBkAG8AYwABAEpo7QbuF3o4/w//D/8P/w//D/8P/w//D/8PEAABAAAAFwAAAAAAAAAAAAAA
AAAAAAAAAAAPGAAAD4TQAhGEmP4VxgUAAdACBl6E0AJghJj+Q0oUAE9KAQBRSgEAbygAAQC38AEA
AAAXgAAAAAAAAAAAAAAAAAAAAAAAAA8YAAAPhKAFEYSY/hXGBQABoAUGXoSgBWCEmP5DShQAT0oD
AFFKAwBvKAABAG8AAQAAABeAAAAAAAAAAAAAAAAAAAAAAAAADxgAAA+EcAgRhJj+FcYFAAFwCAZe
hHAIYISY/kNKFABPSgQAUUoEAG8oAAEAp/ABAAAAF4AAAAAAAAAAAAAAAAAAAAAAAAAPGAAAD4RA
CxGEmP4VxgUAAUALBl6EQAtghJj+Q0oUAE9KBABRSgQAbygAAQCn8AEAAAAXgAAAAAAAAAAAAAAA
AAAAAAAAAA8YAAAPhBAOEYSY/hXGBQABEA4GXoQQDmCEmP5DShQAT0oEAFFKBABvKAABAKfwAQAA
ABeAAAAAAAAAAAAAAAAAAAAAAAAADxgAAA+E4BARhJj+FcYFAAHgEAZehOAQYISY/kNKFABPSgQA
UUoEAG8oAAEAp/ABAAAAF4AAAAAAAAAAAAAAAAAAAAAAAAAPGAAAD4SwExGEmP4VxgUAAbATBl6E
sBNghJj+Q0oUAE9KBABRSgQAbygAAQCn8AEAAAAXgAAAAAAAAAAAAAAAAAAAAAAAAA8YAAAPhIAW
EYSY/hXGBQABgBYGXoSAFmCEmP5DShQAT0oEAFFKBABvKAABAKfwAQAAABeAAAAAAAAAAAAAAAAA
AAAAAAAADxgAAA+EUBkRhJj+FcYFAAFQGQZehFAZYISY/kNKFABPSgQAUUoEAG8oAAEAp/ABAAAA
SmjtBgAAAAAAAAAAAAAAAP///////wEAAAAAAP//AQAAABIAbjbmjfjdTJdk8AovSEni7yojUN5a
iHxRLoB0jhRiDgWYQKY0/0ADgAEAKwAAACsAAAD4hHMAAQABACsAAAAAAAAAHgAAAAAAAAACEAAA
AAAAAAA9EAAAYAAACABAAAD//wEAAAAHAFUAbgBrAG4AbwB3AG4A//8BAAgAAAAAAAAAAAAAAP//
AQAAAAAA//8AAAIA//8AAAAA//8AAAIA//8AAAAABQAAAEcWkAEAAAICBgMFBAUCAwSHegAgAAAA
gAgAAAAAAAAA/wEAAAAAAABUAGkAbQBlAHMAIABOAGUAdwAgAFIAbwBtAGEAbgAAADUWkAECAAUF
AQIBBwYCBQcAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAABTAHkAbQBiAG8AbAAAADMmkAEAAAILBgQC
AgICAgSHegAgAAAAgAgAAAAAAAAA/wEAAAAAAABBAHIAaQBhAGwAAAA/NZABAAACBwMJAgIFAgQE
h3oAIAAAAIAIAAAAAAAAAP8BAAAAAAAAQwBvAHUAcgBpAGUAcgAgAE4AZQB3AAAAOwaQAQIABQAA
AAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACAAAAAAFcAaQBuAGcAZABpAG4AZwBzAAAAIgAEAHEI
iBgA8NACAABoAQAAAABIm0xGd5tMRnSbTEYBAC8AAABZAgAAYw0AAAEABgAAAAQAAxAcAAAAAAAA
AAAAAAABAAEAAAABAAAAAAAAAJEjAPAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgHoAW0
ALQAgYEyMAAAAAAAAAAAAAAAAAAAcBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAADKDEQDwEAAIAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//EgAAAAAAAAArAEIAdQBzAGkAbgBlAHMAcwAgAFcA
aQByAGUAIABXAGUAYgAgACYAIABFAC0AQwBvAG0AbQBlAHIAYwBlACAARABpAHMAdAByAGkAYgB1
AHQAaQBvAG4AAAAAAAAACwBCAGkAbABsACAARgBpAHMAaABlAHIACwBCAGkAbABsACAARgBpAHMA
aABlAHIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAA/v8AAAUAAgAAAAAAAAAAAAAAAAAAAAAAAQAAAOCFn/L5T2gQq5EI
ACsns9kwAAAAqAEAABIAAAABAAAAmAAAAAIAAACgAAAAAwAAANQAAAAEAAAA4AAAAAUAAAD0AAAA
BgAAAAABAAAHAAAADAEAAAgAAAAcAQAACQAAADABAAASAAAAPAEAAAoAAABYAQAACwAAAGQBAAAM
AAAAcAEAAA0AAAB8AQAADgAAAIgBAAAPAAAAkAEAABAAAACYAQAAEwAAAKABAAACAAAA5AQAAB4A
AAAsAAAAQnVzaW5lc3MgV2lyZSBXZWIgJiBFLUNvbW1lcmNlIERpc3RyaWJ1dGlvbgAeAAAAAQAA
AAB1c2keAAAADAAAAEJpbGwgRmlzaGVyAB4AAAABAAAAAGlsbB4AAAABAAAAAGlsbB4AAAAHAAAA
Tm9ybWFsAHMeAAAADAAAAEJpbGwgRmlzaGVyAB4AAAACAAAAMQBsbB4AAAATAAAATWljcm9zb2Z0
IFdvcmQgOS4wACBAAAAAANrZkAYAAABAAAAAAIi4xOxpwAFAAAAAAIAon+ZpwAFAAAAAAFoCMO1p
wAEDAAAAAQAAAAMAAABZAgAAAwAAAGMNAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
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
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
AAAAAAAAAAAAAP7/AAAFAAIAAAAAAAAAAAAAAAAAAAAAAAEAAAAC1c3VnC4bEJOXCAArLPmuMAAA
ABQBAAAMAAAAAQAAAGgAAAAPAAAAcAAAAAUAAAB8AAAABgAAAIQAAAARAAAAjAAAABcAAACUAAAA
CwAAAJwAAAAQAAAApAAAABMAAACsAAAAFgAAALQAAAANAAAAvAAAAAwAAAD0AAAAAgAAAOQEAAAe
AAAAAQAAAAAAZQADAAAAHAAAAAMAAAAGAAAAAwAAAHAQAAADAAAAoAoJAAsAAAAAAAAACwAAAAAA
AAALAAAAAAAAAAsAAAAAAAAAHhAAAAEAAAAsAAAAQnVzaW5lc3MgV2lyZSBXZWIgJiBFLUNvbW1l
cmNlIERpc3RyaWJ1dGlvbgAMEAAAAgAAAB4AAAAGAAAAVGl0bGUAAwAAAAEAAAAAAAAAAAAAAAAA
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
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
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAHAAAACAAAAAkAAAAKAAAACwAAAAwAAAANAAAADgAA
AA8AAAAQAAAAEQAAABIAAAATAAAAFAAAABUAAAD+////FwAAABgAAAAZAAAAGgAAABsAAAAcAAAA
HQAAAB4AAAAfAAAAIAAAACEAAAAiAAAAIwAAACQAAAAlAAAA/v///ycAAAAoAAAAKQAAACoAAAAr
AAAALAAAAC0AAAD+////LwAAADAAAAAxAAAAMgAAADMAAAA0AAAANQAAAP7////9////OAAAAP7/
///+/////v//////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
/1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAWAAUB//////////8DAAAABgkCAAAAAADAAAAAAAAARgAAAAAAAAAAAAAAAIB5Yznt
acABOgAAAIAAAAAAAAAAMQBUAGEAYgBsAGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAgD///////////////8AAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAWAAAAJB8AAAAAAABXAG8AcgBkAEQAbwBjAHUAbQBlAG4AdAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGgACAQUAAAD//////////wAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiKgAAAAAAAAUAUwB1AG0AbQBhAHIA
eQBJAG4AZgBvAHIAbQBhAHQAaQBvAG4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAIBAgAA
AAQAAAD/////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgAAAAAQAAAAAAAA
BQBEAG8AYwB1AG0AZQBuAHQAUwB1AG0AbQBhAHIAeQBJAG4AZgBvAHIAbQBhAHQAaQBvAG4AAAAA
AAAAAAAAADgAAgH///////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAuAAAAABAAAAAAAAABAEMAbwBtAHAATwBiAGoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAEgACAQEAAAAGAAAA/////wAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAABqAAAAAAAAAE8AYgBqAGUAYwB0AFAAbwBvAGwAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAEA////////////////AAAAAAAA
AAAAAAAAAAAAAAAAAACAeWM57WnAAYB5YzntacABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////
//////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB
AAAA/v//////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////wEA
/v8DCgAA/////wYJAgAAAAAAwAAAAAAAAEYYAAAATWljcm9zb2Z0IFdvcmQgRG9jdW1lbnQACgAA
AE1TV29yZERvYwAQAAAAV29yZC5Eb2N1bWVudC44APQ5snEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

------=_NextPart_000_00FB_01C069C7.33BDF7B0--

>From [EMAIL PROTECTED] Tue Dec 19 20:20:21 2000
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20050 invoked from network); 19 Dec 2000 20:20:21 -0000
Received: from unknown (HELO zope.codeit.com) (unknown)
  by unknown with SMTP; 19 Dec 2000 20:20:21 -0000
Received: from www.zope.org (localhost [127.0.0.1])
        by zope.codeit.com (8.8.7/8.8.7) with ESMTP id LAA30576;
        Tue, 19 Dec 2000 11:52:05 -0800
Received: from vishnu.integritysi.com (vishnu.integritysi.com [12.17.189.13])
        by zope.codeit.com (8.8.7/8.8.7) with ESMTP id LAA30560
        for <[EMAIL PROTECTED]>; Tue, 19 Dec 2000 11:52:01 -0800
Received: from the-tick.integritysi.com (IDENT:[EMAIL PROTECTED] 
[12.17.189.202] (may be forged))
        by vishnu.integritysi.com (8.9.3/8.8.7) with ESMTP id KAA22291;
        Tue, 19 Dec 2000 10:54:30 -0900
Sender: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Subject: Re: [Zope] Editing Property Sheet HTML
References: <[EMAIL PROTECTED]>
From: "Geoffrey L. Wright" <[EMAIL PROTECTED]>
Date: 19 Dec 2000 12:21:36 -0900
In-Reply-To: "Brian Lloyd"'s message of "Tue, 19 Dec 2000 10:04:32 -0500"
Message-ID: <[EMAIL PROTECTED]>
Lines: 47
User-Agent: Gnus/5.0807 (Gnus v5.8.7) XEmacs/21.1 (GTK)
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Sender: [EMAIL PROTECTED]
Errors-To: [EMAIL PROTECTED]
X-Mailman-Version: 1.0b8
Precedence: bulk
List-Id: Users of the Z Object Publishing Environment <zope.zope.org>
X-BeenThere: [EMAIL PROTECTED]

"Brian Lloyd" <[EMAIL PROTECTED]> writes:

> > The question is ... how do I do it?  I'd like to make the default
> > textarea field quite a bit bigger -- but I wasn't able to explore my
> > way to success in the interface, and about 20 mins of seaching has
> > yielded no answers.
> 
> You could edit lib/python/OFS/properties.dtml, which renders
> the property management screen. The DTML in there has gotten
> pretty scary over time though :^)

Yikes!

But thanks ... I think I can hack it into submission.

And here's a followup question:

If I want to make a custom Properties view for a specific ZClass, how
do I proceed?  Just create an additional method for the class and add it
under Views?  And if I do this, is there any kind of DTML templete
(sort of like the default add and addForm methods) that I can work
from?  And do I need to go this far if I (for example) simply want to
change the display order for existing properties?

Many thanks (as always) for any answers you have...

> Brian Lloyd        [EMAIL PROTECTED]
> Software Engineer  540.371.6909              
> Digital Creations  http://www.digicool.com 
> 
> 
> 
> 
> _______________________________________________
> Zope maillist  -  [EMAIL PROTECTED]
> http://lists.zope.org/mailman/listinfo/zope
> **   No cross posts or HTML encoding!  **
> (Related lists - 
>  http://lists.zope.org/mailman/listinfo/zope-announce
>  http://lists.zope.org/mailman/listinfo/zope-dev )

-- 
Geoffrey L. Wright
Developer / Systems Administrator

(907) 563-2721 ex. 4900
http://www.integritysi.com


_______________________________________________
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )

>From [EMAIL PROTECTED] Tue Dec 19 20:21:10 2000
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20056 invoked from network); 19 Dec 2000 20:21:10 -0000
Received: from unknown (HELO zope.codeit.com) (unknown)
  by unknown with SMTP; 19 Dec 2000 20:21:10 -0000
Received: from www.zope.org (localhost [127.0.0.1])
        by zope.codeit.com (8.8.7/8.8.7) with ESMTP id LAA30747;
        Tue, 19 Dec 2000 11:53:02 -0800
Received: from hs-gate.handshake.de ([EMAIL PROTECTED] [194.77.97.10])
        by zope.codeit.com (8.8.7/8.8.7) with ESMTP id LAA30641;
        Tue, 19 Dec 2000 11:52:52 -0800
Received: from lindm.dm (hs1-211.handshake.de [194.77.97.211])
        by hs-gate.handshake.de (8.9.3/8.9.3) with ESMTP id UAA15594;
        Tue, 19 Dec 2000 20:54:44 +0100
Received: (from dieter@localhost) by lindm.dm (8.6.10/8.6.9) id UAA00679; Tue, 19 Dec 
2000 20:53:45 +0100
From: Dieter Maurer <[EMAIL PROTECTED]>
Message-ID: <[EMAIL PROTECTED]>
Date: Tue, 19 Dec 2000 20:53:44 +0100 (CET)
To: [EMAIL PROTECTED], [EMAIL PROTECTED]
CC: [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED]
Subject: [Zope] [BUG] Background processes interfere with Zope's HTTP responses
X-Mailer: VM 6.72 under 21.1 (patch 10) "Capitol Reef" XEmacs Lucid
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Sender: [EMAIL PROTECTED]
Errors-To: [EMAIL PROTECTED]
X-Mailman-Version: 1.0b8
Precedence: bulk
List-Id: Users of the Z Object Publishing Environment <zope.zope.org>
X-BeenThere: [EMAIL PROTECTED]

Today was again a hard Zope day.

Did you ever hear, that usually (i.e. if you do not do special
things) Zope renders a complete page before it starts
sending the result back to the client.
This implies that you should never see only half of a page.

I heard it and I saw the code that does it.
Therefore, I was convinced that this were really the case.

Then our client phoned:

      He visits a page that allows him to generate a
      newsletter. When he presses the "generate newsletter button",
      a result page is build that tells him that the newsletter
      is being generated and send is a few minutes.
    
      He reported, that this response page is build only
      half, then stops, to be completed only half a minute later,
      at the same time when the newsletter arrives.
      The effect is reproducible. If newsletter generation
      takes longer, he must wait longer for the page to complete.
    
      He is convinced that we generate the newsletter synchronously
      and let him wait until the generation is complete.
      And he is angry.
    
      I know, that the newsletter is generated in a background
      process, started in an external method with:
    
           os.system("gen_newsletter &")
    
      I try to reproduce the behaviour in our test environment
      and fail. I do not have to wait, until the newsletter
      generation finished. Then, I use the official service
      URL and see, I observe the same behaviour.
      The difference: in the test environment, the browser
      connects directly to ZServer; with the official
      URL, it connects via a proxy.
    
      Puzzling!


What happened?

     The background process inherits Zope's open file descriptors.
     Among them are all currently open HTTP request sockets.
     The process keeps these sockets open until it finishes.

     There are two HTTP modes:

       1. single request mode
          a new TCP connection is created for each HTTP request,
          the request is completed, when the TCP connection
          is closed.

       2. multi request mode
          several requests share a single TCP connection.
          The "Content-Length" HTTP header allows
          client and server to determine the request boundaries.

     That means: when a client uses the multi request mode,
     everything is fine. Clients, however, that use
     the single request mode wait until their connection
     is closed and can observe serious delays.

     These delays may be very difficult to explain, as
     the background process not only delays its own
     request but may delay arbitrary other requests
     that happen to be served at the same time.



How to fix the problem:

      There should be a (file) control "CloseOnExec", that tells
      Unix to automatically close the file like object upon
      an exec.
      ZServer should probably use it on each of its sockets.
      I can not see a serious application that should have
      direct access to ZServer's HTTP request socket.


I will soon file a bug report into the Collector.


Dieter

_______________________________________________
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )

>From [EMAIL PROTECTED] Tue Dec 19 20:22:01 2000
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20069 invoked from network); 19 Dec 2000 20:22:00 -0000
Received: from unknown (HELO zope.codeit.com) (unknown)
  by unknown with SMTP; 19 Dec 2000 20:22:00 -0000
Received: from www.zope.org (localhost [127.0.0.1])
        by zope.codeit.com (8.8.7/8.8.7) with ESMTP id LAA29623;
        Tue, 19 Dec 2000 11:31:17 -0800
Received: from bcshost02.internal.bcswebservices.net ([208.228.124.3])
        by zope.codeit.com (8.8.7/8.8.7) with ESMTP id LAA29600
        for <[EMAIL PROTECTED]>; Tue, 19 Dec 2000 11:31:14 -0800
Received: by BCSHOST02 with Internet Mail Service (5.5.2650.21)
        id <Y7YS4PW7>; Tue, 19 Dec 2000 14:35:52 -0500
Message-ID: <415D16A4362DD411BA760050DA19552641D9F9@BCSHOST02>
From: Tim McLaughlin <[EMAIL PROTECTED]>
To: "'[EMAIL PROTECTED]'" <[EMAIL PROTECTED]>
Subject: [Zope-dev] regex (or re) modules
Date: Tue, 19 Dec 2000 14:35:52 -0500
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2650.21)
Content-Type: text/plain;
        charset="iso-8859-1"
Sender: [EMAIL PROTECTED]
Errors-To: [EMAIL PROTECTED]
X-Mailman-Version: 1.0b8
Precedence: bulk
List-Id: Developers of the Z Object Publishing Environment <zope-dev.zope.org>
X-BeenThere: [EMAIL PROTECTED]

Does anybody know why these modules aren't available for DTML and Python
Methods?
(I already hacked my server, just wanna know what I'm riskin)

Thanks,
Tim

_______________________________________________
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope )

>From [EMAIL PROTECTED] Tue Dec 19 20:23:50 2000
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20080 invoked by alias); 19 Dec 2000 20:23:50 -0000
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20077 invoked by uid 0); 19 Dec 2000 20:23:50 -0000
Date: 19 Dec 2000 20:23:50 -0000
Message-ID: <[EMAIL PROTECTED]>
From: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Subject: testing to ops - do you get this?

>From [EMAIL PROTECTED] Tue Dec 19 20:24:26 2000
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20103 invoked from network); 19 Dec 2000 20:24:25 -0000
Received: from unknown (HELO zope.codeit.com) (unknown)
  by unknown with SMTP; 19 Dec 2000 20:24:25 -0000
Received: from www.zope.org (localhost [127.0.0.1])
        by zope.codeit.com (8.8.7/8.8.7) with ESMTP id LAA28453;
        Tue, 19 Dec 2000 11:07:39 -0800
Received: from mercury.spvi.com (hs243.spvi.com [64.132.76.243])
        by zope.codeit.com (8.8.7/8.8.7) with ESMTP id LAA28438
        for <[EMAIL PROTECTED]>; Tue, 19 Dec 2000 11:07:37 -0800
Received: (from steve@localhost)
        by mercury.spvi.com (8.11.1/8.11.1) id eBJJ9jV56367;
        Tue, 19 Dec 2000 14:09:45 -0500 (EST)
        (envelope-from [EMAIL PROTECTED])
Date: Tue, 19 Dec 2000 14:09:45 -0500 (EST)
Message-Id: <[EMAIL PROTECTED]>
X-Authentication-Warning: mercury.spvi.com: steve set sender to [EMAIL PROTECTED] using -f
From: Steve Spicklemire <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
CC: [EMAIL PROTECTED]
In-reply-to: <[EMAIL PROTECTED]> ([EMAIL PROTECTED])
Subject: Re: [Zope-dev] Loginmanager and local roles
Reply-to: [EMAIL PROTECTED]
References: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]>
Sender: [EMAIL PROTECTED]
Errors-To: [EMAIL PROTECTED]
X-Mailman-Version: 1.0b8
Precedence: bulk
List-Id: Developers of the Z Object Publishing Environment <zope-dev.zope.org>
X-BeenThere: [EMAIL PROTECTED]


Hi Morten,

>>>>> "Morten" == Morten W Petersen <[EMAIL PROTECTED]> writes:

    Morten> (Can't understand why I had to use an additional list
    Morten> though).

You probably found that Zope doesn't allow you to access the 
elements of a BTree object (which is what you get from 
"persistentItemIDs()" from dtml. You need to copy them
to a 'plain' list first (a 'plain' list is in the set of
object types that Zope allows you to use in DTML without
further security checking.. ). 

-steve




_______________________________________________
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope )

>From [EMAIL PROTECTED] Tue Dec 19 20:24:26 2000
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20108 invoked from network); 19 Dec 2000 20:24:26 -0000
Received: from unknown (HELO zope.codeit.com) (unknown)
  by unknown with SMTP; 19 Dec 2000 20:24:26 -0000
Received: from www.zope.org (localhost [127.0.0.1])
        by zope.codeit.com (8.8.7/8.8.7) with ESMTP id LAA29799;
        Tue, 19 Dec 2000 11:33:24 -0800
Received: from trump.amber.org ([EMAIL PROTECTED] [209.31.146.82])
        by zope.codeit.com (8.8.7/8.8.7) with ESMTP id LAA29772
        for <[EMAIL PROTECTED]>; Tue, 19 Dec 2000 11:33:21 -0800
Received: from CJ479042B (cj479042-b.alex1.va.home.com [24.10.224.157])
        by trump.amber.org (Postfix) with SMTP
        id C30305DC04; Tue, 19 Dec 2000 14:35:48 -0500 (EST)
Message-ID: <023001c069f3$a2728f00$[EMAIL PROTECTED]>
From: "Christopher Petrilli" <[EMAIL PROTECTED]>
To: "Tim McLaughlin" <[EMAIL PROTECTED]>, <[EMAIL PROTECTED]>
References: <415D16A4362DD411BA760050DA19552641D9F9@BCSHOST02>
Subject: Re: [Zope-dev] regex (or re) modules
Date: Tue, 19 Dec 2000 14:41:01 -0500
MIME-Version: 1.0
Content-Type: text/plain;
        charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.00.3018.1300
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.3018.1300
Sender: [EMAIL PROTECTED]
Errors-To: [EMAIL PROTECTED]
X-Mailman-Version: 1.0b8
Precedence: bulk
List-Id: Developers of the Z Object Publishing Environment <zope-dev.zope.org>
X-BeenThere: [EMAIL PROTECTED]

Because both are quite capable of crashing a thread (maybe the whole thing),
with poorly written regex expressions.  Creating infinate loops is easier
than you think, esp if your regex requires backtracking to "solve".  Perhaps
there should be a simplified regex engine available, that I don't know.

Chris
--
| Christopher Petrilli
| [EMAIL PROTECTED]
----- Original Message -----
From: "Tim McLaughlin" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Tuesday, December 19, 2000 2:35 PM
Subject: [Zope-dev] regex (or re) modules


> Does anybody know why these modules aren't available for DTML and Python
> Methods?
> (I already hacked my server, just wanna know what I'm riskin)



_______________________________________________
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope )

>From [EMAIL PROTECTED] Tue Dec 19 20:39:07 2000
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20216 invoked by alias); 19 Dec 2000 20:39:07 -0000
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20213 invoked from network); 19 Dec 2000 20:39:07 -0000
Received: from unknown (HELO c007.snv.cp.net) (unknown)
  by unknown with SMTP; 19 Dec 2000 20:39:07 -0000
Received: (cpmta 13431 invoked from network); 19 Dec 2000 12:22:58 -0800
Received: from emerald2.oz.net (HELO emerald.oz.net) (216.39.128.2)
  by smtp.test.theriver.com (209.228.33.206) with SMTP; 19 Dec 2000 12:22:58 -0800
X-Sent: 19 Dec 2000 20:22:58 GMT
Received: from GEORGE2 (sense-sea-focal-dynamic-2-7.oz.net [216.39.134.71]) by 
emerald.oz.net (8.9.3/8.7.3) with SMTP id MAA06977; Tue, 19 Dec 2000 12:19:07 -0800 
(PST)
Message-ID: <01c901c069f9$46dee5c0$[EMAIL PROTECTED]>
Reply-To: "George Haigh" <[EMAIL PROTECTED]>
From: "George Haigh" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>, <[EMAIL PROTECTED]>
References: <[EMAIL PROTECTED]>
Subject: Re: testing to ops - do you get this?
Date: Tue, 19 Dec 2000 12:21:31 -0800
MIME-Version: 1.0
Content-Type: text/plain;
        charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.50.4133.2400
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400

yes

----- Original Message ----- 
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Tuesday, December 19, 2000 12:23 PM
Subject: testing to ops - do you get this?


> 

>From [EMAIL PROTECTED] Tue Dec 19 20:39:08 2000
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20244 invoked by alias); 19 Dec 2000 20:39:08 -0000
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20241 invoked by alias); 19 Dec 2000 20:39:08 -0000
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20237 invoked from network); 19 Dec 2000 20:39:07 -0000
Received: from unknown (HELO c007.snv.cp.net) (unknown)
  by unknown with SMTP; 19 Dec 2000 20:39:07 -0000
Received: (cpmta 13431 invoked from network); 19 Dec 2000 12:22:58 -0800
Received: from emerald2.oz.net (HELO emerald.oz.net) (216.39.128.2)
  by smtp.test.theriver.com (209.228.33.206) with SMTP; 19 Dec 2000 12:22:58 -0800
X-Sent: 19 Dec 2000 20:22:58 GMT
Received: from GEORGE2 (sense-sea-focal-dynamic-2-7.oz.net [216.39.134.71]) by 
emerald.oz.net (8.9.3/8.7.3) with SMTP id MAA06977; Tue, 19 Dec 2000 12:19:07 -0800 
(PST)
Message-ID: <01c901c069f9$46dee5c0$[EMAIL PROTECTED]>
Reply-To: "George Haigh" <[EMAIL PROTECTED]>
From: "George Haigh" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>, <[EMAIL PROTECTED]>
References: <[EMAIL PROTECTED]>
Subject: Re: testing to ops - do you get this?
Date: Tue, 19 Dec 2000 12:21:31 -0800
MIME-Version: 1.0
Content-Type: text/plain;
        charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.50.4133.2400
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400

yes

----- Original Message ----- 
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Tuesday, December 19, 2000 12:23 PM
Subject: testing to ops - do you get this?


> 

>From [EMAIL PROTECTED] Tue Dec 19 20:43:24 2000
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20321 invoked from network); 19 Dec 2000 20:43:24 -0000
Received: from unknown (HELO zope.codeit.com) (unknown)
  by unknown with SMTP; 19 Dec 2000 20:43:24 -0000
Received: from www.zope.org (localhost [127.0.0.1])
        by zope.codeit.com (8.8.7/8.8.7) with ESMTP id MAA31805;
        Tue, 19 Dec 2000 12:12:16 -0800
Received: from mail.gmx.net (pop.gmx.net [194.221.183.20])
        by zope.codeit.com (8.8.7/8.8.7) with SMTP id MAA31785
        for <[EMAIL PROTECTED]>; Tue, 19 Dec 2000 12:12:12 -0800
Message-Id: <[EMAIL PROTECTED]>
Received: (qmail 9864 invoked by uid 0); 19 Dec 2000 20:14:10 -0000
Received: from unknown (HELO gmx.net) (195.227.114.10)
  by mail.gmx.net (mail05) with SMTP; 19 Dec 2000 20:14:10 -0000
Date: Tue, 19 Dec 2000 21:07:48 +0100
From: Oliver Bleutgen <[EMAIL PROTECTED]>
Reply-To: Oliver Bleutgen <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Subject: Re: [Zope] To retrieve properties from a dtml document
X-Mailer: Oliver Bleutgen's registered AK-Mail 3.1 publicbeta2a [ger]
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: [EMAIL PROTECTED]
Errors-To: [EMAIL PROTECTED]
X-Mailman-Version: 1.0b8
Precedence: bulk
List-Id: Users of the Z Object Publishing Environment <zope.zope.org>
X-BeenThere: [EMAIL PROTECTED]

> Hello Andy, thanks for the advice.
> It didn't work. Maybe I'm wrong at any point, so please tell me whether
> it worked for you.

> I'm aware that this problem has been discussed here before, that it
> happens because of Python's object naming, and also that there's a
> workaround at least (and just)for expressions, using _['whatever.html']

> Due to the kind of workflow we have, we need all of the documents to be
> editable with Dreamweaver at any moment, directly, after the daily WGET
> process. Batch-replacing every "_html" with ".html" in file names and
> content seems to be very complicated within this scenario.

not overly complicated,
here is a slightly modfied script (untested) which I used 
for a similar task (creating an "offline"-version for a client):

#!/usr/bin/bash
rm -rf myimport
wget -r -k http://192.168.0.201:10080/
mv 192.168.0.201/ myimport/
rm myimport/index.html
perl -pi -e 's/<base href="http:\/\/192.168.0.201:10080.*//g' `find myimport/ -type f`
perl -pi -e 's/(.*)_html/$1\.html/g' `find myimport/ -type f`
mmv ';*_html' '#1#2.html'
zip -r myimport.zip myimport/*


Things to check

- Check the regular expressions and mmv part, I had to change them without testing 
(not certain about the (.*) and the mmv (-> multiple move) syntax)
- Instead of relying on _html to mark html-files one could use file(1) - but then
one would have to make a list of renamed files in order to change the relevant
links
- Improve the regex for changing links, it might capture _html in text (but how
often does that occure)

cheers,
oliver




_______________________________________________
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )

>From [EMAIL PROTECTED] Tue Dec 19 20:43:34 2000
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20334 invoked by alias); 19 Dec 2000 20:43:34 -0000
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20331 invoked from network); 19 Dec 2000 20:43:33 -0000
Received: from unknown (HELO c007.snv.cp.net) (unknown)
  by unknown with SMTP; 19 Dec 2000 20:43:33 -0000
Received: (cpmta 17255 invoked from network); 19 Dec 2000 12:26:37 -0800
Received: from emerald2.oz.net (HELO emerald.oz.net) (216.39.128.2)
  by smtp.test.theriver.com (209.228.33.206) with SMTP; 19 Dec 2000 12:26:37 -0800
X-Sent: 19 Dec 2000 20:26:37 GMT
Received: from GEORGE2 (sense-sea-focal-dynamic-2-7.oz.net [216.39.134.71]) by 
emerald.oz.net (8.9.3/8.7.3) with SMTP id MAA08699 for <[EMAIL PROTECTED]>; Tue, 19 Dec 
2000 12:22:44 -0800 (PST)
Message-ID: <01d601c069f9$c918e900$[EMAIL PROTECTED]>
Reply-To: "George Haigh" <[EMAIL PROTECTED]>
From: "George Haigh" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Subject: mysql on fresno
Date: Tue, 19 Dec 2000 12:25:07 -0800
MIME-Version: 1.0
Content-Type: multipart/alternative;
        boundary="----=_NextPart_000_01D3_01C069B6.B9377E40"
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.50.4133.2400
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400

This is a multi-part message in MIME format.

------=_NextPart_000_01D3_01C069B6.B9377E40
Content-Type: text/plain;
        charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Has anyone altered mysql on fresno (i.e. removed) ?  I am getting bcnu =
error messages that mysqld is not running, and the startup script is =
missing.

--George


------=_NextPart_000_01D3_01C069B6.B9377E40
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 http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 5.50.4207.2601" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>Has anyone altered mysql on fresno =
(i.e. removed)=20
?&nbsp; I am getting bcnu error messages that mysqld is not running, and =
the=20
startup script is missing.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>--George</FONT></DIV>
<DIV>&nbsp;</DIV></BODY></HTML>

------=_NextPart_000_01D3_01C069B6.B9377E40--

>From [EMAIL PROTECTED] Tue Dec 19 20:53:06 2000
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20418 invoked from network); 19 Dec 2000 20:53:06 -0000
Received: from unknown (HELO zope.codeit.com) (unknown)
  by unknown with SMTP; 19 Dec 2000 20:53:06 -0000
Received: from www.zope.org (localhost [127.0.0.1])
        by zope.codeit.com (8.8.7/8.8.7) with ESMTP id MAA31974;
        Tue, 19 Dec 2000 12:13:04 -0800
Received: from minotaur2.uwimona.edu.jm (minotaur2.uwimona.edu.jm [196.3.0.20])
        by zope.codeit.com (8.8.7/8.8.7) with ESMTP id MAA31836
        for <[EMAIL PROTECTED]>; Tue, 19 Dec 2000 12:12:53 -0800
Received: from minotaur.uwimona.edu.jm (minotaur.uwimona.edu.jm [196.3.0.2])
        by minotaur2.uwimona.edu.jm (8.9.3/8.9.3) with SMTP id PAA00780;
        Tue, 19 Dec 2000 15:16:02 +0500 (GMT)
Received: from baro by minotaur.uwimona.edu.jm (SMI-8.6/SMI-SVR4)
        id PAA25165; Tue, 19 Dec 2000 15:17:51 -0500
From: "Mohan Baro" <[EMAIL PROTECTED]>
To: "Bill Welch" <[EMAIL PROTECTED]>
Cc: <[EMAIL PROTECTED]>
Subject: RE: [Zope] LoginManager - logging out
Date: Tue, 19 Dec 2000 15:18:19 -0500
Message-ID: <[EMAIL PROTECTED]>
MIME-Version: 1.0
Content-Type: text/plain;
        charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Priority: 3 (Normal)
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0)
Importance: Normal
In-Reply-To: <[EMAIL PROTECTED]>
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700
Sender: [EMAIL PROTECTED]
Errors-To: [EMAIL PROTECTED]
X-Mailman-Version: 1.0b8
Precedence: bulk
List-Id: Users of the Z Object Publishing Environment <zope.zope.org>
X-BeenThere: [EMAIL PROTECTED]

Thanks,

I have tried it.

<dtml-raise type="Unauthorized">
Logout!!
</dtml-raise>

I guess it logs me out. But it also gives me a login dialog box .... it does
not accept any of the account. So I cannot log back in! Why?

What is going on here?

Mohan.

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Bill
Welch
Sent: Monday, December 18, 2000 11:06 AM
To: Mohan Baro
Cc: [EMAIL PROTECTED]
Subject: RE: [Zope] LoginManager - logging out


this is my logout DTML method

<dtml-raise type="Unauthorized">
Logout!!
</dtml-raise>

On Mon, 18 Dec 2000, Mohan Baro wrote:

> Can you please give an example of this code or method?
>
> Mohan.


_______________________________________________
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists -
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )



_______________________________________________
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )

>From [EMAIL PROTECTED] Tue Dec 19 20:57:25 2000
Return-Path: <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]
Received: (qmail 20470 invoked from network); 19 Dec 2000 20:57:25 -0000
Received: from unknown (HELO Feather) (unknown)
  by unknown with SMTP; 19 Dec 2000 20:57:25 -0000
From: "Garth Hitchens" <[EMAIL PROTECTED]>
To: "Randy@Spoke. Net" <[EMAIL PROTECTED]>
Subject: testing 123
Date: Tue, 19 Dec 2000 12:53:40 -0800
Message-ID: <[EMAIL PROTECTED]>
MIME-Version: 1.0
Content-Type: text/plain;
        charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3 (Normal)
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0)
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400
Importance: Normal

does this get to teamkern?


_______________________________________________
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )

Reply via email to