0% found this document useful (0 votes)
137 views17 pages

Thursday, September 20, 2007

The document provides instructions for various CA-7 commands and functions including: adding one-time job requirements, canceling jobs, changing job submit times, delaying schedule start/due times, demanding jobs into the request queue, editing job execution JCL, holding jobs, posting job requirements, pulling JCL from an alternate library, releasing job holds, and requeuing jobs. Syntax examples are provided for each command.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
137 views17 pages

Thursday, September 20, 2007

The document provides instructions for various CA-7 commands and functions including: adding one-time job requirements, canceling jobs, changing job submit times, delaying schedule start/due times, demanding jobs into the request queue, editing job execution JCL, holding jobs, posting job requirements, pulling JCL from an alternate library, releasing job holds, and requeuing jobs. Syntax examples are provided for each command.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 17

THURSDAY, SEPTEMBER 20, 2007

CA7 Basics & Commands


CA-7 Basics & Commands

Add a one-time requirement:


Use the ADDRQ command to manually add temporary, one-time, pre-execution
user or predecessor job requirements. These requirements must be added to the job
while it is in the CA-7 request queue. These added requirements apply only to the
current run of the job.

SYNTAX:
Add a job dependency requirement:
ADDRQ,JOB=job name or job number, DEPJOB=job this run is dependent on

Add a user requirement :


ADDRQ,JOB=job name or job number ,USR=text

Cancel a Job :
Use the CANCEL command to delete jobs from the CA-7 queues. This command
only removes the job from the CA-7 queues. Cancellation of a job in the CA-7
active queue or ready queue (if it has been submitted) does not cause termination
of the job's execution. CPU jobs which may be executing have to be canceled from
the operating system separately. 

SYNTAX:

CANCEL,JOB=job number or job name, FORCE=YES,REASON=text

(Note: If you want to cancel the job without removing it from the CA-7 queue, do
not specify FORCE=YES.)

Change a Job submit time :


Type the 'XQ' top line command to get to the queue maintenance screen. Type a 'U'
beside the job you want to update, and hit enter.
----------------- CA-7 QUEUE MAINTENANCE - CPU JOBS STATUS
----------------
F-JOBNAME--CA7# 
GSAJPWH3 2877 JOB: GSAJP* 
GSAJPWH5 2843 SEQ: ENTRY 
GSAJPWH1 2833 QUEUE: REQ 
GSAJPWH2 2873 LIST: ALL 
GSAJPWH4 2874 
GSAJPDH1 2876 FUNCTIONS: 
U GSAJPWDE 2773 C=CANCEL 
F=RESTART 
H=HOLD 
J=JCLOVRD 
P=RSVP 
Q=REQUEUE 
R=RELEASE 
S=SUBTM OFF 
U=UPDATE 
V=VERIFY 
X=RQMT POST 
E=EDIT QJCL 
PROGRAM: QM20 MSG-INDX: 00 -- QM.1-X -- 98.028 / 20:34:33 
MESSAGE: ENTER FUNCTION IN 'F' FIELD OR ENTER A COMMAND ON
THE TOP LINE 

The next screen displayed is the CPU Job Attributes screen. Here you can change
the job submit time, as well as several other job attributes.

--------------- CA-7 QUEUE MAINTENANCE - CPU JOB ATTRIBUTES ----------


JOB: GSAJPWDE CA-7#: 2773 MCNT: 001 QUEUE: REQ 

---------SCHEDULING--------- ------MANUAL REQUIREMENTS------- 


DEADLINE TIME.... 98028 2205 JOB HELD...................... N 
DUE-OUT TIME..... 98028 2210 MANUAL VERIFICATION REQUIRED.. N 
SUBMIT TIME...... 98028 2200 JCL OVERRIDES REQUIRED........ N 

MAINID........... ALL 
----------RESTART----------- -----------PROMPTING------------ 
GENERATE CA-11 STEP....... N ELIGIBLE FOR PROMPTS... N 
FORMAT CA-11 CMT.......... N PROMPT ACKNOWLEDGED.... N 
RETAIN JCL IN PRRN QUEUE.. N LTERM FOR MESSAGES..... MASTER 

