*COMDECK AAMDEFS
# THE FOLLOWING DEFS ARE DEPENDANT ON HAVING 10 CHAR PER WORD          #
  
  
          DEF TENTH(N) #((N)*52429/2**19)#;  #N/10, BETTER THAN SYMPL  #
          DEF WLG(N) #(TENTH(N+9))#;   #NUM OF WRDS REQ TO STORE N CHAR#
          DEF MOD10(N) #(N-TENTH(N)*10)#;  #N MOD 10 #
          DEF BRICK(N) #(DPRUSIZ*FSBLKSIZ[N]-2)# ;#BLOCK SIZE IN WORDS# 
  
# THE FOLLOWING DEFS FACILITATE ACCESS TO ELEMENTS OF THE BLOCK        #
          DEF DBLKFRAME #3#; #NUMBER OF WRDS IN BLOCK FRAME # 
          DEF DBLKHEDSZ #2#; #NUMBER OF WRDS IN BLOCK HEADER #
          DEF DBLKOVHED #(DBLKFRAME + DBLKHEDSZ)#; #NONDATA WRDS IN BLK# GAG0928
          DEF BLOCFWA #(P<BLOK$AA>+DBLKOVHED)#;  #FIRST REAL WRD IN BLK#
          DEF BLKLG #BLKLNG[0]#;                                         JJJ0923
          DEF MAXMT #(2*BLKLG-2*DBLKHEDSZ)#; #MAX EMPTY 1/2 WRDS IN BLK#
          DEF INDEXPRU #B<36,24>W[RECLWA-1]#; #PRU FIELD IN INDEX REC  #
          DEF AKHFIELD #B<35,1> RECPTR#; #AK USER HEADER BIT #
          DEF LWAFIELD #B<47,13>RECPTR#;
          DEF SUBFLAG  #B<46,1> RECPTR#; #REC HAS A SUBFILE # 
          DEF UCCFIELD #B<30,4> RECPTR#;
          DEF RPWORD(N) #W[BLOCLWA-(N+1)/2]#; #GET RECORD POINTER N # 
          DEF RPFIELD(M,N,Q) #B<(Q-Q/2*2)*30+M,N>RPWORD(Q)#;
          DEF FILPOS #FILP$AA# ;                                         AFB0517
          DEF SUBBLOCRC1 #B<9,13>W[OMEGA]#;                              CIM1211
          DEF SUBBLOCRC2 #B<36,24>W[OMEGA]#;                             CIM1211
  
  
# THE FOLLOWING DEFS ARE DEFAULT VALUES FOR FIT FIELDS# 
        DEF DFTFLM #100000#; #DEFAULT FILE LIMIT IN RECORDS#
        DEF DFTRB #2#;       #DEFAULT BLOCKING FACTOR#
        DEF DFTNL #3#;       #DEFAULT INDEX LEVELS# 
          DEF DFTISDARB #2#;    #DEFAULT RB FOR IS AND DA DATA BLOCKS#   GBKCOM 
          DEF DFTAKRB #8#;    #DEFAULT RB FOR AK DATA BLOCKS#            GBKCOM 
          DEF DFTISBLKSZ #8#; #DEFAULT IS DATA BLOCK SIZE-PRU#           RPN0626
          DEF DFTAKBLKSZ #4#; #DEFAULT AK DATA BLOCK SIZE-PRU#           RPN0626
          DEF DFTDABLKSZ #2#; #DEFAULT DA DATA BLOCK SIZE-PRU#           RPN0626
          DEF DFTPROBLIM #4#;    #DEFAULT LIMIT ON RANDOM PROBE#         GBKCOM 
          DEF DFTPRCNTBK #4#;    #DEFAULT SERIAL PROBE TRIGGER#          GBKCOM 
  
