ibm-information-center/dist/eclipse/plugins/i5OS.ic.cl_5.4.0.1/chgclnup.htm

576 lines
21 KiB
HTML
Raw Normal View History

2024-04-02 14:02:31 +00:00
<!doctype html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head><META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Change Cleanup (CHGCLNUP)</title>
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
</head>
<body bgcolor="white">
<script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<a name="CHGCLNUP.Top_Of_Page"></a>
<h2>Change Cleanup (CHGCLNUP)</h2>
<table width="100%">
<tr>
<td valign="top" align="left"><b>Where allowed to run: </b>All environments (*ALL)<br>
<b>Threadsafe: </b>No
</td>
<td valign="top" align="right">
<a href="#CHGCLNUP.PARAMETERS.TABLE">Parameters</a><br>
<a href="#CHGCLNUP.COMMAND.EXAMPLES">Examples</a><br>
<a href="#CHGCLNUP.ERROR.MESSAGES">Error messages</a></td>
</tr>
</table>
<div> <a name="CHGCLNUP"></a>
<p>The Change Cleanup (CHGCLNUP) command allows you to specify cleanup options controlling which objects on the system are to be deleted automatically. The cleanup options control the following:
</p>
<ul>
<li>whether the cleanup operation is allowed
</li>
<li>when the cleanup operation is run each day
</li>
<li>which objects are cleaned up
</li>
</ul>
<p>Refer to the following parameter descriptions for a list of the objects that are cleaned up.
</p>
<ul>
<li><b>User messages (USRMSG)</b>
</li>
<li><b> System and workstation msgs (SYSMSG)</b>
</li>
<li><b> Critical system messages (CRITSYSMSG)</b>
</li>
<li><b> Job logs and system output (SYSPRT)</b>
</li>
<li><b> System journals and logs (SYSLOG)</b>
</li>
<li><b> Office calendar items (CALITM)</b>
</li>
</ul>
<p>If cleanup is active when this command is used, the new values may or may not be used, depending on how far along the cleanup is. If cleanup is not active when this command is entered, the new values specified for this command are used the next time cleanup is started with the Start Cleanup (STRCLNUP) command or as described in the Basic System Operation information in the iSeries Information Center at http://www.ibm.com/eserver/iseries/infocenter.
</p>
<p><b>Restriction:</b> You must have all object (*ALLOBJ), security administrator (*SECADM), and job control (*JOBCTL) special authorities to use this command.
</p>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div>
<h3><a name="CHGCLNUP.PARAMETERS.TABLE">Parameters</a></h3>
<table border="1" cellpadding="4" cellspacing="0">
<!-- col1="10" col2="15" col3="30" col4="10" -->
<tr>
<th bgcolor="aqua" valign="bottom" align="left">Keyword</th>
<th bgcolor="aqua" valign="bottom" align="left">Description</th>
<th bgcolor="aqua" valign="bottom" align="left">Choices</th>
<th bgcolor="aqua" valign="bottom" align="left">Notes</th>
</tr>
<tr>
<td valign="top"><a href="#CHGCLNUP.ALWCLNUP"><b>ALWCLNUP</b></a></td>
<td valign="top">Allow cleanup</td>
<td valign="top"><b><u>*SAME</u></b>, *YES, *NO</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CHGCLNUP.STRTIME"><b>STRTIME</b></a></td>
<td valign="top">Time cleanup starts each day</td>
<td valign="top"><i>Time</i>, <b><u>*SAME</u></b>, *SCDPWROFF, *NONE</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top" rowspan="2"><a href="#CHGCLNUP.USRMSG"><b>USRMSG</b></a></td>
<td valign="top">Number of days to keep</td>
<td valign="top"><i>Element list</i></td>
<td valign="top" rowspan="2">Optional</td>
</tr>
<tr>
<td valign="top">Element 1: User messages</td>
<td valign="top">
1-366, <b><u>*SAME</u></b>, *KEEP</td>
</tr>
<tr>
<td valign="top"><a href="#CHGCLNUP.SYSMSG"><b>SYSMSG</b></a></td>
<td valign="top"> System and workstation msgs</td>
<td valign="top">1-366, <b><u>*SAME</u></b>, *KEEP</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CHGCLNUP.CRITSYSMSG"><b>CRITSYSMSG</b></a></td>
<td valign="top"> Critical system messages</td>
<td valign="top">1-366, <b><u>*SAME</u></b>, *KEEP</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CHGCLNUP.SYSPRT"><b>SYSPRT</b></a></td>
<td valign="top"> Job logs and system output</td>
<td valign="top">1-366, <b><u>*SAME</u></b>, *KEEP</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CHGCLNUP.SYSLOG"><b>SYSLOG</b></a></td>
<td valign="top"> System journals and logs</td>
<td valign="top">1-366, <b><u>*SAME</u></b>, *KEEP</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top" rowspan="3"><a href="#CHGCLNUP.JOBQ"><b>JOBQ</b></a></td>
<td valign="top">Job queue</td>
<td valign="top">Single values: <b><u>*SAME</u></b><br>Other values: <i>Qualified object name</i></td>
<td valign="top" rowspan="3">Optional</td>
</tr>
<tr>
<td valign="top">Qualifier 1: Job queue</td>
<td valign="top"><i>Name</i></td>
</tr><tr>
<td valign="top">Qualifier 2: Library</td>
<td valign="top"><i>Name</i>, <b><u>*LIBL</u></b>, *CURLIB</td>
</tr><tr>
<td valign="top"><a href="#CHGCLNUP.JRNRCVSIZ"><b>JRNRCVSIZ</b></a></td>
<td valign="top">Journal receiver size</td>
<td valign="top">1-1919999, <b><u>*SAME</u></b>, *KEEP</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CHGCLNUP.CALITM"><b>CALITM</b></a></td>
<td valign="top"> Office calendar items</td>
<td valign="top">1-366, <b><u>*SAME</u></b>, *KEEP</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#CHGCLNUP.RUNPTY"><b>RUNPTY</b></a></td>
<td valign="top">Run priority</td>
<td valign="top">1-99, <b><u>*SAME</u></b></td>
<td valign="top">Optional</td>
</tr>
</table>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
</div>
<div> <a name="CHGCLNUP.ALWCLNUP"></a>
<h3>Allow cleanup (ALWCLNUP)</h3>
<p>Specifies whether the cleanup operation can be run on the system. If <b>ALWCLNUP(*YES)</b> is specified, cleanup can be started with the Start Cleanup (STRCLNUP) command or as described in the Basic System Operation information in the iSeries Information Center at http://www.ibm.com/eserver/iseries/infocenter. Also, if <b>ALWCLNUP(*YES)</b> is specified, you can change the cleanup operation by retrieving the program QEZUSRCLNP with the Retrieve CL Source (RTVCLSRC) command, changing the source, and compiling the CL program with the Create CL Program (CRTCLPGM) command.
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The existing value does not change. The initial value is *NO, but is set to *YES during a scratch install.
</dd>
<dt><b>*YES</b></dt>
<dd>Cleanup can be run on this system.
</dd>
<dt><b>*NO</b></dt>
<dd>Cleanup cannot be run on this system.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGCLNUP.STRTIME"></a>
<h3>Time cleanup starts each day (STRTIME)</h3>
<p>Specifies the time the cleanup operation starts each day.
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The time of day does not change. The initial value is 220000.
</dd>
<dt><b>*SCDPWROFF</b></dt>
<dd>The cleanup starts at the time of the scheduled power off. The power off takes place when the cleanup finishes, whether or not the cleanup was successfully completed.
</dd>
<dt><b>*NONE</b></dt>
<dd>No cleanup start time is scheduled. The cleanup batch jobs are not submitted.
</dd>
<dt><b><i>time</i></b></dt>
<dd>Specify the time of day when daily cleanup starts in the <b>hhmmss</b> format, where <b>hh = hours</b>, <b>mm = minutes</b>, and <b>ss = seconds</b>.
<p>The time can be specified with or without a time separator:
</p>
<ul>
<li>Without a time separator, specify a string of 4 or 6 digits (hhmm or hhmmss) where hh = hours, mm = minutes, and ss = seconds.
</li>
<li>With a time separator, specify a string of 5 or 8 digits where the time separator specified for your job is used to separate the hours, minutes, and seconds. If you enter this command from the command line, the string must be enclosed in apostrophes. If a time separator other than the separator specified for your job is used, this command will fail.
</li>
</ul>
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGCLNUP.USRMSG"></a>
<h3>User messages (USRMSG)</h3>
<p>Specifies whether messages on the user profile message queues are cleaned up. This function deletes messages on the user message queues that have remained on the system longer than the number of days specified.
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The number of days does not change. The initial value is 7 days.
</dd>
<dt><b>*KEEP</b></dt>
<dd>Messages are not deleted; they are kept.
</dd>
<dt><b><i>1-366</i></b></dt>
<dd>Specify the number of days messages are kept before they are deleted.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGCLNUP.SYSMSG"></a>
<h3>System and workstation msgs (SYSMSG)</h3>
<p>Specifies whether messages on the QSYSOPR message queue and on work station message queues are cleaned up. The cleanup function deletes messages on the QSYSOPR message queue and the work station message queues that have remained on the system longer than the number of days specified.
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The number of days does not change. The initial value is 4 days.
</dd>
<dt><b>*KEEP</b></dt>
<dd>Messages are not deleted; they are kept.
</dd>
<dt><b><i>1-366</i></b></dt>
<dd>Specify the number of days to keep messages before they are deleted.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGCLNUP.CRITSYSMSG"></a>
<h3>Critical system messages (CRITSYSMSG)</h3>
<p>Specifies whether the cleanup function deletes messages on the QSYSMSG message queue (if it exists) that have remained on the system longer than the number of days specified.
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The number of days does not change. The initial value is to not delete any messages (*KEEP).
</dd>
<dt><b>*KEEP</b></dt>
<dd>Messages are not deleted; they are kept.
</dd>
<dt><b><i>1-366</i></b></dt>
<dd>Specify the number of days to keep messages before they are deleted.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGCLNUP.SYSPRT"></a>
<h3>Job logs and system output (SYSPRT)</h3>
<p>Specifies whether job logs and other system output are cleaned up.
</p>
<p>To prevent this output from being mixed with the user's output, the output queue of the printer file for job logs (QPJOBLOG) is changed to QUSRSYS/QEZJOBLOG to receive the job log. The output queue of print files QPSRVDMP, QPPGMDMP, and QPBASDMP is changed to QUSRSYS/QEZDEBUG. All entries in QEZJOBLOG and QEZDEBUG that are older than the number of days specified on this parameter are deleted. This also removes pending job logs for jobs that completed more than the specified number of days ago.
</p>
<p>If the cleanup operation is ended, the output queues named QEZJOBLOG and QEZDEBUG will continue to be used for job logs, service dumps, and program dumps.
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The number of days does not change. The initial value is 7 days.
</dd>
<dt><b>*KEEP</b></dt>
<dd>Job logs and other system output are not deleted; they are kept.
</dd>
<dt><b><i>1-366</i></b></dt>
<dd>Specify the number of days to keep job logs and other system output before they are deleted. This affects pending job logs as well as spooled job logs.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGCLNUP.SYSLOG"></a>
<h3>System journals and logs (SYSLOG)</h3>
<p>Specifies that system journals, history files, problem log files, and the alert database are cleaned up (deleted).
</p>
<p><b>Journal receivers that are cleaned up:</b>
</p>
<p>Journal receivers that are used for one of the following system journals and are older than the number of days specified on this parameter are deleted.
</p>
<dl>
<dt><b>QAOSDIAJRN</b></dt>
<dd>Journal for DIA files
</dd>
<dt><b>QDSNX</b></dt>
<dd>Journal for DSNX logs
</dd>
<dt><b>QSNADS</b></dt>
<dd>Journal for SNADS files
</dd>
<dt><b>QSXJRN</b></dt>
<dd>Journal for problem databases
</dd>
<dt><b>QPFRADJ</b></dt>
<dd>Journal for performance adjustment data
</dd>
<dt><b>QACGJRN</b></dt>
<dd>Journal for job accounting data
</dd>
<dt><b>QX400</b></dt>
<dd>OSI Message Services
</dd>
<dt><b>QCQJMJRN</b></dt>
<dd>Journal for Managed System Services
</dd>
<dt><b>QO1JRN</b></dt>
<dd>Journal for Application Enabler OFC files
</dd>
<dt><b>ADJRNL0</b></dt>
<dd>Journal for application program driver files
</dd>
<dt><b>QSNMP</b></dt>
<dd>Journal for SNMP
</dd>
<dt><b>QLYJRN</b></dt>
<dd>Journal for Application Development Manager Transactions
</dd>
<dt><b>QLYPRJLOG</b></dt>
<dd>Journal for project logs
</dd>
<dt><b>QMAJRN</b></dt>
<dd>Journal for work order requests
</dd>
<dt><b>QZMF</b></dt>
<dd>Journal for QMSF job
</dd>
</dl>
<p>
<b>Note: </b>The journal receiver for job accounting (QACGJRN) is cleaned up only if Operational Assistant creates the journal.
</p>
<p><b>History files that are cleaned up:</b>
</p>
<p>History files that meet both the following conditions are deleted:
</p>
<ul>
<li>History files that are older than the number of days specified on this parameter.
</li>
<li>History files named QSYS/QHST*.
</li>
</ul>
<p><b>Problem log files and entries that are cleaned up:</b>
</p>
<p>Problem log entries older than the number of days specified on this parameter are deleted. The Delete Problem (DLTPRB) command is run to delete the problem log entries. When the DLTPRB command is run, the number of days specified on this parameter is used for the <b>Days (DAYS)</b> parameter of the DLTPRB command.
</p>
<p>
<b>Note: </b>If the number of days specified on this parameter is less than the number of days specified for the system value QPRBHLDITV (Problem Log Hold Interval), the value for QPRBHLDITV is used for problem log cleanup.
</p>
<p>In addition to the problem log entries being deleted, the following problem log files in the QUSRSYS library are reorganized:
</p>
<p>
<b>Note: </b>The following files are in library QUSRSYS.
</p>
<p>
<pre>
QASXCALL QASXFRU QASXNOTE
QASXPROB QASXPTF QASXYMP
QASXEVT
</pre>
</p>
<p><b>Alert database entries that are cleaned up:</b>
</p>
<p>Alert database entries older than the number of days specified on this parameter are deleted. The Delete Alert (DLTALR) command is run to delete the alert database entries. When the DLTALR command is run, the number of days specified on this parameter is used for the <b>Days (DAYS)</b> parameter of the DLTALR command.
</p>
<p>In addition to the alert database entries being deleted, the file QUSRSYS/QAALERT is reorganized.
</p>
<p><b>Program temporary fixes (PTFs) that are cleaned up:</b>
</p>
<p>
<b>Note: </b>If the library QSMU exists on the system, only the PTFs for the current release are cleaned up. If the library QSMU does not exist on the system, the PTFs for the current and all previous releases are cleaned up.
</p>
<ul>
<li>Temporary objects named:
<ul>
<li>QPZA000000 through QPZA999999
</li>
<li>QPZI000000 through QPZI999999
</li>
<li>QPZR000000 through QPZR999999
</li>
<li>QSCA000000 through QSCA999999
</li>
<li>QSCR000000 through QSCR999999
</li>
</ul>
</li>
<li>Exit programs shipped with PTFs
</li>
<li>Physical files in QUSRSYS
</li>
<li>QAPZPTF
</li>
<li>QAPZREQ
</li>
<li>QAPZSYM
</li>
</ul>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The number of days does not change. The initial value is 30 days.
</dd>
<dt><b>*KEEP</b></dt>
<dd>System journals and system logs are not deleted.
</dd>
<dt><b><i>1-366</i></b></dt>
<dd>Specify the number of days to keep system journals and system logs before they are deleted.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGCLNUP.JOBQ"></a>
<h3>Job queue (JOBQ)</h3>
<p>Specifies the name and library of the job queue to which the cleanup batch jobs are submitted.
</p>
<p><b>Single values</b>
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The job queue does not change. The initial value is *LIBL/QCTL.
</dd>
</dl>
<p><b>Qualifier 1: Job queue</b>
</p>
<dl>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the job queue to which cleanup batch jobs are submitted.
</dd>
</dl>
<p><b>Qualifier 2: Library</b>
</p>
<dl>
<dt><b><u>*LIBL</u></b></dt>
<dd>All libraries in the job's library list are searched until the first match is found.
</dd>
<dt><b>*CURLIB</b></dt>
<dd>The current library for the job is used to locate the job queue. If no library is specified as the current library for the job, QGPL is used.
</dd>
<dt><b><i>name</i></b></dt>
<dd>Specify the name of the library where the job queue is located.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGCLNUP.JRNRCVSIZ"></a>
<h3>Journal receiver size (JRNRCVSIZ)</h3>
<p>Specifies a number of kilobytes (KB) of storage. Each 1000 KB specifies 1,024,000 bytes of storage space. When the size of the space for the journal receiver is larger than the size specified by this value, Operational Assistant (OA) automatic cleanup function will detach it.
</p>
<p>OA also automatically detaches receivers that are older than the number of days you have specified for the <b> System journals and logs (SYSLOG)</b> parameter.
</p>
<p>Journal receivers are deleted only after they have been detached longer than the number of days specified for the SYSLOG parameter.
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The journal receiver size does not change. The initial value is 5000 KB.
</dd>
<dt><b><i>1-1919999</i></b></dt>
<dd>Specify a journal receiver size in kilobytes (KB) of storage. If this value is exceeded when OA automatic cleanup is run, the journal receiver will be detached.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGCLNUP.CALITM"></a>
<h3>Office calendar items (CALITM)</h3>
<p>In V5R1 and later releases, this parameter is not supported.
</p>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="CHGCLNUP.RUNPTY"></a>
<h3>Run priority (RUNPTY)</h3>
<p>Specifies the run priority for the job. Run priority is a value ranging from 1 (highest priority) through 99 (lowest priority), that represents the importance of the job when it competes with other jobs for machine resources. This value represents the relative (not absolute) importance of the job. For example, a routing step with a run priority of 25 is not twice as important as one with a run priority of 50.
</p>
<dl>
<dt><b><u>*SAME</u></b></dt>
<dd>The run priority does not change. The initial value is 55.
</dd>
<dt><b><i>1-99</i></b></dt>
<dd>Specify the run priority that the routing step uses.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div><h3><a name="CHGCLNUP.COMMAND.EXAMPLES">Examples</a> </h3>
<p><b>Example 1: Keeping User Messages During Cleanup</b>
</p>
<p>
<pre>
CHGCLNUP ALWCLNUP(*YES) USRMSG(*KEEP) STRTIME(0700)
</pre>
</p>
<p>This command changes the cleanup options so that user messages are kept and not deleted when cleanup is performed. This command sets cleanup start time at 7:00 A.M.
</p>
<p><b>Example 2: Cleanup of System Journals and System Logs</b>
</p>
<p>
<pre>
CHGCLNUP ALWCLNUP(*YES) SYSMSG(10) SYSLOG(3)
</pre>
</p>
<p>This command changes the cleanup options so that system messages are kept for ten days, and system journals and system logs are kept for three days, before being deleted.
</p>
<p><b>Example 3: Changing Run Priority of Cleanup Job.</b>
</p>
<p>
<pre>
CHGCLNUP RUNPTY(50)
</pre>
</p>
<p>This command changes the run priority to 50.
</p>
<p><b>Example 4: Changing Journal Receiver Size</b>
</p>
<p>
<pre>
CHGCLNUP JRNRCVSIZ(6000)
</pre>
</p>
<p>This changes the journal receiver size limit to 6000 KB of storage, (6144000 bytes).
</p>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div><h3><a name="CHGCLNUP.ERROR.MESSAGES">Error messages</a> </h3>
<p><b><u>*ESCAPE Messages</u></b>
</p>
<dl>
<dt><b>CPF1E2A</b></dt>
<dd>Unexpected error in QSYSSCD job.
</dd>
<dt><b>CPF1E2B</b></dt>
<dd>Power scheduler and cleanup options not found.
</dd>
<dt><b>CPF1E3C</b></dt>
<dd>Job queue &amp;2/&amp;1 not found.
</dd>
<dt><b>CPF1E3D</b></dt>
<dd>Library &amp;1 for JOBQ parameter not found.
</dd>
<dt><b>CPF1E32</b></dt>
<dd>Not authorized to change cleanup options.
</dd>
<dt><b>CPF1E33</b></dt>
<dd>Cleanup options or power schedule in use by another user.
</dd>
<dt><b>CPF1E99</b></dt>
<dd>Unexpected error occurred.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#CHGCLNUP.Top_Of_Page">Top</a></td></tr>
</table>
</body>
</html>