----------------------------RESOURCES----------------------------- 
JOB CLASS............. A JOB PRIORITY.......... 100 
ELAPSED TIME (HHMM)... 0000 TAPE DRIVES OF TYPE1.. 000 
CPU TIME (MMMSS)...... 00000 TAPE DRIVES OF TYPE2.. 000 

PROGRAM: QM40 MSG-INDX: 00 -- QM.3-X -- 98.028 / 20:35:42 

MESSAGE: CHANGE DESIRED FIELDS OR ENTER A COMMAND ON THE


TOP LINE 

Delay schedule start and due out times :

Use the ADDSCH command to delay scheduled start and due-out times for up to
24 hours. 
You can use this command for a specific job, or for an entire workload in the case
of a major unexpected and unscheduled change in the environment.

Syntax:
ADDSCH,JOB=nnnn or ALL,TIME=mmmm
nnnn specifies the CA-7 job number of a single job
mmmm specifies the amount of time to be added to the start time and due-out time
of the job in minutes

e.g. ADDSCH,JOB=2502,TIME=0060
Be careful when using JOB=ALL. This command will then apply to every job in
the request, ready, active, and post-process queues. 

Demand a Job into request queue :


It is advisable not to use DEMANDH to run nightly cycle jobs during the day. The 
post-processing will cause the out-conditions to be posted, possibly allowing any 
successors to execute as soon as CA-7 brings them into the request queue. Use 
RUNH instead.

Use the DEMANDH top-line command to demand a job into the CA-7 request
queue:

DEMANDH,JOB=job name, SCHID=schedule ID

e.g. DEMANDH,JOB=GSAJPORF,SCHID=070
You will be prompted to enter hold information (name, phone, reason for hold). Go
to the request queue and review your job to make sure it has the appropriate
requirements. If everything looks okay, release the hold requirement.
Schedule ID is required procedurally, but is not required by CA-7. Be extremely
careful to use the correct SCHID when demanding jobs into CA-7. If you do not
specify a schedule ID, CA-7 will use the first schedule ID it finds in the CA-7
database, which may not be the one you want.

Edit the execution JCL :


Note: If you are not the on-call SE but plan to restart a job, you need to contact the
on-call SE and let them know. When you edit the execution JCL in CA-7 it does
not prevent someone else from editing the dataset and they can overlay your
changes.
Type the XQ top line command to get to the CA-7 Queue Maintenance Screen.
Tab down to the job you want to edit and type an 'E' beside it and hit the Enter key.

----------------- CA-7 QUEUE MAINTENANCE - CPU JOBS STATUS


----------------
F-JOBNAME--CA7# 
GSAJPF24 2459 JOB: GSAJP* 
GSAJPDH1 2449 SEQ: ENTRY 
GSAJPWH5 2450 QUEUE: REQ 
GSAJPWH3 2451 LIST: ALL 
GSAJPWH4 2454 
GSAJPPD2 2384 FUNCTIONS: 
GSAJPBDH 2386 C=CANCEL 
GSAJPBH5 2431 F=RESTART 
GSAJPWH1 2430 H=HOLD 
E GSAJPWH2 2433 J=JCLOVRD 
GSAJPF37 2480 P=RSVP 
Q=REQUEUE 
R=RELEASE 
S=SUBTM OFF 
U=UPDATE 
V=VERIFY 
X=RQMT POST 
E=EDIT QJCL 
PROGRAM: QM20 MSG-INDX: 00 -- QM.1-X -- 98.028 / 16:10:38 
MESSAGE: ENTER FUNCTION IN 'F' FIELD OR ENTER A COMMAND ON
THE TOP LINE 

HOLD A JOB :
Type the XQ top line command to get to the CA-7 Queue Maintenance Screen.
Tab down to the job you want to hold, type an 'H' beside it, and hit the Enter key.

----------------- CA-7 QUEUE MAINTENANCE - CPU JOBS STATUS


---------------- 
F-JOBNAME--CA7# 
GSAJPF24 2459 JOB: GSAJP* 
GSAJPDH1 2449 SEQ: ENTRY 

GSAJPWH5 2450 QUEUE: REQ 


GSAJPWH3 2451 LIST: ALL 
GSAJPWH4 2454 
GSAJPPD2 2384 FUNCTIONS: 
GSAJPBDH 2386 C=CANCEL 
GSAJPBH5 2431 F=RESTART 