# THE FOLLOWING DEFS DEFINE SIZES AND CONSTANTS#
        DEF SZFSTT #126#;    #SIZE OF FSTT# 
        DEF SZFSTTIC #130#;  #SIZE OF FSTT IN CORE#                      JJJ1204
        DEF SZFET #9#;       #SIZE OF FET#
        DEF SZDICOTAB #8#;   #SIZE OF FSDICOTAB#
          DEF WC #10#;  #NUMBER OF CHAR PER CM WORD#                     RPN0627
        DEF FOUR #4#; #24 BITS (4 CH) TO DESCRIBE PRU POINTER#           RPN0601
        DEF TWO #2#;  #NUMBER OF UNUSED WORDS IN BLOCK#                  RPN0601
        DEF PRU3 #3#; #PRU NUMBER OF FIRST BLOCK ASSUMING 2 PRU FSTT#    RPN0601
        DEF CHSZB #6#; #NUMBER OF BITS PER CHARACTER#                    RPN0601
        DEF DPRUSIZ  #64#;  #SIZE OF PRU IN WORDS#                       JJJ0402
        DEF KDEFRL #20#;     #RL IN CHARACTERS OF MIP LEVEL 1 RECORD#    GBK0121
        DEF FSTTHIS #"SAAM/IS   "#;  #IS HEADER WORD#                    JJJ0413
        DEF FSTTHAK #"SAAM/AK   "#;  #AK HEADER WORD#                    JJJ0413
        DEF FSTTHDA #"SAAM/DA   "#;  #DA HEADER WORD#                    JJJ0413
        DEF MIPHEAD #"SAAM/MIP  "#;  #MIP HEADER WORD#                   JJJ0413
  
# THE FOLLOWING DEFS ARE MAXIMUM AND MINIMUM VALUES#
        DEF MXFTMBL #81900#; #MAXIMUM BLOCK SIZE IN CHARACTERS# 
        DEF MXFTNL #15#;     #MAXIMUM INDEX LEVELS# 
        DEF MXFTMRL #81900#; #MAXIMUM RECORD SIZE IN CHARACTERS#
        DEF MXFTKL #255#;    #MAXIMUM KEY LENGTH# 
        DEF MINBUF #3#;      #MINIMUM BUFFERS NEEDED TO RUN#
  
# THE FOLLOWING DEFS DEFINE OFFSETS TO WORDS WITHIN TABLES #
        DEF DOFFFSCHN #58#;  #OFFSET TO FSTT CHAIN IN FSTT# 
        DEF DOFFFTCHN #27#;  #OFFSET TO FIT CHAIN LINK IN FIT#
        DEF DOFFBFCHN #1#;   #OFFSET TO FILE CHAIN IN BLOK$AA#
        DEF DOFFKOCHN #0#;   #OFFSET TO KICK-OUT CHAIN IN BLOK$AA#
        DEF DOFFSFIDS #62#;  #OFFSET TO FILE DESCRIPTOR IN FSTT # 
  
# THESE DEFS ARE USED TO INCREASE CODE READABILITY AND TO EASE THE     #
# CODING EFFORT.                                                       #
  
          DEF NULLSTMT #BEGIN  END#;
          ITEM DUMMY$$;      #USED IN ASLONGAS FOR INDUCTION VARIABLE#   JJJ0908
          DEF ASLONGAS #FOR DUMMY$$ = DUMMY$$ WHILE #;                   JJJ0908
          DEF INDEXFLAG #BLINDXFLG[0]#; 
          DEF XFER #FAXFER#;                                             JJJ0908
          DEF FITLNG #30#;   #AAM 2.0 FIT LENGTH - 5 WORDS #             AM2A091
  
# THE FOLLOWING DEFS ARE USED TO DEFINE FILE POSITION                  #
  
          DEF FPNULL #0# ;   #FP IS NEITHER EOI, BOI, OR EOK#            AFB0222
          DEF FPRWMT #63#;   #FP IS REWOUND EMPTY (INTERNAL ONLY)#       AFB0222
          DEF BOI #1#;       # BEGINNING OF INFORMATION # 
          DEF EOK #8#;       # END OF KEY LIST #
          DEF EOR #16#;      # END OF RECORD #
          DEF EOI #64#;      # END OF INFORMATION # 
  
# THE FOLLOWING DEFS ALLOW SYMPL PROCS TO MAKE CERTAIN SYS REQUESTS    #
# BY CALLING CRA1$AA.                                                  #
  
  
          DEF ZPARM #LOC(GWRD$AA)#;  # USED TO PUT A ZERO IN PARM LIST #
  
#     DEFS FOR P1 VALUES TO CRA1$AA                                    #
  
          DEF DCIO #0#;      # CODE FOR CIO CALL #
          DEF DRCL #1#;      # CODE FOR RCL CALL #
          DEF DMSG #2#;      # CODE FOR MSG CALL #
          DEF DTIM #3#;      # CODE FOR TIM CALL #
          DEF DPFE #4#;      # CODE FOR PFE CALL #
          DEF DPRM #5#;      # CODE FOR PRM CALL #
          DEF DABT #6#;      # CODE FOR ABT CALL #
  
