Programming Interface Information: This information is NOT intended to be used as Programming Interfaces of z/VM.

#### XSTMG

Prolog

Control Block Contents
XSTMG DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### XSTMG Prolog

     Name       : HCPXSTMG
     Description: Expanded storage management data
     DSECT      : XSTMG
     Function   : This block is used to keep track of global
                  Information associated with the expanded
                  Storage facility and block paging.
     Located by : This DSECT overlays the data Entry Point
                  HCPPGDXT.
     Created by : HCPPGD is loaded by the system during IPL.
                  The XSTMG is initialized by HCPESCDI.
     Deleted by : never deleted.

#### XSTMG Control Block Content

#### XSTMG DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      XSTMG          Expanded storage management data
    0000    0 Signed       4 XSTMGSTR (0)   Start of XSTMG block
    0000    0 Signed       4 XSTFLAGS (0)   Flags for the XSTMG block.
                                            Updated with compare and swap.
    0000    0 Address      1 XSTSTAFG       Status information flag
              .... ...1      XSTNCONF       X'01' Xstore is not configured to
                                            the system.
              .... ...1      XSTOFFLN       X'01' Xstore was taken offline
                                            because all blocks are in error.
              .... ..1.      XSTMPDSB       X'02' Xstore has been disabled
                                            for CP paging temporarily until
                                            at least one increment can be
                                            brought online during
                                            initilization or recovery from a
                                            machine check. This bit has no
                                            meaning if XSTOFFLN is on.
              .... .1..      XSTNAVAL       X'04' Indicates that there is no
                                            XSTORE available for allocation.
                                            This may happen if all XSTORE has
                                            been attached to a guest or the
                                            CP partition has been completely
                                            allocated.
              .... 1...      XSTMDALL       X'08' Indicates that there is no
                                            XSTORE available for paging
                                            allocation. The Xstore is to be
                                            used only for allocation to
                                            Minidisk Cache.
              ...1 ....      XSTEXTMP       X'10' If on, indicates that Read
                                            Expanded Storage Usability Bit
                                            Map Extended is installed. If
                                            off, nothing is implied about the
                                            existence of other usability map
                                            facilities.
              .1.. ....      XSTRREQD       X'40' Usability-map repair is
                                            required. When this bit is on,
                                            work has been stacked to perform
                                            the repair action. This bit has
                                            no meaning if XSTOFFLN is on.
         The following are the flags that indicate status.
    0001    1 Bitstring    1 XSTFUTCT       Count of stamps with future times
    0002    2 Signed       2 XSTAVGAG       Average age of paging XBLKs
    0004    4 Signed       4 XSTSTATL       XSTORE statistics lock used to
                                            serialize updates to : XSTCTXTS,
                                            XSTEPOCH, PGMXSTCT, ASCCTXBK,
                                            ASCCTXRD, and ASCCTXWT.
    0008    8 Signed       4 XSTCTXTS       Count of XSTORE blocks currently
                                            in use for CP Paging. Used by MIG
                                            to calculate average timestamp.
                                            Serialized by XSTSTATL.
    000C   12 Signed       4 XSTCTXER       Number of blocks in error that
                                            have not yet been reflected to a
                                            guest. Update holding XSTBUFLK.
    0010   16 Signed       4 XSTOTALB       Amount of XSTORE online in
                                            blocks. It represents the number
                                            of blocks in "configured"
                                            increments. Set at initialization
                                            and not changed.
    0014   20 Signed       4 XSTGUEST       Number of blocks attached to
                                            virtual machines including error
                                            blocks. To update hold HCPPGDXL.
    0018   24 Signed       4 XSTINCRB       Number of blocks per XDRBK.
    001C   28 Signed       4 XSTCPINC       Amount of xstore in blocks that
                                            are in the "CP" state and are
                                            "Configured". It includes error
                                            blocks but excludes CP-Retained
                                            blocks. To update hold HCPPGDXL.
    0020   32 Signed       4 XSTCPSTR       Total number of blocks that are
                                            in the cp-retained state
                                            including blocks in error. To
                                            update hold HCPPGDXL.
    0024   36 Signed       4 XSTPEDRT       Amount of xstore in blocks that
                                            is waiting to be assigned the
                                            retained state. This is pending
                                            retain. The sum of XSTCPSTR and
                                            XSTPEDRT is the amount specified
                                            on the last RETAIM XSTORE
                                            command. To update hold HCPPGDXL.
    0028   40 Signed       4 XSTMSKIP       XBLKs skipped by migrator because
                                            they were too young
    002C   44 Signed       4 XSTALLMB       Sum of BLKDM+BLKCY+BLKSH+BLKSY
                                            Used in timestamp adjustment
         The following area is used by XSTORE migration
    0030   48 Signed       4 * (0)          Migration lock and flag word
    0030   48 Bitstring    1 XSTMIGLK       TS lock byte for migration
    0031   49 Bitstring    1 XSTMIFLG       Migration flag byte
              1... ....      XSTMISLP       X'80' Migration is awaiting
                                            redrive
              .1.. ....      XSTNORML       X'40' Normal migration in
                                            progress
              ..1. ....      XSTFLUSH       X'20' Flush is in progress
              ...1 ....      XSTPTIL        X'10' The PTIL lock and the owned
                                            ASCBK queue lock (VMDASCLK) are
                                            held for the current VMDBK
              .... 1...      XSTDCSS        X'08' DCSS scan is in progress
              .... .1..      XSTNSS         X'04' NSS scan is in progress
              .... 11..      XSTSHARE       XSTNSS+XSTDCSS NSS or DCSS scan
                                            is in progress
              .... ..1.      XSTRESUM       X'02' Migration is restarting
                                            after loss of control
              .... ...1      XSTSHAS        X'01' Shared address space scan
                                            is in progress
              .... 11.1      XSTNOCYC       XSTNSS+XSTDCSS+XSTSHAS A
                                            non-cyclic list (NSS, DCSS, or
                                            SHAS) scan is in progress.
         The following represent bit settings for XSTMIFLG
    0032   50 Signed       2 XSTBMULT       Used to control number of migrate
                                            buffers obtained at migration
                                            invocation. (XSTBMULT*paging
                                            vols)
              0000000F       XSTMMAX        15 Highest allowed value for
                                            XSBMULT
              00000005       XSTMMIN        5 Lowest value allowed for
                                            XSTBMULT
    0034   52 Address      4 XSTCYCLE       The VMDBK address of a user in
                                            the Cyclic List that will be the
                                            next target of migration.
    0038   56 Bitstring    4 XSTFRMAQ       Migration frame queue (buffers)
    003C   60 Signed       4 XSTNUMAQ       Number on the migrate frame queue
              ...1 ....      XSTMIBLF       16 Migrate blocking factor - the
                                            minimum desirable XSTNUMAQ value
                                            to give decent DASD blocking
    0040   64 Signed       2 XSTTGTEP       Epoch of target time
    0042   66 Signed       2 XSTTARGT       Target age in seconds
    0044   68 Signed       2 XSTEPOCH       Current Steal TOD clock epoch
                                            Serialized by XSTSTATL.
    0046   70 Signed       2 XSTSTIME       Migrate/steal timer
    0048   72 Signed       4 XSTADJTG       When XSTMSKIP hits this value its
                                            time to adjust the target age
    004C   76 Signed       4 XSTMAXCT       Num of times target time lowered
    0050   80 Bitstring    1 XSTMIFRM       Frame code to use on migrator
                                            buffer frames.
    0051   81 Bitstring    1 XSTMIFL2       Second migration flag byte
         The following represent bit settings for XSTMIFL2
              1... ....      XSTMINTG       X'80' Emergency scan with lowest
                                            tgt
              .1.. ....      XSTCYEND       X'40' Branched to FLSHDONE from
                                            CYCLEND
              ..1. ....      XSTCKGAL       X'20' Branched to FLSHDONE from
                                            CHKCTGAL
              ...1 ....      XSTFNDDS       X'10' Indicate that we noticed a
                                            user whose address space(s) were
                                            being destroyed while we were
                                            attempting to flush XSTORE.
              .... 1...      XSTUSE8K       X'08' Using (or waiting for) an
                                            8K buffer. This bit is only set
                                            when an 8K buffer is required. If
                                            it is ON when buffers are being
                                            returned after I/O, it means
                                            migration should only restart
                                            when 8K buffers are available.
              .... .1..      XSTNDONE       X'04' Normal migration has
                                            completed early without reaching
                                            the high threshold due to the
                                            average age of blocks in expanded
                                            storage becoming too low. If
                                            flush is active, migration will
                                            continue.
    0052   82 Signed       2 XSTMINAG       Minimum age to allow migration
    0054   84 Signed       4 XSTITIME       TOD of first steal or tmr wrap
    0058   88 Signed       8 XSTSUMAG       Sum of ages of migrated blocks
    0060   96 Signed       4 XSTUSRDM       Number of dormant guest owned
                                            address spaces that were the
                                            target of migration
    0064  100 Signed       4 XSTUSRCY       Number of non-dormant guest owned
                                            address spaces that were the
                                            target of migration
    0068  104 Signed       4 XSTUSRSH       Number of Named Saved Systems and
                                            Saved Segments (DCSSs and Segment
                                            Spaces) that were the target of
                                            migration
    006C  108 Signed       4 XSTCTGAL       Count of blocks to flush from the
                                            users partition being assigned to
                                            the virtual machine given by
                                            XSTATVMD. To update hold
                                            XSTBUFLK.
    0070  112 Signed       4 XSTBLKDM       Number of blocks migrated from a
                                            dormant guest
    0074  116 Signed       4 XSTBLKCY       Number of blocks migrated from a
                                            non-dormant guest
    0078  120 Signed       4 XSTBLKSH       Number of blocks migrated from a
                                            shared system
    007C  124 Signed       4 XSTBLKSY       Number of blocks migrated from
                                            the CP system
    0080  128 Signed       4 XSTQUEND       Anchor of current SNT queue
    0084  132 Signed       4 XSTMISAQ       Number of frames missing (taken)
                                            from migration frame queue
                                            without being replenished
    0088  136 Signed       4 XSTMIFRS       Total number of migration buffer
                                            frames, including both available
                                            (on XSTFRMAQ) and in use frames.
    008C  140 Signed       4 XSTMIGS        Count of migrate invocations
    0090  144 Signed       4 XSTCTPGM       Count of PGMBKS selected
    0094  148 Bitstring    4 XSTFROUT       Queue of frames to be written
    0098  152 Signed       4 XSTLOTHR       Low threshold for migration
    009C  156 Signed       4 XSTHITHR       High threshold for migration
    00A0  160 Signed       4 XSTRSTLO       XSTLOTHR is raised if XSTLOH20 is
                                            smaller than RSTLO at end of mig
    00A4  164 Signed       4 XSTRLOCT       Number of times buffer increased
    00A8  168 Signed       4 XSTRSTHI       XSTLOTHR is lowered if XSTLOH20
                                            is larger 3 times in a row at mig
                                            end
    00AC  172 Signed       4 XSTRHICT       Number of times buffer decreased
    00B0  176 Signed       4 XSTHICNT       Number of times XSTLOH20 was
                                            larger than XSTRSTHI
    00B4  180 Signed       4 XSTLOH2O       Minimum number of XSTORE blocks
                                            available during this migration
    00B8  184 Signed       4 XSTSKIPA       The number of XBLKs we are
                                            willing to skip before resetting
                                            target
    00BC  188 Address      4 XSTCURAS       Current (or last) ASCBK being
                                            migrated from
    00C0  192 Address      4 XSTCURVM       Current (or last) VMDBK being
                                            migrated from; contains current
                                            SNTBK address if XSTNSS or
                                            XSTDCSS flag set in XSTMIFLG
    00C4  196 Signed       4 XSTSEGCT       Count of STLBK SEGTEs processed
    00C8  200 Signed       4 XSTDDSAV       Save area for XSFDD's R13 while
                                            migrator runs.
    00CC  204 Signed       4 XSTMDCSA       Save area for MDC flush
    00D0  208 Address      4 XSTCURSG       Segment currently being migrated
    00D4  212 Address      4 XSTLSTSG       Migratee's final segment
    00D8  216 Address      4 XSTDFRAS       ASCBK of deferred address space
    00DC  220 Bitstring    4 *              reserved
    00E0  224 Signed       4 XSTNOIO        No IO was required for migration
    00E4  228 Signed       4 XSTCYCLS       Number of times through cyclic
    00E8  232 Signed       4 XSTFLCYC       Number of cycles while flushing
    00EC  236 Signed       4 XSTMRABI       Count of pages that were read in
                                            as part of a block but not used
                                            (as seen by migrate)
    00F0  240 Signed       4 XSTSRABI       Count of pages that were read in
                                            as part of a block but not used
                                            (as seen by steal)
    00F4  244 Signed       4 XSTSRGCT       Single reads for guests
    00F8  248 Signed       4 XSTSRSCT       Single reads for system
    00FC  252 Signed       4 XSTBPRCT       Blocks of pages read
    0100  256 Address      4 XSTATVMD       Address of the VMDBK having
                                            XSTORE attached. This is the base
                                            VMDBK for the primary
                                            configuration for this virtual
                                            machine (VMDORIG). to update hold
                                            XSTBUFLK and hcppgdxl.
    0104  260 Signed       4 XSTATLOW       Lowest block number associated
                                            with the partition being attached
                                            to the virtual machine given in
                                            xstatvmd. To update hold xstbuflk
                                            and HCPPGDXL.
    0108  264 Signed       4 XSTATHI        Highest block number associated
                                            with the partition being attached
                                            to the virtual machine given in
                                            XSTATVMD. To update hold XSTBUFLK
                                            and HCPPGDXL.
    010C  268 Signed       4 XSTATSIZ       Amount of configured expanded
                                            storage being attached to the
                                            virtual machine given in
                                            XSTATVMD. To update hold XSTBUFLK
                                            and HCPPGDXL.
         The following area is used for XSTORE block allocation
    0110  272 Signed       4 XSTXBZIP       Times no XSTORE was available
    0114  276 Signed       4 XSTXBGET       Number of XSTORE allocations
    0118  280 Signed       4 XSTXBREL       Number of XSTORE releases
    011C  284 Signed       4 XSTMAXK        Highest XSTORE increment number
    0120  288 Signed       4 XSTINCRM       Highest supported hardware
                                            increment number after capping
    0124  292 Signed       4 *              Reserved for IBM use
    0128  296 Signed       4 XSTCPPAR       Number of blocks in CP partition
                                            available for allocation. This is
                                            the total number of blocks in the
                                            CP and CP-Retained states
                                            excluding those in error. To
                                            update hold HCPPGDXL.
    012C  300 Signed       4 XSTCTXAV       Count of available blocks in the
                                            CP partition. To update hold
                                            XSTBUFLK.
              00000130       XSTMGMSZ       *-XSTMGSTR Size of monitored
                                            portion of XSTMG
    0130  304 Signed       4 XSTDIRAN       Anchor to the XSTORE directory
    0134  308 Signed       4 XSTALCR        Allocation cursor: points to the
                                            directory entry (XDRBK) where the
                                            the last block was allocated.
    0138  312 Bitstring    1 XSTBUFLK       TS lock for BAT buffer
    0139  313 Bitstring    1 *              RESERVED FOR IBM USE
    013A  314 Signed       2 XSTBUFH4       Table entry index size
    013C  316 Address      4 XSTBUFHI       End of the BAT buffer
    0140  320 Address      4 XSTBUFIX       Next entry to take in BAT buffer
    0144  324 Address      4 XSTBUFLO       Addr of start of buffer
    0148  328 Signed       4 XSTBUFER (500) The BAT buffer
              00000918       XSTBUFND       * Addr of last entry in the BAT
                                            buffer

