DELETE CDD$TOP.CDD$RECORD.UAF_RECORD;
REDEFINE RECORD CDD$TOP.CDD$RECORD.UAF_RECORD USING
  01  UAF_REC.
!
    05  B_RTYPE
      USAGE IS BYTE.
    05  B_VERSION
      USAGE IS BYTE.
!
    05  W_USRDATOFF
      USAGE IS WORD.
!
    05  T_USERNAME
      PICTURE IS X(32)
      EDIT_STRING IS X(12)
      QUERY_HEADER IS "Username".
!
    05  L_UIC.
      10  W_MEMBER
        USAGE IS WORD.
      10  W_GROUP
        USAGE IS WORD.
!
    05  L_SUB_ID
      USAGE IS LONG.
!
    05  Q_PARENT_ID
      USAGE IS QUAD.
!
    05  T_ACCOUNT
      PICTURE IS X(32)
      EDIT_STRING X(32)
      QUERY_HEADER IS "Account".
!
    05  T_OWNER
      EDIT_STRING IS X(31)
      QUERY_HEADER IS "Owner"
      COMPUTED BY FN$STR_EXTRACT (T_OWNER_1, 1,
        B_OWNER_LENGTH).
	05 B_OWNER_LENGTH
	   USAGE IS BYTE.
        05 T_OWNER_1
           PICTURE IS X(31).
!
    05  T_DEFDEV
      EDIT_STRING IS X(31)
      COMPUTED BY FN$STR_EXTRACT( T_DEFDEV_1, 1,
        B_DEFDEV_LENGTH)
      QUERY_HEADER IS "Default"/"Device".
	05 B_DEFDEV_LENGTH
          USAGE IS BYTE.
        05 T_DEFDEV_1
          PICTURE IS X(31).
!
    05  T_DEFDIR
      EDIT_STRING IS X(63)
      COMPUTED BY FN$STR_EXTRACT( T_DEFDIR_1, 1,
        B_DEFDIR_LENGTH )
      QUERY_HEADER IS "Default"/"Directory".
        05 B_DEFDIR_LENGTH
           USAGE IS BYTE.
	05 T_DEFDIR_1
	   PICTURE IS X(63).
!
    05  T_LGICMD
      EDIT_STRING IS X(63)
      COMPUTED BY FN$STR_EXTRACT( T_LGICMD_1, 1, B_LGICMD_LENGTH )
      QUERY_HEADER IS "Login Command"/"Procedure".
	05 B_LGICMD_LENGTH
	   USAGE IS BYTE.
	05 T_LGICMD_1
	   PICTURE IS X(63).
!
    05  T_DEFAULT_CLI
      EDIT_STRING IS X(31)
      COMPUTED BY FN$STR_EXTRACT(T_DEFAULT_CLI_1, 1, B_DEFAULT_CLI_LENGTH)
      QUERY_HEADER IS "Default"/"CLI".
	05 B_DEFAULT_CLI_LENGTH
	    USAGE IS BYTE.
 	05 T_DEFAULT_CLI_1
	    PICTURE IS X(31).
!
    05  T_CLITABLES
      EDIT_STRING IS X(31)
      COMPUTED BY FN$STR_EXTRACT(T_CLITABLES_1, 1, B_CLITABLES_LENGTH)
      QUERY_HEADER IS "CLI"/"Tables".
	05  B_CLITABLES_LENGTH
	    USAGE IS BYTE.
	05  T_CLITABLES_1
	    PICTURE IS X(31).
!
    05  Q_PWD
      USAGE IS QUAD.
!
    05  Q_PWD2
      USAGE IS QUAD.
!
    05  W_LGIFAILS
      USAGE IS WORD
      EDIT_STRING IS ZZZZ9
      QUERY_HEADER IS "Login"/"Failures".
!
    05  W_SALT
      USAGE IS WORD.
!
    05  B_ENCRYPT
      USAGE IS BYTE.
!
    05  B_ENCRYPT2
      USAGE IS BYTE.
!
    05  B_PWD_LENGTH
      USAGE IS WORD  !???
      EDIT_STRING IS ZZ9
      QUERY_HEADER "Minimum"/"PWD".
!
    05  Q_EXPIRATION
      USAGE IS DATE
      EDIT_STRING IS X(23)
      QUERY_HEADER IS "Username"/"Expiration".