#     DEFS FOR P4 VALUES TO CRA1$AA # 
  
#     P4 VALUES FOR CIO CALLS # 
  
          DEF CIOOPN #O"160"#;  # OPEN CODE # 
          DEF CIOCLS #O"150"#;  # CLOSE CODE #
          DEF CIORED #O"010"#;  # READ CODE # 
          DEF CIOWRR #O"024"#;  # WRITER CODE # 
          DEF CIORWR #O"224"#;  # REWRITER CODE # 
  
#     P4 VALUES FOR TIM CALLS # 
  
          DEF DTIME #0#;     # CP TIME #
          DEF DDATE #1#;     # DATE # 
          DEF DCLOK #2#;     # WALL CLOCK # 
          DEF DJDAT #3#;     # JULIAN DATE #
          DEF DRTIM #4#;     # REAL-TIME CLOCK #
          DEF DIOTM #10#;    # IO TIME #
  
#     P4 VALUES FOR PFE CALLS # 
  
          DEF DXTND #O"30"#;  # EXTEND PERMANENT FILE # 
  
#     P4 VALUES FOR PRM CALLS # 
  
          DEF DPERM #O"60"#;  # GET PERMISSION BITS # 
  
#         TIME REQUEST.  TIME IN THE FORM HH.MM.SS. IS RETURNED IN CELL#
#                        SUPPLIED AS A PARAMETER.                      #
  
          DEF SYSTIME (TIMCELL) #CRA1$AA(DTIM,TIMCELL,1,DCLOK)#;
  
#         DATE REQUEST.  DATE IN THE FORM MM/DD/YY  IS RETURNED IN CELL#
#                        SUPPLIED AS A PARAMETER.                      #
  
          DEF SYSDATE (DATCELL) #CRA1$AA(DTIM,DATCELL,1,DDATE)#;
  
                                                                         JJJ0923
# THE FOLLOWING DEFS ARE USED TO CALL ENTRY POINTS IN CAPSULES         # JJJ0923
# SUBJECT TO KICKOUT.  *****CHANGES MUST BE COORDINATED WITH CHANGES   # JJJ0923
#                           IN AAM.CTL.***********                     # JJJ0923
                                                                         JJJ0923
          DEF SPLITBLK #CALCODE = 0;  CCAL$AA#;                          JJJ0209
          DEF VANBLK   #CALCODE = 1;  CCAL$AA#;                          JJJ0209
          DEF AWAYCHN  #CALCODE = 2;  CCAL$AA#;                          JJJ0209
          DEF WRITNOW  #CALCODE = 3;  CCAL$AA#;                          JJJ0209
          DEF SPC1CLL  #CALCODE = 4;  CCAL$AA#;                          RPN0615
          DEF MALRDAK  #CALCODE = 5;  CCAL$AA#;                          GAG0627
          DEF MKRMDAK  #CALCODE = 6;  CCAL$AA#;                          GAG0627
          DEF ADNUDDA  #CALCODE = 7;  CCAL$AA#;                          GAG0811
                                                                         JJJ0923