GSAJPWH1 2430 H=HOLD 


H GSAJPWH2 2433 J=JCLOVRD 
GSAJPF37 2480 P=RSVP 
Q=REQUEUE 
R=RELEASE 
S=SUBTM OFF 
U=UPDATE 
V=VERIFY 
X=RQMT POST 
E=EDIT QJCL 
PROGRAM: QM20 MSG-INDX: 00 -- QM.1-X -- 98.028 / 16:10:38 
MESSAGE: ENTER FUNCTION IN 'F' FIELD OR ENTER A COMMAND ON
THE TOP LINE 
POST JOB REQUIREMENTS:
Type the XQ top line command to get to the CA-7 Queue Maintenance Screen.
Tab down to the job you want to view requirements on. Type an 'X' beside it and
hit the Enter key.

----------------- CA-7 QUEUE MAINTENANCE - CPU JOBS STATUS


---------------- 
F-JOBNAME--CA7# 
GSAJPF24 2459 JOB: GSAJP* 
GSAJPDH1 2449 SEQ: ENTRY 

GSAJPWH5 2450 QUEUE: REQ 


GSAJPWH3 2451 LIST: ALL 
GSAJPWH4 2454 
GSAJPPD2 2384 FUNCTIONS: 
GSAJPBDH 2386 C=CANCEL 
GSAJPBH5 2431 F=RESTART 
GSAJPWH1 2430 H=HOLD 
X GSAJPWH2 2502 J=JCLOVRD 
GSAJPF37 2480 P=RSVP 
Q=REQUEUE 
R=RELEASE 
S=SUBTM OFF 
U=UPDATE 
V=VERIFY 
X=RQMT POST 
E=EDIT QJCL 
PROGRAM: QM20 MSG-INDX: 00 -- QM.1-X -- 98.028 / 16:10:38 
MESSAGE: ENTER FUNCTION IN 'F' FIELD OR ENTER A COMMAND ON
THE TOP LINE 
You will see the job requirements on the following screen. To post a requirement,
type an 'X' beside the job name and hit enter.

-------------- CA-7 QUEUE MAINTENANCE - CPU JOB PREDECESSORS


---------
JOB: GSAJPWH2 CA-7#: 2502 MCNT: 001 
F-TYP-NUMBER-E-DESCRIPTION 
X SUB WAITING FOR SUBMIT TIME (16:45) 
PULL JCL FROM ALTERNATE LIBRARY:
When a job comes into the request queue, CA-7 will first search the alternate
library for the JCL. If the member name is found in the alternate library, the JCL
will be pulled from there. If the member is not in the alternate library, then CA-7
will search the champ JCL library. 
JCL Library JCL ID
PGSAJ.SSBCH.JCLPDS 013
PGSAJ.SSBLB.DYNJCL 104 Alternate Library for 013
The alternate library will be used for JCL overrides (e.g. coding the JCL to pull a
source member from FIXLIB instead of PRODLIB.) It will also be used for any
JCL that gets written out from an ALC module (Draw, Catalog).
We have EID write access to the alternate library.

RELEASE A HOLD REQUIREMENT:


To release a job that has been put on hold, enter the 'XQ' topline command to go to
the queue maintenance screen. Type an 'R' beside the job you want to release, and
hit enter.
(Note: Posting the hold requirement accomplishes the same thing as using the
Release.)

----------------- CA-7 QUEUE MAINTENANCE - CPU JOBS STATUS


---------------- 
F-JOBNAME--CA7# 
GSAJPWH3 2877 JOB: GSAJP* 
GSAJPWH5 2843 SEQ: ENTRY 
GSAJPWH1 2833 QUEUE: REQ 
GSAJPWH2 2873 LIST: ALL 
GSAJPWH4 2874 
GSAJPDH1 2876 FUNCTIONS: 
R GSAJPWDE 2773 C=CANCEL 
F=RESTART 
H=HOLD 
J=JCLOVRD 
P=RSVP 
Q=REQUEUE 
R=RELEASE 
S=SUBTM OFF 
U=UPDATE 
V=VERIFY 
X=RQMT POST 
E=EDIT QJCL 
PROGRAM: QM20 MSG-INDX: 00 -- QM.1-X -- 98.028 / 20:29:50 
MESSAGE: ENTER FUNCTION IN 'F' FIELD OR ENTER A COMMAND ON
THE TOP LINE 