#### XSTMG Storage Layout

    *** XSTMG - Expanded storage management data
    *
    *     +------+------+-------------+---------------------------+
    *   0 |:STAFG|:FUTCT|  XSTAVGAG   |         XSTSTATL          |
    *     +------+------+-------------+---------------------------+
    *   8 |         XSTCTXTS          |         XSTCTXER          |
    *     +---------------------------+---------------------------+
    *  10 |         XSTOTALB          |         XSTGUEST          |
    *     +---------------------------+---------------------------+
    *  18 |         XSTINCRB          |         XSTCPINC          |
    *     +---------------------------+---------------------------+
    *  20 |         XSTCPSTR          |         XSTPEDRT          |
    *     +---------------------------+---------------------------+
    *  28 |         XSTMSKIP          |         XSTALLMB          |
    *     +------+------+-------------+---------------------------+
    *  30 |:MIGLK|:MIFLG|  XSTBMULT   |         XSTCYCLE          |
    *     +------+------+-------------+---------------------------+
    *  38 |         XSTFRMAQ          |         XSTNUMAQ          |
    *     +-------------+-------------+-------------+-------------+
    *  40 |  XSTTGTEP   |  XSTTARGT   |  XSTEPOCH   |  XSTSTIME   |
    *     +-------------+-------------+-------------+-------------+
    *  48 |         XSTADJTG          |         XSTMAXCT          |
    *     +------+------+-------------+---------------------------+
    *  50 |:MIFRM|:MIFL2|  XSTMINAG   |         XSTITIME          |
    *     +------+------+-------------+---------------------------+
    *  58 |                       XSTSUMAG                        |
    *     +---------------------------+---------------------------+
    *  60 |         XSTUSRDM          |         XSTUSRCY          |
    *     +---------------------------+---------------------------+
    *  68 |         XSTUSRSH          |         XSTCTGAL          |
    *     +---------------------------+---------------------------+
    *  70 |         XSTBLKDM          |         XSTBLKCY          |
    *     +---------------------------+---------------------------+
    *  78 |         XSTBLKSH          |         XSTBLKSY          |
    *     +---------------------------+---------------------------+
    *  80 |         XSTQUEND          |         XSTMISAQ          |
    *     +---------------------------+---------------------------+
    *  88 |         XSTMIFRS          |         XSTMIGS           |
    *     +---------------------------+---------------------------+
    *  90 |         XSTCTPGM          |         XSTFROUT          |
    *     +---------------------------+---------------------------+
    *  98 |         XSTLOTHR          |         XSTHITHR          |
    *     +---------------------------+---------------------------+
    *  A0 |         XSTRSTLO          |         XSTRLOCT          |
    *     +---------------------------+---------------------------+
    *  A8 |         XSTRSTHI          |         XSTRHICT          |
    *     +---------------------------+---------------------------+
    *  B0 |         XSTHICNT          |         XSTLOH2O          |
    *     +---------------------------+---------------------------+
    *  B8 |         XSTSKIPA          |         XSTCURAS          |
    *     +---------------------------+---------------------------+
    *  C0 |         XSTCURVM          |         XSTSEGCT          |
    *     +---------------------------+---------------------------+
    *  C8 |         XSTDDSAV          |         XSTMDCSA          |
    *     +---------------------------+---------------------------+
    *  D0 |         XSTCURSG          |         XSTLSTSG          |
    *     +---------------------------+---------------------------+
    *  D8 |         XSTDFRAS          |///////////////////////////|
    *     +---------------------------+---------------------------+
    *  E0 |         XSTNOIO           |         XSTCYCLS          |
    *     +---------------------------+---------------------------+
    *  E8 |         XSTFLCYC          |         XSTMRABI          |
    *     +---------------------------+---------------------------+
    *  F0 |         XSTSRABI          |         XSTSRGCT          |
    *     +---------------------------+---------------------------+
    *  F8 |         XSTSRSCT          |         XSTBPRCT          |
    *     +---------------------------+---------------------------+
    * 100 |         XSTATVMD          |         XSTATLOW          |
    *     +---------------------------+---------------------------+
    * 108 |         XSTATHI           |         XSTATSIZ          |
    *     +---------------------------+---------------------------+
    * 110 |         XSTXBZIP          |         XSTXBGET          |
    *     +---------------------------+---------------------------+
    * 118 |         XSTXBREL          |         XSTMAXK           |
    *     +---------------------------+---------------------------+
    * 120 |         XSTINCRM          |///////////////////////////|
    *     +---------------------------+---------------------------+
    * 128 |         XSTCPPAR          |         XSTCTXAV          |
    *     +---------------------------+---------------------------+
    * 130 |         XSTDIRAN          |         XSTALCR           |
    *     +------+------+-------------+---------------------------+
    * 138 |:BUFLK|//////|  XSTBUFH4   |         XSTBUFHI          |
    *     +------+------+-------------+---------------------------+
    * 140 |         XSTBUFIX          |         XSTBUFLO          |
    *     +---------------------------+---------------------------+
    * 148 |                                                       |
    *     =                       XSTBUFER                        =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 918
    *
    *** XSTMG - Expanded storage management data