# THE FOLLOWING DEFS DEFINE THE ERROR CODES USED BY AAM.               #
  
          DEF EC6   #6#;     #FIRST BLOCK IS NOT AN FSTT #
          DEF EC52  #42#;    #FILE NOT CLOSED LAST TIME/MAY BE BAD #
          DEF EC55  #45#;    #CANT OPEN OLD A NON-EXISTENT OR NULL FILE#
          DEF EC74  #60#;    #MUST HAVE CMM FOR MULTIPLE ACCESS#
          DEF EC75  #61#;    #UBS MAY NOT BE USED FOR MULTIPLE ACCESS#
          DEF EC100 #O"100"#; #ATTEMPT TO POSITION BEYOND BOUNDARY# 
          DEF EC117 #O"117"#; #TRIED TO GETN AFTER FILE DISTURBED#       GBKCOM 
          DEF EC135 #93#;    #READ PARITY ERROR#
          DEF EC136 #94#;    #WRITE PARITY ERROR# 
          DEF EC142 #O"142"#;  #WSA TOO SHORT#                           JJJ0720
          DEF EC147 #103#;   #CHECKSUM ERROR ON **** (DATA,INDEX,FSTT) #
          DEF EC150 #O"150"#; #FILE NOT ON RMS DEVICE#                   GAG0919
          DEF EC166 #118#;   #FIT INCOMPLETE - CANT CREATE FILE # 
          DEF EC167 #119#;   #RL OUTSIDE MIN-MAX RANGE #
          DEF EC171 #121#;   #INCORRECT HASHING ROUTINE # 
          DEF EC172 #O"172"#; #BAD KL OR RKP# 
          DEF EC174 #124#;   #FIT INCOMPLETE FOR BFS CALC # 
          DEF EC176 #126#;   #MIN REC SIZE > MAX REC SIZE # 
          DEF EC177 #127#;   #BAD DISPLAY/COLLATE CONVERSION TABLE# 
          DEF EC200 #128#;   #BAD FSTT LINKED TO FIT# 
          DEF EC201 #129#;   #FILE CONTAINS BAD BLOCKS#                  JJJ0908
          DEF EC202 #130#;   #FILE IS RUINED#                            JJJ0908
          DEF EC203 #131#;   #MIP FUNCTION ATTEMPTED WITHOUT MIP FILE#   GAG1103
          DEF EC206 #O"206"#; #KEY NOT WITHIN RECORD# 
          DEF EC245 #O"245"#; #FUNCTION INVALID FOR THIS FO#             GBKCOM 
          DEF EC215 #O"215"#; #PREVIOUS FATAL ERROR THRU OTHER FIT# 
          DEF EC250 #168#;   #FILE RMS LIMIT EXCEEDED (AK) #
          DEF EC252 #170#;   #SYSTEM RMS LIMIT REACHED #
          DEF EC253 #171#;   #FILE LIM (NUM RECS) REACHED # 
          DEF EC300 #192#;   #NO READ PERMISSION #
          DEF EC301 #193#;   #NO WRITE OR MODIFY PERM # 
          DEF EC302 #194#;   #NO EXTEND OR ALLOCATE PERMISSION #
          DEF EC345 #O"345"#;  #NOT ENOUGH CMM TO OPEN# 
              DEF EC335 #O"335"#; #PTREE FULL, CANT PUT OR REPLACE# 
          DEF EC354 #236#;   #BUFFER SPACE SUPPLIED IS INSUFFICIENT # 
          DEF EC372 #250#;   #IS INDEX STRUCTURE FULL, 15 LEVELS#        JJJ1204
          DEF EC403 #O"403"#; #SKIPBL NOT ALLOWED#
          DEF EC421 #273#;   #WSA NOT SPECIFIED # 
          DEF EC442 #290#;   #INVALID AK KEY #
          DEF EC445 #293#;   #KEY NOT FOUND # 
          DEF EC446 #294#;   #DUPLICATE KEY FOUND#                       CIM0202
          DEF EC447 #295#;   #NO KA SPECIFIED # 
          DEF EC452 #O"452"#; #FILE POSITION ERROR#                      GBKCOM 
          DEF EC501 #321#;   #INDEX FILE NOT COMPATIBLE WITH DATA FILE #
          DEF EC502 #322#;   #SPECIFIED KEY NOT DEFINED # 
          DEF EC503 #323#;   #DUP ALT KEY ERROR # 
          DEF EC504 #324#;   #SEQUENTIAL OP BEYOND EOI #
          DEF EC505 #325#;   #ERROR IN RMKDEF PARAMETER # 
          DEF EC506 #326#;   #ALTERNATE KEY NOT FOUND#                   CIM0317
          DEF EC507 #O"507"#; #AAM MALFUNCTION# 
          DEF EC512 #O"512"#; #CANT UPDATE WITH NDX = YES#
          DEF EC515 #O"515"#; #NO MIP FILE SPECIFIED# 
          DEF EC527 #O"527"#;  #CANT REDEF SCC# 
          DEF EC530 #O"530"#; #PADDING FACTOR OUT OF RANGE#              GAG1009
          DEF EC532 #O"532"#; #OPEN NEW XIST FILE#
          DEF EC534 #O"534"#; #MRL EXCEEDS MAX# 
          DEF EC535 #O"535"#; #NO DECOMP RTN #
          DEF EC536 #O"536"#; #NO OR WRG COMP RTN#
          DEF EC540 #O"540"#; #FIFO NOT ALLOWED IN RPT GRP# 
          DEF EC541 #O"541"#; #PURGE ILLEGAL UNKNOWN KEYDEF#
          DEF EC542 #O"542"#; #CANT ADD EXISTING KEYDEF#
          DEF EC544 #O"544"#; #PADDING FACTOR TOO BIG#
          DEF EC545 #O"545"#; #PD MUST BE OUTPUT FOR OPEN NEW#
          DEF EC546 #O"546"#; #PRIM KEY NOT FOUND#
          DEF EC547 #O"547"#; #BAD STRUCTURE FOUND IN FILE# 
          DEF EC550 #O"550"#; #CANNOT COMPRESS- KEY POSITION INVALID#    CY209
          DEF EC551 #O"551"#; #REL MUST BE GE,GT,OR EQ#                  CY210
          DEF EC553 #O"553"#; #OVERFLOW REC NOT FOUND, FILE BAD (AK)#    RPN0627
          DEF EC554 #O"554"#; #PROCESS REQUIRES READ,EXTEND,MODIFY PMB#  GAG0919
          DEF EC555 #O"555"#; #INDEX FILE MISSING#                       RJC1026
          DEF EC720 #O"720"#; #DEVICE CAPACITY EXCEEDED#
  