REQUEUE A JOB:
The easiest way to requeue a job is with the requeue command:
REQUEUE,JOB= jobnumber or jobname
You can also accomplish this through the queue maintenance screen. Type the XQ
top line command to get to the CA-7 Queue Maintenance Screen. Tab down to the
job you want to requeue, type a 'Q' beside it, and hit the Enter key.
Note: If the job is in another queue, you can use the XQ,Q=RDY command to get
to the ready queue, or use the XQ,Q=ACT command to get to the active queue.

----------------- CA-7 QUEUE MAINTENANCE - CPU JOBS STATUS


----------------- 
F-JOBNAME--CA7# 
GSAJPF24 2459 JOB: GSAJP* 
GSAJPDH1 2449 SEQ: ENTRY 
GSAJPWH5 2450 QUEUE: REQ 
GSAJPWH3 2451 LIST: ALL 
GSAJPWH4 2454 
GSAJPPD2 2384 FUNCTIONS: 
GSAJPBDH 2386 C=CANCEL 
GSAJPBH5 2431 F=RESTART 
GSAJPWH1 2430 H=HOLD 
Q GSAJPWH2 2433 J=JCLOVRD 
GSAJPF37 2480 P=RSVP 
Q=REQUEUE 
R=RELEASE 
S=SUBTM OFF 
U=UPDATE 
V=VERIFY 
X=RQMT POST 
E=EDIT QJCL 
PROGRAM: QM20 MSG-INDX: 00 -- QM.1-X -- 98.028 / 16:10:38 
MESSAGE: ENTER FUNCTION IN 'F' FIELD OR ENTER A COMMAND ON
THE TOP LINE 
RESTART A JOB:
Type the XQ top line command to get to the CA-7 Queue Maintenance Screen.
Tab down to the job you want to restart, type an 'F' beside it, and hit the Enter key.

----------------- CA-7 QUEUE MAINTENANCE - CPU JOBS STATUS


----------------- 
F-JOBNAME--CA7# 
GSAJPF24 2459 JOB: GSAJP* 
GSAJPDH1 2449 SEQ: ENTRY 
GSAJPWH5 2450 QUEUE: REQ 
GSAJPWH3 2451 LIST: ALL 
GSAJPWH4 2454 
GSAJPPD2 2384 FUNCTIONS: 
GSAJPBDH 2386 C=CANCEL 
GSAJPBH5 2431 F=RESTART 
GSAJPWH1 2430 H=HOLD 
F GSAJPWH2 2433 J=JCLOVRD 
GSAJPF37 2480 P=RSVP 
Q=REQUEUE 
R=RELEASE 
S=SUBTM OFF 
U=UPDATE 
V=VERIFY 
X=RQMT POST 
E=EDIT QJCL 
PROGRAM: QM20 MSG-INDX: 00 -- QM.1-X -- 98.028 / 16:10:38 
MESSAGE: ENTER FUNCTION IN 'F' FIELD OR ENTER A COMMAND ON
THE TOP LINE 

(Note: If the job is not in the ready queue, you will have to requeue the job before
it can be restarted.)

The next screen displayed will be the "CPU JOB IN RESTART STATUS" screen.
Enter your reason for restarting the job, type an 'X' beside RESUBMIT FOR
PRODUCTION, and hit enter.

-------- CA-7 QUEUE MAINTENANCE - CPU JOB IN RESTART STATUS


---------
JOB: GSAJPWH2 CODE: JCL-ERROR LAST-STEP MCNT: 001
CA-7#: 2433 JES#: 20505 NODE-NAME: LOCAL
REASON: JOB NOT RUN DUE TO ERROR. RESUBMIT PER SE.
-- X -- RESUBMIT FOR PRODUCTION
-- -- FORCE COMPLETE
.
.
.{The rest of this screen contains CA-11 restart options. 
DO NOT UNDER ANY CIRCUMSTANCES RESTART USING ANY OF
THESE OPTIONS!!! 
Our jobs are not set up for CA-11 restart and you can screw up royally.}

