-% join('', map { "$_=". join(', ', $cgi->param($_)). "\n" } @plandata )
+% join('', map { my $parser = sub { shift };
+% $parser = $href->{$_}{parse} if exists($href->{$_}{parse});
+% my $value = join(', ', &$parser($cgi->param($_)));
+% my $check = $href->{$_}{check};
+% if ( $check && ! &$check($value) ) {
+% $value = join(', ', $cgi->param($_));
+% $error ||= "Illegal ". ($href->{$_}{name}||$_). ": $value";
+% }
+% "$_=$value\n";
+% } @plandata )