Roland -- you probably don&#39;t want a resultset converted to JSON notation, you&#39;re much more likely to want the rows and fields of data.<div><br></div><div>When you&#39;re generating an HTML representation you can use the stash since it&#39;s server-side. The TemplateToolkit code can then do stuff like</div>
<div>[% FOREACH r = rs %]...</div><div><br></div><div>But when you&#39;re working with AJAX, your client-side is where the processing happens, so you won&#39;t be able to send a resultset via JSON. It won&#39;t have your data. You must poke your data into the stash so that it gets converted to JSON properly, and then sent to the client/browser for handling.</div>
<div><br></div><div>sub get_important_values { # depends on your data, e.g.</div><div>  my $self = shift;</div><div>  my $record = shift;</div><div><br></div><div>  # yadda yadda blah blah</div><div>  my $wins = $record-&gt;win_ct;</div>
<div>  my $losses = $record-&gt;loss_ct;</div><div>  my $games = $wins + $losses;</div><div><br></div><div>  return {</div><div>    fname =&gt; $record-&gt;first_name,</div><div>    # mname &lt;- ignore fields we don&#39;t need</div>
<div>    lname =&gt; $record-&gt;last_name,</div><div>    thingies =&gt; $record-&gt;thingies-&gt;count,</div><div>    wins =&gt; $wins,</div><div>    losses =&gt; $losses,</div><div>    # calculate other useful fields as needed:</div>
<div>    avg =&gt; $games ? ( $wins / $games ) : undef,</div><div>  };</div><div>}<br><br><div class="gmail_quote">On Thu, Apr 26, 2012 at 2:24 PM, Roland Philibert <span dir="ltr">&lt;<a href="mailto:rphilibert@aptina.com">rphilibert@aptina.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Hi Will,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">In your previous suggestion you had:<u></u><u></u></span></p><div class="im"><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">                while ( my $rec = $rs-&gt;next ) {<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">                                my %fields = $self-&gt;get_important_values( $rec );<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">                                push @{ $json-&gt;{data} }, { %fields );<u></u><u></u></span></p><p class="MsoNormal">
<span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">                }<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p>
</div><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">…what is “get_important_values”? How to make sure that all the resultset is transferred to $json.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Thanks for you help.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">R<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p>
<div style="border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0cm 0cm 0cm"><p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> will trillich [mailto:<a href="mailto:will.trillich@serensoft.com" target="_blank">will.trillich@serensoft.com</a>] <br>
<b>Sent:</b> 26 April 2012 14:02</span></p><div><div class="h5"><br><b>To:</b> The elegant MVC web framework<br><b>Subject:</b> Re: [Catalyst] TT via AJAX<u></u><u></u></div></div><p></p></div><div><div class="h5"><p class="MsoNormal">
<u></u> <u></u></p><p class="MsoNormal">Roland --<u></u><u></u></p><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">The main thing is, a resultset isn&#39;t your data, it&#39;s a way to *get to* your data. At some point your process needs to iterate thru the rows that your recordset would return, and that&#39;s the part you want in your data.<u></u><u></u></p>
</div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">It&#39;s not that you&#39;re rebuilding the data structure, you just want to get the data you need, omitting the other housekeeping items that would clutter up your results (and take time to encode).<u></u><u></u></p>
</div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">E.g.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">  DB&lt;3&gt; |x $rs<u></u><u></u></p>
</div><div><div><p class="MsoNormal">0  DBIx::Class::ResultSet=HASH(0xc1e8460)<u></u><u></u></p></div><div><p class="MsoNormal">   &#39;_result_class&#39; =&gt; &#39;WT::Model::Model::Master&#39;<u></u><u></u></p></div><div>
<p class="MsoNormal">   &#39;attrs&#39; =&gt; HASH(0xc239ed8)<u></u><u></u></p></div><div><p class="MsoNormal">      &#39;alias&#39; =&gt; &#39;me&#39;<u></u><u></u></p></div><div><p class="MsoNormal">      &#39;where&#39; =&gt; HASH(0xc1e55e0)<u></u><u></u></p>
</div><div><p class="MsoNormal">         &#39;ix&#39; =&gt; &#39;-1&#39;<u></u><u></u></p></div><div><p class="MsoNormal">   &#39;cond&#39; =&gt; HASH(0xc1e55e0)<u></u><u></u></p></div><div><p class="MsoNormal">      -&gt; REUSED_ADDRESS<u></u><u></u></p>
</div><div><p class="MsoNormal">   &#39;pager&#39; =&gt; undef<u></u><u></u></p></div><div><p class="MsoNormal">   &#39;result_source&#39; =&gt; DBIx::Class::ResultSource::Table=HASH(0xbbaa400)<u></u><u></u></p></div><div>
<p class="MsoNormal">      &#39;_columns&#39; =&gt; HASH(0xbbaa7c0)<u></u><u></u></p></div><div><p class="MsoNormal">         &#39;cat&#39; =&gt; HASH(0xbb74b30)<u></u><u></u></p></div><div><p class="MsoNormal">            &#39;data_type&#39; =&gt; &#39;VARCHAR&#39;<u></u><u></u></p>
</div><div><p class="MsoNormal">            &#39;default_value&#39; =&gt; undef<u></u><u></u></p></div><div><p class="MsoNormal">            &#39;is_nullable&#39; =&gt; 1<u></u><u></u></p></div><div><p class="MsoNormal">            &#39;size&#39; =&gt; 8<u></u><u></u></p>
</div><div><p class="MsoNormal">         &#39;class&#39; =&gt; HASH(0xbb74cb0)<u></u><u></u></p></div><div><p class="MsoNormal">            &#39;data_type&#39; =&gt; &#39;VARCHAR&#39;<u></u><u></u></p></div><div><p class="MsoNormal">
            &#39;default_value&#39; =&gt; undef<u></u><u></u></p></div><div><p class="MsoNormal">            &#39;is_nullable&#39; =&gt; 1<u></u><u></u></p></div><div><p class="MsoNormal">            &#39;size&#39; =&gt; 4<u></u><u></u></p>
</div></div><div><p class="MsoNormal"><b>...snip...300 or more lines later...snip...</b><u></u><u></u></p></div><div><div><p class="MsoNormal">               &#39;sqlt_deploy_callback&#39; =&gt; &#39;default_sqlt_deploy_hook&#39;<u></u><u></u></p>
</div><div><p class="MsoNormal">         &#39;storage&#39; =&gt; DBIx::Class::Storage::DBI=HASH(0xbba4470)<u></u><u></u></p></div><div><p class="MsoNormal">            &#39;_connect_info&#39; =&gt; ARRAY(0xb9ae738)<u></u><u></u></p>
</div><div><p class="MsoNormal">               0  HASH(0xac9f618)<u></u><u></u></p></div><div><p class="MsoNormal">                  &#39;dsn&#39; =&gt; &#39;dbi:mysql:dbname=wt&#39;<u></u><u></u></p></div><div><p class="MsoNormal">
                  &#39;password&#39; =&gt; &#39;sekrit-goeth-thither&#39;<u></u><u></u></p></div><div><p class="MsoNormal">                  &#39;user&#39; =&gt; &#39;blahyaddablah&#39;<u></u><u></u></p></div><div><p class="MsoNormal">
            &#39;_dbh_details&#39; =&gt; HASH(0xbba78b0)<u></u><u></u></p></div><div><p class="MsoNormal">                 empty hash<u></u><u></u></p></div><div><p class="MsoNormal">            &#39;_dbh_gen&#39; =&gt; 0<u></u><u></u></p>
</div><div><p class="MsoNormal">            &#39;_dbi_connect_info&#39; =&gt; ARRAY(0xab32940)<u></u><u></u></p></div><div><p class="MsoNormal">               0  &#39;dbi:mysql:dbname=wt&#39;<u></u><u></u></p></div><div><p class="MsoNormal">
               1  &#39;blahyaddablah&#39;<u></u><u></u></p></div><div><p class="MsoNormal">               2  &#39;sekrit-goeth-thither&#39;<u></u><u></u></p></div><div><p class="MsoNormal">               3  HASH(0xab32860)<u></u><u></u></p>
</div><div><p class="MsoNormal">                  &#39;AutoCommit&#39; =&gt; 1<u></u><u></u></p></div><div><p class="MsoNormal">                  &#39;PrintError&#39; =&gt; 0<u></u><u></u></p></div><div><p class="MsoNormal">
                  &#39;RaiseError&#39; =&gt; 1<u></u><u></u></p></div><div><p class="MsoNormal">                  &#39;ShowErrorStatement&#39; =&gt; 1<u></u><u></u></p></div><div><p class="MsoNormal">            &#39;_dbic_connect_attributes&#39; =&gt; HASH(0xab32860)<u></u><u></u></p>
</div><div><p class="MsoNormal">               -&gt; REUSED_ADDRESS<u></u><u></u></p></div><div><p class="MsoNormal">            &#39;_in_dbh_do&#39; =&gt; 0<u></u><u></u></p></div><div><p class="MsoNormal">            &#39;_sql_maker&#39; =&gt; undef<u></u><u></u></p>
</div><div><p class="MsoNormal">            &#39;_sql_maker_opts&#39; =&gt; HASH(0xbba78d0)<u></u><u></u></p></div><div><p class="MsoNormal">                 empty hash<u></u><u></u></p></div><div><p class="MsoNormal">            &#39;savepoints&#39; =&gt; ARRAY(0xbba4480)<u></u><u></u></p>
</div><div><p class="MsoNormal">                 empty array<u></u><u></u></p></div><div><p class="MsoNormal">            &#39;schema&#39; =&gt; WT::Schema=HASH(0xb93e380)<u></u><u></u></p></div><div><p class="MsoNormal">
               -&gt; REUSED_ADDRESS<u></u><u></u></p></div><div><p class="MsoNormal">            &#39;transaction_depth&#39; =&gt; 0<u></u><u></u></p></div><div><p class="MsoNormal">      &#39;source_name&#39; =&gt; &#39;Master&#39;<u></u><u></u></p>
</div><div><p class="MsoNormal">      &#39;sqlt_deploy_callback&#39; =&gt; &#39;default_sqlt_deploy_hook&#39;<u></u><u></u></p></div></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Encoding all that recordset background gunk as JSON is not going to be useful. You just need your data, and $rs-&gt;next() is a clean way to get at that.<u></u><u></u></p>
</div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p><div><p class="MsoNormal">On Thu, Apr 26, 2012 at 7:21 AM, Roland Philibert &lt;<a href="mailto:rphilibert@aptina.com" target="_blank">rphilibert@aptina.com</a>&gt; wrote:<u></u><u></u></p>
<div><div><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Hi Will,</span><u></u><u></u></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Thanks for this, am not sure I understand though..</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">I don’t really want to re-build the datastructure as the resultset $rs contains all relationships used by the template.</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">What I want to achieve is send back $body (from my rendered TT) via JSON back to my $.ajax.</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Any example on how to this and I’d be very grateful.</span><u></u><u></u></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Thanks.</span><u></u><u></u></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"> </span><u></u><u></u></p>
<div style="border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0cm 0cm 0cm"><p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> will trillich [mailto:<a href="mailto:will.trillich@serensoft.com" target="_blank">will.trillich@serensoft.com</a>] <br>
<b>Sent:</b> 25 April 2012 14:53<br><b>To:</b> The elegant MVC web framework<br><b>Subject:</b> Re: [Catalyst] TT via AJAX</span><u></u><u></u></p></div><div><div><p class="MsoNormal"> <u></u><u></u></p><p class="MsoNormal">
Roland --<u></u><u></u></p><div><p class="MsoNormal"> <u></u><u></u></p></div><div><p class="MsoNormal">Assuming your JSON view is trying to encode the &#39;result&#39; item from your stash, first let&#39;s see why encoding a blessed object is fraught with peril.<u></u><u></u></p>
</div><div><p class="MsoNormal"> <u></u><u></u></p></div><div><p class="MsoNormal">Try running your server in debug mode, and when you get to the -&gt;stash() line, try &quot;x $rs&quot;. You really want all that JSON-encoded?<u></u><u></u></p>
</div><div><p class="MsoNormal"> <u></u><u></u></p></div><div><p class="MsoNormal">Blessed objects (such as a recordset or a request or a response) typically contain many, many layers that are often going to be overkill when encoding stuff as JSON, when really you just want a few top-level items.<u></u><u></u></p>
</div><div><p class="MsoNormal"> <u></u><u></u></p></div><div><p class="MsoNormal">So you should iterate through your objects and/or collections and create a hashref that contains plain primitives (or maybe a few more hashrefs or arrayrefs when needed) instead of asking JSON to translate blessed objects that are dozens of layers deep.<u></u><u></u></p>
</div><div><p class="MsoNormal"> <u></u><u></u></p></div><div><p class="MsoNormal">Instead of doing ...-&gt;stash( result =&gt; [ $rs ] ) build your own data structure, by doing something like<u></u><u></u></p></div><div>
<p class="MsoNormal"> <u></u><u></u></p></div><div><p class="MsoNormal">my $json = {<u></u><u></u></p></div><div><p class="MsoNormal">  data =&gt; [],<u></u><u></u></p></div><div><p class="MsoNormal">  count=&gt; $rs-&gt;count,<u></u><u></u></p>
</div><div><p class="MsoNormal">  other =&gt; $self-&gt;blah,<u></u><u></u></p></div><div><p class="MsoNormal">};<u></u><u></u></p></div><div><p class="MsoNormal">while ( my $rec = $rs-&gt;next ) {<u></u><u></u></p></div>
<div><p class="MsoNormal">  my %fields = $self-&gt;get_important_values( $rec );<u></u><u></u></p></div><div><p class="MsoNormal">  push @{ $json-&gt;{data} }, { %fields );<u></u><u></u></p></div><div><p class="MsoNormal">
}<u></u><u></u></p></div><div><p class="MsoNormal">$c-&gt;stash( result =&gt; $json );<u></u><u></u></p></div><div><p class="MsoNormal"> <u></u><u></u></p></div><div><p class="MsoNormal"> <u></u><u></u></p></div><div><p class="MsoNormal">
 <u></u><u></u></p><div><p class="MsoNormal">On Wed, Apr 25, 2012 at 8:26 AM, Roland Philibert &lt;<a href="mailto:rphilibert@aptina.com" target="_blank">rphilibert@aptina.com</a>&gt; wrote:<u></u><u></u></p><div><div><p class="MsoNormal">
<span lang="EN-GB">Hello all,</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB">I’d like to render some HTML content being formatted from a  TT view via AJAX.<br>Can anybody recommend a way to do that please?</span><u></u><u></u></p>
<p class="MsoNormal"><span lang="EN-GB"> </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB">The method I am using now for AJAX  is REST controller and JSON View.</span><u></u><u></u></p><p class="MsoNormal">
<span lang="EN-GB"> </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB">...</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB">sub ajaxaction :Local :ActionClass(&#39;REST&#39;) {}</span><u></u><u></u></p>
<p class="MsoNormal"><span lang="EN-GB"> </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB">sub ajaxaction _GET {</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB"> </span><u></u><u></u></p><p class="MsoNormal">
<span lang="EN-GB">                my ($self, $c) = @_;</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB">                my $rs =  $c-&gt;model(DN)-&gt;resultset(Table)-&gt;find(...);</span><u></u><u></u></p>
<p class="MsoNormal"><span lang="EN-GB">                my $body = $c-&gt;view(MYTT)-&gt;render($c,&#39;dir/temp.mailtt&#39;,$c-&gt;stash( result  =&gt; [ $rs ] )); </span><span lang="EN-GB" style="font-family:Wingdings;background:yellow">ß</span><span lang="EN-GB" style="background:yellow"> this is the weird bit I guess.</span><u></u><u></u></p>
<p class="MsoNormal"><span lang="EN-GB">                my @content =();</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB">                push @content, $body;</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB">                $self-&gt;status_ok(</span><u></u><u></u></p>
<p class="MsoNormal"><span lang="EN-GB">                        $c,</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB">                        entity =&gt; \@content,</span><u></u><u></u></p><p class="MsoNormal">
<span lang="EN-GB">                );</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB">}</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB">sub end :Private {</span><u></u><u></u></p><p class="MsoNormal">
<span lang="EN-GB">        my ($self, $c) = @_;</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB">        $c-&gt;forward(&quot;View::JSON&quot;);</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB">}</span><u></u><u></u></p>
<p class="MsoNormal"><span lang="EN-GB"> </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB">..but doing this I get the error:</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB"> </span><u></u><u></u></p>
<p class="MsoNormal">Caught exception in MyApp::View::JSON-&gt;process &quot;encountered object &#39;MyApp::Model::DB::Table=HASH(0xdb2c330)&#39;, but neither allow_blessed nor convert_blessed settings are enabled at (eval 1606) line 151.&quot;<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p><p class="MsoNormal">Thanks for your help.<u></u><u></u></p><p class="MsoNormal">Roland<u></u><u></u></p><p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p><p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p><p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p><p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p><p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p><p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p><p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p><p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p><p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p><p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p><p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p><p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-GB"> </span><u></u><u></u></p></div></div><pre>Aptina (UK) Limited, Century Court, Millennium Way, Bracknell, Berkshire, RG12 2XT. Registered in England No. 06570543.<u></u><u></u></pre>
<pre> <u></u><u></u></pre><pre>This e-mail and any attachments contain confidential information and are solely for the review and use of the intended recipient. If you have received this e-mail in error, please notify the sender and destroy this e-mail and any copies.<u></u><u></u></pre>
<pre> <u></u><u></u></pre><p class="MsoNormal" style="margin-bottom:12.0pt"><br>_______________________________________________<br>List: <a href="mailto:Catalyst@lists.scsys.co.uk" target="_blank">Catalyst@lists.scsys.co.uk</a><br>
Listinfo: <a href="http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst" target="_blank">http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst</a><br>Searchable archive: <a href="http://www.mail-archive.com/catalyst@lists.scsys.co.uk/" target="_blank">http://www.mail-archive.com/catalyst@lists.scsys.co.uk/</a><br>
Dev site: <a href="http://dev.catalyst.perl.org/" target="_blank">http://dev.catalyst.perl.org/</a><u></u><u></u></p></div><p class="MsoNormal"><br><br clear="all"><u></u><u></u></p><div><p class="MsoNormal"> <u></u><u></u></p>
</div><p class="MsoNormal" style="margin-bottom:12.0pt">-- <br><span style="font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;background:white">&quot;We act as though comfort and luxury were the chief requirements of life, when all that we need to make us happy is something to be enthusiastic about.&quot; -- Albert Einstein</span><u></u><u></u></p>
</div></div></div></div></div><div><div><pre>Aptina (UK) Limited, Century Court, Millennium Way, Bracknell, Berkshire, RG12 2XT. Registered in England No. 06570543.<u></u><u></u></pre><pre><u></u> <u></u></pre><pre>This e-mail and any attachments contain confidential information and are solely for the review and use of the intended recipient. If you have received this e-mail in error, please notify the sender and destroy this e-mail and any copies.<u></u><u></u></pre>
<pre><u></u> <u></u></pre></div></div><p class="MsoNormal" style="margin-bottom:12.0pt"><br>_______________________________________________<br>List: <a href="mailto:Catalyst@lists.scsys.co.uk" target="_blank">Catalyst@lists.scsys.co.uk</a><br>
Listinfo: <a href="http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst" target="_blank">http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst</a><br>Searchable archive: <a href="http://www.mail-archive.com/catalyst@lists.scsys.co.uk/" target="_blank">http://www.mail-archive.com/catalyst@lists.scsys.co.uk/</a><br>
Dev site: <a href="http://dev.catalyst.perl.org/" target="_blank">http://dev.catalyst.perl.org/</a><u></u><u></u></p></div><p class="MsoNormal"><br><br clear="all"><u></u><u></u></p><div><p class="MsoNormal"><u></u> <u></u></p>
</div><p class="MsoNormal" style="margin-bottom:12.0pt">-- <br><span style="font-family:&quot;Verdana&quot;,&quot;sans-serif&quot;;background:white">&quot;We act as though comfort and luxury were the chief requirements of life, when all that we need to make us happy is something to be enthusiastic about.&quot; -- Albert Einstein</span><u></u><u></u></p>
</div></div></div></div></div><div class="HOEnZb"><div class="h5">
<pre>Aptina (UK) Limited, Century Court, Millennium Way, Bracknell, Berkshire, RG12 2XT. Registered in England No. 06570543.

This e-mail and any attachments contain confidential information and are solely for the review and use of the intended recipient. If you have received this e-mail in error, please notify the sender and destroy this e-mail and any copies.

</pre></div></div><br>_______________________________________________<br>
List: <a href="mailto:Catalyst@lists.scsys.co.uk">Catalyst@lists.scsys.co.uk</a><br>
Listinfo: <a href="http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst" target="_blank">http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst</a><br>
Searchable archive: <a href="http://www.mail-archive.com/catalyst@lists.scsys.co.uk/" target="_blank">http://www.mail-archive.com/catalyst@lists.scsys.co.uk/</a><br>
Dev site: <a href="http://dev.catalyst.perl.org/" target="_blank">http://dev.catalyst.perl.org/</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><span style="font-family:verdana;background-color:rgb(255,255,255)">&quot;We act as though comfort and luxury were the chief requirements of life, when all that we need to make us happy is something to be enthusiastic about.&quot; -</span><span style="font-family:verdana;background-color:rgb(255,255,255)">- Albert Einstein</span><br style="font-family:verdana;background-color:rgb(255,255,255)">
<br>
</div>