VIEW JOBS IN REQUEST QUEUE:


XQ -> Lists all jobs in request queue (but only the jobs you have ACF2 authority
to view)
XQJ -> Lists jobs in jobname sequence
XQM -> Lists jobs and a summary of job requirements
To view the jobs in other queues add Q=queue parameter
Eg: XQ,Q=RDY to view the ready queue
XQ,Q=ACT to view the active queue

CA-JCL check:
Use the LJCK command to list JCL for a CA-7 job. JCL is fetched from the library
indicated on the DB.1 panel or its alternate. LJCK keyword values for DATE,
TIME, and SCHID may affect the display if scheduled overrides such as #JI and
#JO are used. If the CA-Driver procedures are used, LJCK displays CA-Driver
JCL modifications. 

Syntax:
LJCK,JOB=jobname,DATE=YYDDD,TIME=hhmm,SCHID=nnn
DATE, TIME and SCHID parameters are optional.

The execution JCL for the specified job will be evaluated by CA-JCLCheck and all
JCL substitutions, procedure expansions, errors, and other messages returned by
CA-JCLCheck will be displayed inline following the relevant execution JCL
statements.
CA-7 JCL overrides:

#JI Overrides
Indicates the statement are to be included based on the specified scheduling
criteria.

#JO Overrides
Indicates the statements are to be omitted based on the specified scheduling
criteria.

#JEND
Indicates the end of a set of override control statements

#SCC
Statements placed within the JCL to define step level condition code tests used to
determine whether the job completed successfully. To use these statements, the job
must be defined on the DB.1 screen with a condition code of 0 (zero) and the
relational operator of #S.

Additional overrides and examples may be found in the CA-7 Database


Maintenance Guide Section 10.

CA-7 Commands
/DISPLAY,ST=JCL
Use this command to obtain information about the JCL libraries attached to the
CA-7. The ST=JCL parameter provides the information about the JCL libraries and
their associated ID number.

********************************************
* * * * 

/DISPLAY,PRINT=SCH
Use this command to obtain the information about Schedule Scan (SSCAN). The
PRINT=SCH provides the information about SSCAN such as INCR, SPAN,
QDWELL intervals and the next run.

********************************************
* * * * 

CANCEL
CANCEL,JOB=jobname or job number,FORCE=YES,REASON=text
Cancels job out of CA-7 Request Queue. 
If job is in the Ready or Active queues, cancelling it in CA-7 would not prevent the
job from running. It would only prevent CA-7 from tracking the job. If you need to
cancel a job that is awaiting execution (ready queue) or executing (active queue),
cancel it from SAM or call the operator and have them cancel the job.

********************************************
* * * * 

DEMANDH
DEMANDH,JOB=jobname,SCHID=nnn
Use this command to request a job to run in CA-7. This command will place a
HOLD on the job which must be posted. A reason will be required. The SCHID
parameter should be nnn if triggering is not to be done. If triggering is needed, then
the appropriate SCHID should be supplied. Caution should be used when
executing jobs from the batch cycle during the day. Doing so could cause problems
during the next nightly cycle.See also RUNH

********************************************
* * * * 

FJOB,FROM=,TO=
FJOB,FROM=(mmddyy,hhmm),TO=(mmddyy,hhmm),SYS=GSAJKJ
Use this command to obtain forecasted job execution information for jobs in a
specified system for a specified date and time period.

********************************************
* * * * 

FJOB,SPAN=
FJOB,SPAN=hh,SYS=GSAJKJ
Use this command to obtain forecasted job execution information for jobs in a
specified system for a specified future time span in hours.

********************************************
* * * * 

FSTRUC,JOB=
FSTRUC,JOB=jobname,LIST=ALL
Use this command to obtain job flow structure information for a job. The
LIST=ALL parameter provides the job trigger relationships and the elapsed time of
each job

********************************************
* * * * 

LACT,JOB=
LACT,JOB=jobname or SYS=sysname
Use this command to obtain CA-7 information on jobs in the active queue. The
JOB=jobname parameter can be a specific job or can be a generic mask such as
JOB=GSAJ*. The SYS=system name parameter can be either an ‘*’ indicating all
systems or the value must be a specific system name.

********************************************
* * * * 

