[31942] in Perl-Users-Digest

home help back first fref pref prev next nref lref last post

Perl-Users Digest, Issue: 3205 Volume: 11

daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Thu Nov 11 06:10:10 2010

Date: Thu, 11 Nov 2010 03:09:39 -0800 (PST)
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)

Perl-Users Digest           Thu, 11 Nov 2010     Volume: 11 Number: 3205

Today's topics:
    Re: Catalyst with HTML::FormHandler <blaine.w.everingham@gmail.com>
    Re: Foreach <uri@StemSystems.com>
    Re: testing whether a number is an integer <cartercc@gmail.com>
    Re: testing whether a number is an integer sln@netherlands.com
    Re: testing whether a number is an integer <cartercc@gmail.com>
    Re: testing whether a number is an integer sln@netherlands.com
    Re: testing whether a number is an integer <xhoster@gmail.com>
    Re: Using Perl to find what address bar says <jwcarlton@gmail.com>
    Re: Using Perl to find what address bar says <uri@StemSystems.com>
    Re: Using Perl to find what address bar says <tadmc@seesig.invalid>
    Re: Using Perl to find what address bar says <mvdwege@mail.com>
        Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)

----------------------------------------------------------------------

Date: Wed, 10 Nov 2010 13:34:22 -0800 (PST)
From: Akhor <blaine.w.everingham@gmail.com>
Subject: Re: Catalyst with HTML::FormHandler
Message-Id: <28b669f4-7cfc-463d-85f2-8298bfac08ee@j33g2000vbb.googlegroups.com>