# THE FOLLOWING DEFS ARE NOTE NUMBERS FOR ZZZZZEF NOTES#
       DEF NOTE001 #513#;    #FILE OPEN#
       DEF NOTE002 #514#;    #FILE CLOSE# 
       DEF NOTE003 #515#;    #NUMBER OF INDEX LEVELS# 
       DEF NOTE004 #516#;    #GET COUNT#
       DEF NOTE005 #517#;    #PUT COUNT#
       DEF NOTE006 #518#;    #REPLACE COUNT#
       DEF NOTE007 #519#;    #DELETE COUNT# 
       DEF NOTE010 #520#;    #WORDS OF FILE SPACE#
        DEF NOTE011 #521#;    #EOI REACHED#                              JJJ1001
       DEF NOTE040 #O"1040"#; #RECS IN HOMEBLOX CREATED THIS OPEN#       GBKCOM 
       DEF NOTE041 #O"1041"#; #RECS IN OFLOBLOX CREATED THIS OPEN#       GBKCOM 
       DEF NOTE042 #O"1042"#; #OFLO BLOX CREATED THIS OPEN#              GBKCOM 
       DEF NOTE045 #O"1045"#; #KL SHOULD BE CHARACTER COUNT LQ 8#        GBKCOM 
       DEF NOTE046 #O"1046"#; #PADDING NO LONGER HONORED#                RPN0626
       DEF NOTE047 #O"1047"#; #SERIAL PASS OF FILE FOR SPACE (AK)#       RPN0626
        DEF NOTE012 #522#;   #SKIP REACHED FILE BOUNDARY#                VBG1216
       DEF NOTE033 #539#;    #GETN COUNT# 
  
# THE FOLLOWING ARE DEFS FOR IMPOSSIBLE ERRORS# 
          DEF BADPOS1 #O"34555555555555555555"#;                         CY209
          DEF BADPOS3 #O"35555555555555555555"#;                         CY209
          DEF INTHI   #O"36555555555555555555"#;                         CY209
          DEF STUPRIM #O"37555555555555555555"#;                         CY209
          DEF HIERROR #O"40555555555555555555"#;                         CY209
          DEF CBFERR  #O"41555555555555555555"#;                         CY209
          DEF RTOTHI  #O"42555555555555555555"#;                         CY209
          DEF MIPCLS  #O"34335555555555555555"#;                         CY209
          DEF FIXBZY  #O"34345555555555555555"#;                         CY209
          DEF CHNERR  #O"34355555555555555555"#;                         CY209
          DEF IOPRU0  #O"34365555555555555555"#;                         CY209
          DEF ALTRIP  #O"34375555555555555555"#;                         CY209
          DEF UBSCNT  #O"34405555555555555555"#;                         CY209
          DEF UNCHNER #O"34415555555555555555"#;                         CY209
          DEF ECNEG   #O"34425555555555555555"#;                         CY209
          DEF BADKD   #O"35335555555555555555"#;                         CY209
          DEF MIPSEEK #O"35345555555555555555"#;                         CY209
          DEF NOSMNTV #O"35355555555555555555"#;                         GAG0629
          DEF BADSPFG #O"35365555555555555555"#;                         GAG0629
          DEF IMPOSSIBLE(ERC)#IMPERR=ERC;IMPR$AA#;