#### XSTMG Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    XSTADJTG       0048
    XSTALCR        0134
    XSTALLMB       002C
    XSTATHI        0108
    XSTATLOW       0104
    XSTATSIZ       010C
    XSTATVMD       0100
    XSTAVGAG       0002
    XSTBLKCY       0074
    XSTBLKDM       0070
    XSTBLKSH       0078
    XSTBLKSY       007C
    XSTBMULT       0032
    XSTBPRCT       00FC
    XSTBUFER       0148
    XSTBUFHI       013C
    XSTBUFH4       013A
    XSTBUFIX       0140
    XSTBUFLK       0138
    XSTBUFLO       0144
    XSTBUFND       0148 00000918
    XSTCKGAL       0051 20
    XSTCPINC       001C
    XSTCPPAR       0128
    XSTCPSTR       0020
    XSTCTGAL       006C
    XSTCTPGM       0090
    XSTCTXAV       012C
    XSTCTXER       000C
    XSTCTXTS       0008
    XSTCURAS       00BC
    XSTCURSG       00D0
    XSTCURVM       00C0
    XSTCYCLE       0034
    XSTCYCLS       00E4
    XSTCYEND       0051 40
    XSTDCSS        0031 08
    XSTDDSAV       00C8
    XSTDFRAS       00D8
    XSTDIRAN       0130
    XSTEPOCH       0044
    XSTEXTMP       0000 10
    XSTFLAGS       0000
    XSTFLCYC       00E8
    XSTFLUSH       0031 20
    XSTFNDDS       0051 10
    XSTFRMAQ       0038
    XSTFROUT       0094
    XSTFUTCT       0001
    XSTGUEST       0014
    XSTHICNT       00B0
    XSTHITHR       009C
    XSTINCRB       0018
    XSTINCRM       0120
    XSTITIME       0054
    XSTLOH2O       00B4
    XSTLOTHR       0098
    XSTLSTSG       00D4
    XSTMAXCT       004C
    XSTMAXK        011C
    XSTMDALL       0000 08
    XSTMDCSA       00CC
    XSTMGMSZ       012C 00000130
    XSTMGSTR       0000
    XSTMIBLF       003C 10
    XSTMIFLG       0031
    XSTMIFL2       0051
    XSTMIFRM       0050
    XSTMIFRS       0088
    XSTMIGLK       0030
    XSTMIGS        008C
    XSTMINAG       0052
    XSTMINTG       0051 80
    XSTMISAQ       0084
    XSTMISLP       0031 80
    XSTMMAX        0032 0000000F
    XSTMMIN        0032 00000005
    XSTMPDSB       0000 02
    XSTMRABI       00EC
    XSTMSKIP       0028
    XSTNAVAL       0000 04
    XSTNCONF       0000 01
    XSTNDONE       0051 04
    XSTNOCYC       0031 0D
    XSTNOIO        00E0
    XSTNORML       0031 40
    XSTNSS         0031 04
    XSTNUMAQ       003C
    XSTOFFLN       0000 01
    XSTOTALB       0010
    XSTPEDRT       0024
    XSTPTIL        0031 10
    XSTQUEND       0080
    XSTRESUM       0031 02
    XSTRHICT       00AC
    XSTRLOCT       00A4
    XSTRREQD       0000 40
    XSTRSTHI       00A8
    XSTRSTLO       00A0
    XSTSEGCT       00C4
    XSTSHARE       0031 0C
    XSTSHAS        0031 01
    XSTSKIPA       00B8
    XSTSRABI       00F0
    XSTSRGCT       00F4
    XSTSRSCT       00F8
    XSTSTAFG       0000
    XSTSTATL       0004
    XSTSTIME       0046
    XSTSUMAG       0058
    XSTTARGT       0042
    XSTTGTEP       0040
    XSTUSE8K       0051 08
    XSTUSRCY       0064
    XSTUSRDM       0060
    XSTUSRSH       0068
    XSTXBGET       0114
    XSTXBREL       0118
    XSTXBZIP       0110

This information is based on z/VM V4R3.0. Last updated on 30 Apr 2002 at 18:34:05 EDT.
Copyright IBM Corporation, 1990, 2002