!
    05  Q_PWD_LIFETIME
      USAGE IS QUAD.
!
    05  L_PWD_LIFETIME_DAYS
      COMPUTED BY -Q_PWD_LIFETIME/864000000000
      EDIT_STRING IS ZZZZZZ9
      QUERY_HEADER IS "PWD Life"/"(Days)".
!
    05  Q_PWD_DATE
      USAGE IS DATE
      EDIT_STRING X(23)
      QUERY_HEADER IS "PWD"/"Changed".
!
    05  Q_PWD2_DATE
      USAGE IS DATE
      EDIT_STRING X(23)
      QUERY_HEADER IS "PWD2"/"Changed".
!
    05  Q_LASTLOGIN_I
      USAGE IS DATE
      EDIT_STRING X(23)
      QUERY_HEADER IS "Last"/"Interactive".
!
    05  Q_LASTLOGIN_N
      USAGE IS DATE
      EDIT_STRING X(23)
      QUERY_HEADER IS "Last"/"Non-Interactive".
!
    05  Q_PRIV
      COMPUTED BY FN$HEX(Q_PRIV1)
      EDIT_STRING IS X(8)
      QUERY_HEADER IS "Default"/"Privs".
	05 Q_PRIV1
	    USAGE IS QUAD.
!
    05  Q_DEF_PRIV
      COMPUTED BY FN$HEX(Q_DEF_PRIV1)
      EDIT_STRING IS X(8)
      QUERY_HEADER IS "Privs".
	05 Q_DEF_PRIV1
	    USAGE IS QUAD.
!
    05  MIN_CLASS
	PICTURE IS X(20).
!
    05  MAX_CLASS
	PICTURE IS X(20).
!
    05  L_FLAGS
	USAGE IS LONG.
    05  V_DISCTLY
      COMPUTED BY FN$MOD( L_FLAGS, 2 )
      QUERY_HEADER IS "DISCTLY".
    05  V_DEFCLI
      COMPUTED BY FN$MOD( FN$FLOOR( L_FLAGS / 2 ), 2 )
      QUERY_HEADER IS "DEFCLI".
    05  V_LOCKPWD
      COMPUTED BY FN$MOD( FN$FLOOR( L_FLAGS / 4 ), 2 )
      QUERY_HEADER IS "LOCKPWD".
    05  V_CAPTIVE
      COMPUTED BY FN$MOD( FN$FLOOR( L_FLAGS / 8 ), 2 )
      QUERY_HEADER IS "CAPTIVE".
    05  V_DISACNT
      COMPUTED BY FN$MOD( FN$FLOOR( L_FLAGS / 16 ), 2 )
      QUERY_HEADER IS "DISACNT".
    05  V_DISWELCOM
      COMPUTED BY FN$MOD( FN$FLOOR( L_FLAGS / 32 ), 2 )
      QUERY_HEADER IS "DISWELCOM".
    05  V_DISMAIL
      COMPUTED BY FN$MOD( FN$FLOOR( L_FLAGS / 64 ), 2 )
      QUERY_HEADER IS "DISMAIL".
    05  V_NOMAIL
      COMPUTED BY FN$MOD( FN$FLOOR( L_FLAGS / 128 ), 2 )
      QUERY_HEADER IS "NOMAIL".
    05  V_GENPWD
      COMPUTED BY FN$MOD( FN$FLOOR( L_FLAGS / 256 ), 2 )
      QUERY_HEADER IS "GENPWD".
    05  V_PWD_EXPIRED
      COMPUTED BY FN$MOD( FN$FLOOR( L_FLAGS / 512 ), 2 )
      QUERY_HEADER IS "PWD_EXPIRED".
    05  V_PWD2_EXPIRED
      COMPUTED BY FN$MOD( FN$FLOOR( L_FLAGS / 1024 ), 2 )
      QUERY_HEADER IS "PWD2_EXPIRED".
    05  V_AUDIT
      COMPUTED BY FN$MOD( FN$FLOOR( L_FLAGS / 2048 ), 2 )
      QUERY_HEADER IS "AUDIT".
    05  V_DISREPORT
      COMPUTED BY FN$MOD( FN$FLOOR( L_FLAGS / 4096 ), 2 )
      QUERY_HEADER IS "DISREPORT".
    05  V_DISRECONNECT
      COMPUTED BY FN$MOD( FN$FLOOR( L_FLAGS / 8192 ), 2 )
      QUERY_HEADER IS "DISRECONNECT".
