File Coverage

lib/Egg/Helper/Build/Project.pm
Criterion Covered Total %
statement 6 31 19.3
branch 0 14 0.0
condition 0 8 0.0
subroutine 2 5 40.0
pod n/a
total 8 58 13.7


line stmt bran cond sub pod time code
1             package Egg::Helper::Build::Project;
2             #
3             # Masatoshi Mizuno E<lt>lusheE<64>cpan.orgE<gt>
4             #
5             # $Id: Project.pm 337 2008-05-14 12:30:09Z lushe $
6             #
7 1     1   795 use strict;
  1         3  
  1         44  
8 1     1   7 use warnings;
  1         2  
  1         661  
9              
10             our $VERSION= '3.04';
11              
12             sub _start_helper {
13 0     0     my($self)= @_;
14              
15 0   0       my $project_name= shift(@ARGV)
16             || return $self->_helper_help(' I want project name. ');
17              
18 0           my $o= $self->_helper_get_options;
19 0 0         $o->{help} and return $self->_helper_help;
20              
21 0 0         $project_name=~m{^[A-Z][A-Za-z0-9_]+$}
22             || return $self->_helper_help(' Bad format of project name. ');
23              
24 0   0       my $version= $o->{version} || '0.01';
25 0 0         $version=~m{^\d+\.\d\d+}
26             || return $self->_helper_help(' Bad format of version number. ');
27              
28 0           my $c= $self->config;
29 0           $c->{project_name}= $project_name;
30 0   0       $c->{root} = $o->{output_path} || '.';
31 0           $c->{root}.= "/${project_name}";
32 0 0         -e $c->{root}
33             and return $self->_helper_help(qq{'$c->{root}' already exists.});
34 0           my $files= [$self->helper_yaml_load(join '', <DATA>)];
35 0           my $param= $self->helper_prepare_param({ module_version => $version });
36 0           $self->helper_chdir($c->{root}, 1);
37 0           $param->{project_root}= $self->helper_current_dir;
38 0 0         $self->helper_generate_files(
39             param => $param,
40             create_files => $files,
41             create_dirs => [qw/ bin root comp etc t htdocs cache tmp /],
42             makemaker_ok => ($o->{unmake} ? 0: 1),
43             errors => { rmdir=> [$c->{root}] },
44             complete_msg => "Project generate is completed.\n\n"
45             . "output path : $c->{root}",
46             );
47              
48 0 0         if (my $test= $self->config->{helper_option}{test_code}) {
49 0           $test->($self, $param, $files);
50             }
51 0           $self;
52             }
53             sub _helper_get_options {
54 0     0     shift->next::method(' v-version= m-unmake ');
55             }
56             sub _helper_help {
57 0     0     my $self= shift;
58 0   0       my $msg = shift || "";
59 0 0         $msg= "ERROR: ${msg}\n\n" if $msg;
60 0           print <<END_HELP;
61             ${msg}% perl egg_helper.pl project [NEW_PROJECT_NAME] [-o OUTPUT_PATH]
62              
63             END_HELP
64             }
65              
66             1;
67              
68             =head1 NAME
69              
70             Egg::Helper::Build::Project - Helper to generate project.
71              
72             =head1 SYNOPSIS
73              
74             % egg_helper.pl project MyApp -o /path/to
75              
76             =head1 DESCRIPTION
77              
78             It is a helper to generate the project.
79              
80             First of all, please generate the helper script to use it.
81              
82             The method of generating the helper script is in the document of L<Egg>.
83              
84             The mode and the made project name are passed to the generated helper script and
85             it starts.
86              
87             % egg_helper.pl project [PROJECT_NAME]
88              
89             PROJECT_NAME is made for the current directory by this, and the file complete set
90             is generated in that.
91              
92             PROJECT_NAME specifies the name that can be used as a module name of Perl.
93             Moreover, the form of the subclass including ':' is not accepted.
94              
95             =head1 SEE ALSO
96              
97             L<Egg::Release>,
98             L<Egg::Helper>,
99              
100             =head1 AUTHOR
101              
102             Masatoshi Mizuno E<lt>lusheE<64>cpan.orgE<gt>
103              
104             =head1 COPYRIGHT AND LICENSE
105              
106             Copyright (C) 2008 Bee Flag, Corp. E<lt>L<http://egg.bomcity.com/>E<gt>.
107              
108             This library is free software; you can redistribute it and/or modify
109             it under the same terms as Perl itself, either Perl version 5.8.6 or,
110             at your option, any later version of Perl 5 you may have available.
111              
112             =cut
113              
114              
115             __DATA__
116             ---
117             filename: lib/<e.project_name>.pm
118             filetype: module
119             value: |
120             package <e.project_name>;
121             #
122             # <e.revision>
123             #
124             # This is controller.
125             #
126             use strict;
127             use warnings;<e.egg_inc>
128             use Egg qw/
129             -Debug
130             ConfigLoader
131             /;
132            
133             our $VERSION= '<e.module_version>';
134            
135             __PACKAGE__->egg_startup;
136            
137             1;
138            
139             __END__
140            
141             < $e.document >
142             ---
143             filename: lib/<e.project_name>/Dispatch.pm
144             filetype: module
145             value: |
146             package <e.project_name>::Dispatch;
147             #
148             # < e.revision >
149             #
150             # This is dispatch.
151             #
152             use strict;
153             use warnings;<e.egg_inc>
154             use base qw/ Egg::Dispatch::Standard /;
155            
156             our $VERSION= '0.01';
157            
158             <e.project_name>->dispatch_map(
159            
160             _default => sub {
161             my($e, $dispatch)= @_;
162             require Egg::Util::BlankPage;
163             $e->response->body( Egg::Util::BlankPage->out($e) );
164             },
165            
166             # _default => sub {},
167             # sitemap => sub {},
168             # contact => sub {},
169             # help => {
170             # _default=> sub {},
171             # },
172            
173             );
174            
175             1;
176            
177             __END__
178            
179             <e.document>
180             ---
181             filename: lib/<e.project_name>/config.pm
182             filetype: module
183             value: |
184             package <e.project_name>::config;
185             #
186             # <e.revision>
187             #
188             use strict;
189             use warnings;
190            
191             sub out { {
192            
193             # Project Title.
194             title=> '< e.project_name >',
195            
196             # Project root directory. (Absolutely path only)
197             root => '< e.project_root >',
198            
199             # Directory configuration.
200             static_uri=> '/',
201            
202             dir => {
203             lib => '\<e.root>/lib',
204             htdocs => '\<e.root>/htdocs',
205             etc => '\<e.root>/etc',
206             cache => '\<e.root>/cache',
207             tmp => '\<e.root>/tmp',
208             template => '\<e.root>/root',
209             comp => '\<e.root>/comp',
210             },
211            
212             # Character code for processing.
213             # character_in => 'euc', # euc or sjis or utf8
214             # disable_encode_query => 0,
215            
216             # Template.
217             # template_default_name => 'index',
218             # template_extension => '.tt',
219             template_path=> [qw/ \<e.dir.template> \<e.dir.comp> /],
220            
221             # Default content type and language.
222             # charset_out => 'euc-jp',
223             # content_type => 'text/html',
224             # content_language => 'ja',
225            
226             # Regular expression of Content-Type that doesn't send Content-Length.
227             # no_content_length_regex => qr{(?:^text/|/(?:rss\+)?xml)},
228            
229             # Upper bound of request directory hierarchy.
230             # max_snip_deep => 10,
231            
232             # Regular expression in part that wants to be erased from Request PATH always.
233             # request_path_trim => qr{^/?speedy\.cgi},
234            
235             # Accessor to stash. * Do not overwrite a regular method.
236             # accessor_names => [qw/hoge/],
237            
238             # Cookie default setup.
239             # cookie_default => {
240             # domain => 'mydomain',
241             # path => '/',
242             # expires => 0,
243             # secure => 0,
244             # },
245            
246             # MODEL => [
247             # [ DBI => {
248             # dsn => 'dbi:SQLite;dbname=\<e.dir.etc>/<e.lc_project_name>.db',
249             # user => '',
250             # password => '',
251             # options => { AutoCommit=> 1, RaiseError=> 0 },
252             # } ],
253             # ],
254            
255             # VIEW => [
256             # [ Mason => {
257             # comp_root=> [
258             # [ main => '\<e.dir.template>' ],
259             # [ private=> '\<e.dir.comp>' ],
260             # ],
261             # data_dir=> '\<e.dir.tmp>',
262             # } ],
263             # [ HT => {
264             # path=> ['\<e.dir.template>', '\<e.dir.comp>'],
265             # global_vars=> 1,
266             # die_on_bad_params=> 0,
267             # # cache=> 1,
268             # } ],
269             # ],
270            
271             # request => {
272             # DISABLE_UPLOADS => 0,
273             # TEMP_DIR => '\<e.dir.tmp>',
274             # POST_MAX => 10240,
275             # },
276            
277             # * For ErrorDocument plugin.
278             # plugin_error_document=> {
279             # view_name => 'Mason',
280             # template => 'error/document.tt',
281             # },
282            
283             # * For FillInForm plugin.
284             # plugin_fillinform=> {
285             # ignore_fields => [qw{ ticket }],
286             # fill_password => 0,
287             # },
288            
289             } }
290            
291             1;
292             ---
293             filename: Makefile.PL
294             filetype: text
295             value: |
296             use inc::Module::Install;
297            
298             name '<e.project_name>';
299             all_from 'lib/<e.project_name>.pm';
300             abstract_from 'lib/<e.project_name>.pm';
301             version_from 'lib/<e.project_name>.pm';
302             author '<e.author>';
303             license '<e.license>';
304            
305             requires 'Egg::Release' => <e.egg_release_version>;
306            
307             build_requires 'Test::More' => 0;
308             build_requires 'Test::Pod' => 0;
309             # build_requires 'Test::Perl::Critic => 0;
310             # build_requires 'Test::Pod::Coverage => 0;
311            
312             use_test_base;
313             auto_include;
314             WriteAll;
315             ---
316             filename: bin/trigger.cgi
317             filetype: script
318             value: |
319             #!<e.perl_path>
320             package <e.project_name>::trigger;
321             # use FindBin;
322             # use lib "$FindBin::Bin/../lib";
323             use lib qw{ <e.project_root>/lib };
324             use <e.project_name>;
325            
326             <e.project_name>->handler;
327            
328             ---
329             filename: bin/dispatch.fcgi
330             filetype: script
331             value: |
332             #!<e.perl_path>
333             package EggRelease::trigger;
334             BEGIN {
335             $ENV{<e.uc_project_name>_REQUEST_CLASS} ||= 'Egg::Request::FastCGI';
336             # $ENV{<e.uc_project_name>_FCGI_LIFE_COUNT} = 0;
337             # $ENV{<e.uc_project_name>_FCGI_LIFE_TIME} = 0;
338             # $ENV{<e.uc_project_name>_FCGI_REBOOT} = 0;
339             };
340             use FindBin;
341             use lib "$FindBin::Bin/../lib";
342             use <e.project_name>;
343            
344             <e.project_name>->handler;
345            
346             ---
347             filename: bin/speedy.cgi
348             filetype: script
349             value: |
350             #!/usr/bin/perperl
351             package <e.project_name>::trigger;
352             # use FindBin;
353             # use lib "$FindBin::Bin/../lib";
354             use lib qw{ <e.project_root>/lib };
355             use <e.project_name>;
356            
357             <e.project_name>->handler;
358            
359             ---
360             filename: bin/<e.lc_project_name>_helper.pl
361             filetype: script
362             value: |
363             #!<e.perl_path>
364             use FindBin;
365             use lib "$FindBin::Bin/../lib";
366             use Egg::Helper;
367            
368             Egg::Helper->run( shift(@ARGV), {
369             project_name_orign => '<e.project_name>',
370             project_root => '<e.project_root>',
371             } );
372            
373             ---
374             filename: bin/<e.lc_project_name>_tester.pl
375             filetype: script
376             value: |
377             #!<e.perl_path>
378             use FindBin;
379             use lib "$FindBin::Bin/../lib";
380             use Egg::Helper;
381            
382             Egg::Helper->run(
383             'Util::Tester',
384             project_name_orign => '<e.project_name>',
385             project_root => '<e.project_root>',
386             );
387            
388             ---
389             filename: etc/mod_perl2.conf.example
390             filetype: text
391             value: |
392             LoadModule perl_module modules/mod_perl.so
393            
394             <VirtualHost *:80>
395             ServerName hostname.example.com
396             DocumentRoot <e.project_root>/htdocs
397            
398             PerlOptions +Parent
399             PerlSwitches -I<e.dir.lib>
400             PerlModule mod_perl2
401             PerlModule <e.project_name>
402            
403             <LocationMatch "^/([^\.]+)?$">
404             SetHandler perl-script
405             PerlHandler <e.project_name>
406             </LocationMatch>
407            
408             </VirtualHost>
409             #
410             # When proxy such as Pound is put on frontend, it is likely to need it.
411             #
412             # * The reference ahead. -> http://stderr.net/apache/rpaf/
413             #
414             # LoadModule rpaf_module modules/mod_rpaf-X.X.so
415             # RPAFenable On
416             # RPAFsethostname Off
417             # RPAFproxy_ips 255.255.255.255
418            
419             ---
420             filename: etc/lighttpd+fastcgi.conf.example
421             filetype: text
422             value: |
423             $HTTP["host"] == "mydomain.name" {
424             # $HTTP["remoteip"] !~ "^255\.255\.255\.0$" {
425             # url.access-deny = ("")
426             # }
427             server.document-root = "<e.project_root>/htdocs"
428             url.rewrite-once = (
429             "^/([^\.]+)?([\?\#].*)?$" => "/dispatch.fcgi/$1$2",
430             )
431             fastcgi.server = ( "/dispatch.fcgi" => ((
432             "socket" => "<e.project_root>/tmp/fcgi.socket",
433             "bin-path" => "<e.project_root>/htdocs/dispatch.fcgi",
434             "max-procs" => 1,
435             # "idle-timeout" => 10
436             ))
437             )
438             }
439            
440             ---
441             filename: t/00_<e.project_name>.t
442             filetype: text
443             value: |
444             use Test::More tests => 1;
445             use FindBin;
446             use lib (
447             "$FindBin::Bin/lib",
448             "$FindBin::Bin/../lib",
449             "$FindBin::Bin/../../lib",
450             );
451             BEGIN { use_ok('<e.project_name>') };
452            
453             ---
454             filename: t/01_< $e.project_name >-config.t
455             filetype: text
456             value: |
457             use Test::More tests => 1;
458             use FindBin;
459             use lib (
460             "$FindBin::Bin/lib",
461             "$FindBin::Bin/../lib",
462             "$FindBin::Bin/../../lib",
463             );
464             BEGIN { use_ok('<e.project_name>::config') };
465            
466             ---
467             filename: t/02_<e.project_name>-dispatch.t
468             filetype: text
469             value: |
470             use Test::More tests => 12;
471             use FindBin;
472             use lib (
473             "$FindBin::Bin/lib",
474             "$FindBin::Bin/../lib",
475             "$FindBin::Bin/../../lib",
476             );
477             use <e.project_name>;
478            
479             ok my $e= <e.project_name>->new;
480             isa_ok $e, 'Egg';
481             isa_ok $e, 'Egg::Request';
482             isa_ok $e, 'Egg::Response';
483             isa_ok $e, 'Egg::Util';
484             isa_ok $e, 'Egg::Manager::Model';
485             isa_ok $e, 'Egg::Manager::View';
486             isa_ok $e, 'Egg::Component';
487             isa_ok $e, '<e.project_name>::Dispatch';
488            
489             can_ok $e, 'dispatch_map';
490             isa_ok $e->dispatch_map, 'HASH';
491             isa_ok $e->dispatch_map->{_default}, 'CODE';
492            
493             ---
494             filename: t/89_pod.t~
495             filetype: text
496             value: |
497             use Test::More;
498             eval "use Test::Pod 1.00";
499             plan skip_all => "Test::Pod 1.00 required for testing POD" if $@;
500             all_pod_files_ok();
501             ---
502             filename: t/98_perlcritic.t~
503             filetype: text
504             value: |
505             use strict;
506             use Test::More;
507             eval q{ use Test::Perl::Critic };
508             plan skip_all => "Test::Perl::Critic is not installed." if $@;
509             all_critic_ok("lib");
510             #
511             # Please install Test::Perl::Critic to do this test effectively.
512             # - perl -MCPAN -e "install Test::Perl::Critic"
513             #
514             ---
515             filename: t/99_pod_coverage.t~
516             filetype: text
517             value: |
518             use Test::More;
519             eval "use Test::Pod::Coverage 1.00";
520             plan skip_all => "Test::Pod::Coverage 1.00 required for testing POD coverage" if $@;
521             all_pod_coverage_ok();
522             ---
523             filename: Changes
524             filetype: text
525             value: |
526             Revision history for Perl extension <e.project_name>.
527            
528             <e.module_version> <e.gmtime_string>
529             - original version; created by <e.created>
530             with module name <e.project_name>.
531             ---
532             filename: README
533             filetype: text
534             value: |
535             <e.project_name>.
536             =================================================
537            
538             The README is used to introduce the module and provide instructions on
539             how to install the module, any machine dependencies it may have (for
540             example C compilers and installed libraries) and any other information
541             that should be provided before the module is installed.
542            
543             A README file is required for CPAN modules since CPAN extracts the
544             README file from a module distribution so that people browsing the
545             archive can use it get an idea of the modules uses. It is usually a
546             good idea to provide version information here so that people can
547             decide whether fixes for the module are worth downloading.
548            
549             INSTALLATION
550            
551             To install this module type the following:
552            
553             perl Makefile.PL
554             make
555             make test
556             make install
557            
558             AUTHOR
559            
560             <e.author>
561            
562             COPYRIGHT AND LICENCE
563            
564             Put the correct copyright and licence information here.
565            
566             Copyright (C) <e.year> by <e.copyright>.
567            
568             This library is free software; you can redistribute it and/or modify
569             it under the same terms as Perl itself, either Perl version <e.perl_version> or,
570             at your option, any later version of Perl 5 you may have available.
571             ---
572             filename: MANIFEST.SKIP
573             filetype: text
574             value: |
575             \bRCS\b
576             \bCVS\b
577             ^MANIFEST\.
578             ^MakeMaker-\d
579             ^Makefile$
580             ^_build/
581             ^blib/
582             ^pm_to_blib
583             ^t/9\d+_.*\.t
584             Build$
585             \.cvsignore
586             \.?svn*
587             ^\%
588             ^(bin|etc)/
589             (~|\-|\.(old|save|back))$
590             ---
591             filename: htdocs/css/index.css
592             filetype: text
593             value: |
594             body {
595             margin:0px;
596             background:#AAA;
597             font:normal 12pt sans-serif;
598             color:#000;
599             text-align:center;
600             }
601             a { color:#05F }
602             img { border:0px }
603            
604             /* ---------------------------------------------- */
605             h1, h2, h3 {
606             margin: 5px;
607             font: bold 25px Times,sans-serif;
608             text-decoration: underline;
609             }
610             h2, h3 { font-size: 14px }
611             h3 { margin-top: 0px }
612             pre {
613             margin: 2px 10px 5px 0px;
614             padding: 10px;
615             background: #FFF7E5;
616             font: normal 12px sans-serif;
617             border: #C99158 solid 1px;
618             }
619             /* ---------------------------------------------- */
620            
621             #container {
622             width:780px;
623             padding:0px;
624             margin:0px auto 0px auto;
625             background:#EB0;
626             border:#000 solid 2px;
627             }
628             #header {
629             text-align:left;
630             height:73px;
631             border-bottom:#000 solid 2px;
632             background:#FD0;
633             }
634             #header .logo {
635             float:left;
636             }
637             #header .descript {
638             padding:20px;
639             height:73px;
640             border-left:#000 solid 2px;
641             }
642             #content {
643             padding:10px;
644             width:522px;
645             float:right;
646             border:#000 solid 2px;
647             border-top:0px;
648             border-right:0px;
649             background:#FFF;
650             text-align:left;
651             }
652             #side_content {
653             width:234px;
654             float:left;
655             }
656             #menu a {
657             display:block;
658             border-bottom:#740 solid 1px;
659             text-decoration:none;
660             color:#333;
661             }
662             #menu a:hover {
663             color:#000;
664             background:#FC0;
665             }
666             #footer {
667             clear:both;
668             padding:1px 3px 3px 3px;
669             font-size:8pt;
670             }
671             #footer a {
672             text-decoration:none;
673             color:#555;
674             }
675             #footer a:hover {
676             text-decoration:underline;
677             color:#000;
678             }
679             #copyright {
680             font:italic 10pt Times;
681             color:#555;
682             }
683             ---
684             filename: comp/html-header.tt
685             filetype: text
686             value: |
687             <%init>
688             my $lang= $e->response->content_language;
689             </%init>
690             <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
691             "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
692             <html xmlns="http://www.w3.org/1999/xhtml" lang="<% $lang %>">
693             <head>
694             <meta http-equiv="Content-Language" content="<% $lang %>" />
695             <meta http-equiv="Content-Type" content="<% $e->response->content_type %>" />
696             <title><% $e->page_title %></title>
697             <meta http-equiv="Content-Style-Type" content="text/css" />
698             <link rel="stylesheet" type="text/css" href="/css/index.css" />
699             %
700             % if ($s->{load_prototype}) {
701             <script type="text/javascript" src="/js/prototype.js"></script>
702             % } # $s->{load_prototype} end.
703             %
704             % if ($s->{javascript}) {
705             <script type="text/javascript><!-- //
706             <% $s->{javascript} %>
707             // --></script>
708             % } # $s->{javascript} end.
709             %
710             <% $s->{extend_header} %>
711             </head>
712             ---
713             filename: comp/body-header.tt
714             filetype: text
715             value: |
716             <body>
717             <div id="container">
718             <div id="header">
719             <a href="/" class="logo"><img src="/images/egg_logo.gif"></a>
720             <div class="descript">
721             The content of site is described.
722             </div><!-- descript end. -->
723             </div><!-- header end. -->
724             ---
725             filename: comp/body-side.tt
726             filetype: text
727             value: |
728             <div id="side_content">
729             <div id="menu">
730             <a href="/">Home</a>
731             <a href="/sitemap">Site map</a>
732             <a href="/contact">Contact</a>
733             <a href="/help">Help</a>
734             <!--
735            
736             Other menu links.
737            
738             -->
739             </div><!-- menu end. -->
740             <% $s->{side_content} %>
741             </div><!-- side_content end. -->
742             ---
743             filename: comp/body-footer.tt
744             filetype: text
745             value: |
746             <div id="footer">
747             <% $s->{footer_content_left} %>
748             <a href="/">Home</a>
749             &nbsp; | &nbsp;
750             <a href="/Contact">Contact</a>
751             &nbsp; | &nbsp;
752             <a href="/sitemap">Site map</a>
753             &nbsp; | &nbsp;
754             <a href="/help">Help</a>
755             <% $s->{footer_content_right} %>
756             </div>
757             </div><!-- container end. -->
758             <div id="copyright">Copyright (C) <% $e->page_title %>.</div>
759             ---
760             filename: comp/html-footer.tt
761             filetype: text
762             value: |
763             </html>
764             ---
765             filename: root/index.tt
766             filetype: text
767             value: |
768             <%init>
769             require Egg::Release;
770             $s->{egg_version} = Egg::Release->VERSION;
771             $s->{example_code} = $e->dispatch->_example_code;
772             $s->{dispatch_class}= ref($e->dispatch);
773             $s->{dispatch_class}=~s{\::handler$} [];
774             $s->{side_content}= <<END_CONTENT;
775             <ul>
776             <li><a target="_blank" href="http://search.cpan.org/dist/Egg-Release/">Refer to CPAN.</a></li>
777             <li><a target="_blank" href="$Egg::Release::DISTURL">Original distribution.</a></li>
778             </ul>
779             <img src="/images/egg224x33.gif" width="224" height="33" />
780             END_CONTENT
781             $s->{footer_content_left}= <<END_CONTENT;
782             <img src="/images/egg80x15.gif" width="80" height="15" style="float:right" />
783             END_CONTENT
784             </%init>
785             %
786             <& /html-header.tt &>
787             <& /body-header.tt &>
788             <style type="text/css">
789             div.pathinfo {
790             background: #FFF7E9;
791             margin:2px 25px 2px 10px;
792             padding:2px 2px 2px 7px;
793             font-size:14px;
794             border:#FF8F00 solid 2px;
795             }
796             ul {
797             margin: 10px 2px 10px 30px;
798             text-align:left;
799             font:normal 10pt Times;
800             }
801             ul a { color:#000 }
802             </style>
803             <div id="content">
804            
805             <h1>&nbsp; BLANK PAGE &nbsp;</h1>
806            
807             <p>
808             <h2>Project name and version - <% $e->project_name %> - <% $e->VERSION || '0.01' %></h2>
809             <div class="pathinfo">Request PATH: &nbsp; <b><% $e->request->path %></b></div>
810             </p>
811            
812             <h3>Example of dispatch code. &nbsp; for <% $s->{dispatch_class} %>.</h3>
813             <pre><% $s->{example_code} %></pre>
814            
815             </div><!-- content end. -->
816             <& /body-side.tt &>
817             <& /body-footer.tt &>
818             <& /html-footer.tt &>
819             ---
820             filename: root/sitemap.tt
821             filetype: text
822             value: |
823             <%init>
824             $e->res->is_expires('+1d');
825             $e->res->last_modified('+1d');
826             </%init>
827             %
828             <& /html-header.tt &>
829             <& /body-header.tt &>
830             <div id="content">
831            
832             <h1>&nbsp; Example of site map &nbsp;</h1>
833            
834             <ul>
835             <li><a href="/">Home</a></li>
836             <li><a href="/contact">Contact</a></li>
837             <li><a href="/help">Help</a>
838             <ul>
839             <li>Hoge</li>
840             <li>Fooo</li>
841             </ul>
842             </li>
843             </ul>
844            
845             </div><!-- content end. -->
846             <& /body-side.tt &>
847             <& /body-footer.tt &>
848             <& /html-footer.tt &>
849             ---
850             filename: root/contact.tt
851             filetype: text
852             value: |
853             <%init>
854             # ------------------------------------------------
855             my $subject= 'Inquiry';
856             my $to_addr= 'to_addr@mydomain.com';
857             # ------------------------------------------------
858             $e->response->no_cache(1);
859             my $check= sub {
860             #
861             # > If you load 'Egg::Plugin::Net::Scan'.
862             # my $scan= $e->port_scan(qw/ localhost 25 /);
863             # return 0 if $scan->is_success;
864             # $s->{complete}= "The mail server is stopping now.";
865             #
866             };
867             my $exec= sub {
868             return 0;
869             #
870             # > If you load 'Egg::Plugin::Tools'.
871             # $e->referer_check(1) || return 0;
872             #
873             # > If you load 'Egg::Plugin::SessionKit'.
874             # $e->ticket_check || return 0;
875             #
876             my $pm= $e->request->params;
877             $pm->{nickname} ||= 'N/A';
878             $pm->{email} ||= 'none@localhost';
879             $pm->{mailbody} ||= 'N/A';
880             #
881             # > If you load 'Egg::Plugin::MailSend'.
882             # $e->mail->send(
883             # to=> $to_addr, from=> $pm->{email},
884             # subject => $subject, body=> <<END_MAILBODY
885             # );
886             # Email : $pm->{email}
887             # NickName : $pm->{nickname}
888             # $pm->{mailbody}
889             #END_MAILBODY
890             #
891             $s->{complete}= 'Mail was transmitted.';
892             };
893             my $form= sub {
894             #
895             # > If you load 'Egg::Plugin::SessionKit'.
896             # $e->request->param( ticket=> $e->ticket_id(1) );
897             #
898             # > If you load 'Egg::Plugin::FillInForm'.
899             # $e->fillin_ok(1);
900             #
901             };
902             $check->() || $exec->() || $form->();
903             </%init>
904             %
905             <& /html-header.tt &>
906             <& /body-header.tt &>
907             <div id="content">
908            
909             <h1>&nbsp; Example of Contact &nbsp;</h1>
910            
911             % if ($s->{complete}) {
912             %
913             <h2><% $s->{complete} %></h2>
914             %
915             % } else {
916             %
917             <form method="POST" action="<% $e->request->path %>">
918             <input type="hidden" name="ticket" />
919            
920             <h2>Your name.</h2>
921             <input type="text" name="nickname" id="nickname" maxlength="100" style="width:80%" />
922             <h2>Your Email address.</h2>
923             <input type="text" name="email" id="email" maxlength="100" style="width:80%" />
924             <h2>Mail content</h2>
925             <textarea name="mailbody" id="mailbody" style="width:80%;height:100px"></textarea>
926             <p><input type="submit" value="Contact" /></p>
927             </form>
928             %
929             % } # $s->{complete} end.
930             %
931             </div><!-- content end. -->
932             <& /body-side.tt &>
933             <& /body-footer.tt &>
934             <& /html-footer.tt &>
935             ---
936             filename: root/help/index.tt
937             filetype: text
938             value: |
939             <%init>
940             $e->res->is_expires('+1d');
941             $e->res->last_modified('+1d');
942             </%init>
943             %
944             <& /html-header.tt &>
945             <& /body-header.tt &>
946             <div id="content">
947            
948             <h1>&nbsp; Example of Help page &nbsp;</h1>
949            
950             <ul>
951             <li><a href="/help">Help</a>
952             <ul>
953             <li>Hoge</li>
954             <li>Fooo</li>
955             </ul>
956             </li>
957             </ul>
958            
959             </div><!-- content end. -->
960             <& /body-side.tt &>
961             <& /body-footer.tt &>
962             <& /html-footer.tt &>
963             ---
964             filename: htdocs/favicon.ico
965             filetype: bin
966             value: |
967             iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAMFBMVEX///+BgYGRkZFkZGRERESq
968             qqqbm5vq6urm5eXf39/T09P4+Pi2trbIyMgeHh4AAADzKT/kAAAAYUlEQVQImWNgwAsYhZQdQDRr
969             ekfnYhBDYvdu7jlAIebbQA73AwYGW5BoxwcGBp8CBgaO+wsYGJ6u6Ojozb/AwHA/t+Na/p8NDAyt
970             39Ly/54GquM6//9XFNjgVRWrNmCzEADJgh27oQZ5dwAAAABJRU5ErkJggg==
971             ---
972             filename: htdocs/images/egg_logo.png
973             filetype: bin
974             value: |
975             iVBORw0KGgoAAAANSUhEUgAAAOwAAABJCAMAAAAJ3Dp7AAAABGdBTUEAAK/INwWK6QAAABl0RVh0
976             U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAADAUExURfr6+dbVzPHx7s/Pz+rq5dva0iAg
977             IG5ubvb29MjGuvLy8fX18/j49/7+/uTk3fz8++zs6O7u6ubl3+no4uHh2t/f3/z9+vb48e/v7/Dw
978             6/7+/PL07e7w6t/e18/NwuLi2+bn4N7f1uTj3ePk3PPz8Ovr5uzt6O/v6+3u6Ofn4fT27/v8+uvt
979             5fv7+v39+/P08O3v69HQxkVFRbu7u4qKipqamuvr6FVVVe7u6f39/Kqqqvf39u3t6eTk5AAAAP//
980             /5SMCy0AAAv2SURBVHjaYrAfQQAggBgglO0wBxBfAgQQw0jwKsy7AAHEAPXr8E6/UB8CBBADmDX8
981             syvYkwABBPbsSCicQL4ECCCGkRGxkKgFCCCGERKx4KgFCKAR5VmAABpRngUIoBHlWYAAIs2zvFLa
982             DNZaWtLS0jIaOiyqOjoaGhpMHJZDxbMAAUSCZy0ZgL6UlJHRAAELDQFVVRYWTSFlPj4FFhV+Is2w
983             AwEjOwRgp6dnAQKIaM9qi0tLMzFxcTFBgKSkuqCFgIAZ0MPCQvIi8sL65HmWjZ6eBQgg4jxrySOu
984             Ja3Fwc2toqIC9a+kpKCggAAoeoEI6F9WPmtyPGtnRUfPAgQQEZ7lZRDX0uK25gABkHdhvhWERS0o
985             doUVFBUlecnwLDsdPQsQQAQ9KwWMVHFrCEDxLSRqzaBRC/StiKIwA/GeZTOCAHp6FiCACHgWGKvi
986             HNY8YADxLQc30LNc0FwriBS1mgp8isrWRHvWeABKY4AAwu9ZXmCs8iABsH/BccsFiVobcNSyQKJW
987             iE9ERHcwexYggPB6VltcCxirDDAA8S7Ut6C4VQf5VhWUkKGe5VNU4B3EngUIIHye1Rbn5gH7VRcM
988             kH0LjVp1aNRC0rGQEJ88qwolnmU3QgamRMmQ4FmAAMLjWZhfdWEAErmoUWsDqX1gngVmWwo8a4Jc
989             TBtZiRIjQ4pnAQIIt2fFtLRAftXV5dfTswQBfqB3QXELLpJhnrUARS2SZ0VYGcj2rDFyY8OUOBmS
990             PAsQQDg9a6kFza/8EK9CfcsAiVqgbyEFMtizqsieZSLbs2xIPhIlUoYkzwIEEE7PQssmXX5LSyle
991             MJCy1IN4FpJrmWDpGJ5pQSWUPKMmuZ5FSqrmEkTKkOZZgADC5VltLQ6wZyF+BVZCYN/yg3wLK5CR
992             My0LJGr5+JRY+cj1LCL62CSIlSHNswABhMuz4vrW4BwL9CwvL7g6AVKWluBsi+JZSJMRqTgmN2ZN
993             cfrIlBp+BfkTIIBweFZbmhvmWSleaNWJ3bM2kEYUzLMirGpkehbRYjYmWoZEzwIEEA7P8khbwzzL
994             C/OsPdCzejDPcsOajAKoMSvCyk2eZ0UR2ZJoGVI9CxBA2D0rJc0Nz7K8+GMWLRkrsuqS51lEWhUl
995             WoZUzwIEEHbPigFTMUbMIjxrjRSz6J4VIbNRwQ5vMtgTLUOqZwECCLtnGWQ4OEC+JaKAskH1LKsC
996             mZ6Fl7im9kTLkOpZgADC7lluZM+Cqll7pIoWS9WjCqt65Bk5yPQs7rRKnVQM8idAAGH3rLQkxLNA
997             3+qBoxbiV3jEojQqkBrHfKzyiPKMJM9K4ByUkqDScBXQnwABhN2zMkzc0Khl0AW2E6WkwGkY0qZA
998             bi5C28aQmAWmYiVQxOLzLU7PGuPMmMbUybIgfwIEEFbP8iJ5FpySIU1jiF+Rsyx625hVGZLkB6ln
999             AQIIi2eB7pUx4Ab5Ftqb5eeHeBXao+VAqXmQez3yjPqW0Aw+KD0LEECYngW5VFKNC+hZaLYFe5cf
1000             3p21hg+6oXfe+Vj5+MGlN27fDqxnAQIIw7PgmNHX4VKB+xZlXAbsV1h3FjoIBRuDYlXkgNZV9oQ9
1001             a2IMARJozSSMYkiUegUUQABh8SywWWjNwqUC8S1koI2BhwE24gYUhA+4SYL8CvesIisTeFwD5F1c
1002             vsUcNzamY9UDEEDongX35iwZWLhgvrVGH1xEGkuFtCigA8fKrCzcwN4D/rjF8KwRPRsVAAGE4VlI
1003             Q0lHDeFba4RfOTiQBqAgiRgWsUKs8upMQB3wVhdxnmXG3ii0Ag2rMROSIdWzAAGE5lmIX/kZpIFR
1004             C/It1LsoMwJciBkB6LAxsHjiY1VkUbWR5NLngHYfsEctumfZsTf3JdiQUjhuGVI9CxBA6J4F9eOA
1005             9Sm3sCDEs9wcEACNVW7YCDm0KIYVT3ysrEpCwiw26lzQuAUlZLyeZTcBAQksHTl22DiMMSEZUj0L
1006             EEConuWFeBbY/mURBs1PwiKXmxtKIU3iqSPNaykxMsrKighpgn1rzYO7jCKy886G4iXcMiR6FiCA
1007             0D0LTMXAiOXhUFdQh/lWBRzDIAoUqbA0DPUruI5VZjRkZGSVFeHTVBVkUgFFLa5cS+SwjLEJshLc
1008             MiR6FiCA0DwLKor5GRisuZn4WECeAnlOhUsFDLhUEF6FTGqBh9pUhRUN5QwhvhUSFgBFLTgd29uT
1009             5lmkYTVzSEvCmLAMaZ4FCCAMz4JTMYcKkzCfJMy3SACahCGFE6R0kmeUAwKIb5WACZkJ4llLXvye
1010             xRxWMkUqt1C9hFuGNM8CBBCWZAxKxVySAvJC0BUFKB6F+FUQ7FdVYI7lY5XjBAKwb1ll5YWAngWl
1011             Y36CyRjLGBryUDiqFG4ZkjwLEEDYPcutoi6gKaIgyYQFAJMwsByG9NmFFA05IQDoW2g6Jt+zzHao
1012             wJgIGZI8CxBAuD0rrKSoAEqwKP4E+xTU1QGlYU1FRjlOKnoWdfoKRcqEKp4FCCAcyVhFUkBYSERR
1013             SBIDgLwKqV8VGWHRikjGmgSSMWRlAfLsIzPuKUtmomRI8CxAAGEroHRBBZQNi6a8Iqu8GrJHgZEK
1014             i1YWIUZDOTS/ggooYN2Dr4AaQAD0J0AA4ap6uARVhflEZFlZ+VSBHlQHexPqVTMWFiFFVkS0Igpj
1015             ESEWAlXPwHoWIIBwNSrAUasE8i2rPIuADcynLMIKIqyMjIbwWIX4FORVcI4l1KgYWM8CBBCu5iI3
1016             l7oAi6aQiKws0G+sivLKQpqaQspQjyIBQ7BPQV4F1juaoK4AIhUT7VlmgvNVosZETWlJMOP1LEAA
1017             4egI8HAAfQuMRyEliHcRwBAFgIVYQV4VUdIUVrVhAjWNGfjhHQFzE3sTNntRNnAxDGrksmFzjpGx
1018             MdKYiymw32qH5lc24sokYyO8ngUIQKfZrEAIw0D44N9VoYHuSfDmtU5Y6GH7/m+1k0QEEXsINKSF
1019             LxMoA31YvJDWaT+Libsl8to435jPNQRoWrd972fO8GXfQ1h8Wxkz4y+g2gR/SUAgKCRCOUSbANLB
1020             doUdatks0aHw734YIQqtllMF09kLeKx2LBa/r4KwVd9h/wLQYcY6AIIwEE3U9HZdcNcYV4Q0Mab8
1021             /195FAcH7cDQFsLjIE35bt6btku3XevgH/0O3JBf5j6SjuM+EXV+sT4vlpqKntTXWDBKRBIvkcrd
1022             F1ONbXBlBUgZEIflLaiBJPD2numHISNpPTwYg0WZEIzTDgmCul4kbJb+H/YWgC8zaAEQhKEwVKxO
1023             UkTgJQQhurdB0GH9/3/Ve3osGiLKEPZtT5D53ZapP+wobrNPI3kBnHMCM2wtg5ZSDgGXee62ijq8
1024             2jJip/Wy3K6qhD1L26wXJxBiLRNhlQ7FYxBlp4w9xrI8tMqTCjVxZgZe7JA+oJqIAfe+DooH59sf
1025             GT8CCOuAGy90QNyaG+hdJlAnHTJWCgRCCADiCgsDuz3AwhrYH4R4FX0IChjkzGxs9vBkLGEH9hMw
1026             zQKFQHkZRIA8ywxUJAqOU6hnRUUxPGsHSgFwz5oam4KMN2ezAnrWFOpZNnY8ngUIIOxDqbyIqQ7I
1027             TIc6bAYLPAgDBkA2sHUBrIOBDUouUB/fGry2Bm24zRQY1CAHQJIxmxHYMcDyBhSzIJeBCUgyBsUR
1028             G5udvSkbKAzYQRJongUqQXiWHWgIsMMnamonAZKwAnvWSAKnb4H+BAhApxWkAAyDsEPeEPAHe0Ae
1029             sP//akkcg8HWg2i1oCCkjf0myVvtjgDKEz//nlz00ZWLxr4Bl7zZuVBHJS+SfJwr6DTSxpBwIwnd
1030             2bBRgQlmxCcmXmekTUcVluxOxIjIhmohcLSqz0WNTv0Xewkg7NMfkMlYkHcRi4GQByvAfXroCAZ8
1031             Bgw0b2BJYPoDpcKBE/RqVAAEEPaJLeg8u6WlLnzagwcyvAgbgIOOwsGnDHQhM0K8kGVE9oMQAP0J
1032             EEDYpyzBTQJoLQSe5wF7GbYyFQqgIiBJfn64VwddMxHJswABhHMvHi/MtxD/8iOt1kR4EupPqEch
1033             wN5+kPrV1h4ggEbULkuAABpR+2cBAmhE7YwGCKARtecdIIBG1GkGAAHEYD+CAECAAQCtSPiKfrES
1034             ZQAAAABJRU5ErkJggg==
1035             ---
1036             filename: htdocs/images/egg_logo.jpg
1037             filetype: bin
1038             value: |
1039             /9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAMgAA/+4AIUFkb2JlAGTAAAAAAQMA
1040             EAMDBgkAAAS1AAAJEgAADGD/2wCEAAgGBgYGBggGBggMCAcIDA4KCAgKDhANDQ4NDRARDA4NDQ4M
1041             EQ8SExQTEg8YGBoaGBgjIiIiIycnJycnJycnJycBCQgICQoJCwkJCw4LDQsOEQ4ODg4REw0NDg0N
1042             ExgRDw8PDxEYFhcUFBQXFhoaGBgaGiEhICEhJycnJycnJycnJ//CABEIAEkA7AMBIgACEQEDEQH/
1043             xADRAAACAgMBAQAAAAAAAAAAAAAAAwQHAgUIAQYBAQEBAAAAAAAAAAAAAAAAAAABAhAAAAYBAwEH
1044             AwUAAAAAAAAAAAECAxMFBBARBhIgMDMVNgcXQDEiUGAjFBYRAAIBAgMEBgUKAwkAAAAAAAECAwAR
1045             MRIEIZEyE0FRYSJyBRAgYoMUMHGBobHSI5OzNcFCUkCSsjNDYyQ0FRIBAAAAAAAAAAAAAAAAAAAA
1046             YBMBAAIBAgYBBQEBAQAAAAAAAQARIfAxEEFRcdHhYSAwgZGhQGCx/9oADAMBAAIRAxEAAAC9/R4g
1047             eCByzExwhoqTSx4IH/Pm5KLxL2M2CB4IHggeCB4IHhHJEIc9DwXks98b4RlPTCVtTluMku2K/sCv
1048             zkntfiju4d8P91xMXPbtW3OaOpPnYRfH1wAAAAQpsIc9DxOOUeJeKgFerMMU55bn1Ltiv7Ar85J7
1049             G45vIv7gbv7ig683nNH35Sd0fBa06rOfOgwAAAIU2EOeh4jXbaPEb3BMZa6ZlLptpLlmcjHWbm10
1050             NeeGuX9/8+Wn8VqnnyNi6Rx9TUthaU9s6ukll+Vk8sc1uyCFNhDMnggeEfySEYkhH9eCB4IHggeC
1051             B4IHggeCB4IHggeEfGUH/9oACAECAAEFAf1Hb6r/2gAIAQMAAQUB/Zf/2gAIAQEAAQUB/JaoxGIx
1052             GIxGIxGIxGIxGIxGIxGIxGIxGIxGIxGIxGIxGoSfg32N9gaxIYlUCfCVJUWt3Z+T1h+5X8afcxJq
1053             QtLiO9b1MxsNgZA9NzSaT6i05t6YPwGKqsNhKUpTyHlGJx8N+46HV4D+Xks29rjU2D8lsCmts22R
1054             229DPYi0MGD0UGi2b05t6YPwMfwByCwVZ3HAqFrGwx7i2CnrLg1C3aZvcN6OfYhuDMGD0JPWvXm3
1055             pg/AZ5HQkyszNoU3R5QOZdX+l9u+jyPuG9F/YjG430MLcJIaWEnvrzb0wfgYHHOJsPkZGXIa9VXc
1056             VfIsxfF+BZ+Zn13uJXqZsuF3p1j/ABCzt8jkXbb0WDM0GTiTHUQU+gg5kLUCSozaSYRrc1ibit+N
1057             mOj40YCCJtPIuMYnIC+NGBx2gRx/GuKzFt8D40YFDw5uiz9NyLst6GFI3BsiAQCAEyEt7AiFljHl
1058             4B1Ns81k06l49mm58pyn7ojdw7V9vITeG2zi2hqxWL1xvJwsvOp8tjkDbL+LeSqTyVOTDyVDGTh3
1059             jzOBL/T13jVM2JWxK2JGhI0OtoSNCRoStiVsTNiZsTNiZsTNiZsTNiZsTNiZsTNiZsTNiZsTNiZs
1060             TNiVIjV0fXf/2gAIAQICBj8BF//aAAgBAwIGPwEX/9oACAEBAQY/ASAbKMTXG2+uNt9cbb64231x
1061             tvrjbfXG2+uNt9cbb64231xtvrjbfXG2+uNt9cbb64231xtvrjbfXG2+uNt9cbb64231xtvrjbfX
1062             G2+uNt9cbb67rm/btrNbvYW7afxH1dgrCuiu8N1XX1J/MuVzuTl/DzZb5nVOKzf1dVB//MxJFuf1
1063             W/2u2gG8sst9p599nzcqlkQ3RwGU9YO0H5X3lP4j6bD1swoMOn0673X60dJ43+xKjJ0UHCP9JOr5
1064             qCqLKNgAwA6hUSSIZ9RLtEKm1k/qJ29NLFF5ZI8jmyoslySegAJXN1el+EY8MZcO1vasABUmu1XC
1065             uxEGLucFFftz/mj7tDUSeXNpNMwukkknebqITKDbt9f3lP4j8ko7PTrvdfrR0njf7EqLwL9no1er
1066             JupcpF4E7q/UKHnE631OovyL/wAkeFx2t9noh8uU/h6ZM7D25Nv+G1PrdUubTaS1kODyHaL9i47v
1067             kPeU/iPo+n18vR0+prvdfrR0njf7EqMHzGAEKLjOOqmaPaSpKW+bZ6NBy+D4eLLbwD0a/PjdN3LS
1068             31VJl4viHz/3U/h8h7yn8R+Qt0+rrvdfrR0njf7EqDVS+dQy5CrmF5YQCRtse911cbQcDWq0pFlz
1069             l4u1H7y/Vsqfy3SSiLXaMFlkLWY6cXduX7S4W6q1Mmtned1myq0huQMqm22ofMVH4WpTIx9uPZ9a
1070             2qfROVC6sfgmQ2QTgHJmPQGwJqfR+Yat5hGkoZCxKZ1YDYPX95T+I+nsrGsaxqybB1+tN5c0nKE2
1071             X8QC9srq+Gz+mgn/AKD7CT/ljpt7XZX7i/5Q+9SR3wFh9FRNI5gnh2CZRe6n+UjZ04V+4v8Alj71
1072             S6ZJzPzX5mYrltsC2xPVUmi1exG2rJ0owwYXr9xf8ofeo65dW05KNHlKZeIg3vc9Xp2+p7yn8R+T
1073             1GnTjdDyz1ONqH6GArV8+I/8jTanVCPMDbV6lDCIR4U2VDHFon5YM+ZfhtKGVnWMK4jUpH/LsbGt
1074             ImkVl1ll55hIOUiM3tndMwz+1215jLG04+GjfO3c5QtoVkAQcXM57X2C1OWjlcBdSunGoMbSZXWH
1075             KHykrtdXt2VOIxqeeZj3wYjFy87ZDCmdGNktcEihJqY5WnmXy+SUkxmINHJDz+7fYwsTsHzVy9S8
1076             0d3g5r5o82bv/EGIre0Z7uW+2tHpdXmabPAdVw3IVhnLdHbUTaRpmmaSZpBdCECv+CoUsgylOnb8
1077             xqWWKecf9l44wyZcyyR/DLYjAoWNa+QZ2VC0mmj7nLcJKjRoGz370V1Pd/hTCd5JCknLvAYw7oEd
1078             lkXPYC8jqG+bqqaTOTqxNpvh0YjkDKkDPJYbdkmeoecJBLl/EExBfN03K7N3p95RvwnbfqrGsaxr
1079             GsaxrGsaxrGsaxrGsaxrGsaxrGsaxrGsaxrGsaxru949Qr275vp/t/8A/9oACAECAwE/EONy/vP+
1080             Dn9xJmZh/qf/2gAIAQMDAT8Q/wCL/9oACAEBAwE/EFUzaDdeYM1fSavpNX0mr6TV9Jq+k1fSavpN
1081             X0mr6TV9Jq+k1fSavpNX0mr6TV9Jq+k1fSavpNX0mr6TV9Jq+k1fSavpNX0iGaLa1Jf5jn/hNV2+
1082             hG5qUcyPJER5f1EP/VX/ABlqLOfU7/Rpx7lFZRT+n9q7vqlRTAOwtlKLrpcPEQewKHcfvdV245f2
1083             ML5jwAiQu2k/vwwdkAT8/T5wSRV1UVRILygwAKAMAEJsRMsLFxQRRjOekHigwsoQKsGYfbVC90Pi
1084             2JAtPOI79r8FvLhhrsCEhVhWHVXxf2Oq7cLh58uE+gM5oz29H95+nzhpHRwbkKLsGrO9j8rAPlFG
1085             2vcJd/Dq8EoVwuHeJ8CndhTms25D1AWOvRc2wfY6rtwWPZFDhFFGVHIz29PzB6fT5wJNGl4gs3j8
1086             2gytbI4VHXsyuHz5s70uE5W5JveO/wBPs9V24Zs/UvB68LKxTfwvl07wwo3cr1ZS+nzge5J0ildq
1087             Nxz2gJwFhkR5kWeLNYVadlb5GIY21cxQb/dL5SzYsOJh5LY8WmMwbR7lOzNt4XagrbachiDe1cF6
1088             1FDdY2+x1XbgLItat7k2EdnDEy0H5nUvaXAf0S8Nqw1XAgQ4Mez4HzSbXhvFMev96prh4c5SdmFC
1089             F1LVpCXlLmxuyxnrAMgcu9IMC0JLaCJLawSjctzH9LOctyQLRzhhyA41oKC0C8Zdj6eq7cBcHkhv
1090             KPwlekD0hnKBySiYvj+kv3Qjbunhe4efltnfeGp7qM/SZZKp0qUjEWUWBsUW4brLIuFSiTGHKhfA
1091             s+IFUKhDtysdi5SZQjDYrGHme1SLpZUWnpPtG6rqWd5cEOzLZQ5sEF2vlhjoF6C1G82f+gsVK1dq
1092             1lGItxthoKG8hc1nkRgcINY3hSLTKq3kAt522du6CurxaydTE3PAbZ2MGZURoFBijz9uTArkbfRs
1093             0K9Bmzvc0R8TVHxNcfE1R8TRHxNUfE0R8TVHxNcfE1R8TRHxNEfE0R8TRHxNEfE0R8TRHxNEfE0R
1094             8TRHxNEfE0R8TRHxNEfE0R8TRHxNEfEduybAzqfwa/3v/9k=
1095             ---
1096             filename: htdocs/images/egg_logo.gif
1097             filetype: bin
1098             value: |
1099             R0lGODlh7ABJANUAAPr6+dbVzPHx7s/Pz+rq5dva0iAgIG5ubvb29MjGuvLy8fX18/j49/7+/uTk
1100             3fz8++zs6O7u6ubl3+no4uHh2t/f3/z9+vb48e/v7/Dw6/7+/PL07e7w6t/e18/NwuLi2+bn4N7f
1101             1uTj3ePk3PPz8Ovr5uzt6O/v6+3u6Ofn4fT27/v8+uvt5fv7+v39+/P08O3v69HQxkVFRbu7u4qK
1102             ipqamuvr6FVVVe7u6f39/Kqqqvf39u3t6eTk5AAAAP///yH5BAAAAAAALAAAAADsAEkAQAb/wJ9w
1103             SCwaj8ikcslsOp/QqHRKrRp7Pat2y+16v+AuVjj+ahgX1WXHbu8Q8MWCRFIoBHhBJhOJQCA2JSUE
1104             ggQThyAUIRMAYUI+kJAykT4GMpeYMgeOnJ1IZWVTaTsMDAAALQ85ORoNrq8aOS4tp6VscXV5eicR
1105             PICFg4YTIBIODh8BKV+UPpORM1E0zMw3GE3S05HVnlagWVELHHBspaiqrK8/rw2xs7W3CHO5eBm8
1106             vhCCwcIpxcgIYMycQYLmJBukClAM+kDIjYs3Jg2EuMoBgIAdOgvgICBXqqNHBm00zrFzhx6fe4EG
1107             FTo0ogABOaTMrXKlLuKUgAolITFgsAYU/57ZfDbc8jDJuhy0GCBQkAHCBwm68pCcWjKqnj19ev0p
1108             EYiAgwIeEohN4MFDjBgBCnR4SoCHABIITKlaJwVnTh8Ed+YEOjAJ32x/8w5dUtSoulUPksZTcIKH
1109             IQkiKHToUCCA5cuYLZ/dzLlz5gKgJ1MQkWJCCbcKFsR8MDeizR83aPygYeBHhdqUfjgzMGCKjBkz
1110             ZCipIdSHk9syenMLLuZbKCevJ65CmphWrY5u4mjczt2Nx1OoUp3Lka7m4PPoHT1Pz769+/dUsHyD
1111             T7++fU/yh6z3RFHFhg0ZcMABCgQSiAMK+ATDzwjGgEAACQ+cZ5dCm9xnoX7OzVfFChcs0P8ReC2E
1112             KOJ1trwRTx12mGTPLyoRsI8E/RRAAkCUCIQXFQdkomMmQiWR44479lhfYVAwsAFHpqRCHk1GNLCK
1113             O7bEsUCKKv7xCyEuHsJPMRQUsMAyNVIi2BIVKHTDE2UadOaFRxC5xCscwCDHOB+eIt50rIVIolK4
1114             zLNLBDj40lUwWkqAzAtLusZkFRPe2MQMBgn3BKTZSMpmmxkqQZOTOTwAAEiG4EESRhlJOaeUdFCZ
1115             xx684PBHV1gSIIJlokmQQlsnpEaKkuSZF0WjYy5hIzPQ/OVoEcOK+YOxwb7nZhGuIdaCUiQI4FgK
1116             H4RQwAcm7OHtt97yklWgVtpAgAQBxBD/1ljskmUWWqGRVkIEAqgmU6+vXaovGM8esamTeb4jR0kr
1117             EjpBCghvCePCDCdc2gQulgABDxGcgAcJGcV0779GHGAADQMYUNsPxg3x2w8YlPzDDAZUQINsxt1G
1118             sm21/RZcyEJUIAPMs8k280Jl9qxbXswxRzJwwp1sHHM+1DCDTx7TcIMBOrD8Qw3ClcyyARV2M19+
1119             +4Yt9qVgEyHf2WinrfbabLft9ttwxy333HTXbffdeBdR9th89+1sv34HLjh+mXaSAxr+qRCPPChG
1120             hZUfW6k0yASGFuDADtw0apAOg58HuBQNpHHBR6SDBI88JJnUh6CFYHnIMFxS0EIYwHYO/9/nTVig
1121             ggofhviACy5MJ21SHaGqaj2Ash5rocU40GUjXtQeBaUKGSAkEtQbZD3ZhUtxwQuklMNreRJJp2eU
1122             J/qJvKtXGrzlMQUoE32Yz0BRQ/XWNHG/9vnvizsSFtiAasKXpNbkq3yrOJ/pFne8erBvUFk6GIwc
1123             EAIK0CgSNmoWEg4QKShwsFJ9+98ROFCvcYTPTtPRQCuk0ynroE8O6msV61pniC3N6h++2oL0mJC9
1124             GkGhhxj0mwhr4poXsEABGNMIkkwBniZ+qkSLG0lVHqc81yGiACFAwMYUZYVG0QA4YARO/4aQpmmM
1125             7DjaE2L3kHCUTgFgAxa5CMZKtRE32P9RJFKsylVWxyIXZekrISAEDzKggBfE5RTn4GJd6GeQrhlh
1126             f9lgCAYC80iFSJKS98GdotwIgB0sQAAOIIAuplIHOpiylFPRRbj6YKXWlWACIVDXWSyjFgpIYAIQ
1127             yJW9lGSTAzZhh04wFiXOlD0NClMbK1NWJtfYpFcg5VNzOAEEJiCCEIDgW1ZxXLjERa5XlSAFIQjA
1128             utrlLnh1wJa4fMshDehLJmguGxocAjbucqwjzPMu8WSPJp2ZmE8hoFrXigxlQPMBAkwsK+NyzDC6
1129             pBl1kdNdZdkMLWt5y3mpM0kzIZ/tNoohMmiIjc5soT/nIIDGTI4fx6CAZCYzGdC49KX/MFULS89J
1130             gafYCmIQiEAG3qKaAmZ0UTRb1g10EBuSYUI3B6CNYGLzMZLd4AZZe2rSkLasAyS1Blat2c5mJgOp
1131             zoZrPlDOV7/ogwNgVWpnkgFYu3qmp0I1ZVVl2SSjZtQvyqAGvNHCEIlYE8RU5x1RlOKqTkDYihH2
1132             sH0g7E6lQqqMlSM84/lXOzFAkAEwJIw/GABwxJqzGVQAIWFVTmiFMAAMYEA5M0BtBSoLjcoq57OZ
1133             7d9pUaYcylagN6VdGW1JO4P8QWO2QvBscIUw29XqNUMffYJkOeVX1lRHRCNyIoig6zvnRnYddOGo
1134             dgmzHrx597vgDa94x0ve8u7tCuZN/69618ve9pI3CWfbrnzni97uJpe++J1vKPaT3/5ud6/+DfDY
1135             AOwFdqygk7v7zwYGxAJCsIAFBRIAAnIg4AqbjZmc4NB/RKXHVa3Pm1kyVE0n8IKhvJMZZ7RwfDDM
1136             hQYAIA0qUA13YNg4VfbhgcEwGAhCEIIMtLMLJ2aGI1UcBQK/6cUX2AjpQiISFE0ReZCDlftAQMER
1137             YI52jKwnkYnCYilwSAUnlO6eTpeqKYrLF/mwIuyMYc0fMyrL+dxykbv8BA556LHUhS54sNOn460o
1138             QcuTYPNCMIILSkKZ0aCnDHTAECTcM1KMtpCRiZCD3YUZAL8TnvD++kQTwfDJJyBXSv/cN0HnFUAA
1139             YMIgop9wzEi0rAmthsSruedRKqxAcWE+xwrL54pY9PNTZI6hVgDtx0IZQwSWS/Wh6/cT/AXT2f6j
1140             sxJWIEACymTX0OKUAj2dqsEOG1YRfF+XTKDsZqyaCclidhPS3RexTVoDAlQyExMJVAQihXjcFjaO
1141             A/0+bc1ufqpWNxMgOY1GD9ySfJs0AMRRR/HRO18h3XafvY2SFr2oGAUAgaHNLfAltPp6Hu9JCKWN
1142             BACZsHfBS9Q6YnHvTjdZj8i7BzDCjfEPaFQLwFRCygADhZ2bUY21hkIDSFgqjoBoPJv+NZ/TB2pR
1143             p/niBRhBOupNhZwnAYg6mVQHRx7/dIjQJAMmSI0SrW0n5+qJRLegMZVYpZWU8PsrDmBNRvn65oC3
1144             m4dbdwLWmwH0H/C3mYfZgUUwokTSfeqJHoHHP51skpMAQsrCgOWpmei7meRwkXZXSLMQ/gTOD5jk
1145             RNQ2C8KOxCSakIAfUTzTn8xHG0D+EBLYlsWS6FOVVz3L2eAsET44DUv9QAeZ0P0PeB8QIgAfE8L/
1146             W9fZeBiRLmACEZCjHOi4HdVPv8yg/naODfGVAojglrgSu083dZMsJ/VlLxtjEco4jQo9OljsF7IQ
1147             3i9paR+ln0o5AQgsJoBRYcyU08c4TqYqV9Eq3mRxI5AutHRODpACFgUXGGV7vwJn//aDPzNwT81C
1148             cChGWRhYf8vXJM3nKdQiABPgAIvFYVSRggR4FVR0gC6CDGURUWiRFh1AGm1RLzuwMeqAecuWE/Gk
1149             gUJWTEgAhJRwAEK4TB+YbRORFNEEASlAAdeUTVKoTYXFAzInCBIQSw8VUTSIThBwUZgmgQmBe/Ck
1150             BANATx1HBGeIhlp2O/bnTIpBAk1BOYogAeByh3h4Y1YIYuEUAw8lFjJIgx9wK24BgWGYXVCgIz8C
1151             JMjHBIvIiJeQfLsHicHngX53X0OwSZ7SSVMSAa/kPAPlAPOSWOKCUHoICC6ShZXhh1sYg7PUhRJg
1152             ULqUg7wkEXKmL/sUgsA2JdJEAP/8sFKVkRYh8AEjYCsLwlDpoi4xuIzLyBmXERprYSunQUi7lEiX
1153             1xC55QirpX6OAFxcloTZposjxRR+4IuQoVIs9VKZsY7smBYuJRo1RRq3klM8FRPjk0NSoxsGgAH5
1154             qDJDM3w+M380IBQDSQMIUZAI8RsV4BMuY5AD8DIJuVWywY80YA1PQwOcI08fs5ADqQPpdzU18EUh
1155             aQ0UiQEL+Xu9IRsuQ5AeyRw6AHJzBo7QgkBK9wZTUlJ+cFIoJQIi8AEfoFJASVM0BZQ19QEiYAzG
1156             CDESo1M8pWRbdI0fExseA1pghFRSk2Ie4wM8A1fGAVc28xtnxDKQIDQ/Y1rG8TLg/xhcwmE0tMF3
1157             SrMyWXMJxvExIkMDRlgbwDczK8MTkggFQzR1nKJ0ILE481CFkUNDfuRH+WAlibVYSDQnGoNp9HaN
1158             QnA/vcE1j3BUaqVWXYMcWkkyIrMJlYCZX7ksdekxPHE1IjMzqLkJaHkyagmXQiAylvCPSyMcHjMJ
1159             ybSQPmANtMk5WiMDc3VcMukvkuVX0QVFgXVKKihHjVV0YVZdD0d3neB7vneLTjBp5NdG1qVn0lU6
1160             3yFd0GVd0wGYVIeduPg1mIie7Jke9vV37Rmf6nFeF+Ze9nmf+Jmf6mUEQQAAOw==
1161             ---
1162             filename: htdocs/images/egg468x60.gif
1163             filetype: bin
1164             value: |
1165             R0lGODlh1AE8ALMAALKxr87NzDMzM+Xl5Pz8+21tbfPz8u7u6/j49sDAvp6dnNva2tvb2wEBAQAA
1166             AP///yH5BAAAAAAALAAAAADUATwAQAT/8Em5qr046827/2AojmRpnmiqrmzrvrA6Ucxs33iu73zv
1167             /8CgcEgsGo/IpHLJbDqfNkalliRYcdYsAcE1eL+HsHiwGBCEAYXaoAY8AG21YpBWBOB2+aEOwC8e
1168             cmoBDG14CW+FbTMDcnhzCWoLeANQlZaXmJlCBg6dnQKeDgUACaWmgwdnmktSC1RACKpFVlxdXwZi
1169             uQdksjx1CjYGjgpUvwuQapQPv3YScgETzAkID4yBCm4T1thqhwjMyqvi4+Tlm6EOoJ4FAak6Cuih
1170             DdgJCwexM/DxnfOk9vhHWr3acQbBvV5BstRCcAuXrgEMDGSRcCUHAQENMs4boFEjgAMd/+cVCKlx
1171             DkaSGgsAJEcg5JyQBQZIRNKyowEEIzsOcNeEAUkF98wJnVFT406EOziFUteJHU8bAPalA2APqYSo
1172             +wRQfcpqCsEHW7zscrWwbK0tZht+oXOtD6kArnbevIKUgIGQJzvmzWgnJ8kye0kKqErxl4DAAgL4
1173             bZDYpYKQCfayc7kAZgCXAQKcQqZgscZBIQd5Vqz3ccc0ehO4jHiGAIDQlfW+lVMgcIMCC/Z27jj5
1174             tGeSpFPi7QhgcePTpksmyIwyYwIGXG8o9cQ0K4AAAxjq2wfAzIHqALxsj9edwPdQ4a36EMhDFS2x
1175             u8gsyExfs6n7+PPXnzJA7s1YE1l0F/9Jy9mG2wC/ZTSYbXphNxMBqjXHWHDNJZZcc/VQZlluzdkR
1176             oYSDIDYah81dd+FxJbEG1mun+dQRMV4kmFIAui3W22cLXIgZI3h96FEZMjZgYmjZIQBZSITlMN0n
1177             UoWiAGF2MVBAk+g4ZYUBUlIZipVESPHAFAMNJaY5WlRkQ5lmjqnmmmy26SYDrdAQppt01mnnnXjm
1178             qScPcP7hCiZogZFLf/3NlAQDbpEyp1B3XDfDAW7tKemkaiKATnVSAUUNpQ+wR0SaPihUS0O65GIP
1179             EL/Y8MwzgFwjxyGGNAoNq4hgg6ijeNyhiDZybEPJMNlwKuywRyyZzpbtqDdBAlreBtf/TgAxS6Wz
1180             ZRzUpVdA3HSEqLYI+lBExIYr7rjkGFsdlzcQMKV1CchU17rxaNWuoUp4SpBCMgEI6pncjnqLGLgc
1181             A1cZ/gEIFg446fVbAcZR6NwgO0nmYwPYbfqAj4EVcIBngQ3AokaBvfRibCkxsFdgB5CsoGwoMYzk
1182             ZXrxBulwxLkDIUo6lmQcZAacLFhIZNCs4HcpYexiRjeuDPLMgqnM2Gnu6mDultiQYsoBYAUgVQPt
1183             Wnym1vtwnd0T9mIBVli7SJFZKXL5q1YYZCQwTFt9lJJZtQfMRRHCCQrQt2iQleGFZDCXFLW6vJ3o
1184             MIp86RgZb4Xz5XTS81wIR+KhHZ0R/3ajGacjaiBHPo+KrmW+2k0hAUB4jZCHZtzjGgH2M16Liw76
1185             Z0VK2ECSSl665XP9hUEvAhw1Odh4ThlQvFTHIxvdD2W3RxG3/5Zq/fW3cKHF3qEaRGjwN+Hyfd5d
1186             xDd+3nB/T2jevWxhvvphFMcww8+Cr9j87MRVKEPm5y0++LEQH5wYsD/3qW984Xtf+oJXi/jACXxX
1187             is+gIDgBu/RPLOuTSAQPGDz0SXAMO0Hf+mLBkP4MUC5Z+F8IVQgtWjiQgCi04AhduL4Fsk8HBuSg
1188             Dm9IFBbukF5g8SEHeTgEL33JFXAilxKXyMQmOnE9ffrDl5L4xCpa8YpYHFYUF5XFLv968Yua8B2V
1189             VKIsPEWvCmiiRVlINQYCei0Iv8BDNgwgMCowIDPKwyMdAmCAB9BxOWNbRmZ2UgMEMKAUDLDYMSSx
1190             Kwn4ajlYo08esQPGSg5latQ5jCYPg5vn5emMCSkjUfrFxlKVAY6ucsOqBGGNuamhVo5QpRwiEktF
1191             5EqOi+hVr1qJB0v6shyYbIqDyrKv2mzymJpUAKiMicxjKlOUOgAlD1YyBOp5a1BjeaMOUjWDXLGq
1192             lt/sRh1mJQgJ8CFH2KiV3BpZDTmgcw7LCAQ0fklPTQRTFMnawXjiRQ/sWAsQVBJAP1tYBGnmgAs0
1193             QUu34GNKrFnSAPRZgDbrSVEn3BP/XTdggPEUUI+gRGGjHZ3otf70gwPUAJo4VONCHTIoiXKPB8cM
1194             gLqOaQVmClQBzUzMTJsJAJReIqYX2eQzK4HTTe5LCRvbpEwpSlOfSuCi+byBpTI1r4M2iaMycYJB
1195             X1oNDR7VIqSsXi6kgAsv6OtgCJNMztQAGc+8ymSY6wh0EJKgBNRUL3vp6cRsxBAN8UYmouNLRRKk
1196             15Z55h+/0enNYlYSM02MLzDJCAC+gRIBAEgyLOvIAlSRMwGYIXKTzYtK8mJZxNHOChgbiQBAchrR
1197             UlM6YhTm81zDvKpiASvxsm1PsGWRszFEeUU6Sxr75TYwiKVRVssMAf1Xkbp8jDG2/zkM5GQ0ON2x
1198             I5CmRZpxFvA6x0BGMk57EkzCu5jdpORzTltO50qDpOcKYGJz0CACnsu1wEK2I7BDGlx1xpuJLc6/
1199             pNXRhVwGsolJorL2RZqDkhJb5kHrPPsoALiw0DOpSLiPWuWt2cIC3ArU4z9mWaNaAsYZur0lLuTb
1200             nlQZ9DSU1MMzVpNdSuirKYoMgMUTaph38Us4v86IMufDMcU0RzEEuY69yGnQ6VpDX9C8yJ85gxzr
1201             fuyb0lxDM7pLjY6TjN9qSSgmGJZagwtQtbpVDCwQ3gdQGoCOJ+0CU04CSZt5F4StTg9t/akAfeRm
1202             teWsbZ1uCUSiEnUKuCzXrHSxCP99+fLYCRm5sj3D65LBYqOGGYe+l8MvZnysYMkspjhx/QyR57Be
1203             kH1OcZMuXYtOZyTirO5FNrIdqqH2m5yx40SnJhIXIpuSQPZuKVpywEeoESU4y8N5xZ4WskfKxVFO
1204             r1sLhEgrMBBRDTywg/6bC11ESTz7nCLP+EGFSb19H7iQO9z/oEgeGdbnU7yuMxyth+PkVwqCeXsQ
1205             dzwFDHM0v3hjpz9pILN+8nzvP9vNhJBgGD3qsRM6nGI+335QHr/t8IPfxKQJEDi68223PS9HzxRn
1206             S78tvgtym7vcITxkZ8gc44bfu0gV9/PLRfoA4vF50Dh3S0fd0+2b57xuUOr5zwn/TWcgTLvZvR3l
1207             cFW6kKUHqILj2pcB+eNVCXhPCgSs+ixUzC8mcH0cX03o07c19orWqwITsMAA1872trv97XCPu9zn
1208             Tve62/3ueM+73vfO9777/e+AD7zgB0/4v1vgBmovvOIXz/jGO/7xkI+85CdPecIfPu1INLvmN895
1209             JUbxiEjvvOhHT3o2Hb30qE+96sVk59W7/vWwZ3bsZ097ljQ4K/+kVOs/pVBb/JahNqS5D5hRTjXh
1210             klevrL3y/Xj7rKhI9xoWe3O1IGJBsRQiDkWDHhRxgLbEkxh+mET3Be2MOARgvoKmBvHTifxroP8R
1211             xV++6C/aCJ0XXU+7v1cPqF9c/+DDjYqo8iq2JAjPYA2cwRm1oisc1SrPwAd8kIDH50iz1CvjNAny
1212             N3oXxXDw81r4F32hFEq9V0oP4VI/QHzTwIC/cH6u0gi1Qn604kpucEvs5Cu9ggBxkHwX2HlQ5Umq
1213             EmwCxUe9sE9ZYQdAVGceuH9hdy8hKFYgBIA9wE0TsErNAE7llCsPSCvI0B0DaAcR2E7J0CsXQ345
1214             qINjFlUWYWzUMVDWchEBpYYcuB5HSBDCh4QLIYJwk00lKAc2UGJr8H1cCIbrVwO0sg3h5H3tFwjU
1215             QIjzNIabt4PK0hIb5Q/54h5sxjz0IDhvCD1xKCAJVX0spQsEtATxIQTE42s6UP8oM0A8YbYDOyGB
1216             LMiInOeIZ9gkoxBS7YOGouAPuWcE+fdUc0iH/Wc9ELGKsFiMwyKLOCCEnoANZ3YDytgJzGiKSNCL
1217             5uFUWGBN/jcGf2CNxtiNa4KMZ4KGo3B/YCGOW8GNfLKJ0oE16HhnCmWHcCNFrVFGRSFZkWYTrcZf
1218             KBEeOEZGQlGPQjIgKVGERYA/BXBX+NiOMJU6mdhFAKk3PwCOi7A112EGOTAAFIkdChlN6jg9jnRW
1219             IOiJn5g2ZqBtraEDCCAZRNYPqSMjxCBkq8WB96NwPHFIpwApZMYAZ3AA+AEh9FMQqwEs7tJ9/aaT
1220             NjCTOUmJOrEHw5BuSNlTE8D/k/eBk3aAFD5iB5LQZyYlYTu5cuwmC+S2B/CWCoRAZlzxlKoglaUQ
1221             SaZQAzZZCqqAlECRlj2pBvmYEcdwCj0gkROAW5fyHMTYTbU1YbtFUjh0NtVwEGUHVkz3NmP1bwXz
1222             daloI7bmGRkHGR93Y/2FJB4lATLiWQmjO0wjIQnAWiUxOf0hIZOVXcCxaLdxWN0nIRLVaDoRLThT
1223             IrR5GzchZIIhEVHGGNkhM3pBNEPzmxSDAI3mWbzGF7sYDGU4W365FF2jaLUljWdnmBsWFgSwAP/h
1224             dGiSFmwUMMlVPyk2j+niXgtzMg5TOeFxj9qlaxNQaXrxaApCY46zGpx2GyTC/xe68VxkphcVABnr
1225             eTuMoSMecyQvMjZ2QV/L0SF7kV8bMWX1iSS4FhL7VaCpE2oYqhOuyTi0EzW/Rh3BtpoH0CTdIVLm
1226             YaLWeSjqOI/8swcgJlzfCZ5vo3JlZjcopm1o1UOShheEIyNh0I8hRRHlZWmpsWMaAaG4kZ+UY158
1227             IZ+nkV7cdWSmFhonAl9RM18CKhijkKG8sZ8isZlVxhtUijRCE6YFZqVcmmBCkm5iBmxUYgcyYQDw
1228             cimEoTqaJFN0yjx3qlQbuVWt8VsmNAgxGmIiCR8KSDd+dmgGYxXueaYjwzGHgR0nExil6R509Jm1
1229             g6TO0WMjYxmYoWeGJiUgQv9knFOmG/oZs5YiD9JkRFYAH4coLMYOEuosqIoSBJpllxk6aopfhiYh
1230             8VVG9+Q3+MNRVfENxiMT+zQHe5CsbNBmICoEgOpb4jMfmsFHhvp7IzYAfKiosdo2iSZVfSMjgOOr
1231             /iQxLuFrJ2KkvPoijuOppwmqL4KnhyE3y7k5pkqfm+M5vaogogMjTGY6I3MPkvFq+qhgqPpeNuUK
1232             WRY6W6aqROIFEiIAzxeiTLIOb3E3h7MxTUIxnbEl9sCxWxNwIMuD6Yid6UKt8bhnkphtGJRvrmRi
1233             45mjGoSY6RJl/ykYpwo1EpGSGjo6D0KZDfKwjfNdrfOpR1sSF+Kkt/E5+Vr/agqSa+3KqgG7ai8S
1234             EXfJNQb7pEm7rw2yFzJGppZBtB6ra1mbV52JA/ckFT3VGiJrYcjTDgZRp/FAZstWRB3pohgEEdZq
1235             cD43dIMWbgOzXOW5mIWBM/Z1XZ9JnMBKOkGSY7pqnHzxr5Ozng0iuUNGEgT2GbnpLKvKF6Tjqqfz
1236             qJpLI7DWtRTDpo7GMY/1JKp7a2brEvNJkBOwtmqWpR4TbOuQLMQTnWNkhkaIsmbjWy9KKNNWH8ib
1237             vMmbeB2EaOEqNbg6pUCmqTimFQsWRDvjsD06uToSa+E1Oa5gui5RD6QqHC2iOgqTOeUrG3DhXv8a
1238             ugLLqt9AWrFWq5SDb52l/4v0BauBATH6Wp/tG7s89iJpGww5dcAClSTmwV0InExQkjI2dcBu1o67
1239             t21qdE0c5HY7JDxfoD0WPE3jVh/QMRb7MadksLwEpDbKKziyYBB3tMLryxgy9ywMirwpF1GDqrF5
1240             c8LX+iwipLzKtbLVJsLo88Il7AU8HBd9+w+BmjL0AUNGzMTK07fISzAqjETWSjB9Cx3Vah8aGz48
1241             bGgQQcRcEMIdJzhT/MT34MIRpcKoQHMGAXF2kx/l5iCyYBcnTMeFBqJ4LMd6PEi02wMCEXrOdjZM
1242             p60jlsgdLKPTBwSHzH9NR1xNl60Gwy+/ZxYlh6NzOhdpnJn+oy/E1HuN+nxbn+weHFao+iLKZkF9
1243             2YMPjxzKFSTKj8xzixzJvSfLskwRpIxoz2bLxPRsreyiTafLkxzJckjJIWYVh2yodaHKyVxQXpJ5
1244             3tgeL+oFaYI2wtOQ07zNmdAnmDdA3BzO4swpA4R2iBcD6JzO6rzO7NzO7vzO8BzP8ozONhABADs=
1245             ---
1246             filename: htdocs/images/egg88x31.jpg
1247             filetype: bin
1248             value: |
1249             /9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAASwAA/+4AJkFkb2JlAGTAAAAAAQMA
1250             FQQDBgoNAAACtgAABGgAAAWtAAAHGv/bAIQAAwICAgICAwICAwUDAwMFBQQDAwQFBgUFBQUFBggG
1251             BwcHBwYICAkKCgoJCAwMDAwMDA4ODg4OEBAQEBAQEBAQEAEDBAQGBgYMCAgMEg4MDhIUEBAQEBQR
1252             EBAQEBARERAQEBAQEBEQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQ/8IAEQgAHwBYAwERAAIR
1253             AQMRAf/EAL4AAAEEAwAAAAAAAAAAAAAAAAUCBAYIAAMHAQEBAQEAAAAAAAAAAAAAAAAAAQIDEAAB
1254             BAICAQQDAAAAAAAAAAAEAgMFBgABEwcRMEBQMRIUFhEAAQMCBAIGCQQDAAAAAAAAARECAwAEMRIT
1255             BSEiUYEyQmIUECBBYXGhwVIjkeGCBjOzdBIBAAAAAAAAAAAAAAAAAAAAUBMBAAICAQMDBAEFAAAA
1256             AAAAAQARITFBUWFxMJGhEECBsdFQ8MHh8f/aAAwDAQACEQMRAAABsCR42DsQSkwwVCRvWFeyVBgN
1257             kXOihuNwIyGbEyoR2EruWCIAWhNmDSUVkU7RucoFDILEQOsBiGea91G9f//aAAgBAQABBQIgohBD
1258             lsFbQm0MrdGnUE7GsTJCuTWcms5NZ+ecmscd14Vl+uc1XJitPWyYBlbtW4UwM4CQbZ7CrBJDStut
1259             jtp0hf079v8AnxvO4N61Zeu5xCoKs7F/u77PASdY6mPr0eLHnASwSDWmsKmAmkgmkmPma1rTzric
1260             s0fUJA+Jh6uO5Px9CPkoQOrRziIPrVTkB+mFEuEL3nKzjZC9Y+++rP/aAAgBAgABBQL33nNer//a
1261             AAgBAwABBQL4z//aAAgBAgIGPwIz/9oACAEDAgY/AjP/2gAIAQEBBj8CbDbsz8A52GBKdI+tGUxE
1262             tBRWlUKZkPQQ0EkV5dsJ1EjLWEp/kyJ7PGKvcoaPKtUhVIKyN5ujsVBG2NTOS1jmODmEtQu4joB+
1263             R9TD1IrLbSwRyQNldmYpzF72/SrPeZbyDRn5pLfQR2UOIIzZqdY3tyk7eMjGMc9PjlFDdWxvjjjY
1264             4tnnY6IBh4k86frQtbWaSeVxRjI4JXF3wQUJMpavdcENB2K+30D02v8AyM/2yVtm1CwvFyuHmtAi
1265             27TiuoSlQt/s+PmJPManZ1+KZl8dbpZ7Jc681qWedZGHcseoh4pW5324yshuYspMj8RB4f5Yp7qZ
1266             uG3Sia3lXTkChcpynH3itKY5EwJwSjz6h+1nH9qzPZkZ3R6OVpPVUc39leyO5EYaxsk+idPM4jgo
1267             9q1bz7TK92RwNu1l097CV+3Mh41JNvToYrzCcG40XL4m5hxq+dthbKXxJfh02skSd/MSgSnOgmiD
1268             iHkiO97qHNg/BPlUFtsTdSxZn0XsJlbxeS7m495a/JGesV2K/HGeoVzMcOo1/9oACAEBAwE/ITr7
1269             YULJVYwcHhB5MYriwDqmCu8yUtwqupvA5uonkEwvSawBXg6Q2BbgNYq2vIcTtztztz+yp24WEyp5
1270             RVyM30MxhZYodDg0NNTBvlgKYGhdcblFRWqA6YUXhrmIXgyQ6LWeLTrzyTAVG+WHVQkHKbWvOL/x
1271             K/olk1Eq6xjVSnHnBmMoMHH+iMd464gT8pBSzgJe6XF8Tk0DEY6n/acTEMSgs4COEIklfTXwz21E
1272             Q6M7v5/lGfHNtHnrFtT4BlLoD+0oDvLZfxC+JJ1wAPtKgPLQRQFVaHKXUHPxGR4e7Tiov5RhTqV1
1273             O+OUtUyFjBC2y5Y1NJ/KTN1+IN8tZgPKFP/aAAgBAgMBPyH724wvSx9f/9oACAEDAwE/If6Z/9oA
1274             DAMBAAIRAxEAABAW021+m2m1T0iAQcM0kQ0on//aAAgBAQMBPxDFuBs5B8ES5cW2x85e+A+GuURm
1275             MPMUFTXb6DTCNysqMgldx5sN5oRG3hS7xbXvNp2HsTsPYlnD2jQtYdf+I6Ke0QKB+JUxBMZ7JowY
1276             15b5oC3i1iroLrcrotriqEahs0KsMStMIsttVisWVUWKpW2c70EL1qCA4UXQRnyXV+JRMMcBss6V
1277             MrrcDRV/5KNdrS6G6lFBip5fEyxtLkECsDpaihwlalCngzq5nJXJDS21jKtBYMjdygL1KKRaoKKo
1278             BYOJWPz8D2w4jqnQjZqCtCNHydnZiZ5PBiDyxgm3UtFtBaotqc4Kf1FKQ6v/AERG2ymMVIcrlEuL
1279             lK9cYVG12CzOl7Eio9Owpd4ihTMBGxCJsRdsBzEqcZiBEvJpc6TdLOUaicrDwqE15Qvkm/8ANggc
1280             cP64g6EeSPkJ/9oACAECAwE/EPQv02G/RwgERfRalQV9P//aAAgBAwMBPxD72pTE9LP1/9k=
1281             ---
1282             filename: htdocs/images/egg80x15.gif
1283             filetype: bin
1284             value: |
1285             R0lGODlhUAAPALMAACEhIfzKC/f28nt7e/2gHfvaZk9OTri4uJWVldjX1wcHBz8+Pmppaf2ANP//
1286             /+vr6yH5BAAAAAAALAAAAABQAA8AQAT/sMlJq704682nS04ojqIAPgyCMiszLO8DL/JQ07jKsLSr
1287             PgoF4AFUsB4AIXHpkJAEhYC0ICA5ltisdsvlBofdbLNhLZPC6PQytQy6i0Gk+zg226/qvHow2P3Q
1288             dQ4CD1BShlRMVwwGBjZ6Wws6R1pfRAxBBw8HQZMPdYMJCYRVgg+hBwlVK5arM0SROK8IsZGtKAZt
1289             c18GCgucAD9jHcPExcYVd8nKy8zNIk7OeI/TlG4KaoEiUYYBVKQh1OFYlURuuEm9mZ5OhCGFBAQF
1290             nqWeKAgHKYwPuLGM/Lj+ZDCotUifih/kyPm6hqUOkW9lTJxYhCABix0tePSR8WpjDlsGOhiomzMg
1291             iIEDB5KAYQKtVAKUMFGlErFK04KTHGmgWMDDEs99A3UwOqITjqUgvjb1MkIkW7SnUKM2iQAAOw==
1292             ---
1293             filename: htdocs/images/egg125x125.gif
1294             filetype: bin
1295             value: |
1296             R0lGODlhfQB9ALP/AMDAwPPz8NfX1Pj49u3t6+bm5NDQzvz8+97e3cfGvri3sqSjonRzc////zk5
1297             OQAAACH5BAEAAAAALAAAAAB9AH0AQAT/EEi5qr046827/2DYTdTSnGiqrmzrvnAsz3Rz1Xiu7/x7
1298             uwqGkLFACBfC4HBYXDISQ4TBmUAShSirtbE09b6qH3hMXh0Og0AgrW6rCXBCoYAoEAYzMcvx6Psf
1299             CwaCBgKFCHdlM2cHOIyLA5Bsb3Fwc3QILHorfH99gQIFA4wNBp2eCYJ1d6WmC6gGqqKjKgcEZzuO
1300             Z5FuBJNxCAINs1kWL5ydDsnKCg2mD4QIAcPO0NItuWkDAmuyi97fupGQbgFwbwIKCerQdmu3B5oq
1301             x85+CncDCPR+DtCs+vygpGErR6eQugQKFIAy10aOFIQgEqZTJ0AVt0XxEmmkNcqbuDXk/8qJHBmS
1302             G6RvJ26lyHiC07xjAvwwILRAZr1DA2o+OCZkXx8HOnf6CbrApQKfDxgc/fkzKJGhLmVG7cOggLUT
1303             LE9AXJDuAiyuXjNAu1Ora4UgfqooQEC0goEqFbYqLHTWENuEFuietQBNQVxBfsHWDTUqq0skyY7k
1304             VLZAlDIGyYIkE3CmaLLGlhHzS3zASOIE8B5D/gkZqLCNLrIy8CPAJShqSIX2MTBv9mqmPw0ElXn7
1305             QcWpDxIQRp2pGPHjyHlUAGA8ufPnxReU8AK9OnQLzKlb3/48awMlR4ah3oIVC3cc3pVgKn8kgBK/
1306             QjCBXxAg/Hcm7p1k6aItyvkW3tXmjP8D/7GwyAvffNRQOZTMUVFqze3hjCsBySLKUqY4sA1Du/2h
1307             IYNqiGLGVTo8sgsvDFZyiXg2RLjJhISEgkKGqFRky4zI1HgIiyjMYpU3NHh0IopxFABKNgcW5qI8
1308             zhBRV0UxmTKThwMU0KQ/OyF5GhppXJJANOKEKaYkvBCgWwVOWjARLO3I0mIFMBwQQEGFQFlnRTid
1309             MScwhtxZh0B71smnIb10lBKXDM6BwKCCHOToo5D6uegcvVzkCFZLnkBbMlMkNgBjyiS26WM3kjFq
1310             pw4woBIOp66KXqYnYIgbVVEmlYAATg2FU2+8IQVUbEQdZtNOHRI7VLCzjiZbUgb8iCn/nHGetuWl
1311             wlBbbUrXHCrJO3K6wyMPs7iKLUc8quYHbfVMwatvscE0oT5I+NpbILUV4mx3sKYEYoonUtKLvwCD
1312             RAk3APcSycCTcJMiQ99u5F2BEO+wHAkiVGzxxRhnPAIJ00Eb8cd5XDAdyCRL/HDJKEenXcos+5Bv
1313             yzC/ubIKUFzBABddJKFzVU4UsIQAPVsxREpC76xEyenFd4IRNsPnxFpH7GwC01Y4TR48UasKHjMk
1314             n2yGgc/hs2jD53kdswu6cCvkkAkTtCgBMASozx/0CfSfiIqYOM4bC8shh5F4rCB3K4LgOekdBAjo
1315             YQInJD63A4yjjXcOepMpUoMFBb7S/8uKfyIj0QMKQEhFcxS7k+iGtMniGj1UTs6/RRoZgMrGwCgA
1316             Ii1JWXieDQg401iTszDngZSHs/eCDQKD7aqDdxJIHZpnmAruJ0gPC/VmHGhHN9KivbblIMIhgHAW
1317             eXtL8/Cq4buNpd28/iHt0yLMOHYYYFIk4BivIN9vIBDYWRMhncFEhL59UMEqCRgQuk7nPwW65k/c
1318             SoMcRIcQA9xjTCVpAwLgkqY0cSUd7DDY+V5WNCcsYS3bO4AJnQC8FS4hRjcaCEEK8hZHSeSGOASL
1319             X26IEEelTnUHOhmishGiEOFPW0Qs4kmQCBIlBk9tiJqEHSyhqEVZ8Yp1qMMU7VCpbP9wj3hmOxvI
1320             siKVoZjRQ0E5RgLc0QDPpMoAoUlMqsz0GE5hSDNV8VliFKCn0gBFhTKxjAPsIZk5qjBUqRIXSwD5
1321             j1pRRVbnwgkU5tET3PxqVsgyFlUsMEk0HgsqyQIOA6CnJI+xwEO8WoAjPTGh23FBSuvSpPNAeTop
1322             FeuSO5lXLIuSrICUcmYqkGAcUtTESpijSOZ4hzCPWRAtMsiKlPIFMZc5wEQxpG/moGZD/EWirBCg
1323             feIqGTjJdhyWDGBelIwNAdrlhwIARyfH4MRTLMmrZCCjHeQsg7lm45pVzoad/6QKLU0xBXmdqzWd
1324             GCX2kpMV//kFHYMhQBXgokoP2Cj/MIsSXWAoqpA6nEkBjcrLBncIly+xDl+mDJL8xJM/+ZEhnwx9
1325             mRhRhoGZihE72ZGpTauDAY5p7KdADapQRTaBMO70OtjR6VH/U9OlwsyoTrUOVKOK1JRSdYxKvapU
1326             s6rVqgITBQ5Nh+aOY4CEoKCsXDtb0mzWgALk5UxuXUBcS1eBYFyArqpsK5rMgzUnlZUrcO3ay8AT
1327             n6xpIWtU25kQala1w95MGI5N7GOxatUU1AwWnckaYZkAtDSpa2pHiItjiZY1GzABpij9qlaU1lYq
1328             OFYpPlsCY1sr2xKSdgkN6KxSkPYyAixqrA5hhG8PcQk8yGlsbazDaQKA3LYSdz0H/7gEc9t4Wt5W
1329             tqsIIhMyqWg3Gkz1qOF4hP5KUolJjRVAXLUpSsg1XuQtzEgIaFgB6WEL1B6HeAj6Hor6ZqQCoPe6
1330             uZvbTw5BIusETwau2+92QUE7F3RuEIOw0YGTM+G8cel4l8Mc4ATHOdupIpu908co5xdieowYDeFs
1331             QIEb0V5fbNdILJovIK4HXMU54BJaRICNcUypJaYgDa1rMd8WDDcOA7jEzqMxCj5FowjjZECvYIe3
1332             VsBGXAgZYJaIRoNb8ODbaS6WkNsdWcD8Cgk3zLfXKpGQw2cJAQROPDJ+HvWokYrhNIOgda4wtgZQ
1333             3+4hWL/Io8SiBHKpX9aOcF7Gkf+HCmfnOy86Rnoexo+AFINcXFi7ACvESL4os0MnOdHVy5GNpiHq
1334             HXnvEVbpBqVTkKAwBZpB4xudRU5iaAcLuA+2EFBHC6zriqy4R9ViAx3ClD8hXfp1DVFLQijytnvU
1335             mssCdoAVTfeVfcCDGmyxtkocIWz43m9Ml2ZbQwpAUTUFcNYjPHLnosyOzinrxu6c0Lt7rEw10OlW
1336             3x4T+M7BwQxI5FYLMZ+MTWEPxwzIJdCwMcJ9rUwJ0rCHBE5iSCoxvg8sW0dw8PHAnYdP0+0jRgHw
1337             eG4Yfig0uM0gByHpo/5n8X/rqB1ThodO5/SWGq7DyWSphRRsXjh7CcS3jbq5oKz/0RGTzzCjFIQU
1338             Dnm47IkcxC7RtFS6VZsSh1Px6inU19+wLkJhzJDr1Nt2FBNVRaTfiRCjExSfJkWpSpkvzV4rNjiy
1339             11KWyv0alr5wmZDptyn2HWFtwN+2w5BeltndI+HWt+Dnfqj/Uh27W71uPjzhLlZ6CJI7qfIXEtgH
1340             BbhE8y/g/APSUQ8fv+q6TE7KH3ojegZUJFee+JGVOgE0KWF+kLSUdm0UkPqBqt4TxYq389z0LNXe
1341             5iV+mHwgdUfg4/fKkmk8IyCEBX1ftSX3ZVyWQvGWFZHXkjQVGBYgdqTjhPaG+svKJC7VZARkXJ/y
1342             oezlvRqKytXXKlXz/P347+B8/6qcvynAknuwh3vVB3zYRxWidCTPtgK9l3+j50+3RGOzt3qx5ICb
1343             lHu64SGFUBuQE09D4Xmrt0A84UvF9wJdAk08Vl54UnbQJBB8RidAowyy5nmXAQ1adAlVxEUp6BCG
1344             k2VYtEVXNEUZZUVkUYL5JXjioD/6hl9KOEMZBwkqMkCigD+0Fl6WRmyJ1w1JmIXMU3jIgV/VAoYs
1345             Y05pBHol83l6hhxktA+UtC4MMACP800JpRPKQofKVw/15BKckGr29QX79AzpNCvK54F9MIhnRIjx
1346             Qk8esnsQ5FUu0BsItROEEEv3Fxv3NwQg6AxQYFCzsUC60mgxBWCQiHCGGFDLUpN5+peIp1hQitgH
1347             G4gMCuiILTCKP1ERseQPhOgbkDRKRCETsFBPm+iK5bcT8mQHfdgD3vGCb4OD/SMoPggMViRADnE4
1348             5YVFlYJjqqAo7TBcLXhe5fQyxmOFSqh4i7eF46hqW2iOWHiMyuGFkDce7viOGvFd8pgI9FiPZNBU
1349             +LgdSRWP+5gDRNUxQzWQBFmQPSUBEQAAOw==
1350             ---
1351             filename: htdocs/images/egg224x33.gif
1352             filetype: bin
1353             value: |
1354             R0lGODlh4AAhALMAANDQz2VlZfj497OyrISDg+vr6Dk5OfHx78XEw6SjoOLi4JaVk9vb2by8ugAA
1355             AP///yH5BAAAAAAALAAAAADgACEAQAT/8MlJq7046827/2AojmTpCahwrGuhFCJCyAhDLAQz5HOy
1356             yDiBrEcgJB6J20xSxBUIDZlpSt0QHFisAQFgeAsCCa5Ivk0U5bICdPikWK0DoEqv2++Ya9ZhALQn
1357             ew4BCDATelkNDH8gKgUMCGspkpIHDD4LCwkJA1wKB0JZhwEABoINpIIBfAxhWAtYCK6upQG0qgav
1358             DrEOuQqyuq4JsL8LtLSsV31YBKi5xYLGqXy3uXxYAc7DDsyl3ayGgbiZCQAoqnsGDNePgdt6hHjx
1359             8vP09fb3+Pn6VIftvPsSwnR4A6eAi0UcZDCQIGMHggNFhgBIsqOAwgc3cCCZsQTjgh3I/6AAxNeP
1360             jx8KB9otiOJJQEkDA06BAbFwAyU4chgY/PRAVa1fqAYFvaUgTDc+ArRgGXDUHZ9cDI4GEHAUlxY9
1361             DG5hKdCUgNFlWQwk21oq7LIGSgmUQlBKnQNf1gw8CEsLC08m/rIseFBWS1EKwvYkQBgCxQEXXgAo
1362             RsC4cWPFXl6sEPhATqdHAApUYtxlcacwlRRDRnCqiwIAURQrOJ0482nFmhmIBqBAdmfXol/Itl1U
1363             AOvXml9D3g1ZtSPIBiEDD20cdujEMx8IeNSguvXqNcJMJ309yrcCALhfPzmyvPnz6KkQbKGZcowm
1364             hKfYQMDkSHqS7QLoD0Dg7/0K67G3Gv8IQCQgBEdcGJEJAQMkoYlFzGBkxBFJzFefQg2M8x8eL5E3
1365             QUrtDMBASyUJ8oV7G8SXQYCHuYDihhIksYCKMJbQIULnZJEAJALBlUUAp9CogQCFcMDiYTVJUEoS
1366             SGERVRZM7bEXCcmwZcCLFhjQBylXepDMAljaU4pXFtxIQSA5uNfPFkUyssJCkgQ0CRxENhhTF+2N
1367             VRVbWXC1xyhtDPCTAwCAxUs0+j2lDSYLWDJoodvksosziBZV5TUIJDDoMz91uqZWgijKi5OY9rWA
1368             hyXuR04B1VxzQFkEvBoIA2jZFSaAKtSGGicjrkZrg5oEu0lMNbyQQhZ88vLkMn1tcxL/qLt0w2dZ
1369             moqKwAA6AgDtOe8EJgifnSJjkisKvFIWp4hqq8Up1+TCzCE/kGvLNouUuEesKthrYiXN7gFPYYax
1370             Z9DAA7OQQj0q3JXwrTXmM8nD7kGMwgQSM9zwxRhnrPHGHD/QQBppCNnxyCSHoK8WIusDMQsEW4xB
1371             Q0s8spBiB9TwyAPhtfGII0IgABpjHRlBs80PlfzBSzFh902NRyIWggxJAE0DDQpqwmAOEmVEwEYW
1372             YrRjDprsYPTR4WQWJxL+DCJQv0+1WQeLA/vXwUUPUF3DDT4QMRGECxnRAIU80Oe1QgBMOLaXZRNW
1373             4o60HZZfatGdcELALB/0Ad0H4GCg/4Q25MCqSBcVHiHUQTMaBg6CH25F4hS0agqPSgaSQCIpX+Ay
1374             xZSzl6TqvIODjod8oUP7BN66QsjtFbgwee6HvWBIfx/vVUS5ZFBfRAMmRI/G1h9sDwIO2I8E/gVm
1375             AnIv8GvCPoLbGNwEhx8TB68WH4Ep0M0MY97yhwK1jMIXLmLBiFj0AxE+NEBLBulfG/hngFHUKgBM
1376             MUACGzgHtRCAgLELQAK0hAOINPAIFtQP/wLQhg0GUEsCFKBiahGr/+FgTGoJH17Q8ZHqrCEQAZAb
1377             RgIBPDc8wBPSad+RSGMcFCQDVnxIVjqaxYw2YCEwBfjFBqHhFKsQ6olbweJblpELSP8FZoo/aeGl
1378             tLCkJ0ZjfkWYBh/K6IAvajGKZAyFInznDwN4IkdYKMcBceGWH8GgFnI5wWEyI52KGUwOPghbJz6B
1379             rbrQIig1mFc6wgAtQ6FLGlbcxQVH0RRNBkaTs6BiAMSljG0gAFSX7NQt9qMVLYnqHctIlokogzTs
1380             +MFHoShLDkuin7LM0UhIQk05VuaIATAqWHfSySeSspRzLWsb3ejGSa6hjXM1JVGZVIodqQkMQUhK
1381             KW1EFCkh1Z+6HEqUtNADLbClRkGwsyyatB8Vy0FHf3Cvj2Yx0RPaAU/2ta95tiHNAAZK0IImjTMj
1382             ao8ELMIr1EACPNVZTBSI2IaaRSGrCrGMAi0eEx7PyGaitCGNSKmjGO841KRcYAwrttMFxrwgPCJd
1383             DExnSh2V1hQ1iVCASLnwiId2lAtF2gErh7qA3hRgqPtJ0wEEhdRB+HNFCTOIr7xA1aquZifLpEAj
1384             PnGYZbaocgqVAMsGSRvNPKc9CTPYVinXHpx4Fa04EcjCJiOdOLhVrWtN68IMA1ev0olijqiqYKNz
1385             gNoIVifaCaxgdQiwik2id5CtUQQAADs=