On Nov 5, 12:26=A0pm, Sherm Pendley <sherm.pend...@gmail.com> wrote:
> Akhor <blaine.w.evering...@gmail.com> writes:
> > I'm new to Catalyst and and trying to build a simple form.
>
> > In the Catalyst controller Users.pm I've added an 'use
> > MyApp::UserInterface::Form::User', however it can not find this file.
> > Meaning that it's not in the INC path.
>
> > Obviously I could push this directory on to the INC stack, but none of
> > the examples that I've seen have had to do this. What is the proper
> > way to go about this?
>
> > Below is an example of the directory structure.
>
> > MyApp/UserInterface/Controller
> > MyApp/UserInterface/Controller/Admin
> > MyApp/UserInterface/Controller/Admin/Users.pm
> > MyApp/UserInterface/Form
> > MyApp/UserInterface/Form/User.pm
> > MyApp/UserInterface/Model
> > MyApp/UserInterface/Schema
> > MyApp/UserInterface/View
>
> That's a strange directory structure for a Catalyst app. Is your
> Form::User class a Model, a View, or a Controller - and why isn't it
> under one of those directories?
>
> I suspect that Catalyst isn't finding your classes simply because they
> aren't where they're supposed to be. :-(
>
> Did you use the script/myapp_create.pl helper script to create these
> classes? You should, at least while you're getting started.
>
> For a good intro to Catalyst, have a look at:
>
> <http://search.cpan.org/perldoc?Catalyst::Manual::Tutorial::02_Catalys...=
>
>
> sherm--
>
> --
> Sherm Pendley
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0<h=
ttp://camelbones.sourceforge.net>
> Cocoa Developer

I know it seems like a weird structure, due to having the extra
Directory for "Form". However it's all as done as per the
HTML::Formhandler docs.

http://search.cpan.org/~zarquon/Catalyst-Manual-5.8005/lib/Catalyst/Manual/=
Tutorial/09_AdvancedCRUD/09_FormHandler.pod

Anyhow, I just pushed it onto the INC stack and it now works.


------------------------------

Date: Wed, 10 Nov 2010 19:07:55 -0500
From: "Uri Guttman" <uri@StemSystems.com>
Subject: Re: Foreach
Message-Id: <87fwv87mec.fsf@quad.sysarch.com>

>>>>> "R" == Ruud  <rvtol+usenet@xs4all.nl> writes:

  R>   {local($\,$,)=($/)x2;print @ARGV}

  R> also known as

  R>   print join( $/, @ARGV ), $/;

might as well go back to print map "$_$/", @ARGV 

uri

-- 
Uri Guttman  ------  uri@stemsystems.com  --------  http://www.sysarch.com --
-----  Perl Code Review , Architecture, Development, Training, Support ------
---------  Gourmet Hot Cocoa Mix  ----  http://bestfriendscocoa.com ---------


------------------------------

Date: Wed, 10 Nov 2010 13:19:40 -0800 (PST)
From: ccc31807 <cartercc@gmail.com>
Subject: Re: testing whether a number is an integer
Message-Id: <3f7c132d-c436-4b22-b913-12e1f651b378@v20g2000yqb.googlegroups.com>

On Nov 10, 12:46=A0pm, s...@netherlands.com wrote:
> Whatever you are doing to get the courses array populated should
> be valid before population.

I'm not 'doing' anything before populating the array. I'm reading a
file line by line, placing all the singular datums in appropriate
variables ($id, $last, $first, etc.), and whatever is left over I glob
into an array. I don't know how many items remain in the line at this
point -- it could be nothing.

> A clear sign of bad validation or parsing technique is that you
> actually have to do a modulo on the finished array.
> The finished array should be pristeen.

In theory, yes. However, in practice the 'array' is simply a list of
however many datums remain in the line. I guess I could test the line
before parsing to see how many 'items' it contains, but that would
really be an extra step.

> If you have a remainder, the entire array is flawed.
> The place to find flaws is before the array is populated, not after.
> Craft a better parsing strategy.

Such as? Here's my logic. You tell me if you see a better way. Assume
that each line looks like this:
123,Smith,John,Q,ENG-101,BIO-202,ART-303,ABCD,BCDE,CDEF,N,N,X

my %students;
while (<INFILE>)
{
  next unless /\w/;
  chomp;
  my ($id, $last, $first, $middle, @courses) =3D parse_line();
  $students{$id} =3D {
    last =3D> $last,
    first =3D> $first,
    middle =3D> $middle,
  };
  my $number =3D scalar(@courses) / 3;
  my $mod =3D scalar(@courses) % 3;
  unless ($mod =3D=3D 0) { warn "MALFORMED $_\n"; }
  else {
    # munge @courses based on the value of $number
    # construct a $course variable for each section and status
    # then do something like this
    push @{$students{$id}{courses}}, $course;
  }
}

I would like to replace the unless test with something like this:
(is_integer($number)) Ideas?

CC.


------------------------------

Date: Wed, 10 Nov 2010 15:04:00 -0800
From: sln@netherlands.com
Subject: Re: testing whether a number is an integer
Message-Id: <918md6p7cruv6j1fmsbp3s1e4org9sh52q@4ax.com>

On Wed, 10 Nov 2010 13:19:40 -0800 (PST), ccc31807 <cartercc@gmail.com> wrote:

>On Nov 10, 12:46 pm, s...@netherlands.com wrote:
>> Whatever you are doing to get the courses array populated should
>> be valid before population.
>
>I'm not 'doing' anything before populating the array. I'm reading a
>file line by line, placing all the singular datums in appropriate
>variables ($id, $last, $first, etc.), and whatever is left over I glob
>into an array. I don't know how many items remain in the line at this
>point -- it could be nothing.
>
>> A clear sign of bad validation or parsing technique is that you
>> actually have to do a modulo on the finished array.
>> The finished array should be pristeen.
>
>In theory, yes. However, in practice the 'array' is simply a list of
>however many datums remain in the line. I guess I could test the line
>before parsing to see how many 'items' it contains, but that would
>really be an extra step.
>
>> If you have a remainder, the entire array is flawed.
>> The place to find flaws is before the array is populated, not after.
>> Craft a better parsing strategy.
>
>Such as? Here's my logic. You tell me if you see a better way. Assume
>that each line looks like this:
>123,Smith,John,Q,ENG-101,BIO-202,ART-303,ABCD,BCDE,CDEF,N,N,X
>
  ^^^
I'm going to make a guess that this line is generated.
AND that something about the triplet is significant.

Your code does this:

my (whole bunch of scalar variables, @array) = parse_this(
  '123,Smith,John,Q,ENG-101,BIO-202,ART-303,ABCD,BCDE,CDEF,N,N,X'
);

The first 4 fields (?) are '123,Smith,John,Q,'.
If there is no middle name, I asume its this:
  '123,Smith,John,,'.

This:
  'ENG-101,BIO-202,ART-303,'
looks like 3 courses. I guess everybody takes no more
or less than three, therefore 3 everytime.

The next set of 3 is this:
  'ABCD,BCDE,CDEF,'

then this:
 'N,N,X'

The only relationsip, since grouped in 3's, is that
every 3rd one is related.

So:
  ENG-101, ABCD, N
is some kind of a record, with X number of fields all related
and each group of 3 is of the same kind, like this is the same kind:
 ENG-101,BIO-202,ART-303

I would assume that you may be able to identify the type of item
in each group. That goes a long way toward validation.

Otherwise, your in a sea of improbability, where your lone requirement,
that multiple of 3, is just as lost and adrift in the ocean of uncertainty,
as a multiple of 4 or 2 or 1.

-sln


------------------------------

Date: Wed, 10 Nov 2010 16:28:42 -0800 (PST)
From: ccc31807 <cartercc@gmail.com>
Subject: Re: testing whether a number is an integer
Message-Id: <3ea62a70-6918-4584-b29e-cf12eb1896f3@s9g2000vby.googlegroups.com>

On Nov 10, 6:04=A0pm, s...@netherlands.com wrote:
> I'm going to make a guess that this line is generated.
> AND that something about the triplet is significant.

The significance is that the database is a non-first-normal-form
database product named Unidata from IBM, with multi-valued fields, so
that we pull from three fields, courses, sections, and statuses, and
the values in the fields are 'associated', which explained why the
output is in the form that it's in.

> The only relationsip, since grouped in 3's, is that
> every 3rd one is related.

No, no, no! There are three GROUPS of fields, from zero up to a number
close to 9 or 10. In my example, if you divide @courses by 3, what you
get is the number of course sections that the student has enrolled in.
If the student has enrolled in no courses, the size of @courses is 0,
if he has enrolled in 10 courses, the size would be 30.

> So:
> =A0 ENG-101, ABCD, N
> is some kind of a record, with X number of fields all related
> and each group of 3 is of the same kind, like this is the same kind:
> =A0ENG-101,BIO-202,ART-303

Yes, except your loop would do something like this:
for (my i =3D 0; $i < $number; $i++)
{
  my $crs =3D $courses[$i];
  my $sec =3D $courses[$i + $number * 1];
  my $sta =3D $courses[$i + $number * 2];
  my $record =3D sprintf("%s-%s %s", $crs, $sec, $sta);
}

> I would assume that you may be able to identify the type of item
> in each group. That goes a long way toward validation.

I had used a RE to do this, but (as it turns out) there's enough
variation in the record to confuse a RE. Some of the courses look like
sections, and some of the sections look like courses.

> Otherwise, your in a sea of improbability, where your lone requirement,
> that multiple of 3, is just as lost and adrift in the ocean of uncertaint=
y,
> as a multiple of 4 or 2 or 1.

The data is contained in three groups, with each group associated in
order, so for the vast majority of cases using 3 works. The data is
grouped like this:
CRS1,CRS2,CRS3,CRS4,SEC1,SEC2,SEC3,SEC4,STA1,STA2,STA3,STA4
which indicates that the student has exactly four current enrollments.
12 elements divided by 3 groups equals 4 enrollments.

I guess my beef is that Perl lacks this kind of predicate -- but I'm
not really complaining. I just got my copy of 'Land of Lisp' by Conrad
Barski, and I intend to post a new thread on c.l.p.m. about some
things that Barski says about string manipulation. Of all the tools I
could use for my job, Perl without any doubt is the best. But that
doesn't mean that some kinds of predicates Perl lacks could on
occasion be useful.

Thanks, CC.


------------------------------

Date: Wed, 10 Nov 2010 17:25:47 -0800
From: sln@netherlands.com
Subject: Re: testing whether a number is an integer
Message-Id: <gsfmd6l9sfda5d8j31h91ipspn74r8hnul@4ax.com>

On Wed, 10 Nov 2010 16:28:42 -0800 (PST), ccc31807 <cartercc@gmail.com> wrote:

>On Nov 10, 6:04 pm, s...@netherlands.com wrote:
>> I'm going to make a guess that this line is generated.
>> AND that something about the triplet is significant.
>
>The significance is that the database is a non-first-normal-form
>database product named Unidata from IBM, with multi-valued fields, so
>that we pull from three fields, courses, sections, and statuses, and
>the values in the fields are 'associated', which explained why the
>output is in the form that it's in.
>
>> The only relationsip, since grouped in 3's, is that
>> every 3rd one is related.
>
>No, no, no! There are three GROUPS of fields, from zero up to a number
>close to 9 or 10. In my example, if you divide @courses by 3, what you
>get is the number of course sections that the student has enrolled in.
>If the student has enrolled in no courses, the size of @courses is 0,
>if he has enrolled in 10 courses, the size would be 30.
>
>> So:
>>   ENG-101, ABCD, N
>> is some kind of a record, with X number of fields all related
>> and each group of 3 is of the same kind, like this is the same kind:
>>  ENG-101,BIO-202,ART-303
>
>Yes, except your loop would do something like this:
>for (my i = 0; $i < $number; $i++)
>{
>  my $crs = $courses[$i];
>  my $sec = $courses[$i + $number * 1];
>  my $sta = $courses[$i + $number * 2];
>  my $record = sprintf("%s-%s %s", $crs, $sec, $sta);
>}
>
>> I would assume that you may be able to identify the type of item
>> in each group. That goes a long way toward validation.
>
>I had used a RE to do this, but (as it turns out) there's enough
>variation in the record to confuse a RE. Some of the courses look like
>sections, and some of the sections look like courses.
>
>> Otherwise, your in a sea of improbability, where your lone requirement,
>> that multiple of 3, is just as lost and adrift in the ocean of uncertainty,
>> as a multiple of 4 or 2 or 1.
>
>The data is contained in three groups, with each group associated in
>order, so for the vast majority of cases using 3 works. The data is
>grouped like this:
>CRS1,CRS2,CRS3,CRS4,SEC1,SEC2,SEC3,SEC4,STA1,STA2,STA3,STA4
>which indicates that the student has exactly four current enrollments.
>12 elements divided by 3 groups equals 4 enrollments.
>

I see, 3 groups is the constant.
It sounds like your saying:
'I don't know what the codes that a particular group can have are,
and its possible the same codes can be in more than one group.'

This means you are better off dividing by 3 as you do now.
There are criteria you could use in the case of unknown's,
that could get you the form:
 1. number of characters
 2. character class (like [YN])
 3. special punctuation
 4. symetry and order
 5. any/all of the above

This of course, won't validate anything, but it could get
the number (order). But, so does dividing by 3.
In that respect, its a wash, keep what you have.
But be warned, even if its off by 1, the whole array is
invalid and the data can't be munged.

Take a hard look at all the possible data structure of
each individual group. Notice thier obvious differences and
similarities. You do know the group order so that helps a lot.
If you can take the most dissimilar group out of contention,
it will give you the number (order). Then after separating the
remaining 2 groups, start the validation process. Because,
once all the groups are split up, its ok to have similarity
with respect to regular expressions as this is not an issue
at this time. If something doesen't pass within the group,
its now easy to flag its position to some error log. And of course,
continue processing.

-sln


------------------------------

Date: Wed, 10 Nov 2010 18:02:45 -0800
From: Xho Jingleheimerschmidt <xhoster@gmail.com>
Subject: Re: testing whether a number is an integer
Message-Id: <4cdb4d0d$0$18157$ed362ca5@nr5-q3a.newsreader.com>

Jürgen Exner wrote:
> Jürgen Exner <jurgenex@hotmail.com> wrote:
>> "Uri Guttman" <uri@StemSystems.com> wrote:
>>>>>>>> "c" == ccc31807  <cartercc@gmail.com> writes:
>>>  c> This is probably a Dumb Question, but I'll ask it anyway.
>>>  c> I have a number, which I use to validate an array, like this:
>>>  c> $number = scalar($@array) / 3;
>>>  c> If $number is an integer,
>>>  c> the array is perfect and can be processed.
>>>  c> If it isn't, it's malformed and must be written to an error log.
>> Is this a complicated way of testing if the number of elements in @array
>> is a multiple of 3?
>>
>> Then why don't you use the modulo operator?
>> 	print "Not a multiple of 3 elements" if @array % 3;
> 
> Coming to think of it I have a very strong feeling that this is another
> X-Y problem, caused by choosing a poor data structure.

It looks quite the opposite to me.  He is trying to fix a poor data 
structure, by transforming it into a better one.

> 
> If the number of elements in that array must be a multiple of 3 then
> (unless there are some extraordinary circumstances) this implies that
> the data is not a plain list of single elements but it is a list of
> triplets. Had the OP used a proper data structure to represent this
> fact, e.g. an array of triplets(*), then the integrity of his data would
> be ensured by the data structure and we would not have this discussion
> in the first place.

If you magically wish away the problems you are trying to solve, then 
you magically no longer have any problems to solve. Using this 
technique, we can avoid any need (or opportunity) to ever use Perl at 
all.  Simply redefine the problem to exist in some other domain.

Xho


------------------------------

Date: Wed, 10 Nov 2010 19:37:28 -0800 (PST)
From: jwcarlton <jwcarlton@gmail.com>
Subject: Re: Using Perl to find what address bar says
Message-Id: <bc62c9d4-ed2b-48bb-b8e4-102f0442b576@30g2000yql.googlegroups.com>

On Nov 8, 8:39=A0pm, Tad McClellan <ta...@seesig.invalid> wrote:
> Uri Guttman <u...@StemSystems.com> wrote:
> >>>>>> "j" =3D=3D jwcarlton =A0<jwcarl...@gmail.com> writes:
> > =A0j> Unfortunately, Perl is dying a little more every day
> > =A0j> when it comes to web applications.
>
> > this was never anything perl or ANY OTHER LANG could ever do on the
> > server. your lack of understanding of how web apps works is amazing.
>
> Most especially since he once said:
>
> =A0 =A0 I currently own a web design firm with more than 15 employees
>
> Must be lotsa poor folks out there who are forced to rely on the
> level of "expertise" he's displayed herein...
>
> --
> Tad McClellan
> email: perl -le "print scalar reverse qq/moc.liamg\100cm.j.dat/"
> The above message is a Usenet post.
> I don't recall having given anyone permission to use it on a Web site.

Tad & Uri, you guys are painfully presumptuous. And more often than
not, wrong.

I have a very clear understanding of how "web apps work." The question
was simply to ask if you guys knew of a way to do so, since I do not.

The thing is, you guys are under the false impression that you know
everything. You do not. You do not know me, nor do you know my level
of knowledge or expertise. I asked a question. That's all.

Here's a real question for you, Tad. When's the last time you actually
gave a Perl related answer to a question on this newsgroup? I can't
remember seeing one. It makes me wonder just how much you actually
know about the language.

Geez. No wonder this newsgroup is nothing but spam. Oh, well, spam and
assholes.

Don't bother replying. I'm so tired of wasting my time with childish
pricks.


------------------------------

Date: Wed, 10 Nov 2010 23:50:35 -0500
From: "Uri Guttman" <uri@StemSystems.com>
Subject: Re: Using Perl to find what address bar says
Message-Id: <877hgk5uqs.fsf@quad.sysarch.com>

>>>>> "j" == jwcarlton  <jwcarlton@gmail.com> writes:

  j> Tad & Uri, you guys are painfully presumptuous. And more often than
  j> not, wrong.

considering that tad and i have both done professional perl training, me
thinks you are a bit off base.

  j> I have a very clear understanding of how "web apps work." The question
  j> was simply to ask if you guys knew of a way to do so, since I do not.

if you knew about web apps, you wouldn't have asked such a silly
question. the simple case of a non-browser accessing your app makes your
concept null and void. the news for you is there ain't no url bar in
those programs! the bigger news is that http doesn't support anything
like the server asking the browser for info. the conclusion is that you
don't know how http works. this makes us correct. sherlock would be proud!

  j> The thing is, you guys are under the false impression that you know
  j> everything. You do not. You do not know me, nor do you know my level
  j> of knowledge or expertise. I asked a question. That's all.

we don't know everything. we do know enough about http and perl and web
apps to know your question was wacko. and then to claim you run a web
app team and still didn't know that, was icing on the cake.

  j> Here's a real question for you, Tad. When's the last time you actually
  j> gave a Perl related answer to a question on this newsgroup? I can't
  j> remember seeing one. It makes me wonder just how much you actually
  j> know about the language.

  j> Geez. No wonder this newsgroup is nothing but spam. Oh, well, spam and
  j> assholes.

i know you aren't a spammer. so you must be the other choice! btw, there
is actuallly little spam here. usenet does a decent job of deleting spam.

  j> Don't bother replying. I'm so tired of wasting my time with childish
  j> pricks.

then stop playing with yourself!

(like dynamiting fish in a barrel! :)

please do come back for more tutoring on web apps.

uri

-- 
Uri Guttman  ------  uri@stemsystems.com  --------  http://www.sysarch.com --
-----  Perl Code Review , Architecture, Development, Training, Support ------
---------  Gourmet Hot Cocoa Mix  ----  http://bestfriendscocoa.com ---------


------------------------------

Date: Wed, 10 Nov 2010 23:20:07 -0600
From: Tad McClellan <tadmc@seesig.invalid>
Subject: Re: Using Perl to find what address bar says
Message-Id: <slrnidmvmo.i52.tadmc@tadbox.sbcglobal.net>

jwcarlton <jwcarlton@gmail.com> wrote:

> I have a very clear understanding of how "web apps work." 


Since you asked the question you asked, you have demonstrated
that you do NOT know how web apps work.


> The thing is, you guys are under the false impression that you know
> everything. 


We don't know everything, but we do know how web apps work.


> You do not know me, nor do you know my level
> of knowledge or expertise. 


We know what you have shown us.


> I asked a question. 


And that question revealed that you do not have a correct mental
model of how web apps work.


> Geez. No wonder this newsgroup is nothing but spam. Oh, well, spam and
> assholes.


The village called.

They are missing their idiot.


-- 
Tad McClellan
email: perl -le "print scalar reverse qq/moc.liamg\100cm.j.dat/"
The above message is a Usenet post.
I don't recall having given anyone permission to use it on a Web site.


------------------------------

Date: Thu, 11 Nov 2010 09:46:06 +0100
From: Mart van de Wege <mvdwege@mail.com>
Subject: Re: Using Perl to find what address bar says
Message-Id: <86sjz8tfht.fsf@gareth.avalon.lan>

jwcarlton <jwcarlton@gmail.com> writes:

> On Nov 8, 8:39 pm, Tad McClellan <ta...@seesig.invalid> wrote:
>> Uri Guttman <u...@StemSystems.com> wrote:
>> >>>>>> "j" == jwcarlton  <jwcarl...@gmail.com> writes:
>> >  j> Unfortunately, Perl is dying a little more every day
>> >  j> when it comes to web applications.
>>
>> > this was never anything perl or ANY OTHER LANG could ever do on the
>> > server. your lack of understanding of how web apps works is amazing.
>>
>> Most especially since he once said:
>>
>>     I currently own a web design firm with more than 15 employees
>>
>> Must be lotsa poor folks out there who are forced to rely on the
>> level of "expertise" he's displayed herein...
>
> Tad & Uri, you guys are painfully presumptuous. And more often than
> not, wrong.
>
> I have a very clear understanding of how "web apps work." 

No you don't.

You *cannot*, by definition, know what happens on the client. Not even
with client-side scripting. You have to trust the client for that.

Mart

-- 
"We will need a longer wall when the revolution comes."
    --- AJS, quoting an uncertain source.


------------------------------

Date: 6 Apr 2001 21:33:47 GMT (Last modified)
From: Perl-Users-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin) 
Subject: Digest Administrivia (Last modified: 6 Apr 01)
Message-Id: <null>


Administrivia:

To submit articles to comp.lang.perl.announce, send your article to
clpa@perl.com.

Back issues are available via anonymous ftp from
ftp://cil-www.oce.orst.edu/pub/perl/old-digests. 

#For other requests pertaining to the digest, send mail to
#perl-users-request@ruby.oce.orst.edu. Do not waste your time or mine
#sending perl questions to the -request address, I don't have time to
#answer them even if I did know the answer.


------------------------------
End of Perl-Users Digest V11 Issue 3205
***************************************


home help back first fref pref prev next nref lref last post