if you are using the TilesTool, note that it extends ImportSupport
which uses a custom HttpServletResponseWrapper (an internal class
called ImportResponseWrapper).  if the getWriter() method is called on
that wrapper instead of getOutputStream(), then the wrapper will use a
StringWriter to hold the content being imported.  i believe the
VelocityViewServlet does indeed try to use getWriter() before trying
getOutputStream().  so import requests via the TilesTool that are
mapped to the VVS, will use a StringWriter.

i'm not sure if this helps, but i seem to recall mention of the
TilesTool early in the thread and that use of a StringWriter seems to
be the problem.

On 5/10/05, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> The TufteViewServlet overrides mergeTemplate only to print out some various 
> memory statistics.   I'll try playing around with setBufferSize(), but I'm 
> close to giving up =\.
> 
> -L
> 
> On Tue, May 10, 2005 at 09:19:33AM +0300, Ilkka Priha wrote:
> > Maybe not the tiles tool, but some other filter or processor along the
> > trace may have wrapped the response with a caching one. And you have
> > TufteViewServlet calling mergeTemplate and actually deciding the writer to
> > apply, not VelocityViewServlet...
> >
> > You can set the buffer size of the response before any output with
> > response.setBufferSize() (or check its current size with
> > response.getBufferSize()). That should set the buffer size for
> > ServletOutputStream correspondingly.
> >
> > -- Ilkka
> >
> > BTW. Are browsers capable of viewing an HTML page of 100-200 MB in size and
> > how long does it take to load such a monster through the net?
> >
> >
> > [EMAIL PROTECTED] wrote:
> > >The stack trace makes it seem like the problem still originates from the
> > >VelocityViewServlet, and not the TilesTool:
> > >
> > >org.apache.velocity.exception.MethodInvocationException: Invocation of
> > >method 'get' in  class org.apache.velocity.tools.struts.TilesTool threw
> > >exception class java.lang.OutOfMemoryError : null
> > >     at
> > >     
> > > org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:193)
> > >     at
> > >     
> > > org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:175)
> > >     at
> > >     
> > > org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:220)
> > >     at
> > >     
> > > org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230)
> > >     at org.apache.velocity.Template.merge(Template.java:256)
> > >     at
> > >     
> > > tufte.controller.tools.servlet.TufteViewServlet.mergeTemplate(TufteViewServlet.java:106)
> > >     at
> > >     
> > > org.apache.velocity.tools.view.servlet.VelocityViewServlet.doRequest(Unknown
> > >  Source)
> > >     at
> > >     
> > > org.apache.velocity.tools.view.servlet.VelocityViewServlet.doGet(Unknown 
> > > Source)
> > >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> > >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> > >     at
> > >     
> > > org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
> > >     at
> > >     
> > > org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:432)
> > >     at
> > >     
> > > org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:356)
> > >     at
> > >     
> > > org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1097)
> > >     at
> > >     
> > > org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:302)
> > >     at
> > >     
> > > org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(TilesRequestProcessor.java:278)
> > >     at
> > >     
> > > org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:341)
> > >     at
> > >     
> > > org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:272)
> > >     at
> > >     
> > > org.apache.struts.action.ActionServlet.process(ActionServlet.java:1187)
> > >     at
> > >     org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:433)
> > >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> > >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> > >     at
> > >     
> > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
> > >     at
> > >     
> > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> > >     at
> > >     org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> > >     at
> > >     org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
> > >     at
> > >     
> > > org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
> > >     at
> > >     
> > > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> > >     at
> > >     org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
> > >     at
> > >     
> > > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> > >     at
> > >     org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> > >     at
> > >     
> > > org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
> > >     at
> > >     org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:261)
> > >     at
> > >     org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:360)
> > >     at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:604)
> > >     at
> > >     
> > > org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:562)
> > >     at
> > >     org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:679)
> > >     at
> > >     
> > > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
> > >     at java.lang.Thread.run(Thread.java:534)
> > >
> > >So I suppose the question is, how effecient is ServletOutputStream?  When
> > >I use an FileOutputStream, very little memory is required.
> > >
> > >-L
> > >
> > >On Sat, May 07, 2005 at 11:43:03AM +0300, Ilkka Priha wrote:
> > >
> > >>Maybe you are not referring to this memory eating template directly from
> > >>VelocityServlet, but through some tool, #include, etc., which uses a
> > >>nested StringWriter and not the servlet's OutputStreamWriter directly.
> > >>According to your first post, the original oom exception was thrown by
> > >>the Velocity Struts Tiles tool...
> > >>
> > >>-- Ilkka
> > >>
> > >>
> > >>[EMAIL PROTECTED] wrote:
> > >>
> > >>>Ok now I'm confused (suprise, suprise!).   I looked at the source for
> > >>>VelocityServlet, and mergeTemplate has:
> > >>>
> > >>>vw = (VelocityWriter) writerPool.get();
> > >>>
> > >>>if (vw == null)
> > >>>{
> > >>>  vw = new VelocityWriter(new OutputStreamWriter(output, encoding),4 *
> > >>>  1024, true);
> > >>>}
> > >>>else
> > >>>{
> > >>>  vw.recycle(new OutputStreamWriter(output, encoding));
> > >>>}
> > >>>template.merge(context, vw);
> > >>>
> > >>>===
> > >>>
> > >>>So the VelocityServlet DOES use OutputStreamWriter already ... so then
> > >>>why does it still utilize so much memory?
> > >>>
> > >>>-L
> > >>>
> > >>>On Fri, May 06, 2005 at 02:02:07PM -0700, [EMAIL PROTECTED] wrote:
> > >>>
> > >>>
> > >>>>Alright, I changed the Writer to be:
> > >>>>
> > >>>>OutputStreamWriter w = new OutputStreamWriter(new
> > >>>>FileOutputStream("test.html"));
> > >>>>
> > >>>>And this fixes the memory problem.
> > >>>>
> > >>>>However, my application is running Velocity as a servlet, how should I
> > >>>>extend the VelocityServlet to use an OutputStreamWriter intead of a
> > >>>>StringWriter?  Should I post a different email thread about this?
> > >>>>
> > >>>>-L
> > >>>>
> > >>>>On Fri, May 06, 2005 at 01:59:19PM -0700, David You wrote:
> > >>>>
> > >>>>
> > >>>>>Well, Open a file, use a FileWriter.
> > >>>>>
> > >>>>>David
> > >>>>>
> > >>>>>
> > >>>>>-----Original Message-----
> > >>>>>From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> > >>>>>Sent: Friday, May 06, 2005 1:48 PM
> > >>>>>To: Velocity Users List
> > >>>>>Subject: Re: OutOfMemoryException Processing Velocity Template
> > >>>>>
> > >>>>>I printed out the available memory before and after I call
> > >>>>>"mergeTemplate":
> > >>>>>
> > >>>>>Free memory before merge: 217393352
> > >>>>>Free memory after merge: 16271392
> > >>>>>
> > >>>>>so I would assume the StringWriter is approximately 200MB after the
> > >>>>>merge.   What should I use/do instead?
> > >>>>>
> > >>>>>-Lawrence
> > >>>>>
> > >>>>>On Fri, May 06, 2005 at 01:43:50PM -0700, David You wrote:
> > >>>>>
> > >>>>>
> > >>>>>>Why do you use StringWriter? That is cached in the memory.
> > >>>>>>How big is the StringWriter after the merge?
> > >>>>>>
> > >>>>>>David
> > >>>>>>
> > >>>>>>
> > >>>>>>-----Original Message-----
> > >>>>>>From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> > >>>>>>Sent: Friday, May 06, 2005 1:22 PM
> > >>>>>>To: Velocity Users List
> > >>>>>>Subject: Re: OutOfMemoryException Processing Velocity Template
> > >>>>>>
> > >>>>>>Alright, I ran this little piece of code:
> > >>>>>>
> > >>>>>>public static void main( String args[] ) throws Exception
> > >>>>>> {
> > >>>>>>     /* first, we init the runtime engine.  Defaults are fine. */
> > >>>>>>
> > >>>>>>     Velocity.init();
> > >>>>>>
> > >>>>>>     /* lets make a Context and put data into it */
> > >>>>>>
> > >>>>>>     VelocityContext context = new VelocityContext();
> > >>>>>>
> > >>>>>>     List results = ReportBean.runLargeReport();
> > >>>>>>
> > >>>>>>     context.put("List", results);
> > >>>>>>
> > >>>>>>     /* lets render a template */
> > >>>>>>
> > >>>>>>     StringWriter w = new StringWriter();
> > >>>>>>
> > >>>>>>     Velocity.mergeTemplate("/myfile.vm", context, w );
> > >>>>>>     System.out.println(" template : " + w );
> > >>>>>>
> > >>>>>>     /* lets make our own string to render */
> > >>>>>> }
> > >>>>>>
> > >>>>>>results is a List of 66000 objects and requires about 8megs of memory.
> > >>>>>>The "mergeTemplate" requires at least 230 MB of memory.   Any
> > >>>>>>suggestions?
> > >>>>>>
> > >>>>>>-L
> > >>>>>>
> > >>>>>>On Fri, May 06, 2005 at 11:53:30AM -0700, jian chen wrote:
> > >>>>>>
> > >>>>>>
> > >>>>>>>Hi,
> > >>>>>>>
> > >>>>>>>I guess the writer Ilkka talked about is when using Velocity as a
> > >>>>>>>standalone template engine.
> > >>>>>>>
> > >>>>>>>Right now I don't have a good clue, could you run Velocity as a
> > >>>>>>>standalone template engine and render the page to see if there is a
> > >>>>>>>huge memory usage?
> > >>>>>>>
> > >>>>>>>Cheers,
> > >>>>>>>
> > >>>>>>>Jian
> > >>>>>>>
> > >>>>>>>On 5/6/05, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> > >>>>>>>
> > >>>>>>>
> > >>>>>>>>Sorry, I'm not sure what you mean by what "kind of writer" I'm
> > >>>>>>
> > >>>>>>using.   Where would I find out?   How would I change this (to maybe a
> > >>>>>>StringBuffer writer?)
> > >>>>>>
> > >>>>>>
> > >>>>>>>>Also, each column contains a String that is at most, 200
> > >>>>>
> > >>>>>characters,
> > >>>>>
> > >>>>>
> > >>>>>>most are closer to 10-20.   There are a total of 10 columns.
> > >>>>>>
> > >>>>>>
> > >>>>>>>>Thanks.
> > >>>>>>>>
> > >>>>>>>>-Lawrence
> > >>>>>>>>
> > >>>>>>>>On Fri, May 06, 2005 at 09:11:13PM +0300, Ilkka Priha wrote:
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>>What kind of writer are you using and how long are the items? 66
> > >>>>>>
> > >>>>>>000 HTML
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>table rows with 5 numeric columns consumes about 32 MB when
> > >>>>>>
> > >>>>>>buffered into a
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>string writer. If the items are longer, it takes much more
> > >>>>>
> > >>>>>memory.
> > >>>>>
> > >>>>>
> > >>>>>>>>>-- Ilkka
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>>[EMAIL PROTECTED] wrote:
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>>>I tried putting static HTML in the #foreach loop, same problem.
> > >>>>>>
> > >>>>>>Then I
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>tried setting the large list as a "local" varible:
> > >>>>>>>>>>
> > >>>>>>>>>>#set ($localList = $List)
> > >>>>>>>>>>#foreach($row in $localList)
> > >>>>>>>>>>...
> > >>>>>>>>>>
> > >>>>>>>>>>but that didnt help either.   I don't see why velocity should
> > >>>>>
> > >>>>>use
> > >>>>>
> > >>>>>
> > >>>>>>250+ MB
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>of memory iterating over a list ~8MB in size...
> > >>>>>>>>>>-L
> > >>>>>>>>>>
> > >>>>>>>>>>On Thu, May 05, 2005 at 02:56:28PM -0700, jian chen wrote:
> > >>>>>>>>>>
> > >>>>>>>>>>
> > >>>>>>>>>>
> > >>>>>>>>>>>Well, I don't have a good clue now.
> > >>>>>>>>>>>
> > >>>>>>>>>>>What about do the debugging step by step, i.e., use just
> > >>>>>
> > >>>>>static
> > >>>>>
> > >>>>>
> > >>>>>>html
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>in your #foreach loop? Will that blow up the memory?
> > >>>>>>>>>>>
> > >>>>>>>>>>>Cheers,
> > >>>>>>>>>>>
> > >>>>>>>>>>>Jian
> > >>>>>>>>>>>
> > >>>>>>>>>>>
> > >>>>>>>>>>>
> > >>>>>>>>>>>On 5/5/05, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> > >>>>>>>>>>>
> > >>>>>>>>>>>
> > >>>>>>>>>>>
> > >>>>>>>>>>>>Thanks for the suggestion.   I tried putting that, along with
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>file.resource.loader.cache = true
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>in my velocity.properties file.   Both did not work.   Any
> > >>>>>>
> > >>>>>>other
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>suggestions?
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>Thanks!
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>-L
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>On Thu, May 05, 2005 at 02:11:28PM -0700, jian chen wrote:
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>>Hi,
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>This maybe because you haven't turned on template caching. I
> > >>>>>>
> > >>>>>>had
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>similar problem before, and even if I only used
> > >>>>>
> > >>>>>evaluate(...)
> > >>>>>
> > >>>>>
> > >>>>>>method
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>and load the template using my own java program, it happened
> > >>>>>>
> > >>>>>>when the
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>for loop is lot of iterations.
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>The bottom line for my problem is I need to turn on template
> > >>>>>>
> > >>>>>>caching,
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>so, velocity will not try to cache the objects it parsed
> > >>>>>>
> > >>>>>>during each
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>time of the iteration.
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>I did:
> > >>>>>>>>>>>>>ri.setProperty(RuntimeConstants.FILE_RESOURCE_LOADER_CACHE,
> > >>>>>>
> > >>>>>>"true");
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>where ri is a runtime instance.
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>Will this fix your issue?
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>Cheers,
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>Jian
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>On 5/5/05, [EMAIL PROTECTED] <[EMAIL PROTECTED]>
> > >>>>>
> > >>>>>wrote:
> > >>>>>
> > >>>>>
> > >>>>>>>>>>>>>>I am getting an OutOfMemoryException:
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>org.apache.velocity.exception.MethodInvocationException:
> > >>>>>>
> > >>>>>>Invocation of
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>>method 'get' in  class
> > >>>>>>
> > >>>>>>org.apache.velocity.tools.struts.TilesTool
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>>threw exception class java.lang.OutOfMemoryError : null
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>when I am creating a large velocity file.  The vm file
> > >>>>>
> > >>>>>itself
> > >>>>>
> > >>>>>
> > >>>>>>is
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>>fairly small, but this piece of velocity is causing the
> > >>>>>>
> > >>>>>>exception:
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>>#foreach($row in $List)
> > >>>>>>>>>>>>>><tr>
> > >>>>>>>>>>>>>><td height="20" class="tbltxt">$!row.item1</td>
> > >>>>>>>>>>>>>><td class="tbltxt">$!row.item2</td>
> > >>>>>>>>>>>>>><td class="tbltxt">$!row.item3</td>
> > >>>>>>>>>>>>>><td class="tbltxt">$!row.item4</td>
> > >>>>>>>>>>>>>><td class="tbltxt">$!number.format('currency',
> > >>>>>>
> > >>>>>>$!row.item5)</td>
> > >>>>>>
> > >>>>>>>>>>>>>></tr>
> > >>>>>>>>>>>>>>#end
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>List is a list of relatively small objects (5-6 Strings, a
> > >>>>>>
> > >>>>>>couple of
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>>BigDecimals), but the List itself contains approximately
> > >>>>>>
> > >>>>>>66,000
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>>entries.  Unfortunately, unless I set the tomcat JVM to use
> > >>>>>
> > >>>>>a
> > >>>>>
> > >>>>>
> > >>>>>>heap
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>>size of at least 256M, this velocity template throws an
> > >>>>>>>>>>>>>>OutOfMemoryException when it is being processed.
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>Any suggestions?
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>Thanks.
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>-L
> > >>>>>>>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>>>-------------------------------------------------------------------
> > >>>>>>
> > >>>>>>--
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>>To unsubscribe, e-mail:
> > >>>>>>
> > >>>>>>[EMAIL PROTECTED]
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>>For additional commands, e-mail:
> > >>>>>>
> > >>>>>>[EMAIL PROTECTED]
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>--------------------------------------------------------------------
> > >>>>>>
> > >>>>>>-
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>To unsubscribe, e-mail:
> > >>>>>>
> > >>>>>>[EMAIL PROTECTED]
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>>For additional commands, e-mail:
> > >>>>>>
> > >>>>>>[EMAIL PROTECTED]
> > >>>>>>
> > >>>>>>
> > >>>>>>>>---------------------------------------------------------------------
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>>>>>To unsubscribe, e-mail:
> > >>>>>>
> > >>>>>>[EMAIL PROTECTED]
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>>For additional commands, e-mail:
> > >>>>>>
> > >>>>>>[EMAIL PROTECTED]
> > >>>>>>
> > >>>>>>
> > >>>>>>>---------------------------------------------------------------------
> > >>>>>>>
> > >>>>>>>
> > >>>>>>>>>>>To unsubscribe, e-mail:
> > >>>>>>
> > >>>>>>[EMAIL PROTECTED]
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>>For additional commands, e-mail:
> > >>>>>>
> > >>>>>>[EMAIL PROTECTED]
> > >>>>>>
> > >>>>>>
> > >>>>>>>---------------------------------------------------------------------
> > >>>>>>>
> > >>>>>>>
> > >>>>>>>>>>To unsubscribe, e-mail:
> > >>>>>>
> > >>>>>>[EMAIL PROTECTED]
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>For additional commands, e-mail:
> > >>>>>>
> > >>>>>>[EMAIL PROTECTED]
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>>.
> > >>>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>---------------------------------------------------------------------
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>To unsubscribe, e-mail:
> > >>>>>>
> > >>>>>>[EMAIL PROTECTED]
> > >>>>>>
> > >>>>>>
> > >>>>>>>>>For additional commands, e-mail:
> > >>>>>>
> > >>>>>>[EMAIL PROTECTED]
> > >>>>>>
> > >>>>>>
> > >>>>>>---------------------------------------------------------------------
> > >>>>>>
> > >>>>>>
> > >>>>>>>>To unsubscribe, e-mail:
> > >>>>>
> > >>>>>[EMAIL PROTECTED]
> > >>>>>
> > >>>>>
> > >>>>>>>>For additional commands, e-mail:
> > >>>>>>
> > >>>>>>[EMAIL PROTECTED]
> > >>>>>>
> > >>>>>>
> > >>>>>---------------------------------------------------------------------
> > >>>>>
> > >>>>>
> > >>>>>>>To unsubscribe, e-mail: [EMAIL PROTECTED]
> > >>>>>>>For additional commands, e-mail:
> > >>>>>
> > >>>>>[EMAIL PROTECTED]
> > >>>>>
> > >>>>>
> > >>>>>>---------------------------------------------------------------------
> > >>>>>>To unsubscribe, e-mail: [EMAIL PROTECTED]
> > >>>>>>For additional commands, e-mail: [EMAIL PROTECTED]
> > >>>>>>
> > >>>>>>
> > >>>>>>---------------------------------------------------------------------
> > >>>>>>To unsubscribe, e-mail: [EMAIL PROTECTED]
> > >>>>>>For additional commands, e-mail: [EMAIL PROTECTED]
> > >>>>>
> > >>>>>---------------------------------------------------------------------
> > >>>>>To unsubscribe, e-mail: [EMAIL PROTECTED]
> > >>>>>For additional commands, e-mail: [EMAIL PROTECTED]
> > >>>>>
> > >>>>>
> > >>>>>---------------------------------------------------------------------
> > >>>>>To unsubscribe, e-mail: [EMAIL PROTECTED]
> > >>>>>For additional commands, e-mail: [EMAIL PROTECTED]
> > >>>>
> > >>>>---------------------------------------------------------------------
> > >>>>To unsubscribe, e-mail: [EMAIL PROTECTED]
> > >>>>For additional commands, e-mail: [EMAIL PROTECTED]
> > >>>
> > >>>
> > >>>---------------------------------------------------------------------
> > >>>To unsubscribe, e-mail: [EMAIL PROTECTED]
> > >>>For additional commands, e-mail: [EMAIL PROTECTED]
> > >>>
> > >>>.
> > >>>
> > >>
> > >>
> > >>---------------------------------------------------------------------
> > >>To unsubscribe, e-mail: [EMAIL PROTECTED]
> > >>For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> > >
> > >---------------------------------------------------------------------
> > >To unsubscribe, e-mail: [EMAIL PROTECTED]
> > >For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> > >.
> > >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to