*CALL AAMARRDEF 
  
                                                                         CORPL16
# THE FOLLOWING DEFS ARE PUT IN TO MAKE VARIABLE NAMES SHORTER.  THEY #  CORPL16
# MAY BE REMOVED AT A LATER DATE.#                                       CORPL16
                                                                         CORPL16
                                                                         CORPL16
          DEF SUFHLG #3#;                                                CORPL16
          DEF DEAD #15#;                                                 CORPL16
          DEF GOSTARTFILE #GOFI$AA(0)#;                                  CORPL16
          DEF GOENDFILE #GOFI$AA(1)#;                                    CORPL16
          DEF UR #BLKUR[0]#;                                             CORPL16
          DEF RC #BLRECNT[0]#;                                           CORPL16
          DEF EC #BLECNT[0]#;                                            CORPL16
          DEF FWD #BLOCFWD[0]#;                                          CORPL16
          DEF FWDCNT #PTFWCT[0]# ;                                      001400
          DEF ANYDEAD #BLANYDED[0]#;                                     CORPL16
          DEF CURPTR #PTCURPTR[0]#;                                      CORPL16
          DEF QFR #PTFREC[0]#;                                           CORPL16
          DEF QLR #PTLREC[0]#;                                           CORPL16
          DEF QEI #PTEOI[0]#;                                            CORPL16
          DEF PARENTORG #FSFILEORG[FTFSTT[0]-P<FSTT$AA>]#;               CORPL16
          DEF FREESLOTS #BLFRESLTS[0]#;                                  CORPL16
          DEF OMEGAVAL #RECLWA+SFHLG[0]#; #ONLY WHEN LG IS NEGATIVE#     CORPL16
          DEF KLENG #FIKEYSIZE[0]#;                                      CORPL16
          DEF KTYPE #FIKEYTYPE[0]#;                                      CORPL16
          DEF ORG #FIFILEORG[0]#;                                        CORPL16
          DEF FIRDAT #FIFDBPRU[0]#;                                      CORPL16
          DEF PRBK #FINDXPRU[0]#;                                        CORPL16
          DEF NLEV #FINDXLVLS[0]#;                                       CORPL16
          DEF KLOC #FIKEYLOC[0]#;                                        CORPL16
          DEF KPOS #FIKEYPOS[0]#;                                        CORPL16
          DEF RECCNT # FIRECCNT[0]#;                                     CORPL16
          DEF LASTBNO #FILSTPRU[0]#;                                     CORPL16
          DEF CURLEV #MPCURLEV[0]#;                                      CORPL16
          DEF SEEKMODE #FASKMODE[0]#;                                    CORPL16
          DEF SEEKSTAGE #FASKSTGE[0]#;                                   CORPL16
          DEF SEEKLENG #FASKLENG[0]#;                                    CORPL16
          DEF SEEKRKP #FASKRKP[0]#;                                      CORPL16
          DEF SEEKRKW #FASKRKW[0]#;                                      CORPL16
          DEF SEEKRKL #FASKRKL[0]#;                                      CORPL16
          DEF OVKEY #KEYHOLE[1]#; #AK OVERFLOW KEY AREA#                 RPN0606
          DEF CKEY #KEYHOLE[0]#; #AK KEY AREA#                           RPN0626
          DEF ALIEN #14#;  # UCC = 14 IF ALIEN RECORD FOR AK#            RPN0626
          DEF DFMETLG #16#; #LENGTH OF MOST EMPTY TABLE FOR DA/AK#       RPN0626
          DEF OVERFLOW #13#; #UCC = 13 IF REC OVERFLOW, AK#              RPN0627
  
# THE FOLLOWING DEF CONTROLS THE CONDITIONAL COMPILATION OF CODE THAT  #
# COLLECTS NON-STANDARD FILE STATISTICS.  THE VALUE OF -STATS- IS      #
# DETERMINED BY -UPDATE- DIRECTIVES.                                   #
*IF DEF,STATS 
          DEF STATS #1# ;    # COMPILE NON-STANDARD STATISTIC CODE #
*ENDIF
*IF -DEF,STATS
          DEF STATS #0# ;    # DONT COMPILE NON-STANDARD STATISTIC CODE#
*ENDIF
