1 |
< |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> |
2 |
< |
|
3 |
< |
<!-- |
4 |
< |
$Author$ |
5 |
< |
$Id$ |
6 |
< |
--> |
7 |
< |
|
8 |
< |
<html> |
9 |
< |
|
10 |
< |
<head> |
11 |
< |
<title>i-scream libstatgrab homepage</title> |
12 |
< |
</head> |
13 |
< |
|
14 |
< |
<body bgcolor="#ffffff" link="#0000ff" alink="#3333cc" vlink="#3333cc" text="#000066"> |
15 |
< |
|
16 |
< |
<table border="0" cellpadding="2" cellspacing="2"> |
17 |
< |
<tr> |
18 |
< |
<td valign="top"> |
19 |
< |
<!--#include virtual="../left.inc" --> |
20 |
< |
</td> |
21 |
< |
<td valign="top"> |
22 |
< |
<!--#include virtual="../title.inc" --> |
23 |
< |
|
24 |
< |
<h1>libstatgrab</h1> |
25 |
< |
|
26 |
< |
<ul> |
27 |
< |
<li><a href="#news">News</a></li> |
28 |
< |
<li><a href="#what">What is libstatgrab?</a></li> |
29 |
< |
<li><a href="#download">Downloading</a></li> |
30 |
< |
<li><a href="#documentation">Documentation</a></li> |
31 |
< |
</ul> |
32 |
< |
|
33 |
< |
<a name="news"><h2>News</h2></a> |
34 |
< |
|
35 |
< |
<p> |
36 |
< |
<b>Tuesday 09 September 2003</b><br><br> |
37 |
< |
We're pleased to announce a new release of libstatgrab.<br> |
38 |
< |
You can download version 0.5.1 from |
39 |
< |
<a href="http://www.mirror.ac.uk/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab-0.5.1.tar.gz">here</a>. |
40 |
< |
This release is primarily a bugfix release.. |
41 |
< |
</p> |
42 |
< |
|
43 |
< |
<p> |
44 |
< |
<b>Monday 25 August 2003</b><br><br> |
45 |
< |
We're pleased to announce a new release of libstatgrab.<br> |
46 |
< |
You can download version 0.5 from |
47 |
< |
<a href="http://www.mirror.ac.uk/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab-0.5.tar.gz">here</a>. |
48 |
< |
This release provides both documentation and examples, which |
49 |
< |
we hope will make the package more useable. Stay tuned for the |
50 |
< |
next release with some useful tools. |
51 |
< |
</p> |
52 |
< |
|
53 |
< |
<a name="what"><h2>What is libstatgrab?</h2></a> |
54 |
< |
|
55 |
< |
<p> |
56 |
< |
libstatgrab is a library that provides cross platform access to |
57 |
< |
statistics about the system on which it's run. It's written in C and |
58 |
< |
presents a selection of useful interfaces which can be used to access |
59 |
< |
key system statistics. The current list of statistics includes CPU |
60 |
< |
usage, memory utilisation, disk usage, process counts, network |
61 |
< |
traffic, disk I/O, and more. |
62 |
< |
</p> |
63 |
< |
|
64 |
< |
<p> |
65 |
< |
The current list of platforms is Solaris 2.x, Linux 2.4, and FreeBSD |
66 |
< |
4.x. The aim is to extend this to include as many operating systems as |
67 |
< |
possible. |
68 |
< |
</p> |
69 |
< |
|
70 |
< |
<p> |
71 |
< |
The package also includes a couple of useful tools. The first, saidar, |
72 |
< |
provides a curses-based interface to viewing the current state of the |
73 |
< |
system. The second, statgrab, gives a sysctl-style interface to the |
74 |
< |
statistics gathered by libstatgrab. This extends the use of |
75 |
< |
libstatgrab to people writing scripts or anything else that can't |
76 |
< |
easily make C function calls. Included with statgrab is a script to |
77 |
< |
generate an <a href="http://www.mrtg.org">MRTG</a> configuration file |
78 |
< |
to use statgrab. |
79 |
< |
</p> |
80 |
< |
|
81 |
< |
<a name="download"><h2>Downloading</h2></a> |
82 |
< |
|
83 |
< |
<p> |
84 |
< |
The latest version of libstatgrab can be downloaded from our |
85 |
< |
primary download |
86 |
< |
<a href="http://www.mirror.ac.uk/sites/ftp.i-scream.org/pub/i-scream/libstatgrab">mirror</a>. |
87 |
< |
All downloads are pgp signed using our <a href="/pgpkey.shtml">PGP Key</a>. |
88 |
< |
</p> |
89 |
< |
|
90 |
< |
<p> |
91 |
< |
For installation instructions see the README and INSTALL files |
92 |
< |
contained within the archive. If you're using |
93 |
< |
<a href="http://www.freebsd.org">FreeBSD</a> you can make use of the |
94 |
< |
<a href="http://www.freshports.org/devel/libstatgrab">devel/libstatgrab</a> |
95 |
< |
port to install libstatgrab for you. |
96 |
< |
</p> |
97 |
< |
|
98 |
< |
<a name="documentation"><h2>Documentation</h2></a> |
99 |
< |
|
100 |
< |
<p> |
101 |
< |
The only online documentation we have at the moment is the manual |
102 |
< |
pages converted in to HTML format. It's probably best to start with |
103 |
< |
the overview manual page: |
104 |
< |
|
105 |
< |
<ul> |
106 |
< |
<li><a href="statgrab.html">statgrab(3)</a></li> |
107 |
< |
</ul> |
108 |
< |
</p> |
109 |
< |
|
110 |
< |
<p> |
111 |
< |
Then we have the manual pages for each function: |
112 |
< |
|
113 |
< |
<ul> |
114 |
< |
<li><a href="cpu_percent_usage.html">cpu_percent_usage(3)</a></li> |
115 |
< |
<li><a href="get_diskio_stats.html">get_diskio_stats(3)</a></li> |
116 |
< |
<li><a href="get_general_stats.html">get_general_stats(3)</a></li> |
117 |
< |
<li><a href="get_load_stats.html">get_load_stats(3)</a></li> |
118 |
< |
<li><a href="get_memory_stats.html">get_memory_stats(3)</a></li> |
119 |
< |
<li><a href="get_network_stats.html">get_network_stats(3)</a></li> |
120 |
< |
<li><a href="get_page_stats.html">get_page_stats(3)</a></li> |
121 |
< |
<li><a href="get_process_stats.html">get_process_stats(3)</a></li> |
122 |
< |
<li><a href="get_user_stats.html">get_user_stats(3)</a></li> |
123 |
< |
</ul> |
124 |
< |
</p> |
125 |
< |
|
126 |
< |
<!--#include virtual="../bottom.inc" --> |
127 |
< |
</td> |
128 |
< |
</tr> |
129 |
< |
</table> |
130 |
< |
|
131 |
< |
</body> |
1 |
> |
<!--#include virtual="/doctype.inc" --> |
2 |
> |
<head> |
3 |
> |
<title> |
4 |
> |
i-scream libstatgrab homepage |
5 |
> |
</title> |
6 |
> |
<!--#include virtual="/style.inc" --> |
7 |
> |
</head> |
8 |
> |
<body> |
9 |
> |
<div id="container"> |
10 |
> |
<div id="main"> |
11 |
> |
<!--#include virtual="/header.inc" --> |
12 |
> |
<div id="contents"> |
13 |
> |
<h1 class="top"> |
14 |
> |
i-scream libstatgrab homepage |
15 |
> |
</h1> |
16 |
> |
<div id="topnav"> |
17 |
> |
<ul> |
18 |
> |
<li> |
19 |
> |
<a href="#news">News</a> |
20 |
> |
</li> |
21 |
> |
<li> |
22 |
> |
<a href="#what">What is libstatgrab?</a> |
23 |
> |
</li> |
24 |
> |
<li> |
25 |
> |
<a href="#download">Downloading</a> |
26 |
> |
</li> |
27 |
> |
<li> |
28 |
> |
<a href="#development">Development</a> |
29 |
> |
</li> |
30 |
> |
<li> |
31 |
> |
<a href="#documentation">Documentation</a> |
32 |
> |
</li> |
33 |
> |
<li> |
34 |
> |
<a href="#screenshot">Screenshot</a> |
35 |
> |
</li> |
36 |
> |
</ul> |
37 |
> |
</div> |
38 |
> |
<h2> |
39 |
> |
<a id="news">News</a> |
40 |
> |
</h2> |
41 |
> |
<p> |
42 |
> |
To get notifications of new libstatgrab releases why not |
43 |
> |
subscribe to our project over on |
44 |
> |
<a href="http://freshmeat.net/projects/libstatgrab/">freshmeat</a>? |
45 |
> |
</p> |
46 |
> |
<h3> |
47 |
> |
Thursday 20 May 2004 |
48 |
> |
</h3> |
49 |
> |
<p> |
50 |
> |
Version 0.10 of libstatgrab has been released.<br /> |
51 |
> |
Download it |
52 |
> |
<a href="http://www.mirror.ac.uk/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab-0.10.tar.gz"> |
53 |
> |
here</a>. |
54 |
> |
</p> |
55 |
> |
<p> |
56 |
> |
This release concentrates heavily on standardising the names |
57 |
> |
of functions and structures throughout libstatgrab. Although |
58 |
> |
this will mean changes for existing programs, in the long run |
59 |
> |
we hope it'll make things both clearer and easier. However, |
60 |
> |
for those who still need the old functions we have provided |
61 |
> |
compatibility wrappers. See the NEWS file for details. |
62 |
> |
</p> |
63 |
> |
<p> |
64 |
> |
The other main change in this release is a new function to |
65 |
> |
provide full details on currently running processes. See the |
66 |
> |
documentation for sg_get_process_stats for details. Along with |
67 |
> |
this there are compare functions for use with qsort for sorting |
68 |
> |
process, network, and disk io statistics. We've also introduced |
69 |
> |
error reporting functions that allow calling applications to |
70 |
> |
see why libstatgrab has returned a failure. See sg_get_error. |
71 |
> |
</p> |
72 |
> |
<p> |
73 |
> |
Finally, we've added support for NetBSD 2.0 and tidied up lots |
74 |
> |
of areas of the code. This release does not include the python |
75 |
> |
bindings - they're now available as their own project called |
76 |
> |
<a href="/pystatgrab/">pystatgrab</a>. |
77 |
> |
</p> |
78 |
> |
<h3> |
79 |
> |
Sunday 21 March 2004 |
80 |
> |
</h3> |
81 |
> |
<p> |
82 |
> |
pystatgrab, a new package containing a set of Python |
83 |
> |
bindings, has been released. Check out it's |
84 |
> |
<a href="/pystatgrab/">project page</a>. |
85 |
> |
</p> |
86 |
> |
<h3> |
87 |
> |
Wednesday 10 March 2004 |
88 |
> |
</h3> |
89 |
> |
<p> |
90 |
> |
Version 0.9 of libstatgrab has been released.<br /> |
91 |
> |
Download it |
92 |
> |
<a href="http://www.mirror.ac.uk/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab-0.9.tar.gz"> |
93 |
> |
here</a>. |
94 |
> |
</p> |
95 |
> |
<p> |
96 |
> |
This release brings new features and new platforms. We've |
97 |
> |
added information about network interfaces (duplex, speed, |
98 |
> |
etc) along with further statistics such as i/o packets, i/o |
99 |
> |
errors, and collisions. Support has also been added for |
100 |
> |
OpenBSD and DragonFly BSD. Finally some work has been done |
101 |
> |
to reduce the platforms on which libstatgrab needs elevated |
102 |
> |
privileges. See the NEWS file for more information. |
103 |
> |
</p> |
104 |
> |
<h3> |
105 |
> |
Wednesday 11 February 2004 |
106 |
> |
</h3> |
107 |
> |
<p> |
108 |
> |
Version 0.8.2 of libstatgrab has been released.<br /> |
109 |
> |
Download it |
110 |
> |
<a href="http://www.mirror.ac.uk/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab-0.8.2.tar.gz"> |
111 |
> |
here</a>. |
112 |
> |
</p> |
113 |
> |
<p> |
114 |
> |
The main focus of this release is adding support for |
115 |
> |
Solaris 6. We've also added Python bindings so you can use |
116 |
> |
libstatgrab directly from Python (see the extras |
117 |
> |
directory). Finally, we've tidied up a few bits of the |
118 |
> |
code. |
119 |
> |
</p> |
120 |
> |
<h3> |
121 |
> |
Wednesday 21 January 2004 |
122 |
> |
</h3> |
123 |
> |
<p> |
124 |
> |
Version 0.8.1 of libstatgrab has been released.<br /> |
125 |
> |
Download it |
126 |
> |
<a href="http://www.mirror.ac.uk/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab-0.8.1.tar.gz"> |
127 |
> |
here</a>. |
128 |
> |
</p> |
129 |
> |
<p> |
130 |
> |
This release primarily fixes bugs. On Linux a file |
131 |
> |
descriptor leak was fixed. On Solaris some significant |
132 |
> |
speed increases were made to the disk mapping code, along |
133 |
> |
with some bug fixes for Solaris 7 platforms. Also, the |
134 |
> |
library part of libstatgrab (but not the tools) is now |
135 |
> |
released under the LGPL instead of the GPL. |
136 |
> |
</p> |
137 |
> |
<h3> |
138 |
> |
Tuesday 6 January 2004 |
139 |
> |
</h3> |
140 |
> |
<p> |
141 |
> |
Version 0.8 of libstatgrab has been released.<br /> |
142 |
> |
Download it |
143 |
> |
<a href="http://www.mirror.ac.uk/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab-0.8.tar.gz"> |
144 |
> |
here</a>. |
145 |
> |
</p> |
146 |
> |
<p> |
147 |
> |
This release brings support for Linux 2.6 and partial |
148 |
> |
support for Cygwin. On Solaris libstatgrab now returns disk |
149 |
> |
names using cNtNdNsN names rather than the older sdN names. |
150 |
> |
There are also a bunch of fixes and optimisations in |
151 |
> |
various places. Finally, a new function has been added to |
152 |
> |
make it quicker to drop any elevated privileges libstatgrab |
153 |
> |
may require on some operating systems. |
154 |
> |
</p> |
155 |
> |
<h3> |
156 |
> |
Wednesday 22 October 2003 |
157 |
> |
</h3> |
158 |
> |
<p> |
159 |
> |
Version 0.7 of libstatgrab has been released.<br /> |
160 |
> |
Download it |
161 |
> |
<a href="http://www.mirror.ac.uk/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab-0.7.tar.gz"> |
162 |
> |
here</a>. |
163 |
> |
</p> |
164 |
> |
<p> |
165 |
> |
The most significant change in this release is support for |
166 |
> |
NetBSD 1.6.x. Parts of the FreeBSD code have been |
167 |
> |
optimised, and an initialise function has been added to |
168 |
> |
allow programs to drop any extra privileges libstatgrab |
169 |
> |
needs. The list of known file systems has been increased, |
170 |
> |
and libstatgrab has been tested on even more platforms. |
171 |
> |
Finally, saidar has been tweaked to work even if it can't |
172 |
> |
get all the statistics. |
173 |
> |
</p> |
174 |
> |
<h3> |
175 |
> |
Saturday 18 October 2003 |
176 |
> |
</h3> |
177 |
> |
<p> |
178 |
> |
Version 0.6.1 of libstatgrab has been released.<br /> |
179 |
> |
Download it |
180 |
> |
<a href="http://www.mirror.ac.uk/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab-0.6.1.tar.gz"> |
181 |
> |
here</a>. |
182 |
> |
</p> |
183 |
> |
<p> |
184 |
> |
This release brings support for FreeBSD 5 on sparc 64, and |
185 |
> |
some bugfixes in FreeBSD memory statistics. Also, some |
186 |
> |
fixes to saidar, and statgrab. |
187 |
> |
</p> |
188 |
> |
<h3> |
189 |
> |
Friday 10 October 2003 |
190 |
> |
</h3> |
191 |
> |
<p> |
192 |
> |
Version 0.6 of libstatgrab has been released.<br /> |
193 |
> |
You can download it from our mirror site |
194 |
> |
<a href="http://www.mirror.ac.uk/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab-0.6.tar.gz"> |
195 |
> |
here</a>. |
196 |
> |
</p> |
197 |
> |
<p> |
198 |
> |
This release includes some exciting new tools, support for |
199 |
> |
FreeBSD 5.1, and documentation in manpages. Plus some major |
200 |
> |
bugfixes and packaging enhancements. |
201 |
> |
</p> |
202 |
> |
<h3> |
203 |
> |
Tuesday 09 September 2003 |
204 |
> |
</h3> |
205 |
> |
<p> |
206 |
> |
We're pleased to announce a new release of |
207 |
> |
libstatgrab.<br /> |
208 |
> |
You can download version 0.5.1 from |
209 |
> |
<a href="http://www.mirror.ac.uk/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab-0.5.1.tar.gz"> |
210 |
> |
here</a>. |
211 |
> |
</p> |
212 |
> |
<h3> |
213 |
> |
Monday 25 August 2003 |
214 |
> |
</h3> |
215 |
> |
<p> |
216 |
> |
We're pleased to announce a new release of |
217 |
> |
libstatgrab.<br /> |
218 |
> |
You can download version 0.5 from |
219 |
> |
<a href="http://www.mirror.ac.uk/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab-0.5.tar.gz"> |
220 |
> |
here</a>. |
221 |
> |
</p> |
222 |
> |
<p> |
223 |
> |
This release provides both documentation and examples, |
224 |
> |
which we hope will make the package more useable. Stay |
225 |
> |
tuned for the next release with some useful tools. |
226 |
> |
</p> |
227 |
> |
<h2> |
228 |
> |
<a id="what">What is libstatgrab?</a> |
229 |
> |
</h2> |
230 |
> |
<p> |
231 |
> |
libstatgrab is a library that provides cross platform |
232 |
> |
access to statistics about the system on which it's run. |
233 |
> |
It's written in C and presents a selection of useful |
234 |
> |
interfaces which can be used to access key system |
235 |
> |
statistics. The current list of statistics includes CPU |
236 |
> |
usage, memory utilisation, disk usage, process counts, |
237 |
> |
network traffic, disk I/O, and more. |
238 |
> |
</p> |
239 |
> |
<p> |
240 |
> |
The current list of platforms is Solaris 2.x, Linux |
241 |
> |
2.2/2.4/2.6, FreeBSD 4.x/5.x, NetBSD 1.6.x, OpenBSD 3.x, |
242 |
> |
DragonFly BSD 1.0, and Cygwin. The aim is to extend this to |
243 |
> |
include as many operating systems as possible. |
244 |
> |
</p> |
245 |
> |
<p> |
246 |
> |
The package also includes a couple of useful tools. The |
247 |
> |
first, <a href="#screenshot">saidar</a>, provides a |
248 |
> |
curses-based interface to viewing the current state of the |
249 |
> |
system. The second, statgrab, gives a sysctl-style |
250 |
> |
interface to the statistics gathered by libstatgrab. This |
251 |
> |
extends the use of libstatgrab to people writing scripts or |
252 |
> |
anything else that can't easily make C function calls. |
253 |
> |
Included with statgrab is a script to generate an |
254 |
> |
<a href="http://www.mrtg.org">MRTG</a> configuration file |
255 |
> |
to use statgrab. |
256 |
> |
</p> |
257 |
> |
<h2> |
258 |
> |
<a id="download">Downloading</a> |
259 |
> |
</h2> |
260 |
> |
<p> |
261 |
> |
The latest version of libstatgrab can be downloaded from |
262 |
> |
our primary download |
263 |
> |
<a href="http://www.mirror.ac.uk/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/"> |
264 |
> |
mirror</a>. All downloads are pgp signed using our |
265 |
> |
<a href="/pgpkey.xhtml">PGP Key</a>. |
266 |
> |
</p> |
267 |
> |
<p> |
268 |
> |
For installation instructions see the README and INSTALL |
269 |
> |
files contained within the archive. If you're using |
270 |
> |
<a href="http://www.freebsd.org">FreeBSD</a> you can make |
271 |
> |
use of the |
272 |
> |
<a href="http://www.freshports.org/devel/libstatgrab"> |
273 |
> |
devel/libstatgrab</a> port to install libstatgrab for you. |
274 |
> |
</p> |
275 |
> |
<h2> |
276 |
> |
<a id="development">Development</a> |
277 |
> |
</h2> |
278 |
> |
<ul> |
279 |
> |
<li> |
280 |
> |
<a href="/cgi-bin/cvslog.cgi?period=thisweek&module=projects/libstatgrab">Commits this week</a> |
281 |
> |
</li> |
282 |
> |
</ul> |
283 |
> |
<p> |
284 |
> |
We develop libstatgrab using the CVS revision control system. |
285 |
> |
Using this link you can see what changes we've made this week. |
286 |
> |
For more information on our CVS setup see our |
287 |
> |
<a href="/cvs.xhtml">CVS page</a>. |
288 |
> |
</p> |
289 |
> |
<h2> |
290 |
> |
<a id="documentation">Documentation</a> |
291 |
> |
</h2> |
292 |
> |
<p> |
293 |
> |
The only online documentation we have at the moment is the |
294 |
> |
manual pages converted in to HTML format. It's probably |
295 |
> |
best to start with the overview manual page: |
296 |
> |
</p> |
297 |
> |
<ul> |
298 |
> |
<li> |
299 |
> |
<a href="statgrab.html">statgrab(3)</a> |
300 |
> |
</li> |
301 |
> |
</ul> |
302 |
> |
<p> |
303 |
> |
Then we have the manual pages for each function: |
304 |
> |
</p> |
305 |
> |
<ul> |
306 |
> |
<li> |
307 |
> |
<a href="sg_get_cpu_stats.html">sg_get_cpu_stats(3)</a> |
308 |
> |
</li> |
309 |
> |
<li> |
310 |
> |
<a href="sg_get_disk_io_stats.html">sg_get_disk_io_stats(3)</a> |
311 |
> |
</li> |
312 |
> |
<li> |
313 |
> |
<a href="sg_get_fs_stats.html">sg_get_fs_stats(3)</a> |
314 |
> |
</li> |
315 |
> |
<li> |
316 |
> |
<a href="sg_get_host_info.html">sg_get_host_info(3)</a> |
317 |
> |
</li> |
318 |
> |
<li> |
319 |
> |
<a href="sg_get_load_stats.html">sg_get_load_stats(3)</a> |
320 |
> |
</li> |
321 |
> |
<li> |
322 |
> |
<a href="sg_get_mem_stats.html">sg_get_mem_stats(3)</a> |
323 |
> |
</li> |
324 |
> |
<li> |
325 |
> |
<a href="sg_get_network_iface_stats.html">sg_get_network_iface_stats(3)</a> |
326 |
> |
</li> |
327 |
> |
<li> |
328 |
> |
<a href="sg_get_network_io_stats.html">sg_get_network_io_stats(3)</a> |
329 |
> |
</li> |
330 |
> |
<li> |
331 |
> |
<a href="sg_get_page_stats.html">sg_get_page_stats(3)</a> |
332 |
> |
</li> |
333 |
> |
<li> |
334 |
> |
<a href="sg_get_process_stats.html">sg_get_process_stats(3)</a> |
335 |
> |
</li> |
336 |
> |
<li> |
337 |
> |
<a href="sg_get_user_stats.html">sg_get_user_stats(3)</a> |
338 |
> |
</li> |
339 |
> |
</ul> |
340 |
> |
<h2> |
341 |
> |
<a id="screenshot">Screenshot</a> |
342 |
> |
</h2> |
343 |
> |
<p> |
344 |
> |
Here's what saidar looks like when it's running: |
345 |
> |
</p> |
346 |
> |
<p> |
347 |
> |
<img src="saidar.png" alt="saidar screenshot" /> |
348 |
> |
</p> |
349 |
> |
</div> |
350 |
> |
<!--#include virtual="/footer.inc" --> |
351 |
> |
</div> |
352 |
> |
<!--#include virtual="/menu.inc" --> |
353 |
> |
</div> |
354 |
> |
</body> |
355 |
|
</html> |