LDSN,DSN=
LDSN,DSN=dataset name or dataset number,LIST=ALL
Use this command to obtain information about a dataset. The DSN parameter can
be used with the dataset name or dataset number if known. The LIST=ALL
parameter provides information about the dataset, the using jobs and any
documentation entries.
********************************************
* * * * 

LJCL,JOB=
LJCL,JOB=jobname
Use this command to review the JCL contained in the associated JCL library. 

********************************************
* * * * 

LJOB,JOB=
LJOB,JOB=jobname,LIST=ALL or LIST=TRIG
Use this command to obtain miscellaneous information about a job. The
LIST=ALL parameter provides information about the job requirements, triggers
and characteristics or attributes.LIST=TRIG parameter provides information about
the job triggers.

********************************************
* * * * 

LQ,JOB=
LQ,JOB=jobname
Use this command to obtain CA-7 information on the jobs in the ready, request and
active queues

********************************************
* * * * 

LQ,JOB=,ST=ABND
LQ,JOB=jobname,ST=ABND
Use this command to obtain CA-7 information on the jobs in the request that are in
abend status. 

********************************************
* * * * 

LQ,JOB=,ST=LATE
LQ,JOB=jobname,ST=LATE
Use this command to obtain CA-7 information on the jobs in the request that are in
late status. 

********************************************
* * * * 

LPROS,JOB=
LPROS,JOB=jobname
Use this command to review the prose for a job. 

********************************************
* * * * 

LPRRN,JOB=
LPRRN,JOB=jobname,LIST=ALL
Use this command to review the last run of a job. The information is obtained from
the prior-run queue. The LIST=ALL parameter is optional and provides all data
relative to the queue. 

********************************************
* * * * 

LRLOG,SPAN=,SYS=
LRLOG,SPAN=hh,SYS=system name
Use this command to review the run log information for jobs in a specified system
for the specified span of time in hours.

********************************************
* * * * 

LSCHD,JOB=LIST=
LSCHD,JOB=jobname,LIST=SIDnnn or LIST=BYSID
Use this command to obtain information about the schedule(s) for a job. The
SCAL=SIDnnn parameter provides the schedule information for a specific
schedule identifier (SCHID). (The ‘nnn’ in the SIDnnn should be the SCHID.) The
LIST=BYSID parameter provides scheduling information for all SCHIDs. This is
useful if a job has multiple SCHIDs. A month-by-month calendar is displayed for
both parameters.

********************************************
* * * * 
REQUEUE,JOB=
REQUEUE,JOB=jobname,Q=ACT or Q=RDY
Use this command to move a member from one the ready or active queue to the
request queue. The Q=queue name parameter is optional. If the Q=queue name
parameter is not used, then the RDY and ACT queues are both searched. This
command must be used whenever a job enters the request queue in skeleton mode
(no JCL attached to job).

********************************************
* * * * 

RUNH,JOB=
RUNH,JOB=jobname
Use this command to execute a special run of a job so that requirements will not be
posted, and jobs will not be triggered. This command places a HOLD on the job
which must be posted.Note that any mutually exclusive conditions the jobs have
(which are requirements) will not take effect.

********************************************
* * * * 

XQJ,JOB=
XQJ,JOB=jobname,Q=REQ or Q=RDY or Q=ACT
Use this command to review and/or perform actions on the request queue. The
JOB=jobname parameter may be a specific jobname or generic such as
JOB=GSAJKN*. The Q=queue name parameter is optional and the queue name
may be REQ (request), RDY (ready) or ACT (active). The list is displayed in
jobname sequence. If no members are found matching the jobname criteria, the
QUEUE MAINTENANCE panel is displayed. 

********************************************
* * * * 

XQM,JOB=
XQM,JOB=jobname,Q=REQ or Q=RDY or Q=ACT
Use this command to review and/or perform actions on the request queue. The
JOB=jobname parameter may be a specific jobname or generic such as
JOB=GSAJKN*. The Q=queue name parameter is optional and the queue name
may be REQ (request), RDY (ready) or ACT (active). The list is displayed in
jobname sequence and a summary of the requirements is displayed. If no members
are found matching the jobname criteria, the QUEUE MAINTENANCE panel is
displayed. 

********************************************
* * * 

You might also like