!
    05  B_NETWORK_ACCESS_P
      PICTURE IS X(3).
!
    05  B_NETWORK_ACCESS_S
      PICTURE IS X(3).
!
    05  B_BATCH_ACCESS_P
      PICTURE IS X(3).
!
    05  B_BATCH_ACCESS_S
      PICTURE IS X(3).
!
    05  B_LOCAL_ACCESS_P
      PICTURE IS X(3).
!
    05  B_LOCAL_ACCESS_S
      PICTURE IS X(3).
!
    05  B_DIALUP_ACCESS_P
      PICTURE IS X(3).
!
    05  B_DIALUP_ACCESS_S
      PICTURE IS X(3).
!
    05  B_REMOTE_ACCESS_P
      PICTURE IS X(3).
!
    05  B_REMOTE_ACCESS_S
      PICTURE IS X(3).
!
    05  FILLER
	PICTURE IS X(13).
!
    05  B_PRIMEDAYS
	USAGE IS BYTE.
!
    05  B_PRI
      USAGE IS BYTE
      QUERY_HEADER IS "Base"/"Priority".
!
    05  B_QUEPRI
      USAGE IS BYTE
      QUERY_HEADER IS "Queue"/"Priority".
!
    05  W_MAXJOBS
      USAGE IS WORD.
!
    05  W_MAXACCTJOBS
      USAGE IS WORD.
!
    05  W_MAXDETACH
      USAGE IS WORD.
!
    05  W_PRCCNT
      USAGE IS WORD
      QUERY_HEADER IS "Subprocess"/"Creation"/"Limit".
!
    05  W_BIOLM
      USAGE IS WORD
      QUERY_HEADER IS "Buffered"/"I/O Limit".
!
    05  W_DIOLM
      USAGE IS WORD
      QUERY_HEADER IS "Direct"/"I/O Limit".
!
    05  W_TQCNT
      USAGE IS WORD
      QUERY_HEADER IS "Timer"/"Queue"/"Entry"/"Limit".
!
    05  W_ASTLM
      USAGE IS WORD
      QUERY_HEADER IS "AST Limit".
!
    05  W_ENQLM
      USAGE IS WORD
      QUERY_HEADER IS "Lock"/"Enqueue"/"Limit".
!
    05  W_FILLM
      USAGE IS WORD
      QUERY_HEADER IS "Open"/"File"/"Limit".
!
    05  W_SHRFILLM
      USAGE IS WORD.
!
    05  L_WSQUOTA
      USAGE IS LONG
      QUERY_HEADER IS "Working"/"Set Quota".
!
    05  L_DFWSCNT
      USAGE IS LONG
      QUERY_HEADER IS "Default"/"Working Set".
!
    05  L_WSEXTENT
      USAGE IS LONG
      QUERY_HEADER IS "Working"/"Set Extent".
!
    05  L_PGFLQUOTA
      USAGE IS LONG
      QUERY_HEADER IS "Pagefile"/"Quota".
!
    05  L_CPUTIM
      USAGE IS LONG
      QUERY_HEADER IS "CPU Time"/"Limit".
!
    05  L_BYTLM
      USAGE IS LONG
      QUERY_HEADER IS "Buffered"/"I/O Byte"/"Limit".
!
    05  L_PBYTLM
      USAGE IS LONG.
!
    05  L_JTQUOTA
      USAGE IS LONG
      QUERY_HEADER IS "Job LN"/"Table"/"Quota".
!
    05  W_PROXY_LIM
      USAGE IS WORD.
!
    05  W_PROXIES
      USAGE IS WORD.
!
    05  W_ACCOUNT_LIM
      USAGE IS WORD.
!
    05  W_ACCOUNTS
      USAGE IS WORD.
!
!   05  FILLER_SIZE COMPUTED BY 0.  ! DTR Magic
!   05  FILLER PIC X OCCURS 0 TO 832 TIMES DEPENDING ON FILLER_SIZE
    05  FILLER PIC X(832).
;

